成人打一炮免费视频,亚洲天堂视频在线观看,97视频久久久,日本japanese护士色高清,五月婷婷丁香,日韩精品一级无码毛片免费,国产欧美日韩精品网红剧情演绎

用于無(wú)軌導(dǎo)航AGV的視覺(jué)定位方法以及裝置和系統(tǒng)與流程

文檔序號(hào):11520236閱讀:379來(lái)源:國(guó)知局
用于無(wú)軌導(dǎo)航AGV的視覺(jué)定位方法以及裝置和系統(tǒng)與流程

本發(fā)明涉及物流機(jī)器人無(wú)軌視覺(jué)定位的技術(shù)領(lǐng)域,更具體地說(shuō)是指用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法以及裝置和系統(tǒng)。



背景技術(shù):

自動(dòng)導(dǎo)引車(英文全稱:automaticguidedvehicle,英文簡(jiǎn)稱:agv)系統(tǒng)已經(jīng)發(fā)展成為生產(chǎn)物流系統(tǒng)中最大的專業(yè)分支之一。其導(dǎo)引技術(shù)主要可分為兩個(gè)方面,即有軌式導(dǎo)引和無(wú)軌式導(dǎo)引?,F(xiàn)階段agv中最基本的自動(dòng)導(dǎo)引技術(shù)主要包括電磁感應(yīng)導(dǎo)引、磁帶導(dǎo)引、視覺(jué)導(dǎo)引、激光導(dǎo)引、慣性導(dǎo)航導(dǎo)引和超聲波導(dǎo)引等。其中視覺(jué)導(dǎo)引技術(shù)是近年來(lái)國(guó)內(nèi)外agv行業(yè)的研究的熱點(diǎn)之一,視覺(jué)傳感器以光信號(hào)為基礎(chǔ),反應(yīng)速度快,不易受電磁干擾和環(huán)境影響,適應(yīng)能力強(qiáng),因此視覺(jué)導(dǎo)引技術(shù)具有很大的發(fā)展?jié)摿Α?/p>

然而,在現(xiàn)有的視覺(jué)導(dǎo)引方法中,通常都是機(jī)器視覺(jué)進(jìn)行定位,機(jī)器視覺(jué)的飛速發(fā)展為工業(yè)agv的自動(dòng)導(dǎo)航提供了更多解決問(wèn)題的思路。用于工業(yè)agv自動(dòng)導(dǎo)航的機(jī)器視覺(jué)導(dǎo)航系統(tǒng)通常可以分為:圖像采集部分、圖像處理部分和運(yùn)動(dòng)控制部分。主要過(guò)程如下:相機(jī)按照指令實(shí)時(shí)采集圖像,根據(jù)需要自動(dòng)調(diào)節(jié)曝光參數(shù);將采集到的數(shù)據(jù)采用arm或dsp轉(zhuǎn)化為圖像格式,并存放在處理器或計(jì)算機(jī)內(nèi)存中;處理器采用大津算法、大津改進(jìn)算法、局部大津算法對(duì)圖像進(jìn)行分析、識(shí)別、獲取載體位姿信息和相關(guān)邏輯控制值;識(shí)別結(jié)果控制載體移動(dòng)、停止、糾正運(yùn)動(dòng)誤差等。

上述的采用arm或dsp將采集到的數(shù)據(jù)轉(zhuǎn)化為圖像格式的效率較低,上述的處理過(guò)程只能在傳統(tǒng)的fpga或dsp處理,比較單一,不夠靈活,處理器采用大津算法、大津改進(jìn)算法、局部大津算法對(duì)圖像進(jìn)行分析、識(shí)別的處理的速度較低,導(dǎo)致定位不準(zhǔn)確。

因此,有必要設(shè)計(jì)一種用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法,實(shí)現(xiàn)定位處理過(guò)程更加靈活,效率高,定位準(zhǔn)確度高。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺陷,提供用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法以及裝置和系統(tǒng)。

為實(shí)現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案:用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法,所述方法包括:

獲取圖像數(shù)據(jù);

對(duì)所述圖像數(shù)據(jù)進(jìn)行實(shí)時(shí)自適應(yīng)二值化處理,獲取二值化圖像;

矯正或掃描所述二值化圖像,檢測(cè)所述二值化圖像內(nèi)的輪廓,存儲(chǔ)所述輪廓;

剔除存儲(chǔ)的所述輪廓中不符合要求的輪廓;

提取符合要求的輪廓的特征以及質(zhì)心;

獲取具體的位置信息。

