• Tidak ada hasil yang ditemukan

ANALISIS DAN PERANCANGAN

3.3. Pre-Processing

3.2. Dataset

Data citra yang digunakan pada penelitian ini adalah citra mikroskopis sel darah merah yang diperoleh dari Keagle.

Tabel 3.1 Pembagian Dataset

Dataset Anemia Sel Sabit Normal Total

Data Training 60 40 100

Data Testing 14 11 25

Jumlah Data 74 51 125

3.3. Pre-Processing

Tahap ini dilakukan untuk memperbaiki citra menjadi lebih baik pada proses tahap selanjutnya. Tahapan-tahapan pada pre-processing antara lain scaling, grayscale, contrast scretching dan adaptive treshold.

3.3.1. Scaling

Pada tahap ini bertujuan untuk mengubah ukuran pixel menjadi ukuran M x N. Proses ini dilakukan karena belum tentu semua citra memiliki ukuran yang sama antara satu

Gambar 3.1 Arsitektur Umum

Universitas Sumatera Utara

dan yang lainnya. Scaling juga digunakan untuk memperkecil citra digital agar pixel yang akan diolah tidak terlalu banyak, karena apabila jumlah pixel semakin banyak maka jumlah data inputan semakin banyak pula sehingga menyebabkan waktu komputasi semakin lama.

3.3.2. Grayscale

Pada tahap ini bertujuan untuk mengubah citra menjadi keabuan. Penggunaan citra grayscale ini dikarenakan tiap pixel membutuhkan sedikit informasi yang diberikan dibandingkan dengan citra berwarna. Pada proses ini setiap nilai RGB (Red, Green, Blue) dijumlahkan kemudian dibagi tiga. Pada gambar 3.2 merupakan representasi dari citra sel darah merah.

Gambar yang direpresentasikan pada gambar 3.2 merupakan citra sel darah merah berukuran 300 x 300 piksel dan potongan citra sel darah merah yang berukuran 5 x 5 piksel. Proses perhitungan nilai grayscale direpresentasikan pada gambar 3.3.

Gambar 3.2 Citra hasil grayscale

Gambar 3.3 citra sel darah merah ukuran 5 x 5 piksel

21

Gambar 3.4. Representasi citral sel darah merah 5 x 5 piksel Nilai red, green, blue pada citra yang memiliki ukuran 5 x 5 piksel adalah:

P1 = R, G, B (175, 165, 171)

P24 = R, G, B (220, 208, 125) P25 = R, G, B (220, 208, 125)

Dengan menggunakan persamaan (2.2) maka nilai grayscale yang diperoleh adalah:

23

Setelah nilai grayscale didapatkan dari setiap piksel yang sesuai dengan persamaan (2.2) maka nilai piksel akan diubah sesuai dengan nilai grayscale yang telah didapatkan dapat dilihat pada gambar 3.5.

170 183 178 178 178 178 179 190 190 190 176 182 214 214 214 176 182 214 214 214 177 192 214 214 214

Gambar 3.5 Nilai grayscale pada setiap piksel 3.3.3. Contrast Scretching

Pada tahap ini dilakukan perbaikan citra dengan cara memanipulasi parameter pada citra sehingga ciri pada citra dapat lebih ditonjolkan dimana proses ini dilakukan untuk meningkatkan kualitas citra. Perbaikan citra yang dilakukan adalah perbaikan kontras dengan menggunakan metode contrast scretching. Dengan memperluas sebaran nilai keabuan piksel, contrast scretching dapat mengatasi kekurangan ataupun kelebihan cahaya pada citra.

Contrast stretching merupakan metode perbaikan citra yang bersifat point processing, yaitu pemrosesan hanya bergantung pada nilai intensitas keabuan masing-masing piksel, tidak tergantung dari piksel lain yang ada disekitarnya. Contrast Scretching dilakukan untuk mendapatkan nilai RGB baru dengan kontras yang lebih baik. Dengan kontras yang baik pada citra dapat meningkatkan ketajaman warna pada objek citra . Objek yang terlihat jelas dapat membantu pada proses segmentasi citra.

