SlideShare a Scribd company logo
1 of 39
Operasi Ketetanggaan Piksel
PRODI S1 TEKNIK INFORMATIKA :: SEKOLAH TINGGI TEKNOLOGI NURUL JADID
PENGANTAR
PENGOLAHAN
CITRA
DIGITAL
Outline
 Pengertian operasi ketetanggaan piksel
 Pengertian ketetanggaan piksel
 Aplikasi ketetanggaan piksel
 Konvolusi
 Frekuensi
 Filter lolos-rendah
 Filter lolos-tinggi
 Filter high-boost
 Efek emboss
Ilustrasi
Definisi
 Sdalah operasi pengolahan citra untuk mendapatkan nilai
suatu piksel yang melibatkan nilai piksel-piksel tetangganya.
 Setiap piksel pada umumnya tidak berdiri sendiri, melainkan
terkait dengan piksel tetangga, karena merupakan bagian
suatu objek tertentu di dalam citra.
 Sifat inilah yang kemudian mendasari timbulnya algoritma
untuk mengolah setiap piksel citra melalui piksel-piksel
tetangga.
Jenis Ketetanggaan Piksel
𝑇1 = 𝑏, 𝑘 + 1 , 𝑇2 = 𝑏 − 1, 𝑘 ,
𝑇3 = 𝑏, 𝑘 − 1 , 𝑇4 = 𝑏 + 1, 𝑘
𝑇1 = 𝑏, 𝑘 + 1 , 𝑇2 = 𝑏 − 1, 𝑘 − 1 ,
𝑇3 = 𝑏, 𝑘 − 1 , 𝑇4 = 𝑏 − 1, 𝑘 − 1
𝑇5 = 𝑏, 𝑘 − 1 , 𝑇6 = 𝑏 + 1, 𝑘 − 1 ,
𝑇7 = 𝑏 + 1, 𝑘 − 1 , 𝑇8 = 𝑏 + 1, 𝑘 + 1
Aplikasi Ketetanggaan Piksel pada Filter
 Sebagai filter atau tapis, operasi ketetanggaan piksel
berfungsi untuk menyaring atau paling tidak mengurangi
gangguan atau penyimpangan pada citra
 Jenis ketetanggaan:
 filter batas
 filter pererataan
 filter median
Filter Batas (1) : Algoritma
ALGORITMA 4.1 – Menghitung piksel dengan filter batas
Masukan:
f(y, x) : Piksel pada posisi (y, x)
Keluaran:
g(y, x) : Nilai intensitas untuk piksel pada citra g pada posisi (y, x)
1. Carilah nilai intensitas terkecil pada tetangga f(y, x)
dengan menggunakan 8-ketetanggan dan simpan pada minInt.
2. Carilah nilai intensitas terbesar pada tetangga f(y, x)
dengan menggunakan 8-ketetanggan dan simpan pada maksInt.
3. IF f(y, x) < minInt
g(y, x)  minInt
ELSE
IF f(y. x) > maksInt
g(y, x)  maksInt
ELSE
g(y, x)  f(y, x)
END-IF
END-IF
Filter Batas (2) : Ilustrasi
ANALISIS :
 minInt = minimum(5, 7, 7, 5, 4, 6, 7, 8) =
4;
 maksInt = maksimum(5, 7, 7, 5, 4, 6, 7, 8)
= 8;
 mengingat f(y, x) bernilai 9 dan lebih
besar daripada 8 (maksInt) maka g(y, x)
bernilai 8;
 seandainya f(y, x) pada keadaan di atas
bernilai 2 (bukan 9), g(y,x) akan bernilai
4.
Filter Batas (3) : Implementasi Gambar
Citra mobil dengan derau (kiri) dan setelah difilter (kanan) Citra boneka dengan derau (kiri) dan setelah difilter (kanan)
Filter Pererataan (1) : Overview
 Nilai didapatkan dengan rumus
𝑔 𝑦, 𝑥 =
1
9
𝑝=−1
1
𝑞=−1
1
𝑓(𝑦 + 𝑝, 𝑥 + 𝑞)
 Secara prinsip, hasil nilai pererataan diperoleh dari nilai rerata