其進(jìn)一步技術(shù)方案為:對(duì)所述圖像數(shù)據(jù)進(jìn)行實(shí)時(shí)自適應(yīng)二值化處理的步驟,包括以下具體步驟:

統(tǒng)計(jì)所述圖像數(shù)據(jù)的灰度值;

在本幀圖像輸出完畢后,獲取平均閾值;

在下一幀圖像到來(lái)時(shí),采用本幀圖像獲取的所述平均閾值進(jìn)行二值化處理。

其進(jìn)一步技術(shù)方案為:矯正或掃描所述二值化圖像,檢測(cè)所述二值化圖像內(nèi)的輪廓,存儲(chǔ)所述輪廓的步驟,包括以下具體步驟:

從二值化圖像的左上角進(jìn)行遍歷;

判斷是否檢測(cè)到有0以及1跳變;

若檢測(cè)到有0以及1跳變,記錄跳變的像素點(diǎn)的坐標(biāo),以所述像素點(diǎn)逆時(shí)針旋轉(zhuǎn)查找1像素點(diǎn),對(duì)1像素點(diǎn)進(jìn)行記錄標(biāo)記,并繼續(xù)查找1像素點(diǎn),直至所述像素的周圍不存在大于1的像素點(diǎn);

繼續(xù)遍歷像素點(diǎn)繼續(xù)遍歷,直到遍歷完整幅二值化圖像為止。

其進(jìn)一步技術(shù)方案為:獲取具體的位置信息的步驟,包括以下具體步驟:

根據(jù)質(zhì)心和所述輪廓的頂點(diǎn)獲取偏轉(zhuǎn)角度;

提取所述輪廓內(nèi)的二維碼信息,對(duì)所述二維碼進(jìn)行譯碼處理,獲取二維碼的相對(duì)位置;

根據(jù)所述輪廓內(nèi)的角點(diǎn)計(jì)算相對(duì)坐標(biāo);

輸出譯碼信息、相對(duì)坐標(biāo)信息以及相對(duì)偏轉(zhuǎn)角度信息。

其進(jìn)一步技術(shù)方案為:根據(jù)質(zhì)心和所述輪廓的頂點(diǎn)獲取偏轉(zhuǎn)角度的步驟,包括以下具體步驟:

計(jì)算所述輪廓的左上角的角點(diǎn)以及其對(duì)角點(diǎn),計(jì)算左上角的角點(diǎn)反正切值和右上角的角點(diǎn)反正切值;

根據(jù)所述質(zhì)心以及左上角的角點(diǎn)反正切值和右上角的角點(diǎn)反正切值,獲取偏轉(zhuǎn)角度信息。

其進(jìn)一步技術(shù)方案為:提取所述輪廓內(nèi)的二維碼信息,對(duì)所述二維碼進(jìn)行譯碼處理,獲取二維碼的相對(duì)位置的步驟,包括以下具體步驟:

獲取二維碼四個(gè)角點(diǎn)的坐標(biāo);

根據(jù)四個(gè)角點(diǎn)的坐標(biāo)計(jì)算中心點(diǎn)的坐標(biāo);

對(duì)比所述中心點(diǎn)的坐標(biāo)以及所述二值化圖像的中心點(diǎn)的坐標(biāo),獲取二維碼相對(duì)位置信息;

對(duì)符合要求的輪廓范圍內(nèi)的圖像進(jìn)行提取采樣,輸出符合要求的輪廓內(nèi)的碼信息;

對(duì)所述碼信息進(jìn)行解碼處理,根據(jù)碼的大小規(guī)則把bit碼轉(zhuǎn)換為字節(jié)碼;

對(duì)轉(zhuǎn)換好的字節(jié)碼進(jìn)行rs譯碼操作,進(jìn)行糾錯(cuò)。

其進(jìn)一步技術(shù)方案為:所述對(duì)轉(zhuǎn)換好的字節(jié)碼進(jìn)行rs譯碼操作,進(jìn)行糾錯(cuò)的步驟之后,還包括:

判斷提取的碼信息是否存在錯(cuò)誤;

若存在錯(cuò)誤,則判斷所述錯(cuò)誤是否在糾錯(cuò)范圍內(nèi);

若所述錯(cuò)誤在糾錯(cuò)范圍內(nèi),則輸出糾錯(cuò)的碼信息;

若所述錯(cuò)誤不在糾錯(cuò)范圍內(nèi),則輸出報(bào)錯(cuò)信息,并返回所述對(duì)符合要求的輪廓范圍內(nèi)的圖像進(jìn)行提取采樣步驟;

若不存在錯(cuò)誤,則直接輸出碼信息。

