Anda di halaman 1dari 20

DAFTAR GAMBAR Gambar 2-1 Hasil Proses Konversi ke bentuk Grayscale .............. 8 Gambar 2-2 Proses Deteksi Tepi Citra ..........................................

8 Gambar 2-3 Hasil Beberapa Deteksi Tepi ..................................... 9 Gambar 2-4 Contoh Gaussian Filter Noise ................................. 11 Gambar 2-5 Contoh Gaussian Filter............................................. 12 Gambar 2-6 Proses Menghubungkan Edge Kearah a.................. 13 Gambar 2-7 Arah Setengah lingkaran ......................................... 14 Gambar 2-8 Konsep Delaunay Trinagulation.............................. 15 Gambar 2-9 Titik-titik yang Sudah Diurutkan ............................. 17 Gambar 2-10 Kumpulan Subset dari 2 atau 3 Titik ..................... 17 Gambar 2-11 Penggabungan Subset............................................ 18 Gambar 2-12 LR Dasar antara Triangulasi Kiri dan Kanan....... 18 Gambar 2-13 Potensial Kandidat ................................................ 19 Gambar 2-14 Setelah Penghapusan ”bad edge” ......................... 19 Gambar 2-15 Kandidat yang Memenuhi Kondisi......................... 20 Gambar 2-16 Penambahan LR-edge............................................ 21 Gambar 2-17 Delaunay Triangulation......................................... 21 Gambar 2-18 Convex Hull ........................................................... 23 Gambar 2-19 Model Warna HSV ................................................. 25 Gambar 2-20 Saturation / Value Pada Hue Tertentu Dalam Model HSV................................................................................................ 26 Gambar 2-21 Contoh Saturation dan Variasi Value Single Red Hue ................................................................................................ 27 Gambar 3-1 Blok Diagram Segmentasi Pakaian ......................... 31 Gambar 3-2 Diagram Alir Konversi ke Grayscale ...................... 32 Gambar 3-3 Diagram Alir CDT ................................................... 33 Gambar 3-4 Diagran Alir Deteksi Kulit...................................... 34 Gambar 3-5 Kode program untuk data masukan citra RGB........ 35 Gambar 3-6 Kode Program untuk konversi dari RGB ke Grayscale ....................................................................................................... 35 Gambar 3-7 Kode Program Deteksi Tepi.................................... 36 Gambar 3-8 Kode Program untuk Constrained Delaunay Triangulation................................................................................. 37

xvii

Gambar Gambar Gambar Gambar Gambar Gambar Gambar Gambar Gambar Gambar Gambar Gambar

3-9 Kode Program Background Removal ......................37 3-10 Kode Program Deteksi Kulit..................................38 4-1 Tampilan Antar Muka ..............................................40 4-2 Tampilan Hasil Proses Tombol Browse...................40 4-3 Tampilan Antar Muka Setelah Memilih Citra..........41 4-4 Tampilan Hasil Deteksi Tepi....................................42 4-5 Tampilan input 2 Titik oleh User .............................42 4-6 Tampilan Region Pakaian........................................43 4-7 Tampilan Hasil Segmentasi Pakaian .......................43 4-8 Citra input ...............................................................44 4-9 Prosentase Perbandingan Nilai Hue........................46 4-10 Prosentase Perbandingan Nilai Threshold ............49

xviii

Dari uraian tersebut diharapkan gambaran umum permasalahan dan pemecahan yang diambil dapat dipahami dengan baik.1 Latar Belakang Segmentasi pakaian secara luas digunakan pada tugas-tugas visi komputer. batasan masalah.BAB 1 PENDAHULUAN Pada bab ini akan dibahas mengenai garis besar tugas akhir. Kemudian hasil dari edge detection tadi akan dipisahkan antara latar depan dan latar belakangnya. identifikasi. dan latar belakang yang berbeda. Kemudian untuk memisahkan seed latar depan dengan menggunakan metode skin detection dan seed latar belakang menggunakan metode Constrained Delaunay Triangulation (CDT). sketsa manusia. dan panjang kaos kaki. Kesulitan yang banyak ditemui jika menggunakan model-based adalah banyaknya model yang ditawarkan untuk mengatasi perbedaan pakaian dan bermacam-macam gaya/pose. kondisi pencahayaan yang berbeda. permasalahan. Diharapkan dengan menggunakan metode CDT ini dapat diperoleh segmentasi yang akurat dan mampu 1 . dan potret untuk graphics rendering. 1. Jadi untuk daerah diluar segiempat (latar belakang) otomatis akan dihapus. mengedit citra. seperti deteksi pakaian seseorang. metodologi serta sistematika penulisan tugas akhir. Metode segmentasi dapat diperoleh dari variasi pada warna dan corak. panjang kemeja. yang meliputi latar belakang. tujuan. Sebuah model pakaian umumnya memiliki tiga parameter yaitu panjang lengan baju. Hasil dari segmentasi dengan menggunakan CDT ini adalah region pakaian. Citra input mula-mula dicari garis tepinya (edge detection) dengan menggunakan metode Canny. Seed untuk latar depan di inputkan oleh user dengan memberikan batasan berupa segiempat pada citra.

