Anda di halaman 1dari 17

LAPORAN PRAKTIKUM

PENGOLAHAN CITRA DIGITAL

Disusun Oleh

Nama : Isnani

Nim : 1957301025

Kelas : 3C

Program Studi : Teknik Informatika

No.Praktukum : 07/PCD/TI/2021

Dosen : Musta’inul Abdi, SST.,M.Kom.


PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNOLOGI INFORMASI DAN KOMPUTER

POLITEKNIK NEGERI LHOKSEUMAWE

TAHUN AJARAN

2021

LEMBAR PENGESAHAN

No.Praktikum : 7/PCD/3.C/TI/2021

Nama Praktikum : Teknik Filtering Citra Digital

Judul Praktikum :
Tanggal Praktikum : 22 Oktober 2021

Tanggal Penyerahan : 27 Oktober 2021

Nama Praktikan : Isnani

NIM/Kelas : 1957301025/TI.3.C

Nilai :

Keterangan :

Buketrata, 27 Oktober 2021


Dosen Pembimbing,

Musta’inul Abdi, SST.,M.Kom.

NIP. 199110302019031015

DAFTAR ISI
DAFTAR GAMBAR
BAB I

PENDAHULUAN

1.1. TUJUAN
1. Mahasiswa dapat memahami konsep Filter di domain Frekuensi
2. Mahasiswa dapat menerapkan fungsi Filter pada citra digital

1.2. DASAR TEORI


Gambar selalu berada pada frekuensi rendah, hal ini karena setiap titik
pada gambar mempunyai banyak kemiripan warna dengan titik-titik tetangganya.
Bila suatu gambar menunjukkan frekuensi tinggi maka pada gambar tersebut
banyak titik yang nilai grayscalenya (warna) yang berbeda jauh dengan titik-titik
tetangganya.

Frekuensi Rendah Frekuensi Tinggi

Gambar 1 Frekuensi Rendah dan Tinggi

Filtering pada pengolahan citra digital dibagi menjadi 3 bagian, Low Pass
Filter (LPF), Band Pass Filter (BPF) dan High Pass Filter (HPF).

1. LPF (Low Pass Filter) adalah suatu proses pada gambar/citra dari bentuk
filter yang mengambil data pada frekuensi rendah dan membuang
frekuensi tinggi yang mempunyai tujuan mengurangi noise pada suatu
image. Noise-noise tersebut muncul sebagai akibat dari hasil
pensamplingan yang tidak bagus. Low-pass filtering merupakan metode
penghalusan sebuah sinyal atau citra. Smoothing/blurring/penghalusan
dicapai dalam domain frekuensi dengan pelemahan frekuensi tinggi.
Smoothing dapat membantu menghilangkan noise, karena
noise/interference disebabkan oleh frekuensi tinggi. Ciri-ciri kernel dari
LPF adalah semua nilainya positif dan jumlah dari semua nilainya sama
dengan satu.

𝐻(𝑥, 𝑦) ≥ 0 𝑑𝑎𝑛 ∑ 𝐻(𝑥, 𝑦) = 1


𝑥𝑦

Salah satu contohnya adalah Gaussian Filter.

1. Gaussian Low Pass Filter

Filter Gaussian termasuk filter linier. Biasanya digunakan untuk


mengaburkan (blurring) citra digital atau mengurangi noise dari citra digital.
Filter Gaussian sendiri juga mengaburkan tepi dan mengurangi kontras. Filter
Gaussian mudah dikenali dengan bentuk grafiknya menonjol di tengah ke atas
ataupun ke bawah

Dengan ƒ frekuensi biasa. Persamaan ini juga dapat dinyatakan dengan


standar deviasi sebagai parameter

1 𝑥2

−2𝜎 2
𝐺(𝑥) = 𝑒
√2𝜋. 𝜎

Jika diperlihatkan dalam bentuk grafik, maka terlihat seperti gambar berikut:

Gambar 2 Grafik
Jika dalam 2-D, isotropik (yaitu simetris sirkuler) dengan standard deviasi
ditunukkan sebagai unit fisik. Misalkan domain waktu terhadap frekuensi yang
mana fungsi G terhadap sumbu (x,y). Maka Gaussian Filter memiliki

