Home / Pemrograman / C# / Menampilkan Webcam Dengan C# Dan EmguCV

Menampilkan Webcam Dengan C# Dan EmguCV

Menampilkan Webcam Dengan C#

Kali ini saya akan sedikit share tentang bagaimana membuat aplikasi webcam viewer sederhana dengan C#. Pada project kali ini saya menggunakan library EmguCV atau boleh dikatakan OpenCV wrapper untuk C#. Sebenarnya library EmguCV ini lebih ditujukan untuk image processing dan computer vision. Namun kali ini kita akan gunakan untuk membantu membuat aplikasi webcam viewer sederhana. Pertama-tama download terlebih dahulu library EmguCV pada link berikut ini http://www.emgu.com/wiki/index.php/Main_Page. Kemudian lakukan instalasi seperti install aplikasi biasa. Setelah proses instalasi selesai, baru kemudian kita dapat memulai membuat projectnya.
Buat project windows form aplication seperti biasa. Kemudian hal yang pertama kita lakukan adalah menambahkan library pada project yang kita buat. Klik kanan pada project kemudian klik Add reference.

Menampilkan Webcam Dengan C#
Menampilkan Webcam Dengan C#

Pada tab browse pilih lokasi penginstalan EmguCV tadi kemudian masuk ke folder bin. Disana terdapat file dll (library) yang dapat kita import ke project yang kita buat. Pilih file Emgu.CV.dll Emgu.CV.UI.dll dan Emgu.Util.dll.

Menampilkan Webcam Dengan C#
Menampilkan Webcam Dengan C#

Setelah menambahkan library tugas kita belum selesai, kita harus menambahkan beberapa komponen EmguCV ke toolbox. Komponen ini nantinya dapat digunakan untuk menampilkan gambar seperti picture box. Untuk menambahkan komponen, terlebih dahulu pilih bagian General pada Toolbox. Kemudian klik kanan dan pilih Choose Items.

Menampilkan Webcam Dengan C#
Menampilkan Webcam Dengan C#

Lanjutkan dengan mengklik tombol Browse dan pilih file Emgu.CV.UI.dll pada folder bin di lokasi folder EmguCV Anda. Kemudian pada bagian .NET Framework Components beri centang pada bagian Image Box dan kemudian klik OK.

Setelah itu otomatis komponen Image Box akan muncul pada Toolbox Anda pada bagian General.

Sekarang kita lanjutkan pekerjaan kita dengan mendesign user interface terlebih dahulu. Susunlah tampilan GUI windows form Anda seperti ini. Gunakan komponen Image Box dari EmguCV sebagai pengganti Picture Box. Besar ukuran Image Box saya setting sebesar 340 x 240.

Selanjutnya Anda dapat menuliskan sourcecode di bawah ini.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Emgu.CV;
using Emgu.CV.Util;
using Emgu.CV.Structure;

namespace WebcamViewer
{
    public partial class Form1 : Form
    {
        Capture capture;
        bool captureProgress;
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (capture == null)
            {
                try
                {
                    capture = new Capture();
                }
                catch (NullReferenceException excpt)
                {
                    MessageBox.Show(excpt.Message);
                }
            }
            if (capture != null)
            {
                if (captureProgress)
                {
                    Application.Idle -= ProcessFrame;
                }
                else
                {
                    Application.Idle += ProcessFrame;
                }
                captureProgress = !captureProgress;
            }
        }

        private void ProcessFrame(object sender, EventArgs arg)
        {
            // Proses pengambilan gambar
            // Gambar akan diambil dari camera kemudian ukurannya dikecilkan menjadi 320 x 240
            // Setelah itu gambar ditampilkan pada Image Box
            Image<Bgr, Byte> ImageFrame = capture.QueryFrame();
            imageBox1.Image = ImageFrame.Resize(320, 240, Emgu.CV.CvEnum.INTER.CV_INTER_LINEAR, true);
        }

        private void ReleaseData()
        {
            if (capture != null)
            {
                capture.Dispose();
            }
        }
    }
}

Selanjutnya coba jalankan aplikasi webcam viewer Anda. Jika tidak ada kesalahan maka setelah menekan tombol Start Camera maka pada windows form akan muncul gambar yang dicapture oleh webcam Anda.

Sekian tutorial kali ini, semoga bermanfaat 🙂

About Eko Rudiawan

Seorang lelaki yang punya ketertarikan dengan dunia elektronika dan robot yang saat ini sedang serius belajar tentang dunia bisnis dan internet marketing. My dream to be success technopreneur

Leave a Reply

Your email address will not be published. Required fields are marked *

13 + 12 =