【发布时间】:2022-11-11 18:01:29
【问题描述】:
(HalconDotNET)
我想用彩色点云从可视化匹配结果中渲染图像。
在示例程序find_surface_model_with_edges_simple.hdev 中运行find_surface_model() 后,您会收到一个姿势,通过此姿势,您可以使用visualize_object_model_3d() 可视化表面模型在场景中的匹配情况。从这样的可视化中,我想创建一个渲染图像以在我正在制作的应用程序中显示匹配结果。
要渲染彩色点云,我使用:
render_object_model_3d (Image, ObjectModel3DSceneRaw_ccs, camPar, Pose_0, ['red_channel_attrib','green_channel_attrib','blue_channel_attrib'], ['&overlay_red','&overlay_green','&overlay_blue'])
要呈现匹配结果,我使用:
render_object_model_3d (Image, [ObjectModel3DSceneRaw_ccs, ObjectModel3D], camPar, [Pose_0, detectedPose], ['color_0', 'color_1'], ['white', 'red'])
我无法在此函数中获取两个对象并且仍然具有 RGB 属性,Halcon 给出了参数错误。我还想指定对象模型的颜色。
我也尝试使用 3D 场景:
create_scene_3d (Scene3D)
add_scene_3d_camera (Scene3D, camPar, CameraIndex)
set_scene_3d_camera_pose (Scene3D, CameraIndex, detectedPose)
add_scene_3d_light (Scene3D, PoseInvert[0:2], 'point_light', LightIndex)
* The scene
add_scene_3d_instance (Scene3D, ObjectModel3DSceneRaw_ccs, detectedPose, InstanceIndex)
set_scene_3d_instance_param (Scene3D, InstanceIndex, ['red_channel_attrib','green_channel_attrib','blue_channel_attrib'], ['&overlay_red','&overlay_green','&overlay_blue'])
* The transformed objectModel
add_scene_3d_instance (Scene3D, ObjectModel3DRigidTrans, Pose_0, InstanceIndex2)
set_scene_3d_instance_param (Scene3D, InstanceIndex2, 'color', 'red')
* Display
display_scene_3d (WindowHandle, Scene3D, CameraIndex)
但这仅显示场景而不是匹配的对象模型。
有人知道我在做什么错吗?
【问题讨论】:
标签: halcon