diekspresikan dalam matematika sebaga berikut:

𝑥2+𝑦2

𝐺(𝑥, 𝑦) =𝑒− 2𝜎2

Untuk penampilan pada grafik, terlihat seperti gambar berikut:

Gambar 3 Grafik2

Sehingga hasil gambar filter ini dapat ditunjukkan pada gambar berikut:

Gambar 4 Gausian blur


2. HPF (High Pass Filter)
adalah suatu proses pada gambar/citra dari bentuk filter yang
mengambil komponen frekuensi tinggi dan menurunkan komponen
frekuensi rendah.

High-pass filtering merupakan kebalikan dari low-pass filtering, yaitu


metode yang membuat sebuah sinyal atau citra menjadi kurang halus.
highpass filtering biasa digunakan untuk Unsharp Masking, Deconvolution,
Edge Detection, mengurangi blur, atau menambah noise. (Morse, 2010 )

Ciri-ciri kernela dari HPF adalah nilai-nilainya terdiri positif, nol dan
negatif, dan jumlah dari semua nilainya sama dengan 0

∑ 𝐻(𝑥, 𝑦) = 0
𝑥𝑦

3. Gaussian High Pass Filter

Pada kasus Fungsi Gaussian highpass filter (GHPF), koefisien frekuensi


tidak dipotong secara tiba-tiba, tetapi proses pemotongan dengan smoothing
sebagai gantinya. Sehingga hasilnya akan melemahkan nilai frekuensi yang
didekeat pusat citra, maka dapat didefinisikan sebagai:

𝐻 2𝑤 2

𝑋𝑢𝑣′ = 𝑋𝑢𝑣 (1 − 𝑒− 2−𝑢)


