專利名稱:一種基于單芯片的車道偏離提醒裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明主要涉及到車輛主動(dòng)安全系統(tǒng)領(lǐng)域,特指一種能在可編程邏輯門陣列 (FPGA)上實(shí)現(xiàn)的車道偏離提醒裝置。
背景技術(shù):
隨著汽車工業(yè)的日益發(fā)展,汽車越來越成為社會(huì)生產(chǎn)與日常生活中的重要組成部分。與此同時(shí),汽車的安全問題也逐漸成為人們關(guān)注的焦點(diǎn)。根據(jù)統(tǒng)計(jì),道路交通事故中大約有75%是由于人為失誤導(dǎo)致的,而在這些人為導(dǎo)致的事故中,又有19%是由于無意識(shí)的車道跑偏導(dǎo)致的二6%是由于前向追尾導(dǎo)致的。這兩類事故的發(fā)生都直接與駕駛員的精神狀態(tài)有關(guān),最終表現(xiàn)為駕駛員對(duì)車輛運(yùn)行環(huán)境估計(jì)不準(zhǔn)和駕駛員的反應(yīng)滯后等。目前,有從業(yè)者相續(xù)研發(fā)或者已經(jīng)推出了相關(guān)研究成果,比如“車道偏離提醒裝置”。這種“車道偏離提醒裝置”的目的就是對(duì)駕駛員精神不集中時(shí)無意識(shí)的車道偏離行為進(jìn)行提醒,讓駕駛員及時(shí)糾正行車路線,避免發(fā)生車禍?,F(xiàn)有的技術(shù)成果中,存在各種形式的設(shè)計(jì)。例如,中國專利申請(qǐng)?zhí)枮?0071013321. 9的技術(shù)方案,它主要通過C⑶攝像機(jī)得到模擬信號(hào),然后經(jīng)過模數(shù)轉(zhuǎn)化芯片得到數(shù)字信號(hào),采用了 DSP(Digital Signal Processor) 作為其核心處理器;當(dāng)處理完后再通過數(shù)模轉(zhuǎn)換成模擬信號(hào)進(jìn)行顯示。類似的還有中國專利申請(qǐng)?zhí)枮?00720088218. 2的專利,也是以DSP (Digital Signal Processor)作為核心處理器,通過模數(shù)轉(zhuǎn)化芯片把模擬攝像機(jī)的信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)后進(jìn)行處理。在上述兩個(gè)技術(shù)方案中,均是采用DSP作為處理芯片,DSP(Digital Signal Processor)雖然在處理數(shù)字信號(hào)的能力上有一定的增強(qiáng),但是DSP基于哈佛串行計(jì)算結(jié)構(gòu)的本質(zhì)并沒有改變,運(yùn)算的時(shí)間隨著數(shù)據(jù)量的增大而成指數(shù)增長,難以滿足在實(shí)時(shí)性要求較高的場合使用;而且,模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換也需要額外的時(shí)間。再比如,中國專利申請(qǐng)?zhí)枮?01010033968.6的技術(shù)方案,是一種基于并行處理的快速車道線檢測裝置,其通過構(gòu)造并行的處理單元(PE)陣列和兩個(gè)專用的精簡指令集 (RISC)微處理器系統(tǒng)來實(shí)現(xiàn)快速的車道線檢測。這個(gè)裝置的好處是效率很高,但是缺乏通用性,算法的實(shí)現(xiàn)受制于硬件的結(jié)構(gòu),沒有辦法對(duì)圖像處理算法進(jìn)行更新。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題就在于針對(duì)現(xiàn)有技術(shù)存在的技術(shù)問題,本發(fā)明提供一種利用可編程邏輯門陣列FPGA芯片的大規(guī)模并行工作特性使車道偏離提醒的視覺任務(wù)在一塊芯片內(nèi)部快速完成,又具有可重構(gòu)的特性,進(jìn)而使基于單芯片的車道偏離提醒裝置的系統(tǒng)性能升級(jí)和拓展變的很靈活。為解決上述技術(shù)問題,本發(fā)明采用以下技術(shù)方案一種基于單芯片的車道偏離提醒裝置,其特征在于包括FPGA芯片單元、數(shù)字?jǐn)z像機(jī)以及外部通訊控制器。所述FPGA芯片單元用于控制數(shù)字?jǐn)z像機(jī)的工作;當(dāng)FPGA芯片單元得到數(shù)字?jǐn)z像機(jī)的圖像信息后,在FPGA芯片單元中完成所有車道偏離提醒的計(jì)算任務(wù),然后通過FPGA芯片單元控制外部通訊控制器實(shí)施告警。作為本發(fā)明的進(jìn)一步改進(jìn)所述FPGA芯片單元包括自定義功能邏輯單元和軟處理器單元,所述自定義功能邏輯單元用來對(duì)目標(biāo)圖像進(jìn)行中值濾波和邊緣二值化,并對(duì)二值化圖像進(jìn)行Hough變換, 得到圖像中所有直線的位置信息;所述軟處理器單元用來對(duì)直線進(jìn)行匹配、篩選,得到車道線位置,并對(duì)車體與車道線之間的關(guān)系進(jìn)行判斷,根據(jù)告警策略給出告警信息;所述自定義功能邏輯單元獲得軟處理器單元給出的告警信息,并把該信息傳遞給外部通訊控制器。所述自定義功能邏輯單元進(jìn)行中值濾波和邊緣二值化的步驟為所述數(shù)字?jǐn)z像機(jī)的數(shù)據(jù)隨著系統(tǒng)時(shí)鐘依次流水進(jìn)入卷積結(jié)構(gòu)中,通過行移位寄存器和觸發(fā)器,得到圖像中相鄰3X3窗口中的數(shù)據(jù);然后對(duì)這些數(shù)據(jù)在自定義功能邏輯單元中進(jìn)行中值濾波或者邊緣檢測處理。所述自定義功能邏輯單元進(jìn)行Hough變換時(shí),首先記錄邊緣圖像中邊緣點(diǎn)的位置,然后根據(jù)FPGA并行運(yùn)算的特點(diǎn),采用分區(qū)域的方式同時(shí)實(shí)現(xiàn)多組Hough變換,在每一組 Hough變換的實(shí)現(xiàn)過程中,采用流水線的結(jié)構(gòu)。所述Hough變換的具體步驟為(1)設(shè)置初始參數(shù),所述初始參數(shù)包括初始消失點(diǎn)位置(Xo,yo)、并行度η、約束范圍P;(2)對(duì)實(shí)時(shí)采集的圖像進(jìn)行預(yù)處理得到邊緣圖像Iiedge,對(duì)邊緣圖像Iiedge進(jìn)行坐標(biāo)平移已知上一幀圖像的消失點(diǎn)位置(Xh,Yi^1), 以該點(diǎn)為坐標(biāo)原點(diǎn)的坐標(biāo)系Px2re來替換傳統(tǒng)以圖像左上角為原點(diǎn)的坐標(biāo)系PX1Y1,實(shí)現(xiàn)坐標(biāo)平移;(3)在P·中進(jìn)行并行Hough變換運(yùn)算;對(duì)于第i幀圖像,通過公式P = (x-xi_1)Xcos(0) + (y-yi_1)Xsin(0 )得到 ρ,當(dāng) ρ 滿足約束 | P | < P,則保存參數(shù)(θ, P),否則就舍去;(4)找出參數(shù)空間中的極大值位置,得到對(duì)應(yīng)的直線,即需要檢測的車道線;更新當(dāng)前幀的消失點(diǎn)(Xi,yi) ; (5)轉(zhuǎn)到步驟O),進(jìn)行下一幀圖像的處理。所述外部通訊控制器為CAN控制器。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于1、本發(fā)明采用FPGA作為核心處理單元,通過并行的系統(tǒng)架構(gòu)和與之相適應(yīng)的高度并行的算法,可以實(shí)現(xiàn)在不同環(huán)境下車道線的快速識(shí)別與跟蹤;2、本發(fā)明采用了數(shù)字CMOS攝像機(jī)作為傳感器。與模擬攝像機(jī)相比,數(shù)字?jǐn)z像機(jī)的數(shù)據(jù)不需要通過模數(shù)轉(zhuǎn)換芯片進(jìn)行轉(zhuǎn)換就能夠直接使用,節(jié)省了處理環(huán)節(jié)和處理時(shí)間,降低了系統(tǒng)風(fēng)險(xiǎn);3、本發(fā)明的所有算法在一塊FPGA芯片上實(shí)現(xiàn),整個(gè)系統(tǒng)中軟、硬件修改靈活,具有邏輯可重構(gòu)功能,通過軟件就可以達(dá)到硬件升級(jí)的目的,從而使系統(tǒng)功能拓展和系統(tǒng)升級(jí)變的很靈活;4、本發(fā)明整個(gè)系統(tǒng)在一塊芯片上完成,其具有結(jié)構(gòu)簡單、環(huán)節(jié)少、體積小、重量輕、 功耗低等優(yōu)點(diǎn),可以直接安裝到各種車輛中作為汽車輔助駕駛系統(tǒng)使用,具有很高的經(jīng)濟(jì)效益。
圖1是本發(fā)明車道偏離提醒裝置的框架結(jié)構(gòu)示意圖;圖2是本發(fā)明中FPGA芯片單元與數(shù)字?jǐn)z像機(jī)連接的框架結(jié)構(gòu)示意圖3是FPGA芯片單元通過CAN控制器實(shí)現(xiàn)CAN通訊的接口結(jié)構(gòu)示意圖;圖4是本發(fā)明中的系統(tǒng)功能流程圖;圖5是自定義功能邏輯單元實(shí)現(xiàn)中值濾波和邊緣二值化的結(jié)構(gòu)圖;圖6是自定義功能邏輯單元實(shí)現(xiàn)并行Hough變換檢測直線的結(jié)構(gòu)圖;圖7是自定義功能邏輯單元中并行Hough變換的流程圖;圖8是消失點(diǎn)分布狀態(tài)統(tǒng)計(jì)示意圖;其中8 (a)為車輛換道過程中消失點(diǎn)位置變化狀態(tài)圖,8(b)是消失點(diǎn)位置變化分布模型圖;圖9是本發(fā)明中的告警策略示意圖。
具體實(shí)施例方式以下將結(jié)合說明書附圖和具體實(shí)施例對(duì)本發(fā)明做進(jìn)一步詳細(xì)說明。如圖1所示,本發(fā)明基于單芯片的車道偏離提醒裝置,包括FPGA芯片單元、數(shù)字?jǐn)z像機(jī)以及外部通訊控制器,外部通訊控制器可以采用CAN控制器,F(xiàn)PGA芯片單元用于控制數(shù)字?jǐn)z像機(jī)的工作和系統(tǒng)的所有計(jì)算任務(wù);當(dāng)FPGA芯片單元得到數(shù)字?jǐn)z像機(jī)的圖像信息后,在FPGA芯片單元中完成所有車道偏離提醒的計(jì)算任務(wù),結(jié)合CAN控制器得到的車體信息,根據(jù)告警策略,當(dāng)發(fā)現(xiàn)車輛即將發(fā)生越道事件時(shí),通過CAN控制器向CAN總線發(fā)出告警信息,從而實(shí)現(xiàn)車道偏離告警的功能。本實(shí)施例中,數(shù)字?jǐn)z像機(jī)可以直接采用Melexis公司的數(shù)字?jǐn)z像機(jī)(75307) ;FPGA 芯片單元可以采用Xilinx公司的Spatarr^adsp或更高資源的替代產(chǎn)品;外部通訊CAN控制器為Microchip公司的CAN控制器MCP2515。如圖2所示,本實(shí)施例中,首先把數(shù)字?jǐn)z像機(jī)的控制信號(hào)與FPGA芯片的bankO相連接,F(xiàn)PGA芯片單元通過對(duì)數(shù)字?jǐn)z像機(jī)的SPI控制總線與SPI控制時(shí)鐘寫控制字,來控制攝像機(jī)的曝光參數(shù),通過對(duì)數(shù)字?jǐn)z像機(jī)發(fā)送幀請(qǐng)求信號(hào),來啟動(dòng)攝像機(jī)的工作。數(shù)字?jǐn)z像機(jī)的數(shù)據(jù)總線直接與FPGA芯片單元的bankO上的10 口相連,通過時(shí)鐘同步信號(hào)、幀有效信號(hào)和行有效信號(hào)把圖像數(shù)據(jù)傳送給FPGA芯片單元。當(dāng)FPGA芯片單元得到圖像信息后,通過自定義功能邏輯模塊單元對(duì)圖像進(jìn)行并行處理,檢測出圖像中的車道線信息,判斷車體與車道線之間的位置和方向關(guān)系,并且結(jié)合通過CAN總線得到的車體信息(車速、轉(zhuǎn)向燈等),計(jì)算車輛可能越出車道的時(shí)間,當(dāng)該越道時(shí)間小于一定的值時(shí),F(xiàn)PGA芯片單元通過CAN控制器向CAN總線上發(fā)送告警信息,提醒駕駛員行車安全。如圖3所示,本實(shí)施例中,F(xiàn)PGA芯片單元與CAN總線的連接是通過CAN控制器實(shí)現(xiàn)。在FPGA芯片單元端通過SPI總線實(shí)現(xiàn)對(duì)CAN控制器的控制,其硬件連線如圖3所示 首先,在FPGA芯片單元中通過自定義功能邏輯單元對(duì)外部的CAN控制器進(jìn)行初始化設(shè)置, 包括波特率、發(fā)送端ID碼、接收過濾標(biāo)準(zhǔn)等參數(shù),這些設(shè)置都通過SPI總線實(shí)現(xiàn);然后,在每一次得到告警信息后,自定義功能邏輯單元把告警信息通過SPI數(shù)據(jù)輸入端口(對(duì)CAN控制器而言)發(fā)送到CAN控制器中,然后由該功能邏輯單元啟動(dòng)外部CAN發(fā)送請(qǐng)求,CAN控制器就自動(dòng)完成告警信息發(fā)送到CAN總線上的任務(wù)。本發(fā)明的工作流程如圖4所示,可以分為以下幾個(gè)步驟DFPGA芯片單元控制數(shù)字?jǐn)z像機(jī)工作,得到前方道路的信息;
2)通過FPGA芯片單元中自定義功能邏輯單元對(duì)目標(biāo)圖像進(jìn)行中值濾波和邊緣二值化;3)通過FPGA芯片單元中自定義功能邏輯單元對(duì)二值化圖像進(jìn)行Hough變換,得到圖像中所有直線的位置信息;4)把步驟3得到的直線參數(shù)傳遞給FPGA芯片單元中內(nèi)建的軟處理器單元 MicroBlaze,在MicroBlaze中對(duì)直線進(jìn)行匹配、篩選,得到車道線位置;5)在MicroBlaze中對(duì)車體與車道線之間的關(guān)系進(jìn)行判斷。經(jīng)過對(duì)圖像的處理,得到車道線的在圖像坐標(biāo)系下的位置之后,根據(jù)公式(1),計(jì)算得到車道線在大地坐標(biāo)系下的位置,其中公式⑴中Q的值由攝像機(jī)標(biāo)定得到,(χ,y)為大地坐標(biāo)系下的坐標(biāo)值,(c,r) 為圖像坐標(biāo)系下的坐標(biāo)值,t為變換系數(shù)。如圖9所示,在大地坐標(biāo)系下,就可以直觀的得到車道線與車輛之間的關(guān)系,然后結(jié)合當(dāng)前的車速、轉(zhuǎn)向燈信號(hào),根據(jù)告警策略給出告警信息;
權(quán)利要求
1.一種基于單芯片的車道偏離提醒裝置,其特征在于包括FPGA芯片單元、數(shù)字?jǐn)z像機(jī)以及外部通訊控制器,所述FPGA芯片單元用于控制數(shù)字?jǐn)z像機(jī)的工作;當(dāng)FPGA芯片單元得到數(shù)字?jǐn)z像機(jī)的圖像信息后,在FPGA芯片單元中完成所有車道偏離提醒的計(jì)算任務(wù),然后通過FPGA芯片單元控制外部通訊控制器實(shí)施告警。
2.根據(jù)權(quán)利要求1所述的基于單芯片的車道偏離提醒裝置,其特征在于所述FPGA芯片單元包括自定義功能邏輯單元和軟處理器單元,所述自定義功能邏輯單元用來對(duì)目標(biāo)圖像進(jìn)行中值濾波和邊緣二值化,并對(duì)二值化圖像進(jìn)行Hough變換,得到圖像中所有直線的位置信息;所述軟處理器單元用來對(duì)直線進(jìn)行匹配、篩選,得到車道線位置,并對(duì)車體與車道線之間的關(guān)系進(jìn)行判斷,根據(jù)告警策略給出告警信息;所述自定義功能邏輯單元獲得軟處理器單元給出的告警信息,并把該信息傳遞給外部通訊控制器。
3.根據(jù)權(quán)利要求2所述的基于單芯片的車道偏離提醒裝置,其特征在于所述自定義功能邏輯單元進(jìn)行中值濾波和邊緣二值化的步驟為所述數(shù)字?jǐn)z像機(jī)的數(shù)據(jù)隨著系統(tǒng)時(shí)鐘依次流水進(jìn)入卷積結(jié)構(gòu)中,通過行移位寄存器和觸發(fā)器,得到圖像中相鄰3X3窗口中的數(shù)據(jù);然后對(duì)這些數(shù)據(jù)在自定義功能邏輯單元中進(jìn)行中值濾波或者邊緣檢測處理。
4.根據(jù)權(quán)利要求2所述的基于單芯片的車道偏離提醒裝置,其特征在于所述自定義功能邏輯單元進(jìn)行Hough變換時(shí),首先記錄邊緣圖像中邊緣點(diǎn)的位置,然后根據(jù)FPGA并行運(yùn)算的特點(diǎn),采用分區(qū)域的方式同時(shí)實(shí)現(xiàn)多組Hough變換,在每一組Hough變換的實(shí)現(xiàn)過程中,采用流水線的結(jié)構(gòu)。
5.根據(jù)權(quán)利要求4所述的基于單芯片的車道偏離提醒裝置,其特征在于所述Hough變換的具體步驟為(1)設(shè)置初始參數(shù),所述初始參數(shù)包括初始消失點(diǎn)位置( ,%)、并行度η、 約束范圍P ;(幻對(duì)實(shí)時(shí)采集的圖像進(jìn)行預(yù)處理得到邊緣圖像以_,對(duì)邊緣圖像Iiedge進(jìn)行坐標(biāo)平移已知上一幀圖像的消失點(diǎn)位置(χ",y"),以該點(diǎn)為坐標(biāo)原點(diǎn)的坐標(biāo)系P·來替換傳統(tǒng)以圖像左上角為原點(diǎn)的坐標(biāo)系Pxiyi,實(shí)現(xiàn)坐標(biāo)平移;C3)在Px2k中進(jìn)行并行Hough變換運(yùn)算;對(duì)于第i幀圖像,通過公式P = (X-Xi^1) Xcos(0) + (y-yi_1)Xsin(0 )得到ρ,當(dāng)ρ 滿足約束I P I < P,則保存參數(shù)(θ,P ),否則就舍去;(4)找出參數(shù)空間中的極大值位置, 得到對(duì)應(yīng)的直線,即需要檢測的車道線;更新當(dāng)前幀的消失點(diǎn)(Xi,yi) ; (5)轉(zhuǎn)到步驟,進(jìn)行下一幀圖像的處理。
6.根據(jù)權(quán)利要求1 5中任意一項(xiàng)所述的基于單芯片的車道偏離提醒裝置,其特征在于所述外部通訊控制器為CAN控制器。
全文摘要
一種基于單芯片的車道偏離提醒裝置,包括FPGA芯片單元、數(shù)字?jǐn)z像機(jī)以及外部通訊控制器。FPGA芯片單元用于控制數(shù)字?jǐn)z像機(jī)的工作;當(dāng)FPGA芯片單元得到數(shù)字?jǐn)z像機(jī)的圖像信息后,在FPGA芯片單元中完成所有車道偏離提醒的計(jì)算任務(wù),然后通過FPGA單元控制外部通訊控制器實(shí)施告警。本發(fā)明利用可編程邏輯門陣列FPGA芯片的大規(guī)模并行工作特性使車道偏離提醒的視覺任務(wù)在一塊芯片內(nèi)部快速完成,又具有可重構(gòu)的特性進(jìn),而使系統(tǒng)性能升級(jí)和拓展變的很靈活。
文檔編號(hào)B60W30/12GK102320298SQ201110154460
公開日2012年1月18日 申請(qǐng)日期2011年6月9日 優(yōu)先權(quán)日2011年6月9日
發(fā)明者史美萍, 商爾科, 安向京, 張文超, 戴斌, 李健, 潘升東 申請(qǐng)人:中國人民解放軍國防科學(xué)技術(shù)大學(xué)