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ó rusa d'Intel en el centre de Nizhny Novgorod, actualment també conta amb el recolzament 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à obtimitzada 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], obtimitzacions 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 Phyton 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