Perbandingan Deteksi Tepi Pada Citra Digital Dengan Menggunakan Algoritma FREI Cen Dan Susan (Smallest Univalue Segment Assimilating Nucleus)

(1)

ii ABSTRACT

THE COMPARISON OF EDGE DETECTION IN DIGITAL IMAGE PROCESSING USING FREI CHEN AND SUSAN (SMALLEST UNIVALUE SEGMENT ASSIMILATING NUCLEUS) ALGORITHM

Organized by:

MUHAMMAD ADHITYAWAN 10107447

The eyes are one of the five senses used by human to see, but the human eyes have limitations to capture the electromagnetic signals. Therefore, a computer or image processor was designed to capture entirely most electromagnetic signals. The image processor could analyze the images which could not be captured by human eyes and the images from unfitted or unmatched sources.

One of the image processing techniques which are well known is the edge detection method. Edge detection is commonly applied in digital image processing particularly in the image segmentation step. This method is used for identifying the boundary of an object from its overlapping background. Then the segmentation aims to portray the objects that contained within the image. These recent days, there are several edge detection methods, such as the Sobel, Canny, Prewitt, frei-chen and SUSAN (Smallest Univalue Segment Assimilating Nucleus). In this study two methods were used and compared; they are the frei-chen and SUSAN algorithm.

The results show that both of algorithms did well in detecting edges in an image. Frei-chen algorithm is better than SUSAN algorithm in edge detection of images that contain noises. Objectively, frei-chen algorithm PSNR (Peak Signals Noise Ratio) values are higher than SUSAN algorithm.


(2)

i ABSTRAK

PERBANDINGAN DETEKSI TEPI PADA CITRA DIGITAL DENGAN MENGGUNAKAN ALGORITMA FREI CHEN DAN SUSAN (SMALLEST

UNIVALUE SEGMENT ASSIMILATING NUCLEUS) Oleh:

MUHAMMAD ADHITYAWAN 10107447

Mata merupakan salah satu panca indra yang digunakan manusia untuk melihat. Namun mata manusia memiliki keterbatasan dalam menangkap sinyal elektromagnetik. Oleh karena itu, diciptakan mesin pencitraan yang dapat menangkap hampir keseluruhan sinyal elektromagnetik. Mesin pencitraan dapat bekerja dengan citra dari sumber yang tidak dapat ditangkap dengan penglihatan manusia.

Salah satu teknik pengolahan citra yang digunakan adalah deteksi tepi. Deteksi tepi adalah hal yang umum dalam proses pengolahan citra digital karena merupakan salah satu langkah awal dalam melakukan segmentasi citra, yang bertujuan untuk mempresentasikan objek-objek yang terkandung dalam citra tersebut. Deteksi tepi berfungsi untuk mengidentifikasikan garis batas dari suatu objek terhadap latar belakang yang saling tumpang tindih.Saat ini telah ada beberapa metode yang dapat digunakan untuk pendeteksian tepi, contohnya adalah metode sobel, canny, prewitt, frei-chen dan SUSAN. Dalam penelitian ini diambil 2 metode untuk perbandingan yaitu algoritma frei-chen dengan algoritma SUSAN.

Dari hasil penelitian menunjukan bahwa kedua operator berhasil dengan baik dalam mendeteksi tepi pada sebuah citra. Pada saat mendeteksi tepi pada citra yang mengandung noise algoritma frei-chen lebih baik dalam melakukan pendeteksian tepi. Secara objektif dapat dilihat nilai PSNR (Peak Signals Noise Ratio) yang dimiliki algoritma frei-chen cenderung lebih tinggi.


(3)

1 1.1 Latar Belakang Masalah

Mata merupakan salah satu panca indra yang digunakan manusia untuk melihat. Namun mata manusia memiliki keterbatasan dalam menangkap sinyal elektromagnetik. Oleh karena itu, diciptakanlah komputer atau mesin pencitraan yang dapat menangkap hampir keseluruhan sinyal elektromagnetik. Mesin pencitraan dapat bekerja dengan citra dari sumber yang tidak sesuai, tidak cocok, atau tidak dapat ditangkap dengan penglihatan manusia. Hal inilah yang menyebabkan pengolahan citra digital memiliki kegunaan yang sangat luas. Teknologi pengolahan citra dapat masuk ke berbagai bidang seperti kedokteran, geologi, kelautan, industri, dan lain sebagainya.

Salah satu teknik pengolahan citra yang digunakan adalah deteksi tepi (edge detection). Deteksi tepi adalah hal yang umum dalam proses pengolahan citra digital karena merupakan salah satu langkah awal dalam melakukan segmentasi citra, yang bertujuan untuk mempresentasikan objek-objek yang terkandung dalam citra tersebut. Deteksi tepi berfungsi untuk mengidentifikasikan garis batas dari suatu objek terhadap latar belakang yang saling tumpang tindih. Sehingga apabila garis tepi pada citra dapat diidentifikasikan dengan akurat, semua objek dapat ditemukan dan sifat dasar seperti area, bentuk, dan ukuran objek dapat diukur. Tepian citra adalah posisi dimana intensitas pixel dari citra berubah dari nilai rendah ke nilai tinggi atau sebaliknya.


(4)

Saat ini telah ada beberapa metode yang dapat digunakan untuk pendeteksian tepi, contohnya adalah metode sobel, canny, prewitt, frei-chen dan SUSAN. Dalam penelitian ini diambil 2 metode untuk perbandingan yaitu algoritma frei-chen dengan algoritma SUSAN.

Frei-Chen merupakan metode deteksi tepi (edge detection) dengan menggunakan Frei-Chen mask yang mana berisi basis perhitungan vektor untuk diterapkan pada citra. Frei-Chen [1] menunjukkan pendeteksian tepi yang terbaik dilakukan oleh detektor tepi yang sederhana, diikuti dengan penipisan dan menghubungkan proses untuk mengoptimalkan garis tepi.

SUSAN (Smallest Univalue Segment Assimilating) [5] merupakan metode deteksi tepi (edge detection) dengan membandingkan intensitas pada piksel yang diproses dengan piksel sekitarnya. Konsep dari setiap titik gambar yang terkait dengan itu memiliki area lokal kecerahan yang sama adalah dasar bagi prinsip algoritma SUSAN.

Tugas akhir ini akan memberikan gambaran mengenai penerapan kedua metode dalam mendeteksi tepi pada sebuah citra, serta mengevaluasi kinerja masing-masing algoritma.

1.2 Idetifikasi Masalah

Permasalahan yang dapat dirumuskan berkaitan dengan Perbandingan Deteksi Tepi Pada Citra Digital Dengan Menggunakan Algoritma Frei-Chen dan SUSAN (Smallest Univalue Segment Assimilating Nucleus) adalah:

1. Bagaimana menerapkan algoritma yang ada untuk melakukan deteksi tepi pada citra digital?


(5)

2. Bagaimana mengevaluasi kinerja masing-masing algoritma dalam mendeteksi tepi pada citra digital?

3. Maksud dan Tujuan

Berdasarkan judul yang diambil, maka maksud dari penulisan tugas akhir ini adalah untuk membandingkan dua algoritma yang ada untuk deteksi tepi pada citra digital.

Sedangkan tujuan yang akan dicapai dalam penelitian ini adalah mengetahui kemampuan dari kedua metode deteksi yang dipilih dalam melakukan deteksi tepi pada sebuah citra digital.

4. Batasan Masalah

Dalam penelitian ini ada beberapa batasan yang perlu diperhatikan, antara lain:

1. File citra digital yang digunakan mempunyai mode warna RGB. 2. Parameter perbandingan yang digunakan :

a. Berdasarkan penglihatan indera penglihatan. b. Sensitifitas terhadap noise pada citra digital. c. Nilai PSNR dari masing-masing algoritma. 3. Pengujian menggunakan white-box dan black-box.

5. Metodologi Penelitian

Dalam pembuatan skripsi ini menggunakan metode penelitian deskriptif yang menggambarkan fakta-fakta dan informasi secara sistematis, aktual dan akurat. Metode penelitian ini memiliki dua tahapan penelitian, yaitu sebagai berikut :


(6)

1. Tahap Pengumpulan Data

Metode pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut :

a. Studi Literatur

Pengumpulan data dengan cara mengumpulkan literatur, jurnal, paper dan bacaan-bacaan yang ada kaitannya dengan judul penelitian.

2. Tahap Pengembangan Perangkat Lunak.

Teknik analisis data dalam pengembangan perangkat lunak menggunakan paradigma perangkat lunak secara waterfall, yang meliputi beberapa proses diantaranya:

a. Pengumpulan data

Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya kedalam pembentukan perangkat lunak.

b. Analisis

Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan proyek pembuatan perangkat lunak.

c. Perancangan

Tahap penerjemahan dari data yang dianalisis kedalam bentuk yang mudah dimengerti oleh user.


(7)

d. Pengkodean

Tahap penerjemahan data atau pemecahan masalah yang telah dirancang kedalam bahasa pemrograman tertentu.

e. Pengujian

Merupakan tahap pengujian terhadap perangkat lunak yang dibangun. f. Pemeliharaan

Tahap akhir dimana suatu aplikasi yang sudah selesai dapat mengalami perubahan-perubahan atau penambahan sesuai dengan permintaan pengguna.

Tahap-tahap pengembangan perangkat lunak metode waterfall dapat dilihat pada gambar :

Pemeliharaan Pengkodean

Perancangan Analisis

Pengujian Pengumpulan

Data


(8)

6. Sistematika Penulisan

Sistematika penulisan penelitian ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB I PENDAHULUAN

Menguraikan tentang latar belakang masalah, identifikasi masalah yang dihadapi, menentukan maksud dan tujuan, dan batasan masalah, yang kemudian diikuti dengan metodologi penelitian, serta sistematika penulisan.

BAB II. LANDASAN TEORI

Membahas berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian yang dilakukan dan hal-hal yang berguna dalam proses analisis permasalahan. Landasan teori yang dimaksud mencakup penjelasan mengenai pengertian citra, pengertian citra digital, definisi pengolahan citra, resolusi citra, jenis-jenis citra, elemen-elemen yang terdapat dalam citra digital.

BAB III. ANALISIS DAN PERANCANGAN SISTEM

Menganalisis kebutuhan dan desain dari sistem yang akan dikembangkan. Proses perancangan menjelaskan kriteria-kriteria rancangan dari sudut pandang fungsional sistem dan sudut pandang interaksi pengguna seperti antar muka (user interface). Pemodelan sistem dengan menggunakan DFD (Data Flow Diagram).


(9)

BAB IV. IMPLEMENTASI DAN PENGUJIAN SISTEM

Merupakan tahapan yang dilakukan dalam penelitian secara garis besar sejak dari tahap persiapan sampai penarikan kesimpulan dan kaidah yang diterapkan dalam penelitian. Termasuk menentukan metode pengujian yang akan dipergunakan dalam pengujian aplikasi yang akan dibangun.

BAB V. KESIMPULAN DAN SARAN

Berisi kesimpulan dan saran yang sudah diperoleh dari hasil penelitian tugas akhir.


