TUGAS AKHIR
Disusun oleh :
WAHYU SUBANDRIO
NPM. 0934010195
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
SEGMENTASI CITRA UNTUK MENGHITUNG LUAS PULAU
Disusun Oleh :
WAHYU SUBANDRIO
NPM. 0934010195
Telah disetujui mengikuti Ujian Negara Lisan
Gelombang IVTahun Akademik 2012/2013
Menyetujui,
Pembimbing Utama Pembimbing Pendamping
Fetty Tri Anggraeny S.kom ,M.Kom Faisal Muttaqin S.Kom
NPT. 382020602081 NPT. 389071303461
Mengetahui,
Ketua Program Studi Teknik Infor matika
Fakultas Teknologi Industri
SEGMENTASI CITRA UNTUK MENGHITUNG LUAS PULAU
Disusun Oleh :
WAHYU SUBANDRIO
NPM. 0934010195
Telah dipertahankan dihadapkan dan diterima oleh Tim Penguji Skr ipsi Pr ogram Studi Teknik Infor matika Fakultas Teknologi Industri
Univer sitas Pembangunan Nasional “Veteran” J awa Timur Pada Tanggal 20 Desember 2013
Mengetahui,
Dekan Fakultas Teknologi Industri
Univer sitas Pembangunan Nasional ”Veteran” J awa Timur
Ir. Sutiyono, MT
NIP. 19600713 198703 1 001 Pembimbing :
1.
Fetty Tri Anggraeny S.kom ,M.Kom
Jl. Rungkut Madya Gunung Anyar Surabaya 60294 Tlp. (031) 8706369, 8783189 Fax. (031) 8706372 Website. www.upnjatim.ac.id
KETERANGAN REVISI
Kami yang bertanda tangan di bawah ini menyatakan bahwa mahasiswa berikut :
Nama : Wahyu Subandrio
NPM : 0934010195
Program Studi : Teknik Informatika
Telah mengerjakan REVISI SKRIPSI Ujian Lisan Gelombang IV TA 2012/2013 dengan judul :
“ SEGMENTASI CITRA UNTUK MENGHITUNG LUAS PULAU “
Surabaya, 20 Desember 2013
Dosen penguji yang memeriksa revisi
1. Rizky Par lika, S.Kom, M.Kom
NPT. 384050702191 { }
2. Ir. Kartini, S.Kom, MT
NIP.196111101991032001 { }
3. Faisal Muttaqin, S.Kom
NPT.389071303461 { }
Mengetahui,
Pembimbing Utama Pembimbing Pendamping
Fetty Tri Anggraeny S.kom ,M.Kom Faisal Muttaqin, S.Kom
KATA PENGANTAR
Syukur Alhamdulillahi Rabbil ‘Alamin terucap ke hadirat Allah SWT atas
segala limpahan Kekuatan-Nya sehingga dengan segala keterbatasan waktu,
tenaga, pikiran dan keburutungan yang dimiliki peneliti, akhirnya peneliti dapat
menyelesaikan Skripsi Yang berjudul “Segmentasi Citr a Untuk Menghitung
Luas pulau” 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 emas 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, November 2013
Halaman
2.5. Pengolahan Citra Digital ... 15
2.5.1 Grayscale ... 17
2.5.2 Morfologi ... 18
2.5.6 Rekonstruksi ... 22
2.5.7 Invers ... 22
2.5.8 Segmentasi Citra ... 23
2.5.9 Deteksi Tepi ... 24
2.5.10Metode Canny. ... 27
2.6.Perhitungan Luas Dengan Sistem Grid ... 28
2.7.Matlab... 28
2.7.1 Kelengkapan pada Sistem MATLAB Sebagai sebuah system, MATLAB tersusun dari 5 bagian utama: ... 30
2.7.2. Gui / Guide Matlab ... 31
2.7.2.1 Membuat GUI dengan MATLAB. ... 32
BAB III METODOLOGI PENELITIAN ... 34
3.1. Data Set ... 34
3.2. Analisa Sistem ... 36
3.3. Gambaran Aplikasi secara Umum ... 37
3.3.1 Perancangan Proses. ... 39
3.4 Perancangan Tampilan Antarmuka. ... 48
BAB IV HASIL DAN PEMBAHASAN... 50
4.4. Implementasi Proses ... 52
4.4.1 Proses Pilih Input. ... 52
4.4.2 Segmentasi Dan Perhitungan Luas Pulau. ... 55
4.4.3 Pencarian Area Yang Hilang Saat Proses Segmentasi. ... 56
4.5 Uji Program ... 57
4.5.1 Skenario Uji Program. ... 58
4.5.2 Pelaksanaan Uji Coba. ... 58
4.6 Analisa Aplikasi. ... 68
4.6.1 Analisis Proses Berdasarkan Gambar ... 61
4.6.2 Analisa Proses Berdasarkan Perhitungan Jumlah Piksel Putih ... 63
BAB V KESIMPULAN DAN SARAN ... 66
5.1 Kesimpulan ... 66
5.2 Saran ... 66
Pembimbing I : Fetty Tri Angraeny, S.Kom, M.Kom
Pembimbing II : Faisal Muttaqin, S.Kom
ABSTRAK
Sistem computer vision yang handal diperlukan untuk melakukan sistem pemetaan yang konsisten terhadap beberapa kemungkinan gangguan, terutama untuk pemetaan objek yang memiliki karakteristik khusus untuk di hitung luasnya, seperti peta pulau. Salah satu metode yang diterapkan adalah dengan menggunakan segmentasi citra.
Segmentasi citra merupakan bagian dari proses pengolahan citra. Proses segmentasi citra ini lebih banyak merupakan suatu proses pra pengolahan pada sistem pengenalan objek dalam citra. Segmentasi citra (image segmentation) mempunyai arti membagi suatu citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel dengan tingkat keabuan piksel – piksel tetangganya, kemudian hasil dari proses segmentasi ini akan digunakan untuk proses tingkat tinggi lebih lanjut yang dapat dilakukan terhadap suatu citra, misalnya proses klasifikasi citra dan proses identifikasi objek.
Dari hasil uji coba keseluruhan citra yang terdiri dari 30 citra, tingkat akurasi error 5 - 24%. Dengan menggunakan metode Segmentasi didapatkan selisih luas segmentasi dan luas sebenarnya antara 151,85 sampai 82529 km2 ,dengan prosentase 2,7 - 25 %.
PENDAHULUAN
1.1 Latar Belakang
Pulau adalah sebidang tanah yang lebih kecil dari benua dan lebih besar
dari karang, yang dikelilingi air. Kumpulan beberapa pulau dinamakan
pulau-pulau atau kepulau-pulauan (bahasa Inggris: archipelago).
Pulau memiliki sebutan bermacam-macam di Indonesia. Bentuk tidak
bakunya adalah pulo. Kata pinjaman dari bahasa Sanskerta juga kerap
digunakan, nusa. Di lepas pantai timur Jawa orang menyebut pulau kecil
sebagai gili.
Di Indonesia banyak sekali pulau – pulau yang terbentang sehingga di
sebut juga Negara kepulauan. Indonesia terdiri dari 5 buah pulau utama yaitu :
pulau Sumatra ,pulau Kalimantan ,pulau Jawa, pulau Sulawesi dan pulau Irian.
Banyak informasi tentang Indonesia bisa di dapat salah satu pada Atlas ,
Data atau informasi tidak hanya disajikan dalam bentuk teks, tetapi juga
dapat berupa gambar, audio (bunyi, suara, musik), dan video. Keempat macam
data atau informasi ini sering disebut multimedia. Citra (image), istilah lain
untuk gambar, sebagai salah satu komponen multimedia yang berperan
sangat penting sebagai bentuk informasi visual. Citra menurut kamus
Webster adalah suatu representasi, kemiripan, atau imitasi dari suatu obyek atau
benda.
multimedia memegang peranan sangat penting sebagai bentuk informasi visual. Citra
mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu citra kaya dengan
informasi. Ada sebuah peribahasa yang berbunyi “sebuah gambar lebih bemakna
dari seribu kata" (a picture is more than a thousand words). Maksudnya tentu sebuah
gambar dapat memberikan informasi yang lebih banyak daripada informasi tersebut
disajikan dalam bentuk kata-kata (tekstual). Secara harfiah, citra (image) adalah
gambar pada bidang dwimatra (dua dimensi). Ditinjau dari sudut pandang
matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada
bidang dwimatra.(Agung Priyo, 2005)
Segmentasi citra merupakan bagian dari proses pengolahan citra. Proses
segmentasi citra ini lebih banyak merupakan suatu proses pra pengolahan pada
sistem pengenalan objek dalam citra. Segmentasi citra (image segmentation)
mempunyai arti membagi suatu citra menjadi wilayah-wilayah yang homogen
berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel
dengan tingkat keabuan piksel – piksel tetangganya, kemudian hasil dari proses
segmentasi ini akan digunakan untuk proses tingkat tinggi lebih lanjut yang dapat
dilakukan terhadap suatu citra, misalnya proses klasifikasi citra dan proses
identifikasi objek. Adapun dalam proses segmentasi citra itu sendiri terdapat
beberapa algoritma, diantaranya : algoritma Deteksi Titik, Deteksi Garis, dan
Deteksi Sisi ( berdasarkan Operator Robert dan Operator Sobel ).
Gonzalez dan Wintz (1987) menyatakan bahwa segmentasi adalah proses
pembagian sebuah citra kedalam sejumlah bagian atau obyek. Segmentasi
merupakan suatu bagian yang sangat penting dalam analisis citra secara otomatis,
selanjutnya, misalnya: pada pengenalan pola. Algoritma segmentasi didasarkan
pada 2 buah karakteristik nilai derajad kecerahan citra, yaitu: discontinuity dan
similarity. Pada item pertama, citra dipisahkan/dibagi atas dasar perubahan yang
mencolok dari derajad kecerahannya. Aplikasi yang umum adalah untuk deteksi
titik, garis, area, dan sisi citra. Pada kategori kedua, didasarkan atas thresholding,
region growing, dan region spiltting and merging. Prinsip segmentasi citra bisa
diterapkan untuk citra yang statis maupun dinamis.
Tugas akhir ini dibuat bertujuan untuk membantu menghitung luas pulau
dengan memanfaatkan informasi yang ada pada Altas berupa skala peta pulau
kemudian di proses menggunakan metode segmentasi citra.
1.2 Perumusan Masalah
Berdasarkan latar belakang telah diuaraikan sebelumnya maka dapat
dirumuskan masalah, yaitu :
a. Bagaimana mengukur luas pulau dengan menggunakan segmentasi.
b. Bagaimana membedakan objek pulau menggunakan segmentasi.
1.3Batasan Masalah
Adapun batasan-batasan masalah yang dibuat agar dalam pengerjaan tugas
akhir ini dapat berjalan degan baik adalah sebagai berikut :
a. Program bantu yang digunakan dalam membuat tugas akhir ini adalah
matlab 7.0.
b. Inputan image berupa pulau ,
c. Sumber dataset dan cara perolehan dataset di peroleh dari peta yang di
d. Image yang diproses adalah image yang telah di edit, informasi yang ada pada
peta di hilangkan dan pulau-pulau kecil juga di hilangkan.
e. Pada image pulau terdapat dua komponen warna yaitu warna pulau dan warna
laut .
f. Luas yang di ukur memiliki satuan kilometer persegi atau km2 .
g. Dalam pengolahan citra ukuran yang digunakan adalah picture element
(piksel) maka dalam tugas akhir ini 1 cm2 = 1440 piksel. ( Sri Huning Anwariningsih ,2009 ).
1.4Tujuan
Tujuan dalam Tugas Akhir ini adalah untuk dikembangkannya alat bantu
terkomputerisasi untuk analisis luasan suatu daerah tertentu pada citra digital,
mengetahui cara mengukur luas pulau dengan segmentasi.
1.5Manfaat
Manfaat dari dibuatnya Tugas Akhir ini adalah:
a. Dapat mengetahui berapa luas pulau dari skala pada peta.
b. Menghasilkan sistem yang mampu mengukur luas pulau.
c. Program ini dapat dipahami dengan mudah dan dapat digunakan siapa saja.
1.6 Metodelogi Penelitian
Beberapa metode dan teknik yang dipergunakan dalam pengumpulan dan
pengolahan data skripsi ini antara lain :
1. Library Research
Pada tahap ini, penulis mempelajari dan membaca buku diktat, referensi,
buletin perpustakaan sebagai acuan yang berkaitan dengan permasalahan yang
2. Observation
Penulis akan melakukan pengamatan secara langsung di lapangan untuk
memperoleh data.
3. Documentation
Penulis melakukan pencatatan terhadap aktifitas yang berhubungan dangan
pengamatannya, apabila diperlukan pencatatan.
4. Perancangan dan Pembuatan Sistem
Melakukan analisa awal tentang sistem yang akan dibuat untuk menentukan
langkah selanjutnya. Setelah sistem dirancang maka tahap berikutnya adalah
pembuatan sistem yang benar, agar sesuai dengan rancangan. Pada tahap ini juga
dilakukan perancangan struktur data, algoritma dan diagram alur yang akan
digunakan untuk implementasi dalam perangkat lunak yang akan dibuat.
Kemudian dilakukan pengimplementasian struktur data dan algoritma yang telah
dirancang ke dalam bahasa pemrograman.
5. Pengujian dan Evaluasi Perangkat Lunak
Tahap ini dulakukan pengujian pada perangkat lunak yang telah dibuat,
pengevaluasian hasil yang diperoleh serta perbaikan program (revisi), jika hasil
belum sesuai dengan tujuan yang diharapkan.
6. Pembuatan Naskah Skripsi
Pada tahap ini dilakukan pendokumentasian dari semua tahap agar dcatat
dipelajari untuk pengembangan lebih lanjut. Memaparkan dasar-dasar teori dan
metode yang terlibat di dalamnya, diantaranya desain perangkat lunak dan
1.7 Sistematika Penulisan
Dalam penyusunan tugas akhir, sistematika pembahasan diatur dan
disusun dalam enam bab, dan tiap-tiap bab terdiri dari sub-sub bab. Untuk
memberikan gambaran yang lebih jelas, maka diuraikan secara singkat mengenai
materi dari bab-bab dalam penulisan tugas akhir ini sebagai berikut:
BAB I PENDAHULUAN
Bab ini berisi latar belakang, perumusan masalah, batasan masalah,
tujuan penelitian, manfaat penelitian, dan sistematika penulisan
pembuatan tugas akhir ini.
BAB II TINJ AUAN PUSTAKA
Bab ini menjelaskan mengenai landasan teori-teori pendukung
pembuatan tugas akhir ini.
BAB III METODOLOGI PENELITIAN
Bab ini berisi tentang analisa dan perancangan sistem dalam pembuatan
Tugas Akhir yang digunakan untuk mengolah sumber data yang
dibutuhkan sistem anatara lain: Flowchart
BAB IV HASIL DAN PEMBAHASAN
Pada bab ini akan membahas tentang kerja dari sistem secara
keseluruhan. Pada bab ini menjelaskan tentang pelaksanaan uji coba dan
evaluasi dari pelaksanaan uji coba dari program yang dibuat. Uji coba
dapat dilakukan pada akhir dari tahap-tahap analisa sistem, desain sistem
dan tahap penerapan sistem atau implementasi. Sasaran dari ujicoba
program adalah untuk menemukan kesalahn-kesalahan dari program
BAB V KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dan saran dari penulis untuk pengembangan
sistem.
DAFTAR PUSTAKA
Pada bagian ini akan dipaparkan tentang sumber-sumber literatur yang
TINJ AUAN PUSTAKA
2.1. Penelitian Terdahulu
Sebagai bahan pertimbangan dalam penelitian ini akan dicantumkan
beberapa hasil penelitian terdahulu oleh beberapa peneliti yang pernah penulis
baca diantaranya :
Penelitian yang dilakukan oleh Landung Pambudi tahun 2011 dengan judul
“Identifikasi Luas Bencana Tsunami Dengan Menggunakan Segmentasi Citra”.
Sistem pengolahan citra secara digital yang diaplikasikan dalam penginderaan
jauh (satelit) sangat diperlukan untuk analisis pemetaan wilayah, geologi, geodesi,
dan sebagainya. Dalam hal ini pengolahan citra digital hasil citra satelit untuk
menganalisis dan mengidentifikasi luas kerusakan wilayah di daerah Aceh akibat
bencana Tsunami. Proses pengolahan citra dimulai dari akuisisi data citra,
pengambangan, deteksi tepi, segmentasi citra, sampai citra siap dianalisis.
Analisis citra dilakukan dengan proses segmentasi berdasarkan persamaan
intensitas warna yang sama pada daerah kerusakan. Analisis citra digunakan untuk
menghitung jumlah piksel daerah kerusakan, kemudian dianalogikan sebagai
suatu luasan kerusakan wilayah-wilayah akibat Tsunami. Penelitian telah
menghasilkan sebuah program untuk menghitung suatu luas wilayah pada citra
digital dengan metode segmentasi wilayah dengan intensitas warna yang sama.
Proses perhitungan dilakukan melalui perbandingan luas citra yang diolah dengan
luas citra daerah sesungguhnya sehingga diketahui luas satu piksel mewakili
2.2
Artificial Intelligence
Artificial Intelligence atau Kecerdasan Buatan (disingkat AI) adalah
kemampuan suatu alat untuk melakukan fungsi yang biasanya dihubungkan
dengan kecerdasan 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 heuristik. Bidang aktivitas AI meliputi sistem pakar,
pengenalan bahasa alami, pengenalan suara, penglihatan komputer (Computer
Vision) dan robotika.
2.3
ImageData masukan yang diproses adalah suatu image. Image merupakan
sebuah representasi khusus dari suatu obyek, baik obyek dua dimensi maupun
tiga dimensi. Di mana representasi tersebut dinyatakan dalam bentuk dua
dimensi. Image dapat 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). Image dapat dikategorikan
sebagai :
2.3.1
Analog ImageMenurut Shapiro dan Stockman (2001), analog image adalah image
2D F(x,y) yang memiliki ketelitian tidak terbatas dalam parameter spasial x
2.3.2
Digital ImageDigital image adalah image 2D yang direpresentasikan oleh array diskrit
2D dari intensitas sampel, 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 dan teknik pengambil gambar, seperti kamera digital, scanner, radar, dan
sebagainya. Dapat pula disintesis dari data seperti fungsi matematika dan lain
lain.
Menurut Jain, Kasturi dan Schunck (1995), pixel adalah sampel dari
intensitas image yang terkuantisasi ke dalam nilai integer. Sementara Image
merupakan array dua dimensi dari pixel-pixel tersebut. Image inilah yang akan
menjadi input awal dalam Computer Vision.
Beberapa bentuk digital image yang sering digunakan dalam Computer
Vision:
a. Binary image, yaitu digital image dengan nilai pixel 1 atau 0.
b. Gray scale image, yaitu digital image monokrom dengan satu nilai intensitas
tiap pixel.
c. Multispectral image, adalah image 2D yang memiliki vektor nilai pada tiap
d. Labeled image, adalah digital image dimana nilai pixel-nya adalah simbol
dari alfabet terbatas.
2.4
Computer VisionComputer 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
tertentu dari suatu image.
Tujuan dari Computer Vision adalah untuk membuat keputusan yang
berguna tentang objek dunia nyata dan keadaan (scene) berdasarkan image yang
diambil. Untuk membuat keputusan akan objek nyata, sangat penting untuk
membangun deskripsi atau model objek tersebut dari gambar. Karena itu dapat
dikatakan bahwa tujuan dari Computer Vision adalah untuk membangun deskripsi
keadaan dari image.
Artificial Intelligence digunakan untuk menganalisis keadaan dengan
memproses representasi simbolik dari isi lingkungan setelah image telah diproses
untuk diambil fiturnya. Banyak teknik dari Artificial Intelligence berperan
penting didalam seluruh aspek Computer Vision. Pada dasarnya Computer
Vision merupakan cabang dari Artificial Intelligence. Secara garis besar tahapan
2.4.1
Image AcquisitionTahapan awal dalam Computer Vision adalah Image Acquisition
(pengambilan digital image). Image Acquisition berhubungan dengan sensor
yang mengambil image. Sensor yang digunakan bisa kamera atau scanner.
Sifat dari sensor dan image yang dihasilkan ditentukan dari aplikasinya.
2.4.2
Image EnhancementSetelah digital image diperoleh, tahapan selanjutnya adalah image
enhancement yang termasuk dalam tahap prepocessing, image enhancement
menyangkut langkah-langkah untuk meningkatkan kualitas image untuk
mendukung tahapan selanjutnya. Tujuan dari image enhancement ini secara
teknis untuk menghilangkan noise, memperhalus gambar, mempertajam gambar
(menghilangkan blur), serta mengatur pencahayaan (brightness, contrast).
Berdasarkan domainnya teknik peningkatan image dapat dibedakan menjadi 2
metode:
a. Domain spasial
Metode ini didasarkan pada manipulasi langsung dari nilai gray (keabuan)
dari pixel-pixel suatu image.
b. Domain frekuensi
Metode ini didasarkan pada modifikasi Fourier transform dari suatu
image. Fourier transform ini sendiri adalah suatu cara memetakan sinyal pada
frekuensi-frekuensi komponennya.
Sementara beberapa teknik image enhancement yang digunakan antara lain:
Merupakan teknik pemetaan intensitas dimana tiap pixel diberikan nilai
keabuan yang baru untuk meningkatkan ketajaman gambar. Operasi ini tidak
merubah bentuk dan geometri image, yang berubah cuma level intensitasnya.
Teknik ini dilakukan dengan cara memproses histogram tingkat keabuan (gray
level histogram) dari image.
Untuk mengubah image berwarna yang mempunyai nilai matrik
masing-masing r, g dan b menjadi image gray scale dengan nilai s, maka konversi dapat
dilakukan dengan mengambil rata-rata dari nilai r, g dan b sehingga dituliskan :
= + +
3
Histogram dalam computer vision adalah representasi dari image yang
diperoleh dengan cara menghitung nilai tiap pixel. Singkatnya histogram
merupakan grafik yang menggambarkan distribusi intensitas pixel dari suatu
image atau bagian tertentu di dalam citra. Histogram menunjukkan frekuensi
kemunculan intensitas pada image.( Gambar 2.1 )
Sementara gray level histogram adalah histogram yang menampilkan
dalam tiap tingkat jumlah pixel dalam gambar yang memiliki tingkat keabuan
(gray-level) tertentu. Histogram ini dimanipulasi dengan cara di stretch, shrink,
atau slide. ( Gambar 2.2 )
b. Filtering (convolution)
Menurut nixon dan aquado, filtering yang merupakan suatu group
operation pada pixel, menghitung nilai pixel baru dengan menggunakan pixel-
pixel tetangganya. Filtering dijelaskan dengan istilah template convolution
dimana template-nya adalah suatu matriks koefisien bobot (yang umumnya ganjil
dengan menempatkan template pada suatu titik, kemudian nilai-nilai pixel
dikalikan dengan bobot dan ditambahkan sebagai nilai keseluruhan, jumlah
tersebut menjadi nilai baru bagi pixel ditengah template, inilah yang menjadi pixel
bagi image baru. Proses ini diulang pada semua pixel dalam gambar. Operator
yang sering digunakan adalah averaging, gaussian, dan median filtering.
Gambar 2.1. Image sebelum dilakukan manipulasi (Kulkarni, 2001)
Gambar 2.2. Image setelah dilakukan manipulasi (dari kiri ke kanan): stretch,
2.5. Pengolahan Citr a Digital
Secara harafiah, citra (image) adalah gambar pada bidang
dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra
merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang
dwimatra. Sumber cahaya menerangi objek, objek memantulkan kembali
sebagian dari berkas cahaya tersebut. 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 mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu
bahwa citra kaya dengan informasi. Citra juga dapat dikelompokkan menjadi dua
yaitu citra tampak (foto, gambar, lukisan, apa yang nampak di layar
monitor/televisi, hologram, dan lain-lain) dan citra tidak tampak (data
foto/gambar dalam bentuk file, citra yang direpresentasikan dalam fungsi
matematis). Citra sebagai keluaran dari suatu sistem perekaman data dapat
bersifat optik berupa foto, analog berupa sinyal video seperti gambar pada
monitor televisi, dan digital yang dapat langsung disimpan pada media
penyimpan magnetik. Citra digital adalah citra yang disimpan dalam format
digital (dalam bentuk file). Hanya citra digital yang dapat diolah menggunakan
komputer. Jenis citra lain jika akan diolah dengan komputer harus diubah
dulu menjadi citra digital. Citra digital tersusun atas sejumlah berhingga
elemen, masing-masing memiliki lokasi dan nilai/intensitas tertentu.
Elemen-elemen ini disebut elemen gambar, elemen citra, pels, dan juga piksel.
Pencitraan (imaging) adalah kegiatan mengubah informasi dari citra
digunakan untuk pencitraan adalah scanner, kamera digital, kamera
sinar-x/sinar infra merah, dan lain-lain. Jadi, pengolahan citra digital adalah
proses yang bertujuan untuk memanipulasi dan menganalisis citra digital
dengan bantuan komputer. Masukannya adalah citra dan keluarannya juga citra
tapi dengan kualitas lebih baik daripada citra masukan.
Pengolahan citra bertujuan untuk memperbaiki kualitas citra agar mudah
diinterpretasikan oleh manusia atau mesin. Teknik-teknik pengolahan citra
mentransformasikan citra menjadi citra lain. Inputan pada proses ini adalah citra
dan keluarannya juga berupa citra dengan kualitas lebih baik daripada citra
inputan sebelumnya. ( Gambar 2.3 )
Gambar 2.3. Pengolahan citra (Agung Priyo,2005)
Pengenalan Pola, mengelompokkan data numeric dan simbolik (termasuk citra)
secara otomatis, oleh mesin (dalam hal ini komputer). Tujuan pengelompokan
adalah untuk mengenali suatu objek di dalam citra. Manusia bisa mengenali objek
yang dilihatnya karena otak manusia telah belajar mengklasifikasi objek-objek di alam
sehingga mampu membedakan suatu objek dengan objek lainnya. Kemampuan
sistem visual manusia inilah yang dicoba ditiru oleh mesin. Komputer menerima
masukan berupa citra objek yang akan diidentifikasi, memproses citra tersebut dan
memberikan keluaran berupa deskripsi objek didalam citra. Dapat dilihat pada
Selain dalam dunia fotografi pengolahan citra digunakan juga dalam
dunia kedokteran terutama untuk memperjelas citra hasil sinar-x organ tubuh
manusia, pengolahan citra juga digunakan dalam bidang lain seperti penyiaran,
telekomunikasi digital, Sistem multimedia, bilogi, sistem penginderaan jauh, seni
grafis, percetakan, militer, bidang pertanian dan masih banyak bidang lainnya.
Gambar 2.4 Pengenalan Pola (Agung Priyo,2005)
2.5.1 Grayscale
Mencari tingkat keabuan adalah proses pengubahan warna citra
menjadi format warna yang hanya berdasarkan tingkat keabuan. Proses ini
menghilangkan informasi hue dan saturation dari piksel dan hanya
meninggalkan nilai brightness. Setiap piksel dari tingkat keabuan citra
memiliki nilai brightness antara 0 (hitam) sampai 255 (putih). Foto hitam putih
merupakan contoh umum dari model warna tingkat keabuan. Walaupun
disebut hitam putih, sesungguhnya foto tersebut terbentuk dari banyak warna
abu-abu yang berbeda. Tujuan perhitungan tingkat keabuan adalah
memudahkan proses selanjutnya yaitu proses thresholding. Dengan algoritma
perhitungan tingkat keabuan, piksel dari suatu citra yang mengandung
warna-warna RGB (merah, hijau dan biru) diubah menjadi warna-warna dalam berbagai
tingkat keabuan dengan menjumlahkan nilai warna merah, hijau dan biru
2.5.2 Morfologi
Morfologi merupakan suatu cabang dari pengolahan citra yang sangat
bermanfaat dalam analisis bentuk dalam citra. Operasi morfologi adalah teknik
pengolahan citra berdasarkan bentuk segmen atau region dalam citra. Karena
difokuskan pada bentuk obyek, maka operasi ini biasanya diterapkan pada citra
biner (terdiri dari 1 dan 0). pemrosesan citra secara morfologi dilakukan denga
cara mem-passing sebuah sturktur elemen terhadap sebuah citra dengan cara yang
hampir sama dengan konvolusi. Struktur elemen dapat diibaratkan dengan mask
pada pemrosesan citra biasa (bukan secara morfologi).
2.5.3 Erosi
Erosi adalah salah satu operasi dasar dalam pemrosesan citra secara
morfologi. Erosi adalah sebuah operasi yang meningkatkan ukuran dari latar
belakang (dan mengikis objek latar depan) pada citra biner .
Dengan memisalkan A sebagai objek pada citra masukan, B sebagai elemen
terstruktur, dan C sebagai objek pada citra keluaran hasil erosi, maka proses erosi
dapat dinotasikan dengan:
=
Erosi dilakukan dengan bantuan elemen terstruktur. Elemen terstruktur
membantu menentukan pixel tetangga yang akan ditelusuri dengan proses erosi.
Elemen terstruktur yang sering digunakan adalah 4-konektivitas dan
8-konektivitas. ( Gambar 2.5 )
Gambar 2.5. Elemen terstruktur 4- dan 8- konektivitas(Agung Priyo,2005)
Erosi memiliki karakteristik :
a. Erosi pada umunya memperkecil ukuran dari objek dan menghilangkan
elemen atau anomali kecil dengan mengurangi objek dengan radius yang
lebih kecil dari ukuran elemen terstruktur.
b. Dengan citra binner erosi menghilangkan objek yang lebih kecil dari elemen
terstruktur dan mengiliminasi pixel parameter dari objek citra yang lebih
besar.
Algoritma yang dilakukan pada erosi adalah sebagai berikut:
1. Posisikan elemen terstruktur dibagian atas (menutupi) tiap-tiap piksel dari
citra masukan hingga titik pusat dari elemen terstruktur bertepatan dengan
posisi piksel masukan.
2. Jika paling sedikit satu piksel pada elemen terstruktur bertemu dengan piksel
latar belakang di bawahnya (yang ditutupinya), maka tetapkan piksel keluaran
pada citra baru ke nilai latar belakang, maka tetapkan piksel. ( Gambar 2.6 )
Dengan begitu, piksel latar belakang pada citra masukan akan menjadi latar
belakang pada citra keluaran dan juga piksel latar depan pada citra masukan akan
Gambar 2.6. Erosi menggunakan elemen terstruktur 8-konektivitas (Agung
Priyo,2005)
2.5.4 Dilasi
Dilasi adalah salah satu operasi dasar dalam morfologi matematika. Pada
citra biner, dilasi adalah sebuah operasi yang mengekspansi atau memperbesar
ukuran dari objek latar depan. Biasanya objek pada citra dilambangkan dengan
piksel putih, walaupun untuk beberapa implementasi objek pada citra
dilambangkan dengan piksel hitam. Konektivitas antar piksel pusat dengan
tetangganya dibuat berdasarkan elemen terstruktur yang terdefini. Memisalkan A
sebagai objek pada citra masukan, B sebagai elemen terstruktur, dan C sebagai
objek citra keluaran hasil dilasi, maka proses dilasi dapat dinotasikan sebagai :
= ⊕
Dilasi memiliki karakteristik :
a. Dilasi umunya memperbesar ukuran dari objek, mengisi lubang dan
dan area yang rusak, dan menghubungkan area yang dipisahkan oleh jarak
yang lebih kecil dari ukuran elemen terstruktur.
b. Dengan citra biner, dilasi menghubungkan area yang dipisahkan oleh jarak
yang lebih kecil dari elemen terstruktur dan menambahkan piksel dari setiap
objek citra.
Algoritma yang dilakukan pada dilasi adalah sebagai berikut :
a. Posisikan elemen terstruktur di bagian atas (menutupi) tiap-tiap piksel dari
citra masukan hingga titik pusat dari elemen terstruktur bertepatan dengan
posisi piksel masukan.
b. Jika paling sedikit satu piksel pada elemen terstruktur bertemu dengan piksel
latar depan dibawahnya ( yang ditutupinya), maka tetapkan piksel keluaran
pada citra baru kenilai latar depan. Begitu juga jika bertemu dengan piksel
latar belakang, maka tetapkan piksel keluaran pada citra baru ke nilai latar
depan.
Piksel latar depan pada citra masukan akan menjadi latar depan pada citra
keluaran dan juga pada piksel latar belakang pada citra masukan akan menjadi
latar depan pada citra keluaran . (Gambar 2.7)
Gambar 2.7. dilasi menggunakan elemen terstruktur 8-konektivitas (Agung
Priyo,2005)
2.5.5 Opening and Closing
Dari operator dasar morfologis dapat dibuat operator dasar morfologis dapat
operator opening, yaitu operator yang terdiri dari rangkaian operasi operator
erosion diikuti oleh dilation, yang diformulasikan sebagai :
−
Dan kedua operator closing, yaitu operator yang terdiri dari rangkaian
operasi operator dilation diikuti oleh erosion, yang diformulasikan sebagai:
−
Operator opening akan menghilangkan pulau-pulau kecil, puncak yang
tajam dan garis yang tipis. Sedangkan operator closing akan menyatukan (fuse)
patahan-patahan yang sempit, menutup lubang-lubang kecil dan menghaluskan
kontur. Jika kita menggunakan operator ini dengan tepat, yaitu diawali dengan
operator opening dan selanjutnya diikuti dengan operator closing, maka akan
diperoleh sebuah operator baru yang akan menghilangkan derau, yang dikenal
sebagai salt and papper noise removal.
2.5.6 Rekontruksi
Rekonstruksi citra (image reconstruction) bertujuan membentuk ulang objek
dari beberapa citra hasil proyeksi. Misalnya beberapa fotorontgen dengan sinarX.
Digunakan untuk membentuk ulang gambar organ tubuh.
2.5.7 Inver s
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.8)
Jika sebuah input x dimasukkan ke dalam fungsi f menghasilkan sebuah
output y, y kemudian dimasukkan ke dalam fungsi invers menghasilkan output
x. f adalah fungsi yang domainnya adalah himpunan X, dan kodomainnya adalah ………..(4)
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:
Gambar 2.8. Sebuah fungsi f dan inversnya (Asmitot 2010)
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.5.8 Segmentasi Citra
Segmentasi citra merupakan bagian dari proses pengolahan citra. Proses
segmentasi citra ini lebih banyak merupakan suatu proses pra pengolahan pada
sistem pengenalan objek dalam citra. Segmentasi citra (image segmentation)
mempunyai arti membagi suatu citra menjadi wilayah-wilayah yang homogen
berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel
segmentasi ini akan digunakan untuk proses tingkat tinggi lebih lanjut yang dapat
dilakukan terhadap suatu citra, misalnya proses klasifikasi citra dan proses
identifikasi objek. Adapun dalam proses segmentasi citra itu sendiri terdapat
beberapa algoritma, diantaranya : algoritma Deteksi Titik, Deteksi Garis, dan
Deteksi Sisi ( berdasarkan Operator Robert dan Operator Sobel ).
Gonzalez dan Wintz (1987) menyatakan bahwa segmentasi adalah proses
pembagian sebuah citra kedalam sejumlah bagian atau obyek. Segmentasi
merupakan suatu bagian yang sangat penting dalam analisis citra secara otomatis,
sebab pada prosedur ini obyek yang diinginkan akan disadap untuk proses
selanjutnya, misalnya: pada pengenalan pola. Algoritma segmentasi didasarkan
pada 2 buah karakteristik nilai derajad kecerahan citra, yaitu: discontinuity dan
similarity. Pada item pertama, citra dipisahkan/dibagi atas dasar perubahan yang
mencolok dari derajad kecerahannya. Aplikasi yang umum adalah untuk deteksi
titik, garis, area, dan sisi citra. Pada kategori kedua, didasarkan atas thresholding,
region growing, dan region spiltting and merging. Prinsip segmentasi citra bisa
diterapkan untuk citra yang statis maupun dinamis. Segmentasi citra adalah
membagi suatu citra menjadi wilayah-wilayah yang homogen.
2.5.9 Deteksi Tepi
Deteksi tepi merupakan sebuah proses di mana proses tersebut berfungsi
untuk mendeteksi garis tepi yang membatasi dua wilayah citra. Saat ini telah
banyak operator – operator yang dapat digunakan dalam pembuatan deteksi tepi,
contohnya adalah operator Robert , prewitt, sobel, serta operator turunan seperti
laplace. Deteksi tepi itu sendiri bertujuan untuk menandai bagian yang menjadi
Pendeteksian tepi merupakan langkah pertama untuk melingkupi
informasi di dalam citra. Tepi mencirikan batas-batas objek dan karena itu
tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra.
Tujuan operasi pendeteksian tepi adalah untuk meningkatkan penampakan
garis batas suatu daerah atau objek di dalam citra. Karena tepi termasuk
ke dalam komponen berfrekuensi tinggi, maka pendeteksian tepi dapat
dilakukan dengan penapis lolos-tinggi.(Rinaldi Munir,2010 )
Manfaat yang bisa diperoleh dari deteksi tepi dalam berbagai
bidang, misalnya yang paling banyak digunakan dalam bidang kedokteran
adalah untuk menentukan stadium kanker, mendeteksi tepi citra USG janin,
mendeteksi karies pada gigi, sehingga bentuk citra yang dihasilkan dapat
terlihat lebih jelas. Di bidang lainnya, deteksi tepi digunakan untuk aplikasi
pengenalan plat kendaraan, aplikasi pengenalan sidik jari, dan untuk
membedakan uang asli dengan uang palsu.
Terdapat beberapa teknik yang digunakan untuk mendeteksi tepi, antara lain:
a. Operator gradien pertama (differential gradient)
Mendeteksi tepi di dalam citra, yaitu operator gradien selisih-terpusat,
operator Sobel, operator Prewitt, operator Roberts, operator Canny.
b. Operator turunan kedua (Laplacian)
Operator Laplace mendeteksi lokasi tepi khususnya pada citra tepi yang
curam. Pada tepi yang curam, turunan keduanya mempunyai persilangan nol,
yaitu titik di mana terdapat pergantian tanda nilai turunan kedua, sedangkan
pada tepi yang landai tidak terdapat persilangan nol. Contohnya adalah
c. Operator kompas (compass operator)
Digunakan untuk mendeteksi semua tepi dari berbagai arah di dalam citra.
Operator kompas yang dipakai untuk deteksi tepi menampilkan tepi dari 8 macam
arah mata angin yaitu Utara, Timur Laut, Timur, Tenggara, Selatan, Barat, Barat
Daya, dan Barat Laut.
Contoh beberapa gradien pertama yang dapat digunakan untuk turunan
pertama menghasilkan tepi yang lebih tebal, sedangkan turunan kedua
menghasilkan tepi yang lebih tipis. Ada tiga macam tepi yang terdapat di dalam
citra digital (Gambar 2.9.). Ketiganya adalah:
Gambar 2.9. Jenis – jenis tepi (Rinaldi Munir, 2010)
1. Tepi curam
Tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 90°.
2. Tepi landai
Disebut juga tepi lebar, yaitu tepi dengan sudut arah yang kecil. Tepi landau
3. Tepi yang mengandung derau (noise)
Umumnya tepi yang terdapat pada aplikasi computer vision mengandung
derau. Operasi peningkatan kualitas citra (image enhancement) dapat dilakukan
terlebih dahulu sebelum pendeteksian tepi , dapat dilihat pada gambar 2.9 (Rinaldi
Munir,2010)
2.5.10 Metode Canny
Salah satu algoritma deteksi tepi modern adalah deteksi tepi dengan
menggunakan metode Canny. Deteksi tepi Canny ditemukan oleh Marr dan
Hildreth yang meneliti pemodelan persepsi visual manusia. Ada beberapa kriteria
pendeteksi tepian paling optimum yang dapat dipenuhi oleh algoritma Canny:
a. Mendeteksi dengan baik (kriteria deteksi)
Kemampuan untuk meletakkan dan menandai semua tepi yang ada sesuai
dengan pemilihan parameter-parameter konvolusi yang dilakukan. Sekaligus juga
memberikan fleksibilitas yang sangat tinggi dalam hal menentukan tingkat deteksi
ketebalan tepi sesuai yang diinginkan.
b. Melokalisasi dengan baik (kriteria lokalisasi)
Dengan Canny dimungkinkan dihasilkan jarak yang minimum antara tepi
yang dideteksi dengan tepi yang asli.
c. Respon yang jelas (kriteria respon)
Hanya ada satu respon untuk tiap tepi. Sehingga mudah dideteksi dan tidak
menimbulkan kerancuan pada pengolahan citra selanjutnya. Pemilihan parameter
deteksi tepi Canny sangat mempengaruhi hasil dari tepian yang dihasilkan.
Beberapa parameter tersebut antara lain :
2. Nilai Ambang
2.6 Perhitungan Luas Dengan System Grid
Sebuah peta memiliki informasi jarak yang dapat kita baca pada skala.
Gambar pada suatu peta terbentuk atas unsur titik (dot), garis (line), dan area
(poligon). Poligon merupakan garis tertutup yang kedua ujungnya saling bertemu
dan membentuk area. Area yang terbentuk ini akan membentuk luasan yang dapat
diukur/hitung berapa besarnya. Menghitung luas suatu wilayah pada peta dapat
dilakukan secara manual dengan menggunakan Sistem Grid. Menghitung dengan
menggunakan sistem grid adalah dengan membuat petak-petak pada gambar peta
dalam bentuk bujur sangkar yang berukuran sama. Penentuan panjang sisi bujur
sangkar secara umum dibuat 1 cm. Rumus perhitungan system grid yang akan
dipakai untuk menghitung luas pulau pada tugas akhir ini :
2.6.1.1 Perhitungan Mencari Selisih (Nilai Er ror)
Untuk mengetahui seberapa akurat metode segmentasi untuk menghitung luas
pulau. Untuk mengetahui seberapa akurat atau mengetahui hasil prosentase error
dari perhitungan luas pulau ,dapat dicari dengan rumus:
Rumus di atas adalah rumus mencari prosentase error secara perhitungan
piksel ,sedangkan untuk mencari prosentase error untuk perhitungan luas
menggunakan rumus :
………...………...(5)
2.7 Matlab
Matlab adalah sebuah bahasa dengan (high-performance) kinerja tinggi
untuk komputasi masalah teknik. Matlab mengintegrasikan komputasi, visualisasi,
dan pemrograman dalam suatu model yang sangat mudah untuk pakai dimana
masalah-masalah dan penyelesaiannya diekspresikan dalam notasi matematika
yang familiar. Penggunaan Matlab meliputi bidang–bidang:
a. Matematika dan Komputasi
b. Pembentukan Algorithm
c. Akusisi Data
d. Pemodelan, simulasi, dan pembuatan prototipe
e. Analisa data, explorasi, dan visualisasi
f. Grafik Keilmuan dan bidang Rekayasa
Matlab merupakan suatu sistem interaktif yang memiliki elemen data
dalam suatu array sehingga tidak lagi kita dipusingkan dengan masalah dimensi.
Hal ini memungkinkan kita untuk memecahkan banyak masalah teknis yang
terkait dengan komputasi, kususnya yang berhubungan dengan matrix dan
formulasi vektor, yang mana masalah tersebut merupakan momok apabila kita
harus menyelesaikannya dengan menggunakan bahasa level rendah seperti
Pascall, C dan Basic. Nama Matlab merupakan singkatan dari matrix laboratory.
Matlab pada awalnya ditulis untuk memudahkan akses perangkat lunak matrik
yang telah dibentuk oleh LINPACK dan EISPACK. Saat ini perangkat Matlab
kesatuan dari sebuah seni tersendiri dalam perangkat lunak untuk komputasi
matrix.
Dalam lingkungan perguruan tinggi teknik, Matlab merupakan perangkat
standar untuk memperkenalkan dan mengembangkan penyajian materi
matematika, rekayasa dan kelimuan. Di industri, Matlab merupakan perangkat
pilihan untuk penelitian dengan produktifitas yang tingi, pengembangan dan
analisanya. Fitur-fitur Matlab sudah banyak dikembangkan, dan lebih kita kenal
dengan nama toolbox. Sangat penting bagi seorang pengguna Matlab, toolbox
mana yang mandukung untuk learn dan apply technologi yang sedang
dipelajarinya. Toolbox toolbox ini merupakan kumpulan dari fungsi-fungsi
Matlab (Mfiles) yang telah dikembangkan ke suatu lingkungan kerja Matlab untuk
memecahkan masalah dalam kelas particular. Area-area yang sudah bisa
dipecahkan dengan toolbox saat ini meliputi pengolahan sinyal, system kontrol,
neural networks, fuzzy logic, wavelets, dan lain-lain.
2.7.1 Kelengkapan pada Sistem Matlab Sebagai sebuah system, Matlab
tersusun dari 5 bagian utama:
a. Development Environment merupakan sekumpulan perangkat dan fasilitas
yang membantu anda untuk menggunakan fungsi-fungsi dan file-file Matlab.
Beberapa perangkat ini merupakan sebuah graphical user interfaces (GUI).
Termasuk didalamnya adalah Matlab desktop dan CommandWindow,
command history, sebuah editor dan debugger, dan browsers untuk melihat
help, workspace, files, dan search path.
b. Matlab Mathematical Function Library merupakan sekumpulan algoritma
arithmetic, sampai dengan fungsi-fungsi yang lebih kompek seperti matrix
inverse, matrix eigenvalues, Bessel functions, dan fast Fourier transforms.
c. Matlab Language merupakan suatu high-level matrix/array language dengan
control flow statements, functions, data structures, input/output, dan fitur-fitur
object-oriented programming. Ini memungkinkan bagi kita untuk melakukan
kedua hal baik "pemrograman dalam lingkup sederhana " untuk mendapatkan
hasil yang cepat, dan "pemrograman dalam lingkup yang lebih besar" untuk
memperoleh hasil-hasil dan aplikasi yang komplek.
d. Graphics Matlab memiliki fasilitas untuk menampilkan vector dan matrices
sebagai suatu grafik. Didalamnya melibatkan high-level functions
(fungsi-fungsi level tinggi) untuk visualisasi data dua dikensi dan data tiga dimensi,
image processing, animation, dan presentation graphics. Ini juga melibatkan
fungsi level rendah yang memungkinkan bagi anda untuk membiasakan diri
untuk memunculkan grafik mulai dari benutk yang sederhana sampai dengan
tingkatan graphical user interfaces pada aplikasi Matlab anda.
e. Matlab Application Program Interface (API) merupakan suatu library yang
memungkinkan program yang telah anda tulis dalam bahasa C dan Fortran
mampu berinterakasi dengan Matlab. Ini melibatkan fasilitas untuk
pemanggilan routines dari Matlab (dynamic linking), pemanggilan Matlab
sebagai sebuah computational engine, dan untuk membaca dan menuliskan
MAT-files. Memulai Matlab Perhatikan Dekstop pada layar monitor PC, anda
2.7.2 GUI / GUIDE MATLAB
Dibangun dengan obyek grafik seperti tombol (button), kotak teks, slider,
menu dan lain-lain. Aplikasi yang menggunakan GUI umumnya lebih mudah
dipelajari dan digunakan karena orang yang menjalankannya tidak perlu
mengetahui perintah yang ada dan 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 disempurnkan 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.
2.7.2.1Membuat 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
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 User’s Guide, The Math Works inc,
Pada bab ini akan dijelaskan mengenai proses pembuatan penelitian
perhitungan luas pulau dengan menerapkan segmentasi citra. 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
Dataset diperoleh dari 3 buku Atlas. Data Pulau Jawa ,Pulau Sumatra ,Pulau
Kalimantan ,Pulau Sulawesi ,Pulau Irianjaya ,Pulau Bali ,Pulau Bangka,Pulau
Sumbawa , Pulau Selatan Selantan Selandia Baru ,Pulau Luzon Filipina ,Pulau
Mindanao Filipina , Pulau Halmahera ,dan Pulau Honsyu Jepang didapat dari
buku Atlas penerbit Sinar Kurnia. Data Pulau Jawa 2 ,Pulau Sumatra 2,Pulau
Sulawesi 2 ,Pulau Irianjaya 2 , Pulau Lombok 2 ,Pulau Sumbawa 2 ,Pulau
Halmahera 2 ,Pulau Bangka 2 , Pulau Selatan Selantan Selandia Baru 2,dan Pulau
Mindanao Filipina 2 didapat dari buku Atlas penerbit CV. Buana Raya . Data
Pulau Jawa 3 ,Pulau Sumatra 3, Pulau Kalimantan 3, Pulau Sulawesi 3 , Pulau
Irianjaya 3 , Pulau Sumbawa 3 dan Pulau Bali 3 didapat dari buku Atlas penerbit
Media Utama Raya .Citra Pulau yang digunakan telah di hilangkan informasi
yang ada di citra pulau seperti tulisan-tulisan dan pulau-pulau kecil di sekitar
pulau utama yang akan di jadikan dataset. Dataset yang digunakan diresize sesuai
dengan ukuran peta yang dipakai . Pada tabel 3.1 menjelaskan informasi tentang
Tabel 3.1 Data set citra
nama Gambar Ukuran(dimensi) Skala
Pulau Jawa 945x333 1:4300000
Pulau
Sumatra 945x738
1: 7000000
Pulau Kalimantan
738x945 1:6080000
Pulau
Sulawesi 738x945 1:4850000
Pulau
Irianjaya 945x738 1:7280000
Pulau Jawa 2 718x510 1:5600000
Pulau
nama Gambar Ukuran(dimensi) Skala
Pulau
Sulawesi 2 491x718 1:5850000
Pulau
Irianjaya 2 718x518 1:11500000
Pulau Jawa 3 707x234 1:5800000
Pulau
Sumatra 3 726x510 1:10000000
Pulau
Kalimantan 3 499x718 1:8900000
Pulau
Sulawesi 3 503x718 1:6850000
Pulau
nama Gambar Ukuran(dimensi) Skala
Pulau Bali 945x737 610000
Pulau Bangka 926x718 1650000
Pulau
Sumbawa 926x718 1572000
Pulau Selatan Selandia
Baru
317x737 8300000
Pulau Luzon
Filipina 737x926 5700000
Pulau Mindanao
Filipina
737x926 6200000
Pulau Honsyu
jepang
nama Gambar Ukuran(dimensi) Skala
Pulau
Lombok 2 699x503 2120000
Pulau
Sumbawa 2 699x503 2150000
Pulau
Halmehera 2 506x699 4100000
Pulau Bangka
2 699x510 2200000
Pulau selatan Selandia baru
2
246x484 11600000
Pulau Mindanao
Filipina 2
664x834 6800000
Pulau
nama Gambar Ukuran(dimensi) Skala
Pulau Bali 2 711x491 790000
Pulau
Halmahera 718x926 3000000
3.2 Analisis Sistem
Penelitian perhitungan luas pulau dengan menerapkan segmentasi citra
menggunakan bahasa pemrograman Matlab. Citra diambil dengan men-scan peta
pulau kemudian di proses menghilangkan semua informasi dalam peta kecuali
objek pulau dan laut, kemudian proses selanjutnya adalah grayscale, deteksi tepi,
dilasi, closing, invers, erosi, rekontruksi. 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 deteksi tepi 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 secara umum men-smooth-kan batas dari objek besar tanpa
mengubah area objek secara signifikan. Pada tahap selanjutnya dilakukan tahap
hasil yang akan diketahui, untuk tahap selanjutnya dilakukan proses erosi dan
rekontruksi. Erosi adalah suatu proses yang menghilangkan objek-objek yang
tidak dipakai setelah objek-objek terhilangkan dilakukan proses rekontruksi
supaya objek yang terhilangkan dari proses erosi dapat dikembalikan dengan
objek yang utuh dengan proses rekontruksi, yang terakhir dalam pembuatan
aplikasi adalah menampilkan jumlah piksel dan luas pulau km2. Dari penelitian tersebut akan dilakukan perbandingan.
3.3.Gambaran Aplikasi secara Umum
Secara garis besar untuk melakukan pendeteksian tepi pada tambak melalui
bebarapa proses yaitu meliputi : ( Gambar 3.1)
1. Citra masukan berupa citra berwarna
2. Baca inputancitra yang akan diproses menjadi :
a. Grayscale
Setelah proses grayscale, deteksi tepi canny, dilasi, closing, invers, erosi,
rekontruksi. Citra keluaran akan berupa jumlah piksel warna putih dan luas pulau
Gambar 3.1 Flowchart Alur Program
3.3.1 Perancangan Pr oses
Untuk mengetahui proses-proses yang dilakukan maka akan dijelaskan
sebagai berikut :
3.3.1.1Grayscale
Grayscale merupakan proses pengolahan citra dengan cara mengubah
Gambar 3.2 Flowchart Grayscale
Langkah awal pada flowchart grayscale adalah citra masukan berwarna yang
kemudian akan diproses menjadi citra grayscale. 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 untuk menggubah
piksel RGB ( Red Green Blue) menjadi skala keabu – abuan dengan menggunakan
fungsi rgb2gray.
Gray=r gb2gray(I)
Variabel gray berfungsi untuk menampung hasil konversi citra RGB kecitra abu-
3.3.1.2Metode Canny
Salah satu cara untuk mendeteksi batas tepi adalah dengan menggunakan
algoritma canny. Algoritma ini dikenal sebagai algoritma yang baik untuk
mendeteksi batas. Deteksi tepi ini pertama-tama menghaluskan gambar dengan
menyingkirkan noise. Kemudian ditemukannya gradient gambarnya untuk
menyoroti daerah yang mempunyai ruang kepalsuan yang tinggi. Algoritma ini
lalu mengambil jalur sepanjang ruang tersebut dan menekan pixel yang tidak
maximum (penekanan non-maximum). Dengan menggunakan metode Canny
tepian yang dihasilkan lebih jelas, perbedaan tepian dengan background citra
terlihat nyata. Tapi di dalam Canny sendiri, noise dibagian tertentu tidak bisa
hilang begitu saja. Pengujian lain terhadap deteksi tepi adalah dengan
menggunakan Ketahanannya terhadap gangguan (noise). Gangguan pada citra
masukan (input) dapat dijadikan sebagai salah satu parameter yang menentukan
tingkat tampilan dari beberapa metode untuk melacak tepian suatu objek. Nilai
gray level pada suatu tepian objek akan berubah sehingga akan semakin sulit bagi
operator deteksi untuk menentukan batas tepian suatu objek. Berikut adalah
potongan baris program deteksi tepi canny.
BW=edge(gr ay,' canny' );
Variabel BW berfungsi untuk menampung hasil deteksi tepi. Citra yang
dideteksi tepi adalah citra abu-abu yang ditampung dalam variable gray. Deteksi
tepi yang di pakai adalah Canny.
Pertama yang harus dilakukan adalah menyaring dan membuang noise pada
gambar asli sebelum mencoba untuk menetapkan dan mendeteksi tepian. Untuk
gambar dan menyingkirkan noise. Operator sobel menggunakan sepasang matrik
3×3 konvolusi, satu matrik untuk mengkalkulasi gradient di x (kolom) dan yang
satu untuk mengkalkulasi gradient di y (baris).
3.3.1.3Dilasi
Pada proses ini akan dilasi. Dilasi merupakan suatu proses menambahkan
piksel pada batasan dari objek dalam suatu image sehingga nantinya apabila
dilakukan operasi ini maka image hasilnya lebih besar ukurannya dibandingkan
dengan image aslinya.. Pengertian penebalan ini dikontrol oleh bentuk strel.
Flowchart pada gambar 3.4 adalah proses dari dilasi. Setelah memproses metode
deteksi tepi canny kemudian akan diproses dilasi. Proses ini menyambung garis
pada objek. Berikut adalah potongan baris program dilasi.
b= imdilate(BW,se);
Variabel bberfungsi untuk menampung hasil dilasi. Citra yang didilasi adalah
citra dari deteksi tepi yang ditampung dalam variable BW. Variabel se adalah
radius dari proses dilasi berlangsung.
3.3.1.4 Closing
Pada proses ini akan diclosing (Gambar 3.5). Closing merupakan kombinasi
dimana suatu citra dikenai operasi dilasi dilanjutkan dengan erosi. Operasi closing
juga cenderung akan memperhalus objek pada citra, namun dengan cara
menyambung pecahan-pecahan (fuses narrow breaks and thin gulf) dan
menghilangkan lubang-lubang kecil pada objek.. Alur proses Closing dapat di
lihat pada gambar 3.5 .Berikut adalah potongan baris program closing.
d= imclose(b,se);
Variabel d berfungsi untuk menampung hasil closing. Citra yang diclosing
adalah citra dari dilasi yang ditampung dalam variable b. Variabel se adalah radius
dari proses closing berlangsung. Proses yang dilakukan untuk mendapatkan
Closing adalah dengan cara melakukan operasi dilasi, lalu hasil dilasi tersebut
dilakukan proses erosi lagi.
Gambar 3.5 Flowchart Closing
3.3.1.5Invers
Pada proses ini akan diinvers (Gambar 3.6). Invers adalah merubah sebuah
mendapatkan nilai pixel putih dalam objek tersebut. Alur proses Invers dapat di
lihat pada gambar 3.7
Setelah dilakukan tahap closing kemudian dilakukan tahap invers. Berikut
adalah potongan baris program invers.
x=imcomplement (d);
Variabel x berfungsi untuk menampung hasil invers. Citra yang di-invers
adalah citra dari closing yang ditampung dalam variabled.
Gambar 3.6 Flowchart Invers
3.3.1.6Erosi
Pada proses ini akan dierosi (Gambar 3.7). Erosi adalah mengecilkan atau
menipiskan obyek citra biner, berbeda dengan dilasi yang melakukan
filtering dimana detail citra yang lebih kecil dari strel akan difilter (dihilangkan)
dari citra. Berbeda dengan dilasi, apabila erosi dilakukan maka yang dikerjakan
adalah memindahkan piksel pada batasan-batasan objek yang akan di erosi.
Jumlah dari pikselyang ditambah atau dihilangkan bergantung pada ukuran dan
bentuk dari structuring element yang digunakan untuk memproses image tersebut.
Alur proses Erosidapat di lihat pada gambar 3.7 .
Setelah dilakukan tahap invers kemudian dilakukan tahap erosi. Berikut
adalah potongan baris program erosi.
e= imerode (x,se);
Variabel eberfungsi untuk menampung hasil erosi. Citra yang di-erosi adalah
citra dari invers yang ditampung dalam variable x. Variabel se adalah radius dari
proses erosi berlangsung.
3.3.1.7Rekonstruksi
Pada proses ini akan direkontruksi. Rekontruksi adalah mengembalikan
bentuk obyek yang tersisa setelah erosi. Alur proses Rekonstruksi dapat di lihat
pada gambar 3.8 .
Gambar 3.8 Flowchart Rekontruksi
Setelah dilakukan tahap erosi kemudian dilakukan tahap rekontruksi. Berikut
adalah potongan baris program rekontruksi.
r =imr econstruct (e,x);
Variabel r berfungsi untuk menampung hasil rekonstruksi. Citra yang
direkonstruksi adalah citra dari erosi yang ditampung dalam variable e. Variabel
se adalah radius dari proses dilasi berlangsung.
Rekonstruksi memproses image dari proses erosi , rekonstruksi
pengembalian piksel yang hilang oleh rekonstruksi mengacu pada image invers .
Rekonstruksi akan mengembalikan objek berpiksel putih .
3.3.1.8 J umlah Pixel
Pada proses ini akan mengetahui jumlah piksel putih. Alur proses jumlah
pixel dapat di lihat pada gambar 3.10.
Setelah dilakukan tahap rekontruksi kemudian dilakukan tahap mengetahui
jumlah piksel. Berikut adalah potongan baris program piksel.
luas=sum (sum(r ));
Variabel luas berfungsi untuk menampung hasil jumlah pixel. Citra yang di
cari jumlah pixel-nya adalah citra dari rekonstruksi yang ditampung dalam
variable r.
3.3.1.9Luas Pulau
Pada proses ini akan mengetahui Luas Pulau. Alur proses Luas Pulaudapat di
lihat pada gambar 3.10. Setelah dilakukan tahap mengetahui jumlah piksel
kemudian dilakukan tahap menghitung luas pulau .
Pada tahap ini yang digunakan adalah perhitungan luas pulau dengan metode
system grid di mana rumusnya “ L = Jumlah Kotak x Penyebut Skala² ”, untuk
menemukan jumlah kotak caranya membagi luas piksel dengan luas 1 cm2, Tetapi karena pada pengolahan citra ukuran yang digunakan adalah picture element
(piksel) maka dalam penelitian tugas akhir ini 1 cm2 = 1440 piksel. Setelah didapatkan jumlak kotak maka akan di kalikan dengan penyebut skala2 dan setelah hasil di dapatkan tinggal di konversi ke kilometer persegi atau km2 (1 km2 = 109 cm2 ) .
Start
Mendapatkan objek yang utuh
End Image rekonstruksi
Hitung pixel putih
Hitung Luas pulau km2