Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Operasi Ketetanggaan Piksel

Presentasi serupa


Presentasi berjudul: "Operasi Ketetanggaan Piksel"— Transcript presentasi:

1 Operasi Ketetanggaan Piksel
Pengantar pengolahan Citra digital Operasi Ketetanggaan Piksel Prodi S1 teknik informatika :: Sekolah tINGGi teknologi nurul jadid

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

3 Ilustrasi

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 g(y, x)  f(y, x) 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 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 ( ) = 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 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.

18 Ilustrasi Konvolusi

19 Contoh Konvolusi g(x, y) = -1 x 62 + 0 x 60 + 1 x 60 +
citra Hasil Konvolusi g(x, y) = -1 x x x 60 + -2 x x x 78 + -1 x x x 65 = – – = 40 kernel 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 G(y-m2, x-n2) = jum; >> KERNEL = [ ; 0 4 0; ]; >> 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; ; ]; >> 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; for y=1 : tinggi_f for x=m2+1 : lebar_f-m2 jum = jum + Hbrs(p+m2+1) * T(y, x-p); G(y, x) = jum; >> GAMBAR=imread(‘gedung.tif’) >> Hkol = [ ]; >> 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

27 Perbandingan hasil penapisan

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);

29 Contoh Hasil Penapisan Kernel

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)

33 Contoh hasil penapisan kernel

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.

35 Contoh hasil penapisan kernel

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 masing- masing!

39 Operasi Geometrik >> Selanjutnya...


Download ppt "Operasi Ketetanggaan Piksel"

Presentasi serupa


Iklan oleh Google