專利名稱:一種動作類型識別方法、節(jié)目播出方法及裝置的制作方法
技術領域:
本發(fā)明涉及圖像處理與模式識別技術領域,尤其涉及ー種動作類型識別方法、節(jié)目播出方法及裝置。
背景技術:
在線包裝是指可以在演播室、轉播車、播出機房等進行節(jié)目播出過程中,在播出線上實時將模板和文字、圖片、實時資訊等內容結合、渲染并播出。在線包裝從功能上可應用于新聞專題、體育報道、綜藝娛樂、財經資訊、天氣預報等方面,提供內容廣泛、專業(yè)、準確的即時信息,對視音頻信號進行實時地視覺效果強化,提高節(jié)目的質量和觀看性。隨著計算機圖形圖像技術的飛速發(fā)展,觀眾對電視節(jié)目觀賞需求也越來越高,在線包裝在電視節(jié)目的整體包裝中作用越來越大,應用越來越廣泛。在線包裝通常采用基于模板的制作和渲染方式,并采用制作和播出分離的流程。首先由美術設計人員完成場景和模板的制作,然后在播出機房完成對模板的播出控制和實時渲染。在線包裝的圖文包裝系統提供了豐富的素材,包括三維場景、字幕條、角標、圖表、左飛、掃畫、題圖、視窗類等等,用來滿足當前模板設計的需要。當模板制作完成之后,被推送到播出線上,在播控人員的操作監(jiān)控下,完成電視節(jié)目的播出。在線包裝的實施分為在線包裝設計制作和應用兩個階段,在應用階段中模板制作完成之后,通常是播控人員配合主持人的動作類型、講話內容選擇將要播放的特效動畫,控制模板的播放。在即時性要求較強的節(jié)目中采用這種方式時,播控人員必須緊跟主持人的節(jié)奏,完美配合,才能保證節(jié)目的正確播出,稍有疏忽,就會導致節(jié)目中出現錯誤;而且這種播出方式不夠靈活,主持人和圖文信息之間缺乏實時的互動。
發(fā)明內容
本發(fā)明實施例提供了ー種動作類型識別方法、節(jié)目播出方法及裝置,用于解決現有的在線包裝應用中播控人員控制模版的播放可能導致的節(jié)目播出出現錯誤及節(jié)目播出方式不靈活的問題。本發(fā)明實施例提供的技術方案主要包括—種動作類型識別方法,該方法包括接收體感裝置采集的骨骼數據幀,所述骨骼數據幀中包含參考骨骼節(jié)點和至少ー個設定骨骼節(jié)點在由互相垂直的水平方向、垂直方向和景深方向構成的三維坐標空間的坐標;針對接收的每一骨骼數據幀中的每ー設定骨骼節(jié)點均執(zhí)行以下操作,井根據確定的至少ー個設定骨骼節(jié)點的動作類型確定組合動作的動作類型分別確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向、垂直方向和景深方向,骨骼數據幀中設定骨骼節(jié)點的水平方向、垂直方向和景深方向分別是該骨骼數據幀中設定骨骼節(jié)點在水平方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在水平方向上的位置的變化方向、該骨骼數據幀中設定骨骼節(jié)點在垂直方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向上的位置的變化方向以及該骨骼數據幀中設定骨骼節(jié)點在景深方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在景深方向上的位置的變化方向;分別判斷確定的當前骨骼數據幀中設定骨骼節(jié)點的水平方向與水平標志方向是否相同,確定的當前骨骼數據幀中設定骨骼節(jié)點的垂直方向與垂直標志方向是否相同,以及確定的當前骨骼數據幀中設定骨骼節(jié)點的景深方向與景深標志方向是否相同;在判斷結果為水平方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型;在判斷結果為垂直方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型;在判斷結果為景深方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型;根據確定的該設定骨骼節(jié)點在水平方向上的動作類型、在垂直方向上的動作類型和在景深方向上的動作類型,確定該設定骨骼節(jié)點的動作類型。ー種節(jié)目播出方法,所述節(jié)目播出方法包括利用上述動作類型識別方法確定組合動作的動作類型;根據存儲的組合動作的動作類型與特效動畫之間的對應關系,在未播出的特效動畫列表中查找確定的組合動作的動作類型對應的特效動畫;在查找到組合動作的動作類型對應的特效動畫時,播出查找到的所述特效動畫。ー種動作類型識別裝置,該裝置包括接收模塊,用于接收體感裝置采集的骨骼數據幀,所述骨骼數據幀中包含參考骨骼節(jié)點和至少ー個設定骨骼節(jié)點在由互相垂直的水平方向、垂直方向和景深方向構成的三維坐標空間的坐標;第一確定模塊,用于針對接收的每一骨骼數據幀中的每ー設定骨骼節(jié)點分別確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向、垂直方向和景深方向,骨骼數據幀中設定骨骼節(jié)點的水平方向、垂直方向和景深方向分別是該骨骼數據幀中設定骨骼節(jié)點在水平方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在水平方向上的位置的變化方向、該骨骼數據幀中設定骨骼節(jié)點在垂直方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向上的位置的變化方向以及該骨骼數據幀中設定骨骼節(jié)點在景深方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在景深方向上的位置的變化方向;第一判斷模塊,用于分別判斷確定的當前骨骼數據幀中設定骨骼節(jié)點的水平方向與水平標志方向是否相同,確定的當前骨骼數據幀中設定骨骼節(jié)點的垂直方向與垂直標志方向是否相同,以及確定的當前骨骼數據幀中設定骨骼節(jié)點的景深方向與景深標志方向是否相同;第二確定模塊,用于在判斷結果為水平方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型;在判斷結果為垂直方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型;在判斷結果為景深方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型;動作類型確定模塊,用于根據確定的該設定骨骼節(jié)點在水平方向上的動作類型、在垂直方向上的動作類型和在景深方向上的動作類型,確定該設定骨骼節(jié)點的動作類型;組合動作類型確定模塊,用于根據確定的至少ー個設定骨骼節(jié)點的動作類型確定組合動作的動作類型?!N節(jié)目播出裝置,所述節(jié)目播出裝置包括 確定模塊,用于利用上述動作類型識別裝置確定組合動作的動作類型;存儲模塊,用于存儲組合動作的動作類型與特效動畫之間的對應關系;查找模塊,用于根據存儲的組合動作的動作類型與特效動畫之間的對應關系,在未播出的特效動畫列表中查找確定的組合動作的動作類型對應的特效動畫;播出模塊,用于在查找到組合動作的動作類型對應的特效動畫時,播出查找到的所述特效動畫。本發(fā)明實施例中,首先對當前骨骼數據幀中的設定骨骼節(jié)點的方向進行判定,然后在當前骨骼數據幀的幀號與相應的標志骨骼數據幀的幀差號之差在設定范圍時,利用當前設定骨骼節(jié)點數據幀中該設定骨骼節(jié)點的坐標值與相應的標志骨骼數據幀中該設定骨骼節(jié)點的坐標值的關系來判斷設定骨骼節(jié)點的動作類型,實現了對設定骨骼節(jié)點的動作類型的識別,進而可將該識別方法應用各種場景,達到對該應用場景時利用人物的實時動作進行控制的目的。
圖1為本發(fā)明實施例中的人體骨架結構示意圖;圖2為本發(fā)明實施例中的三維坐標示意圖;圖3為本發(fā)明實施例一中的動作類型識別方法流程圖;圖4為本發(fā)明實施例一中的坐標示意圖;圖5為本發(fā)明實施例ニ中的節(jié)目播出方法流程圖;圖6為本發(fā)明實施例三中的動作類型識別裝置的結構示意圖;圖7為本發(fā)明實施例五中的節(jié)目播出裝置結構示意圖。
具體實施例方式為了清楚地說明本發(fā)明實施例的方案,首先對體感裝置及其功能進行介紹。體感裝置是ー種3D體感攝影機,是以紅外線發(fā)出人眼看不見的classl雷射光,透過鏡頭前的光柵將雷射光均勻分布投射在測量空間中,再透過紅外線攝影機記錄下空間中的每個散斑,擷取原始資料后,再透過晶片計算成具有3D深度的圖像,并將具有3D深度的圖像轉換成骨骼數據圖像,每幅骨骼數據圖像即為ー骨骼數據幀,在該骨骼數據幀中通過20個關節(jié)點來表示ー個人體骨架,具體的人體骨架結構如圖1所示。當人物走進體感裝置的視野范圍的時候,體感裝置即可將該人物的20個關節(jié)點的位置找到,關節(jié)點的位置通過三維坐標(X,1,z)表示,體感裝置處于三維坐標的原點上,其中,與X軸平行的方向即為水平方向,與Y軸平行的方向即為垂直方向,與Z軸平行的方向即為景深方向,具體如圖2所示。本發(fā)明實施例直接使用上述體感裝置采集的骨骼數據幀,并對該骨骼數據幀進行相關的處理來進行人的某一骨骼的動作類型識別,并將該動作類型識別結果應用于在線包裝的節(jié)目播出控制上,下面通過各實施例對本發(fā)明的方案進行詳細地描述。實施例一如圖3所示,其為本發(fā)明實施例一的動作類型識別方法流程圖,包括以下步驟步驟101 :接收體感裝置采集的骨骼數據幀。所述骨骼數據幀中包含參考骨骼節(jié)點和至少ー個設定骨骼節(jié)點在由互相垂直的水平方向、垂直方向和景深方向構成的三維坐標空間的坐標;所述設定骨骼節(jié)點是根據實際動作識別的需要來確定的,可以是該骨骼數據幀中上述20個關節(jié)點中的任意ー個。步驟102 :對接收的骨骼數據幀進行去噪處理。需要說明的是,步驟102是本發(fā)明實施例一的優(yōu)選步驟,圖像采集及傳輸過程中會產生椒鹽噪聲及其他類型的噪聲,本步驟102中可以針對不同類型的噪聲進行去噪處理,以盡可能恢復采集的骨骼數據幀的原始數據,使得下述確定的動作類型更為準確。步驟103 :判斷是否對當前骨骼數據幀中包含的設定骨骼節(jié)點都已進行了動作類型的確定,若是,則執(zhí)行步驟122,若否,則執(zhí)行步驟104。步驟104 :從未進行動作類型確定的設定骨骼節(jié)點中挑選ー個設定骨骼節(jié)點,并執(zhí)行步驟105。步驟105 :分別確定當前骨骼數據幀中該挑選的設定骨骼節(jié)點的水平方向、垂直方向和景深方向,并執(zhí)行步驟106、步驟111以及步驟116。這里的步驟106、步驟111和步驟116可以串行執(zhí)行,也可以并行執(zhí)行。其中,骨骼數據幀中挑選的設定骨骼節(jié)點的的水平方向、垂直方向和景深方向分別是該骨骼數據幀中設定骨骼節(jié)點在水平方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在水平方向上的位置的變化方向、該骨骼數據幀中設定骨骼節(jié)點在垂直方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向上的位置的變化方向以及該骨骼數據幀中設定骨骼節(jié)點在景深方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在景深方向上的位置的變化方向。上述骨骼數據幀中設定骨骼節(jié)點的水平方向可以包括向右和向左;骨骼數據幀中設定骨骼節(jié)點的垂直方向可以包括向上和向下,骨骼數據幀中設定骨骼節(jié)點的景深方向可以包括向前和向后。較優(yōu)的,所述分別確定當前骨骼數據幀中該挑選的設定骨骼節(jié)點的水平方向、垂直方向和景深方向,具體包括判斷當前骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值與前一骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值之差是否大于O,判斷當前骨骼數據幀中該挑選的設定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中該挑選的設定骨骼節(jié)點在垂直方向坐標值之差是否大于O,以及判斷當前骨骼數據幀中該挑選的設定骨骼節(jié)點在景深方向的坐標值與前一骨骼數據幀中該挑選的設定骨骼節(jié)點在景深方向坐標值之差是否大于O ;在判斷結果為水平方向的坐標值之差大于0時,確定當前骨骼數據幀中該挑選的設定骨骼節(jié)點的水平方向為向右;在判斷結果為水平方向的坐標值之差不大于0時,確定當前骨骼數據幀中該挑選的設定骨骼節(jié)點的水平方向為向左;在判斷結果為垂直方向的坐標值之差大于0時,確定當前骨骼數據幀中該挑選的設定骨骼節(jié)點的垂直方向為向上;在判斷結果為垂直方向的坐標值之差不大于0時,確定當前骨骼數據幀中該挑選的設定骨骼節(jié)點的垂直方向為向下;在判斷結果為景深方向的坐標值之差大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向前;在判斷結果為景深方向的坐標值之差不大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向后。步驟106 :判斷確定的當前骨骼數據幀中挑選的設定骨骼節(jié)點的水平方向與水平標志方向是否相同;若是,則執(zhí)行步驟107,若否,則執(zhí)行步驟108。水平標志方向初始化為未知方向,在此之后的各次執(zhí)行過程中,即可通過步驟108獲得實際的水平標志方向。上述水平標志方向也即水平標志骨骼數據幀的水平方向。步驟107 :判斷當前骨骼數據幀的幀號與水平標志骨骼數據幀的幀號之差是否在設定范圍內,若是,則執(zhí)行步驟109 ;若否,則執(zhí)行步驟110。需要說明的是,本步驟107是本發(fā)明實施例一的優(yōu)選步驟,由于體感裝置毎秒可以采集30幀的骨骼數據,而通常情況下人物的動作類型毎秒中的變化的頻率是遠達不到29次毎秒的,因此,為了有效的對當前的動作類型是否有效進行準確的判定,執(zhí)行本步驟107。所述設定范圍可以根據實際需要識別的設定骨骼節(jié)點在實際應用中的需要其動作類型的變化頻率來確定,例如通過實驗并對實驗數據進行統計分析來確定,這里并不對所述設定范圍進行限定。在本發(fā)明實施例一的方案中也可以不執(zhí)行步驟107,在步驟106中判斷結果為是之后,直接執(zhí)行步驟109。步驟108 :將當前骨骼數據幀的水平方向作為水平標志方向,將前ー骨骼數據幀的幀號、前一骨骼數據幀的幀號中該挑選的設定骨骼節(jié)點在水平方向的坐標值作為水平標志骨骼數據幀的幀號、水平標志骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值;上述水平標志方向也即水平標志骨骼數據幀的水平方向。上述步驟108也即修改水平標志骨骼數據幀的相關參數。
需要說明的是,本步驟108是為后續(xù)骨骼數據幀中設挑選的定骨骼節(jié)點的動作類型的識別做準備。步驟109 :根據當前骨骼數據幀中挑選的設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值,確定該挑選的設定骨骼節(jié)點在水平方向上的動作類型,并執(zhí)行步驟121。較優(yōu)的,在本步驟109中,具體通過以下方式確定該挑選的設定骨骼節(jié)點在水平方向上的動作類型第一歩判斷當前骨骼數據幀中挑選的設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值之差是否大于設定值;第二歩在當前骨骼數據幀中挑選的設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該挑選的設定骨骼節(jié)點在水平方向上的動作類型為向右劃,并且將該動作類型記錄到動作類型數組中。然后將水平標志方向設定為未知方向,為下ー個動作類型判斷做準備;在當前骨骼數據幀中挑選的設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值之差不大于設定值時,判定該挑選的設定骨骼節(jié)點在水平方向上的動作類型無效。第三步判斷水平標志骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值與當前骨骼數據幀中挑選的設定骨骼節(jié)點在水平方向的坐標值之差是否大于設定值時;第四步在水平標志骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值與當前骨骼數據幀中挑選的設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該挑選的設定骨骼節(jié)點在水平方向上的動作類型為向左劃,并且將該動作類型記錄到動作類型數組中。然后將水平標志方向設定為未知方向,為下ー個動作類型判斷比較做準備;在水平標志骨骼數據幀中該挑選的設定骨骼節(jié)點在水平方向的坐標值與當前骨骼數據幀中挑選的設定骨骼節(jié)點在水平方向的坐標值之差不大于設定值時,判定該挑選的設定骨骼節(jié)點在水平方向上的動作類型無效。上述的四個步驟更具體的對挑選的設定骨骼節(jié)點在水平方向的動作類型進行了判定,并進ー步通過坐標差值與設定值的比較,更準確的確定了動作類型有效和無效,以及有效時具體的動作類型。所述設定值可以通過在實際應用的場景中對實驗數據進行統計分析得到。步驟110 :確定不能對該設定骨骼節(jié)點在水平方向上的動作類型進行判斷。步驟111 :判斷確定的當前骨骼數據幀中挑選的設定骨骼節(jié)點的垂直方向與垂直標志方向是否相同,若否,則執(zhí)行步驟112 ;若是,則執(zhí)行步驟113。垂直標志方向初始化為未知方向,在此之后的各次執(zhí)行過程中,即可通過步驟112獲得實際的垂直標志方向。上述垂直標志方向也即垂直標志骨骼數據幀的垂直方向。步驟112 :將當前骨骼數據幀的垂直方向作為垂直標志方向,將前ー骨骼數據幀的幀號、前一骨骼數據幀中挑選的設定骨骼節(jié)點在垂直方向的坐標值作為垂直標志骨骼數據幀的幀號、垂直標志骨骼數據幀中挑選的設定骨骼節(jié)點在垂直方向的坐標值。上述步驟112也即修改垂直標志骨骼數據幀的相關參數。
需要說明的是,本步驟112是為后續(xù)骨骼數據幀中該挑選的設定骨骼節(jié)點的動作類型的識別做準備。步驟113 :判斷當前骨骼數據幀的幀號與垂直標志骨骼數據幀的幀號之差是否在設定范圍內,若是,則執(zhí)行步驟114,若否,則執(zhí)行步驟115。需要說明的是,本步驟113是本發(fā)明實施例一的優(yōu)選步驟,由于體感裝置毎秒可以采集30幀的骨骼數據,而通常情況下人物的動作類型毎秒中的變化的頻率是遠達不到29次毎秒的,因此,為了有效的對當前的動作類型是否有效進行準確的判定,執(zhí)行本步驟113。步驟114 :根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該挑選的設定骨骼節(jié)點在垂直方向的坐標值,確定該挑選的設定骨骼節(jié)點在垂直方向上的動作類型,并執(zhí)行步驟121。較優(yōu)的,在本步驟114中,具體通過以下方式確定該設定骨骼節(jié)點在垂直方向上的動作類型第一歩判斷當前骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值之差是否大于設定值;第二步在當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向上劃,并且將該動作類型記錄到動作類型數組中。然后將垂直標志骨骼幀的垂直方向設定為未知方向,為下ー個動作類型判斷比較做準備;在當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值之差不大于設定值時,判定該設定骨骼節(jié)點在垂直方向上的動作類型無效。第三歩判斷垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值之差是否大于設定值;第四步在垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向下劃,并且將該動作類型記錄到動作類型數組中。然后將垂直標志方向設定為未知方向,為下ー個動作類型判斷比較做準備;在垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值之差不大于設定值時,判定該設定骨骼節(jié)點在垂直方向上的動作類型無效。步驟115 :確定不能對該設定骨骼節(jié)點在垂直方向上的動作類型進行判斷。步驟116 :判斷確定的當前骨骼數據幀中挑選的設定骨骼節(jié)點的景深方向與景深標志方向是否相同;若是,則執(zhí)行步驟117,若否,則執(zhí)行步驟118。景深標志方向初始化為未知方向,在此之后的各次執(zhí)行過程中,即可通過步驟118獲得實際的標志骨骼數據幀中設定骨骼節(jié)點的景深方向。上述景深標志方向也即景深標志骨骼數據幀的垂直方向。步驟117 :判斷當前骨骼數據幀的幀號與景深標志骨骼數據幀的幀號之差是否在設定范圍內,若是,則執(zhí)行步驟119 ;若否,則執(zhí)行步驟120。需要說明的是,本步驟117是本發(fā)明實施例ー的優(yōu)選步驟,是為了有效的對當前的動作類型是否有效進行準確的判定,執(zhí)行本步驟117。在本發(fā)明實施例一的方案中也可以不執(zhí)行步驟117,在步驟116中判斷結果為是之后,直接執(zhí)行步驟119。步驟118 :將當前骨骼數據幀的景深方向作為景深標志方向,將前ー骨骼數據幀的幀號、前一骨骼數據幀中該挑選的設定骨骼節(jié)點在景深方向的坐標值作為景深標志骨骼數據幀的幀號、景深標志骨骼數據幀中該挑選的設定骨骼節(jié)點在景深方向的坐標值;上述步驟118也即修改景深標志骨骼數據幀的相關參數。需要說明的是,本步驟118是為后續(xù)骨骼數據幀中設挑選的定骨骼節(jié)點的動作類型的識別做準備。步驟119 :根據當前骨骼數據幀中挑選的設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該挑選的設定骨骼節(jié)點在景深方向的坐標值,確定該挑選的設定骨骼節(jié)點在景深方向上的動作類型,并執(zhí)行步驟121。較優(yōu)的,在本步驟119中,具體通過以下方式確定該挑選的設定骨骼節(jié)點在景深方向上的動作類型第一歩判斷當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件,并執(zhí)行第二步;第二歩在大于設定值且滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為點擊,并且將該動作類型記錄到動作類型數組中,然后將景深標志方向設定為未知方向,為下ー個動作類型判斷做準備;在不大于設定值或不滿足設定條件時,判定設定骨骼節(jié)點在景深方向上的動作類型無效。第三步判斷景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件,并執(zhí)行第四步;所述設定條件可以為大于第一設定閾值小于第二設定閾值,所述第一設定閾值小于第二設定閾值。第四歩在大于設定值且滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為向后,并且將該動作類型記錄到動作類型數組中,然后將景深標志骨骼幀的景深方向設定為未知方向,為下ー個動作類型判斷做準備;在在不大于設定值或不滿足設定條件時,判定設定骨骼節(jié)點在景深方向上的動作類型無效。上述的四個步驟更具體的對挑選的設定骨骼節(jié)點在景深方向的動作類型進行了判定,并進ー步通過坐標差值與設定值的比較,更準確的確定了動作類型有效和無效,以及有效時具體的動作類型。所述設定值可以通過在實際應用的場景中對實驗數據進行統計分析得到。步驟120 :確定不能對該設定骨骼節(jié)點在景深方向上的動作類型進行判斷。步驟121 :根據確定的該設定骨骼節(jié)點在水平方向上的動作類型、在垂直方向上的動作類型和在景深方向的動作類型,確定該設定骨骼節(jié)點的動作類型,并跳轉至步驟103。在本步驟121中,由于確定了設定骨骼節(jié)點在水平方向上的動作類型、設定骨骼節(jié)點在垂直方向上的動作類型和設定骨骼節(jié)點在景深方向上的動作類型,而任ー設定骨骼節(jié)點的動作類型可以分解為這三個方向上的動作類型,因此,由確定的這三個方向上的動作類型的結合可以確定設定骨骼節(jié)點的動作類型。例如假設所述設定骨骼節(jié)點為左手,確定的景深方向的動作類型為無效,確定的左手在水平方向上的動作類型為左劃,左手在垂直方向上的動作類型為無效,則可以確定左手的動作類型為左劃;假設所述設定骨骼節(jié)點為左手,確定的景深方向的動作類型為無效,確定的左手在水平方向上的動作類型為左劃,左手在垂直方向上的動作類型為上劃,則可以確定左手的動作類型為左上劃。步驟122 :根據確定的至少ー個設定骨骼節(jié)點的動作類型確定組合動作的動作類型。這里,在確定的設定骨骼節(jié)點的動作類型只有I個時,組合動作的動作類型即為該設定骨骼節(jié)點的動作類型。較優(yōu)的,在所述骨骼數據幀中包含至少兩個設定骨骼節(jié)點時,所述方法還包括在確定每ー設定骨骼節(jié)點的動作類型時,標記當前骨骼數據幀的幀號為該已確定動作類型的設定骨骼節(jié)點的幀號;例如假設當前骨骼數據幀的幀號為13,則在利用幀號為13的骨骼數據幀確定設定骨骼節(jié)點I的動作類型時,可以將13 (也即當前骨骼數據幀的幀號)作為該已確定動作類型的設定骨骼節(jié)點I的幀號。在分別確定每ー設定骨骼節(jié)點的動作類型之后,根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型之前,所述方法還包括分別判斷任意兩個已確定動作類型的設定骨骼節(jié)點的幀號之差是否滿足設定的條件;根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型,具體為在任意已確定動作類型的設定骨骼節(jié)點的幀號之差滿足設定的條件時,根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型。通過本發(fā)明實施例一的方案,首先利用相鄰骨骼數據幀中設定骨骼節(jié)點的坐標值之差與0的關系對當前骨骼數據幀的方向進行判定,然后在當前骨骼數據幀的幀號與標志骨骼數據幀的幀差號之差在設定范圍時,利用當前設定骨骼節(jié)點數據幀中該設定骨骼節(jié)點的坐標值與相應的標志骨骼數據幀中該設定骨骼節(jié)點的坐標值的關系來判斷設定骨骼節(jié)點的動作類型,實現了對設定骨骼節(jié)點的動作類型的識別,并且在動作類型數組的元素個數大于I時,根據確定的至少ー個設定骨骼的動作類型,確定組合動作類型,進而可將該識別方法應用各種場景,達到對該應用場景時利用人物的實時動作進行控制的目的。例如在設定骨骼數據節(jié)點包括左手和右手時,分別確定該左手的動作類型及右手的動作類型,并根據左手和右手的動作類型確定手的動作類型。具體實施時,在設定骨骼節(jié)點包含兩個骨骼節(jié)點時,可利用存儲了該對骨骼節(jié)點的動作類型的動作類型數組進行,其本質是確定組合動作類型,在確定組合動作類型時,若動作類型數組中元素大于1,取到動作類型數組中的最后一個元素作為確定的動作類型,再從動作類型數組中由后向前循環(huán)取到在它前邊的動作類型。若兩個動作類型對應的幀號的差值滿足設定條件(該設定條件可為小于某個設定閾值),即同時發(fā)生,將該動作類型確定為某個組合動作類型,并將它前邊動作類型刪掉;否則,不做操作。若動作類型數組中元素不大于I,則不做操作。例如假設確定了左手的動作類型為左手右劃,并同時確定了右手的動作類型為右手左劃,則可確定雙手的動手類型為雙手合攏;確定了左手的動作類型為左手左劃,并同時確定了右手的動作類型為右手右劃,則可確定雙手的動手類型為雙手分開。上述步驟101至步驟122實現了對動作類型的識別,在某些應用場景中可能需要對人物的指定骨骼節(jié)點的移動進行點的追蹤,因此,在所述骨骼數據幀中包含指定骨骼節(jié)點在三維坐標空間的坐標時;所述動作類型識別方法還包括根據當前骨骼數據幀中的指定骨骼節(jié)點在水平方向坐標值與前一骨骼數據幀中指定骨骼節(jié)點在水平方向坐標值,以及當前骨骼數據幀中的指定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中指定骨骼節(jié)點在垂直方向的坐標值,確定該指定骨骼節(jié)點的移動方向和移動距離。所述指定骨骼節(jié)點和設定骨骼節(jié)點可以相同的,也可以不同的。上述動作類型識別算法可以應用在手這一設置骨骼上,由于有左手和右手,而左手和右手的動作的組合稱為手的動作,因此,在所述設定骨骼節(jié)點分別為左手和右手時,可以分別確定該左手的動作類型及右手的動作類型,并根據左手和右手的動作類型確定手的動作類型(也即組合動作類型)。上述識別過程中,由于體感裝置每秒記錄30幀的數據,代表動作傳遞將會有33ms (1/30秒)的延遲,但是人類對事物的反應速度幾乎都超過100ms,已經大于33ms的延遲?,F在的計算機能在Ims處理多次浮點數的運算,上述動作類型識別方法有完全充分的時間計算相鄰兩幀之間的坐標數據差異,并根據幀號差值在設定范圍的骨骼數據幀中分析設定骨骼節(jié)點并判斷動作類型,實現I秒內正確判斷出動作類型。進而該動作類型識別方法可應用于多種應用場景,如天氣預報、圖片新聞導讀等節(jié)目播出類的場景,以及會議講座、幻燈片播放等等應用場景。針對本發(fā)明實施例一中在設定骨骼節(jié)點分別為左手和右手時,說明本發(fā)明的方案的可行之處的實驗數據如下例如“右手左劃”動作,找到若干實驗者,讓實驗者在體感裝置下做“右手左劃”動作,每個實驗者做20次,記錄實驗者全身節(jié)點的空間三維坐標,我們設定空間坐標見圖4,此動作全程可分解為1、右手向離開軀干(即右)方向運動,此時右手的X值逐漸增大。2、右手到達據軀干右側最遠點,此時右手的X值為最大。3、右手向靠近軀干(即左)方向運動,此時右手的X值逐漸減小。由上所述,右手的X值作為動作判斷依據之一,通過實驗記錄,得出以下實驗數據1,98. 6%的實驗者右手在最遠點的X值都會大于右肘的X值。
2,99. 1%的實驗者在動作結束時右手的X值都會小于右肘的X值。3,93. 5%的實驗者在動作全程右手的Y值都大于腰的Y值,而小于頸的Y值。4,92. 1%的實驗者的右手左移過程中,右手的X值的變化絕對值都超過300mm,且變化時間大于200ms,小于Is。本發(fā)明實施例二中即以本發(fā)明實施例一的方案應用于節(jié)目播出為例,對其應用進行進一步的說明。實施例二如圖5所示,為本發(fā)明實施例二中的節(jié)目播出方法流程圖,所述節(jié)目播出方法包括以下步驟步驟201 :利用實施例一中的動作識別方法確定當前接收骨骼數據幀中至少一個設定骨骼節(jié)點的組合動作的動作類型;步驟202 :判斷該確定的組合動作的動作類型是否為有效的動作類型;若是,則執(zhí)行步驟203 ;若否,則跳轉至步驟201。在本步驟202中,若確定的組合動作的動作類型屬于預先設定的動作類型集合,則判斷確定的動作類型為有效的動作類型,否則,則判斷確定的動作類型為無效的動作類型。步驟203 :根據存儲的組合動作的動作類型與特效動畫之間的對應關系,在未播出的特效動畫列表中查找確定的動作類型對應的特效動畫,并執(zhí)行步驟204。由于設定骨骼節(jié)點的動作類型是有限的,而特效動畫的數量很可能一方面是數量超過動作類型的數量,另一方面,同一動作類型可以對不同的特效動畫;因此,在本步驟203中,可以事先編排好特效動畫的播出順序,并將動作類型與包含播出順序標識的特效動畫建立一對多的對應關系,在進行查找時,即可利用組合動作的動作類型與包含播出順序標識的特效動畫之間的對應關系,準確的查找到確定的組合動作的動作類型對應的特效動畫。例如假設設定骨骼節(jié)點為右手,右手右劃這一動作類型與包含播出順序標識的特效動畫的對應關系為右手右劃對應播出順序為I的特效動畫1、播出順序為5的特效動畫3、播出順序為10的特效動畫4。此時,可每次都從未播出的特效動畫列表中查找動作類型對應的特效動畫,例如假設已執(zhí)行過的動作類型與包含播出順序標識的特效動畫為右手右劃對應播出順序為I的特效動畫1,則更新后的該動作類型與包含播出順序標識的特效動畫對應關系為右手右劃對應播出順序為5的特效動畫3、播出順序為10的特效動畫4。步驟204 :判斷是否找到確定的組合動作的動作類型對應的特效動畫,若是,則執(zhí)行步驟205,若否,則不產生任何行為。步驟205 :將查找到的特效動畫進行播出。在上述播出過程中,需要使用特效動畫隨著播出人員的移動而移動時,可以使用實施例一中的確定該指定骨骼節(jié)點在水平方向的移動方向和移動距離,此時,所述節(jié)目播出方法還包括根據存儲的指定骨骼節(jié)點與特效動畫之間的對應關系和確定的指定骨骼節(jié)點的移動方向和移動距離,在確定的移動方向上將該指定骨骼節(jié)點對應的特效動畫從當前位置移動至距離所述移動距離處的位置。上述在確定的移動方向上將該指定骨骼節(jié)點對應的特效動畫從當前位置移動至距離所述移動距離處的位置,實現了對點的跟蹤。選定主持人某一部位為定點,播出某一特效動畫時,當主持人移動時該特效動畫隨著移動,二者相對位置不變。這種節(jié)目播出方法可實現人機交互,使人控制播出設備精確可靠有實時性。上述節(jié)目播出方法中常用的設置骨骼為雙手,此時,本發(fā)明實施例一中的動作類型識別方法可識別的動作類型包括左手右劃、左手左劃、左手下劃、右手左劃、右手右劃、右手下劃、雙手分開、雙手合攏等。利用本發(fā)明實施例二的節(jié)目播出方法,可實現在主持人做出左手左劃的動作,則一系列的圖片從屏幕左方滑進;左手右劃,圖片從屏幕左方滑出。左手左滑,產生一個圖表;右滑,圖表消失。只要一個有效動作就能控制特效動畫的播出,反映迅速,沒有延遲,無需播控人員操作。播出控制端對整個播出過程控制精度高,安全可靠,節(jié)目更加靈活、生動,提高節(jié)目質量。本發(fā)明實施例二中的假設指定骨骼節(jié)點為主持人頭部時,在主持人左上方產生一個圖片,主持人移動,可實現圖片平滑移動,相對于主持人的位置不變,無需播控人員操作,圖片移動位置準確,播出過程安全、穩(wěn)定。實施例三與本發(fā)明實施例一的同一發(fā)明構思,本發(fā)明實施例三提供一種動作類型識別裝置,如圖6所示,該裝置包括接收模塊101、第一確定模塊102、第一判斷模塊103、第二確定模塊104、動作類型確定模塊105和組合動作類型確定模塊106,其中接收模塊101,用于接收體感裝置采集的骨骼數據幀,所述骨骼數據幀中包含參考骨骼節(jié)點和至少一個設定骨骼節(jié)點在由互相垂直的水平方向、垂直方向和景深方向構成的三維坐標空間的坐標;第一確定模塊102,用于針對接收的每一骨骼數據幀中的每一設定骨骼節(jié)點分別確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向、垂直方向和景深方向,骨骼數據幀中設定骨骼節(jié)點的水平方向、垂直方向和景深方向分別是該骨骼數據幀中設定骨骼節(jié)點在水平方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在水平方向上的位置的變化方向、該骨骼數據幀中設定骨骼節(jié)點在垂直方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向上的位置的變化方向以及該骨骼數據幀中設定骨骼節(jié)點在景深方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在景深方向上的位置的變化方向;第一判斷模塊103,用于分別判斷確定的當前骨骼數據幀中設定骨骼節(jié)點的水平方向與水平標志方向是否相同,確定的當前骨骼數據幀中設定骨骼節(jié)點的垂直方向與垂直標志方向是否相同,以及確定的當前骨骼數據幀中設定骨骼節(jié)點的景深方向與景深標志方向是否相同。第二確定模塊104,用于在判斷結果為水平方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型;在判斷結果為垂直方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型;在判斷結果為景深方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型;動作類型確定模塊105,用于根據確定的該設定骨骼節(jié)點在水平方向上的動作類型、在垂直方向上的動作類型和在景深方向上的動作類型,確定該設定骨骼節(jié)點的動作類型。組合動作類型確定模塊106,用于根據確定的至少一個設定骨骼節(jié)點的動作類型確定組合動作的動作類型。較優(yōu)的,所述第一確定模塊102包括第二判斷模塊201,用于分別判斷當前骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值之差是否大于0,當前骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向坐標值之差是否大于0,以及當前骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在景深方向坐標值之差是否大于O ;方向確定模塊202,用于在第二判斷模塊的判斷結果為水平方向的坐標值之差大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向為向右;在第二判斷模塊的判斷結果為水平方向的坐標值之差不大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向為向左;在第二判斷模塊的判斷結果為垂直方向的坐標值之差大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的垂直方向為向上;在第二判斷模塊的判斷結果為垂直方向的坐標值之差不大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的垂直方向為向下;在判斷結果為景深方向的坐標值之差大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向前;在判斷結果為景深方向的坐標值之差不大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向后。較優(yōu)的,所述骨骼數據幀中還包含骨骼數據幀號,所述裝置還包括修改模塊107,用于在第一判斷模塊的判斷結果為水平方向不相同時,將當前骨骼數據幀的水平方向作為水平標志方向,將一前骨骼數據幀的幀號、設定骨骼節(jié)點在水平方向的坐標值作為水平標志骨骼數據幀的幀號、設定骨骼節(jié)點在水平方向的坐標值;在第一判斷模塊的判斷結果為垂直方向不相同時,將當前骨骼數據幀的垂直方向作為垂直標志方向,將前一骨骼數據幀的幀號、設定骨骼節(jié)點在垂直方向的坐標值作為垂直標志骨骼數據幀的幀號、設定骨骼節(jié)點在垂直方向的坐標值;在判斷結果為景深方向不相同時,將當前骨骼數據幀的景深方向作為景深標志方向,將前一骨骼數據幀的幀號、設定骨骼節(jié)點在景深方向的坐標值作為景深標志骨骼數據幀的幀號、設定骨骼節(jié)點在景深方向的坐標值。較優(yōu)的,所述骨骼數據幀中還包含骨骼數據幀號;所述裝置還包括第三判斷模塊108,用于在第一判斷模塊的判斷結果為水平方向相同之后,判斷當前骨骼數據幀的幀號與水平標志骨骼數據幀的幀號之差是否在設定范圍內,以及在第一判斷模塊的判斷結果為垂直方向相同之后,判斷當前骨骼數據幀的幀號與垂直標志骨骼數據幀的幀號之差是否在設定范圍內,以及在第一判斷模塊的判斷結果為景深方向相同之后,判斷當前骨骼數據幀的幀號與景深標志骨骼數據幀的幀號之差是否在設定范圍內;所述第二確定模塊104,具體用于在當前骨骼數據幀的幀號與水平標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型;在當前骨骼數據幀的幀號與垂直標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型;在當前骨骼數據幀的幀號與景深標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型。較優(yōu)的,所述第二確定模塊104,具體用于在當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在水平方向上的動作類型為向右劃;在水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在水平方向上的動作類型為向左劃;在當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向上劃;在垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向下劃;在當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為點擊;在景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為后移。較優(yōu)的,所述裝置還包括去噪模塊109,用于在分別確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向、垂直方向和景深方向之前,對接收模塊接收的骨骼數據幀進行去噪處理。較優(yōu)的,所述骨骼數據幀中包含設定骨骼節(jié)點在三維坐標空間的坐標;所述裝置還包括第三確定模塊110,用于根據當前骨骼數據幀中的指定骨骼節(jié)點在水平方向坐標值與前一骨骼數據幀中指定骨骼節(jié)點在水平方向坐標值,以及當前骨骼數據幀中的指定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中指定骨骼節(jié)點在垂直方向的坐標值,確定該指定骨骼節(jié)點的移動方向和移動距離。較優(yōu)的,所述裝置還包括標記模塊111,用于在所述骨骼數據幀中包含至少兩個設定骨骼節(jié)點時,在確定每一設定骨骼節(jié)點的動作類型時,標記當前骨骼數據幀的幀號為該已確定動作類型的設定骨骼節(jié)點的幀號;
第四判斷模塊112,用于分別判斷任意兩個已確定動作類型的設定骨骼節(jié)點的幀號之差是否滿足設定的條件;所述組合動作類型確定模塊106,具體用于在任意已確定動作類型的設定骨骼節(jié)點的幀號之差滿足設定的條件時,根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型。實施例四與本發(fā)明實施例二的同一發(fā)明構思,本發(fā)明實施例四提出一種節(jié)目播出裝置,如圖7所示,所述節(jié)目播出裝置包括確定模塊31、存儲模塊32、查找模塊33和播出模塊34,其中確定模塊31,用于利用實施例三中任一所述的動作類型識別裝置確定組合動作的動作類型;存儲模塊32,用于用于存儲組合動作的動作類型與特效動畫之間的對應關系;查找模塊33,用于根據存儲的組合動作的動作類型與特效動畫之間的對應關系,在未播出的特效動畫列表中查找確定的組合動作的動作類型對應的特效動畫;播出模塊34,用于在查找到組合動作的動作類型對應的特效動畫時,播出查找到的所述特效動畫。較優(yōu)的,存儲模塊32,還用于存儲指定骨骼節(jié)點與特效動畫之間的對應關系;所述節(jié)目播出裝置還包括移動模塊35,用于根據存儲的指定骨骼節(jié)點與特效動畫之間的對應關系和動作類型識別裝置確定的指定骨骼節(jié)點的移動方向和移動距離,在確定的移動方向上將該指定骨骼節(jié)點對應的特效動畫從當前位置移動至距離所述移動距離處的位置。本發(fā)明實施例將體感技術與在線包裝中的節(jié)目播出相結合,利用人體動作控制在線包裝的特效動畫的播出。體感裝置實時捕捉主持人的動作,主持人做了一個動作,動作類型識別裝置會馬上做出判斷。如果是有效動作類型,就會觸發(fā)節(jié)目播出裝置播出相應的特效動畫;如果是無效動類型作,不產生任何特效。不需要播控人員操作,就能準確地播出圖文特效,減輕了播控人員的工作強度。動作類型識別方法容錯能力較高,保證系統安全、穩(wěn)定、高度可靠。使用人機交互,具有實時性,控制精度高,提出了線包裝播出階段一種新的節(jié)目播出方式。本領域內的技術人員應明白,本發(fā)明的實施例可提供為方法、系統、或計算機程序產品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產品的形式。本發(fā)明是參照根據本發(fā)明實施例的方法、裝置(系統)、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理裝置的處理器以產生一個機器,使得通過計算機或其他可編程數據處理裝置的處理器執(zhí)行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理裝置以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數據處理裝置上,使得在計算機或其他可編程裝置上執(zhí)行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程裝置上執(zhí)行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。
權利要求
1.一種動作類型識別方法,其特征在于,該方法包括 接收體感裝置采集的骨骼數據幀,所述骨骼數據幀中包含參考骨骼節(jié)點和至少一個設定骨骼節(jié)點在由互相垂直的水平方向、垂直方向和景深方向構成的三維坐標空間的坐標;針對接收的每一骨骼數據幀中的每一設定骨骼節(jié)點均執(zhí)行以下操作,并根據確定的至少一個設定骨骼節(jié)點的動作類型確定組合動作的動作類型 分別確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向、垂直方向和景深方向,骨骼數據幀中設定骨骼節(jié)點的水平方向、垂直方向和景深方向分別是該骨骼數據幀中設定骨骼節(jié)點在水平方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在水平方向上的位置的變化方向、該骨骼數據幀中設定骨骼節(jié)點在垂直方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向上的位置的變化方向以及該骨骼數據幀中設定骨骼節(jié)點在景深方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在景深方向上的位置的變化方向; 分別判斷確定的當前骨骼數據幀中設定骨骼節(jié)點的水平方向與水平標志方向是否相同,確定的當前骨骼數據幀中設定骨骼節(jié)點的垂直方向與垂直標志方向是否相同,以及確定的當前骨骼數據幀中設定骨骼節(jié)點的景深方向與景深標志方向是否相同; 在判斷結果為水平方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型; 在判斷結果為垂直方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型; 在判斷結果為景深方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型; 根據確定的該設定骨骼節(jié)點在水平方向上的動作類型、在垂直方向上的動作類型和在景深方向上的動作類型,確定該設定骨骼節(jié)點的動作類型。
2.如權利要求1所述的方法,其特征在于,所述分別確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向、垂直方向和景深方向,具體包括 分別判斷當前骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值之差是否大于O,當前骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向坐標值之差是否大于O,以及當前骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在景深方向坐標值之差是否大于O ; 在判斷結果為水平方向的坐標值之差大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向為向右; 在判斷結果為水平方向的坐標值之差不大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向為向左; 在判斷結果為垂直方向的坐標值之差大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的垂直方向為向上;在判斷結果為垂直方向的坐標值之差不大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的垂直方向為向下; 在判斷結果為景深方向的坐標值之差大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向前; 在判斷結果為景深方向的坐標值之差不大于O時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向后。
3.如權利要求1所述的方法,其特征在于,所述骨骼數據幀中還包含骨骼數據幀號,所述方法還包括 在判斷結果為水平方向不相同時,將當前骨骼數據幀的水平方向作為水平標志方向,將前一骨骼數據幀的幀號、設定骨骼節(jié)點在水平方向的坐標值作為水平標志骨骼數據幀的幀號、設定骨骼節(jié)點在水平方向的坐標值; 在判斷結果為垂直方向不相同時,將當前骨骼數據幀的垂直方向作為垂直標志方向,將前一骨骼數據幀的幀號、設定骨骼節(jié)點在垂直方向的坐標值作為垂直標志骨骼數據幀的幀號、設定骨骼節(jié)點在垂直方向的坐標值; 在判斷結果為景深方向不相同時,將當前骨骼數據幀的景深方向作為景深標志方向,將前一骨骼數據幀的幀號、設定骨骼節(jié)點在景深方向的坐標值作為景深標志骨骼數據幀的幀號、設定骨骼節(jié)點在景深方向的坐標值。
4.如權利要求1所述的方法,其特征在于,所述骨骼數據幀中還包含骨骼數據幀號; 在判斷結果為水平方向相同之后,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型之前,所述方法還包括 判斷當前骨骼數據幀的幀號與水平標志骨骼數據幀的幀號之差是否在設定范圍內;根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型,具體為 在當前骨骼數據幀的幀號與水平標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型; 在判斷結果為垂直方向相同之后,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型之前,所述方法還包括 判斷當前骨骼數據幀的幀號與垂直標志骨骼數據幀的幀號之差是否在設定范圍內;根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型,具體為 在當前骨骼數據幀的幀號與垂直標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型; 在判斷結果為景深方向相同之后,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型之前,所述方法還包括 判斷當前骨骼數據幀的幀號與景深標志骨骼數據幀的幀號之差是否在設定范圍內; 根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型,具體為 在當前骨骼數據幀的幀號與景深標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型。
5.如權利要求4所述的方法,其特征在于, 所述根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型,具體為 在當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在水平方向上的動作類型為向右劃; 在水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在水平方向上的動作類型為向左劃; 所述根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型,具體為 在當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向上劃; 在垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向下劃; 所述根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和垂直標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型具體為 在當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為點擊; 在景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為后移。
6.如權利要求1所述的方法,其特征在于,所述骨骼數據幀中包含指定骨骼節(jié)點在三維坐標空間的坐標;所述方法還包括 根據當前骨骼數據幀中的指定骨骼節(jié)點在水平方向的坐標值與前一骨骼數據幀中指定骨骼節(jié)點在水平方向的坐標值,以及當前骨骼數據幀中的指定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中指定骨骼節(jié)點在垂直方向的坐標值,確定該指定骨骼節(jié)點的移動方向和移動距離。
7.如權利要求1所述的方法,其特征在于,在所述骨骼數據幀中包含至少兩個設定骨骼節(jié)點時,所述方法還包括在確定每一設定骨骼節(jié)點的動作類型時,標記當前骨骼數據幀的幀號為該已確定動作類型的設定骨骼節(jié)點的幀號; 在分別確定每一設定骨骼節(jié)點的動作類型之后,根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型之前,所述方法還包括 分別判斷任意兩個已確定動作類型的設定骨骼節(jié)點的幀號之差是否滿足設定的條件; 根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型,具體為在任意已確定動作類型的設定骨骼節(jié)點的幀號之差滿足設定的條件時,根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型。
8.一種節(jié)目播出方法,其特征在于,所述節(jié)目播出方法包括 利用權利要求1至權利要求7任一所述的方法確定組合動作的動作類型; 根據存儲的組合動作的動作類型與特效動畫之間的對應關系,在未播出的特效動畫列表中查找確定的組合動作的動作類型對應的特效動畫; 在查找到組合動作的動作類型對應的特效動畫時,播出查找到的所述特效動畫。
9.如權利要求8所述的節(jié)目播出方法,其特征在于,所述節(jié)目播出方法還包括 根據存儲的指定骨骼節(jié)點與特效動畫之間的對應關系和確定的指定骨骼節(jié)點的移動方向和移動距離,在確定的移動方向上將該指定骨骼節(jié)點對應的特效動畫從當前位置移動至距離所述移動距離處的位置。
10.一種動作類型識別裝置,其特征在于,該裝置包括 接收模塊,用于接收體感裝置采集的骨骼數據幀,所述骨骼數據幀中包含參考骨骼節(jié)點和至少一個設定骨骼節(jié)點在由互相垂直的水平方向、垂直方向和景深方向構成的三維坐標空間的坐標; 第一確定模塊,用于針對接收的每一骨骼數據幀中的每一設定骨骼節(jié)點分別確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向、垂直方向和景深方向,骨骼數據幀中設定骨骼節(jié)點的水平方向、垂直方向和景深方向分別是該骨骼數據幀中設定骨骼節(jié)點在水平方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在水平方向上的位置的變化方向、該骨骼數據幀中設定骨骼節(jié)點在垂直方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向上的位置的變化方向以及該骨骼數據幀中設定骨骼節(jié)點在景深方向上的位置相對于其前一骨骼數據幀中該設定骨骼節(jié)點在景深方向上的位置的變化方向; 第一判斷模塊,用于分別判斷確定的當前骨骼數據幀中設定骨骼節(jié)點的水平方向與水平標志方向是否相同,確定的當前骨骼數據幀中設定骨骼節(jié)點的垂直方向與垂直標志方向是否相同,以及確定的當前骨骼數據幀中設定骨骼節(jié)點的景深方向與景深標志方向是否相同; 第二確定模塊,用于在判斷結果為水平方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型;在判斷結果為垂直方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型;在判斷結果為景深方向相同時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型; 動作類型確定模塊,用于根據確定的該設定骨骼節(jié)點在水平方向上的動作類型、在垂直方向上的動作類型和在景深方向上的動作類型,確定該設定骨骼節(jié)點的動作類型; 組合動作類型確定模塊,用于根據確定的至少一個設定骨骼節(jié)點的動作類型確定組合動作的動作類型。
11.如權利要求10所述的裝置,其特征在于,所述第一確定模塊包括 第二判斷模塊,用于分別判斷當前骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值之差是否大于0,當前骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在垂直方向坐標值之差是否大于0,以及當前骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值與前一骨骼數據幀中該設定骨骼節(jié)點在景深方向坐標值之差是否大于0 ; 方向確定模塊,用于在第二判斷模塊的判斷結果為水平方向的坐標值之差大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向為向右;在第二判斷模塊的判斷結果為水平方向的坐標值之差不大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的水平方向為向左;在第二判斷模塊的判斷結果為垂直方向的坐標值之差大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的垂直方向為向上;在第二判斷模塊的判斷結果為垂直方向的坐標值之差不大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的垂直方向為向下;在判斷結果為景深方向的坐標值之差大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向前;在判斷結果為景深方向的坐標值之差不大于0時,確定當前骨骼數據幀中該設定骨骼節(jié)點的景深方向為向后。
12.如權利要求10所述的裝置,其特征在于,所述骨骼數據幀中還包含骨骼數據幀號,所述裝置還包括 修改模塊,用于在第一判斷模塊的判斷結果為水平方向不相同時,將當前骨骼數據幀的水平方向作為水平標志方向,將前一骨骼數據幀的幀號、在水平方向的坐標值作為水平標志骨骼數據幀的幀號、設定骨骼節(jié)點在水平方向的坐標值;在第一判斷模塊的判斷結果為垂直方向不相同時,將當前骨骼數據幀的垂直方向作為垂直標志方向,將前一骨骼數據幀的幀號、設定骨骼節(jié)點在垂直方向的坐標值作為垂直標志骨骼數據幀的幀號、設定骨骼節(jié)點在垂直方向的坐標值;在判斷結果為景深方向不相同時,將當前骨骼數據幀的景深方向作為景深標志方向,將前一骨骼數據幀的幀號、設定骨骼節(jié)點在景深方向的坐標值作為景深標志骨骼數據幀的幀號、設定骨骼節(jié)點在景深方向的坐標值。
13.如權利要求10所述的裝置,其特征在于,所述骨骼數據幀中還包含骨骼數據幀號;所述裝置還包括 第三判斷模塊,用于在第一判斷模塊的判斷結果為水平方向相同之后,判斷當前骨骼數據幀的幀號與水平標志骨骼數據幀的幀號之差是否在設定范圍內,以及在第一判斷模塊的判斷結果為垂直方向相同之后,判斷當前骨骼數據幀的幀號與垂直標志骨骼數據幀的幀號之差是否在設定范圍內,以及在第一判斷模塊的判斷結果為景深方向相同之后,判斷當前骨骼數據幀的幀號與景深標志骨骼數據幀的幀號之差是否在設定范圍內; 所述第二確定模塊,具體用于在當前骨骼數據幀的幀號與水平標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在水平方向上的動作類型;在當前骨骼數據幀的幀號與垂直標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值,確定該設定骨骼節(jié)點在垂直方向上的動作類型;在當前骨骼數據幀的幀號與景深標志骨骼數據幀的幀號之差在設定范圍內時,根據當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值、當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值和景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值,確定該設定骨骼節(jié)點在景深方向上的動作類型。
14.如權利要求13所述的裝置,其特征在于, 所述第二確定模塊,具體用于在當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值與水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在水平方向上的動作類型為向右劃;在水平標志骨骼數據幀中該設定骨骼節(jié)點在水平方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在水平方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在水平方向上的動作類型為向左劃;在當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值與垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向上劃;在垂直標志骨骼數據幀中該設定骨骼節(jié)點在垂直方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在垂直方向的坐標值之差大于設定值時,確定該設定骨骼節(jié)點在垂直方向上的動作類型為向下劃;在當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為點擊;在景深標志骨骼數據幀中該設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值之差大于設定值,且當前骨骼數據幀中設定骨骼節(jié)點在景深方向的坐標值與當前骨骼數據幀中參考骨骼節(jié)點在景深方向的坐標值之差滿足設定條件時,確定該設定骨骼節(jié)點在景深方向上的動作類型為后移。
15.如權利要求10所述的裝置,其特征在于,所述骨骼數據幀中包含指定骨骼節(jié)點在三維坐標空間的坐標;所述裝置還包括 第三確定模塊,用于根據當前骨骼數據幀中的指定骨骼節(jié)點在水平方向坐標值與前一骨骼數據幀中指定骨骼節(jié)點在水平方向坐標值,以及當前骨骼數據幀中的指定骨骼節(jié)點在垂直方向的坐標值與前一骨骼數據幀中指定骨骼節(jié)點在垂直方向的坐標值,確定該指定骨骼節(jié)點的移動方向和移動距離。
16.如權利要求10所述的裝置,其特征在于,所述裝置還包括 標記模塊,用于在所述骨骼數據幀中包含至少兩個設定骨骼節(jié)點時,且在確定每一設定骨骼節(jié)點的動作類型時,標記當前骨骼數據幀的幀號為該已確定動作類型的設定骨骼節(jié)點的巾貞號; 第四判斷模塊,用于分別判斷任意兩個已確定動作類型的設定骨骼節(jié)點的幀號之差是否滿足設定的條件; 所述組合動作類型確定模塊,用于在任意已確定動作類型的設定骨骼節(jié)點的幀號之差滿足設定的條件時,根據確定的至少兩個設定骨骼節(jié)點的動作類型確定組合動作的動作類型。
17.一種節(jié)目播出裝置,其特征在于,所述節(jié)目播出裝置包括 確定模塊,用于利用權利要求10至權利要求16任一所述的動作類型識別裝置確定組合動作的動作類型; 存儲模塊,用于存儲的組合動作的動作類型與特效動畫之間的對應關系; 查找模塊,用于根據存儲的組合動作的動作類型與特效動畫之間的對應關系,在未播出的特效動畫列表中查找確定的動作類型對應的特效動畫; 播出模塊,用于在查找到的組合動作的動作類型對應的特效動畫時,播出查找到的所述特效動畫。
18.如權利要求17所述的節(jié)目播出裝置,其特征在于, 所述存儲模塊,還用于存儲指定骨骼節(jié)點與特效動畫之間的對應關系; 所述節(jié)目播出裝置還包括 移動模塊,用于根據存儲的指定骨骼節(jié)點與特效動畫之間的對應關系和動作類型識別裝置確定的指定骨骼節(jié)點的移動方向和移動距離,在確定的移動方向上將該指定骨骼節(jié)點對應的特效動畫從當前位置移動至距離所述移動距離處的位置。
全文摘要
本發(fā)明公開了一種動作類型識別方法、節(jié)目播出方法及裝置,主要內容為對采集的骨骼數據幀分別進行水平方向、垂直方向上和景深方向上的動作類型的判斷,首先利用相鄰骨骼數據幀中設定骨骼節(jié)點的位置關系對當前骨骼數據幀的方向進行判定,然后在當前骨骼數據幀的幀號與標志骨骼數據幀的幀差號之差在設定范圍時,利用當前骨骼數據幀中該設定骨骼節(jié)點的坐標值與標志骨骼數據幀中該設定骨骼節(jié)點的坐標值來判斷設定骨骼節(jié)點的動作類型,實現了對設定骨骼節(jié)點的動作類型的識別,進而可將該識別方法應用各種場景,達到利用人物的動作對該應用場景進行實時控制的目的。
文檔編號G06F3/01GK103020648SQ201310007928
公開日2013年4月3日 申請日期2013年1月9日 優(yōu)先權日2013年1月9日
發(fā)明者吳雷, 李金楠, 邸楠 申請人:北京東方艾迪普科技發(fā)展有限公司