OpenCV ( Open Source Computer Vision Library ) adalah sebuah perangkat lunak yang ditujukan untuk pengolahan citra digital secara real-time yang dibuat oleh Intel, dan sekarang didukung oleh Willow Garage dan Itseez. Program ini terbebas dan ada dalam naungan sumber terbuka dari lisensi BSD. Pustaka ini didedikasikan sebagai besar untuk pengolahan citra digital secara real time. Jika program ini menemukan pustaka Integrated Performance Primitives dari dalam sistem komputer, maka program ini akan secara rutin untuk mempercepat proses kerja program secara otomatis.
OpenCV pertama kali diluncurkan secara resmi pada tahun 1999 oleh Inter Research sebagai kelanjutan dari bagian proyek yang meghasilkan aplikasi intensif berbasis CPU, real-time ray tracing dan tembok penampilan 3 Dimensi. para kontributor utama dalam proyek ini termasuk mereka yang berkecimpung dalam bidang optimasi dari Intel Russia dan juga Tim Pustaka Performasi Intel. Pada awalnya tujuan utama dari proyek OpenCV ini dideskripsikan sebagai berikut ini : Penelitian penginderaan pada citra digital tidak hanya melalui kode program terbuka, tetapi juga kode yang telah teroptimasi untuk infrastruktur penginderaan citra. Menyebarkan ilmu citra dengan menyediakan infrastruktur bersama dimana para pengembang dapat menggunakan secara bersama sehingga kode akan tampak lebih mudah dibaca dan ditransfer. Membuat aplikasi komersial berbasiskan citra dimana kode yang telah teroptimasi tersedia secara bebas dengan lisensi yang sudah tersedia secara bebas dan tidak mensyaratkan program itu harus terbuka atau gratis.
OpenCV dapat dijalankan pada :
2. Android 3. Maemo 4. FreeBSD 5. OpenBSD 6. IOS 7. BlackBerry 10 8. Linux 9. OS X
OpenCV ini memiliki banyak fitur yang dapat dimanfaatkan , berikut adalah fitur utama dari OpenCV antara lain: Image dan video I/O Dengan ini kita dapat membaca data gambar dari file atau dari umpan video langsung Dan juga dapat menciptakan file gambar ataupun video. Computer Vision secara umum dalam pengolahan citra digital digunakan untuk low dan mid level API) Dengan ini kita dapat melakukan experimen uji coba dengan berbagai standar algoritma computer vision. Termasuk juga deteksi garis, tepi, pucuk, proyeksi elips, image pyramid untuk proses gambar multi skala, pencocokan template dengan berbagai transform ( Fourier, cosien diskrit, distance transform) dan lain-lain. Modul computer vision masuk kedalam jenis level tinggi. Di dalam computer vision sering kali kita memerlukan machine learning atau metode AI lainnya beberapa metode tersebut tersedia dalam paket OpenCV machine learning Sampling gambar dan transformasi Di dalam OpenCV terdapat antar muka untuk substraksi subregion dari gambar , random sampling, rotating dan lain-lain. Metode ini bertujuan untuk menciptakan dan menganalisa gambar biner Metode untuk memperhitungkan pemodelan 3D.
Ada dua istilah penting disini yaitu Opencv dan python. Apa itu OpenCV adalah sebuah library(perpustakaan) yang digunakan untuk mengolah gambar dan video. Kata open pada OpenCV dimaksudkan opensource gratis, tidak berbayar, bisa didownload dimana saja. Sementara CV pada kata OpenCV adalah kependekan dari Computer Vision,ini berarti menggunakan komputer yang diambil untuk mengolah image (citra/gambar) yang ditangkap oleh alat perekam seperti kamera atau webcam yang dikonversi dari analog ke digital lalu diolah dalam komputer. pemrosesan gambar memiliki banyak tujuan dalam pengolahan image ini ada banyak diantaranya untuk memperbaiki kualitas gambar atau untuk identifikasi gambar. Python itu apa sih ? Python merupakan bahasa pemrograman yang banyak digunakan di dunia komputer. Kemampuan python untuk mengolah citra sangatlah terbatas untuk itu perlu meng import library dari OpenCV. Disini mari kita bahas keterkaitan antara OpenCV dan Python. Contoh penerapan OpenCV dengan Python adalah kamera yang dipasang di parkiran untuk membaca plat nomor. plat nomor ini akan dikonversi dari analog ke digital lalu di olah menjadi karakter sehingga menjadi data yang bisa dijadikan sebagai informasi penting. Contohnya adalah deteksi kulit berjerawat, deteksi ini wajah,mata, kulit dari suatu image atau video. Bisa juga mendeteksi semua bagian wajah. Intinya OpenCV bersama Python dimanfaatkan untuk mengolah image atau video sesuai dengan tujuan masing-masing yang melibatkan kamera untuk menangkap gambar lalu diolah di komputer. Sebenernya, OpenCV bisa digunakan menggunakan bahasa C++ dan java, selain Python tetapi bahasa yang paling mudah dari ketiga ini adalah Python karena sederhana.
OpenCv adalah open source computer vision yang ditulis dalam bahasa C++, untuk latihan disarankan menggunakan jupyter notebook. cara mudah adalah menggunakan google colabs karena anda tidak perlu instalasi opencv selainitu kita dapar digunakan free computing power gpu dari google. Untuk menggunakan library opencv gunakan perintah seperti import cv2. Memerlukan library pendukung numpy dan matplotlib selain cv2. Seperti contoh dibawah ini:
import cv2 import matplotlib.pyplot as plt import numpy as np Digunakan untuk membaca image gunakan perintah imread() img = cv2.imageread(‘namafile’) Untuk menampilkan sebuah image kita menggunakan modul matplotlib. Sementara itu modul numpy biasa di gunakan untuk melakukan fungsi copy atau salin. Perintah %matplotlib inline adalah perintah khusus untuk pada jupyter notebook agar image ditampilkan inline dalam notebook %matplotlib inline np.copy() merupakan fungsi untuk mengcopy array dari image. img_bgr = np.copy(img) cv2.cvtColor(source_img, color_space) merupakan fungsi yang di gunakan untuk melakukan konversi color space. Seperti yang sudah kita dibahas sebelumnya defaul dari Opencv merupakan BGR. cv2.cvtColor(img_bgr, cv2.COLOR_BGR2RGB) aka melakukan konversi dari BGR menjadi RGB. img_rgb = cv2.cvtCOLOR(img_bgr, cv2COLOR_BGR2RGB)
Jika anda menggunakan google colabs, gunakan library dan perintah untuk melakukan upload data. Saat akan dieksekusi google colabs akan menampilkan tombol untuk upload data. Contoh dibawah ini : from google.colab import files files.upload()
Dalam hal ini pertama memulai menggunakan OpenCV dengan bahasa pemrograman python lalu kita gunakan terlebih dahulu untuk mengelola suatu objek gambar. Mari kita simak pembahasan berikut ini: Membaca gambar Gunakan fungsi cv2.imread () untuk membaca gambar dan gambar harus berada dalam direktori kerja. Beberapa fungsi membaca lainnya diantaranya lain: cv2.IMREAD_COLOR : Memuat gambar berwarna. Setiap transparasi gambar akan terbengkalai. cv2.IMREAD_GRAYSCALE : Memuat gambar dalam mode grayscale cv2.IMREAD_UNCHANGED : Memuat gambar dalam mode saluran alfa Menampilkan gambar Gunakan fungsi cv2.imshow () merupakan perintah untuk menampilkan gambar di jendela. jendela secara otomatis akan menyesuaikan dengan ukuran gambar. Yang pertama yaitu nama jendela yang merupakan string. Kedua adalah Kita bisa membuat jendela sebanyak yang kita mau, tapi dengan nama jendela yang berbeda. cv2.waitkey() merupakan fungsi pengikat keyboard maksudnya adalah waktu dalam milidetik. jika kita menekan sembarang tombol di keyboard sebuah program akan terus berjalan. Lali jika 0 dilewati maka akan masuk proses menunggu tanpa batas waktu. Hal ini juga dapat diatur dalam mendeteksi menekan tombol tertentu seperti, jika tombol a ditekan. cv2.destroyAllWindows () merupakan fungsi untuk menghancurkan atau menutup jendela. jika kita ingin menutup jendela tententu gunakan fungsi cv2.destroyAllWindows(). Menyimpan Gambar Gunakan fungsi cv2.imwrite () untuk menyimpan gambar. Fungsi cv2.imwrite ini merupakan untuk menyimpan gambar dalam format PNG dan di simpan di direktori kerja.
Kesempatan lowongan magang terbaru di tahun 2024
Baca Selengkapnya..