1. 程式人生 > >YUV色彩模型與RGB色彩模型詳解

YUV色彩模型與RGB色彩模型詳解

一、背景及由來

        光通過角膜、瞳孔、晶狀體的折射光線,透過玻璃體到達視網膜。視網膜上分佈著光感受器。光感受器按形狀可分為兩大類:視杆細胞和視錐細胞。色覺的形成與3中視錐細胞相關,它們分別包含光譜吸收峰在光譜紅、綠、藍區的視色素蛋白,分別對紅光、綠光、藍光有最佳反應。

        人眼對色彩細節的解析度比對亮度細節的解析度要差。假設亮度(黑白兩色)解析度為1,則對紅色為0.4,對綠色和藍色為0.19.所以就會有兩種色彩模型分別是:RGB(Red、Green、Blue)色彩模型、YUV色彩模型(Y黑白亮度值,U、V為色度值)。

        對於黑白視訊影象,每一個樣本點只需要用單值表示其亮度資訊。對於彩色視訊影象,每一個樣本點則需要多個數值表示。常用一維、二維、三維甚至四維模型表示某一色彩。不同的數字影象系統會用不同的顏色模型表示。例如計算機系統常用RGB色彩模型,在彩色電視系統中使用YUV色彩模型,彩色印刷機則用CMYK色彩模型。

二、RGB色彩模型

        RGB色彩模型與人眼視覺系統聯絡緊密(上文提過),是最常用的色彩模型。電視攝像機及電視顯示器根據RGB模型工作。根據人類視覺系統特徵,任何一種人眼能感知的顏色都可以用紅、綠、藍三種基色光按照不同的比例混合。例如:白色=100%紅色+100%綠色+100%藍色;黃色=100%紅色+100%綠色+0%藍色。因此RGB模型也稱為加色法混色模型,可以用三維笛卡爾座標系描述。如圖所示:

         

三個座標分別代表R,G,B

黑色定在原點,白色定在(1,1,1)

        RGB模型的空間是個單位正方體。立方體內的奇遇各點對應不同的顏色,可以用從原點各點對應不同的顏色,可以從原點到該點的矢量表示,三個座標值分別為紅、綠、藍三色的比例。在數字系統中這個單位空間被離散化,通常每個分量都用8位整數表示,這樣每個畫素需要24位表示。

三、YUV色彩模型

        YUV色彩模型利用人類視覺對亮度的敏感度比對色度的敏感度高的特點獲得較RGB色彩模型的優勢,為彩色電視系統廣泛使用。YUV色彩模型將亮度資訊從色度資訊中分離了出來,並且對同一幀影象的亮度和色度採用了不同的取樣率。在YUV色彩模型中,亮度資訊Y與色度資訊U\V相互獨立。Y訊號分量為黑白灰度圖。U、V訊號分量為單色彩色圖。黑白電視只利用Y分量,也解決了黑白電視和彩色電視的相容問題。

        YUV的取樣格式如圖所示:


4:4:4,YUV三個分量具有相同的水平和垂直解析度。4:2:2,YUV三個分量具有相同的垂直解析度,但在水平方向上,UV兩個分量的解析度是Y的一半。即每4個亮度分量樣本值,對應有2個U和2個V色度分量樣本值。4:2:0,在水平方向上和垂直方向上,UV兩個分量的解析度是Y的一半,即每4個亮度分量樣本值,對應有1個U和1個V色度分量樣本值。

四、RGB色彩模型與YUV色彩模型存在以下簡單的轉換關係:

從RGB到YUV的轉換關係如下:


當轉換的目標是YUV4:4:4格式時,只需用對應的變換公式進行格式轉換,不會帶來資訊的損失。如果是4:2:2或者4:2:0格式時,則先需要按照樣本的位置進行抽樣,這樣會損失一部分色差資訊,但對視覺效果影響不大。

從YUV到RGB的轉換關係如下:


同理,當是從YUV4:4:4格式時,只需用對應的變換公式進行格式轉換,不會帶來資訊的損失。如果是4:2:2或4:2:0格式轉換時,需要先對U、V兩個分量使用插值方法補齊缺少的畫素值。

本文文章選取自《深入理解視訊編解碼技術-基於H.264標準及參考模型》一書,正在閱讀此書,希望發一些自己認為比較通俗易懂的也比較基礎和重要的知識作為閱讀這本書的一個收穫。