• Tidak ada hasil yang ditemukan

BAB II TINJAUAN PUSTAKA

2.4 Interpolasi

Dalam pengolahan citra digital, interpolasi digunakan untuk menentukan nilai pada koordinat tertentu dalam citra. Untuk itu, interpolasi merupakan konsep dasar dalam perubahan ukuran citra yang membutuhkan proses penentuan nilai pada koordinat tertentu dalam citra yang mengalami perubahan ukuran. [2]

Interpolasi dapat dinyatakan dengan notasi sebagai berikut :

(2.3) dimana merupakan bobot piksel, sedangkan h adalah kernel atau jarak

interpolasi yang diberi bobot c(x,y) dengan sampel data pada piksel (xk , yl). Sebagaimana ditunjukkan pada persamaan di atas kernel interpolasi merupakan bagian utama algoritma interpolasi.

2.4.1 Interpolasi Tetangga Terdekat

Pada interpolasi tetangga terdekat (nearest neighbor interpolation), nilai keabuan titik hasil diambil dari nilai keabuan pada titik asal yang paling dekat dengan koordinat hasil perhitungan dari transformasi spasial. Untuk citra dua dimensi, tetangga terdekat dipilih di antara 6 titik asal yang saling berbatasan satu sama lain. [2]

Kelebihan dari interpolasi tetangga terdekat adalah kemudahan dan kecepatan eksekusinya. Namun pada banyak kasus, penggunaan interpolasi tetangga terdekat menghasilkan citra yang kurang memuaskan karena timbulnya efek aliasing pada bagian tepi obyek.

Replikasi piksel adalah kasus khusus dalam interpolasi tetangga terdekat.

Replikasi piksel dapat digunakan ketika kita ingin memperbesar ukuran citra dengan skala bilangan integer. Sebagai contoh, untuk memperbesar ukuran citra dua kali dari citra input, mula–mula ukuran kolom digandakan untuk melipat duakan ukuran citra pada arah vertikal. Prosedur yang sama juga dilakukan untuk memperbesar ukuran citra sebesar tiga kali, dan seterusnya.

Duplikasi dilakukan hanya untuk mencapai ukuran yang diinginkan. Penempatan nilai keabuan pada tiap piksel ditentukan berdasarkan fakta bahwa lokasi yang baru adalah dupliksai pasti dari lokasi yang sama.

2.4.2 Interpolasi Bilinier

Interpolasi bilinier adalah metode pembesaran citra untuk mengatasi efek papan atau aliasing yang dihasilkan oleh metode replikasi piksel sederhana.

Interpolasi bilinier dapat dilakukan dengan memanfaatkan empat tetangga terdekat dari suatu titik yang di rata-rata. [2]

Dibandingkan interpolasi tetangga terdekat atau replikasi piksel sedehana, citra hasil dari pembesaran citra akan tampak lebih halus (smooth), namun tentu saja membutuhkan waktu pengolahan yang lebih lama.

Jika kita memiliki satu set dari dua titik data, a dan b, seperti yang ditunjukkan di bawah ini ( a= 2, b = 3), nilai fungsi y = f (x) pada titik-titik ini dapat didefinisikan sebagai:

a=f( a)

b=f( b)

Gambar 2.6 data point y=f(x)

Asumsikan bahwa kita ingin lebih banyak data poin di antara nilai-nilai ini. Kita telah melihat apa yang terjadi dengan interpolasi tetangga terdekat, kami mendapatkan pendekatan discountinuous bergerigi. f (xi), untuk setiap datapoint,

Gambar 2.7 interpolasi linear menggunakan y=f(x)

Teknik ini dikenal sebagai interpolasi linier, dan masing-masing titik data dapat dihitung dengan menggunakan rumus sederhana y-intercept kemiringan = b . Jika kita memisahkan parameter, kita bisa memecahkan setiap nilai-y menurut:

i=f( 1)=( ) a+( ) b (2.4)

