153
10.4. Języki opisu cech kształtów (Jakubowski)
(?4, |
«34 « 74 «32 «32 «32 «33«33 «33, |
14 ) |
1--- |
ł— |
(?4, |
S32S32S32S33S33S33, |
14 ) |
ł— | |
(?2, |
S32«32«33«33«33, |
14.42 ) |
1--- |
ł— |
($2, |
S33«33«33, |
14.42 ) |
1--- |
1- |
(<?3, |
833S33, |
14.42.23) |
ł— |
1- |
(93, |
A, |
14.42.23) |
h— |
1- |
... (ponieważ punkt startowy był granicą pomiędzy (3)-sinquadem a (l)-8inquadem, więc na wyjście wypisujemy jeszcze 31) •••!— (fli, A, 14.42.23.31)
Zatem: ST(Des(V)) = 14.42.23.31.
Rozpoznajmy ST(Des(V)) za pomocą tak zdefiniowanego automatu:
6(5, 14.42.23.31$) = 6(6(5,14), 42.23.31$) = 6(5i, 42.23.31$) =
= 6(6(5i, 42), 23.31$) = 6(55,23.31$) = 6(6(55,23), 31$) =
= 6(5«, 31$) = 6(6(5e, 31), $) = 6(57, $) = B.
Jak widać, obraz został zaklasyfikowany do klasy B, co jest zgodne z naszymi intuicjami.
Przedstawmy jeszcze algorytm transdjusera przetwarzającego początkowy opis konturu (algorytm automatu deterministycznego, którego użyliśmy do rozpoznawania został opisany w p. 10.1), wprowadzając
bufin - bufor wejściowy,
actsiną - numer bieżącego sinquadu,
newsiną - numer nowego sinquadu,
firstsinq - numer sinquadu, do którego należał pierwszy analizowany element,
givesinquad(bufin) - funkcja pobiera z bufora kolejny element i daje numer sinquadu, do którego ten element należy,
putbufout(sinq1,sinq2) - procedura na podstawie numerów sinqua-dów sinq1,sinq2 zapisuje do bufora wyjściowego przejście pomiędzy nimi w postaci sinq!sinq2,
eof(buf) - funkcja przyjmuje wartość true, kiedy bufor buf jest pusty.