第四章 室內環境之視覺追蹤
第三節 動態攝影機自動控制
上一節說明系統如何在畫面中追蹤嬰兒位置,如圖 4.19 為影片 2014_1_9_1 拍攝嬰兒爬行的追蹤結果,影片中的嬰兒正向前爬行。若此時嬰兒持續向前爬 行,就可能會離開監控畫面的範圍。因此,本節將介紹系統如何自動控制鏡頭移 動,使嬰兒長期存在監控畫面中。
首先,系統在監控畫面上設定安全範圍,假設影像的長度與寬度分別為I 與h I ,則安全範圍是以畫面中心點為中心,向外延伸成長度為w sI 且寬度為h sI 的矩w 形。其中,s 為小於 1 的正常數,此正常數之大小與攝影機架設的高度有關。因 為嬰兒離開安全範圍後,系統才會決策鏡頭的移動方向。若鏡頭架設的高度較 低,則系統所拍攝到的嬰兒佔畫面比例相對較大。此時,若系統又設定較大的安 全範圍,則安全範圍以外的面積會相對較小,導致系統決策鏡頭移動的緩衝時間 不足而造成追蹤失敗。因此,鏡頭架設高度與安全範圍大小成正比,與 s 值成反
圖 4.19 影片 2014_1_9_1 的追蹤結果圖。
53
(a) (b) (c)
圖 4.20 監控畫面中的安全範圍標示圖
(a) 嬰兒在安全範圍內;(b) 嬰兒超出安全範圍;(c) 嬰兒移動軌跡。
比。本實驗中鏡頭架設的高度約為 3m 故 s 值設為 1/4。如圖 4.20 所示,圖中的紅 色方框是系統追蹤嬰兒的 detection window,而橘色矩形為上述之安全範圍;另 外,圖 4.20(c) 顯示的是嬰兒從安全範圍內爬行至安全範圍外之軌跡。
接著,系統判斷若 detection window 的面積有一半以上存在安全範圍內 (如 圖 4.20(a) 所示),表示嬰兒仍在監控畫面中,不需要移動鏡頭。但此時系統會記 錄嬰兒一連串的歷史移動訊息;反之,若 detection window 的面積有一半以上落 在橘色矩形範圍外 (如圖 4.20(b) 所示),則表示嬰兒隨時可能離開監控範圍,系 統會利用嬰兒的歷史移動訊息與當前嬰兒的所在位置,來決定鏡頭是否需要移動 及其移動的方向。以下會依序說明 (1) 系統記錄嬰兒歷史移動訊息的方法與 (2) 決定鏡頭移動與移動方向之方法。
在說明系統如何記錄嬰兒歷史移動訊息之前,先定義出嬰兒移動的 8 個方 向,本系統將拍攝影像的正右方定義為 0°(360°),如圖 4.21 所示,8 個嬰兒的移 動方向,分別為影像的上方 (up)、下方 (down)、左方 (left)、右方 (right)、左上
up
upper left upper right
down
lower left lower right
right left
(a) (b)
圖 4.21 嬰兒與鏡頭移動方向示意圖
(a) 8 個嬰兒移動方向劃分;(b) 8 個鏡頭移動方向示意圖。
54
表 4.3 各主要方向角度範圍對照表 Direction The range of angle
up 67.5° ~ 112.5°
upper right 22.5°~ 67.5°
right 0°~ 22.5°, 337.5°~360°
lower right 292.5°~ 337.5°
down 247.5°~ 292.5°
lower left 202.5°~ 247.5°
left 157.5°~ 202.5°
upper left 112.5°~157.5°
方 (upper left)、右上方 (upper right)、左下方 (lower left) 以及右下方 (lower right) detection window 的質心移動向量,本系統將相鄰影格間,detection window 質心 移動向量的長度,累加於該方向移動次數的統計結果。在追蹤的過程中,即使嬰
55
(a) (b)
(c) (d)
圖 4.22 鏡頭移動示意圖
(a) 鏡頭無上下旋轉時左右旋轉軌跡;(b) 鏡頭上下旋轉後左右旋轉軌跡;
(c)定位點之設定示意圖;(d) 安全範圍外的子區域劃分。
兒處於靜止的狀態,追蹤到的質心位置也可能因畫面雜訊而產生小幅的移動。這 樣的小幅移動並不能代表嬰兒真正的移動狀態,為了濾除這些雜訊,若系統追蹤 到嬰兒的移動向量為v
,向量長度 v
必須大於一個門檻值,才能累加入嬰兒歷史 移動方向之次數中。同時,嬰兒可能長時間存在安全範圍內,所以時間的因素也 控制著每個歷史移動訊息的重要程度。因此每次累加新的次數時,會將之前各主 要方向的統計結果乘上一個退化常數,使得越早以前的移動訊息,對於鏡頭移動 的決策結果影響越小。圖 4.23(a) 即為影片 2014_1_9_1 中嬰兒第一次離開安全範 圍 (如圖 4.20(b) 所示) 時,各主要移動方向的統計結果,橫軸表示各種鏡頭移動 方向,縱軸為向量長度累積值。
觀察前圖 4.20(c) 中嬰兒的活動軌跡後可以發現,向量累加的結果僅能反映 嬰兒往各主要方向移動的向量長度。假如嬰兒往影像左方移動,過程中常因伴隨 著形狀的變化與蠕動幅度不同,可能導致質心往左上、左下甚至是上下來回振 動。因此,嬰兒移動方向的統計結果不能直接用來決定鏡頭的移動方向。為解決 上述的問題,當嬰兒離開安全範圍後,本系統會根據圖 4.22(d) 的劃分方式,將 影像中安全範圍外的區域劃分成 8 個小區域,每個子區域依照影像中的方位由上
56
right upper right up upper left left lower left down lower right
cumulative length 0.10357 0 0 3.14022 37.74153 3.15004 0.4383 0
0
right upper right up upper left left lower left down lower right score 0.05178 0.02589 0.78506 11.00549 20.44333 11.11998 1.00666 0.13547
0
57
58
的移動方向中,則系統會繼續統計並累加嬰兒的移動方向直至其與鏡頭候選的移 動方向相符,才能控制鏡頭移動。若鏡頭一直無法決定鏡頭移動的方向且嬰兒已 重新回到安全區域,此時系統會將嬰兒移動方向的統計結果歸零,重新開始統計。
本系統經由上述作法控制鏡頭移動,使嬰兒長期存在監控畫面中。接下來用 四個實驗範例,說明鏡頭自動控制的結果。在實驗範例圖中,橘色方框為本系統 所設定的安全範圍。圖 4.24 為影片 2014_1_9_4 之實驗結果,嬰兒在遊戲過程中 從影像上方離開安全範圍,因此鏡頭向上移動使嬰兒重回安全範圍內;而圖 4.25 為影片 2014_1_9_1 之實驗結果,嬰兒從影像下方離開安全範圍,因此鏡頭向下 移動使嬰兒重回安全範圍內。上述的範例可以發現鏡頭往上、下移動的距離較 短,因此可以較快速讓嬰兒重回安全範圍內,如此設計乃是考量到鏡頭在上、下 移動時畫面的模糊度比左右移動時更高,因此短時距的移動較不會影響之後嬰兒 活動量的計算結果。而圖 4.26 與圖 4.27 則展示了嬰兒從影像左、右二個方向爬 行而離開安全範圍,隨後又在鏡頭的自動控下重回安全範圍內之範例。
圖 4.24 鏡頭向上移動之連續影像範例。
圖 4.25 鏡頭向下移動之連續影像範例。
59
圖 4.26 鏡頭向右移動之連續影像範例。
圖 4.27 鏡頭向左移動之連續影像範例。
60
在進行實驗時,由於鏡頭移動時畫面中的前景物即使不移動也會產生位置座 標的改變與座標變化,會使得 dynamic 3-step search 在比對時的初始位置出現誤 差,誤差若過大會導致追蹤結果受到影響。為了改善這種狀況,本系統在鏡頭移 動時會進行前景物的移動補償,其方法為以鏡頭移動之速度來估計前景物質心 x、y 座標的距離,並利用此距離來調整 dynamic 3-step search 在比對時的初始位 置,避免搜尋到錯誤的區塊。