WARP PADA SEBUAH SEGITIGA

  Jurnal Matematika UNAND Vol. 3 No. 3 Hal. 26 – 33

  ISSN : 2303–2910 Jurusan Matematika FMIPA UNAND c

WARP PADA SEBUAH SEGITIGA

  

ABDUL ZAKY, MAHDHIVAN SYAFWAN

Program Studi Matematika,

Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Andalas,

Kampus UNAND Limau Manis Padang, Indonesia,

zakimathua@yahoo.com

Abstrak.

  Warp pada sebuah segitiga merupakan salah satu aplikasi dari transformasi

Afin yang menjadi dasar dari teknik manipulasi gambar. Teorema-teorema terkait be-

serta contoh dari proses warp dijelaskan pada makalah ini. Kata Kunci : Warp, transformasi Afin

  1. Pendahuluan

Salah satu teknik manipulasi gambar yang sangat menarik yaitu dengan mendistor-

sikan berbagai potongan segitiga pada sebuah gambar ke posisi dan ukuran yang

berbeda. Teknik manipulasi gambar ini dinamakan teknik warp.

  Warp memiliki banyak aplikasi di dunia nyata, diantaranya: (1) Pembuatan efek-efek khusus dan animasi pada film. (2) Penelitian terhadap evolusi dari bentuk-bentuk organisme. (3) Bedah plastik dan rekonstruksi wajah. (4) Pengubahan umur pada foto orang hilang atau buronan polisi.

Teknik warp dikembangkan dari konsep transformasi Afin. Mengingat aplikasinya

yang sangat bermanfaat, maka tentu akan sangat menarik untuk membahas lebih

detail bagaimana transformasi Afin digunakan dalam proses warp. Makalah ini akan

membahas proses warp pada sebuah segitiga yang merupakan salah satu topik ap-

likasi pada referensi [1].

  2. Kombinasi Cembung, Transformasi Afin, dan Verteks

Pada bagian ini disajikan teori-teori dasar yang digunakan pada proses warp pada

sebuah segitiga. Berikut diberikan definisi kombinasi cembung, transformasi Afin

dan verteks.

  

Definisi 2.1. [1] Suatu vektor v dikatakan suatu kombinasi cembung (convex

combination) dari vektor-vektor v

  1 , v 2 , v 3 , · · · , v n , jika vektor-vektor tersebut da-

  pat dinyatakan dalam bentuk

v v v v v

= k

  1 1 + k

  2 2 + k

  3 3 + · · · + k n n ,

  2

  2

  2 Definisi 2.2.

  adalah bidang Euclid, [2] Suatu pemetaan T : E → E , dimana E

dikatakan suatu transformasi Afin, jika terdapat matriks A 2×2 yang dapat dibalik

  2

  2

  berlaku dan suatu vektor b ∈ R sedemikian sehingga untuk setiap x ∈ R

T (x) = A(x) + b.

  Definisi 2.3.

  [1] Suatu vektor p dikatakan verteks (x, y) jika vektor p tersebut berpangkal di titik (0, 0) dan berujung di titik (x, y).

  3. Warp dan Teorema Terkait

Warp adalah salah satu teknik manipulasi gambar dengan cara memindahkan

berbagai potongan segitiga yang terbentuk dari gambar tersebut [1]. Warp berarti

melengkungkan atau membengkokkan. Apabila sebuah titik yang terdapat pada se-

buah potongan gambar dipindahkan, maka bentuk dari gambar akan melengkung.

  Teorema-teorema yang terkait pada pembahasan ini akan dijelaskan melalui

ilustrasi singkat tentang proses warp pada sebuah segitiga berikut ini. Proses warp

pada sebuah segitiga diawali dengan mendeskripsikan sebuah warp dari sebuah

  2

  . Pada segitiga tersebut terdapat tiga buah titik segitiga pada suatu bidang R sudut (verteks), misalkan dinyatakan oleh v

  1 , v 2 , v 3 yang masing-masingnya tidak

  

segaris (nonkolinear) (lihat Gambar 1(a)). Segitiga ini disebut dengan segitiga awal

(begin-triangle). Jika v adalah sebarang titik di dalam segitiga awal, maka terdapat

konstanta-konstanta tunggal k

  1 dan k 2 dengan k 1 ≥ 0 dan k 2 ≥ 0 sedemikian rupa

  sehingga v − v

  3 = k 1 (v 1 − v 3 ) + k 2 (v 2 − v 3 ). (3.1)

  

Gambar 1. Me-warp-kan segitiga

