|
10
2
Pada
langkah
kedua,
kondisi
(a)
dan
(b)
tetap
sama,
tetapi
kondisi
(c)
dan
(d)
berubah menjadi :
(c
'
)p
·
p
4
·
p
8
=
0;
(d
'
)p
·
p
6
·
p
8
=
0;
Langkah
1
diterapkan
pada
setiap
pixel di
garis
batas
dalam
daerah
biner
yang
sedang diproses. Jika satu atau lebih kondisi
(a) - (d) dilanggar,
nilai titik tersebut tidak
berubah.
Jika
semua
kondisi
terpenuhi,
titik
tersebut
diberi
tanda
untuk
dihapus
nantinya. Bagaimanapun, titik tersebut tidak dihapus sampai semua titik di garis batas
diproses. Penundaan
ini
mencegah perubahan struktur data selama eksekusi
algoritma.
Setelah
langkah 1 diterapkan pada
semua titik di
garis batas, titik-titik
yang diberi
tanda
dihapus
(nilainya
berubah
menjadi
0).
Kemudian, langkah 2 diterapkan pada data yang
dihasilkan oleh langkah 1 sama seperti ketika menerapkan langkah 1.
Dengan demikian, satu iterasi dari algoritma thinning terdiri dari (1) menerapkan
langkah 1 untuk memberi tanda titik-titik yang akan dihapus; (2) menghapus titik-titik
yang
diberi
tanda;
(3)
menerapkan
langkah
2
untuk
memberi
tanda
titik-titik
di
garis
batas
yang
tersisa
yang
akan
dihapus;
dan
(4)
menghapus
titik-titik
yang
diberi
tanda.
Prosedur
dasar
ini
diterapkan
secara
berulang-ulang
sampai
tidak
terdapat
titik
yang
akan
dihapus,
dimana
eksekusi
algoritma
dihentikan,
menghasilkan
rangka
dari
daerah
input.
Kondisi (a) dilanggar ketika
titik contour
p1
hanya
mempunyai
satu atau tujuh
8-neighbor
bernilai
1.
Dengan
hanya
memiliki
satu
tetangga
seperti
itu
menunjukkan
bahwa
p1
adalah titik
ujung dari rangka dan tentu saja tidak boleh dihapus. Menghapus
p1 jika titik tersebut mempunyai tujuh tetangga seperti itu akan menyebabkan terjadinya
|