国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于改進(jìn)SLAM的增強(qiáng)現(xiàn)實(shí)跟蹤注冊方法*

2019-01-02 06:56閆興亞
關(guān)鍵詞:漢明尺度特征

閆興亞 范 瑤

(西安郵電大學(xué)計(jì)算機(jī)學(xué)院 西安 710061)

1 引言

目前絕大多數(shù)的增強(qiáng)現(xiàn)實(shí)系統(tǒng)[1]是基于自然圖片識(shí)別的,脫離了自然圖片,AR效果便不能夠?qū)崿F(xiàn)。而借助SLAM技術(shù),當(dāng)用戶在使用AR系統(tǒng)時(shí),攝像機(jī)隨處一照,就會(huì)看到虛擬物體在現(xiàn)實(shí)環(huán)境的樣子,不需要再去拍攝固定的圖片,徹底擺脫了固定標(biāo)志物的限制。

本文是基于計(jì)算機(jī)領(lǐng)域內(nèi)廣泛應(yīng)用的單目視覺ORB-SLAM系統(tǒng)。特征點(diǎn)檢測是單目視覺ORB-SLAM的核心問題[2],其作用就是將提取的圖像特征點(diǎn)與地圖庫中信息進(jìn)行匹配,當(dāng)匹配結(jié)果出現(xiàn)誤差時(shí),運(yùn)動(dòng)物體的即時(shí)定位過程就會(huì)失敗,因此特征點(diǎn)檢測匹配算法的準(zhǔn)確性直接決定了SLAM系統(tǒng)的精確度。同時(shí),由于運(yùn)動(dòng)物體的運(yùn)動(dòng)狀態(tài)是不斷更新變化的,該系統(tǒng)對算法的運(yùn)行效率也有較高的要求。

2 ORB-SLAM算法介紹

通常情況下,特征點(diǎn)的檢測和匹配是利用圖形圖像學(xué)上的一些算法來完成的。但因?yàn)槭褂肧LAM的場景都是在真實(shí)環(huán)境中,而真實(shí)環(huán)境中的諸多因素都能夠影響運(yùn)動(dòng)物體的環(huán)境狀態(tài),例如光照條件的變化或障礙物的出現(xiàn),所有這些因素都有可能導(dǎo)致特征點(diǎn)的檢測、跟蹤和匹配產(chǎn)生誤差,進(jìn)而造成SLAM系統(tǒng)性能出現(xiàn)下滑,甚至系統(tǒng)中斷,因此選擇一個(gè)合適的特征點(diǎn)檢測算法依然是視覺SLAM的重要問題[3~4]。目前應(yīng)用在單目視覺SLAM系統(tǒng)的特征點(diǎn)檢測算法有多種,比如SIFT特征[5],SURF特征[6~7],F(xiàn)AST角點(diǎn)檢測等,由于算法自身性能的限制,將其應(yīng)用在SLAM中產(chǎn)生的效果不是特別好。故目前視覺SLAM主要是利用ORB算法作為特征點(diǎn)提取算法的。

2.1 ORB算法分析

環(huán)境特征點(diǎn)的選取對于SLAM的定位和建圖極為重要。本文的系統(tǒng)選擇采用ORB(oriented FAST(features from accelerated segment test)and BRIE(binary robust independent elementary features))[8]算法進(jìn)行環(huán)境特征點(diǎn)檢測提取,該算法由Rublee等于2011年發(fā)表的論文“ORB:an efficient alternative to SIFTor SURF”中提出。它具有速度快、精度高等優(yōu)越性,能夠滿足本研究的要求。該算法是建立在 FAST[9]特征檢測和 BRIEF[10]描述子上。

在ORB算法中使用FAST作為特征點(diǎn)檢測算子,在該算法中為提高FAST算子的精確度,引入灰度質(zhì)心概念。借助文獻(xiàn)[11]中的描述,定義圖像中的任意小塊區(qū)域的領(lǐng)域矩獲得主方向,領(lǐng)域矩可以表示為

特征點(diǎn)所在的小塊區(qū)域的質(zhì)心坐標(biāo)為

特征點(diǎn)方向?yàn)槭剑?),其中 x,y∈[ ]-r,r ,r為鄰域半徑。

