Anda di halaman 1dari 12

Histogram

Pengertian histogram dalam pengolahan citra adalah representasi grafis untuk distribusi
warna dari citra digital atau menggambarkan penyebaran nilai-nilai intensitas pixel dari suatu
citra atau bagian tertentu di dalam citra. Dari sebuah histogram dapat diketahui frekuensi
kemunculan relative dari intensitas pada citra, kecerahan, dan kontas dari sebuah gambar.

Proses Histogram:
1. Gambar gelap : histogram cenderung ke sebelah kiri
2. Gambar terang: histogram cenderung ke sebelah kanan
3. Gambar low contrast: histogram mengumpul di suatu tempat
4. Gambar high contrast: histogram merata di semua tempat

Sumbu ordinat vertikal merupakan representasi piksel dengan nilai tonal dari tiap-tiap deret
bin pada sumbu axis horizontalnya. Sumbu axis terdiri dari deret logaritmik bindensitometry
yang membentuk rentang luminasi atau exposure range yang mendekati respon spectral
sensitivity visual mata manusia. Deret bin pada density yang terpadat mempunyai interval
yang relatif sangat linear dengan variabel mid-tone terletak tepat di tengahnya. Pada
umumnya, sebuah histogram hanya memetakan seluruh nilai tonal dari citra digital pada bin
luminasi masing-masing. Nilai tonal tersebut telah tersedia dalam color space yang umum
digunakan adalah sRGB dan AdobeRGB yang mempunyai nilai gamma γ = 2,2.

Informasi yang didapat dari Histogram:


1. Puncak histogram → intensitas pixel yangpaling menonjol
2. Lebar puncak → rentang kontras
3. Citra yang baik mengisi daerah derejatkeabuan secara penuh dan merata pada setiap
nilai intensitas pixel
4. Over-exposed (terlalu terang) dan under-exposed (terlalu gelap) memiliki rentang
kontras sempit.
Kegunaan histogram dalam pengolahan citra :
1. Untuk melihat apakah distribusi informasi yang ada dalam suatu citra sudah baik atau
belum.
2. Histogram juga banyak digunakan dalam texture analysis, yaitu analisa untuk melihat
apakah kedua tekstur sama atau berbeda. Misalkan seberapa mirip tekstur karpet A
dengan tekstur karpet B.
3. Untuk melihat apakah pencahayaan dan contrast suatu citra sudah cukup atau belum
(terlalu terang atau terlalu gelap). Caranya histogram dari suatu citra yang terlalu terang
cenderung mengumpul di nilai grey level yang tinggi (ke arah nilai 255), sebaliknya
histogram dari suatu citra yang terlalu gelap cenderung mengumpul di nilai grey level
yang rendah (ke arah nilai 0).

Histogram dalam pengolahan citra adalah grafik yang menunjukkan distribusi dari intensitas
citra. Histogram citra menyatakan frekuensi kemunculan berbagai derajat keabuan dalam
citra. Teknik pemodelan histogram mengubah citra hingga memiliki histogram sesuai
keinginan. Untuk meningkatkan kualitas citra salah satunya dapat dilakukan dengan
ekualisasi histogram. Dengan ekualisasi histogram dapat diperoleh histogram citra dengan
distribusi seragam. Berikut merupakan contoh untuk histogram citra.

Histogram Citra

Manfaat histogram dalam pengolahan citra :


1. Untuk melihat apakah distribusi informasi yang ada dalam suatu citra sudah baik atau
belum.
2. Digunakan dalam texture analysis, yaitu analisa untuk melihat apakah kedua tekstur
sama atau berbeda. Misalkan seberapa mirip tekstur karpet A dengan tekstur karpet B.
3. Untuk melihat apakah pencahayaan dan contrast suatu citra sudah cukup atau belum
(terlalu terang atau terlalu gelap). Caranya histogram dari suatu citra yang terlalu terang
cenderung mengumpul di nilai grey level yang tinggi (ke arah nilai 255), sebaliknya
histogram dari suatu citra yang terlalu gelap cenderung mengumpul di nilai grey level
yang rendah (ke arah nilai 0).
Filtering
Filter spasial non-linier atau disebut juga dengan filter statistik berdasar urutan (order-
statistic filter) merupakan filter yang respon nya didasarkan pada urutan atau rangking piksel
yang ada dalam citra yang dicakup oleh area filter dan menggantikan nilai dari piksel yang
berada di tengah digantikan dengan nila ihasil pengurutan atau perangkingan tersebut.

