《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 自適應實時邊緣檢測系統設計
自適應實時邊緣檢測系統設計
2017年電子技術應用第2期
李錦明,高文剛,張虎威,吳正洋
中北大學 電子測試技術國家重點實驗室,山西 太原030051
摘要: 針對傳統邊緣檢測系統缺乏自適應及實時性差的問題,利用FPGA的高速并行處理能力和改進的Canny算子設計了一種自適應實時邊緣檢測系統。系統根據采集圖像的幅值梯度直方圖特征,自主提取Canny算子所需的高低閾值,并輔以雙閾值化處理來提取圖像邊緣信息;同時采用多級流水和并行處理的方式,將浮點數轉化為整數計算,加快處理速度。實驗結果表明,該系統提取邊緣完整,實時性好,自適應能力強。
中圖分類號: TP391
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.02.020
中文引用格式: 李錦明,高文剛,張虎威,等. 自適應實時邊緣檢測系統設計[J].電子技術應用,2017,43(2):85-87,91.
英文引用格式: Li Jinming,Gao Wengang,Zhang Huwei,et al. The design of adaptive real-time edge detection system[J].Application of Electronic Technique,2017,43(2):85-87,91.
The design of adaptive real-time edge detection system
Li Jinming,Gao Wengang,Zhang Huwei,Wu Zhengyang
National Kay Laboratory for Electronic Measurement Technology,North University of China,Taiyuan 030051,China
Abstract: Aiming at the problem that the traditional edge detection system is lack of adaptive and poor real-time performance, an adaptive real-time edge detection system is designed by using the high speed parallel processing ability of FPGA and the improved Canny operator. The system extracts the high threshold value of Canny operator according to the characteristic of the amplitude gradient histogram, and extracts edge information by double threshold processing. At the same time,it converts floating point number into integer to improve the processing speed by multilevel pipelining and parallel processing. The experimental results show that the system can extract complete edge and has the characters of good real-time performance and strong adaptive ability.
Key words : edge detection;adaptive;Canny operator;gradient histogram;parallel processing

0 引言

    圖像邊緣是圖像像素灰度值有階躍變化的像素集合,反映了圖像灰度的不連續性,包含了豐富的圖像信息,被廣泛應用于圖像識別領域[1]。常用邊緣檢測算子有Roberts、Prewitt、Sobel、Canny等[2],其中Canny算子是基于最優化邊緣的檢測方法,具有很高的檢測精度和信噪比。但計算量大、實時性差、需要預先設置閾值等弊端制約了其在系統中的應用。

    為此,利用FPGA的高速并行處理能力和豐富的邏輯資源[3],設計了一種適應性較強的實時邊緣檢測系統。該系統無需預先設定閾值,可根據圖像的幅值梯度直方圖特性[4],自動計算Canny邊緣檢測算法所需的高低閾值,能在不同環境下完成對圖像的邊緣檢測,具有較強的適應能力。

1 邊緣檢測系統結構設計

    自適應實時邊緣檢測系統由圖像采集、灰度轉換、數據緩存、Canny算子邊緣檢測以及VGA顯示控制等模塊組成。系統硬件結構如圖1所示。

ck7-t1.gif

    系統選用Cyclone III系列的EP3C40F484為核心處理器。上電后,圖像采集模塊通過SCCB總線初始化CMOS相機并采集圖像數據,然后將圖像數據轉換成灰度圖像以便Canny算子邊緣檢測模塊提取圖像的邊緣信息,而VGA顯示模塊是為了邊緣圖像的實時顯示。同時采用外擴SDRAM的方式來實現對圖像數據的跨時域操作。

2 Canny算子自適應雙閾值選擇

    傳統Canny算子的檢測結果極易受到外部環境影響,本文采用一種自適應雙閾值選取算法來增強系統的抗干擾能力。

    統計非極大值抑制后圖像的梯度直方圖,由梯度直方圖的性質可得低閾值位于第一個大波峰和第一個小波峰之間。為了便于閾值選取和硬件實現,將梯度直方圖轉化為差分直方圖,如式(1)所示:

     ck7-gs1.gif