本發(fā)明還提供了用于無(wú)軌導(dǎo)航agv的視覺(jué)定位裝置,包括圖像傳感器、存儲(chǔ)器以及處理器,所述圖像傳感器以及所述存儲(chǔ)器分別與所述處理器連接,圖像傳感器獲取圖像數(shù)據(jù)后,傳輸至處理器進(jìn)行處理,處理器將處理后的數(shù)據(jù)傳輸至存儲(chǔ)器存儲(chǔ)。

本發(fā)明還提供了用于無(wú)軌導(dǎo)航agv的視覺(jué)定位系統(tǒng),包括圖像獲取單元、二值化單元、存儲(chǔ)單元、剔除單元、提取單元以及位置獲取單元;

所述圖像獲取單元,用于獲取圖像數(shù)據(jù);

所述二值化單元,用于對(duì)所述圖像數(shù)據(jù)進(jìn)行實(shí)時(shí)自適應(yīng)二值化處理,獲取二值化圖像;

所述存儲(chǔ)單元,用于矯正或掃描所述二值化圖像,檢測(cè)所述二值化圖像內(nèi)的輪廓,存儲(chǔ)所述輪廓;

所述剔除單元,用于剔除存儲(chǔ)的所述輪廓中不符合要求的輪廓;

所述提取單元,用于提取符合要求的輪廓的特征以及質(zhì)心;

所述位置獲取單元,用于獲取具體的位置信息。

其進(jìn)一步技術(shù)方案為:所述二值化單元包括灰度值統(tǒng)計(jì)模塊、平均閾值獲取模塊以及處理模塊;

所述灰度值統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述圖像數(shù)據(jù)的灰度值;

所述平均閾值獲取模塊,用于在本幀圖像輸出完畢后,獲取平均閾值;

所述處理模塊,用于在下一幀圖像到來(lái)時(shí),采用本幀圖像獲取的所述平均閾值進(jìn)行二值化處理。

本發(fā)明與現(xiàn)有技術(shù)相比的有益效果是:本發(fā)明的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法,通過(guò)圖像傳感器獲取圖像信息,提取標(biāo)簽信息,并輸出給agv相應(yīng)的坐標(biāo)、角度、標(biāo)簽信息,agv通過(guò)提供的信息進(jìn)行定位,采用二值化處理方法對(duì)圖像進(jìn)行二值化處理,在求平均閾值時(shí)采用全局求均值的方法,二值化后圖像輪廓比較少,加快了后期處理輪廓的速度,通過(guò)邏輯方式處理二維碼的解碼,節(jié)省了反應(yīng)時(shí)間,采用zynq作為處理的平臺(tái),處理更加靈活,性能速度更快,實(shí)現(xiàn)定位處理過(guò)程更加靈活,效率高,定位準(zhǔn)確度高。

下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述。

附圖說(shuō)明

圖1為本發(fā)明具體實(shí)施例提供的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法的流程圖;

圖2為本發(fā)明具體實(shí)施例提供的對(duì)圖像數(shù)據(jù)進(jìn)行實(shí)時(shí)自適應(yīng)二值化處理的具體流程圖;

圖3為本發(fā)明具體實(shí)施例提供的檢測(cè)二值化圖像內(nèi)的輪廓的具體流程圖;

圖4為本發(fā)明具體實(shí)施例提供的獲取具體的位置信息的具體流程圖;

圖5為本發(fā)明具體實(shí)施例提供的根據(jù)質(zhì)心和輪廓的頂點(diǎn)獲取偏轉(zhuǎn)角度的具體流程圖;

圖6為本發(fā)明具體實(shí)施例提供的獲取二維碼的相對(duì)位置的具體流程圖;

圖7為本發(fā)明具體實(shí)施例提供的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位裝置的結(jié)構(gòu)框圖;

圖8為本發(fā)明具體實(shí)施例提供的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位系統(tǒng)的結(jié)構(gòu)框圖;

圖9為本發(fā)明具體實(shí)施例提供的二值化單元的結(jié)構(gòu)框圖;

圖10為本發(fā)明具體實(shí)施例提供的存儲(chǔ)單元的結(jié)構(gòu)框圖;

圖11為本發(fā)明具體實(shí)施例提供的位置獲取單元的結(jié)構(gòu)框圖;

圖12為本發(fā)明具體實(shí)施例提供的偏轉(zhuǎn)角度獲取模塊的結(jié)構(gòu)框圖;

圖13為本發(fā)明具體實(shí)施例提供的二維碼獲取模塊的結(jié)構(gòu)框圖。

具體實(shí)施方式

為了更充分理解本發(fā)明的技術(shù)內(nèi)容,下面結(jié)合具體實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)一步介紹和說(shuō)明,但不局限于此。

