Pengolahan citra adalah salah satu cabang dari ilmu informatika. Pengolahan citra berkutat pada usaha untuk melakukan transformasi suatu citra/gambar menjadi citra lain dengan menggunakan teknik tertentu. bisa juga di artikan pemrosesan citra, khususnya menggunakan komputer, menjadi citra yang kualitasnya lebih baik dan sesuai dengan keinginan pemakai. Pengolahan citra bertujuan memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia atau mesin (dalam hal ini komputer). Teknik-teknik pengolahan citra mentransformasikan citra ke citra yang lain. Jadi masukannya adalah citra dan keluarannya juga citra, namun citra keluaran atau hasil mempunyai kualitas lebih baik dari pada citra masukan.
Definisi dasar
Citra
Citra adalah gambar dua dimensi yang dihasilkan dari gambar analog dua dimensi yang kontinu menjadi gambar diskrit melalui proses sampling.
Gambar analog dibagi menjadi N baris dan M kolom sehingga menjadi gambar diskrit. Persilangan antara baris dan kolom tertentu disebut dengan piksel. Contohnya adalah gambar/titik diskrit pada baris n dan kolom m disebut dengan piksel
Samplings
Sampling adalah proses untuk menentukan warna pada piksel tertentu pada citra dari sebuah gambar yang kontinu. Pada proses sampling biasanya dicari warna rata-rata dari gambar analog yang kemudian dibulatkan. Proses sampling sering juga disebut proses digitisasi. Sampling merupakan bagian dari metodologi statistika.
Kuantisasi
Ada kalanya, dalam proses sampling, warna rata-rata yang didapat di relasikan ke level warna tertentu. Contohnya apabila dalam citra hanya terdapat 16 tingkatan warna abu-abu, maka nilai rata-rata yang didapat dari proses sampling harus diasosiasikan ke 16 tingkatan tersebut. Proses mengasosiasikan warna rata-rata dengan tingkatan warna tertentu disebut dengan kuantisasi.
Derau
Derau (Noise) adalah gambar atau piksel yang mengganggu kualitas citra. Derau dapat disebabkan oleh gangguan fisis(optik) pada alat akuisisi maupun secara disengaja akibat proses pengolahan yang tidak sesuai. Contohnya adalah bintik hitam atau putih yang muncul secara acak yang tidak diinginkan di dalam citra. bintik acak ini disebut dengan derau salt & pepper.
Banyak metode yang ada dalam pengolahan citra bertujuan untuk mengurangi atau menghilangkan noise.
Dalam artikel ini kita akan membahas pengolahan citra menggunakan software matlab,
untuk softwarenya bisa di dowload di https://docs.google.com/uc?id=0B3nowwRaDJ48WXlBb3dBYUdyNzg&export=download.
untuk ukurannya kurang lebih 2gb.
Setelah matlab selesai di instal mari kita buka programnya dan langkahnya adalah
sebagai berikut :
1. Buka aplikasi matlab
2. Kemudian klik file --> New --> GUI
3. Kita akan buat tampilannya seperti ini
- untuk semua axes hapus xtick,ytick dan zticknya yang ada di dalam property inspector.
- beri nama untuk setiap push button seperti tampilan di atas.
4. Nah kita akan masuk tahap coding
4.1 Open Image
Klik kanan open image --View callbacks --> callback kemudian ketikkan command seperti di bawah ini, untuk baris yang bertanda % sengaja saya hilangkan biar tidak membingungkan.
function pushbutton1_Callback(hObject, eventdata, handles)
[name_file1,name_path1] = uigetfile( ...
{'*.bmp;*.jpg;*.tif','Files of type (*.bmp,*.jpg,*.tif)';
'*.bmp','File Bitmap (*.bmp)';...
'*.jpg','File jpeg (*.jpg)';
'*.tif','File Tif (*.tif)';
'*.*','All Files (*.*)'},...
'Open Image');
if ~isequal(name_file1,0)
handles.data1 = imread(fullfile(name_path1,name_file1));
guidata(hObject,handles);
axes(handles.axes1);
imshow(handles.data1);
else
return;
end
%Keterangan :
%Ketika klik tombol open image akan melakukan event memanggil dialog yang sudah di filter tipe filenya seperti di atas, dan kemudian menampilkannya di axes1.
4.2 Convert to grayscale
function pushbutton2_Callback(hObject, eventdata, handles)
image1 = handles.data1;
gray = rgb2gray(image1);
axes(handles.axes2);
imshow(gray);
%Keterangan :
%Mengambil gambar yang ada di axes 1, dan menyimpannya ke dalam variavel image1 kemudia image1 di konversi ke grayscale dan menampilkan hasilnya di axes2.
4.3 Convert to black and white
I=getimage(handles.axes1); %--------membaca file gambar
bw=im2bw(I);
axes(handles.axes3);
imshow(bw);
%Keterangan :
%Mengambil gambar yang ada di axes 1, dan menyimpannya ke dalam variavel I kemudia I di konversi ke black and white dan menampilkan hasilnya di axes3
4.5 Grayscale dengan rata-rata
function pushbutton4_Callback(hObject, eventdata, handles)
I=getimage(handles.axes1);%Mengambil matriks penyusun citra merah
red=I(:,:,1);%Mengambil matriks penyusun citra merah
green=I(:,:,2);%Mengambil matriks penyusun citra hijau
blue=I(:,:,3);%Mengambil matriks penyusun citra biru
gray2=0.3*red+0.5*green+0.2*blue;
axes(handles.axes4);
imshow(red);
axes(handles.axes5);
imshow(green);
axes(handles.axes6);
imshow(blue);
axes(handles.axes7);
title('Citra grayscale')
imshow(gray2);
4.6 Save (menyimpan hasil konversi)
function pushbutton6_Callback(hObject, eventdata, handles)thresh = getimage(handles.axes2);
[name_file_save,path_save] = uiputfile( ...
{'*.bmp','File Bitmap (*.bmp)';...
'*.jpg','File jpeg (*.jpg)';
'*.tif','File Tif (*.tif)';
'*.*','All Files (*.*)'},...
'Save Image');
if ~isequal(name_file_save,0)
imwrite(thresh,fullfile(path_save,name_file_save));
else
return
end
%Script di atas berfungsi untuk menyimpan hasil konversi dalam file.
sekian artikelnya semoga bermanfaat.
Sumber :
https://id.wikipedia.org/wiki/Pengolahan_citra
https://www.mathworks.com/help/images/ref/im2bw.html
https://www.mathworks.com/help/matlab/ref/rgb2gray.html
Post a Comment for "Pengolahan Citra "