87
國立中山大學機械與機電工程學系研究所 碩士論文 題目:利用局部特徵不變量與 Hopfield 網路辨識重疊物件 Using Local Inv ariant in Occluded Ob ject Recognition by Hopfield Ne ural Network 研究生:曾智宏 指導教授:何應勤 博士 中華民國 九十二

Using Local Invariant in Occluded Object Recognition by Hopfield

  • Upload
    buikhue

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Using Local Invariant in Occluded Object Recognition by Hopfield

國立中山大學機械與機電工程學系研究所

碩士論文

題目:利用局部特徵不變量與 Hopfield網路辨識重疊物件

Using Local Invariant in Occluded Object Recognition

by Hopfield Neural Network

研究生:曾智宏 撰

指導教授:何應勤 博士

中華民國 九十二 年 六 月

Page 2: Using Local Invariant in Occluded Object Recognition by Hopfield

I

摘 要

本研究將介紹 Hopfield-Tank 類神經網路的方法、內容以及我們所

提出的局部特徵不變量在二維影像輪廓辨識上之應用。首先,找尋輪

廓上的特徵點,特徵點的位置所在則包含輪廓上高曲率及轉角的部

分,找出特徵點後我們以多邊型近似(polygonal approximation)的方式來

描述圖形。網路的進行是一次輸入兩個圖形進行比對,一為模型圖形

(model pattern)另一個則是被辨識圖形(test pattern),就個別輪廓上所擁

有的若干特徵點來比對兩個圖形之間的特徵不變量(invariant),圖形不

論是具有平移、旋轉或是尺度(sale)縮放變化,都可在由單一物件或具

有重疊物件組合的被辨識圖形中來對應出模型輪廓特徵的所在,藉此

達到圖形辨識的目的。

Page 3: Using Local Invariant in Occluded Object Recognition by Hopfield

II

Abstract

In our research, we proposed a novel invariant in 2-D image contour

recognition based on Hopfield-Tank neural network. At first, we searched

the feature points, the position of feature points where are included high

curvature and corner on the contour. We used polygonal approximation to

describe the image contour. There have two patterns we set, one is model

pattern another is test pattern. The Hopfield-Tank network was employed to

perform feature matching. In our results show that we can overcome the

test pattern which consists of translation, rotation, scaling transformation

and no matter single or occlusion pattern.

Page 4: Using Local Invariant in Occluded Object Recognition by Hopfield

III

目 錄

頁次

摘要(中)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯Ⅰ

摘要(英)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯Ⅱ

目錄⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯Ⅲ

圖目錄⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯Ⅳ

第一章 緒論

1-1 前言⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯1

1-2 相關技術⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯2

1-3 研究動機⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3

1-4 論文架構⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯6

第二章 類神經網路模式總論

2-1 類神經網路之基本架構⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯10

2-1-1 生物神經元與人工神經元模型⋯⋯⋯⋯⋯⋯ 12

2-1-2 常用的非線性轉移函數⋯⋯⋯⋯⋯⋯⋯⋯⋯ 16

2-2 類神經網路分類⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯18

第三章 Hopfield 類神經網路

3-1 網路架構與觀念⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯22

3-1-1 最小化能量的觀念⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 23

Page 5: Using Local Invariant in Occluded Object Recognition by Hopfield

IV

3-2 Hopfield-Tank 類神經網路⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯25

3-2-1 Hopfield-Tank 網路演算法⋯⋯⋯⋯⋯⋯⋯ 26

3-3 Hopfield-Tank 網路之應用⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯28

第四章 輪廓上特徵點之擷取與局部特徵不變量

4-1 影像分割⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 33

4-1-1 影像二值化與自動臨界值擷取(Automatic

thresholding) ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 34

4-1-2 邊緣檢測 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯37

4-1-3 特徵點擷取技術 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯39

4-1-4 特徵表示 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯41

4-2 本研究所提出之局部特徵不變量描述⋯⋯⋯⋯⋯⋯ 43

第五章 實驗結果與分析

5-1 建立Hopfield類神經網路 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯46

5-2 網路流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯51

5-3 參數最佳化⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯52

5-4 實驗結果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯57

5-4-1 比對單一物件⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯57

5-4-2 比對重疊物件(Occluded object) ⋯⋯⋯⋯⋯64

5-5 本章結論⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯68

第六章 結論與建議

Page 6: Using Local Invariant in Occluded Object Recognition by Hopfield

V

6-1 結論⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯70

6-2 未來研究建議⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯71

參考文獻⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯72

附錄一⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯76

Page 7: Using Local Invariant in Occluded Object Recognition by Hopfield

VI

圖目錄

圖1.1 論文流程圖⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯6

圖2.1 神經細胞結構圖⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯12

圖2.2 人工神經元模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯15

圖2.3 常用的非線性轉移函數⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯17

圖3.1 Hopfield網路架構 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 22

圖3.2 Hopfield 網路規模示意圖 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯23

圖3.3 TSP問題之網路規模 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯29

圖3.4 解TSP問題之網路收斂結果表示⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯30

圖4.1 二值化影像⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯36

圖4.2 物體輪廓編碼方式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯37

圖4.3 物體輪廓之表示⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯38

圖4.4 擷取下的輪廓⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯39

圖4.5 supported length示意圖 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 40

圖4.6 特徵點擷取結果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯41

圖4.7 辨識輪廓形態之示意圖⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯43

圖5.1 MxN二維Hopfield網路 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 46

圖5.2 非線性轉換函數F(x,y) ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 48

圖5.3 (a)-(e)為Model輪廓以及所萃取的特徵點 ⋯⋯⋯⋯⋯59

圖5.4 (a)輸入之測試輪廓。將圖5.3(d)旋轉一角度⋯⋯⋯⋯ 60

Page 8: Using Local Invariant in Occluded Object Recognition by Hopfield

VII

圖5.4 (b)輸入之測試輪廓。將圖5.3(a)旋轉並縮小尺寸⋯⋯ 60

圖5.5 比對結果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯63

圖5.6 (a)為重疊圖5.3(b)與圖5.3(e)兩個物件⋯⋯⋯⋯⋯⋯65

圖5.6 (b)為重疊圖5.3(b)與圖5.3(c)兩個物件⋯⋯⋯⋯⋯⋯65

圖5.7 重疊物件比對結果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯67

Page 9: Using Local Invariant in Occluded Object Recognition by Hopfield

VIII

表目錄

表5.1 (a)參數最佳化實驗表。實驗一 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯52

表5.1 (b)參數最佳化實驗表。實驗二 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯53

表5.1 (c)參數最佳化實驗表。實驗三 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯53

表5.1 (d)參數最佳化實驗表。實驗四 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯54

表5.1 (e)參數最佳化實驗表。實驗五 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯54

表5.1 (f)參數最佳化實驗表。實驗六 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯55

表5.2 參數設定總攬⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯57

表5.3 (a)網路初始狀態 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯60

表5.3 (b)網路最佳收斂狀態 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯60

表5.4 (a)網路初始狀態 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯61

表5.4 (b)網路最佳收斂狀態 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯62

表5.5 比對結果總攬⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯65

Page 10: Using Local Invariant in Occluded Object Recognition by Hopfield

1

第一章 緒論

1.1 前言

在人類所獲得的資訊中,絕大多數都是來自於視覺系統所接收的

影像訊息,當人類眼睛看到一物體或是影像時,我們可以迅速的辨識

出我們熟悉的事物。

隨著新世紀的來臨,工業自動化的發展日趨發達,使用電腦來解

決工程問題已經成為現代科學的趨勢,電腦擅長執行高速的複雜運

算,而且所得結果具有高度精準性與可靠性。藉由電腦科技的發達,

發展具備思考性以及引申能力電腦亦是本世紀重要的發展關鍵之一。

類神經網路(Neural network)正是我們實現這種目標的一項重要發展系

統,類神經網路在很多領域均已被應用,其重要性不可言諭,而且已

成了解決問題的必備工具。其中的關鍵在於我們利用電腦高速運作的

特性來仿造生物腦之運作模式。藉由所建立的系統,我們可以將一些

繁瑣且低階的工作交由類神經網路來進行,以電腦視覺取代需人工反

覆的辨識工作就是一最佳例子,應用範圍例如;工業檢測、手寫辨識、

語音辨識、機械手臂定位、醫學影像處理…等。而本研究正是朝向這

樣的應用目標來進行,並將重點鎖定平面影像輪廓在平移、旋轉、縮

Page 11: Using Local Invariant in Occluded Object Recognition by Hopfield

2

放變化下的辨識系統開發之研究。

1.2 相關技術

Hopfield類神經網路是著名物理學家 John Hopfield在80年代所提

出,他在此網路中導入了能量函數(Energy function)的觀念作為網路穩

定性的依據。隨後 Hopfield 與 Tank在1985年又提出以特定的能量函

數來解最佳化 (Optimization)問題 [1],當中最著名的即是以

Hopfield-Tank類神經網路來解 TSP(Traveling salesman problem旅行銷

售員問題)問題的最佳化,文中指出在適當的限制條件下可使網路輸出

得到一穩定值。而近年來 Hopfield 類神經網路在圖形辨識與影像處理

中也被大力採用[3]-[9][19][25]-[26]。Nasrabadi 與 Li [3]是第一位以

Hopfield網路來辨識平面輪廓,但他們的方法錯誤率較高並且不能克服

具有縮放變化下的輪廓比對。Suganthan [5]提出以 Hopfield網路針對同

態屬性關聯圖型(Homomorphic ARGs)的比對。Alan與 Fu et al.[6]提出

以曲線彎曲函數(Curve Band Function,CBF)作為輪廓特徵依據,並以

Hopfield-Amari類神經網路來解圖形辨識問題,但他們的方法無法應用

在具有重疊物件情形下之辨識。Li 與 Lee [7]以 Hopfield類神經網路應

用在 Affine transformation(旋轉、位移、放大縮小、變形等變化)的影

像比對。Li 與Lee [8]在2002年也提出結合數個Hopfield類神經網路

Page 12: Using Local Invariant in Occluded Object Recognition by Hopfield

3

的輸出值來辨識重疊物件影像並且藉由位置估測(pose estimation)來學

習影像移動的可能方向。而 LEE et al.[19]等也提出以小波轉換來萃取

輪廓特徵,結合 Hopfield 類神經網路來做輪廓辨識,並證明以小波轉

換能得到更接近全域最佳(global optimal)的網路初始狀態,能更有效的

使網路達成收斂,不過他們的方法也一樣不適合針對具有縮放變化的

圖形進行比對。

1.3 研究動機

一般來說,電腦視覺的應用最主要就是要察覺目標物件的變化情

況,藉由影像處理以及辨識技術來告知主事者重要的訊息。而現階段

工業檢測之趨勢即是利用電腦視覺來取代人工檢測。物件可任意放置

或部分重疊,不需以人工的方式將物件安排於拖板或固定的位置,可

增加工業自動化的彈性。然而,影像是二維的訊號,處理的過程中需

要較多的處理時間以及記憶體空間,能選擇一種能有效減少耗費時間

以及降低佔用電腦資源的方法,是提升辨識效率的主要重點之一。

依照上述的觀點,我們以類神經網路為研究方向來進行輪廓辨識

工作,就是著重於類神經網路是模仿生物神經網路的資訊處理系統能

