Anda di halaman 1dari 7

DRAWING IMAGE DENGAN WEBCAM

BERBASIS CSHARP

Pelsri Ramadar Noor Saputra

Teknik Informatika, Sekolah Tinggi Ilmu Komputer PGRI, Banyuwangi, Indonesia1*


Email : ramayana_x@yahoo.com
Abstrak Kata Kunci disediakan oleh koordinat sudut X
Teknologi di era Aforge.Net, Mirror, aForge.net. dan sudut Y object
modern saat ini Euclidean Color yang tertangkap
semakin berkembang Filtering, Grayscale Tujuan dari penelitian
oleh webcam.
pesat, seiring dengan Filtering, BlobCounter. project ini adalah
berjalannya waktu. aplikasi mampu 2. Teori Penunjang
Masyarakat semakin 1. Pendahuluan mendeteksi adanya 2.1. AForge.Net
dimanjakan oleh Dengan warna dari suatu AForge.NET
fasilitas-fasilitas yang perkembangan dan object yang telah merupakan
telah disediakan oleh kemajuan teknologi dipilah / difilter framework open
produk-produk baik maka keberadaan pewarnaannya. source C# yang
berupa hardware webcam bagi PC / Kemudian object yang dirancang bagi para
maupun software dari laptop sudah tidak terdeteksi dilakukan pengembang dan
pada perusahaan asing lagi. Maka dari penghitungan peneliti di bidang
komputer ternama. itu, fungsi dari koordinatnya komputer vision dan
Terutama kecanggihan webcam yang secara berdasarkan sumbu X artificial intelligence
pada pengambilan konvensional hanya dan sumbu Y untuk yang meliputi
suatu gambar (capture men-capture image menggambar suatu pengolahan citra,
image) yang dapat akan dikembangkan image pada jaringan syaraf tiruan,
difungsikan dalam untuk menggerakkan picturebox. algoritma genetika,
berbagai hal dan cursor mouse secara logika fuzzy, machine
bentuk. virtual. Pada Di dalam penelitian ini learning, dan robotika.
penelitian ini telah untuk pengembangan
Tujuan dari perangkat lunak 2.2. Mirror
dilakukan
penelitian ini, aplikasi dalam lingkungan Mirror merupakan
pengambilan gambar
dapat menggerakkan sistem operasi pembalikan object
dengan
pointer mouse dengan Windows. Batasan image yang
menggunakan
membaca object tersebut perlu tercapture dari
webcam dengan
berwarna bergerak ditegaskan karena webcam sehingga
memposisikan object
yang tercapture dari konsep dinamic link gerak object image
yang ditangkap
webcam dan dapat library hanya dikenal sesuai dengan image
dengan
menggambarkan image di dalam lingkungan yang ter-capture.
menggunakan
pada picturebox sesuai sistem operasi Sehingga
rectangle / marker.
deteksi object yang Windows. Selain itu pergerakannya lebih
Kemudian hasil
tercapture pada sebagai kasus uji di sesuai dengan object
deteksi tersebut
webcam. Pengolahan dalam penelitian ini aslinya
digunakan untuk
gambar untuk melacak juga dibatasi
melakukan
object menggunakan implementasinya 2.3. Euclidean
penggambaran pada
sumber gambar pada file DLL dengan Color Filtering
picturebox yang telah
pengolahan Visual Studio yang Euclidean Color
disediakan. Pengguna
perpustakaan terbuka akan diakses dari Filtering merupakan
dapat mengambil
yaitu Aforge.Net dan program yang dibuat filter yang digunakan
gambar secara visual
ditulis dalam Visual C# dengan Visual Studio untuk memfiltering
sesuai posisi yang di
2010. itu sendiri. warna yang
inginkan yang
Posisi hasil diperoleh dari gambar diinginkan pada
pelacakan objek dapat yang ter-capture. Batasan masalah gambar atau citra
digunakan sebagai Penelitian ini masih pada proyek ini antara berdasarkan
pengganti dapat dikembangkan lain : Komponen nilai RGB
penggambaran yang lagi untuk image tersebut.
- Pengenalan object
dilakukan oleh cursor meningkatkan Kombinasi RGB inilah
target berdasarkan yang dijadikan filter
secara manual, efektifitas kerja
sistem, salah satunya pada warna object sebagai penentu lolos
sehingga didapatkan
suatu aplikasi yang adalah kemampuan dalam citra. atau tidaknya suatu
mampu menggambar untuk pengambilan - Model object warna pada saat
image sesuai dengan gambar dengan adalah berwarna dijalankan.
koordinat rectangle object berwarna yang telah kita filter
yang tercapture pada dengan latar sebelumnya. 2.4. Grayscale
camera, dan background yang Filtering
- Background image
menggambarkan tidak menyolok. GrayScale Filter
diharapkan netral digunakan untuk
secara langsung. Dan Pemrograman
hasil penggambaran drawing image dengan object yang merubah gambar
dilakukan secara real menggunakan akan kita capture. berwarna menjadi
time. Dynamic Link Library - Penggambaran hitam putih dengan
(DLL) yang image dilakukan cara mengubah efek
dengan membaca warna dari masing
masing pixel menjadi
derajat ke abu - metode library sesuai dengan yang
abuan. AForge.Imaging yang dari molekul lain
memiliki berbagai kecuali bahwa arti
2.5. BlobCounter macam class dan kanan ke kiri di satu
Gambar image berdasarkan
BlobCounter koordinat X dan Y
class yang dibutuhkan sisi berkorespondesi
digunakan untuk pada penelitian ini dengan arti kiri ke
menghitung object, yaitu class Mirror, kanan disisi lain, pada
memfilter obyek, Finis class wenangan kiri dikenal
mengekstrak obyek h EuclideanColorFilterin sebagai levo atau lx
dan mendapatkan Gambar 3.1 Flowchart g, class dan wenangan kanan
dimensi obyek yang System Program GrayscaleBT907serta dikenal sebagai
ada digambar, yang class Blobcounter. dextro atatu dx.
dipisahkan oleh latar Dimana x adalah
Dari perancangan
belakang hitam Pemrosesan molekul referensi.
system program
dengan Aforge.Video dengan
diatas, yang pertama
menggunakan prinsip videoCaptureDevice
kali dilakukan adalah Sedangkan
algoritma pelabelan setelah penyeleksian
pengenalan driver EuclideanColorFilterin
komponen terhubung. dari cameraCombo.
webcam yang sudah g merupakan suatu
Algoritma ini Ukuran awal
terinstall pada laptop / metode yang
memperlakukan FrameSize adalah
PC. Lalu dilakukan memfilter keseluruhan
semua pixel dengan 320 x 240 pixel, dan
capture otomatis dan pixel suatu image,
nilai kurang atau FrameRate disetting
secara bersamaan dimana warna yang
sama dengan batas sebesar 10FPS.
dilakukan metode berada di dalam atau
ambang background Kemudian
mirror untuk diluar lingkup RGB
sebagai latar videoSource
membalikkan image dengan pusat tertentu
belakang, sedangkan digandakan menjadi
yang tercapture. dan radius. Hal ini
pixel dengan nilai dua bagian yaitu real
Selanjutnya adalah untuk
yang lebih maka image dan cloning
deteksi object mempertahankan
diperlakukan sebagai image yang akan
berwarna yang telah pixel dengan warna
pixel obyek. Dan dari diproses lebih lanjut.
dipilah, untuk didalam atau diluar
hasil tersebut bisa
dilakukan lingkup yang lebih
digunakan untuk Metode Class Mirror
pendeteksian gerak spesifik dan mengisi
pemasangan merupakan metode
serta penghitungan pixel sisanya dengan
rectangle pada pixel pemfilteran
marker. warna yang lebih
object. pencerminan sumbu
X dan / atau Y spesifikasi. Dalam
3. Perancangan 3.2. Perancangan proses ini warna yang
System Program (horizontal dan
Pengolahan Citra lebih spesifik
3.1. Perancangan vertical mirroring).
Pada tugas project ini, dipertahankan
Perangkat Lunak Filter tersebut
untuk proses sedangkan sisanya
menerima 8bpp
pengolahan citra diubah menjadi pixel
gambar keabu-abuan
Start penulis menggunakan bernilai 0 atau hitam.
dan 24bpp gambar
metode dari library Filter ini menerima 24
berwarna untuk di
AForge.Image, dan 32bpp image
Deteksi proses. Fungsi utama
sedangkan untuk berwarna untuk
Driver metode ini adalah
Webcam proses pengolahan diproses.
merefleksikan sebuah
video metode yang
bayangan cermin
Menampilkan digunakan dengan
yang terduplikasi dari
gambar dari library AForge.Video.
sebuah object yang
VideoSource Pengolahan video
muncul identik tapi
yang pertama ini
terbalik. Dan sebagai
digunakan untuk
efek optik itu
mendeteksiNo adanya
Otomati merupakan hasil dari
driver webcam pada
s refleksi dari zat zat
Laptop atau PC
Capture seperti cermin atau
kemudian
air. Ini juga
Yes menampilkan gambar
merupakan konsep
yang tercapture
Mirorring dalam geometri dan
sehingga dapat
dapat digunakan
digunakan untuk
sebagai proses
proses pengolahan
Deteksi object konseptualisasi untuk
citra selanjutnya.
3-D struktur. Dalam
kimia, sebuah cermin
Deteksi gerak Proses pengolahan
gambar adalah
citra selanjutnya
molekul yang memiliki
menggunakan
Penghitungan marker dan tata ruang yang
koordinat X dan Y
If (CheckMouse.Enable = true)
warna = new SolidBrush
Graphics h = pictDrawing.
CreateGraphics()
h.FillEllipse(warna, startPointX,
Dalam metode diproses startPointY, 1, 1)
GrayscaleBT709 menggunakan if (x != 0 || y != 0)
adalah suatu metode RecursiveBlobCounte if (startPointX != x || startPointY
algoritma untuk r. Pengertian != y)
RealPen pensil = new Pen
merubah dimana sederhana mengenai
ImageGraphics z = pictDrawing.
suatu image yang recursiveBlobCounter
berwarna menjadi adalah suatu metode CreateGraphics()
image keabu-abuan. untuk diterapkan pada z.DrawLine(pensil,
Koefisien nilai image dengan object startPointX, startPointY
perubahannya diatur yang berukuran kecil. , x, y)
dengan Red bernilai x = startPointX
0,2125, Greenbernilai y = startPoint;
0,7154 dan Blue Filter melakukan else
dengan nilai 0,0721. penyaringan blob dari x = startPointX
Masing masing nilai ukuran object tersebut y = startPointY
pixel RGB pada suatu di sumber gambar EndIf
image dikalikan tertentu. Semua blob EndIf
dengan nilai yang lebih kecil atau
lebih besar dari batas Dari flowchart yang
konstanta yang telah telah dilakukan, dapat
ditentukan untuk spesifikasi akan
dihapus dari image. diketahui bahwa
keseluruhan pixel setelah pemilihan
image tersebut. Dan Filter pengolahan Cloning
pixel suatu image driver
Image webcam
hasil akhirnya akan kemudian capture
didapatkan suatu tidak memperlakukan
semua pixel berwarna image, maka proses
image keabu-abuan selanjutnya adalah
hitam sebagai pixel Mirorring Mirorring
yang sesuai. pemfilteran warna
object dan semua
pixel hitam sebagai yang akan diolah
Euclidean
lebih lanjut. Untuk
Metode yang terakhir latar belakang.
Filter
pemilihan warna
adalah metode
blobcounter. Metode didapat dari
ini menghitung dan Hasil daripada ColorDialog
GrayScale yang
mengekstrak object blobcounter akan merupakan
Filter bawaan
yang berdiri sendiri digunakan untuk dari komponen
pada suatu image penghitungan VisualStudio.
BlobCounter
dengan rectangle suatu object Tentukan filter warna
menggunakan spesifik. Kemudian sesuai warna object
komponen label apabila dilakukan yang
Objectakan ditangkap,
algoritma yang pencentangan selanjutnya
Position image
terkoneksi. Algoritma checkmouse, maka akan di duplikat
ini memperlakukan dilakukan penentuan dengan catatan image
Check
semua pixel dengan koordinat X dan Y asli
Koordinat akan
nilai yang kurang atau dengan penghitungan mempertahankan
sama dengan sebagai berikut : warna, bentuk object,
Grouping
serta gerak sesuai
BackgroundThreshold Image
sebagai background. Rectangle rects = BlobCounter. image yang
Akan tetapi pixel GetObjectRectangle tercapture, dan image
dengan nilai yang If (rects.Lenght > 0) duplikat yang akan
lebih tinggi akan Rectangle objectRects = rects[0] diproses.
diperlakukan sebagai Graphics g = Graphics.FromImage(Image)
pixel object. Pada Using (Pen pen = new pen()) Dan dari kedua image
kasus ini blobcounter g.DrawEllipse(pen, objectRect) asli maupun duplikat,
mencari class yang startPointX = objectRect.X masing-masing
mendukung 8bpp startPointY = objectRect.Y dilakukan metode
image keabu-abuan mirroring sehingga
dan 24/32bpp image gerak object akan
berwarna yang sesuai dengan object
setidaknya yang tercapture.
3.3. Perancangan Draw Line
Sedangkan jika tidak
mempunyai 2 pixel
lebar. Image yang Deteksi Object dilakukan mirroring
hanya mempunyai 1 maka gerak image Finis
Start Stop
secara horizontal
pixel lebar hanya bisa h
diproses jika pixel Gambar 3.3.1 akan berlawanan arah
tersebut diputar Color Flowchart dengan gerak aslinya.
terlebih dahulu, atau Filtering Deteksi Object Tujuan dari masing-
pixel tersebut dapat masing image asli

