By : Hanugra Aulia Sidharta, S.T., M.MT.

OpenCV (Open Source Computer Vision Library), adalah sebuah library open source yang dikembangkan oleh intel  yang fokus untuk menyederhanakan programing terkait citra digital. Di dalam OpenCV sudah mempunyai banyak fitur, antara lain : pengenalan wajah, pelacakan wajah, deteksi wajah, Kalman filtering, dan berbagai jenis metode AI (Artificial Intellegence). Dan menyediakan berbagai algoritma sederhana terkait Computer Vision untuk low level API.

OpenCV merupakan open source computer vision library untuk bahasa pemrograman C/C++, dan telah dikembangkan ke phyton, java, matlab. Library dapat diunduh melalui link http://sourceforge’net/projects/opencvlibrary atau melalui http://opencv.org/releases.html. Saat ini versi yang terbaru adalah 3.3.0 dengan tanggal rilis 3 Agustus 2017.

Intel meluncurkan versi pertama dari OpenCV pada 1999, dan awalnya memerlukan library dari Intel Image Processing Library. Kemudian dependecy tersebut ahkirnya dihilangkan sehingga terciptalah OpenCV seperti yang sekarang sebagai standalone library. OpenCV mendukung multiplatform, dapat mendukung baik windows ataupun linux, dan sekarang telah mendukung MacOSX dan android

OpenCV mempunyai banyak fitur yang dapat dimanfaatkan, berikut ini adalah fitur utama dari OpenCV antara lain :

  • Image and video I/O

Dengan antar muka ini kita dapat membaca data gambar dari file, atau dari umpan video langsung. Dan juga dapat menciptakan file gambar maupun video.

  • Computer Vision secara umum dan pengolahan citra digital ( untuk low dan mid level API)

Dengan antar muka ini kita dapat melakukan experimen uji coba dengan berbagai standar algorima computer vision. Termasuk juga deteksi garis, tepi, pucuk, proyeksi elips, image pyramid untuk pemrosesan gambar multi skala, pencocokan template, dan berbagai transform ( Fourier, cosine diskrit, distance transform) dan lain lain.

  • Modul computer vision high level

Di dalam OpenCV juga termasuk kemampuan “high level”, seperti kemampuan tambahan untuk deteksi wajah, pengenalan wajah, termasuk optical flow

  • Metode untuk AI dan machine learning

Applikasi computer vision sering kali memerlukan machine learning atau metode AI lainnya, beberapa metode tersebut tersedia dalam paket OpenCV machine learning.

  • Sampling gambar dan transformasi

Di dalam OpenCV sudah terdapat antar muka untuk substraksi subregion dari gambar, random sampling, rotating, dan lain lain.

  • Metode untuk menciptakan dan menganalisa gambar biner
  • Metode untuk memperhitungkan pemodelan 3D

Fungsi ini sangat bermanfaat untuk mapping dan localization, baik untuk stereo camera ataupun satu kamera dengan berbagai sudut pandang.