新四季網

基於真實球拍的協同式增強現實桌球系統構建方法

2023-05-10 04:36:16 2

專利名稱:基於真實球拍的協同式增強現實桌球系統構建方法
技術領域:
本發明涉及虛擬實境、增強現實和計算機圖形學領域,具體地說是一種基於真實 球拍的協同式增強現實桌球系統構建方法。
背景技術:
增強現實(Augmented Reality,簡稱AR)是虛擬實境的進一步拓展,它藉助必 要的設備使計算機生成的虛擬對象(Virtual Object,簡稱V0)與客觀存在的真實環境 (RealEnvironment,簡稱RE)共存於同一個增強現實系統中,從感官和體驗效果上給用戶 呈現出虛擬對象與真實環境融為一體的增強現實環境,增強現實具有虛實結合、實時交互、 三維註冊的基本特點。協同式增強現實(Collaborative Augmented Reality,簡稱CAR)技術是增強現實 技術和網絡技術的結合,是增強現實技術的重要組成部分,它可以使多個用戶同時感受到 虛擬對象與真實環境融為一體的增強現實場景,並能夠在網絡通信平臺上進行各種交互操 作和協同工作,共同完成預定任務。隨著增強現實技術和網絡技術的不斷發展,構建協同式 增強現實應用系統成為可能,為產品設計與製造、醫療模擬與分析、軍事訓練與演習、異地 協同教育和體育比賽等領域提供了新思路,在工業、醫療、教育、軍事、體育和娛樂等領域具 有廣泛的應用前景。所以,目前有很多基於增強現實技術和網絡技術的應用,構建該類應用 不僅要解決標誌物檢測、一致三維註冊等問題,還要解決數據傳輸和狀態轉換等問題,保證 協同工作的多用戶具有一致的感官體驗並能夠協同完成預定任務。目前,有一些增強現實應用是需要多用戶在同一真實環境進行交互並完成預 定任務的。2005年,韓國GIST U-VR實驗室的研究者設計了一個協同式增強現實撞球 (Collaborative biIliARds)應用系統,兩個用戶使用頭盔顯示器,圍繞真實球桌使用真實 球桿擊打虛擬撞球,並可以自行設置虛擬障礙物體,實現了虛擬球同真實球桿、真實球桌和 虛擬物體的多次碰撞,並採用了力反饋裝置使得交互更加真實。2007年,瑞士ETH大學計算 機視覺實驗室設計並實現了一個具有觸覺反饋的增強現實桌球系統,該系統利用在真實 桌球桌貼的標誌物用於跟蹤註冊,並利用跟蹤裝置定位真實球拍和真實球桌的相對位置 和方向,在該系統中,球拍和球都是計算機繪製的虛擬物體,球桌是真實的,雙方用戶站在 球桌對面協同打球。2007年,哥倫比亞大學的Ohan Oda等人設計了一個增強現實賽車遊戲 系統,該系統利用XNA遊戲開發平臺對現有的賽車遊戲系統進行修改,通過跟蹤球桌上的 標誌物註冊虛擬物體,使得用戶能夠控制虛擬物體進行賽車。但是,一方面這些應用需要比 較複雜的跟蹤裝置和力反饋裝置,不便於系統的搭建和推廣,另一方面,這些應用系統都將 雙方用戶限制在同一個真實環境中,限制了系統的使用範圍。因此,隨著網絡技術的不斷發展,出現了一些基於網絡的協同式增強現實應 用。2004年,芬蘭VTT技術研究中心研究者利用協同式增強現實技術模擬了桌球運 動,該系統能夠使得使用真實桌球拍的用戶面對攝像頭同通過網絡連接的異地用戶協 同打球,但是,該系統仍然需要在桌球拍上貼上人工標誌物。2007年,日本筑波大學的ShinyaMinatani等人構建了一個遠程面對面的桌面混合現實系統。該系統通過在一個可變 形三角網格平面上貼紋理來實時繪製對手的上半身和手臂,其中每一幀人的紋理和棋子位 置通過背景相減的方法獲得。該系統實現了基於網絡的混合現實黑白棋遊戲,通過用戶數 據報協議傳輸紋理數據以及其它數據,通過傳輸控制協議傳輸同步信號,用於幀同步和處 理數據傳輸延時。但是,這些系統都需要在真實環境中放置人工標誌物以進行註冊和定位, 破壞了場景的真實性和用戶的體驗感。另外,2007年澳大利亞墨爾本大學的Floyd等人搭建了一個基於網絡的三方交互 式桌球遊戲系統。在該系統中,每個用戶需要半個桌球桌,利用真實的桌球拍擊打真 實的桌球,桌球同對面的大屏幕進行碰撞,而大屏幕上顯示的是其他兩個用戶的畫面, 通過藍牙耳機設備捕獲桌球的撞擊位置並進行計分,最先將對方擊垮的用戶將獲得勝 利。在該系統中並沒有虛擬物體,不需要跟蹤註冊桌球拍,但是該系統並沒有真正達到多 用戶交互打球的功能,用戶只是自己在跟屏幕打球,而不是多個用戶協同控制同一個桌球 球,這樣降低了遊戲性和體驗感。2008年中國深圳泰山在線科技有限公司發布了旋風桌球 球系統,該系統利用三維動作識別器識別人體各種運動信息,將人體的動作特徵反映在虛 擬場景中;利用該系統,用戶可以通過網際網路平臺與遠方親朋好友進行聯機對戰,也可選擇 各種不同等級的智能電腦進行人機對抗。但是該系統中顯示給用戶的是一個完全虛擬的運 動環境,用戶看不到遠方親朋好友的影像,體驗不到同真實好友打球的感覺;該桌球系統 跟蹤的主要目標為運動帽和手柄,並沒有跟蹤真實的桌球拍。

