Selasa, 17 November 2009

Histogram

Pada Penulisan Blog kali ini saya ingin membuat program dan membuat analisa perubahan suatu citra atau gambar kedalam bentuk histogram

sebelum kita masuk masuk ke program saya akan menjelaskan apa yang dimaksud dengan citra dan histogram itu sendiri.

Citra mungkin klw kita mengetahui banyak orang yang bilang bahwa citra itu sama dengan gambar, foto, atau hal apapun yang ada gambarny, padahal klw mnurut ilmu nyang benernya klw citra itu merupakan fungsi malar (kontinyu) dari intensitas cahaya. Secara matematisdisimbulkandengan f(x,y), dimana :

(x,y) : koordinat pada bidang dwi warna
F(x,y) : intensitas cahaya pada titik (x,y)

Nilai f(x,y) adalah hasil kali dari :
i(x,) = jumlah cahaya yang berasal dari sumber, nilainya antara 0 sampai tak terhingga
r(x,y) = derajat kemampuan objek memantulkan cahaya , nilainya antara 0 dan 1
Jadi f(x,y) = i(x,y) . r(x,y)

Ribet ya kalau bahasa jermannya artinya klw citra itu merupakan merupakan kumpulan intensi
tas suatu cahaya yang berkelanjutan dan dipengaruhi oleh cahaya pada yang menimpa objek.
Nah kurang lebih gtu lah bahasa jermanya.

Lanjut kita ke histogram. Histogram adalah diagram yang menunjukkan jumlah kemunculan grey
level (0-255) pada suatu citra. jadi histogram itu merupakan diagram yang digunakan untuk
menghitung jumlah kemunculan suatu warna pada suatu citra.

kemudian histogram prosessing

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


Biar ga tambah bingung kita akan langsung menuju kepada program :
Pembuatan program ini saya menggunakan software matlab 7.0 hal ini dikarenakan bahwa matlab
biasa digunakan untuk beberapa fungsi matematika jadi saya membuat program ini menggunakan
matlab.

Persiapan dan langkah-langkah :
Instalasi Software Matlab
Kemudian jalankan software matlab
Kemudian pilih menu bar file-new-m file
Setelah itu akan muincul text editor untuk mengetikan sintaks program
Kemudian ketikan listing seperti pada lampiran listing dibawah nanti
Setelah iti jalankan program dangan pilih menu bar debug-run atau ketik F5 pada keyboad maka
akan tampil output seperti lampiran output dibawah nanti

Dibawah ini adalah listing program
clear all;
close all;
l=imread('01SC087.JPG');
l1=rgb2gray(l);
figure(1)
subplot(1,2,1)
imshow(l1)
title('Original Image');
[counts x]=imhist(l1);
counts1=counts(2:256-1,:);
x1=[2:1:255];
h=hist(counts1,x1);
p=histeq(l1,h);
subplot(1,2,2)
imshow(p);
title('Processed Image');
hold on;
figure(2)
subplot(1,2,1)
imhist(l1)
title('Histogram of Original Image');
subplot(1,2,2)
imhist(p)
title('Histogram of Processed Image');
hold on;
k=mean2(l1);
k2=mean2(p);
dev=std2(l1);
dev1=std2(p);
[co xi]=imhist(l1,8);
[co1 xi1]=imhist(p,8);
m=mean2(xi);
m2=mean2(xi1);
stdev=std2(xi);
stdev1=std2(xi1);
disp('********Comparison of Mean and Standard Deviation for Whole Image and 8x8 Block*********');
disp('Original Image');
disp('Mean of Whole Image=')
disp(k);
disp('Mean for 8x8 Sub-Block of Intensities=');
disp(m);
disp('Standard Deviation of Whole Image=')
disp(dev);
disp('Standard Deviation for 8x8 Sub-Block of Intensities=');
disp(stdev);
disp('Processed Image');
disp('Mean of Whole Image=')
disp(k2);
disp('Mean for 8x8 Sub-block of Intensities=');
disp(m2);
disp('Standard Deviation of Whole Image=')
disp(dev1);
disp('Standard Deviation for 8x8 Sub-block of Intensities=');
disp(stdev1);

Output Program

Pada tampilan pertama sebelah kiri adalah citra yang original dan yang sebelah kanan adalah citra yang telah di telah di proses enhancement akan terlihat pada tampilan histogram pada tampilan kedua histogram cenderung kesebalah kiri artinya citra gelap. tampilan kedua adalah histogram masing-masing citra.

Tidak ada komentar:

Posting Komentar