www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]一種改進的圖像重組算法及其硬件實現(xiàn)

1.引言

目前,大多數(shù)的數(shù)字相機的圖像傳感器,不管是CMOS還是CCD,都是單色的,即只有灰度的變化。為了得到彩色圖像,普遍采用的方法是在傳感器的表面覆蓋一層聚酰亞胺掩膜的彩色濾色器。濾色器的格式有多種,一般為棋盤格式。本文提出的算法針對的是其中最常用的bayer格式,如圖1所示,其濾色濾格子分別透過G(綠)、B(藍)、R(紅)三種顏色,其中G的采樣率是B、R的兩倍,原因是人眼對綠色信息要比藍色、紅色敏感。

圖像傳感器傳來的數(shù)據(jù)通常對應每個像素點R、G、B三種顏色中的一種顏色信息,圖像重組算法(Demosaicing Algorithm)是指把傳感器送來的每個像素點信息轉(zhuǎn)化為包含R、G、B三原色信息的圖像算法。關于圖像重組算法日前主要有獨立插值法、按比例插值法、Kimmel法等,本文將在分析這些算法的基礎上提出能平衡圖像質(zhì)量和硬件消耗的新算法及實現(xiàn)方法。
 

2.傳統(tǒng)算法

2.1 獨立插值算法

最簡單的線性方法足R、G、B三分量各自獨立進行插值重組,彼此沒有關聯(lián)。以利用相鄰像素作平均的插值法為例:

 

如圖2,G2、G4、G6、G8、R1、R3、R7、R9為已知相應像素的相應分量,G5、R2、R4、R6、R8、R5為所求分量,求法如下:

藍色分量的求法與R相似。

此方法雖然簡單,占用硬件資源比較少,但是卻會引起色彩混淆和邊沿模糊問題,因為其在重組過程中忽略了邊沿問題。為了提高圖像質(zhì)量,可以在此基礎上加入梯度的控制。因此,該算法采用了梯度小的方向的分量值作均值處理。由于梯度大的方向是邊沿變化的方向,若選取了該方向上的值作均值,就會模糊了邊沿。以求圖2中的G5分量為例:

水平梯度H=|G4-G6|,垂直梯度V=|G2-G8|。

H>V,G5=(G2+G8)/2;H

此外,該算法沒有考慮噪聲因素,其簡單的平均化操作將使一個像素上的噪聲擴大到影響九個像素,從而導致信噪比較低。

2.2 按比例插值算法

由于BAYER格式的傳感器上G分量比R、B分量要多一倍,于是有人提出利用G分量對R、B分量進行插值。

 

如圖3所示,G1-G9已經(jīng)插值得到,R1、R3、R7、R9為已知R信息,求R5:

R5={(R1*G5/G1)+(R3*G5/G3)+(R7*G5/G7)+(R9*G5/G9))/4

此算法對消除色彩混淆有一定的作用,但有個致命的缺點,在G分量特別小的區(qū)域,兩G分量比例(如G5/G1)可能會變得很大;由于R1、R3、R7、R9都只是所要求的R5周圍的點,在R5周圍很有邊沿信息(在圖像中,邊沿信息與噪聲無異)時,如果G5/G1等比例值太大,很可能引入一個非常大的噪聲,使得圖像失真嚴重,造成計算R、B分量時對噪聲特別敏感,使得圖像信噪比降低。

2.3 Kimmel算法

Kimmel算法是圖像重組算法中一個常用的經(jīng)典方法。如圖4,Kimmel算法求G5:

 



 

其中,E為權(quán)重參數(shù),表征該相鄰像素參與運算的比例。E由該相鄰像素的梯度D決定,梯度D越大,權(quán)重E越小。梯度D的定義如下:(其中P代表R,G,B任意一個分量)

從而:Ei=(1+D2(P5)+D2(Pi))1/2,如E3=(1+Dxd2(PS)+Dxd2(P3))1/2。

kimmel算法在求解R、B分量時也同樣采用了按比例插值的思想,只是比例權(quán)重不同,這樣可以較大程度地減弱色彩混淆現(xiàn)象。如圖4,用kimmel算法求R5:

Kimmel算法重組得到的圖像質(zhì)量比線性插值的方法提高了很多,但kimmel算法也有其缺點,這是本文提出改進算法的出發(fā)點,將在下面討論。[!--empirenews.page--]

3.改進的算法

本文在kimmel算法的基礎上進行了如下的改進:

(1) 待重組圖像像素與周邊像素的關聯(lián)性進一步增強,從而改善圖像的邊沿特性。

在kimmel算法中梯度簡單地以兩個像素的某個分量差絕對值表示,本文提出的方法是用一個相應方向上更大范圍窗口的像素點的差的平均值來代替原來梯度。

例如,在kimmel算法中,如圖1,D=|G[5,5]□G[6,6]|,用本文的方法則為:

這樣可進一步加強所求像素點與周邊像素已知分量的關聯(lián)性,從而減弱混淆現(xiàn)象。

(2) 修正kimmel算法在G分量缺少時的缺陷。

在kimmel算法中,在G很小的區(qū)域,兩像素的G比例就會變得很大,這樣會造成圖像失真和放大噪聲。為此,本文在利用G計算R、B時,可給G設一閾值;此值越大,圖像質(zhì)量越差;此值越小,在G較小區(qū)域的圖像失真就越嚴重;因此,此值的設定要經(jīng)過反復的仿真試驗,找到合適的平衡點,本文經(jīng)過實驗對比各參數(shù)下的效果,將此值選擇為40~60。

(3) 改變kimmel算法所有像素都重新計算其三分量值的做法。

