• Tidak ada hasil yang ditemukan

3. DESAIN SISTEM. 16 Universitas Kristen Petra

N/A
N/A
Protected

Academic year: 2021

Membagikan "3. DESAIN SISTEM. 16 Universitas Kristen Petra"

Copied!
15
0
0

Teks penuh

(1)

Segmentasi dengan menggunakan metode Levelset banyak memerlukan proses mulai dari preprocessing sampai segmentasi itu sendiri. Oleh karena itu diperlukan penggunaan hardware yang memadai.

3.1 Penggunaan Hardware yang Disarankan

Penggunaan hardware disarankan untuk menggunakan komputer yang memiliki kecepatan processor tinggi (lebih cepat dari pentium II) atau terkini dan memiliki memori cukup besar (lebih dari 256 MB). Hal ini dibuktikan dalam pengujian pada bab selanjutnya. Dalam Tugas Akhir ini processor yang cepat digunakan untuk menghitung data pada banyak titik. Proses yang dilakukan juga membutuhkan memori yang cukup besar, terutama apabila gambar yang digunakan memiliki ukuran yang besar. Dengan menggunakan komputer yang cukup tua (Pentium II atau lebih kuno), software ini masih dapat dijalankan, tentunya dengan penambahan waktu proses yang cukup besar.

Komputer yang dipergunakan untuk pembuatan Tugas Akhir ini memiliki spesifikasi :

• Pentium IV – 1,5 GHz • Memory 512 MB.

• VGA Card GeForce 4 MX 64 MB

3.2 Perencanaan Software

Software ini adalah software yang dibuat khusus untuk Level Set beserta

proses-proses lainnya yang dibutuhkan agar gambar dapat tersegmentasi dengan baik. Untuk itu diperlukan rancangan dari algoritma yang digunakan. Secara garis besar algoritma digambarkan seperti pada gambar 3.1.

(2)

START END Input Gambar PreProcessing Inisialisasi Kurva Inisialisasi berdasar kurva inisialisasi Ubah parameter ? Evolusi Kurva

Tidak Proses berdasar parameter baru Ya

Crop

Simpan hasil

crop ? Ya Save Gambar

Tidak

Input Parameter

Gambar 3.1 Diagram Alir Program Secara Garis Besar Keterangan:

• Input gambar yang akan disegmentasi, setelah nama gambar diinputkan maka gambar akan diload dan ditampilkan di layar. Input berupa file gambar yang mempunyai ekstensi BMP, JPG, atau JPEG.

• Preprocessing disini terdiri dari Grayscaling, Gaussian blur, Hitung KI (Sobel), dan inisialisasi semua variabel yang dibutuhkan. Semua proses tersebut dan akan dibahas lebih lanjut setelah ini.

(3)

• Inisialisasi kurva, membuat kurva inisialisasi yang berbentuk lingkaran. Dimana informasi akan didapat dari kurva inisialisasi yang nantinya akan digunakan untuk proses selanjutnya.

• Banyak proses yang membutuhkan data dari kurva inisialisasi, jika kurva inisialisasi telah dibuat maka dilakukan proses-proses seperti hitung

distance, membuat boundary, membuat evolving area. Semua proses

tersebut akan dibahas setelah ini.

• Parameter yang ada yaitu

ε

, Δt, treshold, mode evolusi yang diinginkan dan jumlah iterasi dapat diubah sesuai dengan kebutuhan. Jika tidak ada perubahan maka parameter yang digunakan adalah parameter yang telah ditentukan (default).

• Jika ada perubahan pada parameter maka program akan menyetarakan variabel-variabel yang ada dengan input dari user. Terutama parameter

treshold, jika parameter ini berubah maka program akan secara otomatis

menghitung ulang nilai KI dengan treshold sesuai dengan input.

• Evolusi Kurva adalah proses dimana kurva akan berevolusi (mengembang atau mengempis) dengan menggunakan metode Level Set sampai kurva berhenti setelah memenuhi kondisi berhenti (stopping term).

• Setelah kurva berhenti berevolusi maka obyek yang berada didalam kurva akan dicrop atau dikopi ke gambar lain.

• Gambar hasil crop dapat disimpan ke dalam file berbentuk BMP. 3.2.1. Preprocessing

Preprocessing adalah kumpulan proses-proses yang dilakukan sebelum

proses segmentasi agar segmentasi gambar memberikan hasil yang terbaik. Proses

Grayscaling, Gaussian Blur, dan Hitung KI (Sobel) adalah proses-proses yang

