《電子技術(shù)應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 基于DSP的快速Hough變換圓檢測算法的實現(xiàn)
基于DSP的快速Hough變換圓檢測算法的實現(xiàn)
摘要: 1引言數(shù)字圖像處理技術(shù)廣泛應用于機器視覺,、自動化檢測和視頻監(jiān)控等領域。通用的圖像處理系統(tǒng)采用圖像采集卡將圖像傳送至PC,,從而實現(xiàn)圖像處理的各種算法,。近年來,,隨著集成電路和嵌入式技術(shù)的發(fā)展,特別是
Abstract:
Key words :

1 引言
  數(shù)字圖像處理技術(shù)廣泛應用于機器視覺,、自動化檢測和視頻監(jiān)控等領域,。通用的圖像處理系統(tǒng)采用圖像采集卡將圖像傳送至PC,從而實現(xiàn)圖像處理的各種算法,。近年來,,隨著集成電路和嵌入式技術(shù)的發(fā)展,特別是DSP集成度,、穩(wěn)定性,、運算速度、數(shù)據(jù)吞吐量等性能的不斷提高,,以DSP為核心的實時圖像處理系統(tǒng)得到開發(fā),。采用DSP實現(xiàn)快速數(shù)字圖像處理可將算法嵌入到DSP中,充分利用DSP的高速性和并行性,,提高系統(tǒng)的運行速度,,達到數(shù)字圖像處理的實時性。相對于基于PC機的通用圖像處理系統(tǒng),,基于DSP的圖像處理系統(tǒng)具有體積小,,功耗低等優(yōu)點,適用于嵌入式系統(tǒng)領域,。
  在圖像處理中檢測圓通常需要計算圓形度,,半徑,圓心位置等圓參數(shù)。Hough變換是目前應用最廣泛的圓檢測方法,,該方法可靠性高,,在噪聲、變形,、甚至部分區(qū)域丟失的狀態(tài)下仍然能取得理想效果,。但其缺點是計算復雜,內(nèi)存需求大,。算法的實時性很差,,不能滿足實時性的要求。
  根據(jù)某項工程的實際要求,,對標準Hough變換檢測圓算法進行改進,,并在TMS320DM642平臺上實現(xiàn),取得較好的檢測效果,,并達到實時性要求,。
  2 算法運行平臺
  算法運行平臺采用北京合眾達公司的SEED-DTK-VPM642多媒體實驗平臺,該平臺采用TI公司的TMS320DM642作為核心處理器,。TMS320DM642是專用于數(shù)字媒體應用的高性能32位定點DSP,,工作主頻最高達720 MHz,處理性能可達5 760 MI/s,,強大的圖像處理能力為實現(xiàn)算法實時性和可靠性提供保證,。該實驗平臺的整體功能框圖如圖1所示。前端通過CCD攝像機獲得視頻圖像,,經(jīng)視頻解碼器TVP5150的數(shù)字化處理后,,形成并行數(shù)字碼流以EDMA傳輸方式將數(shù)據(jù)傳送到TMS320DM642的數(shù)據(jù)輸入緩沖區(qū),對圖像進行實時處理后的數(shù)據(jù)自動通過EDMA傳輸至數(shù)據(jù)輸出緩沖區(qū),,再通過視頻編碼器SAA7121形成碼流,,傳送到顯示器顯示檢測結(jié)果。在整個算法的實現(xiàn)過程中,,為了滿足實時性的要求,,都是以EDMA的傳輸方式傳輸數(shù)據(jù)。

  3 Hongh變換圓檢測算法的實現(xiàn)
  3.1 Hough變換圓檢測算法的改進
  Hough變換的基本思想是將圖像從空間域變換到參數(shù)空間,,用大多數(shù)邊界點滿足的某種參數(shù)形式來描述圖像中的曲線,。假設在x-y平面檢測并確定一個圓的參數(shù),圖像中待檢測圓周點的集合為{(xi,,yi),,i=1,2,,3,,…,,n},(x,,y)為該集合中的一點,,其在參數(shù)坐標系(a,b,,r)中解析式為:

  該解析式對應的曲面為三維錐面,。圖像中任意確定的一點均有參數(shù)空間的一個三維錐面與之對應。對于圓周上的任一點{(xi,yi),,i=1,,2,3,,…,n},,這些三維錐面構(gòu)成圓錐面簇,,如圖2所示。

  若集合中的點均在同一個圓周上,,則這些圓錐面簇相交于參數(shù)空間上某一點,,該點恰好對應于圖像平面的圓心坐標及圓的半徑。Hough變換在計算上將參數(shù)空間進一步分割為累加器單元A(i,,j,,k),并先使累加器單元置零,。根據(jù)式(1)對參數(shù)作相應循環(huán),,如果一個a(i)值得到相應的b(j),r(k),,就令A(i,j,k)=A(i,,j,k)+1。最后對每個累加器進行比較,,找到最大值累加器,,該累加器所對應的參數(shù)值(a,b,r),就是在平面上所要檢測圓的圓心及半徑,。
  標準Hough變換的計算非常復雜,,在圓形檢測應用中隨著取值范圍的不斷擴大,在參數(shù)域的三維數(shù)組尺寸成正比例增加,,需要占用大量計算機內(nèi)存,,計算效率低下。因此,,盡可能縮小參與Hough變換的參數(shù)域范圍是提高其效率的關鍵,。對其改進的步驟如下:
  第一步:對圖像作canny邊緣檢測處理,得出圖像中待檢測圓的單像素寬的邊緣;
  第二步:求出圖像中待檢測圓邊緣在上,,下,,左,右4個方向上的極點,,然后根據(jù)圓的幾何對稱性,,采用“最小外接矩形法”估算待檢測圓的圓心及半徑,生成相應的子圖,,并濾除圖像中的噪聲,。“最小外接矩形法”估算圓參數(shù)方法如圖3所示,其中圓心O為


  第三步:考慮到圖像可能存在缺陷和噪聲,,對估算所得到的圓心及半徑進行適量縮放,,從而縮小參與Hough變換的參數(shù)域范圍。
  第四步:在確定的圓心及半徑范圍內(nèi),,根據(jù)圓的參數(shù)方程進行,。Hough變換,從而檢測圓的參數(shù),。
  3.2 基于DSP/BIOS和RF5架構(gòu)的算法實現(xiàn)
  算法的實現(xiàn)是基于CCS和DSP/BIOS及TI倡導的DSP軟件架構(gòu)RF5,。該算法分為輸入任務、處理任務,、輸出任務3個任務,,軟件框架如圖4所示。

  在初始化完成后,,系統(tǒng)進入DSP/BIOS任務調(diào)度管理,,3個任務通過RF5的SCOM模塊互相發(fā)送消息。
  這3個任務完成的工作是:
  (1)輸入任務從輸入設備驅(qū)動程序獲得視頻圖像,。它使用驅(qū)動程序提供的FVID_exchange調(diào)用從輸入設備獲得一幀新視頻圖像,。輸入任務接著發(fā)送消息到處理任務,消息中包含圖像數(shù)據(jù)指針,,接著等待輸出任務發(fā)送來的消息以繼續(xù)運行,。
  (2)處理任務一直等到接收輸入任務,包含圖像數(shù)據(jù)指針消息,,才開始激活運行,。對接收到圖像數(shù)據(jù)進行預處理,得出圖像中待檢測圓的細邊緣,,然后調(diào)用改進的Hough變換檢測圓的參數(shù),,接著發(fā)送消息到輸出任務,消息中包含經(jīng)Hough變換檢測后生成的圖像數(shù)據(jù)指針,,然后等待輸入任務發(fā)送來的消息以繼續(xù)運行,。
  (3)輸出任務將圖像顯示在顯示設備上,,使用驅(qū)動程序提供的FVID_exchange調(diào)用實現(xiàn)圖像的顯示,接著發(fā)送消息到輸入任務,,然后等待處理任務發(fā)送來的消息以繼續(xù)運行,。
  4 實驗結(jié)果
  采用某光纖插針內(nèi)孔參數(shù)檢測項目中所獲取的內(nèi)孔圓(如圖5a所示,實際圖像大小1 392×1 040像素,,限于篇幅,,縮小為原圖的10%)來檢驗算法效果。原圖的實際圓心坐標為(678,,503),,半徑為462。圖5b為使用Canny算子檢測得到的邊緣圖像,;圖5c為采用本文算法得到的檢測結(jié)果,。表1、表2分別列出了基于PC平臺和TMS320DM642平臺采用本文算法與采用標準Hough算法分別對圖5a進行圓參數(shù)檢測所得結(jié)果,、占有內(nèi)存大小及耗時的對比,。

  從實驗結(jié)果看出,經(jīng)改進后的Hough變換圓檢測算法,,無論是基于PC平臺還是TMS320DM642平臺,,與傳統(tǒng)的Hough變換算法相比,,算法的運算量,、內(nèi)存需求、耗時都有了大幅度的削減,,因而有效地提高了圓的檢測效率,,滿足實時性要求。
  5 結(jié)論
  在以TMS320TMS320DM642為核心的實時圖像處理平臺上,,通過對傳統(tǒng)的Hough變換檢測圓算法進行改進并運行驗證,,證明了對于時間復雜度較大的圖像處理算法,在基于高端DSP的實時圖像處理系統(tǒng)上運行,,圖像處理效果良好,,能夠滿足實時性要求。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。