Transformasi Gray (cont), Statistik Dalam Image Enhancement

Transformasi Gray (cont),
Statistik
Dalam
Image Enhancement
Achmad Basuki,Nana Ramadijanti
Surabaya 2009

Materi









Konversi RGB ke Gray Scale
Konversi Gray Scale ke Biner
Konversi Gray Scale ke m-Bit
Pengaturan Brightness

Pengaturan Kontras
Gray-scale Histogram
Distribusi Kumulatif
Histogram Equalization

Konversi RGB ke Gray Scale

Setiap pixel mempunyai
nilai red (r), green (g) dan
blue (b) dengan nilai
masing-masing 0-255

r  g b
x
3

Setiap pixel mempunyai
nilai derajat keabuan x
dengan nilai 0-255


x  ar .r  a g .g  ab .b
dim ana : ar  a g  ab  1

Konversi Gray Scale Ke Biner

Setiap pixel mempunyai
nilai derajat keabuan x
dengan nilai 0-255

1 jika x  128
xbw  
0 jika x  128

Setiap pixel mempunyai
nilai warna xbw dengan
nilai 0 dan 1

1 jika x  x
xbw  
0 jika x  x


Konversi Gray Scale Ke m-Bit

Setiap pixel mempunyai
nilai derajat keabuan x
dengan nilai 0-255

Setiap pixel mempunyai
nilai warna xth dengan nilai
0 sampai dengan 2m-1

x 
m
xth  2 . int  m 
2 

 

Contoh :
X=100, gray scale 4 bit (0-64)

Xbaru = 64 x (100/64)
= 64 x 1 = 64

Pengaturan Brightness

Proses pengaturan brightness adalah proses penambahan nilai
derajat keabuan x dengan nilai perubahan brightness tbrightness

xbrightness  x  tbrightness
0

255

0

255

tbrightness bisa positif dan dan negatif

Pengaturan Contrast


Proses pengaturan contrast adalah proses perkalian nilai derajat
keabuan x dengan nilai perubahan contrast tcontrast

0

255

0

255

xcontrast  x  tcontrast
0 < tkontras < m , dengan m positif

Gray-Scale Histogram
• Histogram di dalam gambar gray-scale
menyatakan distribusi dari derajat keabuan
(terang/gelap) pada suatu gambar.
• Dari histogram ini dapat dilihat apakah gambar

tersebut lebih banyak warna gelap atau lebih
banyak warna terang
• Teknik histogram ini dapat dikembangkan untuk
memperbaiki kualitas gambar (image
enhancement) dengan apa yang dinamakan
dengan Histogram Equalization, suatu teknik
untuk meratakan distribusi terang/gelap
sehingga gambar kelihatan lebih jelas.

Gray-Scale Histogram

Gambar ini didominasi warna terang, karena grafik di sebelah kanan
terlihat lebih banyak.

Gambar ini didominasi warna gelap, karena grafik di sebelah kiri terlihat
lebih banyak.

Distribusi Kumulatif
• Distribusi kumulatif C(x) adalah nilai total histogram
dari tingkat keabuan=0 sampai dengan tingkat

keabuan=x, dan didefinisikan dengan:
x

C ( x)   H ( w)
w 0

• Distribusi kumulatif ini dapat digunakan untuk
menunjukkan perkembangan dari setiap step derajat
keabuan.
• Pada distribusi kumulatif, gambar dikatakan baik bila
mempunyai distribusi kumulatif yang pergerakannya
hampir sama pada semua derajat keabuan.

Distribusi Kumulatif

Perubahan yang tajam

Distribusi Kumulatif
• Gambar-gambar hasil photo mempunyai
perubahan yang tidak terlalu tajam dan

biasanya tidak lebih dari satu. Hal ini
menunjukkan tingkat gradiasi yang halus
pada gambar hasil photo.
• Gambar-gambar kartun mempunya
banyak perubahan yang tajam, hal ini
menunjukkan tingkat gradiasi pada
gambar kartun rendah (kasar).

Histogram Equalization
• Histogram Equalization adalah suatu proses untuk
meratakan histogram agar derajat keabuan dari yang
paling rendah (0) sampai dengan yang paling tinggi
(255) mempunyai kemunculan yang rata.
• Dengan histogram equalization hasil gambar yang
memiliki histogram yang tidak merata atau distribusi
kumulatif yang banyak loncatan gradiasinya akan
menjadi gambar yang lebih jelas karena derajat
keabuannya tidak dominan gelap atau dominan terang.
• Proses histogram equalization ini menggunakan
distribusi kumulatif, karena dalam proses ini dilkakukan