piksel dan tetangganya
Filter Pererataan (2) : Ilustrasi
Nilai pada f(y, x) adalah 68
Nilai rerata pengganti untuk g(y, x) dihitung dengan
cara seperti berikut:
g(y, x) = 1/9 x (65+50+55+76+68+60+60+60+62)
= 61,77 ≅ 𝟔𝟐
Jadi, nilai 68 pada f(y, x) diubah menjadi 62 pada g(y,
x).
Filter Pererataan (3) : Implementasi Gambar
Filter Median (1) : Overview
 Nilai yang lebih baik digunakan untuk suatu piksel ditentukan
oleh nilai median dari setiap piksel dan kedelapan piksel
tetangga pada 8-ketetanggaan.
 Filter ini dapat dipakai untuk menghilangkan derau bintik-
bintik.
Filter Median (2) : Ilustrasi
Nilai pada f(y, x) adalah 10
Nilai median didapatkan dengan mengurutkan
seluruh nilai, kemudian diambil nilai tengah
10 10 10 10 12 12 12 12 13
Jadi, nilai 10 pada f(y, x) diubah menjadi 12 pada g(y,
x).
Filter Median (3) : Implementasi Gambar
Konvolusi (cadar/ cadar konvolusi, /cadar spasial)
 Proses untuk memperoleh suatu piksel
didasarkan pada nilai piksel itu sendiri dan
tetangganya, dengan melibatkan suatu
matriks yang disebut kernel yang
merepresentasikan pembobotan.
 Wujud kernel umumnya bujur sangkar,
tetapi dapat pula berbentuk persegi
panjang.
Proses Konvolusi
 Menumpangkan suatu jendela (kernel) yang berisi angka-
angka pengali pada setiap piksel yang ditimpali.
 Kemudian, nilai rerata diambil dari hasil-hasil kali tersebut.
 Khusus bila angka-angka pengali tersebut semua adalah 1,
hasil yang didapat sama saja dengan filter pererataan.
 Pada pelaksanaan konvolusi, kernel digeser sepanjang baris
dan kolom dalam citra sehingga diperoleh nilai yang baru
pada citra keluaran.
Ilustrasi Konvolusi
Contoh Konvolusi
kernel
citra
g(x, y) = -1 x 62 + 0 x 60 + 1 x 60 +
-2 x 60 + 0 x 68 + 2 x 78 +
-1 x 55 + 0 x 50 + 1 x 65
= -62 + 0 + 60 – 120 + 0 + 152 – 55 + 0 + 65
= 40
Hasil
Konvolusi
Nilai 68 pada citra akan diganti dengan 40
Fungsi Konvolusi & Implementasi
function [G] = konvolusi(F, H)
% KONVOLUSI Melakukan konvolusi kernel H dengan citra F
% H harus mempunyai tinggi dan lebar ganjil
% Hasil: citra G
[tinggi_f, lebar_f] = size(F);
[tinggi_h, lebar_h] = size(H);
m2 = floor(tinggi_h/2);
n2 = floor(lebar_h/2);
F2=double(F);
for y=m2+1 : tinggi_f-m2
for x=n2+1 : lebar_f-n2
% Pelaksanaan konvolusi F(baris, kolom)
jum = 0;
for p=-m2 : m2
for q=-n2 : n2
jum = jum + H(p+m2+1,q+n2+1) * ...
F2(y-p, x-q);
end
end
G(y-m2, x-n2) = jum;
end
end
>> KERNEL = [-1 0 -1; 0 4 0; -1 0 -1];
>> GAMBAR = imread('gedung.tif');
>> K1=konvolusi(GAMBAR,KERNEL);
>> K2=uint8(K1);
Problem Konvolusi
 Abaikan piksel pada bagian tepi
 Buat baris tambahan pada bagian tepi
(baris dan kolom baru diisi dengan nilai 0)
 Ambil bagian yang tidak punya pasangan
dengan bagian lain dari citra
Mempercepat Komputasi Konvolusi
 Komputasi pada konvolusi dapat menjadi
lama jika ukuran kernel membesar.
 Untuk kernel dengan ukuran n x n, proses
