各位大佬好 我遇到了pcl相关方面的问题 用的是win系统 在复现06深度图像边界和16关键点两个代码时都报一样的错 命令行显示Failed to find match for field “vp_x”“vp_y”“vp_z” 请问这是为什么呢?怎么解决呢?
【以下回答由 GPT 生成】
这个错误是由于代码中使用的点云数据类型和实际使用的数据类型不匹配导致的。 在代码中,作者使用的是pcl::PointXYZRGB类型的点云数据,但是实际的点云数据是pcl::PointXYZ类型的。
为了解决这个问题,我们需要修改代码以匹配实际的点云数据类型。
下面是具体的解决方案:
打开代码文件main.cpp
。
找到使用pcl::PointXYZRGB
类型的地方,将其改为pcl::PointXYZ
。
cpp pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>); ... pcl::PointXYZ point; ... cloud_filtered->points[i].x = point.x; cloud_filtered->points[i].y = point.y; cloud_filtered->points[i].z = point.z;
这个解决方案应该能够解决你遇到的问题。请尝试一下,如果还有其他问题,请随时提问。