標籤:style blog http 使用 strong 資料
上海凱視力成資訊技術有限公司 編寫
著作權,轉載和引用請註明出處
1. 基本概念1.1視頻的表示1.1.1映像的表示
把一個映像用一個個像素來表示,每個像素有確定的位置和確定的亮度值(這裡假設是黑白映像)。於是構成了圖象。
比如下面的圖片:
我們用0表示白,1表示黑,則映像可表示成:
映像有2個解析度:一個是空間解析度,也就是圖中的水平解析度N和垂直解析度M;另一個是灰階級解析度,也就是用幾個bit來表示灰階等級。極端的有二值圖,如剛才那個“1”的圖。
1.1.2視頻的表示
視頻也就是在時間軸上的映像序列,如果把映像看成是二維(空間x,y),那麼視頻就是三維了(空間x,y,加時間t,這個t有時候可能是幀號)。視頻的數學表達是f(x, y, t)或f( ,t) 或f(x, y, n)或f( ,n)
每秒映像的幀數,稱為視頻的幀頻。
1.1.3逐行視頻和隔行視頻
漸進式掃描就是成像時一行行掃描形成一幀視頻,顯示的時候將一幀視頻顯示在螢幕上。
隔行視頻是成像時先掃描偶數行,形成一場叫偶場,然後再掃描奇數行形成奇場映像。這樣將一幀映像分成了2場:偶場和奇場,這兩場在空間上和時間上都是不一樣的。顯示的時候,也應該先在顯示器的偶行位置顯示偶場映像,再在奇行位置顯示奇場映像。
逐行視頻和隔行視頻的比較:
下面討論一些問題:
(1) 為什麼有隔行掃描這種視頻格式?
假設一個720x576解析度幀頻是25Hz的視頻,如果是漸進式掃描,則資料量為720x576x25像素/秒。如果我們採用隔行掃描,則資料量為720x288x50像素/秒,隔行掃描是場頻為50Hz。顯然資料量是相同的,但是,隔行掃描帶來的好處是映像的重新整理頻率是50Hz了,這樣大大降低了早期顯像管顯示器的顯示視覺效果,視頻閃爍感會大大降低。
(2) 隔行視頻的顯示問題:
我們現在大量使用的LCD顯示器均是漸進式掃描的顯示器,對於隔行視頻,要把奇偶兩場合并到一起形成一幀一次性顯示出來,我們前面討論過偶場和奇場在空間上和時間上都是不一樣的,因此,這種簡單的合并,如果映像是靜止的,不會有問題;但是如果攝像機是運動的,或者說映像內容是運動的,就會出現毛刺樣的鋸齒問題,映像品質嚴重惡化,如,這個圖是不難理解的且一定要理解。如何解決這個問題,需要一個去隔行演算法,我們後面再做介紹。
(3) 隔行視頻的解析度的問題
如果視頻內容是靜止的,那麼隔行視頻能達到逐行視頻的解析度。如果視頻內容是變化的,在隔行顯示器中顯示,垂直方向解析度會降低一半連載逐行顯示器中顯示,即便採用去隔行演算法,垂直分布率也會略有降低。
1.2 色彩空間1.2.1 不同的色彩空間用處不一樣
對於黑白映像,一個像素,我們用亮度(或灰階)來表示其亮暗程度,一般我們用8bit或10bit、甚至16bit的無符合整數來表示一個像素的灰階。
對於彩色映像,我們都知道可以用R(紅分量)、G(綠色分量)、B(藍色分量)來這三個分量表示一個像素。
用RGB來表示映像非常適合CCD、顯示器等裝置,但是有時做影像處理時用RGB並不是很方便,比如:我們想調整映像亮度、飽和度等的時候,或者僅僅想調整亮度的時候,或者分析視頻對象的亮度特徵的時候,我們在RGB這個色彩空間是做。於是,我們又用了YUV(YCbCr)、HSI等色彩空間,無論是RGB、YUV、HSI它們都能夠對彩色映像進行表述,因此,互相之間可以轉換。
HSI:H分量反映色度,S分量反映飽和度,I分量反映亮度。
YUV(YCbCr):Y亮度分量,U、V(或Cb、Cr)顏色分量。
1.2.2 色彩空間的互相轉換
(1)RGB轉HSI
(2)HSI轉RGB:
(1)RGB轉YUV:
(2)YUV轉RGB:
1.2.3 彩色映像的格式
RGB表示的映像,一般均是4:4:4格式,也就是每個像素都有自己的RGB,資料格式R0,G0,B0,R1,G1,B1….
一般我們用8Bit無符合數來表示RGB三個分量,因此一個像素需要24bit,為了節省空間的,我們有RGB444(三個分量都是4bit),RGB555(三個分量都是5bit),RGB565(R、B分量都是5bit,G分量是6bit)
YUV表示的映像有4:4:4、4:2:2、4:2:0
關於4:4:4,4:2:2,4:2:0用解釋:
RGB和YUV每個分量資料所佔的儲存記憶體大小如:
彩色映像的Bayer編碼:
Bayer編碼是一種使用8bit的資料位元寬輸出24bit(RGB)彩色訊號的一種方法,給每個像素分配三個分量(R、G、B)之一,這一你可以利用每個像素自身及其臨近位置像素的顏色資訊來獲得該像素RGB資訊。
Line0:BGBGBGBG。。。
Line1:GRGRGRGR。。。
Line2:BGBGBGBG。。。
Line3:GRGRGRGR。。。
假設你想確定Line2,Col 3這個位置的像素的RGB值,其周邊像素顏色分量值如下:
RGR ----- 200 50 220
GBG ---- 60 100 62
RGR ---- 196 58 198
則該像素的RGB值可以計算如下:
R = (200+220+196+198)/4
G = (50 + 80+62+58)/4 = 58
B = 100
當然這種計演算法比較簡單,還有更簡單,也有更複雜,這些不過是運算量、速度、硬體、和映像品質之間的一種交易。