我們都知道世界上任何一種顏色的 , 都可以有rgb 按照一定的比列混合而成。所以每種顏色都可用三個變數來表示 - 紅色綠色以及藍色的強度。記錄及顯示彩色影象時, rgb 是最常見的一種方案。但是,它缺乏與早期黑白顯示系統的良好相容性。因此,件多電子電器廠商普遍採用的做法是,將 rgb 轉換成 yuv 顏色空同,以維持相容,再根據需要換回 rgb 格式,以便在電腦顯示器上顯示彩色圖形。
採用 yuv 色彩空間的重要性是它的亮度訊號 y 和色度訊號 u 、 v 是分離的。如果只有 y 訊號分量而沒有 u 、 v 分量,那麼這樣表示的影象就是黑白灰度影象。彩色電視採用 yuv 空間正是為了用亮度訊號 y 解決彩色電視機與黑白電視機的相容問題,使黑白電視機也能接收彩色電視頻號。
yuv 與 rgb 相互轉換的公式如下( rgb 取值範圍均為 0-255 )︰
亮度分量y與三原色有如下關係:
經過大量實驗後itu-r給出了,
即: y = 0.299r + 0.587g + 0.114b
u = -0.147r - 0.289g + 0.436b
v = 0.615r - 0.515g - 0.100b
r = y + 1.14v
g = y - 0.39u - 0.58v
b = y + 2.03u
yuv碼流的儲存格式其實與其取樣的方式密切相關,主流的取樣方式有三種,yuv4:4:4,yuv4:2:2,yuv4:2:0,關於其詳細原理,可以通過網上其它文章了解,這裡我想強調的是如何根據其取樣格式來從碼流中還原每個畫素點的yuv值,因為只有正確地還原了每個畫素點的yuv值,才能通過yuv與rgb的轉換公式提取出每個畫素點的rgb值,然後顯示出來。
用三個圖來直觀地表示採集的方式吧,以黑點表示取樣該畫素點的y分量,以空心圓圈表示採用該畫素點的uv分量。
上面的圖簡要概括如下:
yuv 4:4:4取樣,每乙個y對應一組uv分量。
yuv 4:2:2取樣,每兩個y共用一組uv分量。
yuv 4:2:0取樣,每四個y共用一組uv分量。
儲存方式:
yuv 4:2:0其顏色的一種存放格式如圖所示:
其他的儲存格式有待後面補充。
RGB與YUV格式 四
一 rgb rgb24一幀的大小size width heigth 3 byte,rgb32的size width heigth 4byte.1.rgb為紅綠藍三原色 yuv,rgb是色彩空間模型,而bmp,png,jpeg,gif是影象的檔案儲存格式。影象的每個畫素的三個分量為r g b,每個顏色...
RGB格式解析
rgb的幾種格式和描述 rgb565 每個畫素用16位表示,rgb分量分別使用5位 6位 5位 rgb555 每個畫素用16位表示,rgb分量都使用5位 剩下1位不用 rgb24 每個畫素用24位表示,rgb分量各使用8位 rgb32 每個畫素用32位表示,rgb分量各使用8位 剩下8位不用 arg...
YUV 格式與 RGB 格式的相互轉換公式
cr vcb u 0.257r 0.504g 0.098b 160.439r 0.368g 0.071b 128 0.148r 0.291g 0.439b 128y 0.257r 0.504g 0.098b 16cr v 0.439r 0.368g 0.071b 128cb u 0.148r 0.2...