第四章 機器人之手/眼協調控制策略
4.2 視覺追蹤系統控制器之設計
主動式視覺系統為了鎖定目標物,使其成像在左右攝影機影像平面的中心,機 械頭會隨著目標物移動而改變攝影機的姿態。雖然可由目標物的位置,透過空間的幾 何關係反算所需的各關節角度。但是這必須對主動式視覺系統做精準的校正,包括機 構的參數以及攝影機內部參數,過程不但繁瑣且容易出錯。本計畫則是利用 SOIM 類 神經網路來學習三維空間目標物的空間表示式 I (Spatial Representation),其最大的特 色為:所學習的空間表示式並不會隨攝影機姿態改變而有所差異;並可利用其可逆特 性(Invertible Property),求得鎖定目標物所需的關節角度。
4.2.1 SOIM 類神經網路
SOIM 網路架構最主要的精神就是學習一種映射關係,此映射之輸入為目標物在 左右兩眼的影像座標與雙眼機械頭各軸的關節角,輸出為一個空間表示式,此空間表 示式可以唯一描述三維空間目標物的位置。SOIM 為一個三層的網路架構,如圖 4.1 所示。
u
1v
1u
2v
2u
1v
11 − u
11 − v
1u
2v
21 − u
21 − v
2J K
Visual Signals θ
5θ
6θ
7Motor Signals
I
5I
6I
7Spatial Representation Weights
Z
JLWeights
W
JLWeights W
KRZ
KRWeights F
1F
2Input Layer
Hidden Layer
Output Layer
圖 4.1 SOIM 類神經網路之架構
第一層:為輸入層(Input Layer),包含兩種不同形式的輸入,影像座標輸入:
1 1
( , )
X
L= u v
,X
R= ( , u v
2 2)
分別代表空間目標物投影在左、右兩個攝影機影像平面上的 座標,而且u 、 1 v 、 1 u 、 2 v 皆已被正規化(Normalized)於 0 到 1 之間。其中,角度 2
向量輸入:Q = ( , θ θ θ
5 6,
7)
對應雙眼機械頭眼睛部位各軸瞬間的角度,θ 5
為眼部 Tilt 運動之關節角度,而θ 6
、θ 7
分別為眼部右、左眼 Vergence 運動之關節角度,且正 規化於 0 到 1 之間。第二層:影像座標輸入部分首先經由第二層的模糊適應性共振理論網路 (Fuzzy Adaptive Resonance Theory Network) [15]做分類的處理,模糊適應性共振理 論網路屬於非監督式學習(Unsupervised Learning),與傳統 ART1 網路最大的差別 在於 ART1 只能接受二進位(Binary)的輸入,而 fuzzy ART 則可以接受二進位 (Binary)與連續性(Analog)的輸入,本計畫的輸入型態為 0 到 1 之間的任意值。
第三層:為輸出層,產生空間表示式
I = [ I I I 1
,2
,3 ]
L R
i i Ji Ki
I = + θ z + z
i =
1, 2, 3 (4.1) 其中 K 、J
為左、右兩眼的影像輸入在經過模糊適應性共振理論網路後,所對應的分類節點。
z L Ji
、z Ki R
為F 分類層與輸出層的連接權重, 2
初始值設為 0 到 1 之間的隨機值。在每一次的學習循環中,每組輸入向量皆可對應一組輸出 I ,如(4.1)式,而第三 層 最 主 要 的 工 作 就 是 學 習 空 間 表 示 式 I , 其 特 色 在 於 學 習 的 過 程 是 自 我 組 織 (Self-organized)方式。對空間中一個固定的目標物,
I 和 k I k ′
為兩個連續由(4.1)式求出 的空間表示式,對於空間中相同位置所算出的I 和 k I k ′
應該相同,但因為z L Ji
、z Ji R
的初 始值是 0 到 1 之間的隨機值,所以I 和 k I k ′
不會相同,必須修改z L Ji
與z Ji R
,其學習法則 為:( )
L L
Ji i i J
z γ I I ′ ρ
∆ = −
(4.2)其中
γ
為學習速率(Learning Rate)L L J L L J
w V V ∧
ρ =
表示影像輸入與模糊適應共振理論網路優勝節點J
的相似程度
此學習之所以為自我組織方式,因為 (
I i − I i ′
)是由網路在學習過程中自我產生的 (Self-generated)。SOIM 網路應用在雙眼機械頭的學習架構如圖 4.2,在離線學習(Off-line Learning) 過程中,針對工作空間中的一個固定目標物,令雙眼機械頭各軸隨機轉動至一個位 置,然後以 CCD 擷取此目標物之影像,儲存雙眼機械頭的各關節角度及經影像處理 後的影像座標,不斷重覆上述動作到所期望的學習次數,再將儲存的資料輸入至 SOIM 網路,每筆輸入皆可對應一組輸出
I ,根據(4.2)式的學習法則(Learning Rule)
來調變權重值
z Ji L
與z Ji R
,此固定目標物的空間表示式( I )最後將會收斂至一微小區間 (其收斂性之證明可參考文獻[16]),並且記錄下學習後的權重(z 與 L z ),完成 SOIM R
的學習。Pulse Generator
Binocular Head
Camera Motion
Image Processing SOIM
Stationary Point Spatial
Representation I
Previous Spatial Representation I ′
- + Random
Input
X
L= ( , u v
1 1) X
R= ( , u v
2 2)
Q
Joint Position
圖 4.2 SOIM 網路學習架構
4.2.2 SOIM 網路的可逆性(Invertible Property)
經由前面的討論,對於空間中的任何一點,在兩個攝影機可以拍攝到的範圍內,
皆可以經由 SOIM 網路得到一組空間表示式
I
。SOIM 網路的可逆性乃是指可以計算 出影像伺服機構的輸出角,使空間目標物成像在影像平面中任何所指定的位置上,因 此假如我們決定了目標物的影像座標X ,則影像伺服機構相對應的角度輸出,可由 d
(4.1)式推導出下列式子。c L R
i i J i K i
q = − I z
′− z
′ (4.3)其中,
J ′
、K ′
代表對應所設定之影像座標X 在模糊適應性共振理論網路的輸出節點。 d
SOIM 網路的可逆性可以圖 4.3 表示,對已學習完成的 SOIM 網路,給定目標物 在左、右兩眼之影像平面上的期望座標X d = ( , , u v u v 1 1 2 , 2 )
,經過模糊適應性共振理論 網路的分類後,可得一組與X 相對應的權重 d ( z J L
′, z K R
′)
,而根據目標物的影像座標和雙 眼機械頭之關節角透過 SOIM 網路可得一空間表示式 I ,將此空間表示式 I 與權重( z J L
′, z K R
′)
依(4.3)式可求出雙眼機械頭所對應的各軸角度,驅動雙眼機械頭至定位,使 得目標物能夠成像在影像平面中所期望的座標X ,達到主動式視覺追蹤。 d
fuzzy ART network
z K R
′z J L
′Target's Features
Desired Point on the Image Plane
X d
Joint Positions of Binocular Robot Head
+ +
SOIM Spatial
Representation I
Joint Output +
-圖 4.3 SOIM 網路的可逆性
4.3 柯漢寧類神經網路
柯漢寧類神經網路的目的,在於學習空間表示式的變化(
∆ I
)與機械手臂的球拍 面中心之空間位置(p ),其映射至機械手臂的球拍面所需之空間變化( r ∆ p r
)的關係。柯漢寧類神經網路為一個三層的網路架構,如圖 4.4 所示。第一層為輸入層,包 括兩種不同類型的輸入。第一類為機械手臂的球拍面中心的空間位置
p x r , p r y , p z r
; 第二類為空間表示式的變化[ ∆ I 5
,∆ I 6
,∆ I 7 ]
,表示目前機械手臂的球拍面中心位置之 空間表示式與期望的機械手臂的球拍面中心位置之空間表示式間的誤差。J
I
5∆ ∆ I
6∆ I
7P
xrP
yrP
zrChange in Internal Representation Current Robot Configuration
r
P
x∆ ∆ P
yr∆ P
zrChange in Robot Configuration Kohonen
Layer
Weights
Weights
w
Jz
J圖 4.4 柯漢寧類神經網路之架構
第二層為柯漢寧類神經網路層(Kohonen Network Layer)。利用輸入訊號與連接權 值
w j
間的歐氏距離 (Euclidean Distance)d j
,將輸入訊號分成不同的聚類。4 1/ 2
2 2
2 , ,
( ) (
r
)j i ij k kj
i k x y z
d I w p w
= =
=
∆ − + −
∑ ∑
(4.4)分類後的輸入訊號利用(4.5)式的學習法則,可得到相對應機械手臂之球拍面中心之空 間位置變化
∆ p r x , ∆ p r y , ∆ p z r
。(
r
), ,
jk k jk k x y z
z γ p z
=∆ = ∆ −
(4.5)其中,