Realsense
使用說明:
1、組裝拍攝三腳架與滑動條軌,將RealSense相機與手機一同裝置在三腳架的滑動條軌上。
2、連接RealSense到筆記本電腦,不需任何配置即可直接適配設(shè)備。
3、打開PC端軟件,調(diào)至Real Sense功能區(qū)并點擊開始按鍵即可查看實時圖像(包含RGB與RGB-D圖像)。
軟件部分具體操作如下:
本軟件配合Real Sense開發(fā)、編寫。程序主要實現(xiàn)的功能如圖3所示:
圖3 、程序主界面
該圖為程序主界面,為了提高用戶使用便捷性,我們將實現(xiàn)的功能進(jìn)行分區(qū)域化,主要分為如上圖的四個功能區(qū),從左至右分別是圖像查看與超像素分割區(qū)、Real Sense調(diào)用區(qū)、圖像壓縮區(qū)和特征匹配區(qū)。
1圖像預(yù)處理
如圖4所示為圖像查看區(qū),由上至下依次為:讀取本地圖片文件、放大、縮小、上一張、下一張、超像素分割功能。讀取的本地圖片可一次性讀取多張,通過上一張和下一張來滾動查看。
圖4、圖像查看區(qū)主界面
運行主程序并選擇圖片查看選項卡后點擊文件選取按鍵,即可得到如圖5所示的文件選取彈窗,此時、按鍵分別為放大和縮小查看功能,往下的、 兩個按鍵分別為“上一張”、“下一張”滾動查看圖片功能,若選擇的圖像為單張圖像則“上一張”、“下一張”按鈕點擊無效。
圖5、文件選取
接下來對所選取的圖像進(jìn)行超像素分割時,如圖6點擊超像素按鍵后會彈出一個參數(shù)設(shè)置窗口,在輸入?yún)?shù)后,程序的后臺會將當(dāng)前圖像進(jìn)行超像素分割。其中“超像素分割”功能調(diào)用了OpenCV庫中的Slic算法進(jìn)行處理,如圖7所示。
圖6、超像素分割參數(shù)設(shè)置
圖7、超像素分割后的圖像
2、RealSense調(diào)用
如圖8所示為RealSense調(diào)用區(qū)主界面,功能鍵由上至下以此為:打開攝像頭、保存當(dāng)前圖像(深度圖與RGB圖像)、攝像頭畫面停止,其中保存按鍵再次按下為停止保存,如果不按則為連續(xù)保存采集到的圖像幀,以上三個功能鍵皆基于pyrealsense2庫函數(shù)來實現(xiàn)。
圖8、 RealSense功能調(diào)用區(qū)
在點擊第一個按鍵后RealSense攝像頭將會打開如圖9所示,左邊為RGB攝像頭、右邊為深度攝像頭;點擊第二個按鍵后攝像頭將會啟動圖像保存直到再次按下才會停止保存,保存的圖像為代碼同級目錄下的imgSave文件夾如圖10所示,另外為了增強可操作性還設(shè)置了攝像頭畫面停止功能:點擊最后一個按鍵攝像頭的圖像將會停止以方便查看,點擊后畫面將會再次復(fù)原。
圖9、Real Sense啟動圖像采集
圖10、保存的RGB圖像與深度圖像
3、圖像壓縮
在點擊主界面的第三個選項卡后,將會打開如圖11所示的圖像壓縮的功能界面,該界面分為兩個主要模塊:原圖像區(qū)(左)、壓縮后圖像區(qū)(右)。在選取本地圖像后將會其顯示到左邊的顯示區(qū)中,此時可使用縮放功能來查看圖像;右邊的則會將壓縮后的圖像進(jìn)行顯示,同時也有縮放功能進(jìn)行查看以及保存功能來保存壓縮后的圖像。
圖11、圖像壓縮區(qū)主界面
點擊后選取本地文件后,頂端會分別顯示所選取圖像的寬度與高度值,也可點擊、來進(jìn)行縮放查看如圖12所示,接下來在如圖13所示的下拉列表選擇壓縮比(預(yù)設(shè)可供選擇的壓縮比有1:2, 1:3, 1:4,1:16),隨后點擊將會進(jìn)行圖像壓縮如圖14所示,同樣也可點擊右邊的、來對壓縮后的圖像進(jìn)行縮放查看,最后點擊將會保存該壓縮圖像到項目同級目錄的imgPressSave文件夾內(nèi),如圖15所示。
圖12、本地讀取待壓縮文件
圖13、選取壓縮比
圖14、圖像壓縮
圖15、保存壓縮后的圖像
4特征匹配
點擊主界面的第四個功能區(qū)選項卡后,將會進(jìn)入圖像深度信息匹配功能區(qū),該功能區(qū)主界面如圖16所示:
圖16、特征匹配功能區(qū)主界面
點擊按鍵后將會出現(xiàn)本地圖片選取的對話框,此時用戶將依次選入兩張待選取的兩張圖片,在界面的頂部會顯示兩張圖片的保存絕對路徑、匹配后的圖像將會自動保存到項目同級目錄的imgMatChing文件夾下如圖17與圖18所示:
圖17、特征匹配后的圖像
圖18、匹配圖像的保存
隨后點擊有右邊的深度回歸功能,程序后臺會對超像素分割后圖像進(jìn)行深度回歸效果圖如圖19所示:
圖19、深度回歸后效果圖
算法部分
1、SLIC超像素分割算法
基于k均值聚類算法,并在此基礎(chǔ)上進(jìn)行改進(jìn)。首先是初始化聚類中心,在圖像內(nèi)均勻的分配聚類中心。假設(shè)圖片總共有 N 個像素點,預(yù)分割為 K 個相同尺寸的超像素,那么每個超像素的大小為N/ K ,則相鄰聚類中心的距離(步長)近似為S=sqrt(N/K)。
其次是對聚類中心進(jìn)行修正,在聚類中心的nn鄰域內(nèi)重新選擇聚類中心(一般取n=3)。具體方法為:計算該鄰域內(nèi)所有像素點的梯度值,將聚類中心移到該鄰域內(nèi)梯度最小的地方。這樣做的目的是為了避免聚類中心落在梯度較大的輪廓邊界上,以免影響后續(xù)聚類效果。
然后, 在每個聚類中心周圍的鄰域內(nèi)為每個像素點分配類標(biāo)簽(即屬于哪個聚類中心)。和標(biāo)準(zhǔn)的k-means在整張圖中搜索不同,SLIC的搜索范圍限制為2S2S,可以加速算法收斂。在此注意一點:期望的超像素尺寸為SS,但是搜索的范圍是2S2S。
再而是距離度量。包括顏色距離和空間距離。對于每個搜索到的像素點,分別計算它和該種子點的距離。距離計算方法如下:
其中,dc代表顏色距離,ds代表空間距離,Ns是類內(nèi)最大空間距離,定義為Ns=S=sqrt(N/K),適用于每個聚類。最大的顏色距離Nc既隨圖片不同而不同,也隨聚類不同而不同,所以我們?nèi)∫粋€固定常數(shù)m(取值范圍[1,40],一般取10)代替。最終的距離度量D’如下:
由于每個像素點都會被多個聚類中心搜索到,所以每個像素點都會有一個與周圍聚類中心的距離,取最小值對應(yīng)的聚類中心作為該像素點的聚類中心。
接下來是迭代優(yōu)化。理論上上述步驟不斷迭代直到誤差收斂(可以理解為每個像素點聚類中心不再發(fā)生變化為止),實踐發(fā)現(xiàn)10次迭代對絕大部分圖片都可以得到較理想效果,所以一般迭代次數(shù)取10。
最后是增強連通性。經(jīng)過上述迭代優(yōu)化可能出現(xiàn)以下瑕疵:出現(xiàn)多連通情況、超像素尺寸過小,單個超像素被切割成多個不連續(xù)超像素等,這些情況可以通過增強連通性解決。主要思路是:新建一張標(biāo)記表,表內(nèi)元素均為-1,按照“Z”型走向(從左到右,從上到下順序)將不連續(xù)的超像素、尺寸過小超像素重新分配給鄰近的超像素,遍歷過的像素點分配給相應(yīng)的標(biāo)簽,直到所有點遍歷完畢為止。
2、ORB特征匹配算法
圖像的特征點可以簡單的理解為圖像中比較顯著顯著的點,如輪廓點,較暗區(qū)域中的亮點,較亮區(qū)域中的暗點等。ORB采用FAST(features from accelerated segment test)算法來檢測特征點。這個定義基于特征點周圍的圖像灰度值,檢測候選特征點周圍一圈的像素值,如果候選點周圍領(lǐng)域內(nèi)有足夠多的像素點與該候選點的灰度值差別夠大,則認(rèn)為該候選點為一個特征點。
得到特征點后我們需要以某種方式描述這些特征點的屬性。這些屬性的輸出我們稱之為該特征點的描述子(Feature DescritorS).ORB采用BRIEF算法來計算一個特征點的描述子。
BRIEF算法的核心思想是在關(guān)鍵點P的周圍以一定模式選取N個點對,把這N個點對的比較結(jié)果組合起來作為描述子。
步驟:
1.以關(guān)鍵點P為圓心,以d為半徑做圓O。
2.在圓O內(nèi)某一模式選取N個點對。這里為方便說明,N=4,實際應(yīng)用中N可以取512.
假設(shè)當(dāng)前選取的4個點對如上圖所示分別標(biāo)記為:
3.定義操作T
其中IA表示點A的灰度。
4.分別對已選取的點對進(jìn)行T操作,將得到的結(jié)果進(jìn)行組合。
假如:
則最終的描述子為:1011
理想的特征點描述子應(yīng)該具備的屬性:
在現(xiàn)實生活中,我們從不同的距離,不同的方向、角度,不同的光照條件下觀察一個物體時,物體的大小,形狀,明暗都會有所不同。但我們的大腦依然可以判斷它是同一件物體。理想的特征描述子應(yīng)該具備這些性質(zhì)。即,在大小、方向、明暗不同的圖像中,同一特征點應(yīng)具有足夠相似的描述子,稱之為描述子的可復(fù)現(xiàn)性。
當(dāng)以某種理想的方式分別計算描述子時,應(yīng)該得出同樣的結(jié)果。即描述子應(yīng)該對光照(亮度)不敏感,具備尺度一致性(大小 ),旋轉(zhuǎn)一致性(角度)等。
ORB并沒有解決尺度一致性問題,在OpenCV的ORB實現(xiàn)中采用了圖像金字塔來改善這方面的性能。ORB主要解決BRIEF描述子不具備旋轉(zhuǎn)不變性的問題。
總結(jié)
- 上一篇: c++11之智能指针
- 下一篇: Windows下载安装Intel Rea