Halcon 3D相关算子(二)

(1) moments_object_model_3d( : : ObjectModel3D, MomentsToCalculate : Moments)

功能:计算3D对象模型的平均值或中心二阶矩。要计算3D物体模型点的平均值,在MomentsToCalculate中选择'mean_points';如果要计算二阶中心矩,则选择'central_moment_2_points',结果是x、y、z、x-y、x-z和y-z轴的方差;要计算3D物体模型的三个主轴,请在MomentsToCalculate中选择'principal_axes',结果是一个以坐标点均值为中心的姿态,与姿态对应的坐标系中,x轴沿第一主轴,y轴沿第二主轴,z轴沿第三主轴。

控制输入参数1:ObjectModel3D:3D对象模型;

控制输入参数2:MomentsToCalculate:待计算属性;

控制输出参数:Moments:计算结果。

(2) smallest_bounding_box_object_model_3d( : : ObjectModel3D, Type : Pose, Length1, Length2, Length3)

功能:计算3D对象模型点周围的最小外接边界框(六面体盒子)。生成的边界框使用其坐标系统(Pose)来描述,其方向是这样的:盒子的最长边与x轴对齐,第二长的边与y轴对齐,最小的边与z轴对齐。边的长度按降序依次返回Length1、Length2和Length3。该框可以是轴向的,也可以是定向的,这可以由Type来选择。

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:Type:用来估计最小外接框的方法;

控制输出参数1:Pose:描述生成的框的位置和方向的姿态。姿态的原点在边界框的中心,并且定向使x轴与边界框的最长边对齐;

控制输出参数2:Length1:边界框最长边的长度;

控制输出参数3:Length2:边界框第二长边的长度;

控制输出参数4:Length3:边界框第三长边的长度。

(3) gen_box_object_model_3d( : : Pose, LengthX, LengthY, LengthZ : ObjectModel3D)

功能:创建一个六面体盒子的3D对象模型。

控制输入参数1:Pose:姿态;

控制输入参数2:LengthX:沿着X轴的长度;

控制输入参数3:LengthY:沿着Y轴的长度;

控制输入参数4:LengthZ: 沿着Z轴的长度。

(4) gen_plane_object_model_3d( : : Pose, XExtent, YExtent : ObjectModel3D)

功能:创建一个平面3D对象模型。

控制输入参数1:Pose:平面的中心的旋转角度;

控制输入参数2:XExtent:指定平面范围的X坐标;

控制输入参数3:YExtent:指定平面范围的Y坐标;

控制输出参数:ObjectModel3D:创建的3D对象模型句柄。

(5) gen_sphere_object_model_3d( : : Pose, Radius : ObjectModel3D)

功能:创建一个代表球体的3D对象模型。球体的中心在Pose中给出,半径在radius中给出。

控制输入参数1:Pose:描述球体位置的姿态;

控制输入参数2:Radius:球体半径;

控制输出参数:ObjectModel3D:创建的球体3D对象模型句柄。

(6) intersect_plane_object_model_3d( : : ObjectModel3D, Plane : ObjectModel3DIntersection)

功能:将3D对象模型与平面相交,结果是一组由线连接的3D点。每一个与平面相交的三角形都会产生两个交点和两点之间的一条直线。

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:Plane:平面的位姿;

控制输出参数:ObjectModel3DIntersection:返回一组由线连接的3D点。

(7) project_object_model_3d( : ModelContours : ObjectModel3D, CamParam, Pose, GenParamName, GenParamValue : )

功能:将3D对象模型投影到图像坐标系中,并在ModelContours中返回投影轮廓。

图形输出参数:ModelContours:投影的模型轮廓;

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:CamParam:相机内参;

控制输入参数3:Pose:世界坐标系在相机坐标下中的3D姿态。

控制输入参数4:GenParamName:通用参数名;

控制输入参数5:GenParamValue:通用参数值。

(8) prepare_object_model_3d( : : ObjectModel3D, Purpose, OverwriteData, GenParamName, GenParamValue : )

功能:为某一操作准备三维对象模型。它计算操作所需的值并将其存储在ObjectModel3D中,从而加快了后续操作。