(10)

8 2.1 Pengertian Citra

Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi dari suatu objek. Citra merupakan salah satu komponen multimedia memegang peranan yang sangat penting sebagai bentuk informasi visual. Citra mempunyai karakteristik yang tidak dimilki oleh data teks, yatu citra kaya dengan informasi. Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra (dua dimensi). Pada gambar 2.1 adalah citra seorang gadis model yang bernama Lena, dan gambar di sebelah kanannya adalah citra kapal di sebuah pelabuhan.

Gambar 2.1 Citra Lena dan citra kapal

Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh alat-alat optik,


(11)

misalnya mata pada manusia, kamera, pemindai (scanner), dan sebagainya, sehingga bayangan objek yang disebut citra terekam.

Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat:

1. Optik berupa foto.

2. Analog berupa sinyal video seperti gambar pada monitor televisi. 3. Digital yang dapat langsung disimpan pada suatu pita magnetik.[11]

2.2 Pengertian Citra Digital

Secara umum, pengolahan citra digital menunjuk pada pemrosesan gambar 2 dimensi menggunakan komputer. Dalam konteks yang lebih luas, pengolahan citra digital mengacu pada pemrosesan setiap data 2 dimensi. Citra digital merupakan sebuah larik (array) yang berisi nilai-nilai real maupun komplek yang direpresentasikan dengan deretan bit tertentu. Pada umumnya citra digital berbentuk empat persegi panjang, dan dimensi ukurannya dinyatakan sebagai tinggi x lebar.

Citra Digital merupakan suatu fungsi intensitas cahaya f(x,y), dimana harga x dan y merupakan koordinat spasial dan harga fungsi tersebut pada setiap titik (x,y) merupakan tingkat kecermerlangan citra pada titik tersebut.

Citra digital yang tingginya N, lebarnya M, dan memiliki L derajat keabuan dapat dianggap sebagai fungsi :


(12)

(2.1)

Citra digital yang berukuran N x M lazim dinyatakan dengan matriks berukuran N baris dan M kolom sebagai berikut :

(2.2)

Keterangan:

N = jumlah baris,0<= y<=N-1

M=jumlah kolom,0<=x<=M-1

L=maksimal warna intensitas (derajat keabuan),0<=f(x,y)<=L-1

Masing-masing elemen pada citra digital (berarti elemen matriks) disebut image element atau piksel. Jadi, citra yang berukuran N x M mempunyai NM buah piksel.

Proses digitalisasi koordinat (x,y) dikenal sebagai pencuplikan citra (image sampling), sedangkan proses digitalisasi derajat keabuan f(x,y) disebut kuantisasi derajat keabuan (gray-level quantization).

Berdasarjan format penyimpanan nilai warnanya, citra terdiri atas empat jenis, yaitu:


(13)

1. Citra biner atau monokrom

Pada citra jenis ini, setiap titik atau piksel hanya bernilai 0 atau 1. Dimana setiap titik membutuhkan media penyimpanan sebesar 1 bit. 2. Citra skala keabuan

Citra skala keabuan mempunyai kemungkinan warna antara hitam (minimal) dan putih (maksimal). Jumlam maksimum warna sesuai dengan bit penyimpanan yang digunakan.

3. Citra warna

Setiap titik (piksel) pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar yaitu merah, hijau dan biru. Setiap warna dasar mempunyai intensitas sendiri dengan nilai maksimum 255 (8bit).

Setiap titik pada citra warna membutuhkan data 3 byte. 4. Citra warna berindeks

Setiap titik (piksel) pada citra warna berindeks mewakili indeks dari suatu tabel warna yang tersedia (biasanya disebut palet warna). Keuntungan pemakaian palet warna adalah kita dapat dengan cepat memanipulasi warna tanpa harus mengubah informasi pada setiap titik dalam citra. Keuntugan yang lain, penyimpanan lebih kecil.[11]

2.3 Definisi Pengolahan Citra

Meskipun sebuah citra kaya informasi, namun seringkali citra yang kita miliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan


(14)

sebagainya. Tentu saja citra semacam ini menjadi lebiih sulit diinterpretasi karena informasi yang disampaikan oleh citra tersebut menjadi berkurang. Agar citra menjadi baik kualitasnya maka perlu adanya yang namanya pengolahan citra digital (image processing).

Pengolahan citra adalah pemrosesan citra, khususnya dengan menggunakan komputer, menjadi citra yang kualitasnya lebih baik. Sebagai contoh, citra burung nuri pada gambar 2.2 (a) tampak agak gelap, lalu dengan proses pengolahan citra kontrasnya diperbaiki sehingga menjadi lebih terang dan tajam (b).

Umumnya, operasi-operasi pada pengolahan citra diterapkan pada citra bila :

1. Perbaikan atau memodifikasi citra perlu dilakukan untuk meningkatkan kualitas penampakan atau untuk menonjolkan beberapa aspek informasi yang terkandung dalam citra,

2. Elemen di dalam citra perlu dikelompokkan, dicocokkan, atau diukur, 3. Sebagian citra perlu digabung dengan bagian citra yang lain.


(15)

Gambar 2.2 (a) citra burung nuri agak gelap, (b) citra burung yang telah diperbaiki kontrasnya sehingga terlihat jelas dan tajam

Di dalam bidang komputer, sebenarnya ada tiga bidang studi yang berkaitan dengan data citra, namun tujuan ketiganya berbeda, yaitu:

1. Grafika komputer (Computer graphics). 2. Pengolahan Citra (Image processing).

3. Pengenalan Pola (Pattern recognition/image interpretation).

Hubungan antara ketiga bidang (grafika komputer, pengolahan citra, pengenalan pola) ditunjukkan pada gambar 2.3.

Gambar 2.3 Tiga bidang studi yang berkaitan dengan citra

Grafika komputer bertujuan menghasilkan citra dengan primitif-primitif geometri seperti garis, lingkaran, dan sebagainya. Primitif-primitif geometri seperti garis, lingkaran, dan sebagainya. Primitif-primitif geometri tersebut memerlukan data deskriptif untuk melukis elemen-elemen gambar. Contoh data deskriptif adalah koordinat titik, panjang garis, jari-jari lingkaran, tebal garis,


(16)

warna, dan sebagainya. Grafika komputer memainkan peranan penting dalam visualisasi.

Gambar 2.4 Peranan Grafika Komputer

Contoh grafika komputer misalnya menggambar sebuah ‘rumah’ yang dibentuk oleh garis-garis lurus, dengan data masukkan berupa koordinat awal dan koordinat ujung garis (Gambar 2.5).

Gambar 2.5 (a) Program Grafika Komputer untuk menggambar ‘rumah’ (b)

Pengolahan Citra bertujuan memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia atau mesin (dalam hal ini komputer). Teknik teknik pengolahan citra menstraformasikan citra menjadi citra lain. Jadi, masukannya adalah citra dan keluarannya juga citra, namun citra keluaran mempunyai kualitas


(17)

lebih baik daripada citra masukkan. Termasuk ke dalam bidang ini juga adalah pemampatan citra (image compressin).

Gambar 2.6 Pengolahan Citra

Pengubahan kontras citra seperti pada Gambar 2.5 adalah contoh operasi pengolahan citra. Contoh operasi pengolahan citra lainnya adalah penghilangan derau (noise) pada citra Lena (Gambar 2.7). Citra Lena yang di sebelah kiri mengandung derau berupa bintik-bintik putih (derau). Dengan operasi penapisan (filtering), derau pada citra masukan ini dapat dikurangi sehingga dihasilkan citra Lena yang kualitasnya lebih baik.

Gambar 2.7 (a) Citra Lena yang mengandung derau, (b) hasil dari operasi penapisan derau


(18)

Pengenalan Pola mengelompokkan data numerik dan simbolik (termasuk citra) secara otomatis oleh mesin (dalam hal ini komputer). Tujuan pengelompokan adalah untuk mengenali suatu objek di dalam citra. Manusia bisa mengenali objek yang dilihatnya karena otak manusia telah belajar mengklasifikasi objek-objek di alam sehingga mampu membedakan suatu objek dengan objek lainnya. Kemampuan sistem visual manusia inilah yang dicoba ditiru oleh mesin. Komputer menerima masukan berupa citra objek yang akan diidentifikasi, memproses citra tersebut, dan memberikan keluaran berupa deskripsi objek di dalam citra.

Gambar 2.8 Pengenalan Pola

Contoh pengenalan pola misalnya citra pada Gambar 2.9 adalah tulisan tangan yang digunakan sebagai data masukan untuk mengenali karakter ‘ A’. Dengan menggunakan suatu algoritma pengenalan pola, diharapkan komputer


(19)

Gambar 2.9 Citra karakter ‘A’ yang digunakan sebagai masukan untuk pengenalan huruf.

2.4 Operasi Pengolahan Citra

Operasi -operasi yang dilakukan di dalam pengolahan citra banyak ragamnya. Namun, secara umum, operasi pengolahan citra dapat diklasifikasikan dalam beberapa jenis sebagai berikut:

1. Perbaikan kualitas citra (image enhancement).

Jenis operasi ini bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi parameter-parameter citra. Dengan operasi ini, ciri -ciri khusus yang terdapat di dalam citra lebih ditonjolkan.

Contoh-contoh operasi perbaikan citra: a. Perbaikan kontras gelap/terang

b. Perbaikan tepian objek (edge enhancement) c. Penajaman (sharpening)

d. Pemberian warna semu (pseudocoloring) e. Penapisan derau (noise filtering)


(20)

Gambar 2.10 adalah contoh operasi penajaman. Operasi ini menerima masukan sebuah citra yang gambarnya hendak dibuat tampak lebih tajam. Bagian citra yang ditajamkan adalah tepi -tepi objek.

Gambar 2.10 (a) Citra Lena asli, (b) Citra Lena setalah ditajamkan

2. Pemugaran citra (image restoration).

Operasi ini bertujuan menghilangkan/meminimumkan cacat pada citra. Tujuan pemugaran citra hampir sama dengan operasi perbaikan citra. Bedanya, pada pemugaran citra penyebab degradasi gambar diketahui.

Contoh-contoh operasi pemugaran citra: a. Penghilangan kesamaran (deblurring) b. Penghilangan derau (noise)

Gambar 2.11 adalah contoh operasi penghilangan kesamaran. Citra masukan adalah citra yang tampak kabur (blur). Kekaburan gambar mungkin disebabkan pengaturan fokus lensa yang tidak tepat atau kamera bergoyang pada pengambilan


(21)

gambar. Melalui operasi deblurring, kualitas citra masukan dapat diperbaiki sehingga tampak lebih baik.

Gambar 2.11 Kiri: Citra Lena yang kabur (blur), kanan: citra Lena setelah deblurring

3. Pemampatan citra (image compression).