Untuk nilai W, kita dapat menyelesaikan hal ini dengan asumsi bahwa kita ingin memasukkan titik data n yaitu 0, 1,……. n antara a dan b. Jadi, untuk setiap titik data, = ( i a ) dan = ( b i). Dengan menggunakan rumus di atas, kita dapat membuat sebuah loop sederhana yang menghitung , dan i untuk i masing-masing. Silakan lihat diagram kiri bawah untuk penjelasan visual.

Sekarang, mari kita memperluas ini untuk pengolahan gambar dan langkah ke atas satu atau dua. Jadi, kami ingin upsampler gambar, seperti terlihat di bawah :

Gambar 2.9 contoh perbesaran

Untuk melakukan hal ini, seperti yang kita lakukan dengan interpolasi tetangga terdekat, kita perlu mendefinisikan transformasi antara koordinat dari gambar sumber dan akhir kita (upsampled) output gambar. Seperti yang ditunjukkan di bawah ini .

Gambar 2.10 kordinat system

Dari gambar di atas, kita dapat melihat sekarang bahwa ketika upsampling menggunakan interpolasi bilinier, kita hanya menciptakan pixel baru di gambar

, ditentukan oleh posisi relatif dari pixel baru dibandingkan dengan piksel – piksel tetangganya. Juga mencatat bahwa ini merupakan garis berat dalam dua dimensi. Jadi, secara umum, kita dapat interpolasi nilai apapun untuk menempatkan piksel dalam gambar target sebagai: [2]

Y(J,K) = (1 – W ) (1 – H) X (A,B) + (W) (1 – H) X (A + 1,B) + (1 – W) (H) X (A,B+1) +

(W) (H) X (A + 1,B+1) (2.5)

2.4.3 Interpolasi Dengan Orde Lebih Tinggi

Meskipun interpolasi bilinier menghasilkan citra kontinyu, namun tepat pada keempat koordinat tetangga tersebut, slope-nya tidak kontinyu. Hal ini terjadi karena interpolasi yang digunakan untuk menginterpolasi sebelah kanan sebuah titik akan berbeda dengan yang digunakan untuk menginterpolasi sebelah kiri. Discontinyuitas dari slope ini mengakibatkan hasil yang tidak diinginkan apabila citra hasil interpolasi akan dioperasikan lebih lanjut.

Karena keterbatasan ini, sering kali diperlukan interpolasi dengan orde yang lebih tinggi. Hal ini dapat dilakukan dengan menggunakan lebih banyak titik yang ada di sekitar koordinat titik asal. Contoh interpolasi dengan orde yang lebih tinggi adalah interpolasi menggunkaan fungsi cubic spline, fungsi sin(ax)/ax. Waktu proses tentu akan lebih lama karena operasi matematis yang digunakan dan titik yang dioperasikan menjadi lebih banyak. Misalnya interpolasi bikubik yang memperhitungkan hingga 16 (6 x 6) titik bertetangga dengan bobot yang bersesuaian dengan polinomial orde 3 (tidak linier). [2]

2.4.4 Interpolasi Bikubik

Cubic Convolution dapat dicari dengan menyelesaikan dalam baris per baris terlebih dahulu. Kemudian disusul dengan penyelesaian kolom per kolomnya. Berdasarkan hasil per baris yang telah diselesaikan.

2.5 Operasi Geometri

Operasi Geometri pada pengolahan citra ditujukan untuk memodifikasi koordinat piksel dalam suatu citra dengan pendekatan tertentu, tetapi dalam perkembangannya dimungkinkan juga memodifikasi nilai skala keabuan. Operasi geometri berhubungan dengan perubahan bentuk geometri citra, antara lain: pencerminan (flipping), rotasi/ pemutaran (rotating), pemotongan (cropping), penskalaan (scaling/ zooming). [3]

2.5.1 Pencerminan (flipping)

Operasi pencerminan merupakan salah satu operasi geometri yang paling sederhana.

 Efek pencerminan

 horisontal : pencerminan pada sumbu Y  vertikal : pencerminan pada sumbu X

 kombinasi : pencerminan pada sumbu Y dan X  Formula/ rumus yang digunakan

Pencerminan Horizontal : x’ = w – 1 – x

Pencerminan Kombinasi : x’ = w – 1 – x

