《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 基于DSP Builder的行車道檢測的實現

基于DSP Builder的行車道檢測的實現

2008-04-18
作者:芮晴波

  摘 要: 介紹了行車道檢測系統" title="檢測系統">檢測系統的原理、構成及基于DSP Builder的實現方法。利用基于FPGA的現代DSP設計方法,對邊緣檢測" title="邊緣檢測">邊緣檢測電路進行了系統模型設計。理論分析及仿真實驗證明了該方法的正確性和可行性,滿足了實際任務的要求。
  關鍵詞: 行車道檢測 Sobel算子 DSP Builder FPGA


  通過對攝像頭讀入的道路白線圖像進行灰度變換,再檢測出白線的邊緣,這是實現智能車自動導航和輔助導航的基礎。行車道檢測系統可以應用于智能車的防撞預警和控制。該系統設計重點是邊緣檢測電路" title="檢測電路">檢測電路的設計。邊緣檢測電路包括圖像輸入緩沖電路、垂直方向的邊緣檢測電路、水平方向的邊緣檢測電路及對兩部分檢測的組合,最終通過閾值選擇形成二值邊緣圖像。傳統的方案大多采用單片機電路實現,設計流程和系統調試都比較繁瑣,開發周期長。在實時圖像處理中,由于處理速度要求較高,因此用以前的方法很難達到要求。實時圖像處理常常需要對圖像進行求和、卷積、邊緣提取、圖像分割及特征提取等不同種類、不同層次的處理。對于一些運算結構簡單,但要處理大量數據的算法一般采用FPGA芯片來實現。通過FPGA實現信號處理可以取得出色的系統穩定性,提高控制精度,還可以大大減少開發周期,使設計人員的設計自由度加大。本文采用Altera公司的Cyclone EP1C6作為主控芯片,利用Altera公司推出的數字信號處理開發工具DSP Builder作為設計平臺,通過DSP Builder SignalCompiler模塊讀取由DSP Builder和MegaCore模塊構建的Simulink建模文件(.mdl),生成VHDL文件和工具命令語言(Tcl)腳本,進行綜合、硬件實施和仿真,從而完成對整個道路邊緣檢測系統的設計。
1 系統構成及邊緣檢測原理
  本系統中的主要模塊是進行二維卷積操作的sobel邊緣檢測模塊,它相當于硬件的協處理器。該系統從CF卡讀入數據到邊緣檢測模塊,使用Nios II控制數據流,采用DMA控制器在外部存儲器(SDRAM和SRAM)之間傳遞數據,這些外部存儲器相當于中間圖像數據緩沖器。系統結構如圖1所示。


  邊緣是指圖像中像素灰度有階躍變化或屋頂狀變化的那些像素的集合。它對圖像識別和分析十分有用,邊緣能勾劃出目標物體輪廓,使觀察者一目了然。邊緣包含了豐富的信息(如方向、階躍性質 、形狀等),是圖像識別中抽取的重要屬性[1]。微分運算有加強高頻分量的作用,從而使圖像輪廓更清晰。對于數字圖像,微分可用差分" title="差分">差分近似代替,沿x和y方向的一階差分可分別表示如下:
  
  一階差分增強是有方向性的。為了增強圖像中間任何方向伸展的邊緣和輪廓,希望對圖像的某種導數運算是各向同性的,而梯度運算恰具有各向同性特性。對于圖像f(x,y)點上的梯度可定義為矢量:
  
  梯度幅度具有各向同性或旋轉不變性,而且給出了該像素點灰度的最大變化率。采用微分銳化圖像,會使噪聲、條紋等得到增強,這在圖像處理中會造成偽邊緣和偽輪廓,為此對銳化算子進行了各種改進。Sobel算子就是其中一例,它在一定程度上克服了上述問題。Sobel算子的基本思想是:以待增強圖像的任意像素(i,j)為中心,截取一個3×3的像素窗口。分別計算窗口中心像素在x和y方向上的梯度[2]。Sobel算子的表達式如下:
Sx=
  增強后圖像在(i,j)處的灰度值為:
  
2 基于FPGA的DSP Builder設計流程
  Altera DSP Builder將The MathWorks MATLAB和Simulink系統級設計工具的算法開發、仿真和驗證功能與VHDL綜合、仿真和Altera開發工具整合在一起,實現了這些工具的集成。設計人員可以使用DSP Builder模塊迅速生成Simulink系統建模硬件,通過DSP Builder SignalCompiler模塊讀取由DSP Builder和MegaCore模塊構建的Simulink建模文件(.mdl),生成VHDL文件和工具命令語言(Tcl)腳本,進行綜合、硬件實施和仿真。
  此系統設計首先用MATLAB建立DSP電路模型" title="電路模型">電路模型。電路模型設計完成后,就開始進行系統功能的仿真,這是屬于系統級并且基于算法的仿真,與目標器件無關。然后利用置于Simulink電路模型界面的DSP Builder中的Signal Complier將電路模型文件即Simulink模型文件(.mdl)轉化為RTL級的VHDL代碼表述和Tcl腳本。一旦獲得了VHDL描述,就可以在Simulink中調用Quartus II中的綜合器生成網表文件。下一步就是調用Quartus II中的編譯器,根據網表文件及設置的優化條件進行布線布局和優化設計的適配操作,同時生成用于Moldelsim的時序仿真文件。將最后生成的Programmer Object File(.pof)對目標器件進行編程配置,即可在硬件上形成DSP系統。
