函数:
当相机与物体平面不在同一个平面内是,通过shape-base对物体进行识别,首先通过标定获取相机的参数,通过set_origin_pose算子对位姿进行移动,去掉标定版的厚度。根据标定获取到的参数生成投影映射,对应用映射的图像进行shape-base匹配,找出符合模型的轮廓,并对匹配到的坐标进行一系列仿射变化加以显示
图像仿射变换:
第一种:根据位姿计算 3D仿射变换
1.pose_to_hom_mat3d:根据3D位姿生成其次变换矩阵(3D位姿是目标对象的位姿)
2.affine_trans_point_3d:对任意点应用仿射变换
3.project_3d_point:将一个或多个3D点投射到图像平面
第二种:根据点和角度计算 2D仿射变换
1.vector_angle_to_rigid:计算从点和角度的刚性仿射变换
2.affine_trans_contour_xld:对XLD等值线应用任意的二维仿射变换
效果图:

1.gen_image_to_world_plane_map( : Map : CameraParam, WorldPose, WidthIn, HeightIn, WidthMapped, HeightMapped, Scale, MapType : ):生成一个投影映射,描述图像平面和世界坐标系的平面Z=0之间的映射,可用于map_image图像矫正
参数:
Map:映射后的数据的图像
CameraParam:相机标定后获取到的相机内参
WorldPose:相机外参
WidthIn:要转换的图像的宽度
HeightIn:要转换的图像的高度
WidthMapped:生成的

本文介绍了在相机与物体平面不平行的情况下,使用Halcon的p_do_world_plane函数模块进行形状基础匹配。通过相机参数和位姿计算3D和2D仿射变换,实现图像矫正并进行形状匹配。详细讲解了gen_image_to_world_plane_map函数的参数及应用场景。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



