基于FPGA的RGB到Y(jié)CrCb顏色空間轉(zhuǎn)換
隨著多媒體和通信技術(shù)的發(fā)展,視頻圖像處理的實時性成為人們關(guān)注的熱點。視頻圖像處理一般都是用數(shù)字信號處理器(digital signal processor,DSP)來完成的。為了滿足實時性要求,往往采用多DSP或DSP陣列的方法,使系統(tǒng)在成本、重量、功耗等方面都會快速升高?,F(xiàn)場可編程門陣列(FPGA)運算的并行性和內(nèi)嵌DSP核等特點,能夠提高運算速度滿足視頻處理的實時性要求。在視頻圖像顯示、處理時,采用的顏色空間主要有RGB,YCrCb兩種。RGB基于三基色原理,顏色實現(xiàn)簡單,在計算機、電視機顯示系統(tǒng)中應(yīng)用廣泛,YCrCb將顏色的亮度信號與色度信號分離,易于實現(xiàn)壓縮,方便傳輸和處理。在視頻壓縮、傳輸?shù)葢?yīng)用中經(jīng)常需要實現(xiàn)RGB與YCbCr顏色空間的相互變換。這里推導(dǎo)出一種適合在FPGA上實現(xiàn)從RGB到Y(jié)CbCr顏色空間變換的新算法,采用單片FPGA完成電路設(shè)計,利用FPGA內(nèi)嵌DSP核實現(xiàn)乘法運算,提高了轉(zhuǎn)換算法的運行速度。
l 顏色空間
在RGB顏色空間中,自然界所有顏色都可以用紅(R)、綠(G)、藍(B)三種顏色的不同強度組合而重現(xiàn)。RGB的取值范圍分別為0~255,表1列出了幾種顏色對應(yīng)的R,G,B取值。本文引用地址:http://2s4d.com/article/191650.htm
RGB生成顏色容易實現(xiàn),被廣泛應(yīng)用在計算機、彩色電視機的顯示系統(tǒng)中。但是RGB表示顏色的效率并不是很高,3個顏色分量同等重要,而且亮度信息存在于所有顏色分量中,當需要對像素點的亮度或者色度值進行修改時,必須同時改變RGB三者的值。
YCrCb顏色空間是在開發(fā)世界范圍數(shù)字分量食品標準過程中作為ITU-R BT.601標準的一部分而開發(fā)出來的。在YCRCb顏色空間中,Y表示亮度信號,取值范圍為16~235;Cr,Cb表示色度信號,取值范圍為16~240,亮度信號與色度信號相互獨立。這種顏色表示方法可以利用人眼的特性降低數(shù)字彩色圖像的存儲空間。人眼視覺系統(tǒng)(HVS)對亮度細節(jié)的敏感度高于顏色細節(jié),適當減少色度分辨率不會明顯影響圖像的
畫質(zhì),易于實現(xiàn)數(shù)據(jù)壓縮。
2 RGB到Y(jié)CrCb的轉(zhuǎn)換
在ITU-R BT.601標準中給出了RGB與YCrCb的轉(zhuǎn)換關(guān)系式如下:
式中:R’,G’,B’表示Gamma校正后的R,G,B值。該轉(zhuǎn)換關(guān)系式是一個3×3乘法矩陣,電路實現(xiàn)時需要9個乘法器和9個加法器,在FPGA中直接實現(xiàn)時將會占用較多邏輯資源。
為了減少邏輯資源的使用,需要對該算法做進一步改進,簡化運算過程,從而以較少的邏輯資源實現(xiàn)轉(zhuǎn)換電路。首先對Cb,Cr做如下化簡:
評論