3 邊緣檢測系統的Simulink模型設計
  Sobel邊緣檢測模塊包括獨立且并行的水平檢測和垂直檢測兩部分。輸入緩沖通過一組延時線路轉換輸入的像素值。線路緩沖器的緩沖級數由圖像的寬度決定。本設計采用的圖像寬度是640。緩沖器的個數取決于卷積核的大小,本設計采用3×3的Sobel卷積核。垂直和水平方向的邊緣檢測幾乎是相同的,兩者之間的區別只在于從輸入緩沖器流過的數據流。最后將兩部分組合并通過閾值選擇形成一幅經過邊緣檢測的二值圖像。Sobel邊緣檢測是流水線操作,在每一個時鐘周期都計算得到一個像素值,如圖2所示。圖中,Z-640是指本設計輸入的圖像像素寬度是640,右上角的加法模塊實現的是垂直方向的邊緣檢測,右下角的加法模塊實現的是水平方向的邊緣檢測。對于一般的灰度圖像, 其像素的灰度值一般用8位表示,考慮到計算過程中可能出現負數和溢出問題。因此,數據在開始計算前先在最高位補零,使數據寬度變為10 位,計算完成后可再裁剪為8 位。

?


  在DSP Builder中設計的Sobel邊緣檢測系統如圖3所示。
4 仿真結果
  建立了.mdl文件之后,在Simulink中對其進行系統算法級仿真。設置Matlab各項參數和Simulink仿真參數,因為本設計采用圖片的像素是640×480,所以設置仿真時間為307 201s(所有的像素數量加1)。


  測試表明,仿真結果符合要求,整個系統算法級設計是正確的。圖4為原始的彩色圖像,圖5為經過水平邊緣檢測和垂直邊緣檢測后沒有經過閾值選取的圖像,圖6為經過閾值選取后的二值圖像。Sobel算子不像普通梯度算子那樣用兩個像素的差值,而是采用兩列或兩行像素灰度加權和的差值來表示,因此有以下兩個優點[4]
  (1)由于引入了平均因素,因而對圖像中的隨機噪聲有一定的平滑作用。
  (2)由于它是相隔兩行或兩列之差分,故邊緣兩側的元素得到了增強,邊緣顯得粗而亮。
  使用Modelsim進行功能仿真,主要是調用.tcl 文件對RTL 級的VHDL 代碼仿真。由于Simulink 的仿真是算法級的,而此仿真是針對硬件結構的,兩者之間可能存在軟件理解上的差異,所以對RTL 級VHDL 代碼的仿真是必要的。仿真結果和系統級仿真一致。編譯生成.pof 文件,下載到目標芯片中,從而完成整個邊緣檢測模塊的設計。
參考文獻
[1] 賈永紅.計算機圖像處理與分析[M].武漢:武漢大學出版社,2002.
[2] 李弼程,彭天強,彭波.智能圖像處理技術[M].北京:電子工業出版社,2004.
[3] 潘松,黃繼業,王國棟.現代DSP技術[M].西安:西安電子科技大學出版社,2003.
[4] 劉禾.數字圖像處理及應用[M].北京:中國電力出版社,2005.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:[email protected]
主站蜘蛛池模板: 一级毛片看一个 | 欧美日韩精品国产一区在线 | 欧美精品日日鲁夜夜添 | 碰碰碰人人澡人人爱摸 | a级毛片毛片免费很很综合 a级毛片免费 | 国产精品视频自拍 | a毛片免费视频 | 国产成人一区二区三区视频免费 | 99久久精品费精品国产一区二 | 日本人一级毛片视频 | 成人丁香乱小说 | 大陆老头xxxxxhd| 欧美一级二级毛片视频 | 日本高清乱偷www | 一区二区三区欧美 | 99久久精品免费视频 | 久久国产三级精品 | 久久精品高清视频 | 亚洲国产精品影院 | 国产精品九九九久久九九 | 久草视频在线免费看 | 亚洲美女在线观看 | 欧美一级毛片一 | 99精品国产成人一区二区在线 | 91香蕉网| 久久久久依人综合影院 | 加勒比综合| 亚洲一区免费 | 男人天堂手机在线 | 国产欧美日韩图片一区二区 | 中文字幕亚洲综合久久 | 国产真实生活伦对白 | 欧美一级高清片免费一级 | 日本一级毛片视频无遮挡免费 | 男女国产一级毛片 | 台湾三级香港三级在线中文 | 亚洲午夜大片 | 在线播放亚洲美女视频网站 | 99精品视频一区在线观看miya | 二区在线观看 | 三级视频网站在线观看 |