Teknik Pengolahan Citra Histogram

Informasi penting mengenai isi citra digital dapat diketahui dengan membuat histogram citra. Histogram citra adalah grafik yang menggambarkan penyebaran nilai-nilai intensitas piksel dari suatu citra atau bagian tertentu di dalam citra. Dari sebuah histogram dapat diketahui frekuensi relatif kemunculan setiap nilai aras keabuan pada citra. Oleh karena derajat keabuan mempunyai 256 aras (0 255) maka histogram akan menyatakan jumlah kemunculan setiap nilai 0 – 255.
Berikut diberikan ilustrasi dengan sebuah matriks yang menggambarkan sebuah citra aras keabuan. Misalkan matriks berikut diperoleh dari pembacaan nilai piksel citra digital yang berukuran 5 x 5, maka frekuensi kemunculan setiap aras keabuan pada citra adalah sbb.


10
10
70
65
10
15
70
75
100
100
15
70
100
100
100
10
15
100
70
65
15
15
10
70
10


Coba anda gambarkan histogramnya.


 Matlab menyediakan fungsi untuk menggambarkan histogram sebuah citra, yaitu imhist.m.

>> I = imread (’lena.jpg);



>> imhist (I)






>> H = imhist (I)


Menampilkan frekuensi kemunculan setiap aras keabuan (0 255) secara berurutan. Lihat hasilnya di editor Matlab.


Dari histogramnya, dapat diketahui banyak tentang kenampakan citra yang bersangkutan, misalnya:
      Pada sebuah citra yang gelap, maka histogramnya akan mengumpul pada sisi aras keabuan rendah (sebelah kiri) -7 objek untuk peningkatan citra,
      Pada sebuah citra yang terang, maka histogramnya akan mengumpul pada sisi aras keabuan tinggi (sebelah kanan). Citra seperti ini sering disebut citra yang over exposure  -7 objek untuk peningkatan citra,
      Pada sebuah citra dengan kontras yang baik, maka histogramnya akan menempati hampir seluruh aras keabuan yang ada (0 255). Citra lena.jpg




adalah  contoh  citra  dengan  kontras  yang  baik  karena  histogramnya menempati hampir seluruh aras keabuan yang ada.


Citra lena1.jpg berikut ini adalah citra dengan pencahayaan yang terlalu banyak (over exposure), sehingga histogramnya sempit dan bergeser ke  arah kanan (aras keabuan tinggi).


Citra lena2.jpg berikut ini adalah citra dengan pencahayaan yang terlalu kurang (citra gelap), sehingga histogramnya sempit dan bergeser ke arah kiri (aras keabuan rendah).


Untuk citra berwarna, histogramnya dinyatakan untuk setiap komponen RGB (Red, Blue, Green) yang membentuk setiap piksel citranya. Dengan demikian untuk setiap citra berwarna dapat dibuat tiga buah histogram.
Contoh

Citra peppers.png






>> I = imread (‘peppers.png)


>>  imhist (I(:,:,1))  -7 menampilkan histogram layer merah (red)



 >>  imhist (I(:,:,2))  -7 menampilkan histogram layer biru (blue)




>>  imhist (I(:,:,3))  -7 menampilkan histogram layer hijau (green)


Operasi Translasi


Operasi translasi merupakan operasi geometrik. Pada operasi geometrik, koordinat piksel akan berubah akibat transformasi sedangkan intensitasnya tetap. Hal ini berbeda dengan operasi aritmatika yang menyebabkan intensitas piksel berubah sedangkan koordinatnya tetap. Pengubahan geometrik dari citra u[m,n] menjadi citra baru u’[m,n] dapat ditulis sebagai


u’[m’,n’] = u[g1[m,n], g2[m,n]]



dengan g1 dan g2  adalah fungsi transformasi geometrik. Atau dapat dinyatakan bahwa
m = g1[m,n]

n’ = g2 [m,n]



Pada operasi translasi citra, fungsi transformasi geometrik yang digunakan adalah sebagai berikut.
m’ = m + y n = n + x


Konstanta y dan x merupakan besaran pergeseran masing-masing dalam arah m dan arah n. Jika citra semula adalah A dan citra hasil translasi adalah B, maka translasi dapat diimplementasikan dengan menyalin citra dari A ke B sebagai berikut.
B[m, n] = A[(m + y), (n + x)]



Operasi translasi dapat digunakan untuk memotong citra menjadi citra dengan ukuran yang lebih kecil dengan cara membuang sebagian pikselnya pada arah baris (m) dan kolom (n). Pemotongan citra yang demikian sering disebut dengan istilah cropping. Perhatikan gambar contoh. Cropping biasanya digunakan untuk memilih suatu wilayah citra yang dikehendaki (sering disebut dengan istilah





ROI atau Region of Interest) atau membuang bagian-bagian pada citra yang tidak dibutuhkan untuk proses pengolahan selanjutnya.



Matlab menyediakan fungsi untuk operasi cropping citra, yaitu imcrop.m. Berikut beberapa contoh untuk menggunakan fungsi tersebut.

>> I = imread (‘circuit.tif);

>> I2 = imcrop (I)

Dengan menggunakan sintaks ini, maka Matlab akan menunggu pengguna untuk memilih daerah yang akan di-cropping (menggunakan mouse). Pengguna dapat melihat hasilnya dengan fungsi imshow.m.
>> imshow (I2)

Sintaks fungsi imcrop yang lain adalah

I3 = imcrop (I, RECT)

RECT = [ xmin ymin width height] -7 koordinat cropping

Dengan I adalah matriks hasil pembacaan citra, xmin adalah kolom paling kiri, ymin adalah baris paling atas, width adalah lebar yang dikehendaki, dan height adalah tinggi yang dikehendaki.


>> I3 = imcrop (I, [1 1 100 200]);

 >> imshow (I3)


>> imshow (I), figure, imshow (I3)

Silahkan Download Materinya Disini
Share on Google Plus

About Unknown

    Blogger Comment
    Facebook Comment

0 komentar:

Posting Komentar