控制输入参数1:3D对象模型句柄;

控制输入参数2:3D对象模型目的,Default value: 'shape_based_matching_3d';

控制输入参数3:指定是否应该覆盖已经存在的数据,Default value: 'true';

控制输入参数4:通用参数名;

控制输入参数5:通用参数值。

(9) object_model_3d_to_xyz( : X, Y, Z : ObjectModel3D, Type, CamParam, Pose : )

功能:将3D对象模型中的3D点转换为三个图像X、Y和Z。

图形输出参数1:X:3D点中的x坐标形成的X图像;

图形输出参数2:Y:3D点中的y坐标形成的Y图像;

图形输出参数3:Z:3D点中的z坐标形成的Z图像;

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:Type:转换类型;

控制输入参数3:CamParam:相机参数;

控制输入参数4:Pose:3D对象模型的位姿。

(10) create_surface_model( : : ObjectModel3D, RelSamplingDistance, GenParamName, GenParamValue : SurfaceModelID)

功能:创建用于表面匹配所需要的数据结构。

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:RelSamplingDistance:相对于对象直径的采样距离;

控制输入参数3:GenParamName:通用参数名;

控制输入参数4:GenParamValue:通用参数值;

控制输出参数:SurfaceModelID:表面模型句柄;

(11) set_surface_model_param( : : SurfaceModelID, GenParamName, GenParamValue : )

功能:设置表面模型SurfaceModelID的参数和属性。

控制输入参数1:SurfaceModelID:表面模型句柄;

控制输入参数2:GenParamName:通用参数名;

控制输入参数3:GenParamValue:通用参数值。

(12) find_surface_model( : : SurfaceModelID, ObjectModel3D, RelSamplingDistance, KeyPointFraction, MinScore, ReturnResultHandle, GenParamName, GenParamValue : Pose, Score, SurfaceMatchingResultID)

功能:在3D场景中找到表面模型的最佳匹配,并在pose中返回它们的姿态。

控制输入参数1:SurfaceModelID:表面模型句柄;

控制输入参数2:ObjectModel3D:包含三维对象模型场景的句柄;

控制输入参数3:RelSamplingDistance:场景采样距离相对于表面模型的直径;

控制输入参数4:KeyPointFraction:作为关键采样场景点的比例;

控制输入参数5:MinScore:返回位姿的最小得分;

控制输入参数6:ReturnResultHandle:启用在SurfaceMatchingResultID中返回结果句柄;

控制输入参数7:GenParamName:通用参数名;

控制输入参数8:GenParamValue:通用参数值;

控制输出参数1:Pose:场景中表面模型的三维姿态;

控制输出参数2:Score:找到的表面模型实例的分数;

控制输出参数3:SurfaceMatchingResultID:如果在ReturnResultHandle中启用,则返回匹配结果的句柄。

(13) find_surface_model_image(Image : : SurfaceModelID, ObjectModel3D, RelSamplingDistance, KeyPointFraction, MinScore, ReturnResultHandle, GenParamName, GenParamValue : Pose, Score, SurfaceMatchingResultID)

功能:在3D场景和图像中找到表面模型的最佳匹配。,并在pose中返回它们的姿态。

控制输入参数0:Image:输入的场景图像;

控制输入参数1:SurfaceModelID:表面模型句柄;

控制输入参数2:ObjectModel3D:包含三维对象模型场景的句柄;

控制输入参数3:RelSamplingDistance:场景采样距离相对于表面模型的直径;

控制输入参数4:KeyPointFraction:作为关键采样场景点的比例;

控制输入参数5:MinScore:返回位姿的最小得分;

控制输入参数6:ReturnResultHandle:启用在SurfaceMatchingResultID中返回结果句柄;

控制输入参数7:GenParamName:通用参数名;

控制输入参数8:GenParamValue:通用参数值;

控制输出参数1:Pose:场景中表面模型的三维姿态;

控制输出参数2:Score:找到的表面模型实例的分数;

控制输出参数3:SurfaceMatchingResultID:如果在ReturnResultHandle中启用,则返回匹配结果的句柄。

你可能感兴趣的:(《HALCON》学习笔记,机器视觉)