基于視覺的移動機(jī)器人障礙物檢測方法和裝置制造方法
【專利摘要】本發(fā)明提供了一種基于視覺的移動機(jī)器人障礙物檢測方法和基于視覺的移動機(jī)器人障礙物檢測裝置,其中,基于視覺的移動機(jī)器人障礙物檢測方法包括:接收視覺傳感器采集的移動機(jī)器人所處環(huán)境的圖像信息;利用同時構(gòu)圖和定位算法對接收的圖像信息進(jìn)行計算,得到計算結(jié)果;根據(jù)計算結(jié)果,檢測移動機(jī)器人所處環(huán)境中的障礙物。通過本發(fā)明的技術(shù)方案,能夠?qū)⒒谝曈X傳感器的同時構(gòu)圖和定位算法的計算結(jié)果直接應(yīng)用于移動機(jī)器人自主運動中的自由空間和障礙物空間判斷,計算復(fù)雜度低,既適合于機(jī)器人的三維空間移動又適合二維平面移動。
【專利說明】基于視覺的移動機(jī)器人障礙物檢測方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及機(jī)器人控制【技術(shù)領(lǐng)域】,具體而言,涉及到基于視覺的移動機(jī)器人障礙物檢測方法和基于視覺的移動機(jī)器人障礙物檢測裝置。
【背景技術(shù)】
[0002]具有自主運動功能的移動機(jī)器人是當(dāng)前機(jī)器人學(xué)發(fā)展十分迅速的一個分支,它在科研和工業(yè)領(lǐng)域均得到了極大關(guān)注。移動機(jī)器人的自主運動是一個不斷循環(huán)的自動過程,對于每一次循環(huán),機(jī)器人首先判斷外部空間中哪些是障礙物,哪些是自由空間,從而在自由空間中設(shè)計出一條路徑,并根據(jù)路徑規(guī)劃自身運動命令,最后完成運動。
[0003]現(xiàn)有技術(shù)中,大多數(shù)障礙物檢測方法主要依賴激光或聲吶等主動傳感器。這種檢測方式存在著抗干擾能力低、價格昂貴等特點。少數(shù)也采用視覺傳感器進(jìn)行障礙物檢測,這主要歸因于視覺傳感器具有體積小、價格低廉及抗干擾能力強等優(yōu)點。
[0004]現(xiàn)有的基于視覺傳感器的機(jī)器人障礙物檢測方法方式包括,例如:機(jī)器人根據(jù)左右兩個攝像頭所得圖像,計算出左右攝像頭圖像視差,并根據(jù)視差推斷出場景物體相對于機(jī)器人的距離,從而定義自由空間和障礙物空間;然而,此類方法僅限于雙目攝像頭,而且由于需要計算圖像視差和使用柵格存儲障礙物信息,因此,計算復(fù)雜,實時性較差。又例如:使用單目攝像頭的方法,通過運動補償?shù)霓k法進(jìn)行障礙物檢測;然而此方法僅限于路面障礙物的檢測,適用范圍僅限于機(jī)器人的平面移動,不能適用于空間運動。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明提供了一種基于視覺的移動機(jī)器人障礙物檢測方法和裝置,其運算簡單,既適合于平面移動又適合于空間移動中的障礙物檢測。
[0006]一方面,本發(fā)明提出了一種基于視覺的移動機(jī)器人障礙物檢測方法,包括:
[0007]接收視覺傳感器采集的所述移動機(jī)器人所處環(huán)境的圖像信息;
[0008]利用同時構(gòu)圖和定位算法對所述接收的圖像信息進(jìn)行計算,得到計算結(jié)果;
[0009]根據(jù)所述計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境中的障礙物,
[0010]其中,所述計算結(jié)果包括:所述環(huán)境的特征幾何基元、視覺傳感器位姿和所述特征幾何基元與所述視覺傳感器位姿之間的可見約束關(guān)系。
[0011]其中,所述根據(jù)計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境的障礙物,包括:
[0012]將所述移動機(jī)器人所處環(huán)境的三維空間剖分為多個子空間;
[0013]根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間;
[0014]組合所述障礙物子空間。
[0015]其中,所述將所述三維空間剖分為多個子空間包括:
[0016]采用規(guī)則網(wǎng)格或不規(guī)則組合結(jié)構(gòu)將所述三維空間剖分為多個子空間。
[0017]其中,所述采用規(guī)則網(wǎng)格將所述三維空間剖分為多個子空間包括:[0018]將所述三維空間剖分為多個尺寸為預(yù)設(shè)值的子空間;
[0019]或者,
[0020]將所述三維空間剖分為多個相同尺寸的子空間;當(dāng)所述子空間的尺寸大于預(yù)設(shè)的尺寸下限值、且所述子空間中包含特征幾何基元時,繼續(xù)剖分所述子空間,否則停止剖分所述子空間。
[0021]其中,所述特征幾何基元包括:特征幾何點、特征幾何點和特征幾何線段;
[0022]所述采用不規(guī)則組合結(jié)構(gòu)將所述三維空間剖分為多個子空間包括:
[0023]當(dāng)特征幾何基元均是特征幾何點時,以特征幾何點為頂點,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間;
[0024]當(dāng)特征幾何基元包含特征幾何點和特征幾何線段時,以特征幾何點為頂點,以特征幾何線段為邊,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間。
[0025]其中,所述根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間包括:
[0026]將滿足第一預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第一預(yù)設(shè)條件為:子空間中存在特征幾何基元,或者,子空間中不存在特征幾何基元且子空間與任一約束基元無任何相交部分;
[0027]其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。
[0028]其中,所述根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間包括:
[0029]將滿足第二預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第二預(yù)設(shè)條件為:子空間與任一約束基元無任何相交部分;
[0030]其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。
[0031]其中,當(dāng)所述移動機(jī)器人的運動空間為二維平面時,在執(zhí)行將所述三維空間剖分為多個子空間的步驟之前,還包括:
[0032]根據(jù)所述特征幾何基元和視覺傳感器位姿,計算二維平面方程;
[0033]選取所述特征幾何基元中待投影的特征幾何基元;
[0034]將所述待投影的特征幾何基元和所述視覺傳感器位姿投影到所述二維平面方程對應(yīng)的二維平面,得到二維特征幾何基元、二維視覺傳感器位姿及二維可見約束關(guān)系;
[0035]所述將所述三維空間剖分為多個子空間包括:將所述二維平面剖分為多個平面子空間;
[0036]所述根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間包括:
[0037]根據(jù)所述二維特征幾何基元和/或所述二維可見約束關(guān)系,標(biāo)記出所述平面子空間中的平面障礙物子空間。
[0038]其中,所述方法還包括:
[0039]在所述移動機(jī)器人所處環(huán)境變化時,基于新獲取的圖像信息和所述計算結(jié)果確定出更新的計算結(jié)果及變化的子空間,更新的計算結(jié)果包括:更新的特征幾何基元、更新的可見約束關(guān)系;
[0040]根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出所述變化的子空間中的障礙物子空間。
[0041]另一方面,本發(fā)明相應(yīng)地提出了一種基于視覺的移動機(jī)器人障礙物檢測裝置,包括:
[0042]接收模塊,用于接收視覺傳感器采集的所述移動機(jī)器人所處環(huán)境的圖像信息;
[0043]計算模塊,用于利用同時構(gòu)圖和定位算法對所述接收模塊接收的圖像信息進(jìn)行計算,得到計算結(jié)果;
[0044]處理模塊,根據(jù)所述計算模塊的計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境中的障礙物,
[0045]其中,所述計算結(jié)果包括:所述環(huán)境的特征幾何基元、視覺傳感器位姿和所述特征幾何基元與所述視覺傳感器位姿之間的可見約束關(guān)系。
[0046]其中,所述處理模塊包括:
[0047]空間剖分單元,用于將所述移動機(jī)器人所處環(huán)境的三維空間剖分為多個子空間;
[0048]空間標(biāo)記單元,用于根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述空間剖分單元剖分得到的子空間中的障礙物子空間;
[0049]組合單元,用于組合所述空間標(biāo)記單元標(biāo)記出的障礙物子空間。
[0050]其中,所述空間剖分單元包括:
[0051]規(guī)則網(wǎng)格剖分子單元,用于將所述三維空間剖分為多個尺寸為預(yù)設(shè)值的子空間;
[0052]或者,用于將所述三維空間剖分為多個相同尺寸的子空間,當(dāng)所述子空間的尺寸大于預(yù)設(shè)的尺寸下限值、且所述子空間中包含特征幾何基元時,繼續(xù)剖分所述子空間,否則停止剖分所述子空間。
[0053]其中,所述特征幾何基元包括:特征幾何點、特征幾何點和特征幾何線段;所述空間剖分單元包括:
[0054]不規(guī)則組合結(jié)構(gòu)剖分子單元,用于當(dāng)特征幾何基元均是特征幾何點時,以特征幾何點為頂點,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間;當(dāng)特征幾何基元為特征幾何點和特征幾何線段時,以特征幾何點為頂點,以特征幾何線段為邊,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間。
[0055]其中,所述空間標(biāo)記單元包括:
[0056]第一空間剖分子單元,用于將滿足第一預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第一預(yù)設(shè)條件為:子空間中存在特征幾何基元,或者,子空間中不存在特征幾何基元且子空間與任一約束基元無任何相交部分;
[0057]其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。
[0058]其中,所述空間標(biāo)記單元包括:
[0059]第二空間剖分子單元,用于將滿足第二預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第二預(yù)設(shè)條件為:子空間與任一約束基元無任何相交部分;
[0060]其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。[0061 ] 其中,所述處理模塊還包括:
[0062]平面方程計算單元,用于根據(jù)所述特征幾何基元和視覺傳感器位姿,計算二維平面方程;
[0063]選取單元,用于選取所述特征幾何基元中待投影的特征幾何基元;
[0064]投影單元,用于將所述選取單元選出的待投影的特征幾何基元和視覺傳感器位姿投影到所述二維平面方程對應(yīng)的二維平面,得到二維特征幾何基元、二維視覺傳感器位姿及二維可見約束關(guān)系;
[0065]所述空間剖分單元,還用于:將所述平面方程計算單元計算出的二維平面方程對應(yīng)的二維平面剖分為多個平面子空間;
[0066]所述空間標(biāo)記單元,還用于根據(jù)所述二維特征幾何基元和/或所述二維可見約束關(guān)系,標(biāo)記出所述空間剖分單元剖分的平面子空間中的平面障礙物子空間。
[0067]其中,所述計算模塊還用于:在所述移動機(jī)器人所處環(huán)境變化時,基于新獲取的圖像信息和所述計算結(jié)果確定出更新的計算結(jié)果及變化的子空間,更新的計算結(jié)果包括:更新的特征幾何基元、更新的可見約束關(guān)系;
[0068]所述處理模塊,還用于根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出所述變化的子空間中的障礙物子空間。
[0069]本發(fā)明實施例中,直接利用同時構(gòu)圖和定位算法的計算結(jié)果來檢測移動機(jī)器人所處環(huán)境中的障礙物,與現(xiàn)有的其他相關(guān)檢測方法相比,其運算比較簡單,并且對機(jī)器人的移動空間沒有限定,既適合于機(jī)器人的三維空間移動又適合二維平面移動。
【專利附圖】
【附圖說明】
[0070]本發(fā)明的上述和/或附加的方面和優(yōu)點從結(jié)合下面附圖對實施例的描述中將變得明顯和容易理解,其中:
[0071]圖1是本發(fā)明提供的基于視覺的移動機(jī)器人障礙物檢測方法的第一實施例的流程不意圖;
[0072]圖2是圖1實施例中步驟S13的第一實施例的流程示意圖;
[0073]圖3是本發(fā)明提供的規(guī)則網(wǎng)格的實施例的結(jié)構(gòu)框圖;
[0074]圖4是圖1實施例中步驟S13的第二實施例的流程示意圖;
[0075]圖5是本發(fā)明提供的不規(guī)則組合結(jié)構(gòu)的實施例的示意圖;
[0076]圖6是本發(fā)明提供的基于視覺的移動機(jī)器人障礙物檢測方法的第二實施例的流程不意圖;
[0077]圖7是本發(fā)明提供的約束基元的實施例的示意圖;
[0078]圖8是本發(fā)明提供的約束基元的另一實施例的示意圖;
[0079]圖9是本發(fā)明的基于視覺的移動機(jī)器人障礙物檢測裝置的第一實施例的結(jié)構(gòu)框圖;
[0080]圖10是圖9實施例中處理模塊的第一實施例的結(jié)構(gòu)框圖;
[0081]圖11是圖9實施例中處理模塊的第二實施例的結(jié)構(gòu)框圖;
[0082]圖12是本發(fā)明的基于視覺的移動機(jī)器人障礙物檢測裝置的第二實施例的結(jié)構(gòu)框圖?!揪唧w實施方式】
[0083]為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點,下面結(jié)合附圖和【具體實施方式】f對本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)描述。需要說明的是,在不沖突的情況下,本申請的實施例及實施例中的特征可以相互組合。
[0084]在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來實施,因此,本發(fā)明的保護(hù)范圍并不限于下面公開的具體實施例的限制。
[0085]如圖1所示,是本發(fā)明提供的基于視覺的移動機(jī)器人障礙物檢測方法的第一實施例的流程示意圖,該檢測方法包括:
[0086]步驟S11,接收視覺傳感器采集的移動機(jī)器人所處環(huán)境的圖像信息;
[0087]圖1實施例及以下的方法實施例中,障礙物檢測方法的執(zhí)行主體可以是具有障礙物檢測功能的裝置,例如集成有障礙物檢測功能模塊的移動機(jī)器人。
[0088]此處,對采集移動機(jī)器人所處環(huán)境圖像信息的視覺傳感器沒有類型限制,例如可以是單目攝像機(jī)、雙目攝像機(jī)、全方向反射折射攝像機(jī)或多目全方向攝像機(jī)等。具體在采集圖像信息時,視覺傳感器可以安裝固定在移動機(jī)器人本體上。視覺傳感器采集的圖像信息的格式可以是連續(xù)的照片組或視頻。
[0089]步驟S12,利用同時構(gòu)圖和定位算法對接收的圖像信息進(jìn)行計算,得到計算結(jié)果。
[0090]現(xiàn)有技術(shù)中,常米用Visual-SLAM 算法:(Visual Simultaneous LocalizationAnd Mapping:同時構(gòu)圖和定位)對移動機(jī)器人進(jìn)行定位。具體定位時,移動機(jī)器人首先使用固定在其上的視覺傳感器實時采集所處環(huán)境的圖像信息。在采集的圖像信息中進(jìn)行特征幾何基元的提取和匹配,以及對提取的特征幾何基元和視覺傳感器位姿進(jìn)行三維重建,得到重建的移動機(jī)器人所處環(huán)境的三維空間坐標(biāo),從而實現(xiàn)對移動機(jī)器人的定位。
[0091]與上述現(xiàn)有技術(shù)不同的是,本發(fā)明實施例利用Visual-SLAM算法不是進(jìn)行機(jī)器人定位,而是進(jìn)行障礙物檢測。本發(fā)明實施例具體是利用Visual-SLAM算法來計算視覺傳感器接收的圖像信息,并根據(jù)得到的計算結(jié)果,檢測移動機(jī)器人所處環(huán)境的障礙物。
[0092]此處,利用Visual-SLAM算法來計算視覺傳感器接收的圖像信息,經(jīng)過特征幾何基元提取與匹配、特征幾何基元和視覺傳感器位姿的三維重建、以及重建結(jié)果優(yōu)化等步驟處理之后,得到的計算結(jié)果包括:移動機(jī)器人所處環(huán)境的特征幾何基元和視覺傳感器位姿,還包括特征幾何基元與視覺傳感器位姿之間的可見約束關(guān)系。
[0093]其中,特征幾何基元包括:特征幾何點、特征幾何點和特征幾何線段,其可以用于表征移動機(jī)器人所處環(huán)境三維空間中的點、點和線段。也就是說,特征幾何點可以是三維空間中的一個點,特征幾何線段可以是三維空間中的一條線段。在本發(fā)明的所有方法實施例中,以特征幾何基元包括點、點和線段為例子進(jìn)行說明。而視覺傳感器位姿則用于表征固定在移動機(jī)器人上的視覺傳感器的位置坐標(biāo)和朝向。利用Visual-SLAM算法可以計算出根據(jù)接收的圖像信息所重建的三維空間中的所有特征幾何基元。為方便表述,在圖1及以下的所有方法實施例中,三維空間中包括的所有特征幾何基元可以稱為特征幾何基元集合Q。
[0094]此處,特征幾何基元與視覺傳感器位姿之間的可見約束關(guān)系,該可見約束關(guān)系用于表征某一特征幾何基元與視覺傳感器位姿之間是否可見,若可見,則表明該特征幾何基元與視覺傳感器之間不存在障礙物。此處,根據(jù)接收的圖像信息,可以計算出機(jī)器人所處環(huán)境三維空間中特征幾何基元集合Q與視覺傳感器位姿的所有可見約束關(guān)系。
[0095]需要說明的是,關(guān)于特征幾何基元提取與匹配、特征幾何基元和視覺傳感器位姿的三維重建、以及重建結(jié)果優(yōu)化等步驟的具體處理方式,可以采用現(xiàn)有中的任何一種方式,在此不再贅述。
[0096]步驟S13,根據(jù)計算結(jié)果,檢測移動機(jī)器人所處環(huán)境中的障礙物。
[0097]在執(zhí)行步驟S13時,具體是利用步驟S12中的計算結(jié)果來檢測移動機(jī)器人所處環(huán)境中的障礙物。
[0098]本發(fā)明實施例中,由于是利用Visual-SLAM算法來計算視覺傳感器接收的圖像信息,并能夠根據(jù)得到的計算結(jié)果直接檢測出機(jī)器人所處環(huán)境的障礙物,因此與傳統(tǒng)的機(jī)器人障礙物檢測方法相比,其運算比較簡單。其次,利用該算法得到的計算結(jié)果來檢測機(jī)器人所處環(huán)境的障礙物時,對機(jī)器人的移動空間沒有限定,既適合于機(jī)器人的三維空間移動又適合二維平面移動。并且該檢測方法在獲取機(jī)器人所處環(huán)境的圖像信息時,對視覺傳感器的類型沒有任何限定。
[0099]在圖1實施例的步驟S13中,根據(jù)計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境的障礙物的處理過程,在具體執(zhí)行時,可以采用圖2所示的方法,包括:
[0100]步驟S21,采用規(guī)則網(wǎng)格方式將所述移動機(jī)器人所處環(huán)境的三維空間剖分為多個子空間。
[0101]此處,在對三維空間進(jìn)行剖分時,可以采用規(guī)則網(wǎng)格或不規(guī)則組合結(jié)構(gòu)兩種方式來剖分移動機(jī)器人當(dāng)前所處環(huán)境的三維空間。下面,將詳細(xì)講述采用規(guī)則網(wǎng)格來剖分三維空間的具體過程。
[0102]請參見圖3,是采用規(guī)則網(wǎng)格剖分三維空間的示意圖。在采用規(guī)則網(wǎng)格對移動機(jī)器人當(dāng)前所處環(huán)境的三維空間進(jìn)行剖分時,又可以有兩種方式,一種是均一網(wǎng)格,另一種是自適應(yīng)網(wǎng)格,下面將分別介紹采用均一網(wǎng)格和自適應(yīng)網(wǎng)格剖分三維空間的過程。
[0103](I)采用均一網(wǎng)格剖分三維空間的過程可以為:將三維空間剖分為多個尺寸為預(yù)設(shè)值的子空間,進(jìn)而把移動機(jī)器人所述環(huán)境的三維空間剖分為多個相同尺寸的子空間,如剖分成包括多個長方體和/或正方體的子空間。也就是說,經(jīng)過剖分后的三維空間可以被看成為一個包括多個長方體和/或正方體的子空間集合D。此處,該預(yù)設(shè)值的設(shè)定方式例如可以是:預(yù)設(shè)值為視覺傳感器位姿的平均值與一常量的乘積。
[0104](2)采用自適應(yīng)網(wǎng)絡(luò)剖分三維空間的過程可以為:將三維空間剖分為多個相同尺寸的子空間,當(dāng)子空間的尺寸大于預(yù)設(shè)的尺寸下限值、且子空間中包含特征幾何基元時,繼續(xù)剖分子空間,否則停止剖分子空間。
[0105]具體實現(xiàn)中,在建立自適應(yīng)網(wǎng)格時,需要首先定義最小子空間的尺寸,即尺寸下限值,然后根據(jù)特征幾何基元的分布狀況逐步將三維空間剖分為大小不一的多個子空間。
[0106]剖分三維空間的具體過程例如可以是:將三維空間剖分為η個相同尺寸的子空間,比如η = 2,4,8等。對于每一個子空間,在其尺寸大于預(yù)設(shè)的尺寸下限值,即子空間的尺寸大于最小子空間的尺寸時,還判斷該子空間是否包含至少一個特征幾何基元,若包括,則將其繼續(xù)剖分為η個相同尺寸的子空間;如果該子空間不包含特征幾何基元,則停止對該子空間進(jìn)行剖分;如果該子空間達(dá)到或小于預(yù)設(shè)的尺寸下限值,則不對其進(jìn)行繼續(xù)剖分。依此類推,直至無任何子空間可以繼續(xù)剖分為止。經(jīng)過剖分后的三維空間可以被看成包括多個長方體和/或正方體的子空間集合D。
[0107]步驟S22,根據(jù)特征幾何基元和/或可見約束關(guān)系,標(biāo)記出子空間中的障礙物子空間。
[0108]步驟S23,組合步驟S22中標(biāo)記出的障礙物子空間。
[0109]由于在將三維空間剖分為多個子空間時,采用規(guī)則網(wǎng)格的剖分方式。那么相應(yīng)地,在執(zhí)行步驟S22-步驟S23中,即在標(biāo)記出子空間中的障礙物子空間時,具體過程如下:
[0110]將滿足第一預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間。該第一預(yù)設(shè)條件可以為:該子空間中存在特征幾何基元,或者該子空間中不存在特征幾何基元且子空間與任一約束基元無任何相交部分。其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。也就是說,約束基元是特征幾何基元、特征幾何基元和視覺傳感器位姿的可見約束關(guān)系共同決定的。比如,假設(shè)特征幾何基元是點,那么該點與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的約束基元就是一條線段。假設(shè)特征幾何基元是線段,那么該線段與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的約束基元就是一個三角形。
[0111]由于采用均一網(wǎng)格或自適應(yīng)網(wǎng)格對三維空間進(jìn)行剖分之后,該三維空間可以被看成為包括多個正方體和/或長方體的子空間集合D。對于D中的任意一個子空間d,假如d包含特征幾何基元,則標(biāo)記d為障礙物子空間。當(dāng)d不包含特征幾何基元時,則進(jìn)一步判斷d與約束基元是否相交,若d與任何約束基元都不相交,或者說d與任何約束基元都沒有相交部分,則標(biāo)記d為障礙物子空間。反之,若判斷d與至少一個約束基元相交,則標(biāo)記d為自由子空間。
[0112]在使用上述第一預(yù)設(shè)條件標(biāo)記出子空間中的障礙物子空間之后,將所有標(biāo)記為障礙物子空間的子空間進(jìn)行組合,形成移動機(jī)器人所處環(huán)境的障礙物空間。將所有標(biāo)記為自由子空間的子空間進(jìn)行組合,形成移動機(jī)器人所處環(huán)境的自由空間。在檢測出移動機(jī)器人所處環(huán)境的自由空間和障礙物空間后,移動機(jī)器人即可在自由空間中規(guī)劃出合理的移動路徑,從而完成自王運動。
[0113]在圖1實施例的步驟S13中,根據(jù)計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境的障礙物的處理過程,在具體執(zhí)行時,還可以采用圖4所示的方法,包括:
[0114]步驟S41:采用不規(guī)則組合結(jié)構(gòu)方式將所述移動機(jī)器人所處環(huán)境的三維空間剖分為多個子空間。
[0115]本發(fā)明中,在對三維空間進(jìn)行剖分時,可以采用規(guī)則網(wǎng)格或不規(guī)則組合結(jié)構(gòu)兩種方式來剖分移動機(jī)器人當(dāng)前所處環(huán)境的三維空間。本實施例中將描述采用不規(guī)則組合結(jié)構(gòu)方式剖分三維空間的具體過程。
[0116]請參見圖5,是采用不規(guī)則組合結(jié)構(gòu)剖分三維空間的示意圖。在采用不規(guī)則組合結(jié)構(gòu)對三維空間進(jìn)行剖分時,根據(jù)特征幾何基元的不同類型,可以分為如下兩種剖分方式:
[0117](I)當(dāng)采用同時構(gòu)圖和定位算法計算出的特征幾何基元均是點時,則以點為頂點,建立不規(guī)則組合結(jié)構(gòu),將整個三維空間剖分為許多不規(guī)則的多面體。也就是說,經(jīng)過剖分后的三維空間可以被看成為包含多個不規(guī)則多面體的子空間集合D。
[0118](2)當(dāng)采用同時構(gòu)圖和定位算法計算出的特征幾何基元包括包含點和線段時,則以點為頂點,以線段為邊,建立不規(guī)則組合結(jié)構(gòu),利用該不規(guī)則組合結(jié)構(gòu)將整個三維空間剖分為許多不規(guī)則的多面體。也就是說,經(jīng)過剖分后的三維空間可以被看成為包括多個不規(guī)則多面體的子空間集合D。
[0119]步驟S42,根據(jù)特征幾何基元和/或可見約束關(guān)系,標(biāo)記出子空間中的障礙物子空間。
[0120]步驟S43,組合步驟S42中標(biāo)記出的障礙物子空間。
[0121]由于在將三維空間剖分為多個子空間時,采用不規(guī)則組合結(jié)構(gòu)的剖分方式。那么相應(yīng)地,在執(zhí)行步驟S42-步驟S43時,即在標(biāo)記出子空間中的障礙物子空間時,具體過程如下:
[0122]將滿足第二預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第二預(yù)設(shè)條件為:子空間與任一約束基元無任何相交部分;其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。也就是說,約束基元是特征幾何基元、特征幾何基元和視覺傳感器位姿的可見約束關(guān)系共同決定的。比如,假設(shè)特征幾何基元是點,那么該點與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的約束基元就是一條線段。假設(shè)特征幾何基元是線段,那么該線段與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的約束基元就是一個三角形。
[0123]在采用不規(guī)則組合結(jié)構(gòu)對三維空間進(jìn)行剖分之后,整個三維空間都可以被看成為包括多個不規(guī)則多面體的子空間集合D。對于D中任意一個子空間,假如這個子空間與所有的約束基元都不相交,或者說該子空間與任一約束基元無任何相交部分,那么該子空間就被標(biāo)記為障礙物子空間。假如這個子空間與至少一個約束基元相交,那么這個子空間就被標(biāo)記為自由子空間。
[0124]此處,可以將所有標(biāo)記為障礙物子空間的子空間進(jìn)行組合,形成移動機(jī)器人所處環(huán)境的障礙物空間。將所有標(biāo)記為自由子空間的子空間進(jìn)行組合,形成移動機(jī)器人所處環(huán)境的自由空間。在檢測出移動機(jī)器人所處環(huán)境的自由空間和障礙物空間后,移動機(jī)器人即可在自由空間中規(guī)劃出合理的移動路徑,從而完成自主運動。
[0125]在機(jī)器人的運動區(qū)域僅限于二維平面的情況下,為減小運算復(fù)雜度,還可以采用圖6提出的基于視覺的移動機(jī)器人障礙物檢測方法,該方法主要應(yīng)用于移動機(jī)器人在二維平面運動的場景。
[0126]如圖6所示,是本發(fā)明提供的基于視覺的移動機(jī)器人障礙物檢測方法的第二實施例的流程示意圖,所述方法具體包括:
[0127]與圖1實施例中步驟Sll和S12類似的步驟S61和S62,在執(zhí)行將所述三維空間剖分為多個子空間之前還包括:
[0128]步驟S63,根據(jù)所述特征幾何基元和視覺傳感器位姿,計算所述二維平面區(qū)域的二維平面方程。
[0129]此處,具體實現(xiàn)時可先根據(jù)任意三個視覺傳感器位姿,計算出多個二維平面方程,然后再計算所有視覺傳感器位姿與計算出的多個二維平面方程對應(yīng)二維平面的距離平方之和。多次重復(fù)執(zhí)行上述兩個步驟,得到多個距離平方之和,最后選擇多個距離平方之和中的最小值,并將該最小值對應(yīng)的二維平面方程作為最終的二維平面方程。關(guān)于如何計算距離平方之和的方法,可以采用現(xiàn)有中的方式,在此不贅述。當(dāng)然,視覺傳感器的類型不同,計算距離平方之和時,選擇的方法也可能不同。
[0130]步驟S64,選取所述特征幾何基元中待投影的特征幾何基元。
[0131]此處,在將計算得到的特征幾何基元投影到二維平面之前,并不是將所有的特征幾何基元都投射到二維平面,還需要選取出需要投影的特征幾何基元。選取原則可以是:先計算特征幾何基元在特定方向上的分量值,若分量值大于預(yù)設(shè)的上限閾值且小于預(yù)設(shè)的下限閾值,則將該特征幾何基元映射到二維平面。此處該特定方向可以為:垂直于二維平面且朝上的方向。
[0132]具體實現(xiàn)時,選取待投影的特征幾何基元的方式可以是:
[0133]首先設(shè)定一個下限閥值el和一個上限閥值e2,之后根據(jù)el和e2來選取特征幾何基元。假設(shè)k為地面的垂直向量且朝向天空,對于任何一個特征幾何基元,計算其所有頂點在k上的分量,如果有一個以上的頂點在k上的分量低于el或高于e2,則該特征幾何基元將不被選取。下限閥值el的大小取決于Visual-SLAM三維重建誤差范圍,其目的是:使大多數(shù)屬于二維平面的特征幾何基元均不被選取。其中,下限閥值el可以設(shè)定為視覺傳感器與二維平面之間的距離。上限閥值e2的選取取決于應(yīng)用場景為室內(nèi)還是室外,目的是使屬于天空或天花板的特征幾何基元不被選取,如可以將上限閥值e2設(shè)定為:視覺傳感器與二維平面的距離的η倍。
[0134]步驟S65,將待投影的特征幾何基元和視覺傳感器位姿投影到二維平面方程對應(yīng)的二維平面,得到二維特征幾何基元、二維視覺傳感器位姿及二維可見約束關(guān)系。
[0135]將選取得到的待投影的特征幾何基元投影到二維平面,即可以得到待投影的特征幾何基元在二維平面上的投影,在此可以稱為二維特征幾何基元。同時由于將所有視覺傳感器位姿也投影到二維平面,即可以得到視覺傳感器位姿在二維平面上的投影,在此可以稱為二維視覺傳感器位姿。相應(yīng)地,也就將特征幾何基元所對應(yīng)的約束基元也同樣投影到了二維平面上,進(jìn)而得到了二維特征幾何基元與二維視覺傳感器位姿之間的可見約束關(guān)系,即二維可見約束關(guān)系。相應(yīng)地,也會得到二維約束基元。該二維約束基元是:二維特征幾何基元與與其存在可見約束關(guān)系的二維視覺傳感器位姿共同組成的基元。
[0136]由于將特征幾何基元和視覺傳感器位姿進(jìn)行了投影,那么在執(zhí)行所述將所述三維空間剖分為多個子空間時,則采用步驟S66的方式執(zhí)行:
[0137]步驟S66,將在步驟S63中計算的二維平面方程對應(yīng)的二維平面剖分為多個子空間。
[0138]此處,將二維平面剖分為多個平面子空間的方式與將三維空間剖分為多個子空間的方式類似,即可以采用規(guī)則網(wǎng)格方式或不規(guī)則組合結(jié)構(gòu)二維將二維平面剖分為多個平面子空間。
[0139]采用規(guī)則網(wǎng)絡(luò)方式如均一網(wǎng)格或自適應(yīng)網(wǎng)格對二維平面進(jìn)行剖分之后,該剖分后的二維平面可以看成是包含多個正方形和/或長方形的平面子空間的集合。
[0140]采用不規(guī)則組合結(jié)構(gòu)將平面剖分為多個平面子空間時,由于二維幾何特征基元包括點、點和線段,那么在剖分時,例如可以使用點作為頂點建立三角形剖分,或者使用點作為頂點,使用線段作為邊,建立約束三角形剖分。采用上述兩種方式剖分后的二維平面可以看成是包含多個多邊形的平面子空間的集合。
[0141]步驟S67,根據(jù)所述二維特征幾何基元和/或所述二維可見約束關(guān)系,標(biāo)記出所述平面子空間中的平面障礙物子空間。
[0142]在采用規(guī)則網(wǎng)格剖分二維平面的情況下,在標(biāo)記平面子空間中的平面障礙物子空間時,具體過程為:如果一個平面子空間包含至少一個二維特征幾何基元,則將該平面子空間被標(biāo)記為平面障礙物子空間;當(dāng)一個平面子空間不包含任何二維特征幾何基元且該平面子空間與任何二維約束基元均沒有相交部分,則該平面子空間被標(biāo)記為障礙物子空間,反之如果該平面子空間與至少一個二維約束基元相交,則該平面子空間被標(biāo)記為自由平面子空間。其中,二維約束基元為:二維特征幾何基元與與其存在可見約束關(guān)系的二維視覺傳感器位姿共同組成的基元。
[0143]在采用不規(guī)則組合結(jié)構(gòu)剖分二維平面的情況下,在標(biāo)記平面子空間中的平面障礙物子空間時,具體過程為:如果一個平面子空間與至少一個二維約束基元相交,則該平面子空間被標(biāo)記為自由平面子空間;如果一個平面子空間與任何二維約束基元都不相交,則該平面子空間被標(biāo)記為平面障礙物子空間。
[0144]步驟S68,組合標(biāo)記為平面障礙物子空間的平面子空間。
[0145]本步驟中,組合所有標(biāo)記為自由平面子空間的平面子空間,形成二維平面的自由空間,組合所有標(biāo)記為平面障礙物子空間的平面子空間,形成二維平面中的障礙物,移動機(jī)器人便可該二維平面的自由空間中設(shè)計出移動路徑。
[0146]本發(fā)明實施例中,當(dāng)移動機(jī)器人的平面僅限于二維平面時,便可先將計算結(jié)果投影到移動機(jī)器人所運動的二維平面,然后再進(jìn)行二維平面剖分與障礙物標(biāo)記,從而檢測出二維平面空間中的障礙物。和三維空間剖分與障礙物標(biāo)記相比,此種方式的計算復(fù)雜度更低。
[0147]圖1-6所示的實施例中,移動機(jī)器人在移動時,不論移動機(jī)器人的運動空間是三維空間還是二維平面,其所處的環(huán)境都是變化的,因此基于視覺傳感器的障礙物檢測方法實質(zhì)是一個實時的、不斷循環(huán)的過程,移動機(jī)器人所處環(huán)境不斷更新,相應(yīng)地計算結(jié)果也會不斷更新,因而需要根據(jù)更新的計算結(jié)果標(biāo)記出更新的子自由空間和障礙物子空間。在標(biāo)記更新的自由子空間和障礙物子空間時,可以采用全局性更新和連續(xù)性更新兩種方式。
[0148]此處,全局性更新的原理是=T1和T2為前后相鄰兩個時刻,在更新時不依賴于上一時刻Tl的計算結(jié)果,而是直接使用當(dāng)前時刻T2的計算結(jié)果對機(jī)器人所處環(huán)境進(jìn)行重新剖分與重新標(biāo)記,從而得到更新的自由空間和障礙物空間,檢測出當(dāng)前時刻機(jī)器人所處環(huán)境的障礙物。此種全局性更新的方式所需的計算量會隨時間逐漸增大,因此無法保證實時性。
[0149]此處,連續(xù)性更新的原理是=T1和T2為前后相鄰兩個時刻,在更新時利用上一時刻T1的計算結(jié)果,并將當(dāng)前時刻T2的計算結(jié)果與上一時刻T1的計算結(jié)果進(jìn)行比較,確定出在當(dāng)前時刻T2更新的計算結(jié)果和發(fā)生變化的子空間。其中,更新的計算結(jié)果包括更新的特征幾何基元、更新的視覺傳感器位姿及更新的可見約束關(guān)系。此處,發(fā)生變化的子空間可能是:標(biāo)記狀態(tài)發(fā)生變化的子空間,也可能是標(biāo)記狀態(tài)和剖分狀態(tài)都發(fā)生變化的子空間。當(dāng)變化的子空間僅標(biāo)記狀態(tài)發(fā)生變化時,則根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出所述變化的子空間中的障礙物子空間;當(dāng)變化的子空間剖分狀態(tài)和標(biāo)記狀態(tài)都發(fā)生變化時,則根據(jù)更新的特征幾何基元和/或更新的可見約束關(guān)系,對發(fā)生變化的子空間進(jìn)行重新剖分與標(biāo)記,因此采用連續(xù)性更新時,所需的時間基本不變,因此能保證實時性。[0150]下面,將分別描述采用規(guī)則網(wǎng)格方式剖分三維空間時的連續(xù)性更新方法和采用不規(guī)則組合結(jié)構(gòu)剖分三維空間時的連續(xù)性更新方法。
[0151](I)采用規(guī)則網(wǎng)格方式剖分三維空間時的連續(xù)性更新方法
[0152]移動機(jī)器人在移動的過程中,當(dāng)采用均一網(wǎng)格方式剖分三維空間時,移動機(jī)器人在移動的過程中,剖分的子空間結(jié)構(gòu)不會發(fā)生變化,即該子空間的剖分狀態(tài)不會發(fā)生變化,但是由于三維空間中的特征幾何基元可能發(fā)生變化或增加,因此相應(yīng)的特征可見約束關(guān)系也會相應(yīng)更新,該子空間的標(biāo)記狀態(tài)可能發(fā)生變化。此時只需要根據(jù)更新的特征幾何基元和/或更新的可見約束關(guān)系,重新標(biāo)記出所述剖分的子空間中的障礙物子空間。
[0153]當(dāng)使用自適應(yīng)網(wǎng)絡(luò)方式剖分三維空間時,假設(shè)T1和T2為前后相鄰兩個時刻,從上一時刻T1到當(dāng)前時刻T2,特征幾何基元有所增加,也就是說特征幾何基元有更新。那么,相應(yīng)地,對應(yīng)的可見約束關(guān)系也會有更新。并且,對于上一時刻T1到當(dāng)前時刻T2的增加的特征幾何基元,則需要判斷包含該增加的特征幾何基元的子空間的剖分狀態(tài)是否發(fā)生變化,若判斷結(jié)果為是,即該子空間的剖分狀態(tài)發(fā)生變化,則需要對發(fā)生變化的子空間進(jìn)行重新剖分。由于該子空間的剖分狀態(tài)發(fā)生變化,相應(yīng)地,其標(biāo)記狀態(tài)也會發(fā)生變化。在對該變化的子空間進(jìn)行重新剖分之后,則需要對根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出重新剖分的子空間中的障礙物子空間。
[0154](2)采用不規(guī)則組合結(jié)構(gòu)方式剖分三維空間時的連續(xù)性更新方法
[0155]具體實現(xiàn)時,假設(shè)時刻T1和T2為前后相鄰兩個時刻,Qtl和Qt2分別是截止T1和T2兩個時刻利用Visual-SLAM計算所獲得的所有特征幾何基元的集合。由于T1時刻的空間剖分狀態(tài)和標(biāo)記狀態(tài)已知,那么在T2時刻,子空間的剖分狀態(tài)和標(biāo)記狀態(tài)均可能發(fā)生變化,此時則需要更新子空間的剖分狀態(tài)和標(biāo)記狀態(tài)。
[0156]由于Qt2是Qtl的延續(xù),因而Qt2包含了大部分Qtl的特征幾何基元。這些從T1時刻到T2時刻坐標(biāo)沒有發(fā)生任何變化或者變化較小(比如小于一個閥值)的特征幾何基元集合被標(biāo)記為Qo。Qtl中剩下的特征幾何基元是經(jīng)過光束調(diào)整優(yōu)化后被判定為離群值的特征幾何基元,這些特征幾何基元的集合被標(biāo)記為Qd。同時,Qt2增加了一些T2時刻的新的特征幾何基元,這些基元是T2時刻重建的新的基元,或者是某些T1時刻的基元經(jīng)過光束調(diào)整優(yōu)化后三維坐標(biāo)變化較大(比如大于一個閥值)的基元。這兩類基元集合均被標(biāo)記為Qn。其中,Qd和Qo組成了 Qtl,Qn和Qo組成了 Qt2。特征幾何基元的集合更新具體為:從T2時刻的集合中剔除集合Qd,然后向剩下的集合中加入Qn。
[0157]假設(shè)T2時刻的子空間集合為{Do,Dn},其中,Do為T1到T2時刻,坐標(biāo)和結(jié)構(gòu)未發(fā)生任何變化的子空間集合,Dn為新的子空間集合。此外,還有一些子空間存在于T1時刻但不存在于T2時刻,標(biāo)記為Dd,這些子空間也可以稱為在T2時刻被摧毀的子空間。這些子空間被摧毀的原因是由于新的特征幾何基元被加入進(jìn)來后,如果這個新的特征幾何基元處于某一子空間內(nèi),則此子空間將被摧毀,新的頂點和被摧毀子空間的頂點重新組合形成新的子空間。此時,Do和Dd組成了 T1時刻的子空間集合,Do和Dn組成了 T2時刻的子空間集
口 ο
[0158]此處,定義函數(shù)f(D,Q)為D和Q的相交關(guān)系函數(shù)。這里,假設(shè)D是一個子空間的集合,Q是一個特征幾何基元的集合。f (D,Q)是D中所有子空間與Q中所有特征幾何基元所對應(yīng)的約束基元之間的相交關(guān)系集合。假設(shè)Q = {qi I i = 1..η}為特征幾何基元集合,C={c j I j = 1..m}是視覺傳感器位姿的集合,V = {vij I i e 1..n, j e 1..m}。vij 代表 qi點與cj可見。前文所述,一個可見約束關(guān)系vij表示一個特征幾何基元qi與一個視覺傳感器位姿Cj之間可見,即qi與Cj之間不存在障礙物。稱以qi中的所有頂點和Cj作為頂點組成的特征幾何基元為qi的約束基元。每一個可見約束關(guān)系約束Vij均對應(yīng)一個約束基元。具體來說,當(dāng)qi是一個點時,它的約束基元是以qi,cj為端點的線段,如圖7所示;當(dāng)qi是一條線段時,它的約束基元是以qi的兩個端點和Cj作為頂點的三角形,如圖8所
/Jn ο
[0159]已知T1時刻的空間標(biāo)記,也就是說已知f (Do7Qo), f (Do7Qd), f (Dd7Qo), f (Dd7Qd)。需要計算t2時刻的自由子空間標(biāo)記,也就是說我們需要計算f(Do,Qo),f(Do, Qn),f(Dn,Qo), f (Dn, Qn) ? f (Do, Qo)為已知,無需計算。
[0160]f(Dn, Qn)和f(Do,Qn)的計算需要判斷Qn所對應(yīng)的所有約束基元與T2時刻所有子空間的可見約束關(guān)系。它們的計算可以使用區(qū)域增長的方法降低復(fù)雜度。例如,假設(shè)是qi是Qn中的任意一員,qi與一個視覺傳感器位姿cj組成一個約束基元qicj。首先找到任意一個與qi相交的子空間dO,例如包含cj的子空間,并計算dO的相鄰子空間中與qicj相交的子空間,再從這些子空間開始繼續(xù)尋找它們相鄰子空間中與qicj的相交的子空間,依次類推,直至無任何子空間與qicj相交。
[0161]為計算f (Dn,Qo),可以使用所有QO和上文所述的區(qū)域增長的方法。但是這樣做的結(jié)果是使用了 T2時刻的所有的可見約束關(guān)系進(jìn)行計算,其結(jié)果和全局性更新方法完全相同,其計算時間會隨著Qt2的增大而增大。為避免這種情況,我們使用f(Dd,Qo) U f(Dd,Qd)的結(jié)果來代替f(Dn,Qo)。實際上,這個代替是可行的。因為T2時刻新增加的子空間集合Dn分為兩個部分。一部分Dn是以T2時刻完全以新增加的特征幾何基元Qn為頂點或邊形成的子空間。正常情況下, 這些子空間與Qo所對應(yīng)的約束基元不相交。另一部分Dn是以Qd的所有頂點,與新的特征幾何基元重新形成的子空間。因此這部分子空間與Qo的相交關(guān)系函數(shù) f(Dn,Qo)實際上與 f(Dd,Qo) U f(Dd,Qd)完全一樣,即 f (Dn,Qo) = f (Dd,Qo) U f (Dd,Qd)。如此,便可利用T1時刻的計算結(jié)果及空間剖分及標(biāo)記狀態(tài),重新標(biāo)記出所述變化的子空間中的障礙物子空間,進(jìn)而檢測出T2時刻機(jī)器人所處環(huán)境的障礙物,從而完成移動機(jī)器人所處環(huán)境的障礙物更新。
[0162]需要說明的是,當(dāng)移動機(jī)器人所處的二維平面更新時,相應(yīng)地計算結(jié)果也會不斷更新,因而需要根據(jù)更新的計算結(jié)果不斷更新二維平面中的平面自由子空間和平面障礙物子空間。
[0163]如前文所述,更新包括全局性更新和連續(xù)性更新兩種方式。不論采用不規(guī)則組合結(jié)構(gòu)還是使用規(guī)則網(wǎng)格剖分二維平面,二維平面情況下的更新原理和三維空間情況下的更新原理完全一致。不同的是,在二維平面情況下需要標(biāo)記的平面子空間是不規(guī)則的多邊形、長方形或正方形,而在三維空間的情況下,需要標(biāo)記的子空間是不規(guī)則多面體、長方體或正方體。同理,在二維平面情況下,用來做標(biāo)記的約束基元是由投影在二維平面上的二維特征幾何基元與二維視覺傳感器位姿所組成的,而在三維空間情況下,用來做標(biāo)記的約束基元是特征幾何基元與視覺傳感器位姿所組成的。
[0164]圖1-圖8是詳細(xì)介紹了基于視覺的移動機(jī)器人障礙物的檢測方法,下面結(jié)合圖9-圖12,對采用該圖1-圖8所示的檢測方法進(jìn)行移動機(jī)器人障礙物檢測的裝置進(jìn)行詳細(xì)介紹,為說明書版面的簡潔性,裝置中所涉及的一些術(shù)語的基本概念,可參照方法實施例中的解釋。本發(fā)明基于視覺的移動機(jī)器人障礙物檢測裝置,例如可以是移動機(jī)器人。
[0165]請參考圖9,是本發(fā)明提供的一種基于視覺的移動機(jī)器人障礙物檢測裝置的第一實施例的結(jié)構(gòu)框圖,該裝置包括:接收模塊91、計算模塊92及處理模塊93。
[0166]此處,接收模塊91用于接收視覺傳感器采集的移動機(jī)器人所處環(huán)境的圖像信息;計算模塊92,用于利用同時構(gòu)圖和定位算法對接收模塊91接收的圖像信息進(jìn)行計算,得到計算結(jié)果;處理模塊93,根據(jù)計算模塊92的計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境中的障礙物,
[0167]其中,和方法實施例類似的,圖9及以下的裝置實施例中,在采集移動機(jī)器人所處環(huán)境的圖像信息時,對視覺傳感器的類型沒有限制,例如可以是單目攝像機(jī)、雙目攝像機(jī)、全方向反射折射攝像機(jī)或多目全方向攝像機(jī)等。具體在采集圖像信息時,視覺傳感器可以安裝固定在移動機(jī)器人本體上。視覺傳感器采集的圖像信息的格式可以是連續(xù)的照片組或視頻。
[0168]此處,計算模塊92所得的計算結(jié)果包括:移動機(jī)器人所處環(huán)境的特征幾何基元、視覺傳感器位姿和所述特征幾何基元與視覺傳感器位姿之間的可見約束關(guān)系。
[0169]其中,特征幾何基元包括:特征幾何點、特征幾何點和特征幾何線段,其可以用于表征移動機(jī)器人所處環(huán)境三維空間中的點、點和線段。也就是說,特征幾何點可以是三維空間中的一個點,特征幾何線段可以是三維空間中的一條線段。在本發(fā)明的所有裝置實施例中,以特征幾何基元包括點、點和線段為例子進(jìn)行說明。
[0170]關(guān)于視覺傳感器位姿及可見約束關(guān)系的含義及作用,可以參考圖1所示的方法實施例。
[0171]本發(fā)明實施例中,由于計算模塊92是利用Vi sual-SLAM算法來計算視覺傳感器接收的圖像信息,且處理模塊93能夠根據(jù)計算模塊92得到的計算結(jié)果直接檢測出機(jī)器人所處環(huán)境的障礙物,因此與傳統(tǒng)的機(jī)器人障礙物檢測裝置相比,其運算比較簡單。其次,利用該計算模塊92得到的計算結(jié)果來檢測機(jī)器人所處環(huán)境的障礙物時,對機(jī)器人的移動空間沒有限定,既適合于機(jī)器人的三維空間移動又適合二維平面移動。
[0172]請參考圖10,是圖9中處理模塊93的第一實施例的結(jié)構(gòu)框圖。處理模塊93具體包括:空間剖分單元931、空間標(biāo)記單元932、及組合單元933。
[0173]此處,處理模塊93在檢測移動機(jī)器人所述環(huán)境的障礙物時,首先需要利用空間剖分單元931對移動機(jī)器人所處環(huán)境的三維空間進(jìn)行剖分,以將移動機(jī)器人所處環(huán)境的三維空間剖分為多個子空間。然后再利用空間標(biāo)記單元932,標(biāo)記出空間剖分單元931剖分的多個子空間中的障礙物子空間??臻g標(biāo)記單元932在具體標(biāo)記時,具體是利用計算模塊92計算得到的特征幾何基元和/或所述可見約束關(guān)系來進(jìn)行空間標(biāo)記的。最后,通過組合單元933,即可對空間標(biāo)記單元932標(biāo)記出的障礙物子空間進(jìn)行組合,形成移動機(jī)器人所處三維空間中的檢測物。
[0174]由于空間剖分單元931在進(jìn)行三維空間剖分時,可以采用規(guī)則網(wǎng)格或不規(guī)則組合結(jié)構(gòu)兩種方式,相應(yīng)地空間剖分單元931的結(jié)構(gòu)也有兩種,相應(yīng)的,空間標(biāo)記單元932的結(jié)構(gòu)也有不同。
[0175]請參考圖11,是圖9中處理模塊93的第二實施例的結(jié)構(gòu)框圖。[0176]本發(fā)明實施例與圖10所示實施例的區(qū)別在于:
[0177]空間剖分單元931具體包括:規(guī)則網(wǎng)格剖分子單元9311和不規(guī)則組合結(jié)構(gòu)剖分子單元9312 ;空間標(biāo)記單元932具體包括:第一空間標(biāo)記子單元9321和第二空間標(biāo)記子單元9322。
[0178]下面將分別描述各子單元的具體作用。
[0179]規(guī)則網(wǎng)格剖分子單元9311對移動機(jī)器人當(dāng)前所處環(huán)境的三維空間進(jìn)行剖分時,又可以有兩種方式,一種是均一網(wǎng)格,另一種是自適應(yīng)網(wǎng)格,下面將分別介紹采用均一網(wǎng)格和自適應(yīng)網(wǎng)格剖分三維空間的過程。
[0180]當(dāng)采用均一網(wǎng)格剖分三維空間時,規(guī)則網(wǎng)格剖分子單元9311用于將所述三維空間剖分為多個尺寸為預(yù)設(shè)值的子空間,進(jìn)而把移動機(jī)器人所述環(huán)境的三維空間剖分為多個相同尺寸的子空間,如剖分成包括多個長方體和/或正方體的子空間。也就是說,經(jīng)過剖分后的三維空間可以被看成為一個包括多個長方體和/或正方體的子空間集合D。此處,該預(yù)設(shè)值的定義方式例如可以是:預(yù)設(shè)值設(shè)定為視覺傳感器位姿的平均值與一常量的乘積。
[0181]當(dāng)采用自適應(yīng)網(wǎng)格剖分三維空間時,規(guī)則網(wǎng)格剖分子單元9311用于將所述三維空間剖分為多個相同尺寸的子空間,當(dāng)所述子空間的尺寸大于預(yù)設(shè)的尺寸下限值、且所述子空間中包含特征幾何基元時,則繼續(xù)剖分所述子空間,否則停止剖分所述子空間。
[0182]具體實現(xiàn)中,在建立自適應(yīng)網(wǎng)格時,需要首先定義最小子空間的尺寸,即尺寸下限值,然后根據(jù)特征幾何基元的分布狀況逐步將三維空間剖分為大小不一的多個子空間。
[0183]規(guī)則網(wǎng)格剖分子單元9311剖分三維空間的具體過程可以是:將三維空間剖分為η個相同尺寸的子空間,比如η = 2,4,8等。對于每一個子空間,在其尺寸大于預(yù)設(shè)的尺寸下限值,即子空間的尺寸大于最小子空間的尺寸時,規(guī)則網(wǎng)格剖分子單元9311還判斷該子空間是否包含至少一個特征幾何基元,若包括,則將其繼續(xù)剖分為η個相同尺寸的子空間;如果其不包含特征幾何基元,則停止對該子空間進(jìn)行剖分;如果該子空間達(dá)到或小于預(yù)設(shè)的尺寸下限值,則不對其進(jìn)行繼續(xù)剖分。依此類推,直至無任何子空間可以繼續(xù)剖分為止。經(jīng)過剖分后的三維空間可以被看成包括多個長方體和/或正方體的子空間集合D。
[0184]當(dāng)采用不規(guī)則組合結(jié)構(gòu)剖分三維空間時,不規(guī)則組合結(jié)構(gòu)剖分子單元9312根據(jù)基于特征幾何元的不同類型,可以分為如下兩種剖分方式:
[0185]當(dāng)特征幾何基元均是點時,不規(guī)則組合結(jié)構(gòu)剖分子單元9312以點為頂點,建立不規(guī)則組合結(jié)構(gòu),將整個三維空間剖分為許多不規(guī)則的多面體。也就是說,經(jīng)過剖分后的三維空間可以被看成為一個不規(guī)則多面體的子空間集合D。
[0186]當(dāng)特征幾何基元包括點和線段時,不規(guī)則組合結(jié)構(gòu)剖分子單元9312以所有點為頂點,以線段為邊,建立不規(guī)則組合結(jié)構(gòu),利用該不規(guī)則組合結(jié)構(gòu)將整個三維空間剖分為許多不規(guī)則多面體。也就是說,經(jīng)過剖分后的三維空間可以被看成為包括多個不規(guī)則多面體的子空間集合D。
[0187]由于在將三維空間剖分為多個子空間時,有規(guī)則網(wǎng)格和不規(guī)則組合結(jié)構(gòu)兩種剖分方式。相應(yīng)地,在進(jìn)行障礙物子空間標(biāo)記時,也有兩種方式。
[0188]當(dāng)采用規(guī)則網(wǎng)格方式剖分三維空間時,通過第一空間標(biāo)記子單元9321標(biāo)記出規(guī)則網(wǎng)格剖分子單元9311剖分的子空間中的障礙物子空間,具體標(biāo)記時,第一空間標(biāo)記子單元9321將滿足第一預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間。該第一預(yù)設(shè)條件可以為:該子空間中存在特征幾何基元,或者該子空間中不存在特征幾何基元且子空間與任一約束基元無任何相交部分。其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元,如圖7和圖8所示。
[0189]當(dāng)采用不規(guī)則組合剖分三維空間時,則通過第二空間標(biāo)記子單元9322標(biāo)記出不規(guī)則組合結(jié)構(gòu)剖分子單元9312剖分的子空間中的障礙物子空間。具體標(biāo)記時,第二空間標(biāo)記子單元9322將滿足第二預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間。所述第二預(yù)設(shè)條件為:子空間與任一約束基元無任何相交部分。約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。也就是說,約束基元是特征幾何基元、特征幾何基元和視覺傳感器位姿的可見約束關(guān)系共同決定的。比如,假設(shè)特征幾何基元是點,那么該點與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的約束基元就是一條線段,如圖7所示。假設(shè)特征幾何基元是線段,那么該線段與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的約束基元就是一個三角形,如圖8所示。
[0190]通過第一空間標(biāo)記子單元9321和第二空間標(biāo)記子單元9322標(biāo)記出子空間中的障礙物子空間之后,組合單元933即可對障礙物子空間進(jìn)行組合,形成移動機(jī)器人所處三維空間中的檢測物。在檢測出移動機(jī)器人所處環(huán)境的自由空間和障礙物空間后,移動機(jī)器人即可在自由空間中規(guī)劃出合理的移動路徑,從而完成自主運動。
[0191]在機(jī)器人的運動區(qū)域僅限于二維平面的情況下,為減小運算復(fù)雜度,還可以采用圖11提出的基于視覺的移動機(jī)器人障礙物檢測裝置,該裝置主要應(yīng)用于移動機(jī)器人在二維平面運動的場景。
[0192]請參考圖12,是本發(fā)明提供的基于視覺的移動機(jī)器人障礙物檢測裝置的第三實施例的結(jié)構(gòu)框圖,所述裝置與圖9或圖10所示的實施例的區(qū)別在于,所述處理模塊93還包括:平面方程計算單元934、選取單元935及投影單元936。
[0193]此處,當(dāng)移動機(jī)器人的運動區(qū)域僅限于二維平面時,為減小運算的復(fù)雜度,還可以考慮先將計算結(jié)果投影到移動機(jī)器人所在的二維平面。在投影之前,由于移動機(jī)器人所處的二維平面不是已知的,因此需要通過平面方程計算單元934來計算。
[0194]平面方程計算單元934,具體是根據(jù)計算結(jié)果中包括的特征幾何基元和視覺傳感器位姿來計算二維平面方程,從而確定出機(jī)器人運動的二維平面。具體計算時,平面方程計算單元934可先根據(jù)任意三個視覺傳感器位姿,計算出多個二維平面方程,然后再計算所有視覺傳感器位姿與計算出的多個二維平面方程對應(yīng)二維平面的距離平方之和。多次重復(fù)執(zhí)行上述兩個步驟,得到多個距離平方之和,最后選擇多個距離平方之和中的最小值,并將該最小值對應(yīng)的二維平面方程作為最終的二維平面方程。關(guān)于如何計算距離平方之和的方法,可以采用現(xiàn)有中的方式,在此不贅述。
[0195]在將計算得到的特征幾何基元投影到二維平面之前,并不是將所有的特征幾何基元都投射到二維平面。因此,可以通過選取單元935從特征幾何基元集合中選取待投影的特征幾何基元。
[0196]選取單元935的選取原則可以是:先計算特征幾何基元在特定方向上的分量值,若分量值大于預(yù)設(shè)的上限閾值、且小于預(yù)設(shè)的下限閾值,則將該特征幾何基元映射到二維平面。此處該特定方向可以為:垂直于二維平面且朝上的方向。
[0197]具體選取時,選取單元935可以首先設(shè)定一個下限閥值el和一個上限閥值e2,之后根據(jù)el和e2來選取特征幾何基元。假設(shè)k為二維平面的垂直向量且朝向天空,對于任何一個特征幾何基元,計算其所有頂點在k上的分量,如果有一個以上的頂點在k上的分量低于el或高于e2,則該特征幾何基元將不被選取。關(guān)于el和e2的具體設(shè)定方式,可參考方法實施例中的解釋。
[0198]待選取出待投影的特征幾何基元之后,則通過投影單元936將所述選取單元935選出的待投影的特征幾何基元和視覺傳感器位姿投影到二維平面上,從而得到二維特征幾何基元、二維視覺傳感器位姿及二維可見約束關(guān)系;其中,二維特征幾何基元是待投影的特征幾何基元在二維平面上的投影。同時由于將所有視覺傳感器位姿也投影到二維平面,即可以得到視覺傳感器位姿在二維平面上的投影,在此可以稱為二維視覺傳感器位姿。相應(yīng)地,也就將特征幾何基元所對應(yīng)的約束基元也同樣投影到了二維平面上,進(jìn)而得到了二維特征幾何基元與二維視覺傳感器位姿之間的可見約束關(guān)系,即二維可見約束關(guān)系,相應(yīng)地,也會得到二維約束基元。
[0199]當(dāng)移動機(jī)器人的運動區(qū)域為二維平面時,空間剖分單元931還用于將該二維平面空間剖分為多個平面子空間。與三維空間剖分時類似的是,空間剖分單元931進(jìn)行二維平面空間剖分,相應(yīng)地也有兩種方式,即可以采用規(guī)則網(wǎng)格方式或不規(guī)則組合結(jié)構(gòu)將二維平面剖分為多個平面子空間。
[0200]例如,規(guī)則網(wǎng)格剖分子單元9311可以采用規(guī)則網(wǎng)絡(luò)方式如均一網(wǎng)格或自適應(yīng)網(wǎng)格對二維平面進(jìn)行剖分,該剖分后的二維平面可以看成是包含多個正方形和/或長方形的平面子空間的集合。同樣地,不規(guī)則組合結(jié)構(gòu)子單元9312,可以采用不規(guī)則組合結(jié)構(gòu)將平面剖分為多個平面子空間,該方式剖分后的二維平面可以看成是包含多個多邊形的平面子空間的集合。
[0201]當(dāng)移動機(jī)器人的運動區(qū)域為二維平面時,空間標(biāo)記單元932還用于所述二維特征幾何基元和/或所述二維可見約束關(guān)系,標(biāo)記出所述空間剖分單元931剖分的平面子空間中的平面障礙物子空間。與三維空間標(biāo)記類似的是,空間標(biāo)記單元932進(jìn)行二維平面空間標(biāo)記時,相應(yīng)地也有兩種方式。
[0202]具體地,當(dāng)采用規(guī)則網(wǎng)格方式剖分二維平面時,通過第一空間標(biāo)記子單元9321標(biāo)記出規(guī)則網(wǎng)格剖分子單元9311剖分的平面子空間中的平面障礙物子空間,具體標(biāo)記時,第一空間標(biāo)記子單元9321將滿足第一預(yù)設(shè)條件的平面子空間標(biāo)記為平面障礙物子空間。該第一預(yù)設(shè)條件可以為:該平面子空間中存在二維特征幾何基元,或者該平面子空間中不存在二維特征幾何基元且平面子空間與任一二維約束基元無任何相交部分。反之如果該平面子空間與至少一個二維約束基元相交,則該平面子空間被標(biāo)記為自由平面子空間。其中,二維約束基元為:二維特征幾何基元與與其存在可見約束關(guān)系的二維視覺傳感器位姿共同組成的基元。
[0203]當(dāng)采用不規(guī)則組合剖分三維空間時,則通過第二空間標(biāo)記子單元9322標(biāo)記出不規(guī)則組合結(jié)構(gòu)剖分子單元9312剖分的平面子空間中的平面障礙物子空間。具體標(biāo)記時,第二空間標(biāo)記子單元9322將滿足第二預(yù)設(shè)條件的平面子空間標(biāo)記為平面障礙物子空間。所述第二預(yù)設(shè)條件為:平面子空間與任一二維約束基元無任何相交部分。其中,二維約束基元為:二維特征幾何基元與與其存在可見約束關(guān)系的二維視覺傳感器位姿共同組成的基元。也就是說,二維約束基元是二維特征幾何基元、二維特征幾何基元和二維視覺傳感器位姿的可見約束關(guān)系共同決定的。
[0204]本發(fā)明實施例中,當(dāng)移動機(jī)器人的平面僅限于二維平面時,便可先將計算結(jié)果投影到移動機(jī)器人所運動的二維平面,然后再進(jìn)行二維平面剖分與障礙物標(biāo)記,從而檢測出二維平面空間中的障礙物。與三維空間剖分與障礙物標(biāo)記相比,該種方式降低了計算的復(fù)雜度。
[0205]需要說明的是,在所有的方法實施例中,在不沖突的情況下,各實施例中的技術(shù)特征可相互組合。
[0206]圖9-12所示的實施例中,移動機(jī)器人在移動時,不論移動機(jī)器人的運動空間是三維空間還是二維平面,其所處的環(huán)境都是變化的,障礙物檢測是一個實時的、不斷循環(huán)的過程,移動機(jī)器人所處環(huán)境不斷更新,相應(yīng)地計算結(jié)果也會不斷更新,因而需要根據(jù)更新的計算結(jié)果標(biāo)記出更新的自由子空間和障礙物子空間。在標(biāo)記更新的自由子空間和障礙物子空間時,可以采用全局性更新和連續(xù)性更新兩種方式。
[0207]此處,全局性更新的原理是=T1和T2為前后相鄰兩個時刻,在更新時,不依賴于上一時刻T1的檢測結(jié)果,而是直接使用當(dāng)前時刻T2的計算結(jié)果對機(jī)器人所處環(huán)境進(jìn)行重新剖分與重新標(biāo)記,從而得到更新的自由子空間和障礙子物空間,檢測出當(dāng)前時刻機(jī)器人所處環(huán)境的障礙物。此種全局性更新的方式所需的計算量會隨時間逐漸增大,因此無法保證實時性。
[0208]此處,連續(xù)性更新的原理是:假設(shè)T1和T2為前后相鄰兩個時刻,在更新時利用上一時刻T1的計算結(jié)果,并將當(dāng)前時刻T2的計算結(jié)果與上一時刻1\的計算結(jié)果進(jìn)行比較,確定出在當(dāng)前時刻T2更新的計算結(jié)果和發(fā)生變化的子空間。其中,更新的計算結(jié)果包括更新的特征幾何基元、更新的視覺傳感器位姿及更新的可見約束關(guān)系。此處,發(fā)生變化的子空間可能是:標(biāo)記狀態(tài)發(fā)生變化的子空間,也可能是標(biāo)記狀態(tài)和剖分狀態(tài)都發(fā)生變化的子空間。當(dāng)變化的子空間僅標(biāo)記狀態(tài)發(fā)生變化時,則根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出所述變化的子空間中的障礙物子空間;當(dāng)變化的子空間剖分狀態(tài)和標(biāo)記狀態(tài)都發(fā)生變化時,則根據(jù)更新的特征幾何基元和/或更新的可見約束關(guān)系,對發(fā)生變化的子空間進(jìn)行重新剖分與標(biāo)記,因此采用連續(xù)性更新時,所需的時間基本不變,因此能保證實時性。
[0209]在具體更新時,計算模塊92還用于:在所述移動機(jī)器人所處環(huán)境變化時,基于新獲取的圖像信息和所述計算結(jié)果確定出更新的計算結(jié)果及變化的子空間,該更新的計算結(jié)果包括:更新的特征幾何基元、更新的可見約束關(guān)系;
[0210]所述處理模塊93,還用于根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出所述變化的子空間中的障礙物子空間。
[0211]下面將分別描述采用規(guī)則網(wǎng)格方式剖分三維空間時的連續(xù)性更新方法和采用不規(guī)則組合結(jié)構(gòu)剖分三維空間時的連續(xù)性更新方法。
[0212](I)采用規(guī)則網(wǎng)格方式剖分三維空間時的連續(xù)性更新方法
[0213]移動機(jī)器人在移動的過程中,當(dāng)采用均一網(wǎng)格方式剖分三維空間時,移動機(jī)器人在移動的過程中,剖分的子空間結(jié)構(gòu)不會發(fā)生變化,即該子空間的剖分狀態(tài)不會發(fā)生變化,但是由于三維空間中的特征幾何基元可能發(fā)生變化或增加,因此相應(yīng)的特征可見約束關(guān)系也會相應(yīng)更新,該子空間的標(biāo)記狀態(tài)可能發(fā)生變化。此時只需要根據(jù)更新的特征幾何基元和/或更新的可見約束關(guān)系,重新標(biāo)記出所述剖分的子空間中的障礙物子空間。
[0214]假設(shè)T1和T2為前后相鄰兩個時刻,當(dāng)使用自適應(yīng)網(wǎng)絡(luò)方式剖分三維空間時,從上一時刻T1到當(dāng)前時刻T2,特征幾何基元有所增加,也就是說特征幾何基元有更新。那么,相應(yīng)地,對應(yīng)的可見約束關(guān)系也會有更新。并且,對于上一時刻T1到當(dāng)前時刻T2的增加的特征幾何基元,則需要判斷包含該增加的特征幾何基元的子空間的剖分狀態(tài)是否發(fā)生變化,若判斷結(jié)果為是,即該子空間的剖分狀態(tài)發(fā)生變化,則需要對發(fā)生變化的子空間進(jìn)行重新剖分。由于該子空間的剖分狀態(tài)發(fā)生變化,相應(yīng)地,其標(biāo)記狀態(tài)也會發(fā)生變化。在對該變化的子空間進(jìn)行重新剖分之后,則需要對根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出重新剖分的子空間中的障礙物子空間。
[0215](2)采用不規(guī)則組合結(jié)構(gòu)方式剖分三維空間時的連續(xù)性更新方法
[0216]具體實現(xiàn)時,假設(shè)時刻T1和T2為前后相鄰兩個時刻,Qtl和Qt2分別是截止T1和T2兩個時刻利用Visual-SLAM計算所獲得的所有特征幾何基元的集合。由于T1時刻的空間剖分狀態(tài)和標(biāo)記狀態(tài)已知,那么在T2時刻,子空間的剖分狀態(tài)和標(biāo)記狀態(tài)均可能發(fā)生變化,此時則需要更新子空間的剖分狀態(tài)和標(biāo)記狀態(tài)。
[0217]需要說明的是,當(dāng)移動機(jī)器人所處的二維平面更新時,相應(yīng)地計算結(jié)果也會不斷更新,因而需要根據(jù)更新的計算結(jié)果不斷更新二維平面中的平面自由子空間和平面障礙物子空間。
[0218]如前文所述,更新包括全局性更新和連續(xù)性更新兩種方式。不論采用不規(guī)則組合結(jié)構(gòu)還是使用規(guī)則網(wǎng)格剖分二維平面,二維平面情況下的更新原理和三維空間情況下的更新原理完全一致。不同的是,在二維平面情況下需要標(biāo)記的平面子空間是不規(guī)則的多邊形、長方形或正方形,而在三維空間的情況下,需要標(biāo)記的子空間是不規(guī)則多面體、長方體或正方體。同理,在二維平面情況下,用來做標(biāo)記的約束基元是由投影在二維平面上的二維特征幾何基元與二維視覺傳感器位姿所組成的,而在三維空間情況下,用來做標(biāo)記的約束基元是特征幾何基元與視覺傳感器位姿所組成的。
[0219]以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種基于視覺的移動機(jī)器人障礙物檢測方法,其特征在于,包括: 接收視覺傳感器采集的所述移動機(jī)器人所處環(huán)境的圖像信息; 利用同時構(gòu)圖和定位算法對所述接收的圖像信息進(jìn)行計算,得到計算結(jié)果; 根據(jù)所述計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境中的障礙物, 其中,所述計算結(jié)果包括:所述環(huán)境的特征幾何基元、視覺傳感器位姿和所述特征幾何基元與所述視覺傳感器位姿之間的可見約束關(guān)系。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境的障礙物,包括: 將所述移動機(jī)器人所處環(huán)境 的三維空間剖分為多個子空間; 根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間; 組合所述障礙物子空間。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將所述三維空間剖分為多個子空間包括: 采用規(guī)則網(wǎng)格或不規(guī)則組合結(jié)構(gòu)將所述三維空間剖分為多個子空間。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述采用規(guī)則網(wǎng)格將所述三維空間剖分為多個子空間包括: 將所述三維空間剖分為多個尺寸為預(yù)設(shè)值的子空間; 或者, 將所述三維空間剖分為多個相同尺寸的子空間;當(dāng)所述子空間的尺寸大于預(yù)設(shè)的尺寸下限值、且所述子空間中包含特征幾何基元時,繼續(xù)剖分所述子空間,否則停止剖分所述子空間。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述特征幾何基元包括:特征幾何點、特征幾何點和特征幾何線段; 所述采用不規(guī)則組合結(jié)構(gòu)將所述三維空間剖分為多個子空間包括: 當(dāng)特征幾何基元均是特征幾何點時,以特征幾何點為頂點,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間; 當(dāng)特征幾何基元包含特征幾何點和特征幾何線段時,以特征幾何點為頂點,以特征幾何線段為邊,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間。
6.根據(jù)權(quán)利要求2至4中任一項所述的方法,其特征在于,所述根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間包括: 將滿足第一預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第一預(yù)設(shè)條件為:子空間中存在特征幾何基元,或者,子空間中不存在特征幾何基元且子空間與任一約束基元無任何相交部分; 其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。
7.根據(jù)權(quán)利要求2或3或5所述的方法,其特征在于,所述根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間包括: 將滿足第二預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第二預(yù)設(shè)條件為:子空間與任一約束基元無任何相交部分; 其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。
8.根據(jù)權(quán)利要求2至5中任一項所述的方法,其特征在于,當(dāng)所述移動機(jī)器人的運動空間為二維平面時,在執(zhí)行將所述三維空間剖分為多個子空間的步驟之前,還包括: 根據(jù)所述特征幾何基元和視覺傳感器位姿,計算二維平面方程; 選取所述特征幾何基元中待投影的特征幾何基元; 將所述待投影的特征幾何基元和所述視覺傳感器位姿投影到所述二維平面方程對應(yīng)的二維平面,得到二維特征幾何基元、二維視覺傳感器位姿及二維可見約束關(guān)系; 所述將所述三維空間剖分為多個子空間包括:將所述二維平面剖分為多個平面子空間; 所述根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述子空間中的障礙物子空間包括: 根據(jù)所述二維特征幾何基元和/或所述二維可見約束關(guān)系,標(biāo)記出所述平面子空間中的平面障礙物子空間。
9.根據(jù)權(quán)利要求2至5中任一項所述的方法,其特征在于,所述方法還包括: 在所述移動機(jī)器人所處環(huán)境變化時,基于新獲取的圖像信息和所述計算結(jié)果確定出更新的計算結(jié)果及變化的子空間,所述更新的計算結(jié)果包括:更新的特征幾何基元、更新的可見約束關(guān)系; 根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出所述變化的子空間中的障礙物子空間。
10.一種基于視覺的移動機(jī)器人障礙物檢測裝置,其特征在于,包括: 接收模塊,用于接收視覺傳感器采集的所述移動機(jī)器人所處環(huán)境的圖像信息; 計算模塊,用于利用同時構(gòu)圖和定位算法對所述接收模塊接收的圖像信息進(jìn)行計算,得到計算結(jié)果; 處理模塊,用于根據(jù)所述計算模塊的計算結(jié)果,檢測所述移動機(jī)器人所處環(huán)境中的障礙物, 其中,所述計算結(jié)果包括:所述環(huán)境的特征幾何基元、視覺傳感器位姿和所述特征幾何基元與所述視覺傳感器位姿之間的可見約束關(guān)系。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述處理模塊包括: 空間剖分單元,用于將所述移動機(jī)器人所處環(huán)境的三維空間剖分為多個子空間;空間標(biāo)記單元,用于根據(jù)所述特征幾何基元和/或所述可見約束關(guān)系,標(biāo)記出所述空間剖分單元剖分得到的子空間中的障礙物子空間; 組合單元,用于組合所述空間標(biāo)記單元標(biāo)記出的障礙物子空間。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述空間剖分單元包括: 規(guī)則網(wǎng)格剖分子單元,用于將所述三維空間剖分為多個尺寸為預(yù)設(shè)值的子空間;或者,用于將所述三維空間剖分為多個相同尺寸的子空間,當(dāng)所述子空間的尺寸大于預(yù)設(shè)的尺寸下限值、且所述子空間中包含特征幾何基元時,繼續(xù)剖分所述子空間,否則停止剖分所述子空間。
13.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述特征幾何基元包括:特征幾何點、特征幾何點和特征幾何線段;所述空間剖分單元包括: 不規(guī)則組合結(jié)構(gòu)剖分子單元,用于當(dāng)特征幾何基元均是特征幾何點時,以特征幾何點為頂點,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間;當(dāng)特征幾何基元包含特征幾何點和特征幾何線段時,以特征幾何點為頂點,以特征幾何線段為邊,建立所述不規(guī)則組合結(jié)構(gòu),以剖分所述三維空間。
14.根據(jù)權(quán)利要求11或12所述的裝置,其特征在于,所述空間標(biāo)記單元包括: 第一空間剖分子單元,用于將滿足第一預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第一預(yù)設(shè)條件為:子空間中存在特征幾何基元,或者,子空間中不存在特征幾何基元且子空間與任一約束基元無任何相交部分; 其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。
15.根據(jù)權(quán)利要求11或13所述的裝置,其特征在于,所述空間標(biāo)記單元包括: 第二空間剖分子單元,用于將滿足第二預(yù)設(shè)條件的子空間標(biāo)記為障礙物子空間,所述第二預(yù)設(shè)條件為:子空間與任一約束基元無任何相交部分; 其中,約束基元為:特征幾何基元與與其存在可見約束關(guān)系的視覺傳感器位姿共同組成的基元。
16.根據(jù)權(quán)利要求11至13中任一項所述的裝置,其特征在于,所述處理模塊還包括: 平面方程計算單元,用于根據(jù)所述特征幾何基元和視覺傳感器位姿,計算二維平面方程; 選取單元,用于選取所述特征幾何基元中待投影的特征幾何基元; 投影單元,用于將所述選取單元選出的待投影的特征幾何基元和所述視覺傳感器位姿投影到所述二維平面方程對應(yīng)的二維平面,得到二維特征幾何基元、二維視覺傳感器位姿及二維可見約束關(guān)系; 所述空間剖分單元,還用于:將所述平面方程計算單元計算出的二維平面方程對應(yīng)的二維平面剖分為多個平面子空間; 所述空間標(biāo)記單元,還用于根據(jù)所述二維特征幾何基元和/或所述二維可見約束關(guān)系,標(biāo)記出所述空間剖分單元剖分的平面子空間中的平面障礙物子空間。
17.根據(jù)權(quán)利要求11至13中任一項所述的裝置,其特征在于, 所述計算模塊還用于在所述移動機(jī)器人所處環(huán)境變化時,基于新獲取的圖像信息和所述計算結(jié)果確定出更新的計算結(jié)果及變化的子空間,更新的計算結(jié)果包括:更新的特征幾何基元、更新的可見約束關(guān)系; 所述處理模塊,還用于根據(jù)所述更新的特征幾何基元和/或所述更新的可見約束關(guān)系,重新標(biāo)記出所述變化的子空間中的障礙物子空間。
【文檔編號】G01V8/10GK103984037SQ201410182735
【公開日】2014年8月13日 申請日期:2014年4月30日 優(yōu)先權(quán)日:2014年4月30日
【發(fā)明者】郁樹達(dá) 申請人:深圳市墨克瑞光電子研究院