本發(fā)明屬于計(jì)算機(jī)
技術(shù)領(lǐng)域:
,更進(jìn)一步涉及計(jì)算機(jī)視覺
技術(shù)領(lǐng)域:
中的一種利用編碼光源為標(biāo)志物的增強(qiáng)現(xiàn)實(shí)三維注冊(cè)方法。本發(fā)明以自然場(chǎng)景中光源為標(biāo)志物,在計(jì)算機(jī)中將虛擬三維模型與真實(shí)世界的坐標(biāo)無縫融合,然后將融合后的畫面在屏幕上呈獻(xiàn)給用戶,從而增強(qiáng)用戶對(duì)真實(shí)世界的感知。
背景技術(shù):
:三維注冊(cè)技術(shù)是增強(qiáng)現(xiàn)實(shí)系統(tǒng)最為關(guān)鍵的技術(shù)之一,三維注冊(cè)就是將計(jì)算機(jī)生成的虛擬物體信息和真實(shí)場(chǎng)景的景物“精準(zhǔn)對(duì)齊”。只有采用高精度的注冊(cè)方法,虛擬物體和真實(shí)場(chǎng)景才能做到精準(zhǔn)無縫融合。天津戛嘜影視動(dòng)漫文化傳播有限公司在其申請(qǐng)的專利“一種實(shí)現(xiàn)三維增強(qiáng)現(xiàn)實(shí)的方法”(申請(qǐng)日:2012年10月18日,申請(qǐng)?zhí)枺?01210398142.9,公開號(hào):102903142A)中公開了一種基于圖像標(biāo)志物虛實(shí)三維注冊(cè)方法。該方法首先初始化多媒體設(shè)備、攝像裝置,然后通過攝像裝置獲得標(biāo)志物的視頻幀,所述標(biāo)志物為圖片或卡片,其上的圖案是全彩色的,其次讀取所述視頻后,檢索到三維模型數(shù)據(jù)庫中其對(duì)應(yīng)的虛擬三維模型,接著對(duì)虛擬的三維模型和視頻幀的坐標(biāo)軸進(jìn)行定位,最后將檢索到的虛擬的三維模型調(diào)出與視頻幀進(jìn)行合成,并輸出到顯示器進(jìn)行顯示。該方法存在的不足之處是,需要在真實(shí)環(huán)境中放置人工標(biāo)志,這樣不僅會(huì)使場(chǎng)景有突兀的感覺,這些人工標(biāo)志還容易受到人為遮擋等因素的干擾,同時(shí)人工標(biāo)志必須在每張拍攝的畫面中出現(xiàn),這使得大場(chǎng)景使用人工標(biāo)志物做增強(qiáng)現(xiàn)實(shí)應(yīng)用變得不可能。北京航空航天大學(xué)在其申請(qǐng)的專利“一種基于多自然特征的自適應(yīng)虛實(shí)三維注冊(cè)方法”(申請(qǐng)日:2011年10月20日,申請(qǐng)?zhí)枺?01110321794.8,公開號(hào):102360504A)中公開了一種基于多自然特征的自適應(yīng)虛實(shí)三維注冊(cè)方法。該方法首先在現(xiàn)實(shí)場(chǎng)景的視頻序列中分析出多個(gè)種類的自然特征,并生成各類自然特征的集合,然后對(duì)各類自然特征的狀態(tài)進(jìn)行綜合分析,得到各類自然特征對(duì)虛實(shí)三維注冊(cè)的優(yōu)先級(jí),再根據(jù)所述優(yōu)先級(jí)或用戶交互選擇用于虛實(shí)三維注冊(cè)的自然特征種類,接著在現(xiàn)實(shí)場(chǎng)景的視頻序列中檢測(cè)選定種類的自然特征集合中的各自然特征,篩選其中穩(wěn)定性和識(shí)別性高的自然特征作為最終注冊(cè)用自然特征,最后利用最終注冊(cè)用自然特征進(jìn)行現(xiàn)實(shí)場(chǎng)景的虛擬對(duì)象三維注冊(cè)。該方法存在的不足之處是,由于要對(duì)復(fù)雜的自然場(chǎng)景圖像進(jìn)行多項(xiàng)特征分析,計(jì)算量龐大,無法再實(shí)時(shí)性要求高的增強(qiáng)現(xiàn)實(shí)系統(tǒng)中得到應(yīng)用。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的是針對(duì)上述現(xiàn)有技術(shù)的不足,提出一種利用編碼光源作為標(biāo)志的增強(qiáng)現(xiàn)實(shí)三維注冊(cè)方法。本發(fā)明對(duì)自然場(chǎng)景中空間位置坐標(biāo)已知且擬作為標(biāo)志的光源進(jìn)行時(shí)分編碼,將視頻圖像中亮度值局部極大的像素區(qū)域,作為光源在視頻圖像中的檢測(cè)位置,跟蹤視頻圖像中檢測(cè)到的光源,在一個(gè)完整解碼周期內(nèi),對(duì)跟蹤到的光源進(jìn)行解碼,確定光源在自然場(chǎng)景中的空間位置坐標(biāo)值,判斷視頻圖像中成功解碼的光源數(shù)是否少于三個(gè),若少于則返回繼續(xù)在視頻圖像中進(jìn)行光源檢測(cè),否則,確定視頻設(shè)備在自然場(chǎng)景中的旋轉(zhuǎn)矩陣和平移向量,將旋轉(zhuǎn)矩陣和平移向量參數(shù)值賦值給增強(qiáng)現(xiàn)實(shí)系統(tǒng)的虛擬相機(jī),實(shí)現(xiàn)三維注冊(cè),判斷視頻圖像是否停止拍攝,否沒有停止,則繼續(xù)返回進(jìn)行視頻圖像中光源的檢測(cè),若停止則系統(tǒng)結(jié)束工作,這樣就規(guī)避了使用人工標(biāo)志功能受限,以及會(huì)給自然場(chǎng)景帶來突兀感等劣勢(shì)。為實(shí)現(xiàn)上述目標(biāo),本實(shí)現(xiàn)包括如下步驟:(1)光源時(shí)分編碼:利用時(shí)分編碼硬件電路,對(duì)自然場(chǎng)景中空間位置已知且擬作為標(biāo)志物的所有光源進(jìn)行通斷控制,每個(gè)光源在視頻圖像的連續(xù)25幀中呈現(xiàn)不同的亮滅變化,獲得其編碼序列,將這些自然場(chǎng)景中空間位置已知且做了亮滅狀態(tài)編碼的光源作為增強(qiáng)現(xiàn)實(shí)的標(biāo)志物;(2)確定視頻圖像中光源檢測(cè)位置:(2a)在自然場(chǎng)景中的光源處于亮的狀態(tài)時(shí),將視頻設(shè)備所拍攝視頻圖像中呈現(xiàn)的高光區(qū)域作為目標(biāo)檢測(cè)區(qū)域;(2b)比較視頻設(shè)備所拍攝視頻圖像中,目標(biāo)檢測(cè)區(qū)域的每個(gè)像素點(diǎn)與其相鄰所有像素點(diǎn)之間的亮度值,得到亮度值局部極大像素點(diǎn),將亮度值局部極大像素點(diǎn)進(jìn)行聚類,得到多個(gè)聚類中心,將多個(gè)聚類中心作為該視頻圖像的光源位置;(3)跟蹤視頻圖像中出現(xiàn)的光源:(3a)利用卡爾曼濾波算法,由當(dāng)前時(shí)刻視頻圖像中待跟蹤光源位置,計(jì)算光源下一時(shí)刻在視頻圖像中的坐標(biāo)位置狀態(tài)的預(yù)測(cè)值;(3b)按照下式,更新待跟蹤光源在當(dāng)前時(shí)刻視頻圖像中的坐標(biāo)位置狀態(tài)的估計(jì)值:x^k+1=x^k+1|k+Gk(xk+1-Hk+1x^k+1|k)]]>其中,表示第k+1時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的估計(jì)值,表示第k+1時(shí)刻被跟蹤光源在視頻圖像中坐標(biāo)位置狀態(tài)的預(yù)測(cè)值,Gk表示第k時(shí)刻的卡爾曼濾波器的增益,xk+1表示第k+1時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的觀測(cè)值,Hk+1表示第k+1時(shí)刻的轉(zhuǎn)換矩陣;(3c)計(jì)算當(dāng)前時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的估計(jì)值與觀測(cè)值之間的絕對(duì)誤差值;(4)判斷在一個(gè)完整解碼周期內(nèi)估計(jì)值與觀測(cè)值之間的絕對(duì)誤差值是否小于門限值,若是,則表示跟蹤成功,執(zhí)行步驟(5),否則,執(zhí)行步驟(2);(5)確定自然場(chǎng)景中光源空間位置坐標(biāo)值:記錄視頻圖像中當(dāng)前完整編碼周期內(nèi)圖像幀中出現(xiàn)的光源的亮滅狀態(tài),將光源亮?xí)r的解碼設(shè)定為1,將光源滅時(shí)的解碼設(shè)定為0,得到與每個(gè)光源在視頻圖像中的亮滅狀態(tài)對(duì)應(yīng)的(0,1)解碼序列,將該(0,1)解碼序列對(duì)應(yīng)的空間位置坐標(biāo)值,作為圖像幀中的光源在自然場(chǎng)景中對(duì)應(yīng)的空間位置坐標(biāo)值;(6)判斷視頻圖像中當(dāng)前完整編碼周期內(nèi)已解碼的光源數(shù)目是否少于3個(gè),若是,執(zhí)行步驟(2),否則,執(zhí)行步驟(7);(7)確定視頻設(shè)備在自然場(chǎng)景中的旋轉(zhuǎn)矩陣和平移向量:在當(dāng)前視頻圖像中,隨機(jī)選取視頻圖像中已跟蹤的三個(gè)光源,獲得三組光源在視頻圖像中的像素坐標(biāo)值及其在自然環(huán)境里對(duì)應(yīng)的空間坐標(biāo)值,將三組對(duì)應(yīng)坐標(biāo)值帶入下式,實(shí)時(shí)計(jì)算拍攝視頻圖像的視頻設(shè)備在自然場(chǎng)景中的旋轉(zhuǎn)矩陣和平移向量:λiuivi1=f0u000αfv000010Rt0T1XwiYwiZwi1,(i=1,2,3)]]>其中,λi表示常數(shù)因子,i表示當(dāng)前亮滅狀態(tài)已解碼光源的編號(hào),取1,2,3,ui表示視頻圖像中第i個(gè)亮滅狀態(tài)已解碼光源的像素坐標(biāo)的橫坐標(biāo),vi表示視頻圖像中第i個(gè)亮滅狀態(tài)已解碼光源的像素坐標(biāo)的縱坐標(biāo),f表示拍攝視頻圖像的視頻設(shè)備的相機(jī)焦距,α表示比例因子,u0表示相機(jī)主點(diǎn)在視頻圖像上的橫坐標(biāo),v0表示相機(jī)主點(diǎn)在視頻圖像上的縱坐標(biāo),R表示旋轉(zhuǎn)矩陣,t表示平移向量,Xwi表示第i個(gè)亮滅狀態(tài)已解碼光源在自然場(chǎng)景里的世界坐標(biāo)系下的x方向的坐標(biāo),Ywi表示第i個(gè)亮滅狀態(tài)已解碼光源在自然場(chǎng)景里的世界坐標(biāo)系下的y方向的坐標(biāo),Zwi表示第i個(gè)亮滅狀態(tài)已解碼光源在自然場(chǎng)景里的世界坐標(biāo)系下的z方向的坐標(biāo);(8)三維注冊(cè):將當(dāng)前視頻圖像中確定的視頻設(shè)備在自然場(chǎng)景中的旋轉(zhuǎn)矩陣和平移向量,賦值給增強(qiáng)現(xiàn)實(shí)系統(tǒng)中的虛擬相機(jī),將虛擬三維模型與自然場(chǎng)景無縫融合,實(shí)現(xiàn)當(dāng)前時(shí)刻增強(qiáng)現(xiàn)實(shí)系統(tǒng)的實(shí)時(shí)跟蹤三維注冊(cè);(9)判斷增強(qiáng)現(xiàn)實(shí)系統(tǒng)的視頻設(shè)備是否停止拍攝,若是,執(zhí)行步驟(10),否則,執(zhí)行步驟(2);(10)結(jié)束。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn):第一,本發(fā)明直接利用場(chǎng)景中已經(jīng)存在的光源作為增強(qiáng)現(xiàn)實(shí)系統(tǒng)的標(biāo)志進(jìn)行識(shí)別,克服了現(xiàn)有技術(shù)在自然場(chǎng)景中額外布置人工圖像作為標(biāo)志的三維注冊(cè)技術(shù),給真實(shí)場(chǎng)景帶來突兀感的不足,使得本發(fā)明更適用于大場(chǎng)景中的增強(qiáng)現(xiàn)實(shí)的三維注冊(cè)。第二,本發(fā)明在計(jì)算視頻設(shè)備的旋轉(zhuǎn)矩陣和平移向量時(shí),只檢測(cè)和跟蹤視頻圖像中少量的光源坐標(biāo),克服了現(xiàn)有技術(shù)的在視頻圖像中進(jìn)行大量特征點(diǎn)檢測(cè)和特征匹配時(shí)計(jì)算量龐大的不足,使得本發(fā)明在進(jìn)行增強(qiáng)現(xiàn)實(shí)的實(shí)時(shí)跟蹤三維注冊(cè)時(shí),效率更高。附圖說明圖1為本發(fā)明的流程圖。具體實(shí)施方式下面結(jié)合圖1對(duì)本發(fā)明實(shí)現(xiàn)的步驟作進(jìn)一步的詳細(xì)描述。步驟1,光源時(shí)分編碼。利用時(shí)分編碼硬件電路,對(duì)自然場(chǎng)景中空間位置已知且擬作為標(biāo)志物的所有光源進(jìn)行通斷控制,每個(gè)光源在視頻圖像的連續(xù)25幀中呈現(xiàn)不同的亮滅變化,獲得其編碼序列,將這些自然場(chǎng)景中空間位置已知且做了亮滅狀態(tài)編碼的光源作為增強(qiáng)現(xiàn)實(shí)的標(biāo)志物。通常,視頻幀不低于20幀每秒時(shí)就可以保證人眼視覺感官的流暢性,常用視頻設(shè)備的幀率可以達(dá)到每秒25幀到30幀,所以在光源的一個(gè)編碼周期中,劃分25個(gè)時(shí)隙進(jìn)行光源編碼。對(duì)于每一個(gè)時(shí)隙,燈亮則編碼為1,等滅則編碼為0。直接利用這些自然場(chǎng)景中已經(jīng)存在的光源作為增強(qiáng)現(xiàn)實(shí)的標(biāo)志,規(guī)避了人工標(biāo)志給場(chǎng)景帶來的突兀感。步驟2,確定視頻圖像中光源檢測(cè)位置。在自然場(chǎng)景中的光源處于亮的狀態(tài)時(shí),將視頻設(shè)備所拍攝視頻圖像中呈現(xiàn)的高光區(qū)域作為目標(biāo)檢測(cè)區(qū)域。比較視頻設(shè)備所拍攝視頻圖像中,目標(biāo)檢測(cè)區(qū)域的每個(gè)像素點(diǎn)與其相鄰所有像素點(diǎn)之間的亮度值,得到亮度值局部極大像素點(diǎn),將亮度值局部極大像素點(diǎn)進(jìn)行聚類,得到多個(gè)聚類中心,將多個(gè)聚類中心作為該視頻圖像的光源位置。步驟3,跟蹤視頻圖像中出現(xiàn)的光源。利用卡爾曼濾波算法,由當(dāng)前時(shí)刻視頻圖像中待跟蹤光源位置,計(jì)算光源下一時(shí)刻在視頻圖像中的坐標(biāo)位置狀態(tài)的預(yù)測(cè)值按照下式進(jìn)行:x^k+1|k=φk+1,kx^k]]>其中,表示第k+1時(shí)刻被跟蹤光源在視頻圖像中坐標(biāo)位置狀態(tài)的預(yù)測(cè)值,φk+1,k表示第k時(shí)刻到第k+1時(shí)刻的一步狀態(tài)轉(zhuǎn)移矩陣,表示第k時(shí)刻被跟蹤光源在視頻圖像中的坐標(biāo)位置狀態(tài)的估計(jì)值。按照下式,更新待跟蹤光源在當(dāng)前時(shí)刻視頻圖像中的坐標(biāo)位置狀態(tài)的估計(jì)值:x^k+1=x^k+1|k+Gk(xk+1-Hk+1x^k+1|k)]]>其中,表示第k+1時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的估計(jì)值,表示第k+1時(shí)刻被跟蹤光源在視頻圖像中坐標(biāo)位置狀態(tài)的預(yù)測(cè)值,Gk表示第k時(shí)刻的卡爾曼濾波器的增益,xk+1表示第k+1時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的觀測(cè)值,Hk+1表示第k+1時(shí)刻的轉(zhuǎn)換矩陣。按照下式,計(jì)算當(dāng)前時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的估計(jì)值與觀測(cè)值之間的絕對(duì)誤差值:ϵk+1=|x^k+1-xk+1|]]>其中,εk+1表示第k+1時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的估計(jì)值與觀測(cè)值之間的的絕對(duì)誤差,表示第k+1時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的估計(jì)值,xk+1表示第k+1時(shí)刻光源在視頻圖像中坐標(biāo)位置狀態(tài)的觀測(cè)值,|·|表示取絕對(duì)值操作。步驟4,判斷在一個(gè)完整解碼周期內(nèi)估計(jì)值與觀測(cè)值之間的絕對(duì)誤差值是否小于門限值,若是,則表示跟蹤成功,執(zhí)行步驟5,否則,執(zhí)行步驟2。門限值是指,被跟蹤光源在視頻圖像中坐標(biāo)位置狀態(tài)的估計(jì)值與觀測(cè)值的最大像素坐標(biāo)偏移距離。步驟5,確定自然場(chǎng)景中光源空間位置坐標(biāo)值。記錄視頻圖像中當(dāng)前完整編碼周期內(nèi)圖像幀中出現(xiàn)的光源的亮滅狀態(tài),將光源亮?xí)r的解碼設(shè)定為1,將光源滅時(shí)的解碼設(shè)定為0,得到與每個(gè)光源在視頻圖像中的亮滅狀態(tài)對(duì)應(yīng)的(0,1)解碼序列,將該(0,1)解碼序列對(duì)應(yīng)的空間位置坐標(biāo)值,作為圖像幀中的光源在自然場(chǎng)景中對(duì)應(yīng)的空間位置坐標(biāo)值。步驟6,判斷視頻圖像中當(dāng)前完整編碼周期內(nèi)已解碼的光源數(shù)目是否少于3個(gè),若是,執(zhí)行步驟2,否則,執(zhí)行步驟7。步驟7,確定視頻設(shè)備在自然場(chǎng)景中的旋轉(zhuǎn)矩陣和平移向量。在當(dāng)前視頻圖像中,隨機(jī)選取視頻圖像中已跟蹤的三個(gè)光源,獲得三組光源在視頻圖像中的像素坐標(biāo)值及其在自然環(huán)境里對(duì)應(yīng)的空間坐標(biāo)值,將三組對(duì)應(yīng)坐標(biāo)值帶入下式,實(shí)時(shí)計(jì)算拍攝視頻圖像的視頻設(shè)備在自然場(chǎng)景中的旋轉(zhuǎn)矩陣和平移向量:λiuivi1=f0u000αfv000010Rt0T1XwiYwiZwi1,(i=1,2,3)]]>其中,λi表示常數(shù)因子,i表示當(dāng)前亮滅狀態(tài)已解碼光源的編號(hào),取1,2,3,ui表示視頻圖像中第i個(gè)亮滅狀態(tài)已解碼光源的像素坐標(biāo)的橫坐標(biāo),vi表示視頻圖像中第i個(gè)亮滅狀態(tài)已解碼光源的像素坐標(biāo)的縱坐標(biāo),f表示拍攝視頻圖像的視頻設(shè)備的相機(jī)焦距,α表示比例因子,u0表示相機(jī)主點(diǎn)在視頻圖像上的橫坐標(biāo),v0表示相機(jī)主點(diǎn)在視頻圖像上的縱坐標(biāo),R表示旋轉(zhuǎn)矩陣,t表示平移向量,Xwi表示第i個(gè)亮滅狀態(tài)已解碼光源在自然場(chǎng)景里的世界坐標(biāo)系下的x方向的坐標(biāo),Ywi表示第i個(gè)亮滅狀態(tài)已解碼光源在自然場(chǎng)景里的世界坐標(biāo)系下的y方向的坐標(biāo),Zwi表示第i個(gè)亮滅狀態(tài)已解碼光源在自然場(chǎng)景里的世界坐標(biāo)系下的z方向的坐標(biāo);步驟8,三維注冊(cè)。將當(dāng)前視頻圖像中確定的視頻設(shè)備在自然場(chǎng)景中的旋轉(zhuǎn)矩陣和平移向量,賦值給增強(qiáng)現(xiàn)實(shí)系統(tǒng)中的虛擬相機(jī),將虛擬三維模型與自然場(chǎng)景無縫融合,實(shí)現(xiàn)當(dāng)前時(shí)刻增強(qiáng)現(xiàn)實(shí)系統(tǒng)的實(shí)時(shí)跟蹤三維注冊(cè)。步驟9,判斷增強(qiáng)現(xiàn)實(shí)系統(tǒng)的視頻設(shè)備是否停止拍攝,若是,執(zhí)行步驟10,否則,執(zhí)行步驟2。步驟10,結(jié)束。當(dāng)前第1頁1 2 3