《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于OTSU算法的FPGA實時繞距測量系統(tǒng)
基于OTSU算法的FPGA實時繞距測量系統(tǒng)
2015年電子技術應用第7期
林宜丙,石守東,孫書丹
寧波大學 信息科學與工程學院,浙江 寧波315211
摘要: 隨著FPGA芯片集成度的提高,加之其價格低廉的優(yōu)勢,越來越多的視頻圖像處理平臺采用基于FPGA技術的方案。設計并實現(xiàn)了一個基于OTSU算法的FPGA實時繞距測量系統(tǒng)。首先設計了視頻圖像灰度化的非浮點運算實現(xiàn),然后詳細討論了OTSU算法的硬件實現(xiàn)方案,包括其原理、公式簡化、流水線處理等。經(jīng)過OTSU算法處理之后,接著通過統(tǒng)計二值圖像中雙絞線部分的列寬,計算兩個最窄列寬之間的距離即繞距。最后在片上可編程系統(tǒng)上編寫軟件模塊實現(xiàn)功能。
中圖分類號: TP391.41
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.07.004
中文引用格式: 林宜丙,石守東,孫書丹. 基于OTSU算法的FPGA實時繞距測量系統(tǒng)[J].電子技術應用,2015,41(7):15-18,22.
英文引用格式: Lin Yibing,Shi Shoudong, Sun Shudan. The FPGA real-time distance measuring system based on OTSU algorithm[J].Application of Electronic Technique,2015,41(7):15-18,22.
The FPGA real-time distance measuring system based on OTSU algorithm
Lin Yibing,Shi Shoudong, Sun Shudan
College of Information Science and Engineering, Ningbo University, Ningbo 315211,China
Abstract: With the improvement of the FPGA chip integration, as well as its advantage of low price, more and more video image processing platform adopt schemes based on FPGA technology. This paper designs and realizes a FPGA real-time distance measuring system based on OTSU algorithm. First,a video image gray level transformation of the non-floating point arithmetic realization is designed,and OTSU algorithm hardware implementation scheme is discussed in detail, including its principle, the formula of simplified, pipeline processing, etc. After OTSU algorithm processing,through the statistics of binary image in the column width of twisted-pair,the distance between the two most narrow column width around the pitch is calculated. Finally,software module is wroten to implement functions.
Key words : OTSU;pitch measurement;FPGA;image processing;NIOS II

0 引言

    網(wǎng)線繞距指的是雙絞線扭繞之后兩個節(jié)點之間的長度,而雙絞線之間相互纏繞的緊密程度一般通過其繞距來度量[1]。網(wǎng)線內部雙絞線需要相互纏繞的原因是為了減少各線之間產生的信號串擾,而每對線對采用的繞距是不同的,有著各自的標準,因此需要在網(wǎng)線成纜制作的同時通過實時反饋繞距值來控制成纜機制作線對。

        FPGA,即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等技術的基礎上進一步發(fā)展的可編程器件。FPGA通過為每個功能單獨地建立硬件,實現(xiàn)整個應用程序所需的功能,因此它具有并行處理的內在特點。硬件設計使其擁有較高的并行運行速度,同時又以其相對低廉的成本保持軟件所具有的可重新編程的靈活性。這使得FPGA非常適用于圖像處理,尤其在底層與中間層充分利用圖像處理固有的并行性特點[2]

1 OTSU算法

1.1 OTSU算法原理

    OTSU算法由日本學者大津展之提出,是一種自適應的閾值確定算法,又叫最大類間方差法。其基本思想是根據(jù)圖像的灰度特性,將圖像按類間距離極大準則分成目標和背景兩個部分[3]。當目標和背景間的類間方差愈大,則表明構成圖像的兩個部分的差別就愈大,且其判斷準則簡單,易于移植至FPGA中實現(xiàn),因此廣泛應用于實時圖像分割領域。

    此方法的基本原理:設待分割圖像包含L個灰度級(0,1,…,L-1),各個灰度值的概率為:

    qrs1-gs1.gif

其中ni表示灰度值是i的像素數(shù),N為總的像素數(shù)。給定圖像I(x,y),目標與背景的分割閾值記作t,則屬于目標區(qū)域A與背景區(qū)域B的像素點數(shù)占整幅圖像比例分別記做:

    qrs1-gs2-8.gif

    當使得式(8)中的類間方差達到最大,此時的t即為閾值。

