RESTORASI CITRA KABUR (BLUR) MENGGUNAKAN ALGORITMA LUCY-RICHARDSON
Yeka Hendriyani1
ABSTRACT
Image restoration is the image processing technique by finding the cause that damage the image, then applying the available techniques to fix it. The restoration technique is oriented at modeling of degradation and makes the reverse process of the degradation in order to recover the original image. Some examples of damage that could be fixed in the restoration technique, such as: blur / blur freckles, dual image, over-saturated color, and pixel error. Degradation that is discussed in this paper is blurring (deploring), the motion blurs and Gaussian blur. Lucy-Richardson algorithm is used to fix/restore images that have been given the blurring effect. Lucy-Richardson algorithm is an iterative algorithm. Iteration is stopped when the best compromise between image qualities with noise has been achieved. The purpose of this paper is to investigate the ability of these algorithms to improve the degradation in blurred image. Of the experiment is concluded that the Lucy-Richardson algorithm can fix blurry images with varying degrees of obscurity. The percentage of improvement that occurred after the application of this algorithm to the blurred image is ranged between 3.19% until 6.75%.
Keyword: Image Restoration, Blur, Motion Blur, Gaussian Blur, Degradation
INTISARI
Image restoration yaitu teknik pemrosesan citra dengan cara mencari terlebih dahulu penyebab kerusakan citra tersebut, setelah itu mengaplikasikan teknik– teknik yang ada untuk memperbaikinya. Teknik restorasi berorientasi pada pemodelan degradasi dan melakukan proses kebalikan dari degradasi dalam me-recover citra aslinya. Beberapa contoh kerusakan yang bisa di restorasi yaitu seperti: blur/ kabur ,bintik-bintik, dual image, over saturated color, dan pixel error. Degradasi yang dibahas pada tulisan ini adalah pengaburan (deblurring), yaitu motion blur dan Gaussian blur. Algoritma Lucy-Richardson digunakan untuk memperbaiki/ merestorasi citra yang telah diberi efek kabur tersebut. Algoritma Lucy-Richardson merupakan algoritma iteratif. Iterasi dihentikan jika kompromi terbaik antara kualitas citra dengan derau telah dicapai. Tujuan tulisan ini yaitu menyelidiki kemampuan algoritma ini dalam memperbaiki degradasi kabur pada citra. Dari eksperimen disimpulkan bahwa Algoritma Lucy-Richardson dapat memperbaiki citra kabur dengan berbagai tingkat kekaburan. persentase perbaikan yang terjadi setelah pengaplikasian algoritma ini pada citra kabur yaitu
PENDAHULUAN
Image processing adalah suatu
teknologi yang berfungsi untuk menyelesaikan masalah mengenai pengolahan citra. Tujuannya yaitu untuk mengolah citra sedemikian rupa, sehingga citra tersebut lebih mudah untuk diproses lebih lanjut atau diedit. Dua jenis Image processing yaitu image enhancement dan image restoration. Image enhancement dapat kita temui dalam
dunia fotografi atau editing. Sudah merupakan hal yang biasa bagi editor untuk mengedit foto sedemikian rupa, sehingga dihasilkan citra/ foto yang maksimal. Contohnya yaitu seperti menambahkan brightness, gamma,
auto level atau teknik lainnya.
Biasanya teknik-teknik tersebut telah tersedia dalam software photoshop, photoline dan lain-lain. Proses yang terjadi pada teknik ini cenderung bersifat subjektif. Pada image restoration, penyebab kerusakan citra
dicari terlebih dahulu setelah itu baru mengaplikasikan teknik – teknik yang ada untuk memperbaikinya. Jadi, teknik restorasi berorientasi pada pemodelan degradasi dan melakukan proses kebalikan dari degradasi dalam me-recover citra aslinya.
Beberapa contoh kerusakan yang bisa direstorasi diantaranya yaitu seperti: blur/ kabur ,bintik-bintik,
dual image, over saturated color, pixel error, dan bahkan image yang
sudah usang atau sudah tidak utuh lagi. Degradasi yang banyak dibahas adalah pengaburan (blurring). Citra yang blur dapat diakibatkan oleh berbagai hal, misalnya pergerakan selama pengambilan gambar oleh alat optik seperti kamera, penggunaan alat optik yang tidak fokus, penggunaan lensa dengan sudut yang lebar, gangguan atmosfir, pencahayaan yang singkat sehingga
mengurangi jumlah foton yang ditangkap oleh alat optik, dan sebagainya.
Ada beberapa teknik yang digunakan untuk menghilangkan kekaburan image (deblurring) tersebut, misalnya penapisan dengan beberapa penapis konvensional seperti penapis Wiener dan penapis
Butterwooth. Ada pula penapis lain
merestorasi citra dengan menggunakan metode iteratif, yaitu algoritma Lucy-Richardson. Esensi dari iterasi adalah sebagai berikut: estimasi ke-(n+1) dari citra restorasi adalah estimasi dari hasil iterasi ke-n dikali dengan sebuah citra koreksi. Algoritma Lucy-Richardson pada awalnya digunakan dibidang astronomi untuk memperbaiki citra benda langit. Sekarang algoritma ini banyak digunakan untuk deblurring pada sembarang citra yang mengalami degradasi.
Sanberg menyatakan bahwa citra digital bisa direpresentasikan dalam bentuk matriks. Matlab (matrix
laboratory) merupakan software
simulasi yang powerful dalam memecahkan masalah yang berhubungan dengan matriks, sehingga penggunaan Matlab untuk memodelkan citra terdegradasi dan menggunakan teknik restorasi yang terdapat di dalamnya di rasa cukup tepat sebagai alat bantu dalam memodelkan teknik restorasi citra ini. Fokus penelitian ini yaitu memperbaiki citra dengan tingkat pengaburan yang berbeda-beda dengan menggunakan algoritma
Lucy-Richardson. Tujuan penelitian
ini yaitu untuk menyelidiki kemampuan algoritma ini dalam memperbaiki degradasi kabur pada citra.
Contoh dari image uji dapat dilihat pada Gambar 1.
(a) (b) (c) (d)
Gambar 1. Contoh image uji: (a) lena, (b) airplane (c) dollar dan (d) yatch (sumber: http://www.thecryptmag.com/Online/52/Images/)
PENDEKATAN PEMECAHAN
MASALAH
Data hasil uji yaitu data yang telah diberi efek blur, dan telah diberi efek deblurring dengan menggunakan algoritma Lucy-Richardson.
a. Analisa Data
Analisa data juga terdiri atas dua bagian yaitu analisa data uji dan analsisa data hasil uji. Analisa data uji dimaksudkan untuk memilih citra yang akan dijadikan data uji. Dari sekian citra yang tersedia di internet nantinya akan dipilih satu citra yang akan dijadikan citra asli untuk diujikan dalam sistem. Citra uji tersebut nantinya akan diberikan efek blur, yaitu motion blur dan gaussian blur. Setelah itu proses deblurring akan dilakukan dengan menggunakan algoritma Lucy-Richardson.
Algoritma Lucy-Richardson
merupakan algoritma iteratif. Iterasi dihentikan jika kompromi terbaik
antara kualitas citra dengan derau telah dicapai. Algoritma Lucy-Richardson (L-R), yang dikenal juga
dengan dekonvolusi Lucy-Richardson, dikembangkan secara
independen oleh Richardson [1] dan Lucy [2].
b. Perancangan Sistem
Sistem yang akan dirancang yaitu terdiri atas dua tahap yaitu pemberian citra uji dengan efek blur (Gambar 2) dan pengaplikasian algoritma Lucy-Richardson kepada citra blur untuk menghilangkan efek
blur kepada citra uji (Gambar 3). Output dari Gambar 2 merupakan
masukan bagi Gambar 3. Setelah didapatkan hasil restorasi maka nantinya citra hasil restorasi tersebut akan diolah dengan cara membandingkannya dengan citra aslinya dan menghitung pixel errornya. Pixel error tersebut nantinya akan dibandingkan dan diolah secara statistik.
Image Uji
+
Efek Blur
Image dengan Efek Blur
c. Implementasi
Dalam penelitian ini pengujian dilakukan terhadap satu citra dengan jenis blur yang berbeda. Dalam perancangan sistem ini akan diketahui kemampuan algoritma
Lucy-Richardson untuk mengatasi
degradasi citra, khususnya pada citra
blur. Setiap citra hasil restorasi
disimpan untuk dibandingkan.
Dari perbandingan yang dilakukan maka dihasilkan beberapa data (citra) yang nantinya akan dimanfaatkan untuk mengambil kesimpulan kemampuan algoritma tersebut dalam merestorasi citra blur tersebut.
d. Penarikan Kesimpulan
Setelah membandingkan semua citra restorasi yang dimiliki
maka langkah selanjutnya adalah menarik kesimpulan dari setiap hasil proses dan perbandingannya.
HASIL DAN PEMBAHASAN
Langkah awal yang dilakukan dalam mencapai tujuan yaitu memilih citra uji. citra uji yang dipilih yaitu citra “airplane” seperti terlihat pada Gambar 1b. Setelah itu citra uji tersebut diberi efek kabur yaitu
motion blur dan Gaussian blur,
masing-masing dengan tingkat kekaburan yang berbeda. Selanjutnya masing-masing citra dengan efek kekaburan yang berbeda tersebut diperbaiki dengan algoritma Lucy Richardson.
Skenario untuk efek blur dapat dilihat seperti pada Tabel 1.
Tabel 1. Skenario pengujian
Gambar
Efek Blur
Jenis Blur Parameter Blur
Motion Blur Len=20, Tetha=10 Len=30, Tetha=20 Len=40, Tetha=30 Gaussian Blur Mask 11x11 Mask 13x13 Mask 15x15
Kode untuk membangkitkan efek kabur diperlihatkan di bawah ini: % Membaca citra dari folder "D:\data uji" I1 = imread('D:\data uji\airplane.bmp'); figure; imshow(I1); title('Image asli "airplane"');
% Kaburkan citra dengan motion blur dan gaussian blur
% 1. Memberi efek motion blur % a) len = 20, theta = 10 LEN1 = 20; % Panjang blur (satuan: pixel)
THETA1 = 10; % sudut blur (satuan: derajat)
PSF1 = fspecial('motion', LEN1, THETA1);
% b) len = 30, theta = 20 LEN2 = 30; % Panjang blur (satuan: pixel)
THETA2 = 20; % sudut blur (satuan: derajat)
PSF2 = fspecial('motion', LEN2, THETA2);
% b) len = 40, theta = 30 LEN3 = 40; % Panjang blur (satuan: pixel)
THETA3 = 30; % sudut blur (satuan: derajat)
PSF3 = fspecial('motion', LEN3, THETA3);
% 2. Memberi efek gaussian blur % a) mask 11 x 11 PSF4 = fspecial('gaussian', 11, 11); % b) mask 13 x 13 PSF5 = fspecial('gaussian', 13, 13); % c) mask 15 x 15 PSF6 = fspecial('gaussian', 15, 15);
Hasil eksekusinya yaitu image dengan dua jenis efek blur yaitu motion blur dan Gaussian blur seperti diperlihatkan pada Gambar 4.
Motion Blur Gaussian Blur
( a ) Len=20,Tetha=10 (b)Mask 11x11
(c) Len=30,Tetha=20 (d) Mask 13x13
2 variabel yang perlu diberi nilai yaitu len yang merupakan panjang blur dan tetha yang merupakan sudut blur. Gambar 4 (a) merupakan hasil efek blur dengan len = 10 dan tetha = 20, gambar 4 (b) merupakan hasil efek blur dengan len = 20 dan tetha = 30, gambar 4 (c) merupakan hasil efek blur dengan len = 30 dan tetha = 40 (semakin besar nilai len dan tetha maka image yang dihasikan juga akan semakin blur) . Sedangkan gambar 4 (b), (d), dan (f) merupakan hasil image yang telah diberi efek gaussian blur. Dalam memberikan efek gaussian blur pada matlab ada satu variabel yang digunakan yaitu mask. Mask yang digunakan pada program ini yaitu 11 x 11, 13 x 13 dan 15 x 15 yang mana hasilnya terlihat pada gambar 4 (b), (d) dan (f). (semakin besar mask yang diberikan maka image yang dihasilkan semakin blur) .
Perintah dalam Matlab untuk menghilangkan efek blur
menggunakan algoritma Lucy-Richardson yaitu sebagai berikut: luc1 = deconvlucy(Blurred, PSF, 5);
Penggunaannya secara lengkap yaitu seperti tertera di bawah ini: % baca citra I = imread('D:\images\airplane.bmp '); figure; imshow(I); title('Citra asli'); % Kaburkan citra
LEN = 20; % Panjang blur (satuan: pixel)
TETHA = 10; % sudut blur (satuan: derajat) PSF = fspecial('motion', LEN, TETHA); Blurred = imfilter(I, PSF, 'circular','conv'); figure; imshow(Blurred); title('Citra terdegradasi (motion blur)')
% Restorasi dengan L-R, jumlah iterasi = 5 luc1 = deconvlucy(Blurred, PSF, 5); figure; imshow(luc1); title('Citra terestorasi, jumlah iterasi = 5');
% Restorasi dengan L-R, jumlah iterasi = 10 luc1 = deconvlucy(Blurred, PSF, 10); figure; imshow(luc1); title('Citra terestorasi, jumlah iterasi = 10');
% Restorasi dengan L-R, jumlah iterasi = 15 luc1 = deconvlucy(Blurred, PSF, 15); figure; imshow(luc1); title('Citra terestorasi, jumlah iterasi = 15');
% Restorasi dengan L-R, jumlah iterasi = 20 luc1 = deconvlucy(Blurred, PSF, 20); figure; imshow(luc1); title('Citra terestorasi, jumlah iterasi = 20');
Setelah dua buah program seperti tertera di atas dibuat, yaitu program penghasil efek blur dan program penghilang efek blur selesai, maka pengujian bisa dilakukan. Pengujian dilakukan dengan dua cara, yaitu secara visual dan secara statistik. Secara statistik yairu dengan membandingkan selisih pixel antara citra hasil restorasi dengan citra asli dan dengan menghitung persentase kesalahan hasil restorasinya. Dari perbandingan yang dilakukan maka dihasilkan beberapa data (citra dan angka-angka) yang nantinya akan dimanfaatkan untuk mengambil kesimpulan kemampuan algoritma ini dalam memperbaiki citra untuk tiap tingkat blur tertentu.
Sebagai sampel, Gambar 5 menunjukkan hasil restorasi citra dengan efek motion blur dengan parameter blur Len= 20, theta= 10 dengan menggunakan algoritma Lucy-Richardson, dengan jumlah iterasi 5, 10, 15, dan 20.
Image asli
Image Hasil Restorasi L-R Berdasarkan Urutan Iterasi
Ke-5 Ke-10
Ke-15 Ke-20
Gambar 5. Hasil restorasi image dengan algoritma lucy richardson iterasi 5, 10 , 15, dan 20
Secara visual terlihat bahwa algoritma Lucy-Richardson dapat memperbaiki efek kabur yang dibangkitkan. Hasil restorasi citra masing-masing iterasi menunjukkan bahwa setelah dilakukan restorasi, citra terlihat lebih jelas dan lebih tajam. Jika diperhatikan dan dibandingkan dengan citra asli maka terlihat adanya timbul garis-garis baru pada citra. Perbandingannya dapat dilihat dengan mengunakan kode di bawah ini:
% Selisih antara image asli dengan image hasil restorasi % 1. image "airplane"
airplane1 =
imabsdiff(I1,wnr1);
figure, imshow(airplane1); title('Perbedaan image airplane asli dengan restorasi
motion blur len=20,
tetha=10'); airplane2 = imabsdiff(I1,wnr2); figure, imshow(airplane2); figure, imshow(airplane3); title('Perbedaan image airplane asli dengan restorasi
motion blur len=40,
tetha=30');
airplane4 =
imabsdiff(I1,wnr4);
figure, imshow(airplane4); title('Perbedaan image airplane asli dengan restorasi gaussian blur 11 x 11');
airplane5 =
imabsdiff(I1,wnr5);
figure, imshow(airplane5); title('Perbedaan image airplane asli dengan restorasi gaussian blur 13 x 13');
airplane6 =
imabsdiff(I1,wnr6);
figure, imshow(airplane6); title('Perbedaan image airplane asli dengan restorasi gaussian blur 15 x 15');
Hasilnya diperlihatkan pada gambar 6. Gambar 6 menunjukkan hasil visual perbedaan antara citra asli dengan citra hasil restorasi citra
penghitungan jumlah pixel citra uji, jumlah pixel citra dengan efek kabur, dan citra uji jumlah pixel hasil restorasi dan menggunakan hasilnya untuk mengetahui tingkat kekaburan dan tingkat perbaikan hasil efek kabur dengan algoritma lucy-richardson tersebut. Hasil secara statistik ditunjukkan oleh tabel 2.
Gambar 6. Perbedan citra asli dengan citra hasil restorasi
Tabel 2. Selisih pixel dan persentase pixel error algoritma lucy -richardson
Efek Blur Parame ter Blur Jumlah Iterasi
Iterasi ke-5 Iterasi ke-10 Iterasi ke-15 Iterasi ke-20 Jumlah Selisih Pixel Pixel Error % Jumlah Selisih Pixel Pixel Error % Jumlah Selisih Pixel Pixel Error % Jumlah Selisih Pixel Pixel Error % Motio n Blur Len =10 Theta =20 6316407 4.42 5359294 3.75 4834324 3.38 4556428 3.19 Len =20 Theta =30 8152471 5.70 7092402 4.96 6519589 4.56 6175797 4.32 Len =30 Theta =40 9647994 6.75 8498039 5.94 7903546 5.53 7513790 5.25 Gauss ian Blur Mask 11x11 6355006 4.44 5750406 4.02 5355855 3.74 5130220 3.59 Mask 13x13 7025333 4.91 6391899 4.47 5963279 4.17 5705218 3.99 Mask 15x15 7628527 5.33 6948582 4.86 6532881 4.57 6285192 4.39 Min 6316407 4.42 5359294 3.75 4834324 3.38 4556428 3.19 Max 9647994 6.75 8498039 5.94 7903546 5.53 7513790 5.25 Rata2 7520956. 333 5.26 6673437 4.67 6184912. 333 4.32 5894440. 833 4.12
Efek Blur Parame ter Blur Jumlah Iterasi
Iterasi ke-5 Iterasi ke-10 Iterasi ke-15 Iterasi ke-20 Jumlah Selisih Pixel Pixel Error % Jumlah Selisih Pixel Pixel Error % Jumlah Selisih Pixel Pixel Error % Jumlah Selisih Pixel Pixel Error %
Tabel 2 menunjukkan selisih pixel dan pixel error untuk algoritma Lucy-Richardson. Dari Tabel 3 terlihat bahwa algoritma Lucy-Richardson dapat mengatasi degradasi blur dengan tingkat kesalahan minimum 3.19 % pada efek motion blur dengan paremeter len = 10 dan theta = 20 yang diaplikasikan pada image “Airplane”. Kesalahan maksimum terjadi pada saat melakukan restorasi image kapal pada efek motion blur dengan parameter len = 20, dan tetha = 30. Dari Tabel juga terlihat bahwa pada iterasi 5 sampai dengan 20, semakin banyak iterasi yang dilakukan dengan menggunakan algoritma Lucy-Richardson maka semakin kecil selisih dibandingkan dengan image aslinya.
KESIMPULAN
a. Algoritma lucy-richardson mampu memperbaiki kualitas citra yang terdegradasi motion blur dan
gaussian blur.
b. Berdasarkan eksperimen, dengan memberikan efek blur dengan enam jenis efek yang berbeda pada citra ”airplane”, maka algoritma Lucy-Richardson dapat
memperbaiki citra tersebut dengan persentase pixel error berkisar antara 3.19% s/d 6.75%. a. Matlab mampu mensimulasikan
efek blur pada citra, memperbaiki atau merestorasi citra tersebut dengan algoritma Lucy-Richardson secara sederhana,
dengan mempergunakan image
processing toolbox yang dimilikinya.
b. Jumlah iterasi yang digunakan pada algoritma Lucy Richardson hanya 20 iterasi. Untuk perbaikan kualitas citra yang optimum dibutuhkan penelitian lebih lanjut mengenai hubungan antara jumlah iterasi dengan perbaikan kualitas image tersebut.
DAFTAR PUSTAKA
[1] Gonzalez, R., C., & Richard E., W. 2001. Digital Image Processing. Prentice Hall, Upper
Saddle River, New Jersey
[2] GrabskiV. 2005. Digital Image
Restoration Based On Pixel Simultaneos Detection Probabilities.