Jenis operasi ini dilakukan agar citra dapat direpresentasikan dalam bentuk yang lebih kompak sehingga memerlukan memori yang lebih sedikit. Hal penting yang harus diperhatikan dalam pemampatan adalah citra yang telah dimampatkan harus tetap mempunyai kualitas gambar yang bagus. Contoh metode pemampatan citra adalah metode JPEG. Perhatikan Gambar 2.12. Gambar sebelah kiri adalah citra kapal yang berukuran 258 KB. Hasil pemampatan citra dengan metode JPEG dapat mereduksi ukuran citra semula sehingga menjadi 49 KB saja.


(22)

Gambar 2.12 (a) Citra boat.bmp9258 KB) sebelum dimampatkan, (b) citra boat.jpg(49 KB) sesudah dimampatkan

4. Segmentasi citra(image segmentation).

Jenis operasi ini bertujuan untuk memecah suatu citra ke dalam beberapa segmen dengan suatu kriteria tertentu. Jenis operasi ini berkaitan erat dengan pengenalan pola.

5. Pengorakan citra (image analysis).

Jenis operasi ini bertujuan menghitung besaran kuantitif dari citra untuk menghasilkan deskripsinya. Teknik pengorakan citra mengekstraksi ciri –ciri tertentu yang membantu dalam identifikasi objek. Proses segmentasi kadangkala diperlukan untuk melokalisasi objek yang diinginkan dari sekelilingnya.

Contoh-contoh operasi pengorakan citra:

a. Pendeteksian tepi objek (edge detection) b. Ekstraksi batas (boundary)


(23)

Gambar 2.13 adalah contoh operasi pendeteksian tepi pada citra Camera. Operasi ini menghasilkan semua tepi (edge) di dalam citra.

Gambar 2.13 (a) Citra camera, (b) citra hasil pendeteksian seluruh tepi 6. Rekonstruksi citra (image reconstruction).

Jenis operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi. Operasi rekonstruksi citra banyak digunakan dalam bidang medis. Misalnya beberapa foto rontgen dengan sinar X digunakan untuk membentuk ulang gambar organ tubuh. [11]

2.5 Resolusi Citra

Resolusi citra merupakan tingkat detail suatu citra. Semakin tinggi resolusi citra maka akan semakin tinggi pula tingkat detail dari citra tersebut. Satuan dalam pengukuran resolusi citra dapa berupa ukuran fisik (jumlah garis per mm/jumlah garis per inchi) ataupun dapat juga berupa ukuran citra menyeluruh (jumlah garis per tinggi citra). Resolusi sebuah citra dapat diukur dengan beberapa cara sebagai berikut :


(24)

1. Resolusi pixel 2. Resolusi spasial 3. Resolusi spektral 4. Resolusi temporal 5. Resolusi radiometrik

Resolusi pixel merupakan perhitungan jumlah pixel dalam sebuah citra digital. Sebuah citra dengan tinggi N pixel dan lebar M pixel berarti memiliki resolusi sebesar M x N. Resolusi pixel akan memberikan 2 buah angka integer yang secara berurutan akan mewakili jumlah pixel lebar dan jumlah pixel tinggi dari citra tersebut.

Pengertian lainnya dari resolusi pixel adalah merupakan hasil perkalian jumlah pixel lebar dan tingginya dan kemudian dibagi dengan 1 juta. Jenis resolusi pixel seperti ini sering kali dijumpai dalam kamera digital. Suatu citra yang memiliki lebar 2.048 pixel dan tinggi 1.536 pixel maka akan memiliki total pixel sebanyak 2.048 x 1.536 = 3.145.728 pixel atau 3,1 mega pixel.

Resolusi spasial menunjukkan seberapa dekat jarak setiap garis pada citra. Jarak tersebut tergantung dari sistem yang menciptakan citra tersebut. Resolusi spasial menghasilkan jumlah pixel per satuan panjang. Resolusi spasial dari sebuah monitor komputer adalah 72 hingga 100 garis per inchi atau dalam resolusi 72 hingga 100 ppi.

Resolusi spektrum membedakan intensitas ke dalam beberapa spektrum. Citra multi spektrum akan memberikan spektrum atau panjang gelombang yang lebih baik yang akan digunakan untuk menampilkan warna.


(25)

Resolusi temporal berkaitan dengan video. Suatu video merupakan kumpulan frame statis yang berupa citra yang berurutan dan ditampilkan secara cepat. Resolusi temporal memberikan jumlah frame yang dapat ditampilkan setiap detik dengan satuan frame per second (fps).

Resolusi radiometrik ini memberikan nilai atau tingkat kehalusan citra yang dapat ditampilkan dalam satuan bit contoh 8 bit dan citra 256 bit. Semakin tinggi resolusi radiometrik ini makan semakin baik perbedaan intensitas yang ditampilkan.[12]

2.6 Jenis Citra

Nilai suatu pixel memiliki nilai rentang tertentu, dari nilai minimum sampai nilai maksimum. Jangkauan yang digunakan berbeda-beda tergantung dari jenis warnanya. Namun secara umum jangkauannya adalah 0-255. Citra dengan penggambaran seperti ini digolongkan ke dalam citra integer. Berikut adalah jenis-jenis citra berdasarkan nilai pixelnya.[12]

2.6.1 Citra Biner

Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai pixel yaitu hitam dan putih. Citra biner juga disebut sebagai citra B&W (black and white) atau citra monokrom. Hanya dibutuhkan1 bit untuk mewakilkan nilai setiap pixel dari citra biner.[12]


(26)

Gambar 2.14 Citra biner

2.6.2 Citra Grayscale

Citra grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada setiap pixelnya, dengan kata lain nilai bagian RED = GREEN = BLUE. Nilai tersebut digunakan untuk menunjukkan tingkat intensitas. Warna yang dimiliki adalah warna dari hitam, keabuan, dan putih. Tingkatan keabuan disini merupakan warna abu dengan berbagai tingkatan dari hitam mendekati putih. Citra grayscale berikut memiliki kedalaman warna 8 bit (256 kombinasi warna keabuan).[12]


(27)

2.6.3 Citra Warna (8 bit)

Setiap pixel dari citra warna (8 bit) hanya diwakili oleh 8 bit dengan jumlah warna maksimum yang dapat digunakan adalah 256 warna. Ada dua jenis citra warna 8 bit. Pertama, citra warna 8 bit dengan menggunakan palet warna 256 dengan setiap paletnya memiliki pemetaan nilai (colormap) RGB tertentu. Model ini lebih sering digunakan.[12]

Gambar 2.16 Citra warna 8 bit

2.6.4 Citra Warna (16 bit)

Citra warna ini biasa disebut sebagai citra highcolor dengan setiap pixelnya diwakili dengan 2 byte memory (16 bit). Warna 16 bit memiliki 65.536 warna. Dalam formasi bitnya, nilai komponen memiliki 5 bit ditambah 1 bit ekstra. Pemilihan komponen hijau dengan deret 6 bit dikarenakan penglihatan manusia sensitif terhadap warna hijau.[12]


(28)

2.6.5 Citra Warna (24 bit)

Setiap pixel dari citra warna 24 bit diwakili dengan 24 bit sehingga total 16.777.216 variasi warna. Variasi ini sudah lebih dari cukup untuk memvisualisasikan seluruh warna yang dapat dilihat penglihatan manusia. Penglihatan manusia dipercaya hanya dapat membedakan 10 juta warna saja.

Setiap poin informasi pixel (RGB) disimpan ke dalam 1 bye data. 8 bit pertama menyimpan nilai biru, kemudian diikuti dengan nilai hijau pada 8 bit kedua dan pada bit 8 bit terakhir merupakan warna merah.[12]

Gambar 2.18 Citra warna 24 bit

2.7 Elemen-elemen Citra Digital

Citra digital mengandung sejumlah elemen-elemen dasar. Elemen-elemen dasar tersebut dapat dimanipulasi dalam pengolahan citra seperti elemen kecerahan, kontras dan elemen-elemen dasar lain yang akan dijelaskan definisinya beserta contohnya.[13]

2.7.1 Kecerahan (brightness)

Kecerahan adalah intensitas cahaya yang dipancarkan pixel dari citra yang dapat ditangkap oleh sistem penglihatan. Lazimnya pada sebuah citra, kecerahan ini merupakan kecerahan rata-rata dari suatu daerah lokal. Sistem visual manusia


(29)

mampu menyesuaikan dirinya dengan tingkat kecerahan, mulai dari jangkauan terendah sampai yang tertinggi. [13]

2.7.2 Kontras (contrast)

Kontras merupakan sebaran terang (lightness) dan gelap (darkness) di dalam sebuah gambar. Citra dengan kontras rendah dicirikan oleh sebagian besar komposisi citranya adalah terang atau sebagian gelap. Pada citra dengan kontras yang baik, komposisi gelap dan terang tersebar secara merata.[13]

2.7.3 Kontur (contour)

Kontur adalah keadaan yang ditimbulkan oleh perubahan intensitas pada pixel-pixel yang bertetangga. Karena adanya perubahan intensitas inilah mata kita mampu mendeteksi tepi-tepi (edge) objek di dalam citra.[13]

2.7.4 Warna (color)

Warna adalah persepsi yang dirasakan oleh sistem visual manusia terhadap panjang gelombang cahaya yang dipantulkan oleh objek. Setiap warna mempunyai panjang gelombang yang berbeda. Warna-warna yang diterima oleh mata manusia merupakan hasil kombinasi cahaya dengan panjang gelombang berbeda. Kombinasi warna yang memberikan rentang warna yang paling lebar adalah red (R), green (G), dan blue (B). Persepsi sistem visual terhadap warna sangat relatif sebab dipengaruhi oleh banyak kriteria, salah satunya disebabkan oleh adaptasi yang menimbulkan distorsi. [13]

2.7.5 Bentuk (shape)

Shape adalah properti intrinsik dari objek tiga dimensi, dengan pengertian bahwa shape merupakan properti intrinsik utama untuk sitem visual manusia.


(30)

Pada umumnya, citra yang dibentuk oleh mata merupakan citra dua dimensi, sedangkan objek yang dilihat umumnya berbentuk tiga dimensi.[13] 2.7.6 Tekstur (texture)

Tekstur dicirikan sebagai distribusi spasial derajat keabuan didalam sekumpulan pixel-pixel yang bertetangga. Tekstur tidak dapat didefinisikan untuk sebuah pixel. Sistem visual manusia pada hakikatnya tidak menerima informasi citra secara independen pada setiap pixel, melainkan suatu citra dianggap sebagai suatu kesatuan. Resolusi citra yang diamati ditentukan oleh skala pada bagian mana tekstur tersebut dipersepsi. [13]

2.8 Analisis Citra

Analisis citra bertujuan untuk mengidentifikasi parameter-parameter yang diasosiasikan dengan ciri dari objek didalam citra, untuk selanjunya parameter tersebut digunkan dalam menginterpretasi citra. Analisis citra pada dasarnya terdiri dari tiga tahapan yaitu ekstraksi ciri, segmentasi dan klasifikasi. Faktor kunci dalam mengekstraksi ciri adalah kemampuan mendeteksi keberadaan tepi dari objek didalam citra. Setelah tepi objek diketahui, langkah selanjunya dalam analisis citra adalah segmentasi, yaitu mereduksi citra menjadi objek atau region. Langkah terakhir dari analisis citra adalah klasifikasi, yaitu memetakan segmen-segmen yang berbeda kedalam kelas objek yang berbeda pula.[13]

