專利名稱:一種基于視覺定位的虛擬向?qū)?gòu)建方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機視覺、計算機圖像學和地理信息等領(lǐng)域,尤其涉及ー種基于視覺定位的虛擬向?qū)?gòu)建方法。
背景技術(shù):
基于位置服務(wù)(Location Based Service,簡稱LBS)的應(yīng)用通常使用電信運營商的無線通訊網(wǎng)絡(luò)或外部定位方式(如全球衛(wèi)星定位系統(tǒng),英文簡稱GPS)獲取移動終端的位置信息(地理坐標或大地坐標),進而在地理信息系統(tǒng)的支持下,為用戶提供增值服務(wù)。隨著移動互聯(lián)網(wǎng)行業(yè)的興起,基于位置服務(wù)的應(yīng)用得到了飛速發(fā)展。LBS能夠廣泛支持需要動態(tài)地理空間信息的應(yīng)用,包括尋找目的地、急救服務(wù)和導航等。在我國,目前電信運營商還無法準確地定位用戶的位置,大部分LBS應(yīng)用使用GPS等外部傳感器進行位置定位。但當 前民用GPS精度非常有限(最好情況是30m左右),同時受限于其本身的固有缺陷,如GPS信號容易被高大建筑物遮擋,室內(nèi)空間信號微弱等。因此迫切需要新的方法進行精確的空間定位。導航技術(shù)是ー種基于位置服務(wù)的應(yīng)用,在民用領(lǐng)域發(fā)展迅速,井隨著GPS等傳感器設(shè)備的普及,越來越廣泛地應(yīng)用于我們的生活之中,如基于地圖的車載導航定位系統(tǒng)。雖然基于傳統(tǒng)地圖的導航方式能夠使用戶獲得地理方位的指示,但是這種方式?jīng)]有將導航信息融入到客觀存在的真實世界中,對于用戶來說不夠清晰與直觀,這在一定程度上影響了基于地圖導航系統(tǒng)的發(fā)展和應(yīng)用。近年來,利用計算機視覺的方法對圖像進行定位成為研究熱點,視覺定位平均定位偏差能小于當前民用GPS,同時也不存在信號遮擋等問題,這為解決精確定位問題提供了一種新的思路。許多知名大學和研究機構(gòu)正在積極開展增強現(xiàn)實場景虛擬向?qū)?gòu)建方法的研究,其中精確的空間定位是進行虛擬向?qū)У年P(guān)鍵。格拉茨技術(shù)大學在手機上實現(xiàn)了視頻的自動標注,該系統(tǒng)使用的GPS對用戶進行定位,將服務(wù)器上對應(yīng)于該位置的地理信息下載到用戶手機上,通過視覺特征匹配將地理信息標注到視頻的合適位置之上。奧地利維也納技術(shù)大學實現(xiàn)了一個增強現(xiàn)實場景的虛擬導航系統(tǒng),該系統(tǒng)需要場景的地理模型,并通過用戶交互的方法將該地理模型覆蓋到真實世界物體之上,以此來獲得虛擬信息和真實世界之間的對應(yīng)關(guān)系,然后根據(jù)模型的地理信息映射,在視頻上標出相關(guān)的地理信息,并進行虛擬向?qū)АHA盛頓大學提出了ー種使用空間推理進行地標導航的方法,該方法使用GPS對用戶進行定位,使用地理信息系統(tǒng)進行路徑規(guī)劃,并以地標圖像、文本指令和路徑標示等形式來顯示導航結(jié)果。通過分析和總結(jié)國內(nèi)外現(xiàn)狀可知,目前涉及的虛擬向?qū)Х椒?,?jīng)常利用GPS等傳感器獲得位置信息,但由于其固有的缺陷,限制了方法的精度和應(yīng)用。
發(fā)明內(nèi)容
針對上述技術(shù)問題,本發(fā)明提供了ー種基于視覺定位的虛擬向?qū)?gòu)建方法。本發(fā)明通過對基于現(xiàn)實場景的多個圖像進行分析,獲得了現(xiàn)實場景的三維點云模型,利用輸入圖像的特征點與現(xiàn)實場景的結(jié)構(gòu)點進行匹配,判斷出輸入圖像在三維點云模型中的當前位置,從而計算得到從輸入圖像的當前位置到達目標位置的路徑。本發(fā)明不需要利用GPS定位,可以實現(xiàn)對輸入圖像的精確定位。
本發(fā)明提供的技術(shù)方案為ー種基于視覺定位的虛擬向?qū)?gòu)建方法,包括以下步驟步驟一、獲取基于現(xiàn)實場景的多個圖像,從所述多個圖像中的每ー個圖像均提取若干特征點;步驟ニ、將所述每ー個圖像的每ー個特征點與位于其他圖像上的所有特征點進行視覺特征量的匹配,由此得到多個彼此之間相互匹配的特征點集,每個特征點集被識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,并將每個特征點集所包含的特征點的視覺特征量計算結(jié)構(gòu)點的視覺特征顯,由此得到多個結(jié)構(gòu)點,并以所述多個結(jié)構(gòu)點構(gòu)建三維點云模型;步驟三、從輸入圖像上提取若干特征點,逐個選擇所述步驟ニ得到的多個結(jié)構(gòu)點,且每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像的若干特征點逐個進行視覺特征量的匹配,由此得到η個匹配的結(jié)構(gòu)點,根據(jù)所述η個匹配的結(jié)構(gòu)點計算所述輸入圖像在所述三維點云模型中的當前位置。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟ニ中的得到多個彼此之間相互匹配的特征點集是通過以下方式實現(xiàn)的當位于α個圖像上的α個特征點彼此相互匹配時,則將上述α個特征點作為ー個特征點集,并將特征點集識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,其中,α >2,將上述α個特征點的視覺特征量的平均值作為與上述α個特征點對應(yīng)的結(jié)構(gòu)點的視覺特征量;繼續(xù)匹配直到得到所有的彼此之間相互匹配的特征點集。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述任ー個圖像具有至少ー個標注區(qū)域,所述標注區(qū)域?qū)?yīng)有標注信息,則將所述圖像內(nèi)的標注區(qū)域的標注信息作為位于該標注區(qū)域的特征點的標注信息;所述步驟ニ中,當位于α個圖像上的α個特征點彼此相互匹配時,則將上述α個特征點作為ー個特征點集,并將特征點集識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,其中,α >2,將上述α個特征點的視覺特征量的平均值作為與上述α個特征點對應(yīng)的結(jié)構(gòu)點的視覺特征量,還將上述α個特征點的標注信息作為與上述α個特征點對應(yīng)的結(jié)構(gòu)點的標注信息;繼續(xù)匹配直到得到所有的彼此之間相互匹配的特征點集,由此得到多個結(jié)構(gòu)點,再將所述多個結(jié)構(gòu)點中,具有相同標注信息的結(jié)構(gòu)點構(gòu)成ー個結(jié)構(gòu)點集合,且將各結(jié)構(gòu)點集合內(nèi)的結(jié)構(gòu)點再擬合成β個結(jié)構(gòu)平面,由此得到多個結(jié)構(gòu)平面;所述步驟三是通過以下過程實現(xiàn)的,從輸入圖像上提取若干特征點,逐個選擇每ー個結(jié)構(gòu)平面進行匹配,在對第一個結(jié)構(gòu)平面進行匹配吋,逐個選擇所述當前結(jié)構(gòu)平面內(nèi)的結(jié)構(gòu)點,且每ー個結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行視覺特征量的匹配,由此得到在當前結(jié)構(gòu)平面上的m個匹配的結(jié)構(gòu)點,繼續(xù)選擇下ー個結(jié)構(gòu)平面進行匹配。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟四中,對任ー個結(jié)構(gòu)平面進行匹配,是通過以下過程實現(xiàn)的,(a)依照優(yōu)先級從高到低的順序選擇當前結(jié)構(gòu)平面內(nèi)的k個結(jié)構(gòu)點,每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行匹配,當所述k個結(jié)構(gòu)點中匹配的結(jié)構(gòu)點的個數(shù)滿足第二閾值,則進行步驟(b),否則停止對當前結(jié)構(gòu)平面的匹配,繼續(xù)選擇下一個結(jié)構(gòu)平面進行匹配,(b)依照優(yōu)先級從高到低的順序選擇當前結(jié)構(gòu)平面內(nèi)的結(jié)構(gòu)點,每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行匹配,由此得到m個匹配的結(jié)構(gòu)點。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟三中,在所述輸入圖像內(nèi)的與當前結(jié)構(gòu)平面的m個結(jié)構(gòu)點相匹配的特征點構(gòu)成ー識別區(qū)域,將所述當前結(jié)構(gòu)平面的標注信息作為該識別區(qū)域的標注信息。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟三之后還包括有步驟四、在所述三維點云模型中以所述多個圖像構(gòu)建路徑網(wǎng)絡(luò);
步驟五、向所述三維點云模型中輸入目標位置,以所述輸入圖像在所述三維點云模型中的當前位置計算在所述路徑網(wǎng)絡(luò)內(nèi)由所述輸入圖像的當前位置到所述目標位置的路徑。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟四中,在所述三維點云模型中以所述多個圖像構(gòu)建路徑網(wǎng)絡(luò)是通過以下方式實現(xiàn)的,計算每兩個圖像之間具有匹配的視覺特征量的特征點的個數(shù),當兩個圖像之間具有匹配的視覺特征量的特征點的個數(shù)滿足第一閾值時,則兩個圖像在所述三維點云模型中的位置之間連通有路徑,其中,所述圖像在所述三維點云模型中的位置為拍攝所述圖像的相機在所述三維點云模型中的位置;所述步驟三中,所述輸入圖像在所述三維點云模型中的當前位置為根據(jù)η個匹配的結(jié)構(gòu)點計算的拍攝所述輸入圖像的相機在所述三維點云模型中的當前位置。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟四中,根據(jù)所述η個匹配的結(jié)構(gòu)點的視覺特征量計算拍攝所述輸入圖像的相機的姿態(tài)信息。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟五之后還包括有步驟六、根據(jù)拍攝所述輸入圖像的相機的姿態(tài)信息,在所述輸入圖像上繪制所述輸入圖像由當前位置到目標位置的路徑的行進方向。優(yōu)選的是,所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述目標位置通過所述標注區(qū)域的標注信息識別。本發(fā)明所述的基于視覺定位的虛擬向?qū)?gòu)建方法通過對基于現(xiàn)實場景的多個圖像進行分析,獲得了現(xiàn)實場景的三維點云模型,利用將輸入圖像的特征點與現(xiàn)實場景的結(jié)構(gòu)點進行匹配,判斷出輸入圖像在三維點云模型中的當前位置,從而計算得到從輸入圖像的當前位置到達目標位置的路徑。本發(fā)明不需要利用GPS定位,可以實現(xiàn)對輸入圖像的精確定位,且定位速度快,從定位到給出路徑的處理時間少于I秒。本發(fā)明將被識別的建筑物的標注信息繪制于輸入圖像上,并在輸入圖像上繪制出用于指示行進路徑的箭頭,對于導航結(jié)果的展示更加直觀。
圖I為本發(fā)明的總體系統(tǒng)結(jié)構(gòu)示意圖;圖2為本發(fā)明所述的基于標注信息的結(jié)構(gòu)平面擬合的流程圖;圖3為本發(fā)明所述的場景壓縮的流程圖;圖4為本發(fā)明所述的基于結(jié)構(gòu)平面的輸入圖像定位算法的流程圖;
圖5為本發(fā)明所述的系統(tǒng)多線程流程和數(shù)據(jù)關(guān)系圖;圖6為本發(fā)明所述的在輸入圖像內(nèi)的場景地理信息自動標注的流程圖;圖7為本發(fā)明所述的場景路徑網(wǎng)絡(luò)稀疏化算法的流程圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明做進ー步的詳細說明,以令本領(lǐng)域技術(shù)人員參照說明書文字能夠據(jù)以實施。本發(fā)明提供ー種基于視覺定位的虛擬向?qū)?gòu)建方法,包括以下步驟步驟一、獲取基于現(xiàn)實場景的多個圖像,從所述多個圖像中的每ー個圖像均提取若干特征點;步驟ニ、將所述每ー個圖像的每ー個特征點與位于其他圖像上的所有特征點進行視覺特征量的匹配,由此得到多個彼此之間相互匹配的特征點集,每個特征點集被識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,并將每個特征點集所包含的特征點的視覺特征量計算結(jié)構(gòu)點的視覺特征量,由此得到多個結(jié)構(gòu)點,并以所述多個結(jié)構(gòu)點構(gòu)建三維點云模型;步驟三、從輸入圖像上提取若干特征點,逐個選擇所述步驟ニ得到的多個結(jié)構(gòu)點,且每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像的若干特征點逐個進行視覺特征量的匹配,由此得到η個匹配的結(jié)構(gòu)點,根據(jù)所述η個匹配的結(jié)構(gòu)點計算所述輸入圖像在所述三維點云模型中的當前位置。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟ニ中的得到多個彼此之間相互匹配的特征點集是通過以下方式實現(xiàn)的當位于α個圖像上的α個特征點彼此相互匹配時,則將上述α個特征點作為ー個特征點集,并將特征點集識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,其中,α >2,將上述α個特征點的視覺特征量的平均值作為與上述α個特征點對應(yīng)的結(jié)構(gòu)點的視覺特征量;繼續(xù)匹配直到得到所有的彼此之間相互匹配的特征點集。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述任ー個圖像具有至少ー個標注區(qū)域,所述標注區(qū)域?qū)?yīng)有標注信息,則將所述圖像內(nèi)的標注區(qū)域的標注信息作為位于該標注區(qū)域的特征點的標注信息;所述步驟ニ中,當位于α個圖像上的α個特征點彼此相互匹配時,則將上述α個特征點作為ー個特征點集,并將特征點集識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,其中,α >2,將上述α個特征點的視覺特征量的平均值作為與上述α個特征點對應(yīng)的結(jié)構(gòu)點的視覺特征量,還將上述α個特征點的標注信息作為與上述α個特征點對應(yīng)的結(jié)構(gòu)點的標注信息;繼續(xù)匹配直到得到所有的彼此之間相互匹配的特征點集,由此得到多個結(jié)構(gòu)點,再將所述多個結(jié)構(gòu)點中,具有相同標注信息的結(jié)構(gòu)點構(gòu)成ー個結(jié)構(gòu)點集合,且將各結(jié)構(gòu)點集合內(nèi)的結(jié)構(gòu)點再擬合成β個結(jié)構(gòu)平面,由此得到多個結(jié)構(gòu)平面;所述步驟三是通過以下過程實現(xiàn)的,從輸入圖像上提取若干特征點,逐個選擇每ー個結(jié)構(gòu)平面進行匹配,在對第一個結(jié)構(gòu)平面進行匹配吋,逐個選擇所述當前結(jié)構(gòu)平面內(nèi)的結(jié)構(gòu)點,且每ー個結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行視覺特征量的匹配,由此得到在當前結(jié)構(gòu)平面上的m個匹配的結(jié)構(gòu)點,繼續(xù)選擇下ー個結(jié)構(gòu)平面進行匹配。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟四中,對任ー個結(jié)構(gòu)平面進行匹配,是通過以下過程實現(xiàn)的,(a)依照優(yōu)先級從高到低的順序選擇當前結(jié)構(gòu)平面內(nèi)的k個結(jié)構(gòu)點,每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行匹配,當所述k個結(jié)構(gòu)點中匹配的結(jié)構(gòu)點的個數(shù)滿足第二閾值,則進行步驟(b),否則停止對當前結(jié)構(gòu)平面的匹配,繼續(xù)選擇下ー個結(jié)構(gòu)平面進行匹配,(b)依照優(yōu)先級從高到低的順序選擇當前結(jié)構(gòu)平面內(nèi)的結(jié)構(gòu)點,每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行匹配,由此得到m個匹配的結(jié)構(gòu)點。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟三中,在所述輸入圖像內(nèi)的與當前結(jié)構(gòu)平面的m個結(jié)構(gòu)點相匹配的特征點構(gòu)成ー識別區(qū)域,將所述當前結(jié)構(gòu)平面的標注信息作為該識別區(qū)域的標注信息。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟三之后還包括有 步驟四、在所述三維點云模型中以所述多個圖像構(gòu)建路徑網(wǎng)絡(luò);步驟五、向所述三維點云模型中輸入目標位置,以所述輸入圖像在所述三維點云模型中的當前位置計算在所述路徑網(wǎng)絡(luò)內(nèi)由所述輸入圖像的當前位置到所述目標位置的路徑。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟四中,在所述三維點云模型中以所述多個圖像構(gòu)建路徑網(wǎng)絡(luò)是通過以下方式實現(xiàn)的,計算每兩個圖像之間具有匹配的視覺特征量的特征點的個數(shù),當兩個圖像之間具有匹配的視覺特征量的特征點的個數(shù)滿足第一閾值時,則兩個圖像在所述三維點云模型中的位置之間連通有路徑,其中,所述圖像在所述三維點云模型中的位置為拍攝所述圖像的相機在所述三維點云模型中的位置;所述步驟三中,所述輸入圖像在所述三維點云模型中的當前位置為根據(jù)η個匹配的結(jié)構(gòu)點計算的拍攝所述輸入圖像的相機在所述三維點云模型中的當前位置。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟四中,根據(jù)所述η個匹配的結(jié)構(gòu)點的視覺特征量計算拍攝所述輸入圖像的相機的姿態(tài)信息。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述步驟五之后還包括有步驟六、根據(jù)拍攝所述輸入圖像的相機的姿態(tài)信息,在所述輸入圖像上繪制所述輸入圖像由當前位置到目標位置的路徑的行進方向。所述的基于視覺定位的虛擬向?qū)?gòu)建方法中,所述目標位置通過所述標注區(qū)域的標注信息識別。本發(fā)明提供ー種基于視覺定位的虛擬向?qū)?gòu)建方法,參閱圖I為本發(fā)明的總體系統(tǒng)結(jié)構(gòu)示意圖,本發(fā)明提出的方法總體上包括兩個部分數(shù)據(jù)預處理部分和實時處理部分。數(shù)據(jù)預處理部分主要是用來建立地理信息庫。在擁有300張圖像的場景中,使用普通桌面計算機構(gòu)建地理信息庫的時間開銷大概在2天左右。該部分包括以下幾個步驟基于現(xiàn)實場景的無序圖像進行三維重建,得到現(xiàn)實場景的三維點云模型;通過對圖像進行交互式地標注,得到圖像特征的ニ維標注信息,井根據(jù)結(jié)構(gòu)點和圖像特征的對應(yīng)關(guān)系,將該標注信息由ニ維映射到三維之上,得到帶有標注信息的三維點云模型;在標注信息對應(yīng)的結(jié)構(gòu)點集合中進行迭代的平面擬合,得到場景模型的主要的結(jié)構(gòu)平面,基于結(jié)構(gòu)平面對結(jié)構(gòu)點的標注信息進行優(yōu)化,構(gòu)建現(xiàn)實場景的地理信息模型。
實時處理部分主要是針對輸入圖像的導航請求,快速地給出輸入圖像的地理標注信息和虛擬向?qū)В摬糠值钠骄幚頃r間能小于I秒。該部分包括以下兒個步驟在接收到用戶的輸入圖像請求之后,通過提取輸入圖像的特征點以及視覺特征量,將視覺特征量建成ー棵查找樹;基于現(xiàn)實場景的結(jié)構(gòu)平面,將現(xiàn)實場景的地理模型在輸入圖像的視覺特征空間中進行查找匹配,然后使用這些滿足匹配條件的特征點計算得到輸入圖像的相機參數(shù),獲得用戶的當前位置;將現(xiàn)實場景的地理模型投影到輸入圖像的相機的視景體之內(nèi),映射得到輸入圖像的地理標注信息;基于圖像素材庫圖像之間的匹配關(guān)系得到圖像之間的路徑連通圖,通過稀疏化之后得到場景模型的路徑網(wǎng)絡(luò)圖;基于用戶的當前位置、目標位置采用最短路徑算法進行路徑規(guī)劃,得到一條最優(yōu)路徑;最后使用全局導航視角的方式或者增強顯示視角的方式顯示路徑導航結(jié)果。在數(shù)據(jù)預處理部分,首先基于現(xiàn)實場景的圖像構(gòu)建三維點云模型,即對圖像素材庫內(nèi)的圖像進行三維重建。本發(fā)明的圖像素材庫內(nèi)包括有300個圖像,但本發(fā)明的方法并不僅限于300個圖像。其中,現(xiàn)實場景的三維點云模型簡稱為場景模型。本發(fā)明采用的三維重建方法主要包括三個階段第一階段是視覺特征提取,即從多幅待匹配圖像中提取出對尺度縮放、旋轉(zhuǎn)、亮度變化無關(guān)視覺特征量=SIFT ;第二個階段是SIFT特征匹配,通過對庫中圖像兩兩之間的匹配,將相似的視覺特征量組織成一系列匹配軌道,其中,一個匹配軌道對應(yīng)于現(xiàn)實場景中的一個實際的三維點(以下稱為結(jié)構(gòu)點);第三個階段使用運動結(jié)構(gòu)(Structure From Motion)的方法,計算得到結(jié)構(gòu)點的三維空間坐標和圖像素材庫中各圖像的相機參數(shù),所有的結(jié)構(gòu)點的集合構(gòu)成現(xiàn)實場景的三維點云模型。在三維重建過程中,本發(fā)明優(yōu)選的是以SIFT視覺特征量作為圖像的視覺特征,實際上,也可以采用其他的圖像特征提取方法。三維重建的具體實施過程為,將300個圖像的每ー個圖像的每ー個特征點與位于其他圖像上的特征點進行匹配,當位于α個圖像上的α個特征點具有匹配的視覺特征量吋,則將上述α個特征點識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,其中,α >2,得到多個結(jié)構(gòu)點。圖像素材庫內(nèi)的300個圖像中任一圖像與其他圖像中至少ー個圖像之間具有重合的標注區(qū)域。由于本發(fā)明中是通過運動結(jié)構(gòu)的方法確定結(jié)構(gòu)點的三維空間坐標的,因此,對于同一標注區(qū)域至少要同時出現(xiàn)在兩個圖像內(nèi),才可以對該標注區(qū)域?qū)崿F(xiàn)結(jié)構(gòu)點的識別與計算。本發(fā)明的圖像素材庫內(nèi)的圖像是由用戶自己拍攝并上傳至網(wǎng)站的。因此本發(fā)明設(shè)計并提供了ー個交互式的地理信息標注工具,用戶可以使用這個工具自由地在圖像中勾勒出特定的區(qū)域,并標注出該區(qū)域的地理信息,同時也可以指定與其相關(guān)的其它屬性信息,最終,在圖像素材庫的每一個圖像上均具有至少ー個標注區(qū)域,每ー個標注區(qū)域?qū)?yīng)有標注信息。在多數(shù)情況下,標注區(qū)域一般對應(yīng)著在現(xiàn)實場景中容易識別的建筑物,對于用戶而言,也傾向于標注在圖像上出現(xiàn)的建筑物。在圖像標注過程中,用戶可以標出圖像中的任意對象而無需苛求對象的精確輪廓,并給予被標出對象標注信息,而用戶提供的這些信息也就成為了圖像素材庫地理信息的來源,通過對上述標注信息的挖掘、統(tǒng)計和優(yōu)化,就可以得到該圖像素材庫相對應(yīng)的地理信息。具體而言,用戶使用標注工具進行交互式標注的步驟如下(I)打開圖像序列用戶打開一段視頻序列,序列中的ー幀就會顯示到主窗口中,用戶就可以對這ー幀圖片進行結(jié)構(gòu)分析標注,或者選擇拖動滾動條或輸入圖像序號跳到其他圖像進行結(jié)構(gòu)分析標注。(2)勾勒對象輪廓本發(fā)明所設(shè)計的交互式的標注工具提供了畫筆功能,用戶能通過畫筆在圖像中勾勒出建筑的輪廓。在勾勒時,用戶用鼠標左鍵點擊圖片作為勾勒的起點,然后依次用鼠標左鍵圍繞對象畫點,最后用鼠標右鍵結(jié)束勾勒,圖片上就會自動形成一個封閉的多邊形輪廓。(3)指定對象名稱在勾勒完對象的輪廓后,會自動彈出對象名稱指定窗ロ,用戶輸入該輪廓對象所對應(yīng)的名稱即可。(4)填充其它信息標注與該對象相關(guān)的其它信息,比如備注信息,超鏈接等。(5)保存標注結(jié)果用戶可以不斷選擇所關(guān)注的對象進行標注,直到圖像序列中所有對象都標注完成,在標注完成后可以選擇保存標注信息,該圖像標注信息所對應(yīng)的工程文件會以XML形式保存,方便下次繼續(xù)對該圖像序列進行標注。用戶對圖像進行交互式標注之后,將會得到ー個“.label”標注文件,該文件存放該圖像中每個標注信息的索引及其標注區(qū)域的點序列,即每ー個圖像都存在有ー個label”標注文件。為確定結(jié)構(gòu)點的視覺特征量和標注信息,則需要確定圖像的特征點的視覺特征量和標注信息。判斷圖像的特征點的標注信息的過程為,“.label”標注文件內(nèi)保存有標注區(qū)域的 點序列,在讀取圖像的標注文件時,判斷當前圖像的某ー特征點是否位于某ー標注區(qū)域內(nèi),如果是,則將該特征點的標注信息記為該標注區(qū)域的標注信息的索引。對所有的圖像重復上述過程,可以獲得圖像素材庫內(nèi)所有圖像的特征點的標注信息。如前文所述,一個匹配軌道對應(yīng)于現(xiàn)實場景中的一個結(jié)構(gòu)點,一個結(jié)構(gòu)點可以看成是匹配軌道上所有特征點的聚類,因此,可以通過匹配軌道上所有的特征點的信息來描述其對應(yīng)的結(jié)構(gòu)點的信息。判斷結(jié)構(gòu)點的標注信息和視覺特征量的過程為,結(jié)構(gòu)點Pi對應(yīng)于匹配軌道上的η個特征點,該結(jié)構(gòu)點的視覺特征量deSCriptorp和標注信息Iabelp可以分別由這η個特征點計算獲得。值得指出的是,對于同一個結(jié)構(gòu)點而言,不同的特征點一定是位于不同的圖像上。對于結(jié)構(gòu)點Pi的視覺特征量,本發(fā)明采用匹配軌道上特征點的視覺特征量的離散期望值來描述
I 其中,desciptori為特征點的視覺特征量。對于結(jié)構(gòu)點Pi的標注信息,采用匹配軌道上投票的方法來計算結(jié)構(gòu)點的標注信息。設(shè)得票數(shù)最多的標注信息為Iabelk,且票數(shù)為Numk,若Numk大于ー個設(shè)定的閾值threshholdm,則將Iabelk記為該結(jié)構(gòu)點的標注信息的計算過程為
IaDelk,if Nnmk > threshholdm, Numk = max I Num(label,_) }IabeJp = <'Α·=1 …n
-I , otherwise對于同一匹配軌道上的不同圖像的特征點,可能會出現(xiàn)所對應(yīng)的標注信息不一致的情況;尤其是位于標注區(qū)域的邊緣位置的特征點,更容易出現(xiàn)上述情況。因此,將出現(xiàn)次數(shù)最多的標注信息作為結(jié)構(gòu)點的標注信息。地理信息庫的現(xiàn)實場景對象大部分為建筑物,且建筑物具有容易識別和標記的特點。在將標注信息映射到到三維點云模型之后,可以通過統(tǒng)計獲得每個標注信息的結(jié)構(gòu)點集合,即將具有相同的標注信息的結(jié)構(gòu)點構(gòu)成ー個結(jié)構(gòu)點集合,該結(jié)構(gòu)點集合就是某個建筑物的結(jié)構(gòu)點集合。本發(fā)明中主要以建筑物作為輸入圖像的識別依據(jù)。由于ー個建筑物可以看作是由若干個平面組合而成,因此只須將與某一建筑物對應(yīng)的結(jié)構(gòu)點集合的結(jié)構(gòu)點中擬合出主要的結(jié)構(gòu)平面即可。由于建筑物前方物體遮擋、誤匹配等原因會造成異常結(jié)構(gòu)點數(shù)據(jù),異常結(jié)構(gòu)點數(shù)據(jù)通常具有隨機性,表現(xiàn)為局部極值跳躍,常用的平面擬合方法如最小二乗法、特征值法雖然考慮了數(shù)據(jù)的誤差因素,但是無法剔除上述異常結(jié)構(gòu)點數(shù)據(jù)。
參閱圖2本發(fā)明中基于標注信息的結(jié)構(gòu)平面擬合的流程圖,本發(fā)明采用隨機抽樣一致化(RASAC)方法來擬合結(jié)構(gòu)平面,井能同時去除異常數(shù)據(jù)。結(jié)構(gòu)平面擬合步驟如下(1)從某標注Iabeli的結(jié)構(gòu)點集合S ^中隨機抽取3個結(jié)構(gòu)點,計算其構(gòu)成的平面方程Planei ; (2)計算Si其它點到Planei的距離も,給定ー個閾值threshhold,若d j< threshhold,則認為該點在Planei上,統(tǒng)計得出Planei上的所有點集合Plane_Seti及該集合點的數(shù)目Cnti ; (3)通過設(shè)定一個迭代次數(shù)num,反復迭代運行步驟(I)和步驟(2),在毎次計算的Cnti得到ー個最大點數(shù)目cntm,設(shè)其對應(yīng)的平面方程為Planem,其平面點集合為Plaru^Seti,若cntm小于ー個閾值,該擬合出來的平面點的數(shù)目過少,說明該平面Planem的點云屬于遮擋物,則平面擬合算法結(jié)束,退出;否則Planem即為該建筑物的一個擬合平面,同時求出該平面點集的包圍盒Bounding-boxm ; (4)在現(xiàn)實場景的三維點云模型中,若結(jié)構(gòu)點在平面Planem內(nèi),即結(jié)構(gòu)點到平面距離小于threshhold,且該結(jié)構(gòu)點位于包圍盒Bounding_boxm之內(nèi),則將該結(jié)構(gòu)點的標注設(shè)置為Iabeli ; (5) Si+1 = Seti-Plane-Seti,運行步驟(I),即將不在擬合平面PlamSeti內(nèi)的點集合迭代地重新進行平面擬合。在圖像素材庫中,要能快速定位出輸入圖像在場景模型中的位置,應(yīng)該選擇該輸入圖像中較為獨特的圖像特征,因為這些圖像特征的信息量較大、區(qū)分度較強,能以較少的匹配特征判斷出圖像的位置。通過給每個結(jié)構(gòu)點定義ー個優(yōu)先級,來表達某ー圖像特征對于場景模型位置的重要性。優(yōu)先級越高的圖像特征,表示該圖像特征越重要,在輸入圖像定位時能優(yōu)先匹配。上述的圖像特征也就是SIFT視覺特征量。通過計算每個結(jié)構(gòu)點的TF-IDF值作為其優(yōu)先級,以此來尋找場景模型中最有代表性的圖像特征,優(yōu)先使用這些圖像特征進行匹配,以達到快速定位的目的。結(jié)構(gòu)點Pi的IDF值為結(jié)構(gòu)點Pi的圖像特征在整個圖像素材庫中出現(xiàn)的次數(shù)freq(Pi)(也就是與結(jié)構(gòu)點Pi對應(yīng)的特征點在整個圖像素材庫中出現(xiàn)的次數(shù)),包括真實匹配和偽匹配。在三維重建方法中,在圖像兩兩匹配之后,直接將相似的視覺特征顯組織成匹配軌道,設(shè)Pi對應(yīng)的匹配軌道中的圖像特征的個數(shù)為full_traCk(Pi),圖像素材庫中圖像的總數(shù)為|D|,則
權(quán)利要求
1.ー種基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,包括以下步驟 步驟一、獲取基于現(xiàn)實場景的多個圖像,從所述多個圖像中的每ー個圖像均提取若干特征點; 步驟ニ、將所述每ー個圖像的每ー個特征點與位于其他圖像上的所有特征點進行視覺特征量的匹配,由此得到多個彼此之間相互匹配的特征點集,每個特征點集被識別為現(xiàn)實場景的一個結(jié)構(gòu)點,并將每個特征點集所包含的特征點的視覺特征量計算結(jié)構(gòu)點的視覺特征量,由此得到多個結(jié)構(gòu)點,并以所述多個結(jié)構(gòu)點構(gòu)建三維點云模型; 步驟三、從輸入圖像上提取若干特征點,逐個選擇所述步驟ニ得到的多個結(jié)構(gòu)點,且每一個被選擇的結(jié)構(gòu)點與所述輸入圖像的若干特征點逐個進行視覺特征量的匹配,由此得到n個匹配的結(jié)構(gòu)點,根據(jù)所述n個匹配的結(jié)構(gòu)點計算所述輸入圖像在所述三維點云模型中的當前位置。
2.如權(quán)利要求I所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在干, 所述步驟ニ中的得到多個彼此之間相互匹配的特征點集是通過以下方式實現(xiàn)的當位于a個圖像上的a個特征點彼此相互匹配時,則將上述a個特征點作為ー個特征點集,并將特征點集識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,其中,a >2,將上述a個特征點的視覺特征量的平均值作為與上述a個特征點對應(yīng)的結(jié)構(gòu)點的視覺特征量;繼續(xù)匹配直到得到所有的彼此之間相互匹配的特征點集。
3.如權(quán)利要求2所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在干, 所述任ー個圖像具有至少ー個標注區(qū)域,所述標注區(qū)域?qū)?yīng)有標注信息,則將所述圖像內(nèi)的標注區(qū)域的標注信息作為位于該標注區(qū)域的特征點的標注信息; 所述步驟ニ中,當位于a個圖像上的a個特征點彼此相互匹配時,則將上述a個特征點作為ー個特征點集,并將特征點集識別為現(xiàn)實場景的ー個結(jié)構(gòu)點,其中,a >2,將上述a個特征點的視覺特征量的平均值作為與上述a個特征點對應(yīng)的結(jié)構(gòu)點的視覺特征量,還將上述a個特征點的標注信息作為與上述a個特征點對應(yīng)的結(jié)構(gòu)點的標注信息;繼續(xù)匹配直到得到所有的彼此之間相互匹配的特征點集,由此得到多個結(jié)構(gòu)點,再將所述多個結(jié)構(gòu)點中,具有相同標注信息的結(jié)構(gòu)點構(gòu)成ー個結(jié)構(gòu)點集合,且將各結(jié)構(gòu)點集合內(nèi)的結(jié)構(gòu)點再擬合成P個結(jié)構(gòu)平面,由此得到多個結(jié)構(gòu)平面; 所述步驟三是通過以下過程實現(xiàn)的, 從輸入圖像上提取若干特征點,逐個選擇每ー個結(jié)構(gòu)平面進行匹配,在對第一個結(jié)構(gòu)平面進行匹配吋,逐個選擇所述當前結(jié)構(gòu)平面內(nèi)的結(jié)構(gòu)點,且每ー個結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行視覺特征量的匹配,由此得到在當前結(jié)構(gòu)平面上的m個匹配的結(jié)構(gòu)點,繼續(xù)選擇下ー個結(jié)構(gòu)平面進行匹配。
4.如權(quán)利要求3所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,所述步驟四中,對任ー個結(jié)構(gòu)平面進行匹配,是通過以下過程實現(xiàn)的, (a)依照優(yōu)先級從高到低的順序選擇當前結(jié)構(gòu)平面內(nèi)的k個結(jié)構(gòu)點,每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行匹配,當所述k個結(jié)構(gòu)點中匹配的結(jié)構(gòu)點的個數(shù)滿足第二閾值,則進行步驟(b),否則停止對當前結(jié)構(gòu)平面的匹配,繼續(xù)選擇下ー個結(jié)構(gòu)平面進行匹配, (b)依照優(yōu)先級從高到低的順序選擇當前結(jié)構(gòu)平面內(nèi)的結(jié)構(gòu)點,每ー個被選擇的結(jié)構(gòu)點與所述輸入圖像內(nèi)的若干特征點逐個進行匹配,由此得到m個匹配的結(jié)構(gòu)點。
5.如權(quán)利要求4所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,所述步驟三中,在所述輸入圖像內(nèi)的與當前結(jié)構(gòu)平面的m個結(jié)構(gòu)點相匹配的特征點構(gòu)成ー識別區(qū)域,將所述當前結(jié)構(gòu)平面的標注信息作為該識別區(qū)域的標注信息。
6.如權(quán)利要求3所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,所述步驟三之后還包括有 步驟四、在所述三維點云模型中以所述多個圖像構(gòu)建路徑網(wǎng)絡(luò); 步驟五、向所述三維點云模型中輸入目標位置,以所述輸入圖像在所述三維點云模型中的當前位置計算在所述路徑網(wǎng)絡(luò)內(nèi)由所述輸入圖像的當前位置到所述目標位置的路徑。
7.如權(quán)利要求6所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,所述步驟四中,在所述三維點云模型中以所述多個圖像構(gòu)建路徑網(wǎng)絡(luò)是通過以下方式實現(xiàn)的, 計算每兩個圖像之間具有匹配的視覺特征量的特征點的個數(shù),當兩個圖像之間具有匹配的視覺特征量的特征點的個數(shù)滿足第一閾值時,則兩個圖像在所述三維點云模型中的位置之間連通有路徑,其中,所述圖像在所述三維點云模型中的位置為拍攝所述圖像的相機在所述三維點云模型中的位置; 所述步驟三中,所述輸入圖像在所述三維點云模型中的當前位置為根據(jù)n個匹配的結(jié)構(gòu)點計算的拍攝所述輸入圖像的相機在所述三維點云模型中的當前位置。
8.如權(quán)利要求7所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,所述步驟四中,根據(jù)所述n個匹配的結(jié)構(gòu)點的視覺特征量計算拍攝所述輸入圖像的相機的姿態(tài)信息。
9.如權(quán)利要求8所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,所述步驟五之后還包括有 步驟六、根據(jù)拍攝所述輸入圖像的相機的姿態(tài)信息,在所述輸入圖像上繪制所述輸入圖像由當前位置到目標位置的路徑的行進方向。
10.如權(quán)利要求6 9中任一項所述的基于視覺定位的虛擬向?qū)?gòu)建方法,其特征在于,所述目標位置通過所述標注區(qū)域的標注信息識別。
全文摘要
本發(fā)明公開了一種視覺定位的虛擬向?qū)?gòu)建方法。本發(fā)明所述的基于視覺定位的虛擬向?qū)?gòu)建方法通過對基于現(xiàn)實場景的多個圖像進行分析,獲得了現(xiàn)實場景的三維點云模型,利用輸入圖像的特征點與現(xiàn)實場景三維點云模型中的結(jié)構(gòu)點進行匹配,判斷出輸入圖像在三維點云模型中的當前位置,從而計算得到從輸入圖像的當前位置到達目標位置的路徑。本發(fā)明不需要利用GPS定位,可以實現(xiàn)對輸入圖像的精確定位,且定位速度快,從定位到給出路徑的處理時間少于1秒。本發(fā)明將被識別的建筑物的標注信息繪制于輸入圖像上,并在輸入圖像上繪制出用于指示行進路徑的箭頭,對于導航結(jié)果的展示更加直觀。
文檔編號G06F17/30GK102867057SQ20121034548
公開日2013年1月9日 申請日期2012年9月17日 優(yōu)先權(quán)日2012年9月17日
發(fā)明者陳小武, 趙沁平, 宋亞斐, 顏勇, 穆珺 申請人:北京航空航天大學