如圖1~13所示的具體實(shí)施例,本實(shí)施例提供的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法,可以運(yùn)用在物流機(jī)器人無(wú)軌視覺(jué)定位過(guò)程中,實(shí)現(xiàn)定位處理過(guò)程更加靈活,效率高,定位準(zhǔn)確度高。

如圖1所示,是本實(shí)施例提供的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法,該方法包括:

s1、獲取圖像數(shù)據(jù);

s2、對(duì)所述圖像數(shù)據(jù)進(jìn)行實(shí)時(shí)自適應(yīng)二值化處理,獲取二值化圖像;

s3、矯正或掃描所述二值化圖像,檢測(cè)所述二值化圖像內(nèi)的輪廓,存儲(chǔ)所述輪廓;

s4、剔除存儲(chǔ)的所述輪廓中不符合要求的輪廓;

s5、提取符合要求的輪廓的特征以及質(zhì)心;

s6、獲取具體的位置信息。

對(duì)于上述的s1步驟,在邏輯部分編寫圖像傳感器驅(qū)動(dòng),配置相應(yīng)寄存器,配置成符合圖像條件的狀態(tài),利用圖像傳感器獲取圖像數(shù)據(jù)。

更進(jìn)一步的,對(duì)于s2、對(duì)所述圖像數(shù)據(jù)進(jìn)行實(shí)時(shí)自適應(yīng)二值化處理,獲取二值化圖像,具體包括以下步驟:

s21、統(tǒng)計(jì)所述圖像數(shù)據(jù)的灰度值;

s22、在本幀圖像輸出完畢后,獲取平均閾值;

s23、在下一幀圖像到來(lái)時(shí),采用本幀圖像獲取的所述平均閾值進(jìn)行二值化處理。

圖像的二值化就是將圖像上的像素點(diǎn)的灰度值設(shè)置為0或255,這樣將使整個(gè)圖像呈現(xiàn)出明顯的黑白效果。在數(shù)字圖像處理中,二值圖像占有非常重要的地位,圖像的二值化使圖像中數(shù)據(jù)量大為減少,從而能凸顯出目標(biāo)的輪廓。

二值化目的是把灰度圖像轉(zhuǎn)換為黑白兩種顏色的圖像,根據(jù)閾值求取。目前可用arm/dsp/fpga/pc等平臺(tái)上實(shí)現(xiàn),相比來(lái)說(shuō)在fpga上實(shí)現(xiàn)相對(duì)較快,可以近似流水實(shí)現(xiàn)。在fpga上實(shí)現(xiàn)有很多種方法,有經(jīng)典的大津算法、大津改進(jìn)算法、局部大津算法等。采用平均閾值的二值化,實(shí)現(xiàn)流水操作,傳感器采集的數(shù)據(jù)直接轉(zhuǎn)換為二值化圖像,不需要存儲(chǔ),而且實(shí)現(xiàn)動(dòng)態(tài)閾值??梢赃\(yùn)用在物流搬運(yùn)機(jī)器人(agv)上,應(yīng)用環(huán)境比較固定,主要是在機(jī)器人底部用于標(biāo)簽識(shí)別,頂部用于物料識(shí)別,而且圖像傳感器周圍有光源照射,所以環(huán)境變動(dòng)比較慢。在這個(gè)前提下提出實(shí)時(shí)動(dòng)態(tài)閥值,將上一幀的閾值當(dāng)作本次的閾值進(jìn)行二值化處理。

對(duì)于s22步驟,在求平均閾值時(shí)采用全局求均值的方法,這種求閾值的方法相對(duì)局部算法和大津算法相比,二值化后圖像輪廓比較少,加快了后期處理輪廓的速度。

更進(jìn)一步的,s3步驟,矯正或掃描所述二值化圖像,檢測(cè)所述二值化圖像內(nèi)的輪廓,存儲(chǔ)所述輪廓的步驟,包括以下具體步驟:

s31、從二值化圖像的左上角進(jìn)行遍歷;

s32、判斷是否檢測(cè)到有0以及1跳變;

s33、若檢測(cè)到有0以及1跳變,記錄跳變的像素點(diǎn)的坐標(biāo),以所述像素點(diǎn)逆時(shí)針旋轉(zhuǎn)查找1像素點(diǎn),對(duì)1像素點(diǎn)進(jìn)行記錄標(biāo)記,并繼續(xù)查找1像素點(diǎn),直至所述像素的周圍不存在大于1的像素點(diǎn);

s34、繼續(xù)遍歷像素點(diǎn)繼續(xù)遍歷,直到遍歷完整幅二值化圖像為止。

