proses deteksi tepi. Setelah gambar diambil, operator deteksi tepi dapat dipilih yang berupa combo box. Setelah operator deteksi tepi ditentukan, maka prosesnya
berupa gambar asal di ubah dengan metode penghalusan citra dan kemudian dideteksi tepi menggunakan operator deteksi tepi yang ditentukan.
Selanjutnya gambar hasil deteksi tepi, diambil sebagian untuk di analisa penentuan golongan darah. Waktu lama proses penentuan golongan darah
digunakan untuk membandingkan lama proses dengan operator deteksi tepi yang lainnya. Sehingga lama proses deteksi tepi dan kebenaran dalam menentukan
golongan darah dapat di analisa.
3.4. Desain Flowchart
Flowchart yang merupakan suatu diagram yang menunjukkan bagaimana sistem itu berjalan. Dari tahap prepocessing atau sebelum proses pengolahan citra
untuk penentuan golongan darah terdapat beberapa langkah yaitu a. mengubah format citra,
b. mengatur kontras warna, dan c. memotong gambar.
Untuk langkat pengolahan citra yang utama berupa mengubah warna true color ke warna skala keabuan, penghalusan citra, pendeteksian tepi, dan membagi
citra ke beberapa bagian yang akan dijelaskan pada Gambar. 3.2. 30
Gambar. 3.2 Flowchart Aplikasi
Pada Gambar. 3.2. dapat dijelaskan sebagai berikut. Proses yang pertama kali harus dilakukan yaitu mendapatkan citra digital pencitraan dari citra analog.
Pencitraan Mengubah Citra.jpg ke .bmp
Mengatur Kontras Citra Memotong Gambar Cropping
Mengubah Citra Warna Ke Citra Skala Keabuan
Penghalusan Citra Deteksi Tepi
Membagi citra menjadi tiga bagian
A A
Citra 1 Menggupal Citra 2
Menggumpal Citra 3
Menggumpal
Citra 1 Menggupal Citra 2 Tdk
Menggumpal Citra 3 Menggumpal
Citra 1 Tdk Menggupal Citra 2
Tdk Menggumpal Citra 3
TdkMenggumpal menampil
kan ‘AB’
menampil kan ‘A’
menampil kan ‘B’
menampil kan ‘O’
Citra 1 Tdk Menggupal Citra 2
Tdk Menggumpal Citra 3
Tdk Menggumpal YA
YA
YA
TIDAK TIDAK
TIDAK
TIDAK YA
Menampilkan terdapat
kesalhan Mengisi
Biodata Simpan citra
Cetak Data Selesai
Mulai
Menentukan adanya gumpalan
31
Kemudian proses mengubah format citra jpeg ke bmp karena aplikasi penentuan golongan darah hanya mampu mengolah citra dengan format citra bitmap.
Langkah berikutnya yaitu mengatur kontras citra untuk mendapat citra yang baik karena pencahayaan hasil pencitraan tidak menentu. Setelah langkah mengatur
kontras citra, langkah berikutnya yaitu memotong citra untuk membuang bagian yang tidak diperlukan. Kemudian citra diubah ke dalam citra skala keabuan
grayscale untuk mempercepat proses deteksi tepi. Setelah citra mencadi citra skala keabuan, maka citra dihaluskan smoothing menggunakan metode
penghalusan citra rata-rata. Langkah berikutnya citra dideteksi tepi yang merupakan proses inti untuk membaca objek, apakah terdapat gumpalan atau
tidak. Setelah proses deteksi tepi selesai, maka citra dipotong menjadi tiga bagian. Dari tiga bagian tersebut, citra dibaca dan kemudian citra ditentukan golongan
darahnya.
3.4.1 Mengubah format citra .jpg ke .bmp Mengubah format citra .jpg ke .bmp diperlukan karena proses
pengolahan citra menggunakan citra dengan format .bmp sedangkan hasil pencitraan dari kamera digital, citra masih berupa file dengan format .jpg.
berikut ini Flowchart mengubah format file .jpg ke .bmp.
Gambar. 3.3 Flowchart Mengubah citra JPG ke BMP
Mengubah Citra ke bmp.
Masuka Citra JPG
Ubah JPG ke BMP Simpan Citra
Return
32
Gambar. 3.3. Merupakan flowchart mengubah format citra dengan langkah bertama berupa memasukkan citra jpg yang berasal dari kamera digital. Kemudian
dengan fungsi jpg to bmp, sehingga citra berubah menjadi citra bitmap dan langkah terakhit yaitu citra disimpan
3.4.2. Mengatur Kontras Citra Pengaturan kontras citra diperlukan untuk mengubah komposisi skala
keabuan citra dan menjadikan citra lebih cerah atau lebih gelap sesuai dengan keinginan. Adapun Flowchart dari pengaturan kontras citra yaitu pada
Gambar. 3.4.
Gambar. 3.4 Flowchart Mengubah Kontras Citra
Pada Gambar. 3.4. dapat dijelaskan sebagai berikut. Mula-mula gambar di ambil, kemudian menentukan skala keabuan citra yaitu dari 0 hingga 127. langkah
Mengatur Kontras Citra Masukan Citra
Input skala Keabuaan P
Tidak
Tidak
Ya Ya
For i=0 to i=tinggi citra-1 For j=0 to j=lebar citra-1
Temp = Round 2piksel[j]-P+P Citra Baru = Temp
j = lebar citra i = tinggi
citra Simpan citra
Return
33
selanjutnya yaitu membaca tinggi dan lebar citra sebagai perulangan karena dalam pengolahan citra ini memanipulasi setiap
titik atau piksel. Setelah itu menghitung setiap piksel menggunakan rumus fox, y
G fix, y -P P
.
………………… 12
3.4.3 Memotong Citra Pemotongan citra bertujuan untuk membuang bagian dari yang tidak
diperlukan dari hasil pencitraan. Proses pemotongan citra sendiri digambarkan pada Gambar. 3.5.
Gambar. 3.5 Flowchart memotong gambar
Memotong Gambar Crooping
Masukan Citra
For X=0 X= lebar citra baru -1 For Y=0 Y= lebar citra baru -1
X1= X+X left Y1= Y+Y Top
Temp X,Y = citra X1,Y1 Y =
Tinggi Citra
X = Lebar
Citra Simpan Citra
Return Tidak
Tidak Ya
Ya
34
Mula-mula citra di ambil, kemudian membaca tinggi dan lebar citra. Selanjutnya menentukan titik awal citra yang diinginkan sampai titik tertentu.
Setelah ditentukan titk awal dan titik akhir maka citra baru terbentuk. Dan kemudian dapat disimpan untuk diproses selanjutnya.
3.4.4 Mengubah citra warna ke citra skala keabuan Mengubah citra warna menjadi citra skala keabuan bertujuan untuk
mempermudah dan mempercepat proses pengolahan citra. Langkah-langkah mengubah warna tersebut dapat dijelaskan dengan Flowchart pada Gambar. 3.6.
Gambar. 3.6 Flowchart mengubah citra warna menjadi citra skala keabuan
Mengubah Citra Warna ke Citra Skala Keabuaan
Masukan Citra
For X=0 X= lebar citra baru -1 For Y=0 Y= lebar citra baru -1
X1= X+X left Y1= Y+Y Top
Temp X,Y = citra X1,Y1
Y = Tinggi Citra
X = Lebar Citra
Simpan Citra
Return Tidak
Tidak
Ya
Ya
35
3.4.5. Penghalusan citra Penghalusan citra merupakan salah satu operasi untuk memperbaiki citra.
Proses ini merupakan salah satu langkah pengolahan citra untuk mendapatkan hasil yang maksimal.
Gambar. 3.7 Flowchart penghalusan citra
Penghalusan Citra
Masukan Citra
For X=0 X= lebar citra For Y=0 Y= lebar citra
Y = Tinggi Citra
X = Lebar Citra
Simpan Citra
Return Tidak
Tidak Ya
Ya
36
Pada Gambar. 3.7 dapat dijelaskan bahwa langkah pertama yaitu mengambil citra untuk diproses. Kemudian membaca tinggi dan lebar citra sebagai proses array.
Langkah berikutnya membaca pikses dengan array 5x5 dan kemudian di rata-rata untuk didapatkan hasil dari penghalusan citra dan kemudian citra disimpan untuk
diproses pada proses berikutnya. 3.4.6. Deteksi tepi
Deteksi tepi merupakan operator paling utama dalam aplikasi ini proses deteksi tepi digambarkan dengan Flowchart berikut ini.
Gambar. 3.8 Flowchart deteksi tepi
Gambar. 3.8. merupakan flowchart deteksi tepi yang awalnya matriks kernel filter deteksi tepi didefinisikan terlebih dahulu dan kemudian mengambil
Mask Robert1:Mask3x3 = 0, 0, 0 ;
0, 1, 0 ; 0, 0, 1 ;
Mask Robert1:Mask3x3 = 0, 0, 0 ;
0, 0, 1 ; 0, 1, 0 ;
Mask PrewittH:Mask3x3 = -1, 0, 1 ;
-1, 0, 1 ; -1,0, 1 ;
Mask PrewittV:Mask3x3 = -1, -1,-1 ;
-1, 0,-1 ; -1,0,-1 ;
Mask SobelH:Mask3x3 = -1, -1, 1 ;
-2, 0, 2 ;
Deteksi tepi
Menentukan adanya gumpalan
IF 9 hit = tidak Mengumpal IF 9 hit = Mengumpal
A Operator
Robert Operator
Prewitt Jml 1 = KMask Robert 1
Jml 1 = KMask PrewittH Jml 1= KMask SobelH
Jml 2 = KMask Robert 2 Jml 2 = KMask PrewittV
Jml 2 = KMask SobelH Hasil = Sqrt
jml1jml1+jml2jml2
X= lebar citra -1
Y= Tinggi citra -1
Simpan d t
Return B
C T
T Y
Y
T T
Y Y
A
B Memasukan citra dan
memilih operator deteksi tepi
For y=0, to y= Tinggi Citra
For X=0, to X= Lebar Citra K = Scanling X Y
C
37
citra dan menentukan operator deteksi tepi. Deteksi tepi merupakan proses yang dilakukan terhadap setiap piksel citra sehingga array program berindeks dari 0
sampai batas tinggi dan lebar citra.Kemudian setiap piksel dihitung sesuai dengan kerner filter deteksi tepi dan proses terakhir yaitu dengan menghitung gradien.
Setelah proses selesai, maka citra hasil disimpan untuk proses berikutnya.
3.5. Desain form