Selasa, 18 November 2008

Tugas Pengolahan Citra

Listing Program

function varargout = ich_hist0(varargin)

gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ...

'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @ich_hist0_OpeningFcn, ...

'gui_OutputFcn', @ich_hist0_OutputFcn, ...

'gui_LayoutFcn', [] , ...

'gui_Callback', []);

if nargin & isstr(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State, varargin{:});

end

%end of initilialization code -- edited by ich

% --- Executes just before ich_hist0 is made visible.

function ich_hist0_OpeningFcn(hObject, eventdata, handles, varargin)

handles.output = hObject;

guidata(hObject, handles);

function varargout = ich_hist0_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

% --- Executes on button press in Tombol_buka.

function Tombol_buka_Callback(hObject, eventdata, handles)

[nama_file1, nama_path1] = uigetfile(...

{'*.bmp;*.jpg','File Citra (*.bmp, *.jpg)';'*.bmp','File Bitmap (*.bmp)'; ...

'*.jpg','File Jpeg (*.jpg)';'*.*','Semua File (*.*)'},...

'Buka File Citra Host / Asli');

if ~isequal(nama_file1,0)

handles.data1=imread(fullfile(nama_path1,nama_file1));

guidata(hObject,handles);

handles.current_data1=handles.data1;

axes(handles.axes1);

imshow(handles.current_data1);

axes(handles.axes2);%membuat tresholding image

level = graythresh(handles.current_data1);

bw = im2bw(handles.current_data1,level);

imshow(bw);

axes(handles.axes3); %merotasikan 35cw

imrotate(handles.current_data1,35);

else

return;

end

set (handles.text2,'String',nama_file1);

set (handles.text5,'String',size(handles.data1,1));

set (handles.text6,'String',size(handles.data1,2));

% --- Executes on button press in Tombol_tutup.

function Tombol_tutup_Callback(hObject, eventdata, handles)

pos_size = get(handles.figure1,'Position');

user_response = questdlg('Apakah Kamu Mau Tutup','Confirm Close');

switch user_response

case {'No'}

case 'Yes'

delete(handles.figure1)

end


GUI FIG



Property inspectror :

NAMA KOMPONEN

STRING PROPERTY

TAG PROPERTY

Static Text 1

Sample citra 4ia03

Text1

Static Text 2

-

Text2

Static Text 3

Nama File :

Text3

Static Text 4

Ukuran :

Text4

Static Text 5

-

Text5

Static Text 6

-

Text6

Static Text 7

X

Text7

Static Text 8

Citra Asli

Text8

Static Text 9

Treshold

Text9

Static Text 10

Rotated

Text10

NAMA KOPMPONEN

XTick Property

YTick Property

Axes1

-

-

Axes2

-

-

Axes3

-

-

NAMA KOMPONEN

STRING PROPERTY

TAG PROPERTY

Pushbutton1

Buka File Citra

Tombol_buka

PushButton2

Tutup File Citra

Tombol_tutup


OUTPUT :



Citra Digital