𝐴+2(2−𝑣) ) (

Hasil dari filter ini terlihat seperti garis-garis pada objek tersebut dan
biasa disebut dengan deteksi tepi dan dapat diperlihatkan pada gambar
berikut:
Gambar 5 Gaussian HPF

4. BPF (Band Pass Filter) adalah suatu suatu proses yang merubah
gambar/citra menjadi lebih tajam, karena mengambil data frekuensi
tinggi dan rendah dengan batas tertentu. BPF digunakan untuk
melakukan proses efek sharpness. Ciri-ciri kernel dair BPF adalah nilai-
nilainya terdiri positif, nol dan negatif, dan jumla dari semua nilainya
tidak sama dengan 0.

∑ 𝐻(𝑥, 𝑦) ≠ 1
𝑥𝑦

5. Gaussian Band Pass Filter

Gaussian Band Pass Filter melakukan perubahan antara domain


frekuensi dan spasial yang tetap menjadi Gaussian. Maka dari itu, tidak
menimbulkan efek dering pada sasial domain pada image filtering. Sehingga
dapat dirumuskan sebagai berikut:

𝐻𝐿𝑃(𝑢, 𝑣) = 𝑒−𝐷2(𝑢,𝑣)/2𝐷𝐿2

𝐻𝐻𝑃(𝑢, 𝑣) = 1 − 𝑒−𝐷2(𝑢,𝑣)/2𝐷𝐻2

𝐻𝐵𝑃(𝑢, 𝑣) = 𝐻𝐿𝑃(𝑢, 𝑣) ∗ 𝐻𝐻𝑃(𝑢, 𝑣)


𝐷𝐿 > 𝐷𝐻

𝐷𝐿 dan 𝐷𝐻 adalah potongan frekuensi LPF dan HPF. 𝐷(𝑢, 𝑣) adalah jarak
dari asalnya. Sebagai contoh hasil gambar yang dapat dihasilkan oleh
Gaussian BPF sebagai berikut:

Fungsi Filter Domain


Gambar Asli Hasil Gaussian BPF Frekuensi
BAB II
PEMBAHASAN

2.1. Implementasi

1. Gaussain LPF
img = imread('peppers.png');
img = rgb2gray(img);
%nilai deriatif=3
Iblur = imgaussfilt(img, 3);

subplot(1,3,1), imshow(img), title('Original Image');


subplot(1,3,2), imshow(Iblur) title('Gaussian LPF, \
sigma = 7')

 Analisis :
2. Gaussian HPF
img = imread('football.jpg');
img = rgb2gray(img);
[m n]=size(img);
f_transform=fft2(img);
f_shift=fftshift(f_transform);
p=m/2;
q=n/2;
d0=70;
for i=1:m
for j=1:n
distance=sqrt((i-p)^2+(j-q)^2);
low_filter(i,j)=exp(-(distance)^2/(2*(d0^2)));
end
end
filter_apply=f_shift.*low_filter;
image_orignal=ifftshift(filter_apply);
image_filter_apply=abs(ifft2(image_orignal));
subplot(1,3,1), imshow(img), title('Original Image');
subplot(1,3,3), imshow(image_filter_apply,[])
title('Gaussian HPF')

 Output

Gambar 6 Gaussian HPF

 Analisis:
3. Gaussain BPF
Buat file “gaussianbpf.m” untuk sebagai fungsi utamanya dan ketik
koding berikut:

function filtered_image = gaussianbpf(I,d0,d1)


f = double(I);
[nx ny] = size(f);
f = uint8(f);
fftI = fft2(f,2*nx-1,2*ny-1);
fftI = fftshift(fftI);
subplot(2,2,1)
imshow(f,[]);
title('Original Image')
subplot(2,2,2)
fftshow(fftI,'log')
title('Fourier Spectrum of Image')
% Initialize filter.
filter1 = ones(2*nx-1,2*ny-1);
filter2 = ones(2*nx-1,2*ny-1);
filter3 = ones(2*nx-1,2*ny-1);
for i = 1:2*nx-1
for j =1:2*ny-1
dist = ((i-(nx+1))^2 + (j-(ny+1))^2)^.5;
% Use Gaussian filter.
filter1(i,j) = exp(-dist^2/(2*d1^2));
filter2(i,j) = exp(-dist^2/(2*d0^2));
filter3(i,j) = 1.0 - filter2(i,j);
filter3(i,j) = filter1(i,j).*filter3(i,j);
end
end
% Update image with passed frequencies
filtered_image = fftI + filter3.*fftI;
subplot(2,2,3)
fftshow(filter3,'log')
title('Frequency Domain Filter Function Image')
filtered_image = ifftshift(filtered_image);
filtered_image = ifft2(filtered_image,2*nx-1,2*ny-1);
filtered_image = real(filtered_image(1:nx,1:ny));
filtered_image = uint8(filtered_image);
subplot(2,2,4)
imshow(filtered_image,[])
title('Bandpass Filtered Image')

Selanjutnya buat file untuk menampilkan hasilnya dengan nama file “fftshow.m”
function fftshow(f,type) if
nargin<2, type='log'; end
if (type =='log') fl =
log(1+abs(f)); fm =
max(fl(:));
imshow(im2uint8(fl/fm)) elseif
(type =='abs') fa=abs(f);
fm=max(fa(:));
imshow(fa/fm) else
error('TYPE must be abs or log.'); end;

selanjutnya buat file “main.m” sebagai pengolahan gambar yang akan diolah
img = imread('peppers.png'); img
= rgb2gray(img);
figure(2)
filtered_image = gaussianbpf(img,30,120);
 Output

 Analisis
2.2 Tugas

1. Lakukan percobaan tersebut dan anlisis masing-masing


percobaan tersebut dilaporan kalian.

a. Jelaskan hasil citra pada perbedaan nilai


derifatif jika diubah nilainya pada fungsi

Iblur = imgaussfilt(img, 3);

Jawab:
b. Analisis koding berikut untuk Gaussian HPF yang sudah
dipelajari

hpf = padarray(2,[2 2]) -


fspecial('gaussian' ,[5
5],2); hpf1=imfilter(gray,hpf);
 Output

Analisis:
2. Lakukan percobaan dengan menggunakan filter lain sebagai
contohnya “Butterworth” untuk LPF, HPF, dan BPF

Anda mungkin juga menyukai