有效的利用電腦資源並具有引申以及智慧學習行為。而當今在物件辨

識(Object recognition)方面類神經網路是最多人採用的方法[18],目前已

Page 13: Using Local Invariant in Occluded Object Recognition by Hopfield

4

發展的類神經網路模式的能力,我們可以看出具有以下幾種優點:

1. 高速的計算能力

現今的數位電腦雖然計算的速度很快,執行一個處理單元的計算循

環時間大約只要 1~10 µ sec,而一個生物神經網路的各別神經元的

循環時間約 10~100 msec,相較之下數位電腦似乎快了不少。然而

為何在許多問題中,人腦的處理速度卻遠遠優於電腦?因為在於人

腦的計算架構為『巨量平行(massively parallel)架構』,目前已知的人

腦大約有 1410 這麼多的連結,如果每根聯結以平行的方式進行運

作,則我們可以看出人腦的處理速度遠快於電腦。

2. 具有過濾能力(容錯能力)

在類神經網路中某一個輸入與某一個輸出的關係,並不是由某一個

節點所單獨負責的,事實上每一個節點只會輕微的影響輸入—輸出

模式,當網路中所有節點的特徵值組合在一起時,才能映射出完整

的輸入—輸出模式。因此當某一節點所輸入要處理的訊號具有雜訊

時,此一雜訊將不會對於整個網路有太大的影響。

3. 適應性學習能力

類神經網路都有特定的演算法,經由演算法可以調整節點與節點間

的權重值(Weight),透過疊代過程不斷的調整權重值直到得到一穩定

Page 14: Using Local Invariant in Occluded Object Recognition by Hopfield

5

或正確的輸出值,這種能力稱為適應性學習能力。

4. 聯想記憶(Associative memory)

在回歸型(feedback)類神經網路中,並沒有所謂的資料記憶區,但

是網路卻可以記住訓練範例,整個網路可以對輸入值做運算,聯想

出相對應的輸出值,此種網路稱為聯想記憶網路。

5. 解決最佳化(Optimization)問題

可以在問題領域中,我們找出一組設計變數,在滿足設計限制下,

使整個設計目標達到最佳狀態,這樣的工作我們可藉由類神經網路

來達成。

近年來國際科學期刊上所見的 Hopfield 類神經網路在於圖形辨識

(Pattern recognition)上的應用,主要是針對影像輪廓來進行辨識,當中

最大的差別在於針對重疊影像的辨識具有較佳的辨識效果,並且網路

本身的學習也有別於其他類神經網路,它不需經由大量的資料來做先

前訓練,基於上述的許多優點,因此我們以 Hopfield 類神經網路作為

影像辨識的工具,並且加入過去其他相同研究中所未達成的工作。

Page 15: Using Local Invariant in Occluded Object Recognition by Hopfield

6

1.4 論文架構

圖 1.1論文流程圖

在本論文中,共分為六章。主要的內容為:第二章說明類神經網

路的基本架構、運作模式及類神經網路的分類,第三章說明 Hopfield

類神經網路的架構及其衍生出的最佳化應用模型 Hopfiel-Tank 類神經

第一章 序論

第二章

類神經網路總論

第三章

Hopfield與

Hopfield-Tank

類神經網路說明

Model 影像

影像前處理 測試影像

特徵萃取

Hopfield

類神經網路

比對結果

第四章

圖形識別之相關研究

第五章

實驗與分析

Page 16: Using Local Invariant in Occluded Object Recognition by Hopfield

7

網路,第四章說明我們採用萃取輪廓特徵的方法以及提出新的特徵不

變量,第五章針對我們所建構的網路進行實驗以及說明我們的實驗成

果,第六章結論與建議,最後為參考文獻與附錄。

Page 17: Using Local Invariant in Occluded Object Recognition by Hopfield

8

第二章 類神經網路模式總論

模擬人腦的功能發展機能化電腦,是絕大多數發展電腦科學學者

的美好理想。現今電腦雖然擅長高速的複雜計算,並且所得的結果具

有高度的精準度及可靠性,對於科學及工程或者是其他的應用來說有

莫大的幫助,但仍然有很多工作的處理是電腦不及人腦的。例如:語

音的辨識、圖形的識別、專業知識的決策工作⋯等等,這些工作對於

電腦來說都還有很大的進步空間。更進一步的說,上述的語音辨識及

圖形識別對於一個小孩來說可以輕而易舉的判別,甚至連動物也都可

以達成某種程度的語音及圖形識別,因此我們可以知道『生物腦』是

擁有很強的識別能力。而建構類神經網路或稱為人工神經網路的研究

重點之一就是想要去了解生物腦的某種計算原理,企圖來模擬生物腦

的資訊處理系統使電腦能勝任更高階的工作。

回顧神經網路的研究道路,大約可分為幾個階段:1940年代到 1960

年代線性單層網路,McCulloch與 Pitts在 1943年提出第一個神經元

運算模型,1949 年心理學家 Hebb 提出了一種學習方式稱為 Hebbian

學習法則,至今仍是許多神經網路所採用的學習法則;在 1950到 1960

年代之間接著有許多的神經網路被提出,Rosenblatt 提出認知機

Page 18: Using Local Invariant in Occluded Object Recognition by Hopfield

9

(perceptron)來從事文字辨識,Widrow 與 Hoff 共同提出適應線性元件

(adaptive linear element),Steinbuch提出學習矩陣(learning matrix);1960

年代到 1980 年代類神經網路的低潮時期,Minsky 與 Papett在 1969

年出版了 Perceptrons一書當中以數學證明認知機(perceptron)這樣的單

層神經網路無法實現互斥或(exclusive or)的邏輯問題,從理論的角度給

予類神經網路重大的打擊,使得接下來的十幾年內類神經網路陷入低

潮;1980年代Hopfield網路重新帶來的研究熱潮,1982年 J.Hopfield

提出了著名的『Hopfield模型』理論將能量的觀念引進類神經網路,使

得類神經網路的研究再度熱絡起來。此模式證明類神經網路的處理單

元間的交互作用,可自動使類神經網路中所定義的能量函數收斂到一

局部最小值,並以此模式解自聯想記憶(Autoassociate memory)問題。隨

後在 1985 年 J.Hopfield 與 D.Tank 以此網路為延伸來解組合最佳化問

題,證明只要適當的選擇網路架構與定義計算能量函數,網路可以很

快的求得良好的近似最佳解,此種網路對於許多組合最佳化的問題也

提供一條嶄新且具有潛力的研究途徑。

在這個階段裡同時也有幾個著名的神經網路被提出,Kohonen 提

出自組特徵映射網路 (self-organizing feature mapping),Hinton 與

Sejnowski 提出 Boltzmann 機,Rumelhart 與 PDP(parallel distributing

processing, PDP)研究群所提出的倒傳遞神經網路 (backpropagation

Page 19: Using Local Invariant in Occluded Object Recognition by Hopfield

10

neural network),Moody與 Darken提出放射基底函數網路(radial basis

function network,RBF )。

在本章節中,將分 3節來對類神經網路作一簡單性介紹。2-1節首

先說明類神經網路的觀念及基本架構並分別提出生物及人工神經元模

型,2-2節介紹目前類神經網路的分類,2-3節說明類神經網路的特性。

2-1 類神經網路之概念與基本架構

約在十九世紀末,藉由解剖學的幫助,讓生物學家了解神經細胞

是大腦的主要的構成細胞,到了二十世紀初由神經電化學家 E. D.

Adrian 的實驗中發現到『當外界給予神經細胞足夠強度的刺激電流

時,神經細胞便會放出電流脈波(current pluse),而這種電流脈波,大多

具有相同的強度,且其放射頻率與外來的刺激電流的強度成正比。』

此實驗的發現,稱為神經細胞電化學作用學說,這個學說影響了日後

對於人工神經元模型的建立[20]。

所謂的類神經網路,沈政[22]在其書中引述了下面幾種不同的定

義。Kohonen教授認為:『神經網路是由具有適應能力的簡單單元大規

模平行連接而形成的網路,其與外部世界的關係類似於生物神經系

統』。Kosko認為:『神經網路是一種可規劃的動力系統,儲存、加工和

提取訊息均是可規劃的。由大量平行分佈的單元所組成的神經網路,

Page 20: Using Local Invariant in Occluded Object Recognition by Hopfield

11

其各組成部分非同步化的變換,從而實現信息的整體處理任務。每個

神經元都是非線性物件,將一些權重變換的輸入信號轉化為單一的數

字輸出信號,神經網路通過學習改變突觸聯結、輸出的符號或數值。』。

葉怡成[10]定了較精確的定義:『類神經網路是一種平行的計算系統,

包含軟體及硬體,它使用大量簡單的相連人工神經元來模仿生物神經

元的網路能力,由外界或者是其他的人工神經元獲得資訊並加以數學

運算,再輸出到外界或是下一個神經元。』。

事實上,所謂的類神經網路只是一種仿造生物腦或神經系統的網

路結構,它由大量的處理單元構成,每個處理單元均可接受大量輸入,

但只有一個輸出,當然這個輸出可以分支再分配到其他處理單元做處

理。整合上述之說明,我們可將類神經網路的基本架構可分成三個層

次來探討:

1. 處理單元(Processing Element,PE)

此部份為類神經網路組成的基本單元,處理單元的作用可用兩個函

數來說明:集成函數 (Summation function)、轉換函數 (Transfer

function)。

集成函數:是用以將從其他處理單元輸出,透過網路聯結傳來的訊

息加以綜合。

轉移函數:目的是將集成函數輸出值轉換成處理單元的輸出。此部

Page 21: Using Local Invariant in Occluded Object Recognition by Hopfield

12

份將在圖 2.2以及 2-1-2節另做說明。

2. 層(Layer)

若干個具有相同作用的處理單元集合成『層』,層本身也有三種作

用:正規化輸出、競爭化輸出、競爭化學習,在這個層次中主要是

探討各處理單元間的協同作用,運用不同的機制運作使網路產生不

同的特性。一般而言,監督式學習與非監督式學習網路有明顯的層

作用,聯想式學習以及本研究所採用的最佳化網路則無明顯的層作

用,關於各種不同學習的網路分類將於 2-2節另做說明。

3. 網路(Network)

若干個具不同作用的層集合成『網路』,網路本身亦有兩種作用:學

習過程、回想過程。

2-1-1 生物神經元與人工神經元模型

本節我們將分頭探討生物神經元與人工神經元的模型。

輸入神經樹(樹突) (Dendrites) 神經節(突觸)(Synapses)

神經軸

(軸索)(Axon)

輸出神經樹(樹突)(Dendrites)

Page 22: Using Local Invariant in Occluded Object Recognition by Hopfield

13

圖 2.1 神經細胞結構圖

[資料來源:王進德, 蕭大全 1994[20]]

圖 2.1是一個典型的生物神經細胞模型,圖中繪有兩個神經細胞,

每個神經細胞主要由:(1)神經細胞核(Soma)、(2)神經軸(軸索)(Axon)、

(3)神經樹(樹突)(Dendrites)、(4)神經節(突觸)(Synapses)等四部份構成。

以下依序介紹此四部份。

1. 神經細胞核(Soma)

它是神經細胞的中心體,它的作用約是將輸入神經樹收集到的信