Citra digital merupakan fungsi intensitas cahaya f(x,y), dimana harga x dan y merupakan koordinat spasial dan harga fungsi tersebut pada setiap titik (x,y) merupakan tingkat kecemerlangan citra pada titik tersebut;
Citra digital adalah citra f(x,y) dimana dilakukan diskritisasi koordinat spasial (sampling) dan diskritisasi tingkat kecemerlangannya/keabuan (kwantisasi);
Citra digital merupakan suatu matriks dimana indeks baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya (yang disebut sebagai elemen gambar / piksel / pixel / picture element / pels) menyatakan tingkat keabuan pada titik tersebut.
Resolusi Citra,
Dikenal: resolusi spasial dan resolusi kecemerlangan, berpengaruh pada besarnya informasi citra yang hilang.
Resolusi spasial: halus / kasarnya pembagian kisi-kisi baris dan kolom. Transformasi citra kontinue ke citra dijital disebut dijitisasi (sampling). Hasil dijitisasi dengan jumlah baris 256 dan jumlah kolom 256 - resolusi spasial 256 x 256.
Resolusi kecemerlangan (intensitas / brightness): halus / kasarnya pembagian tingkat kecemerlangan. Transformasi data analog yang bersifat kontinue ke daerah intensitas diskrit disebut kwantisasi. Bila intensitas piksel berkisar antara 0 dan 255 - resolusi kecemerlangan citra adalah 256.
Sampling Uniform dan Non-uniform
Sampling Uniform mempunyai spasi (interval) baris dan kolom yang sama pada seluruh area sebuah citra.
Sampling Non-uniform bersifat adaptif tergantung karakteristik citra dan bertujuan untuk menghindari adanya informasi yang hilang. Daerah citra yang mengandung detil yang tinggi di-sampling secara lebih halus, sedangkan daerah yang homogen dapat di-sampling lebih kasar. Kerugian sistem sampling Non-uniform adalah diperlukannya data ukuran spasi atau tanda batas akhir suatu spasi.
Kwantisasi Uniform, Non-uniform, dan Tapered
Kwantisasi Uniform mempunyai interval pengelompokan tingkat keabuan yang sama (misal: intensitas 1 s/d 10 diberi nilai 1, intensitas 11 s/d 20 diberi nilai 2, dstnya).
Kwantisasi Non-uniform: Kwantisasi yang lebih halus diperlukan terutama pada bagian citra yang meng-gambarkan detil atau tekstur atau batas suatu wilayah obyek, dan kwantisasi yang lebih kasar diberlakukan pada wilayah yang sama pada bagian obyek.
Kwantisasi Tapered: bila ada daerah tingkat keabuan yang sering muncul sebaiknya di-kwantisasi secara lebih halus dan diluar batas daerah tersebut dapat di-kwantisasi secara lebih kasar (local stretching).
Pembentukan Citra
Sensor yang sensitif terhadap gelombang EM menghasilkan sinyal listrik sesuai dengan enersi yang diterima. Analog-to-Digital Converter / Digitizer akan mengubah sinyal listrik tersebut menjadi bentuk dijital.
Scanner yang menerima masukan dalam bentuk analog (dokumen, peta, foto) akan mengubah menjadi data dalam bentuk dijital.
Penyimpanan Citra
Penyimpanan jangka pendek (sedang diproses): memory.
Penyimpanan on-line (siap dipakai): disk magnetik.
Penyimpanan arsip: pita atau disk magnetik, CD.
Pemrosesan Citra dan Komunikasi
Data citra berukuran besar (perlu tempat simpan yang besar serta waktu proses yang lama).
Issue penting pada komunikasi: kompresi citra.
Issue penting pada pemrosesan citra: proses paralel.
Peragaan Citra
Dalam bentuk softcopy (layar peraga / monitor).
Dalam bentuk hardcopy (printer, film writer, plotter).
Pembentukan Citra (Data Acquisition):
Menentukan data yang diperlukan dan memilih metode perekaman citra dijital.
Pengolahan Citra Tingkat Awal (Image Preprocessing):
Meningkatkan kontras, menghilangkan gangguan geometrik / radiometrik, menentukan bagian citra yang akan diobservasi.
Segmentasi Citra (Image Segmentation) dan Deteksi Sisi (Edge Detection):
Melakukan partisi citra menjadi wilayah-wilayah obyek (internal properties) atau menentukan garis batas wilayah obyek (external shape characteristics).

Seleksi dan Ekstraksi Ciri (Feature Extraction and Selection):
Seleksi ciri memilih informasi kwantitatif dari ciri yang ada, yang dapat membedakan kelas-kelas obyek secara baik. Ekstraksi ciri mengukur besaran kwantitatif ciri setiap piksel.
Representasi dan Deskripsi:
Suatu wilayah dapat direpresentasi sebagai suatu list titik-titik koordinat dalam loop yang tertutup, dengan deskripsi luasan / perimeternya.
Pengenalan Pola (Pattern Recognition):
Memberikan label kategori obyek pada setiap piksel citra berdasarkan informasi yang diberikan oleh deskriptor atau ciri piksel bersangkutan (pewilayahan jaringan keras dan pewilayahan berbagai jaringan lunak pada citra biomedik).
Interpretasi Citra (Image Interpretation):
Memberikan arti pada obyek yang sudah berhasil dikenali (dari citra klasifikasi biomedik dapat dilihat adanya penyakit tumor).
Penyusunan Basis Pengetahuan:
Basis pengetahuan ini digunakan sebagai referensi pada proses template matching / object recognition.
Sumber : fasilkom.narotama.ac.id
Dosen : Rinci Kembang Hapsari