發明內容
根據上述實際需求和關鍵問題,本發明的目的在於提出一種網絡環境下基於真 實球拍的協同式增強現實桌球系統構建方法,該方法不需要採用特殊的跟蹤裝置跟蹤真 實的桌球球拍,也不需要在桌球拍上貼人工標誌物,而是利用顏色特徵進行真實桌球 球球拍的檢測和跟蹤,設計實現虛擬場景與真實場景的虛實三維註冊,將虛擬場景映射到 真實球拍、參與用戶、真實環境的視頻圖像空間坐標系,根據真實球拍的運動信息,設計實 現虛擬桌球與真實球拍、虛擬球桌、虛擬球網等對象之間的碰撞檢測,並確定和表現虛擬 桌球碰撞後的運動軌跡,然後給出有限狀態機和消息處理機制,控制桌球系統運行過 程的各種狀態轉換,確保多個用戶具有相同的桌球運動體驗,最後將合成後的增強現實 視頻展現給用戶,用戶不僅能看到對方好友的真實影像,同時可以看到虛擬物體,並利用球 拍同虛擬物體進行交互,實現了兩個用戶在網絡平臺上使用真實球拍協同擊打虛擬桌球 的任務。為完成發明目的,本發明採用的技術方案是構建一個基於真實球拍的協同式增 強現實桌球系統所需要的方法,主要包括視頻捕獲,捕獲本地的視頻數據,用於真實桌球 球拍的跟蹤註冊和發送給對方用戶顯示;桌球拍跟蹤註冊,桌球拍註冊的主要目的是 將真實的桌球拍和虛擬的桌球桌及虛擬桌球同處於同一坐標系下,在以虛擬桌球 桌中心為世界坐標系原點的坐標系下檢測虛擬桌球和真實桌球拍的交互;檢測虛擬乒 乓球和真實桌球拍、虛擬桌球桌、虛擬球網以及虛擬牆的碰撞,計算每一幀虛擬球的位 置和運動參數;狀態控制機制,控制雙方用戶打球過程,對雙方用戶當前所處狀態進行抽象 和處理,保證雙方打球過程合理和一致;發送消息,需要發送的消息有連接建立消息,視頻
5數據消息,球拍位置消息,球的位置消息,球出界或觸網消息,發送這些消息用來完成雙方 通信並改變雙方所處狀態;接收消息,該模塊負責將接收到消息放到消息堆棧中,待消息處 理模塊讀取和處理;消息處理,主要功能為設置本地虛擬桌球的位置,將接收到的視頻數 據傳給繪製模塊,並改變當前狀態;虛擬物體繪製,根據真實桌球桌和桌球的大小和顏 色繪製虛擬物體,用戶打球的位置離攝像頭的距離正好為球桌的長度,使得用戶對著大屏 幕感覺同對面真實的朋友打球一樣;網絡傳輸,通過網絡連接多個用戶,並在該網絡平臺下 收發消息,保證用戶之間的通信正常;顯示增強現實視頻,將對方傳輸過來的壓縮視頻數據 進行解壓,將己方的球拍用虛擬球拍的方式顯示在視頻中,同繪製的虛擬物體一起顯示。捕獲的視頻數據的作用主要有兩方面,一方面是為了跟蹤真實的桌球拍,另一 方面是為了通過網絡傳輸平臺給對方用戶並同虛擬物體進行混合顯示。由於直接捕獲的視 頻數據較大,因此在數據傳輸時要首先壓縮視頻數據,對方收到視頻數據後再進行解壓。但 跟蹤真實的桌球拍時採用的是原始的視頻數據。在進行視頻數據壓縮時需要考慮網絡狀 態,根據不同的網絡狀態設置不同的壓縮比率,使得雙方用戶能夠通過網絡平臺流暢的收 發視頻數據並能夠顯示較好的視頻效果。通過顏色特徵檢測每一幀視頻圖像中的真實桌球拍,並利用位置信息跟蹤真實 的桌球拍;利用的主要特徵為顏色信息和位置信息,顏色信息是指桌球拍的一個表面 顏色是紅色,位置信息是指在用戶打球時離攝像頭的位置是基本固定的,因此球拍在視頻 圖像中出現的位置則是在某個較小區域內;設置顏色閾值提取出真實桌球拍的紅色區 域,利用位置信息在上一幀桌球拍出現的周圍搜索紅色區域,大大加快了搜索速度,減小 計算開銷。檢測到桌球拍的紅色區域後,計算該區域的質心,利用質心和紅色球拍的面積 近似計算出桌球拍的正方形包圍盒;利用該正方形包圍盒計算攝像機外參數,根據外參 數和攝像機內參數計算出投影矩陣,根據投影矩陣和球拍在圖像中的坐標可以計算出球拍 在世界坐標系下的坐標。將真實的桌球拍和虛擬的桌球桌及虛擬桌球同處於同一坐 標系下,在以虛擬桌球桌中心為世界坐標系原點的坐標系下檢測虛擬桌球和真實桌球 球拍的交互。繪製的虛擬物體有5個己方虛擬桌球拍,虛擬桌球桌,虛擬桌球網,虛擬 桌球和虛擬牆壁,所有虛擬物體都按照真實的物體大小進行繪製。虛擬桌球桌的長 2. 74米,寬1. 525米,離地面高0. 76米,臺面與水平面平行;虛擬桌球桌貼著真實桌球 桌的紋理。虛擬球網寬1.83米,網高0.1525米,繪製採用網格狀繪製。虛擬桌球直徑為 40毫米,顏色為橘黃色;繪製虛擬球的同時需要繪製虛擬球在桌面上的投影,使用戶對深 度的感知更加準確。虛擬牆壁的作用是在人機對打時回擊虛擬球的,寬度同虛擬桌球桌 的寬度,高度1米;繪製虛擬牆壁時設置其為透明。檢測虛擬桌球和真實桌球拍、虛擬桌球桌、虛擬球網以及虛擬牆的碰撞,當 該幀中虛擬球的位置在平面區域上方,而下一幀中虛擬球的位置在平面區域下方,說明在 該幀到下一幀的過程中發生碰撞;碰撞後的運動軌跡計算利用鏡面反射原理並考慮重力加 速度的影響;虛擬桌球如果同虛擬球網碰撞,虛擬桌球直接落網;虛擬桌球如果出 界則重新發球。狀態控制機制是控制桌球系統運行過程的各種狀態轉換;桌球系統運行過程 為打球雙方系統建立連接,甲方系統發送發球消息,乙方系統接收到甲方發球消息並設置虛擬球的位置信息,甲方系統計算虛擬桌球是否同虛擬球桌、虛擬球網發生碰撞,並計算 每一幀虛擬球的位置和運動參數,當虛擬桌球出界,則重新發球;系統中涉及的狀態包括 初始狀態(即建立連接狀態),等待狀態,發球狀態,循環狀態,設置狀態;每個狀態的轉換 根據本方狀態變換和對方發送的消息進行改變;若本方狀態為初始狀態則發送初始化消 息,若收到回復消息則本方狀態轉換為等待狀態;若本方狀態為等待狀態,在本方用戶發出 發球動作後轉換狀態為發球狀態,若接收到對方發出的發球動作消息則轉換狀態為設置狀 態;若本方狀態為發球狀態,發送發球消息給對方,己方狀態轉換為循環狀態;若本方狀態 為設置狀態,設置球的位置和運動信息,轉換狀態為循環狀態。採用多線程進行數據收發;創建兩個線程,一個線程發送消息,一個接收消息;每 接收到發送消息命令即發送消息;每接收到對方發送過來的消息即將消息放在消息堆棧 中,等待消息處理模塊處理消息。接收和發送採用單播模式,由於打球雙方是對等的,因此 採用伺服器_伺服器模式進行連接。本發明與現有的技術相比,其有益的效果是1、本發明根據網絡通信平臺和增強 現實的特點,給出了協同式增強現實桌球應用構建的基本步驟和基本框架,利用該步驟 和框架可以將協同式增強現實桌球應用的各個部分模塊化,方便開發同類型的應用系 統,簡化了應用系統的開發過程,使得程序可重用性更高。2、本發明可跟蹤和註冊真實的乒 乓球拍,設置顏色閾值在每幀視頻圖像中搜索紅色桌球區域,利用桌球拍在圖像中可 能出現的區域位置信息縮小了初始桌球拍搜索區域,並利用上一幀桌球拍預測下一幀 桌球拍可能出現的區域,進一步縮小了搜索區域,進而使得計算開銷減小,節約了大量的 系統資源。3、本發明利用有限狀態自動機控制桌球系統運行過程的各種狀態轉換,將系 統運行過程進一步形式化,簡化了系統運行過程的管理,在保證系統運行合理的同時,方便 系統進一步的優化,同時方便了系統的進一步擴展,並提高了程序的可讀性和重用性。4、本 發明給出的真實物體和虛擬物體的混合方式每個用戶可以看到對方的真實場景及虛擬場 景,另外,將自己的球拍繪製在虛擬場景中,用戶以第一人稱視角打球,模擬用戶在真實世 界中打球的視角,使得用戶具有較好的沉浸感和體驗感。5、本發明的消息接收、發送和處 理,採用多線程的方式接收和發送消息,將消息放在堆棧中等待處理,分離了接收和處理過 程,提高了系統的運行效率,使得系統運行更加流暢。