Persamaan (3.1) menyatakan vektor v − v

  3 sebagai kombinasi linier dari dua

  vektor v

  1 − v 3 dan v 2 − v 3 yang bebas linier. Misalkan k 3 = 1 − k 1 − k 2 , maka

  persamaan (3.1) menjadi v = k v + k v + k v , (3.2)

  1

  1

  2

  2

  3

  3

  dimana

  

Dari persamaan (3.2) dan (3.3) dapat dikatakan bahwa v adalah kombinasi cembung

dari vektor-vektor v

  1 , v 2 , dan v 3 dengan konstanta tak-negatif k 1 , k 2 , dan k 3 .

  Teorema 3.1.

  [1] Jika vektor v adalah sebuah kombinasi cembung dari v

  1 , v 2 , v 3 ,

  

maka ujung vektor v terletak di dalam sebuah segitiga yang menghubungkan ujung-

ujung ketiga vektor v

  1 , v 2 , dan v 3 .

  Untuk membuktikan teorema di atas diperlukan dua lema berikut. Lema 3.2.

  [1] Misalkan a dan b adalah vektor-vektor bebas linier pada suatu bidang. Jika k

  1 dan k 2 adalah bilangan tak-negatif dengan k 1 + k 2 = 1, maka vektor

  a b k

  1 + k 2 terletak pada suatu segmen garis yang menghubungkan ujung vektor a dan ujung vektor b.

  Bukti.

  Karena k

  1 dan k 2 adalah konstanta tak-negatif yang memenuhi k 1 +k 2 = 1,

  maka k = 1 − k . Selanjutnya,

  2

  1

  1 + k 2 = k 1 + (1 − k 1 )b

  a b a k

  1 + b − k

  a b = k

  1

  

= b + k

1 (a − b). a b Persamaan terakhir menunjukkan bahwa vektor k

  1 + k 2 berada pada segmen garis yang menghubungkan ujung vektor a dan ujung vektor b.

  Lema 3.3.

  [1] Jika suatu vektor b + k

  1 (a − b) berada pada segmen garis yang

  1 + k 2 ≤ 1, k

  1

  a

menghubungkan ujung vektor a dan ujung vektor b, maka untuk k +

  

k b berada di dalam suatu segitiga yang menghubungkan titik asal dengan ujung

  2 vektor a dan ujung vektor b.

  Bukti. Misalkan b + k

  1 (a − b) merupakan vektor yang berada pada segmen garis

  yang menghubungkan ujung vektor a dan ujung vektor b. Karena k

  1 +k 2 ≤ 1, maka

  k

  2 ≤ 1 − k 1 . Selanjutnya,

  

kk a + k b k ≤ kk a + (1 − k )bk

  1

  2

  1

  1

  ≤ kk a + b − k b k

  1

  1

  

≤ kb + k

  1 a − k 1 b k

  

≤ kb + k

1 (a − b)k.

Dari hubungan di atas dapat disimpulkan bahwa vektor k a + k b lebih pendek

  1

  2

  

atau sama dengan vektor b + k (a − b). Jadi vektor k a + k b berada di dalam

  1

  1

  2

  

segitiga yang menghubungkan titik (0, 0) dengan ujung vektor a dan ujung vektor

b .

  Berikut dijelaskan bukti Teorema 3.1. Bukti. demikian k

  1 + k 2 + k 3 = 1 dan k 1 , k 2 , k 3 ≥ 0, sehingga berlaku

  v v v v = k

  1 1 + k

  2 2 + k

  3

  3

  1 1 + k

  v v = k

  2 2 + (1 − k 1 − k 2 )v

  3

  1 1 + k

  v v v v = k

  2 2 + v 3 − k

  1 3 − k

  2 3 .

  = k

  1 (v 1 − v 3 ) + k 2 (v 2 − v 3 ) + v 3 (3.4)

  Tulis a = v

  1 − v 3 dan b = v 2 − v 3 . Artinya a dan b adalah dua vektor yang

  sama-sama memiliki titik pangkal di ujung vektor v

  3 . Jadi persamaan (3.4) dapat

  ditulis v = k a + k b + v

  1

  2

  3 ⇔ v − v = k a + k b .

  3

  1

  2 Selanjutnya perhatikan bahwa k 1 + k 2 + k 3 = 1, dengan k 1 , k 2 , k 3 tak-negatif, men-

  1 + k 2 ≤ 1. Berdasarkan Lema 3.3, v − v 3 = k 1 + k 2 berada di dalam

  a b gakibatkan k

  