termasuk dalam preprocessing. Sesuai dengan Gambar 3.2 maka setiap proses dalam preprocessing pasti dilakukan setelah sebuah file gambar diload. Proses yang pertama kali dilakukan adalah proses Grayscaling. Proses Grayscaling adalah proses untuk mengubah gambar yang memiliki 3 komponen warna (RGB) menjadi 1 komponen warna yaitu Gray-Level. Pada gambar 3.2 dijelaskan cara kerja dari proses ini dalam bentuk diagram alir.

(4)

For x = 0 to lebar gambar - 1

For y= 0 to tinggi gambar - 1

Ambil nilai pixel posisi x, y

Pisahkan nilai R, G dan B

Nilai pixel yang baru = 0,299 * R + 0,587 * G + 0,114 * B

Isi nilai pixel posisi , y (R,G,B) = Nilai pixel yang baru

End y

x Grayscaling

Gambar 3.2 Diagram Alir Proses GrayScaling

Gambar yang diubah menjadi Gray-Level akan disamakan nilai masing-masing komponen warnanya yaitu R, G, B. masing-masing-masing-masing komponen tersebut akan diisi dengan satu nilai yang didapat dengan mengalikan setiap komponen warna dengan persentasi tertentu. Kemudian semua hasil dari perhitungan dijumlahkan untuk mendapatkan nilai warna pixel yang baru.

Proses yang selanjutnya adalah proses Gaussian Blur dengan menggunakan Gaussian averaging operator yang telah dijelaskan sebelumnya.

Gaussian Blur merupakan salah satu metode smoothing filter yang baik karena

dapat mengurangi noise tanpa mengurangi detail pada gambar. Gaussian Blur pada proses ini digunakan untuk mempertebal border sehingga lebih mudah untuk mendeteksi obyek pada gambar. Rumus untuk menghirung gaussian blur yaitu

(5)

dengan mengalikan nilai hasil grayscaling dengan matriks pada tabel 2.1. Pada Gambar 3.3 dijelaskan cara kerja dari proses ini dalam bentuk diagram alir.

For x = 1 to lebar gambar - 2

For y = 1 to tinggi gambar - 2

Ambil nilai pixel posisi x, y

Pisahkan nilai R, G dan B

Nilai pixel R, G, B yang baru =

((pixel x - 1, y - 1 * 0,37) + (pixel x, y - 1 * 0,61) + (pixel x + 1, y - 1 * 0,37) + (pixel x - 1, y * 0,61) + (pixel x, y * 1) + (pixel x + 1, y * 0,61) + (pixel x - 1, y + 1 * 0,37) + (pixel x, y + 1 * 0,61) + (pixel x + 1, y + 1 * 0,37)) /

4.92

Isi nilai pixel posisi , y (R,G,B) = (R baru, G baru, B baru)

End y

x Gaussian Blur

Gambar 3.3 Diagram Alir Proses Gaussian Blur

Pada proses ini digunakan lebar atau σ dari Gaussian Filter adalah 1. Proses terakhir dalam preprocessing adalah proses Hitung KI dengan menggunakan Sobel seperti yang telah dijelaskan sebelumnya. Sobel digunakan untuk mendeteksi border sebuah obyek pada gambar, nilai hasil sobel akan besar apabila berada pada border, sebaliknya nilainya akan semakin mendekati nol apabila tidak berada pada border. Hasil dari Sobel ini akan digunakan untuk menghitung KI yang telah dijelaskan sebelumnya.

(6)

Pada Gambar 3.4 dijelaskan cara kerja proses ini dalam bentuk diagram alir.

(7)

Pada Gambar 3.4 hasil perhitungan dari Matrik_Horisontal dan Matrik_Vertikal digabungkan dengan menggunakan operator OR. Penggunaan operator OD untuk mendapatkan nilai border dari dua arah. Hal ini dilakukan untuk mendapatkan border dari obyek secara keseluruhan yaitu secara vertikal dan horisontal.

Dalam sebuah gambar yang memiliki perbedaan warna yang kompleks akan ditemui banyak sekali border di dalamnya, ini dikarenakan banyaknya tingkat gradasi warna. Misalkan pada gambar foto wajah, di daerah wajah orang pasti terdapat banyak sekali perbedaan tingkat gradasi warna, hal ini disebabkan tidak ratanya cahaya yang jatuh di permukaan kulit wajah. Jika segmentasi dilakukan pada seluruh kulit wajah akan sangat sulit karena perbedaan yang sedikit saja sudah membuat proses berhenti. Karena itu diperlukan sebuah parameter treshold sebagai toleransi perbedaan gradasi warna, misal kita memasukkan nilai treshold adalah 25. maka perbedaan gradasi warna yang bernilai sampai dengan 25 akan dijadikan nol atau dianggap tidak ada perbedaan. Hal ini berguna untuk memperluas batas dari obyek yang akan disegmentasi.