圖1是本發明系統總體架構圖;圖2是本發明的系統示意圖;圖3是本發明的主流程圖;圖4是本發明球拍搜索窗口示意圖;圖5是本發明圖像坐標系、攝像機坐標系與世界坐標系關係圖;圖6是本發明判斷碰撞點是否在邊界內示意圖;圖7是本發明有限狀態機狀態圖。
具體實施例方式下面結合附圖對本發明作詳細說明。
參閱圖1本發明的系統總體架構圖,本發明的總體架構主要包括9個部分(1)視 頻捕獲,捕獲本地的視頻數據,用於真實桌球拍的跟蹤註冊和發送給對方用戶顯示;(2) 球拍跟蹤註冊,球拍是該系統人機互動的唯一工具,因此球拍的跟蹤註冊精確性很重要。球 拍註冊的主要目的是將真實的球拍和虛擬的球桌及虛擬球同處於同一坐標系下,在以虛擬 球桌中心為世界坐標系原點的坐標系下檢測虛擬球和球拍交互;(3)虛擬桌球碰撞檢測 和軌跡計算,檢測虛擬桌球和真實桌球拍、虛擬桌球桌、虛擬球網以及虛擬牆的碰 撞,計算每一幀虛擬球的位置和運動參數;(4)狀態控制器,控制雙方用戶打球過程,對雙 方用戶當前所處狀態進行抽象和處理,保證雙方打球過程合理和一致;(5)發送消息,需要 發送的消息有連接建立消息,視頻數據消息,球拍位置消息,球的位置消息,球出界或觸網 消息,發送這些消息用來完成雙方通信並改變雙方所處狀態;(6)接收消息,該模塊負責將 接收到消息放到消息堆棧中,待消息處理模塊讀取和處理;(7)消息處理模塊,主要功能為 設置本地虛擬桌球的位置,將接收到的視頻數據傳給繪製模塊,並改變當前狀態;(8)虛 擬物體繪製,根據真實桌球桌和桌球的大小和顏色繪製虛擬物體,用戶打球的位置離 攝像頭的距離正好為球桌的長度,對著大屏幕感覺同對面真實的朋友打球一樣;(9)顯示 增強現實視頻,將對方傳輸過來的壓縮視頻數據進行解壓,將己方的球拍用虛擬球拍的方 式顯示在視頻中,同繪製的虛擬物體一起顯示。參閱圖2本發明的系統示意圖,本發明的硬體配置包括每個用戶需要一臺連接 計算機的攝像機、一個顯示器、一臺連接網絡平臺的計算機和一個真實的桌球拍。其中一 臺攝像機用來捕獲用戶視頻圖像以傳輸給對方顯示和捕獲桌球拍的運動;一個較大的顯 示器用來顯示合成後的增強現實視頻;一臺連接網絡平臺的計算機提供計算資源和網絡通 信平臺,連接打球雙方用戶;一個真實的桌球拍提供人機互動的工具,由於球拍的跟蹤和 顯示是利用紅色顏色特徵進行檢測的,用戶需要將紅色拍面對著攝像機;虛擬物體包括經 過註冊後的球拍、虛擬桌球、虛擬桌球桌、虛擬球網。參閱圖3本發明的主流程圖,本發明基於真實球拍的協同式增強現實桌球系統 首先利用攝像機捕獲視頻數據,然後跟蹤註冊真實的桌球拍,利用狀態控制器控制桌球 球系統運行過程的各種狀態轉換,在狀態轉換的過程中要利用到消息發送、接收和處理模 塊,同時要處理虛擬桌球和球拍、球桌、球網等平面之間的碰撞,計算虛擬桌球的運動 軌跡,然後根據以上得到的對方視頻數據、球拍位置、虛擬桌球位置等信息繪製增強現實 視頻,這樣用戶就看到了經過增強的桌球系統,雙方用戶協同完成擊打桌球任務。首先利用一種基於顏色的無標誌物跟蹤註冊方法跟蹤和註冊真實的桌球拍。在 該基於真實球拍的協同式增強現實桌球系統中,桌球、球桌和球網都是虛擬的,人機交 互的工具就是真實的桌球拍,為了實現人和桌球的交互,就需要跟蹤和註冊真實的乒 乓球拍,將虛擬物體和桌球拍映射到同一坐標系下。跟蹤桌球拍利用桌球拍的紅色 顏色特徵和桌球拍在視頻圖像中出現的位置信息。參閱圖4本發明球拍搜索窗口示意 圖,首先定義初始搜索窗口,如圖4左圖中虛線框包圍區域,在該區域中搜索紅色區域,採 用的方法為檢測每個像素點的RGB值,如果紅色通道的值R在三通道(R:紅色通道,G 綠色 通道,B:藍色通道)中所佔比值大於閾值λ則該像素為紅色,S卩如果R/R + G + B > λ
則標記該像素點為紅色區域;然後對紅色檢測後的圖像進行區域內的中值濾波 (中值濾波是將每一象素點的灰度值設置為該點鄰域窗口內的所有象素點灰度值的中值, 用以消除孤立的噪聲點。),去掉一些不連續的紅色像素點,剩下部分為紅色球拍區域;然後 統計紅色區域的像素點個數作為真實桌球拍的面積,計算桌球拍的質心,質心計算方 法為 質心的縱坐標為 其中Sx為所有紅色像素點的橫坐標的和,Sy為所有紅色像素點的縱坐標的和,IP 為所有紅色像素點的個數。根據質心和紅色區域的面積,將跟蹤到的紅色區域近似為-
正方形,可以得到正方形的邊長
,根據質心和邊長就可以計算正方形的各個頂點。這
樣就得到了初始視頻圖像中用於註冊的正方形。然後在計算後續視頻圖像中真實桌球拍的正方形包圍盒的時候,利用上一幀得 到的桌球拍的正方形包圍盒的位置,根據球拍連續運動的原則,在上一幀得到的桌球 拍的正方形包圍盒周圍進行紅色區域的搜索,如圖4右圖中虛線框包圍區域所示,該區域 為根據上一幀得到的桌球拍的正方形包圍盒生成的搜索區域;不斷執行該方法即可得到 每一幀視頻圖像中用於註冊的真實桌球拍的正方形包圍盒區域。參閱圖5本發明圖像坐標系、攝像機坐標系與世界坐標系關係圖,利用桌球拍 進行註冊也就是從圖像坐標繫到世界坐標系的轉換過程,由圖5及透視原理可知圖像坐標 系和世界坐標系的關係可用以下公式表示,首先是從圖像坐標繫到攝像機坐標系的轉換公 式, 其中,xc, y。為圖像坐標系下的坐標,h為圖像坐標係數,根據圖像大小由用戶指
定,Xc, Yc, Zc為攝像機坐標系下的坐標,=Lay=與,f為攝像機焦距,
為攝像機
圖像平面中心位置坐標諷完全由ax,ay,U(1,V(1決定,由於ax,a y,uQ,Vtl只與攝像機內部 結構有關,因此M1被稱為攝像機內部參數,簡稱內參數。其次是從攝像機坐標繫到世界坐 標系的轉換公式 其中,Xc, Yc, Ζ。為攝像機坐標系下的坐標,Xff, Yff, Zw為世界坐標系下的坐標, , ζ, G為旋轉向量R,表示由攝像機坐標繫到世界坐標系需要如何旋轉,/為平移向量,表示由攝像機坐標繫到世界坐標系需要如何平移,由於M2完全由攝像機相對於世界坐標系 的方位決定,稱為攝像機的外部參數,簡稱外參數;通過跟蹤到的球拍正方形包圍盒計算出 外參數即可將虛擬物體註冊到桌球拍所在的世界坐標系下。獲得了真實桌球拍的正方形包圍盒之後,可以找到正方形的兩對平行邊,在攝
a,x + b,y + c·, =0
像機坐標系下可以表示這兩條邊
然後利用攝像機標定獲得的內參數M1,
將邊的表示公式代入到上述從圖像坐標繫到攝像機坐標系的轉換公式,可以得到兩個平面 公式 這兩個平面的兩個方向向量 和G應該是垂直的,但是由於通過圖像得到的真實 桌球拍包圍盒可能不是正方形,因此需要對這兩個方向向量進行補償,補償方法就是分 別在 和G的兩側分別擴展一定的角度生成垂直的兩個向量^和€,然後給出一個向量G垂
直於g和ζ生成的平面,這樣就獲得了外參數矩陣中的旋轉矩陣[ ,ζ]。在給定旋轉矩陣
之後,將正方形的四個頂點在攝像機坐標系下的坐標和在世界坐標系下的坐標,代入到上 述從攝像機坐標繫到世界坐標系的轉換公式中去,求解方程就可以獲得平移矩陣/,這樣外 參數矩陣禮就得到了 ;通過內參數矩陣和外參數矩陣就將虛擬物體和真實世界的物體統一 到同一個坐標系下。在完成上述真實桌球拍的註冊之後,真實桌球拍、虛擬球桌和虛擬桌球都 處於同一坐標系下,由於在該系統中唯一不動的物體為虛擬球桌,因此我們選取虛擬球桌 中心為世界坐標系原點。在該坐標系下,系統捕獲球拍的運動,檢測虛擬球和真實球拍、虛 擬球桌、虛擬球網的碰撞。在碰撞過程中需要考慮的問題主要有(1)虛擬球是否和各平面 發生碰撞;(2)發生碰撞點是否在平面邊界內;(3)根據是否碰撞完成打球過程的計分。首先通過計算虛擬球和各平面的相對位置關係完成碰撞檢測,如果當前幀虛擬球 位置在平面上方,而下一幀虛擬球位置在平面下方,則在該幀內發生碰撞;然後根據碰撞原 理計算球的運行軌跡,球的運行軌跡計算借鑑鏡面反射的原理,同時加入了重力加速度的 影響,如公式所示 給出了球在碰撞前後的運動變化,其中,g為重力加速度,Vplam為平面速度,當碰撞 平面為虛擬球桌時,該值為0。如公式所示 給出了球在非碰撞時的運動變化。另外虛擬球如果和虛擬球網碰撞則直接掉在網 下,重新開球。除了需要檢測虛擬球是否和平面發生碰撞,還需要檢測發生碰撞的點是否在平面 邊界內;判斷方法為將矩形平面分解為兩個三角形,判斷碰撞點位置是否在三角形區域內。 如圖6本發明判斷碰撞點是否在三角形區域內示意圖和如下公式所示
/碰撞點在三角形內 cosαλ + cosa2 + coscz3 > -1 《碰撞點在三角形夕卜為了使得交互過程更加真實,本發明加入了計分系統,通過判斷球的觸網情況和 出界情況自動對打球過程進行計分。然後設計了合理的狀態控制機制控制桌球系統運行過程的各種狀態轉換,實現 打球的整個過程,並且保證雙方具有一致的打球體驗。為了準確清晰地描述狀態轉換過程, 利用有限狀態機進行描述桌球系統運行過程的各種狀態轉換;在狀態轉換過程中,程序 首先對事件進行響應,本系統中的事件有接收消息、發球、球出界等;程序在事件間的狀 態有初始狀態、等待狀態、發球狀態、循環狀態、設置狀態等;然後在事件和狀態間進行轉 移;並在轉移過程中採取動作;參閱圖7本發明有限狀態機狀態圖,本發明的狀態轉換在5 個狀態之間轉換,其轉換過程和動作描述如下1)初始狀態,在程序剛開始運行時,使雙發建立連接。在此狀態發送初始化消息, 等待對方回復,若收到回復消息,則連接建立並轉移到等待狀態,否則繼續等待回復消息;2)等待狀態,該狀態不處理事件,等待己方用戶發球或對方用戶發球,若己方用戶 發球則轉移到發球狀態,若接收到對方發球消息,則轉移到設置狀態;3)發球狀態,此狀態根據捕獲的球拍運動信息使得球拍同虛擬球發生碰撞,設置 球的運動狀態,並發送發球消息給對方,己方狀態轉變為循環狀態;4)循環狀態,該狀態在每一幀判斷球和其他平面是否碰撞,發送球的位置和速度 信息給對方,己方狀態轉為等待狀態;5)設置狀態,該狀態是在收到球的位置和速度信息時設置球的位置及其速度,設 置完成後,己方狀態轉變為循環狀態;本發明採用多線程進行數據收發;創建兩個線程,一個線程發送消息,一個接收消 息;每接收到發送消息命令即發送消息;每接收到對方發送過來的消息即將消息放在消息 堆棧中,等待消息處理模塊處理消息。接收和發送採用單播模式,利用套接字進行連接,由 於打球雙方是對等的,因此採用伺服器_伺服器模式進行連接。視頻數據在傳輸之前需要 進行壓縮,採用H. 264視頻壓縮協議進行壓縮;壓縮率可以根據網絡情況由用戶自行調節。 為了使得雙方用戶通訊正常,本發明定義了消息的格式;消息的頭部共有24個字節,分別 包括以下幾個部分DmsgId,整型,4位元組,表示消息的類型。2)SourCeIP,雙字節類型,4位元組,表示發送消息的地址IP位址。3) desIP,雙字節類型,4位元組,表示接收消息的地址IP位址。4) size,無符號整型,4位元組,若一個消息數據被分為多個包,表示多個包的數據總 的大小,即消息數據的大小;若只有一個包,表示該消息數據的大小,也是該包的數據大小。5) length,無符號整型,4位元組,若一小消息數據被分為多個包,表示分成的那個包 的大小;若只有一個包,則表示該包的數據的大小。6) number,整型,4位元組,若某個消息被分為多個包,number表示第幾個包。7)data,字節指針,指向消息中的數據部分,大小為length大小。下表給出每種類型的消息的描述和收到該類型消息時執行的動作 然後繪製虛擬物體,繪製的虛擬物體有5個己方虛擬桌球拍,虛擬桌球桌, 虛擬桌球網,虛擬桌球和虛擬牆壁,所有虛擬物體都按照真實的物體大小進行繪製。根 據跟蹤註冊的己方真實球拍在世界坐標系下的位置和方向,設置己方虛擬球拍在視頻中的 位置和方向,並根據真實球拍的大小和顏色繪製;虛擬桌球桌的長2. 74米,寬1.525米, 離地面高0. 76米,臺面與水平面平行,繪製虛擬球桌主要考慮紋理信息,繪製的過程為首 先創建紋理並進行紋理綁定,然後進行紋理過濾,將圖像從紋理圖像空間映射到幀緩衝圖 像空間,在繪製時設置光照模型中的環境光和漫射光,打開紋理效果;虛擬桌球桌貼著真 實桌球桌的紋理。虛擬球網寬1.83米,網高0.1525米,繪製採用網格狀繪製。虛擬桌球 球直徑為40毫米,顏色為橘黃色,繪製虛擬球的同時需要繪製虛擬球在桌面上的投影,使 用戶對深度的感知更加準確。虛擬牆壁的作用是在人機對打時回擊虛擬球的,寬度同虛擬 桌球桌的寬度,高度1米;繪製虛擬牆壁時設置其為透明。最後進行場景的布置,並進行打球,每個用戶需要在顯示器上部架設一臺攝像機, 用戶拿著真實的球拍面對顯示器,距離顯示器的距離為桌球桌的長度,在虛擬球桌邊緣 設置一條標誌線用來提示用戶虛擬球桌的位置和高度。本發明具有人機對打功能,該功能設計目的是在兩個用戶連接成功後,如果對方 用戶還未準備好打球或者己方用戶練習打球時可採用這種方式。用戶拿著真實的桌球拍 面對顯示器和攝像機,同視頻中虛擬牆打球。利用該功能,用戶可以適應和熟悉該系統,為 雙人協同打球做準備。本發明具有雙人聯網對打功能,該功能中雙方用戶通過網絡連接,共享同一個增 強現實場景,在該場景中雙方用戶協同擊打桌球。通過該系統的桌球拍跟蹤和註冊方 法,能夠較精確的跟蹤每一幀桌球拍的運動,支持用戶較快速的揮拍;在繪製虛擬物體時 加上陰影效果,使得用戶對深度的感知更加真實和準確;在球和平面碰撞時添加了聲音效 果,增強了用戶體驗感;利用H. 263視頻壓縮協議進行視頻數據的壓縮和解壓,並利用多線 程收發消息,使得系統運行流暢,顯示清晰,幀率達到每秒30幀,解析度達到600*800。
權利要求
基於真實球拍的協同式增強現實桌球系統構建方法,其特徵在於包含以下步驟1)捕獲本地的視頻數據,用於真實桌球拍的跟蹤註冊和發送給對方用戶顯示;2)利用顏色特徵檢測和跟蹤真實桌球球拍,進行虛擬場景與真實場景的虛實三維註冊,將虛擬場景映射到真實球拍、參與用戶、真實環境的視頻圖像空間坐標系;3)根據真實球拍的運動信息,進行虛擬桌球與真實球拍、虛擬球桌、虛擬球網各對象之間的碰撞檢測,並確定和表現虛擬桌球碰撞後的運動軌跡;4)給出有限狀態機,控制桌球系統運行過程的各種狀態轉換,確保雙方用戶具有相同的桌球運動體驗;5)本地發送消息給對方,以完成雙方通信並改變雙方所處狀態,發送的消息包括連接建立消息、視頻數據消息、球拍位置消息、球的位置消息、球出界或觸網消息;6)本地接收對方發送的消息,並將接收到的消息放到消息堆棧中,待消息處理模塊讀取和處理;7)消息處理模塊根據收到的消息設置本地虛擬桌球的位置,將接收到的視頻數據消息傳給繪製模塊,並改變當前桌球系統運行過程的狀態;8)虛擬物體繪製,根據真實桌球桌和桌球的大小和顏色繪製虛擬物體,用戶打球的位置離攝像頭的距離為球桌的長度;通過網絡連接雙方用戶,並在該網絡平臺下收發消息,保證雙方用戶之間的通信正常;9)顯示增強現實視頻,將對方傳輸過來的壓縮視頻數據進行解壓,將本地的球拍用虛擬球拍的方式顯示在視頻中,同繪製的虛擬物體一起顯示。
2.根據權利要求1所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於步驟2)中的檢測和跟蹤的桌球拍均為真實桌球拍。
3.根據權利要求1所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於步驟2)中的桌球拍跟蹤註冊進一步包含以下步驟2. 1)根據桌球拍在視頻圖像中出現的位置區域定義初始球拍搜索窗口 ;2. 2)設置顏色閾值提取初始搜索窗口中紅色像素點,並進行中值濾波去除噪聲點;2. 3)統計紅色區域的像素點個數作為真實桌球拍的面積,計算桌球拍的質心,得 到初始視頻圖像中用於註冊的正方形包圍盒;2. 4)根據上一幀視頻圖像得到的正方形包圍盒位置生成下一幀視頻圖像中真實桌球 球拍的搜索窗口,並利用第2. 3步得到下一幀視頻圖像中用於註冊的正方形包圍盒;2.5)利用正方形包圍盒計算外參數,進行桌球拍的註冊。
4.根據權利要求1所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於,步驟3)中的虛擬桌球碰撞檢測和軌跡計算採用以下方法3.1)如果當前幀虛擬球位置在平面上方,而下一幀虛擬球位置在平面下方,則在該幀 內發生碰撞;3. 2)利用碰撞點與三角形頂點三條連線的夾角判斷碰撞點是否在邊界內;3. 3)借鑑鏡面反射的原理,同時加入重力加速度的影響,計算虛擬桌球的運行軌跡;3. 4)通過判斷球的觸網情況和出界情況自動對打球過程進行計分。
5.根據權利要求1所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特徵在於,步驟4)中的狀態控制機制採用以下方法將該桌球系統運行過程抽象為5個狀態,利用有限狀態機控制狀態之間的轉換;所 述5個狀態分別為初始狀態、等待狀態、發球狀態、循環狀態、設置狀態。
6.根據權利要求5所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於所述桌球系統定義的有限狀態機轉換關係為初始狀態收到回復消息轉換為等 待狀態;等待狀態若捕獲到發球命令轉換到等待狀態,若捕獲到對方發球消息轉換到設置 狀態;發球狀態中設置虛擬桌球速度和位置信息之後轉移到循環狀態;循環狀態中檢測 碰撞並計算虛擬桌球運行軌跡,若球出界則轉換到等待狀態;設置狀態在設置完桌球 速度和位置信息之後轉換到循環狀態。
7.根據權利要求1所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於步驟5)和6)所述的消息接收和發送採用多線程進行數據的收發,每接收到發送消 息命令即發送消息。
8.根據權利要求7所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於根據雙方通信需要定義多種不同的消息類型,所有消息類型具有相同的結構,方便 消息處理。
9.根據權利要求1所述的基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於每接收到對方發送過來的消息即將消息放在消息堆棧中,等待消息處理模塊處理 消息。
10.根據權利要求1所述基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於步驟9)所顯示的增強現實視頻圖像中包含對方視頻圖像、虛擬球檯、虛擬球網、虛 擬桌球、己方虛擬球拍。
11.根據權利要求10所述基於真實球拍的協同式增強現實桌球系統構建方法,其特 徵在於步驟9)所顯示的增強現實視頻的視角是用戶第一人稱視角,用戶可以看到對方拿 著真實的桌球拍擊打虛擬桌球,用戶自己揮動球拍過程由繪製的己方虛擬球拍體現。
全文摘要
本發明涉及基於真實球拍的協同式增強現實桌球系統構建方法,包括根據系統獲取的視頻圖像,利用顏色特徵進行真實桌球球拍的檢測和跟蹤;設計實現虛擬場景與真實場景的虛實三維註冊,將虛擬場景映射到真實球拍、參與用戶、真實環境的視頻圖像空間坐標系;根據真實球拍的運動信息設計實現虛擬桌球與真實球拍、虛擬球桌、虛擬球網等對象之間的碰撞檢測,確定和表現虛擬桌球碰撞後的運動軌跡;給出有限狀態機和消息處理機制,控制桌球系統運行過程的各種狀態轉換,確保多個用戶具有相同的桌球運動體驗。本發明可廣泛應用推廣到交互式數字娛樂、體育研究與訓練模擬、遠程教育與培訓等領域。
文檔編號G06F19/00GK101893935SQ20101023135
公開日2010年11月24日 申請日期2010年7月14日 優先權日2010年7月14日
發明者李鑫, 趙沁平, 陳小武, 顏勇 申請人:北京航空航天大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