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

        ?

        基于FPGA的實(shí)時(shí)Bayer解馬賽克算法與實(shí)現(xiàn)

        2022-04-25 07:36:12張澤宇伍凌帆楊一帆李旭亮
        應(yīng)用光學(xué) 2022年2期
        關(guān)鍵詞:梯度方向馬賽克復(fù)原

        張澤宇,張 弘,伍凌帆,楊一帆,李旭亮

        (北京航空航天大學(xué),北京 102206)

        引言

        目前絕大多數(shù)的消費(fèi)級(jí)圖像采集設(shè)備采用CMOS/CCD 作為前端傳感器,通過A/D 模塊將采集到的模擬量轉(zhuǎn)化為數(shù)字信號(hào)。由于彩色圖像需要紅、綠、藍(lán)3 顏色分量的信息,出于對(duì)成本和曝光時(shí)間等考慮,消費(fèi)級(jí)產(chǎn)品多采用彩色濾波陣列CFA(color filter array)的方法,將每個(gè)像素點(diǎn)的紅、綠、藍(lán)顏色分量壓縮,僅保留單個(gè)顏色通道信息。其中Bayer 陣列[1]是最常見的一種彩色濾波陣列,其特點(diǎn)在于陣列的綠色分量2 倍于藍(lán)色或紅色分量。

        后端圖像處理系統(tǒng)通過解馬賽克算法將Bayer陣列復(fù)原為紅、綠、藍(lán)3 色陣列,過程如圖1所示。利用目標(biāo)位置原有顏色值以及周圍位置的其他顏色分量,恢復(fù)目標(biāo)位置缺失的顏色。算法性能影響了圖像復(fù)原得到的色彩真實(shí)性,進(jìn)而影響了彩色圖像的有效分辨率。在解馬賽克的過程中不可避免地引入人為設(shè)計(jì)的插值像素,從而導(dǎo)致顏色與真實(shí)場(chǎng)景不相符的情況發(fā)生,主要問題包括拉鏈效應(yīng)、偽彩色和摩爾紋效應(yīng)[2]3 大類問題。圖2 展示了典型場(chǎng)景下,由Bayer 解馬賽克算法引入的拉鏈效應(yīng)(左)、偽彩色(中)和摩爾紋(右)現(xiàn)象。

        目前Bayer 陣列解馬賽克算法已經(jīng)過了長(zhǎng)達(dá)30 余年的發(fā)展,現(xiàn)存在的解馬賽克算法大致可分為3 類。第1 類是模板線性插值方法[3],這種方法的特點(diǎn)在于整幅圖像采用相同的插值模板進(jìn)行計(jì)算,算法復(fù)雜度低、輸出延遲小。常見的方法包括最近鄰插值方法、雙線性插值法等。最初的算法設(shè)計(jì)中,未知的顏色分量?jī)H通過周圍的同顏色分量來插值復(fù)原,但是由于藍(lán)色、紅色分量信息不足,復(fù)原效果不佳,引入偽彩色問題。隨著色比色差定律[4]的提出,算法可以通過更加豐富的綠色信息幫助復(fù)原藍(lán)色和紅色的顏色信息,這類算法在圖像平滑區(qū)域?qū)崿F(xiàn)了很好的效果,但是在圖像紋理豐富的區(qū)域難以維持銳利的邊緣,存在拉鏈效應(yīng)等復(fù)原問題。

        第2 類是基于局部梯度反向的線性插值方法[5-7],這種算法的提出是為了提升第1 類方法在圖像紋理豐富區(qū)域的復(fù)原效果。選擇垂直于圖像梯度的方向進(jìn)行插值復(fù)原,可以有效地減少拉鏈效應(yīng)等復(fù)原問題。這類算法的性能受制于局部梯度信息的重建精度以及后續(xù)的插值方向選擇,高效的算法需要權(quán)衡梯度算法的復(fù)雜度和色彩復(fù)原效果。目前廣泛應(yīng)用的是先計(jì)算候選顏色,再確定梯度方向的“后驗(yàn)”方法[6-7]。該類方法首先計(jì)算出不同梯度方向的候選綠色分量,然后利用自然圖像中色差沿著圖像邊緣的方向更加平滑的特點(diǎn)[8]確定邊緣方向,進(jìn)一步復(fù)原藍(lán)色和紅色分量。算法只需要5~7 行的圖像緩存就可以進(jìn)行瀑布式運(yùn)算,非常適合基于FPGA 的開發(fā),適用于實(shí)時(shí)性要求高的邊緣計(jì)算場(chǎng)景,如自動(dòng)駕駛系統(tǒng)中的攝像組件、高靈敏度光電探測(cè)設(shè)備等。

        第3 類是基于頻域分析的解馬賽克算法[9-11],該類方法將Bayer 陣列看作是原始的紅、綠、藍(lán)3 色陣列通過采樣得到,在頻域中對(duì)應(yīng)特定的頻譜調(diào)制,而圖像中紋理豐富的區(qū)域即對(duì)應(yīng)頻域中的高頻部分。研究人員根據(jù)這一特點(diǎn),設(shè)計(jì)特定的頻域?yàn)V波方法解決紋理豐富區(qū)域的圖像復(fù)原效果。方法[9]分析了Bayer 陣列的頻域特征,通過設(shè)計(jì)自適應(yīng)濾波器的方法來迭代得到最后的紅、綠、藍(lán)3 色陣列。計(jì)算過程需要對(duì)完整的圖像進(jìn)行緩存,算法延遲時(shí)間相較于第2 類方法慢2~3 個(gè)數(shù)量級(jí)。該類方法對(duì)圖像高頻區(qū)域的復(fù)原效果更好,因而適用于專業(yè)相片復(fù)原精修、視頻后期處理等非實(shí)時(shí)場(chǎng)景的應(yīng)用。

        本文結(jié)合實(shí)際應(yīng)用,提出一種低延遲、高復(fù)原質(zhì)量的Bayer 解馬賽克算法,并完成FPGA 硬件算法的實(shí)現(xiàn)。實(shí)驗(yàn)結(jié)果表明,本文算法可在FPGA 中實(shí)時(shí)運(yùn)行,與相同算法復(fù)雜度、低輸出延遲的算法相比,復(fù)原出彩色圖像的質(zhì)量更高。

        1 系統(tǒng)設(shè)計(jì)方案

        如圖3所示,本方案采用Xilinx 公司的FPGA作為主芯片,實(shí)現(xiàn)了將前端CMOS 采集的圖像信息通過數(shù)字圖像信號(hào)處理(ISP)后,最后通過視頻編碼方式輸出的功能。Bayer 解馬賽克算法作為圖像信號(hào)處理中最重要的環(huán)節(jié)之一,部署在FPGA內(nèi)部。本章節(jié)重點(diǎn)講述系統(tǒng)的硬件系統(tǒng)設(shè)計(jì)方案以及基于FPGA 的實(shí)時(shí)數(shù)字圖像信號(hào)處理模塊的功能化設(shè)計(jì)。

        硬件系統(tǒng)包括供電模塊、時(shí)鐘及復(fù)位模塊、DDR3 緩存模塊、視頻編碼模塊、FPGA 主芯片以及前端CMOS 芯片。FPGA 作為數(shù)字圖像信號(hào)處理主芯片[12],不僅完成對(duì)CMOS 芯片和其他模塊的配置工作,同時(shí)負(fù)責(zé)完整的數(shù)字圖像信號(hào)處理功能(包括解馬賽克算法的實(shí)現(xiàn));圖像數(shù)據(jù)緩存采用DDR3 芯片;視頻編解模塊將FPGA 的輸出視頻流編碼為常見的視頻格式。

        系統(tǒng)的核心功能都部署在主芯片F(xiàn)PGA 上,根據(jù)模塊的功能不同,采用FPGA 內(nèi)部的MicroBlaze軟核和Verilog HDL 硬件語言搭建的功能化模塊相結(jié)合的方案設(shè)計(jì)了整體的FPGA 內(nèi)部功能框架。MicroBlaze 軟核實(shí)現(xiàn)了包括CMOS 芯片寄存器的配置、控制CMOS 自動(dòng)曝光和自動(dòng)增益等功能。模塊通過C 語言實(shí)現(xiàn),功能特點(diǎn)在于模塊參數(shù)需要頻繁修改、涉及復(fù)雜的代數(shù)運(yùn)算以及實(shí)時(shí)性要求較低等。其他的數(shù)字圖像處理功能,包括串行數(shù)據(jù)解碼、壞點(diǎn)補(bǔ)償、解馬賽克模塊、Bayer去噪模塊、圖像較正等,均通過Verilog HDL 硬件語言完成模塊化的設(shè)計(jì)。整體視頻數(shù)據(jù)采用串行流式的方案,從CMOS 的原始輸出到最終的制式視頻編碼完成,這保證了整體系統(tǒng)具備最低的視頻輸出延遲。FPGA 功能框架設(shè)計(jì)方案如圖4所示。

        2 實(shí)時(shí)Bayer 解馬賽克算法的設(shè)計(jì)與實(shí)現(xiàn)

        本章重點(diǎn)描述基于FPGA的實(shí)時(shí)Bayer解馬賽克算法的解壓縮過程。本系統(tǒng)采用了改進(jìn)的基于局部梯度方向的線性插值算法。首先,算法分別計(jì)算出沿水平、垂直方向和平滑的綠色插值作為候選的綠色分量;在復(fù)原了綠色分量信息后,可以利用自然圖像中色差沿著圖像邊緣的方向更加平滑的特點(diǎn),將原有的紅色或藍(lán)色分量與候選綠色分量分別計(jì)算色差,色差較小的候選方向即估計(jì)為該處的邊緣梯度方向;最后,根據(jù)估計(jì)出的局部梯度方向信息,在梯度的垂直方向上進(jìn)行插值計(jì)算,復(fù)原紅色和藍(lán)色分量。

        系統(tǒng)根據(jù)FPGA 硬件電路的特點(diǎn),設(shè)計(jì)了3 大模塊,即行列緩存模塊、Bayer 去噪聲模塊和解馬賽克模塊。行列緩存模塊利用FPGA 內(nèi)部Block RAM 進(jìn)行數(shù)據(jù)的行緩存,通過6×FIFO(first input first output)行緩存模塊,得到總共7 行的圖像數(shù)據(jù)。再利用移位寄存器進(jìn)行列緩存,總共利用7×10 的圖像矩陣完成算法的功能。Bayer 去噪聲模塊是為了解決CMOS 中存在的壞點(diǎn)和噪聲點(diǎn)問題,由于該噪聲經(jīng)過解馬賽克算法后會(huì)擴(kuò)散到更大的區(qū)域,因此在解馬賽克模塊之前進(jìn)行,這里采用3×3 中值濾波模塊,具體不進(jìn)行詳述。解馬賽克模塊完成了包括候選綠色分量的方向插值、局部梯度方向估計(jì)和紅、藍(lán)色分量復(fù)原的工作。整體算法的硬件運(yùn)算流程如圖5所示,流程重點(diǎn)展示了圖像數(shù)據(jù)的瀑式流水處理過程。詳細(xì)步驟見章節(jié)2.1、2.2 和2.3。

        2.1 候選綠色分量的方向插值方法

        候選綠色分量的方向插值方法如圖6所示。由于在Bayer 陣列的排布中,綠色分量的采樣率是紅色或藍(lán)色分量的2 倍,綠色分量的復(fù)原效果要好于紅色或藍(lán)色分量[13]。因此往往先復(fù)原綠色分量,因?yàn)檫@時(shí)還未計(jì)算出該位置的梯度方向,分別計(jì)算沿水平、垂直方向以及平滑插值得到候選綠色分量GH、GV和GS。

        對(duì)于丟失綠色分量的位置而言,無論該位置原像素是紅色還是藍(lán)色,綠色分量在四周的分布情況是一致的。以當(dāng)前位置為藍(lán)色像素為例,GH、GV和GS的計(jì)算方法如(1)~(3)式所示:

        2.2 局部梯度方向的估計(jì)

        采用局部梯度方向估計(jì)的方法是為了解決單一位置梯度方向估計(jì)存在較大誤差的問題,本文為了平衡算法的復(fù)雜度和梯度估計(jì)精度,采用3×3 鄰域的梯度信息來估計(jì)梯度的方向。綜合3×3 鄰域內(nèi)各像素位置的梯度方向[14],可以有效地解決圖像紋理豐富區(qū)域的梯度方向雜亂的問題,從雜亂的梯度方向中定位到主梯度方向。根據(jù)當(dāng)前位置丟失的顏色分量信息的不同,需要通過兩種不同的梯度算子來計(jì)算沿水平和垂直方向的梯度值。局部梯度方向估計(jì)的算法流程總結(jié)為4 步:

        1)對(duì)3×3 鄰域內(nèi)的每個(gè)位置計(jì)算水平和垂直方向梯度算子;

        2)比較兩個(gè)方向的算子大小,用標(biāo)志位0 或1 作標(biāo)記;

        3)統(tǒng)計(jì)局部3×3 鄰域內(nèi)各個(gè)位置的標(biāo)志位,求和得到總梯度算子;

        4)對(duì)總梯度算子設(shè)置閾值,判斷該位置最可能的梯度方向。

        梯度算子1:對(duì)于丟失綠色分量的位置,采用梯度算子1 計(jì)算該處的梯度值。以中心位置藍(lán)色像素為例,如圖7(a)所示,算子利用藍(lán)色分量的二階梯度加上綠色分量的一階梯度分別計(jì)算水平和垂直方向的梯度算子值,通過(4)、(5)式計(jì)算出水

        GradHGradV平梯度值和垂直梯度值:(6)、(7)式計(jì)算出水平梯度值GradH和垂直梯度值GradV。

        梯度算子2:對(duì)于丟失紅色或藍(lán)色分量的位置,采用梯度算子2 計(jì)算該處的梯度值,如圖7(b)所示,算子利用綠色分量的一階梯度和二階梯度分別計(jì)算水平和垂直方向的梯度算子值,通過

        通過梯度算子1 和梯度算子2 計(jì)算出3×3 鄰域內(nèi)各個(gè)位置的水平和垂直方向梯度值后,用標(biāo)志位Flag 標(biāo)記各個(gè)位置的梯度方向。當(dāng)GradH>GradV時(shí),判斷該位置梯度方向?yàn)樗椒较颍瑯?biāo)志位記為1;當(dāng)GradH<GradV時(shí),判斷該位置梯度方向?yàn)榇怪狈较?,?biāo)志位記為0。綜合9 個(gè)位置的梯度信息,按照(8)式估計(jì)當(dāng)前位置的局部梯度信息。

        2.3 紅、藍(lán)色分量的復(fù)原方法

        經(jīng)過候選綠色分量和局部梯度方向的計(jì)算,已經(jīng)具備了完整復(fù)原紅、綠、藍(lán)3 層陣列的條件。在對(duì)紅色和藍(lán)色分量進(jìn)行插值時(shí),采用的基本思想是基于色比色差的插值算法。利用色差思想與色比恒定的思想是一致的,它認(rèn)為在圖片的小平滑區(qū)域內(nèi),色差是恒定的[4],即假設(shè)采樣點(diǎn)(i,j)附近的一個(gè)采樣點(diǎn)(m,n),色差滿足(9)式:

        本文將插值方法按照采樣點(diǎn)顏色分量的不同分為4 種模式,顏色分量排列如圖8(a)~8(d)所示。當(dāng)采樣點(diǎn)顏色為綠色時(shí),Bayer 陣列的分布如圖8(a)、8(b)所示,算法需要插值產(chǎn)生紅色和藍(lán)色分量,差別在于藍(lán)色分量和紅色分量在水平和垂直方向的分布不同,可以采用類似的插值算法;當(dāng)采樣點(diǎn)顏色為紅色或藍(lán)色時(shí),Bayer 陣列的分布如圖8(c)、8(d)所示,算法需要插值產(chǎn)生綠色和紅(藍(lán))色分量,圖8(c)、8(d)模塊差別在于采樣點(diǎn)的顏色分量為紅色或藍(lán)色,兩種模式下的插值算法策略是一樣的。

        以圖8(a)模式為例,利用(10)~(11)式的插值算法來復(fù)原紅色和藍(lán)色分量。

        以圖8(c)模式為例,利用(12)~(13)式的插值算法來復(fù)原紅色和綠色分量。

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

        為了對(duì)本文的解馬賽克算法效果進(jìn)行準(zhǔn)確評(píng)價(jià),我們?cè)趶V泛使用的柯達(dá)圖片數(shù)據(jù)集上進(jìn)行了定量測(cè)量。該數(shù)據(jù)集包含24 張真彩色圖片,如圖9所示。實(shí)驗(yàn)過程中采用硬件仿真的方法,以保證真實(shí)的實(shí)驗(yàn)效果。將原始柯達(dá)圖片通過Matlab程序采樣為Bayer 陣列,通過ModelSim 工具讀取RAW 格式的Bayer 圖片,經(jīng)FPGA 綜合生成的解馬賽克算法模塊后輸出彩色的RAW 數(shù)據(jù),再用Matlab工具將RAW 格式數(shù)據(jù)轉(zhuǎn)換成TIF 格式圖片,進(jìn)行后續(xù)的指標(biāo)評(píng)價(jià)處理。

        本文采用了評(píng)價(jià)去馬賽克重建圖像質(zhì)量最常用的指標(biāo)峰值信噪比(peak signal- to-noise ratio,PSNR),定義如(14)~(15)式。

        式中:Io和Id分別代表原始圖像和解馬賽克后生成的圖像;圖像寬度為W像素,高度為H像素。PSNR的值越大代表算法復(fù)原出的圖像質(zhì)量越高。

        實(shí)驗(yàn)對(duì)比了雙線性插值算法、實(shí)時(shí)彩色復(fù)原算法[15]和本文算法,表1 展示了代表性圖片01.tig、07.tif、19.tif 和24.tif 圖片上算法復(fù)原圖片的PSNR結(jié)果以及數(shù)據(jù)集上的平均PSNR 值。

        表1 3 種算法在柯達(dá)數(shù)據(jù)集上的PSNR 值Table 1 PSNR of three algorithms on Kodak data set dB

        對(duì)數(shù)據(jù)集中的“燈塔”圖片進(jìn)行了定性的分析,圖10 展示了經(jīng)典場(chǎng)景燈塔下的Bayer 解馬賽克效果。其中,圖左側(cè)展示的是全圖效果,右側(cè)小圖是放大的局部細(xì)節(jié)效果。可以看出,本文提出的方法在紋理復(fù)雜的柵欄區(qū)域色彩復(fù)原效果有了很大程度的改善,偽彩色和拉鏈效應(yīng)的現(xiàn)象得到了明顯的抑制。

        除此之外,本系統(tǒng)還針對(duì)實(shí)際應(yīng)用中的夜晚星空?qǐng)鼍斑M(jìn)行了測(cè)試,結(jié)果如圖11所示。其中,左側(cè)是局部放大的圖像復(fù)原效果,右側(cè)是整幅圖像的復(fù)原圖??梢钥闯觯疚奶岢龅姆椒ㄔ趶?fù)雜的星空背景下,有效地減小了解碼過程中引入的偽彩色噪點(diǎn),保證了星點(diǎn)位置采集的有效性。

        本文算法運(yùn)行在Xilinx 公司的XC7A50T 硬件平臺(tái)上,在輸入視頻圖像的分辨率和幀頻為1 080P@30 Hz、像素位寬為10 bit 的情況下,試驗(yàn)測(cè)試了Bayer 解馬塞克模塊在FPGA 上的資源占用率和實(shí)際運(yùn)行速度,資源占用結(jié)果如表2所示,運(yùn)行時(shí)間為207.2 μs。

        表2 FPGA 資源占用率Table 2 FPGA resource occupancy rate

        4 結(jié)論

        本文介紹了一種利用局部梯度方向進(jìn)行Bayer解馬賽克的算法及其硬件實(shí)現(xiàn)。首先,對(duì)算法運(yùn)行的硬件平臺(tái)做了簡(jiǎn)要的概述,展示了算法在數(shù)字圖像處理系統(tǒng)中的定位和意義;其次,針對(duì)FPGA硬件平臺(tái)的特點(diǎn),闡述了解馬賽克算法在FPGA 中的模塊化硬件設(shè)計(jì)方案和數(shù)據(jù)流走向,利用特定的數(shù)據(jù)流水和硬件架構(gòu)設(shè)計(jì)有效地降低了硬件開銷,保證了系統(tǒng)的低延遲性能;最后,詳細(xì)地介紹了算法的程序流程和具體實(shí)現(xiàn),通過局部特征的精確提取保證了圖像復(fù)原的效果。實(shí)驗(yàn)結(jié)果表明,本文提出的解馬賽克系統(tǒng)在保證微秒級(jí)視頻輸出延遲的條件下,提升了對(duì)圖像復(fù)雜紋理區(qū)域(如密集的條紋狀或點(diǎn)狀紋理區(qū)域等等)的復(fù)原效果,保證了圖像的有效分辨率,對(duì)于實(shí)時(shí)高清視頻采集系統(tǒng)的搭建有重要的應(yīng)用價(jià)值。

        猜你喜歡
        梯度方向馬賽克復(fù)原
        馬賽克瓶花
        溫陳華:唐宋甲胄復(fù)原第一人
        基于機(jī)器視覺的鋼軌接觸疲勞裂紋檢測(cè)方法
        鐵道建筑(2021年11期)2021-03-14 10:01:48
        淺談曜變建盞的復(fù)原工藝
        毓慶宮惇本殿明間原狀陳列的復(fù)原
        紫禁城(2020年8期)2020-09-09 09:38:04
        基于梯度方向一致性引導(dǎo)的邊緣檢測(cè)研究
        基于光譜上下文特征的多光譜艦船ROI鑒別方法
        《馬賽克》
        赴美留學(xué),這些會(huì)被“打馬賽克”的東西別帶了!
        僑園(2016年5期)2016-12-01 05:23:49
        基于支持向量機(jī)的分類器訓(xùn)練研究
        亚洲女同高清精品一区二区99| 国产高潮流白浆免费观看不卡| 欧美日韩国产综合aⅴ| 亚洲成AⅤ人在线观看无码| 一区二区免费电影| 中文字幕亚洲无线码a| 一区二区特别黄色大片| 给我播放的视频在线观看| 国产农村妇女毛片精品久久麻豆| 色视频不卡一区二区三区| 一区二区三区午夜视频在线观看| 国产少妇一区二区三区| 蜜桃成熟时日本一区二区| 亚洲中文字幕久久在线| 日本精品女优一区二区三区| 久久精品国产亚洲av久| 99精品人妻无码专区在线视频区 | 国产精品国产三级国产一地| 香蕉蜜桃av一区二区三区| 亚洲国产av一区二区三区| 妃光莉中文字幕一区二区| 国产操逼视频| 越南女子杂交内射bbwbbw| 黄色毛片在线看| 欧美日韩一区二区三区色综合| 人妻av一区二区三区高| 开心五月激动心情五月| 欧美日韩在线视频| 精品伊人久久大香线蕉综合| 亚洲日本三级| 亚洲AV无码一区二区一二区色戒| 蜜桃视频网站在线免费观看| 久久精品国产亚洲超碰av| 中文无码一区二区不卡av| 中文字幕无码av激情不卡| 日韩国产一区| 538在线视频| 亚洲精品天堂日本亚洲精品| 胸大美女又黄的网站| 亚洲av日韩专区在线观看| 伊人婷婷在线|