一種基于dsp的機器人視覺路徑識別方法
【技術領域】
[0001] 本發(fā)明屬于機器人視覺領域,涉及一種路徑識別方法,尤其涉及一種基于DSP的 機器人視覺路徑識別方法。
【背景技術】
[0002] 隨著科學技術的迅猛發(fā)展,機器人技術日新月異。在機器人技術中,機器人視覺占 有舉足輕重的位置,它充當著機器人眼睛的作用。導航技術也是機器人技術中很重要的一 個方面,利用機器人視覺進行導航,可以降低成本,提高處理效率。
[0003] DSP處理圖像芯片(DigitalSignalProcessor的簡稱,即數字信號處理器)以 其適應于高速數字信號處理的內部結構,在圖像處理領域發(fā)揮了不可替代的作用,特別在 實時處理視頻流方面,有優(yōu)越的性能表現。CodeComposerStudio?(CCS)是用于德州儀器 (TD嵌入式處理器系列的集成開發(fā)環(huán)境(IDE),即DSP嵌入式系列的開發(fā)環(huán)境,編輯語言為 C++。用CCS軟件開發(fā)以DSP為處理芯片的嵌入式系統(tǒng)既方便快捷又省時省力。
[0004] 目前在路徑識別方法方面,主要以靜態(tài)圖片分析為主。路徑識別一般流程為:圖 像去噪,形態(tài)學分析,圖像閾值化(二值化),提取特征像素值,數學方法計算出擬合導航直 線(或曲線),進行誤差分析。因為圖片本身信息量較大,處理圖片時需要進行大量的數學 計算,并且占用較大內存空間,所以一般的處理方法將會花費較長時間,不利于實時性的處 理。所以在動態(tài)視頻流的實時處理方面,還需要簡單易行的方法來快速完成機器人路徑識 別的處理。
【發(fā)明內容】
[0005] 針對上述的問題,本發(fā)明的目的在于提供一種基于DSP的機器人視覺路徑識別方 法,是一種視頻流的檢測方法,能快速檢測道路邊緣及道路岔口情況,進行視頻流的實時結 果顯不。
[0006] 本發(fā)明的工作原理如下:
[0007] 檢測開始時,(XD攝像頭提取第一幀路面圖像,在DSP開發(fā)板上進行解碼,以十六 進制格式存儲,然后DSP芯片即可對圖像進行處理,處理過的圖像經過DSP開發(fā)板編碼顯示 在顯示屏上。該方法利用C++語言進行編程,具體流程如下:
[0008] (1)提取圖像YUV顏色空間的Y(灰度值)分量;
[0009] (2)4X4中值濾波圖像去噪;
[0010] ⑶轉換為二值圖像,取分割閾值為161 ;
[0011] (4)確定岔口檢測區(qū)域;
[0012] (5)計數閾值為255的像素點,除以該區(qū)域像素點總數,結果是否大于0. 8,大于 0. 8,給岔口標識區(qū)域的像素灰度賦值為40 (灰色),小于0. 8,則不賦值;
[0013] (6)確定道路邊緣檢測區(qū)域;
[0014] (7)計數閾值為0的像素點,除以該區(qū)域像素點總數,結果是否大于0.8,大于0.8, 使道路邊緣標識區(qū)域的像素灰度值賦為40 (灰色),小于0. 8,則不賦值;
[0015] 處理后的圖像信息經過DSP開發(fā)板編碼顯示到IXD屏上,然后進行下一幀的檢測。
[0016] 具體處理過程如下:
[0017] 首先對路徑圖像進行去噪聲并閾值化,使其成為二值圖像,即黑白兩種顏色的圖 像。在一般光照下經過多次試驗,取分割閩值為161,分割后,路面圖像的閾值為0,道路邊 緣及路面以外的圖像閾值為255,并伴有很多噪聲點。然后根據路面結構特性,道路岔口會 首先出現在圖像的上方,所以在圖像上方合適的位置分別提取左右兩個區(qū)域為檢測區(qū)域, 并劃分出標識警示區(qū)域,用于顯示。當岔口出現時,圖像中閾值分割可分割出岔口路面,監(jiān) 測區(qū)域內同時統(tǒng)計閾值為255 (判定為路面的像素)的像素個數,然后除以監(jiān)測區(qū)域的總像 素數,如果比率超過0.8,顯示屏上立即標出岔口方向。
[0018] 然后根據攝像頭所放置的位置,在圖像中部分別取兩個區(qū)域,作為左右道路邊緣 的檢測區(qū)域,當機器人靠近道路邊緣時,與檢測岔口相似的方法,檢測區(qū)域開始統(tǒng)計閾值為 〇(判定為非路面的像素)的像素個數,然后除以監(jiān)測區(qū)域的總像素數,如果比率超過0. 8, 顯示屏上會標出符號警示道路邊緣。
[0019] 每一幀圖像進行同樣的檢測方法,檢測速度可達到大約25幀/秒。
[0020] 與現有方法相比,本發(fā)明具有以下優(yōu)點:
[0021] 1)本發(fā)明所使用的方法簡單,大大提高芯片運行速度,滿足實時處理要求。
[0022] 2)該方法能快速檢測道路岔口與道路邊緣,然后實時顯示岔口方向提示與道路邊 緣提示。
[0023] 3)該方法編程較簡單,且相對獨立,可以移植到任意機器人路徑識別系統(tǒng)中。
【附圖說明】
[0024] 圖1是本發(fā)明一種基于DSP的機器人視覺路徑識別方法所使用的像素坐標系;
[0025] 圖2是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的圖像處理流程圖;
[0026] 圖3是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的道路岔口檢測方法流程 圖;
[0027] 圖4是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的道路邊緣檢測方法流程 圖;
[0028] 圖5a是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的道路岔口實例;
[0029] 圖5b是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的岔口檢測效果圖;
[0030] 圖6a是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的道路邊緣實例;
[0031] 圖6b是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的道路二值化圖像;
[0032] 圖6c是本發(fā)明一種基于DSP的機器人視覺路徑識別方法的道路邊緣檢測效果圖。
【具體實施方式】
[0033] 下面結合附圖對本發(fā)明作進一步說明。
[0034] 檢測開始時,攝像頭提取路面圖像,在DSP開發(fā)板上進行解碼,以十六進制格式存 儲,然后DSP芯片即可對圖像進行處理,處理完成的圖像經過DSP開發(fā)板編碼顯示在顯示屏 上。具體處理過程如下:
[0035] 圖1表示的是像素空間坐標系,根據該圖有如下數字化圖像函數:
[0037] 該發(fā)明中:M= 576,N= 720。
[0038] 該發(fā)明的運作流程如圖2所示,檢測開始時,攝像頭提取一幀路面圖像,獲取圖像 分別率為720X576,以十六進制格式進行存儲,然后對圖像進行二值化,然后再進行岔口檢 測和道路邊緣檢測,將檢測結果顯示在顯示屏上,處理完成后再進行下一幀圖像的處理。
[0039] 以圖6a的道路為例,首先對路徑圖像去噪,然后進行閾值化,使其成為二值圖像, 如圖6b,即黑白兩種顏色的圖像。在一般光照下經過多次試驗后取分割閾值為161,分割 后,路面圖像的閾值為255,道路邊緣及路面以外部分的圖像閾值為0。fj^y)即為二值化 后的圖像函數:
[0041] 以圖5a的道路為例,根據路面結構特性,道路岔口會首先出現在圖像的上方,所 以在圖像上方合適的位置分別提取左右兩個區(qū)域為檢測區(qū)域,左邊選擇像素檢測區(qū)域為:x =0 到x= 60,y= 0 到y(tǒng)= 100,右邊為:x= 0 到x= 60,y= 600 到y(tǒng)= 720。選擇的 區(qū)域可以根據道路情況不同而改變。
[0042] 如圖3所示岔口檢測流程,當一邊岔口出現時,圖像中閾值化分割出岔口路面,檢 測區(qū)域內同時統(tǒng)計閾值A(x,y)為255 (判定為路面的像素)的像素個數n,該區(qū)域檢測完 畢后,用統(tǒng)計的n值除以監(jiān)測區(qū)域的總像素數m,此時m= 100X60 = 6000,如果比率y:超 過= 0. 8,給岔口標識區(qū)域的像素灰度賦值為40 (灰色),如果小于0. 8,則不賦值。公 式如下:
[0043] u ! = n/m
[0044] 圖5b為道路岔口檢測效果圖,當攝像頭拍攝到右邊的岔口時,可以看到圖像右上 方出現的"一",用黑線圓圈圈出。
[0045] 道路邊緣檢測以圖6a為例,根據攝像頭所放置的位置,在圖像中部分別取兩個區(qū) 域,作為左右道路邊緣的檢測區(qū)域。圖6b所示,監(jiān)測區(qū)域位于圖中黑色線框內:左邊檢測區(qū) 域為:x= 200 到x= 280,y= 100 到y(tǒng)= 140,右邊檢測區(qū)域:x= 200 到x= 280,y= 580到y(tǒng)= 620。選擇的區(qū)域可以根據道路情況不同而改變。
[0046] 當攝像頭靠近道路邊緣時,如圖4所示,與檢測岔口相似的方法,檢測區(qū)域開始統(tǒng) 計閾值為〇 (判定為非路面的像素)的像素個數n,檢測完后用統(tǒng)計的n除以監(jiān)測區(qū)域的總 像素數m,此時m= 80X40 = 3200,如果y2超過y。= 0? 8,顯示屏上會標出符號警示道 路邊緣。公式如下:
[0047] u 2 = n/m
[0048] 圖6c為道路邊緣檢測效果圖,當攝像頭拍攝到左側邊緣時,可以看到黑線框左側 有倒"L"型的提示標志,用白線圓圈圈出。
[0049] 根據上述的說明內容,相關工作人員完全可以在不偏離本項發(fā)明技術思想的范圍 內,進行多樣的變更與修改。本項發(fā)明的技術性范圍并不局限于說明書上的內容,凡在本發(fā) 明的精神和原則之內所做的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍 之內。
【主權項】
1. 一種基于DSP的機器人視覺路徑識別方法,其中:由C⑶攝像頭拍攝的圖像經過DSP 開發(fā)板解碼為數字信息存儲到存儲器中,然后由DSP芯片獲取圖像信息進行處理,該處理 方法用C++語言編程,特征如下: (1) 提取圖像YUV顏色空間的Y(灰度值)分量; (2) 4X4中值濾波圖像去噪; (3) 轉換為二值圖像,取分割閾值為161 ; (4) 確定岔口檢測區(qū)域; (5) 計數閾值為255的像素點,除以該區(qū)域像素點總數,結果是否大于0. 8,大于0. 8,給 岔口標識區(qū)域的像素灰度為40 (灰色),小于0. 8,則不賦值; (6) 確定道路邊緣檢測區(qū)域; (7) 計數閾值為0的像素點,除以該區(qū)域像素點總數,結果是否大于0. 8,大于0. 8,使道 路邊緣標識區(qū)域的像素灰度值賦為40 (灰色),小于0. 8,則不賦值; 處理后的圖像信息經過DSP開發(fā)板編碼顯示到IXD屏上,然后進行下一幀的檢測。
【專利摘要】一種基于DSP的機器人視覺路徑識別方法,其特征在于:由CCD攝像頭拍攝的圖像經過DSP開發(fā)板解碼為數字信息存儲到存儲器中,然后由DSP芯片獲取圖像信息進行處理,該處理方法用C++語言編程,流程為:圖像去噪、圖像閾值化、道路岔口檢測、道路邊緣檢測、實時顯示檢測結果。該機器人視覺路徑識別方法能快速檢測道路岔口與道路邊緣,然后實時顯示岔口方向提示與道路邊緣提示。該方法編程簡單,提高機器人實時處理效率,且可以移植于任意的機器人路徑識別系統(tǒng),可進行廣泛推廣。
【IPC分類】G05D1/02
【公開號】CN104898657
【申請?zhí)枴緾N201410085265
【發(fā)明人】楊福增, 張夢蕓, 徐新星, 李偉, 蒲應俊, 潘冠廷, 魏子凱, 王元杰
【申請人】西北農林科技大學
【公開日】2015年9月9日
【申請日】2014年3月6日