mkb3383 - teknik pengolahan citra transformasi...

43
MKB3383 - Teknik Pengolahan Citra Transformasi Geometri Muhammad Zidny Naf’an, M.Kom. Gasal 2015/2016

Upload: vuongque

Post on 07-Feb-2018

303 views

Category:

Documents


19 download

TRANSCRIPT

Page 1: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

MKB3383 - Teknik Pengolahan Citra Transformasi Geometri

Muhammad Zidny Naf’an, M.Kom.

Gasal 2015/2016

Page 2: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Outline

• Pengantar operasi geometrik • Penggeseran citra • Pemutaran citra • Interpolasi piksel • Zooming • Pencerminan citra • Efek ripple dan Efek twirl • Transformasi affine, Transformasi spherical dan

Transformasi bilinear

Page 3: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Pengantar Transformsi Geometri

Proses yang memanipulasi posisi spatial dari pixel

3 4 5

2 7 4

1 0 0

0 0 0

3 4 5

2 7 4

Page 4: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Pemetaan Geometrik

Pemetaan ke Depan (Forward Mapping)

Pemetaan ke Belakang (Backward Mapping)

posisi pada citra keluaran ditentukan dengan acuan pemrosesan pada citra

masukan pemrosesan dimulai dari citra

keluaran

Page 5: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Outline

• Pengantar operasi geometrik • Penggeseran citra • Pemutaran citra • Interpolasi piksel • Zooming • Pencerminan citra • Efek ripple dan Efek twirl • Transformasi affine, Transformasi spherical dan

Transformasi bilinear

Page 6: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Penggeseran Crita (Image Translation)

Rumus menggeser citra secara horizontal maupun vertikal:

𝑦𝑏𝑎𝑟𝑢 = 𝑦𝑙𝑎𝑚𝑎 + 𝑆𝑦

𝑥𝑏𝑎𝑟𝑢 = 𝑥𝑙𝑎𝑚𝑎 + 𝑆𝑥

Dengan 𝑆𝑦 adalah jarak pergeseran pada arah vertikal, dan 𝑆𝑥 adalah jarak pergeseran pada arah horizontal

Page 7: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Penggeseran Crita (Image Translation)

Contoh, diketahui 𝑆𝑦 = 0 dan 𝑆𝑥 = 1 dan citra

input: maka:

3 4 5

2 7 4

1 0 0

(𝒚𝒍𝒂𝒎𝒂, 𝒙𝒍𝒂𝒎𝒂) (𝒚𝒃𝒂𝒓𝒖, 𝒙𝒃𝒂𝒓𝒖)

(0,0) (0,1)

(0,1) (0,2)

(0,2) -

(1,0) (1,1)

(1,1) (1,2)

(1,2) -

(2,0) (2,1)

(2,1) (2,2)

(2,2) -

0 3 4

0 2 7

0 1 0

Output:

Page 8: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Penggeseran Crita (Image Translation)

Page 9: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Outline

• Pengantar operasi geometrik • Penggeseran citra • Pemutaran citra • Interpolasi piksel • Zooming • Pencerminan citra • Efek ripple dan Efek twirl • Transformasi affine, Transformasi spherical dan

Transformasi bilinear

Page 10: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Pemutaran Citra (Image Rotation)

Rumus memutar citra sebesar sudut 𝜃 berlawanan arah jarum jam:

𝑦𝑏𝑎𝑟𝑢 = 𝑦 cos 𝜃 − 𝑥 sin(𝜃) 𝑥𝑏𝑎𝑟𝑢 = 𝑥 cos 𝜃 + 𝑦 sin(𝜃)

Page 11: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Pemutaran Citra dengan Pusat (0,0)

Page 12: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Pemutaran Citra

Putarlah citra berikut dengan 𝜃 = 90

3 4 5

2 7 4

1 0 0

(𝒚𝒍𝒂𝒎𝒂, 𝒙𝒍𝒂𝒎𝒂) (𝒚𝒃𝒂𝒓𝒖, 𝒙𝒃𝒂𝒓𝒖)

(0,0) (0,0)

(0,1) (-1, 0)

(0,2) (-2,0)

(1,0) (0,1)

(1,1) (-1,1)

(1,2) (-2,1)

(2,0) (0,2)

(2,1) (-1,2)