konvolusi akan dilakukan n x n kali.
 Jika dinyatakan dengan ukuran Big O,
prosesnya memerlukan O(n2).
Memecah matrik kernel menjadi
dua buah vektor
𝒉 = 𝒉𝒌 𝑥 𝒉𝒃
h = kernel
hk = vektor kolom
hb = vektor baris
Memecah matriks kernel dalam vektor
 Cek matriks kernel dengan rank. Jika
hasilnya 1 kalau matriks dapat
didekomposisi menjadi dua buah vektor.
 Dekomposisi matriks kernel dengan fungsi
svd
CONTOH
 >> H = [-1 0 1; -2 0 2; -1 0 1];
 >> rank(H);  ans = 1
{bisa jadi matriks}
 >> [U,S,V]=svd(H);
 >> hkol = U(:,1) * sqrt(S(1));
{menghasilkan vektor kolom};
 >> hbrs = conj(V(:,1)) * sqrt(S(1));
{menghasilkan vektor baris}
 >> H1=hkol*hbrs;
Implementasi Konvolusi Vektor
function [G] = konvolusi3(F, Hkol, Hbrs)
[tinggi_f, lebar_f] = size(F);
[tinggi_h, lebar_h] = size(Hbrs);
m2 = floor(lebar_h/2);
F2=double(F);
T = F2;
for y=m2+1 : tinggi_f-m2
for x=1 : lebar_f
jum = 0;
for p=-m2 : m2
jum = jum + Hkol(p+m2+1) * F2(y-p, x);
end
T(y, x) = jum;
end
end
for y=1 : tinggi_f
for x=m2+1 : lebar_f-m2
jum = 0;
for p=-m2 : m2
jum = jum + Hbrs(p+m2+1) * T(y, x-p);
end
G(y, x) = jum;
end
end
>> GAMBAR=imread(‘gedung.tif’)
>> Hkol = [-1 -2 -1];
>> Hbrs = [1 0 -1];
>> K=konvolusi3(GAMBAR, Hkol, Hbrs);
>> K2=uint8(K);
>> imshow(K2);
Frekuensi Spasial
 Frekuensi spasial pada citra menunjukkan
seberapa sering suatu perubahan aras
keabuan terjadi dari suatu posisi ke posisi
berikutnya
 Ilustrasi di samping
 (a) perubahan aras keabuan terjadi sekali
saja
 (b) terlihat bahwa perubahan aras keabuan
sering terjadi
Filter Lolos-Rendah
 Filter lolos-bawah (low-pass filter) adalah
filter yang mempunyai sifat dapat
meloloskan yang berfrekuensi rendah dan
menghilangkan yang berfrekuensi tinggi.
 Efek filter ini membuat perubahan aras
keabuan menjadi lebih lembut.
 Filter ini berguna untuk menghaluskan
derau atau untuk kepentingan interpolasi
tepi objek dalam citra.
 Tidak menggunakan konvolusi
(menggunakan filter median)
 Menggunakan Konvolusi dengan kernel
tertentu
Perbandingan hasil penapisan
Kernel konvolusi Filter Lolos-Rendah
function [G] = tapis(berkas, H)
% TAPIS Menerapkan filter H dengan citra F
% H harus mempunyai tinggi dan lebar ganjil
% Hasil: citra G
F = imread(berkas);
K = konvolusi(F, H);
G = uint8(K);
figure(1); imshow(F);
figure(2); imshow(G);
Filter lolos rendah dengan Kernel #2
>> H = [1 1 1; 1 1 1; 1 1 1] / 9;
>> tapis('mobil.tif', H);
Contoh Hasil Penapisan Kernel
Filter Lolos Tinggi
 Filter lolos-tinggi adalah filter yang ditujukan
untuk melewatkan frekuensi tinggi dan
menghalangi yang berfrekuensi rendah.
 Hal ini biasa dipakai untuk mendapatkan tepi
objek dalam citra atau menajamkan citra.
Kernel Filter Lolos Tinggi
 Filter lolos-tinggi mempunyai sifat yaitu
jumlah seluruh koefisien adalah nol.
 Apabila dikenakan pada area dengan
