編譯 Efficient Hierarchical Graph-Based Segmentation of RGBD Videos

今天接到導師的短信, 讓我編譯一篇paper的code。 於是開工。


到作者的主頁上一看, 發現提供了github的代碼。 並明確要求使用opencv和pcl。 於是開始配置這兩個庫。


opencv網上教程一大堆, 我就不寫了, 主要寫pcl怎麼配置。 


首先, pcl的官網上放binary版本事1.60, 由vs2010編譯。 但是該paper的code使用了amp庫, 這個庫從vs2012開始支持, 所以需要自己編譯pcl。


 錯誤:cmake無法通過,找不到mm_malloc.h在自己編譯pcl的時候, 用cmake生成vs2012的sln文件的時候, 報錯, 錯誤:cmake無法通過,找不到mm_malloc.h。 上網搜索了很久也沒辦法, 於是只好用vs2010編譯。 在編譯的時候, 遇到PCL_DEPRECATED的錯誤, 搜索後發現, 可以採用如下解決方法。


將png.h報錯部分改成

template PCL_DEPRECATED ( void savePNGFile (const std::string& file_name, const pcl::PointCloud& cloud), 
“pcl::io::savePNGFile (file_name, cloud) is deprecated, please use a new generic ” 
“function pcl::io::savePNGFile (file_name, cloud, field_name) with \”rgb\” as the field name.” 
); 

 common/include/pcl/ros/conversions.h 同樣改法。 借鑑http://www.pclcn.org/bbs/forum.php?mod=viewthread&tid=509, 感謝!


編譯完之後, 用vs2012導入vs2010編譯的pcl庫, 但是發現boost和vtk的lib和vs2012不兼容!!!


無奈之下開始google別人編好的pcl vs2012庫。 發現http://unanancyowen.com/?p=1255&lang=en這個文章中, 作者提供vs2012和vs2013編譯好的pcl庫。下載以後可用!!!感謝!!!


使用說明: 安裝作者提供的文件, 在path中設置pcl, flann, vtk, 使用vs2012的時候, 用作者配置好的props文件即可。 


另附props的使用說明: http://blog.chinaunix.net/uid-12773189-id-3020261.html。 


pcl配置好之後, 用vs2012新建一個空項目, 導入props文件, 配置好pcl, 然後配置pencv, 最後把paper的cpp, h文件拖進來, 編譯即可。


over。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章