PCL 初試

一: PCL 簡介

The PointCloudLibrary (orPCL) is alarge scale, open project[1] for 3D point cloud processing. The PCL framework contains numerous state-of-the art algorithms including filtering, feature estimation, surface reconstruction, registration, model fitting and segmentation. These algorithms can be used, for example, to filter outliers from noisy data, stitch 3D point clouds together, segment relevant parts of a scene, extract keypoints and compute descriptors to recognize objects in the world based on their geometric appearance, and create surfaces from point clouds and visualize them -- to name a few.

 

PCL is released under the terms of theBSD license and is open source software. It is free for commercial and research use.

PCL is cross-platform, and has been successfully compiled and deployed on Linux, MacOS, Windows, and Android. To simplify development, PCL is split into a series of smaller code libraries, that can be compiled separately. This modularity is important for distributing PCL on platforms with reduced computational or size constraints (for more information about each module see thedocumentation page). Another way to think about PCL is as a graph of code libraries, similar to theBoost set of C++ libraries. Here's an example:


Point cloud library是一個開源、跨平臺的點雲處理庫,pcl框架涵蓋了當前最先進的點雲處理相關算法,涉及濾波、特徵估計、表面重建、註冊、模型擬合、分割等。Pcl基於BSD協議,可免費用於商業和研究應用,適用於Linux、MacOS、Windows、Android平臺。

官方網站爲:www.pointclouds.org

這裏發佈了一些視頻demo:http://www.youtube.com/user/pointclouds

相關教程、說明文件:http://www.pointclouds.org/documentation/


二: PCL 編譯——ubuntu 下

1. http://www.pointclouds.org/downloads/linux.html

Ubuntu

We currently support Ubuntu (Lucid, Maverick, Natty, Oneiric) systems viaPPA. The installation instructions are:
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all
但是我第一次編譯的時候,老是出錯,因爲它需要新版本的 libboost 1.4.6, 可是我的電腦裏是libboost 1.4.0, 所以我重新裝了boost,然後就好啦:)

2. 當然你可以直接下載http://www.pointclouds.org/downloads/

然後:

$ mkdir build
$ cd build
$ cmake ..
$ make


3.  Include and lib

  include path:  /usr/include/pcl-1.5
  library path: /usr/lib                         
          libpcl_apps.so           
          libpcl_common.so
          libpcl_features.so
          libpcl_filters.so
          libpcl_io.so
          libpcl_io_ply.so
          libpcl_kdtree.so
          libpcl_keypoints.so
          libpcl_octree.so
          libpcl_range_image_border_extractor.so
          libpcl_registration.so
          libpcl_sample_consensus.so
          libpcl_search.so
          libpcl_segmentation.so
          libpcl_surface.so
          libpcl_tracking.so      

三: 熟悉PCL--例子

http://www.pointclouds.org/documentation/tutorials/

熟悉PCL的各個模塊!

包括:

openni_viewer(查看kinect採集的點雲),

openni_passthrough(爲kinect採集的點雲做一個帶通),

openni_3d_convex_hull(找凸包的),openni_ii_normal_estimation(估計法線),

openni_planar_segmentation(平面分割)等等,

還有一些pcd_viewer(查看pcd文件,即點雲數據point cloud data)等不用kinect的。

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