Image
Capturing
maupun duplikat suatu image. Gambar 3.3.8. Drawing
dilakukan mirroring Rectangle yang image
agar kedua hasil dibuat dari proses
image tersebut sesuai diatas, kemudian
4. Uji Coba dan
dengan gerak object akan dihitung
Pembahasan
di depan webcam koordinat sumbu X
4.1. Pengujian
pada saat dilakukan dan sumbu Y,
Pengujian dilakukan
penggabungan penghitungan awal
untuk memperoleh
kembali. akan ditentukan Gambar 3.3.4.
Filtering parameter penting
sebagai perbandingan
sebagai acuan untuk
Selanjutnya pada koordinat awal
pengembangan
image duplikat dengan koordinat
selanjutnya, jika
dilakukan filtering selanjutnya.
masih diperlukan
object dimana sebuah Perbandingan nilai
suatu
object berwarna akan tersebut yang akan
penyempurnaan
dipertahankan warna digunakan untuk
berdasarkan proyek
aslinya dan sisanya proses
yang telah dibuat.
akan dianggap penggambaran image
Pengujian dilakukan
sebagai background pada picturebox yang
sesuai tahap yang
dengan latar telah disediakan.
telah dijelaskan
berwarna hitam,
Gambar 3.3.5. diatas. Dengan
setelah dilakukan Yang terakhir adalah
Grayscale pengambilan contoh
penghitungan warna penggabungan
image dilakukan
pixel pada pusat kembali image asli
dengan
tertentu. dengan image
menggunakan rubik
duplikat dimana
3x3 dan mengcapture
Proses selanjutnya image asli berada
titik tengah merah
adalah mengubah pada posisi awal, dan
dikeliling sisi rubik
image berwarna hasil rectangle akan
warna putih, program
menjadi keabu-abuan tetap terlihat pada
berhasil mendapatkan
(Grayscale). Tujuan image asli tersebut.
tengah warna merah
pengubahan object
tersebut dan
berwarna menjadi
kemudian
abu-abu bertujuan
Gambar 3.3.6. membuatkan marker
untuk penghitungan
Filtering Warna pada warna yang
proses BlobCounter
telah dipilih. Ketika
yang untuk proyek ini
CheckBox enable
mendukung sebuah
drawing dicentang,
image dengan object
maka aplikasi secara
berwarna keabu-
otomatis akan
abuan. Serta
menggambarkan
penghitungan
suatu image garis
rectangle nya yang
sesuai dengan
didapat dari hasil
marker / rectangle
BlobCounter. Gambar 3.3.2
Capturing Image yang tercapture pada
camera sesuai
Pada object yang
dengan sumbu X dan
akan ditangkap
sumbu Y yang telah
dengan dilakukan
didapat dan disimpan
pemilahan warna,
pada saat aplikasi
maka selanjutnya
tersebut berjalan dan
rectangle yang telah
dilakukan secara real
dibuat akan mengikuti Gambar 3.3.7. Object time. Pada tabel 1
gerak object berwarna Detection / Moving Mouse memperlihatkan
tersebut selama
perbandingan capture
dalam lingkup image
image di ruang dan
yang tercapture serta
Gambar 3.3.3. intensitas cahaya
warna yang
Mirroring yang berbeda.
permanen, dalam
Sedangkan pada
artian tidak ada
tabel 2
pembiasan warna
memperlihatkan
karena kontensitas
kualitas pengambilan
cahaya yang
sampel warna yang
berlebihan atau
terdapat pada tiap sisi
beberapa object
rubik 3x3 dengan
berwarna sama dalam
menggunakan contoh pada kedua object sebagai drawing akan terkunci sesuai
1 pada tabel pertama. tersebut. Object image dikarenakan posisi rectangle
lainnya dengan pada saat terdapat 2 tersebut. Sesuai
No Ruangan Intensitas pewarnaan yang object atau lebih sumbu X dan sumbu
Cahaya sama dapat dengan warna yang Y yang terakhir
menyebabkan ambigu sama, maka tertangkap.
1 Terbuka Terang pada penghitungan rectangle tidak dapat
rectangle sehingga menentukan object 7. Daftar Pustaka
rectangle akan mana yang akan [1]. Andrew Kirillov,
2 Terbuka Gelap berpindah-pindah diikuti. Sehingga AForge.NET
tergantung dimana rectangle akan framework: 2.2.3,
object lainnya dirasa berpindah-pindah http://aforgenet.c
mempunyai warna tergantung object om/framework,
3 Tertutup Terang yang sama atau lebih mana yang December 12,
sama dari object mempunyai intensitas 2011.
utama yang akan warna yang lebih kuat
4 Tertutup Gelap [2]. Andrew Kirillov,
diproses pada proyek sesuai warna yang
ini. telah dipilih. VideoCaptureDe
Tabel 1. Hasil vice,
Perbandingan Ruangan
Dan penggambaran 6. Future Work http://www.aforge
Dan Cahaya
image line akibat Pada hasil akhir net.com/framewo
No Warna Sampel ruang
pergerakan rectangle proyek ini, setelah rk/docs/html/f4d3
yang patah-patah, meneliti pada c2ba-605c-f066-
1 Putih Sampel 1 karena pada suatu kesimpulan diatas f969-
saat rectangle juga maka selanjutnya 68260ce5e141.ht
2 Biru Sampel 1 terkadang kehilangan m, 2006.
pengerjaan Drawing
object berwarnanya Imaging dengan
3 Merah Sampel 1 dan menyebabkan [3]. C# Indonesia
metode pengenalan Team's,
penggambaran image warna akan diganti
4 Orange Sampel 1 Pentingnya
berhenti bergerak. karena pengenalan
Pada saat object penggunaan
5 Hijau Sampel 1 warna pada suatu
berwarna ditemukan object terlalu bias. framework,
6 kuning Sampel 1 kembali pada sumbu Dalam artian metode http://www.csharp
X dan Y tertentu maka ini tidak menghasilkan -
Tabel 2. Hasil Captue secara otomatis suatu hasil yang indonesia.com/20
Warna Image aplikasi akan 11/08/alasan-
memuaskan. Maka
menggambarkan kedepannya metode pentingnya-
4.2. Analisa Hasil kedalam picturebox menggunakan-
Dan Kelemahan ini akan diganti
sesuai sumbu X dan dengan metode framework.html,
Dari hasil pengujian Y dari rectangle yang Agustus 21,
terhadap suatu object pengenalan bentuk
tertangkap sehingga suatu object yang 2011.
yang telah difilter menyebabkan object
pewarnaannya dapat lebih spesifik. Seperti [4]. Andrew Kirillov,
image yang aan pengenalan object
diketahui bahwa digambarkan menjadi Lego pan tilt and
kualitas kamera, benda atau jari object tracking,
tidak jelas. tangan dengan pola
intensitas http://www.aforge
pencahayaan serta tertentu. Ini dapat net.com/articles/
4.3. Pembahasan mengurangi
warna yang dipilih Dari serangkaian uji lego_pan_tilt_ca
mempengaruhi kebingungan program mera/,
coba, analisa serta dalam penghitungan
kualitas gambar yang pencatatan November 19,
ter- capture. Sehingga rectangle. 2008
kelemahan teruji
pada saat object bahwa metode- [5]. Andrew Kirillov,
bergerak seringkali Kemudian dengan
metode yang dipakai hasil rectangle yang Motion Detection,
rectangle menghilang untuk memproses http://www.codep
karena warna yang sering hilang karena
suatu image dapat object dianggap tidak roject.com/KB/au
telah difilter dianggap menangkap object dio-
tidak ditemukan. ditemukan maka akan
berwarna walau tidak dibuat sebuah video/Motion_Det
Kemudian rectangle menghasilkan hasil penguncian rectangle ection.aspx,
tidak terfokus pada yang optimal. sehingga ketika object Maret 27, 2007
satu object berwarna yang ditangkap [6]. N/A, Computer
itu saja. Pada saat 5. Kesimpulan menghilang maka
Setelah hasil uji vision,
ada object lain rectangle akan tetap http://en.wikipedi
dengan warna yang terhadap suatu object ada pada posisi
berwarna maka dapat a.org/wiki/Compu
sama, maka terakhir sebelum ter_vision,
rectangle akan disimpulkan metode object menghilang.
ini belum sempurna January 12, 2012
berpindah pindah Dan cursor mouse
[7]. Gonzales, Digital
image
processing using
Matlab, July 17,
2006

Anda mungkin juga menyukai