1.2 簡化OTSU算法公式

    將式(7)代入式(8)可得:

    qrs1-gs9.gif

    為了簡化計算,將類間方差表達式改寫成式(10)所示。而對每幀圖像來說,N是一個常數(shù)值,可以忽略不計,從而式(10)可以進一步改寫成式(11),便于FPGA并行實現(xiàn)OTSU算法。

    qrs1-gs10-11.gif

2 FPGA實時繞距檢測系統(tǒng)并行設計

2.1 硬件總體架構設計

    系統(tǒng)整體電路以FPGA為核心,其外圍的器件主要包括高速CMOS圖像采集器、串口轉無線模塊以及FPGA芯片,并在整體電路內部設計一個電源模塊為各個模塊供電。嵌入式繞距測量系統(tǒng)的整體框架:圖像采集部分采用高速CMOS圖像采集器,由于其有效像素點較多,一般其分別率為百萬級以上,且具有較短的曝光時間,因此被用來實時采集絞線圖像。通過使用單一的線性光源對絞線進行照射,并將其投影到事先設置好的背景板上,接著通過高速CMOS圖像采集器采集投影在背景板上的投影。最后將傳感器系統(tǒng)采集的圖像陣列傳輸至FPGA電路系統(tǒng)內,運用OTSU圖像分割算法實時二值化圖像,將二值化圖像遞交給繞距計算模塊處理,統(tǒng)計二值圖像的各列寬度,從而計算出相鄰最窄位置(即絞線節(jié)點)之間的距離,得到絞線的繞距值并發(fā)送至上位機。

2.2 圖像的灰度化處理

    灰度圖像是指不含彩色信息,只含亮度信息的圖像,其像素點的值稱為灰度值,范圍為0~255。由于OTSU算法是基于灰度圖像操作的,因此需要將CMOS攝像頭采集的RGB格式圖像轉換成灰度圖像。常用的灰度化處理方法有分量法、最大值法、平均值法與加權平均法。通過實驗發(fā)現(xiàn),分量法無法充分利用圖像的原始信息,最大值法使得圖像亮度偏高,而平均值法則使得圖像亮度過于柔和,都不利于后續(xù)圖像分割的進行。因此,本文采用加權平均值法實現(xiàn)灰度化處理。

    攝像頭采集的圖像數(shù)據(jù)為3×8 bit的RGB信號,若采用常用的權值:ωr=30%,ωg=59%,ωb=11%,將使得FPGA內部進行浮點乘法運算,這在消耗大量的硬件資源的同時,也拖慢了整個算法的執(zhí)行速度。而采用張鵬等提出的權重[4],可以有效避免浮點運算,其權重分配為:ωr=25%=2-2,ωg=62.5%=2-1+2-3,ωb=12.5%=2-3;則灰度值H=2-2×R+(2-1+2-3)×G+2-3×B,從而將整個運算過程轉換為1次求和運算和4次移位運算。灰度處理模塊的結構見圖1,由于采用了流水線結構的設計,即在求和運算前加入了流水線寄存器,從而在每一個周期內都能輸出一個像素點的灰度值。

qrs1-t1.gif

2.3 OTSU算法的硬件并行實現(xiàn)

qrs1-2.3-x1.gif

    通過上述分析,可分為兩個步驟來計算類間方差:

    (1)在統(tǒng)計模塊中計算一幀圖像的直方圖統(tǒng)計、灰度統(tǒng)計、累積直方圖統(tǒng)計、累積灰度統(tǒng)計;

    (2)依次將累積直方圖與累積灰度統(tǒng)計中的數(shù)值傳入計算模塊計算類間方差。

    硬件結構框圖如圖2所示,主要由統(tǒng)計模塊與計算模塊構成。

qrs1-t2.gif

