void find_match_shot(pcl::PointCloud<pcl::BINARY>::Ptr shot1, pcl::PointCloud<pcl::BINARY>::Ptr shot2, pcl::CorrespondencesPtr model_scene_corrs)写法有问题吗
时间: 2023-07-02 19:19:33 浏览: 179
这段代码中存在问题,因为pcl::BINARY并不是PCL库中的数据类型。如果您想使用PCL的SHOT描述符来计算两个点云之间的相似性,可以使用以下代码:
```
pcl::PointCloud<pcl::SHOT352>::Ptr shot1(new pcl::PointCloud<pcl::SHOT352>());
pcl::PointCloud<pcl::SHOT352>::Ptr shot2(new pcl::PointCloud<pcl::SHOT352>());
pcl::registration::CorrespondenceEstimation<pcl::SHOT352, pcl::SHOT352> est;
est.setInputSource(shot1);
est.setInputTarget(shot2);
est.determineCorrespondences(*model_scene_corrs);
```
这段代码将创建两个PointCloud对象,分别用于存储两个点云的SHOT描述符。然后,使用pcl::registration::CorrespondenceEstimation类计算两个点云之间的对应关系。
相关问题
void find_match_shot(pcl::PointCloud<pcl::BINARY>::Ptr shot1, pcl::PointCloud<pcl::BINARY>::Ptr shot2, pcl::CorrespondencesPtr model_scene_corrs)BINARY不是pcl的成员
你是对的,感谢指出!正确的写法应该是 `pcl::SHOT352` 而不是 `pcl::BINARY`,`pcl::SHOT352` 是 PCL 中提供的一种描述点云特征的类型。因此,函数签名应该修改为:
```
void find_match_shot(pcl::PointCloud<pcl::SHOT352>::Ptr shot1, pcl::PointCloud<pcl::SHOT352>::Ptr shot2, pcl::CorrespondencesPtr model_scene_corrs)
```
感谢你的指正,我会注意更加准确的表达。
find_match_shot(pcl::PointCloud<pcl::BINARY>::Ptr shot1, pcl::PointCloud<pcl::BINARY>::Ptr shot2, pcl::CorrespondencesPtr model_scene_corrs)BINARY不是pcl的成员
你是对的,感谢指出!正确的写法应该是 `pcl::BINARY` 而不是 `pcl::PointCloud<pcl::BINARY>`,`pcl::BINARY` 是 PCL 中提供的一种二进制描述子类型。因此,函数签名应该修改为:
```
void find_match_shot(pcl::PointCloud<pcl::BINARY>::Ptr shot1, pcl::PointCloud<pcl::BINARY>::Ptr shot2, pcl::CorrespondencesPtr model_scene_corrs)
```
感谢你的指正,我会注意更加准确的表达。
阅读全文