Filer ini digunakan untuk menghilangkan derau dan filter-filter ini juga digunakan untuk
menghaluskan citradigital. Filter non-linier lebih unggul dibanding dengan filter linier dengan
ukuran jendela filter yangsama. Selain itu, filter non-linier tidak memerlukan operasi
konvolusi terhadap citra original, yangberbeda dengan operasi dari filter linier.

A. Filter median
Filter yang paling dikenal dari jenis ini adalah filter median. Filter ini bekerja dengan
menggantikan nilai tengah dari piksel yang dicakup oleh area filterdengan sebuah nilai
tengah (median) setelah diurutkan terlebih dahulu dari yang terkecil ke yang terbesar.
Biasanya ukuran filter adalah ganjil karena akan memberikan poros tengah, sehingga akan
lebihmudah dalam mengolah citra.

Median Filter

Kelebihan dari filter median adalah kemampuannya dalam mengurangi derau yang
diakibatkan olehderau acak misalnya jenis salt and pepper noise atau bisa disebut sebagai
derau impulse. Dibandingkandengan jenis filter spasial (ruang) non-linier lainnya, filter
median merupakan filter yang paling cocok untuk kasus tersebut. Sehingga filter ini
dinobatkan menjadi filter yang paling ampuh dalam mengolahcitra berderau sejenis.

Dalam merancang median filter, ada beberapa hal yang harus dipersiapkan terlebih dahulu.
1. Siapkan matriks yang akan diolah. Bila matriks berisi citra, maka jadikan citra
tersebut menjadi citra grayscale atau abu-abu agar yang didapat hanya 1 matriks
intensitas saja.
2. Siapkan matriks yang NOL yang ukurannya sama persis dengan citra yang akan
diolah. Matriks ini nantinya akan berisi nilai-nilai intensitas dari citra asli yang sudah
diolah terlebih dahulu.

Berikut flowchart dalam melakukan filter median

Flowchart Median Filter

B. Maximum Filter
Filter max berarti menggantikan piksel dengan nilai tertinggi dari suatu deret yang terbentuk
darimatriks yang sesuai dengan ukuran dari jendela filter. Langkah-langkah lainnya sama
denganfilter median. Pada
Maximum Filter
C. Minimum filter
Filter ini merupakan kebalikan dari filter maksimum dimana piksel akan digantikan dengan
nilai minimum dari sebuah deret matriks yang berukuran sesuai dengan matriks filter.

Minimum Filter
D. Filter Mid-point
Mid-Point Filtering adalah mengganti nilai sel bitmap dengan nilai tengah diantara nilai
terkecil dan terbesar dari area lokal.

Midpoint Filter
E. Filter Laplacian
Laplacian merupakan filter turunan yang fungsinya dapat mendeteksi area yang
memilikiperubahan cepat (rapid changes) seperti tepi (edge) pada citra. Namun, laplacian ini
sangat rentan atau sensitif terhadap kehadiran derau. Untuk itu, citra yang akan dideteksi
tepinyaperlu dihaluskan terlebih dahulu dengan menggunakan Gaussian. Dengan demikian
dikenaladanya fungsi turunan baru yakni LOG atau Laplacian of Gaussian

Filter Laplacian

F. Filter Sobel
Metode sobel Merupakan metode yang menggunakan operator Sobel. Operator ini
menggunakan dua buah kernel yang berukuran 3x3 piksel untuk perhitungan gradien
sehingga perkiraan gradien berada tepat ditengah jendela.

