如何使用opencv在3D中可视化坐标系

时间:2018-03-06 16:17:11

标签: opencv 3d camera coordinate

我在3d环境中有多个摄像头,摄像头的位置和方向是已知的或已定义的。如何仅使用OpenCV库可视化它们的坐标系(单位矢量-x,-y,-z)?有没有可用的东西?

1 个答案:

答案 0 :(得分:0)

您可以使用OpenCV viz

要使用viz,您需要在PC上安装VTK。安装VTK,然后在启用VTK的情况下构建OpenCV。

您可以使用viz小部件显示来自多个摄像头的点云。

//This will be your reference camera
viz::Viz3d myWindow("Coordinate Frame");
myWindow.showWidget("Coordinate Widget", viz::WCoordinateSystem());

点云可以存储在矢量中或以具有3个通道(或4个通道)的垫子的形式存储。您可以显示多个点云

//Store your point clouds here
vector<cv::Point3d> pts3d1, pts3d2;
viz::WCloud cloud_widget1(pts3d1, viz::Color::green());
viz::WCloud cloud_widget2(pts3d2, viz::Color::red());

myWindow.showWidget("cloud 1", cloud_widget1);
myWindow.showWidget("cloud 2", cloud_widget2);

myWindow.spin();