基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法
【專利摘要】本發(fā)明公開(kāi)了一種基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法,其特征在于,包括以下步驟:1)采用非線性濾波對(duì)攝像頭采集的車輛前方道路圖像進(jìn)行預(yù)處理;2)對(duì)預(yù)處理后圖像進(jìn)行canny邊緣檢測(cè);3)在canny邊緣檢測(cè)基礎(chǔ)上尋找左右邊界,取左右邊界的平均值為中心點(diǎn),得到所有中心點(diǎn)構(gòu)成中心線陣列;4)給中心線陣列賦權(quán)值,其中離攝像頭近的區(qū)域的中心點(diǎn)權(quán)值大于離攝像頭遠(yuǎn)的區(qū)域的中心點(diǎn)權(quán)值,取所有中心點(diǎn)的橫坐標(biāo)加權(quán)平均值作為舵機(jī)PD控制的目標(biāo)點(diǎn),調(diào)節(jié)PD的值來(lái)控制舵機(jī)的角度。該方法以中心點(diǎn)的橫坐標(biāo)加權(quán)平均值作為舵機(jī)PD控制的目標(biāo)點(diǎn),舵機(jī)采用PD控制,增強(qiáng)了車子沿線能力,轉(zhuǎn)向提前,減少入彎出彎轉(zhuǎn)向,實(shí)現(xiàn)切彎效果。
【專利說(shuō)明】
基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及一種路線識(shí)別及控制方法,尤其是涉及一種基于可見(jiàn)光圖像的自動(dòng)導(dǎo) 引運(yùn)輸車路線識(shí)別及控制方法,屬于導(dǎo)航技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 隨著機(jī)器人技術(shù)的發(fā)展,傳感器技術(shù)、機(jī)器視覺(jué)、自動(dòng)控制技術(shù)越來(lái)越成熟,人們 越來(lái)越希望有可以不需要人為操控即可以自動(dòng)行駛到達(dá)目的地的汽車,這一期望也漸漸即 將成為現(xiàn)實(shí)。真實(shí)城市交通無(wú)人駕駛技術(shù)研究情況復(fù)雜,其中交通道路的識(shí)別與行車線路 的控制是重要組成部分,對(duì)于智能小車黑白軌道識(shí)別與行車控制的研究能夠?yàn)闊o(wú)人駕駛技 術(shù)打下基礎(chǔ)。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的是提供了一種基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制 方法,采用單片機(jī)為核心運(yùn)算控制器,通過(guò)攝像頭采集軌道圖像信息,提取黑白引導(dǎo)線,用 于軌道識(shí)別,采用ro控制算法來(lái)控制舵機(jī)轉(zhuǎn)向,使其沿著軌道行進(jìn)。
[0004] 本發(fā)明技術(shù)方案如下:一種基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方 法,包括以下步驟:
[0005] 1)采用非線性濾波對(duì)攝像頭采集的車輛前方道路圖像進(jìn)行預(yù)處理;
[0006] 2)對(duì)預(yù)處理后圖像進(jìn)行canny邊緣檢測(cè);
[0007] 3)在canny邊緣檢測(cè)基礎(chǔ)上尋找左右邊界,取左右邊界的平均值為中心點(diǎn),得到所 有中心點(diǎn)構(gòu)成中心線陣列;
[0008] 4)給中;L、線陣列賦權(quán)值,其中尚攝像頭近的區(qū)域的中;1_1、點(diǎn)權(quán)值大于尚攝像頭遠(yuǎn)的 區(qū)域的中心點(diǎn)權(quán)值,取所有中心點(diǎn)的橫坐標(biāo)加權(quán)平均值作為舵機(jī)PD控制的目標(biāo)點(diǎn),調(diào)節(jié)PD 的值來(lái)控制舵機(jī)的角度。
[0009] 優(yōu)選的,所述步驟1)中預(yù)處理為中值濾波去噪。
[0010] 優(yōu)選的,所述步驟3)中尋找左右邊界是在canny邊緣檢測(cè)后整幅圖像的下方3/4高 度區(qū)域采用中心擴(kuò)散法尋找左右邊界。
[0011]優(yōu)選的,所述給中心線陣列賦權(quán)值前,對(duì)所有中心點(diǎn)的坐標(biāo)數(shù)組進(jìn)行一維中值濾 波去噪。
[0012] 本發(fā)明所提供的技術(shù)方案的優(yōu)點(diǎn)在于:
[0013] a)該方法采用普通攝像頭采集的光學(xué)圖像信息進(jìn)行分析、識(shí)別和控制,對(duì)于在玩 具車等小型智能車中的應(yīng)用容易推廣,成本較低。
[0014] b)采用視覺(jué)光學(xué)圖像信息,與真實(shí)自動(dòng)駕駛具有很強(qiáng)相似性、實(shí)用性,為以后研究 真實(shí)城市交通無(wú)人駕駛打下基礎(chǔ)。
[0015] c)所有中心點(diǎn)的橫坐標(biāo)加權(quán)平均值作為舵機(jī)PD控制的目標(biāo)點(diǎn),舵機(jī)采用PD控制, 不使用積分項(xiàng),使得車子能在高速行駛時(shí)仍然可以保持車身穩(wěn)定,沒(méi)有震蕩,增強(qiáng)車子沿線 能力,并使得轉(zhuǎn)向提前,實(shí)現(xiàn)切彎效果??刂扑惴ㄖ幸胛⒎猪?xiàng)以后,可使得車子入彎道時(shí) 轉(zhuǎn)向提前,出彎道時(shí)轉(zhuǎn)向減少。
【附圖說(shuō)明】
[0016] 圖1為正交編碼器AB兩相輸出脈沖示意圖;
[0017] 圖2為基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法流程圖;
[0018]圖3為攝像頭采集圖像;
[0019]圖4為中值濾波預(yù)處理后圖像;
[0020]圖5為采用Canny算子邊緣檢測(cè)結(jié)果;
[0021]圖6為跑道中線檢測(cè)結(jié)果。
【具體實(shí)施方式】
[0022]下面結(jié)合實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,但不作為對(duì)本發(fā)明的限定。
[0023]為實(shí)現(xiàn)本發(fā)明構(gòu)件的硬件系統(tǒng)包括單片機(jī)、加速度傳感器、馬達(dá)H橋驅(qū)動(dòng)電路、馬 達(dá)轉(zhuǎn)速編碼器、攝像頭、舵機(jī)驅(qū)動(dòng)電路、電源模塊、鍵盤(pán)模塊、顯示模塊等部分組成,主要部 分說(shuō)明:
[0024] 1)本發(fā)明選用的處理器芯片是飛思卡爾半導(dǎo)體公司提供的MK60DN512ZVL芯片, MK60DN512ZVL是飛思卡爾研發(fā)的用于汽車電子的一款高性能ARM Cortex-M4內(nèi)核芯片,廣 泛應(yīng)用于工業(yè)控制中,主頻為100MHZ,可超頻至120MHZ,它帶有DSP指令,提供浮點(diǎn)單元,多 達(dá)32通道的DMA可用于采集攝像頭數(shù)據(jù)并且不會(huì)影響CPU的正常工作,128KB的RAM可用來(lái)存 儲(chǔ)320*240的軌道圖像,1MB的程序存儲(chǔ)器用來(lái)存儲(chǔ)大量的程序。與此同時(shí),單片機(jī)提供的16 位高精度AD可以用來(lái)采集三軸加速度計(jì)的數(shù)值,兩個(gè)FTM模塊剛好可以用來(lái)輸出PWM控制馬 達(dá)轉(zhuǎn)速。
[0025] 2)采用飛思卡爾公司生產(chǎn)的三軸加速度傳感器MMA7361,用于汽車上坡的檢測(cè)是 不錯(cuò)的選擇,它還可以應(yīng)用于手柄、飛行器、傾斜度、硬盤(pán)保護(hù)、機(jī)器人平衡檢測(cè)等。
[0026] 3)馬達(dá)H橋驅(qū)動(dòng)器,H橋是一種電機(jī)拖動(dòng)上常用的電子電路,可使其連接的馬達(dá)正 轉(zhuǎn)和反轉(zhuǎn)。這種電路常見(jiàn)于機(jī)器人及其它實(shí)作場(chǎng)合中直流電動(dòng)機(jī)的正反轉(zhuǎn)控制及轉(zhuǎn)速控 制、步進(jìn)電機(jī)控制,電能變換中的大部分直流-交流變換器(如逆變器及變頻器)、部分直流-直流變換器等,以及其它的功率電子裝置。
[0027] 4)馬達(dá)轉(zhuǎn)速編碼器有光電式和磁式,本系統(tǒng)使用紅外對(duì)射二極管進(jìn)行制作,使用 的編碼器為增量型編碼器,可檢測(cè)正反轉(zhuǎn),其原因是編碼器有A相和B相,兩相相差90度,如 果A相在B相前,那么馬達(dá)正轉(zhuǎn);相反,A相在B相后,那么馬達(dá)反轉(zhuǎn)。由于兩個(gè)光遮斷器輸出的 f目號(hào)相差90°,所以廣生四種狀態(tài),當(dāng)狀態(tài)由? ?4243-4-14 ??則編碼器寄存器值會(huì) 增大、?? -1-4-3-2- ??則編碼器寄存器值會(huì)減小,如圖1所不。
[0028]正交編碼器狀態(tài)機(jī)
[0030] 結(jié)合圖2,基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法,包括以下步 驟:
[0031] 1)采用非線性濾波對(duì)攝像頭采集的車輛前方道路圖像進(jìn)行預(yù)處理;由于攝像頭的 成像、傳輸、存儲(chǔ)等環(huán)節(jié)都有可能受到噪聲的污染。這些噪聲往往在圖像上是一些孤立像素 點(diǎn)。對(duì)于離散的二維數(shù)字圖像來(lái)說(shuō),噪聲表現(xiàn)為極大值或者極小值,對(duì)后期的分割和特征提 取、圖像識(shí)別都造成了很大的影響,因此設(shè)置預(yù)處理去噪。常用的預(yù)處理去噪方式有 [0032]線性濾波:
[0033]高斯濾波是線性平滑濾波的一種,適用在消除高斯噪聲上,常應(yīng)用于圖像處理的 減噪。簡(jiǎn)單地說(shuō),高斯濾波就是對(duì)整幅圖像取加權(quán)平均值,每一個(gè)像素點(diǎn)的值,都由其本身 和鄰域內(nèi)的其他像素值經(jīng)過(guò)加權(quán)平均后所得。高斯濾波的具體操作方法是:用一個(gè)模板掃 描圖像的每一像素點(diǎn),用模板確定的鄰域內(nèi)像素的加權(quán)平均灰度值去替代模板中心像素點(diǎn) 的值。
[0034] 二維高斯分布:
[0036]這其實(shí)就是一個(gè)正態(tài)分布函數(shù),高斯平滑濾波器的模板需要符合如下布局:
[0038]以上分布呈現(xiàn)了高斯分布的特點(diǎn),顯然,高斯濾波的效果要優(yōu)于普通均值濾波。 [0039]非線性濾波:
[0040] 中值濾波是非線性濾波,常用于去除信號(hào)中的噪聲。其方法是使用奇數(shù)個(gè)數(shù)據(jù)組 成的模板來(lái)實(shí)現(xiàn)。將窗口中的數(shù)值排序,其中間值作為結(jié)果。中值濾波是圖像預(yù)處理中的常 用手段,對(duì)于椒鹽噪聲和斑點(diǎn)噪聲效果很明顯,而且它可以較好的保留邊緣,使得它在不希 望邊緣模糊的場(chǎng)合尤為適用,因此在本實(shí)施例中采用中值濾波進(jìn)行預(yù)處理,中值濾波前后 圖像分別如圖3和圖4所示。
[0041] 2)對(duì)預(yù)處理后圖像進(jìn)行canny邊緣檢測(cè);Canny算子主要步驟是先對(duì)圖像進(jìn)行高斯 平滑,然后再用非極值抑制方法。首先使用省略系數(shù)的高斯函數(shù)H(x,y):
[0043] G(x,y)=f(x,y)*H(x,y)
[0044] 然后用一階偏導(dǎo)的有限差分來(lái)計(jì)算梯度的方向和幅值:
[0046]計(jì)算出的方向?yàn)椋?br>[0050] 使用Canny算子得出的軌道邊緣效果如圖5所示。
[0051] 3)在canny邊緣檢測(cè)基礎(chǔ)上在整幅圖像的下方3/4高度區(qū)域采用中心擴(kuò)散法尋找 左右邊界。取左右邊界的平均值為中心點(diǎn),對(duì)所有中心點(diǎn)的坐標(biāo)數(shù)組進(jìn)行一維中值濾波去 噪,得到所有中心點(diǎn)構(gòu)成中心線陣列,如圖6;
[0052] 4)給中心線陣列賦權(quán)值,其中離攝像頭近的區(qū)域的中心點(diǎn)權(quán)值大于離攝像頭遠(yuǎn)的 區(qū)域的中心點(diǎn)權(quán)值,取所有中心點(diǎn)的橫坐標(biāo)加權(quán)平均值作為舵機(jī)PD控制的目標(biāo)點(diǎn),調(diào)節(jié)PD 的值來(lái)控制舵機(jī)的角度。
[0053] ro控制為比例微分控制,包括以下部分,
[0054] 比例控制P:
[0055]假如只用比例控制,那么控制器的輸出就是y(t)=KpXe(t),其中Kp為比例項(xiàng),e (t)為誤差值。
[0056] 微分控制D:
[0057]引入微分控制后,將現(xiàn)在的誤差減去上次的誤差,如下公式為ro控制器輸出值,Kd 為微分項(xiàng),引入Kd后,震蕩被壓抑,隨著Kd的增大,震蕩慢慢被消除,但Kd值如果調(diào)節(jié)過(guò)大, 會(huì)壓抑過(guò)大,使得達(dá)到穩(wěn)態(tài)的時(shí)間加長(zhǎng)。
[0059]因?yàn)檐囎硬⒉恍枰耆_處于軌道的絕對(duì)中心位置,所以沒(méi)有必要使用Ki項(xiàng), 通過(guò)合理調(diào)節(jié)Kp參數(shù),使得車子能在高速行駛時(shí)仍然可以保持車身穩(wěn)定,沒(méi)有震蕩,增大Kp 項(xiàng)可以增強(qiáng)車子沿線能力,并使得轉(zhuǎn)向提前,實(shí)現(xiàn)切彎效果??刂扑惴ㄖ幸隟d項(xiàng)以后,可 使得車子入彎道時(shí)轉(zhuǎn)向提前,出彎道時(shí)轉(zhuǎn)向減少。
【主權(quán)項(xiàng)】
1. 一種基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法,其特征在于,包括以 下步驟: 1) 采用非線性濾波對(duì)攝像頭采集的車輛前方道路圖像進(jìn)行預(yù)處理; 2) 對(duì)預(yù)處理后圖像進(jìn)行canny邊緣檢測(cè); 3) 在canny邊緣檢測(cè)基礎(chǔ)上尋找左右邊界,取左右邊界的平均值為中心點(diǎn),得到所有中 心點(diǎn)構(gòu)成中心線陣列; 4) 給中心線陣列賦權(quán)值,其中離攝像頭近的區(qū)域的中心點(diǎn)權(quán)值大于離攝像頭遠(yuǎn)的區(qū)域 的中心點(diǎn)權(quán)值,取所有中心點(diǎn)的橫坐標(biāo)加權(quán)平均值作為舵機(jī)PD控制的目標(biāo)點(diǎn),調(diào)節(jié)PD的值 來(lái)控制舵機(jī)的角度。2. 根據(jù)權(quán)利要求1所述的基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法,其 特征在于,所述步驟1)中預(yù)處理為中值濾波去噪。3. 根據(jù)權(quán)利要求1所述的基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法,其 特征在于,所述步驟3)中尋找左右邊界是在canny邊緣檢測(cè)后整幅圖像的下方3/4高度區(qū)域 采用中心擴(kuò)散法尋找左右邊界。4. 根據(jù)權(quán)利要求1所述的基于可見(jiàn)光圖像的自動(dòng)導(dǎo)引運(yùn)輸車路線識(shí)別及控制方法,其 特征在于,所述給中心線陣列賦權(quán)值前,對(duì)所有中心點(diǎn)的坐標(biāo)數(shù)組進(jìn)行一維中值濾波去噪。
【文檔編號(hào)】G05D1/02GK106054886SQ201610480362
【公開(kāi)日】2016年10月26日
【申請(qǐng)日】2016年6月27日
【發(fā)明人】劉永俊, 喬康琪, 歐陽(yáng)穎, 錢(qián)振江, 張明新, 王 義
【申請(qǐng)人】常熟理工學(xué)院