s35、若沒(méi)有檢測(cè)到有0以及1跳變,則進(jìn)入結(jié)束步驟。

s31步驟,從二值化圖像的左上角進(jìn)行遍歷,在本實(shí)施例中,是從左上角開(kāi)始遍歷,所謂遍歷(traversal),是指沿著某條搜索路線,依次對(duì)樹(shù)中每個(gè)結(jié)點(diǎn)均做一次且僅做一次訪問(wèn),另外,于其他實(shí)施例,還可以從右上角等其他角點(diǎn)開(kāi)始遍歷,直至整幅二值化圖像都完成遍歷。

對(duì)于s33步驟,于其他實(shí)施例,還可以以像素點(diǎn)順時(shí)針旋轉(zhuǎn)查找1像素點(diǎn),根據(jù)具體實(shí)際情況而定。

s4步驟,剔除存儲(chǔ)的所述輪廓中不符合要求的輪廓,主要是為了留下符合要求的輪廓,以便于提取符合要求的輪廓的特征和質(zhì)心。

s5步驟,提取符合要求的輪廓的特征和質(zhì)心,由于datamatrix碼有兩個(gè)直線邊,剩下兩個(gè)邊是1、0交替出現(xiàn)的,可以通過(guò)測(cè)量質(zhì)心和角點(diǎn)的距離確定距離最近的點(diǎn)為datamatrix碼l邊的角點(diǎn)。

更進(jìn)一步的,s6步驟,獲取具體的位置信息的步驟,包括以下具體步驟:

s61、根據(jù)質(zhì)心和所述輪廓的頂點(diǎn)獲取偏轉(zhuǎn)角度;

s62、提取所述輪廓內(nèi)的二維碼信息,對(duì)所述二維碼進(jìn)行譯碼處理,獲取二維碼的相對(duì)位置;

s63、根據(jù)所述輪廓內(nèi)的角點(diǎn)計(jì)算相對(duì)坐標(biāo);

s64、輸出譯碼信息、相對(duì)坐標(biāo)信息以及相對(duì)偏轉(zhuǎn)角度信息。

對(duì)于上述s61步驟,根據(jù)質(zhì)心和所述輪廓的頂點(diǎn)獲取偏轉(zhuǎn)角度的步驟,包括以下具體步驟:

s611、計(jì)算所述輪廓的左上角的角點(diǎn)以及其對(duì)角點(diǎn),計(jì)算左上角的角點(diǎn)反正切值和右上角的角點(diǎn)反正切值;

s612、根據(jù)所述質(zhì)心以及左上角的角點(diǎn)反正切值和右上角的角點(diǎn)反正切值,獲取偏轉(zhuǎn)角度信息。

對(duì)于s62步驟,提取所述輪廓內(nèi)的二維碼信息,對(duì)所述二維碼進(jìn)行譯碼處理,獲取二維碼的相對(duì)位置的步驟,包括以下具體步驟:

s621、獲取二維碼四個(gè)角點(diǎn)的坐標(biāo);

s622、根據(jù)四個(gè)角點(diǎn)的坐標(biāo)計(jì)算中心點(diǎn)的坐標(biāo);

s623、對(duì)比所述中心點(diǎn)的坐標(biāo)以及所述二值化圖像的中心點(diǎn)的坐標(biāo),獲取二維碼相對(duì)位置信息;

s624、對(duì)符合要求的輪廓范圍內(nèi)的圖像進(jìn)行提取采樣,輸出符合要求的輪廓內(nèi)的碼信息;

s625、對(duì)所述碼信息進(jìn)行解碼處理,根據(jù)碼的大小規(guī)則把bit碼轉(zhuǎn)換為字節(jié)碼;

s626、對(duì)轉(zhuǎn)換好的字節(jié)碼進(jìn)行rs譯碼操作,進(jìn)行糾錯(cuò);

s627、判斷提取的碼信息是否存在錯(cuò)誤;

s628、若存在錯(cuò)誤,則判斷所述錯(cuò)誤是否在糾錯(cuò)范圍內(nèi);

s629、若所述錯(cuò)誤在糾錯(cuò)范圍內(nèi),則輸出糾錯(cuò)的碼信息;

s630、若所述錯(cuò)誤不在糾錯(cuò)范圍內(nèi),則輸出報(bào)錯(cuò)信息,并返回s624步驟;

s631、若不存在錯(cuò)誤,則直接輸出碼信息。