2.9 Pendeteksian Tepi

Pendeteksian tepi merupakan langkah pertama untuk melingkupi imformasi didalam citra. Tepi mencirikan batas-batas objek, oleh karena itu tepi


(31)

berguna untuk proses segmentasi dan identifikasi objek didalam citra. Tujuan operasi pendeteksian tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek didalam citra.[13]

2.9.1 Konvolusi

Deteksi tepi merupakan salah satu proses pengolahan citra yang menggunakan filter atau penapis. Untuk mengaplikasikan penapis pada citra, digunakan metode konvolusi. Konvolusi dinyatakan dalam matriks, dimana setiap elemen matriks penapis tersebut dinamakan koefisien konvolusi. Operasi bekerja dengan menggeser kernel piksel per piksel, yang hasilnya kemudian disimpan dalam matriks baru.

Untuk lebih jelasnya, berikut contoh konvolusi yang terjadi antara citra f(x,y) berukuran 5x5 dengan sebuah kernel berukuran 3x3 yang diperlihatkan pada gambar 2.19.

4 4 3 5 4

6 6 5 5 2 0 -1 0 F(x,y) = 5 6 6 6 2 g(x,y) = -1 .4 -1 6 7 5 5 3 0 -1 0 3 5 2 4 4

Gambar 2.19 Matriks Citra dan Kernel sebelum Konvolusi


(32)

Tahapan untuk mendapatkan hasil konvolusi yang terjadi antara citra dan kernel diatas dapat dilihat pada Gambar 2.20.

.

.

.


(33)

Gambar 2.20 Tahapan Proses Pembentukan Konvolusi

Sehingga diperoleh hasil akhir dari proses konvolusi tersebut, yang ditunjukkan pada gambar 2.21.[13]

4 0 8

0 2 6

6 0 2

Gambar 2.21 Hasil Kovolusi Citra dan Kernel

2.9.2 Definisi Tepi

Tepi (edge) adalah perubahan nilai intensitas derajat keabuan yang mendadak besar dalam jarak yang singkat. Tepi biasanya terdapat pada batas antara dua daerah berbeda pada suatu citra. Tepi dapat diorientasikan dengan satu arah, dan arah ini berbeda-beda bergantung pada perubahan intensitas.

Ada tiga macam tepi yang terdapat didalam citra digital ditunjukan pada

gambar 2.22, yaitu :

1. Tepi curam yaitu tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 900.


(34)

2. Tepi landai yaitu tepi dengan sudut arah yang kecil. Tepi landai dapat dianggap terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan.

3. Tepi yang mengandung derau (noise). Umumnya tepi yang terdapat pada aplikasi komputer mengandung derau. Operasi peningkatan kualitas citra dapat dilakukan terlebih dahulu sebelum pendeteksian tepi.[12]

Gambar 2.22 Jenis-jenis Tepi

2.9.3 Tujuan Pendeteksian Tepi

Pendeteksian tepi merupakan langkah pertama untuk melingkupi informasi didalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek didalam citra. Tujuan operasi pendeteksian tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek didalam citra.[12]


(35)

2.10 Algoritma Frei Chen

Deteksi tepi yang menggunakan Frei Chen mask yang diimplementasikan oleh pemetaan vektor intensitas menggunakan transformasi linear dan kemudian mendeteksi tepi berdasarkan sudut antara intensitas vektor dan diproyeksikan kedalam ruang bagian tepi.

Frei Chen mask adalah mask yang unik, dimana semua berisi basis vektor. Ini d implementasikan pada area gambar 3X3 diwakili dengan jumlah sembilan Frei Chen mask.


(36)

Dalam hal ini, kernel 1 sampai 4 digunakan untuk subspace tepi. 4 kernel selanjutnya untuk menghasilkan subspace garis. Mask terakhir untuk rata-rata subspace.

Jadi citra digital yang akan di deteksi tepi akan diproyeksikan pada mask frei-chen kemudian dilakukan perhitungan, hasil dari perhitungan tersebut diambil nilai bobotnya yang tidak bernilai nol, sehingga didapatkan hasil deteksi tepi.[1]

2.11 Algoritma SUSAN (Smallest Univalue Segment Assmilating Nucleus) Ide dibalik algoritma ini adalah dengan menggunakan kesamaan nilai-nilai pixel tetangganya abu-abu sebagai klasifikasi kriteria. Daerah pada SUSAN berada pada maksimum wilayah regional.

Lokal area SUSAN berisi informasi mengenai struktur dari sebuah citra digital. Area ini daerah efektif untuk mencari dalam skal kecil. Bisa dilihat dalam gambar 2.24, area SUSAN berada pada kondisi maksimum ketika nucleus berada pada permukaan citra, jatuh ke setengan dari maksimum pada saat dekat tepi lurus, dan jatuh lebih jauh ketika di sudut. Area SUSAN tersebut digunakan untuk menghasilkan tepi.


(37)

Gambar 2.24 Circular masks dengan posisi yang berbeda pada sebuah citra

Gambar 2.25 Empat circular masks dengan warna yang serupa, USAN ditampilkan sebagai bagian putih dari mask

Dari area yg di deteksi tersebut disebut SUSAN (Smallest Univalue Segment Assimilating Nucleus).

Karena Metode yang digunakan berdasarkan tingkat kecerahan(brightness) maka lebih efektif pada citra yang mempunyai tingkat brightness yang tinggi. Jadi pertama-tama citra diproyeksikan ke circular mask SUSAN, lakukan perbandingan


(38)

terhadap circular mask dengan citra asli. Kemudian hasil dari perbandingan tersebut di bandingkan dengan nilai threshold, apabila lebih kecil menghasilkan nilai piksel 1 dan sebaliknya akan menghasilkan nilai 0, sehingga deteksi tepi selesai dilakukan.[5]

2.12 Kriteria Penilaian Kualitas Citra

Pada bagian ini dibahas mengenai kriteria-kriteria penilaian baik-buruknya kualitas citra, yaitu kriteria penilaian secara obyektif dengan menggunakan suatu ukuran tertentu dan kriteria penilaian secara subyektif dengan berdasarkan pengamatan mata manusia.[10]

2.12.1 Mean Square Error (MSE)

Semakin kecil nilai MSE semakin kecil nilai error pada suatu citra. Rumus MSE dapat dituliskan sebagai berikut :[10]

MSE = N M.

1

   



     1 0 1 0 2 , , M x N y y x g y x

f

(2.3)

2.12.2 Peak Signal to Noise Ratio (PSNR)

Peak Signal to Noise Ratio (PSNR) adalah perbandingan antara nilai maksimum dari sinyal yang diukur dengan besarnya derau yang berpengaruh pada sinyal tersebut. PSNR merupakan parameter standar untuk menilai kualitas suatu citra secara obyektif dengan membandingkan noise terhadap sinyal puncak.

Pada umumnya disajikan dengan angka desimal yaitu dua angka dibelakang koma. Nilai nyata (actual value) tidak sepenuhnya berarti, tetapi perbandingan dua nilai untuk citra rekonstruksi yang berbeda


(39)

memberikan satu nilai mutu. Semakin tinggi nilainya, semakin tinggi mutunya.[10]

PSNR biasanya diukur dalam satuan desibel, berikut persamaannya:

PSNR

=

20.log10

MSE

255


(40)

38

Analisis dan perancangan aplikasi memerlukan tahapan yang sistematis untuk mendapatkan aplikasi yang baik dan bersesuaian dengan tujuannya. Tahap awal dari analisis adalah menganalisis algoritma yang akan digunakan. Sedangkan untuk tahap perancangan aplikasi yaitu perancangan antarmuka.

3.1 Deteksi Tepi Menggunakan Algoritma Frei-Chen

Frei-Chen masks merupakan satuan basis vector-vector. Dapat diwakilkan pada setiap 3x3 subimage sebagai jumlah dari 9 Frei-Chen masks.

Setiap citra yang sudah ditentukan dilakukan proses projeksi yang mirip dengan proses convolution, dimana proses convolution adalah proses dimana gambar dimanipulasi dengan menggunakan masker eksternal untuk menghasilkan gambar yang baru.

Berikut ini adalah kesembilan gambar Frei-Chen masks tersebut:


(41)

Pada empat mask pertama digunakan untuk menentukan subruang garis tepi, empat mask berikutnya untuk menentukan subruang garis, dan mask yang terakhir untuk perhitungan rata-rata subruang. Untuk mendeteksi tepi, gambar diproyeksikan kedalam matrik yang ada. Persamaan proyeksi didefinisikan sebagai berikut:

Misalkan kita memiliki subimage, Is:

Is = (3.1)

Untuk memprojeksikan subimage kedalam frei-Chen masks, mulai dengan melakukan perhitungan kedalam f1 sampai ke f9. Maka hasilnya sebagai berikut:

(3.2)

Jika kita mengikuti proses dan proyeksi subimage Is, kedalam setiap Frei-Chen masks, maka yang didapatkan adalah:

f1 c, f2 c, f3 c, f4 c, f5 c, f6 c, f7…

c ,f8 c, f9 c (3.3)

Berdasarkan hitungan, bobot yang tidak bernilai 0 adalah f5, f8 dan f9.

Dari hasil tersebut kemudian dikalikan dan dijumlahkan untuk mendapatkan deteksi tepi.


(42)

Secara garis besar, langkah-langkah algoritma pada proses deteksi tepi yang diterapkan pada citra:

1. Mulai memproyeksikan citra ke sub mask. 2. Lakukan konvolusi pada citra.

3. Kalikan produk konvolusi dengan mask.

4. Ambil berat (non-nol) dan kalikan lagi dengan topeng masing-masing sehingga menghasilkan jumlah yang sesuai.

Berikut algoritma metode frei-chen:

1 Procedure Deteksi_tepi_freichen (Input img : gambar, output img_deteksi_f : gambar)

2 {I.S : img untuk deteksi tepi}

3 {F.S : img_deteksi_f hasil deteksi tepi oleh frei-chen}

Kamus

4 img = gmbr_yang_dipilih.ekstension; Algoritma

5 if size(varargin,2) > 0 6 then lower = varargin{1}; 7 else if size(varargin,2) > 1 8 then upper = varargin{2};

else

9 upper = 255; 10 end if

11 tresholded_img = zeros(img_size, 'uint8'); 12 for x=1:img_size(1)

13 for y=1:img_size(2)

14 if img(x,y) >= lower && img(x,y) <=upper 15 then tresholded_img(x,y) = img(x,y); 16 end if

17 end for 18 end for

19 img = thresholded_img(x,y) 20 end if 21 img = cast(img, 'double');

22 filtered_img(:,:,1) = imfilter(img, freichen(:,:,1), 'conv');

23 filtered_img(:,:,2) = imfilter(img, freichen(:,:,2), 'conv');

24 filtered_img(:,:,3) = imfilter(img, freichen(:,:,3), 'conv');

25 filtered_img(:,:,4) = imfilter(img, freichen(:,:,4), 'conv');