perataan gradien dari distribusi kumulatifnya.

Formulasi Histogram Equalization
Histogram Equalization dari suatu distribusi kumulatif
C adalah:

cw .t
w
nx .n y

Cw adalah nilai distribusi kumulatif pada derajat keabuan w
t adalah nilai threshold derajat keabuan= 28 atau 256
nx dan ny adalah ukuran gambar.

Perhitungan Histogram Equalization
Perhatikan histogram berikut:
2 4 3 1 3 6 4 3 10 3 2

Distribusi Kumulatifnya
2 6 9 10 13 19 23 26 27 27 30 32

35

7

30

6

25

5

20

4

15

3


10

2

5

1

0

0
1

2

3

4

5

6

7

8

9

10

11

12

1

2

3

4

5

6

7

8

9

10

11 12

Perhitungan Histogram Equalization
Distribusi Kumulatif: 2 6 9 10 13 19 23 26 27 27 30 32
w

35

Cw

w-baru

1

2

(2*12)/
41
1

2

6

2

3

9

3

4

10

4

5

13

5

6

19

7

7

23

9

8

26

10

9

27

10

10

27

10

11

30

11

12

32

12

30
25
20
15
10
5
0
1

2

3

4

5

6

7

8

9

10

11 12

35
30
25
20
15
10
5
0
1

2

3

4

5

6

7

8

9

10

11 12

Histogram Equalization Pada Gambar

Histogram Equalization Pada Gambar

Histogram Equalization Pada Gambar

Aplikasi Histogram Equalization
• Buka project baru
• Pada form atur property ScaleMode=Pixel
• Tambahkan 2 pictureBox. Pada setiap pictureBox, atur
property Appereance=Flat, Autoredraw=True dan
ScaleMode=Pixel. Buat ukuran kedua pictureBox ini
sama.
• Pada picture1, tambahkan gambar pada property picture
• Tambahkan 1 commandButton, isikan property
Caption=Histogram Equalization.
• Atur tampilan seperti gambar di bawah ni.

Aplikasi Histogram Equalization
• Click pada Command1, dan isikan
program berikut:
‘Inisialisasi variabel
Dim h(256), h2(256), c(256) As Single
For i = 0 To 255
h(i) = 0
h2(i) = 0
Next i

‘Menghitung distribusi kumulatif
For i = 0 To Picture1.ScaleWidth - 1
For j = 0 To Picture1.ScaleHeight - 1
w = Picture1.Point(i, j)
r = w And RGB(255, 0, 0)
g = Int((w And RGB(0, 255, 0)) / 256)
b = Int(Int((w And RGB(0, 0, 255)) / 256) / 256)
xg = Int((r + g + b) / 3)
xg = Int(0.6 * xg + 20)
Picture1.PSet (i, j), RGB(xg, xg, xg)
h(xg) = h(xg) + 1
Next j
Next i
c(0) = h(0)
For i = 1 To 255
c(i) = c(i - 1) + h(i)
Next i

'Histogram Equalization
For i = 0 To Picture1.ScaleWidth - 1
For j = 0 To Picture1.ScaleHeight - 1
w = Picture1.Point(i, j)
r = w And RGB(255, 0, 0)
g = Int((w And RGB(0, 255, 0)) / 256)
b = Int(Int((w And RGB(0, 0, 255)) / 256) / 256)
xg = Int((r + g + b) / 3)
yg = Int(256 * c(xg) / 128 / 128)
h2(yg) = h2(yg) + 1
Picture2.PSet (i, j), RGB(yg, yg, yg)
Next j
Next I
For i = 0 To 255
MSChart1.Row = i + 1
MSChart1.Data = h(i)
MSChart1.RowLabel = Trim(Str(i))
MSChart2.Row = i + 1
MSChart2.Data = h2(i)
MSChart2.RowLabel = Trim(Str(i))
Next i

Lingkup Pembahasan
Image Enhancement
Spatial Domain
I. Point Processing

II. Mask Processing

Frequency Domain
…(next week)

a. Image Negative
b. Contrast Stretching
c. Histogram Equalization
- all grey level and all area
- specific grey level (histogram specification)
- local enhancement (specific part of the image)
d. Image Subtracting
e. Image Averaging

I. Point Processing
• Cara paling mudah untuk melakukan
peningkatan mutu pada domain spasial
adalah dengan melakukan pemrosesan
yang hanya melibatkan satu piksel saja
(tidak menggunakan jendela
ketetanggaan)
• Pengolahan menggunakan histogram
juga termasuk dalam bagian point
processing

