人體姿勢識別的制作方法
【技術領域】
[0001 ]本發明涉及人體姿勢識別方法及用于人體姿勢識別的識別裝置。
【背景技術】
[0002]已知借助深度照相機裝置來采集人體姿勢。因此,例如以下系統已投放市場,其能夠確定各個人體部分或者說各個身體肢節的彼此相對位置。可以從例如小臂相對于上臂的相對位置推導出姿勢和進而姿勢控制。已知方法例如被用于執行電腦游戲或電視機的控制。在此通常通過深度照相機產生點云,可從點云中通過計算算法算出各自身體部分的當前位置和進而身體部分的相互關聯。對所有時刻來說,在此須根據分析評估方法學來處理整個點云。
[0003]已知方法的缺點是在該方法的任何時刻都需要相對高的計算成本。因此,在每次運動后的人體活動時必須重新獲取整個點云并重新分析。這尤其在辨識小的身體部分乃至各個身體肢節時需要巨大的通常無法提供的計算成本。與此相應,已知方法局限于識別相對粗略的姿勢,即,例如手臂向上或向下運動或者小臂彎曲運動。細微運動如不同手勢尤其是由不同手指姿態所產生的手勢只能通過已知方法以過度復雜的計算投入來解決。這增加了執行這種方法的算不上經濟的成本。另外在這種情況下需要分辨率很高的深度照相機以所需速度在點云中可彼此區分地成像各個身體肢節。為此執行相應方法所需要的成本投入也顯著增加。
【發明內容】
[0004]本發明的任務是至少部分消除前述缺點。尤其是本發明的任務是以低成本的簡單方法也允許識別細微姿勢且尤其是識別各個指節的姿勢。
[0005]前述任務將通過具有權利要求1的特征的方法和具有權利要求15的特征的識別裝置完成。由從屬權利要求、說明書和附圖中得到本發明的其它特征和細節。在此適用與本發明方法相關和當然還有與本發明的識別裝置相關(反之亦然)所描述的特征和細節,因而,關于公開內容,總是或能夠交替參照一些發明方面。
[0006]本發明的方法用于借助深度照相機裝置識別人體姿勢,具有以下步驟:
a)通過深度照相機裝置在第一時刻作為初始圖像產生點云;
b)分析初始圖像以識別身體的身體肢節;
c)安插具有相對于至少一個身體肢節的由轉動角度限定的回轉自由度的至少一個關節點;
d)由深度照相機裝置在第一時刻之后的第二時刻作為后續圖像產生點云;
e)從該初始圖像關于所述至少一個所識別的身體肢節和至少一個所安插的關節點分析該后續圖像;
f)在該后續圖像中確定該至少一個關節點的轉動角度;
g)比較所確定的轉動角度與轉動角度設定值, h)在確定的轉動角度與轉動角度設定值的關聯中識別姿勢。
[0007]本發明的方法用于也識別尤其是各個身體肢節如人體手指的細微姿勢。但是,該方法原則上可以被用于整個人體中,即用在任何身體肢節上。因此,身體肢節尤其能被定義為單獨活動的人體骨頭單元。它們例如可以通過小腿、大腿、上臂或小臂構成。更細小的關節如尤其是每個手指的各個指節也可以是本發明意義上的人體身體肢節。
[0008]在本發明意義上,并非在任何時刻進行點云的完全分析。相反,在兩個不同時刻的點云的比較可以允許縮減至各自身體肢節的模型和相應關節點。因此,不必再進行復雜的圖像比較以識別姿勢。相反,姿勢識別可以被縮減至直接或間接地比較轉動角度與轉動角度設定值。在間接比較時不必完全重合一致,而是只存在足夠的尤其預定的近似。
[0009]根據本發明,該方法以初始化開始。深度照相機裝置在此最好配備有至少一個深度照相機并且可通過這種方式產生三維點云。即,在也可稱為初始化時刻的第一時刻,該點云作為初始圖像出現。與身體的身體肢節識別相關地進行初始圖像的分析。在此,整個點云或點云的部分區域可以被詳細分析。尤其是只在以下身體部分區域中進行分析,該身體部分區域包含姿勢所需要的身體肢節。即,如果例如識別人體且查找手指姿勢,則只在該手的區域內進行初始圖像的詳細分析以便進行作為人體身體肢節的各個指節的識別。
[0010]關節點的安插與當前所識別的身體肢節相關地進行。因此,例如通過呈指節形式的各個身體肢節限定人手的各個手指。在各個身體肢節之間設有具有一個或多個回轉自由度的人體關節。各個身體肢節之間的連接通過本發明所基于的模型通過恰好具有一個規定的自由度的關節點來表現。如果在人體的兩個身體肢節之間的真實關節是具有兩個或更多回轉自由度的結構,則當然也可以安插分別具有一個規定的自由度的兩個或更多關節點。為此,根據本發明也可以模擬具有兩個或更多回轉自由度的人體的復雜關節。通過安插所述關節點,得到了初始轉動角度,其按照規定方式表述兩個相鄰身體肢節的相對定位。即,該轉動角度明確無疑地表示身體肢節的相互實際定位。
[0011]在此,每個關節點的轉動角度在各自坐標系內對應于各自關節點是確定的。在本發明方法中設定的每個關節點具有自身坐標系。由于就像例如在人手的各個指節時那樣各個身體肢節相互鏈接,故在各個身體肢節彼此相對進行復雜運動時也得到各個坐標系的平移運動和/或回轉運動。但為了保持隨后的分析步驟盡量簡單,總是分別與對應關節點的例如平移隨動坐標系相關地設定該轉動角度。為此,通過在多個關節點中的多個轉動角度的關系得到所有身體肢節的規定的彼此相對身體肢節位置。
[0012]如從前一段落中知道地,最好采用并安插多個關節點。為此也針對所述多個關節點得到多個轉動角度。它們能例如以單列多行矢量形式設置或存儲以便更好地一覽無余。為此,單列多行矢量以規定的且尤其明確無疑的方式描述各個身體肢節的彼此相對位置。
[0013]此外要指出的是,不必為每個所識別的身體肢節也安插一個關節點。因此,例如可以發生身體的所有身體肢節的識別,在這里,對于其它方法步驟僅針對兩手或一手安插所述關節點。換言之,在安插關節點時進行從所有所識別的身體肢節中的挑選。這種挑選可以包含一部分的或者所有的所識別的身體肢節。但至少在至少一個所識別的身體肢節中執行唯一的關節點。
[0014]在通過步驟a)至c)能完成當前人體狀況的初始化后,現在可以進行姿勢識別。在第二時刻,又借助深度照相機裝置作為后續圖像產生在第一時刻后的一個點云。現在,從初始圖像中關于在初始化中已識別的身體肢節且與所安插的關節點相關地進行這種分析。接著,在后續圖像中進行該至少一個關節點的轉動角度的確定。換言之,現在對于多個關節點得到具有多個轉動角度的一個新的單列多行矢量。在初始圖像和后續圖像之間的該矢量內的轉動角度變化對應于身體肢節的轉動角度的變化和由此導出的人體真實情況下的姿勢的變化。
[0015]接著,可以執行在后續圖像內的一定的轉動角度與轉動角度設定值的比較。在此,轉動角度設定值也例如以單列多行矢量形式構成。因此,可以逐行比較在一定轉動角度和轉動角度設定值之間是否一致或基本一致或者說足夠且尤其按照規定地近似。如果是這種情況,則各自人體肢節的真實運動位置對應于與轉動角度設定