Pengolahan Citra Digital 2010/2011 Kuliah 4 Penapisan Spasial Linier II Ditranslasikan dari slide Dr. Ioannis Ivrissimtzis
Outline Boundary Sifting Aplikasi: zooming
Boundary Amati proses konvolusi suatu matriks dengan suatu mask
Boundary Di dekat mask-nya tidak cocok dengan ciitra. Bagaimana mengatasi ini? ? ? ? ? ? ? ? ? 0.4 0.0 0.6 0.3 0.2 ? ? 0.8 0.3 0.7 0.2 0.7 ? ? 0.5 0.4 0.7 0.5 0.3 ? ? 0.5 0.3 0.6 0.8 0.7 ? ? 0.9 0.3 0.0 0.7 0.2 ?
Boundary Nol Solusi 1: Nilai piksel pada boundary terluar di-set bernilai nol. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.4 0.0 0.6 0.3 0.2 0.0 0.0 0.8 0.3 0.7 0.2 0.7 0.0 0.0 0.5 0.4 0.7 0.5 0.3 0.0 0.0 0.5 0.3 0.6 0.8 0.7 0.0 0.0 0.9 0.3 0.0 0.7 0.2 0.0 Boundary nol bagus digunakan pada penapisan di domain frekuensi (akan diberikan pada kuliah selanjutnya).
Boundary Nol Asumsikan jika border hitam disekeliling citra dapat menyebabkan kecacatan pada penapisan spasial linier.
Boundary Nol Penapisan 10 iterasi Citra asal Citra hasil penapisan
Pengulangan Nilai Piksel Boundary Solusi 2: Ulangi nilai piksel terluar dari citra. 0.4 0.4 0.0 0.6 0.3 0.2 0.2 0.8 0.8 0.3 0.7 0.2 0.7 0.7 0.5 0.5 0.4 0.7 0.5 0.3 0.3 0.5 0.5 0.3 0.6 0.8 0.7 0.7 0.9 0.9 0.3 0.0 0.7 0.2 0.2
Pengulangan Nilai Piksel Boundary Dengan pengulangan ini, kita dapat menghindari kecacatan akibat penapisan spasial linier. Penapisan 10 iterasi of filtering Citra asal
Citra-citra Periodik Solusi 3: Ulangi seluruh citra dengan menyusunnya sebagai tile 2D.
Citra-citra Periodik Solusi 3: Ulangi seluruh citra dengan menyususnnya sebagai tile 2D.
Citra-citra Periodik Solusi 3: Ulangi seluruh citra dengan menyususnnya sebagai tile 2D. 0.2 0.9 0.3 0.0 0.7 0.2 0.9 0.2 0.4 0.0 0.6 0.3 0.2 0.4 0.7 0.8 0.3 0.7 0.2 0.7 0.8 0.3 0.5 0.4 0.7 0.5 0.3 0.5 0.7 0.5 0.3 0.6 0.8 0.7 0.5
Boundary Pemilihan nilai piksel di luar boundary tergantung kepada: Sifat citra (sifat periodik, pola-pola) Jenis aplikasi (penapisan spasial, penapisan di domain frekuensi)
Outline Boundary Sifting Aplikasi: zooming
Sifting Amati konvolusi antara matriks A dan mask M
Sifting Citra asal Citra hasil proses 0 0 0 0 0 .. .. .. .. .. 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 .. .. ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 .. .. .. .. .. 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 .. ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 .. .. .. .. .. 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 .. .. 6 .. .. ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 .. .. 6 5 .. ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 .. .. 6 5 4 ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 .. .. 6 5 4 .. .. 3 .. .. ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 .. .. 6 5 4 .. .. 3 2 .. ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 .. .. 6 5 4 .. .. 3 2 1 ..
Sifting Citra asal Citra hasil proses 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 .. .. .. .. .. .. 9 8 7 .. .. 6 5 4 .. .. 3 2 1 .. Mask M telah tercetak pada citra, tapi dirotasi 180°. Fenomena ini dinamai sifting.
Sifting Sifting dapat menciptakan kecacatan pada citra hasil proses. Jika kita menggunakan mask yang non-simetris, kita harus merotasikan citra sebesar 180° baru kemudian kita konvolusikan. Kebanyakan mask adalah simetris, karenanya invariant terhadap rotasi 180°.
Overview Boundary Shifting Aplikasi: zooming
Region of interest (ROI) Region of interest (ROI) adalah bagian dari citra yang ingin diproses secara terpisah. Tapis spasial seringkali diaplikasikan pada ROI.
x2 zoom Algoritma zooming x2: Untuk suatu citra A sebesar nxn, buat suatu citra A‘ sebesar (2n)x(2n) sehingga : Nilai dari piksel citra A dikopikan ke piksel dari citra A' dengan koordinat x dan y –nya genap. Nilai piksel-piksel lain pada citra A' di-set bernilai nol. 2. Smooth-kan A' dengan tapis spasial linier.
x2 zoom Nilai piksel dari citra A dikopikan ke citra A' dengan koordinat x dan y nya genap. Piksel-piksel lain pada citra A' di-nol-kan. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.1 0.0 0.6 0.0 0.8 0.0 0.3 0.0 0.7 0.0 0.5 0.0 0.4 0.0 0.7 0.5 0.1 0.6 0.8 0.3 0.7 0.5 0.4 0.7
x2 zoom Nilai piksel dari citra A dikopikan ke citra A' dengan koordinat x dan y nya genap. Piksel-piksel lain pada citra A' di-nol-kan.
x2 zoom Langkah selanjutnya adalah men-smooth-kan A' dengan filter spasial linier. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.1 0.0 0.6 0.0 0.8 0.0 0.2 0.0 0.7 0.0 0.5 0.0 0.4 0.0 0.7 .. .. .. .. .. .. .. 0.5 .. .. .. ..
x2 zoom Langkah selanjutnya adalah men-smooth-kan A' dengan filter spasial linier. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.1 0.0 0.6 0.0 0.8 0.0 0.2 0.0 0.7 0.0 0.5 0.0 0.4 0.0 0.7 .. .. .. .. .. .. .. 0.5 0.3 .. .. ..
x2 zoom Langkah selanjutnya adalah men-smooth-kan A' dengan filter spasial linier. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.1 0.0 0.6 0.0 0.8 0.0 0.2 0.0 0.7 0.0 0.5 0.0 0.4 0.0 0.7 .. .. .. .. .. .. .. 0.5 0.3 0.1 .. ..
x2 zoom Langkah selanjutnya adalah men-smooth-kan A' dengan filter spasial linier. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.1 0.0 0.6 0.0 0.8 0.0 0.2 0.0 0.7 0.0 0.5 0.0 0.4 0.0 0.7 .. .. .. .. .. .. .. 0.5 0.3 0.1 0.35 ..
x2 zoom Langkah selanjutnya adalah men-smooth-kan A' dengan filter spasial linier. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.1 0.0 0.6 0.0 0.8 0.0 0.2 0.0 0.7 0.0 0.5 0.0 0.4 0.0 0.7 .. .. .. .. .. .. .. 0.5 0.3 0.1 0.35 .. .. 0.65 .. .. .. ..
x2 zoom Langkah selanjutnya adalah men-smooth-kan A' dengan filter spasial linier. 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.1 0.0 0.6 0.0 0.8 0.0 0.2 0.0 0.7 0.0 0.5 0.0 0.4 0.0 0.7 .. .. .. .. .. .. .. 0.5 0.3 0.1 0.35 .. .. 0.65 0.4 .. .. ..
x2 zoom Langkah selanjutnya adalah men-smooth-kan A' dengan filter spasial linier.
x2 zoom Algoritma zooming dengan mask Dinamakan zooming interpolasi 1 tingkat. Nilai setiap piksel pada A' adalah nilai rata-rata piksel di sekeliling A. Zooming interpolasi 1 tingkat mudah dan cepat, namun hasilnya biasanya kurang bagus.
x2 zoom Zooming interpolasi 1 tingkat dapat diimplementasikan secara langsung. Dari citra A degnan besar nxn, buat suatu citra A‘ (2n)x(2n) menggunakan aturan:
x2 zoom Implementasi zooming interpolasi 1 tingkat menggunakan penapisan spasial linier biasanya lebih bagus daripada implementasi secara langsung. Biasanya penggunaan tool umum lebih bagus; filter spasial linier punya banyak kegunaan lain. Filter spasial linier bisa sangat cepat karena didukung oleh GPU (Graphics Processing Unit).
x4 zoom Kita dapat mengulangi proses yang sama untuk memperoleh zooming sebesar x4, x8, x16, … ,.... x4 x2 x1
Metode zooming lain Metode zooming lain termasuk menggunakan zooming interpolasi menggunakan tingkat yang lebih tinggi, seperti interpolasi kubik. Asumsikan piksel citra asal berada pada permukaan kubik. Hitung nilai piksel diantara piksel-piksel sehingga nilai piksel yang baru juga berada pada permukaan kubik yang sama.
Metode zooming lain Metode zooming yang lebih canggih lagi adalah metode yang berbasis difusi non-linier. Asumsikan jika nilai piksel citra asal berhubungan dengan sifat alamiah dari, misalnya: suhu. Selesaikan persamaan differential untuk menghitung aliran panas antara piksel-piksel dan hitung nilai piksel diantaranya.
Ucapan Terima Kasih Appreciation is given to Dr. Ioannis Ivrissimtzis (Durham University, UK), for making the origin of this teaching slides available for download during 2009-2010. Slide ini adalah versi translasi dari slide ajar Dr. Ioannis Ivrissimtzis, Durham University, UK.