perubahan aras keabuan yang lambat
(frekuensi rendah), hasil berupa nol atau
nilai yang sangat kecil.
 Apabila dikenakan pada area yang
perubahan aras keabuannya cepat
(frekuensi tinggi), hasil konvolusi bernilai
sangat besar.
Perbandingan hasil penapisan
 Hasil gambar (a) hanya pada perbatasan
antara perubahan aras keabuan yang
ditonjolkan (baris berisi 88) dan nilai yang
lain bernilai rendah (nol). Dengan demikian,
akan muncul garis putih.
 Hasil Gambar (b) menunjukkan bahwa citra
yang berfrekuensi tinggi hampir tidak
mengalami perubahan, kecuali nilainya saja
yang berefek pada penajaman perbedaan
aras keabuan (nilai 150 menjadi 176 dan nilai
40 menjadi 0)
Contoh hasil penapisan kernel
Filter High-Boost
 Dapat digunakan untuk menajamkan citra
melalui konvolusi.
 Kernel yang dapat dipakai adalah kernel
filter lolos-tinggi dengan nilai di pusat diisi
dengan nilai yang lebih besar daripada
nilai pada posisi tersebut untuk filter lolos-
tinggi.
Contoh hasil penapisan kernel
Efek Emboss
 Efek ini akan penebalan garis ke arah
tertentu
 Nilai dan arah penebalan tergantung pada
nilai kernel yang digunakan dalam
penapisan gambar
 Nilai negatif dan positif yang berpasangan
menentukan perubahan kecerahan yang
berefek pada penggambaran garis gelap
atau terang
Beberapa contoh kernel & hasil penapisan
Tugas
 Lakukan praktikum untuk menguji semua teori dalam materi
pertemuan ini
 Rekam proses praktikum menggunakan desktop capturing!
 Upload ke youtube menggunakan email masing-masing!
Operasi Geometrik
>> Selanjutnya...

More Related Content

Similar to Operasi_Ketetanggaan_Piksel.pptx

limit fungsi
limit fungsilimit fungsi
limit fungsi
mfebri26
 
INTEGRAL menggunakan MAPLE
INTEGRAL menggunakan MAPLEINTEGRAL menggunakan MAPLE
INTEGRAL menggunakan MAPLE
Dyas Arientiyya
 
Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2
Dayga_Hatsu
 

Similar to Operasi_Ketetanggaan_Piksel.pptx (20)

Fungsi dan grafik
Fungsi dan grafikFungsi dan grafik
Fungsi dan grafik
 
Pertemuan 5 integral lipat dua
Pertemuan 5   integral lipat duaPertemuan 5   integral lipat dua
Pertemuan 5 integral lipat dua
 
Pengolahan Citra Diskusi Pertemuan Ke-6.pdf
Pengolahan Citra Diskusi Pertemuan Ke-6.pdfPengolahan Citra Diskusi Pertemuan Ke-6.pdf
Pengolahan Citra Diskusi Pertemuan Ke-6.pdf
 
KALKULUS 1
KALKULUS 1KALKULUS 1
KALKULUS 1
 
Galeri PythonTeX
Galeri PythonTeXGaleri PythonTeX
Galeri PythonTeX
 
turunan
turunanturunan
turunan
 
limit fungsi
limit fungsilimit fungsi
limit fungsi
 
Integral
IntegralIntegral
Integral
 
FUNGSI DAN GRAFIK
FUNGSI DAN GRAFIKFUNGSI DAN GRAFIK
FUNGSI DAN GRAFIK
 
INTEGRAL menggunakan MAPLE
INTEGRAL menggunakan MAPLEINTEGRAL menggunakan MAPLE
INTEGRAL menggunakan MAPLE
 
PENERAPAN DIFFERENSIASI
PENERAPAN DIFFERENSIASIPENERAPAN DIFFERENSIASI
PENERAPAN DIFFERENSIASI
 
Aplikasi integral-luas-volume
Aplikasi integral-luas-volumeAplikasi integral-luas-volume
Aplikasi integral-luas-volume
 
Transformasi citra
Transformasi citraTransformasi citra
Transformasi citra
 
