Implementasi Deteksi Tepi Canny Dan Isotropik Dengan Transformasi Power Law Studi Kasus Kanker Mulut Rahim (Serviks) Chapter III V
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem adalah sebuah teknik pemecahan masalah yang menguraikan sebuah
sistem menjadi bagian – bagian komponen dengan tujuan mempelajari seberapa baik
setiap komponen tersebut bekerja dan berinteraksi untuk meraih tujuan mereka.
Analisis sistem memiliki tiga fase untuk mendeskripsikan pengembangan sistem yaitu,
analisis masalah, analisis kebutuhan, dan analisis proses. Tujuan analisis masalah
adalah mempelajari dan memahami bidang masalah dengan cukup baik untuk secara
menyeluruh menganalisis masalah, kesempatan dan batasannya (Whitten et al. 2004).
3.1.1.Analisis Masalah
Analisis masalah merupakan langkah pertama yang dilakukan dalam tahap analisis
sistem. Masalah dapat diartikan sebagai suatu pertanyaan yang diinginkan untuk
dipecahkan. Masalah utama yang diangkat dari penelitian ini adaah bagaimana
mendeteksi kanker dengan tepat menggunakan deteksi tepi citra digital. Pada penelian
ini, citra yang akan dideteksi adalah citra hasil kolposkopi dengan format jpg yang
berukuran 200 x 200 piksel. Sistem akan melakukan pendeteksian tepi citra hasil
kolposkopi terlebih dahulu dengan pilihan, yaitu Canny dan Isotropik, selanjutnya
citra hasil deteksi tepi tersebut disimpan dalam sebuah folder. Setelah itu sistem akan
melakukan pendeteksian kanker dengan menghitung nilai Euclidean distance citra
yang telah mengalami proses deteksi tepi.
Cara populer yang sering digunakan untuk menganalisis, mengidentifikasi, dan
menyelesaikan masalah sering disebut Ishikawa diagram/diagram Ishikawa. Konsep
dasar dari diagram fishbone adalah nama masalah yang mendapat perhatian
dicantumkan di sebelah kanan diagram dan penyebab masalah yang mungkin
digambarkan sebagai tulang – tulang dari tulang utama. (Whitten et al. 2004).
Universitas Sumatera Utara
Pada gambar 3.1 merupakan gambaran masalah secara umum dari penelitian
dengan menggunakan diagram Ishikawa (fishbone/cause and effect diagram).
Material
Pengguna
Pengguna ingin
mendapatkan hasil deteksi
kanker serviks dengan cepat
Besarnya biaya untuk
melakukan deteksi kanker
serviks
Belum ada metode
algoritma canny
dan isotropic
dengan
transformasi power
law untuk
Citra berwarna *png
hasil dari kolposkopi
Membuat aplikasi
deteksi kanker
serviks
Belum ada aplikasi
pendeteksi kanker serviks
yang memberikan solusi
Masih sedikit aplikasi yang
dapat mendeteksi hasil
kolposkopi dengan akurat
Metode
Mesin
Gambar 3.1. Diagram Ishikawa untuk Analisis Masalah
Pada gambar 3.1. kotak paling kanan (atau pada kepala ikan) nama masalah
yaitu bagaimana membuat aplikasi pendeteksian kanker serviks menggunakan
algoritma canny dan isotropik dengan transformasi power law. Kemudian tulangtulang yang mengarah ke tulang utama (garis horizontal yang menuju ke kepala ikan)
adalah kategori masalah yaitu pengguna, material, metode dan mesin. Dan tanda
panah kecil yang menuju kategori masalah adalah sebab dari masalah yang berada
pada kepala ikan.
3.1.2 Analisis Kebutuhan
Analisis kebutuhan terbagi atas dua bagian, yaitu kebutuhan fungsional dan kebutuhan
nonfungsional. Kebutuhan fungsional mendeskripsikan aktivitas yang disediakan
suatu sistem. Sedangkan kebutuhan nonfungsional mendeskripsikan fitur, karakteristik
dan batasan lainnya (Whitten, 2004).
3.1.2.1 Kebutuhan Fungsional
Kebutuhan fungsional adalah segala hal yang harus dimiliki oleh sistem. Terdapat
beberapa hal yang menjadi kebutuhan fungsional antara lain adalah :
Universitas Sumatera Utara
1. Perangkat lunak yang dibangun menggunakan citra berwarna hasil
kolposkopi dengan format (*.png).
2. Perangkat lunak yang dibangun dapat melakukan proses deteksi tepi dengan
metode Canny dan Isotropik.
3. Perangkat lunak yang dibangun menggunakan menggunakan transformasi
power law root power.
4. Perangkat lunak yang dibangun menggunakan ukuran citra 200 x 200 piksel.
3.1.2.2 Kebutuhan Nonfungsional
Kebutuhan nonfungsional adalah beberapa kebutuhan yang harus dilakukan oleh
sistem. Kebutuhan nonfungsional tersebut antara lain adalah:
1. Performa
Perangkat lunak yang dibangun dapat menunjukkan hasil dari proses
deteksi tepi pada citra hasil kolposkopi.
2. Mudah Dipelajari dan Digunakan
Tampilan dari perangkat lunak yang dibangun adalah ramah pengguna
(user friendly) dan sederhana.
3. Hemat Biaya
Perangkat lunak yang dibangun adalah hemat biaya karena dapat diakses
tanpa menggunakan jaringan internet dan tidak berbayar.
4. Dokumentasi
Perangkat lunak yang akan dibangun harus bisa menyimpan citra hasil
proses deteksi tepi.
5. Kontrol
Perangkat lunak yang akan dibangun harus dapat menampilkan dialog
error ketika user salah dalam menginputkan citra.
6. Manajemen kualitas
Perangkat lunak yang akan dibangun harus memiliki kualitas yang baik
yaitu dapat menghitung nilai Euclidean Distance dan menampilkan hasil
prediksi kanker serviks dan solusinya dengan tepat.
Universitas Sumatera Utara
3.1.3 Analisis Proses
Dalam bagian ini terdapat 2 proses dasar yaitu deteksi tepi dan deteksi kanker. Deteksi
tepi yang digunakan adalah deteksi tepi canny dan isotropic dengan transformasi
power law. Setelah itu dilakukan deteksi kanker serviks dengan melakukan
perhitungan Euclidean Distance yang kemudian sistem akan menampilkan hasil
prediksi stadium kanker dan solusi terhadap kanker tersebut.
3.2 Perancangan Sistem
Perancangan sistem merupakan cara untuk mendapatkan gambaran dengan jelas
tentang apa yang akan dikerjakan pada analisis sistem dan dilanjutkan dengan
memikirkan bagaimana membuat sistem tersebut. Perancangan sistem adalah suatu
fase dimana diperlukan suatu keahlian perancangan untuk elemen-elemen komputer
yang akan menggunakan sistem, yaitu pemilihan peralatan dan program komputer
untuk sistem baru.
Tujuan dari tahap perancangan sistem ini adalah untuk memenuhi kebutuhan
pengguna sistem dan memberikan gambaran yang jelas serta menghasilkan rancang
bangun yang lengkap kepada pemrogram komputer dan ahli-ahli teknik lainnya yang
terlibat di dalam pengembangan atau pengguna sistem.
Pada penelitian ini, penulis menggunakan UML (Unified Modeling Language)
sebagai bahasa pemodelan untuk merancang sistem pendiagnosa tingkat stadium
kanker dengan menggunakan operator deteksi tepi Canny dan Isotropik. Adapun
model UML yang akan dipakai adalah general arsitektur sistem, use case diagram,
activity diagram, sequence diagram, dan flowchart.
Universitas Sumatera Utara
3.2.1. General Arsitektur Perancangan Sistem
General arsitektur perancangan sistem adalah gambaran sistem secara keseluruhan
yang meliputi proses input data, proses sistem berlangsung, dan output data yang
dikeluarkan dari sistem.
Deteksi tepi canny
Input citra
kolposkopi
transformasi
power law
Deteksi tepi Isotropik
hitung running time, MSE,PSNR
Hitung Euclidean
& simpan gambar
distance
user memilih
metode deteksi tepi
tampilan running time, nilai MSE,
PSNR hasil deteksi tepi, diagnosa,
dan pengobatan
hitung running time, MSE,PSNR
& simpan gambar
Hitung Euclidean
distance
Gambar 3.2. General arsitektur perancangan sistem
General arsitektur sistem pada gambar 3.2. diatas menunjukkan interaksi yang
dilakukan pengguna kepada sistem. Tahap pertama pengguna memasukkan citra asli
hasil kolposkopi yang berasal dari situs resmi departemen kesehatan. Kemudian
sistem melakukan proses transformasi power law. Setelah itu pengguna memilih
metode mana yang ingin diproses terlebih dahulu. Jika pengguna ingin melakukan
proses detesi tepi dengan metode canny maka sistem memproses deteksi tepi dengan
metode Canny serta penghitungan running time, MSE, dan PSNR begitu juga dengan
metode isotropik. Selanjutnya pengguna menyimpan gambar hasil deteksi tepi dan
sistem melakukan penyimpanan citra. Untuk tahap kedua pengguna memasukkan citra
hasil deteksi tepi kemudian melakukan diagnosa dengan menghitung nilai Euclidean
Distance. Untuk penghitungan Euclidean distance penulis menggunakan klasifikasi
tiap stadium menjadi 4 klasifikasi yaitu Serviks normal, Stadium 1, Stadium 2,
Stadium 3, dan Stadium 4. Gambar acuan yang disediakan untuk tiap stadium ada 3
gambar. Bahan acuan yang digunakan adalah gambar yang sudah memiliki tepi-tepi
Universitas Sumatera Utara
artinya gambar acuan adalah gambar yang telah melalui proses deteksi tepi. Tahap
terakhir sistem menampilkan hasil deteksi tepi, diagnosa kanker serviks dan solusi
pengobatan kanker.
3.2.2. Use Case Diagram
Diagram use case
(use case diagram)
adalah diagram atau
alur
yang
merepresentasikan interaksi yang terjadi antara pengguna dan sistem. Diagram ini
mendeskripsikan siapa saja yang dapat berinteraksi dengan sistem dan bagaimana cara
mereka berinteraksi. Diagram ini divisualisasikan dengan actor, use case, dan
relasinya sebagai suatu urutan tindakan yang memberikan nilai terukur untuk actor.
Sebuah use case digambarkan sebagai elips horizontal dalam suatu diagram use case
(Haviluddin, 2011).
Pada sistem deteksi kanker, ada beberapa interaksi yang dapat dilakukan
pengguna kepada sistem, yaitu seperti yang ditunjukkan pada Gambar 3.3. berikut.
Gambar 3.3. Use Case Diagram Sistem
Diagram use case pada Gambar 3.3. menunjukkan interaksi sistem yang akan
dijalankan sistem kepada pengguna. Dapat dilihat dari use case diatas pengguna dapat
memilih dua langkah besar. Pertama, pengguna akan memilih deteksi tepi dimana
pengguna akan memasukkan citra, selanjutnya memilih proses transformasi citra
Universitas Sumatera Utara
kemudian memilih deteksi tepi mana yang ingin diproses terlebih dahulu, kemudian
sistem melakukan perhitungan running time, nilai MSE dan PSNR setelah proses
deteksi tepi dan perhitungan running time, mse, dan psnr selesai pengguna dapat
menyimpan dan menghapus citra. Langkah kedua, pengguna memilih deteksi kanker
dengan memasukkan citra hasil deteksi tepi masing – masing metode. Kemudian
pengguna memilih Euclidean Distance untuk menghitung nilai kemiripan citra hasil
dengan citra sumber sehingga akan diketahui hasil prediksi tingkat stadium dan solusi
kanker yang terdeteksi.
3.2.2.1. Skenario Use Case Deteksi Tepi
Skenario use case dapat dilihat pada table 3.1 di bawah ini.
Tabel 3.1 Skenario use case deteksi tepi
Name
Deteksi Tepi
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi tepi
Description
1. Penguna memilih menu Deteksi Tepi.
2. Sistem menampilkan halaman Deteksi Tepi.
3. Pengguna menginputkan citra.
4. Pengguna mengeksekusi tombol Transformasi.
5. Pengguna mengeksekusi tombol Canny.
6. Pengguna mengeksekusi tombol Isotropik.
7. Pengguna dapat melihat gambar hasil deteksi tepi.
8. Pengguna Menyimpan gambar hasil deteksi tepi.
9. Pengguna mengeksekusi tombol Clear.
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil deteksi tepi.
Alternate Flow
-
3.2.2.2. Skenario Use Case Input Citra
Skenario use case dapat dilihat pada table 3.2 di bawah ini.
Universitas Sumatera Utara
Tabel 3.2 Skenario use case input citra
Name
Input Citra
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi tepi
Description
1. Penguna memilih menu Deteksi Tepi.
2. Pengguna mengeksekusi tombol input citra
3. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
4. Pengguna memilih gambar yang ingin dipilih.
5. Sistem akan menampilkan gambar yang telah dipilih.
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar yang telah dipilih
Alternate Flow
-
3.2.2.3. Skenario Use Case Transformasi
Skenario use case dapat dilihat pada table 3.3 di bawah ini.
Tabel 3.3 Skenario use case Transformasi
Name
Transformasi
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi tepi
Description
1. Penguna memilih menu Deteksi Tepi.
2. Pengguna mengeksekusi tombol Transformasi
3. Sistem melakukan proses Transformasi dan menampilkan
hasilnya.
4. Pengguna dapat melihat hasil citra tranformasi
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil transformasi
Alternate Flow
-
Universitas Sumatera Utara
3.2.2.4. Skenario Use Case Canny
Skenario use case dapat dilihat pada table 3.4 di bawah ini.
Tabel 3.4 Skenario use case Canny
Name
Canny
Actors
Pengguna
Trigger
Pengguna melihat button Canny
Description
1. Penguna mengeksekusi tombol Canny.
2. Sistem melakukan proses deteksi tepi Canny.
3. Sistem menampilkan hasil gambar deteksi tepi Canny
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil deteksi tepi Canny
Alternate Flow
-
3.2.2.5. Skenario Use Case Isotropik
Skenario use case dapat dilihat pada table 3.5 di bawah ini.
Tabel 3.5 Skenario use case Isotropik
Name
Input Citra
Actors
Pengguna
Trigger
Pengguna telah melihat button Isotropik
Description
1. Penguna mengeksekusi tombol Isotropik.
2. Sistem melakukan proses deteksi tepi Isotropik.
3. Sistem menampilkan hasil gambar deteksi tepi Isotropik.
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil deteksi tepi Isotropik
Alternate Flow
-
3.2.2.6. Skenario Use Case Save
Skenario use case dapat dilihat pada table 3.6 di bawah ini.
Universitas Sumatera Utara
Tabel 3.6 Skenario use case Save
Name
Save
Actors
Pengguna
Trigger
Pengguna melihat hasil deteksi tepi canny dan Isotropik
Description
4. Penguna telah melihat hasil deteksi tepi Canny dan Isotropik.
5. Pengguna mengeksekusi tombol save.
6. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
7. Pengguna menyimpan citra hasil deteksi tepi.
8. Sistem akan menyimpan citra hasil deteksi tepi.
Pre Condition
Pengguna telah melihat hasil deteksi tepi.
Post Condition
Sistem menyimpan file citra hasil deteksi tepi.
Alternate Flow
-
3.2.2.7. Skenario Use Case Deteksi Kanker
Skenario use case dapat dilihat pada table 3.7 di bawah ini.
Tabel 3.7 Skenario use case Deteksi Kanker
Name
Deteksi kanker
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi kanker
Description
1. Penguna memilih menu Deteksi kanker
2. Sistem menampilkan halaman Deteksi kanker
3. Pengguna mencari citra.
4. Sistem menampilkan citra yang dipilih.
5. Pengguna mengeksekusi tombol Deteksi.
6. Pengguna melihat hasil deteksi kanker.
Pre Condition
Pengguna memilih menu Deteksi kanker
Post Condition
Sistem menampilkan gambar hasil deteksi Kanker dan prediksi
stadium kanker
Alternate Flow
-
Universitas Sumatera Utara
3.2.2.8. Skenario Use Case Browser Canny
Skenario use case dapat dilihat pada table 3.8 di bawah ini.
Tabel 3.8 Skenario use case Browser Canny
Name
Browser Canny
Actors
Pengguna
Trigger
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Description
1. Penguna telah melihat citrta hasil deteksi tepi canny yang
dipilih untuk proses deteksi Kanker
2. Pengguna mengeksekusi tombol Browser.
3. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
4. Pengguna memilih gambar yang ingin dipilih.
5. Sistem akan menampilkan gambar yang telah dipilih.
Pre Condition
Pengguna memilih menu Deteksi kanker
Post Condition
Sistem menampilkan gambar yang dipilih
Alternate Flow
-
3.2.2.9. Skenario Use Case Browser Isotropik
Skenario use case dapat dilihat pada table 3.9 di bawah ini.
Tabel 3.9 Skenario use case Browser Isotropik
Name
Browser Isotropik
Actors
Pengguna
Trigger
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Description
1. Penguna telah melihat citrta hasil deteksi tepi canny yang
dipilih untuk proses deteksi Kanker
2. Pengguna mengeksekusi tombol Browser.
3. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
4. Pengguna memilih gambar yang ingin dipilih.
Universitas Sumatera Utara
5. Sistem akan menampilkan gambar yang telah dipilih.
Pre Condition
Pengguna memilih menu Deteksi kanker
Post Condition
Sistem menampilkan gambar yang dipilih.
Alternate Flow
-
3.2.2.10. Skenario Use Case Deteksi
Skenario use case dapat dilihat pada table 3.10 di bawah ini.
Tabel 3.10 Skenario use case Deteksi
Name
Deteksi
Actors
Pengguna
Trigger
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Description
1. Penguna telah melihat citrta hasil deteksi tepi canny yang
dipilih untuk proses deteksi Kanker
2. Pengguna mengeksekusi tombol Deteksi
3. Sistem akan melakukan Proses Perhitungan nilai Euclidean
Distance.
4. Sistem menampilkan hasil prediksi stadium
kanker dan
pengobatannya.
5. Pengguna dapat melihat hasil prediksi stadium kanker dan
pengobatannya.
Pre Condition
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Post Condition
Sistem menampilkan hasil prediksi stadium kanker dan
pengobatannya.
Alternate Flow
-
3.2.3. Activity Diagram
Diagram aktivitas atau activity diagram menggambarkan aliran kerja (workflow) atau
aktivitas dari sebuah sistem atau proses bisnis. Activity diagram ini menggambarkan
aktivitas suatu sistem serta proses timbal balik antar sistem tersebut (Setiady, et
al.2013). Activity diagram pada sistem deteksi tepi ini akan ditunjukkan pada Gambar
3.4.
Universitas Sumatera Utara
Menghitung Running
time, Mse dan Psnr
Gambar 3.4. Activity Diagram form deteksi tepi
Gambar 3.5. Activity Diagram form deteksi kanker
Universitas Sumatera Utara
3.2.4. Sequence Diagram
Sequence diagram menggambarkan perilaku objek pada use case dengan
mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar
objek (Setiady, et al. 2013). Sequence diagram ini memperlihatkan kolaborasi
dinamik antara objek-objek dengan suatu urutan pesan diantara objek tersebut.
Sequence diagram pada sistem deteksi tepi ini akan ditunjukkan pada Gambar 3.6.
berikut.
Gambar 3.6. Sequence Diagram sistem
Universitas Sumatera Utara
3.2.5.Pseudocode
Pseudocode
merupakan sebuah kode yang digunakan untuk menuliskan sebuah
algoritma dengan cara yang bebas yang tidak terkait dengan bahasa pemrograman
tertentu. Pseudocode berisi langkah-langkah untuk menyelesaikan suatu permasalahan
yang bentuknya sedikit berbeda dari algoritma. Pseudocode menggunakan bahasa
yang hampir menyerupai bahasa pemrograman melainkan menggunakan bahasa yang
mudah dipahami secara umum dan juga lebih ringkas.
3.2.5.1 Pseudocode Deteksi Tepi Canny
1. Melakukan Gaussian filter
Sigma
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem adalah sebuah teknik pemecahan masalah yang menguraikan sebuah
sistem menjadi bagian – bagian komponen dengan tujuan mempelajari seberapa baik
setiap komponen tersebut bekerja dan berinteraksi untuk meraih tujuan mereka.
Analisis sistem memiliki tiga fase untuk mendeskripsikan pengembangan sistem yaitu,
analisis masalah, analisis kebutuhan, dan analisis proses. Tujuan analisis masalah
adalah mempelajari dan memahami bidang masalah dengan cukup baik untuk secara
menyeluruh menganalisis masalah, kesempatan dan batasannya (Whitten et al. 2004).
3.1.1.Analisis Masalah
Analisis masalah merupakan langkah pertama yang dilakukan dalam tahap analisis
sistem. Masalah dapat diartikan sebagai suatu pertanyaan yang diinginkan untuk
dipecahkan. Masalah utama yang diangkat dari penelitian ini adaah bagaimana
mendeteksi kanker dengan tepat menggunakan deteksi tepi citra digital. Pada penelian
ini, citra yang akan dideteksi adalah citra hasil kolposkopi dengan format jpg yang
berukuran 200 x 200 piksel. Sistem akan melakukan pendeteksian tepi citra hasil
kolposkopi terlebih dahulu dengan pilihan, yaitu Canny dan Isotropik, selanjutnya
citra hasil deteksi tepi tersebut disimpan dalam sebuah folder. Setelah itu sistem akan
melakukan pendeteksian kanker dengan menghitung nilai Euclidean distance citra
yang telah mengalami proses deteksi tepi.
Cara populer yang sering digunakan untuk menganalisis, mengidentifikasi, dan
menyelesaikan masalah sering disebut Ishikawa diagram/diagram Ishikawa. Konsep
dasar dari diagram fishbone adalah nama masalah yang mendapat perhatian
dicantumkan di sebelah kanan diagram dan penyebab masalah yang mungkin
digambarkan sebagai tulang – tulang dari tulang utama. (Whitten et al. 2004).
Universitas Sumatera Utara
Pada gambar 3.1 merupakan gambaran masalah secara umum dari penelitian
dengan menggunakan diagram Ishikawa (fishbone/cause and effect diagram).
Material
Pengguna
Pengguna ingin
mendapatkan hasil deteksi
kanker serviks dengan cepat
Besarnya biaya untuk
melakukan deteksi kanker
serviks
Belum ada metode
algoritma canny
dan isotropic
dengan
transformasi power
law untuk
Citra berwarna *png
hasil dari kolposkopi
Membuat aplikasi
deteksi kanker
serviks
Belum ada aplikasi
pendeteksi kanker serviks
yang memberikan solusi
Masih sedikit aplikasi yang
dapat mendeteksi hasil
kolposkopi dengan akurat
Metode
Mesin
Gambar 3.1. Diagram Ishikawa untuk Analisis Masalah
Pada gambar 3.1. kotak paling kanan (atau pada kepala ikan) nama masalah
yaitu bagaimana membuat aplikasi pendeteksian kanker serviks menggunakan
algoritma canny dan isotropik dengan transformasi power law. Kemudian tulangtulang yang mengarah ke tulang utama (garis horizontal yang menuju ke kepala ikan)
adalah kategori masalah yaitu pengguna, material, metode dan mesin. Dan tanda
panah kecil yang menuju kategori masalah adalah sebab dari masalah yang berada
pada kepala ikan.
3.1.2 Analisis Kebutuhan
Analisis kebutuhan terbagi atas dua bagian, yaitu kebutuhan fungsional dan kebutuhan
nonfungsional. Kebutuhan fungsional mendeskripsikan aktivitas yang disediakan
suatu sistem. Sedangkan kebutuhan nonfungsional mendeskripsikan fitur, karakteristik
dan batasan lainnya (Whitten, 2004).
3.1.2.1 Kebutuhan Fungsional
Kebutuhan fungsional adalah segala hal yang harus dimiliki oleh sistem. Terdapat
beberapa hal yang menjadi kebutuhan fungsional antara lain adalah :
Universitas Sumatera Utara
1. Perangkat lunak yang dibangun menggunakan citra berwarna hasil
kolposkopi dengan format (*.png).
2. Perangkat lunak yang dibangun dapat melakukan proses deteksi tepi dengan
metode Canny dan Isotropik.
3. Perangkat lunak yang dibangun menggunakan menggunakan transformasi
power law root power.
4. Perangkat lunak yang dibangun menggunakan ukuran citra 200 x 200 piksel.
3.1.2.2 Kebutuhan Nonfungsional
Kebutuhan nonfungsional adalah beberapa kebutuhan yang harus dilakukan oleh
sistem. Kebutuhan nonfungsional tersebut antara lain adalah:
1. Performa
Perangkat lunak yang dibangun dapat menunjukkan hasil dari proses
deteksi tepi pada citra hasil kolposkopi.
2. Mudah Dipelajari dan Digunakan
Tampilan dari perangkat lunak yang dibangun adalah ramah pengguna
(user friendly) dan sederhana.
3. Hemat Biaya
Perangkat lunak yang dibangun adalah hemat biaya karena dapat diakses
tanpa menggunakan jaringan internet dan tidak berbayar.
4. Dokumentasi
Perangkat lunak yang akan dibangun harus bisa menyimpan citra hasil
proses deteksi tepi.
5. Kontrol
Perangkat lunak yang akan dibangun harus dapat menampilkan dialog
error ketika user salah dalam menginputkan citra.
6. Manajemen kualitas
Perangkat lunak yang akan dibangun harus memiliki kualitas yang baik
yaitu dapat menghitung nilai Euclidean Distance dan menampilkan hasil
prediksi kanker serviks dan solusinya dengan tepat.
Universitas Sumatera Utara
3.1.3 Analisis Proses
Dalam bagian ini terdapat 2 proses dasar yaitu deteksi tepi dan deteksi kanker. Deteksi
tepi yang digunakan adalah deteksi tepi canny dan isotropic dengan transformasi
power law. Setelah itu dilakukan deteksi kanker serviks dengan melakukan
perhitungan Euclidean Distance yang kemudian sistem akan menampilkan hasil
prediksi stadium kanker dan solusi terhadap kanker tersebut.
3.2 Perancangan Sistem
Perancangan sistem merupakan cara untuk mendapatkan gambaran dengan jelas
tentang apa yang akan dikerjakan pada analisis sistem dan dilanjutkan dengan
memikirkan bagaimana membuat sistem tersebut. Perancangan sistem adalah suatu
fase dimana diperlukan suatu keahlian perancangan untuk elemen-elemen komputer
yang akan menggunakan sistem, yaitu pemilihan peralatan dan program komputer
untuk sistem baru.
Tujuan dari tahap perancangan sistem ini adalah untuk memenuhi kebutuhan
pengguna sistem dan memberikan gambaran yang jelas serta menghasilkan rancang
bangun yang lengkap kepada pemrogram komputer dan ahli-ahli teknik lainnya yang
terlibat di dalam pengembangan atau pengguna sistem.
Pada penelitian ini, penulis menggunakan UML (Unified Modeling Language)
sebagai bahasa pemodelan untuk merancang sistem pendiagnosa tingkat stadium
kanker dengan menggunakan operator deteksi tepi Canny dan Isotropik. Adapun
model UML yang akan dipakai adalah general arsitektur sistem, use case diagram,
activity diagram, sequence diagram, dan flowchart.
Universitas Sumatera Utara
3.2.1. General Arsitektur Perancangan Sistem
General arsitektur perancangan sistem adalah gambaran sistem secara keseluruhan
yang meliputi proses input data, proses sistem berlangsung, dan output data yang
dikeluarkan dari sistem.
Deteksi tepi canny
Input citra
kolposkopi
transformasi
power law
Deteksi tepi Isotropik
hitung running time, MSE,PSNR
Hitung Euclidean
& simpan gambar
distance
user memilih
metode deteksi tepi
tampilan running time, nilai MSE,
PSNR hasil deteksi tepi, diagnosa,
dan pengobatan
hitung running time, MSE,PSNR
& simpan gambar
Hitung Euclidean
distance
Gambar 3.2. General arsitektur perancangan sistem
General arsitektur sistem pada gambar 3.2. diatas menunjukkan interaksi yang
dilakukan pengguna kepada sistem. Tahap pertama pengguna memasukkan citra asli
hasil kolposkopi yang berasal dari situs resmi departemen kesehatan. Kemudian
sistem melakukan proses transformasi power law. Setelah itu pengguna memilih
metode mana yang ingin diproses terlebih dahulu. Jika pengguna ingin melakukan
proses detesi tepi dengan metode canny maka sistem memproses deteksi tepi dengan
metode Canny serta penghitungan running time, MSE, dan PSNR begitu juga dengan
metode isotropik. Selanjutnya pengguna menyimpan gambar hasil deteksi tepi dan
sistem melakukan penyimpanan citra. Untuk tahap kedua pengguna memasukkan citra
hasil deteksi tepi kemudian melakukan diagnosa dengan menghitung nilai Euclidean
Distance. Untuk penghitungan Euclidean distance penulis menggunakan klasifikasi
tiap stadium menjadi 4 klasifikasi yaitu Serviks normal, Stadium 1, Stadium 2,
Stadium 3, dan Stadium 4. Gambar acuan yang disediakan untuk tiap stadium ada 3
gambar. Bahan acuan yang digunakan adalah gambar yang sudah memiliki tepi-tepi
Universitas Sumatera Utara
artinya gambar acuan adalah gambar yang telah melalui proses deteksi tepi. Tahap
terakhir sistem menampilkan hasil deteksi tepi, diagnosa kanker serviks dan solusi
pengobatan kanker.
3.2.2. Use Case Diagram
Diagram use case
(use case diagram)
adalah diagram atau
alur
yang
merepresentasikan interaksi yang terjadi antara pengguna dan sistem. Diagram ini
mendeskripsikan siapa saja yang dapat berinteraksi dengan sistem dan bagaimana cara
mereka berinteraksi. Diagram ini divisualisasikan dengan actor, use case, dan
relasinya sebagai suatu urutan tindakan yang memberikan nilai terukur untuk actor.
Sebuah use case digambarkan sebagai elips horizontal dalam suatu diagram use case
(Haviluddin, 2011).
Pada sistem deteksi kanker, ada beberapa interaksi yang dapat dilakukan
pengguna kepada sistem, yaitu seperti yang ditunjukkan pada Gambar 3.3. berikut.
Gambar 3.3. Use Case Diagram Sistem
Diagram use case pada Gambar 3.3. menunjukkan interaksi sistem yang akan
dijalankan sistem kepada pengguna. Dapat dilihat dari use case diatas pengguna dapat
memilih dua langkah besar. Pertama, pengguna akan memilih deteksi tepi dimana
pengguna akan memasukkan citra, selanjutnya memilih proses transformasi citra
Universitas Sumatera Utara
kemudian memilih deteksi tepi mana yang ingin diproses terlebih dahulu, kemudian
sistem melakukan perhitungan running time, nilai MSE dan PSNR setelah proses
deteksi tepi dan perhitungan running time, mse, dan psnr selesai pengguna dapat
menyimpan dan menghapus citra. Langkah kedua, pengguna memilih deteksi kanker
dengan memasukkan citra hasil deteksi tepi masing – masing metode. Kemudian
pengguna memilih Euclidean Distance untuk menghitung nilai kemiripan citra hasil
dengan citra sumber sehingga akan diketahui hasil prediksi tingkat stadium dan solusi
kanker yang terdeteksi.
3.2.2.1. Skenario Use Case Deteksi Tepi
Skenario use case dapat dilihat pada table 3.1 di bawah ini.
Tabel 3.1 Skenario use case deteksi tepi
Name
Deteksi Tepi
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi tepi
Description
1. Penguna memilih menu Deteksi Tepi.
2. Sistem menampilkan halaman Deteksi Tepi.
3. Pengguna menginputkan citra.
4. Pengguna mengeksekusi tombol Transformasi.
5. Pengguna mengeksekusi tombol Canny.
6. Pengguna mengeksekusi tombol Isotropik.
7. Pengguna dapat melihat gambar hasil deteksi tepi.
8. Pengguna Menyimpan gambar hasil deteksi tepi.
9. Pengguna mengeksekusi tombol Clear.
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil deteksi tepi.
Alternate Flow
-
3.2.2.2. Skenario Use Case Input Citra
Skenario use case dapat dilihat pada table 3.2 di bawah ini.
Universitas Sumatera Utara
Tabel 3.2 Skenario use case input citra
Name
Input Citra
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi tepi
Description
1. Penguna memilih menu Deteksi Tepi.
2. Pengguna mengeksekusi tombol input citra
3. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
4. Pengguna memilih gambar yang ingin dipilih.
5. Sistem akan menampilkan gambar yang telah dipilih.
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar yang telah dipilih
Alternate Flow
-
3.2.2.3. Skenario Use Case Transformasi
Skenario use case dapat dilihat pada table 3.3 di bawah ini.
Tabel 3.3 Skenario use case Transformasi
Name
Transformasi
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi tepi
Description
1. Penguna memilih menu Deteksi Tepi.
2. Pengguna mengeksekusi tombol Transformasi
3. Sistem melakukan proses Transformasi dan menampilkan
hasilnya.
4. Pengguna dapat melihat hasil citra tranformasi
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil transformasi
Alternate Flow
-
Universitas Sumatera Utara
3.2.2.4. Skenario Use Case Canny
Skenario use case dapat dilihat pada table 3.4 di bawah ini.
Tabel 3.4 Skenario use case Canny
Name
Canny
Actors
Pengguna
Trigger
Pengguna melihat button Canny
Description
1. Penguna mengeksekusi tombol Canny.
2. Sistem melakukan proses deteksi tepi Canny.
3. Sistem menampilkan hasil gambar deteksi tepi Canny
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil deteksi tepi Canny
Alternate Flow
-
3.2.2.5. Skenario Use Case Isotropik
Skenario use case dapat dilihat pada table 3.5 di bawah ini.
Tabel 3.5 Skenario use case Isotropik
Name
Input Citra
Actors
Pengguna
Trigger
Pengguna telah melihat button Isotropik
Description
1. Penguna mengeksekusi tombol Isotropik.
2. Sistem melakukan proses deteksi tepi Isotropik.
3. Sistem menampilkan hasil gambar deteksi tepi Isotropik.
Pre Condition
Pengguna menggunakan Aplikasi Deteksi Tepi dengan operator
Canny dan Isotropik
Post Condition
Sistem menampilkan gambar hasil deteksi tepi Isotropik
Alternate Flow
-
3.2.2.6. Skenario Use Case Save
Skenario use case dapat dilihat pada table 3.6 di bawah ini.
Universitas Sumatera Utara
Tabel 3.6 Skenario use case Save
Name
Save
Actors
Pengguna
Trigger
Pengguna melihat hasil deteksi tepi canny dan Isotropik
Description
4. Penguna telah melihat hasil deteksi tepi Canny dan Isotropik.
5. Pengguna mengeksekusi tombol save.
6. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
7. Pengguna menyimpan citra hasil deteksi tepi.
8. Sistem akan menyimpan citra hasil deteksi tepi.
Pre Condition
Pengguna telah melihat hasil deteksi tepi.
Post Condition
Sistem menyimpan file citra hasil deteksi tepi.
Alternate Flow
-
3.2.2.7. Skenario Use Case Deteksi Kanker
Skenario use case dapat dilihat pada table 3.7 di bawah ini.
Tabel 3.7 Skenario use case Deteksi Kanker
Name
Deteksi kanker
Actors
Pengguna
Trigger
Pengguna memilih menu Deteksi kanker
Description
1. Penguna memilih menu Deteksi kanker
2. Sistem menampilkan halaman Deteksi kanker
3. Pengguna mencari citra.
4. Sistem menampilkan citra yang dipilih.
5. Pengguna mengeksekusi tombol Deteksi.
6. Pengguna melihat hasil deteksi kanker.
Pre Condition
Pengguna memilih menu Deteksi kanker
Post Condition
Sistem menampilkan gambar hasil deteksi Kanker dan prediksi
stadium kanker
Alternate Flow
-
Universitas Sumatera Utara
3.2.2.8. Skenario Use Case Browser Canny
Skenario use case dapat dilihat pada table 3.8 di bawah ini.
Tabel 3.8 Skenario use case Browser Canny
Name
Browser Canny
Actors
Pengguna
Trigger
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Description
1. Penguna telah melihat citrta hasil deteksi tepi canny yang
dipilih untuk proses deteksi Kanker
2. Pengguna mengeksekusi tombol Browser.
3. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
4. Pengguna memilih gambar yang ingin dipilih.
5. Sistem akan menampilkan gambar yang telah dipilih.
Pre Condition
Pengguna memilih menu Deteksi kanker
Post Condition
Sistem menampilkan gambar yang dipilih
Alternate Flow
-
3.2.2.9. Skenario Use Case Browser Isotropik
Skenario use case dapat dilihat pada table 3.9 di bawah ini.
Tabel 3.9 Skenario use case Browser Isotropik
Name
Browser Isotropik
Actors
Pengguna
Trigger
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Description
1. Penguna telah melihat citrta hasil deteksi tepi canny yang
dipilih untuk proses deteksi Kanker
2. Pengguna mengeksekusi tombol Browser.
3. Sistem menampilkan pop-up window Open Image untuk
menampilkan lokasi penyimpanan gambar.
4. Pengguna memilih gambar yang ingin dipilih.
Universitas Sumatera Utara
5. Sistem akan menampilkan gambar yang telah dipilih.
Pre Condition
Pengguna memilih menu Deteksi kanker
Post Condition
Sistem menampilkan gambar yang dipilih.
Alternate Flow
-
3.2.2.10. Skenario Use Case Deteksi
Skenario use case dapat dilihat pada table 3.10 di bawah ini.
Tabel 3.10 Skenario use case Deteksi
Name
Deteksi
Actors
Pengguna
Trigger
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Description
1. Penguna telah melihat citrta hasil deteksi tepi canny yang
dipilih untuk proses deteksi Kanker
2. Pengguna mengeksekusi tombol Deteksi
3. Sistem akan melakukan Proses Perhitungan nilai Euclidean
Distance.
4. Sistem menampilkan hasil prediksi stadium
kanker dan
pengobatannya.
5. Pengguna dapat melihat hasil prediksi stadium kanker dan
pengobatannya.
Pre Condition
Pengguna melihat citra hasil deteksi tepi canny yang dipilih
untuk proses deteksi kanker
Post Condition
Sistem menampilkan hasil prediksi stadium kanker dan
pengobatannya.
Alternate Flow
-
3.2.3. Activity Diagram
Diagram aktivitas atau activity diagram menggambarkan aliran kerja (workflow) atau
aktivitas dari sebuah sistem atau proses bisnis. Activity diagram ini menggambarkan
aktivitas suatu sistem serta proses timbal balik antar sistem tersebut (Setiady, et
al.2013). Activity diagram pada sistem deteksi tepi ini akan ditunjukkan pada Gambar
3.4.
Universitas Sumatera Utara
Menghitung Running
time, Mse dan Psnr
Gambar 3.4. Activity Diagram form deteksi tepi
Gambar 3.5. Activity Diagram form deteksi kanker
Universitas Sumatera Utara
3.2.4. Sequence Diagram
Sequence diagram menggambarkan perilaku objek pada use case dengan
mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar
objek (Setiady, et al. 2013). Sequence diagram ini memperlihatkan kolaborasi
dinamik antara objek-objek dengan suatu urutan pesan diantara objek tersebut.
Sequence diagram pada sistem deteksi tepi ini akan ditunjukkan pada Gambar 3.6.
berikut.
Gambar 3.6. Sequence Diagram sistem
Universitas Sumatera Utara
3.2.5.Pseudocode
Pseudocode
merupakan sebuah kode yang digunakan untuk menuliskan sebuah
algoritma dengan cara yang bebas yang tidak terkait dengan bahasa pemrograman
tertentu. Pseudocode berisi langkah-langkah untuk menyelesaikan suatu permasalahan
yang bentuknya sedikit berbeda dari algoritma. Pseudocode menggunakan bahasa
yang hampir menyerupai bahasa pemrograman melainkan menggunakan bahasa yang
mudah dipahami secara umum dan juga lebih ringkas.
3.2.5.1 Pseudocode Deteksi Tepi Canny
1. Melakukan Gaussian filter
Sigma