Anda di halaman 1dari 17

LAPORAN SEMENTARA

PRAKTIKUM
KOMPUTER VISION

Oleh:

Muhammad Ammar Faruq


1609075028

LABORATORIUM KOMPUTER DAN SISTEM INFORMASI


FAKULTAS TEKNIK
UNIVERSITAS MULAWARMAN

SAMARINDA
2019
LEMBAR ASISTENSI
PRAKTIKUM KOMPUTER VISION
MODUL IV

Nama : MuhammadAmmar Faruq


NIM : 1609075028
Program Studi : S1- Teknik Elektro
Dosen Pengampu : Ir. Arif Harjanto, S.T.,M.Kom., IPM.

No Hari/Tanggal Catatan Paraf

1.

2.

3.

4.

5.

Telah dinyatakan diterima pada , 2019

Dosen Pengampu,

Ir. Arif Harjanto, S.T.,M.Kom., IPM.


NIP. 19810317 200501 1 001
4.1 Landasan Teori

Terminologi lain yang berkaitan erat dengan pengolahan citra adalah computer vision
atau machine vision. Pada hakikatnya, computer vision mencoba meniru cara kerja
sistem visual manusia (human vision). Human vision sesungguhnya sangat kompleks.
Manusia melihat objek dengan indera penglihatan (mata), lalu citra objek diteruskan
ke otak untuk diinterpretasi sehingga manusia mengerti objek apa yang tampak dalam
pandangan matanya. Hasil interpretasi ini mungkin digunakan untuk pengambilan
keputusan (misalnya menghindar kalau melihat mobil melaju di depan).

Proses-proses di dalam computer vision dapat dibagi menjadi tiga aktivitas:


1. Memperoleh atau mengakuisisi citra digital.
2. Melakukan teknik komputasi untuk memperoses atau memodifikasi data citra
(operasi-operasi pengolahan citra).
3. Menganalisis dan menginterpretasi citra dan menggunakan hasil pemrosesan untuk
tujuan tertentu, misalnya memandu robot, mengontrol peralatan, memantau proses
manufaktur, dan lain -lain.

Operasi-operasi yang dilakukan di dalam pengolahan citra banyak ragamnya. Namun,


secara umum, operasi pengolahan citra dapat diklasifikasikan dalam beberapa jenis
sebagai berikut:

1. Perbaikan kualitas citra (image enhancement).


Jenis operasi ini bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi
parameter-parameter citra. Dengan operasi ini, ciri-ciri khusus yang terdapat di dalam
citra lebih ditonjolkan. Contoh-contoh operasi perbaikan citra:
a. perbaikan kontras gelap/terang
b. perbaikan tepian objek (edge enhancement)
c. penajaman (sharpening)
d. pembrian warna semu (pseudocoloring)
e. penapisan derau (noise filtering)
2. Pemugaran citra (image restoration).
Operasi ini bertujuan menghilangkan/meminimumkan cacat pada citra. Tujuan
pemugaran citra hampir sama dengan operasi perbaikan citra. Bedanya, pada
pemugaran citra penyebab degradasi gambar diketahui. Contoh-contoh operasi
pemugaran citra:
a. penghilangan kesamaran (deblurring).
b. penghilangan derau (noise)

3. Pemampatan citra (image compression).


Jenis operasi ini dilakukan agar citra dapat direpresentasikan dalam bentuk yang lebih
kompak sehingga memerlukan memori yang lebih sedikit. Hal penting yang harus
diperhatikan dalam pemampatan adalah citra yang telah dimampatkan harus tetap
mempunyai kualitas gambar yang bagus. Contoh metode pemampatan citra adalah
metode JPEG. Perhatikan Gambar 1.8. Gambar sebelah kiri adalah citra kapal yang
berukuran 258 KB. Hasil pemampatan citra dengan metode JPEG dapat mereduksi
ukuran citra semula sehingga menjadi 49 KB saja.

4. Segmentasi citra (image segmentation).


Jenis operasi ini bertujuan untuk memecah suatu citra ke dalam beberapa segmen
dengan suatu kriteria tertentu. Jenis operasi ini berkaitan erat dengan pengenalan pola.

5. Pengorakan citra (image analysis)


Jenis operasi ini bertujuan menghitung besaran kuantitif dari citra untuk menghasilkan
deskripsinya. Teknik pengorakan citra mengekstraksi ciri-ciri tertentu yang membantu
dalam identifikasi objek. Proses segmentasi kadangkala diperlukan untuk melokalisasi
objek yang diinginkan dari sekelilingnya. Contoh-contoh operasi pengorakan citra:
a. Pendeteksian tepi objek (edge detection)
b. Ekstraksi batas (boundary)
c. Representasi daerah (region)
4.2 Deteksi Tepi
Dalam percobaan Deteksi Tepi, hanya digunakan satu buah gambar. Gambar tersebut
mempunyai ukuran piksel 500x500. Ukuran dari piksel akan dirubah didalam aplikasi
matlab, sehingga dapat memperjelas perubahan yang terjadi. Gambar yang dipakai
adalah sebagai berikut:

