• Tidak ada hasil yang ditemukan

BAB III : ANALISA DAN PERANCANGAN SISTEM

4.3 Implementasi Pengujian

Implementasi pengujian yang dilakukan meliputi Running Time yang digunakan untuk menghitung lama waktu proses penipisan, Sum of Remove

Pixel yang digunakan untuk menghitung jumlah piksel sesudah proses

piksel citra sebelum penipisan, One-pixel thickness yang digunakan untuk mengetahui persentase piksel yang memenuhi syarat One-pixel thickness, Sum Template A yang digunakan untuk mengetahui jumlah Template A dan Sum Not Critical Point yang digunakan untuk mengetahui jumlah piksel yang bukan critical point.

4.3.1 Implementasi Pengamatan Ukuran Citra

Implementasi Pengamatan Ukuran Citra tidak dilakukan dengan

coding matlab, namun dilakukan dengan pengamatan secara

langsung terhadap tiap-tiap citra asli dan citra rangka. Setelah melakukan pengamatan, data yang dihasilkan dilakukan perhitungan dan mendapatkan rata-rata ukuran citra asli dan citra rangka.

4.3.2 Implementasi Sum Template A dan Sum Not Critical Point

Implementasi Sum Template A dan Sum Not Critical Point ditunjukkan pada pseudocodeberikut ini:

Implementasi Sum Template A dan Sum Not Critical Point: 1. Inisialisasi variabel contain_A = 0

2. Untuk setiap titik obyek pada citra rangka lakukan langkah 3 3. Uji apakah merupakan template A1, jika ya lakukan langkah

3.a jika tidak lakukan langkah 4.

a.Uji apakah merupakan template B1 atau C,

i. Jika ya, not critical point bertambah 1dan lakukan langkah 4.

ii. Jika tidak , nilai contain_A bertambah 1, lakukan langkah 4 4. Uji apakah merupakan template A2, jika ya lakukan langkah

4.a jika tidak, lakukan langkah 5.

i. Jika ya not critical point bertambah 1 lakukan langkah 5

ii. Jika tidak nilai contain_A bertambah 1, lakukanlangkah 5

5. Uji apakah merupakan template A3, jika ya lakukan langkah 5.a jika tidak lakukan langkah 6.

a. Uji apakah merupakan template B3 atau C

i. Jika ya not critical point bertambah 1 dan lakukan langkah 6

ii. Jika tidak nilai contain_A bertambah 1, lakukan langkah 6

6. Uji apakah merupakan template A4, jika ya lakukan langkah 6.a

a. Uji apakah merupakan template B4 atau C, i. Jika ya nilai not critical point bertambah 1 ii. Jika tidak nilai contain_A bertambah 1

4.3.3 Implementasi One-pixel thickness

Implementasi One-pixel thickness akan menghasilkan persentase piksel citra hasil penipisan yang memenuhi syarat One-pixel

thickness. Implementasi One-pixel thickness ditunjukkan pada

pseudocodeberikut ini:

Implementasi One-pixel thickness:

1. Hitung jumlah piksel citra rangka (SumOfPixelSkeleton) dengan cara yang sama pada Implementasi Sum of Pixel Object 2. Hitung jumlah notCriticalPoint seperti pada Implementasi

Sum Template A dan Sum Not Critical Point.

3. Hitung Onepixelthickness dengan cara SumOfPixelSkeleton dikurangi notCriticalPoint.

4. Hitung persentase OnePixelThickness dengan cara

OnePixelThickness dibagi SumOfPixelSkeleton dikali 100%.

Sebelum menemukan persentase One-pixel thickness sebelumnya harus dilakukan perhitungan pada jumlah piksel citra hasil penipisan.

Selanjutnya dari Implementasi Sum Template A dan Sum Not Critical Point dimana akan diketahui jumlah piksel yang merupakan Not Critical Point, piksel ini akan dijadikan pengurang pada jumlah piksel citra hasil penipisan. Hasil perhitungan tersebut kemudian diketahui persentasenya dengan cara pengurangan antara jumlah piksel citra hasil penipisan dan piksel Not Critical Point dibagi dengan jumlah piksel citra hasil penipisan.

4.3.4 Implementasi Sum of Pixel Object

Implementasi Sum of Pixel Object ditunjukkan pada pseudocode berikut ini:

Implementasi Sum of Pixel Object:

1. Inisialisasi temp dengan array citra biner 2. Inisialisasi dimensi citra

3. Inisialisasi count dengan 0

4. Untuk setiap piksel(p) pada baris dan kolom pada input lakukan langkah 4.1.

4.1Uji apakah piksel(p) bernilai 0, jika ya lakukan langkah a, jika tidak lakukan langkah a, jika tidak kembali lakukan langkah 4.

a. Nilai count bertambah 1.

