OpenCV
![]() | |
![]() ![]() | |
Tipus | programari lliure i de codi obert, biblioteca informàtica, C library (en) ![]() ![]() |
---|---|
Versió inicial | juny 2000 ![]() |
Versió estable | 2.4.8 |
Llicència | BSD |
Característiques tècniques | |
Sistema operatiu | GNU/Linux, Mac OS X, Microsoft Windows |
Escrit en | C++ ![]() |
Equip | |
Creador/s | Intel Corporation, Willow Garage, Itseez |
Desenvolupador(s) | Intel i Willow Garage ![]() |
Programador | Alexander Alekhin (en) ![]() ![]() ![]() |
Més informació | |
Lloc web | opencv.org (anglès) ![]() |
Stack Exchange | Etiqueta ![]() |
SourceForge | opencvlibrary ![]() |
| |
OpenCV (Open Source Computer Vision) és una llibreria de programació "Open Source" dirigida principalment a la visió per computador en temps real, desenvolupada per la divisió russa d'Intel en el centre de Nizhny Novgorod, actualment també conta amb el suport de Willow Garage y la companya de visió Itseez.[1] L'ús és gratuït sota la llicencia open source BSD. La llibreria OpenCV és multiplataforma. Es centra principalment en el processament d'imatges en temps real. Està optimitzada per a ser usada en processadors Intel, doncs si la llibreria detecta que les llibreries d'Intel IPP [2] (Integrated Performance Primitives) es troben en el sistema, en farà ús automàticament per tal d'accelerar el rendiment de l'aplicació. També conta amb suport SIMD, optimitzacions OpenMP, optimitzacions per Intel TBB (Threading Building Blocks) i a partir de la versió 2.4.8 dona suport a instruccions vectorials NEON per a sistemes ARM.
OpenCV permet desenvolupar en C, C++ o Python i es compatible amb l'IDE QT Creator i les seves corresponents llibreries QT .
Vegeu també
- AForge.NET, una llibreria de visió per al Common Language Runtime (.NET Framework i Mono).
- ROS (Robot Operating System)[3] OpenCV és el paquet de programació primari en ROS.
- VXL, una llibreria alternativa a OpenCV escrita en C++.
- Integrating Vision Toolkit (IVT), una llibreria de fàcil us en C++ amb interfície opcional per OpenCV.
- CVIPtools, una interfície gràfica d'usuari completa basada en l'entorn de Visió per Computador i processat d'imatge, amb biblioteques de funcions en C, una dll basat en COM, juntament amb dos programes d'utilitat per al desenvolupament d'algorismes i el processament per lots.
Exemple Codi C++
Aquí tenim un exemple de programa bàsic en OpenCV extret de la documentació oficial d'OpenCV. Mostra a l'usuari el Canny que obté després de processar la entrada de vídeo.
#include "opencv2/opencv.hpp"
using namespace cv;
int main(int, char**)
{
VideoCapture cap(0); // open the default camera
if(!cap.isOpened()) // check if we succeeded
return -1;
Mat edges;
namedWindow("edges",1);
for(;;)
{
Mat frame;
cap >> frame; // get a new frame from camera
cvtColor(frame, edges, CV_BGR2GRAY);
GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5);
Canny(edges, edges, 0, 30, 3);
imshow("edges", edges);
if(waitKey(30) >= 0) break;
}
// the camera will be deinitialized automatically in VideoCapture destructor
return 0;
}
Referències
- ↑ Itseez http://itseez.com/
- ↑ Intel Integrated Performance Primitives https://software.intel.com/en-us/intel-ipp/?wapkw=ipp
- ↑ Robot Operating System http://www.ros.org