Langsung ke konten utama

Pemograman: Image Processing Manipulation with Java Processing and JMRyon - Motion Detection

Hello guys, Selamat datang di A.R.T setelah tutorial sebelumnya kita belajar Instalasi JMRyon dan belajar Manipulasi Pixel. sekarang kita coba belajar membangun Motion Detection dengan JMRyon. kedengarannya memang sedikit rumit, tapi sebenarnya mudah. 

konsep dari Motion Detection ini adalah dengan melakukan pelacakan terhadap GLOB Processing, yang merupakan library untuk melakukan pencocokan terhadap pola. pada kasus kita sekarang, kita ingin melakukan pencocokan terhadap pixel warna, dengan menganalisis satu pixel ke pixel lainnya, kelihatannya memang sulit, tapi sebenarnya mudah. 

yang cukup kita lakukan adalah, mengaktifkan library JMyron.findGlobs dan menyempurnakan pencarian dengan JMyron.minDensity (int val) dan JMyron.maxDensity (int val) (yang keduanya mengambil piksel-dianggap sebagai input). 

oke, daripada kelaamaan di teory, silahkan ngeCoding dengan Source Code dibawah ini:

import JMyron.*;

JMyron theMov;
int[][] globArray;

void setup() {
size(640, 480);

theMov = new JMyron();
theMov.start(width, height);
theMov.findGlobs(1);
theMov.trackColor(255, 255, 255, 255);

stroke(255, 0, 0); // red outline
}

void draw() {
theMov.update();
int[] currFrame = theMov.image();

// draw each pixel to the screen
loadPixels();
for (int i = 0; i < width*height; i++) {
pixels[i] = currFrame[i];
}
updatePixels();

// draw the glob bounding boxes
globArray = theMov.globBoxes();
for(int i = 0; i < globArray.length; i++) {
int[] boxArray = globArray[i];

// set the fill colour to the average of all colours in the bounding box
int currColor = theMov.average(
boxArray[0],
boxArray[1],
boxArray[0] + boxArray[2],
boxArray[1] + boxArray[3]);
fill(red(currColor), green(currColor), blue(currColor));

rect(boxArray[0], boxArray[1], boxArray[2], boxArray[3]);
}
}

public void stop() {
theMov.stop();
super.stop();
}


dari contoh diatas, kita membuat sebuah Bounding Box (Satu Kesatuan Box) diantara banyak Globs. anda bisa melihatnya diantara box yang besar dengan box yang kecil. warna utama dari Bounding Box, dalam hal ini warna abu-abu, akan menjadi warna keseluruhan untuk Pixel. coba anda arahkan tangan anda seperti gambar dibawah, maka pixel terpecah dan rata-rata warna masih tetap sama dengan Bounding Box.



bagaimana bisa terjadi? kita menggunakan tehnik JMyron.trackColor(int red, int green, int blue, int tolerance) untuk melakukan determinasi warna mana yang harus dicocokan oleh Globs. makanya saat anda mengarahkan tangan anda ke Bounding Box, Globs langsung memecah menjadi beberapa pixel, dan menyesuaikan dengan warna baru. bisa dilihat, ada pixel globs yang berwarna  abu-abu tua. itulah konsep dasar dari Motion Detection JMRyon. silahkan dipelajari Source Code diatas, selamat belajar dan semoga berhasil. 

Komentar

Postingan populer dari blog ini

Download APK Pokemon GO

Download APK Pokemon GO - game pokemon Go merupakan game yang viral baru-baru ini. game yang sebenarnya diangkat dari film kartun pokemon kini dikembangkan dalam bentuk yang lebih realistis, dimana penggunanya bisa merasakan sensasi permainan yang begitu nyata. Download APK Pokemon GO adalah game yang paling ditunggu-tunggu oleh penggemarnya yang sekarang sudah rilis! Namun belum bisa di dapatkan di App Store dan Play Store Indonesia soalnya baru dibuka dalam wilayah negara Amerika dan Australia saja. tetapi tidak usah kawatir, kami akan membuatkan tutorial cara Download Pokemon Go dimana kalian bisa menggunakan smartphone IOS maupun Android sehingga kalian dapat memainkan game ini sekarang.   berikut adalah Cara Download APK Pokemon GO dan cara menginstall Pokemon Go : smartphone Android: Download dulu aplikasinya(.apk) nya disini Install Pokemon Go sesuai dengan petunjuk installasi di smartphone kalian. selesai. smartphone apple(IOS): Untuk smartp...

Sedih, Pacaran 6 tahun Dikalahkan Pria yang Langsung Melamar

Kisah di bawah ini merupakan kisah nyata seorang netizen yang membagikan kisah pahitnya di akun Facebooknya. Bagaimana tidak, kisah cinta yang dirajut dengan pacarnya selama 6 tahun pupus ‘dipotong’ oleh seorang pria yang langsung melamarnya. Jodoh, maut dan rezeki memang Tuhan yang mengatur, kita hanya bisa berusaha untuk mencari semuanya. Namun, hasil dari usaha kita tetap Tuhan yang menentukan. Dalam akunnya, pria yang mungkin merasa ‘terpukul’ dengan kejadian yang menimpa dirinya berbagi cerita tentang kisah pahit tentang percintaan yang dialaminya. Dalam foto screenshot yang diunggah di Facebooknya, pria ini menuliskan: “6 tahun sudah… Sekeras apapun aku berjuang, sekuat apapun aku bertahan… Kalo bukan jodoh mau gimana lagi… Tolong panggilin tim medis.. “ Tidak tanggung-tanggung, kisah yang dibagikannya di Facebook ini pun mendapatkan respon yang luar biasa dari para netizen, bahkan sudah di share oleh ribuan orang. Kebanyakan netizen memberikan semangat agar pria ini tetap seman...

Pelantikan Taruna SMK N 2 Sragen Angkatan ke-3

Bertempat di lapangan sport centre SMKN2 Sragen Pelantikkan Taruna yang dilakasanakan selama 1 tahun khusus kelas X . Pelantikan yang dihadiri pejabat teras kabupaten Sragen terdiri SEKDA mewakili Bupati, Kodim, Batalyon 408, PLORES 955 Sragen, Sekretaris Kanwil Depdikbud.Prop.Jateng. kepala diknas kab Sragen berserta tamu undangan dan orang tua wali murid. Ketarunaan pada hakekatnya untuk membentuk manusia yang berkarakter ,baik dan bijak seperti yang disampaikan pidato Bapak SUGIYARSO,,SPd.MPd. Anak anak SMKN2 Sragen adalah aset sumber daya manusia yang berkwalitas bagi kab. Sragen, karena SMKN2 Sragen beperan aktif mensukseskan program PEMKAB.SRAGEN. GERBANG SUKOWATI melalui pengentasan kemiskinan usia produktif karena 80 % out put atau lulusan SMKN2 Sragen telah tersalur lewat rekrutmen karyawan di berbagai perusahaan. SELAMAT ANAK ANAKKU I HOPE SUCSES FULLY FOR YOU ALL.....AMIN Part-1 Part-2 Part-3