2.3.1 并行統(tǒng)計模塊

    首先,定義一個深度為256的雙口RAM來保存每個灰度值的像素點個數(shù),具體操作是將每個像素點的灰度值作為其中一個端口的讀地址,讀取RAM單元中的計數(shù),將其值增加1,接著將更新后的計數(shù)從另一個端口寫入同一單元[5]

    其次,由于在統(tǒng)計處理每個像素點時,都要執(zhí)行3個步驟:讀取計數(shù)、更新計數(shù)、寫回計數(shù)。只有完成當前像素點的3個步驟之后,才能進行下一個像素點的處理。而FPGA的并行特性能夠解決此類處理時延導致的低效率,即在OTSU模塊內部構建3個功能相同的統(tǒng)計模塊,每個模塊各自負責相鄰的3個像素點。如圖2,通過逐個激活直方圖統(tǒng)計1、2、3模塊,從而構成一條流水線,使得每個子模塊都有3個時鐘周期來統(tǒng)計1個像素點。讀取計數(shù)、更新計數(shù)、寫回計數(shù)3個步驟的邏輯被劃分到各自的時鐘周期來完成,從而提高了處理的效率。用這種方式,保證了每個時鐘周期能夠統(tǒng)計1個像素點。

    最后,在直方圖輸出時,使用兩個加法器將3個直方圖統(tǒng)計模塊的輸出結果相加,就可以計算得到完整的直方圖統(tǒng)計。在得到完整的直方圖之后,便可分別算出灰度統(tǒng)計、累積直方圖統(tǒng)計、累積灰度統(tǒng)計。

2.3.2 流水線計算模塊

    把統(tǒng)計模塊中的累積直方圖統(tǒng)計和累積灰度統(tǒng)計的結果依次送入計算模塊。對于計算模塊,如圖3,只需采用2個除法器和3個乘法器即可實現(xiàn),并且構成一條四級流水線,這樣只需5個時鐘就能得到最終的類間方差。

qrs1-t3.gif

3 繞距計算模塊

    在數(shù)字視頻處理系統(tǒng)中,由于數(shù)據(jù)流量非常之大且對系統(tǒng)的實時性的要求也較高,因此系統(tǒng)有必要建立高速有序的視頻數(shù)據(jù)輸入/輸出流,而乒乓緩存結構正是為平衡視頻編解碼與變速的圖像處理過程之間的速度不匹配問題提供數(shù)據(jù)通道的。

    乒乓緩存結構將輸入數(shù)據(jù)流經(jīng)由數(shù)據(jù)選擇單元將數(shù)據(jù)流等時地劃分至兩個數(shù)據(jù)緩存區(qū)。采用乒乓操作[6]處理二值化后的圖像數(shù)據(jù)如圖4所示,設置兩個BLOCK RAM:r1,r2;在第1個緩存周期,將第一幀線材每列的寬度存入r1中;待到r1存滿后,在第2個緩存周期,繼續(xù)將第二幀的線材寬度存入r2中,與此同時,對比r1中的線材寬度,找出寬度極小的n個節(jié)點,記錄n個節(jié)點的列地址,記第n個節(jié)點的列地址A1,與n-1個節(jié)點的地址A0相減即得出該線材繞距,并判斷其是否符合標準。這樣,從模塊的兩端看,輸入/輸出的數(shù)據(jù)流都是連續(xù)的,從而達到了利用低速模塊處理高速數(shù)據(jù)的目的,并加快了整個算法的實時性。

qrs1-t4.gif

4 實驗結果與分析

    本文采用Verilog語言與C語言編寫,采用的器件是Cyclone IV EP4CE1系列的芯片。OTSU算法執(zhí)行結果如圖5所示,通過換算比例尺可得出該雙絞線繞距為16.59 mm。可以看出本文算法能夠較好地分割雙絞線圖像,且具有快速的圖像處理速度,能夠實現(xiàn)雙絞線圖像的實時分割,使得系統(tǒng)能更好地檢測雙絞線繞距,達到了預期目的,而且這種方法還可以應用于其他各類線材的繞距、線寬等參數(shù)的檢測。

qrs1-t5.gif

    通過QuartusII編譯分析可知,二值化模塊占用FPGA芯片邏輯單元不到5%,直方圖統(tǒng)計模塊占用了約16%,而計算模塊占用了約7%的資源,這大大節(jié)約了芯片的硬件資源,節(jié)約了硬件成本,使得更多的資源可用于其他硬件算法。對于輸入時鐘為50 MHz、大小為640×480的雙絞線圖像,每幀處理時間為:T=qrs1-5-s1.gif×640×480=0.006 144 s,完全達到了實時進行雙絞線圖像處理的要求。