Hasil citra dari proses Contrast Stretchin dapat dilihat pada gambar 3.6.

Gambar 3.6 Citra hasil Contrast

Strestching Universitas Sumatera Utara

3.3.4. Adaptive Threshold

Tahap selanjutnya setelah mengalami proses peningkatan kualitas citra dengan contrast scretching dilakukan proses segmentasi pada citra dengan menggunakan adaptive threshold. Pada tahap ini dilakukan proses untuk mengubah citra keabuan menjadi citra biner atau hitam putih sehingga dapat diketahui daerah mana yang termasuk objek dan background dari citra secara jelas. Citra hasil Threshold dapat dilihat pada gambar 3.7.

Dengan menggunakan persamaan (2.6) maka nilai threshold yang akan didapatkan adalah:

Nilai maksimum = 214 Nilai Minimum = 170.3

170.3 < 192 = 0 183 < 192 = 0 177.6 < 192 = 0 177.6 < 192 = 0 177.6 < 192 = 0 178.6 < 192 = 0 179 < 192 = 0 190 < 192 = 0

Gambar 3.7 Citra hasil Threshold

25

Dengan menggunakan persamaan (2.6) maka nilai threshold yang didapatkan dapat dilihat pada gambar 3.8.

0 0 0 0 0

Pada tahap ini dilakukan proses lanjutan dari pre-poccessing yaitu deteksi tepi.

Universitas Sumatera Utara

3.4.1. Deteksi Tepi

Tahap selanjutnya yaitu dilakukan proses deteksi tepi. Pendeteksian tepi digunakan dengan tujuan untuk meningkatkan penampakan garis batas suatu daerah objek atau objek didalam citra. Metode yang digunakan pada penelitian ini adalah canny. Metode ini dipilih karena mampu mendeteksi dengan baik untuk meletakkan dan menandai semua tepi yang ada sesuai dengan pemilihan parameter yang dilakukan. Dan dengan menggunakan metode ini memungkinkan dihasilkan jarak minimum antara tepi yang dideteksi dengan tepi yang asli dan juga hanya ada satu respon pada tiap tepi sehingga dapat dengan mudah dideteksi dan tidak menimbulkan kerancuan pada pengolahan citra. Citra hasil dari deteksi tepi dengan menggunakan metode Canny dapat dilihat pada gambar 3.9.

Dalam mendeteksi tepi menggunakan metode canny diperlukan gradien G(x,y) yang merupakan sebuah vektor yang terdiri dari dua unsur yaitu Gx dan Gy. Deteksi tepi dilakukan dengan cara membaca setiap pixel pada citra. Untuk membantu penelusuran tepi gradien Gx dan Gy masing-masing dihitung dengan matriks operator canny 3x3.

Kemudian lakukan seleksi menggunakan salah satu tepian dengan menggunakan matriks diatas. Seleksi dengan matriks canny dapat di lakukan dengan

Gambar 3.9 Citra hasil Deteksi Tepi metode Canny

27

perkalian pada matriks 5x5 dari citra asli. Dibawah ini merupakan matriks 5x5 dari citra asli.

Menentukan seleksi horizontal dengan menggunakan Gx diperoleh perhitungan:

( )= (-1 * 179) + (-1 * 182) + (-1 * 182) + (1 * 190) + (1 * 214) + ( 1 * 214) = 78

Menentukan seleksi vertikal dengan menggunakan Gy diperoleh perhitungan:

( )= (-1 * 179) + (-1 * 190) + (-1 * 190) + (1 * 182) + (1 * 214) + ( 1 * 214)

Selanjutnya yaitu menentukan arah tepian dengan menggunakan acuan:

1. Semua arah tepi yang berkisar antara 0 dan 22,5 serta 157 dan 180 deajat diubah menjadi 0 derajat.

2. Semua arah tepi yang berkisar antara 22,5 dan 67,5 derajat diubah menjadi 45 derajat.

3. Semua arah tepi yang berkisar antara 67,5 dan 112,5 derajat diubah menjadi 90 derajat.

4. Semua arah tepi yang berkisar antara 112,5 dan 1577,5 derajat diubah menjadi 135 derajat.