Gambar 4.1 Gambar Percobaan

Gambar tersebut akan diproses dengan aplikasi matlab dengan menampilkan hasil
Deteksi Tepi dari gambar tersebut. Gambar akan dirubah menjadi ukuran piksel yang
lebih kecil agar memudahkan dalam analisis hasil dari Deteksi Tepi tersebut.
4.2.1 Source Code

clear all;
[filename,pathname] = uigetfile({'*.jpg;*.bmp'},'Select an Image');
I = imread([pathname filename]);

G=imresize(I,[500,500]);

gray=rgb2gray(G);

a = edge(gray,'canny');
b = edge(gray, 'sobel');
c = edge(gray, 'roberts');
d = edge(gray, 'prewitt');

subplot(2,3,1);
imshow(gray);
title('Citra Asli');

subplot(2,3,2);
imshow(a);
title('Canny');

subplot(2,3,3);
imshow(b);
title('Sobel');

subplot(2,3,4);
imshow(c);
title('Roberts');

subplot(2,3,5);
imshow(d);
title('Prewitt');
4.2.2 Interface

Gambar 4.2 Output Hasil dengan pixel 500 x 500


4.2.3 Pembahasan
Dari percobaan diatas, kita dapat mendeteksi garis tepi suatu gambar dengan mengubah
gambar menjadi hitam dan garis tepi menjadi putih. Deteksi garis tepi bisa digunakan
untuk mengetahui bentuk dari gambar tersebut. Ada 4 cara yang bisa digunakan yaitu
Canny, Sobel, Roberts dan Prewitt.

A. Canny
Canny merupakan deteksi tepi yang optimal. Operator Canny menggunakan Gaussian
Derivative Kernel untuk menyaring kegaduhan dari citra awal untuk mendapatkan hasil
deteksi tepi yang halus. Pada gambar 4.2, hasil dari operator Canny sangat jelas sekali.
Seluruh tepi pada gambar terdeteksi, walaupun tepi itu berwarna putih sekalipun.
Seluruh tepi pada setiap boundary akan berwarna putih, sedangkan yang bukan garis
tepi akan berwarna hitam. Gambar nampak berubah menjadi biner. Susunan matriksnya
pun hanya terdiri dari 0 dan satu. -0 untuk warna hitam dan 1 untuk warna putih.

Gambar 4.3 Hasil deteksi tepi menggunakan operator Canny

B. Sobel
Metode Sobel mengambil prinsip dari fungsi laplace dan gaussian yang dikenal
sebagai fungsi untuk membangkitkan HPF, dan kelebihan dari metode sobel ini adalah
mengurangi noise sebelum melakukan perhitungan deteksi tepi. Pada gambar 4.4,
deteksi tepi dengan metode Sobel hanya mendeteksi tepi warna yang gelap, hitam serta
abu-abu. Bisa dikatakan deteksi tepi dengan metode ini dapat mengurangi noise.
Sehingga untuk tepi warna putih tidak akan terdeteksi. Gambar juga akan menjadi
biner. Matriks penyusunnya juga hanya terdiri dari 0 dan 1.
Gambar 4.4 Hasil deteksi tepi menggunakan operator Sobel

C. Roberts
Metode Robert adalah nama lain dari teknik differensial pada arah horisontal dan
differensial pada arah vertikal, dengan ditambahkan proses konversi biner setelah
dilakukan differensial. Maksud konversi biner adalah meratakan distribusi warna hitam
dan putih. Pada gambar 4.4, nampak garis tepi yang dideteksi oleh metode Roberts
cenderung lebih sedikit dari metode lain. Hanya garis tepi yang berwarna hitam yang
akan terdeteksi dan berubah menjadi putih. Gambar lain akan menjadi hitam. Deteksi
tepi tipe ini memiliki noise yang sangat kecil, gambar juga masih tampak jelas.

Gambar 4.5 Hasil deteksi tepi menggunakan operator Roberts

D. Prewitt
Metode Prewitt merupakan pengembangan metode robert dengan menggunakan filter
HPF yang diberi satu angka nol penyangga. Metode ini mengambil prinsip dari fungsi
laplacian yang dikenal sebagai fungsi untuk membangkitkan HPF. HPF (High pass
filter) adalah proses filter yang mengambil citra dengan gradiasi intensitas yang tinggi
dan perbedaan intensitas yang rendah akan dikurangi atau dibuang. Jadi hanya tepi
yang mempunyai perbedaan yang tinggi yang akan diambil. Pada gambar 4.4, tepi yang
terdeteksi hanya hitam, namun berbeda dengan metode Roberts, metode ini lebih
banyak mengambil tepi yang intensitasnya tinggi. Lalu gambar akan dirubah menjadi
biner.

Gambar 4.6 Hasil deteksi tepi menggunakan operator Prewitt


4.3 Segmentasi Citra Digital
Segmentasi citra digital dilakukan dengan menggunakan satu buah gambar yang telah
diatur pikselnya sebesar 500x500. Hal ini dilakukan agar mempermudah dalam proses
Segmentasi citra digital. Gambar yang dipakai adalah sebagai berikut:

