• Tidak ada hasil yang ditemukan

MENGHITUNG BANYAK KEPADATAN BANGUNAN DI SUATU WILAYAH PADA CITRA GOOGLE SATELIT DENGAN MENGGUNAKAN METODE DETEKSI TEPI SOBEL.

N/A
N/A
Protected

Academic year: 2017

Membagikan "MENGHITUNG BANYAK KEPADATAN BANGUNAN DI SUATU WILAYAH PADA CITRA GOOGLE SATELIT DENGAN MENGGUNAKAN METODE DETEKSI TEPI SOBEL."

Copied!
77
0
0

Teks penuh

(1)

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

(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

(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

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

(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

BAB II TINJAUAN PUSTAKA ... ...5

(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.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.

(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

(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

(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

(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

(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,

(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

(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

(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

(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

(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

(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

(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

(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

(27)

invers menghasilkan output x. f adalah fungsi yang domainnya

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,

(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

(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

(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

(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

(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

(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

(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

(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

(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

(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

(44)

4

Tinggi: 100 meter Pengambilan dilakukan daerah

Tinggi: 100 meter Pengambilan dilakukan daerah KANWA dengan model bangunan yang sama.

6

Tinggi: 100 meter Pengambilan dilakukan daerah

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

(46)

START

Open

Image

Greyscale

Sharping

Deteksi

Sobel

Dilasi

Closing

Invers

Clearborder

End

Hitung

(47)
(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

(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,

(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

(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

(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

(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

(69)

%closing

Gambar 4.3Source Code Proses Progam

4.4.3 Proses Hitung

Berikut adalah source code dari proses Hitung :

(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,

(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

(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

(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

(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

(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

Gambar

Tabel 2.2 Perhitungan Distribusi komulatif
Gambar 2.3 Inputan Citra
Gambar 2.4 Morfologi
Gambar 2.5 Dilasi
+7

Referensi

Dokumen terkait

Misalkan sebuah citra digital diwakili oleh sebuah matriks yang dengan M kolom dan N baris, dimana perpotongan antara baris dan kolom disebut piksel (piksel = picture element)

Dari gambar 10 terlihat kondisi citra yang berada di dalam pada gambar 9 sudah tidak terlihat atau sudah terhapus ini akibat dari operasi dilasi Proses

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