Hello everyone,

I am currently working on a stereo vision project. So for that I thought of integrating PCL with OpenCV. So lets first get to the point that what is PCL.

PCL – Point Cloud Library

It has a set of pre-defined model libraries.

**Filters**:- Used for noise removal. Estimation of 3D from 2D always has a lot of noise interpreted automatically. So filters help them to remove that noise. Distance (Guassian mean type) of every point from its nearest neighbors is taken, if this crosses a set threshold, then it is recognized as noise.

**Features**:- This is a library consisting of methods devising 3D construction. K-Space is the space surrounded around a selected point. This neighborhood is found out by octree method or KD tree method. A KD tree is a space partitioning data structure for organizing points in K-dimensional space. These trees are useful in multidimensional search. It is a binary tree, having a node represented by K-Dimensional points, and dividing space into two halves. If for a particular split the “x” axis is chosen, all points in the subtree with a smaller “x” value than the node will appear in the left subtree and all points with larger “x” value will be in the right subtree. In a 3-dimensional tree, the root would have an x-aligned plane, the root’s children would both have y-aligned planes, the root’s grandchildren would all have z-aligned planes, the root’s great-grandchildren would all have x-aligned planes, the root’s great-great-grandchildren would all have y-aligned planes, and so on.*The most easiest method in determining surface normals and curvatures is by finding eigenvectors and eigenvalues of the K-Space.*

**Key-Points**:- This library has the algorithms for two pint cloud detection.

**Registration**:- It is a process of combining point datasets into one consistent model. In layman’s words its basically joining image datasets of a 3-D segmented image to make it one complete image.

**
Segmentation**:- It is a process of partitioning a digital image into multiple segments called as super-pixels. Image segmentation is typically used to locate objects and boundaries (lines, curves, etc.) in images. More precisely, image segmentation is the process of assigning a label to every pixel in an image such that pixels with the same label share certain characteristics.

**Surface**:- This library consists of methods of reconstructing surfaces. One of such methods is meshing.

**Range image**:- It is nothing but a kind of depth map. It is an image whose points represent distance from the sensor.

**Visualization**:- This library is for human interfacing, to check the working of algorithms. It is like opencv’s highgui library.

This is just an intro,the next posts will include integration of PCL with OpenCV.

Thank you 🙂

Also visit : http://blindperception.wordpress.com/