Hough transform digunakan untuk mendeteksi adanya garis pada sebuah gambar, akan tetapi kini berkembang lebih lanjut, bahkan dapat mendeteksi lingkaran/ elipse maupun bentuk lainnya.
Jangan ditanya bagaimana prosesnya mendeteksinya, yang penting disini adalah team OpenCV sudah membuat fungsinya, dan kita belajar bagaimana mengolah output dari hough tranform ini. mulai dari yang sederhana terlebih dahulu yaitu garis.
Oia… kabar gembira nih, mulai dari latihan program 7 ini, source code sudah tidak dalam gambar lagi, karena layar monitor pc kantor (1024×768) sudah tidak mencukupi untuk di printscreen source lagi. lain halnya kalu saya buat dirumah, monitor pc dirumah saya yang full HD (1920x 1080) .
lanjut lagi, source code nya disini canny & hough transform.txt
sorry bentuknya pdf, pasti agak berantakan 😦
gak bisa upload bentuk lain(kendala di wordpress-nya nih)
Dan ini bentuk dari eksekusi program houghnya.
Program 7: Hough Transfrom Line
CvMemStorage* storage = cvCreateMemStorage(0);
berfungsi semacam array buffer untuk penyimpanan data dari hough-nya
lines = cvHoughLines2( canny, storage, CV_HOUGH_PROBABILISTIC, 1, CV_PI/180, 80,30, 10 );
nah ini dia pemanggilan fungsi hough yang line-nya. terlihat, gambar yang diolah diambil dari gambarnya canny lalu output disimpan di strorage. mode yang dipakai adalah hough probabilistic. yang lebih effisien jika gambar hanya memiliki sedikit garis yang panjaaaang, (garis digambar kita kan pendek2 ya). angka 1 itu nilai rho resolusi jarak antar pixel yang berelasinyakita setting 1, kemudian jangkauan derajat diisi 180 derajat (tp karena komputer pake satuan radian, kita mesti membaginya dalam radian, jadi digunakan phi/180). 30-nya nilai thresholdnya. 10-nya kagak ngerti dah.
for( i = 0; i < lines -> total; i++ ) {
untuk masing-masing koordinat garis dari urutan 0 hingga koordinat garis yang ke total.
cvLine( frame, line[0], line[1], CV_RGB(0,255,0), 2, 8 );
ini untuk buat garisnya dengan garna hijau ( CV_RGB(0,255,0)). ketebalan 2 linetype-nya 8
selesai deh program hough transformnya yang line-nya.
gampang buatnya, sulit ngejelasinnya. semoga teman-teman maklum ya.
tujuan belajar hough transform ini bagi saya untuk
mendeteksi garis pada lapangan bola robosoccer dan gawangnya, mendeteksi lingkaran pada bola. dan akhirnya mendeteksi koordinat posisi robot (ini yg paling susah).
pelajaran kita berikutnya adalah mendeteksi lingkaran.
mohon komentar dari teman-teman.
dan terima kash telah meluangkan waktu bersama blog toar.
1.119707
103.934748