Filter Sobel
G. Geometric mean filter
Mean filter merupakan salah algoritma memperhalus citra dengan cara perhitungan nilai
intensitas rata-rata citra pada setiap blok citra yang diproses. Algoritma yang umum
digunakan adalah Arithmetic dan Geometric Mean Filter.

Geometric Mean Filter

Contoh Program
Histogram Hitam-Putih
Source Code:
I=imread('cameraman.tif');
J=imadjust(I,[0 0.2],[0.5 1]);
figure,imshow(I);
figure,imhist(I);
figure,imshow(J);
figure,imhist(J);
Histogram Warna
Source Code:
% Read in standard MATLAB color demo image.
rgbImage = imread('warna.jpg');
[rows columns numberOfColorBands] = size(rgbImage);
subplot(2, 2, 1);
imshow(rgbImage, []);
set(gcf, 'Position', get(0,'Screensize')); % Maximize figure.
% Extract the individual color planes.

redPlane = rgbImage(:, :, 1); % memanggil matriks gambar yang hanya berisi piksel warna
merah
greenPlane = rgbImage(:, :, 2); % memanggil matriks gambar yang hanya berisi piksel
warna hijau
bluePlane = rgbImage(:, :, 3); % memanggil matriks gambar yang hanya berisi piksel warna
biru.

% Let’s get its histograms.


[pixelCountR grayLevelsR] = imhist(redPlane);
subplot(2, 2, 2);
bar(pixelCountR, 'r');
xlim([0 grayLevelsR(end)]); % Scale x axis manually.
[pixelCountG grayLevelsG] = imhist(greenPlane);
subplot(2, 2, 3);
bar(pixelCountG, 'g');
xlim([0 grayLevelsG(end)]); % Scale x axis manually.
[pixelCountB grayLevelsB] = imhist(bluePlane);
subplot(2, 2, 4);
bar(pixelCountB, 'b');
xlim([0 grayLevelsB(end)]); % Scale x axis manually.
Low Pass Filtering
Source Code:
I=imread('cameraman.tif');
lpf1=[1/16 1/8 1/16;1/8 1/4 1/8;1/16 1/8 1/16];
lpf2=[1/10 1/10 1/10;1/10 1/5 1/10;1/10 1/10 1/10];
lpf3=[1 1 1;1 1 1;1 1 1]/9;

J1=uint8(conv2(double(I),lpf1,'same'));
J2=uint8(conv2(double(I),lpf2,'same'));
J3=uint8(conv2(double(I),lpf3,'same'));
figure,imshow(I);
figure,imshow(J1);
figure,imshow(J2);
figure,imshow(J3);
Median Filtering
Source Code:
I=imread('cameraman.tif');
IN=imnoise(I,'salt & pepper',0.02);
J1=medfilt2(IN,[3 3]);
J2=medfilt2(IN,[5 5]);
figure,imshow(I);
figure,imshow(IN);
figure,imshow(J1);
figure,imshow(J2);
Source Code:
I=imread('cameraman.tif');
hpf1=[-1 -1 -1; -1 8 -1; -1 -1 -1];
hpf2=[ 0 -1 0; -1 5 -1; 0 -1 0];
hpf3=[ 1 -2 1; -2 5 -2; 1 -2 1];
J1=uint8(conv2(double(I),hpf1,'same'));
J2=uint8(conv2(double(I),hpf2,'same'));
J3=uint8(conv2(double(I),hpf3,'same'));
figure,imshow(I);
figure,imshow(J1);
figure,imshow(J2);
figure,imshow(J3);
High Pass Filtering
Daftar Pustaka
R. Gonzalez and R. Woods. Digital Image Processing. Addison Wesley. 2007
D. Putra, “Pengolahan Citra Digital”, Penerbit Andi, Yogyakarta, 2010

Anda mungkin juga menyukai