Sunteți pe pagina 1din 9

LAPORAN PRAKTIKUM

PENGOLAHAN CITRA
“HISTOGRAM CITRA”

Disusun untuk Memenuhi Matakuliah Pengolahan Citra


Dibimbing oleh Wahyu Nur Hidayat, S.Pd., M.Pd.

Oleh:
Afit Sulton Adisty 170533628615

S1 PTI ‘17 OFF A

UNIVERSITAS NEGERI MALANG


FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA
September 2019
GUI MATLAB HISTOGRAM
1. Nama File : histogram.m, histogram.fig
Screenshot Source Code :
function varargout = histogram(varargin)
% HISTOGRAM MATLAB code for histogram.fig
% HISTOGRAM, by itself, creates a new HISTOGRAM or
raises the existing
% singleton*.
%
% H = HISTOGRAM returns the handle to a new HISTOGRAM
or the handle to
% the existing singleton*.
%
% HISTOGRAM('CALLBACK',hObject,eventData,handles,...)
calls the local
% function named CALLBACK in HISTOGRAM.M with the given
input arguments.
%
% HISTOGRAM('Property','Value',...) creates a new
HISTOGRAM or raises the
% existing singleton*. Starting from the left,
property value pairs are
% applied to the GUI before histogram_OpeningFcn gets
called. An
% unrecognized property name or invalid value makes
property application
% stop. All inputs are passed to histogram_OpeningFcn
via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI
allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help


histogram

% Last Modified by GUIDE v2.5 29-Sep-2019 23:41:05

% Begin initialization code - DO NOT EDIT


gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @histogram_OpeningFcn,
...
'gui_OutputFcn', @histogram_OutputFcn,
...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(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 initialization code - DO NOT EDIT

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


function histogram_OpeningFcn(hObject, eventdata, handles,
varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of
MATLAB
% handles structure with handles and user data (see
GUIDATA)
% varargin command line arguments to histogram (see
VARARGIN)

% Choose default command line output for histogram


handles.output = hObject;

% Update handles structure


guidata(hObject, handles);

% UIWAIT makes histogram wait for user response (see


UIRESUME)
% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command


line.
function varargout = histogram_OutputFcn(hObject, eventdata,
handles)
% varargout cell array for returning output args (see
VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of
MATLAB
% handles structure with handles and user data (see
GUIDATA)

% Get default command line output from handles structure


varargout{1} = handles.output;
Screenshot Hasil :

Analisis Program :
GUI histogram (output diatas) dihasilkan dari program histogram.m dimana didalamnya
terdapat 2 Axes, Static Text, Button Group, dan 4 Radio Button. Setiap Radio Button
mewakili 1 kanal adapun kanal merah, hijau, biru, dan Greyscale. Axes kiri digunakan
untuk menampilkan Citra sedangkan Axes kanan digunakan untuk menampilkan
histogram.
GUI ASLI HISTOGRAM
1. Nama File : histogram.m, histogram.fig
Screenshot Source Code :
g=imread('kembang.jpg');
axes(handles.axes1);
imshow(g);

Screenshot Hasil :

Analisis Program :
Agar sebuah citra dengan nama file kembang.jpg dapat dimuat dalam Axes maka
diperlukan potongan program diatas. Dimana citra dapat terdeteksi oleh fungsi imread()
jika diletakan pada direktori yang sama dengan histogram.m lalu ditampilkan dengan
fungsi imshow().

GUI KANAL MERAH HISTOGRAM


2. Nama File : histogram.m, histogram.fig
Screenshot Source Code :
radio1Value = get(handles.radiobutton1, 'Value');

if (radio1Value == 1)
g=imread('kembang.jpg');
red=g(:,:,1);
green=g(:,:,2);
blue=g(:,:,3);
axes(handles.axes1)
imshow(cat(3,red,green.*0,blue.*0));
title('Kanal Merah');
axes(handles.axes2)
imhist(red);
title('Histogram Kanal Merah');

Screenshot Hasil :

Analisis Program :
Agar citra berubah warna menjadi merah maka perlu ditekan kanal merah dimana kanal
ini diaktifkan melalui variabel radio1value. Dalam fungsi imshow perbandingan warna
R:G:B diubah menjadi 3:0:0 serta fungsi imhist(red) menunjukan citra yang ditampilkan
berwana merah. Bisa dilihat melalui histogram bahwa satuan histogram tinggi di sekitar
angka 100 menunjukan bawha warna merah lebih dominan.

GUI KANAL HIJAU HISTOGRAM


3. Nama File : histogram.m, histogram.fig
Screenshot Source Code :
Radio2Value = get(handles.radiobutton2, 'Value');

else if (radio2Value==1)
g=imread('kembang.jpg');
red=g(:,:,1);
green=g(:,:,2);
blue=g(:,:,3);
axes(handles.axes1)
imshow(cat(3,red.*0,green,blue.*0));
title('Kanal Green');
axes(handles.axes2)
imhist(green);
title('Histogram Kanal Hijau');

Screenshot Hasil :

Analisis Program :
Agar citra berubah warna menjadi hijau maka perlu ditekan kanal hijau dimana kanal ini
diaktifkan melalui variabel radio2value. Dalam fungsi imshow perbandingan warna
R:G:B diubah menjadi 0:1:0 serta fungsi imhist(green) menunjukan citra yang
ditampilkan berwana hijau. Bisa dilihat melalui histogram bahwa satuan histogram tinggi
di sekitar angka 100 hingga 200 menunjukan bawha warna hijau lebih dominan.

GUI KANAL BIRU HISTOGRAM


4. Nama File : histogram.m, histogram.fig
Screenshot Source Code :
radio3Value = get(handles.radiobutton3, 'Value');

else if (radio3Value==1)
g=imread('kembang.jpg');
red=g(:,:,1);
green=g(:,:,2);
blue=g(:,:,3);
axes(handles.axes1)
imshow(cat(3,red.*0,green.*0,blue));
title('Kanal Blue');
axes(handles.axes2)
imhist(blue);
title('Histogram Kanal Biru');

Screenshot Hasil :

Analisis Program :
Agar citra berubah warna menjadi biru maka perlu ditekan kanal biru dimana kanal ini
diaktifkan melalui variabel radio3value. Dalam fungsi imshow perbandingan warna
R:G:B diubah menjadi 0:0:3 serta fungsi imhist(blue) menunjukan citra yang ditampilkan
berwana biru. Bisa dilihat melalui histogram bahwa satuan histogram tinggi di sekitar
angka 200 menunjukan bawha warna biru lebih dominan.

GUI GRAYSCALE HISTOGRAM


5. Nama File : histogram.m, histogram.fig
Screenshot Source Code :
Radio4Value = get(handles.radiobutton4, 'Value');

else if (radio4Value==1)
g=imread('kembang.jpg');
red=g(:,:,1);
green=g(:,:,2);
blue=g(:,:,3);
axes(handles.axes1)
g=rgb2gray(g);
imshow(g);
title('Kanal Gray');
axes(handles.axes2)
imhist(gray);
title('Histogram Kanal Abu abu');

Screenshot Hasil :

Analisis Program :
Agar citra berubah warna menjadi abu-abu maka perlu ditekan greyscale dimana kanal
ini diaktifkan melalui variabel radio4value. Untuk menghasilkan warna abu-abu
digunakan syntax g=rgb2gray(). Bisa dilihat melalui histogram bahwa shistrogram sama
sarat tinggi dan jarak tiap satuannya menunjukan bahwa warna yang dihasilkan adalah
abu-abu.

S-ar putea să vă placă și