其中,diff(i)=|NMS(i+1)-NMS(i)|,i=1,2,3,…,NMS(i)是非極大值抑制后的梯度直方圖。然后選擇第一個零點的梯度值作為高閾值,如式(2)所示,低閾值可通過式(3)得到:

     ck7-gs2-3.gif

其中,Arg表示第一次滿足Diff(i)=0的像素點i的梯度值。

3 自適應實時邊緣檢測系統的實現

    系統前端搭載CMOS相機OV5620采集圖像。上電后,圖像采集模塊通過SCCB總線對相機進行初始化,然后相機輸出640×480像素大小的圖像數據。圖像采集模塊在接收圖像數據的同時會根據像素時鐘、同步信號來確定數據的有效位,并將數據傳遞到下一模塊進行灰度化處理。系統中采用4.7 kΩ的上拉電阻來解決SCCB接口只能輸出低電平的問題。

    灰度轉換模塊采用一個乘加器來實現。由于FPGA不擅長浮點數處理,可先將浮點參數左移10 bit變為整數參與計算,接著例化一個乘加器,然后再把輸出結果右移10 bit得到圖像灰度值,如式(4)所示:

    ck7-gs4.gif

3.1 圖像緩存模塊的實現

    系統中采用外擴SDRAM芯片MT48LC8M32(2 M×32 bit×4 bank)作為數據緩存器來解決數據的跨時域問題[5]。為了充分利用FPGA的并行處理能力和SDRAM的高速讀寫能力,設計了雙端口(Wr_FIFO和Rd_FIFO)的SDRAM控制器。在SignalTap II中對SDRAM控制器進行功能驗證,仿真結果表明,所設計的SDRAM控制器滿足要求。SDRAM控制器仿真波形如圖2所示。

ck7-t2.gif

3.2 Canny邊緣檢測模塊的實現

    Canny算子是一種面向圖像幅值梯度的邊緣檢測方法。在計算幅值梯度前利用中值濾波代替高斯濾波進行圖像預處理,不僅能平滑圖像噪聲,而且能更好地保留圖像的細小邊緣。

3.2.1 幅值梯度計算

    圖像中某一像素的幅值梯度是不同方向模板對該像素點鄰域卷積的結果??刹捎盟胶痛怪?個方向的3×3模板來計算圖像梯度。方向模板如圖3所示。

ck7-t3.gif

    中心像素點a4的梯度幅值和梯度方向如式(5)所示:

     ck7-gs5.gif

    根據分析,梯度計算模塊可由6個乘加器、2個加法器和1個開方器組成,實現過程如圖4所示。其中一個乘加器包含3個乘法運算和1個加法運算,可直接完成一行像素與對應模板的卷積,再調用一個加法器就可得到某一方向的梯度值,然后結合兩個方向梯度值和一個開方運算來確定該像素點的幅值梯度值。

ck7-t4.gif

3.2.2 非極大值抑制

    非極大值抑制就是比較中心像素梯度值與其梯度方向上相鄰像素梯度值的大小。實現時可將梯度方向分為0°、45°、90°和135°四個方向[6],每個方向包含左右各22.5°范圍,梯度方向根據μ=|Py/Px|的值和tan22.5°≈13/32、tan67.5°≈77/32來確定。梯度方向定義如式(6)所示:

     ck7-gs6.gif

    在確定梯度方向之后,判斷中心像素點是否為該梯度方向上的極大值。先利用移位寄存器和鎖存器來獲得3×3鄰域內的9個像素梯度值,然后通過選擇器找出與中心像素點在同一梯度方向上的兩個梯度值,最后利用比較器進行大小判斷。如果當前像素點的梯度值大于其他兩個梯度值,則該像素點梯度值為極大值,需要參與后續的雙閾值化處理,否則直接輸出該像素點的梯度值為0。