26 img_deteksi_f = sqrt(filtered_img(:,:,1).^2 +

filtered_img(:,:,2).^2 + filtered_img(:,:,3).^2+ filtered_img(:,:,4).^2);


(43)

Gambar 3.2 Pseude Code frei-chen

3.2 Deteksi Tepi Menggunakan Algoritma SUSAN (Smallest Univalue Segment Assimilation Nucleus)

Teori SUSAN menggunakan metoda yang biasa digunakan dalam proses pendeteksian sisi yaitu dengan menggunakn matrik mask yang telah ditentukan aturan-aturannya (rules). Jika brightness dari setiap pixel di dalam mask tersebut dibandingkan dengan brightness dari inti mask (pixel yang berada ditengah matrik ) tersebut, maka sebagian atau seluruh area dari mask dapat didefinisikan memiliki brightness yang sama atau mirip dengan nilai brightness yang dimiliki oleh inti mask atau nucleus. Konsep bahwa setiap titik dari citra dihubungkan dengan sebuah area lokal yang memiliki brightness yang hampir sama adalah dasar dari teori SUSAN [3].

Area ini kemudian dikenal sebagai USAN (Univalue Segment Assimilating Nucleus) dan berisi informasi mengenai struktur dari sebuah citra. Berdasarkan area ini maka bentuk dua dimensi atau sudut dan sisi dari sebuah citra dapat di deteksi. Seperti yang terlihat pada gambar dibawah ini, area USAN digambarkan pada bagian putih dari mask.


(44)

Gambar 3.3 Lima circular masks dengan posisi yang berbeda pada sebuah citra

Gambar 3.4 Empat circular masks dengan warna yang serupa, USAN ditampilkan sebagai bagian putih dari mask

Area dari sebuah USAN menggambarkan informasi penting mengenai struktur dari sebuah citra pada setiap area yang telah dipetakan. USAN area bernilai maksimum ketika nucleus berada pada bagian datar dari permukaan citra. Nilainya turun sampai setengahnya ketika mendekati sisi dan turun lebih besar


(45)

lagi ketika berada didalam sudut citra. Nilai dari area USAN inilah yang digunakan sebagai penentu posisi edge.

Pendeteksian sisi SUSAN diimplementasikan dengan menggunakan circular mask yang terdiri dari 37 pixel atau mask 3x. Matrik mask diletakkan pada setiap bagian dari citra. Untuk setiap bagian tersebut brightness dari setiap pixel didalam matrik dibandingkan dengan pixel nucleus. Jika perbedaan nilai brightness dari tiap pixel kurang dari nilai threshold ”t”, maka keluaran dari pembandingan tersebut adalah 1 dan jika sebaliknya maka nilai 0. Aturan tersebut dituliskan ke dalam persamaan sebagai berikut :

1 ,

0 , (3.4)

Keterangan: t = nilai threshold

= posisi nucleus pada citra

= posisi nuclues pada poin citra yang lain

Jika proses pembandingan telah dilakukan pada setiap pixel, maka akan diperoleh besar area SUSAN dengan menjumlahkan pixel-pixel didalam window


(46)

mask yang bernilai 1. Nilai area SUSAN diperoleh berdasarkan persamaan berikut :

(3.5)

Keterangan: n = total ouput

c = output perbandingan

Untuk mendapatkan respon edge, proses selanjutnya adalah membandingkan nilai n dengan tetapan threshold g (geometric threshold) yang bernilai 3*Nmax/4, dimana Nmax adalah nilai maksimum yang dapat dicapai oleh n. Nilai respon awal dari edge didapatkan dengan menggunakan aturan berikut :

0 otherwise, (3.6)

Keterangan:

= hasil garis tepi

g = geometric threshold n = total output


(47)

Formulasi ini merupakan metoda SUSAN, dimana semakin kecil area SUSAN maka akan semakin besar respon sisi yang dihasilkan.

Secara garis besar, langkah-langkah algoritma pada proses deteksi tepi yang diterapkan pada citra:

1. Letakka

n sebuah mask circular pada pixel yang akan diuji.

2. Hitung

jumlah pixel didalam circular mask yang memilki brigtness yang mirip dengan brightness nucleus.

3. Kurangi

ukuran SUSAN dari threshold geometric untuk menghasilkan citra sisi yang lebih kuat.

1 Procedure Deteksi_tepi_freichen (Input IMG : gambar, output img_deteksi_s : gambar)

2 {I.S : IMG untuk deteksti tepi}

3 {F.S : img_deteksi_s hasil deteksi tepi oleh

SUSAN}

Kamus

4 IMG = gmbr_yang_dipilih.ekstension; Algoritma

5 IMG = IMG + 255; 6 [m,n] = size(IMG); 7 KW = (2 * KR) + 1; 8 KM = ones(KW,KW); 9 for i = -KR:KR 10 for j = -KR:KR

11 if (round(sqrt((i.^2) + (j.^2))) > KR) 12 KM(i+KR+1,j+KR+1) = 0;

13 End if 14 End for 15 End for

16 KAREA = nnz(KM); 17 GT = 3 * KAREA / 4;

18 IMG =

[repmat(IMG(1,:),KR,1);IMG;repmat(IMG(m,:),KR,1)];

19 IMG =

[repmat(IMG(:,1),1,KR),IMG,repmat(IMG(:,n),1,KR)]; 20 EDG = zeros(m,n);

21 for i = KR+1:m+KR 22 for j = KR+1:n+KR

23 USAN = KM .* exp(-((IMG(i-KR:i+KR, j-KR:j+KR) - IMG(i,j)) / TR).^6);

24 if (OP)

25 USAN_BINARY = ceil(USAN);

26 if (nnz(USAN_BINARY) < (KAREA - KR))

27 USAN = bwselect(USAN_BINARY,KR+1,KR+1,8) .* USAN; 28 End if


(48)

Gambar 3.5 Pseude Code SUSAN

3.3 Gray Scale

Gray-scale atau skala keabu-abuan, adalah proses umum untuk meratakan ketiga kanal citra yaitu kanal RGB (Red, Green, Blue). Tujuan agar proses perhitungan yang melibatkan operasi perhitungan citra yang lainnya dapat lebih efisien. Berikut ini adalah persamaannya:

bit R (x,y) = 0,11 x bit R(x,y) + 0,59 x bit G(x,y) + 0,3 x bit B (x,y) (3.7)

dimana,

bit G (x,y) = bit B (x,y) = bit R (x,y) (3.8)

34 End for 35 End for


(49)

3.4 Analisis Kebutuhan Data Non Fungsional

Analisis kebutuhan ini merupakan pendukung aplikasi yang akan dijalankan. Adapun kebutuhan-kebutuhannya yaitu:

3.4.1 Kebutuhan Perangkat Keras

Berikut ini adalah spesifikasi perangkat keras yang digunakan dalam penelitian ini yaitu:

a. Processor : 1,6 GHz. b. Memory : 2048 MB.

c. VGA : Intel X3150 256MB. d. HDD : 320 GB.

e. Monitor : 10.1 inch. f. Mouse dan Keyboard.

3.4.2 Kebutuhan Perangkat Lunak

Perangkat lunak digunakan dalam sebuah sistem untuk memberi perintah kepada perangkat keras agar bisa saling berinteraksi diantara keduanya. Perangkat lunak yang dibutuhkan dalam membangun aplikasi ini adalah sebagai berikut :

a. Sistem Operasi Windows. b. Matlab.

3.5 Kebutuhan Fungsional

Proses-proses yang terjadi di dalam aplikasi ini akan dijelaskan sebagai berikut:


(50)

3.5.1 Diagram Konteks

Diagram ini adalah diagram level tertinggi dari DFD yang menggambarkan hubungan sistem dengan lingkungan luar. Diagram konteks dari sistem yang dirancang adalah sebagai berikut:

Gambar 3.6 Diagram Konteks Analisis Deteksi Tepi

Proses yang terjadi pada Diagram konteks tersebut dapat dijelaskan melalui spesifikasi proses sebagai berikut:

Tabel 3.1 Spesifikasi Proses Diagram Konteks

No Nama Proses Input Keterangan Proses Output

0 Metode

pendeteksian tepi Frei-Chen dan SUSAN

Citra_berwarna Mendeteksi tepi sebuah citra dengan metode Frei-Chen dan SUSAN

Deteksi_tepi

Selanjutnya Diagram Konteks diatas dapat dijabarkan lebih luas lagi dengan memecah proses Diagram Konteks kedalam proses-proses yang lebih kecil.


(51)

3.5.2 Data Flow Diagram

Data Flow Diagram (DFD) merupakan pemodelan terstruktur yang berfungsi untuk menggambar sistem sebagai suatu jaringan fungsional yang dihubungkan satu sama lain dengan alur data baik secara manual maupun komputerisasi. Penjabaran pertama disebut dengan DFD level 0, berikut gambar DFD level 0.

Gambar 3.7 DFD Level 0

Penjelasan mengenai proses-proses yang terjadi pada DFD Level 0 tersebut diperlihatkan dalam tabel berikut:

Tabel 3.2 Spesifikasi Proses DFD Level 0

No Nama Proses Input Keterangan Output

1 Proses deteksi

tepi dengan

alg. Frei-Chen

Citra_berwarna Mendeteksi tepi dengan alg. Frei-Chen

Deteksi_tepi_freichen

2 Proses deteksi

tepi dengan

alg. SUSAN

Citra_berwarna Mendeteksi tepi

dengan alg.

SUSAN


(52)

Proses 1 dari DFD level 0 diatas terdiri atas 3 (tiga) proses utama yang terjadi didalamnya, aliran data yang terjadi pada proses ini sebagai DFD Level 1 proses Deteksi Tepi Frei-Chen, diperlihatkan pada gambar berikut:

Gambar 3.8 DFD Level 1 Proses 1 Deteksi Tepi Frei-Chen

Untuk spesifikasi proses yang terjadi pada DFD Level 1 proses 1 ini ditujukan pada tabel.

Tabel 3.3 Spesifikasi Proses DFD Level 1 Proses 1 Deteksi Tepi Frei-Chen

No Nama Proses Input Keterangan Proses Output

1.1 Proses tampil citra masukan

Citra_berwarna Mencari sebuah data citra(masukan) dan menampilkannya

Citra_berwarna

1.2 Proses perhitungan citra

Citra_berwarna Melakukan

perhitungan dengan

Deteksi_tepi_fre ichen


(53)

alg. Frei-Chen agar mendapat deteksi tepi pada citra 1.3 Proses tampil citra

hasil deteksi tepi Frei-Chen

Deteksi_tepi_fr eichen

Menampilkan citra yang telah diproses dengan metode pendeteksian tepi Frei-Chen

Deteksi_tepi

Untuk penjelasan proses 2 deteksi tepi SUSAN, juga terdapat 3 (tiga) proses utama. Berikut gambar penjabaran DFD Level 1 proses 2.

Gambar 3.9 DFD Level 1 proses 2 Deteksi Tepi SUSAN

Berikut tabel spesifikasi proses dari DFD Level 1 proses 2:


(54)

No Nama Proses Input Keterangan Proses Output 2.1 Proses tampil citra

masukan

Citra_berwarna Mencari sebuah data citra(masukan) dan menampilkannya

Citra_berwarna

2.2 Proses perhitungan citra

Citra_berwarna Melakukan

perhitungan dengan alg. SUSAN agar mendapat deteksi tepi pada citra

Deteksi_tepi_su san

2.3 Proses tampil citra hasil deteksi tepi SUSAN

Deteksi_tepi_su san

Menampilkan citra yang telah diproses dengan metode pendeteksian tepi SUSAN

Deteksi_tepi

Proses 1.2 dari DFD level 1 diatas terdiri atas 5 (lima) proses utama yang terjadi didalamnya, aliran data yang terjadi pada proses ini sebagai DFD Level 2 proses Deteksi Tepi Frei-Chen, diperlihatkan pada gambar berikut:


(55)

Gambar 3.10 DFD level 2 proses 1.2 Deteksi tepi Frei-Chen

Berikut tabel spesifikasi proses dari DFD Level 2 proses 1.2:

Tabel 3.5 Spesifikasi Proses DFD Level 2 proses 2 Deteksi Tepi Frei-Chen

No Nama Proses Input Keterangan Proses Output

1.2.1 Ubah Citra

kedalam skal

keabuan

Citra_berwarna Melakukan perubahan citra berwarna kedalam skala keabuan

Citra_keabuan

1.2.2 Memproyeksikan citra kedalam sub mask

Citra_keabuan Melakukan proyeksi citra kedalam sub mask

Citra_keabuan

1.2.3 Melakukan

konvolusi pada

citra

Citra_keabuan Melakukan

konvolusi pada citra digital dengan filter frei chen


(56)

1.2.4 Kalikan produk konvolusi dengan mask

Citra_keabuan Melakukan

perhitungan perkalian

Citra_keabuan

1.2.5 Ambil berat (non nol) dan kalikan

dengan mask

masing-masing

Citra_keabuan Melakukan

perhitungan perkalian dengan mask masing-masing setelah pengambilan nilai non nol.

Deteksi_tepi

Proses 2.2 dari DFD level 1 diatas terdiri atas 4 (lima) proses utama yang terjadi didalamnya, aliran data yang terjadi pada proses ini sebagai DFD Level 2 proses Deteksi Tepi SUSAN, diperlihatkan pada gambar berikut:


(57)

Berikut tabel spesifikasi proses dari DFD Level 2 proses 2.2:

Tabel 3.6 Spesifikasi Proses DFD Level 2 proses 2 Deteksi Tepi SUSAN

No Nama Proses Input Keterangan Proses Output

2.2.1 Ubah Citra

kedalam skal

keabuan

Citra_berwarna Melakukan perubahan citra berwarna kedalam skala keabuan

Citra_keabuan

2.2.2 Letakkan sebuah mask circular pada pixel yang akan diuji

Citra_keabuan Melakukan proyeksi citra kedalam mask circular

Citra_keabuan

2.2.3 Hitung jumlah

piksel didalam

circular mask yang memiliki

brightness yang

mirip dengan

brightness nucleus SUSAN

Citra_keabuan Melakukan

perhitungan jumlah piksel didalam circular mask yang memilik tingkat kecerahan mirip dengan tingkat kecerahan SUSAN

Citra_keabuan

2.2.4 Kurangi ukuran

SUSAN dari

threshold

geometric untuk menghasilkan citra

Citra_keabuan Melakukan

perhitungan pengurangan untuk menghasilkan citra sisi yang lebih kuat


(58)

sisi yang lebih kuat

3.5.3 Perancangan Kamus Data

Kamus data merupakan data yang disusun untuk memudahkan proses analisis dan desain. Dengan kamus data pemakai dan analisis sistem akan memiliki pemahaman umum mengenai input, output, dan komponen penyimpanan. Dibawah ini merupakan tabel yang memperlihatkan kamus data untuk menjelaskan data pada DFD yang telah dijelaskan sebelumnya.

Tabel 3.7 Perancangan Kamus Data

No Nama Deskripsi

1 Citra_warna Citra_warna= file citra asli

2 Citra_keabuan Hasil perubahan intensitas warna pada

citra

3 Data_tepi Hasil deteksi tepi citra dengan

algoritma Frei-Chen dan SUSAN

3.5.4 Perancangan Antarmuka Pemakai (User Interface)

Antarmuka pemakai (User Interface) adalah aspek program yang dapat dilihat oleh pengguna, dan perintah-perintah atau mekanisme yang digunakan pemakai untuk mengendalikan operasi dan memasukkan data.


(59)

Berikut ini adalah perancangan antarmuka aplikasi Pendeteksian Tepi Citra yang dirancang dalam pemrograman Matlab.

3.5.4.1Antarmuka Pendeteksian Tepi

Tampilan utama merupakan tampilan awalan yang akan menghubungkan user dengan fitur utama perangkat lunak. Oleh karena itu, untuk tampilan utama ini dirancang dengan tampilan sederhana untuk mempermudah user dalam berinteraksi dengan sistem.

Gambar 3.12 Tampilan program

3.5.5 Perancangan Prosedural

MSE: MSE:

PSNR: PSNR:

Deteksi tepi Citra asli Hasil deteksi

tepi

frei-chen Hasil deteksi tepi SUSAN Pilih gambar Keluar

noise 0,001

Navigasi:

-klik link pilih

gambar untuk

memilih gambar.

-klik menu scroll down pada noise

untuk memilih

nilai variance

-klik link deteksi

tepi untuk

mendeteksi tepi

-klik link keluar

untuk keluar

program

Keterangan:

Nama form : Layar program Ukuran Layar : 920 x 464 piksel Font : Times New Roman


(60)

Pada bagian ini akan dibuat deskripsi rinci dari perangkat lunak, yaitu algoritma yang akan digunakan untuk mendeteksi suatu citra digital. Deskripsi rinci tersebut adalah sebagai berikut:

3.5.5.1Prosedur Algoritma Frei-Chen

Berikut ini prosedur dalam melakukan deteksi tepi pada citra digital dengan menggunakan algoritma frei-chen:

1. Pilih gambar yang akan dideteksi tepinya.

2. Lakukan perubahan warna pada gambar dengan skala keabuan dengan persamaan (3.8).

3. Lakukan filter dengan operasi konvolusi pada citra dengan mask frei-chen (gambar 3.1).

4. Lalu estimasi magnitude gradient untuk tiap piksel menggunakan persamaan:

(3.9) 5. Dengan memberikan nilai ambang atau threshold terhadap magnitude


(61)

Gambar 3.13 Flowchart frei-chen

3.5.5.2Prosedur Algoritma SUSAN

Berikut ini prosedur dalam melakukan deteksi tepi pada citra digital dengan menggunakan algoritma SUSAN:

1. Pilih gambar yang akan dideteksi tepinya.

2. Lakukan perubahan warna pada gambar dengan skala keabuan dengan persamaan (3.7).


(62)

3. Letakkan mask circular pada piksel yang akan diuji, berikut persamaan mask yang digunakan:

(3.10)

4. Lakukan perbandingan antara brightness pada citra dengan mask circular. Dengan menerapkan persamaan (3.4).

5. Jumlahkan piksel –piksel dari hasil perbandingan yang bernilai 1, maka dapat diporeleh nilai area SUSAN berdasarkan persamaan (3.5).

6. Lakukan perbandingan nilai n dengan tetapan threshold g yang bernilai 3*Nmax/4, dengan menggunakan persamaan (3.6).


(63)

(64)

61 BAB 4

IMPLEMENTASI DAN PENGUJIAN

Tahap implementasi merupakan tahap lanjutan dari tahap perancangan sistem. Tahap ini juga merupakan tahap untuk meletakan sistem agar siap untuk dioperasikan dan dipandang sebagai usaha untuk mewujudkan sistem yang telah dirancang.

4.1 Perangkat Lunak Pembangun

Perangkat lunak yang digunakan pada sistem komputer yang digunakan untuk membangun aplikasi deteksi tepi adalah sebagai berikut:

1.Sistem Operasi Windows 7. 2.Matlab.

4.2 Perangkat Keras Pembangun

Kebutuhan perangkat keras (hardware) yang diperlukan untuk mengimplementasikan program aplikasi yang dibuat. Berikut kebutuhan perangkat keras (hardware) yang digunakan yaitu:

1.Processor: Intel Atom 1.6 GHZ. 2.Memory: 2048 MB.

3.Hardisk: 320 GB. 4.VGA:Intel GMA 3100. 5.Monitor: 10 Inchi.


(65)

4.3 Implementasi Program 4.3.1 Implementasi Antarmuka

Antarmuka merupakan saran dialog atau interaksi antara pemakai (user) dengan sistem.

4.3.1.1Form Utama

Pada form utama ini terdapat program secara keseluruhan beserta dengan prosedur-prosedur programnya. Tampilan dari form utama ini dapat dilihat pada gambar 4.1 dibawah ini:

Gambar 4.1 Antarmuka Aplikasi

4.4 Uji Coba Program

Pada sub bab ini akan dibahas tentang uji coba dari program yang telah dibuat menyangkut masukan (input), proses dan hasil dari program (output). Ada 5 citra yang dijadikan bahan uji, berikut citra yang dijadikan bahan uji:


(66)

Gambar 4.2 Lima macam citra digital

4.5 Pengujian White-Box

4.5.1 Procedure Sort Frei-Chen dan SUSAN

Pada gambar 4.3 dan 4.4 merupakan procedure sort yang digunakan pada masing-masing algoritma

Procedure Sort 1 img=gmbr_yang_dipilih.ekstension;

2 if size(varargin,2) > 0

3 then lower = varargin{1}; 4 else if size(varargin,2) > 1 5 then upper = varargin{2};

else

6 upper = 255; 7 end if

8 tresholded_img = zeros(img_size, 'uint8'); 9 for x=1:img_size(1)

10 for y=1:img_size(2)

11 if img(x,y) >= lower && img(x,y) <=upper 12 then tresholded_img(x,y) = img(x,y); 13 end if

14 end for


(67)

Gambar 4.3 Procedure sort frei-chen

15 end for

16 img = thresholded_img(x,y) 17 end if

18 img = cast(img, 'double');

19 filtered_img(:,:,1) = imfilter(img,

freichen(:,:,1), 'conv');

20 filtered_img(:,:,2) = imfilter(img,

freichen(:,:,2), 'conv');

21 filtered_img(:,:,3) = imfilter(img,

freichen(:,:,3), 'conv');

22 filtered_img(:,:,4) = imfilter(img,

freichen(:,:,4), 'conv');

23 edges = sqrt(filtered_img(:,:,1).^2 +

filtered_img(:,:,2).^2 + filtered_img(:,:,3).^2+ filtered_img(:,:,4).^2);

1 IMG=gmbr_yang_dipilih.ekstension; 2 IMG = IMG + 255;

3 [m,n] = size(IMG); 4 KW = (2 * KR) + 1; 5 KM = ones(KW,KW); 6 for i = -KR:KR 7 for j = -KR:KR