y’ = h – 1 – y (2.8)

2.5.2 Rotasi/ Pemutaran (rotating)

Operasi rotasi dengan memutar koordinat yang akan dibahas adalah rotasi putaran (90°) dan putaran (180°).

2.5.2.1Rotasi searah jarum jam (CW/clock wise)

1. Rotasi putaran (90°) searah jarum jam (CW/clock wise) w’ = h dan h’ = w > pertukaran ukuran lebar & tinggi citra

x’ = w’ – 1 – y (2.9)

y’ = x (2.10)

2. Rotasi putaran (180°) searah jarum jam (CW/clock wise)

x’ = w’ – 1 – x (2.11) y’ = h’ – 1 – y (2.12)

2.5.2.2Rotasi berlawanan dengan arah jarum jam (CCW/counter clock wise)

Rotasi Bebas Dengan asumsi berlawanan arah jarum jam (CCW/counter clock wise)

x’ = x cos(θ) + y sin(θ) (2.13)

y’ = -x sin(θ) + y cos(θ) (2.14)

w’ = |w cos(θ)| + |h sin(θ)| (2.15)

2.5.3 Pemotongan (cropping)

Pemotongan (cropping) : Adalah pengolahan citra dengan kegiatan memotong satu bagian dari citra.

Rumus yang digunakan :

x’ = x – xL untuk x = xL sampai xR (2.17) y’ = y – yT untuk y = yT sampai yB (2.18) (xL,yT) dan (xR,yB) adalah koordinat titik pojok kiri atas dan pojok kanan bawah citra yang akan di-crop, ukuran citra menjadi :

w’ = xR – xL (2.19)

h’ = yB –YT (2.20)

Gambar 2.11 Mekanisme Cropping.

2.5.4 Penskalaan (scaling/ zooming)

Operasi penskalaan (scaling) dimaksudkan untuk memperbesar (zoom-in) atau memperkecil (zoom-out) citra.

Nilai skala >1, memperbesar citra asli Nilai skala <1, memperkecil citra asli Rumus yang dipakai :

Keterangan :

Sh = faktor skala horizontal Sv = faktor skala vertikal

Ukuran citra juga berubah menjadi :

(2.23) (2.24) Operasi zoom in dengan faktor 2 (Sh=Sv=2) : menyalin setiap piksel sebanyak 6 kali, jadi citra 2x2 piksel menjadi citra 6x6 piksel.

2.6 Transformasi Spasial

Terdiri atas transformasi maju dan transformasi mundur.

a. Transformasi maju

Transformasi Maju memetakan koordinat titik citra asal ke koordinat titik-titik citra hasil.

x'= f x (x, y ) (2.25)

y'= f y (x, y ) (2.26)

K o ( x ' , y ' ) = K i ( x , y ) (2.27) Keterangan :

(x,y) → koordinat asal (x’,y’) → koordinat hasil

fx , fy → fungsi transformasi spasial Ciri – ciri transformasi maju :

 bila koordinat hasil pemetaan jatuh di antara 6 buah titik hasil

 nilai keabuan titik asal didistribusikan ke keempat titik pada citra hasil

 dengan aturan interpolasi tertentu

Gambar 2.12. Transformasi Maju.  cara ini sering disebut pixel carry-over

b. Transformasi Mundur/Balik

Transformasi Mundur/Balik memetakan koordinat titik-titik citra hasil ke koordinat titik-titik citra asal

x = f x '(x', y' ) (2.28)

y = f y '(x' , y' ) (2.29) keterangan :

(x,y) → koordinat asal (x’,y’) → koordinat hasil

f’x , f’y → invers fungsi transformasi spasial Ciri – cirri Transformasi mundur/balik :

 nilai x dan y hasil transformasi balik tidak bulat

 jika hasil pemetaan balik jatuh di antara 6 titik

 maka keabuan titik hasil dihitung berdasarkan nilai keabuan keempat titik tadi berdasarkan aturan interpolasi tertentu

Gambar 2.13. Transformasi Mundur/ Balik.  Cara ini sering disebut pixel filling

Dokumen terkait