(2,2) (-2,2)

𝑦𝑏𝑎𝑟𝑢 = 𝑦 cos 𝜃 − 𝑥 sin(𝜃) 𝑥𝑏𝑎𝑟𝑢 = 𝑥 cos 𝜃 + 𝑦 sin(𝜃)

3 2 1

0 0 0

0 0 0

Page 13: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Contoh Pemutaran Citra dengan Pemetaan ke Belakang

Page 14: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Perbandingan Hasil Pemetaan ke Belakang dan Pemetaan ke Depan

Page 15: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Outline

• Pengantar operasi geometrik • Penggeseran citra • Pemutaran citra • Interpolasi piksel • Zooming • Pencerminan citra • Efek ripple dan Efek twirl • Transformasi affine, Transformasi spherical dan

Transformasi bilinear

Page 16: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Image Zooming (Penskalaan Citra)

• Proses-proses yang melibatkan penaikan atau penurunan ukuran citra

• Teknik yang paling sederhana dalam zooming menduplikasikan nilai pixel pada arah X atau Y.

• Jika citra tidak di zoom dengan nilai yang sama, maka “aspect ratio” dari citra akan berubah.

Page 17: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Aspect Ratio

• Rasio antara jumlah titik vertikal dan horizontal untuk mendapatkan panjang yang sama di kedua arah tersebut

• menunjukkan perbandingan panjang dan lebar

AR<1

AR>1AR=1

Page 18: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Formula Image Zooming

• Jika citra semula adalah A dan citra hasil penskalaan adalah B, maka penskalaan citra dinyatakan sebagai:

B[x’][y’] = B[sx × x][ sy × y] = A[x][y]

Page 19: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Zoom in

• Resolusi tidak bertambah

• Perubahan pada besar pixelnya

– titik kecil dapat terlihat lebih besar

Zoom 3x

AR = 1

Zoom 3x

AR ≠ 1

Page 20: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Contoh algoritma zoom 2x, AR = 1

int i,j,m,n;

m=0;

n=0;

for (i=0;i<=jmlbaris-1;i++)

{

for(j=0;j<=jmlkolom-1;j++)

{

Z[m,n] = X[i,j];

Z[m,n+1] = X[i,j];

Z[m+1,n] = X[i,j];

Z[m+1,n+1] = X[i,j];

n=n+2;

}

m=m+2;

n=0;

}

Page 21: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Zoom out

• Ada informasi pada citra yang harus dihilangkan.

• Salah satu metode sederhana ambil rata-rata dari n pixel bertetangga pada X sebagai nilai dari satu pixel pada Z

– Contoh: hasil rata-ratanya 4 pixel pada X menjadi 1 pixel pada Z

Page 22: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Zoom in reversible

Zoom 2x Zoom 0.5x

Page 23: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Zoom out not reversible

Zoom 0.25x Zoom 4x

Page 24: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Contoh Zoom

Page 25: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Outline

• Pengantar operasi geometrik • Penggeseran citra • Pemutaran citra • Interpolasi piksel • Zooming • Pencerminan citra • Efek ripple dan Efek twirl • Transformasi affine, Transformasi spherical dan

Transformasi bilinear

Page 26: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Pencerminan Citra

Pencerminan Secara Horizontal

Pencerminan Secara Vertical

Page 27: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Algoritma Pencerminan Horizontal

Page 28: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Algoritma Pencerminan Vertical

Page 29: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,
Page 30: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Outline

• Pengantar operasi geometrik • Penggeseran citra • Pemutaran citra • Interpolasi piksel • Zooming • Pencerminan citra • Efek ripple dan Efek twirl • Transformasi affine, Transformasi spherical dan

Transformasi bilinear

Page 31: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Efek Ripple (Efek Riak)

• Membuat efek gelombang pada citra

• Menggunakan backward mapping

𝑥 = 𝑥′ + 𝑎𝑥 𝑠𝑖𝑛2𝜋𝑦′

𝑇𝑥

𝑦 = 𝑦′ + 𝑎𝑦 𝑠𝑖𝑛2𝜋𝑥′

𝑇𝑦

ax dan ay menyatakan amplitudo riak gelombang sinus

Tx dan Ty menyatakan periode gelombang sinus

Page 32: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Contoh Efek Ripple