Diferensial
DiferensialDiferensial
Diferensial
 
fungsi dan grafiknya
fungsi dan grafiknyafungsi dan grafiknya
fungsi dan grafiknya
 
Bab 07b
Bab 07bBab 07b
Bab 07b
 
Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2
 
Kalkulus 1
Kalkulus 1Kalkulus 1
Kalkulus 1
 
Bab 05
Bab 05Bab 05
Bab 05
 
Integral Tak Tentu
Integral Tak TentuIntegral Tak Tentu
Integral Tak Tentu
 

Recently uploaded

Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
ssupi412
 
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
Obat Aborsi Bandung ( Ampuh ) 082223109953 Obat Telat Bulan Di Bandung
 
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
ssupi412
 
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
ssupi412
 
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
mumtaza6
 
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan KonsultasiJual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
ssupi412
 
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di MedanObat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
 
PPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptxPPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptx
firbadian97
 

Recently uploaded (11)

Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
Jual Obat Cytotec Di Palembang 0823.2222.3014 Pusat Pelancar Haid Ampuh Berga...
 
5e6a9e119c2fedec04b90d50fcb7700901916.pdf
5e6a9e119c2fedec04b90d50fcb7700901916.pdf5e6a9e119c2fedec04b90d50fcb7700901916.pdf
5e6a9e119c2fedec04b90d50fcb7700901916.pdf
 
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
Obat Aborsi Bandung ( Ampuh ) 082223109953 Jual Cytotec Asli Obat Telat Bulan...
 
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sumba Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
 
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan KonsultasiJual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Di Sinjai Ori 👙082122229359👙Pusat Peluntur Kandungan Konsultasi
 
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
283649986-MATERI-RISIKO-DAN-TK-PENGEMBALIAN-ppt.ppt
 
Persyaratan Adminduk - Disdukcapil Kab. Kebumen
Persyaratan Adminduk - Disdukcapil Kab. KebumenPersyaratan Adminduk - Disdukcapil Kab. Kebumen
Persyaratan Adminduk - Disdukcapil Kab. Kebumen
 
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan KonsultasiJual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
Jual Cytotec Blora 👗082322223014👗Pusat Peluntur Kandungan Konsultasi
 
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di MedanObat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
Obat Aborsi Medan 082223109953 Klinik Jual Obat Aborsi Di Medan
 
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di SemarangWA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
WA 0821-2636-0569, Sekolah Pra Nikah Janda Duda Di Semarang
 
PPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptxPPT usaha Air Minum masak untuk jualan- Umum fix.pptx
PPT usaha Air Minum masak untuk jualan- Umum fix.pptx
 