對(duì)于s624步驟,對(duì)符合要求的輪廓范圍內(nèi)的圖像進(jìn)行提取采樣,輸出符合要求的輪廓內(nèi)的碼信息,獲取的碼信息會(huì)輸送至fpga處理器的邏輯部分,fpga處理器的邏輯部分接收到碼信息之后會(huì)進(jìn)行解碼處理。

上述的s621步驟至s631步驟的二維碼解碼放在fpga處理器的邏輯(pl)部分實(shí)現(xiàn),通過(guò)邏輯方式實(shí)現(xiàn)比傳統(tǒng)的通過(guò)arm或dsp實(shí)現(xiàn)更快,節(jié)省了反應(yīng)時(shí)間。

另外,上述的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法采用了可擴(kuò)展處理平臺(tái)zynq作為處理的平臺(tái),相對(duì)于傳統(tǒng)的fpga或dsp處理更加靈活,性能速度更快。

上述的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位方法,通過(guò)圖像傳感器獲取圖像信息,提取標(biāo)簽信息,并輸出給agv相應(yīng)的坐標(biāo)、角度、標(biāo)簽信息,agv通過(guò)提供的信息進(jìn)行定位,采用二值化處理方法對(duì)圖像進(jìn)行二值化處理,在求平均閾值時(shí)采用全局求均值的方法,二值化后圖像輪廓比較少,加快了后期處理輪廓的速度,通過(guò)邏輯方式處理二維碼的解碼,節(jié)省了反應(yīng)時(shí)間,采用zynq作為處理的平臺(tái),處理更加靈活,性能速度更快,實(shí)現(xiàn)定位處理過(guò)程更加靈活,效率高,定位準(zhǔn)確度高。

如圖7所示,本實(shí)施例還提供了用于無(wú)軌導(dǎo)航agv的視覺(jué)定位裝置,包括圖像傳感器、存儲(chǔ)器以及處理器,所述圖像傳感器以及所述存儲(chǔ)器分別與所述處理器連接,圖像傳感器獲取圖像數(shù)據(jù)后,傳輸至處理器進(jìn)行處理,處理器將處理后的數(shù)據(jù)傳輸至存儲(chǔ)器存儲(chǔ)。

上述的存儲(chǔ)器為ddr存儲(chǔ)器,處理器為fpga。

如圖8所示,本實(shí)施例還提供了用于無(wú)軌導(dǎo)航agv的視覺(jué)定位系統(tǒng),包括圖像獲取單元1、二值化單元2、存儲(chǔ)單元3、剔除單元4、提取單元5以及位置獲取單元6。

圖像獲取單元1,用于獲取圖像數(shù)據(jù)。

二值化單元2,用于對(duì)所述圖像數(shù)據(jù)進(jìn)行實(shí)時(shí)自適應(yīng)二值化處理,獲取二值化圖像。

存儲(chǔ)單元3,用于矯正或掃描所述二值化圖像,檢測(cè)所述二值化圖像內(nèi)的輪廓,存儲(chǔ)所述輪廓。

剔除單元4,用于剔除存儲(chǔ)的所述輪廓中不符合要求的輪廓。

提取單元5,用于提取符合要求的輪廓的特征以及質(zhì)心。

位置獲取單元6,用于獲取具體的位置信息。

在邏輯部分編寫圖像傳感器驅(qū)動(dòng),配置相應(yīng)寄存器,配置成符合圖像條件的狀態(tài),利用圖像獲取單元1(即圖像傳感器)獲取圖像數(shù)據(jù)。

更進(jìn)一步的,上述的二值化單元2包括灰度值統(tǒng)計(jì)模塊21、平均閾值獲取模塊22以及處理模塊23。

灰度值統(tǒng)計(jì)模塊21,用于統(tǒng)計(jì)所述圖像數(shù)據(jù)的灰度值。

平均閾值獲取模塊22,用于在本幀圖像輸出完畢后,獲取平均閾值。

處理模塊23,用于在下一幀圖像到來(lái)時(shí),采用本幀圖像獲取的所述平均閾值進(jìn)行二值化處理。

圖像的二值化就是將圖像上的像素點(diǎn)的灰度值設(shè)置為0或255,這樣將使整個(gè)圖像呈現(xiàn)出明顯的黑白效果。在數(shù)字圖像處理中,二值圖像占有非常重要的地位,圖像的二值化使圖像中數(shù)據(jù)量大為減少,從而能凸顯出目標(biāo)的輪廓。

