ANALISIS PENGARUH KUALITAS RESOLUSI CITRA
TERHADAP KINERJA METODE
PENDETEKSI TEPI
SKRIPSI
AFNISYAH TAURISNA
051401033
PROGRAM STUDI S1 ILMU KOMPUTER
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
ANALISIS PENGARUH KUALITAS RESOLUSI CITRA TERHADAP KINERJA METODE PENDETEKSI TEPI
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer
AFNISYAH TAURISNA 051401033
PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : ANALISIS PENGARUH KUALITAS RESOLUSI
CITRA TERHADAP KINERJA METODE PENDETEKSI TEPI
Kategori : SKRIPSI
Nama : AFNISYAH TAURISNA
Nomor Induk Mahasiswa : 051401033
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Desember 2009 Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Syahriol Sitorus, S.Si, MIT Ir. Arman Sani, MT NIP. 197103101997031004 NIP. 132 945 349
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
ANALISIS PENGARUH KUALITAS RESOLUSI CITRA TERHADAP KINERJA METODE PENDTEKSI TEPI
SKRIPSI
Saya mengakui bahwa SKRIPSI ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Desember 2009
PENGHARGAAN
Bismillaahirrohmaanirrohiim..
Puji dan syukur penulis panjatkan kepada Allah Subhanahu Wa Ta’alaa Yang Maha Pengasih dan Maha Penyayang, dengan limpahan karunia-Nya skripsi ini berhasil diselesaikan.
Ucapan terima kasih penulis sampaikan kepada Bapak Syahriol Sitorus, S.Si, M.IT dan Bapak Ir. Arman Sani, MT selaku pembimbing serta Ibu Maya Silvi Lydia, B.Sc, M.Sc dan Bapak Syahril Effendi S.Si, M.IT selaku pembanding pada penyelesaian skripsi ini, yang telah memberikan panduan dan penuh kepercayaan kepada saya untuk menyempurnakan kajian ini. Panduan padat dan ringkas dan profesional telah diberikan kepada penulis agar penulis dapat menyelesaikan tugas ini. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Departemen Ilmu Komputer, Bapak Prof. Muhammad Zarlis dan Bapak Syahriol Sitorus, S.Si, M.IT, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Departemen Ilmu Komputer FMIPA USU, seluruh pegawai di Departemen Ilmu Komputer FMIPA USU (khususnya kak Ayi), dan bagi pihak Poliklinik USU yang memberikan izin untuk melakukan riset.
Skripsi ini juga penulis dedikasikan bagi almarhumah Ibunda, Siti Erfiah Harahap yang kasih sayangnya masih penulis rasakan. Serta terima kasih yang tak berhingga juga penulis sampaikan untuk Ayahanda H. Bahriun Rambe, Ibunda Elly Syafrida Tanjung, saudara-saudari penulis, Kak Lina, Elmi, Mita, Ito, Rahmat dan Ongku, kemanakan penulis Aldi dan Tasya, serta seluruh keluarga besar yang tak henti-hentinya memberikan semangat dan dukungan bagi penulis untuk tetap berjuang. Dan spesial untuk Bobbie, Lijok, Tince, Maya, Fitra, Dwi, Anne, Kak Rika, Kak Silvi, Kak Eli, Vida, dan Moko, orang-orang terbaik yang pernah dimiliki penulis. Teman-teman penulis di kampus, khususnya penduduk 05 Kom A dan Kom B, di lingkungan Gg. Aman, dan seluruh pihak yang tidak disebutkan namanya yang telah banyak membantu penulis dalam menyelesaikan skripsi ini, penulis ucapkan banyak terima kasih.
ABSTRAK
ANALYSIS OF IMAGES RESOLUTION QUALITY INFLUENCES TO PERFORMANCE OF EDGE DETECTOR METHOD
ABSTRACT
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
1.4 Tujuan Penelitian 4
1.5 Manfaat Penelitian 4
1.6 Metode Penelitian 4
1.7 Sistematika Penulisan 5
Bab 2 Landasan Teori 7
2.1 Citra Digital 7
2.2 Resolusi Citra 10
2.3 Pengolahan Citra Digital 12
2.4 Operasi Bertetangga/Persekitaran 13
2.5 Deteksi Tepi 14
2.6 Bahasa Pemrograman Matlab 26
Bab 3 Analisis dan Perancangan Sistem 28
3.1 Analisis Metode Sobel 28
3.1.1 Analisis Kualitas Citra Tepi 29
3.1.2 Analisis Timing Run 30
3.1.3 Analisis Sensitivity Rate 33
3.2 Analisis Metode LoG 33
3.2.1 Analisis Kualitas Citra Tepi 34
3.2.2 Analisis Timing Run 35
3.3 Analisis Metode Canny 38 3.3.1 Analisis Kualitas Citra Tepi 39
3.3.2 Analisis Timing Run 40
3.3.3 Analisis Sensitivity Rate 43
3.4 Akuisisi Data 44
3.5 Perancangan Sistem 45
3.5.1 Perancangan DFD dan Spesifikasi Proses 45
3.5.2 Perancangan Kamus Data 50
3.5.3 Perancangan Antarmuka Pemakai 52
3.5.3.1 Antarmuka Figur PendeteksianTepi 52 3.5.3.2 Antarmuka Figur MetodeSobel 53 3.5.3.3 Antarmuka Figur MetodeLoG 54 3.5.3.4 Antarmuka Figur MetodeCanny 55 3.5.3.5 Antarmuka Figur InfoProgrammer 56 3.5.3.6 Antarmuka Figur InfoProgram 57 3.5.3.7 Antarmuka Figur Keluar 58
Bab 4 Implementasi dan Pengujian 59
4.1 Implementasi 59
4.1.1 Figur PendeteksianTepi 60
4.1.2 Figur MetodeSobel 62
4.1.3 Figur MetodeLoG 64
4.1.1 Figur MetodeCanny 66
4.1.2 Figur InfoProgrammer 68
4.1.3 Figur InfoProgram 69
4.2 Pengujian 71
4.2.1 Hasil 71
4.2.1.1 Metode Sobel 71
4.2.1.2 Metode LoG 75
4.2.1.3 Metode Canny 79
4.2.2 Pembahasan 84
Bab 5 Kesimpulan dan Saran 86
5.1 Kesimpulan 86
5.2 Saran 87
Daftar Pustaka 88
Lampiran A: Listing Program 89
DAFTAR TABEL
Halaman
Tabel 3.1 Spesifikasi Proses DFD Level 0 46
Tabel 3.2 Spesifikasi Proses DFD Level 1 47
Tabel 3.3 Spesifikasi Proses DFD Level 2 Proses P1 Deteksi Tepi Sobel 48 Tabel 3.4 Spesifikasi Proses DFD Level 2 Proses P2 Deteksi Tepi LoG 49 Tabel 3.5 Spesifikasi Proses DFD Level 2 Proses P3 Deteksi Tepi Canny 50
DAFTAR GAMBAR
Halaman
Gambar 2.1 Citra Biner 8
Gambar 2.2 Citra Skala Keabuan 9
Gambar 2.3 Citra Warna (True Color) 9
Gambar 2.4 Citra Warna Berindeks 10
Gambar 2.5 Citra dengan Beberapa Tingkat Resolusi 11
Gambar 2.6 Tahapan dalam Pengolahan Citra 12
Gambar 2.7 Operasi-operasi Dasar pada Pengolahan Citra Digital 13
Gambar 2.8 Model Tepi Satu Dimensi 14
Gambar 2.9 Jenis-jenis Tepi 15
Gambar 2.10 Proses Deteksi Tepi Citra 16
Gambar 2.11 Proses Konvolusi 18
Gambar 2.12 Matriks Citra dan Kernel Sebelum Konvolusi 18 Gambar 2.13 Tahapan Proses Pembentukan Konvolusi 19
Gambar 2.14 Hasil Konvolusi Citra dan Kernel 19
Gambar 2.15 Kernel Konvolusi Sobel 20
Gambar 2.16 Kernel Pseudo-Convolution 21
Gambar 2.17 Kernel Konvolusi Laplacian 22
Gambar 2.18 Citra dengan Pengambangan Tunggal 24
Gambar 2.19 Citra dengan Pengambangan Ganda 25
Gambar 3.1 Data Masukan 44
Gambar 3.2 DFD Level 0 45
Gambar 3.3 DFD Level 1 46
Gambar 3.4 DFD Level 2 Proses P1 Deteksi Tepi Sobel 47 Gambar 3.5 DFD Level 2 Proses P2 Deteksi Tepi LoG 48 Gambar 3.6 DFD Level 2 Proses P3 Deteksi Tepi Canny 49 Gambar 3.7 Rancangan Antarmuka Figur PendeteksianTepi 53 Gambar 3.8 Rancangan Antarmuka Figur MetodeSobel 54
Gambar 3.9 Rancangan Antarmuka Figur MetodeLoG 55
Gambar 3.10 Rancangan Antarmuka Figur MetodeCanny 56 Gambar 3.11 Rancangan Antarmuka Figur InfoProgrammer 57 Gambar 3.12 Rancangan Antarmuka Figur InfoProgram 57
Gambar 3.13 Rancangan Antarmuka Figur Keluar 58
Gambar 4.1 Tampilan Figur PendeteksianTepi 60
Gambar 4.2 Menu Metode pada Figur PendeteksianTepi 61 Gambar 4.3 Menu Info pada Figur PendeteksianTepi 61
Gambar 4.4 Tampilan Figur MetodeSobel 62
Gambar 4.5 Menu File pada Figur MetodeSobel 63
Gambar 4.6 Tampilan Figur MetodeLoG 65
Gambar 4.7 Menu File pada Figur MetodeLoG 66
Gambar 4.8 Tampilan Figur MetodeCanny 67
Gambar 4.10 Tampilan Figur InfoProgrammer 69
Gambar 4.11 Tampilan Figur InfoProgram 70
Gambar 4.12 Tampilan Menu Keluar 70
BAB 1
PENDAHULUAN
Untuk memulai penulisan sebuah Karya Ilmiah, baik itu berupa makalah, jurnal, maupun Tugas Akhir diperlukan satu Bab Pendahuluan yang berisi tentang gambaran umum dari Karya Ilmiah yang akan ditulis. Bab pendahuluan ini berisi latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat penelitian, metodologi penelitian, serta sistematika penulisan dari Karya Ilmiah yang akan dikerjakan. Adapun Bab Pendahuluan dari penulisan Tugas Akhir ini, meliputi:
1.1Latar Belakang
Citra atau yang biasa disebut dengan gambar sering diartikan sebagai hasil duplikasi suatu objek ke dalam bentuk lain. Proses duplikasi ini dapat dilakukan dengan berbagai cara, salah satunya melalui media kamera. Hasilnya disebut sebagai citra digital.
Citra digital merupakan hasil representasi dari suatu objek yang ditampilkan dalam bentuk sekumpulan titik, yang dalam istilah ilmu pengetahuan disebut piksel yang merupakan akronim bahasa Inggris dari picture element.
Sekumpulan titik dalam satuan panjang untuk suatu citra dikenal dengan istilah resolusi. Semakin banyak titik yang terkandung dalam citra, resolusi akan semakin besar dan hasil visualisasi dari citra tersebut juga akan semakin halus atau baik.
dilakukan dalam pengolahan citra digital. Salah satunya adalah pendeteksian tepi. Pendeteksi Tepi digunakan untuk mendapatkan tepi dari suatu objek yang berfungsi untuk mengidentifikasi sesuatu.
Banyak karya ilmiah atau makalah yang mengangkat masalah pendeteksi tepi sebagai objek penelitiannya. Kebanyakan penelitian ini bertujuan untuk menganalisis kinerja metode pendeteksi tepi dalam mengidentifikasikan sesuatu.
Tugas Akhir ini mengangkat metode pendeteksi tepi sebagai objek penelitiannya. Tujuan penelitian ini tetap untuk mengidentifikasi sesuatu, disamping itu penulis juga mencoba menganalisis faktor atau variabel yang mungkin dapat mempengaruhi kinerja metode pendeteksi tepi.
Saat ini resolusi kamera terus berkembang, bahkan telah mencapai ratusan Megapiksel. Atas dasar tersebut maka penulis memilih kualitas resolusi citra sebagai variabel yang mungkin dapat mempengaruhi kinerja metode pendeteksi tepi, mulai dari kualitas resolusi yang dianggap rendah sampai kualitas resolusi yang dianggap tinggi.
Ada beberapa metode pendeteksi tepi yang dikenal saat ini. Diantaranya adalah metode pendeteksi tepi Sobel, Laplacian of Gaussian (LoG), dan Canny. Dalam Tugas Akhir ini, ketiga metode pendeteksi tepi tersebut dipilih sebagai metode yang menjadi objek penelitian.
1.2Rumusan Masalah
Adapun rumusan masalah yang dibahas dalam penulisan Tugas Akhir ini adalah:
1. Apa yang dimaksud dengan citra digital, kualitas resolusi citra, dan pendeteksian tepi (edge detection) pada proses pengolahan citra digital.
3. Bagaimana kinerja tiap-tiap metode pendeteksi tepi jika citra yang dijadikan sebagai citra masukan merupakan beberapa citra dengan tingkat kualitas resolusi yang berbeda.
1.3Batasan Masalah
Batasan-batasan masalah yang dipakai dalam penulisan Tugas Akhir ini adalah sebagai berikut :
1. Metode yang akan dianalisis dan dibandingkan adalah metode pendeteksi tepi Sobel, LoG, dan Canny.
2. Citra yang akan dijadikan objek penelitian adalah citra digital dari sampel darah manusia dengan format *.jpg (jpeg) dengan beberapa tingkatan resolusi, yaitu 0,3 Megapiksel (MP), 2 MP, 7 MP, 10 MP. Keempat resolusi ini dianggap mewakili citra dengan resolusi tinggi dan rendah.
3. Parameter yang akan diukur untuk mengetahui hasil kinerja masing-masing metode pendeteksi tepi adalah sensitivitas tiap-tiap metode terhadap noise (sensitivity rate), morfologi garis yang dihasilkan pada citra keluaran hasil metode pendeteksi tepi, dan waktu yang diperlukan untuk melakukan proses (timing run).
4. Bahasa pemrograman yang akan digunakan untuk membangun aplikasi ini adalah Matlab versi 7.5.0(R2007b).
Tujuan dari penulisan Tugas Akhir ini adalah menganalisis pengaruh kualitas resolusi citra terhadap kinerja metode pendeteksi tepi yang dalam penelitian ini dipilih tiga metode pendeteksi tepi yaitu Sobel, LoG, dan Canny dan kemudian membandingkan output yang dihasilkannya untuk disimpulkan sejauh mana resolusi citra dapat mempengaruhi kinerja metode pendeteksi tepi.
1.5Manfaat Penelitian
Penulisan Tugas Akhir ini dapat bermanfaat dalam memberikan informasi mengenai pengaruh kualitas resolusi citra terhadap kinerja metode pendeteksi tepi dimana informasi tersebut dapat dikembangkan dalam penelitian mengenai proses pengolahan citra yang lain, misalnya deteksi sidik jari yang saat ini banyak dikembangkan.
1.6Metodologi Penelitian
Dalam melakukan penelitian ini, ada beberapa tahap yang dilakukan yaitu : 1. Studi Literatur
Penelitian ini dimulai dengan melakukan studi literatur yaitu proses pengumpulan data sebagai bahan referensi baik dari buku, artikel, jurnal, makalah, atau situs internet yang berkaitan dengan penulisan Tugas Akhir ini.
2. Akuisisi Data
Proses akuisisi data merupakan proses pengambilan data citra, yang akan digunakan pada proses pengujian (testing).
3. Perancangan Sistem
Melakukan perancangan terhadap sistem yang akan dibangun, mulai dari perancangan untuk user interface dan juga list program untuk deteksi tepi dengan metode filter Sobel, LoG, dan Canny.
Melakukan implementasi program yang telah ada ke dalam suatu bentuk perangkat lunak untuk mendeteksi tepi citra.
5. Pengujian dan Analisis Hasil
Dari hasil implementasi dilanjutkan dengan proses pengujian terhadap sistem yang telah selesai dibangun dan menganalisis hasil keluarannya.
6. Dokumentasi Hasil
Setelah semua tahap dalam penelitian selesai dilakukan, seluruh hasil yang diperoleh akan didokumentasikan dalam bentuk laporan.
1.7Sistematika Penulisan
Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai berikut:
BAB 1 PENDAHULUAN
Bab ini akan menjelaskan mengenai latar belakang masalah yang dibahas dalam skripsi ini, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.
BAB 2 LANDASAN TEORI
Bab ini mencakup segala teori yang menjadi landasan dalam penulisan Tugas Akhir yang berkaitan dengan citra digital, resolusi citra, deteksi tepi yang merupakan salah satu operasi dalam pengolahan citra digital, serta teori mengenai pendeteksi tepi Sobel, pendeteksi tepi LoG, dan pendeteksi tepi Canny.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Bab ini menjelaskan tentang analisis pada perangkat yang akan digunakan untuk membangun sistem dan juga berisi perancangan sistem dari hasil analisis yang telah dilakukan.
Bab ini mencakup hasil penelitian dan pembahasannya, yang berupa implementasi secara nyata dari sistem yang telah dianalisis dan dirancang sebelumnya dalam bentuk perangkat lunak pendeteksi tepi yang dibangun dengan bahasa pemrograman Matlab 7.5.0. Bab ini juga berisi analisis hasil yang diperoleh dari pengujian terhadap sistem yang akan dilakukan dengan menjadikan beberapa jenis kualitas resolusi citra yang berbeda sebagai citra masukan.
BAB 5 KESIMPULAN DAN SARAN
BAB 2
LANDASAN TEORI
Sebagai sebuah Karya Ilmiah, penulisan Tugas Akhir harus dilandasi atas teori-teori yang bersifat ilmiah untuk mendukung penulisannya. Teori-teori mengenai citra digital, resolusi citra, deteksi tepi (edge detection) yang merupakan salah satu operasi dalam pengolahan citra digital (digital image processing), dan beberapa subpokok pembahasan lainnya menjadi landasan dalam penulisan Tugas Akhir ini. Selain itu, beberapa prosiding dan makalah mengenai pembahasan kinerja metode pendeteksi tepi, antara lain dalam Indira (2008) dan Febriani (2008) juga menjadi referensi.
2.1 Citra Digital
Citra dapat dikatakan sebagai citra digital jika citra tersebut disimpan dalam format digital (dalam bentuk file). Seperti halnya proses digitisasi dalam bentuk data lain, proses digitisasi pada data citra juga merupakan proses pengubahan suatu bentuk data citra dari yang bersifat analog ke dalam bentuk data digital, yang mana proses ini dapat dilakukan dengan alat bantu, yang salah satunya berupa kamera. Hanya citra digital yang dapat diolah menggunakan komputer. Jenis citra lain jika akan diolah dengan komputer harus diubah dulu menjadi citra digital.
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 kecemerlangan citra pada titik tersebut.
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 (Hestiningsih, 2008, hal: 8).
Citra digital biasanya berbentuk persegi panjang, secara visualisasi dimensi ukurannya dinyatakan sebagai lebar x tinggi. Ukurannya dinyatakan dalam titik atau piksel (pixel = picture element) dan dapat pula dinyatakan dalam satuan panjang (mm atau inci = inch).
Berdasarkan format penyimpanan nilai warnanya, citra terdiri atas empat jenis (Hestiningsih, 2008), yaitu:
1. Citra biner atau monokrom
Pada citra jenis ini, setiap titik atau piksel hanya bernilai 0 atau 1.Dimana setiap titik membutuhkan media penyimpana sebesar 1 bit. Gambar 2.1 merupakan contoh citra biner.
Gambar 2.1 Citra Biner
2. Citra skala keabuan
Misal:
Suatu citra dengan skala keabuan 4 bit, memiliki jumlah kemungkinan warna 24 = 16 warna.
Gambar 2.2 memperlihatkan citra skala keabuan 4 bit.
Gambar 2.2 Citra Skala Keabuan
3. Citra warna (true color)
Setiap titik (piksel) pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar yaitu merah, hijau dan biru yang dikenal sebagai citra RGB (Red, Green, Blue). Setiap warna dasar mempunyai intensitas sendiri dengan nilai maksimum 255 (8 bit).
Red = warna minimal putih, warna maksimal merah Green = warna minimal putih, warna maksimal hijau Blue = warna minimal putih, warna maksimal biru Setiap titik pada citra warna membutuhkan data 3 byte
Jumlah kemungkinan kombinasi warna untuk citra warna adalah 224 = lebih dari 16 juta warna, disebut true color karena dianggap mencakup semua warna yang ada. Gambar 2.3 memperlihatkan contoh citra warna.
Gambar 2.3 Citra Warna (True Color)
4. Citra warna berindeks
pemakaian palet warna adalah kita dapat dengan cepat memanipulasi warna tanpa harus mengubah informasi pada setiap titik dalam citra. Keuntungan yang lain, penyimpanan lebih kecil. Contoh citra warna berindeks diperlihatkan pada Gambar 2.4.
Gambar 2.4 Citra Warna Berindeks
Terdapat beberapa tipe file citra digital yang dikenal saat ini, diantaranya JPEG (Joint Photographic Experts Group), BMP (Bitmap), GIF (Graphics Interchange Format), TIFF (Tagged Image File Format), dan PNG (Portable Network Graphics). Dalam Tugas Akhir ini, citra digital yang digunakan adalah citra digital dengan tipe file JPEG. Citra JPEG merupakan tipe file citra digital yang banyak digunakan untuk menyimpan gambar-gambar dengan ukuran lebih kecil. Citra JPEG memiliki beberapa karakteristik, yaitu:
1. Memilik
2. Mampu menayangkan warna dengan kedalaman 24-bit 3. Mengkompresi gambar dengan sifat
4. Umumnya digunakan untuk menyimpan gambar-gambar hasil
2.2 Resolusi Citra
Dari pengertian kata Kualitas dan Resolusi Citra diatas, dapat dijelaskan bahwa Kualitas Resolusi Citra merupakan suatu kondisi dinamis dari sebuah citra dengan resolusi tertentu, yang dalam hal ini bergantung pada banyaknya titik untuk setiap satuan panjang (dot per inch) yang terdapat dalam citra tersebut.
Kualitas resolusi citra dikatakan baik jika citra tersebut memiliki resolusi yang besar, dimana semakin besar resolusi makin banyak titik yang terkandung dalam citra, sehingga menjadi lebih halus dalam visualisasinya (Hestiningsih, 2008).
Menurut kualitas resolusi yang dihasilkan, resolusi dibedakan menjadi (www.total.or.id/info.php/kk=Resolusi):
1. Resolusi Tinggi (High Resolution).
Suatu citra dikatakan memiliki resolusi tinggi jika tingkat ketelitian yang cukup tinggi dari suatu media dalam menangkap ataupun menampilkan datanya.
2. Resolusi Rendah (Low Resolution).
Citra dikatakan memiliki resolusi rendah jika pada dan grafiknya tampil dengan detail yang relatif kasar.
Gambar 2.5 memperlihatkan gambar suatu objek yang dicitrakan menggunakan beberapa kamera dengan tingkat kualitas resolusi yang berbeda.
2.3 Pengolahan Citra Digital (Digital Image Processing)
Deteksi tepi (edge detection) merupakan salah satu operasi dasar dalam pengolahan citra digital. Pengolahan citra digital (digital image processing) merupakan suatu kegiatan yang dilakukan untuk memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia maupun mesin (komputer). Dalam pengolahan citra yang menjadi masukan (input) dan keluaran (output) adalah citra, namun dengan kualitas yang berbeda.
Dari hasil keluaran pengolahan citra digital, dapat dilakukan suat proses lanjutan yaitu analisis citra. Kegiatan ini akan menghasilkan informasi untuk menetapkan keputusan (biasanya didampingi bidang ilmu kecerdasan buatan/Artificial Intelligence yaitu pengenalan pola (pattern recognition) menggunakan jaringan syaraf tiruan, logika fuzzy, dan lain-lain). Dalam pengolahan maupun analisis citra banyak melibatkan persepsi visual (Indira, 2008). Gambar 2.6 menunjukkan diagram alir proses yang terjadi pada suatu citra mulai dari proses pencitraan sampai pada analisis citra.
Gambar 2.6 Tahapan dalam Pengolahan Citra
Gambar 2.7 Operasi-operasi Dasar pada Pengolahan Citra Digital
Dari bagan diatas, dapat dilihat bahwa deteksi tepi merupakan operasi pada pengolahan citra digital yang merupakan salah satu jenis operasi bertetangga atau persekitaran (neighbourhood operation).
2.4 Operasi Bertetangga/Persekitaran (Neighbourhood Operation)
Sebuah citra dikatakan ideal, jika mampu mencerminkan kondisi sesungguhnya dari suatu objek. Mempunyai hubungan satu-satu (one to one), satu titik pada objek dipetakan tepat satu piksel di citra digital. Tetapi pada kenyataannya, hubungan yang ada antara titik dalam objek dengan titik pada citra digital adalah hubungan satu ke banyak (one to many) dan banyak ke satu (many to one). Hal ini disebabkan oleh beberapa hal, yaitu:
1. Sinyal yang dikirim oleh objek citra mengalami penyebaran (divergensi), sehingga yang diterima oleh sensor atau detector tidak lagi berupa suatu titik, namun berupa luasan.
Operasi Global Operasi Berbasis Bingkai
Operasi Geometri Operasi Bertetangga Pengolahan Citra Digital
2. Atau sebaliknya satu titik pada sensor atau detector dapat menerima banyak sinyal dari beberapa bagian.
Operasi citra digital yang berhubungan dengan kondisi diatas disebut operasi persekitaran/bertetangga (neighborhood operation). Operasi persekitaran/bertetangga pada dasarnya adalah hubungan antara citra dengan sebuah filter (mask/kernel). Nilai dari filter/mask merupakan bobot kontribusi titik persekitaran terhadap operasi persekitaran.
Ada beberapa operasi pengolahan citra yang berkaitan dengan operasi bertetangga ini, diantaranya adalah deteksi tepi. Untuk pembahasan mengenai deteksi tepi akan dibahas pada sub-bab berikutnya.
2.5Deteksi Tepi (Edge Detection)
Secara umum tepi dapat didefinisikan sebagai batas antara dua region (dua piksel yang saling berdekatan) yang memiliki perbedaan intensitas yang tajam atau tinggi (Febriani, 2008). Tepi dapat diorientasikan dengan suatu arah, dan arah ini berbeda-beda, tergantung pada perubahan intensitas. Untuk lebih memahami defenisi tepi, Gambar 2.8 memperlihatkan model tepi dalam ruang satu dimensi.
Gambar 2.8 Model Tepi Satu Dimensi
Ada tiga macam tepi yang terdapat di dalam citra digital (Munir, 2004), yaitu: 1. Tepi curam
Jenis tepi ini terbentuk karena perubahan intensitas yang tajam, berkisar 900. jarak
2. Tepi landai
Tepi lebar, sudut arah kecil. Terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan.
3. Tepi yang mengandung noise
Untuk mendeteksi tepi jenis ini, biasanya dilakukan operator image enhancement terlebih dahulu. Misalnya Operator Gaussian yang berfungsi untuk menghaluskan citra.
Perbedaan ketiga macam tepi tersebut, diperlihatkan pada Gambar 2.9.
Gambar 2.9 Jenis-jenis Tepi
Deteksi tepi merupakan langkah pertama untuk melingkupi informasi di dalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra. Deteksi tepi pada suatu citra memiliki tujuan sebagai berikut (Sigit, 2005):
1. Menandai bagian yang menjadi detil citra.
2. Memperbaiki detil citra yang kabur karena error atau efek proses akuisisi.
Gambar 2.10 Proses Deteksi Tepi Citra
Berdasarkan prinsip-prinsip filter pada citra, tepi suatu gambar dapat diperoleh menggunakan High Pass Filter (HPF), dengan karakteristik:
∑∑
H( x , y ) = 0(2.1)
Berikut ini beberapa metode yang digunakan untuk mendeteksi tepi (Herdiyeni, 2007), yaitu:
1. First-Order Derivative Edge Detection (Pendeteksi Tepi Turunan Pertama). Pendeteksi tepi ini menghitung perbedaan intensitas antara dua piksel yang saling berdekatan, dimana daerah tepi terletak pada nilai maksimum lokalnya. Metode ini sering juga disebut dengan pendeteksi tepi dengan operator gradien citra. Berikut ini berapa contoh pendeteksi tepi turunan pertama yang sering digunakan:
a. Metode Roberts-Cross b. Metode Prewitt
c. Metode Sobel
a. Metode Laplacian of Gaussian b. Metode Canny
Pada penulisan Tugas Akhir ini metode yang digunakan adalah metode yang menggunakan operator turunan pertama (Sobel) dan operator turunan kedua (Laplacian of Gaussian dan Canny).
Konvolusi
Deteksi tepi merupakan salah satu proses pengolahan citra yang menggunakan filter atau penapis. Selain pada proses pendeteksian tepi, proses lain pada pengolahan citra yang juga menggunakan filter atau penapis adalah perbaikan kualitas citra (image enhancement), penghilangan derau (noise reduction), mengurangi erotan, penghalusan atau pelembutan citra (image smoothing), dan lain-lain.
Untuk mengaplikasikan penapis pada citra, digunakan metode konvolusi. Konvolusi bisa dinyatakan dalam matriks, dimana setiap elemen matriks penapis tersebut dinamakan koefisien konvolusi. Operasi konvolusi bekerja dengan menggeser kernel piksel per piksel, yang hasilnya kemudian disimpan dalam matriks baru. Konvolusi 2 fungsi f(x) dan g (x) diperlihatkan dengan rumus berikut ini:
(2.2) Atau fungsi diskritnya:
(2.3)
Dimana = peubah bantu.
Pada konvolusi 2D, fungsi malarnya dapat dihitung dengan persamaan:
(2.4) Sedangkan fungsi diskritnya dihitung dengan persamaan:
g(x) merupakan convolution mask / filter / kernel atau template. Gambar 2.11 memperlihatkan ilustrasi terjadinya konvolusi.
Gambar 2.11 Proses Konvolusi
Dimana:
(2.6)
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.12.
Gambar 2.12 Matriks Citra dan Kernel Sebelum Konvolusi
Tanda • menunjukkan posisi (0,0) dari kernel
Tahapan untuk mendapatkan hasil konvolusi yang terjadi antara citra dan kernel diatas dapat dilihat pada Gambar 2.13.
(ii)
(iii) .
.
.
dan seterusnya
Gambar 2.13 Tahapan Proses Pembentukan Konvolusi
Sehingga diperoleh hasil akhir dari proses konvolusi tersebut, yang ditunjukkan pada Gambar 2.14.
Gambar 2.14 Hasil Konvolusi Citra dan Kernel
Dalam konvolusi terdapat dua kemungkinan yang jika ditemukan, diselesaikan dengan cara berikut, yaitu:
1. Untuk hasil konvolusi dengan nilai negatif, nilainya dijadikan nol (0).
Pendeteksi Tepi Sobel
Operator Sobel melakukan perhitungan secara 2D terhadap suatu ruang di dalam sebuah gambar dengan harapan nantinya akan nampak daerah-daerah bernilai tinggi pada gambar tersebut yang merupakan deteksi tepi dari suatu gambaran. Operator ini biasanya digunakan untuk mencari gradien dari masing-masing piksel gambar input yang telah di grayscale sebelumnya.
Secara teori, diperlukan matriks setidaknya berukuran 3x3 sebagai kernelnya. Contoh kernel Sobel yang berukuran 3x3 diperlihatkan pada Gambar 2.15.
-1 0 +1 -1 +2 +1
-2 0 +2 0 0 0
-1 0 +1 -1 -2 -1
Gx Gy
Gambar 2.15 Kernel Konvolusi Sobel
Kernel ini dirancang untuk menyelesaikan permasalahan deteksi tepi baik secara vertikal maupun horisontal. Penggunaan kernel-kernel ini dapat digunakan bersamaan ataupun secara terpisah. Apabila digunakan kernel vertikal dan kernel horisontal secara bersamaan, maka gradien dapat diukur dengan formula sebagai berikut:
G = Gx2 + Gy2 (2.7)
Besarnya gradien juga dapat dihitung lebih cepat lagi dengan menggunakan formula sebagai berikut:
G = Gx + Gy (2.8)
= arctan(Gy / Gx) (2.9)
Dalam kasus ini, orientasi 0 untuk menentukan nilai kontras maksimum dari hitam ke putih dihitung dari kiri menuju kanan dan berjalan terus sampai ke bagian paling atas dari suatu gambaran. Sedangkan sudutnya diukur berlawanan arah jarum jam.
Yang sering terjadi dalam filter ini adalah nilai mutlak dari magnitude hanya sebatas penglihatan mata kita saja, apabila terdapat dua komponen gradien maka akan digabungkan menggunakan operator pseudo-convolution seperti yang diperlihatkan pada Gambar 2.16.
P1 P2 P3
P4 P5 P6
P7 P8 P9
Gambar 2.16 Kernel Pseudo-Convolution
Dengan menggunakan kernel pseudo-convolution seperti diatas maka perhitungan yang terjadi adalah:
|G| = |( P1 + 2P2 + P3) – (P7 + P8 + P9)| + (2.10) |( P3 + 2P6 + P9) – (P1 + 2P4 + P7)|
Pendeteksi Tepi Laplacian of Gaussian (LoG)
Metode ini mendeteksi tepi lebih akurat khususnya pada tepi yang curam. Pada tepi yang curam, turunan keduanya memiliki zero-crossing (persilangan nol), yaitu titik dimana terdapat pergantian tanda nilai turunan kedua, sedangkan pada tepi yang landai tidak terdapat persilangan nol (Gonzalez et al, 2005).
Berikut ini fungsi LoG 2-D yang berpusat pada titik 0 dan dengan deviasi standard Gaussian :
(2.11)
Representasi turunan kedua dalam bentuk kernel operator Laplacian diperlihatkan pada Gambar 2.17.
0 -1 0
-1 4 -1
0 -1 0
Gambar 2.17 Kernel Konvolusi Laplacian
Pendeteksi Tepi Canny
Canny merupakan salah satu algoritma deteksi tepi modern. Pada tahun 1986 John Canny mengusulkan tiga kriteria yang menjadi basis pengembangan filter untuk mengoptimalkan pendeteksian tepi pada citra bernoise (Febriani, 2008). Tiga kriteria tersebut adalah:
a. Good detection, kriteria ini bertujuan memaksimalkan nilai signal to noise ration (SNR) sehingga semua tepi dapat terdeteksi dengan baik atau tidak ada yang hilang.
c. Low multiplicity of the response atau ”one response to single edge” detektor tidak memberikan tepi yang bukan tepi sebenarnya.
Berdasarkan pada kriteria ini, Canny berhasil melakukan optimalisasi dari ke tiga kriteria tersebut dan menghasilkan persamaan sebagai berikut:
h(x)=a1e cos( x)+a2e sin( x)+ (2.12)
a3e- cos( x)+ a4e- sin( x)
Namun persamaan ini cukup sulit untuk diimplementasikan, sehingga pada implementasinya, Canny tetap menggunakan filter Gaussian untuk mereduksi noise.
Metode Canny ini tidak memiliki operator khusus, namun metode ini terdiri dari beberapa langkah khusus. Metode Canny akan mendeteksi tepi dengan mencari nilai gradien maksimal lokal dari sebuah citra (Green, 2009). Gradien tersebut dihitung menggunakan turunan dari Gaussian filter (Gonzalez, et al, 2005).
Metode Canny menggunakan dua thresholds atau pengambangan, yang berguna untuk mendeteksi tepian yang terlihat jelas, dan tepian yang kurang jelas atau lemah, termasuk juga tepian yang kurang jelas yang terlihat pada output yang terhubung dengan tepian yang jelas. Pembahasan mengenai thresholds atau pengambangan akan dijelaskan pada sub-bab berikutnya.
Metode ini lain dengan metode sebelumnya, yang sebelum dilakukan proses deteksi tepi harus dilakukan terlebih dahulu proses penghilangan noise. Metode Canny lebih utama akan mendeteksi tepian yang kurang jelas, yang tidak dapat diperoleh dengan menggunakan metode lain dan dilanjutkan dengan penghitungan turunan pertama dan thresholding hysteresis.
Pengambangan (Thresholding)
mengubah citra dengan format skala keabuan, yang mempunyai kemungkinan nilai lebih dari 2 ke citra biner yang memiliki 2 buah nilai (yaitu 0 dan 1).
Pengambangan terbagi atas dua jenis, yaitu: a. Pengambangan Tunggal
Pengambangan tunggal merupakan proses pengambangan yang hanya memiliki sebuah nilai batas ambang.
Fungsi GST-nya:
atau:
Gambar 2.18 menunjukkan sebuah citra yang telah mengalami pengambangan tunggal.
Gambar 2.18 Citra dengan Pengambangan Tunggal
b. Pengambangan Ganda
Memiliki ambang bawah dan ambang atas. Dilakukan untuk menampilkan titik-titik yang mempunyai rentang nilai skala keabuan tertentu.
Dengan fungsi GST:
Gambar 2.19 memperlihatkan sebuah citra yang telah mengalami pengambangan tunggal.
Gambar 2.19 Citra dengan Pengambangan Ganda
Parameter Pembanding
Untuk menguji kehandalan suatu metode, dan membandingkannya dengan metode lain, diperlukan suatu parameter. Dalam pengujian kehandalan suatu metode pendeteksi tepi, berikut ini beberapa parameter yang dapat digunakan:
1. Kualitas edge yang dihasilkan atau morfologi garis tepi yang terbentuk.
Parameter ini dipakai dalam penelitian yang dilakukan Indira (2008). Suatu metode pendeteksi tepi dikatakan baik jika metode tersebut berhasil mendeteksi tepi dengan tepat, artinya tidak menyatakan suatu piksel yang bukan tepi sebagai tepi atau sebaliknya, tidak menganggap suatu tepi sebagai tepian.
2. Sensitivitas (ketahanan) suatu metode pendeteksi tepi terhadap noise.
Sensitivitas metode pendeteksi tepi terhadap noise dapat diukur dengan menggunakan parameter error rate sebagai berikut:
(2.13) dimana:
Nilai P yang besar menyatakan sensitivitas edge detector yang tinggi terhadap noise. Febriani (2008) dan Indira (2008) memakai parameter ini dalam penelitiannya.
3. Waktu yang diperlukan dalam proses tersebut (timing run).
Timing-run adalah lama waktu proses deteksi tepi pada suatu citra, jadi pada tahap ini akan dianalisis lama waktu yang digunakan dalam melakukan proses deteksi tepi. Dalam penelitian ini, waktu pemrosesan dihitung dengan rumus: Waktu proses = waktu akhir deteksi tepi – waktu awal deteksi tepi (2.14)
4. Efek yang ditimbulkan, berupa false positif dan false negatif.
Parameter ini biasanya digunakan pada proses pendeteksian tepi untuk mengenali citra wajah. Cara kerjanya dengan melihat kinerja metode pendeteksi tepi yang digunakan dalam mengenali daerah pada citra yang dimaksudkan sebagai daerah wajah. Dimana kemungkinan untuk suatu metode pendeteksi tepi menyatakan citra yang bukan merupakan citra wajah sebagai citra wajah dapat terjadi.
Dalam penelitian ini, parameter yang akan digunakan untuk membandingkan kinerja tiap-tiap metode pendeteksi tepi adalah kualitas edge yang dihasilkan, sensitivitas tiap metode terhadap noise, dan waktu yang diperlukan dalam proses pendeteksian tepi (timing run).
2.6Bahasa Pemrograman Matlab
Matlab merupakan bahasa pemrograman yang hadir dengan fungsi dan karakteristik yang berbeda dengan bahasa pemrograman lain yang sudah ada lebih dahulu seperti Delphi, Basic maupun C++. Matlab merupakan bahasa pemrograman level tinggi yang dikhususkan untuk kebutuhan komputasi teknis, visualisasi dan pemrograman seperti komputasi matematik, analisis data, pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan.
Matlab hadir dengan membawa warna yang berbeda. Hal ini karena matlab membawa keistimewaan dalam fungsi-fungsi matematika, fisika, statistik, dan visualisasi. Matlab dikembangkan oleh MathWorks, yang pada awalnya dibuat untuk memberikan kemudahan mengakses data matrik pada proyek LINPACK dan EISPACK. Saat ini matlab memiliki ratusan fungsi yang dapat digunakan sebagai pemecahan masalah mulai dari masalah sederhana sampai pada masalah yang kompleks dari berbagai disiplin ilmu. Matlab memiliki beberapa lingkungan kerja yang terdiri atas:
1. Current Directory
Jendela ini menampilkan isi dari direktori kerja saat menggunakan matlab. Kita dapat mengganti direktori ini sesuai dengan tempat direktori kerja yang diinginkan. Default dari alamat direktori berada dalam folder works tempat program files Matlab berada.
2. Command History
Jendela ini berfungsi untuk menyimpan perintah-perintah apa saja yang sebelumnya dilakukan oleh pengguna terhadap matlab.
3. Command Window
Jendela ini adalah jendela utama dari Matlab. Disini adalah tempat untuk menjalankan fungsi, mendeklarasikan variabel, menjalankan proses-proses, serta melihat isi variabel.
4. Workspace
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Pada penulisan Tugas Akhir ini, untuk menyelesaikan permasalahan yang ada dilakukan satu tahapan analisis terhadap ketiga metode pendeteksi tepi, yaitu Sobel, LoG, dan Canny. Analisis dilakukan dengan melihat bagaimana setiap langkah dari tiap-tiap metode dapat mempengaruhi parameter-parameter pembanding yang telah ditentukan. Setelah melakukan analisis, dilanjutkan dengan tahap perancangan yang dilakukan sebelum tahap implementasi.
Analisis Metode Sobel
Untuk menganalisis kinerja metode Sobel dalam mendeteksi tepi empat jenis citra dengan tingkat kualitas resolusi yang berbeda (0,3 megapiksel, 2 megapiksel, 7 megapiksel dan 10 megapiksel), terhadap tiga buah parameter yang dianggap mampu mengukur kinerja metode ini, yaitu kualitas citra tepi yang dihasilkan, timing run, dan sensitivity rate dapat dilakukan dengan melihat pseudocode dari algoritma metode ini. Berikut ini pseudocode dari algoritma metode Sobel:
% Mengubah citra RGB menjadi citra skala keabuan
I = double(rgb2gray(handles.data1));
% Konvolusi dengan kernel sobel 3x3
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’);
% Pengambangan
thresh = alfa*mean2(abs(J));
If J > thresh
edgeimage = 1;
else
edgeimage = 0;
end
% Mengembalikan nilai matriks menjadi nilai intensitas citra
edgeimage = mat2gray(edgeimage);
Dari algoritma tersebut, maka hasil analisis kinerja metode Sobel terhadap ketiga parameter yang telah ditentukan, adalah sebagai berikut:
Analisis Kualitas Citra Tepi
Citra yang dijadikan sebagai citra masukan dalam sistem adalah citra asli yang diperoleh dari hasil pemotretan dengan kamera digital. Artinya, citra ini belum mengalami proses perbaikan apapun. Sehingga dalam citra tersebut, dianggap masih terdapat noise yang mungkin dapat mempengaruhi hasil keluaran.
Dalam metode Sobel, variabel yang mempengaruhi hasil keluaran citra ini adalah nilai Alfa, yaitu faktor pengali yang digunakan pada proses pengambangan. Semakin besar nilai alfa yang digunakan, nilai pengambangan atau thresh yang menjadi batasan suatu nilai piksel dapat dikatakan sebagai tepi juga akan semakin besar.
Pada citra masukan dengan tingkat resolusi yang tinggi, nilai pengambangan ini akan mempengaruhi tepi-tepi yang terbentuk, karena banyak piksel noise yang akan terdeteksi sebagai tepi. Artinya, citra masukan dengan tingkat resolusi yang tinggi (Citra_asli3 dan Citra_asli4) akan menghasilkan lebih banyak piksel tepi dibanding citra masukan dengan tingkat resolusi rendah (Citra_asli1, dan Citra_asli2). Namun, piksel yang didefenisikan sebagai tepi pada citra masukan dengan tingkat resolusi tinggi tersebut sebahagiannya adalah berupa noise.
Analisis Timing Run
Ditinjau dari segi waktu pemrosesan (timing run), dalam membandingkan kinerja metode pendeteksi tepi, metode pendeteksi tepi terbaik adalah yang memiliki waktu pemrosesan yang paling singkat diantara metode lainnya.
Misalkan waktu yang diperlukan untuk memproses 1 (satu) nilai piksel dari sebuah citra adalah ‘t’, maka aproksimasi waktu untuk memproses citra pada metode Sobel adalah sebagai berikut:
Langkah 1:
Pada langkah ini setiap nilai piksel citra diproses dua kali (2t). Pertama, fungsi
rgb2gray yang digunakan untuk mengubah nilai piksel citra masukan
handles.data1 yang berbentuk citra RGB menjadi skala keabuan. Kedua, nilai piksel
yang semula merupakan nilai piksel satu dimensi dikonversi menjadi bentuk dua dimensi dengan fungsi double. Dan terakhir, mendefenisikan nilai yang telah
diperoleh tadi sebagai I, maka asumsi waktu untuk keempat citra masukan pada langkah ini adalah:
1. Citra_asli1: Waktu1 = 0,3x10^6(2t)
= 0,6x10^6t
2. Citra_asli2 Waktu1 = 2x10^6(2t)
3. Citra_asli3 Waktu1 = 7x10^6(2t)
= 14x10^6t
4. Citra_asli4 Waktu1 = 10x10^6(2t)
= 20x10^6t
Langkah 2:
Pada langkah ini, untuk setiap citra masukan terdapat tiga kali pemrosesan (3t). Pertama, nilai piksel citra I dikonvolusi dengan sobelhor dengan fungsi conv2
untuk mendapatkan nilai Ix. Kedua, nilai piksel citra I dikonvolusi dengan sobelver
dengan fungsi conv2 untuk mendapatkan nilai Iy. Dan terakhir, dari nilai Ix dan Iy
yang telah diperoleh, dihitung gradien dari nilai-nilai tersebut dengan rumus
sqrt((Ix.^2)+(Iy.^2), sehingga diperoleh nilai J. Dari proses-proses tersebut, maka asumsi waktu untuk tiap citra masukan pada tahap ini adalah:
1. Citra_asli1: Waktu2 = 0,3x10^6(3t)
= 0,9x10^6t
2. Citra_asli2: Waktu2 = 2x10^6(3t)
= 6x10^6t
3. Citra_asli3: Waktu2 = 7x10^6(3t)
= 21x10^6t
4. Citra_asli4: Waktu2 = 10x10^6(3t)
= 30x10^6t
Langkah 3:
Pada tahap ini, bisa terjadi dua sampai empat kali pemrosesan (3t-4t). Hal ini terjadi karena adanya fungsi if else. Pemrosesan pertama, adalah mencari nilai
pengambangan thresh yang sesuai untuk setiap citra masukan, dengan mengkalikan
rata-rata dari nilai mutlak J (abs(J)). Kemudian, setiap nilai piksel yang ada dibandingkan dengan nilai tersebut, jika lebih besar dari nilai thresh akan dianggap
sebagai tepi dengan mengubah nilai pikselnya menjadi 1, dan jika tidak nilai piksel diubah menjadi 0. Untuk mengasumsikan waktu pada langkah ini, digunakan asumsi waktu terbesar (4t) untuk setiap citra masukan, sehingga menjadi:
1. Citra_asli1: Waktu3 = 0,3x10^6(4t)
= 1,2x10^6t
2. Citra_asli2: Waktu3 = 2x10^6(4t)
= 8x10^6t
3. Citra_asli3: Waktu3 = 7x10^6(4t)
= 28x10^6t
4. Citra_asli4: Waktu3 = 10x10^6(4t)
= 40x10^6t
Langkah 4:
Pada langkah ini, nilai piksel 1 (satu) dan 0 (nol) dari pemrosesan langkah sebelumnya tadi dikembalikan menjadi suatu bentuk tampilan citra dengan mengubah nilai piksel 1 (satu) menjadi warna hitam, dan nilai 0 (nol) menjadi warna putih dengan fungsi
mat2gray. Artinya, pada langkah ini hanya terjadi satu kali pemrosesan (t), sehingga
asumsi waktu untuk tiap citra:
1. Citra_asli1: Waktu4 = 0,3x10^6t
2. Citra_asli2: Waktu4 = 2x10^6t
3. Citra_asli3: Waktu4 = 7x10^6t
Dari keempat langkah pemrosesan dengan metode Sobel tersebut, maka keseluruhan waktu pemrosesan untuk keempat citra masukan tersebut dihitung dengan menjumlahkan keseluruhan waktu dari setiap tahap, menjadi:
1. Citra_asli1 = 0,6x10^6t + 0,9x10^6t + 1,2x10^6t + 0,3x10^6t = 3x10^6t
2. Citra_asli2 = 4x10^6t + 6x10^6t + 8x10^6t + 2x10^6t = 20x10^6t
3. Citra_asli3 = 14x10^6t + 21x10^6t + 28x10^6t + 7x10^6t = 70x10^6t
4. Citra_asli4 = 20x10^6t + 30x10^6t + 40x10^6t + 10x10^6t = 100x10^6t
Analisis Sensitivity Rate
Dari persamaan 2.13, yang merupakan persamaan untuk menghitung nilai sensitivity rate dari suatu metode pendeteksi tepi, dapat ditentukan bahwa nilai nR berbanding lurus dengan nilai nN. Artinya, nilai nN akan semakin besar jika nR juga membesar. Ini terjadi karena dalam penelitian, citra yang diberi noise sebagai citra noisy adalah citra tepi dari hasil pemrosesan dengan metode pendeteksi tepi. Dalam pendeteksian tepi dengan metode Sobel, seperti yang telah dibahas pada analisis kualitas citra tepi untuk metode Sobel, semakin besar tingkat kualitas resolusi citra masukan, maka jumlah piksel yang dinyatakan sebagai tepi pada tiap-tiap citra hasil keluaran juga akan semakin besar. Ini artinya, nilai P juga akan semakin besar untuk citra masukan dengan tingkat kualitas resolusi yang semakin tinggi.
Analisis Metode LoG
Berikut ini pseudocode dari algoritma metode LoG, yang dapat digunakan untuk menganalisis kinerja metode ini terhadap parameter yang ditentukan:
% Mengubah citra RGB menjadi citra skala keabuan
I = double(rgb2gray(handles.data1));
% Penghalusan
% Arah X
filterx = d2dgauss(Nx1,Sigmax1,Nx2,Sigmax2,Theta1);
Ix = conv2(I,filterx,'same');
% Arah Y
filtery = d2dgauss(Ny1,Sigmay1,Ny2,Sigmay2,Theta2);
Iy = conv2(I,filtery,'same');
% Norm of the gradient
NVI = sqrt(Ix.*Ix+Iy.*Iy);
% Konvolusi dengan kernel laplacian 3x3
H = [0 1 0,1 -4 1,0 1 0];
J = conv2(NVI,H,'same');
% Find the zerocross with thresh value
thresh = alfa.*mean2(abs(J));
edgeimage = edge(J,'zerocross',thresh);
Dari pseudocode algoritma metode LoG tersebut, maka hasil analisis kinerja metode LoG terhadap ketiga parameter yang telah ditentukan tersebut adalah sebagai berikut:
Analisis Kualitas Citra Tepi
Sobel berfungsi sebagai faktor pengali untuk menentukan nilai pengambangan thresh
pada saat proses menentukan piksel dengan zerocrossing. Sedangkan nilai sigma merupakan nilai standar deviasi yang diperlukan pada saat proses penghalusan dengan metode Gaussian.
Semakin besar nilai sigma, maka tingkat kehalusan citra juga semakin tinggi. Penghalusan dengan metode Gaussian ini dilakukan untuk mengimbangi tingkat sensitivitas yang tinggi terhadap noise akibat proses konvolusi citra dengan kernel Laplacian.
Metode LoG ini tidak cocok digunakan untuk mendeteksi tepian pada citra dengan resolusi yang tinggi. Akibat proses penghalusan dengan fungsi Gaussian objek yang seharusnya dianggap sebagai tepian tidak mampu terdeteksi lagi oleh metode ini, dan proses konvolusi dengan kernel laplacian yang sangat sensitif terhadap noise menyebabkan banyak piksel noise terdeteksi sebagai tepi.
Untuk mengurangi banyaknya noise yang terdeteksi pada metode ini dapat diimbangi dengan nilai alfa, tapi hal ini juga berakibat pada banyaknya piksel yang seharusnya tepi menjadi tidak terdeteksi. Karena itu, harus ditentukan nilai sigma dan alfa yang tepat, dengan mempertimbangkan hasil untuk keempat citra masukan.
Analisis Timing Run
Seperti halnya proses analisis timing run untuk metode Sobel, untuk metode LoG juga diasumsikan bahwa waktu yang digunakan untuk memproses 1 (satu) nilai piksel pada citra adalah ‘t’, maka asumsi waktu dalam proses pendeteksian tepi dengan metode LoG, adalah:
Langkah 1:
yang digunakan pada metode LoG untuk langkah pertama ini diasumsikan sebagai berikut:
1. Citra_asli1: Waktu1 = 0,3x10^6(2t)
= 0,6x10^6t
2. Citra_asli2: Waktu1 = 2x10^6(2t)
= 4x10^6t
3. Citra_asli3: Waktu1 = 7x10^6(2t)
= 14x10^6t
4. Citra_asli4: Waktu1 = 10x10^6(2t)
= 20x10^6t
Langkah 2:
Pada algoritma ini, terjadi dua kali pemrosesan untuk setiap nilai piksel citra (2t). Proses pertama melakukan konvolusi nilai I dengan filterx yang merupakan
sebuah kernel yang dibentuk dari turunan kedua fungsi Gaussian untuk nilai x, dan menghasilkan Ix. Proses kedua, sama dengan proses sebelumnya, hanya saja proses ini dilakukan pada nilai y dari fungsi Gaussian filtery, sehingga diperoleh nilai Iy.
Sehingga asumsi waktu pada langkah ini adalah:
1. Citra_asli1: Waktu1 = 0,3x10^6(2t)
= 0,6x10^6t
2. Citra_asli2: Waktu1 = 2x10^6(2t)
= 4x10^6t
= 14x10^6t
4. Citra_asli4: Waktu1 = 10x10^6(2t)
= 20x10^6t
Langkah 3:
Pemrosesan pada langkah terjadi satu kali (t), dimana prosesnya adalah menghitung nilai gradien dari nilai Ix dan Iy, dimana hasilnya disimpan dalam nilai NVI, maka
asumsi waktu untuk proses ini adalah:
1. Citra_asli1: Waktu1 = 0,3x10^6t
2. Citra_asli2: Waktu1 = 2x10^6t
3. Citra_asli3: Waktu1 = 7x10^6t
4. Citra_asli4: Waktu1 = 10x10^6t
Langkah 4:
Pada langkah ini, proses yang terjadi adalah konvolusi nilai piksel citra dengan kernel Laplacian, artinya pada langkah ini hanya terjadi satu kali proses (t), sehingga dapat diasumsikan bahwa waktu pada proses ini adalah:
1. Citra_asli1: Waktu1 = 0,3x10^6t
2. Citra_asli2: Waktu1 = 2x10^6t
3. Citra_asli3: Waktu1 = 7x10^6t
4. Citra_asli4: Waktu1 = 10x10^6t
Langkah 5:
Setelah semua proses pada langkah pertama sampai langkah keempat tersebut selesai, langkah selanjutnya adalah mencari persilangan nol (zerocross) dari nilai-nilai piksel citra tersebut dengan batasan pengambangan alfa. Keseluruhan proses ini terjadi dalam satu proses (t), sehingga asumsi waktu untuk langkah ini, adalah:
2. Citra_asli2 Waktu1 = 2x10^6t
3. Citra_asli3 Waktu1 = 7x10^6t
4. Citra_asli4 Waktu1 = 10x10^6t
Keseluruhan waktu pemrosesan untuk keempat citra masukan tersebut dapat dihitung dengan menjumlahkan setiap waktu pemrosesan dari setiap tahap, menjadi: 1. Citra_asli1 = 0,6x10^6t + 0,6x10^6t + 0,3x10^6t + 0,3x10^6t + 0,3x10^6t
= 2,1x10^6t
2. Citra_asli2 = 4x10^6t + 4x10^6t + 2x10^6t + 2x10^6t + 2x10^6t = 14x10^6t
3. Citra_asli3 = 14x10^6t + 14x10^6t + 7x10^6t + 7x10^6t + 7x10^6t = 49x10^6t
4. Citra_asli4 = 20x10^6t + 20x10^6t + 10x10^6t + 10x10^6t + 10x10^6t = 70x10^6t
Analisis Sensitivity Rate
Metode LoG sangat sensitif terhadap noise, hal ini disebabkan oleh proses konvolusi citra dengan kernel laplacian. Akibat hal ini, tentunya juga mempengaruhi nilai sensitivity rate dari keluaran tiap citra masukan untuk metode LoG yang bergantung pada jumlah piksel yang dinyatakan sebagai tepi pada citra hasil deteksi tepi (nR).
Seperti yang telah disebutkan pada subbab analisis sensitivity rate untuk metode Sobel, besarnya jumlah piksel yang dinyatakan sebagai tepi pada citra hasil deteksi tepi akan membuat jumlah piksel yang dinyatakan sebagai tepi pada citra hasil deteksi tepi yang diberi noise juga semakin besar, dan nilai sensitivity rate juga semakin besar.
Citra_asli3 memiliki nilai sensitivity rate lebih besar dari Citra_asli2 dan Citra_asli1, dan Citra_asli2 memiliki nilai sensitivity rate yang lebih besar dari Citra_asli1.
Analisis Metode Canny
Berikut ini pseudocode dari algoritma metode Canny yang digunakan untuk menganalisis kinerja metode Canny terhadap parameter-parameter yang telah ditentukan:
% Mengubah citra RGB menjadi citra skala keabuan
I = double(rgb2gray(handles.data1));
% Penghalusan
% Arah X
filterx = d2dgauss(Nx1,Sigmax1,Nx2,Sigmax2,Theta1);
Ix = conv2(I,filterx,’same’);
% Arah Y
filtery = d2dgauss(Ny1,Sigmay1,Ny2,Sigmay2,Theta2);
Iy = conv2(I,filtery,’same’);
% Norm of Gradien
NVI = sqrt(Ix.*Ix+Iy.*Iy);
% Pengambangan
I_max = max(max(NVI));
I_min = min(min(NVI));
level = alfa*(I_max-I_min)+I_min;
Ibw = max(NVI,level.*ones(size(NVI)));
% Peredaman Titik Non Maksimum
[n,m] = size(Ibw);
for i = 2:n-1
for j = 2:m-1
if Ibw(i,j)>level
X = [-1,0,+1;-1,0,+1;-1,0,+1];
Y = [-1,-1,-1;0,0,0;+1,+1,+1];
Ibw(i,j-1),Ibw(i,j),Ibw(i,j+1);
Ibw(i+1,j-1),Ibw(i+1,j),Ibw(i+1,j+1)];
XI = [Ix(i,j)/NVI(i,j), -Ix(i,j)/NVI(i,j)];
YI = [Iy(i,j)/NVI(i,j), -Iy(i,j)/NVI(i,j)];
ZI = interp2(X,Y,Z,XI,YI);
if Ibw(i,j) >= ZI(1) & Ibw(i,j) >= ZI(2)
edgeimage(i,j)=I_max;
else
edgeimage(i,j)=I_min;
end
else
edgeimage(i,j)=I_min;
end
end
end
Dari tahapan-tahapan tersebut, maka hasil analisis kinerja metode Canny terhadap ketiga parameter yang telah ditentukan , adalah sebagai berikut:
Analisis Kualitas Citra Tepi
Sama seperti pendeteksian tepi dengan metode LoG, hasil pendeteksian tepi pada metode Canny juga dipengaruhi oleh dua nilai variabel Sigma dan Alfa. Dan fungsi kedua variabel ini juga sama dengan metode LoG.
Namun, jika metode LoG sangat mungkin untuk menyatakan noise sebagai tepi, tidak demikian dengan metode Canny. Hal ini disebabkan karena metode Canny menggunakan pengambangan hysteresys, yang artinya nilai pengambangannya ditentukan dengan melihat nilai batas bawah dan batas atas yang menentukan suatu piksel apakah dinyatakan sebagai tepi atau tidak.
Seperti halnya dengan dua metode sebelumnya, kualitas citra yang semakin tinggi membuat metode pendeteksi tepi tidak mampu untuk mendeteksi beberapa keberadaan piksel yang seharusnya dinyatakan sebagai tepi, begitu juga dengan metode Canny. Seluruh piksel tepi pada hasil keluaran metode Canny untuk citra masukan dengan resolusi rendah (Citra_asli1 dan Citra_asli2) akan mudah dideteksi oleh metode Canny. Namun, untuk citra dengan resolusi tinggi akan ditemukan beberapa piksel yang seharusnya merupakan tepi tidak didefenisikan sebagai tepi oleh metode ini.
Analisis Timing Run
Dengan mengasumsikan waktu untuk memproses tiap nilai piksel pada citra masukan sebagai ‘t’, maka dapat dianalisis asumsi waktu yang diperlukan untuk mendeteksi citra dengan metode Canny, yaitu:
Langkah 1:
Pemrosesan pada langkah pertama untuk metode Canny masih sama dengan langkah pertama pada pemrosesan metode Sobel dan metode LoG yaitu terjadi 2 (dua) kali proses (2t), maka waktu yang digunakan pada metode LoG untuk langkah pertama ini diasumsikan sebagai berikut:
1. Citra_asli1: Waktu1 = 0,3x10^6(2t)
= 0,6x10^6t
2. Citra_asli2: Waktu1 = 2x10^6(2t)
= 4x10^6t
3. Citra_asli3: Waktu1 = 7x10^6(2t)
= 14x10^6t
= 20x10^6t
Langkah 2:
Pemrosesan pada langkah kedua untuk metode Canny sama dengan pemrosesan yang terjadi pada langkah kedua untuk metode LoG, dengan dua kali pemrosesan (2t) maka asumsi waktu untuk langkah ini menjadi:
1. Citra_asli1: Waktu1 = 0,3x10^6(2t)
= 0,6x10^6t
2. Citra_asli2: Waktu1 = 2x10^6(2t)
= 4x10^6t
3. Citra_asli3: Waktu1 = 7x10^6(2t)
= 14x10^6t
4. Citra_asli4: Waktu1 = 10x10^6(2t)
= 20x10^6t
Langkah 3:
Langkah ketiga untuk pemrosesan metode Canny juga sama dengan langkah ketiga untuk metode LoG, dimana pada langkah ini terjadi 1 (satu) kali proses untuk tiap nilai piksel citra masukan (t), sehingga waktu untuk keempat citra masukan dapat diasumsikan sebagai berikut:
1. Citra_asli1: Waktu1 = 0,3x10^6t
2. Citra_asli2: Waktu1 = 2x10^6t
3. Citra_asli3: Waktu1 = 7x10^6t
4. Citra_asli4: Waktu1 = 10x10^6t
Untuk langkah 4 ini, ada 4 jenis proses yang terjadi untuk setiap nilai piksel citra (4t) pada langkah ini. Pertama, menentukan nilai batas bawah I_min yang berguna untuk menentukan nilai pengambangan thresh dengan fungsi min. Proses kedua,
menentukan nilai batas atas I_max yang juga digunakan untuk mencari nilai
pengambangan thresh dengan fungsi max. Selanjutnya, mencari nilai pengambangan yang sesuai dengan rumus thresh = alfa*(I_max-I_min)+I_min,
dimana alfa adalah nilai yang ditentukan sendiri, sesuai kebutuhan. Proses terakhir
pada tahap ini adalah mencari nilai Ibw, yang merupakan nilai piksel citra akhir yang
nantinya digunakan pada tahap berikutnya. Asumsi waktu untuk keempat citra masukan tersebut, menjadi:
1. Citra_asli1: Waktu1 = 0,3x10^6(4t)
= 1,2x10^6t
2. Citra_asli2: Waktu1 = 2x10^6(4t)
= 8x10^6t
3. Citra_asli3: Waktu1 = 7x10^6(4t)
= 28x10^6t
4. Citra_asli4: Waktu1 = 10x10^6(4t)
= 40x10^6t
Langkah 5:
Proses paling panjang pada metode Cannya adalah pada langkah ini. Pada proses ini metode Canny akan berusaha mencari titik yang non maksimum, dan akan meredam titik tersebut. Proses ini berlangsung dengan mencocokkan nilai Ibw dengan empat
mungkin terjadi dalam langkah ini, yaitu 8t, maka asumsi waktu untuk langkah ini adalah:
1. Citra_asli1: Waktu1 = 0,3x10^6(8t)
= 2,4x10^6t
2. Citra_asli2: Waktu1 = 2x10^6(8t)
= 16x10^6t
3. Citra_asli3: Waktu1 = 7x10^6(8t)
= 56x10^6t
4. Citra_asli4: Waktu1 = 10x10^6(8t)
= 80x10^6t
Secara keseluruhan waktu yang dibutuhkan untuk memproses keempat citra masukan tersebut dengan metode Canny membutuhkan waktu sebesar:
1. Citra_asli1 = 0,6x10^6t + 0,6x10^6t + 0,3x10^6t + 1,2x10^6t + 2,4x10^6t = 5,1x10^6t
2. Citra_asli2 = 4x10^6t + 4x10^6t + 2x10^6t + 8x10^6t + 16x10^6t = 34x10^6t
3. Citra_asli3 = 14x10^6t + 14x10^6t + 7x10^6t + 28x10^6t + 56x10^6t = 119x10^6t
4. Citra_asli4 = 20x10^6t + 20x10^6t + 10x10^6t + 40x10^6t + 80x10^6t = 170x10^6t
Analisis Sensitivity Rate
Tahap-tahap pada metode Canny yang sangat kompleks membuat metode ini memiliki ketahanan yang cukup tinggi terhadap noise. Berbeda dengan metode LoG, karena kesensitivitasannya yang tinggi terhadap noise membuat metode ini mendefenisikan piksel yang merupakan noise tersebut sebagai sebuah tepi. Dalam metode Canny, dengan langkah peredaman titik lokal non mkasimum, metode ini berhasil membedakan mana piksel yang memang sebagai tepi dan mana piksel yang bukan tepi.
Dengan langkah-langkah pendeteksian tepi yang digunakan pada pendeteksian tepi metode Canny, metode bekerja maksimal pada citra masukan dengan tingkat resolusi yang rendah, karena memiliki nilai intensitas yang lebih tinggi untuk setiap pikselnya dibanding citra dengan tingkat resolusi tinggi.
Hal ini menyebabkan jumlah piksel tepi yang terdeteksi pada citra dengan resolusi tinggi akan lebih sedikit dibanding dengan jumlah piksel yang terdeteksi sebagai tepi pada citra dengan kualitas resolusi rendah. Dan ini artinya nilai sensitivity rate untuk citra dengan resolusi rendah (Citra_asli1 dan Citra_asli2) akan lebih besar dibanding dengan nilai sensitivity rate untuk citra masukan yang memiliki tingkat resolusi tinggi (Citra_asli3 dan Citra_asli4).
Akuisisi Data
Setelah melakukan analisis dan sebelum melakukan perancangan, tahap yang harus dilakukan adalah proses akuisisi data (pengumpulan data). Data disini merupakan sebuah objek yang akan dicitrakan dengan kamera digital. Data ini berguna sebagai citra masukan yang akan diujicobakan di dalam sistem yang akan dibangun.
Proses akuisisi data dilakukan dengan melakukan riset langsung pada Poliklinik Universitas Sumatera Utara (USU). Sampel golongan darah dipilih sebagai objek riset karena dianggap memiliki karakteristik pola tepi yang khas jika diolah dengan suatu metode pendeteksi tepi.
Riset dilakukan dengan memotret salah satu tipe golongan darah manusia (tipe AB0) menggunakan 4 (empat) buah kamera digital dengan tingkat resolusi yang berbeda, yaitu 0,3 (nol koma tiga) megapiksel, 2 (dua) megapiksel, 7 (tujuh) megapiksel, dan 10 (sepuluh) megapiksel. Keseluruhan citra hasil akuisisi ini disimpan dalam format jpeg ‘.jpg’ dengan tujuan untuk memudahkan proses pengolahannya dalam aplikasi yang dibangun membangun bahasa pemrograman Matlab 7.5.0. Gambar 3.1 merupakan gambar objek hasil akuisisi data yang digunakan sebagai masukan dalam aplikasi.
Gambar 3.1 Data Masukan
Perancangan Sistem
Perancangan merupakan tahap kedua dari siklus hidup pengembangan sistem. Dalam penulisan Tugas Akhir ini, tahap perancangan merupakan suatu tahap yang dilakukan karena dianggap dapat memudahkan proses analisis terhadap kesesuaian hasil yang diperoleh dengan analisis secara keilmuan. Dalam proses perancangan, hal yang harus diperhatikan adalah bagaimana membangun sebuah sistem yang dapat menunjukkan hasil penelitian, yang ditampilkan secara grafis. Dalam sistem tersebut, juga menampilkan segala informasi yang berhubungan dengan penelitian.
Perancangan DFD dan Spsesifikasi Proses
P.0 Metode Pendeteksi Tepi Sobel, LoG dan
Canny user
citra_asli data hasil
Ada 2 teknik dasar DFD yang umum dipakai yaitu Gane and Sarson dan Yourdan and DeMarco. Pada tugas akhir ini teknik dasar DFD yang digunakan adalah Yourdan and DeMarco. Gambar 3.2 memperlihatkan DFD level 0 dari sistem yang akan dirancang.
Gambar 3.2 DFD Level 0
DFD level 0 di atas memperlihatkan sistem secara garis besar yang terdiri dari masukan, proses, dan keluaran dari sistem yang akan dirancang. Proses yang terjadi pada DFD level 0 tersebut dapat dijelaskan melalui spesifikasi proses pada Tabel 3.1.
Tabel 3.1 Spesifikasi Proses DFD Level 0
No/Nama
Proses Input Keterangan Proses Output
P.0/Metode Pendeteksi Tepi Sobel, LoG dan Canny
Citra_asli Mendeteksi tepi sebuah citra dengan format JPEG (.jpg) dengan metode Sobel,
LoG, dan Canny, serta menghitung nilai Sensitivity Rate dan Timing Run-nya.
Selanjutnya DFD level 0 diatas dapat dijabarkan lebih luas lagi dengan memecah Proses 0 ke dalam proses-proses yang lebih kecil. Penjabaran tersebut disebut sebagai DFD Level 1 yang diperlihatkan pada Gambar 3.3.
Gambar 3.3 DFD Level 1
Penjelasan mengenai proses-proses yang terjadi pada DFD level 1 tersebut dapat dilihat dalam Tabel 3.2.
Tabel 3.2 Spesifikasi Proses DFD Level 1
No/Nama
Proses Input Keterangan Proses Output
P.1/Proses Deteksi Tepi Sobel
Citra_asli Mendeteksi tepi citra dengan metode Sobel, dan menghitung nilai Sensitivity Rate dan Timing Run-nya.
hasil_sobel
P.2/Proses Deteksi Tepi LoG
Citra_asli Mendeteksi tepi citra dengan metode LoG, dan menghitung nilai Sensitivity Rate dan Timing Run-nya.
hasil_LoG
P.3/Proses Deteksi Tepi Canny
Citra_asli Mendeteksi tepi citra dengan metode Canny, dan menghitung nilai Sensitivity Rate dan Timing Run-nya.
hasil_canny
citra_asli citra_asli
hasil_LoG
Proses 1 (P.1) dari DFD level 1 di atas terdiri atas 5 (lima) proses utama yang terjadi didalamnya, aliran data yang terjadi pada proses ini disebut sebagai DFD level 2 Proses P.1 Deteksi Tepi Sobel, diperlihatkan pada Gambar 3.4.
Gambar 3.4 DFD Level 2 Proses P.1 Deteksi Tepi Sobel
Untuk spesifikasi proses yang terjadi pada DFD level 2 proses P.1 ini ditunjukkan pada Tabel 3.3.
Tabel 3.3 Spesifikasi Proses DFD Level 2 Proses P.1 Deteksi Tepi Sobel
No/Nama
Proses Input Keterangan Proses Output
P.1.1/Proses Tampil Citra Masukan
citra_asli Mencari sebuah file citra asli (masukan) dan
data_citra_asli Menampilkan citra yang telah diproses dengan metode pendeteksi tepi Sobel.
citra_tepi_sobel Citra hasil deteksi tepi Sobel disisipi noise dengan nilai tertentu.
piksel_sobel2 user
P.1.2 Proses Tampil Citra
P.1.4 /Proses Hitung
Sensitivity Rate
piksel_sobel1, piksel_sobel2
Menghitung nilai sensitivity rate dari pendeteksi tepi sobel.
nilai_sr_sobel
P.1.5/Proses Hitung Timing Run
waktu_sobel1, waktu_sobel2
Menghitung nilai timing run dari proses pendeteksian tepi dengan metode Sobel.
nilai_tr_sobel
Untuk penjabaran proses P.2 Deteksi Tepi LoG dari DFD level 1, juga terdapat 5 (lima) proses utama. Gambar 3.5 memperlihatkan hasil penjabaran DFD Level 2 Proses P.2.
Gambar 3.5 DFD Level 2 Proses P.2 Deteksi Tepi LoG
Dan untuk tabel spesifikasi proses dari DFD Level 2 Proses P.2 tersebut dapat dilihat pada Tabel 3.4.
Tabel 3.4 Spesifikasi Proses DFD Level 2 Proses P.2 Deteksi Tepi LoG
No/Nama Proses Input Keterangan Proses Output
P.1.1/Proses Tampil Citra Masukan
Citra_asli Mencari sebuah file citra asli (masukan) dan
menampilkannya.
data_citra_asli1, data_citra_asli2
P.1.2/Proses Tampil Citra Hasil Deteksi Tepi LoG
data_citra_asli Menampilkan citra yang telah diproses dengan metode pendeteksi tepi LoG.
citra_tepi_LoG, piksel_LoG1, waktu_LoG1, waktu_LoG2 P.1.3/Proses citra_tepi_LoG Citra hasil deteksi tepi Sobel piksel_LoG2
user
P.1.2 Proses Tampil Citra
Tambah Noise disisipi noise. P.1.4/Proses Hitung
Sensitivity Rate
piksel_LoG1, piksel_LoG2
Menghitung nilai sensitivity rate dari pendeteksi tepi LoG.
nilai_sr_LoG
P.1.5/Proses Hitung Timing Run
waktu_LoG1, waktu_LoG2
Menghitung nilai timing run dari proses pendeteksian tepi dengan metode LoG.
nilai_tr_LoG
Sedangkan untuk Proses P.3 Deteksi Tepi Canny dari DFD level 1 di atas juga dijabarkan ke dalam 5 (lima) proses utama menjadi DFD Level 2 Proses P.3. Proses-proses tersebut dapat dilihat pada Gambar 3.6.
Gambar 3.6 DFD Level 2 Proses P.3 Deteksi Tepi Canny
Spesifikasi dari proses-proses pada DFD Level 2 Proses P.3 di atas, dijelaskan dalam Tabel 3.5.
Tabel 3.5 Spesifikasi Proses DFD Level 2 Proses P.3 Deteksi Tepi Canny
No/Nama
Proses Input Keterangan Proses Output
P.1.1/Proses Tampil Citra Masukan
citra_asli Mencari sebuah file citra asli (masukan) dan
data_citra_asli Menampilkan citra yang telah diproses dengan metode pendeteksi tepi
citra_tepi_canny, piksel_canny1, waktu_canny1, user
P.1.2 Proses Tampil Citra