MENGHITUNG BANYAK KEPADATAN BANGUNAN DI SUATU WILAYAH PADA CITRA GOOGLE SATELIT DENGAN MENGGUNAKAN METODE DETEKSI TEPI SOBEL.
WILAYAH PADA CITRA GOOGLE SATELIT DENGAN
MENGGUNAKAN METODE DETEKSI TEPI SOBEL
TUGAS AKHIR
Disusunoleh :
GANGGANG IRIANTO
NPM. 0934010241
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVE
RSITAS PEMBANGUNAN NASIONAL “VETERAN” JAWA
TIMUR
SURABAYA
(2)
Disusun Oleh :
Ganggang Irianto
NPM. 0934010241
Telah disetujui untuk mengikuti Ujian Negara Lisan Gelombang III Tahun Akademik 2012/2013
Pembimbing Utama Pembimbing Pendamping
Eko Prasetyo, S.Kom M.Kom Ir. Purnomo Edi Sasongko, MP
NPT.379071002911 NIP. 196407141988031001
Mengetahui,
Ketua Jurusan Teknik Informatika Fakultas Teknologi Industri UPN ”Veteran” Jawa Timur
Dr. Ir. Ni Ketut Sari, MT NIP. 196507311992032001
(3)
MENGHITUNG BANYAK KEPADATAN BANGUNAN DI SUATU
WILAYAH PADA CITRA GOOGLE SATELIT DENGAN
MENGGUNAKAN METODE DETEKSI TEPI SOBEL
Disusun Oleh :Ganggang Irianto
NPM. 0934010241
Telah dipertahankan di hadapan dan diterima oleh Tim Penguji Skripsi Jurusan Teknik Informatika Fakultas Teknologi Industri
Universitas Pembangunan Nasional ”Veteran” Jawa Timur Pada Tanggal 14 Juni 2013
Pembimbing : Tim Penguji :
1. 1.
Eko Prasetyo, S.Kom M.Kom Ir.Mu’tasim Billah.MS
NPT.379071002911 NPT.196005041987031001
2. 2.
Ir. Purnomo Edi Sasongko, MP Yisti Vita Via, S.St, M.Kom
NIP. 196407141988031001 NPTY. 3 8604 130 347 1
3.
Henni Endah W, ST, M.Kom NPTY.3 7609 130 348 1 Mengetahui,
Dekan Fakultas Teknologi Industri
(4)
KETERANGAN REVISI Mahasiswa di bawah ini :
Nama : Ganggang Irianto
NPM : 0934010241
Jurusan : Teknik Informatika
Telah mengerjakan revisi/ tidak ada revisi*) pra rencana (design)/ skripsi ujian lisan gelombang III, TA 2012/2013 dengan judul:
“MENGHITUNG BANYAK KEPADATAN BANGUNAN DI SUATU WILAYAH
PADA CITRA GOOGLE SATELIT DENGAN MENGGUNAKAN METODE DETEKSI TEPI SOBEL”
Surabaya, 14 Juni 2013 Dosen Penguji yang memerintahkan revisi:
1) Ir. Mu’tasim Billah, MS NPT.196005041987031001 2) Yisti Vita Via, S.St, M.Kom NPTY. 3 8604 130 347 1
3) Henni Endah W, ST, M.Kom NPTY.3 7609 130 348 1
Mengetahui,
Pembimbing Utama Pembimbing Pendamping
Eko Prasetyo, S.Kom M.Kom Ir. Purnomo Edi Sasongko, MP
NPT.379071002911 NIP. 196407141988031001
{
}
{
}
(5)
Ucapan terima kasih ini kami persembahkan sebagai perwujudan rasa syukur atas terselesaikannya Skripsi. Ucapan terima kasih ini kami tujukan kepada : 1. Tuhan Yang Maha Esa, karena berkat Rahmat dan berkahNya kami dapat
menyusun dan menyelesaikan Laporan PKL ini hingga selesai. 2. Bapak Ir. Sutiyono, MS selaku Dekan Fakultas Teknologi Industri
3. Ibu Dr.Ir Ni Ketut Sari,MT selaku ketua jurusan Teknik Informatika, UPN “Veteran” Jawa Timur
4. Eko Prasetyo S.kom M.kom selaku Dosen Pembimbing utama yang telah meluangkan begitu banyak waktu, tenaga dan pikiran serta dengan sabar membimbing penulis dari awal hingga Laporan Tugas Akhir ini dapat terselesaikan.
5. IR, R. Purnomo Edi Sasongko, MP selaku Dosen Pembimbing pendamping (Pembimbing II) yang telah dengan sabar membimbing dengan segala kerendahan hati dan banyak ide, petunjuk, masukan, bimbingan, dorongan serta bantuan yang sangat berarti dan bermanfaat bagi tugas akhir ini. Serta bersedia meluangkan waktu untuk membimbing dan membantu.
6. Keluarga tercinta, terutama BAPAK IBU kami tersayang, terima kasih atas semua doa dan dukungan. Yang penulis minta hanya doa restunya, sehingga penulis bisa membuat sesuatu yang lebih baik dari laporan ini.
7. Para Sahabatku Asep Kurnaivi Wardana, Risky Sulistiawan, Nur Fibria, Ruli Gita dan Katarina Gresa Eko Ito.
(6)
ii
tenaga, pikiran dan keburutungan yang dimiliki peneliti, akhirnya peneliti dapat menyelesaikan Skripsi Yang berjudulu “Menghitung Banyak Kepadatan Bangunan di Suatu Wilayah pada Citra Google Satelit dengan Menggunakan
Metode Deteksi Tepi Sobel” tepat waktu.
Skripsi dengan beban 4 SKS ini disusun guna di ajukan sebagai salah satu syarat untuk menyelesaikan program Strata Satu (S1) pada jurusan Teknik
Informatika, Fakultas Teknologi Industri, UPN “VETERAN “ Jawa Timur.
Melalui Skripsi ini peneliti merasa mendapatkan kesempatan emeas untuk memperdalam ilmu pengetahuan yang diperoleh selama di bangku perkulihan, terutama berkenaan tentang penerapan teknologi perangkat bergerak, Namun, penyusun menyadari bahwa Skripsi ini masih jauh dari sempurna. Oleh karena itu penyusun sangat mengharapkan saran dan kritik dari para pembaca untuk pengembangan aplikasi lebih lanjut.
Surabaya,14 Juni 2013
(7)
Halaman
ABSTRAK…………...i
KATA PENGANTAR……...ii
UCAPAN TERIMA KASIH...iii
DAFTAR ISI...iv
DAFTAR GAMBAR...vii
DAFTAR TABEL...ix
BAB I PENDAHULUAN ... 1
1.1 LATAR BELAKANG ... 1
1.2 RUMUSAN MASALAH ... 3
1.3 BATASAN MASALAH ... 3
1.4 TUJUAN ... 3
1.5 MANFAAT ... 4
BAB II TINJAUAN PUSTAKA ... ...5
2.1 Artifical Intelligence ... 5
2.2 Image ... 5
2.2.1 Analog Image ... 6
2.2.2 Digital Image... 6
2.3 Computer Vision ... 7
2.4 Pengenalan Citra ... 8
2.5 RGB (Red, Green, Blue) ... 9
2.6 Citra Grayscale ... 10
2.7 Sharping ... 10
(8)
2.8.6 ClearBorder ... 17
2.9 Metode Sobel ... 18
2.10 GUI / GUIDE MATLAB ... 19
2.10.1 Membuat GUI dengan MATLAB ... 24
2.11 Preccion dan Recall ... 26
2.12 Flowchart ... 26
2.13 Simbol-simbol flowchart ... 27
BAB III METODOLOGI PENELITIAN ... 31
3.1 Data Set ... 33
3.2 Analisa Sistem ... 35
3.3 Alur Proses Program... 36
3.4 Perancangan Proses ... 38
3.4.1 Grayscale ... 38
3.4.2 Sharping ... 39
3.4.3 Metode Sobel ... 41
3.4.4 Dilasi ... 42
3.4.5 Closing ... 43
3.4.6 Invers ... 44
3.4.7 Clearborder ... 45
3.4.8 Hitung ... 46
3.5 Evaluasi ... 47
3.6 PerancanganTampilan Antarmuka ... 51
3.7 Jadwal Kegiatan... 53
BAB IV HASIL DAN PEMBAHASAN ... 54
4.1 Kebutuhan Hardware dan Software ... 54
(9)
4. 4 Implementasi Proses ... 57
4.4.1 Proses Load ... 57
Gambar 4.2Source code proses load image ... 57
4.4.2 Proses Program ... 57
Gambar 4.3Source Code Proses Progam ... 59
4.4.3 Proses Hitung ... 59
Gambar 4.4 Source Code Proses Hitung ... 60
4.5 Uji Coba Program ... 60
4.5.1 Skenario Uji Coba ... 60
4.5.2 Pelaksanaan Ujicoba ... 61
BAB V KESIMPULAN DAN SARAN... 65
5.1 Kesimpulan ... 65
5.2 Saran ... 66
(10)
i
Pembimbing I : Eko Prasetyo S,Kom M,Kom Pembimbing II : IR, R. Purnomo Edi Sasongko, MP Penyusun : Ganggang Irianto
ABSTRAK
Menghitung bangunan dalam sebuah citra gambar yang memiliki ketajaman atau yang berkaitan dengan proses transfer data sangat dibutuhkan untuk mendapatkan hasil citra gambar yang sesuai dengan yang dibutuhkan pada aplikasi ini, permasalahan diselesaikan dengan metode Sobel dengan dukungan pemilihan ukuran mask secara manual dari yang telah disediakan dalam aplikasi untuk mendapat hasil yang dibutuhkan.Tugas akhir ini bertujuan untuk Menghitung
“Banyak Kepadatan Bangunan Di Suatu Wilayah Pada Citra Google Satelit Dengan Menggunakan Metode Deteksi Tepi Sobel” Sistem ini di implementasikan menggunakan sobel untuk penghalusan data citra gambar, sehingga sistem harus dibangun sesuai dengan kebutuhan.Hasil yang dicapai pada tugas akhir ini yaitu membuat aplikasi menghitung bangunan menggunakan deteksi sobel dengan matlab 7.9 didukung dengan GUI untuk mempermudah interaksi aplikasi dengan (user).Dari hasil ujicoba yang dilakukan didapatkan jumlah rumah dengan jumlah yang sesuai adapun ketidaksamaan dikarenakan masuknya obyek lain yang terhitung saat pemrosesan mask.
Kata Kunci : Menghitung Kepadatan Bangunan, Citra Google Satelit, Metode Deteksi Tepi Sobel
(11)
BAB I
PENDAHULUAN
1.1 LATAR BELAKANG
Pada saat ini teknologi komputer berkembang sangat pesat, mengikuti kebutuhan hidup manusia. Komputer semakin banyak dibutuhkan untuk membantu manusia dalam kehidupan sehari-hari. Telah diketahui bersama, bahwa komputer dapat dimanfaatkan untuk berbagai keperluan, misalnya dapat digunakan dalam dunia pendidikan,proyek pembangunan dan perhitungan di berbagai bidang. Beberapa pihak terkadang mengeluhkan tentang sulitnya memahami dan meghitung suatu kepadatan semua bangunan dalam suatu wilayah. Hal ini karena belum adanya suatu alat perhitungan secara terperinci dan berdasarkan pola citrana, dan tidak memberikan Implementasi langsung tentang jumlah bangunan di suatu wilayah. Ini semua bertujuan agar membatasi sebuah bangunan di suatu wilayah, mengetahui jumlah bangunan dan dapat membedakan antara bangunan dengan suatu bidang bukan bangunan seperti tambak, jalan raya, dll. Pendeteksian tepi adalah pendekatan yang paling umum digunakan untuk mendeteksi diskontinuitas grey-level. Hal ini disebabkan karena titik ataupun garis yang terisolasi tidak terlalu sering dijumpai dalam aplikasi praktis. Sampai sejauh mana segmentasi tersebut dilakukan tergantung pada masalah yang dihadapi.
(12)
adalah metode pendeteksian tepi terbaik dibandingkan dgn metode pendeteksian tepi lainnya seperti metode Prewitt dan metode Robert. Jika pada metode Robert atau Prewitt hanya menggunakan jendela 2x2 pada maskingnya, maka pada metode Sobel menggunakan jendela 3x3 pada maskingnya sehingga hasil yang di dapat menjadi lebih sempurna dari metode-metode pendeteksian tepi yang lainnya. Bagaimana jika masking pada sobel ini kita kalikan dengan suatu nilai (0-255) sehingga kita dapat mengubah kekuatan intensitas pendeteksian tepi pada metode sobel agar mendapatkan hasil yang terbaik dari metode pendeteksian tepi sobel dengan melihat nilai-nilai yang didapat. Beberapa pihak terkadang mengeluhkan tentang sulitnya memahami dan meghitung suatu kepadatan semua bangunan dalam suatu wilayah. Hal ini karena belum adanya suatu alat perhitungan secara terperinci dan berdasarkan pola citrana, dan tidak memberikan Implementasi langsung tentang jumlah bangunan di suatu wilayah. Ini semua bertujuan agar membatasi sebuah bangunan di suatu wilayah, mengetahui jumlah bangunan dan dapat membedakan antara bangunan dengan suatu bidang bukan bangunan seperti tambak, jalan raya, dll. Maka dari itu, penulis membuat suatu sistem yang dapat menghitung kepadatan bangunan dengan mengambil sebagian gambar di google map.
(13)
1.2 RUMUSAN MASALAH
Rumusan masalah dibuatnya Tugas Akhir ini adalah: Bagaimana cara menghitung kepadatan bangunan dengan metode deteksi tepi sobel?
1.3 BATASAN MASALAH
1. Program yang dibuat hanya menghitung kepadatan Bangunan jadi seperti: tambak, lahan kosong, taman bermain tidak masuk hitungan 2. Gambar harus dengan jelas
3. Data yang diambil akan terhitung satu obyek apabila dalam proses pengolahan bentuk obyek lebih dari 50 %
4. Jumlah data yang diperoleh dapat tidak sama dikarenakan adanya proses morfologi yang dapat menghilangkan obyek gambar yang seharusnya dihitung satu:
- seperti gambar obyek terlalu dipinggir.
-adanya gambar yang saling berdekatan akan dihitung satu.
-adanya bentuk rumah yang berbentuk seperti wilayah lapangan itu menyebabkan tidak terhitung
1.4 TUJUAN
Tujuan dari dibuatnya Tugas Akhir ini adalah: “Menghitung Banyak Kepadatan Bangunan di Suatu Wilayah pada Citra Google Satelit dengan Menggunakan Metode Deteksi Tepi Sobel”
(14)
Manfaat dari dibuatnya Tugas Akhir ini adalah:
1. Dapat mengetahui Informasi kepadatan bangunan.
2. Dapat mengetahui berapa banyak bangunan dilihat dari skala pada google map.
3. Dapat digunakan untuk membuat suatu perbandingan kepadatan pada suatu wilayah
4. Program ini dapat dipahami dengan mudah dan dapat digunakan siapa saja.
(15)
TINJAUAN PUSTAKA
2.1 Artifical Intelligence
Artifical Intelligence atau Kecerdasaan Buatan (disingkat AI) adalah kemampuan suatu alat untuk melakukan fungsi yang biasanya dihubungkan dengan kecerdasaan manusia, seperti penalaran dan pembelajaran melalui pengalaman, AI adalah cabang dari computer science yang berupaya meniru kemampuan penalaran manusia dengan mengorganisasi dan memanipulasi pengetahuan faktual dan heristik. Bidang aktivitas AI meliputi sistem sisitem pakar, pengenalan bahasa alami, pengenalan suara, pengelihatan komputer (Computer Vision) dan robotika (Anonim, 1996).
2.2 Image
Data masukan yang diproses adalah suatu image.Image merupakan sebuah representasi khusus dari suatu obyek, baik obyek dua dimensi maupun tiga dimensi, dimana representasi tersebut dinyatakan dalam bentuk dua dimensi. Image dapatb berbentuk nyata, maya, ataupun dalam bentuk optik. Selain itu, image juga dapat berupa rekaman, seperti video image, digital image, atau sebuah gambar (Haralick dan Shapiro, 1992, pl). Image dapat dikategorikan sebagai:
(16)
Menurut Shapiro dan Stockman (2001, p29), analog image
adalah image 2D F(x,y) yang memiliki ketelitian tidak terbatas dalam parameter spasial x dan y dan ketelitian tak terbatas pada intesitas tiap titik spasial (x,y).
2.2.2 Digital Image
Menurut Shapiro dan Stokman (2001, p29), digital image
adalah image 2D I[r,c] yang direpresentasikan oeleh array diskrit 2D dari intesintas sample, dimana masing-masing titik direpresentasikan dengan ketelitian terbatas.
Digital image juga didefinisikan sebagai representasi dari gambar dua dimensi sebagai himpunan terbatas dari nilai digital
yang disebut picture elements atau pixel. Umumnya pixel disimpan dalam komputer sebagai gambar raster, yaitu array dua dimensi dari integer. Nilai ini kadang disimpan dalam bentuk terkompresi.
Digital image dapat diperoleh dari berbagai macam alat adan teknik pengambil gambar, seperti kamera digital, scanner, radar, dan sebagainya. Dapat pula disentesis dari data seperti fungsi matematika dan lain-lain. (Anonim, 2005a). Menurut Jian, Kasutri dan Schunck (1995, p12), pixel adalah sampel dari intesitas image
yang terkuantitas ke dalam nilai integer. Sementara image
merupakan array dua dimensi dari pixel-pixel tersebut. Image
(17)
Beberapa bentuk digital image yang sering digunakan dalam Computer Vision (Shapiro dan Stockman, 2001, p30):
Binary image, yaitu digital image dengan nilai pixel 1 atau 0. Gray scale image, yaitu digital image monochrom dengan satu
nilai intensitas tiap pixel.
Multispectral image, adalah image 2D yang memiliki vector nialai pada tiap pixel, jika image berwarna maka vectornya memiliki 3 elemen.
Labeled image, adalah image dimana nilai pixel adalah simbol
dari alfabet terbatas.
2.3 Computer Vision
Computer Vision (sering disebut juga dengan Machine Vision) dapat dideskripsikan sebagai ilmu yang mempelajari metode yang dapat digunakan untuk membuat komputer mengerti gambar atau data banyak dimensi umumnya (Anonim, 2005b), sementara definisi Computer Vision
menurut Kulkarni (2001, p27), adalah penyimpulan (dedukasi) otomatis akan struktur atau properti dari tiga dimensi dari satu atau lebih image dua dimensi dunia tersebut dan pengenalan objek-objek dengan bantuan properti-properti ini, atau secara singkatnya yaitu proses mengenali objek tertentu dari suatu image. Menurut Shapiro dan Stockman (2001, p1), tujuan dari Computer Vision adalah untuk membuat keputusan yang berguna tentang objek dunia nyata dan keadaan (scene) berdasarkan image
(18)
gambar. Karena itu dapat dikatakan bahawa tujuan dari Computer Vision
adalah untuk membangun deskripsi keadaan dari image.
Artifical Intelligence digunakan untuk menganilisi keadaan dengan memproses representasi simbolik dari isi lingkungan setelah image telah diproses untuk diambil fiturnya. Banyak teknik dari Artifical Intelligence
berperan penting didalam seleuruh aspek Computer Vision. Pada dasarnya
Computer Vision merupakan cabang dari Artifical Intelligence. (Jain, Kutisari dan Schunck, 1995,p5).
2.4 Pengenalan Citra
Citra, menurut kamus Webster, adalah suatu representasi, kemiripan, atau imitasi dari suatu objek atau benda, sedangkan secara harafiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi sebuah objek, dan objek tersebut memantulkan kembali sebagian dari berkas cahayanya. Pantulan cahaya ini ditangkap oleh oleh alat-alat optik, misalnya mata pada manusia, kamera, pemindai (scanner), dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam. Citra juga merupakan bentuk dari dua dimensi untuk di jadikan fisik nyata menjadi tiga dimensi. Dalam perwujudannya, citra dibagi menjadi dua yaitu still images (citra diam) dan moving images (citra bergerak). Citra diam adalah citra tunggal yang tidak bergerak, sedangkan citra bergerak adalah rangkaian citra diam yang ditampilkan secara beruntun (sekuensial) sehingga memberi kesan
(19)
pada mata kita sebagai gambar yang bergerak. Gambar atau citra dapat disebut sebagai sebuah bidang datar yang mempunyai fungsi dua dimensi f(x, y), dimana nilai x dan y merupakan koordinat pada sebuah bidang datar dan amplitudo dari f dapat disebut sebagai intensitas atau gray-level atau biasa disebut tingkat ke abu-abuan dari sebuah gambar pada koordinat x dan y.
2.5 RGB (Red, Green, Blue)
Suatu citra biasanya mengacu ke citra RGB. Sebenarnya bagaimana citra disimpan dan dimanipulasi dalam komputer diturunkan dari teknologi televisi, yang pertama kali mengaplikasikannya untuk tampilan grafis komputer. Jika dilihat dengan kaca pembesar, tampilan monitor komputer akan terdiri dari sejumlah triplet titik warna merah (RED), hijau (GREEN) dan biru (BLUE). Tergantung pada pabrik monitornya untuk menentukan apak titik tersebut merupakan titik bulat atau kotak kecil, tetapi akan selalu terdiri dari 3 triplet red, green dan blue. Citra dalam komputer tidak lebih dari sekumpulan sejumlah triplet dimana setiap triplet terdiri atas variasi tingkat keterangan (brightness) dari elemen red, green dan blue. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur intensitas dari Red (R), Green (G) dan Blue (Blue) dari suatu triplet. Setiap triplet akan merepresentasikan 1 pixel (picture element). Suatu triplet dengan nilai 67, 228 dan 180 berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B k nilai 180. Angka-angka RGB ini yang seringkali disebut dengan color values. Pada format .bmp citra setiap pixel pada citra direpresentasikan dengan dengan 24 bit, 8 bit untuk R, 8 bit untuk G dan 8 bit untuk B, dengan pengaturan seperti pada gambar di bawah ini :
(20)
Gambar 2.1 Red,Green,Blue
2.6 Citra Grayscale
Dalam komputasi, suatu citra digital grayscale atau greyscale adalah suatu citra dimana nilai dari setiap pixel merupakan sample tunggal. Citra yang ditampilkan dari citra jenis ini terdiri atas warna abu-abu, bervariasi pada warna hitam pada bagian yang intensitas terlemah dan warna putih pada intensitas terkuat. Citra grayscale berbeda dengan citra ”hitam-putih”, dimana pada konteks komputer, citra hitam putih hanya terdiri atas 2 warna saja yaitu ”hitam” dan ”putih” saja. Pada citra grayscale warna bervariasi antara hitam dan putih, tetapi variasi warna diantaranya sangat banyak. Citra grayscale seringkali merupakan perhitungan dari intensitas cahaya pada setiap pixel pada spektrum elektromagnetik single band . Citra grayscale disimpan dalam format 8 bit untuk setiap sample pixel, yang memungkinkan sebanyak 255 intensitas dengan rumus pencarian sebagai berikut;
HASIL= (RED+GREEN+BLUE)/3
2.7 Sharping
• Histogram Equalization adalah suatu proses untuk meratakan histogram agar derajat keabuan dari yang paling rendah (0) sampai dengan yang paling tinggi (255) mempunyai kemunculan yang rata.
(21)
• Dengan histogram equalization hasil gambar yang memiliki histogram yang tidak merata atau distribusi kumulatif yang banyak loncatan gradiasinya akan menjadi gambar yang lebih jelas karena derajat keabuannya tidak dominan gelap atau dominan terang.
• Proses histogram equalization ini menggunakan distribusi kumulatif, karena dalam proses ini dilkakukan perataan gradien dari distribusi kumulatifnya.
Pertimbangkan gambar skala abu-abu 8-bit memiliki nilai-nilai berikut:
Gambar 2.2 Skala ke abuan
histogram untuk sub gambar ini ditampilkan dalam nilai piksel tabel berikut:
(22)
Tabel 2.1 Perhitungan nilai skala Fungsi distribusi kumulatif (cdf) adalah sebagai berikut:
Tabel 2.2 Perhitungan Distribusi komulatif Rumus :
2.8 Pengolahan Citra – Morfologi
Perbedaan antara pemrosesan citra digital secara morfologis dengan pemrosesan biasa adalah sebagai berikut :
Pengolahan citra dasar sebelumnya hanya memandang sebuah citra sebagai suatu fungsi intensitas terhadap posisi (x,y)
(23)
Dengan pendekatan morfologi, kita memandang suatu citra sebagai
sebuah himpunan
Pemrosesan citra secara morfologi biasanya dilakukan terhadap citra
biner (hanya terdiri dari 0 dan 1), walaupun tidak menutup kemungkinan dilakukan terhadap citra dengan skala keabuan 0-255 Contoh inputan citra
Gambar 2.3 Inputan Citra
2.8.1 Pengertian Operasi Morfologi :
Secara umum, pemrosesan citra secara morfologi dilakukan dengan cara mem-passing sebuah structuring element terhadap sebuah citra dengan cara yang hampir sama dengan konvolusi. Structuring element dapat diibaratkan dengan mask pada pemrosesan citra biasa (bukan secara morfologi)
(24)
Gambar 2.4 Morfologi
2.8.2 Structuring Element :
Structuring element dapat berukuran sembarang. Structuring element juga memiliki titik poros (disebut juga titik origin/ titik asal/titik acuan). Contoh structuring element seperti objek S dengan titik poros di (0,0) -> warna merah, operasi morfologi yang dapat dilakukan diantaranya :
Dilasi Closing
2.8.3 Dilasi
Dilasi merupakan proses penggabungan titik-titiklatar (0) menjadi bagian dari objek (1), berdasarkan structuring element S yang digunakan. Cara dilasi adalah untuk setiap titik pada A, lakukan hal berikut:
letakkan titik poros S pada titik A tersebut
beri angka 1 untuk semua titik (x,y) yang terkena / tertimpa
oleh struktur S pada posisi tersebut S = {(0,0),(0,1),(1,0)}
(25)
A = {(0,0),(0,1),(0,2),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)}
Gambar 2.5 Dilasi
2.8.4 Closing :
Closing adalah proses dilasi yang diikuti dengan erosi. Efek yang dihasilkan adalah mengisi lubang kecil pada objek, menggabungkan objek-objek yang berdekatan, dan secara umum men-smooth-kan batas dari objek besar tanpa mengubah area objek secara signifikan. Rumusnya sebagai berikut:
(26)
Gambar 2.6 Closing
2.8.5 Invers
Menurut Asmitot (2010), Jika invers f adalah fungsi dari himpunan A ke himpunan B, maka invers fungsi f adalah fungsi dari himpunan B ke himpunan A.
Gambar 2.7 Sebuah fungsi f dan inversnya
Jika sebuah input x dimasukkan ke dalam fungsi f menghasilkan sebuah output y, y kemudian dimasukkan ke dalam fungsi
(27)
invers menghasilkan output x. f adalah fungsi yang domainnya adalah himpunan X, dan kodomainnya adalah himpunan Y. Kemudian, jika ada kebalikan dari fungsi f adalah dengan domain Y dan kodomain X, dengan aturan. Jika , maka , Tidak semua fungsi mempunyai invers. Tetapi, fungsi yang tidak mempunyai invers itu akan mempunyai invers jika kita membatasi himpunan nilai-nilai X-nya. Fungsi yang mempunyai invers adalah fungsi bijektif, yaitu:
Jika setiap anggota himpunan B mempunyai tepat satu kawan di A maka f disebut fungsi bijektif atau korespodensi 1-1. Mudah dipahami bahwa korespondensi 1-1 adalah fungsi surjektif sekaligus injektif. Sehingga sering dinyatakan sebagai “sebuah fungsi bijective jika dan hanya jika memiliki fungsi invers.
2.8.6 ClearBorder
Aplikasi rekonstruksi lain yang berguna adalah menghilangkan obyek yang menyentuh border citra.
◦ Kunci dalam aplikasi ini adalah memilih marker dan mask citra yang tepat untuk mendapatkan efek yang diharapkan.
Digunakan citra original sebagai mask dan marker citra fm, didefinisikan sebagai: lainnya 0 f border adalah y) (x, jika ) , ( ) ,
(x y f x y
(28)
◦ Fungsi ini menekan struktur yang lebih terang daripada sekitarnya dan yang terhubung ke citra.
◦ Input f boleh citra grayscale atau biner. C
◦ Citra output adalah citra grayscale atau biner sesuai dengan inputnya
2.9 Metode Sobel
Proses yang digunakan oleh operator sobel merupakan proses dari sebuah konvolusi yang telah di tetapkan terhadap citra yang terdeteksi. Dalam operator sobel digunakan matrik konvolusi 3 X 3 dan susunan piksel-pikselnya di sekitar pixel (x, y) seperti bagan berikut:
Gambar 2.8 Konvulasi
Operator sobel merupakan pengembangan Operator robert dengan menggunakan filter HPF yang diberi satu angka nol penyangga. Operator ini mengambil prinsip dari fungsi laplacian dan gaussian yang dikenal sebagai fungsi untuk membangkitkan HPF. Kelebihan dari Operator sobel ini adalah kemampuan untuk mengurangi noise sebelum
P1 P2 P3
P8 (x,y) P4
(29)
melakukan perhitungan deteksi tepi. Dengan nilai C konstanta bernilai dua, sehingga terbentuk matrik operator sobel dapat di gambarkan seperti di bawah ini:
Sx= Sy=
Gambar 2.9 Konstanta Operasi Sobel
Biasanya operator sobel menempatkan penekanan atau pembobotan pada piksel-piksel yang lebih dekat dengan titik pusat jendela, sehingga pengaruh piksel-piksel tetangga akan berbeda sesuai dengan letaknya terhadap titik di mana gradien dihitung. Dari susunan nilai-nilai pembobotan pada jendela juga terlihat bahwa perhitungan terhadap gradien juga merupakan gabungan dari posisi mendatar dan posisi vertikal dengan perhitungan sebagai berikut:
Sx=((x,y).0)+(P1.-1)+(P2.0)+(P3.1)+(P8.-2)+(P4.2)+(P7.-1)+(P6.0)+(P5.1) Sy=((x,y).0)+(P1.-1)+(P2.-2)+(P3.-1)+(P8.0)+(P4.0)+(P7.1)+(P6.2)+(P5.1) Hasil = (Sx+Sy)
2.10 GUI / GUIDE MATLAB
Dibangun dengan obyek grafik seperti tombol (button), kotak teks, slider, menu dan lain-lain. Aplikasi yang menggunakan GUI umumnya
-1 0 1
-2 0 2
-1 0 1
-1 -2 -1
0 0 0
(30)
bagaimana kerjanya. Sampai saat ini, jika kita membicarakan pemrograman berorientasi visual, yang ada di benak kita adalah sederetan bahasa pemrograman, seperti visual basic, Delphi, visual C++, visual Fox Pro, dan lainnya yang memang didesai secara khusus untuk itu. Matlab merintis ke arah pemrograman yang menggunakan GUI dimulai dari versi 5, yang terus disempurnakan sampai sekarang. GUIDE Matlab mempunyai kelebihan tersendiri dibandingkan dengan bahasa pemrogram lainnya, diantaranya:
a) GUIDE Matlab banyak digunakan dan cocok untuk aplikasi-aplikasi berorientasi sains, sehingga banyak peneliti dan mahasiswa menggunakan GUIDE Matlab untuk menyelesaikan riset atau tugas akhirnya.
b) GUIDE Matlab mempunyai fungsi built-in yang siap digunakan dan pemakai tidak perlu repot membuatnya sendiri. c) Ukuran file, baik FIG-file maupun M-file, yang dihasilkan relatif kecil.
d) Kemampuan grafisnya cukup andal dan tidak kalah dibandingkan dengan bahasa pemrograman lainnya.
Memulai GUIDE MATLAB
a) Melalui command matlab dengan mengetikkan: >> guide b) Klik tombol Start Matlab dan pilihlah MATLAB, lalu pilih
GUIDE (GUI Bulder) GUIDE Quick Start memiliki dua buah pilihan, yaitu Create New GUI dan Open Existing GUI. Create
(31)
New GUI digunakan jika kita memang belum pernah membuat aplikasi GUI Matlab atau jika kita memang ingin membuat sebuah figure baru, sedangkan Open Existing GUI digunakan jika kita sudah memiliki file figure matlab atau akan memodifikasi file figure yang telah kita simpan. Pada pilihan Create New GUI terdapat menu GUIDE templates yang memiliki beberapa tipe dasar dari GUI, sehingga kita dapat melakukan modifikasi pada template agar menjadi GUI seperti yang kita harapkan. Sebagai pemula, kita gunakan Blank GUI (Default) yang merupakan sebuah GUI dengan figure kosong dan merupakan kondisi default dari GUIDE dan diplih jika kita memang akan membuat sebuah aplikasi dengan komponen yang layout-nya tidak terdapat pada GUI template yang lain. Setelah kita memilih Blank GUI templates, maka akan muncul tampilan Menu Utama GUIDE.
Tampilan GUIDE
Komponen palet pada GUIDE Matlab terdiri dari beberapa uicontrol (kontrol user interface), seperti pada bahasa pemrograman visual lainnya, yaitu: pushbutton, togglebutton, radiobutton, chexkboxes, edit text, static text, slider, frames, listboxes, popup menu, dan axes. Kita dapat meletakkan semua kontrol pada layout editor dan selanjutnya hanya tinggal mengaturnya melalui property inspector.
(32)
Semua kontrol pada GUIDE dapat dimunculkan pada layout/figure dengan cara mendrag kiri kontrol yang diinginkan ke figure. Adapun penjelasan fungsi masing-masing kontrol adalah sebagai berikut:
Pushbutton
Pushbutton merupakan jenis kontrol berupa tombol tekan yang akan menghasilkan tindakan jika diklik, misanya tombol OK, Cancel, Hitung, Hapus, dan sebagainya. Untuk menampilkan tulisan pada pushbutton kita dapat mengaturnya melalui property inspector dengan mengklik obeyek pushbutton pada figure, lalu mengklik toolbar property inspector atau menggunakan klik kanan lalu pilih property inspector. Selanjutnya isilaha tab string dengan label yang diinginkan, misalnya Hitung.
Toggle Button
Toggle button memiliki fungsi yang sama dengan pushbutton. Perbedaanya adalah saat pushbutton ditekan, maka tombol akan kembali pada posisi semula jika tombol mouse dilepas, sedangkan pada toggle button, tombol tidak akan kembali ke posisi semula, kecuali kita menekannya kembali.
Radio Button
Radio button digunakan untuk memilih atau menandai satu pilihan dari beberapa pilihan yang ada. Misalnya, sewaktu kita
(33)
membuat aplikasi operasi Matematika (penjumlahan, pengurangan, perkalian, dan pembagian).
Edit Text dan Static Text
Edit text digunakan untuk memasukkan atau memodifikasi suatu text yang diinputkan dari keyboard, sedangkan static text hanya berguna untuk menampilkan text/tulisan, sehingga kita tidak bisa memodifikasi/mengedit text tersebut kecuali memalui property inspector.
Frames
Frames merupakan kotak tertutup yang dapat digunakan untuk mengelompokkan kontrol-kontrol yang berhubungan. Tidak seperti kontrol lainnya, frames tidak memiliki rutin callback.
Checkboxes
Kontrol checkboxes berguna jika kita menyediakan beberapa pilihan mandiri atau tidak bergantung dengan pilihan-pilihan lainnya. Contoh aplikasi penggunaan checkboxes adalah ketika kita diminta untuk memilih hobi. Karena hobi bisa lebih dari satu, maka kita dapat mengklik checkboxes lebih dari satu kali.
Slider
Slider berguna jika kita menginginkan inputan nilai tidak menggunakan keyboarad, tatapi hanya dengan cara menggeser slider secara vertical maupun horizontal ke nilai yang kita
(34)
sendiri nilai max, nilai min, serta sliderstep.
Popup Menu
Popop menu berguna menampilkan daftar pilihan yang didefinisikan pada String Propoerty ketika mengklik tanda panah pada aplikasi dan memiliki fungsi yang sama seperti radio button. Ketika tida dibukak, popup menu hanya menampilkan satu item yang menjadi pilihan pertama pada String Property. Popupmenu sangat bermanfaat ketika kita ingin memberi sebuah pilihan tanpa jarak, tidak seperti radiobutton.
Axes
Axes berguna untuk menampilkan sebuah grafik atau gambar (image). Axes sebenarnya tidak masuk dalam UIControl, tetapi axes dapat deprogram agar pemakai dapat berinteraksi dengan axes dan obyek grafik yang ditampilkan melalui axes.
2.10.1 Membuat GUI dengan MATLAB
MATLAB mengimplementasikan GUI sebagai sebuah figure yang berisi barbagai style obyek UIControl. Selanjutnya kita harus memprogram masing-masing obyek agar dapat bekerja ketika diaktifkan oleh pemakai GUI. Langkah dasar yang harus dikerjakan dalam membuat GUI adalah :
(35)
a) Mengatur layout komponen GUI
Setelah kita membuka GUIDE Matlab dan telah menentukan template GUI, langkah selanjutnya adalah adalah mendesai figure dengan menggunakan komponen palet sesuai dengan kebutuhan, seperti p ushbutton, radiobutton, chexkboxes, edit text, static text, slider, frames, popup menu, axes, dan sebagainya. Selanjutnya kita dapat mengatur layout masing-masing komponen, baik string(caption), font, color, size, dan sebagainya menggunakan property inspector. Jika kita telah selesai mendesain, jangan lupa untuk menyimpan file figure yang secara default akan memiliki ekstensi *.fig. Dari sini, matlab secara otomatis akan membuatkan sebuah m-file dengan nama yang sama, yaitu file berekstensi *.m.
b) Memprogram Komponen GUI
M-file yang telah dibuat pada langkah sebelumnya, akan otomatis terbuka dan kita harus menulis programnya agar komponen kontrol dapat bekerja secara simultan. Untuk membuat program dalam m-file kita cukup memperhatikan fungsi-fungsi matlab bertanda callback dimana perintah disispkan. Dari langah-langkah dasar diatas, secara sederhana sebenarnya GUI Matlab dibentuk oleh dua buah file, yaitu fig-file dan m-file. Matlab
(36)
Menurut Abidin (2009), preccion adalah jumlah sampel berkategori positif diklasifikasi benar dibagi dengan total sampel yang diklasifikasi sebagai sample positif. Sedangkan recall merupakan jumlah sampel diklasifikasi positif dibagi total sampel dalam testing set berkategori positif. Dari uji program dilakukan proses perhitungan preccion dan recall untuk mengetahui berapa hasil akurat dari aplikasi yang telah dibuat. Maka dari itu digunakan rumus sebagai berikut:
Recall = [a/ (a+c)] x 100% Precision = [a/ (a+b)] x 100%
2.12 Flowchart
Flowchart adalah representasi grafik dari langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan simbol, dimana masing-masing simbol merepresentasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan input, pemrosesan input, dan diakhiri dengan penampilan output.
Relevan Tidak Relevan
Ditemukan a(hit) b(noise)
(37)
Input Output Proses
Gambar 2.10 siklus I-P-O
Penerimaan input, pemrosesan input, dan penampilan output merupakan kegiatan utama yang membentuk siklus dari semua kegiatan yang dilakukan oleh komputer. Siklus ini disebut dengan siklus I-P-O (Input-Proses-Output).
2.13 Simbol-simbol flowchart
Flowchart terdiri atas sekumpulan simbol dan masing-masing simbol merepresentasikan suatu kegiatan tertentu. Berikut ini akan dibahas tentang simbol-simbol yang digunakan dalam menyusun flowchart, kegiatan yang diwakili serta aturan main yang diterapkan dalam penggunaan simbol tersebut. 1) Simbol input
Simbol input digambarkan dengan bangun jajar genjang. Simbol ini digunakan untuk melambangkan kegiatan penerimaan input. Dalam simbol ini, kita dapat menuliskan input yang diperlukan pada suatu waktu secara satu per satu maupun secara keseluruhan, tetapi biasanya input yang dimasukkan pada suatu waktu, dituliskan bersamaan secara keseluruhan dengan tujuan efisiensi ruang gambar.
(38)
Gambar 2.11 simbol input
2) Simbol proses
Simbol proses digambarkan dengan bangun persegi panjang. Simbol ini digunakan untuk melambangkan kegiatan pemrosesan input. Dalam simbol ini, kita dapat menuliskan operasi-operasi yang dikenakan pada input, maupun operasi lainnya. Sama seperti aturan pada simbol input, penulisan dapat dilakukan secara satu per satu maupun secara keseluruhan.
Gambar 2.12 simbol proses 3) Simbol output
Simbol output digambarkan dengan bangun seperti Gambar 2.9 Simbol ini digunakan untuk melambangkan kegiatan penampilan output. Dalam simbol ini, kita dapat menuliskan semua output yang harus ditampilkan oleh program. Sama seperti aturan pada dua simbol sebelumnya, penulisan dapat dilakukan secara satu per satu maupun secara keseluruhan.
(39)
Gambar 2.13 simbol output / display 4) Simbol percabangan
Simbol percabangan digambarkan dengan bangun belah ketupat.Simbol ini digunakan untuk melambangkan percabangan, yaitu pemeriksaan terhadap suatu kondisi.Dalam simbol ini, kita menuliskan keadaan yang harus dipenuhi.Hasil dari pemeriksaan dalam simbol ini adalah YES atau NO.Jika pemeriksaan menghasilkan keadaan benar, maka jalur yang harus dipilih adalah jalur yang berlabel Yes, sedangkan jika pemeriksaan menghasilkan keadaan salah, maka jalur yang harus dipilih adalah jalur yang berlabel No.Berbeda dengan aturan pada tiga simbol sebelumnya, penulisan keadaan dilakukan secara satu per satu.
Gambar 2.14 simbol percabangan 5) Simbol prosedur
Simbol prosedur digambarkan dengan bangun seperti Gambar 2.11. Simbol ini berperan sebagai blok pembangun dari suatu program. Prosedur memiliki suatu flowchart yang berdiri sendiri diluar flowchart utama. Jadi dalam simbol ini, kita cukup menuliskan nama prosedurnya saja, jadi sama seperti jika kita melakukan pemanggilan suatu prosedur pada program utama (main program). Penulisan nama prosedur dilakukan secara satu per satu.
(40)
Gambar 2.15 simbol prosedur 6) Simbol garis alir
Simbol garis alir atau flow lines digambarkan dengan anak panah. simbol ini digunakan untuk menghubungkan setiap langkah dalam flowchart dan menunjukkan kemana arah aliran diagram. Anak panah ini harus mempunyai arah dari kiri ke kanan atau dari atas ke bawah.Anak panah ini juga dapat diberi label, khususnya jika keluar dari simbol percabangan.
Gambar 2.16 simbol garis alir 7) Simbol terminator
Simbol terminator digambarkan dengan bangun seperti Gambar 2.13 terminator berfungsi untuk menandai awal dan akhir dari suatu flowchart. Simbol ini biasanya diberi label START untuk menandai awal dari flowchart, dan labelSTOP untuk menandai akhir dari flowchart. Jadi dalam sebuah flowchart pasti terdapat sepasang terminator yaitu terminator start dan stop.
Gambar 2.17 simbol terminator 8) Simbol konektor
Simbol konektor digunakan untuk menghubungkan suatu langkah dengan langkah lain dalam sebuah flowchart dengan keadaan on page atau off page.
(41)
On page connector digunakan untuk menghubungkan suatu langkah dengan langkah lain dari flowchart dalam satu halaman, sedangkan off page connector digunakan untuk menghubungkan suatu langkah dengan langkah lain dari flowchart dalam halaman yang berbeda. Connector ini biasanya dipakai saat media yang kita gunakan untuk menggambar flowchart tidak cukup luas untuk memuat gambar secara utuh, jadi perlu dipisahpisahkan. Dalam sepasang connector biasanya diberi label tertentu yang sama agar lebih mudah diketahui pasangannya.
Gambar 2.18 simbol On-Page Connector
Gambar 2.19 simbol Off-Page Connector 9. Simbol komentar
eSimbol komentar atau annotation digunakan untuk menuliskan komentar atau keterangan yang dirasa penting. Dalam simbol ini, kita dapat menuliskan komentar apapun dan sebanyak apapun,
(42)
(43)
METODOLOGI PENELITIAN
Pada bab ini akan dibahas proses pembuatan aplikasi deteksi tepi citra untuk mengukur luas tambak dari citra google satelit dengan menggunakan metode deteksi tepi sobel. Proses perancangan aplikasi dalam sub-bab ini akan dibagi menjadi beberapa tahap antara lain : analisis, gambaran aplikasi secara umum, perancangan proses.
3.1 Data Set
No Gambar Jarak Pengambilan Keterangan
1
Tinggi: 100 meter Pengambilan dilakukan daerah ketintang dengan model bangunan yang sama.
2
Tinggi: 100 meter Pengambilan dilakukan daerah Galaxy Bumi Permai dengan model bangunan yang tidak beraturan. 3
Tinggi: 100 meter Pengambilan dilakukan daerah Kertajaya dengan model bangunan yang tidak beraturan.
(44)
4
Tinggi: 100 meter Pengambilan dilakukan daerah Margerejo dengan model bangunan yang tidak beraturan dan lebih memilki kepadatan yang cukup banyak. 5
Tinggi: 100 meter Pengambilan dilakukan daerah KANWA dengan model bangunan yang sama.
6
Tinggi: 100 meter Pengambilan dilakukan daerah perumahan dengan model bangunan yang sama. 7
Tinggi: 100 meter Pengambilan dilakukan daerah Margerejo dengan model bangunan yang sama.
(45)
3.2 Analisa Sistem
Aplikasi yang akan dibuat untuk menghitung jumlah bangunan dari citra google satelit dengan menggunakan metode deteksi tepi sobel bahasa pemrograman Matlab. Citra diambil dengan menggunakan google satelit dengan ketinggian skala 200:100 meter, kemudian proses selanjutnya adalah grayscale, peningkatan mutu citra, sobel, dilasi, erosi, closing, invers, clearborder. Proses awal yang digunakan dalam image processing adalah mengubah citra berwarna ke grayscale. Grayscale merupakan proses pengolahan citra dengan cara mengubah nilai-nilai piksel awal citra menjadi sebuah citra keabuan. Hasil dari proses grayscale yang telah kita lakukan, selanjutnya akan dijadikan peningkatan mutu citra. Peningkatan mutu citra dilakukan untuk mencerahkan suatu objek lalu dilakukan deteksi tepi sobel merupakan proses dari sebuah konvolusi yang telah di tetapkan terhadap citra yang terdeteksi setelah itu dilakukan proses dilasi supaya garis yang terputus pada objek akan tersambung setelah garis-garis objek yang tersambung dilakukan proses closing. Closing adalah mengisi lubang kecil pada objek, menggabungkan objek-objek yang berdekatan, dan signifikan. Pada tahap selanjutnya dilakukan tahap invers supaya dapat menghitung pixel putih pada area objek untuk mendapatkan hasil yang akan diketahui, ditambahakan clearborder digunakan untuk menghilangkan pixel putih yang tidak utuh dan perhitungan ini menggunakan bwlabel sebagai perhitungan jumlah piel putih putihnya.
(46)
START
Open
Image
Greyscale
Sharping
Deteksi
Sobel
Dilasi
Closing
Invers
Clearborder
End
Hitung
(47)
Start Tetapkan Nilai MatrikSobel Ambil Width dan High Hitung piksel Horizontal dan Vertikal
Hasil = piksel horisontal + vertikal Hasil>128 piksel Hitam piksel Putih Cetak piksel Tidak Ya End Terpenuhi Width & High
Ya Tidak Citra Grayscale Image Sobel
(48)
melalui bebarapa proses yaitu meliputi : 1) Citra masukan berupa citra berwarna
2) Baca inputancitra yang akan diproses menjadi : Grayscale
Sharping
Deteksi Tepi Sobel Dilasi
Closing Invers Clearborder Hitung
3.Output
Melakukan pendeteksian tepi setelah proses grayscale, peningkatan mutu citra, deteksi tepi sobel, dilasi, closing, invers, clearborder. Citra keluaran akan berupa berapa piksel warna putih dan berapa hektar tambak. Pada implementasinya aplikasi ini melakukan pengambilan gambar sample memakai google satelit secara manual.
3.4 Perancangan Proses
Untuk mengetahui proses-proses yang dilakukan maka akan dijelaskan sebagai berikut :
(49)
3.4.1 Grayscale
Grayscale merupakan proses pengolahan citra dengan cara mengubah nilai-nilai piksel awal citra menjadi sebuah citra keabuan.
Start
I=image
gray=rgb2gray(I);
End
Gambar 3.4 Flowchart Grayscale
Langkah awal pada flowchart grayscale adalah citra masukan berwarna yang kemudian akan diproses menjadi citragrayscale. Citra keabuan adalah citra yang setiap pikselnya mengandung satu layer dimana nilai intensitasnya berada pada interval 0-255, sehingga nilai-nilai piksel pada citra keabuan tersebut dapat direpresentasikan dalam sebuah matriks yang dapat memudahkan proses perhitungan pada operasi berikutnya. Di dalam MATLAB untukmenggubahpiksel RGB ( Red Green Blue) menjadi skala keabu – abuan dengan menggunakan fungsi rgb2gray.
Gray=rgb2gray(I)
3.4.2 Sharping
Sharping dilakukan untuk memperoleh keindahan citra, kepentingan analisis citra, serta mengoreksi citra dari segala gangguan
(50)
dilakukan pertama adalah penapisan citra. Penapisan citra digunakan untuk menghilangkan derau yang terkandung dalam citra. Penapisan dilakukan dengan tapis median, yaitu tapis untuk menghilangkan derau salt-and-pepper. Tapis median yang digunakan adalah matriks berukuran 3x3. Perintah untuk menapis citra dari derau.
Start
I=image
gray=rgb2gray(I);
End
b=histeq(gray,64);
Gambar 3.5 Flowchart Sharping
Setelah proses grayscale langkah selanjutnya adalah peningkatan mutu citra. Peningkatan mutu citra dilakukan untuk memperoleh keindahan citra, kepentingan analisis citra, serta mengoreksi citra dari segala gangguan yang terjadi pada waktu perekaman data. Berikut ini adalah potongan baris program untuk peningkatan mutu citra.
(51)
3.4.3 Metode Sobel
Pada proses ini akan dideteksi tepi. Deteksi tepi yang digunakan adalah sobel. Kelebihan dari metode sobel ini adalah kemampuan untuk mengurangi noise sebelum melakukan perhitungan deteksi tepi.
Start
I=image
gray=rgb2gray(I);
End
b=histeq(gray,64);
c=edge(b,'sobel');
Gambar 3.6 Flowchart Sobel
Setelah proses peningkatan mutu citra langkah selanjutnya adalah deteksi tepi. Metode yang digunakan adalah metode sobel. Operator sobel adalah operator yang paling banyak digunakan sebagai pelacak tepi karena kesederhanaan dan keampuhannya. Matriks yang digunakan adalah 3x3. Proses sobel ini, dilakukan dua penghitungan yaitu vertical dan horizontal. Berikut ini adalah potongan baris program untuk deteksi tepi Sobel.
(52)
Pada proses ini akan dilasi. Dilasi merupakan proses penumbuhan atau penebalan dalam citra biner. Pengertian penebalan ini dikontrol oeleh bentuk strel.
Start
I=image
gray=rgb2gray(I);
End b=histeq(gray,64);
c=edge(b,'sobel');
d= strel ('disk',3); e= imdilate(c,d);
Gambar 3.7 Flowchart Dilasi
Pada flowchart 3.5 adalah proses dari dilasi. Setelah memproses metode deteksi tepi sobel kemudian akan diproses dilasi. Proses ini menyambung garis pada objek.
d= strel ('disk',3);
(53)
3.4.5 Closing
Pada proses ini akan diclosing. Closing adalah menolak pecahan-pecahan sempit dan teluk yang panjang dan tipis, menghilangkan lubang kecil dan mengisi gap pada garis-garis bentuk.
Start
I=image
gray=rgb2gray(I);
End
b=histeq(gray,64);
c=edge(b,'sobel');
d= strel ('disk',3); e= imdilate(c,d); h= strel
('disk',13); i=imclose(e,h);
Gambar 3.8 Flowchart Closing
Setelah didapatkan citra objek yang tersambung kemudian dilakukan tahap closing. Pada tahap ini yang digunakan adalah closing. Berikut adalah potongan baris program closing.
h= strel ('disk',13);
(54)
Pada proses ini akan diinvers. Invers adalah merubah sebuah objek dari hitam ke putih dirubah menjadi putih ke hitam sehingga akan mendapatkan nilai pixel putih dalam objek tersebut,. Berikut adalah proses invers
Start
I=image
gray=rgb2gray(I);
End
b=histeq(gray,64);
c=edge(b,'sobel');
d= strel ('disk',3); e= imdilate(c,d); h= strel
('disk',13); i=imclose(e,h); x=imcomplement (d);
Gambar 3.9 Flowchart Invers
Setelah dilakukan tahap closing kemudian dilakukan tahap invers. Pada tahap ini yang digunakan adalah invers. Berikut adalah potongan baris program invers.
(55)
3.4.7 Clearborder
Pada proses ini akan clearborder. Clearborder adalah menghilangkan obyek yang setengah tampil atau menghilangkan obyek di pinggir yang tidak utuh.
Start
I=image
gray=rgb2gray(I);
End
a=medfilt2(gray,[3 3]);
BW=edge(a,'sobel');
se= strel ('disk',1); b= imdilate(BW,se); se= strel ('disk',6); d= imclose(b,se); x=imcomplement (d);
k=imclearborder(j,4);
Gambar 3.10 Flowchart clearborder
Setelah dilakukan tahap invers kemudian dilakukan tahap clearborder. Pada tahap ini yang digunakan adalah clearborder . Berikut adalah potongan baris program clearborder.
(56)
Pada proses ini akan dihitung jumlah rumah dengan rumus Bwlabel. BWlabel adalah menghitung jumlah obyek putih.
Start
I=image
gray=rgb2gray(I);
End
a=medfilt2(gray,[3 3]);
BW=edge(a,'sobel');
se= strel ('disk',1); b= imdilate(BW,se); se= strel ('disk',6); d= imclose(b,se); x=imcomplement (d);
k=imclearborder(j,4);
L=bwlabel(k,4); n=max(L(:));
Gambar 3.11 Flowchart Hitung
Setelah dilakukan tahap clearborder kemudian dilakukan tahap Hitung. Berikut adalah potongan baris program Hitung.
L=bwlabel(k,4);
(57)
3.5 Evaluasi
Evaluasi pada penelitian ini adalah evaluasi yang dapat membandingkan hasil uji program dengan hasil image yang telah di photoshop untuk mengetahui berapa persenkah kemiripan uji program dengan image sebenarnya
Hasil: -
Bangunan Bukan Bangunan
Bangunan A B
Bukan Bangunan C D
Keterangan:
A=Bangunan terdeteksi bangunan
B=Bukan bangunan tapi tedeteksi bangunan C=Bangunan tapi tidak terdeteksi bangunan
(58)
Hasil: 4
Rumah Bukan Rumah
Rumah 5 0
Bukan Rumah 0 0
Presin=5/(5+0)=1x100%=100%
Recal=5/(5+0)=1x100%=100%
Data Rumah 2
Hasil: 11
Rumah Bukan Rumah
Rumah 10 1
Bukan Rumah 0 0
Presin=10/(10+1)=x100%=90,9%
(59)
Data Rumah 3
Hasil: 17
Rumah Bukan Rumah
Rumah 17 0
Bukan Rumah 0 0
Presin=17/(17+0)=1x100%=100%
Recal=17/(17+0)=1x100%=100%
Data Rumah 4
Hasil: 38
Rumah Bukan Rumah
Rumah 35 3
Bukan Rumah 0 0
Presin=35/(35+0)=1 x100%=100%
(60)
Hasil: 8
Rumah Bukan Rumah
Rumah 8 0
Bukan Rumah 0 0
Presin=8/(8+0)=1x100%=100%
Recal=8/(8+0)=1x100%=100%
Data Rumah 6
Hasil: 14
Rumah Bukan Rumah
Rumah 12 0
Bukan Rumah 2 0
Presin=12/(12+0)=1x100%=81,8%
(61)
Data Rumah 7
Hasil: 46
Rumah Bukan Rumah
Rumah 38 6
Bukan Rumah 2 0
Presin=38/(38+6)=0,86x100%=86%
Recal=38/(38+2)=0,95x100%=95%
3.6 PerancanganTampilan Antarmuka
Pada perancangan antarmuka yang akan dibuat sedemikian rupa yang nantinya merupakan suatu halaman untuk berinteraksi bagi pemakai/ pengguna program dan diharapkan dapat memahami jalan kerja program dengan mudah. Dalam membuat program deteksi tepi akan dirancang tampilan GUI maka akan menghasilkan 2 file yaitu namafile.fig dimana GUI disimpan dan namafile.m dimana eksekusi program terkumpul. Masing-masing fig-file ini menghasilkan m-file dengan nama yang sama. Berikut adalah table yang berisi perancangan dalam pembuatan program deteksi tepi:
(62)
GG Static text DeteksiTepi
Citra… Judul
Axes (1) - Menampilkan Citra
Text Information Pixel
MenampilkanTulisan
Edit text - Menampilkan Hasil Perhitungan
Push button Load Membuka File
Push button Proses Menjalankan Program (gray-scale,Sharpening, sobel, dilasi, closing, invers, clearborder)
Push button Pixel Menjalankan Jumlah Pixel
Exit Keluar Keluar
Axes (2) - Menampilkan Citra
Axes (3) - Menampilkan Citra
Axes (4) - Menampilkan Citra
Axes (5) - Menampilkan Citra
Axes (6) - Menampilkan Citra
Axes (7) - Menampilkan Citra
Axes (8) - Menampilkan Citra Tabel 3.1 Perancangan Program Deteksi Tepi
Aplikasi antar muka tersebut diharapkan dapat memudahkan pengguna dalam memahami dan menggunakan setiap fungsi – fungsi tombol yang tersedia. Dalam tombol Load yang berfungsi untuk menggambil gambar yang tersimpan, gambar yang tersimpan hanyalah format jpg, bmp, png untuk ditampilkan sebelum melanjutkan ke proses selanjutnya.
(63)
Gambar 3.12 Tampilan GUI Deteksi Tepi
3.7 Jadwal Kegiatan
No. Kegiatan Februari Maret April Mei
1 Studi Pustaka V V
2 Pengumpulan
Bahan dan data V V
3 Perancangan
Sistem V V
4 Koding V V V
5 Uji Coba dan
Analisa V V
6 Pembuatan
(64)
54
Pada bab IV ini akan dijelaskan mengenai implementasi, hasil uji coba dan evaluasi dari rancangan program yang telah dibuat pada bab III. Bagian implementasi aplikasi kali ini meliputi: lingkungan implementasi, implementasi data, implementasi antarmuka dan implementasi proses.
4.1 Kebutuhan Hardware dan Software
Pada bagian ini akan dijelaskan mengenai perangkat keras dan perangkat lunak yang digunakan pada implementasi aplikasi ini.
KebutuhanHardware :
Komputer dengan processor Intel(R) Core(TM)i5-2430m CPU @
2,40GHz
RAM (4000MB)
VGA Card share memory up to 2000 MegaByte Monitor 14”
Hard Disk 500 GigaByte
KebutuhanSoftware :
Sistem OperasiWindows 7. Matlab 7.9.0
(65)
4.2 Implementasi Data
Seperti yang telah dijelaskan secara konseptual pada Bab 3, maka data yang akan diimplementasikan pada aplikasi ini berupa gambar-gambar Bangunan yang telah diambil melalui google satelit yang nantinya akan diproses melalui beberapa tahapan. Dimana output berupa jumlah bangunan.
4.3. Implementasi Antarmuka
Pada implementasi antarmuka ini merupakan interaksi antara pemakai (user) dengan system. Halaman form utama ini merupakan tampilan awal saat program dijalankan. Pada form utama ini terdapat program secara keseluruhan beserta dengan prosedur-prosedur programnya. Pada masing – masing menu memiliki fungsi yang berbeda – beda pada aplikasi ini. Berikut penjelasan dari setiap form pada menu utama ini :
a. Load : untuk membuka file yang akan diproses. b. Proses : untuk melakukan proses deteksi tepi. c. Pixel : untuk melakukan proses jumlah pixel d. Hitung : untuk menampilkan perhitungan
(66)
Gambar 4.1Tampilan Implementasi Awal
Pada tampilan form utama ini terdapat9 kolom yang mempunyai fungsi berbeda-beda. Kolom pertama dengan nama image berfungsi untuk menampilkan image yang akan diproses. Kolom kedua dengan nama grayscale berfungsi untuk merubah citra yang berwarna menjadi keabu-abuan. Kolom ketiga adalah kolom dengan nama Sharping, yaitu sebuah kolom yang menampilkan hasil dari grayscale. Kolom keempat diberi nama sobel yaitu sebuah kolom yang menampilkan hasil deteksi tepi dari metode sobel. Kolom kelima adalah dilasi sebuah kolom yang menampilkan hasil dari metode deteksi sobel lalu di proses ke dilasi untuk penumbuhan atau penebalan dalam citra biner. Kolom keenam adalah closing sebuah kolom yang menampilkan hasil proses closing. Kolom ketujuh adalah invers sebuah kolom yang menampilkan hasil proses invers. Kolom kedelapan erosi adalah sebuah kolom yang menghilangkan obyek yang ada pada tepi figure. Kolom berisikan angka 5 ada hasil perhitungan yang muncul setelah kita melakukan proses dan menekan tombol hitung.
(67)
4. 4 Implementasi Proses
Bagian implementasi proses ini menjelaskan mengenai implementasi proses-proses sesuai dengan konsep yang telah dibuat pada bab 3. Seperti yang telah digambarkan dalam flowchart.
4.4.1 Proses Load
Pada proses load ini, yaitu merupakan sebuah proses yang bertujuan untuk menampilkan inputan berupa gambar. Gambar yang dapat dibuka hanya gambar yang berformat jpg, bmp, png, tif.
Gambar 4.2Source code proses load image
4.4.2 Proses Program
Pada tahap selanjutnya dilakukan proses, image yang berwarna citra RGB akan dirubah menjadi grayscale terlebih dahulu baru setelah itu dilakukan proses peningkatan, deteksi tepi sobel untuk mengubah citra menjadi hitam putih, lalu dilakukan proses dilasi
(68)
mempermudah proses pendeteksian tepi.
function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA) %greyscale
proyek=guidata(gcbo);
I=get(proyek.axes1,'userdata'); gray=rgb2gray(I);
set(proyek.figure1,'CurrentAxes',proyek.axes2); set(imshow(gray));
%penajaman b=histeq(gray,64);
set(proyek.figure1,'CurrentAxes',proyek.axes3); set(imshow(b));
%sobel
c=edge(b,'sobel');
set(proyek.figure1,'CurrentAxes',proyek.axes4); set(imshow(c));
%dilasi
d= strel ('disk',3); e= imdilate(c,d);
set(proyek.figure1,'CurrentAxes',proyek.axes5);
(69)
%closing
h= strel ('disk',13); i=imclose(e,h);
set(proyek.figure1,'CurrentAxes',proyek.axes6); set(imshow(i));
%invers
j=imcomplement(i);
set(proyek.figure1,'CurrentAxes',proyek.axes7); set(imshow(j));
%clearboder
k=imclearborder(j,4);
set(proyek.figure1,'CurrentAxes',proyek.axes8); set(imshow(k));
set(proyek.axes1,'userdata',I);
Gambar 4.3Source Code Proses Progam
4.4.3 Proses Hitung
Berikut adalah source code dari proses Hitung :
%greyscale gray=rgb2gray(I); %Sharp
b=histeq(gray,64); %Diteksi sobel c=edge(b,'sobel'); %dilasi
(70)
%Closing
h= strel ('disk',13); i=imclose(e,h); %invers
j=imcomplement(i); %clearborder
k=imclearborder(j,4); %perhitungan bwlabel L=bwlabel(k,4); n=max(L(:));
set(proyek.edit1,'string',n);
Gambar 4.4 Source Code Proses Hitung
4.5 Uji Coba Program
Pada sub bab ini akan dibajhas mengenai uji coba terhadap aplikasi yang telah dibuat dan selanjutnya akan dievaluasi dari hasil uji coba tersebut. Uji coba dilaksanakan untuk kemampuan aplikasi dapat berjalan dengan baik sesuai dengan rancangan. Evaluasi dilakukan untuk menentukan tingkat keberhasilan daroi aplikasi yang dibuat.
4.5.1 Skenario Uji Coba
Untuk memastikan bahwa aplikasi ini berjalan dengan baik, diperlukan adanya skenario yang akan dicoba, antara lain :
(71)
a. Memasukkan beberapa image untuk melihat perbedaan keberhasilan, karena tiap-tiap image hasil Perolehan image dari satelite digital selalu berbeda, hal itu dipengaruhi oleh jarak ambil, serta kondisi objek gambar yang akan diambil, saat pemrosesan berlangsung dan adapun kemiripan obyek yang dinyatakan dalam satau bangunan.
b. Melakukan proses Greyscale, merubah gambar berwarna menjadi keabuan untuk mempermudah mencari garis tepi.
c. Melakukan proses Sharphing, memberikan tingkat ketajamahan yang lebih besar pada gambar.
d. Melakukan proses edge detection, mencari garis tepi obyek yang akan di hitung .
e. Melakukan proses Dilasi, memberi ketebalan pada garis tepi. f. Melakukan closing, menutup garis tepi yang tidak bersambungan g. Melakukan invers, memerubah citra putih menjadi hitam dan hitam
menjadi putih digunakan untuk mempermudah perhitungan.
h. Melakukan clearborder, menghilang semua obyek yang berada dipinggir
i. Setelah itu dilakukannya perhitungan dari semua skanario diatas.
4.5.2 Pelaksanaan Ujicoba
Ini tampilan awal dari aplikasi dan dibuat sebuah perhitungan preccion dan recall sebagai berikut:
(72)
Gambar 4.5 Pelaksanaan Uji coba
Hasil= 11
Bangunan Bukan Bangunan
Bangunan 10 1
Bukan bangunan 0 0
Presin=10/(10+1)=0,9090x100%=90,9%
Recal=10/(10+0)=1x100%=100%
Pada proses melakukan uji coba aplikasi progam tidak dapat membaca bangunan di karenakan rumah sangat berdekatan maka di
(73)
hitung satu dan bukan bangunan terhitung dikarenakan adanya garis tepi pada pemrosesan.
No Citra Hasil Progam Citra Ideal Evaluasi Jumlah
Bangunan
1
precessen
100%
Recall
100%
Hasil Progam
5
Ideal
5
2 90,9% 100% 10 11
(74)
4 100% 89,7% 35 38
5 100% 100% 8 8
6
81,8% 85% 12 14
7
86% 95% 38 46
Rata-Rata 9,1% 95,67%
(75)
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Setelah penulis melakukan analisa dan pembahasan mengenai perhitungan kepadatan bangunan, maka pada bab penutup ini akan diambil kesimpulan serta saran pengembangan dari tugas akhir “Menghitung Banyak Kepadatan Bangunan di Suatu Wilayah pada Citra Google Satelit dengan Menggunakan Metode Deteksi Tepi Sobel” ini.
a. Menghitung banyak bangunan di suatu wilayah pada citra google satelit dengan menggunakan metode deteksi tepi sobel memberikan kemudahan kepada masyarakat untuk dapat mengetahui dari hasil yang di dapat di program antara 1-10 dianggap tidak padat, 10-20 dianggap sedang, dan lebih 20 dianggap padat
b. Membuat aplikasi yang dapat membantu dalam menghitung kepadatan bangunan seperti pemanfaatan lahan dengan ketinggian 100m.
c. Dari beberapa hasil uji program dapat menemukan hasil rata-rata preccion 9,1%dan recall 95,67%untuk mengetahui hasil keakuratan dari hasil uji program tersebut.
(76)
Ada beberapa saran yang penulis berikan setelah menyelesaikan “Menghitung jumlah bangunan dengan metode deteksi tepi Sobel” antara lain :
1. Bagi Pembuatan Aplikasi Selanjutnya
Pembuatan Aplikas ini diharapkan sebagai dasar acuan apabila digunakan untuk Pembuatan Aplikasi selanjutnya tentang pembuatan Menghitung jumlah bangunan dengan metode deteksi tepi Sobel, agarl Pembuatan aplikasi selanjutnya lebih sempurna dan diharapkan dapat diterapkan di metode yang lain.
2. Bagi tempat Pembuatan aplikasi
Diharapkan pemilik dapat menggunakan Aplikasi ini secara
maksimal dan dapat dijalankan dengan baik mengetahui jumlah bangunan.
3. Bagi institusi pendidikan
Pembuatan aplikasi ini diharapakan dapat dijadikan sumber perpustakaan baru bagi perkembangan di jurusan Teknik Informatika yang mengarah pada Pembuatan Aplikasi Menghitung jumlah bangunan dengan metode deteksi tepi Sobel dengan menggunakan pemrogaman Matlab
(77)
Prasetyo Eko. Pengolahan Citra Digital Dan Aplikasinya Menggunakan Matlab.Yogyakarta:Andi: 2012.
Sumber: http://komputa.if.unikom.ac.id/jurnal/analisis-intensitas-metode
Diakses pada tanggal 1 February 2013
Sumber: http://id.pdfsb.com/operasi+morfologi+citra+digital+matlab
Diakses tanggal 02 February 2013
Sumber: http://www.scribd.com/doc/47932771/Dilasi-Dan-Erosi
Diakses tanggal 03 February 2013 pukul 20.00
Sumber: http://www.mathworks.com/help/images/ref/imhist.html
Diakses tanggal 04 February 2012 pukul 22.45
Sumber: http://www.cyclismo.org/tutorial/matlab/if.html
Diakses tanggal 05 February 2012 pukul 22.00
Sumber: http://www.mathworks.com/help/images/ref/imclearborder.html
(1)
62
Gambar 4.5 Pelaksanaan Uji coba
Hasil= 11
Bangunan Bukan Bangunan
Bangunan 10 1
Bukan bangunan 0 0
Presin=10/(10+1)=0,9090x100%=90,9%
Recal=10/(10+0)=1x100%=100%
Pada proses melakukan uji coba aplikasi progam tidak dapat membaca bangunan di karenakan rumah sangat berdekatan maka di
(2)
hitung satu dan bukan bangunan terhitung dikarenakan adanya garis tepi pada pemrosesan.
No Citra Hasil Progam Citra Ideal Evaluasi Jumlah
Bangunan
1
precessen
100%
Recall
100%
Hasil Progam
5
Ideal
5
2 90,9% 100% 10 11
(3)
64
4 100% 89,7% 35 38
5 100% 100% 8 8
6
81,8% 85% 12 14
7
86% 95% 38 46
Rata-Rata 9,1% 95,67%
Tabel 4.1 Tabel Evaluasi
(4)
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Setelah penulis melakukan analisa dan pembahasan mengenai perhitungan kepadatan bangunan, maka pada bab penutup ini akan diambil
kesimpulan serta saran pengembangan dari tugas akhir “Menghitung Banyak Kepadatan Bangunan di Suatu Wilayah pada Citra Google Satelit
dengan Menggunakan Metode Deteksi Tepi Sobel” ini.
a. Menghitung banyak bangunan di suatu wilayah pada citra google
satelit dengan menggunakan metode deteksi tepi sobel memberikan kemudahan kepada masyarakat untuk dapat mengetahui dari hasil yang di dapat di program antara 1-10 dianggap tidak padat, 10-20 dianggap sedang, dan lebih 20 dianggap padat
b. Membuat aplikasi yang dapat membantu dalam menghitung kepadatan
bangunan seperti pemanfaatan lahan dengan ketinggian 100m.
c. Dari beberapa hasil uji program dapat menemukan hasil rata-rata
preccion 9,1%dan recall 95,67%untuk mengetahui hasil keakuratan dari hasil uji program tersebut.
(5)
66
5.2 Saran
Ada beberapa saran yang penulis berikan setelah menyelesaikan
“Menghitung jumlah bangunan dengan metode deteksi tepi Sobel” antara lain :
1. Bagi Pembuatan Aplikasi Selanjutnya
Pembuatan Aplikas ini diharapkan sebagai dasar acuan apabila digunakan untuk Pembuatan Aplikasi selanjutnya tentang pembuatan Menghitung jumlah bangunan dengan metode deteksi tepi Sobel, agarl Pembuatan aplikasi selanjutnya lebih sempurna dan diharapkan dapat diterapkan di metode yang lain.
2. Bagi tempat Pembuatan aplikasi
Diharapkan pemilik dapat menggunakan Aplikasi ini secara
maksimal dan dapat dijalankan dengan baik mengetahui jumlah bangunan.
3. Bagi institusi pendidikan
Pembuatan aplikasi ini diharapakan dapat dijadikan sumber perpustakaan baru bagi perkembangan di jurusan Teknik Informatika yang mengarah pada Pembuatan Aplikasi Menghitung jumlah bangunan dengan metode deteksi tepi Sobel dengan menggunakan pemrogaman Matlab
(6)
Prasetyo Eko. Pengolahan Citra Digital Dan Aplikasinya Menggunakan Matlab.Yogyakarta:Andi: 2012.
Sumber: http://komputa.if.unikom.ac.id/jurnal/analisis-intensitas-metode
Diakses pada tanggal 1 February 2013
Sumber: http://id.pdfsb.com/operasi+morfologi+citra+digital+matlab
Diakses tanggal 02 February 2013
Sumber: http://www.scribd.com/doc/47932771/Dilasi-Dan-Erosi
Diakses tanggal 03 February 2013 pukul 20.00
Sumber: http://www.mathworks.com/help/images/ref/imhist.html
Diakses tanggal 04 February 2012 pukul 22.45
Sumber: http://www.cyclismo.org/tutorial/matlab/if.html
Diakses tanggal 05 February 2012 pukul 22.00
Sumber: http://www.mathworks.com/help/images/ref/imclearborder.html