segitiga yang menghubungkan titik pangkal a dan b (dalam hal ini ujung vektor v

  3 )

  dengan ujung vektor a (dalam hal ini ujung vektor v

  1 ) dan ujung vektor b (dalam

  

hal ini ujung vektor v ). Karena ujung vektor v − v sama dengan ujung vektor

  2

  3

  

v maka dapat disimpulkan bahwa ujung vektor v terletak di dalam segitiga yang

menghubungkan ujung vektor v , v , dan v .

  1

  2

  3 Selanjutnya diberikan tiga vektor w 1 , w 2 , dan w 3 yang merupakan titik-titik

  

sudut dari segitiga pada Gambar 1(b) (disebut segitiga akhir (end-triangle)). Misal-

kan v

  1 , v 2 ,v 3 pada gambar awal dan w 1 , w 2 ,w 3 pada gambar akhir dapat dibuat

  hubungan w = Av + b untuk i = 1, 2, 3, (3.5)

  i i

dimana A matriks 2 × 2 yang unik dan dapat dibalik dan b vektor berdimensi 2.

  

Maka berdasarkan Definisi 2.2, terdapat sebuah transformasi Afin yang memetakan

v

  1 ke w 1 , v 2 ke w 2 dan v 3 ke w 3 .

  

Teorema 3.4. [1] Misalkan suatu transformasi Afin diberikan oleh sebuah matriks

A 2 × 2, dan sebuah vektor b. Misalkan w = Av + b dan w = Av + b untuk

  i i

  

i = 1, 2, 3. Jika v kombinasi cembung dari v , v , v , maka w adalah kombinasi

  1

  2

  3

  cembung dari w

  1 , w 2 , w 3 , yaitu

  

w w w w

= k

  1 1 + k

  2 2 + k

  3 3 , (3.6)

  dengan k

  1 + k 2 + k 3 = 1.

  Bukti.

  Vektor w i merupakan hasil transformasi Afin dari v i untuk i = 1, 2, 3, w w = Av + b, dan v kombinasi cembung dari v

  1 , v 2 , v 3 , maka

  w = A(k v + k v + k v ) + b

  1

  1

  2

  2

  3

  3

  = k

  1 Av 1 + k

  2 Av 2 + k

  3 Av 3 + b(k 1 + k 2 + k 3 )

  = k

  1 Av 1 + k 1 b + k

  2 Av 2 + k 2 b + k

  3 Av 3 + k 3 b

  = k

  1 (Av 1 + b) + k 2 (Av 2 + b) + k 3 (Av 3 + b)

  = k

  1 w 1 + k 2 w 2 + k 2 w 2 .

  Jadi w juga merupakan kombinasi cembung dari w

  1 , w 2 dan w 3 .

  4. Proses Warp pada Sebuah Segitiga Misalkan v

  1 , v 2 , v 3 merepresentasikan verteks pada segitiga awal dan w 1 , w 2 , w

  3

  

adalah verteks pada segitiga akhir. Berdasarkan penjelasan sebelumnya, terdapat

sebuah transformasi Afin w

  i = Av i + b. (4.1)

  Subtitusikan persamaan (4.1) ke persamaan (3.6), maka diperoleh w = k

  1 (Av 1 + b) + k 2 (Av 2 + b) + k 3 (Av 3 + b)

  = Ak

  1 v 1 + k 1 b + Ak 2 v 2 + k 2 b + Ak 3 v 3 + k 3 b

  1 1 + k

  v v v = A(k

  2 2 + k

  3 3 ) + (k 1 + k 2 + k 3 )b.

  Untuk memperoleh A dan b, konstruksi sistem persamaan dengan menggunakan

verteks yang terdapat pada segitiga. Misalkan koordinat verteks v i dan w i diberikan

oleh

v ix w ix

v

  i = dan w i = . (4.2)

  

v w

  iy iy

  Kemudian misalkan matriks A dan vektor b adalah a

  11 a 12 b x

A = dan b = .

  a

  21 a 22 b y

  

Dengan mensubstitusikan persamaan (4.2) ke persamaan (4.1) untuk i = 1, 2, 3,

diperoleh

w = a v + a v + b

  1x 11 1x 12 1y x

  

w = a v + a v + b

  1y 21 1x 22 1y y

  

w = a v + a v + b

  2x 11 2x 12 2y x

  (4.3)

w = a v + a v + b

  2y 21 2x 22 2y y

  

w = a v + a v + b

  3x 11 3x 12 3y x

  w 3y = a

  21 v 3x + a 22 v 3y + b . y

  Sistem persamaan di atas dapat dibagi menjadi dua sistem persamaan: w 1x = a

  11 v 1x + a 12 v 1y + b x w 1y = a 21 v 1x + a 22 v 1y + b y

  w 2x = a

  11 v 2x + a 12 v 2y + b x dan w 2y = a 21 v 2x + a 22 v 2y + b y .

  

