• 沒有找到結果。

狀態偵測

在文檔中 中華大學 (頁 46-50)

第四章 手部追蹤

4.4 狀態偵測

35

圖27、 LBP 數值 XOR 誤差表範例

演算法會依序將目前 LBP 影像的特徵點為中心建立樣板區塊,並依序從樣 板區塊中計算他們的 LBP 數值,透過查詢 XOR 誤差表中漢明距離為 0 的數值,

在搜尋區域內以直接定址表來取出與樣板區塊中所包含的每一個 LBP 數值的所 有可能對應位置對應的 LBP 數值位置,並於計算基準點後,在投票暫存器內投 票。

當樣板區塊內的數值皆完成投票動作後,檢查投票暫存器中,是否有基準點 的得票量超過本論文所設定的門檻值。若暫存器內的得票量都沒有超過門檻值,

則將漢明距離放寬加 1,重新再做投票,並將新的得票量再加入投票暫存器;若 暫存器內有一個點的數值超過門檻值,則將該點輸出做為匹配點;若暫存器內有 多個點超過門檻值,則使用 SAD 來做篩選,將輸出最小誤差者做為匹配點。

假設(𝑥1, 𝑦1)為在當前畫面中的一個特徵點位置,而(𝑥2, 𝑦2)為此特徵點在上 一畫面經上述區塊比對所得到的最佳對應點位置,則此特徵點的相對移動向量 (𝑢, 𝑣)即為𝑢 = 𝑥1− 𝑥2和𝑣 = 𝑦1− 𝑦2

36

到重疊狀態,其位置逐漸逼近,必定發生接近狀態。

圖28、 物件間的位置變化狀態

每個物件具有各自的矩形輪廓描述,通常包含 4 項訊息 𝑥, 𝑦, 𝑤, 𝑕 ,其中 x 與 y 為此物件的左上角座標,而 w 與 h 為此物件的寬度與高度。為了追蹤的目 的,本論文定義三種矩形輪廓符號:𝑅𝑡𝑖指在 t 時刻之第 i 個物件的矩形輪廓,𝑂𝑡在 t 時刻之追蹤物件的矩形輪廓,而𝐶𝑡為在 t 時刻之非追蹤物件的矩形輪廓。為 了表示上的方便,假如 R 代表一個物件的矩形輪廓,則其中的 4 項訊息分別表 示為 R.x、R.y、R.w 和 R.h。

在追蹤過程中,本論文常將當前影像中的物件,逐一計算第 i 個物件矩形輪 廓𝑅𝑡𝑖與前一時刻的追蹤物件矩形輪廓𝑂𝑡−1的疊合比例𝐵𝑖。本論文定義𝐴𝑟𝑒𝑎(𝑂𝑡−1) 為 t-1 時刻的追蹤物件的矩形面積,𝐴𝑟𝑒𝑎(𝑅𝑡𝑖)為在 t 時刻之第 i 個物件的矩形面

積,𝑋𝑙𝑒𝑓𝑡、𝑋𝑟𝑖𝑔 𝑕𝑡、𝑌𝑡𝑜𝑝和𝑌𝑏𝑜𝑡𝑡𝑜𝑚分別為第 i 個物件與 t-1 時刻追蹤物件之交集矩

形的最左、最右、最上和最下的位置數值,也就是 𝑋𝑙𝑒𝑓𝑡 = 𝑚𝑎𝑥 𝑂𝑡−1. 𝑥, 𝑅𝑡𝑖. 𝑥

𝑌𝑡𝑜𝑝 = 𝑚𝑎𝑥 𝑂𝑡−1. 𝑦, 𝑅𝑡𝑖. 𝑦

𝑋𝑟𝑖𝑔 𝑕𝑡 = 𝑚𝑖𝑛 𝑂𝑡−1. 𝑥 + 𝑂𝑡−1. 𝑤, 𝑅𝑡𝑖. 𝑥 + 𝑅𝑡𝑖. 𝑤 𝑌𝑏𝑜𝑡𝑡𝑜𝑚 = 𝑚𝑖𝑛 𝑂𝑡−1. 𝑦 + 𝑂𝑡−1. 𝑕, 𝑅𝑡𝑖. 𝑦 + 𝑅𝑡𝑖. 𝑕

假如𝑋𝑙𝑒𝑓𝑡 > 𝑋𝑟𝑖𝑔 𝑕𝑡或者𝑌𝑡𝑜𝑝 > 𝑌𝑏𝑜𝑡𝑡𝑜𝑚,代表此交集矩形為空集合,即𝑅𝑡𝑖與𝑂𝑡−1沒 有相交。當𝑅𝑡𝑖與𝑂𝑡−1有相交時,它們的疊合比例𝐵𝑖計算方式為

𝐵𝑖 = 𝑋𝑟𝑖𝑔 𝑕𝑡− 𝑋𝑙𝑒𝑓𝑡 × (𝑌𝑏𝑜𝑡𝑡𝑜𝑚 − 𝑌𝑡𝑜𝑝) 𝑚𝑎𝑥⁡ 𝐴𝑟𝑒𝑎(𝑅𝑡𝑖), 𝐴𝑟𝑒𝑎(𝑂𝑡−1)

在所有物件中,本論文選擇具有最高疊合比例的物件𝑖為當前時刻的追蹤物件,

也就是

𝑖 = arg max

𝑖 𝐵𝑖

37

在得到𝑖之後,則以第𝑖個物件的矩形輪廓來產生第 t 時刻的追蹤物件矩形輪廓,

