If Fs = "0000000000" then GetNum = 0 Goto EndOfGetNum End If Next Next For i = 1 to MyXStep For j = 1 to MyYStep // 9 的下半部分特征,空处为0/1 // 11 // 0 1 // 1 // 11 Fs = "" Fs = Fs & GA( i+1, j ) & GA( i+2, j ) Fs = Fs & GA( i , j+1 ) & GA( i+3, j+1 ) Fs = Fs & GA( i+3, j+2 ) Fs = Fs & GA( i+1, j+3 ) & GA( i+2, j+3 ) If Fs = "1101111" then GetNum = 9 Goto EndOfGetNum End If Next Next For i = 1 to MyXStep For j = 1 to MyYStep // 6 的上半部分特征,空处为0/1 // 11 // 1 1 // 1 0 // 111 Fs = "" Fs = Fs & GA( i+1, j ) & GA( i+2, j ) Fs = Fs & GA( i, j+1 ) & GA( i+3, j+1 ) Fs = Fs & GA( i, j+2 ) & GA( i+3, j+2 ) Fs = Fs & GA( i, j+3 ) & GA( i+1, j+3 ) & GA( i+2, j+3 ) If Fs = "111110111" then GetNum = 6 Goto EndOfGetNum End If Next Next For i = 1 to MyXStep For j = 1 to MyYStep // 4 的类似十型特征,空处为0/1 // 1 // 1 1 // 1111 // 1 // 1 Fs = "" & GA( i+2, j) Fs = Fs & GA( i , j+1 ) & GA( i+2, j+1 ) Fs = Fs & GA( i , j+2 ) & GA( i+1, j+2 ) & GA( i+2, j+2 ) & GA( i+3, j+2 ) Fs = Fs & GA( i+2, j+3 ) & GA( i+2, j+4 ) If Fs = "111111111" then GetNum = 4 Goto EndOfGetNum End If Next Next For i = 1 to MyXStep For j = 1 to MyYStep // 8 的上下半部特征,空处为0/1 // 11 // 1 1 // 1 1 // 11 //注意,因为6和9也有类似结构, // 所以要先判断不是6和9。 // 上面先判断过6和9,是则跳转了。 Fs = "" Fs = Fs & GA( i+1, j ) & GA( i+2, j ) Fs = Fs & GA( i , j+1 ) & GA( i+3, j+1 ) Fs = Fs & GA( i , j+2 ) & GA( i+3, j+2 ) Fs = Fs & GA( i+1, j+3 ) & GA( i+2, j+3 ) If Fs = "11111111" then GetNum = 8 Goto EndOfGetNum End If Next Next For i = 1 to MyXStep For j = 1 to MyYStep // 3 的类似反C型特征,空处为0/1 // 11 // 1 // 1 // 1 // 11 // 1 加这2个特征是为了与2区别 // 1 Fs = "" & GA( i , j) & GA( i , j) Fs = Fs & GA( i+2, j+1 ) Fs = Fs & GA( i+2, j+2 ) Fs = Fs & GA( i+2, j+3 ) Fs = Fs & GA( i , j+4 )& GA( i+1, j+4 ) Fs = Fs & GA( i+2, j+5 )& GA( i+2, j+6 ) If Fs = "111111111" then GetNum = 3 Goto EndOfGetNum