Proses Sum of Pixel Object dilakukan dengan membaca dimensi citra terlebih dahulu, dimensi ini digunakan untuk menentukan batas perulangan for. Jika terdapat piksel 0 atau “on”, maka count akan ditambah satu hingga semua piksel pada citra dieksekusi.

4.3.5 Implementasi Sum of Remove Pixel

Implementasi Sum of Remove Pixel ditunjukkan pseudocode berikut ini:

Implementasi Sum of Remove Pixel

1. Hitung jumlah SumOfPixelObject seperti pada Implementasi Sum of Pixel Object.

2. Hitung jumlah SumOfPixelSkeleton seperti pada Implementasi Sum of Pixel Object dengan citra inputan adalah citra rangka. 3. Hitung sumOfRemovePixel dengan cara SumOfPixelObject

dikurangi SumOfPixelSkeleton

Sebelum melakukan perhitungan Sum of Remove Pixel terlebih dahulu dilakukan perhitungan pada jumlah piksel citra sebelum dilakukan penipisan dan menghitung jumlah piksel citra hasil penipisan.

4.3.6 Implementasi Running Time

Implementasi yang dilakukan pada Running Time ditunjukkan pada pseudocodeberikut ini:

Implementasi Running Time:

1. Inisialisasi variabel runningTime dengan 0.

2. Inisalisasi perintah “tac” sebelum implementasi algoritma Nagendraprasad-Wang-Gupta.

3. Inisialisasi variabel runningTime dengan toc setelah implementasi algoritma Nagendraprasad-Wang-Gupta.

Perintah tic digunakan untuk memulai perhitungan waktu dan toc untuk mengakhiri waktu eksekusi penipisan, yaitu ketika nilai h>0 tidak lagi terpenuhi.

4.3.7 Implementasi Connectivity

Implementasi Connectivity dilakukan dengan melakukan pengamatan secara langsung tiap-tiap citra masukan dengan citra hasil penipisan. Pengamatan meliputi bentuk rangka dan bentuk citra inputan, hasil rangka dibandingkan secara langsung terhadap citra inputan, dalam

hal ini adalah citra rangka yang mengandung template A dan bukan critical point karena sebuah citra rangka yang mengandung template A memiliki kemungkinan bahwa piksel yang merupakan template A dan bukan critical point berada di luar jalur bentuk asli dari suatu citra masukan.

Selain itu, pengamatan juga dilakukan pada citra yang memiliki lubang dan memiliki bentuk terpisah, karena ada kemungkinan proses penipisan melakukan penghapusan pada piksel yang seharusnya tidak terhapus. Jika lubang yang ada pada citra rangka sudah ada dari citra masukan maka dapat disimpulkan bahwa lubang yang terbentuk sudah ada sejak citra sebelum diproses. Pengamatan pada bentuk citra rangka yang terpisah bertujuan untuk melihat apakah bentuk yang terpisah tersebut apakah memang bentuk aslinya, atau terjadi ketidak keterhubungan, jika memang bentuk aslinya dan bila ada citra rangka dengan piksel yang terpisah akibat terputus, maka dilakukan pengamatan lebih lanjut, apakah putusnya piksel disebabkan data yang telah putus sebelum dilakukan penipisan, misal akibat proses binerisasi.

4.3.8 Implementasi Waktu Asimtotik Algoritma

Implementasi waktu asimtotik dilakukan dengan melakukan proses perhitungan berdasarkan ketentuan Waktu Asimtotik yang telah diterangkan pada Bab II, tiap-tiap bagian dari algoritma NWG

dilakukan perhitungan, dari perhitungan yang dilakukan maka akan mendapatkan hasil berupa notasi. Notasi yang didapatkan akan dibandingkan dengan Tabel 2.1 pada halaman 34, dari hasil pembandingan akan diketahui notasi berada di dalam kelompok tertentu, dimana setiap kelompok memiliki tingkat efektifitas yang berbeda-beda.

4.3.9 Implementasi Pengematan Visual

Implementasi pengamatan visual dilakukan dengan cara membagi kusioner kepada 50 responden. Kuisoner berisikan hasil citra penipisan dan citra inputan dari algoritma NWG dan Rosenfeld sebagai algoritma pembanding. Pengamatan dilakukan dengan membandingkan citra rangka terhadap citra asli dengan tiga buah nilai: mirip, lumayan dan tidak mirip. Dari hasil pengamatan citra yang sama dari 50 responden dilakukan penghitungan, maka akan didapatkan jumlah responden yang mengatakan mirip, lumayan dan tidak mirip. Jika sudah didapatkan dari tiap-tiap citra selanjutnya dilakukan perhitungan rata-rata keseluruhan yang menyatakan algoritma NWG mirip, lumayan dan tidak mirip Hal serupa juga dilakukan pada algoritma pembanding yaitu algoritma Rosenfeld, jika kedua rata-rata Algoritma diketahui maka akan ditemukan hasil rangka algoritma NWg atau Rosenfeld yang lebih mirip.

Dokumen terkait