Gambar 4.7 Gambar Pertama

Gambar tersebut akan diproses dengan aplikasi matlab dengan melakukan segmentasi
pada gambar tersebut. Hasil dari segmentasi akan dijelaskan dalam pembahasan.
2.3.1 Source Code

clear;
clc;
[filename,pathname] = uigetfile({'*.jpg;*.bmp;*.png'},'Select an
Image');
Im = imread([pathname filename]); % Baca file citra format dan
simpan pada matriks I
figure(1), imshow(uint8(Im));title('Citra Asli');
Th_HSV=0.5; % tentukan nilai threshold 0.2 0.3 0.4
Th_RGB=5;% tentukan nilai threshold 2 3 4
p = impoint(gca,[]); % pembacaan posisi pixel
p = wait(p); % klik 2 kali pada warna area
x=round(p(1,1)); % yang ingin disegmentasi
y=round(p(1,2));
RGB=Im(y,x,:); % warna referensi ruang RGB
R=RGB(:,:,1);
G=RGB(:,:,2);
B=RGB(:,:,3);
% Konversi warna pixel referensi
HSV=rgb2hsv(RGB);
H1=HSV(:,:,1); % warna referensi ruang HSV
S1=HSV(:,:,2);
V1=HSV(:,:,3);
% Konversi Citra ke ruang warna HSV dan HCL
citra_hsv=rgb2hsv(Im);
[m,n,l]=size(citra_hsv); % ukuran citra
% Inisialisasi matriks citra hasil
cit_hasilHSV(1:m,1:n,1:l)= uint8(0);
cit_hasilRGB(1:m,1:n,1:l)= uint8(0);

for i=1:m
for j=1:n
% hitung jarak warna RGB
dR=(abs(Im(i,j,1)-R))^2;
dG=(abs(Im(i,j,2)-G))^2;
dB=(abs(Im(i,j,3)-B))^2;
check=sqrt(double(dR+dG+dB));
if (check<=Th_RGB) % warna similar?
cit_hasilRGB(i,j,:)= Im(i,j,:);
end
% hitung jarak warna HSV
dH=citra_hsv(i,j,1)-H1;
S2=citra_hsv(i,j,2);
dV=(citra_hsv(i,j,3)-V1)^2;
Dcyl=sqrt(double((dV +(S1^2)+(S2^2)) - (2*S1*S2*cos(dH))));
if (Dcyl <=Th_HSV) % warnanya similar?
cit_hasilHSV(i,j,:)= Im(i,j,:);
end
end;
end;

% Tampilkan citra hasil


figure, imshow(cit_hasilHSV);
figure, imshow(cit_hasilRGB);
2.3.2 Interface

Gambar 4.6 Tampilan Lembar Kerja Matlab

Gambar 4.7 Tampilan citra asli


Gambar 4.9 Hasil Segmentasi Threshold 2

Gambar 4.11 Hasil Segmentasi Threshold 3


Gambar 4.12 Hasil Segmentasi Threshold 4

Gambar 4.13 Hasil Segmentasi Threshold 5


2.3.3 Pembahasan
Segmentasi citra merupakan bagian dari proses pengolahan citra. Proses segmentasi
citra ini lebih banyak merupakan suatu proses pra pengolahan pada sistem pengenalan
objek dalam citra. Segmentasi citra (image segmentation) mempunyai arti membagi
suatu citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan
yang tertentu antara tingkat keabuan suatu piksel dengan tingkat keabuan piksel –
piksel tetangganya, kemudian hasil dari proses segmentasi ini akan digunakan untuk
proses tingkat tinggi lebih lanjut yang dapat dilakukan terhadap suatu citra. Jadi bisa
disimpulkan bahwa proses segmentasi adalah proses pemilahan gambar sesuai dengan
warna piksel itu sendiri. Pada gambar 4.10, saat dipilih piksel warna putih di klik,
maka seluruh warna putih akan menghilang dan hanya akan menyisakan warna selain
yang dipilih. Pada citra hasil HSV, selain warna cerah akan menghilang, sedangkan
citra hasil RGB warna yang mirip dengan pilihan sebelumnya yang akan menghilang.

Pada saat merubah nilai threshold, maka ukuran dari segmentasi akan berbeda pula.
Semakin besar nilai threshold, maka semakin besar pula area yang akan dilakukan
segmentasi. Bisa dikatakan area warna hitam akan semakin luas. Metode segmentasi
ini sangat berguna untuk memisahkan piksel warna tertentu agar gambar itu dapat
dikategorikan ke beberapa piksel gambar nantinya.
DAFTAR PUSTAKA

Iqbal, Muhammad. 2011. Dasar Image Processing Menggunakan MATLAB. Institut


Pertanian Bogor:Bogor.

Putra, Dharma. 2010. Pengolahan Citra Digital. Penerbit Andi:Yogyakarta.

Rafael C. Gonzalez dan Richard E Woods. 2017. Digital Image Processing. Pearson:
London.

Anda mungkin juga menyukai