LOW RANK MINIMIZATION PADA GAMBAR BERWARNA UNTUK IMAGE DENOISING SKRIPSI
Teks penuh
(2) library.uns.ac.id. digilib.uns.ac.id. HALAMAN PERSETUJUAN. SKRIPSI. LOW RANK MINIMIZATION PADA GAMBAR BERWARNA UNTUK IMAGE DENOISING. Disusun oleh: FIGUR HISNU ASLAM NIM. M0514016. Skripsi ini telah disetujui untuk dipertahankan dihadapan dewan penguji, Pada tanggal : 08 Januari 2019. Pembimbing I. Pembimbing II. Heri Prasetyo, S.Kom., M.Sc.Eng., Ph.D.. Dr. Wiharto S.T., M.Kom.. NIP. 1983030220161001. NIP. 197502102008011005. ii.
(3) library.uns.ac.id. digilib.uns.ac.id. HALAMAN PENGESAHAN. SKRIPSI. LOW RANK MINIMIZATION PADA GAMBAR BERWARNA UNTUK IMAGE DENOISING. Disusun oleh: FIGUR HISNU ASLAM NIM. M0514016. Susunan Dewan Penguji 1. Heri Prasetyo, S.Kom., M.Sc.Eng., Ph.D.. (. ). (. ). (. ). (. ). NIP. 1983030220161001 2. Dr. Wiharto S.T., M.Kom. NIP. 197502102008011005 3. Esti Suryani S.Si.,M.Kom NIP. 197611292008122001 4. Dr. Umi Salamah, S.Si., M.Kom. NIP. 197002171997022001. Disahkan Oleh Kepala Program Studi Informatika. Drs. Bambang Harjito M.App.Sc.,Ph.D. NIP. 196211301991031002. iii.
(4) library.uns.ac.id. digilib.uns.ac.id. LOW RANK MINIMIZATION PADA GAMBAR BERWARNA UNTUK IMAGE DENOISING. FIGUR HISNU ASLAM Program Studi Informatika, Fakultas Matematika dan Ilmu Pengetahuan Alam,. Universitas Sebelas Maret. ABSTRAK. Tujuan dari penelitian ini adalah mempresentasikan metode Low Rank Minimization untuk melakukan denoising pada gambar berwarna. Proses pendekomposisian gambar berwarna dilakukan dengan memisahkan masing-masing warna primer dalam gambar berdasarkan warna RGB (merah, hijau, dan biru). Masing-masing channel warna hasil pendekomposisian kemudian diproses dengan patch grouping, rank minimization via singular value decomposition, dan aggregation. Metode iterative regularization juga diaplikasikan untuk mereduksi residu noise yang tersisa pada denoised image. Seluruh channel warna RGB yang telah diproses kemudian dikombinasikan kembali sehingga menjadi satu gambar berwarna yang utuh. PSNR kemudian digunakan untuk menghitung kualitas gambar hasil proses denoising. Hasil dari percobaan menunjukkan bahwa dengan nilai sigma yang sama pada AWGN, nilai PSNR pada gambar berwarna sedikit lebih rendah dibandingkan dengan gambar grayscale-nya, tetapi nilai antar keduanya tidak terpaut jauh.. Kata Kunci: Image Denoising, Rank Minimization, Additive White Gaussian Noise, Singular Value Decomposition. iv.
(5) library.uns.ac.id. digilib.uns.ac.id. LOW RANK MINIMIZATION ON COLORED IMAGE FOR IMAGE DENOISING. FIGUR HISNU ASLAM Department of Informatics, Faculty of Mathematic and Natural Sciences, Universitas Sebelas Maret. ABSTRACT. The purpose of this research is to present a low rank minimization method for denoising color image. By separating color image on it's primary color channel based on RGB color (red, green, and blue), each color channel then processed by patch grouping, rank minimization via singular value decomposition, and aggregation. Iterative regularization method used to reduce a small amount of noise residual in the denoised image. All of the denoised color channel then recombined. To provide quality result, PSNR used on denoised image. The result show that denoising rgb image have PSNR value slightly less than denoised grayscale image using similar amount of sigma on AWGN.. Keywords: Image Denoising,, Rank Minimization, Additive White Gaussian Noise, Singular Value Decomposition.. v.
(6) library.uns.ac.id. digilib.uns.ac.id. MOTTO. Just do it (Nike’s slogan). vi.
(7) library.uns.ac.id. digilib.uns.ac.id. PERSEMBAHAN. Skripsi ini saya persembahkan untuk: Orang tua dan keluarga yang telah memberikan motivasi, dukungan dan alasan bagi saya untuk terus melangkah maju.. vii.
(8) library.uns.ac.id. digilib.uns.ac.id. KATA PENGANTAR. Segala puji syukur penulis haturkan kehadirat Tuhan yang Maha Esa, atas segala berkat yang telah diberikan hingga saat ini. Alhamdulillah, setelah melalui segala macam proses yang panjang, penulis dapat menyelesaikan skripsi yang berjudul ‘Low Rank Minimization pada Gambar Berwarna untuk Image Denoising’. Rasa terima kasih juga penulis sampaikan kepada : 1. Bapak Drs. Bambang Harjito M.App.Sc.,Ph.D. selaku Kepala Program Studi Informatika yang telah memberikan dukungan selama proses penyusunan Tugas Akhir. 2. Bapak Heri Prasetyo, S.Kom., M.Sc.Eng., Ph.D. dan Bapak Dr. Wiharto S.T., M.Kom., selaku dosen pembimbing I dan pembimbing II atas ilmu, dan masukan yang diberikan, serta kesediaan untuk membimbing penulis selama pelaksanaan Tugas Akhir. 3. Orang Tua penulis yang senantiasa memberikan dukungan kepada penulis untuk menyelesaikan Tugas Akhir. 4. Teman-teman Informatika 2014 atas segala dukungannya. Penyusunan skripsi ini tentunya masih ada beberapa kekurangan. Oleh sebab itu, kritik dan saran pembaca sangat diperlukan. Semoga skripsi ini bisa bermanfaat bagi pembaca maupun penulis sendiri.. Surakarta, Desember 2019 Penulis. viii.
(9) library.uns.ac.id. digilib.uns.ac.id. DAFTAR ISI. HALAMAN PERSETUJUAN .................................................................................. ii HALAMAN PENGESAHAN ................................................................................ iiii ABSTRAK .............................................................................................................. iv ABSTRACT ............................................................................................................. v MOTTO .................................................................................................................. vi PERSEMBAHAN .................................................................................................. vii KATA PENGANTAR ........................................................................................... viii DAFTAR ISI ........................................................................................................... ix DAFTAR GAMBAR .............................................................................................. xi DAFTAR TABEL ................................................................................................ xxii BAB I PENDAHULUAN........................................................................................ 1 1.1. Latar Belakang ........................................................................................... 1. 1.2. Rumusan Masalah ...................................................................................... 3. 1.3. Batasan Masalah ........................................................................................ 4. 1.4. Tujuan Penelitian ....................................................................................... 4. 1.5. Manfaat Penelitian ..................................................................................... 4. 1.6. Sistematika Penulisan ................................................................................. 4. BAB II TINJAUAN PUSTAKA ............................................................................... 6 2.1. Dasar Teori ................................................................................................ 6. 2.1.1. Additive White Gaussian Noise (AWGN) ............................................ 6. 2.1.2. Citra Berwarna (RGB Image) .............................................................. 7. 2.1.3. Block Matching ................................................................................... 8. 2.1.4. Euclidean Distance Matrices (EDM)................................................. 10. 2.1.5. Singular Value Decomposition (SVD) ............................................... 10. 2.1.6. Low Rank Minimization (RM) ........................................................... 11. 2.1.7. Hard Thresholding Function ............................................................. 14. 2.1.8. Aggregation ...................................................................................... 15. 2.1.9. Iterative Regularization ..................................................................... 15. 2.1.10 Peak Signal Noise Ratio (PSNR) ....................................................... 16 2.2. Penelitian Terkait ..................................................................................... 16. ix.
(10) library.uns.ac.id. digilib.uns.ac.id. BAB III METODOLOGI ....................................................................................... 20 3.1. Pengumpulan Data ................................................................................... 21. 4.1.1 Proses Pembacaan Image.......................................................................... 21 4.1.2 Proses Penyisipan AWGN ......................................................................... 21 3.2. RGB Image Decomposition ...................................................................... 23. 3.3. Patch Grouping ........................................................................................ 24. 3.3.1 Proses Inisialisasi Parameter .................................................................... 24 3.3.2 Proses Array Image ke Patch ................................................................... 27 3.3.3 Proses Block Matching ............................................................................. 29 3.4. Low Rank Minimization............................................................................ 32. 3.5. Aggregation ............................................................................................. 35. 3.5.1 Proses Pengubahan Patch ke Image ......................................................... 35 3.5.2 Proses Normalisasi Nilai Image ............................................................... 37 3.6. Iterative Regularization ............................................................................ 38. 3.7. RGB Image Recombination ...................................................................... 39. 3.8. Analisis Hasil ........................................................................................... 40. BAB IV HASIL DAN PEMBAHASAN ................................................................ 41 4.1.. Pengumpulan Data ................................................................................... 41. 4.2.. Proses Denoising Gambar ........................................................................ 43. 4.4.. Proses Rekombinasi Gambar .................................................................... 49. 4.5.. Analisis Hasil ........................................................................................... 50. BAB V PENUTUP ................................................................................................ 55 5.1. Kesimpulan .............................................................................................. 55. 5.2. Saran ........................................................................................................ 55. DAFTAR PUSTAKA............................................................................................. 56 LAMPIRAN I ........................................................................................................ 58 LAMPIRAN II ....................................................................................................... 59. x.
(11) library.uns.ac.id. digilib.uns.ac.id. DAFTAR GAMBAR. Gambar 2.1 Skema Warna RGB dalam Kubus Kartesian .......................................... 7 Gambar 2.2 Mekanisme Algoritma Block Matching ................................................. 8 Gambar 2.3 Skema Proses LRM via SVD’ ............................................................. 13 Gambar 3.1 Tahapan Metodologi Penelitian ........................................................... 20 Gambar 3.2 Tahapan Pengumpulan Data ................................................................ 21 Gambar 3.3 Proses Dekomposisi Noisy Image RGB................................................ 24 Gambar 3.4 Flowchart Proses Pengubahan Array Image ke Patch .......................... 28 Gambar 3.5 Flowchart Proses Block Matching ....................................................... 30 Gambar 3.6 Flowchart Proses Low Rank Minimization ........................................... 33 Gambar 3.7 Flowchart Proses Pengubahan Array Patch ke Image .......................... 31 Gambar 3.8 Proses RGB Image Recombination ...................................................... 40 Gambar 4.1 Original Image .................................................................................... 41 Gambar 4.2 Grafik PSNR Denoised Image ............................................................. 53 Gambar 4.3 Grafik MSE Denoised Image ............................................................... 53. xi.
(12) library.uns.ac.id. digilib.uns.ac.id. DAFTAR TABEL Tabel 2.1 Penelitian Terkait .................................................................................... 19 Tabel 4.1 Hasil PNSR dan MSE Denoised Image .................................................... 52. xii.
(13) library.uns.ac.id. digilib.uns.ac.id. BAB I PENDAHULUAN. 1.1. Latar Belakang Proses pengolahan citra digital merupakan salah satu topik penting untuk. analisis citra dalam bidang pengolahan citra digital. Salah satu permasalahan umum yang sering dihadapi pada pengolahan citra adalah noise. Noise selalu muncul dalam proses pengiriman informasi (proses transmisi data) pada setiap sistem komunikasi. Hal tersebut mengakibatkan informasi yang diperoleh mengalami gangguan sehingga hasilnya tidak sesuai dengan yang diharapkan. Pada dasarnya, noise dalam citra digital menyebabkan nilai intensitas piksel berubah dari nilai intensitas piksel yang sebenarnya. (Guo et al., 2016). Oleh karena itu, dalam proses pengolahan citra digital diperlukan proses pereduksian noise (image denoising). Image denoising merupakan salah satu permasalahan klasik dalam ranah image processing. Hingga saat ini, image denoising masih sangat berperan aktif dalam produksi digital image secara masif dan mudah (Hu et al., 2018). Proses image denoising mempunyai peranan penting dalam image pre-processing sebelum data citra dianalisis. Pentingnya proses image denoising ini adalah untuk memperoleh hasil citra yang lebih akurat dan mendekati aslinya dengan cara menghapus atau mereduksi noise yang terdapat pada citra dengan tetap mempertahankan informasi penting yang terkandung dalam citra. Demi mencapai tujuan tersebut, dalam beberapa dekade terakhir, berbagai teknik denoising telah dipelajari secara ekstensif, dikembangkan, dan diajukan dalam literatur (Guo et al., 2016). Salah satu teknik dalam proses image denoising adalah low rank minimization. Rank minimization sudah banyak diaplikasikan kedalam berbagai bidang seperti controller design, system identification, computer vision, dan machine learning (Huang et al., 2018). Berbagai penelitian tentang low rank minimization yang telah dilakukan, seperti pada penelitian yang dilakukan oleh Hu et al. pada tahun 2018 yang mengajukan metode patch-based sparse representation dan low rank minimization untuk image denoising gambar grayscale. Metode yang diajukan pada penelitian tersebut mempelajari compact dictionary dari similar patch menggunakan Principle. 1.
(14) library.uns.ac.id. digilib.uns.ac.id. Component Analysis (PCA) atau Singular Value Decomposition (SVD) dan mem-filter koefisien singular value yang digunakan dengan hard thresholding. Hasil dari penelitian ini menunjukkan bahwa metode yang diajukan dapat digunakan untuk melakukan denoising image secara efektif pada berbagai natural images dengan melakukan perbandingan nilai PSNR untuk mengukur kualitas gambar dari masingmasing metode. Penelitian yang dilakukan oleh Guo et al. pada tahun 2016 mengajukan metode nonlocal self-similarity dan low-rank minimization untuk image denoising gambar grayscale. Metode yang diajukan terbagi menjadi tiga langkah utama. Pertama, metode yag diajukan mengklasifikasikan image patch yang mirip pada gambar untuk membentuk beberapa similar patch group. Kedua, masing-masing similar patch group yang telah terbentuk kemudian difaktorisasi dengan Singular Value Decomposition (SVD) dan ditentukan nilai rank-nya. Ketiga, denoised image diperoleh dengan melakukan aggregasi pada seluruh image patch yang terlah diproses. Hasil penelitian menunjukan bahwa metode yang diajukan secara efektif dapat me-reduce noise dan kualitas hasilnya dapat disejajarkan dengan state-of-the-art denoising algorithm yang sudah ada dengan membandingkan nilai PSNR pada masing-masing metode. Penelitian yang dilakukan oleh Huang et al. pada tahun 2018 mengajukan metode untuk melakukan denoising pada gambar grayscale yang dilakukan menggunakan rank matrix sebagai regularization term pada cost function untuk menyelesaikan matrix completion problem dibandingkan dengan menggunakan nuclear norm. Matrix completion problem merupakan special rank minimization problem yang mana hanya terdapat sebagian nilai elemen matriks yang ada untuk menentukan nilai rank matrix terkecilnya. Hasil dari penelitian ini menunjukkan bahwa metode yang diajukan dapat menghapus noise lebih efisien pada gambar grayscale dibandingkan dengan menggunakan nuclear norm pada cost function-nya. Hasil perbandingan juga menunjukkan bahwa metode yang diajukan menghasilkan denoised image yang dapat bersaing dengan state-of-the-art denoising image yang sudah ada. Perbandingan pengukuran tersebut merupakan pengukuran kualitas gambar hasil denoised image dengan menggunakan Peak to Noise Ratio (PSNR), Mean Absolute-deviation Error (MAE), dan Structure Similarity (SSIM).. 2.
(15) library.uns.ac.id. digilib.uns.ac.id. Penelitian yang dilakukan oleh Shamsi et al., pada tahun 2015 mengajukan metode denoising image menggunakan low-rank minimization dengan modified noise estimation. Metode yang diajukan menyertakan struktur geometris image untuk memperkirakan nilai noise pada setiap iterasi dalam proses denoising dengan berdasar bahwa estimasi residu noise pada setiap iterasi dalam proses denoising dengan low rank minimization merupakan hal yang esensial untuk mendapatkan hasil denoising yang optimal, sedangkan estimasi nilai noise pada low rank minimization hanya menggunakan filtered noise dari iterasi sebelumnya tanpa memperhatikan struktur geometris denoising image-nya. Penelitian ini menghasilkan denoised image yang kualitasnya dapat disejajarkan dengan state-of-the-art denoising algorithm yang sudah ada. Berbagai penelitian dengan metode low rank minimization untuk image denoising telah dilakukan seperti penelitian dari Hu et al. pada tahun 2018, penelitian dari Guo et al. pada tahun 2016, penelitian dari Huang et al. pada tahun 2018, dan penelitian dari Shamsi et al. pada tahun 2015 hanya melakukan denoising image pada gambar grayscale. Oleh karena itu, penelitian ini diajukan untuk mengembangkan metode image denoising via low rank minimization dengan menambahkan metode color decomposition sehingga proses denoising image dapat dilakukan pada gambar berwarna. Masing-masing channel warna hasil pendekompoisisian kemudian dilakukan proses denoising image menggunakan rank minimization. Kemudian, hasil dari denoised image pada masing-masing channel warna dikombinasikan kembali sehingga menjadi satu gambar berwarna yang utuh.. 1.2. Rumusan Masalah Rumusan masalah pada penelitian ini berdasarkan latar belakang masalah yang. telah diuraikan di atas adalah bagaimana melakukan denoising image dengan menggunakan metode low rank minimization pada gambar berwarna.. 3.
(16) library.uns.ac.id. 1.3. digilib.uns.ac.id. Batasan Masalah Batasan masalah pada penelitian ini adalah sebagai berikut : 1. Data image yang digunakan untuk penelitian merupakan image yang diambil dari USC-SIPI image database yang diunduh dari website http://sipi.usc.edu/database/. 2. Input data image yang digunakan merupakan RGB image yang diberi noise menggunakan Additive White Gaussian Noise. 1.4. Tujuan Penelitian Penelitian ini memiliki tujuan untuk melakukan denoising pada gambar. berwarna dengan menggunakan metode low rank minimization.. 1.5. Manfaat Penelitian Penelitian ini diharapkan dapat memberi manfaat dengan memberikan. kontribusi dan tambahan referensi pada penelitian dibidang image denoising pada gambar berwarna.. 1.6. Sistematika Penulisan Laporan dalam Tugas Akhir ini dibagi menjadi beberapa bab seperti berikut : Bab I Pendahuluan, menjelaskan tentang latar belakang peneltian, rumusan. masalah, batasan masalah, tujuan penelitian, manfaat penelitian, serta sistematika penulisan laporan tugas akhir ini. Bab II Tinjauan Pustaka menjelaskan tentang dasar teori yang mendasari penelitian ini seperti materi tentang Additive White Gaussian Noise (AWGN), Block Matching, Euclidean Distance Matrices (EDM), Low-Rank Minimization, dan faktorisasi matriks dengan Singular Value Decomposition (SVD). Bab III Metodologi Penelitian, menjelaskan tentang langkah-langkah atau teknik yang digunakan dalam implementasi sistem dan evaluasi hasil pada penelitian.. 4.
(17) library.uns.ac.id. digilib.uns.ac.id. Bab IV Hasil dan Pembahasan, menjelaskan tentang hasil penelitian yang telah dilakukan dan analisa hasil penelitian. Bab V Kesimpulan dan Saran, berisi tentang kesmipulan pada penelitian yang dilakukan dan saran yang diberikan untuk penelitian selanjutnya.. 5.
(18) library.uns.ac.id. digilib.uns.ac.id. BAB II TINJAUAN PUSTAKA. 2.1. Dasar Teori. 2.1.1 Additive White Gaussian Noise (AWGN) Model Gaussian (atau disebut juga dengan normal) noise merupakan model noise yang sering diterapakan dalam proses image restoration dikarenakan kesederhanaanya dalam pemodelan matematika pada spatial dan frequency domain (Gonzalez & Woods., 2002). Penggunaan istilah white noise digunakan karena dalam Gaussian noise, fourrier spectrum dari noise-nya bersifat konstan. Terminologi ini diambil dari sifat fisika cahaya putih (yang mengandung seluruh frekuensi spektrum warna yang terlihat oleh mata dalam proporsi yang hampir sama). Secara umum, Probability Density Function dari AWGN dirumuskan pada persamaan (1). 𝑃 (𝑧 ) =. 1 √2𝜋𝜎. 𝑒 −(𝑧−𝜇). 2 ⁄2𝜎 2. (1). dengan 𝑧 merupakan gray level, μ merupakan nilai rata-rata (mean), σ merupakan standar deviasi, dan 𝜎 2 merupakan variance. Gray level dalam gambar merupakan nilai setiap pixel-nya. Secara baku, dalam model gaussian, nilai rata-rata (μ) bernilai 0 dan standar deviasi-nya (𝜎) bernilai 1. Nilai rata-rata (μ) berpengaruh pada tingkat kecerahan gambar, sedangkan standar deviasi (𝜎) mempengaruhi tingkat kekeruhan (noise) pada gambar (Gonzalez & Woods., 2002). Penyisipan AWGN pada original image dalam image processing dirumuskan pada persamaan (2) 𝑔=𝑓+𝑛. (2). di mana 𝑔 adalah gambar ber-noise, 𝑓 adalah original clean image, dan 𝑛 adalah noise-nya. Jadi, proses penyisipan noise dilaukan dengan meng-generate angka acak menggunakan distribusi gaussian sejumlah ukuran original clean image (pada setiap pixel-nya) dan kemudian menyimpanya kedalam array 𝑛. Array 𝑛 ini kemudian dijumlahkan dengan array original clean image (array 𝑓) sehingga menghasilkan array gambar ber-noise (array 𝑔). 6.
(19) library.uns.ac.id. digilib.uns.ac.id. 2.1.2 Citra Berwarna (RGB Image) Citra berwarna atau gambar RGB merupakan gambar yang tiap-tiap warnanya dibentuk dari komposisi warna primer merah, hijau, dan biru yang didasarkan pada system koordinat kartesian (Gonzales & Woods, 2002). Pada Gambar (2.1), nilai RGB berada pada masing-masing titik koordinat kartesian. Perbedaan pendefinisan warna didasarkan pada nilai vektor yang terhubung dari garis koordinat RGB.. Gambar 2.1 Skema warna RGB dalam kubus koordinat kartesain (Gonzales & Woods, 2002) Gambar yang direpresentasikan dalam warna RGB, pada dasarnya terdiri dari tiga komponen gambar yang terdiri dari masing-masing warna primer (merah, hijau, dan biru). Ketika direpresentasikan dalam RGB monitor, ketiga gambar tersebut dikombinasikan dalam phosphor screen untuk menghasilkan composite color image. Jumlah bit yang digunakan untuk merepresentasikan tiap pixel-nya dinamakan depth. Misalkan, diasmusikan bahwa suatu gambar RGB merupakan gambar 8-bit. Artinya, triplet dari nilai RGB memiliki depth 24-bit. Dengan begitu, secara matematis total jumlah warna yang dapat direpresentasikan dalam 24-bit RGB gambar berwarna adalah (28 )3 atau 16.777.216 warna.. 7.
(20) library.uns.ac.id. digilib.uns.ac.id. 2.1.3 Block Matching Block Matching merupakan suatu teknik yang digunakan dalam image processing untuk menentukan kandidat blok dalam wilayah pencarian tertentu pada suatu frame yang paling sesuai dengan blok pada frame tersebut (Yakoob et al., 2013). Algortima block matching membagi suatu frame pada gambar menjadi suatu macroblock dan membandingkan tiap-tiap macroblock tersebut dengan blok yang sesuai dengan tetangga yang berdektan pada frame gambar didekatnya. 𝑁 × 𝑁 Macroblock yang menjadi neighbor. 𝑆𝑒𝑎𝑟𝑐ℎ 𝑊𝑖𝑛𝑑𝑜𝑤𝑠. 𝑁 × 𝑁 Macroblock yang menjadi reference Gambar 2.2 Mekanisme algoritma block matching. Mekanisme dalam proses block matching diilustrasikan dalam gambar 2.2. Algortima block matching membagi frame. dalam search windows menjadi. beberapa 𝑁 × 𝑁 macroblock. Berbagai macroblock yang telah terbentuk kemudian dipilih salah satu macroblock yang menjadi acuan (reference) dan kemudian dibandingkan antara macroblock yang menjadi acuan (reference) dengan 8.
(21) library.uns.ac.id. digilib.uns.ac.id. macroblocks lainya (neighbor-nya). Dalam proses image denoising, proses Block Matching bertujuan untuk mendapatkan L-most similar patch (disimbolkan dengan 𝐿. {𝑔𝑐,𝑖 }𝑖=1 ) dari noisy image patch (𝑔) dengan cara melakukan perbandingan jarak antara. reference. patch. (𝑔𝑗 ) dengan. candidate. patch. (neighbor-nya). (𝑔𝑖 ) menggunakan Euclidean Distance Matrices (EDM). Diasumsuikan bahwa ukuran dari reference patch (𝑔𝑗 ) berukuran √𝑚 × √𝑚 , proses block matching dilakukan dengan membagi noisy image patch menjadi sejumlah 𝑀 overlapping patch. Langkah awal dalam proses pembagian tersebut dilakukan dengan menginisialisasi jendela pencarian (Search Windows) pada noisy image patch. Setelah search windows dibuat, proses selanjutnya adalah menentukan macroblock mana yang menjadi reference patch. Penentuan ini dilakukan secara acak, selama macroblock tersebut masih berada dalam search windows. Selanjutnya, setelah macroblock reference patch ditentukan, dilakukan proses perbandingan dengan macroblock – macroblock lain (neighbor-nya) yang berada dalam satu search windows dengan menggunakan Euclidean Distance Matrices (EDM). Hasil dari proses perbandingan tersebut kemudian disimpan kedalam array baru dan dilakukan proses pengurutan (sorting). Hasil pengurutan ini menghasilkan array L-most similar patch. Kemudian, Reference patch 𝑔𝑗 dan L-most similar patch digunakan untuk membentuk suatu kelompok array matriks menggunakan tiap-tiap similar patch-nya sebagai kolom pada kelompok matriks yang baru (𝐺𝑗 ). Kelompok matriks baru tersebut diformulasikan pada persamaan (3) 𝐺𝑗 = [𝑔𝑗 , 𝑔𝑐,1 , … , 𝑔𝑐,𝐿 ]. (3). dengan nilai tiap-tiap elemen matriksnya terurut secara ascending ( 𝑔𝑗 > 𝑔𝑐 1 > ⋯ > 𝑔𝑐 𝐿 ). Dikarenakan 𝐺𝑗 dibentuk dari noisy patch, maka matriks 𝐺𝑗 dapat diformulasikan pada persamaan (4) 𝐺𝑗 = 𝐹𝑗 + 𝑁𝑗. (4). di mana 𝐹𝑗 merupakan patch matrix dari clean image matrix dan 𝑁𝑗 merupakan patch matrix dari noise matrix.. 9.
(22) library.uns.ac.id. digilib.uns.ac.id. 2.1.4 Euclidean Distance Matrices Eulicdean Distance Matrices merupakan kuadrat jarak dari antar elemen pada matriks (Docmanic et al., 2015). Pada matriks 𝑋 dengan 𝑋 𝜖 ℝd×n , 𝑋 = [𝑥1 , 𝑥2 , … , 𝑥𝑛 ], dan 𝑥𝑖 𝜖 ℝd , EDM pada matriks 𝑋 dirumuskan pada persamaan (5) 2. (5). 𝑑𝑖𝑗 = ‖𝑥𝑖 − 𝑥𝑗 ‖. di mana ‖ . ‖. melambangkan euclidean norm.. 2.1.5 Singular Value Decomposition (SVD) SingularValue Decomposition (SVD) merupakan topik penting dalam aljabar linear yang melakukan faktorisasi dan aproksimasi dalam pereduksian data pada matriks dengan melakukan pengidentifikasian berdasarkan varian yang paling besar (Cao., 2006). SVD berkaitan dengan nilai singular yang berkorelasi dengan suatu vektor matriks, di mana korelasi antara nilai singular dan vektornya mencerminkan karakteristik matriks tersebut. Dimisalkan matrik 𝐴 adalah 𝑚 × 𝑛 matrik dengan rank 𝑟 ≤ 𝑛 ≤ 𝑚 , maka matriks 𝐴 dapat difaktorkan menjadi 3 matriks seperti pada persamaan (6). 𝑇 𝐴𝑚×𝑛 = 𝑈𝑚×𝑚 ∑𝑚×𝑛 𝑉𝑛×𝑛. di mana 𝑈𝑚×𝑚 = [𝑢1 , 𝑢2 , … , 𝑢𝑛 ] adalah matrik orthogonal 𝑚 × 𝑚,. (6) 𝑇 𝑉𝑛×𝑛 =. [𝑣1 , 𝑣2 , … , 𝑣𝑛 ]𝑇 adalah transpose dari matrik 𝑉𝑛×𝑛 merupakan matriks orthogonal 𝑛 × 𝑛, dan ∑𝑚×𝑛 merupakan matrik diagonal 𝑚 × 𝑛 dengan bilangan yang bernilai tidak negatif pada diagonalnya. Dengan mengasumsikan bahwa 𝑘 = 𝑟𝑎𝑛𝑘(𝐴), maka matriks A dapat direpresentasikan sesuai dengan persamaan (7) 𝑘 𝑇 𝐴𝑚×𝑛 = 𝑈𝑚×𝑚 ∑𝑚×𝑛 𝑉𝑛×𝑛 = ∑ 𝜎𝑖 𝑢𝑖 𝑣𝑖𝑇. (7). 𝑖=1. di mana pendekomposisisan matrik 𝐴 menjadi bobot singular value 𝜎𝑖 berkorespondensi dengan left-singular vectors 𝑢𝑖 dan right-singular vectors 𝑣𝑖𝑇 dengan nilai 𝜎1 ≥ 𝜎2 ≥ ⋯ 𝜎𝑘 > 0. 10.
(23) library.uns.ac.id. digilib.uns.ac.id. 2.1.6 Low Rank Minimization Low Rank Minimization (LRM) memiliki cakupan pengaplikasian dalam area saintifik yang luas dan beragam, seperti controller design, system identification, computer vision, dan machine learning. Berbagai penelitian terkait menyajikan bahwa rank minimization problem sudah banyak diaplikasikan untuk image restoration dan berbagai recovery effect pada gambar dalam beberapa dekade terakhir (Huang et al., 2018). Secara umum, rank minimization problem diformulasikan seperti pada persamaan (8) min 𝑟𝑎𝑛𝑘(𝑋), 𝑠. 𝑡. 𝑋 𝜖 Φ di. mana. 𝑟𝑎𝑛𝑘 ( . ) mendefinisikan. rank. (8). dari. matrik. yang. diberikan.. 𝑋 𝜖 ℝ𝑛1×𝑛2 merupakan low rank matrix yang belum diketahui, dan Φ merupakan convex set. Dalam proses image denoising, Low Rank Minimization digunakan untuk menentukan estimasi nilai noise-free group matrix (𝐹𝑗 ) dari image patch hasil proses patch grouping dengan metode block matching (𝐺𝑗 ). Meruntut pada persamaan (4) dalam tahapan block matching, estimasi nilai clean image matrix ̂𝑗 ) harus memenuhi persamaan (6) (𝐹 2. ̂𝑗 ‖ = 𝜎 2 ‖𝐺𝑗 − 𝐹 𝐹. (6). di mana ‖ . ‖ meruapakan Frobenius Norm dan 𝜎 merupakan standar deviasi dari noise. Selanjutnya, estimasi nilai (𝐹𝑗 ) dapat diperoleh dengan menyelesaikan persamaan optimization problem pada persamaan (7) ̂𝑗 = arg min 𝐹 𝐹𝑗. 1 2 ‖𝐺𝑗 − 𝐹𝑗 ‖ + 𝜔𝑗 𝑟𝑎𝑛𝑘(𝐹𝑗 ) 𝐹 2. (7). di mana 𝜔𝑗 merupakan konstanta positif yang befungsi sebagai penyeimbang 2. (balance) data fidelity term ‖𝐺𝑗 − 𝐹𝑗 ‖𝐹 dan rank regularization term. Menggunakan teorema yang dikemukakan oleh Huang et al., (2018) yang menyatakan apabila singular value decomposition (SVD) dari matriks 𝐺𝑗 𝜖 ℝ𝑛1 ×𝑛2 berupa 𝐺𝑗 = 𝑈Σ𝐺𝑗 𝑉 𝑇 , di mana 𝑈 𝜖 ℝ𝑛1 ×𝑛1 , dan 𝑉 𝜖 ℝ𝑛2 ×𝑛2 merupakan unitary. 11.
(24) library.uns.ac.id. digilib.uns.ac.id. matrices. Solusi dari rank minimization problem dapat dinyatakan sebagai ℎ ℎ ̂𝑗 = 𝑈𝒟𝜔 𝐹 (Σ𝐺𝑗 ) 𝑉 𝑇 di mana 𝒟𝜔 (Σ𝐺𝑗 ) merupakan hard thresholding function. pada diagonal matriks Σ𝑦 yang nilainya adalah ℎ 𝒟𝜔 (Σ𝐺𝑗 ) = { 𝑖𝑖. 𝜎𝑖 (𝐺𝑗 ) 𝑢𝑛𝑡𝑢𝑘 𝜎𝑖 (𝐺𝑗 ) ≥ 𝑇𝑟 0. (8). 𝑢𝑛𝑡𝑢𝑘 𝜎𝑖 (𝐺𝑗 ) < 𝑇𝑟. dengan ΣGj merupakan matriks diagonal hasil dekomposisi via SVD, 𝜎𝑖 merupakan nilai elemen ke-𝑖 dari matriks diagonal Σ𝐺𝑗 , dan 𝑇𝑟 merupakan nilai thresholdnya. Sehingga, apabila SVD dari matriks 𝐺𝑗 adalah 𝐺𝑗 = 𝑈𝐺𝑗 Σ𝐺𝑗 𝑉𝐺𝑇𝑗 , solusi dari persamaan (7) dapat dinyatakan sebagai ℎ 𝐹̂𝑗 = 𝑈𝐺𝑗 𝒟𝜔 𝑉𝑇 𝑗 𝐺𝑗. (9). Proses untuk menentukan solusi optimal dalam rank minimization problem pada persamaan (7) dilakukan dengan melakukan proses low rank minimization pada matriks (𝐺𝑗 ) untuk mendapatkan estimasi nilai dari matriks (𝐹𝑗 ) yang secara matematis dituliskan ke dalam persamaan (9). Proses low rank minimization matriks. (𝐺𝑗 ) pada. persamaan (9). tersebut. diawali dengan. melakukan. pendekomposisian matriks (𝐺𝑗 ) menjadi 3 kelompok matriks tersendiri yang bernama matriks 𝑈, matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 , dan matriks 𝑉 𝑇 . Matriks 𝑈 dan matriks 𝑉 𝑇 merupakan matriks orthogonal yang masing-masing secara berurutan memiliki ukuran 𝑛1 × 𝑛1 dan 𝑛2 × 𝑛2 , sedangkan matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 merupakan martiks diagonal yang nilai elemenya merupakan singular value dari matriks 𝐺𝑗 . Setelah pendekomposisian matriks 𝐺𝑗 selesai dilakukan, proses selanjutnya adalah menentukan nilai threshold yang digunakan. Penentuan nilai threshold ini secara matematis diformulasikan dalam persamaan (10). Selanjutnya, nilai threshold tersebut dibandingkan dengan tiap-tiap elemen diagonal pada matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 . Sesuai dengan persamaan (8), apabila nilai singular value dalam matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 bernilai lebih dari nilai threshold, maka nilanya dipertahankan, sedangkan apabila nilai dari singular value dalam matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 kurang dari nilai threshold, maka nilainya menjadi nol. Setelah proses thresholding dilakukan, proses selanjutnya adalah menyatukan kembali matriks 𝐺𝑗 dengan mengalikan antara matriks 12.
(25) library.uns.ac.id. digilib.uns.ac.id. 𝑈, matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 hasil thresholding, dan matriks 𝑉 𝑇 . Hasil dari perkalian tersebut adalah nilai dari matriks 𝐹𝑗 . Keseluruhan proses low rank minimization via singular value decomposotion (SVD) dengan hard-thresholding function diilustrasikan ke dalam Gambar 2.3 Matriks 𝐺𝑗. Matriks 𝑈𝐺𝑗. Matriks Σ𝐺𝑗. Matriks 𝑉𝐺𝑇𝑗. Tentukan Nilai Threshold. Proses Hard Thresholding. Matriks 𝑈𝐺𝑗. Matriks Σ𝐺𝑗 baru. Matriks 𝑉𝐺𝑇𝑗. Matriks 𝐹𝑗 Gambar 2.3 Proses low rank minimization via SVD dengan hard-thresholding function pada matriks 𝐺𝑗. Dengan kata lain, estimasi nilai noise-free group matrix (𝐹𝑗 ) dapat diperoleh dengan melakukan dekomposisi matriks noisy group matrix (𝐺𝑗 ) menggunakan singular value decomposition (SVD) dan menentukan nilai rank pada singular value-nya dengan proses hard-thresholding function.. 13.
(26) library.uns.ac.id. digilib.uns.ac.id. 2.1.7 Hard Thresholding Function Hard-Thresholding Function merupakan fungsi yang digunakan untuk proses penentuan nilai rank pada persamaan (7). Penentuan rank ini didasarkan pada persamaan (8). Persamaan (8) mengindikasikan bahwa apabila nilai singular value dalam matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 bernilai lebih dari nilai threshold, maka nilanya dipertahankan, sedangkan apabila nilai dari singular value dalam matriks 𝑆𝑖𝑔𝑚𝑎 𝐺𝑗 kurang dari nilai threshold, maka nilainya menjadi nol. Penentuan nilai threshold dilakukan dengan menggunakan persamaan (10) 𝑇𝑟 = √2𝜔. (10). Penentuan nilai threshold pada hard-thresholding function merupakan hal yang esensial. Hal ini dikarenakan apabila nilai 𝜔 terlalu besar, maka akan banyak singular value yang terbuang sehingga banyak informasi dari gambar yang hilang dan recovered image akan menghasilkan gambar yang over smooth. Sedangkan apabila nilai 𝜔 terlau kecil, maka akan banyak noise yang tersisa pada recovered image. Menggunakan perhitungan analisis yang tekah dilakukan oleh Huang et al., (2018), nilai 𝜔 diformulasikan dalam persamaan (11) 𝜔 = 𝑐√𝑡𝜎 2. (11). dimana 𝑐 merupakan konstanta positif, 𝑡 merupakan jumlah similar patch, dan 𝜎 2 merupakan noise variance. Dengan mensubtitusikan persamaan (11) ke persamaan (10), maka dihasilkan persamaan (12) sebagai berikut 𝑇𝑟 = √2𝑐√𝑡 × 𝜎. (12). Sehingga persamaan (8) dapat dituliskan ke dalam persamaan (13). ℎ 𝒟𝜔 (Σ𝐺𝑗 ) = { 𝑖𝑖. 𝜎𝑖 (𝐺𝑗 ) 𝑢𝑛𝑡𝑢𝑘 𝜎𝑖 (𝐺𝑗 ) ≥ √2𝑐 √𝑡 × 𝜎 0. 𝑢𝑛𝑡𝑢𝑘 𝜎𝑖 (𝐺𝑗 ) < √2𝑐√𝑡 × 𝜎. 14. (13).
(27) library.uns.ac.id. digilib.uns.ac.id. 2.1.8 Aggregation Aggregation merupakan tahapan dalam proses image denoising yang berfungsi untuk menormalkan nilai dari patch, karena suatu single patch dalam proses sebelumnya, kemungkinan merupakan anggota dari beberapa patch group. Aggregasi dilakukan supaya tidak terjadinya perhitungan ganda yang mengakibatkan kesalahan dalam perhitungan. Proses agregasi diformulasikan pada persamaan (14) 𝑛. 1 𝑥̂𝑖 = ∑ 𝑥̂𝑖,𝑗 𝑛. (14). 𝑗=1. di mana 𝑥̂𝑖 merupakan patch 𝑓𝑖 yang sudah di-denoised. 𝑥̂𝑖,𝑗 (𝑗 = 1,2, … , 𝑛) menyatakan 𝑛 different estimate dari 𝑓𝑖 .. 2.1.9 Iterative Regularization Iterative regularization merupakan tahapan dalam proses image denoising yang bertujuan untuk meminimalisir residu noise yang tersisa pada recovered image 𝑓̂. Pada tahap ini, terdapat proses penambahan filtered noise pada denoised image untuk setiap iterasi. Setelah iterasi proses denoising sebanyak 𝑘, prosedur rank minimization denoising lain yang sama dilakukan untuk men-denoise recovered image yang ter-update. Prosedur tersebut dirumuskan pada persamaan (15) 𝑔(𝑘+1) = 𝑓̂ (𝑘) + 𝑣(𝑔 − 𝑓̂ (𝑘) ). (15). di mana 𝑣 merupakan relaxation parameter. Pada proses iterasi ke-𝑘 dengan nilai (𝑘 ≥ 2), nilai 𝜎𝑗(𝑘) untuk patch 𝑗 diperkirakan dengan persamaan (16) (𝑘). 𝜎𝑗. (𝑘) = 𝛾√𝜎 2 − ‖𝑔𝑗 − 𝑔𝑗 ‖. (16). 𝐹. di mana 𝛾 merupakan scalling factor untuk mengontrol proses re-estimation noise. Setelah prosedur yang sama dilakukan terus menerus, final recovered image 𝑓̂ akhirnya didapatkan.. 15.
(28) library.uns.ac.id. digilib.uns.ac.id. 2.1.10 Peak Signal Noise Ratio (PSNR) Peak Signal to Noise Ratio (PSNR) adalah perbandingan antara nilai maksimum dari sinyal yang diukur dengan besarnya noise yang berpengaruh pada sinyal tersebut (Chedad et al., 2010). PSNR dinyatakan dalam skala logaritmik decibel (dB). Nilai PSNR yang lebih tinggi menyiratkan kemiripan yang lebih erat antara hasil rekonstruksi dengan gambar asli. Nilai PSNR suatu gambar dikategorikan berkualitas rendah apabila nilai dari PSNR-nya < 30 untuk gambar berwarna 24-bit atau gambar grayscale 8-bit (Chedad et al., 2010). PSNR dirumuskan pada persamaan (14) dan (Mean Square Error) MSE dirumuskan pada persamaan (15). 𝑃𝑆𝑁𝑅 = 10 log10 (. 𝑀𝐴𝑋𝑓2 ) 𝑀𝑆𝐸. (14). 𝑚−1 𝑛−1. 1 𝑀𝑆𝐸 = ∑ ∑ ‖𝑓 (𝑖, 𝑗) − 𝑔 (𝑖, 𝑗)‖2 𝑚𝑛 0. (15). 0. dengan 𝑓 merupakan matriks data gambar asli, 𝑔 merupakan matriks data gambar hasil pengolahan (denoised image), 𝑚 merupakan jumlah baris piksel gambar dengan 𝑖 sebagai indeksnya, 𝑛 merupakan jumlah kolom piksel gambar dengan 𝑗 sebagai indeksnya, 𝑀𝑎𝑥𝑓 merupakan nilai sinyal maksimum dari gambar asli.. 2.2. Penelitian Terkait Berikut adalah beberapa penelitian yang berkaitan dengan penelitian yang. diajukan.. 1.. Haijuan Hu, Jacques Froment, Quansheng Liu (2018) yang berjudul “Patch-Based Low-Rank Minimization for Image Denoising”. Penelitian ini mengajukan metode patch-based low rank minimization untuk image denoising dengan berdasar pada bahwa minimisasi rank matriks dengan Frobenius norm data fidelity dapat ditentukan nilainya menggunakan hardthresholding filter dengan principle component analysis (PCA) atau. 16.
(29) library.uns.ac.id. digilib.uns.ac.id. singular value decomposition (SVD). Dalam prosesnya, metode ini mempelajari compact dictionary dari similiar patch dengan PCA atau SVD dan mengapilkasikan hard-thresholding filter untuk menyusutkan nilai singular value yang digunakan pada rank matriks. Hasil dari penelitian ini menunjukkan bahwa metode yang diajukan dapat digunakan untuk melakukan denoising image secara efektif pada berbagai natural images yang dilakukan dengan melakukan perbandingan nilai PSNR untuk mengukur kualitas gambar dari masing-masing metode.. 2. Qiang Guo, Caiming Zhang, Yunfeng Zhang, Yunfeng Zhang, Hui Liu (2016) yang berjudul “An Efficient SVD-Based Method for Image Denoising”. Penelitian ini mengajukan metode non-local self-similarity dan low-rank approximation (LRA) untuk melakukan denoising image. Metode yang diajukan diawali dengan melakukan klasifikasi similiar image patch menggunakan block matching untuk membentuk similiar patch group. Kemudian, masing-masing grup dari similiar patch difaktorisasi dengan singular value decompostion (SVD) dan diestimasi dengan hanya mengambil beberapa nilai singular value dari singular vector-nya. yang. nilainya. ditentukan. dengan. hard-thresholding.. Selanjutnya, denoised image dibentuk dari proses aggregation pada seluruh patch yang telah diproses. Dalam penelitian ini, metode yang diajukan mengeksploitasi optimal energy compaction dari SVD untuk menghasilkan low rank approximation (LRA) dari similiar patch group. Hasil penelitian menunjukan bahwa metode yang diajukan secara efektif dapat me-reduce noise dan kualitas hasilnya dapat disejajarkan dengan state-of-the-art. denoising. algorithm. yang. sudah. ada. dengan. membandingkan nilai PSNR pada masing-masing metode.. 3. Yu-Mei Huang, Hui-Yin Yan, You-Wei Wen, Xu Yang (2018) yang berjudul “Rank Minimization with Application to Image Noise Removal”. Penelitian ini metode yang diajukan menggunaan matriks rank sebagai regularization term pada cost function untuk menyelesaikan matriks. 17.
(30) library.uns.ac.id. digilib.uns.ac.id. completion problem. Hasil dari cost function tersebut kemudian dianalisis dan diperoeh dengan hard-thresholding pada singular value-nya. Penelitian ini menunjukkan bahwa metode rank minimization dapat menghapus noise pada gambar lebih efisien dibandingkan dengan metode nuclear norm dan state-of-the-art denoising algorithm yang sudah ada dengan melakukan pengukuran kualitas gambar hasil denoised image menggunakan Peak to Noise Ratio (PSNR), Mean Absolute-deviation Error (MAE), dan Structure Similarity (SSIM). Penelitian terkait yang telah dijabarkan, dirangkum dalam Tabel 2.1 yang mencakup nama peneliti, metode yang digunakan, serta tujuan dan hasil yang didapat dari penelitian.. 18.
(31) library.uns.ac.id. digilib.uns.ac.id. Tabel 2.1 Penelitian Terkait No. 1.. Penulis (Tahun) Haijuan Hu, Jacques Froment, Quansheng Liu (2018). Tujuan. Metode. Melakukan denoising image dengan metode patch based low rank minimization. Patch Based Low Rank Minimization. 2.. Qiang Guo, Caiming Zhang, Yunfeng Zhang, Hui Liu (2016). Melakukan denoising image dengan metode non-local self-similarity dan low rank approxi- mation. Low Rank Approximation Patch Grouping Singular Value Decomposition. 3.. Yu-Mei Huang, HuiYin Yan, YouWei Wen, Xu Yang (2018). Mengusulkan metode rank minimization untuk melakukan denoising pada gambar yang terkontaminasi dengan noise Additive White Gaussian Noise (AWGN) dan Gamma Multiplicative Noise. Rank Minimization Singular Value Decomposition Block Matching. 19. Hasil. Keterkaitan dengan peneltian Metode yang diajukan Penelitian menggudapat digunakan untuk nakan Low Rank Minimelakukan denoising mization image secara efektif pada berbagai natural images Metode yang diajukan Penelitian menggusecara efektif dapat nakan block matching melakukan reducing untuk patch grouping noise dan dapat bersaing serta menggunakan dngan state-of-the-art SVD untuk menentukan denoising algorithm nilai Low Rank-nya Rank minimization dapat menghapus noise pada gambar lebih efisien dibandingkan dengan metode nuclear norm dan state-of-the-art denoising algorithm yang sudah ada. Penelitian menggunakan rank minimization, dan penentuan nilai singular value yang digunakan dalam SVD ditentukan dengan menggunakan Hard Thresholding.
(32) library.uns.ac.id. digilib.uns.ac.id. BAB III METODOLOGI. Tahapan penelitian yang diusulkan dimulai dari tahap pengumpulan data, RGB Image Decomposition, Patch Grouping, Low Rank Minimization, Aggregation, Iterative Regularization, RGB Image Recombination, dan analisis hasil. Tahapan metodologi penelitian digambarkan pada Gambar 3.1.. Pengumpulan Data. RGB Image Decomposition. Patch Grouping. Low Rank Minimization. Iterative Regularization. Aggregation. RGB Image Recombination. Analisis Hasil. Gambar 3.1 Tahapan metodologi penelitian denoising image berwarna. 20.
(33) library.uns.ac.id. 3.1. digilib.uns.ac.id. Pengumpulan Data Data image yang digunakan berupa data gambar digital berwarna ‘lena.png’. dengan 24-bit berukuran 512 x 512 piksel yang diambil dari The USC-SIPI Image Database bersumber dari website ‘http://sipi.usc.edu/database/’. Data image kemudian disisipi noise dengan Additive White Gaussian Noise (AWGN) dengan nilai sigma tertentu. Proses pengumpulan data diilustrasikan sebagai berikut. Array Pixel 3D. +. Noise dari AWGN. Array Pixel Noisy 3D. Gambar 3.2 Tahapan Pengumpulan Data. Secara garis besar, proses pengumpulan data dibagi menjadi 2 bagian, yaitu proses pembacaan image dan proses penyisipan Additive White Gaussian Noise (AWGN). 3.1.1. Proses Pembacaan Image Input. : Image berformat png. Output. : Array pixel hasil pembacaan image. Deskripsi. :. Proses pembacaan image dalam bahasa pemrograman JAVA dilakukan dengan memanggil fungsi ImageIO.read dan menyimpanya kedalam sebuah file. Pembacaan image dilakukan dengan meng-generate objek BufferedImage, karena objek BufferedImage dapat digunakan untuk mengelola image dalam memory dan menyediakan method untuk menyimpan, menginterpretasi, dan memperoleh pixel data. BufferedImage meng-extend imageclass (yang digunakan untuk merepresentasikan graphical image sebagai piksel array yang berbentuk persegi) dan data buffer (memori penyimpanan fisik yang digunakan untuk menyimpan data sementara). Dalam BufferedImage, nilai yang disimpan dalam satu nilai Integer adalah nilai keseluruhan komponen warna yang. 21.
(34) library.uns.ac.id. digilib.uns.ac.id. bernilai satu byte pada setiap komponen (sebagai contoh : 0xAARGGBB dengan AA sebagai alpha, RR sebagai red, GG sebagai green, dan BB sebagai blue). Kemudian, karena pemrosesan dalam proses denoising dilakukan pada tiap-tiap channel warna, perlu dilakukan pemisahan antar komponen warna. Pemisahan ini dilakukan dengan operasi bit-wise. Komponen pada warna merah (red) didapatkan dengan operasi bit-wise : (p>>16) & 0xff; dan disimpan kedalam array redOriginal (2D array). Komponen pada warna hijau (green) didapatkan dengan operasi bit-wise : (p>>8) & 0xff; dan disimpan kedalam array greenOriginal (2D Array). Komponen pada warna biru (blue) didapatkan dengan operasi bit-wise (p>>0) & 0xff; dan disimpan kedalam array blueOriginal (2D Array). Array redOrginal, greenOriginal, dan blueOriginal inilah yang akan diproses dalam tahapan selanjutnya.. 3.1.2. Proses Penyisipan Additive White Gaussian Noise (AWGN) Input. : Array 3D Original Image (hasil pembacaan) dan nilai sigma. Output. : Array Noisy Image. Deskripsi. :. Proses penyisipan AWGN dilakukan dengan menyisipkan noise pada array gambar berwarna original. Proses ini dilakukan membuat objek RNG (random number generator) dengan menggunakan fungsi .nextGaussian pada JAVA yang diperoleh setelah. melakukan import dari package. java.util.Random. Fungsi.nextGaussian merupakan fungsi yang digunakan untuk mengg-generate angka acak dengan mean (μ) = 0 dan standar deviasi (𝜎) = 1. Array gambar berwarna (array RGBOriginal) merupakan array 3D yang masing-masing dimensinya merupakan gabungan dari array redOriginal, greenOriginal, dan blueOriginal yang diperoleh dari proses pembacaan image sebelumnya. Masing-masing elemen dari array 3D tersebut (setiap pixel pada. 22.
(35) library.uns.ac.id. digilib.uns.ac.id. gambar) kemudian ditambahkan noise yang di-generate dari perkalian antara sigma dengan RNG dari fungsi .nextGaussian dengan menggunakan looping. Perkalian tersebut dilakukan karena nilai standar deviasi (nilai sigma) dari fungsi .nextGaussian secara default bernilai 1, sedangkan dalam penelitian, nilai sigma telah ditentukan (misalkan, sigma = 10). Sehingga untuk mendapatkan nilai acak dengan standar deviasi bernilai 10, maka RNG yang dihasilkan dari fungsi .nextGaussian kemudian dikalikan dengan nilai sigma nya (sigma = 10). Hasil dari proses penyisipan AWGN ini kemudian disimpan kedalam array 3D baru yang dinamakan array RGBNoisy. Selanjutnya, dilakukan proses normalisasi supaya nilai dari tiap-tiap elemen pada array RGBNoisy tidak kurang dari 0 dan tidak lebih dari 255. Hasil normalisasi kemudian disimpan ke array yang sama (array RGBNoisy) dengan meng-override nilai sebelumnya.. 3.2. RGB Image Decomposition Input. : Array 3D Noisy Image (array RGB Noisy). Output. : 3 Array warna RGB (redNoisy, greenNoisy, dan blueNoisy). Deskripsi. :. Tahap RGB Image Decomposition adalah tahap untuk pendekomposisian warna RGB 24-bit pada gambar sehingga menghasilkan 3 gambar monochromatic (masing-masing bernilai 8-bit) yang bersifat individu dengan masing-masing channel berwarna merah (Red), hijau (Green), dan biru (Blue). Proses pendekomposisian ini dilakukan dengan memecah array tiga dimensi RGBNoisy menjadi 3 bagian array 2 dimensi yang masing-masing dinamakan array redNoisy, array greenNoisy, dan array blueNoisy. Masing-masing array tersebut menyimpan nilai elemen piksel gambar dengan warna sesuai namanya. Proses pendekomposisian dalam RGB Image Decomposition diilustrasikan kedalam Gambar 3.3.. 23.
(36) library.uns.ac.id. digilib.uns.ac.id. Gambar 3.3 Proses Dekomposisi Noisy Image RGB. 3.3. Patch Grouping Secara ringkas, tahapan patch grouping dilakukan dengan menggunakan. metode block matching untuk mengidentifikasi patch gambar yang mirip dengan menghitung jarak similaritas matriks menggunakan Euclidean Distance Matrices (EDM). Pada masing-masing patch, similaritas matriks ditentukan dengan membandingkan antara reference patch dengan neighbor-nya (candidate patch). Secara garis besar, tahapan ini dibagi menjadi 3 bagian, yaitu proses inisialisasi parameter yang digunakan dalam penelitian, proses pengubahan array image menjadi patch, dan proses pencarian similaritas patch dalam jendela pencarian pada image patch (Block Matching).. 3.3.1. Proses Inisialisasi Parameter Proses inisialisasi parameter dilakukan dengan mendefinsikan nilai dari parameter-parameter yang digunakan dalam aplikasi percobaan penelitian. Parameterparameter tersebut terdiri dari nilai Sigma, nilai jendela pencarian (Search Windows), nilai Innerloop, nilai ukuran patch (Patch Size), nilai PatchNO, jumlah iterasi looping (Iteration), jumlah langkah yang digunakan (Step), nilai Delta, nilai C, dan nilai. 24.
(37) library.uns.ac.id. digilib.uns.ac.id. Lambda. Nilai parameter-parameter yang digunakan pada penelitian ini mengacu pada penelitian yang telah dilakukan oleh Huang et al. pada tahun 2018. Parameter nilai sigma (𝜎) digunakan untuk menentukan level noise dari Additive White Gaussian Noise (AWGN). Semakin tinggi nilai sigma-nya, maka semakin tinggi level noise-nya. Artinya, gambar original yang disisipi noise akan semakin rusak. Nilai sigma yang digunakan dalam percobaan penelitian bernilai kelipatan 10, yang dimulai dari 𝜎 = 10 hingga 𝜎 = 100. Parameter Search Windows merupakan parameter yang digunakan untuk menentukan nilai jendela pencarian dalam proses patch grouping dengan metode Block Matching. Nilai parameter search windows dalam penelitian ini adalah 30. Parameter Innerloop merupakan parameter yang digunakan untuk menentukan banyaknya looping yang dilakukan pada proses Block Matching dan proses aggregation. Parameter Patch Size merupakan parameter yang berfungsi untuk menentukan ukuran patch yang digunakan dalam program. Ukuran patch yang digunakan bervariasi, tergantung dengan besarnya nilai sigma yang diinputkan. Besarnya variasi nilai ukuran patch, berbanding dengan nilai sigma-nya ditampilkan dalam Tabel 3.1 sebagai berikut Tabel 3.1. Ukuran PatchSize Berdasarkan Nilai Sigma-nya Sigma (𝝈). Patch Size. ≤ 20. 6×6. ≤ 40. 7×7. ≤ 60. 8×8. > 60. 9×9. Parameter PatchNO merupakan parameter yang digunakan untuk menentukan ukuran baris (row) array yang digunakan untuk menyimpan nilai L-most similar patch dalam proses patch grouping dengan metode. Besarnya nilai PatchNO bergantung. 25.
(38) library.uns.ac.id. digilib.uns.ac.id. pada nilai sigma yang digunakan. Besaran tersebut ditampilkan dalam Tabel 3.2 sebagai berikut Tabel 3.2. Ukuran PatchNo Berdasarkan Nilai Sigma-nya Sigma (𝝈). PatchNO. ≤ 20. 60. ≤ 40. 80. ≤ 60. 90. > 60. 120. Parameter Step merupakan parameter yang berfungsi untuk menentukan nilai Grid dalam Search Windows. Grid berfungsi untuk menentukan nilai top, bottom, right, dan left dari Search windows. Jumlah Step dirumuskan jumlah PatchSize dibagi 2 dan dikurangi dengan satu, atau secara matematis diformulasikan 𝑠=. 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 −1 2. (17). Parameter Delta merupakan paramater yang berfungsi sebagai relaxation parameter dan digunakan dalam proses iterative regularization dalam persamaan (16). Nilai dari paramater delta yang digunakan dalam penelitian ini adalah 0.1. Parameter C merupakan parameter yang berfungsi untuk menentukan nilai threshold dalam proses Low Rank Minimization (LRM). Parameter ini digunakan pada persamaan (12). Parameter Lambda (𝜆)merupakan parameter yang digunakan dalam proses iterative regularization pada persamaan (17). Nilai parameter Lambda (𝜆) bergantung pada level noise dari nilai sigma-nya. Besaran nilai dari parameter 𝜆 bergantung dengan besaran nilai sigma yang digunakan. Perbandingan besaran nilai tersebut ditampilkan dalam Tabel 3.3 sebagai berikut :. 26.
(39) library.uns.ac.id. digilib.uns.ac.id. Tabel 3.3. Ukuran Lambda Berdasarkan Nilai Sigma-nya Sigma (𝝈). Lambda (𝝀). ≤ 20. 0.54. ≤ 40. 0.6. ≤ 60. 0.62. > 60. 0.62. 3.3.2. Proses Pengubahan Array Image menjadi Patch Input. :Array 𝑢 (Array redNoisy, greenNoisy atau blueNoisy). Output. : Array Patch Image (Array 𝑋). Deskripsi. :. Proses Image to Patch adalah proses pengubahan array image menjadi patch. Diasmusikan bahwa array input dari proses pengubahan array image menjadi patch ini adalah array redNoisy, maka proses pengubahan array image ke patch dapat diilustrasikan pada Gambar 3.4. 27.
(40) library.uns.ac.id. digilib.uns.ac.id. Mulai. Array redNoisy. Menentukan nilai PatchSize. Menentukan batas awal dan akhir jendela patch. Membuat jendela patch. Menyimpan nilai elemen yang berada dalam jendela patch. Tidak. Jendela patch sudah meng-cover seluruh image. Ya. Array X. Selesai. Gambar 3.4 Flowchart proses pengubahan array image ke patch. Secara lengkap, proses pengubahan array image menjadi patch dituliskan dalam algoritma berikut :. 28.
(41) library.uns.ac.id. digilib.uns.ac.id. a. Inisialisasi Array 𝑋 yang digunakan untuk menyimpan nilai patch hasil pemrosesan image to patch dengan ukuran baris merupakan kuadrat dari nilai PatchSize dan ukuran kolom merupakan perkalian antara tinggi gambar (𝐻) yang dikurangi nilai PatchSize dan ditambah 1 dengan lebar gambar (𝑊) yang dikurangi nilai PatchSize dan ditambah 1, atau diformulasikan sebagai : 𝑟𝑜𝑤 = 𝑝𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 2 𝑐𝑜𝑙 = (𝐻 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1) × (𝑊 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1) Dalam ilustrasi, nilai PatchSize yang digunakan adalah 6, dan ukuran gambar yang digunakan adalah 512 × 512, sehingga diperoleh 𝑟𝑜𝑤 = 62 = 36 dan 𝑐𝑜𝑙 = (512 − 6 = 1) × (512 − 6 + 1) = 507 × 507 = 257.049 b. Menentukan batas awal dan akhir dari jendela patch dengan ukuran 𝑟𝑜𝑤 = 𝑖 ∶ (𝑒𝑛𝑑 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 𝑖 ) 𝑐𝑜𝑙 = 𝑗 ∶ (𝑒𝑛𝑑 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 𝑗) di mana 𝑖 dan 𝑗 merupakan variable looping. Dalam ilustrasi, untuk looping pertama (nilai 𝑖 = 1 dan 𝑗 = 1), nilai dari jendela patch adalah 507 × 507 dengan rincian nilai 𝑟𝑜𝑤 = 1 ∶ (512 − 6 + 1) = 507 dan 𝑐𝑜𝑙 = 1 ∶ (512 − 6 + 1) = 507 c. Menyimpan setiap elemen dalam jendela patch kedalam array temp d. Untuk setiap image patch yang diperoleh (image patch merupakan array temp 2 dimensi), image patch tersebut dijadikan array 1 dimensi dan diinputkan kedalam array 𝑋 pada setiap barisnya. Looping dilakukan hingga seluruh array image dikonversi menjadi patch 3.3.3. Proses Block Matching Input. : Array X (array hasil pengubahan image menjadi patch). Output. : Array 𝐺𝑗 (Array similar patch image). Deskripsi. :. Proses Patch Grouping dengan metode Block Matching bertujuan untuk mendapatkan most-similar patch dengan cara melakukan perbandingan jarak antara reference patch dengan candidate patch (neighbor-nya) dengan menggunakan Euclidean Distance Matrices (EDM). Proses block matching diilustrasikan ke dalam Gambar 3.5. 29.
(42) library.uns.ac.id. digilib.uns.ac.id. Mulai Array X Menentukan nilai Image Clip dan Grid-nya Menentukan Search Windows Melakukan pengindeks-an pada elemen search windows Menentukan macroblock reference patch dan neighbor-nya. Melakukan perbandingan similaritas ref patch dengan neighbor-nya dengan EDM Sorting hasil perbandingan dan simpan ke dalam array Gj. Tidak. Semua array X sudah dilakukan Block Matching?. Ya. Array XNew. Selesai. Gambar 3.5 Flowchart proses Block Matching. 30.
(43) library.uns.ac.id. digilib.uns.ac.id. Secara lengkap, proses block matching dijabarkan ke dalam algoritma sebagai berikut Algoritma. :. a. Inisialisasi tinggi dan lebar Image Clip yang dirumuskan dengan 𝐼𝑚𝐶𝑙𝑖𝑝𝐻 = 𝐻𝑒𝑖𝑔ℎ𝑡 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1 𝐼𝑚𝐶𝑙𝑖𝑝𝑊 = 𝑊𝑖𝑑𝑡ℎ − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1 Dalam ilustrasi, nilai dari 𝐼𝑚𝐶𝑙𝑖𝑝𝐻 = 512 − 6 + 1 = 507 dan nilai dari 𝐼𝑚𝐶𝑙𝑖𝑝𝑊 = 512 − 6 + 1 = 507 b. Inisialisasi GridX dan GridY pada image patch. Grid berfungsi sebagai pengukur besaran image patch. GridX merupakan grid horizontal, sementara GridY merupakan grid vertikal. Satuan grid dihitung menggunakan parameter Step. Dalam ilustrasi, nilai step-nya adalah 2 dan panjang GridX dan GridY-nya adalah 254 (hasil pembulatan keatas dari. 𝐼𝑚𝐶𝑙𝑖𝑝𝐻 𝑠𝑡𝑒𝑝. =. 507 2. ≈ 254. c. Inisialisasi array Index yang digunakan untuk mengindeks image patch dari input (Array 𝑋). Jadi, masing-masing elemen pada array input (Array 𝑋) dilakukan pengindeks-an. Kemudian, Array index ini disimpan untuk digunakan dalam proses selanjutnya. 226 226 𝑋 = 223 223 226. 226 226 223 223 226. 1 6 2 7 𝑖𝑑𝑥 = 3 8 4 9 5 10. 226 226 223 223 226 . 11 12 13 14 15 . d. Looping dengan menggunakan panjang dari GridX dan GridY. Didalam looping, terdapat : i.. Inisialisasi top, bottom, left, dan right ukuran jendela pencarian patch. Dalam ilustrasi, top dan left bernilai 1, sedangka bottom dan right bernilai 31 (karena lebar dari search windows adalah 30). ii.. Lakukan pengindeksan pada masing-masing elemen image patch yang termasuk dalam search windows dan simpan hasilnya kedalam array NL_Idx. 31.
(44) library.uns.ac.id. iii.. digilib.uns.ac.id. Inisialisasi Reference Patch dan Candidate Patch (Neighbor)-nya. Pada dasarnya, tidak ada aturan baku untuk melakukan inisialisasi macroblock reference patch. Macroblock manapun selama berada dalam search windows bisa menjadi macroblock reference patch. Namun, dalam penelitian ini, penentuan macroblock yang menjadi reference patch di rumuskan dengan (𝑦 − 1) × 𝐼𝑚𝐶𝑙𝑖𝑝𝐻 + 𝑥 dengan y dan x merupakan variable looping.. iv.. Bandingkan antara tiap-tiap neighbor yang berada dalam search windows yang sama dengan reference patch menggunakan Euclidean Distance Matrices (EDM). Kemudian simpan nilainya kedalam array Dist. v.. Lakukan sorting terhadap arrray Dist dan simpan hasil sorting yang bernilai image patch kedalam array v.. vi.. Simpan hasil sorting array v dari baris pertama hingga baris ke - PatchNO kedalam array 𝐺𝑗 . Array 𝐺𝑗 inilah merupakan array yang menyimpan indeks dari most-smiliar patch dari proses Block Matching.. 3.4. Low Rank Minimization Input. : Array 𝐺𝑗 dan array noisy image patch (array X). Output. : Array hasil low rank minimization (Array Xnew). Deskripsi. :. Tahap Rank Minimization merupakan tahapan yang digunakan untuk melakukan estimasi nilai image patch hasil proses patch grouping. Similar group patch yang didapatkan dari proses patch grouping kemudian di-denoise dengan lowrank approximation pada SVD domain dengan menggunakan cost function pada persamaan (7). Untuk mendapatkan solusi optimal, penentuan nilai rank pada singular value matriks hasil dekomposisi SVD ditentukan dengan persamaan (9) dan proses hard-thresholding dengan menggunakan persamaan (13). Proses low rank minimization diilustrasikan ke dalam gambar 3.6. 32.
(45) library.uns.ac.id. digilib.uns.ac.id. Mulai. Array Gj. Menentukan nilai kk. Mengambil nilai asli dari array Gj dan simpan ke array temp. Pengindeks-an pada elemen Search Windows. Melakukan proses LRM pada array temp. Menyimpan hasil LRM ke dalam array XNew. Tidak. Semua array Gj sudah dilakukan LRM ?. Ya. Array XNew. Selesai. Gambar 3.6 Flowchart Proses Low Rank Minimization. 33.
(46) library.uns.ac.id. digilib.uns.ac.id. Secara lengkap, proses low rank minimization dijabarkan ke dalam algoritma berikut Algoritma. :. a. Inisialisasi array Xnew dengan membuat array baru yang dinamakan array Xnew dengan ukuran dan nilai elemen yang sama dengan array X (atau dengan kata lain, copy seluruh elemen aray X kedalam array Xnew) b. Inisialisasi panjang GridX dan GridY pada image patch. Proses inisialisasi ini sama dengan proses GridX dan GridY pada Block Matching c. Looping dengan menggunakan panjang GridX dan GridY. Di dalam looping terdapat proses : i.. Melakukan inisialisasi terhadap array 𝐺𝑗 yang hendak dilakukan proses low rank minimization. Inisialisasi ini dilakukan dengan mentukan nilai variabel 𝑘𝑘. Variabel 𝑘𝑘 merupakan variabel yang digunakan untuk mengambil nilai dari array 𝐺𝑗 , karena array 𝐺𝑗 merupakan array indeks yang mengacu pada array 𝑋. Sebagai contoh, apabila nilai 𝑘𝑘 = 1, maka yang diambil adalah kolom ke-1 dari array 𝐺𝑗 . Masing-masing elemen dalam kolom pertama array 𝐺𝑗 tersebut mengindeks pada array 𝑋. Array 𝑋 yang di indeks inilah yang akan diproses low rank minimization. Contoh nilai 𝑘𝑘 = 1 diilustrasikan ke dalam matriks berikut. 1 1 2 𝐺𝑗 = 23 24 19 . 226 226 223 𝑡𝑒𝑚𝑝 = 223 226 226. 2. 23. 24. 19. 226 226 223 223 226 226. 227 227 224 225 223 227. 226 226 226 223 225 227. 226 226 225 226 223 226 . Matriks 𝐺𝑗 pada di atas merupakan elemen array 𝐺𝑗 pada kolom pertama sedangkan matriks 𝑡𝑒𝑚𝑝 merupakan elemen array 𝑋 yang di indeks oleh elemen pada array 𝐺𝑗 ii.. Menyimpan nilai array 𝑋 yang diindeks oleh array 𝐺𝑗 ke dalam array temp (Gambar 3.8 (b)). 34.
(47) library.uns.ac.id. iii.. digilib.uns.ac.id. Melakukan dekomposisi matriks array Temp dengan menggunakan metode Singular Value Decomposition (SVD) sehingga diperoleh matriks 𝑈𝐺 𝑗 , matriks Σ𝐺 𝑗 , dan matriks 𝑉𝐺𝑇𝑗. iv.. Menentukan nilai batas threshold dengan menggunakan persamaan (12) dan (13). v.. Melakukan proses hard-thresholding dengan membandingkan masingmasing elemen singular value pada matriks Σ𝐺 𝑗 dengan nilai batas threshold.. vi.. Menyimpan nilai singular value yang lebih dari nilai threshold ke dalam matriks Σ𝐺 𝑗 dengan meng-override nilai elemen yang lama. vii.. Menyatukan kembali matriks dekomposisi SVD dengan mengalikan matriks 𝑈𝐺 𝑗 , matriks Σ𝐺 𝑗 , dan matriks 𝑉𝐺𝑇𝑗. viii.. Menambahkan hasil proses low rank minimzation via SVD (array ETemp) ke dalam array Xnew. 3.5. Aggregation Tahap Aggregation merupakan tahapan yang dilakukan untuk menormalkan. nilai patch hasil proses denoising. Proses aggregation dilakukan karena suatu single patch dalam proses Block Matching dan Low Rank Minimization kemungkinan merupakan anggota dari beberapa patch group. Penormalan dilakukan dengan menambahkan satu nilai (+1) ke lokasi elemen yang sama dalam array baru (array Weight) pada setiap penginputan hasil proses Block Matching. Array Weight tersebut kemudian menjadi pembagi dengan array hasil Low Rank Minimization (array 𝑋𝑁𝑒𝑤). Secara garis besar, tahapan ini dibagi menjadi 2 bagian, yaitu proses pegubahan patch ke image dan proses penormalan hasil denoising.. 3.5.1.. Proses Pengubahan Patch ke Image. Input. : Array 𝑋𝑁𝑒𝑤. Output. : Array tempU. Proses pengubahan patch ke image diilustrasikan ke dalam flowchart pada Gambar 3.7. 35.
(48) library.uns.ac.id. digilib.uns.ac.id. Mulai. Array XNew. Inisialiasi array tempU. Mengambil semia elemen baris ke-n. Melakukan re-shape menjadi array 2 dimensi. Menyimpan hasil re-shape ke dalam array tempU. Tidak. Jendela image sudah meng-cover seluruh patch?. Ya. Array tempU. Selesai. Gambar 3.7 Flowchart proses pengubahan array patch ke image. Secara lengkap, proses pengubahan array image menjadi patch dijabarkan ke dalam algoritma berikut : a. Inisialisasi array yang digunakan untuk menyimpan nilai hasil proses Patch to Image (array 𝑡𝑒𝑚𝑝𝑈) dengan ukuran seperti ukuran original image (512 × 512). 36.
(49) library.uns.ac.id. digilib.uns.ac.id. b. Membuat jendela patch yang dengan ukuran tinggi dan lebarnya sebesar : 𝐻2 = (𝐻 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1) 𝑊2 = (𝑊 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1) Dalam ilustrasi Gambar 3.9, nilai 𝐻2 = (512 − 6 + 1) = 507 dan 𝑊2 = (512 − 6 + 1) = 507. c. Lakukan looping untuk mengambil baris ke-n image patch dari array Xnew dan reshape baris tersebut menjadi array 2 dimensi dengan ukuran 𝐻2 dan 𝑊2 d. Simpan nilai array reshape ke array 𝑡𝑒𝑚𝑝𝑈 e. Lakukan proses looping berulang ke baris selanjutnya hingga seluruh patch telah terkonversi menjadi image Contoh array 𝑡𝑒𝑚𝑝𝑈 pada looping ke-n ditampilkan ke dalam matriks berikut. 𝑡𝑒𝑚𝑝𝑈𝑛=1. 0 0 0 = 0 0 0. 0 0 0 0 0 0. 𝑡𝑒𝑚𝑝𝑈𝑛=2. 32 12 24 10 9 5 = 10 3 7 0 2 2 . 𝑡𝑒𝑚𝑝𝑈𝑛=3. 3.5.2.. Proses Normalisasi Nilai image Hasil Proses Denoising. Input. : Array 𝑋 dan Array 𝑡𝑒𝑚𝑝𝑈. Output. : Array Weight dan Array 𝑢. 32 24 9 = 10 7 2. 44 34 14 13 7 4 . Deskripsi : Proses normalisasi nilai image hasil proses denoising dilakukan karena suatu single patch dalam proses Block Matching dan Low Rank Minimization kemungkinan merupakan anggota dari beberapa patch group. Penormalan dilakukan dengan menambahkan satu nilai (+1) ke lokasi elemen yang sama dalam array baru (array 𝑊𝑒𝑖𝑔ℎ𝑡) pada setiap penginputan hasil proses Block Matching. Array 𝑊𝑒𝑖𝑔ℎ𝑡 tersebut kemudian menjadi pembagi dengan array hasil Low Rank Minimization (array 𝑡𝑒𝑚𝑝𝑈).. 37.
(50) library.uns.ac.id. digilib.uns.ac.id. Algoritma : a. Inisialisasi tinggi dan lebar Image Clip dengan formula : 𝐼𝑚𝐶𝑙𝑖𝑝𝐻 = 𝐻𝑒𝑖𝑔ℎ𝑡 − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1 𝐼𝑚𝐶𝑙𝑖𝑝𝑊 = 𝑊𝑖𝑑𝑡ℎ − 𝑃𝑎𝑡𝑐ℎ𝑆𝑖𝑧𝑒 + 1 b. Inisialisasi GridX dan GridY pada image patch. Grid berfungsi sebagai pengukur besaran image patch. GridX merupakan grid horizontal, sementara GridY merupakan grid vertikal. Satuan grid dihitung menggunakan parameter Step. c. Inisialisasi array Index yang digunakan untuk mengindeks image patch dari input. d. Inisialisasi Array WNL dengan ukuran yang sama dengan array X e. Looping dengan menggunakan panjang dari GridX dan GridY. Didalam looping, terdapat : i.. Inisialisasi top, bottom, left, dan right ukuran jendela pencarian patch. ii. Lakukan proses Block Matching iii. Setiap proses penginputan elemen pada array NLBLK dalam proses Block Matching, elemen pada array WNL nilainya ditambah 1 (+1) f. Lakukan konversi array WNL (array WNL merupakan patch) ke image dengan prosedur yang sama dengan proses pengubahn patch ke image dan simpan hasilnya ke dalam array Weight g. Lakukan pembagian antara array 𝑡𝑒𝑚𝑝𝑈 dengan array Weight dan simpan hasilnya ke dalam array 𝑢. 3.6. Iterative Regularization Input. : Array redNoisy, blueNoisy, atau green Noisy dan array 𝑢. Output. : Array u. Deskripsi. :. Iterative regularization merupakan tahapan dalam proses image denoising yang bertujuan untuk meminimalisir residu noise yang tersisa pada recovered image 𝑓̂. Tahapan ini dilakukan dengan melakukan persamaan (15) pada array 𝑢 dengan array redNoisy, blueNoisy, atau greenNoisy (bergantung terhadap warna RGB mana yang. 38.
(51) library.uns.ac.id. digilib.uns.ac.id. sedang diproses). Proses update nilai elemen array 𝑢 sebelum dan sesudah dilakukan proses iterative regularization dicontohkan ke dalam matriks sebagai berikut. 226.3725 224.781 𝑢𝑎 = 225.1178 225.6064. 223.4834 222.8966 226.7266 223.9286 225.5167 223.9868 221.8079 224.0668 . 227.5002 225.5298 𝑢𝑏 = 225.2811 225.9974. 223.2978 222.2411 228.2946 223.7471 226.0954 223.4282 220.1048 223.6992 . dengan matriks 𝑢𝑎 merupakan matriks array 𝑢 sebelum dilakukan proses iterative regularization dan matriks 𝑢𝑏 merupakan matriks array 𝑢 setelah dilakukan proses iterative regularization. Selain dilakukanya update nilai array 𝑢 dengan menggunakan persamaan (15), tahap iterative regularization juga melakukan upate nilai sigma dengan menggunakan persamaan (16). Upadate nilai sigma ini digunakan untuk menentukan nilai threshold dalam proses low rank minimization pada looping selanjutnya.. 3.7. RGB Image Recombination Tahapan RGB Image Recombination dilakukan setelah proses denoising ketiga channel warna selesai dilakukan. Masing-masing dari channel warna (merah, hijau, dan biru) kemudian disatukan lagi sehingga menjadi satu gambar RGB yang utuh. Proses penyatuan dilakukan dengan menggabungkan array 2 dimensi dari masing-masing channel warna menjadi satu array 3 dimensi. Proses rekombinasi ini diilustrasikan ke dalam Gambar 3.8. 39.
(52) library.uns.ac.id. digilib.uns.ac.id. Gambar 3.8 Proses RGB Image Recombination. 3.8. Analisis Hasil Tahap analisis hasil dilakukan dengan membandingkan kualitas gambar hasil denoising dengan gambar aslinya (original image). Proses perbandingan dan perhitungan nilai dari kedua gambar tersebut dilakukan dengan menggunakan Peak Signal Noise Ratio (PSNR) yang dilakukan menggunakan persamaan (14) dan persamaan (15). Nilai 𝑀𝑎𝑥𝑓2 pada persamaan (14) bernilai 255, karena nilai piksel maxsimal untuk gambar RGB 8-bit (pada masing-masing channel warna) adalah 28 − 1 = 255. Nilai MSE pada persamaan (15) ditentukan dengan melakukan perhitungan kuadat rata-rata (mean square) antara array yang menyimpan nilai piksel hasil denoising dengan array yang menyimpan piksel nilai asli original image. Nilai PSNR yang didapatkan dari hasil pebandingan antara denoised image dengan original image dapat menjadi acuan untuk mengetahui kualitas gambar hasil denoising. Hasil denoised gambar dikategorikan berkualitas rendah apabila nilai PSNR-nya berada dibawah 30dB (Cheddad et al., 2010).. 40.
(53) library.uns.ac.id. digilib.uns.ac.id. BAB IV HASIL DAN PEMBAHASAN. Hasil dan Pembahasan dalam percobaan yang telah dilakukan dijelaskan dalam tahapan sebagai berikut 4.1.. Pengumpulan Data Proses pengumpulan data dilakukan dengan bagaimana memperoleh dan. memproses data image.. Gambar 4.1 Original Image “lena.png” Original image ‘lena.png’ dibaca oleh program dalam bentuk array 3 dimensi yang masing-masing dimensinya ditampilkan dalam bentuk matriks 4 × 4 sebagai berikut. 226 226 𝑟𝑒𝑑𝑂𝑟𝑖 = 226 226. 226 226 226 226. 137 137 𝑔𝑟𝑒𝑒𝑛𝑂𝑟𝑖 = 137 137. 137 137 137 137. 137 137 137 137. 136 136 136 136 . 125 125 𝑏𝑙𝑢𝑒𝑂𝑟𝑖 = 125 125. 125 125 125 125. 133 133 133 133. 128 128 128 128 . 41. 223 223 223 223. 223 223 223 223 .
(54) library.uns.ac.id. digilib.uns.ac.id. Setelah dilakukan pembacaan pixel dari original image “lena.png” seperti pada Gambar 4.2, masing-masing channel kemudian disimpan ke dalam array tersendiri, seperti Gambar 4.2 (a) disimpan dalam array redOriginal, (b) disimpan dalam array greenOriginal, dan (c) disimpan dalam array blueOriginal. Untuk menyederhanakan pembahasan dalam Bab IV ini, maka penjelasan untuk seluruh tahapan denoising image dilakukan dengan menggunakan array redOriginal dengan ukuran 4 × 4 seperti pada Gambar 4.2 (a) sebagai array input. Proses selanjutnya adalah men-generate noise menggunakan AWGN. Sesuai namanya, Additive White Gaussian Noise, noise-noise di-generate menggunakan distribusi gaussian dengan 𝑚𝑒𝑎𝑛 = 0 dan standar deviasi (𝜎) = 1 sehingga didapatkan random number seperti pada matriks 𝑟𝑛𝑔 di bawah ini. 0.7981 0.626839 𝑟𝑛𝑔 = 0.07508 0.351607. 0.69651 0.264069 0.6981 0.871673 0.05906 0.4898 0.4568 0.70117. 0.7764 0.63898 0.57735 0.36003 . Setelah random number berhasil di-generate seperti pada Gambar 4.3, selanjutnya adalah melakukan perkalian dengan nilai sigma yang diinputkan. Nilai sigma yang diinputkan dalam pembahasan pada Bab IV ini adalah 10, sehingga dengan melakukan perkalian antara matriks random number pada Gambar 4.3 dengan nilai sigma yang diinputkan (𝜎 = 10) maka dihasilkan array noise yang ditampilkan dalam matriks 𝑛𝑜𝑖𝑠𝑒 berikut. 7.981 6.26839 𝑛𝑜𝑖𝑠𝑒 = 0.7508 3.51607. 6.9651 6.981 0.5906 4.568. 2.64069 8.71673 4.898 70117. 7.764 6.3898 5.7735 3.6003 . Menggunakan persamaan (2), array ber-noise pun dihasilkan dengan menjumlahkan array redOriginal pada Gambar 4.3 (a) dengan array noise pada Gambar 4.4, sehingga dihasilkan array redNoisy. Array redNoisy ditampilkan dalam matriks 𝑟𝑒𝑑𝑁𝑜𝑖𝑠𝑦 berikut. 42.
Garis besar
Dokumen terkait
Desain pembelajaran dengan konteks permainan Siki Doka untuk siswa kelas III SD menitikberatkan pada konsep bilangan pecahan sebagai berikut: (1) Bilangan Pecahan
Terjadi konflik di dalam diri saya, sehingga saya merasa kelelahan secara mental akibat dari perubahan yang tidak terduga selama masa penurunan
Uji path analisis menunjukkan variabel kualitas produk yang dipengaruhi kepercayaan ada pengaruh mediasi terhadap keputusan nasabah menabung di Bank BRI Syariah
Penelitian ini dilakukan dengan tujuan untuk mengetahui pengaruh variasi pencampuran abu tulang sapi pada lempung terhadap sifat-sifat fisik keramik..
IMPLEMENTASI METODE SKRIP KOOPERATIF DENGAN PEMANFAATAN MEDIA “BEBIBULAN” DALAM MENINGKATKAN PRESTASI BELAJAR.. MATEMATIKA SISWA SMP WAHID HASYIM
Siswa merasa ada sesuatu yang harus mereka ketahui dan dalami, sehingga materi yang mereka pelajari akan lebih bermakna dan tertanam dalam diri siswa secara baik dan pada
Dalam proses pelaksanaan pembelajaran Ilmu Pengetahuan Sosial dengan menggunakan media gambar siklus I sudah ada peningkatan dari sebelum melakukan
incorrect words and unfinished sentences. On the other hand, male could organize.. their sentences, delivered the main argument or spoke to the point, used incorrect words and