8 if (round(sqrt((i.^2) + (j.^2))) > KR) 9 KM(i+KR+1,j+KR+1) = 0;

10 End if 11 End for 12 End for

13 KAREA = nnz(KM); 14 GT = 3 * KAREA / 4;

15 IMG =

[repmat(IMG(1,:),KR,1);IMG;repmat(IMG(m,:),KR,1)];

16 IMG =

[repmat(IMG(:,1),1,KR),IMG,repmat(IMG(:,n),1,KR)]; 17 EDG = zeros(m,n);

18 for i = KR+1:m+KR 19 for j = KR+1:n+KR

20 USAN = KM .* exp(-((IMG(i-KR:i+KR, j-KR:j+KR) - IMG(i,j)) / TR).^6);

21 if (OP)


(68)

Gambar 4.4 Procedure sort susan

4.5.2 Flowchart Frei-Chen dan SUSAN

Pada Gambar 4.5 dan 4.6 merupakan flowchart yang dimiliki pada masing-masing algoritma

23 Else if (nnz(USAN_BINARY) < (KAREA - KR))

24 USAN = bwselect(USAN_BINARY,KR+1,KR+1,8) .* USAN; 25 End if

26 End if

27 USAN_AREA = sum(sum(USAN)); 28 if (USAN_AREA < GT)

29 EDG(i-KR,j-KR) = GT - USAN_AREA; 30 End if

31 End for 32 End for


(69)

(70)

(71)

4.5.3 Flow Graph Frei-Chen dan SUSAN

Pada Gambar 4.7 dan 4.8 merupakan flowchart yang dimiliki pada masing-masing algoritma


(72)

(73)

4.5.4 Cyclomatic Complexity Frei-Chen dan SUSAN Berikut ini adalah cyclomatic complexity Frei-Chen: V(G) = E – N +2

V(G) = 23 – 18 + 2 = 7

Selanjutnya adalah cyclomatic complexity SUSAN: V(G) = E – N +2

V(G) = 27 – 24 + 2 = 5

4.5.5 Independent Path

Berikut ini adalah Independent Path pada Frei-Chen:

Path 1: 1,2,4,6,7,8,9,15,16,17,18,19,20,21,22,23

Path 2: 1,2,4,6,7,8,9,10,14,15,16,17,18,19,20,21,22,23

Path 3: 1,2,3,4,6,7,8,9,15,16,17,18,19,20,21,22,23

Path 4: 1,2,4,5,6,7,8,9,15,16,17,18,19,20,21,22,23

Path 5: 1,2,4,6,7,8,9,10,11,10,14,15,16,17,18,19,20,21,22,23

Path 6: 1,2,4,6,7,8,9,10,11,12,13,9,15,16,17,18,19,20,21,22,23


(74)

Berikut ini adalah Independent Path pada SUSAN:

Path 1: 1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,

28,29,30,31,32,33

Path 2 : 1,2,4,5,6,7,8,9,10,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,

25,26,27,28,29,30,31,32,33

Path 3: 1,2,4,5,6,7,8,9,10,11,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,

23,24,25,26,27,28,29,30,31,32,33

Path 4: 1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,

27,28,29,30,19,20,21,22,23,24,25,26,27,28,29,30,19,31,32,33

Path 5: 1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,

27,28,29,30,31,18,19,20,21,22,23,24,25,26,27,28,29,30,19,31,32,33

4.5.6 Graph Matrices Frei-Chen dan SUSAN

Berikut ini adalah gambar 4.9 dan 4.10 untuk Graph Matrices pada masing-masinh algoritma.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

1 1 0

2 1 1 1

3 1 0

4 1 1 1

5 1 0

6 1 0

7 1 0

8 1 0

9 1 1 1


(75)

11 1 1 1

12 1 0

13a 1 1 1

13b 1 0

13c 1 0

16 1 0

17 1 0

Total 6+1=7

Gambar 4.9 Graph Metrices Frei-Chen

Koneksi: 1. 1 – 1 = 0 8. 1 – 1 = 0 14. 1 – 1 = 0

2. 2 – 1 = 1 9. 2 – 1 = 1 15. 1 – 1 = 0

3.1 – 1 = 0 10. 2 – 1 = 1 16. 1 – 1 = 0

4. 2 – 1 = 1 11. 2 – 1 = 1 17. 1 – 1 = 0

5. 1 – 1 = 0 12. 1 – 1 = 0 Total komplesitas

6. 1 – 1 = 0 13. 2 – 1 = 1 cyclomatic = 6+1= 7

7. 1 – 1 = 0 14. 1 – 1 = 0

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4

1 1 0

2 1 0

3 1 0

4 1 0

5 1 0

6 1 1 1

7 1 1 1

8 1 0

9 1 0

1 0

1 0

1 1

1 0

1 2

1 0

1 3

1 0

1 4

1 0

1 5

1 0

1 6

1 0


(76)

7 1 8

1 0

1 9

1 0

2 0

1 0

2 1

1 0

2 2

1 1 1

2 3

1 1 1

Total 4+1 =5

Gambar 4.10 Flow Graph SUSAN

Koneksi: 1. 1 – 1 = 0 10. 1 – 1 = 0 19. 1 – 1 = 0

2. 1 – 1 = 0 11. 1 – 1 = 0 20. 1 – 1 = 0

3. 1 – 1 = 0 12. 1 – 1 = 0 21. 1 – 1 = 0

4. 1 – 1 = 0 13. 1 – 1 = 0 22. 1 – 1 = 0

5. 1 – 1 = 0 14. 1 – 1 = 0 23. 2 – 1 = 1

6. 2 – 1 = 1 15. 1 – 1 = 0 24. 2 – 1 = 1

7. 2 – 1 = 1 16. 1 – 1 = 0 Total komplesitas

8. 1 – 1 = 0 17. 1 – 1 = 0 cyclomatic = 4+1 =5 9. 1 – 1 = 0 18. 1 – 1 = 0


(77)

4.6 Pengujian Black-Box

4.6.1Konversi Citra Warna Menjadi Skala Keabuan

Perubahan citra warna menjadi skala keabuan, dimana memberikan intensitas pada citra warna dalam kisaran dari 0 – 255. Dimana nilai 0 merepresentasikan warna hitam sedangkan 255 merepresentasikan warna putih. Dibawah ini gambar citra warna yang diubah kedalam skala keabuan.

Gambar 4.11 Perubahan Citra Warna Kedalam Skala Keabuan

4.6.2Deteksi Tepi Citra

Berikut ini gambar hasil dari proses deteksi tepi pada citra dengan masing-masing algoritma.

Pertama deteksi tepi dengan menggunakan algoritma frei-chen: Citra f15.jpg dengan resolusi citra 400 x 273 piksel.


(78)

Citra lena_rgb.jpg dengan resolusi 512 x 512 piksel.

Gambar 4.13 Hasil Deteksi Tepi Frei-Chen Pada Citra Lena Citra newyork.jpg dengan resolusi 400 x 271 piksel


(79)

Citra opera.jpg dengan resolusi 400 x 337 piksel.

Gambar 4.15 Hasil Deteksi Tepi Frei-Chen Pada Citra Sebuah Gedung Citra papermachine.jpg dengan resolusi 400 x 264 piksel


(80)

Gambar kedua dengan algoritma susan:

Gambar 4.17 Hasil Deteksi Tepi SUSAN Pada Citra Pesawat


(81)

Gambar 4.19 Hasil Deteksi Tepi SUSAN Pada Citra Penuh Gedung


(82)

Gambar 4.21 Hasil Deteksi Tepi SUSAN Pada Citra Mesin Kertas

4.6.3Deteksi Tepi Pada Citra Yang Memiliki Noise

Pendeteksian tepi dengan citra yang memiliki noise, bertujuan untuk mengetahui kemampuan dari kedua algoritma dalam mendeteksi objek yang ada. Citra asli diberi noise Gausian dengan batasan nilai variance dari 0,001 – 0,005.

Tabel 4.1 Hasil Deteksi Tepi Dengan Citra Bernoise

No Nilai Variance Pada Gausssian

Citra Asli Hasil Deteksi Tepi

Frei-Chen

Hasil Deteksi Tepi SUSAN


(83)

(84)

(85)

(86)

(87)

(88)

4.6.4Perbandingan Deteksi Tepi

Perbandingan deteksi tepi merupakan berdasarkan perbandingan waktu proses dan nilai PSNR dari kedua metode yang digunakan. Berikut tabel hasil dari waktu proses, nilai MSE dan nilai PSNR yang diperoleh.

Tabel berikut memperlihatkan pendeteksian tepi frei-chen pada citra bernoise.


(89)

Tabel 4.2 Perhitungan PSNR Frei-Chen

Nilai variance F15 Lena_RGB Newyork Opera Papermachine

0,001 15,9262 13,5773 15,5445 14,1344 16,3699

0,002 10,7524 11,4788 13,9624 12,3416 14,8258

0,003 8,69136 8,8966 13,1338 11,249 13,7307

0,004 7,46011 8,79276 12,4159 10,1668 13,0716

0,005 6,64704 8,08999 11,9776 9,49363 12,4754

Gambar 4.22 Grafik PSNR Untuk Deteksi Tepi Frei-Chen


(90)

Tabel 4.3 Perhitungan PSNR SUSAN

Nilai variance F15 Lena_RGB Newyork Opera Papermachine

0,001 20,2581 13,2028 8,81519 11,1178 10,7938

0,002 13,8203 10,5245 8,13667 9,29798 9,41921

0,003 10,204 8,60251 7,67177 7,95357 8,38547

0,004 8,35571 7,55518 7,4096 7,18491 7,65961

0,005 7,26426 6,91968 7,18744 6,68146 7,18614

Gambar 4.23 Grafik PSNR Untuk Deteksi Tepi SUSAN

Dari data-data diatas maka diperoleh hasil perbandingan antara kedua metode.

Berikut ini pada gambar 4.16 menampilkan perbandingan nilai PSNR pada citra F15.


(91)

Gambar 4.24 Grafik perbandingan nilai PSNR Untuk citra F15

Berikut ini pada gambar 4.17 menampilkan perbandingan nilai PSNR pada citra Lena_RGB.

Gambar 4.25 Grafik perbandingan nilai PSNR Untuk citra Lena_RGB Berikut ini pada gambar 4.18 menampilkan perbandingan nilai PSNR pada citra Newyork.


(92)

Gambar 4.26 Grafik perbandingan nilai PSNR Untuk citra Newyork

Berikut ini pada gambar 4.19 menampilkan perbandingan nilai PSNR pada citra Opera.

Gambar 4.27 Grafik perbandingan nilai PSNR Untuk citra Opera

Berikut ini pada gambar 4.20 menampilkan perbandingan nilai PSNR pada citra Papermachine.


(93)

Gambar 4.28 Grafik perbandingan nilai PSNR Untuk citra Papermachine

4.6.5 Pembahasan Hasil Penelitian

