亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        圖像二值化處理硬件加速引擎的設(shè)計(jì)

        2021-12-10 04:07:08宋宇鯤張多利
        關(guān)鍵詞:流水線像素點(diǎn)亮度

        陽(yáng) 欣, 魏 可, 宋宇鯤, 張多利

        (合肥工業(yè)大學(xué) 微電子學(xué)院,安徽 合肥 230601)

        0 引 言

        圖像二值化處理是一種用于分離圖像背景和前景的數(shù)字圖像處理方法,被廣泛應(yīng)用于機(jī)器視覺(jué)、醫(yī)學(xué)影像、文本提取等領(lǐng)域[1-3]。圖像二值化處理的關(guān)鍵在于獲取合適的閾值,獲取閾值通常需要處理大量圖像數(shù)據(jù),而處理器僅訪問(wèn)內(nèi)存就需要3個(gè)以上時(shí)鐘周期[4],計(jì)算過(guò)程耗時(shí)長(zhǎng),無(wú)法滿足某些實(shí)時(shí)性要求高的場(chǎng)合。

        針對(duì)低成本、高實(shí)時(shí)性等嵌入式系統(tǒng)需求,本文提出了一種圖像二值化處理硬件加速架構(gòu),并完成了基于該架構(gòu)的硬件電路設(shè)計(jì)。所設(shè)計(jì)的硬件電路作為處理器的從設(shè)備實(shí)現(xiàn)多種規(guī)格、不同環(huán)境下的圖像二值化處理,具有電路面積小、加速效率高等優(yōu)點(diǎn)。

        1 算法原理

        圖像二值化處理又稱(chēng)為圖像閾值處理,主要實(shí)現(xiàn)方法有全局閾值算法和自適應(yīng)閾值算法。全局閾值算法對(duì)整幅圖像的像素點(diǎn)運(yùn)算獲取最佳閾值,其算法通用性好,但是對(duì)圖像噪聲敏感[5],而且內(nèi)存開(kāi)銷(xiāo)大;自適應(yīng)閾值算法將原始圖像分割成若干個(gè)子圖像并分別求子圖像的最優(yōu)閾值,它能夠減小圖像噪聲的影響,但是計(jì)算過(guò)程相對(duì)復(fù)雜[6]。

        綜合考慮處理效果、硬件成本以及算法復(fù)雜度等因素,本文將Box Filter算法引入到圖像二值化處理過(guò)程中。這是一種自適應(yīng)閾值算法,以待處理像素點(diǎn)為中心、(2r+1)為邊長(zhǎng)的正方形框作為閾值窗口,閾值窗口內(nèi)所有像素點(diǎn)亮度值的數(shù)學(xué)期望是該像素點(diǎn)的閾值T(x,y)[7]?;谠撍惴ǖ挠布娐分恍枰?圖像寬度×閾值窗口寬度)字節(jié)圖像緩存,具有算法復(fù)雜度低、抗噪聲能力強(qiáng)等優(yōu)點(diǎn)[8]。

        1.1 處理流程

        圖像像素點(diǎn)按照從左到右、從上到下順序依次輸入。針對(duì)以上特點(diǎn),首先計(jì)算閾值窗口內(nèi)圖像的第i列像素點(diǎn)的亮度和C(i),即

        (1)

        其中:g(i,y+j)為橫坐標(biāo)為i、縱坐標(biāo)為y+j的像素點(diǎn)的亮度值;y為閾值窗口中心像素點(diǎn)的縱坐標(biāo);r為閾值窗口的半徑。

        閾值窗口內(nèi)所有像素點(diǎn)的亮度和R(x,y)是其每列像素點(diǎn)亮度和的累加,即

        (2)

        其中:x為閾值窗口中心像素點(diǎn)的橫坐標(biāo);r為閾值窗口的半徑。

        隨著閾值窗口向圖像右方移動(dòng),當(dāng)前閾值窗口與前一個(gè)閾值窗口大部分像素點(diǎn)是相同的,閾值窗口所有像素點(diǎn)的亮度和R(m,n)的計(jì)算公式為:

        R(m-1,n)+C(m+r)-C(m-r-1)

        (3)

        其中:R(m-1,n)為前一個(gè)閾值窗口所有像素點(diǎn)的亮度和;C(m-r-1)為閾值窗口前一列像素點(diǎn)的亮度和;C(m+r)為閾值窗口最新一列像素點(diǎn)的亮度和。

        像素點(diǎn)對(duì)應(yīng)的閾值T(x,y)等于閾值窗口所有像素點(diǎn)的亮度和R(x,y)除以閾值窗口的像素點(diǎn)總個(gè)數(shù)(2r+1)2,即

        (4)

        二值圖像b(x,y)由閾值偏置參數(shù)σ、待處理像素點(diǎn)的亮度值g(x,y)和對(duì)應(yīng)的閾值T(x,y)的數(shù)值大小決定,即

        (5)

        1.2 閾值窗口空白部分填充

        當(dāng)閾值窗口的中心像素點(diǎn)是圖像邊沿或靠近邊沿時(shí),可能會(huì)出現(xiàn)部分閾值窗口在圖像有效區(qū)外的情況。

        閾值窗口空白部分的填充步驟如圖1所示。

        當(dāng)窗口半徑r=2、中心像素點(diǎn)坐標(biāo)為(0,0)時(shí),閾值窗口的像素點(diǎn)分布如圖1a所示,圖1中的陰影部分在圖像有效區(qū)外。以圖1a為例,本文填充閾值窗口空白部分的具體步驟如下:

        (1) 使用圖像的邊沿行像素點(diǎn)擴(kuò)展圖像的高度,如圖1b所示。

        (2) 復(fù)制擴(kuò)展后的圖像邊沿列像素點(diǎn)填充閾值窗口的剩余空白部分,如圖1c所示。

        2 系統(tǒng)架構(gòu)

        圖像二值化處理加速引擎、處理器、靜態(tài)隨機(jī)存取存儲(chǔ)器(static random access memory,SRAM)等分立的硬件單元,通過(guò)高級(jí)高性能總線(advanced high preformance bus,AHB)互聯(lián)成一個(gè)系統(tǒng),如圖2所示。

        圖像二值化加速引擎包括內(nèi)存控制、圖像緩存和圖像運(yùn)算等模塊。其中,圖像緩存模塊由(2r+1)個(gè)行緩存單元構(gòu)成,每個(gè)行緩存單元存儲(chǔ)1行像素點(diǎn);內(nèi)存控制模塊是圖像緩存模塊的控制中樞,其主要作用是將像素點(diǎn)g(x,y)存儲(chǔ)在對(duì)應(yīng)行緩存的子存儲(chǔ)單元中,并輸出閾值窗口像素點(diǎn);圖像運(yùn)算模塊根據(jù)(1)~(5)式計(jì)算閾值并輸出二值圖像。

        總線接口包括AHB slave和AHB master。AHB slave收發(fā)圖像二值化處理的工作參數(shù)和控制命令,如圖像大小、閾值偏置參數(shù)σ以及圖像二值化處理開(kāi)始、結(jié)束等信息;AHB master將二值圖像傳輸?shù)綊燧d在AHB總線上的SRAM中。

        3 圖像二值化加速引擎的實(shí)現(xiàn)

        3.1 圖像緩存模塊的控制算法

        本文采用循環(huán)行緩存讀寫(xiě)算法控制行緩存單元[9],其主要思想是:將第1行像素點(diǎn)同時(shí)存儲(chǔ)在行緩存0,1,2,…,r中,實(shí)現(xiàn)圖1b擴(kuò)展圖像高度的功能,圖像其他行像素點(diǎn)按照輪換規(guī)則對(duì)應(yīng)唯一的行緩存,即

        (6)

        其中:N為行緩存的序號(hào);y為輸入像素點(diǎn)在圖像中的縱坐標(biāo);r為閾值窗口的半徑;%為取余運(yùn)算。

        相比于存儲(chǔ)整幀圖像,本算法優(yōu)勢(shì)在于圖像緩存模塊只存儲(chǔ)包含閾值窗口的整行像素點(diǎn),大大減少了圖像緩存的數(shù)量。

        行緩存讀寫(xiě)控制如圖3所示。圖3的縱坐標(biāo)V為行緩存的序號(hào),橫坐標(biāo)U為行緩存的子存儲(chǔ)單元,每個(gè)子單元對(duì)應(yīng)唯一的存儲(chǔ)地址,像素點(diǎn)在行緩存中的存儲(chǔ)地址是其在圖像中的橫坐標(biāo)。為了加快圖像讀寫(xiě)速率,分步輸出閾值窗口內(nèi)的像素點(diǎn),由圖3可知,當(dāng)閾值窗口的1列像素點(diǎn)緩存完成后,下一個(gè)時(shí)鐘節(jié)拍將整列像素點(diǎn)輸出到圖像運(yùn)算模塊。

        圖3 行緩存讀寫(xiě)控制

        3.2 運(yùn)算流水線

        圖像運(yùn)算模塊數(shù)據(jù)運(yùn)算量大,因此其處理速度直接決定了整個(gè)電路的性能。本文采用流水線結(jié)構(gòu)分級(jí)計(jì)算閾值并輸出二值圖像,提高圖像運(yùn)算模塊的主頻[10]。

        運(yùn)算流水線結(jié)構(gòu)如圖4所示,運(yùn)算流水線由分級(jí)運(yùn)算單元和計(jì)數(shù)器構(gòu)成。每輸入1列圖像像素點(diǎn)計(jì)數(shù)器的值加1,計(jì)數(shù)到圖像的行尾時(shí)歸0,其作用是計(jì)算輸入列像素點(diǎn)在圖像中的橫坐標(biāo)。

        圖4 運(yùn)算流水線結(jié)構(gòu)

        運(yùn)算單元分為累加、移位緩存等不同步驟,每級(jí)流水線的原理介紹如下。

        (1) 第1級(jí)流水線由若干個(gè)加法器和寄存器構(gòu)成,采用嵌套子流水線的方式,分步計(jì)算由圖像緩存模塊輸入的閾值窗口整列像素點(diǎn)的亮度和C(i)。

        (2) 第2級(jí)流水線由(2r+3)個(gè)寄存器buffer(0)、buffer(1)、buffer(2)……buffer(2r+1)、buffer(2r+2)組成。其中:buffer(0)緩存閾值窗口前一列像素點(diǎn)的亮度和;buffer(1)、buffer(2)……buffer(2r+1)依次緩存閾值窗口內(nèi)每列像素點(diǎn)的亮度和;buffer(2r+2)緩存圖像最后一列像素點(diǎn)的亮度和C(w)。當(dāng)圖像第1列像素點(diǎn)的亮度和C(0)輸入時(shí),將其同時(shí)存儲(chǔ)在buffer(2r+1)、buffer(2r)、buffer(2r-1)……buffer(r)中,實(shí)現(xiàn)填補(bǔ)閾值窗口左半部分空白區(qū)域的功能。

        (3) 第3級(jí)流水線由加法器、減法器和寄存器構(gòu)成,計(jì)算閾值窗口所有像素點(diǎn)的亮度和R(x,y)。① 當(dāng)閾值窗口的中心像素點(diǎn)位于圖像的第1列時(shí),根據(jù)(2)式對(duì)閾值窗口內(nèi)每列像素點(diǎn)亮度和求和;② 閾值窗口在圖像其他位置時(shí),根據(jù)(3)式計(jì)算R(x,y)。其中,寄存器緩存前一個(gè)閾值窗口所有像素點(diǎn)的亮度和R(x-1,y),閾值窗口前一列像素點(diǎn)的亮度和C(x-r-1)緩存在buffer(0)中。一般情況下,閾值窗口最新一列像素點(diǎn)的亮度和C(x+r)緩存在buffer(2r+1)中。當(dāng)閾值窗口右半部分在圖像有效區(qū)外時(shí),使用圖像最后一列像素點(diǎn)將空白部分補(bǔ)全,圖像最后一列像素點(diǎn)的亮度和C(w)緩存在buffer(2r+2)中。

        (7)

        其中:an=0或1;Mτ為近似值。

        (5) 第5級(jí)流水線由加法器和比較器構(gòu)成,根據(jù)(5)式比較g(x,y)+σ的和與閾值T(x,y)的數(shù)值大小,并輸出二值圖像。

        3.3 圖像二值化加速引擎的具體實(shí)現(xiàn)

        圖像二值化加速引擎的具體實(shí)現(xiàn)如圖5所示。

        圖5 圖像二值化加速引擎的具體結(jié)構(gòu)

        內(nèi)存控制模塊分為主控制器、行緩存選通單元以及地址選通單元。主控制器根據(jù)圖像緩存模塊輸入像素點(diǎn)和輸出像素點(diǎn)的時(shí)序關(guān)系,產(chǎn)生讀寫(xiě)圖像緩存模塊的控制信號(hào)。行緩存選通單元由計(jì)數(shù)器構(gòu)成,當(dāng)像素點(diǎn)輸入時(shí),根據(jù)(6)式產(chǎn)生該像素點(diǎn)對(duì)應(yīng)行緩存的選通信號(hào)。地址選通單元也由計(jì)數(shù)器構(gòu)成,計(jì)算輸入、輸出像素點(diǎn)在圖像中的橫坐標(biāo),并產(chǎn)生像素點(diǎn)對(duì)應(yīng)子存儲(chǔ)單元的選通信號(hào)。

        圖像運(yùn)算模塊由圖4介紹的運(yùn)算流水線和待處理像素點(diǎn)計(jì)數(shù)器構(gòu)成。待處理像素點(diǎn)計(jì)數(shù)器計(jì)算待處理像素點(diǎn)對(duì)應(yīng)的行緩存及其存儲(chǔ)地址,并從圖像緩存模塊中讀取待處理像素點(diǎn)的亮度值。

        結(jié)合圖2與以上敘述,圖像二值化加速引擎的工作流程概括如下:① 處理器通過(guò)AHB slave啟動(dòng)圖像二值化加速引擎并配置其工作參數(shù);② 將輸入像素點(diǎn)存儲(chǔ)在對(duì)應(yīng)的行緩存的子存儲(chǔ)單元中;③ 閾值窗口的整列像素點(diǎn)存儲(chǔ)完成后,立即將它們輸出;④ 圖像運(yùn)算單元分步計(jì)算閾值窗口的閾值,并通過(guò)AHB master將二值圖像寫(xiě)入到SRAM中;⑤ 當(dāng)前圖像處理結(jié)束后,圖像二值化加速引擎配置AHB slave中表示圖像處理結(jié)束的寄存器,并等待下一幀圖像二值化處理。

        4 實(shí)驗(yàn)結(jié)果分析

        4.1 FPGA原型驗(yàn)證

        本文使用Xilinx XC5VLX110T FPGA開(kāi)發(fā)板驗(yàn)證圖像二值化加速電路的正確性。電路經(jīng)過(guò)優(yōu)化、綜合后由FPGA的邏輯單元配置而成,FPGA測(cè)試平臺(tái)如圖6所示。

        圖6 FPGA測(cè)試平臺(tái)

        圖6中,控制單元一方面發(fā)出圖像二值化處理的工作參數(shù)和控制命令,另一方面控制存儲(chǔ)單元有序地讀寫(xiě)。亮度圖像由外部導(dǎo)入開(kāi)發(fā)板的存儲(chǔ)單元內(nèi),圖像二值化處理結(jié)束后,將處理結(jié)果存儲(chǔ)為文本文件,并使用Matlab查看處理效果。不同閾值窗口半徑r和閾值偏置參數(shù)σ的圖像二值化處理效果如圖7所示。

        圖7 不同窗口半徑和閾值參數(shù)的處理效果

        本文提出的架構(gòu)(r=5、r=10)與文獻(xiàn)[12]圖像二值化處理架構(gòu)FPGA實(shí)現(xiàn)的處理性能和資源消耗見(jiàn)表1所列,測(cè)試圖像的分辨率為280×265。

        表1 不同架構(gòu)處理性能和資源消耗對(duì)比

        文獻(xiàn)[12]采用Ostu全局閾值算法,需要緩存整張圖像像素點(diǎn)的亮度值。由表1可知:① 文獻(xiàn)[12]的處理速度比本文架構(gòu)約快11.5%,但本文架構(gòu)(r=10時(shí))消耗的內(nèi)存(BRAMs)只有其47.7%,當(dāng)圖像分辨率增大到640×480時(shí),該比例將減至12%以下;② 由于流水線處理結(jié)構(gòu),窗口半徑r的大小對(duì)架構(gòu)的性能幾乎沒(méi)有影響,但資源消耗隨著r的增大而增加。在150 MHz時(shí)鐘頻率下,每s能處理240張640×480分辨率的圖片。

        4.2 系統(tǒng)測(cè)試

        本文提出的圖像二值化處理加速架構(gòu)經(jīng)過(guò)寄存器傳輸級(jí)(register transfer level,RTL)描述、FPGA驗(yàn)證、版圖驗(yàn)證等步驟后,已被集成于某款QR碼識(shí)別芯片。芯片的制造工藝是SMIC 110 nm,面積為14.975 63 mm2,工作時(shí)鐘頻率的范圍為120~220 MHz,當(dāng)時(shí)鐘頻率為150 MHz時(shí),其功耗為55.744 mW。芯片的部分版圖如圖8所示,由于圖像二值化處理加速電路屬于數(shù)字集成電路,其分散在系統(tǒng)的版圖中。

        圖8 芯片的部分版圖

        芯片測(cè)試平臺(tái)和測(cè)試結(jié)果如圖9所示。由圖9a可知,QR碼識(shí)別芯片將攝像頭采集的圖像轉(zhuǎn)換成二值圖像,并通過(guò)處理器對(duì)二值圖像譯碼,解碼信息通過(guò)UART接口傳輸?shù)焦芾碓O(shè)備。

        當(dāng)時(shí)鐘頻率為120 MHz時(shí),由圖9b可知,采用圖像二值化加速電路的QR碼識(shí)別芯片每s能精確地識(shí)別6張QR碼圖像,具有較高的識(shí)別精度和實(shí)時(shí)性。加速電路有效地壓縮了圖像處理的時(shí)間,同時(shí)也達(dá)到了低功耗處理的目的。

        圖9 芯片測(cè)試平臺(tái)和測(cè)試結(jié)果

        5 結(jié) 論

        針對(duì)低成本、高實(shí)時(shí)性等嵌入式系統(tǒng)需求,本文對(duì)圖像二值化處理的原理和特點(diǎn)進(jìn)行了深入研究,并設(shè)計(jì)了一種圖像二值化處理的硬件加速電路。該加速電路采用循環(huán)行緩存讀寫(xiě)算法減小圖像緩存、增大圖像讀寫(xiě)速率,并通過(guò)流水線處理等方式提高處理性能。在完成FPGA驗(yàn)證等步驟后,該加速電路已應(yīng)用于某款QR碼識(shí)別芯片,并取得了良好的處理效果。

        猜你喜歡
        流水線像素點(diǎn)亮度
        Gen Z Migrant Workers Are Leaving the Assembly Line
        流水線
        亮度調(diào)色多面手
        基于canvas的前端數(shù)據(jù)加密
        亮度一樣嗎?
        基于逐像素點(diǎn)深度卷積網(wǎng)絡(luò)分割模型的上皮和間質(zhì)組織分割
        基于斬波調(diào)制的LED亮度控制
        人生的亮度
        報(bào)廢汽車(chē)拆解半自動(dòng)流水線研究
        基于Node-Cell結(jié)構(gòu)的HEVC幀內(nèi)編碼
        av无码精品一区二区三区宅噜噜| 九九久久精品一区二区三区av | 日本在线一区二区在线| 亚洲av午夜一区二区三| 欧美亚洲色综久久精品国产 | 久久无码专区国产精品s| 国产成年无码V片在线| av网站可以直接看的| 日韩亚洲无吗av一区二区| 无码国产福利av私拍| 一出一进一爽一粗一大视频免费的| 日本中文字幕一区二区视频| 亚洲成人av在线蜜桃| 少妇性饥渴无码a区免费| 高清在线亚洲中文精品视频| 国产熟女精品一区二区| 性色视频加勒比在线观看| 国产精品免费精品自在线观看| 国产精品美女久久久久久大全| 久久综合久中文字幕青草| 天天躁夜夜躁狠狠躁婷婷| 成人激情五月天| 婷婷五月亚洲综合图区| 久久精品国产亚洲AⅤ无码| 日本成人在线不卡一区二区三区| 激情亚洲一区国产精品久久| 99久久综合精品五月天| 老汉tv永久视频福利在线观看| 日本91一区二区不卡| 欧美最猛黑人xxxx| 亚洲免费观看在线视频| av毛片一区二区少妇颜射| 精品人妻av区乱码色片| 香港日本三级亚洲三级| 午夜久久精品国产亚洲av| av在线不卡一区二区| 国产成人精品白浆久久69| 国产欧美精品一区二区三区, | 亚洲国产精品久久无人区| 久久久久人妻一区精品色欧美| 精品亚洲欧美高清不卡高清|