Laporan TB PSD
Laporan TB PSD
KELOMPOK : 8
Lailia Nurul Khasanah (181910201075)
Dhani Indra Kurniawan (181910201116)
Mengetahui,
Dosen Pengampu
ii
KATA PENGANTAR
Puji syukur kehadirat Allah SWT yang telah memberikan Rahmat dan
Karunia-Nya kepada penulis sehingga dapat menyelesikan Tugas Besar dengan judul
“Pengolahan Citra Digital Adjusting Brightnes”. Shalawat serta salam semoga
terlimpah curahkan kepada baginda tercinta kita yaitu Nabi Muhammad SAW yang
kita nanti-natikan syafa’atnya di akhirat nanti.
Laporan ini disusun dengan tujuan untuk memenuhi salah satu persyaratan
dalam menyelesaikan perkuliahan pada Program Studi Teknik Elektro Universitas
Jember. Dalam menyelesaikan Tugas Besar ini, penulis banyak mendapatkan bantuan
dan dorongan dari berbagai pihak. Oleh karena itu penulis mengucapkan terima kasih
kepada :
1. Kedua orang tua dan saudara yang telah memberikan doa dorongan moril
ataupun materiil.
2. Bapak Andrita Ceriana Eska, S.T., M.T.
3. Asisten Laboratorium Sistem Kendali.
4. Seluruh staf pengajar, staf teknisi dan staf administrasi Jurusan Teknik Elektro.
5. Semua pihak yang telah memberikan bantuannya dari awal hingga
meyelesaikan laporan dan tugas besar ini. Kami berharap semoga laporan tugas
besar ini dapat bermanfaat bagi kami khususnya dan bagi seluruh pembaca.
Penulis
iii
DAFTAR ISI
COVER ................................................................................................................... i
BAB IV PEMBAHASAN.........................................................................................
iv
DAFTAR GAMBAR
Gambar 2.2 Representasi Citra Digital Keabuan (Gray Scale) dengan Matriks......4
DAFTAR TABEL
Tabel 2.1 Tabel 2.1 Fungsi Kontrol pada GUI MATLAB .......................................7
v
BAB I PENDAHULUAN
Adapun tujuan dari pembuatan tugas besar ini adalah sebagai berikut :
1
BAB II LANDASAN TEORI
2.1 Citra
Citra (image) adalah gambar pada bidang dua dimensi. Secara matematis,
citra merupakan fungsi terus menerus (continue) dari intensitas cahaya pada
bidang dua dimensi.
Citra digital merupakan suatu matriks dimana indeks baris dan kolomnya
menyatakan suatu titik pada citra tersebut dan elemen matriksnya (yang disebut
sebagai elemen gambar / pikesl / pixel / picture element / pels) menyatakan
tingkat keabuan pada titik tersebut.
Operasi-operasi dasar pada pengolahan citra digital :
1. Aras Komputasi
a. Aras titik (operasi pointwise)
Operasi pada aras titik hanya dilakukan pada pixel tunggal di dalam
citra.
b. Aras lokal
Operasi pada aras lokal menghasilkan citra keluaran yang intensitas
suatu pixel bergantung pada intensitas pixel-pixel tetangganya.
c. Aras global
Operasi pada aras global menghasilkan citra keluaran yang intensitas
suatu pixel bergantung pada intensitas keseluruhan pixel.
d. Aras obyek
Operasi pada aras obyek hanya dilakukan pada obyek tertentu di dalam
citra, yang bertujuan untuk mengenali obyek.
2. Operasi Aritmatika
C (x,y) = A (x,y) ± B (x,y)
C (x,y) = A (x,y) . B (x,y)
C (x,y) = A (x,y) ± c
C (x,y) = c . A (x,y)
3. Operasi Boolean
C (x,y) = A (x,y) and B (x,y) (&)
C (x,y) = A (x,y) or B (x,y) (|)
C (x,y) = not A (x,y) (!)
4. Operasi Geometri
1) Translasi
a. x’ = x + m
b. y’ = y + n
2) Rotasi
a. x’ = x cos (θ) – y sin (θ)
2
b. y’ = x sin (θ) + y cos (θ)
θ = sudut rotasi berlawanan jarum jam
3) Dilatasi (image zooming)
x’ = sx . x
y’ = sy. y
3
Gambar 2.2 Representasi Citra Digital Keabuan (Gray Scale) dengan Matriks
Representasi model pada Gambar 2.1 dan 2.2 adalah representasi dari citra
gray-scale (menggunakan derajat keabuan). Untuk citra berwarna, terdapat
beberapa model yang disebut sebagai Kanal Warna (Color Space). Pada citra
berwarna untuk membentuk suatu warna dalam suatu piksel, kanal-kanal warna
yang masing-masing memiliki nilai tertentu tersebut dicampur atau digabungkan.
Terdapat beberapa model kanal warna yang digunakan untuk membentuk citra
yakni, model RGB (Red-green-Blue) HSV (Hue-Saturation-Value), YUV (Y
adalah “Luma/Luminance” (kecerahan) ; UV (Informasi Warna)) dan YCbCr (Y
adalah “Luma/Luminance” (kecerahan) ; Cb (Blue), Cr (Red)). Pada Gambar 2.3
merupakan salah satu contoh dimana satu citra berwarna dinyatakan sebagai 3
buah matrik yang berupa satu matrik untuk Red (R-layer), satu matrik untuk
Green (G-layer) dan matrik lainnya untuk Blue (B-layer).
4
2.3 Pengolahan Citra
Pengolahan citra adalah pemrosesan citra, khususnya dengan menggunakan
komputer, menjadi citra yang kualitasnya lebih baik. Pengolahan citra bertujuan
untuk :
1. Memperbaiki kualitas gambar agar mudah diinterpretasi oleh manusia atau
mesin komputer.
2. Melakukan proses penarikan informasi yang terkandung pada citra.
3. Melakukan kompresi atau reduksi data untuk tujuan penyimpanan data,
transmisi data, dan waktu proses data.
5
Operasi penajaman citra bertujuan untuk memperjelas tepi obyek di
dalam citra dengan menghilangkan bagian citra yang lembut.
6) Pengubahan geometrik
Koreksi geometrik dilakukan pada citra yang memiliki gangguan yang
terjadi pada waktu proses perekaman citra, misalnya pergeseran
koordinat citra (translasi), perubahan ukuran citra, dan perubahan
orientasi koordinat citra (skew). Koreksi geometri yang sederhana
adalah dengan operasi geometri sederhana seperti : rotasi, translasi, dan
penskalaan citra.
7) Pewarnaan semu (pseudocoloring)
Pewarnaan semu adalah proses memberi warna tertentu pada nilai-nilai
piksel suatu citra berdasarkan kriteria tertentu, misalnya suatu warna
tertentu untuk suatu interval derajat keabuan tertentu.
2. Pemugaran citra (image restoration)
Bertujuan menghillangkan/meminimumkan cacat pada citra. Pada
pemugaran citra, penyebab degradasi gambar diketahui.
3. Pemampatan citra (image compression)
Jenis opersi ini dilakukan agar citra dapat direpresentasikan dalam bentuk
yang lebih kompak, sehingga memrlukan memori yang lebih sedikit.
4. Segmentasi citra (image segmentation)
Bertujuan untuk memecah suatu citra ke dalam beberapa segmen dengan
suatu kriteria tertentu. Jenis operasi ini berkaitan erat dengan pengenalan
pola.
5. Pergorakan citra (image analysis)
Bertujuan untuk menghitung besaran kuantitatif dari citra untuk
menghasilkan deskripsinya. Tekniknya dengan mengekstraksi ciri-ciri
tertentu yang membantu dalam identifikasi obyek. Kadangkala dengan
proses segmentasi.
6. Rekonstruksi citra (image reconstruction)
Bertujuan untuk membentuk ulang obyek dari beberapa citra hasil proyeksi.
Operasi rekonstruksi citra banyak digunakan dalam bidang medis.
6
dimunculkan pada layout/figure dengan cara mendrag and drop kontrol yang
diinginkan ke figure. Adapun penjelasan fungsi masing-masing kontrol pada GUI
Matlab dijabarkan pada Tabel 2.1.
Tabel 2.1 Fungsi Kontrol pada GUI MATLAB
7
BAB III METODOLOGI
Software
1. GUI Matlab
3.2 Cara kerja
3.3 Flowchart
8
BAB IV PEMBAHASAN
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename,
...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Terang_Gelap_OpeningFcn,
...
'gui_OutputFcn', @Terang_Gelap_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
function Terang_Gelap_OpeningFcn(hObject,
eventdata, handles, varargin)
handles.output = hObject;
movegui(hObject,'center')
guidata(hObject, handles);
function varargout =
Terang_Gelap_OutputFcn(hObject, eventdata,
handles)
9
varargout{1} = handles.output;
function pushbutton1_Callback(hObject,
eventdata, handles)
set(handles.slider1,'value',0);
[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));
axes(handles.axes1);
imshow(handles.data1);
axes(handles.axes2);
imshow(handles.data1);
info =
imfinfo(fullfile(name_path1,name_file1));
bitdepth = info.BitDepth;
handles.bitdepth = bitdepth;
guidata(hObject,handles);
else
return;
end
function pushbutton2_Callback(~, ~, ~)
10
end
nilai_slider = get(handles.slider1,'value');
citra = double(handles.data1);
bitdepth = handles.bitdepth;
[m,n,~] = size(handles.data1);
if bitdepth == 8
for i = 1:m
for j = 1:n
citra(i,j) =
citra(i,j)+nilai_slider;
if citra(i,j) > 255
citra(i,j) = 255;
end;
if citra(i,j) < 0
citra(i,j) = 0;
end;
end;
end;
elseif bitdepth == 24
for x = 1:3
for i = 1:m
for j = 1:n
citra(i,j,x) =
citra(i,j,x)+nilai_slider;
if citra(i,j,x) > 255
citra(i,j,x) = 255;
end;
if citra(i,j,x) < 0
citra(i,j,x) = 0;
end;
end;
end;
11
end
else
msgbox('Citra masukan harus grayscale atau
RGB');
end
axes(handles.axes2);
gambar = uint8(citra);
imshow(gambar);
handles.data2 = gambar;
guidata(hObject,handles);
set(handles.edit1,'String',value)
if isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end
function pushbutton3_Callback(hObject,
eventdata, handles)
thresh = handles.data2;
[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_sav
e));
else
return
12
end
if ispc &&
isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
if ispc &&
isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
4.1.2.
4.2 pembahasan
13
BAB V PENUTUP
5.1 Kesimpulan
5.2 Saran
14
DAFTAR PUSTAKA
http://student.blog.dinus.ac.id/aunurrifqy/2016/12/04/konsep-brightness-pada-
pengolahan-citra-digital/ diakses pada tanggal 24 – 11 -2019
15