5 結論

    OTSU分割算法通過不斷計算得到使得類間方差達到最大值的閾值,其算法本身有大量操作可以并行實現(xiàn)。因此,相比普通的ARM平臺的順序執(zhí)行方案,本文使用的FPGA方案更具實時性,能夠勝任對于網(wǎng)線實時繞距測量的處理速度要求。通過在FPGA中構建3個直方圖統(tǒng)計子模塊,使得算法在1個周期內統(tǒng)計1個像素點的灰度值,并使用簡化的計算公式,大大減少了算法的處理時間,并能很好地將雙絞線目標從背景中分割出來。

參考文獻

[1] 張國光.如何檢查網(wǎng)線性能[J].鐵道通信信號,2006,42(2):62-63.

[2] 原魁,肖晗,何文浩.采用FPGA的機器視覺系統(tǒng)發(fā)展現(xiàn)狀與趨勢[J].計算機工程與應用,2010(36):1-6.

[3] 齊麗娜,張博,王戰(zhàn)凱.最大類間方差法在圖像處理中的應用[J].無線電工程,2006(7):25-26,44.

[4] 張鵬,鐘俊,郭安明,等.設備監(jiān)控圖像預處理算法改進及其FPGA實現(xiàn)[J].計算機應用,2011(6):1706-1708.

[5] BAILEY D G.基于FPGA的嵌入式圖像處理系統(tǒng)設計[M].原魁,何文浩,肖晗,譯.北京:電子工業(yè)出版社,2013.

