2. 4處理后得 到的RGB圖像中區(qū)域的區(qū)域中心位置〇與2圖像中區(qū)域的區(qū)域中心位置〇作差,差值為A〇 ; RGB圖像中區(qū)域的邊框角點(diǎn)位置〇^_4)與Z圖像中區(qū)域的邊框角點(diǎn)位置di'a_4)作差,差值 為Adi(H);當(dāng)A〇 滿足-5 〇〈厶〇〈 5 〇,而且Adi(卜4)滿足-5di(卜4)〈Adiu_4)〈 5diu_4)時(shí), 認(rèn)定是Z圖像和RGB圖像共同的檢出區(qū)域,其中0〈S〇〈(0? 3Height+0. 3Weight)/2,0〈Sdi (1_4)<(0. 3Height+0. 3ffeight)/2 ;
[0108] 共同的檢出區(qū)域認(rèn)定為一個(gè)物體,是視場(chǎng)中確實(shí)存在的障礙物,而不是背景中的 紋理或者Z圖像的噪聲;
[0109] (2. 2. 6)對(duì)障礙物進(jìn)行框選:對(duì)步驟2. 2. 5找到物體按照RGB圖和D圖中的共同檢 出區(qū)域,按照二者中區(qū)域點(diǎn)數(shù)Xn與Xn'小的為準(zhǔn),確定障礙物的深度平均值g、灰度平均值 g'、區(qū)域中心位置〇、區(qū)域矩形邊框角點(diǎn)位置diQ_4)和長L和高H;其中,長L= (L1+L2) /2, L1為邊框左上角點(diǎn)像素與右上角點(diǎn)像素在X圖像中數(shù)值的差值,L2為邊框左下角點(diǎn)像素與 右下角點(diǎn)像素在X圖像中數(shù)值的差值;高H= (H1+H2)/2,H1為邊框左上角點(diǎn)像素與左下角 點(diǎn)像素在Y圖像中數(shù)值的差值,H2為邊框右上角點(diǎn)像素與右下角點(diǎn)像素在Y圖像中數(shù)值的 差值;
[0110] (2. 3)通路檢測(cè)和危險(xiǎn)預(yù)警
[0111] 步驟2. 1和步驟2. 2分別檢測(cè)了地面和障礙,對(duì)步驟2. 1. 4和步驟2. 2. 6檢測(cè)到 的每幀圖像信息,進(jìn)行進(jìn)一步識(shí)別解讀,形成可供使用者理解的聲音或文字信號(hào)。由于圖像 信息可達(dá)到每秒多幀,而文字或聲音輸出不需要這樣快的速率,所以在使用時(shí)可靈活設(shè)置 每隔P幀執(zhí)行步驟2. 3. 1-2. 3. 5,在主流配置計(jì)算機(jī)中10〈P〈 100。
[0112] (2. 3. 1)根據(jù)步驟1. 5確定的世界坐標(biāo)系的坐標(biāo)值,將步驟2. 2. 6框選出的圖像 分為左上、左下、右上、右下、正上和正下六個(gè)區(qū)域,具體為:人體的寬度設(shè)為w,將視場(chǎng)中世 界坐標(biāo)水平線(Yw = 〇)以上的部分定義為上部,下方定義為下部;X圖像中間部分,即滿 足-w_p〈Xw〈w+q的像素集合,稱為中部,其中0〈|p|, |q|〈3w;中部兩側(cè)分別為左部和右部; 由于使用者攜帶RGB-D相機(jī)的位置是可能不斷變化的,前述六個(gè)方位并非大小相同,也并 非同時(shí)存在;
[0113] (2. 3. 2)對(duì)障礙物的處理:將步驟2. 2. 6框選出的障礙物按照深度平均值g和在 圖像中的位置的不同進(jìn)行優(yōu)先級(jí)排序,位于中間區(qū)域的優(yōu)先級(jí)高,兩側(cè)的優(yōu)先級(jí)低,g較小 的優(yōu)先級(jí)高,g較大的優(yōu)先級(jí)低,位置優(yōu)先級(jí)總體高于深度平均值優(yōu)先級(jí),按照優(yōu)先級(jí)順序 提示使用者對(duì)應(yīng)方位的障礙物情況;對(duì)障礙物依照灰度平均值g'分為紅橙黃綠青藍(lán)紫黑 白等不同顏色類別;
[0114] (2.3.3)對(duì)地面通路的處理,按照步驟2. 1.4檢測(cè)出的水平地面,對(duì)左下、右下、中 下三個(gè)分區(qū)內(nèi)的平面檢出情況進(jìn)行分析,具體為:與圖像視場(chǎng)下沿連接的平面或距離最近 的平面標(biāo)記為使用者現(xiàn)在所在水平面,確認(rèn)所在平面為通路;某個(gè)分區(qū)像素點(diǎn)個(gè)數(shù)為A,分 區(qū)中水平面通路像素個(gè)數(shù)為B,當(dāng)
時(shí),認(rèn)為該方向可以通行,否則不能通行;其中,0 < 8v< 1 ;
[0115] (2.3.4)典型場(chǎng)景檢測(cè):本方法除對(duì)通路和障礙能進(jìn)行提示之外,還可以對(duì)臺(tái)階 或樓梯場(chǎng)景進(jìn)行提示。對(duì)于步驟2. 1. 4檢測(cè)得到的平面圖像和步驟2. 2. 6檢測(cè)得到的障 礙物圖像,如果兩圖像相對(duì)應(yīng)的同一位置存在多個(gè)相互交錯(cuò)的檢出物時(shí),則認(rèn)為存在樓梯, 具體方法是:步驟2. 2. 6框選出的所有障礙物檢測(cè)結(jié)果在圖像中的間距D如果小于閾值 d(0〈d〈0. 5),則認(rèn)為他們同屬一個(gè)集合,將該集合中的元素找全后,框選集合位置并統(tǒng)計(jì) 元素個(gè)數(shù)num;在步驟2. 1. 4水平面檢測(cè)結(jié)果中,在集合框選的同樣位置如果出現(xiàn)個(gè)數(shù)為 num-2與num+2之間的水平面,則認(rèn)為該區(qū)域的確為臺(tái)階或樓梯;
[0116] (2. 3. 5)檢測(cè)信息的輸出:步驟2. 2. 2得到的障礙信息、步驟2. 2. 3得到的通路信 息和步驟2. 2. 4得到的場(chǎng)景信息,這三類信息按照障礙-通路-場(chǎng)景的順序輸出;在障礙和 通路彳目息中,按照2. 3. 2和2. 3. 3確定的優(yōu)先級(jí)確定彳目息提不先后;例如在某一特定的環(huán)境 下的輸出信息為:正下方1. 56m處有長lm、高lm的白色障礙物,右方有通路可以通行,左方 有臺(tái)階。
【主權(quán)項(xiàng)】
1. 一種基于RGB-D相機(jī)和姿態(tài)傳感器的平面和障礙檢測(cè)方法,其特征在于,包括以下 步驟: (1)環(huán)境三維信息的獲取,具體包括以下子步驟: (I. 1)對(duì)RGB-D相機(jī)進(jìn)行初始化,獲得彩色相機(jī)和深度相機(jī)的內(nèi)部參數(shù),所述內(nèi)部參數(shù) 包括水平視場(chǎng)角和豎直視場(chǎng)角,使用輪詢方法同時(shí)從RGB-D相機(jī)獲得RGB圖像和D圖像;D 圖像像素的灰度即該像素對(duì)應(yīng)的物體在三維環(huán)境中距離相機(jī)的水平深度值。 (1. 2)將RGB圖像與D圖像進(jìn)行視場(chǎng)匹配,具體為:使用時(shí)域修復(fù)方法,填補(bǔ)D圖像空 洞造成的映射后彩色圖像不完整,對(duì)RGB圖像與D圖像的原始映射關(guān)系β = R't(a )進(jìn)行 逐幀修復(fù)得到β = Rt ( α ),具體規(guī)則如下: 當(dāng)R' t(a)不可用時(shí),進(jìn)行Rt(a) = RhU)處理,否則進(jìn)行Rt(a)= γ R' t ( a ) + (1- γ ) Rt ( a )處理; 其中0〈 γ〈1,a為RGB圖像的像素集合,β為D圖像的像素集合,t為當(dāng)前幀,t-1為 當(dāng)前幀的前一幀; 得到了完整映射關(guān)系后,依據(jù)該完整映射關(guān)系獲得與D圖像視場(chǎng)相匹配的RGB圖像; (1. 3)對(duì)D圖像進(jìn)行濾波預(yù)處理,具體為:采用時(shí)空域聯(lián)合四鄰域?yàn)V波填補(bǔ)D圖像空 洞、去除孤立點(diǎn),對(duì)D圖像的像素 β (ij進(jìn)行修復(fù),規(guī)則如下: 當(dāng)3 a,j)= 〇時(shí),執(zhí)行以下公式: ^ a, j)= Average (β (i_1;J), β β (i+1;J), β (i;J+1)) (I) 如果公式⑴中的結(jié)果為零,執(zhí)行β aj)|t= β aj)|t_1; 當(dāng)β (i,a為孤立點(diǎn)時(shí),執(zhí)行β (U = O ; 其中AverageO表示對(duì)參數(shù)中非零值求均值,對(duì)像素零值的修復(fù)以空域?yàn)V波優(yōu)先,當(dāng) 空域?yàn)V波無效時(shí)采用時(shí)域?yàn)V波; (1. 4)通過深度相機(jī)的內(nèi)部參數(shù)以及D圖像獲得以相機(jī)為原點(diǎn)的相機(jī)坐標(biāo)系下的三維 位置信息Xc、Yc,具體為:為了得出空間三維物體到RGB-D相機(jī)的二維圖像映射關(guān)系,首先 關(guān)注相機(jī)坐標(biāo)系和圖像坐標(biāo)系的關(guān)系。對(duì)于D圖像中的某個(gè)像素(u,v),其像素值即為Zc, 由u、V、Zc計(jì)算Xc、Yc值,計(jì)算公式如下:其中,(u,v)表示以像素為單位、以圖像左上角為原點(diǎn)的圖像二維坐標(biāo),u是水平方向, V是豎直方向;(Xe, Yc,Zc)表示以相機(jī)為原點(diǎn)的相機(jī)三維坐標(biāo)系,Zc是相機(jī)的光軸方向, Xc是相機(jī)成像面的水平方向,Yc是相機(jī)成像面的豎直方向,采集到的二維圖像分辨率為 WidthXHeight,水平半視場(chǎng)角W1,垂直半視場(chǎng)角W2; (1. 5)通過深度相機(jī)的內(nèi)部參數(shù)以及D圖像獲得以相機(jī)為原點(diǎn)的世界坐標(biāo)系下的三維 位置信息(Xw,Yw,Zw),讀取與RGB-D相機(jī)固定連接的姿態(tài)傳感器的姿態(tài)角數(shù)值,設(shè)讀數(shù)為 繞傳感器X軸旋轉(zhuǎn)a',繞傳感器Z軸旋轉(zhuǎn)b',繞傳感器Y軸旋轉(zhuǎn)c',該X、Y、Z三軸的定義 與相機(jī)坐標(biāo)的x、Y、z三軸定義一致;令繞Y軸旋轉(zhuǎn)角的起始軸為光軸(Z軸正向)而非姿態(tài) 角傳感器定義的北方向,所以不考慮C'的數(shù)值,那么(Xe, Yc,Zc)繞X軸旋轉(zhuǎn)a =-a',繞Z 軸旋轉(zhuǎn)b = -b',繞Y軸旋轉(zhuǎn)c = O將得到(Xw,Yw,Zw);當(dāng)傳感器的角度解算順序?yàn)閆-Y-X 時(shí),按照X-Y-Z的順序?qū)ⅲ╔e, Yc,Zc)與旋轉(zhuǎn)矩陣相乘,即得到(Xw,Yw,Zw),具體公式如下:對(duì)D圖像中所有像素點(diǎn)都按本步驟的方法,求出在世界坐標(biāo)系下的三維坐標(biāo)值 (Xw, Yw, Zw); (2)環(huán)境信息的檢測(cè):選取步驟1. 5得到的世界三維坐標(biāo)中的高度量Yw繪制成Y圖像, 深度量Zw繪制成Z圖像,寬度量Xw繪制成X圖像;三個(gè)圖像的灰度值即表示該像素在三維 空間中對(duì)應(yīng)的物體在三個(gè)坐標(biāo)軸(Xw,Yw,Zw)上投影的數(shù)值;具體包括以下子步驟: (2. 1)水平地面的檢測(cè),具體包括以下子步驟: (2. I. 1)生長水平面的預(yù)處理,具體為:對(duì)Y圖像進(jìn)行水平和豎直方向的邊緣提取,并 對(duì)邊緣處理結(jié)果進(jìn)行二值化處理,閾值選擇以灰度直方圖為依據(jù),選擇峰值對(duì)應(yīng)灰度值小 的一端的谷值作為二值化的閾值; 對(duì)Y圖像進(jìn)行區(qū)域分割的預(yù)處理,確定水平線(Yw = 〇)在視場(chǎng)的位置,并依據(jù)水平線 位置將視場(chǎng)劃分為上下兩部分進(jìn)行區(qū)域分割;基于一般使用者佩戴位置,對(duì)水平線下方區(qū) 域按照行間距h個(gè)像素的密度進(jìn)行間隔行掃描,其中0〈h〈Height/8 ;在行掃描中,遇到二 值化處理得到的邊緣像素則在行的同樣位置設(shè)置分段斷點(diǎn),一次行掃描結(jié)束得到斷點(diǎn)集合 Si,記錄斷點(diǎn)的位置和個(gè)數(shù);所有行掃描結(jié)束后,選取任意相鄰兩行i行和i+Ι行中31與S i+1點(diǎn)數(shù)更多的斷點(diǎn)集合,在兩行之間依據(jù)斷點(diǎn)位置劃分出矩形區(qū)域; (2. 1.2)水平面生長,在每個(gè)劃分的區(qū)域選擇隨機(jī)點(diǎn)作為種子點(diǎn),開始一次生長,具體 為: (2. 1. 2. 1)種子點(diǎn)Gs滿足以下兩個(gè)條件則