Kedua sistem persamaan di atas dapat dibentuk ke dalam bentuk matriks berikut.

  

     

v 1x v 1y 1 a

  11 w 1x

  12 w 2x

  

     

= v 2x v 2y 1 a

  v 3x v 3y 1 b x w 3x dan

     

v 1x v 1y

  1 a

  21 w 1y

  22 w 2y

  

     

= . v 2x v 2y 1 a

  v v 1 b w

  3x 3y y 3y

  Perhatikan bahwa kedua sistem di atas mempunyai matriks koefisien yang sama

dan matriks koefisien tersebut mempunyai invers, karena v , v , v merupakan

  1

  2

  3

  

vektor-vektor yang tak-segaris sehingga mempunyai determinan yang tidak sama

dengan nol. Jadi solusi untuk a

  1 , a 2 , a 3 , a 4 , b dan b diberikan oleh x y −

  1

  

     

a

  11 v 1x v 1y

  1 w 1x

     

a

  12 = v 2x v 2y

  1 w 2x (4.4) b x v 3x v 3y 1 w 3x dan

  −

  1

  

     

a

  21 v 1x v 1y

  1 w 1y

     

a

  22 = v 2x v 2y

  1 w 2y . (4.5) b y v 3x v 3y 1 w 3y Sekarang misalkan titik-titik yang termuat dalam sebuah segitiga, termasuk

titik-titik pada sisi segitiga dan verteks segitiga, berjumlah r buah (titik-titik ini

direpresentasikan oleh titik-titik pixel pada gambar). Dengan demikian terdapat

(r − 3) buah titik pada segitiga awal selain verteks v

  1 , v 2 , v 3 dan (r − 3) buah

  titik pada segitiga akhir selain verteks w

  1 , w 2 , w 3 . Pada implementasinya nanti,

  

suatu titik dapat dipastikan berada dalam sebuah segitiga jika titik tersebut meru-

pakan kombinasi cembung dari verteks pada segitiga tersebut (lihat Teorema 3.1).

p jx

Misalkan p j = adalah titik yang berada pada segitiga awal selain verteks

p

  jy

  q jx v

  1 , v 2 , v 3 dan q j = adalah titik yang berada pada segitiga akhir selain

  q jy w , w , w , dimana j = 1, 2, · · · , (r − 3).

  1

  2

  3 Perhatikan bahwa p merupakan kombinasi cembung dari v , v , v . Apabila p j

  1

  2 3 j

  dan q memenuhi transformasi Afin

  j

  

q = a p + a p + b ,

  jx 11 jx 12 jy x

  (4.6)

q = a p + a p + b ,

  jy 21 jx 22 jy y

  

untuk j = 1, 2, · · · , (r − 3), maka menurut Teorema 3.4, titik q j merupakan kombi-

nasi cembung dari w

  1 , w 2 , w 3 . Dengan demikian, menurut Teorema 3.1, titik-titik

  q

  Gabungan dari sistem persamaan (4.6) dengan sistem persamaan (4.5) dapat ditulis dalam bentuk matriks sebagai berikut:

     

w 1x w 2x w 3x q jx a

  11 a 12 b x v 1x v 2x v 3x p jx

  21 a 22 b y v 1y v 2y v 3y p jy . (4.7)

  

     

w 1y w 2y w 3y q jy = a

  1

  1

  1 1 0 1

  1

  1

  1

  1 Selanjutnya perhatikan bahwa berdasarkan Teorema 3.4, titik q merupakan kom-

binasi cembung dari w , w , dan w . Akibatnya, q terletak di dalam segitiga yang

  1

  2

  3

  

menghubungkan verteks w , w , dan w (dijamin oleh Teorema 3.1). Berdasarkan

  1

  2

  3

  

penjelasan di atas, maka sebuah segitiga awal dapat di-warp-kan dengan melakukan

transformasi Afin terhadap setiap titik dalam segitiga tersebut.

  5. Contoh Misalkan suatu transformasi Afin memetakan vektor-vektor v

  1 , v 2 , v 3 berturut-

  turut ke vektor-vektor w

  1 , w 2 , w 3 dimana v 1 = (1, 1), v 2 = (2, 3), v 3 = (2, 1), w 1 =

  (4, 3), w

  2 = (9, 5), dan w 3 = (5, 3). Akan ditentukan matriks A dan vektor b yang

  

memenuhi transformasi Afin dari v i ke w i , i = 1, 2, 3. Kemudian jika diambil titik

p

