@correspondence_grouping 编译问题及示例运行效果
correspondence_grouping 编译问题及示例运行效果
本文介绍PCL官方示例correspondence_grouping 在Win10+VS2017+PCL1.91下的编译问题及运行效果。
官网示例链接为:[http://pointclouds.org/documentation/tutorials/correspondence_grouping.php#correspondence-grouping]
编译问题
Visual Studio 用的是VS2017社区版,操作系统是Win10 64位的,编译示例是64位的程序,配置好库后,编译会遇到问题:
error C4996: ‘vtkMapper::ImmediateModeRenderingOff’: 被声明为已否决
解决方法:在项目上右键,打开项目属性,在配置属性->C/C+±>常规->SDL检查改为否,如下图所示。
接着进行编译遇到如下错误:
error LNK2001: 无法解析的外部符号 LZ4_resetStreamHC
error LNK2001: 无法解析的外部符号 LZ4_compress_HC_continue
error LNK2001: 无法解析的外部符号 LZ4_decompress_safe
error LNK2001: 无法解析的外部符号 LZ4_setStreamDecode
error LNK2001: 无法解析的外部符号 LZ4_decompress_safe_continue
注释掉此文件头可解决问题,如下图所示
编译成功后可以使用示例数据进行效果验证:
model_filename_ = “milk.pcd”
scene_filename_ = “milk_cartoon_all_small_clorox.pcd”
数据在官网链接上可以进行下载,但是milk.pcd数据少了些,可以直接在GitHub上下载数据,[https://github.com/PointCloudLibrary/data/blob/master/tutorials/correspondence_grouping/milk.pcd]
配置好相关参数,这些参数是官网上给出,具体含义,看官网说明
bool show_keypoints_(true);
bool show_correspondences_(true);
bool use_cloud_resolution_(false);
bool use_hough_(true);
float model_ss_(7.5f);
float scene_ss_(20.f);
float rf_rad_(10.f);
float descr_rad_(15.f);
float cg_size_(10.f);
float cg_thresh_(5.0f);
运行结果如下,并没有得到想要的结果。
再来一次,运行效果如下:
算法效果不稳定。