Bagi yang berminat pengolahan citra
Salah satu topik awal di pengolahan citra digital adalah tentang perbaikan citra (image enhancement)
ada beberapa metode yang dilakukan pada perbaikan citra ini.Umumnya dibagi 2 yakni :
1. Spatial Domain
2. Frequency Domain
Salah satu teknik dalam spatial domain adalah dengan point processing. Anda pasti mengenal titik-titik dalam suatu sistem koordinat. Nah setiap image akan dipetakan dalam titik-titik matriks yang dikenal dengan pixel.Teknik Point Processing adalah salah satu teknik untuk melakukan perbaikan citra dengan fokus pada titik per titik.
Teknik paling sederhana adalah operasi image negatives.
Kita tahu di fotografi ada yang namanya film negatif pada kamera-kamera analog, sekalipun sekarang sudah hampir tergantikan kamera digital.
Prinsipnya sama, bagaimana sebuah citra asli dibuat menjadi citra yang negatif.
Teknik yang digunakan adalah mengurangi nilai intensitas pixel dari nilai keabuan maksimum. Teknik ini cocok memperbaiki detail putih atau keabuan pada latar belakang yang gelap. Proses ini banyak digunakan pada citra medis seperti USG dan foto sinar X.
Misalkan : pada citra gray 8 bit (256 derajad keabuan), citra negatif yang diperoleh adalah (256-1) – f(x,y)
Secara umum didefinisikan sebagai berikut :
S = T(r)=L-1-r
dimana :
r = intensitas asli
S = intensitas baru
L = nilai intensitas maksimum
untuk memperjelas, dapat dicoba fungsi berikut ini dibuat dengan matlab,
anda kudu sedikit mengerti matlab, perlu tambahan untuk membuat file untuk membaca sebuah citra (imread)
dan memanggil fungsi dan mengeluarkan hasil (imshow). Fungsi ini dapat degeneralisasi untuk compiler yang lain seperti delphi, vb.
____________________________________________________________________________________
function pic_negative = image_negatives(pic)
% membaca ukuran dari citra
[x,y,z] = size(pic);
% mencek kondisi citra, jika citra RGB akan dikonversi ke Grayscale
if(z==1)
;
else
pic = rgb2gray(pic);
end
% menghitung maksimum intensitas dan konversi ke tipe double
max_gray = max(max(pic));
max_gray = im2double(max_gray)
pic = im2double(pic);
%iterasi sampai nilai x dan y untuk menentukan intesitas baru
% nilai intensitas baru dikembalikan ke fungsi,dan dibaca di program utama
for i = 1:x
for j = 1:y
pic_negative(i,j)= max_gray – pic(i,j);
end
end
end
_________________________________________________________________________________
Pustaka : dari berbagai sumber

Tidak ada komentar:
Posting Komentar