Ia. Image Negative
• Mengubah nilai grey-level piksel citra input dengan:
Gbaru = 255 - Glama
• Hasilnya seperti klise foto

Aplikasi Penginderaan Jarak Jauh
(Sumber: Murni, 1997)

Citra Optik
Citra SAR
(Sumber: Bakosurtanal RI)

27

Ib. Contrast Stretching
• Mengubah kontras dari suatu
image dengan cara mengubah
greylevel piksel-piksel pada citra
menurut fungsi s = T(r) tertentu
• r1 ≤ r2, s1 ≤ s2
• r1 = r2, s1 = s2  tidak ada
perubahan
• r1 = r2, s1 = 0, s2 = 255 
tresholding menjadi citra biner
dengan ambang r1

255
(r2,s2)
s

T(r)
(r1,s1)
0

r

255

Contoh Contrast Stretching

Contrast Stretching
• Fungsi lain yang baik digunakan adalah:
fout = (fin – a) * b, -> (20-10)*6=60
• a = min(fin) misal : a=10
• b = 255 / (max(fin) – min(fin)) : b=255/(5010)=255/40=6
• Citra masukan yang grey level nya tidak
penuh dari 0 – 255 (low constrast) diubah
menjadi citra yang grey level nya berkisar
dari 0 – 255 (high contrast)

Contrast Stretching
Buatlah matrik citra ukuran 10x10 dengan nilai random gray scale 50-150
(optional)
Dapatkan matrik citra hasil setelah dilakukan contras stretching
sehingga gray level citra menjadi 0-255.
Tampilkan matrik citra asal dan matrik citra hasil contras stretching.
Dikumpulkan senin mg depan.

Ic. Histogram Equalization
• Histogram: diagram yang menunjukkan jumlah
kemunculan grey level (0-255) pada suatu citra
• Histogram processing:
– Gambar gelap: histogram cenderung ke sebelah kiri
– Gambar terang: histogram cenderung ke sebelah kanan
– Gambar low contrast: histogram mengumpul di suatu
tempat
– Gambar high contrast: histogram merata di semua
tempat
 Histogram processing: mengubah bentuk histogram
agar pemetaan gray level pada citra juga berubah

Ic. Histogram Equalization
in all grey level and all area (1)


Ide: mengubah pemetaan
greylevel agar sebarannya
(kontrasnya) lebih menyebar
pada kisaran 0-255
• Sifat:
– Grey level yang sering
muncul lebih dijarangkan
jaraknya dengan grey level
sebelumnya
– Grey level yang jarang
muncul bisa lebih
dirapatkan jaraknya dengan
grey level sebelumnya
– Histogram baru pasti
mencapai nilai maksimal
keabuan (contoh: 255)

Ic. Histogram Equalization
in all grey level and all area (2)
- mengubah pemetaan grey level pada citra,
dengan rumus:
k

sk  T (rk )  

j 0

nj
n

k

  p(rj )
j 0

0  rk  1 dan k  0,1,....., L 1
L adalah grey level maksimal yang ada pada citra

Ic. Histogram Equalization
in all grey level and all area (3)
Citra Akhir:
19 9 95
95 9 55
91 5 55
5 9 10 10 1

Citra awal:
35554
54544
53444
45663





• Contoh : citra
dengan derajat
keabuan hanya
berkisar 0-10
0

1

2

3

4

5

6

7

8

9

10

Derajat Keabuan

0

0

0

3

8

7

2

0

0

0

0

Kemunculan

0

0

0

3

11

18

20

20

20

20

20

Probabilitas Kemunculan

(0*10)/25

(0*1
0)/25

(0*1
0)/25

(3*1
0)/25

(11*
10)/
25

(18*
10)/
25

(20*
10)/
25

(20*
10)/
25

(20*
10)/
25

(20*
10)/
25

(20
10)
25

SK * 10

0

0

0

0.15

0.40

0.35

0.1

0

0

0

0

Derajat keabuan baru

0

0

0

0.15

0.55

0.90

1

1

1

1

1

0

0

0

1.5

5.5

9

10

10

10

10

10

0

0

0

1

5

9

10

10

10

10

10

Sk

Ic. Histogram Equalization
specific grey level (hist. specification)
• Histogram
equalization
tidak dilakukan
pada seluruh
bagian dari
histrogram tapi
hanya pada
bagian tertentu
saja

Ic. Histogram Equalization
specific area (local enhancement)
• Histogram equalization hanya dilakukan pada
bagian tertentu dari citra