BRIEF算子不具備旋轉(zhuǎn)不變性,因此本研究將rBRIEF作為ORB算法中的特征點(diǎn)描述子。其本質(zhì)是在特征點(diǎn)周圍選取指定數(shù)量的像素點(diǎn),例如在31×31像素塊中選取5×5個(gè)子像素塊,通過比較其灰度值,組合編碼成以二進(jìn)制為存在形式的特征點(diǎn)描述子,得到二進(jìn)制串。假設(shè)經(jīng)過高斯平滑處理后的圖像塊P(s×s)的描述子分段函數(shù)τ為

式中 p(x)代表 x處的灰度值。選擇m個(gè)(xi,yi)位置對,并根據(jù)定義的二進(jìn)制準(zhǔn)則,可知描述子可用m維的二進(jìn)制比特串來表示,如下所示:

在本研究中,為達(dá)到虛擬物體與真實(shí)環(huán)境相融合的效果,需利用ORB算法檢測出兩個(gè)圖像塊中的特征點(diǎn)和特征描述子后,通過漢明距離對采集到的特征點(diǎn)進(jìn)行匹配。從描述子中提取任意Q1、Q2兩個(gè)描述子:

ORB算法使用通過漢明距離之間的位運(yùn)算得到的D(Q1,Q2)判定描述子的相似程度:

D(Q1,Q2)數(shù)值越小表示描述子相似程度越高,相反,表示相似程度低。

2.2 SURF算法分析

SURF算法是Bay H等在SIFT算法的基礎(chǔ)之上提出的[12~13],SURF 算法對特征點(diǎn)的提取是通過Hessian矩陣來完成的。給定的一副圖像I(x),對圖像上任一像素點(diǎn)X=(x ,y)求取尺度為σ的Hessian矩陣:

式中Lxx(X ,σ)是二階高斯濾波與圖像在X點(diǎn)處的卷積,Lxy(X ,σ ) ,Lyy(X ,σ ) 具有相似的含義。分別為對應(yīng)的高斯二階微分。高斯濾波函數(shù)為式(10)所示。通過計(jì)算圖像中每個(gè)像素點(diǎn)并定位特征點(diǎn)。

SURF算法在構(gòu)建尺度圖像金字塔時(shí),需要在每一階中選出四層的尺度圖像[14];若圖像的尺寸遠(yuǎn)遠(yuǎn)大于模板的大小,還可以增加所選階數(shù)。若濾波模板的大小為N×N,則對應(yīng)的尺度S=1.2×N/9。

2.3 基于SURF的改進(jìn)型ORB算法

基于上文描述,ORB算法運(yùn)行時(shí),其特征點(diǎn)檢測具有較高的工作效率,不僅運(yùn)算速度較快,而且計(jì)算精度較高,穩(wěn)定性較好,但其計(jì)算的特征點(diǎn)是不具備尺度信息的。在基于SLAM的增強(qiáng)現(xiàn)實(shí)系統(tǒng)中,圖像特征點(diǎn)的檢測以及與目標(biāo)圖片的跟蹤、匹配過程中要滿足光照、旋轉(zhuǎn)、縮放、投影不變形等諸多要求,而ORB算法顯然在應(yīng)用時(shí)不能提供完美的解決辦法。但SURF算法正好能夠滿足特征信息的尺度性要求。因此,結(jié)合ORB和SURF兩種算法的優(yōu)缺點(diǎn),實(shí)現(xiàn)優(yōu)勢互補(bǔ)后,提出一種SURF-ORB算法,并對此檢測算法通過實(shí)驗(yàn)進(jìn)行驗(yàn)算改進(jìn),進(jìn)一步滿足本文研究所需具備的實(shí)時(shí)性和魯棒性要求。

3 特征點(diǎn)檢測與匹配

根據(jù)前文對ORB算法和SURF算法的分析,可知在特征點(diǎn)算法實(shí)施過程中,主要有檢測和匹配步驟,同樣,本文研究的SURF-ORB算法也是分為這兩大步驟。不同的是,該算法在實(shí)施過程中,首先使用ORB算法對圖像進(jìn)行計(jì)算處理,完成特征點(diǎn)的選??;其次是將上步獲取到的圖像特征點(diǎn)帶入SURF算法,進(jìn)行再次計(jì)算。這樣,提取出的特征點(diǎn)信息就能夠綜合兩種算法的優(yōu)勢,一是運(yùn)行過程中只針對目標(biāo)特征進(jìn)行卷積運(yùn)算,算法效率得以提高;二是該算法計(jì)算得出的特征點(diǎn)具有兩種算法的長處,檢測和匹配時(shí)更穩(wěn)定,保證后續(xù)增強(qiáng)現(xiàn)實(shí)系統(tǒng)的健壯性要求。

