analisis edge detection
Embed Size (px)
TRANSCRIPT
Afif Tuffatuddin 2010 51 -057 Akhmad Khoirul Alvi 2010 51 -227
Jawaban no 1 Sobelpengembangan metode robert dengan menggunakan filter HPF yang diberi satu angka nol penyangga. Metode ini mengambil prinsip dari fungsi laplacian dan gaussian yang dikenal sebagai fungsi untuk membangkitkan HPF. Kelebihan dari metode sobel ini adalah kemampuan untuk mengurangi noise sebelum melakukan perhitungan deteksi tepi
- Operator Sobel>> I =double (imread('cameraman.tif')); >> %Konvolusi dengan operator Sobel >> sobelhor = [-1 0 1; -2 0 2; -1 0 1]; >> sobelver = [-1 -2 -1; 0 0 0; 1 2 1]; >> Ix = conv2(I,sobelhor,'same'); >> Iy = conv2(I,sobelver,'same'); >> J = sqrt(Ix.^2)+(Iy.^2); >> %Gambar Hasil >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(Ix),colormap('gray'),colorbar('vert'); >> figure,imagesc(Iy),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert'); >> I =imread('cameraman.tif'); >> J =imread(I, 'sobel'); >> J =edge(I, 'sobel'); >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert');
HASIL
operator isotropicIsotropik 3-D, di mana sudut kedatangan yang merata di azimuth dan elevasi pesawat, spektrum Doppler ditemukan secara teoritis menjadi datar /Sebuah Doppler spektrum datar juga ditentukan dalam beberapa kasus ANSI J-STD-008 model saluran referensi.
Operator isotropic
>> I =double (imread('cameraman.tif')); >> %Konvolusi dengan operator isotropic >> isohor = [-1 0 1; -sqrt(2) 0 sqrt(2); -1 0 1]; >> isover = [-1 -sqrt(2) -1; 0 0 0; 1 sqrt(2) 1]; >> Ix = conv2(I, isohor,'same'); >> Iy = conv2(I, isover,'same'); >> y = sqrt((Ix.^2)+(Iy.^2)); >> %Gambar Hasil >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(Ix),colormap('gray'),colorbar('vert'); >> figure,imagesc(Iy),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert');
HASIL
Operator CompassOperator kompas menampilkan tepi dari 8 macam arah mata angin: Utara, Timur Laut, Timur, Tenggara, Selatan, Barat Daya, dan Barat Laut. Pendeteksian tepi dilakukan dengan mengkonvolusikan citra dengan berbagai mask kompas, lalu dicari nilai kekuatan tepi (magnitude) yang terbesar dan arahnya.
COMPASSOperator kompas yang dipakai untuk pendeteksian tepi menampilkan tepi dari 8 macam arah mata angin:
Operator Kompas >> I =imread('cameraman.tif');
>> J =edge(I, 'log'); >>
figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert');
Hasil
HASIL ANALISAPercobaan dengan kernel Sobel, kernel Isotropic, dan Kernel Compass digunakan untuk deteksi tepi yang berfungsi untuk mengidentifikasi garis batas (boundary) dari suatu objek yang terdapat pada citra. Garis abu abu yang ditemukan pada citra konvulasi dari kernel sobel inilah yang disebut dengan garis batas (boundary) atau yang sering disebut dengan garis tepian/ color bar. Garis tepian dapat dipandang sebagai lokasi piksel dimana terdapat nilai perbedaan intensitas citra secara ekstrem. Sebuah edge detektor bekerja dengan cara mengindentifikasi dan menonjolkan lokasi-lokasi piksel yang memiliki
JAWABAN NO 2Karena cameraman.tif juga digunakan pada operator lainnya maka perlu menyertakan operator-operator tersebut:
Gradien>> I =double (imread('cameraman.tif')); >> %Gradien orde satu pada arah horisontal >> gx = [-1 1]; >> Ix = conv2(I,gx, 'same'); >> %Gradien orde satu pada arah vertical >> gy = [-1 1]; >> Iy = conv2(I,gy, 'same'); >> %Magtitudo gradien >> J = sqrt((Ix.^2)+(Iy.^2)); >> %gambar hasil figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(Ix),colormap('gray'),colorbar('vert'); >> figure,imagesc(Iy),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert');
Hasil
Operator Selisih Terpusat>> I =double (imread('cameraman.tif')); >> %konvolusi dengan operator selisih terpusat >> d1x = [-1 0 1]; >> d1y = [-1;0;1]; >> Ix = conv2(I,d1x,'same'); >> Iy = conv2(I,d1y,'same'); >> J = sqrt((Ix.^2)+(Iy.^2)); >> %Gambar Hasil >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(Ix),colormap('gray'),colorbar('vert'); >> figure,imagesc(Iy),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert');
Hasil
Operator Robert>> I =double (imread('cameraman.tif')); >> %konvulasi dengan operator Roberts >> robertshor = [0 1; -1 0]; >> robertsver = [1 0; 0 -1]; >> Ix = conv2(I,robertshor,'same'); >> Iy = conv2(I,robertsver,'same'); >> J = sqrt((Ix.^2)+(Iy.^2)); >> %Hasil Gambar >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(Ix),colormap('gray'),colorbar('vert'); >> figure,imagesc(Iy),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert'); >> I = imread('cameraman.tif'); >> J = edge(I,'roberts'); >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert');
Hasil
Operator prewitt>> I =double (imread('cameraman.tif')); >> %konvolasi dengan operator prewitt >> prewitthor = [-1 0 1; -1 0 1; -1 0 1]; >> prewittver = [-1 -1 -1; 0 0 0; 1 1 1]; >> Ix = conv2(I,prewitthor,'same'); >> Iy = conv2(I,prewittver,'same'); >> J = sqrt((Ix.^2)+(Iy.^2)); >> %Gambar Hasil >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(Ix),colormap('gray'),colorbar('vert'); >> figure,imagesc(Iy),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert'); >> I = imread('cameraman.tif'); >> J = edge(I,'prewitt'); >> figure,imagesc(I),colormap('gray'),colorbar('vert'); >> figure,imagesc(J),colormap('gray'),colorbar('vert');
Hasil
AnalisaSetelah mengetahui hasil dari tiap-tiap edge detektor yang ada pada modul dapat disimpulkan bahwa, hasil yang terbaik didapatkan dengan menggunakan operator gradien karena pada operator gradien deteksi tepi dipetakan tidak hanya berdasarkan satu sisi saja namun lebih dari satu sisi seperti pada operator prewitt dan sobel yang dipetakan berdasarkan sumbu x dan sumbu y. hal ini juga dikuatkan dengan jika digunakan operator laplacian masih perlu dikombinasikan dengan kernel gaussian karena turunan keduanya memiliki sifat yang lebih sensitif terhadap noise, sehingga jika operator laplacian sendiri tidak memberikan hasil yang baik.
Jawaban no 3 1. Operator GradienOperator Robert>> Ia = imread('cameraman.tif'); >> Ja = edge(Ia,'roberts'); >> In = imnoise(Ia,'salt & pepper',0.02); >> Jn = edge(In,'roberts'); >> nr = sum(sum(Ja)); >> nn = sum(sum(Jn)); >> p = abs(nn--nr)/nr p= 2.1115
Operator Prewitt
>> Ia = imread('cameraman.tif'); >> Ja = edge(Ia,'prewitt'); >> In = imnoise(Ia,'salt & pepper',0.02); >> Jn = edge(In,'prewitt'); >> nr = sum(sum(Ja)); >> nn = sum(sum(Jn)); >> p = abs(nn--nr)/nr p= 2.3161
Operator Sobel
>> Ia = imread('cameraman.tif'); >> Ja = edge(Ia,'sobel'); >> In = imnoise(Ia,'salt & pepper',0.02); >> Jn = edge(In,'sobel'); >> nr = sum(sum(Ja)); >> nn = sum(sum(Jn)); >> p = abs(nn--nr)/nr p= 2.3660
2. Operator Laplacian>> Ia = imread('cameraman.tif'); >> Ja = edge(Ia,'log'); >> In = imnoise(Ia,'salt & pepper',0.02); >> Jn = edge(In,'log'); >> nr = sum(sum(Ja)); >> nn = sum(sum(Jn)); >> p = abs(nn--nr)/nr p= 2.2615
AnalisisDari hasil yang diperoleh nilai yang sangat terpengaruh porformasinya adalah operasi sobel