• Obyek manusia harus dengan posisi menghadap ke depan. 1.0 (R2009a) 1.4 Batasan Masalah Batasan masalah yang digunakan dalam pengerjaan Tugas Akhir ini adalah sebagai berikut: • Citra yang digunakan adalah citra dengan gambar single obyek manusia.5 Metodologi Pembuatan Tugas Akhir ini terbagi menjadi beberapa tahapan pengerjaan untuk mempermudah serta sebagai target tujuan dan . 1. dapat dirumuskan permasalahan sebagai berikut: • Bagaimana menerapkan metode CDT untuk estimasi latar belakang pada segmentasi pakaian • Bagaimana memperoleh region pakaian dengan menggunakan deteksi kulit • Bagaimana menghitung akurasi pada performa segementasi pakaian 1.3 Permasalahan Dari latar belakang yang telah dijelaskan diatas.8. • Deteksi tepi yang digunakan adalah deteksi tepi Canny.2 mengekstrak pakaian berbeda dari citra statis dengan variasi latar belakang dan kondisi pencahayaan. • Implementasi perangkat lunak menggunakan Matlab 7.2 Tujuan Tujuan pembuatan Tugas Akhir ini adalah membuat sebuah sistem untuk segmentasi pakaian dengan menggunakan metode Constrained Delaunay Triangulation (CDT) yang dapat digunakan untuk proses identifikasi dan mampu menghasilkan tingkat akurasi yang tinggi.

dasar teori. Perancangan Perangkat Lunak Perancangan perangkat lunak meliputi analisis dan desain sistem. berisi latar belakang. Analisis yang dilakukan adalah analisis konsep dan algoritma dari hasil studi literatur ke dalam sebuah program. tujuan. proses yang telah dilakukan. teori.3 waktu yang terhitung dalam penyelesaian Tugas Akhir ini. dan dokumentasi internet. metodologi. implementasi. Bab 1. Tahap ini juga menganalisis performa dan kelemahan-kelemahan yang didapatkan dari sistem ini. 1. majalah. Uji Coba dan Evaluasi Tahap ini melakukan uji coba dan evaluasi program yang telah dibuat dengan menggunakan Matlab. . dan sistematika penulisan. Studi Literatur Studi literatur yang dilakukan adalah mempelajari konsep. batasan permasalahan. Berikut adalah tahapan pengerjaan Tugas Akhir ini 1. 2. Pendahuluan. pembuktian pembuktian. 3. dan teknologi yang digunakan. 4. 5. permasalahan. Pembuatan Buku Tugas Akhir Tahap ini melakukan pendokumentasian dan laporan dari seluruh konsep. Pembuatan Perangkat Lunak Pembuatan perangkat lunak meliputi implementasi dari rancangan yang telah dibuat pada tahap sebelumnya menjadi suatu perangkat lunak.6 Sistematika Penulisan Tugas Akhir Laporan Tugas Akhir ini akan dibagi menjadi beberapa bab sebagai berikut: 1. dan hasil-hasil yang telah didapatkan selama pengerjaan Tugas Akhir. Literatur yang digunakan meliputi buku referensi. Buku Tugas Akhir ini bertujuan untuk mendapatkan gambaran dari pengerjaan Tugas Akhir ini dan diharapkan dapat berguna untuk pembaca yang tertarik untuk melakukan pengembangan lebih lanjut.

