设置首页收藏本站在线聊天
授权版本:2024_09
开启左侧

halcon 深度转3D问题

[复制链接]
会飞的小菜鸡 发表于 2023-11-28 09:18:10 | 显示全部楼层 |阅读模式
在深度图转3D的时候,我Z方向会往下沉(这个现象拍了个标定块,深度转3D的时候它不是凸出来而是凹下去的)
  1. read_image (AerialImage, ImageFiles1[IndexI])
  2. read_image (Z, ImageFiles[IndexI])
  3. get_image_size (Z, Width, Height)
  4. * 读取灰度图,将其灰度值作为属性添加到3D模型中。
  5. * 用灰度图生成标签图像,采用的方法很简单,只做展示用。
  6. * 自适应的阈值处理方法,将图像分为3个对象,用红蓝绿三种颜色表示。参数4表示高斯平滑的核的大小。如下图所示。
  7. * threshold (AerialImage, Regions, 8, 255)
  8. auto_threshold (AerialImage, Regions, 4)
  9. *将分割后的区域生成标签图像。
  10. * region_to_label根据分割区域的索引(1…n)将输入区域转换成标签图像,即,第一区域被绘成灰度值1,第二区域被绘成灰度值2。
  11. region_to_label (Regions, LabelImage, 'byte', Width, Height)
  12. * 将灰度图和标签图像合并为1个2通道复合图像。
  13. compose2 (AerialImage, LabelImage, MultiChannelAttribImage)
  14. * 在常规网格中创建包含X和Y坐标的灰度渐变图像。
  15. GroundResolution := 1.0
  16. * 用一阶方程来生成平面(输出图像,类型,垂直方向的参数,水平方向的参数,0阶参数,参考点的行坐标,列坐标,图像的宽高)。
  17. * ImageSurface(r,c) = Alpha(r - Row) +Beta(c - Column) +Gamma
  18. gen_image_surface_first_order (X, 'real', 0, GroundResolution, 0, 0, 0, Width, Height)
  19. gen_image_surface_first_order (Y, 'real', -GroundResolution, 0, 0, 0, 0, Width, Height)
  20. convert_image_type (Z, ImageConvertedZ, 'real')
  21. * 创建3D模型
  22. * 属性名
  23. AttribName := ['&gray','&terrain']
  24. * 该算子将包含3D点的X、Y和Z坐标的图像三元组转换为3D对象模型。
  25. * 从上面的程序可以看出,XY图像为与Z图同样大小的灰度渐变图像,MultiChannelAttribImage为两通道的属性图像,包含灰度图像和分割后的标签图像。
  26. * 其中MultiChannelAttribImage的图像通道必须和AttribName的维度大小相同。
  27. * 此时生成的为点云,下面用三角法生成三维图像。
  28. xyz_attrib_to_object_model_3d (X,Y, ImageConvertedZ, MultiChannelAttribImage, AttribName, ObjectModel3D)
  29. * 对对象模型进行快速的三角测量,以便更好地进行可视化。
  30. * 该算子通过三角法将点云重建为三维模型。
  31. prepare_object_model_3d (ObjectModel3D, 'segmentation', 'true', [], [])
  32. * 交互式地可视化3d对象模型
  33. moments_object_model_3d (ObjectModel3D, 'principal_axes', Moments)
  34. pose_invert(Moments, PoseInvert)
  35. pose_to_hom_mat3d(PoseInvert, HomMat3D)
  36. affine_trans_object_model_3d(ObjectModel3D, HomMat3D, ObjectModel_result)
  37. gen_cam_par_area_scan_division (0.01, 0, 7e-6, 7e-6, Width/2, Height/2,Width, Height, CamParam)
  38. visualize_object_model_3d (WindowHandle, ObjectModel_result, [], [], \
  39.                            ['lut','color_attrib','disp_pose'], \
  40.                            ['color1','coord_z','true'], '', [], [], PoseOut)
复制代码

Intensity1.bmp.jpg Image1.bmp.jpg
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
超酷小子 发表于 2023-11-30 14:33:24 | 显示全部楼层
深度学习
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
BenNin 发表于 2023-12-10 11:47:28 | 显示全部楼层
好好学习
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表