TUGAS 1 PENGOLAHAN CITRA
APLIKASI IMAGE THRESHOLDING UNTUK SEGMENTASI OBJEK
ABSTRAKSI
Salah satu operasi di dalam analisis citra
adalah segmentasi citra, yaitu memisahkan objek dari latar belakangnya atau dari objek lain yang
tidak menjadi perhatian. Metode sementasi yang sederhana adalah dengan operasi pengambangan
(thresholding). Operasi pengambangan menghasilkan citra biner, yang dalam hal ini objek yang diacu di-set berwarna
putih sedangkan latar belakangnya di-set berwarna hitam (atau sebaliknya bergantung kasusnya). Makalah
ini mempresentasikan penggunaan operasi pengambangan untuk melakukan segmentasi objek. Eksperimen
dilakukan dengan menggunakan kakas MATLAB. Hasil eksperimen memperlihatkan bahwa pemilihan nilai ambang (threshold) yang tepat sangat menentukan keberhasilan segmentasi.
Kata kunci: segmentasi citra, objek, pengambangan, nilai ambang, citra biner.
1.
PENDAHULUAN
Salah satu proses yang penting
dalam pengenalan objek yang tersaji
secara visual (berbentuk gambar) adalah segmentasi.
Segmentasi objek di dalam citra
bertujuan memisahkan wilayah (region)
objek dengan wilayah
latar belakang. Selanjutnya, wilayah objek yang telah tersegmentasi digunakan untuk proses berikutnya (deteksi tepi, pengenalan pola, dan interpretasi objek).
Metode segmentasi yang umum adalah pengambangan
citra (image thresholding). Operasi pengambangan mensegmentasikan citra menjadi
dua wilayah, yaitu wilayah objek dan wilayah latar belakang [1]. Wilayah objek diset berwarna
putih sedangkan sisanya
diset berwarna hitam (atau sebaliknya). Hasil dari operasi
pengambangan adalah citra biner yang hanya mempunyai
dua derajat keabuan:
hitam dan putih.
dengan kuantisasi derajat keabuan 8-bit,
nilai derajat keabuan
dari 0 sampai 255). Gambar 1 memperlihatkan contoh sebuah histogram
citra, yag dalam hal ini k menyatakan derajat keabuan dan nk menyatakan jumlah pixel yang
memiliki nilai keabuan
k.
![]() |
Gambar 1. Histogram citra
Seringkali pada beberapa operasi pengolahan citra jumlah pixel yang memiliki derajat keabuan k dinormalkan terhadap
jumlah seluruh pixel di dalam
citra,
n
Sebelum proses segmentasi, citra mengalami
beberapa pemrosesan awal (preprocessing) untuk
h = k
k n
,
k = 0, 1, …, L –
1 (1)
memperoleh hasil segmentasi objek yang baik. Pemrosesan
awal adalah operasi pengolahan citra untuk meningkatkan kualitas citra (image enhancement).
Makalah ini mempresentasikan penggunaan metode pengambangan citra untuk segmentasi objek. Pembahasan dimulai
dari dasar teori mengenai histogram
citra, peningkatan kualitas
citra, metode pengambangan, dan diakhir dengan analisis hasil
eksperimen.
2.
HISTOGRAM CITRA
Informasi penting mengenai isi citra digital dapat diketahui dengan membuat histogram
citra. Histogram citra adalah grafik
yang menggambarkan penyebaran
kuantitatif nilai derajat keabuan (grey level) pixel di dalam (atau bagian tertentu) citra. Misalkan citra digital
memiliki L derajat keabuan, yaitu dari nilai 0 sampai L – 1 (misalnya pada citra
sehingga 0 £ hi £ 1. Persamaan 1 di atas menyatakan
frekuensi kemunculan nisbi (relative) dari derajat keabuan
pada citra tersebut.
Khusus untuk citra berwarna, histogramnya dibuat untuk setiap
kanal RGB (merah, hijau,
dan biru).
Histogram citra menunjukkan banyak hal tentang
kecerahan (brightness) dan kontas (contrast)
dari sebuah gambar. Puncak histogram menunjukkan
intensitas pixel yang menonjol. Lebar dari puncak menunjukkan rentang kontras dari gambar. Citra yang mempunyai
kontras terlalu terang (overexposed) atau terlalu gelap (underexposed) memiliki histogram yang sempit. Histogramnya terlihat hanya menggunakan setengah dari daerah derajat keabuan. Citra yang baik memiliki histogram
yang mengisi daerah derajat keabuan
secara penuh dengan distribusi yang merata pada setiap derajat
keabuan pixel.
Histogram adalah alat bantu yang berharga dalam pekerjaan pengolahan citra baik secara
kualitatif maupun kuantitatif. Histogram
berguna antara lain untuk perbaikan
kontras dengan teknik histogram equalization [3] dan memilih
nilai ambang untuk melakuka segmentasi objek. Poin yang disebutkan terakhir akan dijelaskan
di dalam bagian selanjutnya.
3.
PERBAIKAN KUALITAS CITRA
Perbaikan kualitas citra (image enhancement) merupakan salah satu proses
awal dalam pengolahan citra (image preprocessing). Perbaikan
kualitas diperlukan karena seringkali citra yang diuji mempunyai kualitas
yang buruk, misalnya
citra mengalami derau (noise)
pada saat pengiriman melalui saluran transmisi,
citra terlalu terang/gelap,
kecil dari rentang nilai-nilai keabuan yang mungkin.
Citra kontras-tinggi memiliki
jangkauan nilai keabuan yang lebar, tetapi terdapat area
yang lebar yang didominasi oleh warna
gelap dan area yang lebar yang didominasi oleh warna terang.
Sedangkan Citra kontras-bagus memperlihatkan jangkauan
nilai keabuan yang lebar tanpa ada suatu nilai keabuan
yang mendominasi. Histogram
citranya memperlihatkan sebaran
nilai keabuan yang relatif
seragam.
Citra dengan kontras-rendah dapat diperbaiki kualitasnya dengan operasi peregangan kontras. Melalui
operasi ini, nilai-nilai keabuan pixel akan merentang
dari 0 sampai 255 (pada citra 8-bit),
dengan kata lain seluruh nilai keabuan pixel terpakai secara merata. Operasi
peregangan kontras dinyatakan dengan
transformasi [2]:
citra
kurang tajam, kabur, dan sebagainya. Melalui
operasi pemrosesan awal inilah kualitas
citra diperbaiki sehingga
citra dapat digunakan
untuk
ì au
|
|
v = ïb (u - a) + v
ïg (u - b) + v
,0 £
u <
a
, a £ u < b
, b £ u £ L
(2)
aplikasi lebih
lanjut,
misalnya untuk
aplikasi î b
pengenalan (recognition) objek di dalam
citra.
Yang dimaksud dengan perbaikan kualitas
citra adalah proses memperjelas dan mempertajam ciri/fitur tertentu dari citra agar citra lebih mudah dipersepsi maupun dianalisis secara lebih
teliti [2]. Secara matematis, image enhancement dapat diartikan sebagai
proses mengubah citra f(x, y) menjadi
f
’(x, y) sehingga
ciri-ciri yang dilihat
pada
yang dalam u adalah nilai keabuan
yang lama, v nilai keabuan setelah peregangan kontras, a, b, dan
g adalah kontanta, sedangkan
a
dan b adalah batas-
batas nilai ambang (threshold).
(ii) Pengambangan
Kasus khusus dari persamaan (2) adalah bila
a = b = g = 0 dan a = b = T,
f(x, y) lebih ditonjolkan [4]. Image enhancement
tidak meningkatkan kandungan informasi, melainkan
jangkauan dinamis dari ciri agar bisa dideteksi lebih mudah dan tepat [2].
ìva
v =
í
îvb
, u <
T
, u ³
T
(3)
Operasi-operasi yang digolongkan sebagai
perbaikan kualitas citra cukup beragam antara lain, pengubahan kecerahan gambar (image brightness), peregangan kontras (contrast stretching), pengubahan histogram citra, pelembutan citra (image smoothing), penajaman
(sharpening) tepi (edge),
pewarnaan semu (pseudocolouring), pengubahan geometrik, dan
sebagainya.
Beberapa operasi perbaikan
kualitas yang penting
dan berkaitan dengan makalah ini dijelaskan secara ringkas di bawah ini.
(i) Peregangan Kontras
Kontras menyatakan sebaran terang (lightness)
dan gelap (darkness) di dalam sebuah gambar. Citra dapat dikelompokkan ke dalam
tiga kategori kontras: citra kontras-rendah (low contrast), citra kontras-bagus (good contrast atau normal contrast), dan citra kontras-tinggi (high contrast).
Persamaan (3) ini dinamakan operasi
pengambangan (thresholding).
Jika va = 0 dan vb = L, maka operasi pengambangan akan mentransformasikan
citra grey-level menjadi citra biner (yang hanya mempunyai 2 derajat
keabuan). Gambar 2 memperlihatkan tafsiran
visual dari operasi
pengambangan yang menghasilkan citra biner.
![]() |
Gambar 2. Operasi pengambangan.
(iii)
Pelembutan Citra
Citra kontras-rendah dicirikan dengan
sebagian besar komposisi citranya
adalah terang atau sebagian besar gelap. Kontras
yang rendah disebabkan pencahayaan yang buruk atau efek nirlanjar sensor [2]. Dari histogramnya terlihat
sebagian besar derajat
keabuannya terkelompok (clustered) bersama
atau hanya menempati sebagian
Pelembutan citra (image smoothing) bertujuan untuk menekan gangguan (noise)
pada citra. Gangguan tersebut
biasanya muncul sebagai akibat dari hasil penerokan
yang tidak bagus
(sensor noise, photographic grain noise) atau
akibat saluran transmisi
(pada pengiriman data).
Pixel
yang mengalami gangguan umumnya memiliki frekuensi tinggi (berdasarkan analisis
frekuensi dengan transformasi Fourier). Komponen citra yang berfrekuensi rendah umumnya mempunyai nilai pixel konstan atah berubah sangat
lambat. Operasi pelembutan citra dilakukan untuk menekan komponen yang berfrekuensi tinggi dan meloloskan komponen yang berfrekuensi rendah.
Operasi
pelembutan dilakukan dengan mengganti intensitas suatu pixel dengan rata-rata
dari nilai pixel tersebut dengan nilai pixel-pixel tetangganya. Jadi, diberikan citra f(x,y) yang
Operasi
penajaman dilakukan dengan
melewatkan citra pada penapis
lolos-tinggi (high- pass filter). Penapis lolos-tinggi
akan meloloskan (atau memperkuat) komponen yang berfrekuensi tinggi (misalnya tepi atau pinggiran
objek) dan akan menurunkan komponen berfrekuensi
rendah. Akibatnya, pinggiran
objek telihat lebih tajam dibandingkan sekitarnya.
Operasi
penajaman citra dapat dipandang sebagai konvolusi antara citra f(x,y) dengan penapis lolos tinggi h(x,y).
Contoh beberapa penapis lolos- rendah yang berukuran 3 ´ 3 dan 2 ´ 2 adalah:
berukuran N ´ M. Citra hasil
pelembutan, g(x,y),
didefinisikan sebagai berikut:
é- 1 - 1 - 1ù
(a) ê- 1 8 - ú
é 0 - 1 0 ù
(b) ê- 1 5 - ú
1 m2 n2
ê 1ú
ê 1ú
g(x, y) =
åå f (x + r, y +
s)
|
r =m s=n
(4)
êë- 1 - 1 - 1ûú
êë 0 - 1 0 úû
Operasi
perata-rataan di atas dapat dipandang
sebagai konvolusi antara citra f(x,y) dengan penapis
h(x,y):
g(x,y) = f(x,y) *
h(x,y) (5)
Penapis h disebut penapis rerata (mean filter).
Penapis h ini termasuk ke dalam penapis lolos-rendah (low-pass filter), karena penapis tersebut
menekan komponen yang berfrekuensi tinggi (misalnya pixel gangguan, pixel tepi)
dan meloloskan komponen
yang berfrekuensi rendah.
Contoh beberapa penapis
lolos-rendah yang berukuran
3 ´ 3 dan 2 ´ 2 adalah:
Segmentasi citra bertujuan memisahkan wilayah (region)
objek dengan wilayah
latar belakang agar objek di
dalam citra mudah dianalisis dalam rangka
mengenali objek.
Pengambangan citra (image thresholding) merupakan
metode yang paling sederhana untuk melakukan segementasi. Operasi pengambangan membagi citra menjadi dua wilayah, yaitu
wilayah objek dan wilayah latar belakang [1]. Wilayah objek diset berwarna putih sedangkan
sisanya diset berwarna hitam (atau sebaliknya). Hasil dari operasi
pengambangan adalah citra biner yang hanya mempunyai dua derajat keabuan:
hitam dan
(a)
é1/ 9
ê
1/ 9
1/ 9ù
ú
é1/ 4
(b)
1/ 4ù
putih.
Nilai ambang T dipilih sedemikian sehingga
|
ê1/
9
êë1/
9
1/ 9
1/ 9
1/ 9ú
1/ 9úû
ê
ë1/ 4
1/ 4ú
galat yang diperoleh sekecil mungkin. Cara yang umum menentukan nilai T adalah dengan membuat histogram citra. Nilai T dapat
dipilih secara manual
Jenis penapis lain yang digunakan
untuk memperbaiki kualitas citra
adalah penapis median. Pada penapis
median, suatu “jendela”
(window) memuat sejumlah pixel (ganjil). Jendela digeser titik demi titik pada seluruh
daerah citra. Pada setiap
pergeseran dibuat jendela baru. Titik tengah
dari jendela ini diubah dengan
nilai median dari jendela
tersebut. Penapis median umumnya memberikan hasil yang lebih baik dibandingkan penapis rerata untuk citra yang mengalami gangguan dalam bentuk spike berupa bercak-bercak putih.
atau dengan teknik yang otomatis.
Teknik yang manual dilakukan dengan cara coba-coba (trial and
error) dan menggunakan histograk sebagai panduan.
Selain berbentuk kotak, jendela pada
penapis median dapat bermacam-macam
bentuknya, seperti palang (cross), lajur vertikal (vertical strip), atau lajur horizontal (horizontal strip). Penjelasan lebih rinci mengenai penapis ini dapat dilihat di dalam [5].
(iv) Penajaman Citra
Operasi
penajaman citra bertujuan
memperjelas tepi pada objek di dalam citra. Penajaman
citra merupakan kebalikan dari operasi pelembutan
citra karena operasi ini
menghilangkan bagian citra yang lembut.
(a)
(b)
(c)
Gambar 3. Segmentasi citra.
Gambar
3 memperlihatkan contoh
segmentasi citra dengan menggunakan operasi
pengambangan [1]. Gambar 3(a) adalah citra awal (sebelum disegmentasi) yang memperlihatkan partikel-partikel. Gambar 3(c) adalah histogram citra yang sudah dinormalisasi. Kita dapat
melihat bahwa histogram ini memperlihatkan ada tiga wilayah di dalam gambar. Wilayah pertama
adalah latar belakang gambar yang
gelap yang ditunjukkan dengan
bagian histogram paling kiri dengan sebuah puncak. Wilayah
kedua menunjukkan partikel-
partikel yang berwarna
lebih gelap yang ditunjukkan dengan bagian histogram
tengah dengan dengan sebuah puncak.
Wilayah ketiga menunjukkan partikel-partikel berwarna terang yang
ditunjukkan dengan bagian histogram paling kanan. Wilayah
kedua dan wilayah
ketiga dapat dibedakan
dengan sangat jelas karena kedua puncaknya
dipisahkan dengan jarak yang jauh. Jika kita
ingin menganalisis partikel yang lebih terang,
kita dapat memisahkannya dari latar belakang dan partikel yang lebih gelap dengan melakukan operasi pengambangan. Nilai ambang yang dipilih diperlihatkan pada gambar 3(c). Hasilnya adalah
citra biner dengan partikel-partikel lebih terang diset berwarna putih sedangkan bagian gambar lainnya
diset hitam.
Untuk mendapatkan hasil segmentasi yang bagus, beberapa
operasi perbaikan kualitas
citra dilakukan terlebih
dahulu untuk mempertajam batas antara objek dengan
latar belakangnya.
5.
HASIL-HASIL EKSPERIMEN
Eksperimen dilakukan dengan menggunakan kakas MATLAB [6] terhadap dua buah
citra, yang pertama citra normal dengan satu buah objek (gambar
hati), dan yang kedua citra dengan dua buah
objek tetapi mengalami derau (noise).
Gambar 4(a) dan 4(b) memperlihatkan kedua buah citra tersebut. Sebagai
batasan, citra yang digunakan hanyalah citra hitam-putih (grey level) saja. Citra berwarna dikonversi terlebih dahulu
menjadi citra hitam-putih.
Citra botol dan gelas mengalami gangguan yang mengurangi kualitasnya. Oleh karena
itu, citra botol dan gelas diperbaiki mutunya dengan cara menghilangkan derau dengan menggunakan penapis median berukuran
3´3. Operasi
ini dilakukan dengan menggunakan urutan peruntah MATLAB sebagai berikut:
I = imread(‘botol.jpg’);
imshow(I)
L
= medfilt2(I, [3 3]); figure, imshow(L)
Citra hasil penapisan
diperlihatkan pada Gambar 5(b). Citra ini disimpan di dalam
berkas botol2.jpg untuk
pemrosesan lebih lanjut.
Histogram citra liver.jpg dan botol2.jpg ditunjukkan paad Gambar 6 Histogram ini akan digunakan
sebagai panduan dalam memilih nilai ambang untuk melakukan segmentasi objek.
Operasi ini dilakukan dengan menggunakan urutan
peruntah MATLAB sebagai berikut:
I = imread(‘liver.jpg’); imshow(I)
figure, imhist(I,
256)
J = imread(‘botol2.jpg’); imshow(J)
figure, imhist(J, 256)
![]() |
(a)
(b)
(b)
Gambar 4. (a) hati (liver), (b) botol dan gelas
![]() |
|||
![]() |
|||
(a) (b)
Gambar 5. (a) Sebelum, dan (b) sesudah penapisan
median
Pada histogram citra liver, pixel-pixel yang merepresentasikan liver berada di bagian kanan histogram. Sedangkan
pada pada histogram
citra botol, pixel-pixel yang
merepresentasikan botol berada di bagian
kiri histogram.
Tujuan segmentasi adalah memisahkan hati dari latar belakangnya dan botol dari
latar belakang dan dari objek lainnya
(dalam hal ini gelas).
Operasi pengambangan menggunakan bermacam- macam nilai ambang untuk memperoleh
segmentasi yang memuaskan.
(a)
![]() |
(b)
Gambar 6 (a) Histogram citra liver, dan (b)
histogram citra botol
(a)
Segmentasi Citra Liver
Dari histogram pada Gambar 6(a) terlihat bahwa nilai ambang dapat diambil atara
nilai 15 sampai 25 untuk memisahkan liver dari
latar belakangnya. Nilai ambang ini ditransformasikan ke nilai di dalam selang [0, 1] menjadi 0.06 sampai
0.1 karena MATLAB hanya
menspesifikasikan level ambang di dalam selang [0, 1]. Hasil pengambangan dengan bermacam-macam nilai ambang
antara 0.06 sampai 0.1 diperlihatkan pada Gambar
7. Hasil pengambangan adalah citra biner. Sebagai
pembanding, diujicoba nilai ambang yang lebih besar, yaitu 0.2. Operasi ini dilakukan dengan menggunakan urutan peruntah MATLAB sebagai berikut:
I = imread(‘liver.jpg’); BW = im2bw(I, 0.06);
imshow(BW)
BW = im2bw(I, 0.08);
figure,
imshow(BW) BW = im2bw(I, 0.1);
imshow(BW)
Dari hasil eksperimen ini dapat dilihat
dengan nilai ambang T = 0.06
diperoleh segmentasi hati yang memuaskan.
(a) T = 0.06 (b) T = 0.08
(c) T = 0.1 (d) T = 0.2
Gambar 7. Hasil pengambangan citra
liver dengan bermacam-macam nilai T
(b)
Segmentasi Citra Botol
Dari histogram pada Gambar 6(b) terlihat bahwa nilai ambang dapat diambil atara
nilai 80 sampai 100 untuk memisahkan botol dari latar belakangnya
dan objek lainnya. Nilai ambang ini ditransformasikan
ke nilai di dalam selang [0, 1] menjadi 0.31 sampai 0.39. Operasi ini dilakukan dengan
menggunakan urutan peruntah
MATLAB sebagai berikut:
I = imread(‘botol2.jpg’); BW = im2bw(I, 0.31);
imshow(BW)
BW = im2bw(I, 0.35);
figure, imshow(BW) BW = im2bw(I,
0.39);
imshow(BW)
Hasil pengambangan dengan bermacam- macam nilai ambang antara 0.31 sampai 0.39 diperlihatkan
pada Gambar 8. Sebagai pembanding, diujicoba nilai ambang yang lebih besar, yaitu
0.5.
Dari hasil eksperimen ini dapat dilihat
dengan nilai ambang T = 0.31 diperoleh segmentasi hati yang memuaskan. Perhatikan bahwa pada kasus
ini objek berwarna hitam (bukan putih seperti
pada citra liver), karena
semua pixel yang nilainya di bawah nilai ambang (yaitu pixel-pixel botol) di- set hitam sedangkan
pixel-pixel di atas nilai ambang
di-set putih. Hal ini juag menjelaskan hasil
segmentasi pada citra liver,
karena semua nilai pixel di bawah nilai ambang (yaitu latar
belakang) di-set hitam, sedangkan
semua pixel di atas nilai ambang
(yaitu gambar hati) di-set putih.
6.
KESIMPULAN
Operasi
pengambangan dapat digunakan
untuk melakukan segmentasi objek di dalam citra. Keberhasilan operasi ini ditentukan oleh pemilihan nilai ambang yang tepat. Histogram
citra dapat digunakan
sebagai panduan dalam menentukan nilai
ambang yang bagus. Melalui eksperimen dengan menggunakan MATLAB diperoleh hasil segmentasi yang memuaskan dengan memilih beberapa
nilai ambang yang yang potensial.
(a) T = 0.31 (b) T = 0.35
![]() |
![]() |
||
(c) T = 0.39 (d) T =
0.5
Gambar 8. Hasil
pengambangan citra botol dengan
bermacam-macam nilai T
DAFTAR PUSTAKA
[1] http://zone.ni.com/devzone/, Thresholding
an Image, diakses tanggal 11 Maret 2006, pukul 11.00.
[2] Andriyan Bayu Suksmono, Bahan Kuliah
EB7031 Pengolahan Citra Biomedik Lanjut, Teknik Elektro
2006.
[3] Anil K. Jain, Fundamentals of Digital Image Processing, Prentice-Hall International, 1989.
[4] Hansye S. Dulimarta, Diktat Kuliah Pengolahan Citra, Jurusan Teknik Informatika ITB, 1997.
[5] Robert J. Schalkoff,
Digital Image Processing and Computer Vision, John Wiley & Sons, 1989.
[6] Image Processing Toolbox
for Use with MATLAB, User’s Guide Version 2, The Mathworks, 1993.
Komentar
Posting Komentar