dan kemudian dilakukan analisis terhadap hasil uji coba tersebut. Bab 5. Rancangan algoritma dijelaskan dengan menggunakan diagram alur. Perancangan dan Implementasi Aplikasi.4 2. Bab 3. berisi simpulan yang dapat diambil dari Tugas Akhir ini beserta saran untuk pengembangan selanjutnya. 3. Selain itu. Pada bab ini dijabarkan tahapan-tahapan dari proses perancangan dan pembuatan perangkat lunak sebagai implementasi dari metode yang diterapkan dalam tugas akhir. 5. Bab 4. Penutup. akan dilakukan uji coba berdasarkan parameter-parameter yang ditetapkan. Tinjauan Pustaka. . 4. akan dibahas dasar ilmu yang mendukung pembahasan tugas akhir ini. Bab 2. Uji coba dan analisis hasil. pada bab ini akan dijabarkan implementasi dari aplikasi yang telah dibuat yaitu aplikasi yang dibangun dengan komponen-komponen yang telah ada yang sesuai dengan permasalahan dan batasannya yang telah dijabarkan pada bab pertama.

2) .0)  f (2.  f (M −1.2) . deteksi tepi.  f (0.. .  . Citra digital adalah citra kontinu yang diubah dalam bentuk diskrit. citra grayscale. . Citra digital berbentuk matriks dengan ukuran M x N akan tersusun sebagai berikut : f (0.2) .0) f (M −1.2) .1) f (0.   . N −1) 5 . . y) =  . N −1)  (2..1) f (1.1 Citra digital Istilah citra yang digunakan dalam bidang pengolahan citra dapat diartikan sebagai suatu fungsi kontinyu dari intensitas cahaya dalam bidang dua dimensi. Pemrosesan citra dengan komputer digital membutuhkan citra digital sebagai masukannnya. proses CDT. . baik koordinat ruang maupun intensitas cahayanya.BAB 2 DASAR TEORI Pada bab ini akan diuraikan mengenai dasar-dasar teori yang digunakan dalam pengerjaan tugas akhir ini. N −1)  f (2.0) f (2. ...1) f (0.  .. Convex Hull 2. Pengolahan digitalisasi terdiri dari 2 proses yaitu pencuplikan (sampling) posisi.  f (1..0)  f (1. N −1)   .. Teori yang akan dibahas adalah citra digital.1) f (M −1. y ) dimana ' x ' dan ' y ' merupakan koordinat piksel dalam matriks dan ' f ' merupakan derajat intensitas piksel tersebut. f (x. dan kuantisasi intensitas.   f (M −1.1) f (2. Citra digital dapat dinyatakan dalam matriks dua dimensi f ( x..    f (1.

y ) dalam fungsi matematis dapat dituliskan sebagai berikut : 0 ≤ x ≤ M −1 0 ≤ y ≤ N −1 0 ≤ f ( x. Besar G tergantung pada proses digitalisasinya.6 Suatu citra f ( x. y ) ≤ G − 1 Dimana : M = banyaknya garis pada array citra N = banyaknya kolom pada array citra G = banyaknya skala keabuan (graylevel) Interval 0. titik-titik kecil tersebut tidak teramati oleh manusia yang melihat secara normal. “pel”. Titiktitik tersebut merupakan satuan terkecil dari suatu citra digital yang disebut sebagai “picture element”. Pada sistem dengan tampilan citra digital yang dirancang dengan baik (beresolusi tinggi). makin tinggi nilai resolusinya dan makin halus gambarnya. Untuk citra 8 bit. dapat dilihat titik-titik kecil berbentuk segiempat yang membentuk citra tersebut. G disebut skala keabuan (grayscale). Biasanya keabuan 0 (nol) menyatakan intensitas hitam dan G menyatakan intensitas putih. “pixel”. (2. Beberapa sistem peralatan medical imaging seperti CT-Scan dan ultrasonography menggunakan bentuk citra digital 3 dimensi seperti ini untuk keakuratan pengamatan. Perhatikan citra digital secara seksama.2) . Untuk aplikasi 3 dimensi dikenal dengan satuan voxel yang memiliki dimensi ketebalan dan berbentuk kubus. “piksel”. nilai G sama dengan 28 = 256 warna (derajat keabuan). Makin banyak piksel yang mewakili suatu citra. Jumlah piksel per satuan panjang akan menentukan resolusi citra tersebut.

2 Citra Grayscale Proses awal yang banyak dilakukan dalam image processing adalah mengubah citra berwarna menjadi citra grayscale hal ini digunakan untuk menyederhanakan model citra.3) Dimana : r = nilai matrik warna merah g = nilai matrik warna hijau b = nilai matrik warna biru beriktunya algoritma mengkonversi citra asli ke dalam bentuk citra grayscale. Sehingga untuk melakukan proses-proses selanjutnya tetap diperhatikan tiga layer diatas menjadi 1 layer matrik grayscale dan hasilnya adalah citra grayscale. dan biru kemudian lakukan perhitungan menggunakan rumus 2. Hasil dari proses langkah nomor 3 berupa output citra hasil konversi yaitu citra grayscale. Glayer (layer warna hijau) dan B-layer (layer warna biru). dengan nilai s (hasil citra grayscale). Ambil nilai matrik warna merah.11B ( x.3) : Gray ( x. g(green) dan b(blue) menjadi citra grayscale seperti yang ditunjukkan pada gambar 2-21.3R ( x. . Dalam citra ini tidak ada lagi warna yang ada adalah derajat keabuan. y ) = 0. dan b sehingga dapat dituliskan menjadi rumus seperti persamaan (2. y ) + 0. g. hijau dan biru dari tiap piksel citra asli.5G ( x. Tampilkan hasil operasi langkah ke-2 dalam tiap satu piksel citra. maka konversi dapat dilakukan dengan mengambil rata-rata dari nilai r. 4. y ) + 0. Masukkan nilai matrik warna merah. hijau. 2. y ) (2. Untuk mengubah citra berwarna yang mempunyai nilai matrik masing-masing r (red).7 2.3 3. Citra berwarna terdiri dari 3 layer matrik yaitu R-layer (layer warna merah). 1.

Gambar 2-1 Hasil Proses Konversi ke bentuk Grayscale 2. tujuannya adalah : • Untuk menandai bagian yang menjadi detail citra. yang terjadi karena error atau adanya efek dari proses akuisisi citra. • Untuk memperbaiki detail citra yang kabur. Gambar 2-2 Proses Deteksi Tepi Citra .3 Deteksi Tepi (Edge Detection) Deteksi tepi (Edge Detection) pada suatu citra adalah suatu proses yang menghasilkan tepi-tepi dari suatu obyek-obyek citra.8 Hasil dari implementasi rumus grayscale dapat dilihat pada Gambar 2-1 yang menunjukkan perubahan citra warna menjadi citra yang hanya mempunyai derajat keabuan.

9 Suatu titik (x. Bila diperhatikan bahwa tepi suatu citra terletak pada titik-titik yang memiliki perbedaan yang tinggi. Hasil deteksi dari beberapa citra menggunakan model differensial berdasarkan Gambar 2-2 dapat dilihat hasilnya pada Gambar 2-3.y) dikatakan sebagai tepi (edge) dari suatu citra bila titik tersebut mempunyai perbedaan yang tinggi dengan tetangganya. Berikut ini beberapa macam metode untuk proses deteksi tepi antara lain : . Gambar 2-3 Hasil Beberapa Deteksi Tepi Pada Gambar 2-3 terlihat bahwa hasil deteksi tepi berupa tepitepi dari suatu citra. Gambar 2-2 berikut ini menggambarkan bagaimana tepi suatu citra diperoleh.

10 1. Hysteresis digunakan untuk mentracking seluruh piksel dari citra yang belum tereliminasi. Merespon atau menghasilkan satu edge saja. Ada beberapa kriteria sebagai berikut : 1. jika magnitude besarnya dibawah threshold pertama maka di set dengan zero (made nonedge). Dan jika magnitude diantara dua threshold tersebut. dengan kata lain jarak antara edge piksel sudah terdeteksi dan edge yang sebenarnya (actual edge) adalah yang paling minimum. Titik edge pada suatu citra akan tepat terdeteksi. . Metode Robert 2. Metode Sobel 4. metode yang akan digunakan dalam proses pendukung segmentasi pakaian adalah metode deteksi tepi Canny atau canny edge detection. ini sudah diimplementasikan karena dua dari kriteria penting yang disebutkan masih belum cukup untuk mengeliminasi nilai kemungkinan edge. Selanjutnya gradient array dikurangi dengan hysteresis. deteksi tepi Canny adalah deteksi tepi yang cara kerjanya pertama menghaluskan citra (smoothes) untuk menghilangkan noise. Selanjutnya cari gradient dari citra untuk ditandai. Metode Canny Dari keempat metode diatas. Mengurangi nilai kesalahan dasar (low error rate) ini sangat penting karena egde yang terdapat pada suatu citra tidak boleh dihilangkan. Algoritma tersebut kemudian mentracking seluruh daerah dan menghilangkan tiap piksel yang bukan maksimum (nonmaximum suppression). Hysteresis menggunakan dua threshold. 3. Berdasarkan kriteria diatas. Deteksi tepi Canny (canny edge detection) adalah salah satu algoritma deteksi tepi yang bisa menghasilkan edge pada citra dengan nilai sangat optimal untuk saat ini. maka set dengan zero kecuali ada rangkaian alur dari piksel satu ke piksel yang lain dengan gradient diatas threshold yang kedua. 2. Metode Prewitt 3. daerah mana yang mempunyai nilai spatial derivatives yang sangat tinggi.

Pada deteksi tepi Sobel menggunakan dua pasangan 3x3 convolution masks. maka metode ini digunakan didalam algoritma Canny.11 Untuk mengimplementasikan algoritma Canny Edge Detection ada beberapa langkah yang harus diikuti yaitu sebagai berikut: 1. selanjutnya cari edge yang mempunyai intensitas paling besar berdasarkan gradient citra. Setelah simple mask sudah didapatkan selanjutnya gaussian smoothing bisa dipakai menggunakan standar convolution methods. dan tetapkan besarnya nilai gradient adalah edge strength pada tiap titik piksel yang telah ditemukan. atas ke bawah. 2 4 4 9 12 9 4 5 12 15 12 5 4 9 12 9 4 2 4 5 4 2 1 115 5 4 2 Gambar 2-4 Contoh Gaussian Filter Noise 2. Gunakan operator 2-D spatial gradient citra seperti pada deteksi tepi Sobel. Setelah citra diperhalus (smoothing) dan dihilangkan noisenya. Convolution mask biasanya harus lebih kecil dari citra yang sebenarnya (actual image). Selanjutnya geser mask keseluruh bagian citra dari kiri ke kanan. satu digunakan untuk menghitung gradient pada koordinat X (columns) dan yang kedua digunakan untuk . Karena gaussian filter Gambar 2-4 bisa diimplementasikan dengan mudah menggunakan simple mask. Filter semua noise pada citra asli sebelum mencari dan mendeteksi tiap edge.

12 menghitung gradient pada koordinat Y (rows). gradient dicari dengan | G |=| Gx | + | Gy | dimana: |G| = Gradient. -1 -2 -1 0 0 0 Gx +1 +2 +1 +1 0 -1 +2 0 -2 Gy +1 0 -1 Gambar 2-5 Contoh Gaussian Filter EDGE STRENGTH dari menggunakan persamaan (2. |Gy| = Gradient filter koordinat Y.5) . Seperti yang ditunjukkan pada Gambar 2-5. (2. |Gx| = Gradient filter koordinat X. Setelah gradient koordiant X dan Y diketahui selanjutnya cari edgenya.5) untuk mencari arah edge adalah: Theta = invtan (Gy / Gx). Temukan nilai error ketika sumX sama dengan 0. maka arah edge sama dengan 0 derajat. tergantung juga dengan nilai koordiant gradient Y.4). bila gradient koordinat X sama dengan 0 maka. Berikut persamaan (2. Jika Gy mempunyai nilai 0. dimana: Gy = Gradient Y. Dan sebaliknya bila arah edge sama dengan 90 derajat. arah dari edge sama dengan 90 derajat atau 0 derajat. (2.4) 3.

Setelah arah dari edge diketahui.5 derajat – 157. . Dan yang terakhir berada pada daerah red range (112. 90 derajat (vertical direction)atau 135 derajat (along the negative diagonal).13 Gx = Gradient X. 45 derajat (along the positive diagonal).5 derajat . Untuk itu.5 derajat) diset 135 derajat.22.180 derajat) diset dengan 0 derajat. tiap arah dari edge yang berada pada daerah yellow range (0 derajat .5 derajat) diset dengan 45 derajat. blue range (67. Bisa dilihat posisi dari piksel a pada Gambar 2-6 hanya ada lima kemugkinan arah yang mengelilinginya. Jadi orientasi dari edge sekarang adalah untuk menciptakan 1 edge dari 5 arah yang sudah ada. green range (22. tergantung arah mana yang paling mendekati (jika ditemukan sudut 3 derajat maka set dengan 0 derajat). langkah selanjutnya adalah menghubungkan arah dari edge ke arah a yang akan di-traced pada citra.67. 4.5 derajat dan 157. Jadi jika piksel a berada pada citra berukuran 5x5 seperti pada Gambar 2-6. 0 derajat (horizontal direction).5 derajat) diset dengan 90 derajat.5 derajat 112. Gambar 2-7 setengah lingkaran yang dibagi dengan 5 daerah. Gambar 2-6 Proses Menghubungkan Edge Kearah a 5.5 derajat .

4 Delaunay Triangulation Sebuah Constrained Delaunay Triangulation diperoleh dari sekumpulan titik-titik dalam dua dimensi [2]. anggap sebagai edge piksel. Setelah arah dari edge diketahui selanjutnya implementasikan nonmaximum suppression. maka gunakan 2 threshold yaitu high and low. kemudian bersihkan noise. Ada beberapa cara yang bisa digunakan untuk men-triangulate-kan sekumpulan titik- . Untuk menghindari masalakh tersebut. Demikian juga bila nilai dari edge jauh diatas threshold maka buatlah seperti satu edge saja. Yang terakhir Hysteresis digunakan untuk menghilangkan streaking. Jika hanya satu threshold maka. Nonmaximum Suppression digunakan untuk men-trace arah dari edge dan menghapus nilai piksel (sama dengan 0) karena dianggap bukan sebagai edge. itu merupakan contoh bila nilai edge turun dibawah threshold. 2. Kemudian tiap piksel yang terhubung dengan edge piksel dan mempunyai nilai lebih besar dari T2 maka. Jika tiap piksel pada citra mempunyai nilai lebih besar dari T1 anggap sebagai edge piksel dan tandai. Streaking adalah bentuk edge yang terputus disebabkan oleh nilai operator output yang naik turun diatas dan dibawah threshold. T1 digunakan untuk citra dan edge adalah nilai strength rata-rata sama dengan T1.14 Gambar 2-7 Arah Setengah lingkaran 6.

Delaunay triangulation secara geometris sangat menarik untuk dilihat Sangat penting untuk dicatat bahwa ketika ingin membuat Constrained Delaunay Triangulation. namun berubah menjadi Delaunay karena pelafalan bahasa perancis). Triangulasi tersebut ditemukan oleh seorang matematikawan dari Rusia yaitu Boris Delaunay (pada awalnya disebut Delone. Delaunay Triangulation tersebut akan mengelompokkan beberapa titik sesuai dengan acuan bendanya. Kadang-kadang triangulasi membutuhkan beberapa titik yang ”benar” dari sebuah hal. Yaitu ketika ingin membuat Delaunay Triangulation dimana ”constrain” atau batas didefinisikan oleh user [1].15 titik. titik B dan titik C merupakan batas Delaunay Triangulation jika ada sebuah lingkaran melingkupi titik A.maka tidak membentuk triangulasi (hal tersebut di contohkan pada segitiga BCD atau BCE). Namun jika ada titik di dalam atau di luar lingkaran tersebut. Satu dari kebanyakan triangulasi yang umum dan berguna dapat dijadikan contoh yaitu Delaunay Triangulation. Oleh karena Delaunay Triangulation . titik B dan titik C seperti pada Gambar 2-8. Titik A. Segitiga tersebut selalu unik selama tidak ada 4 titik yang sebidang. Karena segitiga tersebut meminimalkan sudut dan lingkaran luar. In circle ABE In circle ADE D D B C E A Non-Delaunay Triangulation D B C E A Non-Delaunay Triangulation C E A Delaunay Triangulation Gambar 2-8 Konsep Delaunay Trinagulation Selalu ada delaunay triangulation untuk setiap titik pada bidang dua dimensi.

Algoritma divide and conquer hanya mengkomputasi Delaunay Triangulation untuk Convex Hull dari himpunan titik-titik.6) Dengan asumsi A.D C . Proses penggabungan dapat dilakukan dalam waktu O(n).D (C . Langkah . dan kemudian dua himpunan digabung sepanjang garis pemisahan. B dan C terletak berlawanan arah jarum jam.langkah untuk membuat Delaunay Triangulation adalah [4]: 1.16 unik. Dalam bidang dua dimensi. B. digunakanlah metode ”divide and conquer” . Untuk membuat Delaunay triangulation. salah satu cara untuk mendeteksi apakah titik D terletak pada circumcircle A. hal ini benar jika dan hanya jika D terletak pada circumcircle tersebut. maka constrained Delaunay Triangulation dapat memuat beberapa tepi yang bukan delaunay.D D D +D 1 2 x 2 y y 2 x 2 x 2 x x y y y y 2 x 2 x 2 x x y y y y 2 2 x 2 x x y y x y y 2 x 2 x 2 x ) + (A − D ) )+ (B − D ) 〉 0 )+ (C − D ) 2 2 y y 2 2 y y 2 2 y y (2. maka urutan berdasarkan koordinat y ). Delaunay Triangulation ini dihitung untuk setiap himpunan. sehingga waktu total adalah O(n log n). Gambar 2-9 adalah 10 titik yang sudah diurutkan. C adalah untuk mengevaluasi determinan: A B C D x x x x A A +A1 A .D A . . Mengurutkan semua titik berdasarkan sumbu koordinat x (jika koordinat x dari dua titik sama.D B B +B 1 = B D B . Banyak algoritma komputasi Delaunay Triangulation bergantung pada kecepatan operasi untuk mendeteksi apakah suatu titik berada dalam segitiga circumcircle dan struktur data yang efisien untuk menyimpan tepi dan segitiga.D (B .D C C +C 1 C .D (A .

4 6 7 5 8 9 10 3 1 2 Gambar 2-10 Kumpulan Subset dari 2 atau 3 Titik 4.17 4 3 1 2 5 6 7 10 9 8 Gambar 2-9 Titik-titik yang Sudah Diurutkan titik-titik 2. tersebut dibagi menjadi dua secara suksesif. RR-edges (tepi yang berada bagian kanan triangulasi. Hasil akhir dari gabungan tersebut akan terdiri dari LL-edges (tepi yang berada bagian kiri triangulasi. Subset yang sudah di-triangulasi digabungkan secara rekursif dengan ”setengah bagian sisanya”. dan sebuah segitiga jika terdiri dari tiga titik seperti pada Gambar 2-10. dan LR-edges (tepi baru yang ada diantara triangulasi kiri dan . sampai didapatkan subset yang terdiri maksimal 3 titik. Subset ini dapat secara langsung di-triangulasi sebagai sebuah segment jika terdiri dari dua titik. 3. Ketika titik-titik tersebut sudah diurutkan. mempunyai titik ujung dari kiri subset). mempunyai titik ujung dari kanan subset).

18 kanan. Gambar 2-12 LR Dasar antara Triangulasi Kiri dan Kanan . Tepi LR dasar antara triangulasi kanan dan kiri. Langkah pertama untuk menggabungkan dua bagian adalah dengan memasukan tepian dari LR. dan mempunyai titik ujung di kiri dan kanan subset) seperti pada Gambar 2-11. Dari sini selanjutnya tepi harus ditentukan untuk ditambahkan tepat diatas tepi LR dasar. Tepi LR dasar adalah tepi LR paling bawah yang tidak berpotongan dengan tepi LL atau RR manapun seperti pada Gambar 2-12. Untuk mengatasi Delaunayhood maka dilakukan penghapusan tepi LL dan RR yang diperlukan. Namun ketika digabungkan jangan sampai untuk membuat tepi LL atau RR yang baru. 4 LR edge Insert RR edge LR edge 6 8 10 RR edge 3 1 5 LL edge 9 LR edge LL edge 2 Merged First Half LR edge 8 Merged Second Half Gambar 2-11 Penggabungan Subset 5.