即𝑂𝑡=𝑅𝑡𝑖。另外,每一個非𝑖的物件矩形輪廓均可作為非追蹤物件的矩形輪廓𝐶𝑡。 本論文設計一種檢測方法,根據物件輪廓𝑅𝑡𝑖的大小,來建立其檢測範圍𝐷𝑡𝑖,用作 檢查物件間是否接近的判斷依據,其範圍如下式:

𝐷𝑡𝑖. = (𝑅𝑡𝑖. 𝑥 −𝑅𝑡𝑖. 𝑤

2 , 𝑅𝑡𝑖. 𝑦 −𝑅𝑡𝑖. 𝑕

2 , 2 × 𝑅𝑡𝑖. 𝑤, 2 × 𝑅𝑡𝑖. 𝑕)

檢測範圍建立後,便可藉由判斷追蹤物件的檢測範圍𝐷𝑡𝑖與非追蹤物件的檢測範 圍𝐷𝑡𝑖是否有發生重疊,來判斷物件間的狀態,下面將逐一介紹各種狀態的判斷方 法。

A. 分離狀態

當追蹤物件的檢測範圍𝐷𝑡𝑖與一個非追蹤物件的檢測範圍𝐷𝑡𝑖互不相交,即 𝐵𝑖,𝑖 = 0,表示該追蹤物件與非追蹤物件為分離狀態,追蹤物件與該非追蹤物件 間保持著一定的距離。

B. 接近狀態

當追蹤物件的檢測範圍𝐷𝑡𝑖與一個非追蹤物件的檢測範圍𝐷𝑡𝑖發生疊合,即 𝐵𝑖,𝑖 > 0的程度,此時則判斷為接近狀態,將如下圖 29 所示:

圖29、 物件間所定義的範圍示意

系統對其接近的非追蹤物件範圍𝐶𝑡來建立分離模板,紀錄非追蹤物件上的紋

38

理資訊,可用與兩者發生重疊時進行特徵點分離之用;本論文設計一種警戒範圍 𝐴𝑡,用於紀錄接近狀態中追蹤物件矩形輪廓𝑂𝑡與非追蹤物件矩形輪廓𝐶𝑡的於 t 時 刻整體範圍,也就是:

𝐴𝑙𝑒𝑓𝑡 = 𝑚𝑖𝑛 𝑂𝑡. 𝑥, 𝐶𝑡. 𝑥 𝐴𝑡𝑜𝑝 = 𝑚𝑖𝑛 𝑂𝑡. 𝑦, 𝐶𝑡. 𝑦

𝐴𝑟𝑖𝑔 𝑕𝑡 = 𝑚𝑎𝑥 𝑂𝑡. 𝑥 + 𝑂𝑡. 𝑤, 𝐶𝑡. 𝑥 + 𝐶𝑡. 𝑤 𝐴𝑏𝑜𝑡𝑡𝑜𝑚 = 𝑚𝑎𝑥 𝑂𝑡. 𝑦 + 𝑂𝑡. 𝑕, 𝐶𝑡. 𝑦 + 𝐶𝑡. 𝑕

由於𝐴𝑙𝑒𝑓𝑡、𝐴𝑡𝑜𝑝、𝐴𝑟𝑖𝑔 𝑕𝑡、𝐴𝑏𝑜𝑡𝑡𝑜𝑚分別為警戒範圍的左邊、上邊、右邊以及下邊

的 座 標 數 值 , 所 以 警 戒 範 圍 𝐴𝑡 的 矩 形 輪 廓 表 示 為 (𝐴𝑙𝑒𝑓𝑡, A𝑡𝑜𝑝, 𝐴𝑟𝑖𝑔 𝑕𝑡− 𝐴𝑙𝑒𝑓𝑡, 𝐴𝑏𝑜𝑡𝑡𝑜𝑚 − 𝐴𝑡𝑜𝑝)。警戒範圍會根據狀態的不同,所記錄 的範圍也不相同,當狀態由接近轉換為遠離時,兩物件間就不再需要警戒範圍;

當狀態由接近轉換為重疊時,即 t-1 時刻的追蹤物件𝑂𝑡−1與某一非追蹤物件𝐶𝑡−1 於 t 時刻發生了重疊,共同形成了一個重疊物件。在重疊狀態時,重疊物件由於 與前一刻的追蹤物件𝑂𝑡−1有相當高的疊合比例,將被選為此時刻的追蹤物件,然 後記錄其矩形輪廓為𝑂𝑡以及警戒範圍𝐴𝑡

C. 重疊狀態

重疊的判斷是依據 t 時刻追蹤物件𝑂𝑡的矩形面積𝐴𝑟𝑒𝑎(𝑂𝑡)與 t-1 時刻警戒範 圍𝐴𝑡−1的矩形面積𝐴𝑟𝑒𝑎(𝐴𝑡−1)之間的比例 OA 來做為判斷依據:

𝑂𝐴 = 𝐴𝑟𝑒𝑎𝑂𝑡 𝐴𝑟𝑒𝑎𝐴𝑡−1

由於警戒範圍的設計是用於紀錄追蹤物件與非追蹤物件間共同輪廓,則當重疊發 生時,追蹤物件的面積就是重疊物件的面積,因此與警戒範圍面積有極高的重疊 比例 OA;反之,若沒有發生重疊的情況,則追蹤物件的矩形面積將小於紀錄追 蹤物件與非追蹤物件的警戒範圍之面積。本論文這裡使用 0.7 來做為 OA 的門檻 參考值,若 OA 高於或等於 0.7 時,則判斷為重疊狀態。下圖 30 為狀態偵測的

39

演算流程:

圖30、 狀態偵測流程圖

在文檔中 中華大學 (頁 46-50)

相關文件