Berdasarkan acuan diatas maka dapat diketahui bahwa arah tepian pada citra yang telah dihitung dengan nilai G(x,y) = 65 adalah 45 derajat, begitu seterusnya sampai keseluruhan citra terdeteksi.

3.5. Identifikasi

Tahap berikutnya yaitu identifikasi citra menggunakan convolutional neural network.

Tahap-tahap yang dilakukan adalah sebagai berikut: convolutional layer, maxpooling layer dan fully conected layer.

Konvolusi akan menghasilkan transformasi linear dari data sesuai informasi data pada convolutional layer. Weight yang merupakan koneksi antar layer akan melakukan spesifikasi matriks konvolusi yang digunakan sehingga matriks dapat dilatih berdasarkan masukan pada convolutional neural network. Proses konvolusi dapat dilihat pada gambar 3.10.

(1) (2)

C1,1 C2,1 C3,1 C1,2 C2,2 C3,2 C1,3 C2,3 C3,3

(3)

Gambar 3.10 Konvolusi pengujian (1) Gambar input;(2) feature detctor; (3) Feature Map

29

Pada gambar 3.10 merupakan salah satu contoh dari gambar masukan yang telah di representasikan kedalam bentuk piksel 5 x 5, feature detector 3 x 3 sebagai detector pada proses konvolusi. Matriks 3x3 bergerak dari sudut kiri atas dari gambar masukan dan bergerser ke arah kanan sebanyak 1 piksel hingga semua piksel dari baris pertama gambar masukan dilalui. Kemudian setelah semua baris pertama dari gambar masukan dimulai dari kiri menuju ke arah kanan seperti yang dilakukan di baris pertama. Begitu juga dengan baris-baris selanjutnya hingga semua piksel yang dimiliki gambar masukan dilalui yang kemudian disimpan dalam matriks yang baru.

Pergeseran matriks tersebut dapat dilihat dalam Gambar 3.11.

Selanjutnya hitung jumlah elemen perkalian antara matriks feature detector dan matriks gambar masukan pada setiap posisi. Hasil dari jumlah perkalian tersebut akan menghasilkan feature map . Berdasarkan persamaan 2.7 untuk menghitung nilai pergeseran matriks menggunakan feature map adalah sebagai berikut :

C1,1 = (0*170) + (0*183) + (1*178) + (1*178) + (0*179) + (0*190) + (0*176) +

31

Setelah proses konvolusi selesai dilakukan, hasil akhir konvolusi nilai gambar masukan dapat dilihat pada gambar 3.12.

(1) (2)

Gambar 3.12 Hasil konvolusi (1) gambar masukan; (2) feature detector; (3) Feature Map

Universitas Sumatera Utara

Tahap selanjutnya yaitu max pooling dimana output dari convolutional layer dibagi menjadi beberapa grid kecil, kemudian nilai maksimal dari tiap grid tersebut diambil untuk menyusun matriks citra yang telah di reduksi. Hasil dari proses konvolusi selanjutnya masuk ke proses max pooling. Max pooling akan menghasilkan output yang lebih kecil dari convolution tetapi mengambil nilai maksimal dari matriks tersebut. Proses dari Max pooling berukuran 2 x 2 piksel direpresentasikan pada Gambar 3.13.

Hasil nilai maksimum dari proses max pooling dapat dilihat pada gambar 3.14.

Selanjutnya hasil dari proses max pooling dimasukkan kedalam proses flattening. Pada proses ini setiap hasil dari max pooling layer harus ditransformasikan menjadi array satu dimensi sebelum dimasukkan ke proses fully connected layer. Hasil dari proses flattening dapat dilihat pada Gambar 3.15.

752 785 796 Gambar 3.13 Proses Max Pooling

800 832 824 856

Gambar 3.14 Hasil Max Pooling

33

Gambar 3.15 Hasil flattening

Kemudian dilakukan proses fully connected layer. Fully connected layer menghubungkan setiap neuron dari layer ke layer lainnya. Pada layer ini setiap data input akan dikalikan dengan weight yang akan dikalkulasikan untuk mengaktifkan neuron tersebut.

Dokumen terkait