Hasil dari perhitungan di atas digunakan untuk menghitung KI. KI bernilai mendekati nol apabila berada pada border, sehingga membuat nilai evolusi kurva sangat kecil seakan-akan kurva berhenti.

3.1.2 Inisialisasi kurva dan inisialisasi berdasar kurva inisialisasi

Pada tahap inisialisasi kurva user diminta untuk membuat kurva yang berbentuk lingkaran sebagai inisialisasi, kurva atau lingkaran inilah yang dinamakan zero Level set Ψ(x,t = 0).

Pada proses inisialisasi berdasar kurva inisialisasi adalah proses awal untuk menghitung distance, inisialisasi boundary dan evolving area.

Distance adalah jarak dari suatu titik terhadap kurva inisialisasi. Distance

adalah komponen yang sangat penting dalam metode Level Set. Dengan distance maka kita dapat mendeteksi di mana kurva berada. Pada Gambar 3.5 dijelaskan proses untuk menghitung distance dalam bentuk diagram alir.

(8)

Gambar 3.5 Diagram Alir Hitung Distance

Pada proses untuk menghitung distance digunakan phytagoras untuk menentukan distance dengan menggunakan titik acuan pusat lingkaran (xpusat,ypusat). Jadi perhitungannya adalah jarak = √ ( (i−xpusat)2 + (j−ypusat)2 ), Setelah mendapatkan nilai dari jarak maka diperiksa apakah titik tersebut berada dalam kurva atau tidak, jika titik tersebut berada di dalam kurva maka distance =

(9)

(jari-jari lingkaran – jarak) kemudian dikalikan dengan -1 agar mendapatkan nilai negatif sebagai penanda titik tersebut berada di dalam kurva. Sebaliknya jika titik berada di luar kurva maka distance = jarak − jari-jari lingkaran.

Proses yang selanjutnya adalah proses inisialisasi boundary, yang dimaksud dengan boundary adalah kurva itu sendiri yaitu batas antara daerah negatif dan daerah positif. Jika ada satu titik bernilai positif bersebelahan dengan titik yang bernilai negatif maka titik itu dianggap sebagai kurva. Pada Gambar 3.6 dijelaskan cara kerja proses ini dalam bentuk diagram alir.

(10)

Gambar 3.6 Diagram Alir Inisialisasi Boundary

Pada proses ini seperti pada Gambar 3.6 terdapat kondisi “IF salah satu tetangga berlawanan tanda”. Yang dimaksud dengan tetangga adalah semua titik yang berjarak 1 terhadap suatu titik. Misalkan suatu titik berada pada posisi x, y maka yang termasuk tetangga dari titik tersebut adalah titik pada posisi (x-1, y-1),

(11)

(x, y-1), (x+1, y-1), (x-1, y), (x+1, y), (x-1, y+1), (x, y+1), (x+1, y+1). Pada tetangga inilah diperiksa apakah nilai distance pada titik-titik tersebut ada yang berlawanan tanda. Jika ya maka titik tersebut merupakan suatu boundary dan digambar di layar sebagai titik. Kumpulan dari titik-titik boundary nantinya akan membentuk sebuah kurva.

Proses yang terakhir adalah proses untuk menentukan daerah mana saja yang berevolusi, proses ini menggunakan metode Narrow Band yang telah dijelaskan sebelumnya. Pada proses ini akan diperiksa apakah suatu titik bertetangga dengan boundary, jika ya maka titik tersebut dijadikan evolving area. Pada Gambar 3.7 dijelaskan cara kerja dari proses ini dalam bentuk diagram alir.

(12)

3.2.3. Evolusi Kurva

Proses evolusi menggunakan metode Level Set untuk menggerakkan kurva sehingga kurva dapat berkembang sampai memenuhi kondisi untuk berhenti (stoping term). Kurva dapat berkembang dengan 2 mode yakni dengan mode mengembang atau mengempis. Jika mode mengembang dipilih maka kurva inisialisasi harus lebih kecil atau berada di dalam obyek yang ingin disegmentasi, sebaliknya jika dipilih mode mengempis maka kurva inisialisasi harus lebih besar atau mengelilingi obyek yang hendak disegmentasi.

Pada gambar 3.8 dijelaskan cara kerja dari proses ini dalam bentuk diagram alir.

(13)

END FOR i =1 to lebar gambar -2

FOR j =1 to tinggi gambar-2

evolving area ?

Tidak Hitung turunan terhadap x,xx,y,yy,xy Ya

K = turunan xx*turunan y2+ 2*turunan x*turunan y*turunan xy + turunan yy*turunan y2/ (turunan x2+turunan y2) 3/2

