Anda di halaman 1dari 5

ALGORITMA DETEKSI TEPI CANNY

 Deteksi Tepi Canny


Deteksi tepi Canny dapat mendeteksi tepian yang sebenarnya dengan
tingkat eror yang minimum dengan kata lain, operator Canny di desain
untuk menghasilkan citra tepian yang optimal.

Langkah-langkah Deteksi Tepi Canny

Berikut adalah langkah-langkah dalam melakukan deteksi tepi Canny.

Langkah I adalah Menghilangkan Noise yang ada pada citra dengan


mengimplementasikan Filter Gaussian . Hasilnya citra akan tampak sedikit
buram. Hal ini dimaksudkan untuk mendapatkan tepian citra yang
sebenarnya. Bila tidak dilakukan maka garis -garis halus juga akan
dideteksi sebagai tepian. Berikut ini adalah salah satu contoh filter
gaussian dengan σ = 1.4 :

Langkah II adalah melakukan deteksi tepi dengan salah satu


operator deteksi tepi seperti Roberts, Perwit atau Sobel dengan
melakukan pencarian secara horizontal (Gx) dan secara vertikal (Gy).
Berikut ini salah satu contoh operator deteksi tepi (Operator Sobel):
Hasil dari kedua operator digabungkan untuk mendapatkan hasil
gabungan tepi vertikal dan horizontal dengan rumus:

Langkah III Menentukan Arah tepian ya ng ditemukan dengan


menggunakan rumus:

Dan selanjutnya membagi ke dalam 4 warna sehingga garis dengan arah


yang berbeda memiliki warna yang berbeda. Pembagiannya adalah :

1. Derajat 0 – 22,5 dan 157,5 – 180 berwarna Kuning.

2. Derajat 22,5 – 67,5 Berwarna Hijau, dan

3. Derajat67,5 – 157,5 Berwarna Merah.

Berikut ini adalah bagan pembagian warna berdasarkan arah tepian yang dilakukan
oleh Canny:

Langkah IV memperkecil garis tepi yang muncul denga n menerapkan non


maximum suppressionsehingga menghasilkan garis tepian yang lebih
ramping.

Langkah terakhir adalah binerisasi dengan menerapkan dua buah nilai


ambang. Gambar berikut ini akan menunjukkan bentuk citra sebelum
pemrosesan dan sesudah pemrosesan.
Citra Awal

Citra Hasil

Algoritme deteksi tepi Canny dikenal sebagai algoritme yang optimal


dalam melakukan pendeteksian tepi. Untuk meningkatkan metode-metode
yang telah ada dalam pendeteksian tepi, algortime deteksi tepi Canny
mengikuti beberapa kriteria sebagai berikut:

Tingkat error yang rendah. Error terjadi bila ada tepi yang penting
tetapi tidak muncul, atau bila ada yang bukan tepi tetapi muncul. Titik-titik
pada tepi dilokasikan dengan benar. Dengan kata lain, jarak antara
piksel-piksel tepi yang ditemukan algoritme dengan tepi sesungguhnya
diminimumkan.
Hanya satu respon (lebar 1 piksel) untuk setiap sebuah tepi. Berdasarkan
kriteria di atas, algoritme deteksi tepi Canny dilakukan dengan langkah -
langkah sebagai berikut:

1. Pertama-tama dilakukan penghalusan (smoothing) citra untuk


menghilangkan noise. Contohnya menggunakan filtering dengan
Gaussian Filter.

2. Selanjutnya dicari gradient magnitude citra untuk melihat daerah-


daerah yang memiliki turunan spasial yang tinggi.
Pencarian gradient magnitude seperti yang ditulis pada tulisan
sebelumya, bisa pakai Sobel, Prewitt,, dll…

3. Ditentukan arah dari tepi dengan me nggunakan invers tangen


dari gradient magnitude Y (Gy) dibagi gradient magnitude X (Gx).
Arah yang diperoleh dari perhitungan ini kemudian dipetakan ke 0,
45, 90, atau 135 derajat berdasarkan kedekatannya dengan
keempat derajat arah tadi.

