基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法
【專利摘要】本發(fā)明公開了一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法,其內(nèi)容是智能體小車通過(guò)CCD攝像頭獲取智能體小車環(huán)境圖像信息,DSP圖像處理器模塊將圖像信息進(jìn)行處理,利用OpenCV函數(shù)庫(kù)的Camshift算法進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤和定位,獲取動(dòng)態(tài)障礙物坐標(biāo)并發(fā)送給底層控制器模塊,將動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度和三側(cè)超聲波測(cè)距信息輸入給動(dòng)態(tài)避障模糊控制器,后者輸出智能體小車的轉(zhuǎn)向角ψ及速度v控制指令,實(shí)現(xiàn)動(dòng)態(tài)避障。本發(fā)明利用Camshift算法實(shí)現(xiàn)了快速目標(biāo)匹配和定位,提高了動(dòng)態(tài)環(huán)境中捕獲動(dòng)態(tài)障礙物的速度,彌補(bǔ)了動(dòng)態(tài)避障中因?yàn)椴东@動(dòng)態(tài)目標(biāo)速度過(guò)慢而導(dǎo)致的避障滯后甚至失敗。
【專利說(shuō)明】基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及基于多智能體避障及路徑規(guī)劃、多傳感器信息融合等領(lǐng)域的控制方法,具體是通過(guò)圖像采集、OpenCV圖像處理、信息融合、模糊控制等技術(shù),將獲取的智能體周圍環(huán)境信息輸入給動(dòng)態(tài)避障模糊控制器,后者輸出智能體的轉(zhuǎn)向角及速度控制指令,實(shí)現(xiàn)實(shí)時(shí)準(zhǔn)確的動(dòng)態(tài)避障,為路徑規(guī)劃奠定基礎(chǔ)。本發(fā)明尤其涉及一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法。
【背景技術(shù)】
[0002]避障對(duì)于移動(dòng)機(jī)器人的自主導(dǎo)航和路徑規(guī)劃是必不可少的,移動(dòng)機(jī)器人的避障研究一直是移動(dòng)機(jī)器人的研究熱點(diǎn),移動(dòng)機(jī)器人避障系統(tǒng)的好壞直接影響到移動(dòng)機(jī)器人執(zhí)行各項(xiàng)任務(wù)的能力,特別是在具有靜態(tài)和動(dòng)態(tài)障礙物的復(fù)雜環(huán)境中能夠完成局部在線避碰是移動(dòng)機(jī)器人自主性的重要體現(xiàn)。
[0003]經(jīng)過(guò)對(duì)現(xiàn)有文獻(xiàn)的檢索得知:中國(guó)專利申請(qǐng)?zhí)枮?20120539473.X,其名稱為:一種智能水下機(jī)器人的自主避障方法,該專利申請(qǐng)?zhí)岢隽艘环N將水下機(jī)器人運(yùn)動(dòng)目標(biāo)、障礙物和水下機(jī)器人控制性能進(jìn)行統(tǒng)一考慮來(lái)實(shí)現(xiàn)避障的方法,避障策略能夠反映智能水下機(jī)器人動(dòng)態(tài)避障能力,但是需要根據(jù)作業(yè)任務(wù)和海圖數(shù)據(jù)庫(kù)信息進(jìn)行全局路徑規(guī)劃,具有很大的局限性。中國(guó)專利申請(qǐng)?zhí)枮?201110210600.7,其名稱為:一種基于模糊神經(jīng)網(wǎng)絡(luò)的智能輪椅避障方法,該方法用模糊神經(jīng)網(wǎng)絡(luò)的方法融合兩個(gè)聲納傳感器和攝像頭采集到的實(shí)時(shí)信息,時(shí)刻計(jì)算輪椅與障礙物的實(shí)時(shí)位置,完成輪椅的動(dòng)態(tài)避障。該方法需要對(duì)攝像頭多次采集到的信息進(jìn)行訓(xùn)練,得到障礙物的分類器和障礙物在攝像頭坐標(biāo)里的坐標(biāo)位置,因此模糊神經(jīng)網(wǎng)絡(luò)計(jì)算量較大,實(shí)時(shí)性差。中國(guó)專利申請(qǐng)?zhí)枮?200810120209.6,其名稱為:一種基于障礙物運(yùn)動(dòng)預(yù)測(cè)的移動(dòng)機(jī)器人避障方法,該方法將環(huán)繞于機(jī)器人周圍的空間由外到內(nèi)以機(jī)器人為中心劃分為3個(gè)區(qū)域,實(shí)行不同的避障策略,使用IMM算法預(yù)測(cè)障礙物的運(yùn)動(dòng)狀態(tài),但是只能使移動(dòng)機(jī)器人可以在小范圍進(jìn)行動(dòng)態(tài)避障,而不用大范圍偏離原規(guī)劃路徑。
[0004]通過(guò)對(duì)避障方面相關(guān)文獻(xiàn)的研究發(fā)現(xiàn),對(duì)于結(jié)構(gòu)化的靜態(tài)環(huán)境下的避障策略居多,動(dòng)態(tài)環(huán)境下的避障研究較少,且動(dòng)態(tài)環(huán)境下的避障策略也存在著捕獲動(dòng)態(tài)目標(biāo)實(shí)時(shí)性差、避障策略計(jì)算量大而導(dǎo)致的避障遲滯性等缺陷,動(dòng)態(tài)避障模糊控制算法綜合了視覺(jué)及超聲測(cè)距信息,加入了速度反饋,提高了控制系統(tǒng)的抗干擾能力。
【發(fā)明內(nèi)容】
[0005]針對(duì)現(xiàn)有動(dòng)態(tài)避障策略的不足,本發(fā)明的目的是提出了一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法,智能體小車通過(guò)CCD攝像頭獲取智能體小車環(huán)境圖像信息,DSP圖像處理器模塊將圖像信息進(jìn)行預(yù)處理,利用OpenCV函數(shù)庫(kù)的Camshift算法,進(jìn)行目標(biāo)的跟蹤及定位,在連續(xù)的圖像中尋找目標(biāo)的位置和目標(biāo)的大小,迅速捕獲動(dòng)態(tài)障礙物坐標(biāo)信息并發(fā)送給底層控制器模塊,將動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度和智能體小車車體前方、左前方和右前方三側(cè)的超聲波測(cè)距信息輸入給動(dòng)態(tài)避障模糊控制器,后者輸出智能體小車的轉(zhuǎn)向角Ψ及速度V控制指令,提高了動(dòng)態(tài)避障的快速性和準(zhǔn)確性。
[0006]為了解決上述存在的技術(shù)問(wèn)題實(shí)現(xiàn)發(fā)明目的,本發(fā)明是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的:
[0007]一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法,該方法的實(shí)現(xiàn)過(guò)程基于移動(dòng)的智能體小車,所述的智能體小車包括CCD攝像頭模塊、DSP圖像處理器模塊、超聲波測(cè)距模塊和底層控制器模塊,這其中:
[0008]所述的CXD攝像頭模塊為車載攝像頭,置于智能體小車正前方,具有大范圍的俯仰和側(cè)擺能力;
[0009]所述的DSP圖像處理器模塊中嵌入了 OpenCV圖像處理函數(shù)庫(kù),具有圖像處理功能,利用函數(shù)庫(kù)內(nèi)的Camshift算法,在連續(xù)的圖像中尋找目標(biāo)的位置和目標(biāo)的大小,快速地匹配出目標(biāo),實(shí)時(shí)的進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤和定位,獲取動(dòng)態(tài)障礙物坐標(biāo)并發(fā)送給底層控制器模塊;
[0010]所述的超聲波測(cè)距模塊分別置于智能體小車車體前方、左前方和右前方,左前方和右前方均與前方成角度θ,Θ取45度,測(cè)量前方障礙物的距離信息;
[0011]所述的底層控制器模塊置有動(dòng)態(tài)避障模糊控制器,所述的動(dòng)態(tài)避障模糊控制器植入了動(dòng)態(tài)避障模糊控制算法,所述的底層控制器模塊與所述的DSP圖像處理器模塊通信獲取動(dòng)態(tài)障礙物坐標(biāo)信息,并與超聲波測(cè)距距離和智能體小車速度信息一起輸入給動(dòng)態(tài)避障模糊控制器,獲得智能體小車的轉(zhuǎn)向角和速度控制指令;其中動(dòng)態(tài)避障模糊控制器基于動(dòng)態(tài)避障模糊控制算法,共有五個(gè)輸入和兩個(gè)輸出,五個(gè)輸入為動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度以及車體前方、左前方和右前方三側(cè)的超聲波測(cè)距信息,兩個(gè)輸出為智能體小車的轉(zhuǎn)向角Ψ及速度V,該控制器根據(jù)輸入變量及內(nèi)嵌的模糊控制規(guī)則,按模糊推理合成規(guī)則計(jì)算輸出控制量;
[0012]所述的一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法依托所述智能體小車組成的模塊實(shí)現(xiàn)其模糊動(dòng)態(tài)避障,其內(nèi)容包括以下步驟:
[0013]第一步:智能體小車通過(guò)車載CXD攝像頭的俯仰和側(cè)擺獲取智能體小車周圍環(huán)境圖像信息;
[0014]第二步:DSP圖像處理器模塊將獲取的圖像信息進(jìn)行預(yù)處理后,利用OpenCV函數(shù)庫(kù)的Camshift算法,通過(guò)識(shí)別目標(biāo)的顏色特征,在連續(xù)的幀圖像中尋找目標(biāo)的位置和目標(biāo)的大小,從而實(shí)現(xiàn)動(dòng)態(tài)目標(biāo)跟蹤和定位,迅速捕獲動(dòng)態(tài)障礙物并將坐標(biāo)信息并發(fā)送給底層控制器1旲塊;
[0015]第三步:將獲取的攝像頭坐標(biāo),即動(dòng)態(tài)障礙物坐標(biāo),轉(zhuǎn)換為智能體小車所在的空間坐標(biāo),根據(jù)坐標(biāo)在圖像中的位置將坐標(biāo)模糊化,分為障礙物位于智能體小車左側(cè)L、障礙物位于智能體小車前方F和障礙物位于智能體小車右側(cè)R,確定其在智能體小車前方的位置區(qū)域;將三側(cè)超聲波測(cè)距信息模糊化為近距N、遠(yuǎn)距F和不遠(yuǎn)不近M,速度模糊化為慢速S和快速F ;將模糊化后的動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度和三側(cè)超聲波測(cè)距信息輸入動(dòng)態(tài)避障模糊控制器,輸出智能體小車的轉(zhuǎn)向角Ψ及速度V控制指令,實(shí)現(xiàn)動(dòng)態(tài)避障。
[0016]本發(fā)明方法中智能體小車通過(guò)(XD攝像頭獲取智能體小車環(huán)境圖像信息,DSP圖像處理器模塊將圖像信息進(jìn)行處理,利用OpenCV函數(shù)庫(kù)的Camshift算法進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤和定位,獲取動(dòng)態(tài)障礙物坐標(biāo)并發(fā)送給底層控制器模塊,將動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度和三側(cè)超聲波測(cè)距信息輸入給動(dòng)態(tài)避障模糊控制器,后者輸出智能體小車的轉(zhuǎn)向角Ψ及速度V控制指令,實(shí)現(xiàn)動(dòng)態(tài)避障。
[0017]由于采用上述技術(shù)方案,本發(fā)明與現(xiàn)有技術(shù)相比其有益效果是:利用Camshift算法實(shí)現(xiàn)了快速目標(biāo)匹配和定位,提高了動(dòng)態(tài)環(huán)境中捕獲動(dòng)態(tài)障礙物的速度,彌補(bǔ)了動(dòng)態(tài)避障中因?yàn)椴东@動(dòng)態(tài)目標(biāo)速度過(guò)慢而導(dǎo)致的避障滯后甚至失敗。同時(shí),將動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度和三側(cè)超聲波測(cè)距距離五個(gè)環(huán)境信息作為動(dòng)態(tài)避障模糊控制器的輸入,并加入速度反饋,提高了系統(tǒng)躲避動(dòng)態(tài)障礙物的準(zhǔn)確性及快速性。
【專利附圖】
【附圖說(shuō)明】
[0018]圖1是智能體小車結(jié)構(gòu)圖;
[0019]圖2是動(dòng)態(tài)避障模糊控制算法示意圖。
【具體實(shí)施方式】
[0020]以下通過(guò)具體的實(shí)施例并結(jié)合附圖對(duì)本發(fā)明的作進(jìn)一步描述:本實(shí)施例在以本發(fā)明技術(shù)方案為前提下進(jìn)行實(shí)施,給出了詳細(xì)的實(shí)施方法和具體的操作過(guò)程,但本發(fā)明的保護(hù)范圍不限于下述實(shí)例。
[0021]實(shí)施例
[0022]本實(shí)例涉及的一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法,如圖1所示,智能體小車由CCD攝像頭模塊4、超聲波測(cè)距模塊1、超聲波測(cè)距模塊2、超聲波測(cè)距模塊3、DSP圖像處理器模塊5和底層控制器模塊6組成。其中超聲波測(cè)距模塊1、超聲波測(cè)距模塊2和超聲波測(cè)距模塊3均采用US-100超聲波測(cè)距模塊,CXD攝像頭模塊4采用高清攝像頭0V7725,DSP圖像處理器模塊5采用ADI blackfin537DSP處理器,處理速度可達(dá)最快500MHz,具有高速圖像處理能力,底層控制器模塊6采用MCU51單片機(jī)模塊;
[0023]其中:所述的CXD攝像頭模塊4為車載攝像頭,置于智能體小車正前方,具有大范圍的俯仰和側(cè)擺能力;
[0024]所述的超聲波測(cè)距模塊1、超聲波測(cè)距模塊2和超聲波測(cè)距模塊3分別置于車體左前方、前方和右前方,左前方和右前方均與前方成角度θ,Θ取45度,測(cè)量前方障礙物的距離信息;
[0025]所述的DSP圖像處理器模塊5中嵌入了 OpenCV圖像處理函數(shù)庫(kù),具有圖像處理功能,利用函數(shù)庫(kù)內(nèi)的Camshift算法,在連續(xù)的圖像中尋找目標(biāo)的位置和目標(biāo)的大小,快速的匹配出目標(biāo),實(shí)時(shí)的進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤和定位,獲取動(dòng)態(tài)障礙物坐標(biāo)并發(fā)送給底層控制器模塊;
[0026]所述的底層控制器模塊6植入動(dòng)態(tài)避障模糊控制算法,所述的底層控制器模塊與所述的DSP圖像處理器模塊通信獲取動(dòng)態(tài)障礙物坐標(biāo)信息,并與超聲波測(cè)距距離和智能體速度信息一起輸入給動(dòng)態(tài)避障模糊控制器,獲得智能體小車的轉(zhuǎn)向角和速度控制指令;動(dòng)態(tài)避障模糊控制器共有五個(gè)輸入和兩個(gè)輸出,其中五個(gè)輸入為動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度和三側(cè)超聲波測(cè)距信息,兩個(gè)輸出為智能體小車的轉(zhuǎn)向角Ψ及速度V ;
[0027]智能體小車車載CXD攝像頭4通過(guò)俯仰和側(cè)擺獲取智能體小車周圍環(huán)境圖像信息,DSP圖像處理器模塊5將圖像信息進(jìn)行預(yù)處理后,利用OpenCV函數(shù)庫(kù)的Camshift算法進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤和定位,獲取動(dòng)態(tài)障礙物坐標(biāo)信息并發(fā)送給底層控制器模塊,底層控制器模塊中植入動(dòng)態(tài)避障模糊控制器,如圖2所示,然后將獲取的動(dòng)態(tài)障礙物坐標(biāo)信息、智能體小車速度和三側(cè)超聲波測(cè)距信息進(jìn)行模糊化,其中將動(dòng)態(tài)目標(biāo)的坐標(biāo)信息劃分為障礙物位于智能體小車左側(cè)L、障礙物位于智能體小車前方F和障礙物位于智能體小車右側(cè)R,將三側(cè)超聲波測(cè)距信息模糊化為近距N、遠(yuǎn)距F和不遠(yuǎn)不近M,智能體小車速度模糊化為慢速S和快速F,然后輸入動(dòng)態(tài)避障模糊控制器,根據(jù)其內(nèi)部的模糊控制規(guī)則,按模糊推理合成規(guī)則計(jì)算輸出控制量,獲得智能體小車的轉(zhuǎn)向角Ψ及速度V,實(shí)現(xiàn)動(dòng)態(tài)避障。
【權(quán)利要求】
1.一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法,其特征在于: 該方法的實(shí)現(xiàn)過(guò)程基于移動(dòng)的智能體小車,所述的智能體小車包括CCD攝像頭模塊、DSP圖像處理器模塊、超聲波測(cè)距模塊和底層控制器模塊,這其中: 所述的CCD攝像頭模塊為車載攝像頭,置于智能體小車正前方,具有大范圍的俯仰和側(cè)擺能力; 所述的DSP圖像處理器模塊中嵌入了 OpenCV圖像處理函數(shù)庫(kù),具有圖像處理功能,利用函數(shù)庫(kù)內(nèi)的Camshift算法,在連續(xù)的圖像中尋找目標(biāo)的位置和目標(biāo)的大小,快速地匹配出目標(biāo),實(shí)時(shí)的進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤和定位,獲取動(dòng)態(tài)障礙物坐標(biāo)并發(fā)送給底層控制器模塊; 所述的超聲波測(cè)距模塊分別置于智能體小車車體前方、左前方和右前方,左前方和右前方均與前方成角度θ,Θ取45度,測(cè)量前方障礙物的距離信息; 所述的底層控制器模塊置有動(dòng)態(tài)避障模糊控制器,所述的動(dòng)態(tài)避障模糊控制器植入了動(dòng)態(tài)避障模糊控制算法,所述的底層控制器模塊與所述的DSP圖像處理器模塊通信獲取動(dòng)態(tài)障礙物坐標(biāo)信息,并與超聲波測(cè)距距離和智能體小車速度信息一起輸入給動(dòng)態(tài)避障模糊控制器,獲得智能體小車的轉(zhuǎn)向角和速度控制指令;其中動(dòng)態(tài)避障模糊控制器基于動(dòng)態(tài)避障模糊控制算法,共有五個(gè)輸入和兩個(gè)輸出,五個(gè)輸入為動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度以及車體前方、左前方和右前方三側(cè)的超聲波測(cè)距信息,兩個(gè)輸出為智能體小車的轉(zhuǎn)向角Ψ及速度V,該控制器根據(jù)輸入變量及內(nèi)嵌的模糊控制規(guī)則,按模糊推理合成規(guī)則計(jì)算輸出控制量; 所述的一種基于Camshift算法的智能體模糊動(dòng)態(tài)避障方法依托所述智能體小車組成的模塊實(shí)現(xiàn)其模糊動(dòng)態(tài)避障,其內(nèi)容包括以下步驟: 第一步:智能體小車通過(guò)車載CCD攝像頭的俯仰和側(cè)擺獲取智能體小車周圍環(huán)境圖像信息; 第二步:DSP圖像處理器模塊將獲取的圖像信息進(jìn)行預(yù)處理后,利用OpenCV函數(shù)庫(kù)的Camshift算法,通過(guò)識(shí)別目標(biāo)的顏色特征,在連續(xù)的幀圖像中尋找目標(biāo)的位置和目標(biāo)的大小,從而實(shí)現(xiàn)動(dòng)態(tài)目標(biāo)跟蹤和定位,迅速捕獲動(dòng)態(tài)障礙物并將坐標(biāo)信息并發(fā)送給底層控制器模塊; 第三步:將獲取的攝像頭坐標(biāo),即動(dòng)態(tài)障礙物坐標(biāo),轉(zhuǎn)換為智能體所在的空間坐標(biāo),根據(jù)坐標(biāo)在圖像中的位置將坐標(biāo)模糊化,分為障礙物位于智能體小車左側(cè)L、障礙物位于智能體小車前方F和障礙物位于智能體小車右側(cè)R,確定其在智能體小車前方的位置區(qū)域;將三側(cè)超聲波測(cè)距信息模糊化為近距N、遠(yuǎn)距F和不遠(yuǎn)不近M,速度模糊化為慢速S和快速F ;將模糊化后的動(dòng)態(tài)障礙物坐標(biāo)、智能體小車速度和三側(cè)超聲波測(cè)距信息輸入動(dòng)態(tài)避障模糊控制器,輸出智能體小車的轉(zhuǎn)向角Ψ及速度V控制指令,實(shí)現(xiàn)動(dòng)態(tài)避障。
【文檔編號(hào)】G05B13/04GK104049634SQ201410311991
【公開日】2014年9月17日 申請(qǐng)日期:2014年7月2日 優(yōu)先權(quán)日:2014年7月2日
【發(fā)明者】羅小元, 賈雪偉, 武康康, 關(guān)新平 申請(qǐng)人:燕山大學(xué)