號,在此作加總後再作一次非線性轉換,再由神經軸將信號傳送到

其他的神經細胞中。

2. 神經軸(軸索)(Axon)

連接在神經細胞核上,用來傳送由神經細胞核產生的加總信號至其

他的神經細胞中,作用類似輸送機構。

3. 神經樹(樹突)(Dendrites)

神經樹可分為兩種:一種是輸入神經樹,另一種是輸出神經樹。輸

入神經樹是用來接收其他神經細胞所傳送來的信號;而輸出神經樹

是將神經細胞核所產生的加總信號傳至其他的神經細胞。因此可將

神經樹看成神經細胞的樹枝狀輸出入機構。

Page 23: Using Local Invariant in Occluded Object Recognition by Hopfield

14

4. 神經節(突觸)(Synapses)

輸入神經樹和輸出神經樹相連接的點稱為神經節(Synapses)。如圖中

圈起來的部分。每個神經細胞大約有 1000個神經節。神經節的作用

類似於神經細胞網路的記憶體,它表示兩個神經細胞間的聯結強

度,我們將此一聯結強度以一數值來表示,稱為加權值(Weight)。

當神經網路在進行學習時,外界刺激神經細胞所產生的電流會使

神經細胞產生電流脈波,當神經細胞透過輸入神經樹與神經節從其它

神經細胞所傳來的電流脈波(訊號)後,經過神經細胞核的處理,產生一

個新的脈波(加總訊號),這個新的脈波訊號再透過輸出神經樹與神經軸

傳送的下一個輸入神經樹,再經由輸入神經樹與神經節成為下一個神

經細胞的輸入脈波。在學習過程中,脈波訊號若經過興奮神經節

(Excitatory synapse),則會增加脈波訊號的速率;若是經過抑制神經節

(Inhibitory synapse),則會減少脈波訊號的速率。因此脈波訊號的速率

是取決於輸入脈波訊號的速率與神經節的強度(weight),這部分也是著

名的 Hebbian神經細胞學習規則,其要點如下:『若有 n個神經元相互

聯結,當中第 i個神經元與第 j個神經元的狀態皆屬於興奮時,則此時

兩者之間的連接加權值 ijW 應該要變大。』而神經節就是我們神經網路

中記憶與儲存資訊的所在,脈波訊號在學習過程裡反覆的在神經網路

Page 24: Using Local Invariant in Occluded Object Recognition by Hopfield

15

中流動,神經節上的強度也會因為脈波訊號的改變而反覆的變化,最

後慢慢的趨於穩定,此時表示學習已完成。神經網路的學習即在於調

整神經節的強度。

類神經網路即是由許多的人工神經元(artificial neuron)所組成,其

處理的流程就是仿造生物神經細胞的運作流程,透過輸入神經樹傳達

脈波訊號,加總後再由神經核作非線性轉換產生一新的脈波訊號,若

是此訊號夠強,則新的訊號脈波就會傳到下一個神經細胞做為輸入訊

號。下圖 2.2為人工神經元模型。

圖 2.2 人工神經元模型

在圖 2.2中,每一個人工神經元皆有多個輸入 X1 , X2 , …, Xn及一個

輸出,其輸入與輸出的關係式,一般可用輸入值的加權乘積和的函數

