我使用HALCON进行3D应用程序,目前,我使用xyz_to_object_model_3d创建3D模型,Z图像来自3D传感器。 现实中的项目看起来像: Modle picture1
但是HALCON中的3D模型看起来像: 3D model in HALCON
这个模型的两个平面之间似乎有差距,HALCON中的任何操作员都要修复这个差距?感谢。
答案 0 :(得分:1)
如果您正在寻找自动纠正两个平面之间任何偏移的解决方案或手动执行此操作,则不是100%清楚。
如果两个平面之间没有角度偏差,即它们是平行的,解决问题的最简单方法是将偏移应用于对象模型的z坐标。
我会在通过执行横向平移创建对象模型后应用此偏移校正:
hom_mat3d_identity(HomMat3D)
hom_mat3d_translate(HomMat3D, 0, 0, 42, HomMat3DTranslate)
affine_trans_object_model_3d(ObjectModel3D, HomMat3DTranslate, ObjectModel3DAffineTrans)
自动方法包括使用register_object_model_3d_pair()
程序。要利用这一点,您需要分离您想要适合的两个平面的点。你可以利用你想要的程序select_points_object_model_3d()
来做到这一点,所以通过将z范围限制为例如,选择一个空间体积。 + - 1个单位。