[6] 吳繼華,蔡海寧,王誠.Altera FPGA/CPLD設計,高級篇[M].第2版.北京:人民郵電出版社,2011.

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲在线观看免费| 欧美成人在线免费观看| 亚洲国产天堂久久综合网| 亚洲欧美日韩精品久久奇米色影视| 亚洲精品婷婷| 亚洲激情第一区| 亚洲国产日韩美| 91久久极品少妇xxxxⅹ软件| 尤物九九久久国产精品的特点 | 亚洲欧美一区二区视频| 中文国产成人精品久久一| 一区二区电影免费观看| 一区二区三区高清视频在线观看| 亚洲最黄网站| 亚洲网站在线| 亚洲欧美日本国产专区一区| 午夜精品福利电影| 欧美呦呦网站| 久久男女视频| 欧美大片在线看| 欧美精品福利在线| 欧美日韩中文精品| 国产精品福利片| 国产精品一级| 国产一区二区欧美| 激情自拍一区| 亚洲日本无吗高清不卡| 99re6这里只有精品| 国产精品99久久久久久有的能看| 亚洲无玛一区| 久久se精品一区二区| 亚洲国产视频直播| 一区二区三区|亚洲午夜| 亚洲综合精品| 久久久97精品| 欧美成人综合一区| 欧美网站大全在线观看| 国产欧美午夜| 曰本成人黄色| 99re66热这里只有精品4| 亚洲一区制服诱惑| 亚洲国产mv| 中日韩高清电影网| 久久国产一区| 欧美成人综合网站| 国产精品伦子伦免费视频| 狠狠爱综合网| 一本久道久久综合婷婷鲸鱼| 亚洲欧美日韩视频一区| 91久久综合亚洲鲁鲁五月天| 亚洲午夜久久久久久久久电影院| 久久精品女人| 欧美日韩国产综合新一区| 国产美女精品在线| 亚洲国内在线| 亚洲欧美另类国产| 日韩午夜电影| 久久国产日韩| 欧美日韩亚洲91| 海角社区69精品视频| 日韩系列在线| 久久精品成人一区二区三区| 中日韩午夜理伦电影免费| 久久久久国色av免费观看性色| 欧美激情一区二区三区| 国产欧美一二三区| 亚洲国产一区二区三区a毛片| 亚洲自拍偷拍福利| 日韩午夜在线电影| 久久九九热re6这里有精品| 欧美另类视频在线| 国产一区视频在线看| av成人免费在线观看| 亚洲国产精品va在看黑人| 亚洲欧美日韩精品久久| 欧美激情bt| 韩曰欧美视频免费观看| 在线视频精品一区| 最新中文字幕一区二区三区| 欧美一区二区三区视频免费播放 | 欧美午夜不卡在线观看免费| 精品成人一区二区| 亚洲欧美国内爽妇网| 一级日韩一区在线观看| 久久久中精品2020中文| 国产精品久久久久久久午夜片| 最近中文字幕日韩精品 | 亚洲欧美激情在线视频| 欧美久色视频| 在线看片成人| 欧美中文字幕在线播放| 亚洲欧美日本国产有色| 欧美日韩性视频在线| 亚洲国产精品精华液2区45| 久久激情视频| 久久gogo国模啪啪人体图| 国产精品爱啪在线线免费观看 | 欧美一区二区三区四区在线| 亚洲一区二区三区免费视频| 欧美激情视频一区二区三区不卡| 激情久久中文字幕| 性欧美暴力猛交另类hd| 亚洲欧美日韩另类| 欧美视频一区在线观看| 亚洲精品欧美| 亚洲卡通欧美制服中文| 蜜臀99久久精品久久久久久软件 | 久久www成人_看片免费不卡| 欧美一区在线看| 国产精品美女久久久久久久| 一区二区三区www| 中文日韩在线| 欧美日韩亚洲视频一区| 日韩视频免费观看高清在线视频| 亚洲精品中文字幕在线观看| 欧美国产日韩一区二区| 亚洲第一中文字幕| 亚洲激情视频网| 欧美成ee人免费视频| 亚洲高清久久久| 亚洲久久视频| 欧美人与性动交cc0o| 亚洲日本视频| 国产精品99久久久久久久久久久久| 欧美精品在线一区二区| 亚洲精品久久久久久下一站 | 国产一区二区三区精品欧美日韩一区二区三区| 亚洲一级在线| 久久成人羞羞网站| 国产日韩久久| 欧美一区观看| 久久人人超碰| 亚洲电影视频在线| 亚洲精品网站在线播放gif| 欧美刺激性大交免费视频| 亚洲精品乱码久久久久久蜜桃麻豆 | 欧美一级一区| 久久一区二区三区av| 在线观看一区| 一区二区三区.www| 国产精品入口麻豆原神| 欧美一区二区三区四区高清| 老司机午夜精品视频| 亚洲欧洲一区二区三区| 亚洲香蕉伊综合在人在线视看| 国产精品每日更新| 欧美一区二区黄| 免播放器亚洲一区| 日韩亚洲在线观看| 久久av在线看| 亚洲二区在线视频| 亚洲午夜激情免费视频| 国产精品区一区| 亚洲福利视频免费观看| 欧美精品一区二| 亚洲女同在线| 欧美成人a∨高清免费观看| 日韩一区二区福利| 久久精品视频免费播放| 亚洲激情视频在线观看| 亚洲欧美日韩国产精品| 激情av一区二区| 亚洲午夜精品久久| 国内自拍视频一区二区三区| 99re国产精品| 国产亚洲一区二区三区| 99re8这里有精品热视频免费| 国产精品久久久久久久久久ktv | 国产精品美女一区二区| 亚洲国产另类 国产精品国产免费| 欧美人与性动交cc0o| 香蕉免费一区二区三区在线观看| 欧美成人免费全部| 亚洲天堂网在线观看| 美女图片一区二区| 亚洲一区二区三区高清不卡| 裸体女人亚洲精品一区| 亚洲午夜精品久久| 嫩模写真一区二区三区三州| 一区二区三区四区五区精品| 久久综合九色九九| 这里只有精品视频| 欧美成人蜜桃| 亚洲欧美视频在线| 欧美日韩喷水| 亚洲第一福利在线观看| 国产精品久久久久久av福利软件 | 欧美在线不卡| 亚洲精品在线三区| 久久亚洲不卡| 亚洲性av在线| 欧美噜噜久久久xxx| 久久超碰97中文字幕| 欧美午夜精品久久久久久浪潮| 亚洲国产毛片完整版| 国产欧美视频一区二区三区| 一区二区av| 亚洲福利视频专区| 久久久之久亚州精品露出| 亚洲影视九九影院在线观看|