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

        ?

        基于HLS的色彩插值算法硬件設(shè)計(jì)與實(shí)現(xiàn)

        2020-06-16 04:00:52潘曉英李晨晨薛玉鋒
        液晶與顯示 2020年6期
        關(guān)鍵詞:像素點(diǎn)插值梯度

        潘曉英,李晨晨*,王 昊,薛玉鋒

        (1.西安郵電大學(xué) 計(jì)算機(jī)學(xué)院,陜西 西安 710121;2.廈門(mén)優(yōu)萊柏網(wǎng)絡(luò)科技有限公司,福建 廈門(mén) 361008)

        1 引 言

        圖像傳感器是獲取圖像不可或缺的一個(gè)重要組成部分。目前市場(chǎng)上常見(jiàn)的圖像傳感器主要有互補(bǔ)金屬氧化物半導(dǎo)體(Complementary Metal Oxide Semiconductor,CMOS)圖像傳感器和電荷耦合元件(Charge-coupled Device,CCD)圖像傳感器兩種[1]。由于制造工藝和原件成本等原因,市場(chǎng)上主流的傳感器多為CMOS圖像傳感器。為獲得彩色圖像,通常需要在CMOS圖像傳感器表面覆蓋一層彩色濾波陣列(Color Filter Array,CFA),而B(niǎo)ayer格式的CFA是最常用的一種[2],Bayer格式的圖像在每個(gè)像素位置上只有物理三基色(紅、綠、藍(lán))中的一種色彩分量,要得到RGB彩色圖像就需要根據(jù)該色彩分量周?chē)钠渌史至坎逯涤?jì)算出另外兩種色彩分量,這種處理方式稱(chēng)為色彩插值[3-4]。

        隨著圖像傳感器像素尺寸的增加,圖像數(shù)據(jù)量也隨之增大,使用軟件方式實(shí)現(xiàn)色彩插值算法存在實(shí)時(shí)性差、效率低下等問(wèn)題,現(xiàn)場(chǎng)可編程門(mén)陣列(Field-Programmable Gate Array, FPGA)[5-6]在圖像處理應(yīng)用上具有處理數(shù)據(jù)量大、處理速度快等特點(diǎn),使用FPGA可以加速實(shí)現(xiàn)色彩插值算法。色彩插值算法在實(shí)際硬件實(shí)現(xiàn)中多采用計(jì)算簡(jiǎn)單、實(shí)現(xiàn)較為容易的算法,比如鄰近插值算法和雙線性插值算法等[7-9]。文獻(xiàn)[10]提出在FPGA上采用鄰近插值算法實(shí)現(xiàn)色彩還原,但圖像色彩還原較差,細(xì)節(jié)丟失嚴(yán)重。文獻(xiàn)[11]提出在FPGA上實(shí)現(xiàn)一種四合一圖像插值算法,該算法FPGA實(shí)現(xiàn)簡(jiǎn)單,實(shí)時(shí)性較好,但圖像邊緣鋸齒現(xiàn)象較為嚴(yán)重。上述文獻(xiàn)中插值算法的實(shí)現(xiàn)多使用硬件描述語(yǔ)言開(kāi)發(fā),對(duì)開(kāi)發(fā)要求較高且開(kāi)發(fā)時(shí)間較長(zhǎng)。

        針對(duì)上述算法存在圖像色彩還原較差、細(xì)節(jié)丟失嚴(yán)重、存在鋸齒現(xiàn)象以及開(kāi)發(fā)周期較長(zhǎng)等問(wèn)題,本文提出了一種改進(jìn)的色彩插值算法,該算法融合雙線性插值法和一階微分邊緣導(dǎo)向插值法實(shí)現(xiàn)色彩插值,使用Xilinx高層次綜合工具HLS完成算法開(kāi)發(fā)。與傳統(tǒng)FPGA開(kāi)發(fā)使用硬件描述語(yǔ)言實(shí)現(xiàn)相比,HLS使用C/C++進(jìn)行開(kāi)發(fā)[12-13],可降低開(kāi)發(fā)難度,縮短開(kāi)發(fā)時(shí)間。最后本文在ZYNQ平臺(tái)上將HLS生成的色彩插值IP與圖像采集模塊結(jié)合實(shí)現(xiàn)了實(shí)時(shí)的圖像色彩還原。

        2 改進(jìn)的色彩插值算法

        本文的色彩插值算法采用雙線性插值算法和一階微分邊緣導(dǎo)向插值算法相結(jié)合的方式實(shí)現(xiàn)圖像色彩還原。如圖1所示,在Bayer格式的CFA中,綠色分量占據(jù)所有像素信息的一半,所包含的圖像信息量相對(duì)較多,需要在插值計(jì)算中更加精確地進(jìn)行還原。當(dāng)被插值像素點(diǎn)為R分量或B分量時(shí),對(duì)缺失像素的插值使用較為復(fù)雜的算法計(jì)算。紅色與藍(lán)色分量分別占所有像素信息的1/4,為減少算法復(fù)雜度與FPGA資源占用,當(dāng)被插值像素點(diǎn)為G分量時(shí),使用計(jì)算相對(duì)簡(jiǎn)單的算法完成插值計(jì)算。圖1所示為Bayer格式的色彩濾波陣列。

        圖1 Bayer色彩濾波陣列(CFA)Fig.1 Bayer color filter array (CFA)

        在圖像色彩還原時(shí),如果插值算法沒(méi)有考慮到圖像邊緣的特殊性,使用了跨邊緣的圖像像素信息進(jìn)行插值,就會(huì)導(dǎo)致插值后得到的圖像邊緣產(chǎn)生模糊和鋸齒現(xiàn)象。改進(jìn)后的色彩插值算法對(duì)以紅色和藍(lán)色分量為中心像素點(diǎn)的像素使用一階微分邊緣導(dǎo)向插值算法進(jìn)行色彩插值還原,通過(guò)計(jì)算被插值像素點(diǎn)處水平(垂直)方向或?qū)欠较虻奶荻戎荡_定圖像邊緣,取梯度較小方向上的像素點(diǎn)作為估計(jì)點(diǎn),從而避免了插值時(shí)錯(cuò)誤地利用跨邊緣的鄰域像素信息,在插值計(jì)算時(shí)能有效還原圖像邊緣信息,改善圖像邊緣模糊以及鋸齒現(xiàn)象等問(wèn)題。對(duì)以綠色分量為中心像素點(diǎn)的像素使用雙線性插值算法進(jìn)行色彩插值還原,利用相鄰像素中同色分量的像素值信息進(jìn)行平均運(yùn)算得到當(dāng)前像素的插值色彩分量,該算法運(yùn)算量較小,可有效減少FPGA資源的使用。

        圖2 不同分量為中心像素點(diǎn)的示意圖。(a)藍(lán)色分量;(b)紅色分量;(c)綠色分量Fig.2 Diagram of different compontnts as central pixols. (a)Blue component;(b)Red component;(c)Green component.

        2.1 紅色與藍(lán)色分量處的色彩插值

        如圖2(a)所示,當(dāng)以藍(lán)色分量B22為中心像素點(diǎn)時(shí),針對(duì)需要恢復(fù)的綠色分量和紅色分量,本文使用一階微分邊緣導(dǎo)向插值算法進(jìn)行色彩還原。對(duì)需要插值的綠色分量,首先計(jì)算水平方向和垂直方向上的梯度大小,取梯度較小方向上的像素點(diǎn)作為估計(jì)點(diǎn),計(jì)算當(dāng)前缺失像素,ΔHg表示水平梯度,ΔVg表示垂直梯度。

        (1)

        缺失的G分量插值計(jì)算方式如式(2)所示:

        (2)

        對(duì)藍(lán)色分量B22進(jìn)行插值求取紅色分量R,根據(jù)藍(lán)色分量B22周?chē)募t色分量的值來(lái)確定對(duì)角梯度值,Hr表示主對(duì)角梯度,Vr表示次對(duì)角梯度。取梯度較小方向上的像素點(diǎn)作為估計(jì)點(diǎn),對(duì)角梯度值定義如下:

        (3)

        R分量的插值計(jì)算方式如式(4)所示:

        (4)

        在圖2(b)中,紅色分量R22為中心像素,需要插值計(jì)算出綠色分量和藍(lán)色分量,其計(jì)算過(guò)程與以藍(lán)色分量B22為中心像素點(diǎn)時(shí)的計(jì)算方式相同,首先計(jì)算R22處水平與垂直梯度值,插值計(jì)算出缺失的G分量,再計(jì)算R22處的對(duì)角梯度值,插值計(jì)算出缺失的B分量。

        2.2 綠色分量處的色彩插值

        如圖2(c)所示,當(dāng)以綠色分量G22為中心像素點(diǎn)時(shí),使用雙線性插值算法進(jìn)行色彩還原,首先對(duì)中心像素點(diǎn)鄰域內(nèi)相同顏色分量求均值,然后將該值作為中心像素點(diǎn)缺失顏色分量值。

        對(duì)圖2(c)中像素點(diǎn)G22進(jìn)行插值,對(duì)應(yīng)的紅色分量R和藍(lán)色分量B的恢復(fù)公式如下:

        (5)

        (6)

        本文提出了一種改進(jìn)后的色彩插值算法實(shí)現(xiàn)圖像色彩還原,對(duì)不同的顏色分量,使用相對(duì)應(yīng)的色彩插值算法,利用圖像邊緣的梯度信息區(qū)分圖像的邊緣,恢復(fù)出的圖像邊緣細(xì)節(jié)較好,減少了鋸齒與模糊現(xiàn)象。

        3 色彩插值算法的HLS實(shí)現(xiàn)

        Vivado HLS 是 Xilinx 公司推出的高層次綜合工具。與使用硬件描述語(yǔ)言開(kāi)發(fā)FPGA不同,HLS使用 C/C++進(jìn)行開(kāi)發(fā),通過(guò)高層次綜合將其轉(zhuǎn)換成HDL代碼,并將程序打包成IP核,因此具有很強(qiáng)的靈活性,可大幅度縮短開(kāi)發(fā)周期,同時(shí)也具有良好的加速功能。

        3.1 使用HLS設(shè)計(jì)色彩插值IP核

        使用Vivado HLS完成Bayer格式圖像色彩還原的流程如圖3所示。

        圖3 HLS 硬件加速流程Fig.3 HLS hardware acceleration process

        本文使用Sony IMX系列CMOS傳感器完成圖像采集,圖像尺寸為2 048×1 536。系統(tǒng)運(yùn)行時(shí),攝像頭完成取圖,原始Bayer格式圖像數(shù)據(jù)流進(jìn)色彩插值IP,通過(guò)AXI4-Stream 協(xié)議將數(shù)據(jù)流轉(zhuǎn)換為HLS opencv庫(kù)下的 hls::Mat 格式,然后進(jìn)行色彩插值運(yùn)算,最后將處理完成的圖像再經(jīng)過(guò)格式轉(zhuǎn)換流出色彩插值IP,完成Bayer格式圖像的色彩插值,最終得到RGB彩色圖像。

        圖4 Vivado HLS實(shí)現(xiàn)色彩插值算法流程框圖Fig.4 Vivado HLS algorithm flow chart

        使用HLS完成色彩插值算法的主要流程如圖4所示。首先對(duì)圖像進(jìn)行格式轉(zhuǎn)換,根據(jù)AXI4-Stream協(xié)議將原始圖像數(shù)據(jù)流轉(zhuǎn)換為HLS視頻庫(kù)下的 hls::Mat 格式,使用hls::LineBuffer緩存大小為3×2 048的行緩存,將行緩存中的數(shù)據(jù)使用hls::Window再緩存到一個(gè)大小為3×3的滑動(dòng)窗口,對(duì)該3×3的滑動(dòng)窗的中心像素點(diǎn)進(jìn)行插值計(jì)算,計(jì)算完成后窗口右移,當(dāng)該窗口完成行遍歷后,行緩存下移,窗口繼續(xù)向右移動(dòng),直至完成所有像素點(diǎn)遍歷。

        如圖1所示,在Bayer格式的CFA中,不同色彩分量有規(guī)律地分布,其中G分量處于奇行偶列與偶行奇列,R分量與B分量處于奇行奇列與偶行偶列。在色彩插值計(jì)算中,需要判斷該滑動(dòng)窗中心像素點(diǎn)所處行列的奇偶性,當(dāng)中心像素處于奇行偶列與偶行奇列時(shí),對(duì)該像素采用雙線性插值算法進(jìn)行色彩插值。當(dāng)中心像素處于奇行奇列與偶行偶列時(shí),對(duì)該像素采用一階微分邊緣導(dǎo)向插值算法進(jìn)行色彩插值。

        3.2 色彩插值IP硬件系統(tǒng)實(shí)現(xiàn)

        在Xilinx高層次綜合工具中,將設(shè)計(jì)仿真通過(guò)的色彩插值算法打包成IP核,在Vivado開(kāi)發(fā)環(huán)境中將色彩插值IP添加進(jìn)整體的圖像采集系統(tǒng)完成色彩還原的硬件加速。圖5為圖像采集和色彩還原系統(tǒng)的整體設(shè)計(jì)。在整體系統(tǒng)設(shè)計(jì)中將攝像頭采集到的Bayer格式數(shù)據(jù)輸送到色彩插值IP中,完成實(shí)時(shí)的圖像色彩還原。

        圖5 Vivado中圖像采集和色彩還原系統(tǒng)設(shè)計(jì)Fig.5 Image acquisition and color restoration system

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

        在對(duì)Bayer格式圖像進(jìn)行插值運(yùn)算過(guò)程中有可能會(huì)出現(xiàn)偽彩色、摩爾紋現(xiàn)象、鋸齒現(xiàn)象等問(wèn)題。為衡量色彩插值算法的還原效果,需要對(duì)還原后的圖像進(jìn)行圖像質(zhì)量進(jìn)行評(píng)價(jià)。衡量圖像還原質(zhì)量可分為主觀評(píng)價(jià)和客觀評(píng)價(jià),主觀判斷不具有量化標(biāo)準(zhǔn),因此本文選用了客觀評(píng)價(jià)中評(píng)價(jià)重構(gòu)圖像質(zhì)量最常用的方法:彩色信噪峰值比(CPSNR)。CPSNR值越大,說(shuō)明插值后得到的圖像質(zhì)量越好。

        式(7)所示為CPSNR的計(jì)算公式。其中:W表示圖片的寬度,H表示圖片的高度,Oi,j,k表示真實(shí)圖片的原始值,Ni,j,k表示經(jīng)過(guò)插值算法恢復(fù)后的圖像,P表示像素的峰值,因?yàn)楸疚膱D像格式為8 bits,因此P取值為255。

        (7)

        為驗(yàn)證本文算法的圖像還原效果,隨機(jī)選取經(jīng)典的Kodak圖像庫(kù)里的8幅圖像數(shù)據(jù)作為測(cè)試圖像,對(duì)選取圖像進(jìn)行圖像還原處理,得到Bayer格式的圖像再使用色彩插值算法進(jìn)行還原。

        圖6 實(shí)驗(yàn)結(jié)果Fig.6 Experimental results

        圖7 Kodak測(cè)試圖像集Fig.7 Kodak image dataset

        從圖6中可以看出,采用本文算法插值還原得到的圖像細(xì)節(jié)相較于雙線性法圖像細(xì)節(jié)更加豐富,色彩還原更好。相較于文獻(xiàn)[10]與文獻(xiàn)[11],圖像邊緣細(xì)節(jié)還原較好,鋸齒現(xiàn)象較少。

        表1 幾種算法的CPSNR值對(duì)比Tab.1 Comparison of CPSNR values of three algorithms

        續(xù) 表

        表2 硬件資源使用表Tab.2 Hardware resource usage table

        從表1中可以看出,本文算法的彩色峰值信噪比(CPSNR)相較于雙線性插值算法、文獻(xiàn)[8]、文獻(xiàn)[9]所提算法平均高4~6 dB,使用一階微分邊緣導(dǎo)向插值算法得到的CPSNR值比本文算法平均高0.5 dB左右。從表2中可看出,本文算法的FPGA資源使用略高于雙線性法與文獻(xiàn)[10]、文獻(xiàn)[11]所提算法,其FPGA資源使用比3種算法平均高13.7%,相較于一階微分算法有大幅度下降,僅為一階微分算法的57.1%。

        結(jié)合圖像還原結(jié)果、CPSNR數(shù)據(jù)以及FPGA的資源使用,改進(jìn)后的色彩插值算法得到的圖像質(zhì)量比常規(guī)插值算法還原出的圖像質(zhì)量要好。相較于一階微分邊緣導(dǎo)向插值算法,其使用FPGA資源使用大幅度減少。在保證圖像還原質(zhì)量的前提下,本文算法還原出的圖像更加清晰,邊緣細(xì)節(jié)較好,圖像色彩還原真實(shí),細(xì)節(jié)豐富,F(xiàn)PGA資源使用較少。

        最后,本文將設(shè)計(jì)驗(yàn)證完成的色彩插值IP進(jìn)行板級(jí)驗(yàn)證,在Zynq平臺(tái)上結(jié)合攝像頭采集模組完成實(shí)時(shí)的圖像色彩插值計(jì)算,如圖8所示,圖8(a)為Zynq圖像采集平臺(tái),圖8(b)為實(shí)際采集到的Bayer圖像,圖8(c)使用本文色彩插值IP在Zynq平臺(tái)上實(shí)際拍攝彩色還原圖像。

        圖8 采集模塊與板上還原結(jié)果Fig.8 Acquisition module and restore results

        5 結(jié) 論

        提出了一種改進(jìn)的色彩插值算法,該算法融合了雙線性插值算法和一階微分邊緣導(dǎo)向插值算法。由于綠色分量所包含圖像信息量較多,當(dāng)被插值像素點(diǎn)為R分量或B分量時(shí),使用一階微分算法插值恢復(fù)缺失的顏色分量,可有效減少圖像邊緣模糊與鋸齒現(xiàn)象。考慮到FPGA資源使用與硬件成本,當(dāng)被插值像素點(diǎn)為G分量時(shí),使用雙線性插值算法插值恢復(fù)缺失的顏色分量。實(shí)驗(yàn)結(jié)果表明,本文算法的彩色峰值信噪比相較于常規(guī)算法高4~6 dB。使用HLS開(kāi)發(fā)可快速完成算法的設(shè)計(jì)與實(shí)現(xiàn),提高開(kāi)發(fā)效率。將設(shè)計(jì)實(shí)現(xiàn)的算法打包生成IP核,可多次重復(fù)使用,提高了算法的復(fù)用性。

        猜你喜歡
        像素點(diǎn)插值梯度
        一個(gè)改進(jìn)的WYL型三項(xiàng)共軛梯度法
        一種自適應(yīng)Dai-Liao共軛梯度法
        基于Sinc插值與相關(guān)譜的縱橫波速度比掃描方法
        一類(lèi)扭積形式的梯度近Ricci孤立子
        基于canvas的前端數(shù)據(jù)加密
        基于逐像素點(diǎn)深度卷積網(wǎng)絡(luò)分割模型的上皮和間質(zhì)組織分割
        一種改進(jìn)FFT多譜線插值諧波分析方法
        基于四項(xiàng)最低旁瓣Nuttall窗的插值FFT諧波分析
        基于Node-Cell結(jié)構(gòu)的HEVC幀內(nèi)編碼
        Blackman-Harris窗的插值FFT諧波分析與應(yīng)用
        麻豆国产精品va在线观看不卡| 女高中生自慰污免费网站| 午夜无码熟熟妇丰满人妻| 青青草视频在线观看9| 在线一区二区三区国产精品| 国产午夜福利片| 美女在线国产| 亚洲av一二三又爽又爽又色| 精品国产一区二区三区av麻| 国产乱码一区二区三区爽爽爽| 无码丰满少妇2在线观看| 亚洲美女国产精品久久久久久久久| av在线不卡一区二区| 男人和女人做爽爽视频| 国产精品久久久久久人妻精品| 第十色丰满无码| va精品人妻一区二区三区| 国模冰莲极品自慰人体| 又粗又大又黄又爽的免费视频| 国产精品欧美亚洲韩国日本| 亚洲av综合日韩精品久久| 久久久久亚洲av成人片| 亚洲爆乳少妇无码激情| www.av在线.com| 中文字幕在线乱码日本| 99久久99久久精品免费看蜜桃| 国产精品视频一区二区噜噜| 国产亚洲欧美日韩国产片| 人妻少妇偷人精品视频| 国产精品国产精品国产专区不卡| 久久国产精久久精产国| 2021年性爱喷水视频| 在线日本国产成人免费精品| 中文字幕日韩精品一区二区三区| 7878成人国产在线观看| 国产网友自拍亚洲av| 国产精品精品国产色婷婷| 欧美成人精品午夜免费影视| 国产精品18禁久久久久久久久| av免费观看在线网站| 日本丰满老妇bbw|