在特征點(diǎn)檢測完成后,使用漢明距離進(jìn)行特征點(diǎn)匹配。但由于光線、相機(jī)抖動(dòng)等外界條件的影響,如果只用漢明距離進(jìn)行匹配,則會(huì)產(chǎn)生匹配錯(cuò)誤,影響匹配效果,最終對系統(tǒng)運(yùn)行造成誤差。因而本文在漢明匹配的基礎(chǔ)上,使用PROSAC(Progressive Sample Con-sensus)算法對已匹配的點(diǎn)對信息再進(jìn)行檢測,使得匹配點(diǎn)對的精確度更高,進(jìn)而提高算法的魯棒性。

精匹配時(shí)采用的PROSAC算法是在RANSAC算法上改進(jìn)的[15]。PROSAC算法不會(huì)直接從系統(tǒng)獲取到的所有特征點(diǎn)匹配信息中抽取樣本,而是先對所有樣本數(shù)據(jù)進(jìn)行線性處理,按質(zhì)量好壞將特征匹配點(diǎn)從高到低排列,再從高質(zhì)量的特征匹配點(diǎn)信息中抽取部分?jǐn)?shù)據(jù)作為樣本,再進(jìn)行多次重復(fù)的計(jì)算,直到結(jié)果達(dá)到預(yù)先設(shè)定的閾值,此時(shí),PROSAC精匹配過程結(jié)束,獲得的匹配點(diǎn)信息足夠穩(wěn)定,滿足系統(tǒng)需求。

4 算法實(shí)現(xiàn)與流程

在系統(tǒng)開始初始化后,首先要將攝像機(jī)捕獲到的圖片進(jìn)行處理,從RGB模式轉(zhuǎn)化為HIS彩色空間,這樣就能避免實(shí)際環(huán)境中目標(biāo)圖片因?yàn)楣饩€等原因產(chǎn)生的色調(diào)誤差。

然后是建立高斯金字塔模型,避免地圖庫中的圖片與待檢測的捕獲圖片因分辨率的差異而產(chǎn)生誤差。接著進(jìn)行特征點(diǎn)檢測。在該步驟中,要將特征點(diǎn)響應(yīng)函數(shù)的參數(shù)值進(jìn)行合理設(shè)置,如特征點(diǎn)閾值、極大值抑制等。根據(jù)上文中ORB算法的介紹,此處設(shè)置特征點(diǎn)閾值為12,并選擇進(jìn)行極大值抑制。其次,進(jìn)行SURF特征計(jì)算,利用Hessian矩陣進(jìn)一步提取特征點(diǎn)。最后,通過漢明距離進(jìn)行特征點(diǎn)粗匹配,然后利用改進(jìn)的隨機(jī)采樣一致性PROSAC算法[16]再刪除誤匹配點(diǎn),進(jìn)行精匹配。

其主要流程如圖1所示。

圖1 SURF-ORB特征檢測與匹配流程圖

5 實(shí)驗(yàn)結(jié)果分析

進(jìn)行如下實(shí)驗(yàn),以便驗(yàn)證改進(jìn)后算法的性能。軟件平臺(tái)搭建在Windows 7操作系統(tǒng)下,編程環(huán)境使用Visual studio 2012;硬件設(shè)備包括一臺(tái)主頻為3.1Ghz、內(nèi)存為16GB、顯卡為NVDIA Quadro K4000的HP臺(tái)式機(jī)。

實(shí)驗(yàn)1:特征點(diǎn)檢測實(shí)驗(yàn)。目標(biāo)圖片選取大雁塔圖片,分別采用ORB算法、SURF算法、SURF-ORB算法檢測圖片特征點(diǎn)。檢測結(jié)果如下圖所示。

圖2 特征點(diǎn)檢測結(jié)果對比

為詳細(xì)說明情況,將三種算法提取特征點(diǎn)的數(shù)量以及耗費(fèi)時(shí)間數(shù)據(jù)列出,如表1所示。

表1 特征檢測算法對比