mode = mengembang

?

Jadikan Nilai K negatif

Jadikan Nilai K positif

Ya

Tidak

F = 1 - ( * KI)

New distance[i,j] = distance[i,j] - t*F

Re-Inisialisasi boundary

j

i Evolusi Kurva

Gambar 3.8 Diagram Alir Evolusi Kurva

Pada gambar 3.8 terdapat hitung turunan x, xx, y, yy, xy. Yang dimaksud dengan x adalah turunan pertama terhadap sumbu x, xx adalah turunan kedua terhadap sumbu x, y adalah turunan pertama terhadap sumbu y, yy adalah turunan kedua terhadap sumbu y, xy adalah turunan terhadap sumbu x dan sumbu y.

(14)

Jika dipilih metode mengembang maka nilai K akan diubah menjadi negatif dan sebaliknya jika dipilih mode mengempis maka nilai K diubah menjadi positif. Hal ini dilakukan agar pergerakan kurva menjadi satu arah.

3.2.4 Crop

Proses Crop adalah proses memindahkan atau mengkopi pixel-pixel warna yang telah disegmentasi. Hasil dari crop ini dapat disimpan ke sebuah file dengan ekstensi BMP, sehingga memudahkan pengguna dalam menyimpan gambar tersebut. Pixel yang dikopi adalah semua titik yang mempunyai nilai distance negatif dan semua titik yang termasuk dalam boundary. Pada gambar 3.9 akan dijelaskan cara kerja proses ini dalam bentuk diagram alir.

END FOR i = 0 to lebar gambar-1

FOR j = 0 to tinggi gambar-1

boundary or Negatif ?

Tidak Kopi pixel ke gambar lain Ya

j

i Crop

(15)

3.2.5 Perencanaan User Interface

Gambar 3.10 User Interface

User Interface didesain dengan pengaksesan semua fitur pada Menu Bar.

Tombol-tombol yang tersedia : 1. Pada menu file

a. Open Image : untuk membuka atau load file gambar. b. Save Image : untuk menyimpan gambar hasil segmentasi c. Exit : untuk keluar dari program

2. Pada menu view

a. Original Image : menampilkan gambar asli yang akan disegmentasi

b. Gray Image with Gaussian Blur : menampilkan gambar Grayscale yang sudah diproses dengan menggunakan Gaussian Blur.

c. Border Image : untuk menampilkan border dari gambar yang akan disegmentasi

d. Crop Image : untuk menampilkan gambar hasil segmentasi 3. Pada menu Segmentation

a. Parameter : untuk mengubah parameter yang ada. b. Excecute : untuk menjalankan evolusi kurva. 4. Pada menu About

Gambar

Gambar 3.1 Diagram Alir Program Secara Garis Besar
Gambar 3.2 Diagram Alir Proses GrayScaling
Gambar 3.3 Diagram Alir Proses Gaussian Blur
Gambar 3.4 Diagram Alir Proses Hitung K I
+7

Referensi

Dokumen terkait

Desain grafis adalah salah satu bentuk seni lukis (gambar) ilmu terapan yang dapat memberikan kebebasan kepada sang perancang untuk memilih, menciptakan, atau mengatur elemen

Antarcitra Trans, Diagram alir yang tersaji pada Gambar 5 merupakan alur logika aplikasi Sistem Informasi yang dikembangkan untuk penelitian ini. Gambar 5 Diagram Alir

Sesudah itu Yusuf menahan salah seorang dari saudaranya, yaitu Simeon anak yang kedua untuk dijadikan jaminan, sementara yang lain harus pulang untuk kembali membawa adik mereka

Warna-warna yang saling berdampingan dapat mempengaruhi bentuk objek dan juga penampilan warna itu sendiri dengan memperbandingkan apakah warna tersebut lebih terang atau

Gambar 3.1 Diagram alir perencanaan repair sistem AC 33 Gambar 3.2 Diagram alir proses pengujian awal performance 34 Gambar 3.3 Diagram alir pemeriksaan dan perbaikan kondensor

E(R j,t ) = Return yang diharapkan dari saham j pada minggu t 5.c Menghitung nilai CAR (cumulative abnormal return) dari masing- masing sampel saham yang digunakan dalam

Berdasarkan hasil survey di salah satu sekolah dasar di Surabaya, anak- anak usia 5-10 tahun menyukai buku cerita yang di dalamnya terdapat ilustrasi yang

Dalam diagram alir tersebut beberapa proses yang dijelaskan dalam tabel 3.3 Gambar 3.9Diagram Alir Perangkat Lunak Alat Ukur Tinggi Badan Tabel 3.3Penjelasan Diagram Alir Proses awal