Mech-Eye SDK 2.5.2更新说明
本文介绍Mech-Eye SDK 2.5.2版本的新增功能、功能优化以及问题修复。
Mech-Eye Viewer
提供暖机工具
新增暖机工具,在采集数据前您可使用此工具对设备进行暖机,以确保数据精度。
新增参数:提取灵敏度模式
新增提取灵敏度模式参数,用于设置提取轮廓线时对激光线细节变化的灵敏度。
支持连续保存数据
保存数据功能全面升级。采集一次数据后,您可选择手动保存,将采集的数据保存至本地。连续保存数据时,可选择自动保存,由软件自动保存每次采集的数据。
支持设置点云ROI
在点云显示界面中点击 ,可进入点云ROI界面。您可设置点云ROI,以便观察特定区域的点云。
虚拟设备支持轮廓模式
支持在虚拟设备中查看轮廓模式下的参数。
优化HDR曝光设置方式
HDR曝光设置界面增加重新排序按钮,单击此按钮可将三个阶段的曝光时间按“曝光时间1 > 曝光时间2 > 曝光时间3”排序。
问题修复
Mech-Eye SDK 2.5.2修复了以下问题:
-
连接设备后,先切换至自定义坐标系再采集数据,未生成点云。
-
目标物体为透明物体,在轮廓模式下处理轮廓线时,若提取点选择参数设置为最近或最远、边缘选择参数设置为上边缘或下边缘,生成的轮廓线与参数设置不一致。
-
编码器和输入信号查看器中信号收集时间参数值跟随系统语言变化。
-
数据采集方式为单帧模式且扫描行数设置为1时,采集一次数据后更换目标物体,然后重新采集,获取到的数据未改变。
-
在数据查看区中,对图像进行缩放或移动后,切换至其他类型数据的显示界面,再返回该图像界面时,无法保留修改后的缩放比例和显示位置。
-
使用LNX-8080或LNX-8300在轮廓模式下采集图像时,图像出现全屏覆盖的异常条纹。
-
在工控机断网状态下,虚拟设备无法连接。
-
偶发:按住鼠标左键拖拽旋转点云时,旋转中心不在点云中心。
Mech-Eye API
新增参数:提取灵敏度模式
新增ExtractionSensitivityMode(提取灵敏度模式)参数,用于设置提取轮廓线时对激光线细节变化的灵敏度。
翻转强度图和深度图
调用以下新增方法,可将深度图和强度图绕X轴或Y轴翻转。
-
C++
-
C#
-
Python
void mmind::eye::ProfileBatch::flip(bool flipX, bool flipY);
void MMind.Eye.ProfileBatch.Flip(bool flipX, bool flipY);
mecheye.profiler.ProfileBatch.flip(self, flipX: bool, flipY: bool) -> None
处理NaN值与负值
新增以下例程,用于自动检测并处理深度数据中的NaN值与负值。
C、C++和C# |
HandleNanAndNegativeInDepth |
---|---|
Python |
handle_nan_and_negative_in_depth |
多轮廓测量仪标定支持输出点云类型数据
调用以下新增方法,可拼接点云。
-
C++
-
C#
MultiProfilerStatus ProfilerCalibrationInterfaces::stitchPointCloud(const ProfilerImage& majorImage, const std::vector<ProfilerImage>& minorImages, int cloudStitchOption, int paramRefineOption, const std::vector<CalibResult>& calibResults, bool correctRingError = true, int normalEstimationKnn = -1, const std::optional<MultiStitchParams>& stitchParams = std::nullopt);
MultiProfilerStatus ProfilerCalibrationInterfaces.StitchPointCloud(in ProfilerImage majorImage, in List<ProfilerImage> minorImages, int cloudStitchOption, int paramRefineOption, in List<CalibResult> calibResults, in MultiStitchParams stitchParams, bool correctRingError = true, int normalEstimationKnn = -1);
MultiProfilerErrorStatus ProfilerCalibrationInterfaces.StitchPointCloud(in ProfilerImage majorImage, in List<ProfilerImage> minorImages, in int cloudStitchOption, in int paramRefineOption, in List<CalibResult> calibResults, bool correctRingError = true, int normalEstimationKnn = -1);
调用以下新增方法,可获取拼接的点云。可选择获取纹理点云和无纹理的点云。
-
C++
-
C#
MultiProfilerStatus ProfilerCalibrationInterfaces::getStitchedPointCloud(ProfileBatch::UntexturedPointCloud& pointCloud) const;
MultiProfilerStatus ProfilerCalibrationInterfaces::getStitchedPointCloud(ProfileBatch::TexturedPointCloud& pointCloud) const;
MultiProfilerErrorStatus GetStitchedPointCloud(out ProfileUntexturedPointCloud pointCloud);
MultiProfilerErrorStatus GetStitchedPointCloud(out ProfileTexturedPointCloud pointCloud);
新增以下枚举类型,用于设置点云拼接。
|
设置点云拼接的方式。 |
|
设置是否优化拼接参数。 |
新增C#例程:对扫描同一目标物体的多台轮廓测量仪进行标定
新增Csharp例程MultipleProfilersCalibration。通过该例程可对同时扫描同一目标物体的多台轮廓测量仪进行标定,并输出标定结果和误差、拼接结果以及拼接后的深度图。标定过程中需使用根据场景定制的标定块,可参考标定块设计与加工指南。
GenICam接口
提供连续不间断采集例程
新增GenICam例程trigger_with_software_and_fixed_rate_nonstop。通过该例程可实现对目标物体进行连续扫描。即触发数据采集后,轮廓测量仪将持续扫描目标物体并不间断地返回固定长度的数据片段。
请参考HALCON例程使用指南获取例程并确认使用前提。 |
新增参数:提取灵敏度模式
新增ExtractionSensitivityMode(提取灵敏度模式)参数,用于设置提取轮廓线时对激光线细节变化的灵敏度。