用FPGA替代DSP實現(xiàn)即時圖像和視頻處理
色彩空間轉(zhuǎn)換
視頻系統(tǒng)另一重要部份是色彩空間轉(zhuǎn)換,該制程規(guī)定了圖像的表示方法,例如由一種色彩格式轉(zhuǎn)化為另一種不同的色彩格式。
人眼傳感器只能檢測到波長介于400nm至700nm之間的可見光,這些傳感器稱為圓錐細胞,具有三種不同的類型:紅光圓錐細胞、綠光圓錐細胞和藍光圓錐細胞。如果單波長的光可見,這三種傳感器的相對反應(yīng)能使我們鑒別出光的顏色。該現(xiàn)象極具實用價值,因為這意味著我們只需簡單地按不同比例將上述三種光混合,就能產(chǎn)生各種顏色的光。這就是著名的三色原理,它在彩電系統(tǒng)中獲得了廣泛的應(yīng)用。
我們可以在3維立方體中藉由繪制三原色(即紅色、綠色和藍色,簡寫為RGB)的構(gòu)成比率圖以表示各種顏色,其中黑色位于原點,而白色則位于原點的斜對角。得到的立方體就是著名的RGB色彩空間。
不管最終的顯示媒體是紙張、LED、CRT或等離子顯示器,圖像總可細分為很多個圖素(例如HDTV可具備1920×1080個圖素)。同時每種媒體之間又存在些許差異,但其基本原理都是每個圖素由一定比例的紅色、綠色或藍色構(gòu)成,構(gòu)成的比例取決于驅(qū)動顯示的電壓信號。
利用RGB格式處理圖像時,每個圖素由3個分別對應(yīng)于三原色的8位或10位字確定,因而這不是一種最高效的處理方法。這種格式下,必須在所有的紅色、綠色和藍色信道上對圖素進行作業(yè),所需的儲存空間和數(shù)據(jù)頻寬毫無疑問將比其它可供選擇的色彩格式更大。為了解決這個問題,許多廣播標準(如歐洲的PAL和北美的NTSC電視系統(tǒng))均采用亮度和色度視頻信號。因此,不同的色彩格式之間需要一種能互相轉(zhuǎn)換的機制,即色彩空間轉(zhuǎn)換(圖2)。
用硬件實現(xiàn)這些電路則相對比較簡單,只需要知道從一種格式映像到另一種格式的系數(shù)。最通用的一種轉(zhuǎn)換是由RGB格式轉(zhuǎn)換至YCbCr格式(反之則從YCbCr格式轉(zhuǎn)換至RGB格式)。研究顯示,人眼察覺到的光亮度信息(Y)的60%至70%來自綠色光。紅色和藍色信道實際上只是亮度信息的復(fù)制,因此這些重復(fù)信息完全可以去除掉。最終的結(jié)果是圖像可用表征色度和亮度的信號來表示。在這種格式下,8位系統(tǒng)規(guī)定亮度的取值范圍介于16至235之間,而Cb和Cr信號的取值范圍介于16至240之間,并規(guī)定128表示亮度為0。
可用如下的方程將YCbCr空間中的色彩轉(zhuǎn)換為RGB色彩空間中的色彩:
R'=1.164*(Y-16)+1.596*(Cr-128)
G'=1.164*(Y-16)-0.813*(Cr-128)-0.392*(Cb-128)
B'=1.164*(Y-16)+1.596*(Cr-128)
R'G'B'表示圖像灰度校正RGB值。例如,CRT顯示器的信號振幅與輸出密度之間存在非線性,如果在顯示信號之前進行圖像灰度校正,就能使信號振幅與輸出密度間的關(guān)系趨于線性。輸出增益同樣必須限定低于特定的臨界值,以減少圖像暗區(qū)中的傳輸噪音(圖3)。
我們可以采用許多可行的方法實現(xiàn)所需的乘積功能,如利用內(nèi)存、邏輯組件或嵌入式乘法器。顯然,HDTV系統(tǒng)所需的74.25MHz數(shù)據(jù)率可輕松地達到,而且還可以嘗試不同的設(shè)計折衷考慮,如系統(tǒng)精確度和設(shè)計范圍之間的折衷。例如,為了保證3%的轉(zhuǎn)換誤差,YCbCr至RGB色彩空間轉(zhuǎn)換器的設(shè)計尺寸可以至少減小一半。這或許超出了大多數(shù)顯示器產(chǎn)品所能承受的范圍,但仍然能被其它的應(yīng)用系統(tǒng)接受,如機器視覺或安全系統(tǒng)。采用FPGA的系統(tǒng)架構(gòu)就能調(diào)整應(yīng)用系統(tǒng)的算法,由此實現(xiàn)最佳的性能和效率。
評論