Dasar Pengolahan Citra Gray
Level
I. Image histogram
II. Operasi linear histogram
i. Offset
ii. Skala
iii. Image negative
iv. Stretch histogram skala penuh
III. Operasi non-linear histogram
i. Operasi titik logaritmik
ii. Histogram equalization
iii. Histogram shaping
IV. Operasi arimatik antar image
I.
Image Histogram
Histogram merupakan sebuah cara untuk menampilkan distribusi data. Teknik Histogram pertama kali diperkenalkan oleh Karl Pearson.
Figure 1. Contoh sebuah image histogram pada sebuah graylevel image
Figure 2. Contoh citra gray level
II.
Operasi Linier Histogram
Pengertian dari Operasi Linier secera sederhana seperti berikut. Jika kita mempunyai sebuah citra yang diberi nama “G” kemudian dilakukan sebuah proses opersi dengan fungsi yang kita sebut “F”, fungsi “F” ini melakukan operasi pada setiap individual pixel dari sebuah citra yang kemudian menghasilkan sebuah citra baru bernama “H”.
Figure 3. Flow chart proses operasi linier Dalam operasi linier sederhana kita mengenal sebuah rumusan sederhana dalam matematika yaitu,
Y=P . X+B
Note :
Fungsi ‘y=ax+b’ dalam operasi image histogram ditentukan oleh kita sendiri. Kita menentukan nilai A dan B sesuai dengan kebutuhan dari citra yang akan kita
Sebagai pengandaian “Y” adalah H (i,j) hasil meningkatkan atau mengurangi tingkat kecerahan Gray Scale dan sama sekali tidak mempengaruhi posisi objek pada citra ataupun ukurannya. Tujuan utama dari operasi ini adalah merekonstruksi ulang distribusi image histogram dengan men-strech atau men-compress distribusi histogram.
i. Offset
Offset merupakan sebuah pertambahan nilai konstanta “B” dengan tujuan untuk merubah posisi distrbusi image histogram.
Figure 4. contoh offset untuk B>0
Jika B bernilai positif (B>0) maka pergeseran kearah kanan dan citra akan bertambah terang. Jika B bernilai negatif (B<0) pergeseran kearah kiri dan citra akan meredup. Keduanya hanya berefek pada brighteness atau tingkat keterangan, tetapi tidak memberikan efek pada perbedaan (kontras) warna pada citra.
Y=X+B
ii.
Skala (Multiplier)
Skala merupakan suatu multiplikatif (faktor pengkali) dalam operasi histogram. Terdapat 2 macam faktor yaitu Nilai faktor (P) > 1, yang artinya perbesaran atau stretching (perenggangan), dan nilai faktor (P) < 1, yang artinya mengecil/mengerut atau terkompres.
Y=P∗X
Note :
Operasi linier mempunyai keterbatasan range,
contohnya adalah nilai dari tingkat kecerahan paling kecil adalah 0 dan paling terang adalah 255, sehingga tidak bisa kurang dari 0 atau lebih dari 255. Kondisi ini disebut sebagai
Saturation.
Figure 5. Hasil implementasi dari multiplikatif skala histogram dengan nilai
P > 0 (stretching)
iii.
Image negative
Citra negatif merupakan suatu contoh kombinasi dari penggunaan operator offset dan skala secara bersama dengan nilai P = -1 dan B = 255.
Y=−X+255
Figure 6. Hasil dari operasi negatif yang menghasilkan distribusi histogram kebalikannya.
iv.
Stretch histogram skala penuh
Note :
Pada operasi skala
Stretch histogram skala penuh adalah operasi yang membuat histogram awal (X) menjadi histogram akhir (Y) yang terdistribusi nilainya dari 0 hingga 255.
jika kita mempunyai nilai gray level pada gambar asli M dan N maka,
P∗M+B=0 P∗N+B=255
P dan B tidak diketahui nilainya, dengan melakukan sedikit kalkulasi aljabar akan didapat,
P=N255
Figure 7. Merupakan ilustrasi dari hitogram equalization dengan metode full stretch skala penuh
Figure 8. Hasil dari FSHS (Full-Scale Histogram Stretch)
Note :
Full-Scale Histogram Stretch (FSHS) akan memberikan efek yang nyata terhadap citra jika kondisi histogram awal yang terdistribusi secara lokal (contoh nilainya range nya berkisar 100 – 150)
sehingga memungkinkan untuk dilakukan FSHS dan hasilnya akan sangat telihat berbeda jauh. Sebaliknya jika kondisi awal histogram dari citra sudah tersebar merata, maka tidak ada efek dari operasi FSHS. Maka dibutuhkan teknik lainnya yaitu Non-Linier
III.
Operasi Non – Linier
Histogram
Y=f[X]
Fungsi diatas adalah rumusan dasar dimana f [ ] adalah linier equation, cakupan wilayah non-linier sangat luas, tetapi dalam pengolahan citra dibatasi oleh beberapa fungsi saja untuk mendapatkan hasil yang sangat baik. Salah satu contoh penggunaan non-linier adalah fungsi logaritmik.
i.
Operasi titik logaritmik
Di asumsikan bahwa X merupakan nilai positif, kemudian dilakukan operasi logaritmik yang diikuti operasi FSHS.
Y=FSHS{log[1+X]}
Jika terdapat citra yang memiliki nilai terendah 0 dan tertinggi 255, maka fungsi log akan membuat range X baru yaitu {log 1, log 256} dengan kata lain {0, log 256}. Dengan menempatkan FSHS linier operation, maka yang paling terang (log 256) akan ter-stretch paling minimum dan yang paling redup dengan 0 ter-stretch paling maksimum.
X mula-mula {0, 255} dengan operasi fungsi logaritmik X menjadi {0, log 255}, kemudian nilai X dimasukan dalam fungsi operasi linier FSHS.
Note :
Pada gambar pertama gambar terlihat gelap.
Y=
(
N255−M
)
(X−M)dengan X{0, log[255]}Figure 9. Gabungan hasil operasi logaritmik dan FSHS
ii.
Historam equalization
Salah sat operasi paling penting dalam operasi non-linier adalah Histogram Equalization atau disebut juga sebagai
Histogram Flattening. Tujuan dari Histogram Equalization adalah membuat distribusi histogram fat (datar) yang berisi informasi dan kompleksitas citra yang lebih baik.
Contoh histogram dengan citra ukuran M (row) x N (column) pixel, dengan total MN pixel. Maka Fungsi Probabilitas ( pf ) yang dinyatakan sebagai Normalized Image Histogram.
dengan k menyatakan tingkat keterangan k = 0, 1, 2, ..., 255. Dan Hf (k) menyatakan
jumlah pixel mulai kumulatif dari tingkat kecerahan 0 sampai k.
Ilustrasi pada sebuah contoh gambar citra, jika M = 300 pixel ; N = 200 pixel ; k = 150 di dapat,
p(150)=6000001 x(4236)
Maka didapatkan,
p(150)=0.0706083
K – 1 = 255 ; k = 0 (dimulai dari 0 hingga 255) ; pf
(k) = 1 yang artinya total density (kerapatan) atau total probabilitas bernilai 1. Seperti yang ditunjukan pada fgure.10 distribusi densitas masing-masing tingkat kecerahan untuk 128 dengan jumlah pixel 610 dan total pixel 114.639 pixel, maka probabilitas untuk
k = 128,
p(128)=0,005321
Figure 10. Kumulatif Probabilitas Densitas Kita juga mendefnisikan cummulative normalized image histogram.
Seperti yang ditunjukan pada fgure.10 distribusi densitas masing-masing tingkat kecerahan dari 0 – 128 dengan kumulatif 44.867 dan total pixel 114.639 pixel, maka probabilitas untuk k = 128,
P(128)=0,3913764
Figure 11. Grafk CFD yang ditunjukan dengan garis biru dan garis hitam adalah flattering function
Note :
Beberapa fungsi matematika yang digunkan dalam
operasi Non-Linier Equation.
J(i , j)=¿I(i , j)∨¿
Absolute Value / Magnitude
J(i , j)=[I(i , j)]2
Square – Law
J(i , j)=
√
I(i, j)Square – Root
J(i , j)=log[1+I(i , j)]
Logarithm
J(i , j)=exp[I(i, j)]=eI(i , j)
Figure 12. Menampilkan gambar sebelum dan sesudah dilakukan Histogram Equalization
Teknik yang digunakan jika melakukan histogram secara manual adalah pengelompokan berdasarkan pembulatan (round) kebawah. Sebagai contoh histogram pada fgure.12 untuk array 0 – 24 dengan total kumulatif distribusi pixel 901
Arr
18
H(i,j)= (round(0.480138678))*3; %pembulatan kebwah
H(i,j)= (0)*3; H(i,j)= 0;
Semua yang termarked hijau berubah mejadi nilai nol H(1,4)= 0; H(2,3)= 0; H(3,2)= 0; H(4,1)= 0;
Dengan memasukan nilai-nilai array dan cdf diatas,
H(i,j)= (round(((cdf(x,1))/(pixel))*85))*3;
Unutk array x = 34;
H(i,j)= (round(2.85099))*3; %pembulatan keatas
H(i,j)= (round(3.865622))*3; %pembulatan keatas
H(i,j)= (4.0)*3; H(i,j)= 12;
Unutk array x = 39;
H(i,j)= (round((7475)/(159506)))*85))*3;
H(i,j)= (round(3.9833925))*3; %pembulatan keatas
H(i,j)= (4.0)*3; H(i,j)= 12;
H(8,5)= 12; H(9,4)= 12; H(9,5)= 12; H(9,10)= 12; H(10,3)= 12;
Dan seterunya untuk array 40; 44; 45; 50;
H(i,j)= (round(((cdf(x,1))/(pixel))*85))*3;
Penjelasan dari perkalian 85 dan perkalian 3 :
Nilai maksimum dari brightness adalah 255, dan 85*3 adalah 255, jika kita asumsikan cdf (x,1) = 1000 dan pixel = 1000 maka, H (i,j) = 255. Nilai dari 85*3 bisa diganti dengan beberapa kombinasi seperti misalnya 51*5 atau 63.75*4 . Maksud dari mengguanakan perkalian 3 diluar round untuk menggabungkan 3 space blok menjadi satu.
Tidak semua space 3 array, ada beberapa yang lebih dari 3 array.
iii.
Histogram Shaping
Beberapa bentuk aplikasi menginginkan histogram yang memiliki bentuk secara khusus. Histogram Shaping digunakan untuk membandingkan beberapa gambar yang sama (multiple image) dengan kondisi pencahayaan yang berbeda. Dengan menggunkan Histogram Shaping, histogram dapat dibentuk secara serupa atau mendekati mirip dengan meminorkan tingkat pencahayaan (brightness). Hal ini bisa dicapai tanpa mengubah strukturnya.
Space 3 blok
Space 3 blok Space 3 blok
IV.
Operasi Aritmatik Antar Image
Multiple image memerlukan pertimbangan operasi aritmatik dan menggunakan dasar-dasar operasi seperti pertambahan/pengurangan dan perkalian/pembagian. Karena citra digital dibentuk dengan menggunakan angka dalam array, sehingga harus berhati-hati dalam menentukan operasi yang akan digunkan. Anggap kita memiliki sejumlah n citra dengan dimensi yang sama ukuran MxN pixel f1 , f2 , ... , fn .
Jumlah dari n image adalah,
Contoh kasus, misal terdapat 2 citra I1 dan I2 dengan ukuran NxN pixel, dengan menggunakan operasi-operasi Addition (pertambahan), Subtraction (pengurangan), Multiplication (Perkalian), dan Division (pembagian)
Pointwise Matrix Addition
Pointwise Matrix Multiplication
Pointwise Matrix Division
Jika kita memiliki banyak citra, pertambahan dan perkalian dapat digunakan sebagai berikut,
i.
Image-averaging for noise reduction
Sering sekali terjadi sebuah citra digital yang kita ambil dengan kamera terpapar noise atau gangguan, bahkan hasil gambar yang diperoleh rusak atau tidak sesuai dengan yang kita inginkan, biasanya ini disebabkan oleh additve noise (gangguan-gangguan tambahan). Noise ini berasal dari kamera
[Type sidebar content. A sidebar is a standalone supplement to the main document. It is often aligned on the left or right of the page, or located at the top or bottom. Use the Text Box Tools tab to change the formatting of the sidebar text box.
Type sidebar content. A sidebar is a standalone supplement to the main document. It is often aligned on the left or right of the page, or located at the top or bottom. Use the Text Box Tools tab to change the formatting of the sidebar text box.]
[Type sidebar content. A sidebar is a standalone supplement to the main document. It is often aligned on the left or right of the page, or located at the top or bottom. Use the Text Box Tools tab to change the formatting of the sidebar text box.
itu sendiri, komputer yang mengolah gambar, dan thermal noise pada sirkuit komputer.
Sebuah citra/gambar ( J ) dan additive noise ( N ), maka citra yang bersih dari noise ( I ) ,
I
= J – N
Dimana nilai N merupakan nialai variabel random, jika kita memiliki citra dalam jumlah M, kemudian kita membuat sebuah kesimpulan dimana sejumlah M noise (jumlah M cukup besar) dapat dijabarkan sebagai berikut,
Untuk N1 , N2 , N3 , . . . , NM
Ini artinya rata-rata dari jumlah noise yang sangat besar mengahsilkan nilai matriks yang mendekati nol, untuk endapatkan nilai rata-rata ini membutuhkan jumlah citra yang banyak sebgai perbandingannya. Contoh kasus, anggap kita memiliki sejumlah sampel M gambar gambar/citra yaitu J1 , J2 , J3 , . . . , JM dengan lantar citra yang sama. Pengambilan citra dianggap cepat dan tidak ada pergerakan dalam pengambilan citra. Tetapi frame dari citra terdapat banyak gangguan (noisy) sehingga,
Anggaplah kita menggunakan teori rata-rata frame image sehingga didapat,