Diagnostics(诊断)
诊断设置允许:
使用不同的处理设置在
frame上重新运行处理(reprocess()),而无需重新捕获在捕获期间收集额外的诊断和调试数据
当遇到点云或彩色图像问题时这很有用。
小技巧
请参阅指南 捕获高质量的点云。
启用此设置后,附加数据将保存在.zdf文件中。请将.zdf文件发送给Zivid支持团队,以获得更好的帮助和更彻底的故障排除。
Settings Diagnostics API
Zivid::Settings::Diagnostics
new Zivid.NET.Settings { Diagnostics = .. }
zivid.settings.diagnostics
std::cout << "Configuring settings for 2D+3D capture" << std::endl;
auto settings = Zivid::Settings{ Zivid::Settings::Acquisitions{
Zivid::Settings::Acquisition{ Zivid::Settings::Acquisition{} } },
Zivid::Settings::Color{ Zivid::Settings2D{
Zivid::Settings2D::Acquisitions{ Zivid::Settings2D::Acquisition{} } } } };
std::cout << "Enabling diagnostics" << std::endl;
settings.set(Zivid::Settings::Diagnostics::Enabled::yes);
std::cout << "Capturing 2D+3D frame" << std::endl;
const auto frame = camera.capture2D3D(settings);
const auto dataFile = "FrameWithDiagnostics.zdf";
std::cout << "Saving frame with diagnostic data to file: " << dataFile << std::endl;
frame.save(dataFile);
Console.WriteLine("Configuring settings for 2D+3D capture");
var settings = new Zivid.NET.Settings
{
Acquisitions = { new Zivid.NET.Settings.Acquisition { } },
Color = new Zivid.NET.Settings2D { Acquisitions = { new Zivid.NET.Settings2D.Acquisition { } } }
};
Console.WriteLine("Enabling diagnostics");
settings.Diagnostics.Enabled = true;
Console.WriteLine("Capturing 2D+3D frame");
using (var frame = camera.Capture2D3D(settings))
{
var dataFile = "FrameWithDiagnostics.zdf";
Console.WriteLine("Saving frame with diagnostic data to file: " + dataFile);
frame.Save(dataFile);
}
print("Configuring settings for 2D+3D capture")
settings = zivid.Settings(
acquisitions=[zivid.Settings.Acquisition()],
color=zivid.Settings2D(acquisitions=[zivid.Settings2D.Acquisition()]),
)
print("Enabling diagnostics")
settings.diagnostics.enabled = True
print("Capturing 2D+3D frame")
frame = camera.capture_2d_3d(settings)
data_file = "FrameWithDiagnostics.zdf"
print(f"Saving frame with diagnostic data to file: {data_file}")
frame.save(data_file)
如需了解更多关于Zivid API的信息,请查看 API参考。
Settings2D Diagnostics API
Diagnostics can also be enabled for 2D-only captures.
When enabled, the additional data will be saved in the .zdf file together with the 2D frame.
The resulting .zdf file contains a Frame2D and must be loaded using the Frame2D API; see 2D图像捕获流程 for the save and load workflow.
Zivid::Settings2D::Diagnostics
new Zivid.NET.Settings2D { Diagnostics = .. }
zivid.Settings2D.diagnostics
std::cout << "Configuring settings for 2D capture" << std::endl;
auto settings2D = Zivid::Settings2D{ Zivid::Settings2D::Acquisitions{ Zivid::Settings2D::Acquisition{} } };
std::cout << "Enabling 2D diagnostics" << std::endl;
settings2D.set(Zivid::Settings2D::Diagnostics::Enabled::yes);
std::cout << "Capturing 2D frame" << std::endl;
const auto frame2D = camera.capture2D(settings2D);
const auto dataFile2D = "Frame2DWithDiagnostics.zdf";
std::cout << "Saving 2D frame with diagnostic data to file: " << dataFile2D << std::endl;
frame2D.save(dataFile2D);
Console.WriteLine("Configuring settings for 2D capture");
var settings2D = new Zivid.NET.Settings2D
{
Acquisitions = { new Zivid.NET.Settings2D.Acquisition { } }
};
Console.WriteLine("Enabling 2D diagnostics");
settings2D.Diagnostics.Enabled = true;
Console.WriteLine("Capturing 2D frame");
using (var frame2D = camera.Capture2D(settings2D))
{
var dataFile2D = "Frame2DWithDiagnostics.zdf";
Console.WriteLine("Saving 2D frame with diagnostic data to file: " + dataFile2D);
frame2D.Save(dataFile2D);
}
print("Configuring settings for 2D capture")
settings_2d = zivid.Settings2D(acquisitions=[zivid.Settings2D.Acquisition()])
print("Enabling 2D diagnostics")
settings_2d.diagnostics.enabled = True
print("Capturing 2D frame")
frame_2d = camera.capture_2d(settings_2d)
data_file_2d = "Frame2DWithDiagnostics.zdf"
print(f"Saving 2D frame with diagnostic data to file: {data_file_2d}")
frame_2d.save(data_file_2d)
备注
诊断功能会增加捕获时间、RAM使用率和.zdf文件的大小。
小技巧
建议在向 Zivid 的支持团队报告问题时启用诊断功能。
版本历史
SDK |
变更 |
|---|---|
2.18.0 |
Added diagnostics support for 2D captures ( |
2.6 |
增加了诊断API。 |