Introduction to OpenCV, OpenNI, and PCL
Let's discuss about the software frameworks and libraries that we are using in our robots. First, we can discuss OpenCV. This is one of the libraries that we are going to use in this robot for object detection and other image processing functionalities.
What is OpenCV?
OpenCV is an open source BSD-licensed computer vision based library that includes hundreds of computer vision algorithms. The library, mainly aimed for real-time computer vision, was developed by Intel Russia research, and is now actively supported by Itseez (http://itseez.com/).
OpenCV is written mainly in C and C++ and its primary interface is in C++. It also has good interfaces in Python, Java, Matlab/Octave and wrappers in other languages such as C# and Ruby.
In the new version of OpenCV, there is support for CUDA and OpenCL to get GPU acceleration (http://www.nvidia.com/object/cuda_home_new.html).
OpenCV will run on most of the OS platforms (such as Windows, Linux, Mac OS...