ax = 10; ay = 0; Tx = 100; Ty = 300 ax = 0; ay = 10; Tx = 100; Ty = 300

Page 33: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Efek Twirl

• Transformasi Twirl (puntiran): dilakukan dengan memutar citra berdasarkan titik pusat citra, tetapi tidak bersifat linear

𝑥′ = 𝑥𝑐 + 𝑟 cos(𝛽) 𝑦′ = 𝑦𝑐 + 𝑟 sin(𝛽)

𝑟 = (𝑥 − 𝑥𝑐)2+(𝑦 − 𝑥𝑐)2

𝛽 = 𝐴𝑟𝑐𝑇𝑎𝑛 𝑑𝑦, 𝑑𝑥 + 𝛼(𝑟𝑚𝑎𝑘𝑠 − 𝑟)/𝑟𝑚𝑎𝑘𝑠

Page 34: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Hasil Efek Twirl

Page 35: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Outline

• Pengantar operasi geometrik • Penggeseran citra • Pemutaran citra • Interpolasi piksel • Zooming • Pencerminan citra • Efek ripple dan Efek twirl • Transformasi affine, Transformasi spherical dan

Transformasi bilinear

Page 36: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Transformasi Affine

transformasi linear yang menyertakan penskalaan, pemutaran, penggeseran, dan shearing (pembengkokan).

Rumus Transformasi Affine: 𝑥′𝑦′1

=

𝑎11 𝑎12 𝑡𝑥

𝑎21 𝑎22 𝑡𝑦

0 0 1

𝑥𝑦1

Berdasarkan persamaan di atas, terlihat bahwa transformasi affine memiliki enam derajat kebebasan: dua untuk translasi (tx dan ty) dan empat buah untuk rotasi,

penskalaan, stretching, dan shearing (a11, a12, a21, dan a22).

Page 37: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Transformasi Affine

Koefisien untuk menentukan efek penskalaan, rotasi, translasi, dan pembengkokan

Transformasi a11 a12 a21 a22 tx ty

Translasi sebesar (y, x) 1 0 0 1 x y

Rotasi sebesar θ cos θ sin θ -sin θ cos θ 0 0

Penyekalaan sebesar s s 0 0 s 0 0

Pembengkokan secara vertikal sebesar s

1 s 0 1 0 0

Pembengkokan secara horizontal sebesar s

1 0 s 1 0 0

Page 38: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Contoh Bentuk Transformasi Affine

Misalkan akan menggeser citra secara horizontal sebanyak 50 (tx=50) dan vertikal sebanyak 50 (ty=50), maka bentuk transformasi affine-nya menjadi:

𝑥′𝑦′1

= 1 0 500 1 500 0 1

𝑥𝑦1

Page 39: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Contoh Bentuk Transformasi Affine

Misalkan akan melakukan pembengkokan secara vertical sebanyak 0.5 (s=0.5), maka bentuk transformasi affine-nya menjadi:

𝑥′𝑦′1

= 1 0.5 00 1 00 0 1

𝑥𝑦1

Page 40: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Transformasi Spherical

• memberikan efek bulatan (bola), seperti melihat gambar menggunakan lensa pembesar. Bagian tengah terlihat membesar.

Prinsiple of Digital Image Processing: Core Algorithm https://books.google.co.id/books?id=s5CBZLBakawC&pg=PA207&lpg=PA207&dq=spherical+transformation+image+processing&source=bl&ots=LQwI2f9Is9&sig=puBjY7ECiYzpgPXUKSm5GuVchu0&hl=id&sa=X&ved=0ahUKEwjO9ofV9K_LAhXOv44KHdiLAOkQ6AEIKTAB#v=onepage&q&f=false

Page 41: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Contoh Transformasi Spherical

Page 42: MKB3383 - Teknik Pengolahan Citra Transformasi Geometrizidny.dosen.st3telkom.ac.id/wp-content/uploads/sites/29/2016/03/... · dengan memutar citra berdasarkan titik pusat citra,

Transformasi Bilinear

• Fungsi pemetaan yang digunakan: 𝑥′ = 𝑎1𝑥 + 𝑎2𝑦 + 𝑎3𝑥𝑦 + 𝑎4 𝑦′ = 𝑏1𝑥 + 𝑏2𝑦 + 𝑏3𝑥𝑦 + 𝑏4