4. Kemudian dilakukan Non Maximum Suppression. Yaitu,


penghilangan nilai-nilai yang tidak maksimum. Ditelusuri daerah
yang ditemukan pada langkah 2 (dengan arah seperti yang
ditemukan pada langkah 3), dan menghilangkan (suppress) setiap
piksel yang tidak maksimum.

5. Selanjutnya dilakukan Hysteresis (disebut juga Hysthresis), [for me


maybe simply "double thresholding"]. Hysteresis menggunakan
dua threshold T1 (threshold bawah) dan T2 (threshold atas).
Bila magnitude ada di bawah T1, titik tersebut di-set nol (dijadikan
non-tepi). Bila magnitude ada di atas T2, maka termasuk tepi.
Bila magnitudeada diantara T1 dan T2, di-set nol kecuali jika ada
jalan (path) dari titik tersebut ke titik yang memiliki magnitude di
atas T2.

Metode deteksi tepi dengan menggunakan model sobel, canny, prewitt dan log :
>> I=im2bw(imread('x_ray2.JPG')); Error: Missing variable or function.
>> bw1=edge(I,'sobel'); >> imshow(I),title('awal')
>> bw2=edge(I,'canny'); Warning: Image is too big to fit on
>> bw3=edge(I,'prewitt'); screen; displaying at 56% scale.
>> bw4=edge(I,'log'); > In truesize>Resize1 at 308
>> bw5=edge(I,'robert'); In truesize at 44
>> imshow(I),title('awal) In imshow at 161
??? imshow(I),title('awal) >> figure,imshow(bw1),title('sobel)
???
| figure,imshow(bw1),title('sobel)
|
Error: Missing variable or function. > In truesize>Resize1 at 308
In truesize at 44
>> figure,imshow(bw1),title('sobel') In imshow at 161
Warning: Image is too big to fit on >> figure,imshow(bw4),title('log')
screen; displaying at 56% scale. Warning: Image is too big to fit on
> In truesize>Resize1 at 308 screen; displaying at 56% scale.
In truesize at 44 > In truesize>Resize1 at 308
In imshow at 161 In truesize at 44
>> In imshow at 161
figure,imshow(bw2),title('canny') >>
Warning: Image is too big to fit on figure,imshow(bw5),title('robert')
screen; displaying at 56% scale. Warning: Image is too big to fit on
> In truesize>Resize1 at 308 screen; displaying at 56% scale.
In truesize at 44 > In truesize>Resize1 at 308
in imshow at 161 In truesize at 44
>> In imshow at 161
figure,imshow(bw3),title('prewitt') >>
Warning: Image is too big to fit on
screen; displaying at 56% scale.

KESIMPULAN:
Dari percobaan terhadap 5 metode deteksi tepi dalam matlab yaitu, Sobel,
Robert, Prewitt,Canny, dan metode LoG maka dapat diambil kesimpulan bahwa,
deteksi tepi paling baik dihasilkan dari penggunaan metode Canny. Deteksi tepi
dengan menggunakan metode Canny adalah deteksi tepi terbaik dikarenakan
garis yang dihasilkan oleh deteksi tepi ini lebih halus dan tidak terputus-putus.
Karena alasan tersebut, maka sebagian besar proses segmentasi maupun
ekstraksi suatu citra lebih banyak menggunakan metode Canny.
Pada penulisan ini menggunakan 2 buah objek citra yaitu tulang lutut kiri normal
dan tulang lutut kiri yang patah, namun hanya satu citra yang hasil deteksi
tepinya paling baik..
Saran untuk pengembangan lebih lanjut dari penelitian ini adalah citra tulang lutut
kiri yang akan dideteksi tepi harus baik, tidak boleh buram ataupun kabur, jika
tidak harus dilakukan terlebih dahulu perbaikan kualitas citra. Kemudian perlu
dilakukan uji coba terhadap data citra dalam jumlah yang besar.

Anda mungkin juga menyukai