Operasi_Ketetanggaan_Piksel.pptx

  • 1. Operasi Ketetanggaan Piksel PRODI S1 TEKNIK INFORMATIKA :: SEKOLAH TINGGI TEKNOLOGI NURUL JADID PENGANTAR PENGOLAHAN CITRA DIGITAL
  • 2. Outline  Pengertian operasi ketetanggaan piksel  Pengertian ketetanggaan piksel  Aplikasi ketetanggaan piksel  Konvolusi  Frekuensi  Filter lolos-rendah  Filter lolos-tinggi  Filter high-boost  Efek emboss
  • 4. Definisi  Sdalah operasi pengolahan citra untuk mendapatkan nilai suatu piksel yang melibatkan nilai piksel-piksel tetangganya.  Setiap piksel pada umumnya tidak berdiri sendiri, melainkan terkait dengan piksel tetangga, karena merupakan bagian suatu objek tertentu di dalam citra.  Sifat inilah yang kemudian mendasari timbulnya algoritma untuk mengolah setiap piksel citra melalui piksel-piksel tetangga.
  • 5. Jenis Ketetanggaan Piksel 𝑇1 = 𝑏, 𝑘 + 1 , 𝑇2 = 𝑏 − 1, 𝑘 , 𝑇3 = 𝑏, 𝑘 − 1 , 𝑇4 = 𝑏 + 1, 𝑘 𝑇1 = 𝑏, 𝑘 + 1 , 𝑇2 = 𝑏 − 1, 𝑘 − 1 , 𝑇3 = 𝑏, 𝑘 − 1 , 𝑇4 = 𝑏 − 1, 𝑘 − 1 𝑇5 = 𝑏, 𝑘 − 1 , 𝑇6 = 𝑏 + 1, 𝑘 − 1 , 𝑇7 = 𝑏 + 1, 𝑘 − 1 , 𝑇8 = 𝑏 + 1, 𝑘 + 1
  • 6. Aplikasi Ketetanggaan Piksel pada Filter  Sebagai filter atau tapis, operasi ketetanggaan piksel berfungsi untuk menyaring atau paling tidak mengurangi gangguan atau penyimpangan pada citra  Jenis ketetanggaan:  filter batas  filter pererataan  filter median
  • 7. Filter Batas (1) : Algoritma ALGORITMA 4.1 – Menghitung piksel dengan filter batas Masukan: f(y, x) : Piksel pada posisi (y, x) Keluaran: g(y, x) : Nilai intensitas untuk piksel pada citra g pada posisi (y, x) 1. Carilah nilai intensitas terkecil pada tetangga f(y, x) dengan menggunakan 8-ketetanggan dan simpan pada minInt. 2. Carilah nilai intensitas terbesar pada tetangga f(y, x) dengan menggunakan 8-ketetanggan dan simpan pada maksInt. 3. IF f(y, x) < minInt g(y, x)  minInt ELSE IF f(y. x) > maksInt g(y, x)  maksInt ELSE g(y, x)  f(y, x) END-IF END-IF
  • 8. Filter Batas (2) : Ilustrasi ANALISIS :  minInt = minimum(5, 7, 7, 5, 4, 6, 7, 8) = 4;  maksInt = maksimum(5, 7, 7, 5, 4, 6, 7, 8) = 8;  mengingat f(y, x) bernilai 9 dan lebih besar daripada 8 (maksInt) maka g(y, x) bernilai 8;  seandainya f(y, x) pada keadaan di atas bernilai 2 (bukan 9), g(y,x) akan bernilai 4.
  • 9. Filter Batas (3) : Implementasi Gambar Citra mobil dengan derau (kiri) dan setelah difilter (kanan) Citra boneka dengan derau (kiri) dan setelah difilter (kanan)
  • 10. Filter Pererataan (1) : Overview  Nilai didapatkan dengan rumus 𝑔 𝑦, 𝑥 = 1 9 𝑝=−1 1 𝑞=−1 1 𝑓(𝑦 + 𝑝, 𝑥 + 𝑞)  Secara prinsip, hasil nilai pererataan diperoleh dari nilai rerata piksel dan tetangganya
  • 11. Filter Pererataan (2) : Ilustrasi Nilai pada f(y, x) adalah 68 Nilai rerata pengganti untuk g(y, x) dihitung dengan cara seperti berikut: g(y, x) = 1/9 x (65+50+55+76+68+60+60+60+62) = 61,77 ≅ 𝟔𝟐 Jadi, nilai 68 pada f(y, x) diubah menjadi 62 pada g(y, x).
  • 12. Filter Pererataan (3) : Implementasi Gambar
  • 13. Filter Median (1) : Overview  Nilai yang lebih baik digunakan untuk suatu piksel ditentukan oleh nilai median dari setiap piksel dan kedelapan piksel tetangga pada 8-ketetanggaan.  Filter ini dapat dipakai untuk menghilangkan derau bintik- bintik.
  • 14. Filter Median (2) : Ilustrasi Nilai pada f(y, x) adalah 10 Nilai median didapatkan dengan mengurutkan seluruh nilai, kemudian diambil nilai tengah 10 10 10 10 12 12 12 12 13 Jadi, nilai 10 pada f(y, x) diubah menjadi 12 pada g(y, x).
  • 15. Filter Median (3) : Implementasi Gambar
  • 16. Konvolusi (cadar/ cadar konvolusi, /cadar spasial)  Proses untuk memperoleh suatu piksel didasarkan pada nilai piksel itu sendiri dan tetangganya, dengan melibatkan suatu matriks yang disebut kernel yang merepresentasikan pembobotan.  Wujud kernel umumnya bujur sangkar, tetapi dapat pula berbentuk persegi panjang.
  • 17. Proses Konvolusi  Menumpangkan suatu jendela (kernel) yang berisi angka- angka pengali pada setiap piksel yang ditimpali.  Kemudian, nilai rerata diambil dari hasil-hasil kali tersebut.  Khusus bila angka-angka pengali tersebut semua adalah 1, hasil yang didapat sama saja dengan filter pererataan.  Pada pelaksanaan konvolusi, kernel digeser sepanjang baris dan kolom dalam citra sehingga diperoleh nilai yang baru pada citra keluaran.
  • 19. Contoh Konvolusi kernel citra g(x, y) = -1 x 62 + 0 x 60 + 1 x 60 + -2 x 60 + 0 x 68 + 2 x 78 + -1 x 55 + 0 x 50 + 1 x 65 = -62 + 0 + 60 – 120 + 0 + 152 – 55 + 0 + 65 = 40 Hasil Konvolusi Nilai 68 pada citra akan diganti dengan 40
  • 20. Fungsi Konvolusi & Implementasi function [G] = konvolusi(F, H) % KONVOLUSI Melakukan konvolusi kernel H dengan citra F % H harus mempunyai tinggi dan lebar ganjil % Hasil: citra G [tinggi_f, lebar_f] = size(F); [tinggi_h, lebar_h] = size(H); m2 = floor(tinggi_h/2); n2 = floor(lebar_h/2); F2=double(F); for y=m2+1 : tinggi_f-m2 for x=n2+1 : lebar_f-n2 % Pelaksanaan konvolusi F(baris, kolom) jum = 0; for p=-m2 : m2 for q=-n2 : n2 jum = jum + H(p+m2+1,q+n2+1) * ... F2(y-p, x-q); end end G(y-m2, x-n2) = jum; end end >> KERNEL = [-1 0 -1; 0 4 0; -1 0 -1]; >> GAMBAR = imread('gedung.tif'); >> K1=konvolusi(GAMBAR,KERNEL); >> K2=uint8(K1);
  • 21. Problem Konvolusi  Abaikan piksel pada bagian tepi  Buat baris tambahan pada bagian tepi (baris dan kolom baru diisi dengan nilai 0)  Ambil bagian yang tidak punya pasangan dengan bagian lain dari citra
  • 22. Mempercepat Komputasi Konvolusi  Komputasi pada konvolusi dapat menjadi lama jika ukuran kernel membesar.  Untuk kernel dengan ukuran n x n, proses konvolusi akan dilakukan n x n kali.  Jika dinyatakan dengan ukuran Big O, prosesnya memerlukan O(n2). Memecah matrik kernel menjadi dua buah vektor 𝒉 = 𝒉𝒌 𝑥 𝒉𝒃 h = kernel hk = vektor kolom hb = vektor baris
  • 23. Memecah matriks kernel dalam vektor  Cek matriks kernel dengan rank. Jika hasilnya 1 kalau matriks dapat didekomposisi menjadi dua buah vektor.  Dekomposisi matriks kernel dengan fungsi svd CONTOH  >> H = [-1 0 1; -2 0 2; -1 0 1];  >> rank(H);  ans = 1 {bisa jadi matriks}  >> [U,S,V]=svd(H);  >> hkol = U(:,1) * sqrt(S(1)); {menghasilkan vektor kolom};  >> hbrs = conj(V(:,1)) * sqrt(S(1)); {menghasilkan vektor baris}  >> H1=hkol*hbrs;
  • 24. Implementasi Konvolusi Vektor function [G] = konvolusi3(F, Hkol, Hbrs) [tinggi_f, lebar_f] = size(F); [tinggi_h, lebar_h] = size(Hbrs); m2 = floor(lebar_h/2); F2=double(F); T = F2; for y=m2+1 : tinggi_f-m2 for x=1 : lebar_f jum = 0; for p=-m2 : m2 jum = jum + Hkol(p+m2+1) * F2(y-p, x); end T(y, x) = jum; end end for y=1 : tinggi_f for x=m2+1 : lebar_f-m2 jum = 0; for p=-m2 : m2 jum = jum + Hbrs(p+m2+1) * T(y, x-p); end G(y, x) = jum; end end >> GAMBAR=imread(‘gedung.tif’) >> Hkol = [-1 -2 -1]; >> Hbrs = [1 0 -1]; >> K=konvolusi3(GAMBAR, Hkol, Hbrs); >> K2=uint8(K); >> imshow(K2);
  • 25. Frekuensi Spasial  Frekuensi spasial pada citra menunjukkan seberapa sering suatu perubahan aras keabuan terjadi dari suatu posisi ke posisi berikutnya  Ilustrasi di samping  (a) perubahan aras keabuan terjadi sekali saja  (b) terlihat bahwa perubahan aras keabuan sering terjadi
  • 26. Filter Lolos-Rendah  Filter lolos-bawah (low-pass filter) adalah filter yang mempunyai sifat dapat meloloskan yang berfrekuensi rendah dan menghilangkan yang berfrekuensi tinggi.  Efek filter ini membuat perubahan aras keabuan menjadi lebih lembut.  Filter ini berguna untuk menghaluskan derau atau untuk kepentingan interpolasi tepi objek dalam citra.  Tidak menggunakan konvolusi (menggunakan filter median)  Menggunakan Konvolusi dengan kernel tertentu
  • 28. Kernel konvolusi Filter Lolos-Rendah function [G] = tapis(berkas, H) % TAPIS Menerapkan filter H dengan citra F % H harus mempunyai tinggi dan lebar ganjil % Hasil: citra G F = imread(berkas); K = konvolusi(F, H); G = uint8(K); figure(1); imshow(F); figure(2); imshow(G); Filter lolos rendah dengan Kernel #2 >> H = [1 1 1; 1 1 1; 1 1 1] / 9; >> tapis('mobil.tif', H);
  • 30. Filter Lolos Tinggi  Filter lolos-tinggi adalah filter yang ditujukan untuk melewatkan frekuensi tinggi dan menghalangi yang berfrekuensi rendah.  Hal ini biasa dipakai untuk mendapatkan tepi objek dalam citra atau menajamkan citra.
  • 31. Kernel Filter Lolos Tinggi  Filter lolos-tinggi mempunyai sifat yaitu jumlah seluruh koefisien adalah nol.  Apabila dikenakan pada area dengan perubahan aras keabuan yang lambat (frekuensi rendah), hasil berupa nol atau nilai yang sangat kecil.  Apabila dikenakan pada area yang perubahan aras keabuannya cepat (frekuensi tinggi), hasil konvolusi bernilai sangat besar.
  • 32. Perbandingan hasil penapisan  Hasil gambar (a) hanya pada perbatasan antara perubahan aras keabuan yang ditonjolkan (baris berisi 88) dan nilai yang lain bernilai rendah (nol). Dengan demikian, akan muncul garis putih.  Hasil Gambar (b) menunjukkan bahwa citra yang berfrekuensi tinggi hampir tidak mengalami perubahan, kecuali nilainya saja yang berefek pada penajaman perbedaan aras keabuan (nilai 150 menjadi 176 dan nilai 40 menjadi 0)
  • 34. Filter High-Boost  Dapat digunakan untuk menajamkan citra melalui konvolusi.  Kernel yang dapat dipakai adalah kernel filter lolos-tinggi dengan nilai di pusat diisi dengan nilai yang lebih besar daripada nilai pada posisi tersebut untuk filter lolos- tinggi.
  • 36. Efek Emboss  Efek ini akan penebalan garis ke arah tertentu  Nilai dan arah penebalan tergantung pada nilai kernel yang digunakan dalam penapisan gambar  Nilai negatif dan positif yang berpasangan menentukan perubahan kecerahan yang berefek pada penggambaran garis gelap atau terang
  • 37. Beberapa contoh kernel & hasil penapisan
  • 38. Tugas  Lakukan praktikum untuk menguji semua teori dalam materi pertemuan ini  Rekam proses praktikum menggunakan desktop capturing!  Upload ke youtube menggunakan email masing-masing!