pointcloud2 визуализация потока в open3d или другая возможность визуализации pointcloud2 в python - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь визуализировать поток pointcloud2 из rostopic через open3d в python.

Это мой код:

import sensor_msgs.point_cloud2 as pc2
import open3d
...


def callback(self, points):
        #self.pc = pcl.VoxelGridFilter(self.pc)

        self.pc = self.convertCloudFromRosToOpen3d(points)

        if self.first:
            self.first = False
            self.vis.create_window()
            rospy.loginfo('plot')
            self.vis.add_geometry(self.pc)
            self.vis.update_geometry()
            self.vis.poll_events()
            self.vis.update_renderer()
            self.vis.run()
        else:
            rospy.loginfo('update')
            self.vis.update_geometry()
            self.vis.poll_events()
            self.vis.update_renderer()
            self.vis.run()

    def listener(self):
        rospy.init_node('ui_config_node', anonymous=True)
        rospy.Subscriber('/kinect2/sd/points', PointCloud2, self.callback)
        rospy.spin() 

Если я запускаю этот код, я получаю только замороженныйрисунок.

Я использую этот скрипт для преобразования pointCloud2 в формат open3d.

Если у кого-то есть другая идея визуализировать pointcloud2 в rospy, я был бы радчтобы услышать это.

Спасибо за помощь и предложения!

...