= (2, 2), akan diperiksa apakah titik tersebut berada pada segitiga yang menghu-

bungkan v

  1 , v 2 , dan v 3 atau tidak. Jika ya, akan dicari titik q yang merupakan peta dari p dan terletak pada segitiga yang menghubungkan w , w , dan w .

  1

  2

  3 Perhatikan bahwa persamaan (4.4) dan (4.5) untuk nilai-nilai vektor v dan w i i

  pada contoh menjadi

  − −

  1

  1

  

           

a

  11 1 1 1

  

4 a

  21 1 1 1

  3

           

= dan = . a

  12 2 3 1

  

9 a

  22 2 3 1

  5 b 2 1 1 5 b 2 1 1

  3

  x y

  

Jadi diperoleh a = 1, a = 2, a = 0, a = 1, b = 1, b = 2. Oleh karena itu

  1

  2

  3

  4

  1

  2

  matriks A dan vektor b yang memenuhi transformasi Afin tersebut adalah 1 2

  1 A b = dan = . 0 1

  2 Kemudian untuk memeriksa apakah titik p berada di dalam segitiga dengan verteks

v , v , dan v , maka perlu diperiksa terlebih dahulu apakah p merupakan kombinasi

  1

  2

  3

  

cembung dari v , v , dan v . Dalam hal ini akan dicari nilai k , k , dan k yang

  1

  2

  3

  1

  2

  3

  

tak-negatif sedemikian sehingga berlaku p = k v +k v +k v dan k k +k = 1

  1

  1

  2

  2

  3 3 1+

  2

  3

  atau dalam bentuk matriks dapat ditulis

     

1 2 2 k

  1

  2

     

1 3 1 k

  2 = 2 .

  1 1 1 k

  3

  1 Solusi untuk k

  1 , k 2 , k 3 diberikan oleh

  

       

k

  1 −1

  

2

  2

       

k

  2 = 1/2 −1/2 2 = 1/2 . Dari sistem di atas diperoleh k

  1 = 0, k 2 = 1/2, dan k 3 = 1/2 yang bernilai tak-

  negatif. Jadi dapat disimpulkan bahwa p merupakan kombinasi cembung dari v

  1 , v 2 ,

  dan v

  3 . Lebih lanjut, berdasarkan Teorema 3.4, p dijamin terletak di dalam segitiga

  yang menghubungkan v

  1 , v 2 , dan v 3 . Kemudian posisi titik q yang merupakan hasil

  transformasi Afin dari p dapat ditentukan berdasarkan persamaan (4.7), yaitu

       

4 9 5 q 1 2 1 1 2 2 2 4 9 5 7

  x

  y

  

       

3 5 3 q = 0 1 2 1 3 1 2 = 3 5 3 4 .

  

1 1 1 1 0 0 1 1 1 1 1 1 1 1 1

Jadi titik q = (7, 4).

6. Kesimpulan dan Saran Adapun kesimpulan dari makalah ini dapat dijelaskan sebagai berikut.

  

(1) Warp pada sebuah segitiga dapat dihasilkan dengan menggunakan transformasi

Afin yang memiliki sebuah matriks 2×2 yang dapat dibalik dan sebuah vektor berdimensi 2.

(2) Transformasi Afin akan memetakan kombinasi cembung dari vektor-vektor ke

kombinasi cembung yang sama dari peta vektor-vektor tersebut.

(3) Setiap pixel yang terdapat pada segitiga yang dibatasi oleh 3 buah verteks

yang saling dihubungkan merupakan kombinasi cembung dari ketiga verteks yang membentuk segitiga tersebut.

(4) Sebuah segitiga awal dapat di-warp-kan dengan melakukan transformasi Afin

terhadap setiap titik dalam segitiga tersebut.

  Saran untuk penelitian selanjutnya yaitu mengembangkan topik ini menjadi

lebih menarik dengan menjadikan konsep warp pada sebuah segitiga sebagai dasar

untuk proses warp pada sebuah gambar.

  7. Ucapan Terima kasih

Penulis mengucapkan terima kasih kepada Bapak Narwen, M.Si, Ibu Nova Noliza

Bakar, M.Si, dan Ibu Riri Lestari, M.Si yang telah memberikan masukan dan saran

sehingga makalah ini dapat diselesaikan dengan baik.

  Daftar Pustaka

[1] Anton, H. dan C. Rorres. 2005. Aljabar Linear Elementer Versi Aplikasi. Edisi

Delapan. Erlangga, Jakarta

[2] Ryan, P.J. 1992. Euclidean and Non-Euclidean Geometry. Cambridge University

Press, New York