3.2.3 自適應雙閾值處理

    根據所述算法,系統利用梯度直方圖的差分直方圖來自適應選擇雙閾值。由于處理的是256灰度級的圖像,需要在FPGA內部開辟一個256×16的RAM塊來存儲不同梯度值像素點的個數,并把對應的梯度值作為寄存器組RAM的地址。自適應雙閾值選擇電路如圖5所示。

ck7-t5.gif

    當接收到開始信號時,寄存器組自動清零,把圖像梯度值Grad送入地址選擇器來選擇相應的RAM塊,經累加器b對圖像梯度的各個值進行個數統計后,將結果寫入原來的RAM塊中,直到一幀圖像統計完成;當圖像結束信號到來時,時鐘保持電路會自動保持256個系統時鐘,累加器a在時鐘驅動下順序產生寄存器組的地址,并把該地址和下一地址的數據分別送入寄存器a和 b中,由差分電路處理后,使用比較器將差分結果與0進行比較;若結果為 0 則發出停止累加信號,此時累加器a的值就是高閾值ThH,同時把ThH右移1位得到低閾值ThL。

    自動計算雙閾值后,直接對非極大值抑制后的圖像進行雙閾值分割。首先采用兩個比較器將中心像素點的梯度值Grad(i,j)分別與高低閾值ThH、ThL作比較來確定強弱邊緣。若Grad(i,j)>ThH,則為強邊緣,輸出0xFF;若Grad(i,j)<ThL,不是邊緣點,輸出0;若ThL<Grad(i,j)<ThH,則為弱邊緣,需要結合強邊緣進行連通域處理。連通域處理是在中心像素點的8連通區域內,若有強邊緣像素點的存在,則該像素點將被判定為強邊緣,輸出0xFF,否則輸出為0。雙閾值分割電路如圖6所示。

ck7-t6.gif

    利用SignalTap II驗證Canny邊緣檢測模塊,仿真結果如圖7所示。

ck7-t7.gif

4 實驗結果及分析

    根據系統設計方案,在FPGA上實現了基于自適應雙閾值Canny算法的邊緣檢測系統。系統可自適應選擇合適閾值,集圖像采集、邊緣提取和實時顯示功能于一體,同時實現了基于傳統Canny算子的邊緣測系統。為了增加實驗的對比性,在實驗室環境下,固定CMOS相機,分別采用高低閾值與自適應閾值進行對比測試,測試結果如圖8所示。

ck7-t8.gif

    從圖8中可以看出,在圖像紋理較為復雜的情況下,對于傳統的Canny邊緣檢測系統,當閾值設置過低時,盡管能得到更多的邊緣信息,但虛假邊緣會增加,受噪聲的干擾明顯,檢測結果偏差較大,如圖8(c)所示;隨著閾值的增高,邊緣檢測能力減弱,將逐漸丟失部分緩變邊緣,降低圖像的信息量,直接表現為植物上很多細小的斑點沒有被檢測出來,如圖8(d)所示;而所設計的自適應邊緣系統無需手動設置閾值就能提取較為完整的圖像邊緣,對圖像細節和整體輪廓表現較好,如圖8(b)所示,這避免了人為因素對檢測結果的影響,提高了系統的自適應性。

    系統最差路徑的最大頻率為113.51 MHz,系統在留有20%余量情況下處理一幀圖像的時間約為3.4 ms,實時性較好。

5 結論

    本文以FPGA為核心設計并實現了一種實時邊緣檢測系統。系統利用圖像的幅值梯度直方圖信息,可在不同場景下自適應選取Canny算子所需的高低閾值,有效解決了Canny算子邊緣檢測中需要手動設置閾值的弊端。實驗測試結果表明,自適應實時邊緣檢測系統具有精度高、實時性好、抗干擾能力強的優點,可廣泛應用于視頻監控、目標跟蹤、醫療設備等領域。