kimmel的算法會改變每個像素三個分量的值,本算法保留原來該像素的已知值,從而可以保留原始圖像更多的信息,提高了圖像質(zhì)量。由于本算法要在ASIC上實現(xiàn),在不影響圖像總體質(zhì)量的前提下,應盡量簡化某些運算,節(jié)省硬件資源。

①本文在求E時不用開方倒數(shù)的方式,而采用查表的方式,即一個范圍內(nèi)的D值對應一個E值,只要所設的值能達到“D大則E小”的效果便可;

②求D時所需的除以21/2的運算可轉(zhuǎn)化成近似移位相加。

4.硬件實現(xiàn)

本算法涉及了大量的算術運算,而且計算中像素相關性的要求需要存儲大量像素,所以硬件實現(xiàn)必須適當減少硬件資源和RAM的使用量,從而降低ASIC的面積,本文提出如下的解決方法。

4.1 流水線式的運算處理

由式(1)、式(2)可見,計算插入的R、G、B值要經(jīng)過大量的運算,而傳感器送過來的數(shù)據(jù)是實時的,對其處理也必須是實時的,也就是說進來像素的分量值就要送出一個像素的R、G、B值。假設模塊的主頻率和傳感器送來的數(shù)據(jù)頻率分別為48MHz和12MHz,則在四個周期就要輸出一個像素的R、G、B值。顯然,四個48MHz時鐘周期是不可能完成如此多的運算的。

本文采用的方法是把眾多運算分成m個步驟完成,而每個步驟都占n個周期,一個步驟完成的結(jié)果在下一個n個周期運用計算,如此一級一級的計算,輸入與輸出都是實時的,其設計思想近似于計算機架構(gòu)中的流水線結(jié)構(gòu)。其中m和n要根據(jù)模塊時鐘與傳感器輸出數(shù)據(jù)的頻率的比例關系以及所設計ASIC的工藝水平對時序的限制來確定。此方法可使此模塊面積減為原始設計的1/2左右。以計算R[5,5](像素坐標如圖1)為例:步驟1:求得G[4,3],G[4,5],G[6,3],G[6,5],G[4,7],G[6,7];步驟2:求得R[5,4]和R[5,6];步驟3:求得R[5,5],這樣,每個步驟都有4個周期去完成,就可以滿足模塊的實時性。其中步驟1可再分為前兩個周期計算G[4,3],G[4,5]和G[6,3],后兩個周期計算G[6,5],G[4,7],G[6,7],從而復用其中除法器、加法器和乘法器,使該運算占用資源減少到一半。同樣道理,計算R[5,4]和R[5,6]時也可以復用資源,分別在兩個周期內(nèi)完成其運算。

4.2 堆棧式的RAM操作

此算法要求存儲9×9窗口大小的像素信息,也就是要存下9行的傳感器送來的數(shù)據(jù)。本文提出的方法只需要存8行的像素信息即可,但要配合一個9×9的寄存器陣列實現(xiàn)。下面以實例說明RAM操作過程:當?shù)?行數(shù)據(jù)要送來時,前8行數(shù)據(jù)已按順序存儲在RAM中。當傳感器送來G[1,9]時,模塊要進行以下工作:(1)把RAM第1列數(shù)據(jù)讀出;(2)然后把第1列后7行的數(shù)據(jù)連同G[1,9]寫到RAM的第1列中,同時把第1列全部數(shù)據(jù)連同G[1,9]寫到9x9的陣列的第一列中,這樣既保存了第1行的數(shù)據(jù),又保證第9行數(shù)據(jù)能寫到RAM里,相當于將RAM數(shù)據(jù)往里推,丟去第1行數(shù)據(jù),推入第9行的數(shù)據(jù)。如此類推,就可以減少一行存儲資源。

5.仿真與驗證

本文基于攝像頭控制器芯片的開發(fā)平臺進行了仿真驗證,并比較了改進的算法與傳統(tǒng)算法的優(yōu)劣。

此模塊通過了功能仿真、DC工具時序、面積等分析,并在FPGA板上通過接傳感器,經(jīng)JPEP壓縮,由USB傳輸?shù)接嬎銠C驗證其效果。本文采用Syn-opsys公司的DC compiler分析了各算法實現(xiàn)的面積代價。同時,本文針對幾種算法的圖像還原能力作了分析:用線性方法、kimmel方法和本算法處理同一張圖片轉(zhuǎn)化的bayer格式圖片,設R(x,y)為原圖像素值,r(x,y)為處理后像素值:

設滿足(3)式的點為還原良好點,其個數(shù)為n,本文所用測試圖片為640×480大小,令h=n/640×480為算法的還原程度判斷。

 

圖5和表1是幾種Demosaicing算法的仿真結(jié)果圖片及其相應的h值和面積代價,可以看到本文提出的方法的圖像質(zhì)量要比其他算法的好,尤其在高頻時,混淆現(xiàn)象得到了很好的改善。

 

6 結(jié)論

本文在詳細分析傳統(tǒng)算法的優(yōu)劣基礎上,提出了新的圖象重組算法,而流水線式分時復用資源的實現(xiàn)方法節(jié)省了接近一半的資源,很好地克服了模塊實時性要求,主頻時鐘限制和demosaicing算法復雜性帶給硬件實現(xiàn)資源成本高的問題。

本站聲明: 本文章由作者或相關機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅(qū)動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅(qū)動性能的關鍵。

關鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質(zhì)量和效率直接關系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅(qū)動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關鍵字: LED 驅(qū)動電源 開關電源

LED驅(qū)動電源是把電源供應轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅(qū)動電源
關閉