來表示:

))(()(1∑=

−⋅=n

iii tXWftY θ (2-1)

θf

W1

W2

…..

Wn

X1

X2

…..

Xn

Y

Page 25: Using Local Invariant in Occluded Object Recognition by Hopfield

16

其中

Y(t)= 模仿生物神經元模型的輸出訊號。

f = 模仿生物神經核的非線性轉換函數。

iW = 模仿生物神經節的強度,又稱為加權值。

iX = 模仿生物神經元模型的輸入脈波訊號。

θ = 模仿生物神經元的閥值,也就是輸入訊號的加權值乘積和

必須大於此閥值後,才能被傳輸到下一個神經元。

2-1-2 常用的非線性轉移函數

由(2-1)式知非線性轉移函數 f(x),其中 x = ∑=

−⋅n

iii tXW

1)( θ ,其目的

就是將輸入值的加權乘積和轉換成輸出值。常用的非線性轉換函數有

下列三種,如圖 2.3所示。

(a)

1

0 θ X

f(x)

Page 26: Using Local Invariant in Occluded Object Recognition by Hopfield

17

(b)

(c)

圖 2.3 常用的非線性轉移函數

1. 步階函數(Step function),如圖 2.3a所示,其中

2. 雙彎曲函數(Sigmoid function),如圖 2.3b所示,其中

1

0 θ X

f(x)

θ0

1

X

f(x)

-1

1( )

0if x

f xif x

θθ

≥= <

( ( ))1( ) (0 ( ) 1)

1 a xf x f xe θ− −= < <

+(2-3)

(2-2)

Page 27: Using Local Invariant in Occluded Object Recognition by Hopfield

18

3. 雙曲線正切函數(Hyperbolic tangent function),如圖 2.3c所示,其中

這三種函數均有一共通性,就是輸入值較小時,其輸出值為 0或-1

端視函數而定,而輸入值較大時,其輸出值即轉為 1,這主要是根據

Adrian 神經細胞的電化學作用學說:當一個神經細胞受到足夠強度的

刺激後會發出一個定值電流脈衝,其狀態也就改變為 1。這也是採用這

三種非線性轉移函數的理由。

在實際應用中,這三種非線性轉移函數,常分別應用在不同的類

神經網路中。當類神經網路應用在二極值化(Binary)系統時,大多採用

步階函數型態的轉移函數;當應用在連續型(Continuous)系統時,雙彎

曲函數及雙曲線正切函數便較實用。而本研究正是採用二極值化系統

所建構之網路。

2-2 類神經網路的分類

葉怡成[10]將類神經網路的分類歸納成二種:

1. 依學習策略分類

(1) 監督式學習

1 ( ( ))( ) ( 1 ( ) 1)1 ( ( ))

e a xf x f xe a x

θθ

− − −= − < <

+ − − (2-4)

Page 28: Using Local Invariant in Occluded Object Recognition by Hopfield

19

從問題領域中取得訓練範例(有輸入變數值,也有輸出變數),

並從中學習輸入變數與輸出變數中的對應規則,以應用在新的

案例。

(2) 無監督式學習

從問題領域中取得訓練範例(只有輸入變數值),並從中學習範

例的內在集群規則,以應用在新的案例(只有輸入變數值,而須

推論它與哪些訓練範例屬同一集群的應用)。

(3) 聯想式學習

從問題領域中取得訓練樣本(只有狀態變數),並從中學習範例

的內在記億規則,以應用在新的案例(只有不完整的狀態變數

值,而須推論其完整狀態變數值的應用)。

(4) 最佳化應用

類神經網路除了『學習』的應用以外,還有一種特別的應用—

最佳化應用:對一問題決定其設計變數值,使其在滿足設計限

制下,使設計目標達到最佳化的應用。而本研究正是應用此種

類神經網路。

2. 依網路架構分

(1) 前授式架構(forward)

神經元分層排列,形成輸入層、隱藏層、輸出層。每一層只接

Page 29: Using Local Invariant in Occluded Object Recognition by Hopfield

20

受前一層的輸出做為輸入,稱前授式架構。

(2) 回饋式架構(feedback)

從輸出層回饋到輸入層,或者每一層內的各處理單元間都有輸

出輸入關係、各神經元均可相互連接者,稱為回饋式架構。

Page 30: Using Local Invariant in Occluded Object Recognition by Hopfield

21

第三章 Hopfield類神經網路

於第二章曾提到,Hopfield類神經網路的出現再次開拓了類神經網

路的研究熱潮。在本章,我們將介紹 Hopfield 類神經網路的原理與架

構。

Hopfield Neural Network(HNN),此網路是由 Hopfield[1]於 1982年

所提出,是一種聯想式學習網路也是回饋型網路中最具代表性的網

路,聯想式學習是從問題領域中取得訓練範例(狀態變數值),並從中學

習範例的內在記憶規則,以應用於不完整的狀態變數值下,需要推論

其完整狀態變數值的案例,而聯想式學習又可分為二種:(1)自聯想式

(auto-associative) 由 一 個 樣 式 聯 想 同 一 種 樣 式 (2) 異 聯 想 式

(hetero-associative)由一個樣式聯想另一種樣式,Hopfield網路則是屬於

自聯想式的網路。

Hopfield所提出的網路模型有兩個重要成分,即儲存信息的學習規

則(記憶)和提取信息的動力規則(聯想)。Hopfield 網路的能量方程式與

網路自由能概念是整個網路的基石,網路從高能量的狀態到達最小能

量狀態,得到收斂給出穩定解答完成網路功能,是此網路的核心所在。

此外,網路本身可直接與電子線路對應,以電路來實現 Hopfield網路,

Page 31: Using Local Invariant in Occluded Object Recognition by Hopfield

22

為創造電子神經網路計算機開闢了一條可行性的道路。

3-1 網路架構與觀念

Hopfield網路的網路架構如圖 3.1所示。

圖 3.1 Hopfield網路架構

其中, 1v , 2v ,⋯, nv 是網路神經元的狀態, 1x , 2x ,⋯, nx 是輸入

狀態值,而'1x , '

2x ,⋯, 'nx 則是網路在經過運作之後的收斂輸出值。

Hopfield 網路本質上具有三種平行特點:(1)平行輸入通道(2)平行

輸出通道(3)神經元間的平行性連接。由圖 3.1 中可看出,所有的網路

神經元都有輸出連接到其它的神經元,而所有神經元的輸入都是來自

於其它神經元的輸出,並且網路中每個神經元彼此相連。因此我們可

以說所有的神經元都平行的接受其它神經元所提供的輸入,也都平行

的將結果輸出到網路上其它的神經元上。

1−nx2x1x nx

1v 2v 1−nv nv

'1x '

2x '1−nx '

nx

Page 32: Using Local Invariant in Occluded Object Recognition by Hopfield

23

3-1-1 最小化能量的觀念

更進一步的,我們以能量的觀點來看 Hopfield 類神經網路。能量

的觀點是來自於 Liapunov的運動穩定性理論。此理論告訴我們,若我

們定義一“能量函數”E(v,t)來表示一個運動系統的“能量”,那麼由

物理上的角度來看我們可以很容易的理解,一個有限能量的運動系統

其能量會隨著時間的變化而逐漸變小,也就是其能量的變化率為負

值,即

那麼系統終究會停留在系統的平衡狀態得到一最佳的輸出。

依照 Hopfield 的網路規模如圖 3.2 所示以及 Liapunov 理論之觀

念,Hopfield 定義出一“能量方程式(Energy function)”來表示網路的

能量,這個方程式的定義如下:

( , ) 0E v tt

∂<

Model

Scene k l N

M

j

i

jljlW

ikikW ikI

jlI

ikjl ikjl ij klW C δ δ= − −

jlV

ikV

(3-1)

Page 33: Using Local Invariant in Occluded Object Recognition by Hopfield

24

1 1 1

12

M N M N M N

ikjl ik jl ik iki k j l i k

E W V V I V= = =

= − −∑∑∑∑ ∑∑

圖 3.2 Hopfield 網路規模示意圖

其中

ikjlW = 表示第 i列對應到第 k行的神經元與第 j列對應到第 l行

的神經元之間的連接加權值(Weight)

ikV = 表示第 i列對應到第 k行的神經元的輸出

jlV = 表示第 j列對應到第 l行的神經元的輸出

ikI = 表示第 i列對應到第 k行的神經元的偏權值(Bias)

我們希望在「記憶」的過程中,所有的記憶樣本都成為網路的平

衡狀態,由 Liapunov的運動穩定性理論可知當能量達最小值時,此時

系統的運動狀態即為平衡狀態。所以我們希望能有一調整網路加權值

的方法,使網路在記憶訓練結束後面對測試聯想時能有引申的能力,

使(3-2)式的能量方程式收斂到最小值,能量方程式之收斂證明收錄於

附錄一。有關圖 3.2的部分在第五章將有詳細的說明。

(3-2)

Page 34: Using Local Invariant in Occluded Object Recognition by Hopfield

25

3-2 Hopfield-Tank 類神經網路

Hopfield–Tank 類神經網路是一種最佳化應用網路模式,是由

J.Hopfield 與 D.Tank 於 1985年所提出[1]。

此網路可用來解決『組合最佳化』的問題。所謂的『組合最佳化』

是指對一問題決定其設計變數值,使其在滿足設計限制條件下,讓設

計目標達到最佳狀態值。Hopfield–Tank 類神經網路已經被提議用以解

決許多組合最佳化的問題,這種網路包含許多神經單元,並利用各個

神經單元之間的交互連結運作能使一個特定的能量方程式(Energy

function)趨近於一個局部或總體的最小值。雖然以類神經網路來解決組

合最佳化問題有許多優點,然而,此種網路是以最陡坡降法(steepest

descent)的觀念來搜尋最佳狀態值,所以很容易就搜尋到離起始點最近

的局部最小值(local minimum)。也因此在使用 Hopfield–Tank類神經網

路時有許多的參數需要設定,並且網路對於參數的設定十分敏感,不

同的參數會造成不同的起始值也會改變搜尋最佳值的結果。在參數設

定上由於沒有所謂的設定標準,缺乏系統化的設定因此只能以實驗的

方式來找出最適合的參數,幫助我們的系統搜尋到最穩定的狀態。

前面我們曾經提及 Hopfield 類神經網路的模式,而 Hopfield 與

Hopfield-Tank 類神經網路基本上是相同的模式,只是針對不同的最佳

化應用採用不同的能量方程式。而兩者最大的差別在於 Hopfield 類神

Page 35: Using Local Invariant in Occluded Object Recognition by Hopfield

26

經網路是一種聯想式的網路,他有『記憶』及『聯想』兩個步驟,所

謂的『記憶』就是藉由『訓練樣本』來訓練網路記住當中的特徵,也

可稱為學習過程,並在此過程中將加權值矩陣建立完成;『聯想過程』

就是將已經訓練完成的網路,藉由它的『記憶』也就是先前所訓練完

成的加權值矩陣,針對『測試範例』來做聯想。而 Hopfield–Tank類神

經網路並無上述的兩個步驟,網路本身不需要經過事前個別訓練學

習,只針對所需要的目標來設定能量方程式,對於所設定的能量方程

式再來設定最適合的參數並進行疊代找出能量最小值的狀態,加權值

矩陣的建立是直接由 Model 影像與測試範例影像之間的對應過程來完

成。這也是我們將這兩種網路分開介紹的主要原因。

3-2-1 Hopfield-Tank 網路演算法

如果我們樣用 Hopfield-Tank 類神經網路來求解一個組合最佳化

的問題,其步驟如下:

(1) 建構一個適合該組合最佳化的能量方程式 optE 。

(2) 將 optE 與Hopfield 網路原本定義之標準能量方程式E (3-2)式相比

較,設法推導出相對應的連結加權值矩陣(Weight) ikjlW 及偏權值

(Bias) ikI 。

Page 36: Using Local Invariant in Occluded Object Recognition by Hopfield

27

1 1

M N

ik ikjl jl ikj l

U W V I= =

= +∑ ∑

(3) 利用簡單判斷機制決定初始狀態值,此初始狀態值會成為下一次

的輸入狀態值並且不斷的疊代更新,當網路收斂後此時的狀態值

便是實際最佳化的結果。

網路的動態方程式如下:

(3-3)式為輸入狀態值的動態方程式,藉由加權值 ikjlW 、偏權值 ikI 以

及網路其他神經元的前一次輸出 jlV j=1~M , l=1~N來動態產生下

一次的輸入狀態值。(3-4)式則是判斷網路神經元輸出的機制。

在此我們也針對網路的動態方程式來做說明,(3-4)式的動態判斷

機制可分為兩種:

(1) 平行式:網路神經元的狀態值一起更新,也就是一個狀態值在更

新以後不立即替換該狀態值,由此一來便不影響其它網路神經元

狀態值的更新。

(2) 非平行式:網路神經元的狀態值逐一更新,也就是一個狀態值在

更新之後立即生效,可影響其他的網路狀態值的更新結果。

(3-3)

1 0.50 0.5

0.5 0.5

iknew

ik ik

ik ik

if UV if U

V if U

>= < − − ≤ ≤ (3-4)

Page 37: Using Local Invariant in Occluded Object Recognition by Hopfield

28

Hopfield-Tank 類神經網路則是採用『非平行式』來更新網路狀態

值。

上述的步驟中,最困難的便是步驟(1),如何找到一個能量方程式

來表達一個組合最佳化問題是解決問題的重點所在。而初始狀態值的

決定也是一項不可忽視的重點, 因為初始狀態對於 Hopfield type類神

經網路在往後的表現來說是一項影響力很重的因素。

3-3 Hopfield-Tank 網路之應用

在 Hopfield-Tank 網路的應用中,最經典的便是解 TSP(Traveling

Salesman Problem, 旅行銷售員問題),1985首次發表時就是以解決這種

問題為例子。TSP的問題定義:一旅行銷售員要在 N個城市中做生意,

試著找出一條從某城市出發,連貫這些城市,又回到原來出發城市的

最短路徑。以下我們以四個城市的 TSP 問題為例簡單敘述

Hopfield-Tank網路之運作過程:

由於是一條循環路徑,因此從哪一個城市出發,或是沿著順時針

方向還是逆時針方向走完全程都不重要,因為其總里程都是一樣,由

此可知其可能之路徑非常的多,而用 Hopfield-Tank網路來解,雖不一

定能得到最佳解,但要得到近似最佳解卻不難。解著我們以下列步驟

說明解 TSP問題的步驟。

Page 38: Using Local Invariant in Occluded Object Recognition by Hopfield

29

1. 狀態變數

此問題的狀態變數為:推銷員到各城市的順序。以下列符號表示:

AiV =1表示城市 A『是』推銷員所到的第 i站

=0表示城市 A『不是』推銷員所到的第 i站

由此狀態變數所構成之網路規模可視為一矩陣型態,稱為排列矩陣

其每一個橫列代表一個城市,每一直行代表一個站次。下圖為一排

列矩陣表示 TSP的網路規模。

圖 3.3 TSP問題之網路規模

2. 狀態要求

此問題的限制條件包括:

(1) 每一個城市只去一次

(2) 每一次只去一個城市

(3) 四個城市都要到

此問題的設計目標為:

A

B

C

D

1 2 3 4

4AV

Page 39: Using Local Invariant in Occluded Object Recognition by Hopfield

30

找出一條從某城市出發,連貫這些城市後又回到原出發城市的最短

路徑。

3. 狀態函數

以下為所建構之對應此 TSP問題的能量方程式:

TSPE =A[目標函數] + B[每一個城市只去一次(限制 1)] + C[每一次只

去一個城市(限制 2) ]+ D[四個城市都要到(限制 3)]

綜合以上三項限制條件與目標函數,我們可得一符合 TSP問題的能

量方程式,如果上述四個函數如果都達成最小值,則所得之解答可

視為最佳。我們也看到上述能量方程式中有四個參數 A、B、C、D,

而這四個參數則是決定網路輸出時是走向符合限制件而目標函數不

佳或是符合目標函數而對限制條件不合的結果。

4. 網路動態疊代

經由網路反覆疊代後,能量方程式亦趨近最佳值所得的最後結果如

下:

圖 3.4 解 TSP問題之網路收斂結果表示

A

B

C

D

1 2 3 4

1

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

Page 40: Using Local Invariant in Occluded Object Recognition by Hopfield

31

網路最後表示推銷員所經城市的行程依序為城市 B、A、D、C。

像類似這樣組合最佳化的問題還包含:車輛路徑問題、圖形辨識問題、

工廠排程、VLIS設計等等,這之間唯一不同就是面對不同的問題需要

設定專屬的能量方程式並且配合限制條件,其最低能量時恰好對應問

題的最佳解答。當然,在設計能量方程式時會有若干調整參數,網路

對於這些參數相對敏感可能會出現傾向滿足限制條件而設計目標不佳

的解答;或是傾向滿足設計目標卻對限制條件不合的解答,因此在實

驗時參數的設定也格外重要。

Page 41: Using Local Invariant in Occluded Object Recognition by Hopfield

32

第四章 圖形識別(pattern recognition)之

相關研究

在利用電腦視覺來做物件辨識領域上,我們如何來讓電腦分辨不

同的物件?當中的關鍵就是要找出影像中的特徵,通常影像的特徵有

很多種形式,諸如影像紋理(texture)、顏色、形狀、輪廓[23]等等都可

以使用。而我們所利用的影像特徵也就是最常見的方法幾何圖形輪

廓資訊。嚴格來說我們的研究目標必須要找到物件在平移、旋轉、縮

小放大等轉換後的一些不變量(invariants),如特徵點與特徵點之間的相

對距離、角度、面積、週長等。在過去的研究中,我們以張嘉鍇[12]、

李祐魁[13]、Alan[6][24]等等所做的研究為例,他們皆以 CBF(Curve

Band Function)值來作為影像輪廓的不變量,對於單一簡單的輪廓來說

辨識效果還算不錯,但唯一與我們研究目標不同的就是無法辨識重疊

物件,因為在輪廓辨識時一旦輪廓因重疊而造成變形,CBF 值就會改

變無法正確辨識出物件所在,這對於我們目前之研究目標來說,不能

成為有效依據。而 Nasrabadi [3]及 LEE et al.[19]是以輪廓上特徵點之角

度及相對長度作為特徵不變量,這二項特徵不變量可以進行重疊物件

的辨識工作,不過卻無法克服具有尺度縮放問題的辨識工作,這也無

法成為我們研究目標的有效依據。另外也有採取圖形邊界線段作為不

Page 42: Using Local Invariant in Occluded Object Recognition by Hopfield

33

變量[5],同樣也無法成為我們研究目標的依據。

在我們的方法中,我們首先分析物件的輪廓來找尋輪廓特徵,這

裡所提到的輪廓是由直、弧線段所組成。弧線段,直線段與直線段所

連成的角可以認為是具有下凹或上凸的輪廓型態特徵。這些直線段與

直線段、弧線段與弧線段、直線段與弧線段的連接點稱之為臨界點

(break point)。而我們的目的就是要在這些臨界點中搜尋適當的特徵

點,在此我們所萃取出的特徵點是以該點上的角度值、該點與其他特

徵點之間的距離長度比以及該點是否為內凹或上凸之型態來描述該特

徵點的特徵不變量。

4-1 影像分割(segmentation)

以一張自然影像來說,在進行輪廓辨識之前我們必須找出被辨識

物件的輪廓所在。當我們由影像中分割出我們所需的影像集合後,我

們必須對這些萃取出來的集合做進一步的表示(representation)與描述

(description),以方便電腦來處理這些資訊。在進行影像處理時,由於

彩色影像有著相當多的不同資訊,為了有效降低影像的資訊量與圖形

所代表的複雜度,因此我們以工業應用為前提下設定影像為灰階並且

背景為單調色彩。在此,我們使用臨界值法[28]來區分影像的前景與背

景並將影像轉換為二值化影像。在這裡背景表示為白色,若在 256 色

Page 43: Using Local Invariant in Occluded Object Recognition by Hopfield

34

灰階影像中也就是像素點具有最大的灰階值 255;反之,前景的灰階值

為 0顯示為黑色。

4-1-1 影像二值化與自動臨界值擷取(Automatic

thresholding)[28]

由於我們所設定的影像為灰階單調背景之影像,如果我們想要將

待辨識物件與影像分開,最簡單的方法就是利用二值化的方法即可達

成[23],二值化指的就是將灰階影像轉換成二值影像的工作,所有低於

臨界值的像素都設定為黑色,而大於臨界值像素都被設定為白色,常

見於文字、圖形識別的前處理,具有一定的重要性。除此之外採用二

值化亦可增加執行時的效率與節省記憶體的浪費[23]。

但也因為受到擷取影像時,環境與攝影角度及亮度的關係,使得

影像色階差異不再如實際亮度對比明顯,因此要有能夠適應不同環境

狀況的特性。在[23]都介紹了一般的簡單通用二值化與一般的最佳二值

化的方法,但這些方法都不足以應付一般程度的亮度變化與亮度對比

不足的情況,因此我們採用 Otsu[28]的二值化方法來作為我們自動產生

二值化臨界值的應用。

原始影像的灰階分布,大致上以雙峰分布的型態為主,只要適當

的選擇一個可以分離兩個區間的臨界值,便可以使得物件與背景分

Page 44: Using Local Invariant in Occluded Object Recognition by Hopfield

35

離。就圖形識別的工作而言,正確的將物件由影像中分割出來與後續

的辨識工作成敗有關鍵性的影響,因此在二值化的技術上應審慎選擇。

本研究採用的二值化技術為 Otsu[28]的二值化方法,其主要的重點

在於利用統計學中的原理自動找出一個適合的臨界值,能使得各群集

變異數的加權總合為最小以便分割影像為兩個群集,其理論推導如下:

已知像素灰階分布為[1, 2, 3⋯, L],灰階值為 i的像素有 ni個,影

像像素總合為 N = n1+n2+ ⋯ +nL,其灰階度的機率 pi為:

以臨界值 k將影像分成兩個群集 C0、C1。C0代表灰階度[1, 2,⋯, k]

的群集,C1代表灰階度[k+1,⋯, L]的群集,則各群集產生的機率為 w0、

w1。

其中,各群集的平均值(mean)為:

1, 0, 1

Li

i i ii

np p pN =

= >= =∑ (4-1)

01

( )k

ii

w p w k=

= =∑ (4-2)

11

1 ( )L

ii k

w p w k= +

= = −∑ (4-3)

01 0

( )( )

ki

i

ip kw w k

µµ=

= =∑ (4-4)

11 1

( )1 ( )

Li T

i k

ip kw w k

µ µµ= +

−= =

−∑ (4-5)

Page 45: Using Local Invariant in Occluded Object Recognition by Hopfield

36

各群集變異數為:

群集變異數的加權總合為:

找到令群集變異數加權總合得最小值的 k 值,而這個 k 值就是二

值化臨界值。Otsu 的方法較固定臨界值與平均臨界值二值化效果為

佳,除此之外也有非常多的方法可以進一步的改善二值化的效果[23],

但基本上都是以 Otsu的方法為基礎。

圖 4.1 二值化影像

2 20 0

1 0(1 )

ki

i

pw

σ µ=

= −∑

2 21 1

1 1(1 )

Li

i k

pw

σ µ= +

= −∑

(4-6)

(4-7)

2 2 20 0 1 1( ) ( ) ( )w k w k w kσ σ σ= + (4-8)

Page 46: Using Local Invariant in Occluded Object Recognition by Hopfield

37

4-1-2 邊緣檢測

當整張影像區分出前景與背景後,下一步就是進行邊緣檢測來表

示物件輪廓。邊緣檢測的目的在找出物體與背景的分界,我們尋找屬

於物體輪廓的像素點將影像由上至下做掃描工作,搜尋第一個屬於物

體邊緣的像素點,接著由此像素點為起始點作順時針方向搜尋動作,

並且以 8-c的連通性原則找出屬於物體輪廓上的像素,並將其依順序編

碼。

圖 4.2 物體輪廓編碼方式

1 23

4

N

順時針方向

Page 47: Using Local Invariant in Occluded Object Recognition by Hopfield

38

圖 4.3 物體輪廓之表示

因此輪廓可以被表示為所有搜尋到像素點的集合:

( , ), 0,1... 1i i iS x y i NΩ = = = −

is 表示像素點的座標值,N表示輪廓上所有的像素點。因為輪廓Ω是

一個封閉且連續的點集合,因此把輪廓Ω視為一個具有週期為 N的週

期函數,則可以將輪廓延伸為 i N iS S+ = 、 i N iS S− −= 0,1... 1i N= − 。其次我

們針對圖 4.1擷取輪廓,如下圖 4.4:

(4-9)

物件輪廓 0

1

2

N

X0 , Y0

X1 , Y1

X2 , Y2

XN , YN

Page 48: Using Local Invariant in Occluded Object Recognition by Hopfield

39

圖 4.4 擷取下的輪廓

4-1-3 特徵點擷取技術

接下來我們針對從影像中分割完成的輪廓來找尋當中有利於辨識

的特徵點。

在 4-1 節中,我們將輪廓進行編碼並記錄下輪廓上像素點的座標

值,我們導入 Rosenfield [27]所提出 supported length的概念以利我們找

尋特徵點。我們從輪廓的起始點以順時針的方向開始計算每個像素點

上的夾角:

Page 49: Using Local Invariant in Occluded Object Recognition by Hopfield

40

圖 4.5 supported length示意圖

我們由輪廓上點 Si 往前推 j 個像素點與往後推 j 個像素點所形成的區

間,我們可以建立一輪廓片段,而這裡所提到 j 個像素點的長度就是

supported length。當我們選擇一適當的長度 j值後,則可以清楚的表示

輪廓的某一片段為 ,且此輪廓片段

的長度為 2j。

得到一適當長度的輪廓片段後,可算出由點 Si到輪廓片段的兩個

端點 Si-j、Si+j 之兩條連線,由這兩條直線所夾的角就是 Si 的角度值

Ang(圖 4.5)。而我們計算這個角度的用意在於讓系統在此輪廓片段區間

內找出相對最小的角度,將該點紀錄為特徵點。為甚麼我們要取相對

小的角度值?因為輪廓上較為突出的地方可以成為比對時的依據,而

這些輪廓片段區間內夾角相對小的地方,所呈現的就是輪廓上曲率較

Si

Si-j Si+j

順時針方向

Ang

( ) ,....., ,.....,i j i i jj S S S− +Ω =

Page 50: Using Local Invariant in Occluded Object Recognition by Hopfield

41

大之處或是尖角的地方。當然,我們會先過濾輪廓片段區間內夾角過

大的點,以避免找出一些不必要的特徵點。

經過上述的機制,我們擷取圖 4.4輪廓上的特徵點如下圖 4.6:

圖 4.6特徵點擷取結果

4-1-4 特徵表示

數位影像是離散的形式,即整張影像是由像素所組成。經由我們

的影像分割步驟,便可以找出我們所要的目標輪廓,而我們採用

Hopfield類神經網路來作為我們辨識的工具,就是要找尋輪廓中特定的

幾個特徵點來進行比對,不需要針對整張圖做比對。

Page 51: Using Local Invariant in Occluded Object Recognition by Hopfield

42

在我們所擷取下的輪廓中包含了許多的資訊在裡面,對於我們所

需要的特徵點來說,如何表達所擁有的特徵是一項重要的課題。通常

我們在比對前必須先對物件做一番的描述,可視為物件之形狀分析

(shape analysis)。首先,對於輪廓來說特徵可分為兩類,第一類是全域

特徵例如輪廓週長、面積、物體邊界等等;第二類是局部特徵例如每

個特徵點與其他特徵點之相對長度、特徵點角度、特徵點之輪廓型態

內凹或外凸、直(曲)線段。而我們所做的輪廓辨識包含平移、旋轉、縮

放等變化,重點就是在比對影像時找尋這些特徵的相似處。

在本研究中,由於我們計算特徵點角度是採用餘弦定理,餘弦定

理因為是週期函數的關係,因此在角度型態的判別上並沒有辦法告知

我們輪廓為外凸 (大於 180 度)或內凹型態。因此我們利用 Alan[24]所

提到的部分概念,並且成功地應用在我們的輪廓型態描述上。如 4-1

節所述,我們將影像做二值化處理;

我們紀錄整個影像所有像素點 I的座標值,若影像中的像素點是待辨物

件本身,則我們將該點設定為 1;反之,為背景設定為 0。

在 4-1-1 節中,我們已經可以在輪廓上找出若干個特徵點 fi

i=1…N,這些特徵點包含了輪廓上外凸與內凹的特徵,接著我們利用

1 ( , )( , )

0if x y Object

I x yotherwise

∈ = (4-10)

Page 52: Using Local Invariant in Occluded Object Recognition by Hopfield

43

4-1-1節所提的 supported length概念來分辨凹角與凸角特徵。若點 fi為

我們所擷取出的特徵點,找尋輪廓片段區間內的兩個端點 Si-j、Si+j,如

下圖 4.7:

圖 4.7 辨識輪廓形態之示意圖

找出 Si-j、Si+j連線之中點 C(x,y),將中點座標 C(x,y)與 I(x,y)(4-10)式比

對,若 C(x,y)= I(x,y)=1,證明 C(x,y)在物體內部,則我們可以得知輪廓

片段內特徵點 fi的輪廓型態為外凸;反之,C(x,y)= I(x,y)=0,則特徵點

fi的輪廓型態為內凹。

4-2 本研究所提出之局部特徵不變量描述

在我們的辨識工作裡面,我們針對的是物件具有平移、旋轉、縮

放等二維平面變化的辨識研究,過去採取 Hopfield 網路作為辨識工具

fi

Si-j Si+jC(x,y)

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

111111111111111111111111111111111111111

11111111111111111111111111

11111

Page 53: Using Local Invariant in Occluded Object Recognition by Hopfield

44

的文獻中可以看到,部分研究僅僅在於物體尺度無縮放變化的情況下[3]

[5] [19];另外就是辨識只能限制在單一物件的情況下,網路無法辨識

重疊物件[6],而這當中的差異就在於影像上面特徵的不變量(invariant)

的設定。而我們的研究重點在於尋找物件在平移、旋轉、縮放等二維

平面變化下無論是單一物件或是重疊物件的辨識皆可達成辨識目的的

特徵不變量。

在電腦視覺辨識輪廓的技術裡,當我們欲辨識物件時所依據的就

是物件上特徵的不變量(invariant),這些不變量包含全域特徵與局部特

徵。面積、週長、輪廓邊界等全域特徵,在辨識單一且無尺度變化以

及無重疊物件的狀況下可以成為可靠的特徵不變量,若我們的辨識物

件是在有重疊以及尺度縮放問題的情況下,則上述的全域特徵就無法

成為有效辨識的依據,必須採用局部特徵的不變量。局部特徵包含角

度、直(曲)線段、特徵點與其他特徵點之相對長度等,而這些特徵在過

去的文獻中也可看出,對於物件具有平移、旋轉、縮放變化以及物件

重疊的情況下辨識的效果不是很好,也因此我們提出改良辨識效果的

局部特徵不變量。

比較 Nasrabadi[3]所提出的方法,Nasrabadi在特徵不變量的設定上

選用輪廓上各個特徵點的角度值以及各個特徵點相對於輪廓上其他特

徵點的相對長度值做為辨識工作中特徵不變量的依據,這樣的方法僅

Page 54: Using Local Invariant in Occluded Object Recognition by Hopfield

45

可以針對固定大小的物件輪廓進行辨識,若是稍有尺度上的變化則輪

廓上特徵點的相對長度值就不能在視為特徵不變量。

在我們的研究中,我們一樣採用輪廓上各個特徵點的角度值當作

局部的特徵不變量,但不同的是我們另外提出了一個新的局部特徵不

變量,來取代 Nasrabadi所採用的特徵點之間相對長度值,其要點如下:

若輪廓上已有若干個特徵點 fi , i=1…N;

1‧我們計算一輪廓上特徵點fi到輪廓上其他特徵點之間的相對長

度 dij , i = j = 1…N。

2‧將輪廓上所有求得的dij全部除上輪廓上特徵點 fi到 fi+1的長度,

會得到一長度比值 ijr 。

從上述中我們可以看出,所得到的值會是一量化後的長度比值,

因為 ijr 具有局部不變性,所以長度比值 ijr 可以成為我們在比對有尺度

變化的輪廓以及部份重疊的輪廓時的有效依據。因我們所採用的

Hopfield-Tank 網路是屬於組合最佳化的應用,所以採用角度值與我們

提出的新特徵不變量這樣的組合來搜尋最佳的比對結果,而比對的結

果將呈現在第五章。

1

ijij

i i

dr

d +

=(4-11)

i = j = 1…N

Page 55: Using Local Invariant in Occluded Object Recognition by Hopfield

46

第五章 實驗結果與分析

本研究以Borland C++ Builder 5.0程式軟體配合C++程式語言撰寫

Hopfield類神經網路架構以及輪廓特徵點萃取程式,並建構若干個平面

圖形進行比對實驗。

5-1 建立 Hopfield類神經網路

此部分我們架構一M x N的二維Hopfield網路,其中M指的是Model

圖形的特徵點數目,N指的是輸入測試圖形的特徵點數目。如下圖 5.1:

圖5.1 MxN二維 Hopfield網路

其中 ikV 是指 Model圖形的第i個特徵對應到測試圖形第k個特徵

Model points

Scene points k l N

M

j

i

jljlW

ikikW ikI

jlI

ikjl ikjl jl klW C δ δ= − −

jlV

ikV

Page 56: Using Local Invariant in Occluded Object Recognition by Hopfield

47

的神經元狀態值, jlV 亦同。I 為輸入偏權值(bias)。因為網路內每個神

經元皆互相聯結,因此 ikjlW 定義為Model圖形的第i個特徵對應到輸入

測試圖形第k個特徵的神經元與 Model圖形的第j個特徵對應到輸入

測試圖形第 l個特徵的神經元之間的聯結加權值,簡單來說,聯結加

權值矩陣就是建立在Model圖形與輸入測試圖形之間的對應。

網路初始狀態,我們利用 Model 輪廓上特徵點的角度值來比對輸

入測試圖形輪廓上特徵點的角度值,若角度之間的差值在我們所設定

的臨界值(threshold)內,這表示該角度比對的相似度極高,則該神經元

上的狀態值V設為1;反之設為0。如此一來我們即可獲得一個網路初

始狀態。因為 Hopfield-Tank網路為一種組合最佳化的應用,因此我們

必須設定限制條件來達成我們所要的設計目標,而我們所設定的設計

限制就是在網路中的每一行及每一列上的神經元皆只能有一個神經元

的狀態值V是1。所以在初始狀態中,可能會因比對重疊圖形或者是其

他誤差造成某些神經元錯誤比對,因為角度值是可靠性低的特徵,同

一輪廓內可能有很多特徵點的角度值相似。我們可以藉由其他特徵不

變量來修正這些初始時的錯誤比對。這也是網路具有可調整聯結加權

值的適應性學習特點的主因。

Hopfield-Tank 網路以能量觀念來進行組合最佳化的應用,既然為

組合最佳化,我們就必須設定一符合我們所要目標的能量方程式,針

Page 57: Using Local Invariant in Occluded Object Recognition by Hopfield

48

對我們此實驗所設定的能量方程式如下:

其中,Model輪廓上的特徵點為 i = j = 1…M;測試圖形輪廓上的

特徵點為 k = l = 1…N。

上式中第一項為我們的設計目標,後面二項為我們設定的限制條

件,也就是滿足網路中的每一行及每一列上的神經元皆只能有一個神

經元的狀態值 V 是 1。這裡的 ikjlC 稱為適應性估測 (compatibility

measures),為綜合各神經元之非線性轉換後的比例和。神經元所使用

的非線性轉移函數 F(x,y),如圖5.2:

圖5.2 非線性轉換函數F(x,y)

為了找出對應我們工作目標的聯結加權值矩陣,我們必須提出前

2

1 1 11

2

111∑∑ ∑ ∑∑∑∑∑

= = ===

−+

−+−=

M

i

N

k

M

iik

M

i

N

kik

N

kjlikikjl

M

j

N

lVVVVCE

1

-1

θ0

F(x,y)

| x-y |

(5-1)

Page 58: Using Local Invariant in Occluded Object Recognition by Hopfield

49

面所提到的 Hopfield type能量方程式,此方程式如下:

比較(3-2)式與(5-1)式,經由推導我們可以得到聯結加權值關係式

ijδ 及 klδ 稱為 Kronecker deltas,當 i = j時, ijδ =1;i ≠ j時, ijδ =0。

適應性估測值 ikjlC :

A為輪廓上各個特徵點的角度特徵值,r為長度比值如同第四章中

所敘為我們新提出的特徵不變量,當中值得注意的是(5-3)式中第三項

非線性轉移函數 '( , )F x y ,由於我們加入的特徵不變量為比值的形式,

相同與相異的數值之間差異不大,在特徵空間中搜尋長度比值 r 之比

對差異的分界時,若只是以圖 5.2 所述只採取絕對值的大小作為判對

依據,則網路很難去分割出正確與錯誤的邊界導致容易判斷錯誤,因

此我們導入差值平方的概念,使得相似特徵的差值盡可能的小,相異

部分的差值盡可能的大,拉大這之間的差異讓網路能夠更準確的區分

∑∑ ∑∑∑∑= = =

−−=M

i

N

k

M

iikik

N

kjlikikjl

M

j

N

l

VIVVWE1 1 12

1

klijikjlikjl CW δδ −−=

1 2 3( , ) ( , ) '( , )ikjl i k j l ij klC W F A A W F A A W F r r= + +

(5-2)

(5-3)

(3-2)

Page 59: Using Local Invariant in Occluded Object Recognition by Hopfield

50

長度比值 r這項特徵不變量在 Model 輪廓與測試範例輪廓中的差異,

幫助網路的最終輸出解降低比對錯誤率,F(x,y)與 F’(x,y)(圖 5.2)為非

線性轉移函數:

若 x與 y之差值之絕對值(絕對值平方)在臨界值θ區間內,則F(x,y)

= 1,F’(x,y)=1;反之 F(x,y) = -1,F’(x,y)=-1。 1W、 2W、 3W 為比例因子,

由於這些特徵不變量所含的資訊,與本實驗最後的結果輸出有很重要

的關聯,在本實驗中所採用的特徵不變量包含角度與各特徵點間的相

對長度比,當中角度值的可靠性不如各特徵點間的相對長度比值,因

此我們在這三個比例因子值的設定也會不同, 1W = 2W =0.23, 3W =0.54。

1 | |( , )

1if x y

F x yelsewise

θ− < = − (5-4)

21 | |'( , )

1if x y

F x yelsewise

θ − <= − (5-5)

Page 60: Using Local Invariant in Occluded Object Recognition by Hopfield

51

5-2 網路流程

我們整理上述的演算法,敘述整體網路流程如下:

1. 建立網路規模並設定網路初始狀態值。

最初只比對各個特徵點的角度特徵值。這裡的臨界值θ為實驗經驗

值。

2.將各個神經元的初始狀態值當作是下一次疊代各個神經元的輸入,

計算式如下:

這裡我們注意到有一偏權值(bias) ikI ,這裡我們設定 ikI = 2。

3.有了輸入之後,根據下列規則我們決定下一次的輸出狀態值:

4.根據上式我們可以計算出每個神經元的輸出狀態值,再拿此狀態值

當作下一次的輸入,不斷的疊代,直到網路內沒有任何神經元的狀

態值再改變為止(與前次網路的狀態值相比)。

<−

=otherwise

AAifV ki

ik 0||1 θ

( ) ikjlklijikjl

M

j

N

lik IVCU +−−= ∑ ∑

= =

δδ1 1

≤≤−−<

>=

5.05.05.00

5.01

ik

ik

ik

ik

UifchangenoUifUif

V(5-7)

(5-5)

(5-6)

Page 61: Using Local Invariant in Occluded Object Recognition by Hopfield

52

5. 輸出最後的網路狀態值,此網路狀態值也是能量最小化(最佳化)的

結果。

5-3 參數最佳化

我們將在本節進行網路參數的設定實驗,在先前的文章當中提到

Hopfield網路的收斂是很容易受到參數設定的影響,因此在我們決定參

數之前,必須先進行若干實驗來找出能使網路收斂至穩定狀態的一般

化參數。下表 5.1為我們實驗後的結果:

表 5.1 參數最佳化實驗表

(a) 實驗一

Missed Mat. Err. rateEnergyL.Th.Ang.Th. S.L.

30

30

30

30

30

30

3

5

7

3

30

30

30

5

7

3

5

7

0.0009

0.0009

0.0009

0.0025

0.0025

0.0025

0.0049

0.0049

0.0049

-61.56

-61.56

-61.56

-69.12

-69.12

-69.12

-65.04

-65.16

-65.16

0

0

0

0

0

0

0.1

0.25

0.25

0

0

0

0

0

0

0

0

0

Page 62: Using Local Invariant in Occluded Object Recognition by Hopfield

53

(b) 實驗二

(c) 實驗三

Err. rateEnergyL.Th.Ang.Th. S.L. Missed Mat.

20

20

20

20

20

20

3

5

7

3

20

20

20

5

7

5

7

3

0.0009

0.0009

0.0009

0.0025

0.0025

0.0025

0.0049

0.0049

0.0049

-90.92

-106.20

-106.20

-106.44

-119.64

-119.64

-128.12

-128.12

-106.99

0

0

0

0.076

0.143

0.143

0.25

0.25

0.267

0

0

0

0

0

0

0

0

0

S.L. Ang.Th. L.Th. Energy Err. rate Missed Mat.

30

30

30

30

30

30

5

5

5

7

30

30

30

3

3

7

7

3

0.0009

0.0025

0.0049

0.0049

0.0049

0.0009

0.0009

0.0025

0.0025

-4.04

-4.04

-9.44

-14.52

5.59

13.04

7.59

2.36

9.799

0.307

0.307

0.307

0.307

0.333

0.375

0.571

0.6

0.625

2

2

2

2

5

6

5

5

8

Page 63: Using Local Invariant in Occluded Object Recognition by Hopfield

54

(d) 實驗四

(e) 實驗五

Missed Mat. Err. rateEnergyL.Th.Ang.Th. S.L.

30

30

30

30

30

30

5

5

5

3

30

30

30

3

3

7

7

7

0.0009

0.0025

0.0049

0.0009

0.0025

0.0049

0.0009

0.0025

0.0025

6.88

2.56

1.48

15.36

11.04

9.96

10.08

5.75

3.59

0.25

0.25

0.25

0.286

0.286

0.286

0.333

0.333

0.333

1

1

1

2

2

2

1

1

1

Err. rateEnergyL.Th.Ang.Th. S.L. Missed Mat.

28

28

28

28

28

28

3

3

5

5

28

28

28

7

3

7

7

5

0.0009

0.0025

0.0009

0.0025

0.0049

0.0049

0.0009

0.0025

0.0049

-26.72

-37.52

-39.59

-55.79

-69.84

-47.37

-36.19

-54.56

-67.36

0.154

0.154

0.2

0.2

0.2

0.214

0.25

0.25

0.25

4

4

3

3

3

4

3

3

3

Page 64: Using Local Invariant in Occluded Object Recognition by Hopfield

55

(f) 實驗六

*S. L.= Support Length ; Ang. Th.= Angle Threshold ; L. Th.= Length Threshold ;

Missed Mat.= Missed Match

在上述的實驗中,我們是以下節(5-4 節)設定的六組實驗圖形來進

行實驗,表格之內容由左而右為 support length、角度臨界值、相對長

度比(本研究所提出之不變量)臨界值、網路能量值、比對錯誤率、遺漏

比對數量。表格之排列我們以錯誤率由低往高排列,參數的選用原則

為,其中 support length值是我們以試誤的方式設定,設定的標準是期

許以盡量少的特徵點數來充分描述實際輪廓,這點是為了不讓網路的

規模過大。角度臨界值之選用原則上認為角度相差越少的情況下越可

能是輪廓上相同角度位置,因此我們從 1~10度之間找尋適合的角度臨

Err. rateEnergyAng.Th. L.Th.S.L. Missed Mat.

30

30

30

30

30

30

3

3

5

3

30

30

30

5

5

7

7

7

0.0025

0.0049

0.0049

0.0009

0.0009

0.0025

0.0009

0.0025

0.0049

-26.08

-31.48

-32.92

-13.08

-20.48

-24.79

-22.44

-27.84

-35.39

0

0

0.357

0.416

0.5

0.5

0.55

0.55

0.55

1

1

1

2

1

1

1

1

1

Page 65: Using Local Invariant in Occluded Object Recognition by Hopfield

56

界值,當角度臨界值設定過小時,可能會錯失部分正確位置的角度對

應,當然臨界值太大也會增加錯誤比對的機率,因此我們選用角度值

3、5、7度來作為角度試驗之臨界值。而另一項特徵不變量長度比值,

我們在多組實驗中發現,兩比對輪廓中相同部位上之特徵點相對於輪

廓上其他特徵點的長度比值,其差值大多數都介於 0.01~0.1 之間,又

因為我們在 compatibility measures (5-3)式中將這個差值以絕對值平方

的方法將差值區間拉大,因此我們以 0.03、0.05、0.07的平方值來作為

這項不變量之實驗臨界值。而比對錯誤率則是將網路最後輸出的錯誤

對應單元除上總對應單元。而遺漏比對數量是指 model 圖形之特徵點

未在測試圖形中獲得對應的數量。根據實驗後的數據顯示角度臨界值

為 5度、長度比值臨界值為 0.0009之組合下在各組的實驗中能獲得最

多的正確特徵點對應,因此我們選用此組參數作為我們的網路參數。

表 5.2 參數設定總攬

*M: model points S:scene points

1

2

3

5

6

4

Support Length Angle Threshold Length Threshold

M=30 , S=30

M=20 , S=20

M=30 , S=30

M=30 , S=30

M=28 , S=28

M=30 , S=30

5

5

5

5

5

5

0.0009

0.0009

0.0009

0.0009

0.0009

0.0009

Page 66: Using Local Invariant in Occluded Object Recognition by Hopfield

57

5-4 實驗結果

5-4-1 比對單一物件

在本章節,我們建立數個Model 物件影像以及數個測試範例影像

如下圖 5.3、5.4,這些影像皆是取於真實手工具影像,首先利用我們的

網路來辨識單一物件。

(a)

Page 67: Using Local Invariant in Occluded Object Recognition by Hopfield

58

(b)

(c)

(d)

Page 68: Using Local Invariant in Occluded Object Recognition by Hopfield

59

(e)

圖 5.3 (a)-(e)為Model輪廓以及所萃取的特徵點

(a)

Page 69: Using Local Invariant in Occluded Object Recognition by Hopfield

60

(b)

圖 5.4 輸入之測試輪廓。(a)將圖 5.3(d)旋轉一角度,(b)將圖 5.3(a)旋轉並縮小尺

我們以圖 5.3(d)為Model,圖 5.4(a)為輸入之測試影像;以及圖 5.3(a)

為Model,圖 5.4(b)為輸入之測試影像。

表 5.3 以圖 5.3(d)為Model,圖 5.4(a)為輸入之測試影像為例。(a)為網路初始狀態;

(b)為網路最佳收斂狀態

(a) (b)

Model points

Model points

Scene points Scene points

Page 70: Using Local Invariant in Occluded Object Recognition by Hopfield

61

表 5.3(a)為網路的初始狀態,0 的部份為非對應單元,1 的部份為

對應單元。這些初始值僅只有比對各特徵點上的角度特徵值,因此可

以看出有很多的單元是重複對應(multiple-matchs)。經由 Hopfield 網路

疊代後,輸出的狀態為表 5.3(b),對照圖 5.3(d)與圖 5.4(a)可以很清楚

的看出所有網路中的單元都會對應到正確的位置,並且符合我們所訂

的限制條件,每一行、每一列都只能有一個單元為對應單元(active)(5-1)

式。

而另一個範例圖 5.3(a)與圖 5.4(b),則是測試本網路對於具有尺度

(scale)上變化的影像輪廓是否仍具有辨識能力。

表 5.4 以圖 5.3(a)為Model,圖 5.4(b)為輸入之測試影像為例。(a)為網路出始狀態;

(b)為網路最佳收斂狀態

(a)

Model points

Scene points

Page 71: Using Local Invariant in Occluded Object Recognition by Hopfield

62

(b)

同樣我們也可以看到表 5.4(b)中的收斂結果,對於具有尺度變化的

影像輪廓,我們的網路一樣可以辨識出正確的結果。下圖 5.5我們可以

看出比對完後的結果。

(a)

Model points

Scene points

Page 72: Using Local Invariant in Occluded Object Recognition by Hopfield

63

(b)

圖 5.5 比對結果。虛線部份為Model,實線為測試影像輪廓,黑點部份則為相互

對映之特徵點

Page 73: Using Local Invariant in Occluded Object Recognition by Hopfield

64

5-4-2 比對重疊物件(Occluded object)

在比對過單一物件之後,接著我們要來進行重疊物件的比對,我

們所設定的重疊物件如下圖 5.6:

(a)

Page 74: Using Local Invariant in Occluded Object Recognition by Hopfield

65

(b)

圖 5.6 輸入之測試影像輪廓為重疊物件。(a)為重疊圖 5.3(b)與圖 5.3(e)兩個物件;

(b)為重疊圖 5.3(b)與圖 5.3(c)兩個物件

表 5.5 比對結果總攬

*M: model points S:scene points

1

2

3

4

5

6

Model Scene M S Energy Match Error

圖 5.3(d) 圖 5.4(a)

圖 5.3(a) 圖 5.4(b)

圖 5.3(b) 圖 5.6(a)

圖 5.3(e) 圖 5.6(a)

圖 5.3(c) 圖 5.6(b)

圖 5.3(b) 圖 5.6(b)

9 9

12 12

11 23

7 23

15 27

11 27

9

12

0

0

13 4

8 2

15 3

16 8

-69.12

-119.64

-4.04

2.56

-55.8

-24.8

Page 75: Using Local Invariant in Occluded Object Recognition by Hopfield

66

(a)

(b)

Page 76: Using Local Invariant in Occluded Object Recognition by Hopfield

67

(c)

(d)

Page 77: Using Local Invariant in Occluded Object Recognition by Hopfield

68

圖 5.7 重疊物件比對結果。虛線部份為Model,實線為測試影像輪廓,黑點部

份則為相互對映之特徵點

5-5 本章結論

由表 5.5可以看出我們在幾次比對實驗後的結果整理,比對單一物

件時很清楚的看出實驗結果是無任何錯誤比對,而在比對重疊物件

時,則會產生部分的誤差,而這些誤差是我們可以容許的,因為屬於

Model部分的特徵點大多都能在網路中獲得對應。根據我們所參考的文

獻[3][7][8][19][29],這些研究中在比對重疊物件時也會有部分的錯誤比

對,這是因為組合最佳化問題本身包含目標函數與限制條件,有時候

網路必須迎合目標函數而犧牲部分限制條件,或是迎合限制條件犧牲

目標函數的精確度,這些差別都是取決於網路參數的設定,因此在參

數的設定上要格外注意。

再者,由於輪廓在輸入網路時是以特徵點的形式來表示,因此網

路本身以多邊形近似(polygonal approximation)的方式來描述這個輪

廓,進而計算各特徵點上的角度值、相對長度比值等等,而我們在做

單一物件的比對時,多邊形近似這樣的描述法並不會對結果造成影

響;但是,物件若有重疊的情況產生會使得原本重疊的兩個物件輪廓

改變,基於多邊形近似的描述會導致某些特徵點上的特徵值(角度、相

對距離)也產生改變,在網路初始狀態值的設定時該對應的單元可能就

Page 78: Using Local Invariant in Occluded Object Recognition by Hopfield

69

會沒對應到,不該對應的單元可能會對應到,對於 Hopfield 網路如此

容易受到初始狀態影響的網路來說,這些狀況也足以影響最後的輸出

狀態值。

儘管 Hopfield 網路會受到這些因素的影響,我們在各種臨界值等

參數的設定上盡量趨近於最佳輸出結果的設定,雖然我們以實驗的方

式找出這些臨界值的設定,但並不保證會完全分離相同或相異的特

徵,因此我們調整 compatibility measure (5-3)式的權重分配(1W, 2W ,

3W ),權重分配是適合我們所提出的特徵不變量,在權重分配上,我們

將網路中的錯誤比對盡可能的修正,降低最佳輸出時的錯誤比對率。

Page 79: Using Local Invariant in Occluded Object Recognition by Hopfield

70

第六章 結論與建議

Hopfield類神經網路自 1982年提出以來,雖引起第二波類神經研

究熱潮,至今也已過 20餘年的時間已經不能算是新方法,但在許多方

面的應用仍然有優異的表現,這點可由我們近年來所收集到的參考文

獻中看出。本研究依循先前國際期刊上所發表的相關領域之研究提出

新的改良方法,所花費的研究時間只有短短的兩年不到並初步得到一

些成果,但仍然還有許多值得研究、改善的地方,在此提出一些小建

議,供供有心做此方面研究者作為參考。

6-1 結論

1. 在本研究中,完成以 Hopfield 類神經網路來辨識單一、重疊之物

件辨識,並且可以在物件有旋轉、縮放、平移等等變化下進行辨識

工作。

2. 新提出輪廓上之局部特徵不變量並成功應用在我們的辨識工作中。

3. 在compatibility measure中之非線轉換函數,我們提出差值平方

慨念幫助網路在model與測試範例之間找出適當臨界值,以利網路

區別相同與相異特徵,進而改善網路最佳結果。

Page 80: Using Local Invariant in Occluded Object Recognition by Hopfield

71

6-2 未來研究建議

1. Hopfield類神經網路在物件辨識上已有不錯的成果,雖然如此,但

對於網路參數上的選用仍然缺少系統化的設定只能以實驗的方式找

尋,這點對於網路辨識效率的提升來說是一障礙,未來若能將此方

面進行改善,對於穩定可靠的收斂結果之獲取必定具有關鍵性的影

響力。

2. 在本研究中,我們對於網路初始狀態的設定是依據特徵點上角度值

之比對,初始狀態仍有些許的錯誤會影響到收斂結果(陷入局部最小

化),這也是 Hopfield網路的缺點(對於初始狀態高度敏感),若加入

其他的方式來協助產生穩定初始狀態值,例如;遺傳演算法(Genetic

Algorithm,GA),相信對於協助網路達到穩定之收斂狀態能有更顯著

的效果。

Page 81: Using Local Invariant in Occluded Object Recognition by Hopfield

72

參考文獻

[1] J. J. Hopfiled, D. W. Tank, ” Neural Computation of Decisions

in Optimization Problems.” Biol. Cyberne., 52, 1985, pp.

141-152.

[2] S. Haykin, ” Neural Networks: a comprehensive foundation 2nd

edition.” Prentice Hall, 1999, pp. 664-727.

[3] N. M. Nasrabadi, W. Li, ” Object Recognition by a Hopfield

Neural Network.” IEEE Trans.SMC, Vol. 21, NO. 6, 1991,

pp.1523-1535.

[4] P. N. Suganthan, E. K. Teoh, D. P. Mital, ” Programming

Hopfield Network for Object Recognition.” in Proc.of SMC

Conf., 3, 1993, pp. 114-119.

[5] P. N. Suganthan, E. K. Teoh, D. P. Mital, ” Homomorphic ARG

Matching by Hopfield Network.” in Proc. IEEE Int. Conf.

Industrial Electronics, Vol. 1, 1995, pp. 161-165.

[6] M. N. Fu, H. Yan, ” A Shape Classifier based on Hopfield –Amari

Network.” in Proc. IEEE Int. Conf. Neural Network, Vol. 1,

1996, pp. 588-593.

[7] W. J. Li, T. Lee, ” Hopfield Neural Networks for Affine

Invariant Matching.” IEEE Trans.Neural Networks, Vol.12,

NO.6, 2001, pp. 1400-1410.

[8] W. J. Li, T. Lee, ” Object recognition and articulated object

Page 82: Using Local Invariant in Occluded Object Recognition by Hopfield

73

learning by accumulative Hopfield matching.” Pattern

Recognition, 35, 2002, pp. 1933-1948.

[9] D. L. Lee, ” Pattern Sequence Recognition Using a Time Vary

Hopfield Network.” IEEE Trans.Neural Networks, Vol. 13, NO.

2, 2002, pp. 330-342.

[10] 葉怡成, ”類神經網路模式應用與實作.” 儒林圖書有限公司,

2002.

[11] 張維哲, ”人工神經網路.” 全欣資訊圖書, 1992.

[12] 張嘉鍇, ”在低解析度六角格子影像上之輪廓辨識.” 國立中山大

學機械工程研究所碩士論文, 1999.

[13] 李祐魁, ”利用次像素在低解析度六角格子上作輪廓辨識.” 國立

中山大學機械研究所碩士論文, 2000.

[14] 黃國源, ”類神經網路與圖型辨識.” 維科出版社, 2000.

[15] 蕭富介, ”類神經網路應用於瓦特 I 型六連桿組耦點曲線之合

成.” 國立中正大學機械工程研究所碩士論文, 2002.

[16] 陳建銘, ”類神經網路於 Web Mining 之應用.” 國立台北科技大

學商業自動化與管理研究所碩士論文, 2001.

[17] M. Cooper, ” Visual occlusion and the interpretation of

ambiguous pictures.” ELLIS HORWOOD, 1992.

[18] M. Egmont-Peterson, D. de Ridder, H. Handels, ”Image

processing with neural networks—a review.” Pattern

Recognition, 35, 2002, pp. 2279-2301.

[19] J. S. Lee, C. H. Chen, Y. N. Sun, G. S. Tseng,”Ocluded objects

Page 83: Using Local Invariant in Occluded Object Recognition by Hopfield

74

recognition using multiscale features and Hopfield neural

network.” Pattern Recognition, Vol.30, No.1, 1997, pp.

113-122.

[20] 王進德, 蕭大全, ”類神經網路與模糊控制理論入門.” 全華科技

圖書股份有限公司, 1994.

[21] 林昇甫, 洪成安, ”神經網路入門與圖樣辨識(修訂第二版).” 全

華科技圖書股份有限公司, 2002.

[22] 沈政, 林庶芝, ”腦模擬與神經計算機.” 五南圖書出版有限公司,

1996.

[23] 吳成柯, 戴善榮, 程湘君, 雲立實 譯, ”數位影像處理.” 儒林

圖書有限公司, 1996.

[24] M.N.Fu, H. Yan, K. Huang,”A curve band fuction based method

to characterize contour shapes.” Pattern Recognition, Vol.

31, No.10, 1997, pp.1661-1671.

[25] J.H.Kim, S.H.Yoon, C.W. Lee,K.H.Sohn,”A robust solution for

object recognition by mean field annealing techniques.”

Pattern Recognition, 34, 2001, pp. 885-902.

[26]Y. Uchiyama, M. Haseyama, H. Kitajima, ”Hopfield neural

networks for edge detection.” ISCAS 2001. Vol.3, 2001, pp.

608-611.

[27] A. Rosenfield, E. Johnston, ” Angle detection on digital

curves.” IEEE Trans.Compute. Vol. C-22, 1973, pp. 875-878.

Page 84: Using Local Invariant in Occluded Object Recognition by Hopfield

75

[28] N. Otsu,”A threshold selection method from gray-level

historgrams.” IEEE Trans.SMC, Vol.SMC-9, 1979, pp. 62-66.

[29] M.K. Peng, N. K. Gupta, ” Occluded object recognition by

Hopfield networks.” in Proc. IEEE Int. Conf. Neural Network,

Vol. 7, 1994, pp. 4309-4315.

Page 85: Using Local Invariant in Occluded Object Recognition by Hopfield

76

∑∑ ∑∑∑∑= = =

−−=M

i

N

k

M

iikik

N

kjlikikjl

M

j

N

lVIVVWE

1 1 121

附錄一 Hopfield-Tank網路收斂之證明

在此附錄中,我們根據[10]之類似步驟來證明我們所採用的能量方

程式的收斂過程。

Hopfield網路根據 Liapunov運定穩定性理論所發展出的能量方程

式之標準式如下:

動態網路疊代之判斷機制如下:

其中 newikV 為 ikV 之狀態更新值。

狀態變數經由上式疊代可將能量方程式達一局部最小值。其證明如下:

當採用(5-7)逐次疊帶產生新的狀態變數值時,能量方程式 E也隨之改

變。為了突顯一個特定狀態變數值 在能量方程式中的地位,(3-2)

式改寫成:

(3-2)

1 1( )

M N

ik ikjl ij kl jl ikj l

U C V Iδ δ= =

= − − +∑∑ (5-6)

1 0.50 0.5

0.5 0.5

iknew

ik ik

ik ik

if UV if U

V if U

>= < − − ≤ ≤ (5-7)

12V

Page 86: Using Local Invariant in Occluded Object Recognition by Hopfield

77

當狀態變數 更新成 時,新的能量方程式可寫成:

比較上述二式可知其能量差為:

因 ikjlW = jlikW = 1, ikikC =1, 故得:

當 12newV = 1時;

無論 12V = 0或 1,在(A-4)式中 12 12( )newV V− 必定大於零或等於零,且由(5-7)

式中可知 (A-4)式 中 12 121 1

M N

jl jlj l

W V I= =

+∑∑ 這項必定大於零或不變 12newV 才有

可能等於 1,因此 E∆ 必定為零或負值。

當 12newV = 0 時;

無論 12V = 0或 1,在(A-4)式中 12 12( )newV V− 必定等於零或小於零,且由(5-7)

式中可知 (A-4) 式中 12 121 1

M N

jl jlj l

W V I= =

+∑∑ 這項必定小於零或不變 12newV 才有

212 12 12 12 1212

1 1 1 1

12 121 2 1 2 1 2

1( ) [ ] ( )2

( )

M N M N

jl jl ik ikj l i k

M N M N M N

ik ikjl jl ik iki k j l i k

E V W V V W V W

V W V V I V I

= = = =

≠ ≠ ≠ ≠ ≠ ≠

= − + +

+ − +

∑ ∑ ∑ ∑

∑∑∑∑ ∑ ∑ (A-1)

12V 12newV

212 12 12 12 1212

1 1 1 1

12 121 2 1 2 1 2

1( ) [ ] ( )2

( )

M N M Nnew newnew

jl jl ik ikj l i k

M N M N M Nnew

ik ikjl jl ik iki k j l i k

E V W V V W V W

V W V V I V I

= = = =

≠ ≠ ≠ ≠ ≠ ≠

= − + +

+ − +

∑ ∑ ∑ ∑

∑∑∑∑ ∑ ∑ (A-2)

newE E E∆ = −

12 12 12 12 1212 12 121 1

1( )[ ( )]2

M Nnew new

jl jlj l

E V V W V I W V V= =

∆ = − − + + −∑∑ (A-3)

1 1 1 1ikik ikik ii kkW C δ δ= − − = − − = −

12 12 12 12 12 121 1

1( )[ ( )]2

M Nnew new

jl jlj l

E V V W V I V V= =

∆ = − − + − −∑∑ (A-4)

Page 87: Using Local Invariant in Occluded Object Recognition by Hopfield

78

可能等於 0,因此 E∆ 必定為零或負值。

因此得証無論 12newV 等於 1或 0,(A-4)式皆小於零或等於零,也就是在

疊代過程中,後面的能量方程式減前面的能量方程式之差值必定小於

零或等於零,因此(3-2)式的 Hopfield網路能量方程式之標準式必可收

斂到一局部最小值。