結(jié)合圖2可以看出,ORB算法提取的特征點(diǎn)較少,使用時(shí)會(huì)影響后期定位精度,但耗費(fèi)時(shí)間最短;而SURF算法提取的特征點(diǎn)最多,耗費(fèi)時(shí)間最長,不能滿足實(shí)時(shí)性的要求;改進(jìn)的SURF-ORB算法提取的數(shù)量及所耗費(fèi)時(shí)間都居于兩者之間,既能滿足定位需求,又能滿足實(shí)時(shí)性需求,滿足本系統(tǒng)的研究。

實(shí)驗(yàn)2:尺度不變性實(shí)驗(yàn)。因?yàn)镺RB算法本身不具有尺度不變性,為驗(yàn)證改進(jìn)后的SURF-ORB算法是否具有尺度不變性,實(shí)驗(yàn)對象為尺度不同的兩張圖片。

圖3(a)中,ORB算法不具有尺度不變性,出現(xiàn)了誤匹配情況;圖3(b)是改進(jìn)后的SURF-ORB算法在圖片尺度不一時(shí)的匹配圖樣,結(jié)果顯示,該算法無顯著匹配錯(cuò)誤,比圖3(a)的匹配效果要準(zhǔn)確。

圖3 圖像尺度變化時(shí)匹配圖

圖4 表示使用ORB算法和改進(jìn)后的SURF-ORB算法在試驗(yàn)對象發(fā)生旋轉(zhuǎn)后特征點(diǎn)的提取和匹配效果對比,使用后者處理得到的匹配點(diǎn)對數(shù)的質(zhì)量明顯更高,耗費(fèi)時(shí)間為80.35ms和68.26ms,結(jié)果表明SURF-ORB算法與原ORB算法相比,匹配速度提升了15.04%。

圖4 圖像旋轉(zhuǎn)時(shí)匹配對比

圖5 表示在圖片亮度發(fā)生變化的情況下,ORB算法和SURF-ORB算法的特征點(diǎn)檢測與匹配對比圖,結(jié)果表明SURF-ORB算法的匹配結(jié)果并不受圖片亮度變化的影響,而ORB算法在光線變化情況下,出現(xiàn)誤匹配的點(diǎn)對。

圖5 亮度變化時(shí)特征匹配對比

6 結(jié)語

綜合實(shí)驗(yàn)結(jié)果,SURF-ORB算法很好地綜合了兩者各自的優(yōu)勢。一方面縮短了運(yùn)行時(shí)間,在實(shí)時(shí)性特點(diǎn)上更為突出,滿足AR對實(shí)時(shí)性的要求;另一方面在尺度變化的情況下,匹配精度有了改善,可以得到對特征點(diǎn)詳細(xì)的尺度信息描述;同時(shí),在實(shí)驗(yàn)圖像發(fā)生旋轉(zhuǎn)以及亮度變化時(shí),其穩(wěn)定性較好。本文基于SLAM的增強(qiáng)現(xiàn)實(shí)系統(tǒng)的研究與應(yīng)用無論從理論還是實(shí)踐方面,都對增強(qiáng)現(xiàn)實(shí)技術(shù)的發(fā)展有著重要意義,而且隨著移動(dòng)技術(shù)的不斷進(jìn)步,在不遠(yuǎn)的將來增強(qiáng)現(xiàn)實(shí)必定在越來越多的行業(yè)發(fā)揮重要作用,為人們的生活帶來極大方便。

猜你喜歡
漢明尺度特征
離散型隨機(jī)變量的分布列與數(shù)字特征
有限域上一類極小線性碼的構(gòu)造
財(cái)產(chǎn)的五大尺度和五重應(yīng)對
抓特征解方程組
不忠誠的四個(gè)特征
宇宙的尺度
媳婦管錢
9
一種新的計(jì)算漢明距方法
抓特征 猜成語
长兴县| 伊宁县| 右玉县| 出国| 随州市| 长沙县| 民勤县| 大方县| 右玉县| 贺州市| 稷山县| 将乐县| 桂东县| 香格里拉县| 南召县| 贵定县| 望谟县| 许昌县| 二连浩特市| 三明市| 右玉县| 石阡县| 随州市| 承德县| 平塘县| 洪泽县| 江城| 衡东县| 沧源| 万载县| 温宿县| 石台县| 昌宁县| 右玉县| 锦州市| 延寿县| 同仁县| 呈贡县| 雅安市| 谷城县| 磐安县|