參考文獻

[1] 陳娟,陳乾輝,師路歡.圖像跟蹤中的邊緣檢測技術[J].中國光學與應用光學,2009,2(1):46-53.

[2] 陳彥燕,王元慶.常用邊緣檢測算法的定量比較[J].計算機工程,2008,34(17):202-204.

[3] 李佩斌,黃瑩,趙譽婷.基于DSP+FPGA的嵌入式圖像處理系統設計[J].現代電子技術,2014,37(20):95-98.

[4] 黃河,李慶武,范習健.采用局部動態閾值的圖像分割算法[J].光電子技術,2011,31(1):78-80.

[5] 項力領,劉智,楊陽,等.單片SDRAM的數據讀寫乒乓操作設計[J].長春理工大學學報(自然科學版),2013(5):140-143.

[6] 李華,朱波.基于FPGA的彩色圖像實時采集系統設計[J].液晶與顯示,2014,29(2):258-265.

[7] 于建軍,吳志勇.CameraLink在視頻控制系統中的應用[J].光機電信息,2011,28(5):42-45.



作者信息:

李錦明,高文剛,張虎威,吳正洋

(中北大學 電子測試技術國家重點實驗室,山西 太原030051)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品九九| 欧美激情视频一区二区三区不卡| 亚洲二区视频| 亚洲欧美欧美一区二区三区| 亚洲欧洲综合另类| 激情欧美一区二区三区| 国产欧美日韩精品丝袜高跟鞋 | 亚洲国产成人不卡| 欧美在线免费观看视频| 欧美一级久久久久久久大片| 亚洲一区二区三区中文字幕在线| 亚洲免费观看高清完整版在线观看| 亚洲高清自拍| 91久久国产综合久久蜜月精品 | 国产精品美女在线观看| 欧美午夜电影一区| 国产精品久久久久久久久久直播| 欧美新色视频| 国产精品高潮呻吟| 国产精品国产三级国产aⅴ无密码| 国产精品国产一区二区| 国产精品成av人在线视午夜片| 欧美日韩另类国产亚洲欧美一级| 欧美日韩综合视频| 国产精品观看| 国产精品区一区| 国产酒店精品激情| 国产一区日韩欧美| 樱桃视频在线观看一区| 亚洲国产精品尤物yw在线观看| 亚洲国产精品成人| 亚洲美女精品久久| 亚洲一二三区精品| 欧美在线|欧美| 91久久黄色| 国产精品99久久久久久白浆小说| 亚洲在线成人| 久久精品国产亚洲一区二区三区 | 欧美在线网址| 亚洲人www| 亚洲直播在线一区| 久久精品国产清自在天天线| 免费欧美在线视频| 欧美日韩国产三区| 国产精品一国产精品k频道56| 国产在线乱码一区二区三区| 亚洲国产精品v| 亚洲午夜久久久久久尤物 | 欧美一区成人| 亚洲日本理论电影| 亚洲综合日韩在线| 久久久青草婷婷精品综合日韩| 欧美成人有码| 国产精品区二区三区日本 | 亚洲人成7777| 亚洲欧美国产毛片在线| 久久久无码精品亚洲日韩按摩| 欧美精品v日韩精品v国产精品| 国产精品伦理| 亚洲国产精品成人| 亚洲欧美在线另类| 亚洲精品在线观| 午夜精品久久久| 欧美高清视频免费观看| 国产精品久久久爽爽爽麻豆色哟哟| 国内在线观看一区二区三区| 99riav1国产精品视频| 欧美中文在线字幕| 亚洲一区二区三区久久| 久久伊人精品天天| 国产精品久久久久久久电影| 伊人久久亚洲影院| 亚洲欧美高清| 一本色道**综合亚洲精品蜜桃冫| 久久精品导航| 国产精品jvid在线观看蜜臀| 在线观看亚洲视频啊啊啊啊| 亚洲先锋成人| 日韩五码在线| 久久免费午夜影院| 国产精品久久久免费| 91久久久国产精品| 欧美在线视频在线播放完整版免费观看 | 91久久久久久| 久久福利一区| 国产精品v日韩精品| 在线免费观看日本一区| 午夜精品区一区二区三| 亚洲视频视频在线| 农夫在线精品视频免费观看| 国产欧美日韩麻豆91| 夜夜嗨av色综合久久久综合网| 亚洲欧洲一级| 久久精品亚洲一区二区| 国产精品爱久久久久久久| 亚洲九九爱视频| 91久久综合| 久久午夜视频| 国产欧美日韩在线观看| 一区二区国产精品| 99精品欧美一区二区三区 | 亚洲毛片在线观看| 亚洲精品在线视频观看| 蜜臀av性久久久久蜜臀aⅴ| 国产主播一区二区三区| 亚洲欧美一级二级三级| 午夜精品在线看| 国产精品久久二区二区| 夜夜嗨一区二区| 日韩一级在线观看| 欧美激情综合五月色丁香小说 | 午夜影视日本亚洲欧洲精品| 亚洲欧美一级二级三级| 欧美日韩一区在线观看视频| 亚洲精品国精品久久99热| 亚洲精品视频在线看| 免费欧美在线| 亚洲国产岛国毛片在线| 亚洲国产清纯| 免费在线欧美视频| 在线免费高清一区二区三区| 亚洲黄色精品| 男女精品网站| 亚洲国产精品电影| 亚洲精品一区中文| 欧美精品福利在线| 亚洲精品久久久久久一区二区| 99精品欧美一区二区三区| 欧美三级在线视频| 在线亚洲高清视频| 午夜精品短视频| 国产亚洲免费的视频看| 久久国内精品自在自线400部| 久久一区欧美| 亚洲精品免费电影| 亚洲小说区图片区| 国产精品视频午夜| 欧美尤物一区| 免费日韩av电影| 亚洲欧洲综合| 亚洲欧美制服中文字幕| 国产区精品视频| 亚洲国产精品成人综合| 欧美大片在线观看一区二区| 亚洲精品男同| 亚洲欧美卡通另类91av| 国产情人节一区| 亚洲全部视频| 欧美体内she精视频在线观看| 亚洲欧美成人一区二区在线电影| 久久久久久亚洲精品不卡4k岛国| 伊人婷婷欧美激情| 在线一区亚洲| 国产欧美一区二区精品性色| 亚洲国产第一页| 欧美日韩情趣电影| 午夜伦理片一区| 欧美激情日韩| 亚洲欧美激情在线视频| 久久阴道视频| 一本久久a久久精品亚洲| 欧美主播一区二区三区美女 久久精品人| 国模吧视频一区| 一本久道久久久| 国产日韩欧美黄色| 日韩视频一区二区三区在线播放免费观看 | 黄色成人av| 亚洲视频精选在线| 国产亚洲欧美日韩一区二区| 亚洲人线精品午夜| 国产精品白丝jk黑袜喷水| 久久精品理论片| 欧美视频在线一区二区三区| 欧美一区国产一区| 欧美美女bbbb| 欧美一区二区三区的| 欧美精品在线极品| 午夜精品一区二区三区在线视| 欧美大片免费看| 欧美一区成人| 欧美亚洲第一页| 亚洲日本久久| 国产亚洲一区二区三区在线播放| 日韩亚洲国产精品| 国产一区二区三区网站| 亚洲视频图片小说| 狠狠色伊人亚洲综合网站色| 亚洲伊人久久综合| 亚洲国产成人tv| 久久精品一本久久99精品| 亚洲看片一区| 老巨人导航500精品| 亚洲一区日本| 欧美激情小视频| 久久成人18免费网站| 国产精品爽黄69| 亚洲视频视频在线| 亚洲国产精品成人综合色在线婷婷| 久久国产主播| 亚洲一级高清|