二值化單元2對(duì)圖像進(jìn)行二值化目的是把灰度圖像轉(zhuǎn)換為黑白兩種顏色的圖像,根據(jù)閾值求取。目前可用arm/dsp/fpga/pc等平臺(tái)上實(shí)現(xiàn),相比來(lái)說(shuō)在fpga上實(shí)現(xiàn)相對(duì)較快,可以近似流水實(shí)現(xiàn)。在fpga上實(shí)現(xiàn)有很多種方法,有經(jīng)典的大津算法、大津改進(jìn)算法、局部大津算法等。采用平均閾值的二值化,實(shí)現(xiàn)流水操作,傳感器采集的數(shù)據(jù)直接轉(zhuǎn)換為二值化圖像,不需要存儲(chǔ),而且實(shí)現(xiàn)動(dòng)態(tài)閾值。可以運(yùn)用在物流搬運(yùn)機(jī)器人(agv)上,應(yīng)用環(huán)境比較固定,主要是在機(jī)器人底部用于標(biāo)簽識(shí)別,頂部用于物料識(shí)別,而且圖像傳感器周圍有光源照射,所以環(huán)境變動(dòng)比較慢。在這個(gè)前提下提出實(shí)時(shí)動(dòng)態(tài)閥值,將上一幀的閾值當(dāng)作本次的閾值進(jìn)行二值化處理。

平均閾值獲取模塊22在求平均閾值時(shí)采用全局求均值的方法,這種求閾值的方法相對(duì)局部算法和大津算法相比,二值化后圖像輪廓比較少,加快了后期處理輪廓的速度。

上述的存儲(chǔ)單元3包括遍歷模塊31以及判斷模塊32;其中,遍歷模塊31用于從二值化圖像的左上角進(jìn)行遍歷;判斷模塊32用于判斷是否檢測(cè)到有0以及1跳變;若檢測(cè)到有0以及1跳變,記錄跳變的像素點(diǎn)的坐標(biāo),以所述像素點(diǎn)逆時(shí)針旋轉(zhuǎn)查找1像素點(diǎn),對(duì)1像素點(diǎn)進(jìn)行記錄標(biāo)記,并繼續(xù)查找1像素點(diǎn),直至所述像素的周圍不存在大于1的像素點(diǎn);繼續(xù)遍歷像素點(diǎn)繼續(xù)遍歷,直到遍歷完整幅二值化圖像為止。若沒(méi)有檢測(cè)到有0以及1跳變,則進(jìn)入結(jié)束步驟。

在本實(shí)施例中,遍歷模塊31是從左上角開(kāi)始遍歷,所謂遍歷(traversal),是指沿著某條搜索路線,依次對(duì)樹(shù)中每個(gè)結(jié)點(diǎn)均做一次且僅做一次訪問(wèn),另外,于其他實(shí)施例,還可以從右上角等其他角點(diǎn)開(kāi)始遍歷,直至整幅二值化圖像都完成遍歷。

剔除單元4剔除存儲(chǔ)的所述輪廓中不符合要求的輪廓,主要是為了留下符合要求的輪廓,以便于提取符合要求的輪廓的特征和質(zhì)心。

提取單元5提取符合要求的輪廓的特征和質(zhì)心,由于datamatrix碼有兩個(gè)直線邊,剩下兩個(gè)邊是1、0交替出現(xiàn)的,可以通過(guò)測(cè)量質(zhì)心和角點(diǎn)的距離確定距離最近的點(diǎn)為datamatrix碼l邊的角點(diǎn)。

更進(jìn)一步的,位置獲取單元6包括偏轉(zhuǎn)角度獲取模塊61、二維碼獲取模塊62、角點(diǎn)計(jì)算模塊63以及輸出模塊64。

偏轉(zhuǎn)角度獲取模塊61,用于根據(jù)質(zhì)心和所述輪廓的頂點(diǎn)獲取偏轉(zhuǎn)角度。

二維碼獲取模塊62,用于提取所述輪廓內(nèi)的二維碼信息,對(duì)所述二維碼進(jìn)行譯碼處理,獲取二維碼的相對(duì)位置。

角點(diǎn)計(jì)算模塊63,用于根據(jù)所述輪廓內(nèi)的角點(diǎn)計(jì)算相對(duì)坐標(biāo)。

輸出模塊64,用于輸出譯碼信息、相對(duì)坐標(biāo)信息以及相對(duì)偏轉(zhuǎn)角度信息。

對(duì)于上述的偏轉(zhuǎn)角度獲取模塊61,其包括計(jì)算子模塊611以及信息獲取子模塊612。

計(jì)算子模塊611,用于計(jì)算所述輪廓的左上角的角點(diǎn)以及其對(duì)角點(diǎn),計(jì)算左上角的角點(diǎn)反正切值和右上角的角點(diǎn)反正切值;

