EmguCV Capture Dari Kamera

Membuat aplikasi yang dapat menampilkan hasil kamera dari WebCam dapat dilakukan dengan menggunakan OpenCV. OpenCV menggunakan bahasa C++, namun jika anda ingin menggunakan bahasa C#, maka anda membutuhkan library penghubung. EmguCV dapat menghubungkan .NET dengan OpenCV. Jika anda menggunakan bahasa C# tentu anda akan berinteraksi dengan .NET framework. Berikut adalah kode standar untuk membaca frame kamera.

Buat property global.
Capture capture = null;

Dalam Form_Load lakukan inisialisasi.
capture = new Capture(0); 
Memasukkan parameter pertama berupa 0 artinya kita membaca kamera dengan indeks 0 pada perangkat komputer. Sistem menyimpan list perangkat kamera yang terhubung ke komputer, kita tinggal masukkan indeks ke berapa perangkat kamera yang akan digunakan.

Buat event handler ketika sistem membaca frame kamera.
capture.ImageGrabbed += capture_ImageGrabbed;

Mulai pembacaan frame kamera.
capture.Start();

Ini adalah fungsi event handlernya.
void capture_ImageGrabbed(object sender, EventArgs e)
{
}

Di dalamnya kita tuliskan kode lagi. Baca setiap frame dari kamera dan tampung ke sebuah variabel.
Image<Bgr, byte> frame = capture.RetrieveBgrFrame();

Tambahkan komponen ImageBox pada form dan tuliskan kode ini. Hasil tampung frame dimasukkan ke ImageBox untuk ditampilkan,
imageBox1.Image = frame;

Ketika aplikasi diakhiri, objek kamera perlu dihancurkan dari memori. Tambahkan kode ini di dalam event handler Form_Closing.
if (capture != null)
{
    capture.Dispose();
}
Pertama, cek apakah objek kamera telah berisi atau tidak. Jika berisi, maka hancurkan objek tersebut.

Ini adalah hasil running aplikasinya. Telah berhasil menampilkan hasil tangkapan dari WebCam.


Ahmad Jawahir

Related Posts:

Tidak ada komentar:

Posting Komentar