Dari hasil penelitian yang dilakukan dari perbandingan dua algoritma deteksi tepi yang berbeda yaitu frei-chen dan SUSAN kinerja dalam mendeteksi tepi pada citra yang diberikan berhasil dengan baik.

Pada citra F15.jpg kedua algoritma berhasil mendeteksi tepi sebuah pesawat. Ketika gambar diberikan noise Gaussian dengan nilai 0,001, kedua algoritma masih memberikan hasil yang baik. Begitu pula pada saat diberikan nilai 0,002, kedua algoritma masih bisa mendeteksi tepi dengan baik. Pada saat pemberian nilai 0,003 algoritma susan mulai menghasilkan deteksi tepi yang tidak sesuai, karena banyaknya noise diberikan, sedangkan algoritma frei-chen masih bisa mendeteksi tepi pada objek pesawat, meskipun noise yang diberikan dideteksi juga. Pada nilai 0,004 sampai 0,005 algoritma susan sudah tidak mampu mendeteksi tepi dengan baik, gambar yang dihasilkan titik-titik putih yang dihasilkan oleh noise yang diberikan, sedangkan pada algoritma frei-chen


(94)

meskipun sama tetapi objek yang di deteksi tepinya memberikan gambar garis yang kuat, jadi masih bisa dilihat hasil deteksi tepi pesawatnya. Pada gambar 4.16 perbandingan antara kedua algoritma pada nilai 0,001 sampai 0,005 algoritma SUSAN memperoleh nilai PSNR yang tinggi dibandingkan dengan algoritma frei-chen.

Pada citra lena_RGB.png pada saat pemberian nilai 0,001, deteksi tepi yang dihasilkan masih baik. Tetapi pada saat diberikan nilai 0,002, algoritma susan mulai tidak mampu mendeteksi tepi dengan baik terlihat dari banyaknya noise yang terdeteksi sehingga mempengaruhi pendeteksian tepi. Sehingga sampai pada nilai 0,005 algoritma susan sudah tidak berhasil mendeteksi tepi pada citra lena.jpg. Pada gambar 4.17 perbandingan terlihat frei-chen mempunyai nilai PSNR yang lebih baik dibandingkan dengan algoritma SUSAN, dari nilai 0,001 sampai 0,005.

Pada citra newyork.jpg memberikan hasil yang sama baik pada noise yang bernilai 0,001, tetapi pada algoritma susan gedung-gedung yang ada tidak bisa dikenali walaupun berhasil dideteksi tepinya. Sehingga sampai noise yang bernilai 0,005 algoritma susan memberikan deteksi tepi yang objeknya tidak bisa dikenali. Sedangkan pada algoritma frei-chen gedung-gedung berhasil dideteksi tepinya dan objeknya dikenali dengan baik. Pada gambar 4.18 algoritma frei-chen mendapatkan nilai PSNR yang lebih baik lagi dibandingkan dengan algoritma SUSAN.

Pada citra opera.jpg memberikan hasil yang mirip dengan citra lena_RGB.jpg, dimana pada saat diberikan nilai 0,002, algoritma susan sudah sulit


(95)

mendeteksi tepi gedung. Begitu pula pada saat diberikan nilai 0,005. Pada gambar 4.19 algoritma frei-chen mendapatkan nilai yang lebih tinggi dibandingkan dengan algoritma SUSAN.

Pada citra papermachine.png memberikan hasil yang mirip dengan newyork.jpg. algoritma susan mulai sulit mendeteksi tepi pada objek yang sudah diberikan noise yang bernilai 0,002 sampai dengan 0,005. Pada gambar 4.20 algoritma frei-chen mendapatkan nilai PSNR yang lebih baik dibandingkan dengan algoritma SUSAN.

Kemudian dari hasil nilai PSNR pada masing-masing algoritma, didapatkan bahwa algoritma susan memiliki nilai PSNR yang lebih baik pada citra yang diberi nilai noise sebesar 0,001. Sedangkan pada algoritma frei-chen nilai PSNR yang lebih baik pada nilai noise dari 0,002 sampai 0,005. Jadi algoritma frei-chen memberikan nilai PSNR terbaik rata-rata, dibandingkan dengan algoritma SUSAN.


(96)

93 5.1 Kesimpulan

Beberapa kesimpulan yang dapat ditarik berdasarkan penelitian yang telah dilakukan adalah sebagai berikut:

1. Kedua algoritma yang digunakan dalam deteksi tepi yaitu algoritma frei-chen dan SUSAN untuk mendeteksi tepi pada citra sudah cukup handal, karena berhasil memisahkan antara objek dengan latar belakang sehingga menghasilkan objek yang sesuai dengan citra asli.

2. Pada saat deteksi tepi pada citra yang diberikan noise, algoritma frei-chen cukup baik mendeteksi tepi, sedangkan algoritma SUSAN mulai kesulitan mendeteksi tepi pada saat diberikan noise yang cukup banyak.

3. Pada algoritma SUSAN nilai PSNR pada citra F15.jpg memiliki nilai yang cukup besar dibandingkan dengan algoritma frei-chen, tetapi selain citra tersebut algoritma frei-chen memiliki nilai PSNR yang besar karena algoritma frei-chen dalam mendeteksi objek yang banyak pada suatu citra memiliki hasil yang lebih baik dibandingkan algoritma SUSAN.

4. Hasil nilai PSNR pada kedua algoritma, algoritma frei-chen yang memiliki nilai PSNR yang lebih besar rata-rata dari kelima sample citra yang ada daripada nilai PSNR yang dimiliki algoritma SUSAN.


(97)

5.2 Saran

Dalam pembuatan tugas akhir ini, masih terdapat banyak kekurangan yang dapat diperbaiki untuk pengembangan selanjutnya. Beberapa saran yang dapat diberikan adalah:

1. Dalam mendeteksi tepi yang memiliki tingkat noise yang tinggi lebih baik menggunakan algoritma frei-chen, karena mempunyai hasil yang lebih baik.

2. Untuk mendapatkan hasil yang lebih dalam mendeteksi tepi yang memiliki noise, dapat digunakan proses noise reduction sebelum dilakukannya deteksi tepi.


(98)

DATA PRIBADI

NIM : 10107447

Nama Lengkap : Muhammad Adhityawan

Jenis Kelamin : Laki-laki

Tempat & Tgl Lahir : Jayapura, 9 Januari 1989

Alamat : KPR BPD Kotaraja No.13

No. Telepon : 085244484469

E-mail : m.adhityawan@gmail.com

PENDIDIKAN

1995-2001 : SDN Yapis Serui

2001-2004 : SMPN 1 Jayapura

2004-2007 2007-2011

: :

SMAN 1 Jayapura

Program Studi S1 Jurusan Teknik Informatika, Fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia, Bandung


(99)

SKRIPSI

Diajukan Untuk Menempuh Ujian Akhir Sarjana Program Strata I Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

MUHAMMAD ADHITYAWAN 10107447

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG


(1)

iii

KATA PENGANTAR

Alhamdulillah, puji dan syukur kehadirat Allah SWT Yang Maha Pengasih lagi Maha Penyayang atas rahmat dan karunia-Nya, sehingga tugas akhir yang berjudul “PERBANDINGAN DETEKSI TEPI PADA CITRA DIGITAL DENGAN MENGGUNAKAN ALGORITMA FREI CHEN DAN SUSAN (SMALLEST UNIVALUE SEGMENT ASSIMILATING NUCLEUS” dapat diselesaikan dengan segala kekurangan dan keterbatasan yang penulis miliki. Tugas akhir ini dapat penulis selesaikan dengan baik dan tepat waktu adalah berkat bantuan dari segala pihak yang selalu mendukung penulis baik secara materil dan moril sehingga penulis dapat selalu bersemangat dalam menghadapi segala permasalahan yang muncul dalam penyusunan tugas akhir ini.

Dengan segala kekurangan yang penulis miliki, penulis menyadari bahwa laporan tugas akhir ini masih jauh dari kesempurnaan, oleh karena itu dikesempatan ini, penulis ingin menyampaikan rasa terimakasih yang sebesar-besarnya kepada pihak-pihak yang telah memberikan dorongan semangat, bimbingan serta dukungan materil dan moril sehingga penulis dapat menyelesaikan tugas akhir ini dengan segala keterbatasaan yang ada, hanya do’a yang dapat penulis panjatkan kehadirat Allah SWT, semoga kebaikan dari semua pihak mendapatkan balasan yang berlipat ganda. Oleh karena itu, rasa hormat dan terima kasih yang sebesar-besarnya penulis ingin sampaikan kepada :


(2)

iv

1. Ibunda Nursalmi dan ayahanda Bambang Setiyowanto tercinta yang tiada henti-hentinya selalu memberikan nasehat-nasehat serta dukungan baik moril maupun materil yang menjadikan kekuatan serta rasa optimis yang tinggi untuk penulis dalam menghadapi dan mencari solusi dari masalah yang ada. Tak lupa penulis sampaikan rasa hormat dan terimakasih kepada Nur Dyah Ayu Novita selaku adik penulis yang selalu memberikan semangat serta arahan agar penulis dapat selalu tegar dalam menyelesaikan tugas akhir ini.

2. Bapak Ir. Eddy Suryanto Soegoto, M.Sc selaku Rektor Universitas Komputer Indonesia (UNIKOM).

3. Bapak Dr. Ir. Arry Ahmad Arman, MT. selaku Dekan Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.

4. Ibu Mira Kania Sabariah, S.T.,M.T. selaku Ketua Jurusan Teknik Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.

5. Bapak Galih Hermawan, S.Kom. dan bapak Adam Mukharil Bachtiar S.Kom. selaku penguji 1 dan penguji 3 yang telah banyak memberikan saran serta kritik untuk kemajuan tugas akhir penulis.

6. Bapak Irfan Maliki, S.T., M.T. selaku pembimbing penulis yang selalu memberikan arahan sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik.


(3)

v

7. Rizki Faried Edjwar, Richi Dwi Agustia dan Sanusi, terimakasih sudah menjadi teman terbaik selama menempuh kehidupan perkuliahan ini. Kenangan suka maupun duka yang selama ini kita alami akan selalu membekas di hati penulis. 8. Fitrie Atviana Nurritasari sebagai teman yang spesial yang selalu memberikan

semangat dalam menyelesaikan penulisan ini dan juga membantu dalam penulis dalam penulisan skripsi ini.

9. Teman-teman terbaikku di IF-10, dikosan serta dilingkungan penulis berada yang selalu memberikan nuansa kekeluargaan didalam hati penulis.

10. Kepada seluruh mahasiswa bimbingan bapak rfan Maliki, S.T., M.T. yang telah memberi dukungan seta semangat kepada penulis.

11. Seluruh Staff sekretariat Teknik Informatika Universitas Komputer Indonesia. 12. Dan semua pihak yang telah berjasa dalam penyusunan tugas akhir ini.

Penulis menyadari sepenuhnya akan keterbatasan pengetahuan maupun kemampuan yang dimiliki, untuk itu demi kesempurnaan laporan tugas akhir ini penulis mengharapkan kritik dan saran dari semua pihak.

Bandung, 10 Februari 2012


(4)

(5)

(6)