信息獲取子模塊612,用于根據(jù)所述質(zhì)心以及左上角的角點(diǎn)反正切值和右上角的角點(diǎn)反正切值,獲取偏轉(zhuǎn)角度信息。

對(duì)于二維碼獲取模塊62包括角點(diǎn)坐標(biāo)獲取子模塊621、中心點(diǎn)坐標(biāo)計(jì)算子模塊622、相對(duì)位置獲取子模塊623、碼信息輸出子模塊624、解碼處理子模塊625、譯碼子模塊626以及錯(cuò)誤判斷子模塊627。

角點(diǎn)坐標(biāo)獲取子模塊621,用于獲取二維碼四個(gè)角點(diǎn)的坐標(biāo)。

中心點(diǎn)坐標(biāo)計(jì)算子模塊622,用于根據(jù)四個(gè)角點(diǎn)的坐標(biāo)計(jì)算中心點(diǎn)的坐標(biāo)。

相對(duì)位置獲取子模塊623,用于對(duì)比所述中心點(diǎn)的坐標(biāo)以及所述二值化圖像的中心點(diǎn)的坐標(biāo),獲取二維碼相對(duì)位置信息。

碼信息輸出子模塊624,用于對(duì)符合要求的輪廓范圍內(nèi)的圖像進(jìn)行提取采樣,輸出符合要求的輪廓內(nèi)的碼信息。

解碼處理子模塊625,用于對(duì)所述碼信息進(jìn)行解碼處理,根據(jù)碼的大小規(guī)則把bit碼轉(zhuǎn)換為字節(jié)碼。

譯碼子模塊626,用于對(duì)轉(zhuǎn)換好的字節(jié)碼進(jìn)行rs譯碼操作,進(jìn)行糾錯(cuò);

錯(cuò)誤判斷子模塊627,用于判斷提取的碼信息是否存在錯(cuò)誤;若存在錯(cuò)誤,則判斷所述錯(cuò)誤是否在糾錯(cuò)范圍內(nèi);若所述錯(cuò)誤在糾錯(cuò)范圍內(nèi),則輸出糾錯(cuò)的碼信息;若所述錯(cuò)誤不在糾錯(cuò)范圍內(nèi),則輸出報(bào)錯(cuò)信息,并返回對(duì)符合要求的輪廓范圍內(nèi)的圖像進(jìn)行提取采樣;若不存在錯(cuò)誤,則直接輸出碼信息。

上述的碼信息輸出子模塊624對(duì)符合要求的輪廓范圍內(nèi)的圖像進(jìn)行提取采樣,輸出符合要求的輪廓內(nèi)的碼信息,獲取的碼信息會(huì)輸送至fpga處理器的邏輯部分,fpga處理器的邏輯部分接收到碼信息之后會(huì)進(jìn)行解碼處理。

二維碼獲取模塊62所做的操作,主要放在fpga處理器的邏輯(pl)部分實(shí)現(xiàn),通過(guò)邏輯方式實(shí)現(xiàn)比傳統(tǒng)的通過(guò)arm或dsp實(shí)現(xiàn)更快,節(jié)省了反應(yīng)時(shí)間。

另外,上述的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位系統(tǒng)采用了可擴(kuò)展處理平臺(tái)zynq作為處理的平臺(tái),相對(duì)于傳統(tǒng)的fpga或dsp處理更加靈活,性能速度更快。

上述的用于無(wú)軌導(dǎo)航agv的視覺(jué)定位系統(tǒng),通過(guò)圖像獲取單元1獲取圖像信息,提取標(biāo)簽信息,并輸出給agv相應(yīng)的坐標(biāo)、角度、標(biāo)簽信息,agv通過(guò)提供的信息進(jìn)行定位,二值話單元采用二值化處理方法對(duì)圖像進(jìn)行二值化處理,在求平均閾值時(shí)采用全局求均值的方法,二值化后圖像輪廓比較少,加快了后期處理輪廓的速度,通過(guò)邏輯方式處理二維碼的解碼,節(jié)省了反應(yīng)時(shí)間,采用zynq作為處理的平臺(tái),處理更加靈活,性能速度更快,實(shí)現(xiàn)定位處理過(guò)程更加靈活,效率高,定位準(zhǔn)確度高。

上述僅以實(shí)施例來(lái)進(jìn)一步說(shuō)明本發(fā)明的技術(shù)內(nèi)容,以便于讀者更容易理解,但不代表本發(fā)明的實(shí)施方式僅限于此,任何依本發(fā)明所做的技術(shù)延伸或再創(chuàng)造,均受本發(fā)明的保護(hù)。本發(fā)明的保護(hù)范圍以權(quán)利要求書為準(zhǔn)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1