青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

兔子的技術(shù)博客

兔子

   :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
  202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

留言簿(10)

最新評論

閱讀排行榜

評論排行榜

在視頻等相關(guān)的應(yīng)用中,YUV是一個經(jīng)常出現(xiàn)的格式。本文主要以圖解的資料的形式詳細描述YUVRGB格式的來由,相互關(guān)系以及轉(zhuǎn)換方式,并對C語言實現(xiàn)的YUV轉(zhuǎn)為RGB程序進行介紹。

         人類眼睛的色覺,具有特殊的特性,早在上世紀初,Young1809)和Helmholtz1824)就提出了視覺的三原色學(xué)說,即:視網(wǎng)膜存在三種視錐細胞,分別含有對紅、綠、藍三種光線敏感的視色素,當(dāng)一定波長的光線作用于視網(wǎng)膜時,以一定的比例使三種視錐細胞分別產(chǎn)生不同程度的興奮,這樣的信息傳至中樞,就產(chǎn)生某一種顏色的感覺。

       70年代以來,由于實驗技術(shù)的進步,關(guān)于視網(wǎng)膜中有三種對不同波長光線特別敏感的視錐細胞的假說,已經(jīng)被許多出色的實驗所證實 例如:①有人用不超過單個視錐直徑的細小單色光束,逐個檢查并繪制在體(最初實驗是在金魚和蠑螈等動物進行,以后是人)視錐細胞的光譜吸收曲線,發(fā)現(xiàn)所有繪制出來的曲線不外三種類型,分別代表了三類光譜吸收特性不同的視錐細胞,一類的吸收峰值在420nm處,一類在534nm處,一類在564nm處,差不多正好相當(dāng)于藍、綠、紅三色光的波長。與上述視覺三原色學(xué)說的假設(shè)相符。②用微電極記錄單個視錐細胞感受器電位的方法,也得到了類似的結(jié)果,即不同單色光所引起的不同視錐細胞的超極化型感受器電位的大小也不同,峰值出現(xiàn)的情況符合于三原色學(xué)說。




于是,在彩色顯示器還沒有發(fā)明的時候,人類已經(jīng)懂得使用三原色光調(diào)配出所有顏色的光。并不是說三原色混合后產(chǎn)生了新的頻率的光,而是給人眼睛的感覺是這樣。


在顯示器發(fā)明之后,從黑白顯示器發(fā)展到彩色顯示器,人們開始使用發(fā)出不同顏色的光的熒光粉(CRT,等離子體顯示器),或者不同顏色的濾色片(LCD),或者不同顏色的半導(dǎo)體發(fā)光器件(OLEDLED大型全彩顯示牌)來形成色彩,無一例外的選擇了Red,Green,Blue3種顏色的發(fā)光體作為基本的發(fā)光單元。通過控制他們發(fā)光強度,組合出了人眼睛能夠感受到的大多數(shù)的自然色彩。

         計算機顯示彩色圖像的時候也不例外,最終顯示的時候,要控制一個像素中Red,Green,Blue的值,來確定這個像素的顏色。計算機中無法模擬連續(xù)的存儲從最暗到最亮的量值,而只能以數(shù)字的方式表示。于是,結(jié)合人眼睛的敏感程度,使用3個字節(jié)(3*8位)來分別表示一個像素里面的Red,GreenBlue的發(fā)光強度數(shù)值,這就是常見的RGB格式。我們可以打開畫圖板,在自定義顏色工具框中,輸入r,g,b值,得到不同的顏色。



但是對于視頻捕獲和編解碼等應(yīng)用來講,這樣的表示方式數(shù)據(jù)量太大了。需要想辦法在不太影響感覺的情況下,對原始數(shù)據(jù)的表示方法進行更改,減少數(shù)據(jù)量。

         無論中間處理過程怎樣,最終都是為了展示給人觀看,這樣的更改,也是從人眼睛的特性出發(fā),和發(fā)明RGB三原色表示方法的出發(fā)點是一樣的。

         于是我們使用Y,Cb,Cr模型來表示顏色。Iain的書中寫道:The human visual system (HVS) is less sensitive to colour than to luminance (brightness).人類視覺系統(tǒng)(其實就是人的眼睛)對亮度的感覺比對顏色更加敏感。

         RGB色彩空間中,三個顏色的重要程度相同,所以需要使用相同的分辨率進行存儲,最多使用RGB565這樣的形式減少量化的精度,但是3個顏色需要按照相同的分辨率進行存儲,數(shù)據(jù)量還是很大的。所以,利用人眼睛對亮度比對顏色更加敏感,將圖像的亮度信息和顏色信息分離,并使用不同的分辨率進行存儲,這樣可以在對主觀感覺影響很小的前提下,更加有效的存儲圖像數(shù)據(jù)。

         YCbCr色彩空間和它的變形(有時被稱為YUV)是最常用的有效的表示彩色圖像的方法。Y是圖像的亮度(luminance/luma)分量,使用以下公式計算,為R,G,B分量的加權(quán)平均值:

         Y = kr R + kgG + kbB

        其中k是權(quán)重因數(shù)。

        上面的公式計算出了亮度信息,還有顏色信息,使用色差(color difference/chrominancechroma)來表示,其中每個色差分量為R,G,B值和亮度Y的差值:

  Cb = B Y

  Cr = R Y

Cg = G Y

其中,Cb+Cr+Cg是一個常數(shù)(其實是一個關(guān)于Y的表達式),所以,只需要其中兩個數(shù)值結(jié)合Y值就能夠計算出原來的RGB值。所以,我們僅保存亮度和藍色、紅色的色差值,這就是(Y,Cb,Cr)

相比RGB色彩空間,YCbCr色彩空間有一個顯著的優(yōu)點。Y的存儲可以采用和原來畫面一樣的分辨率,但是Cb,Cr的存儲可以使用更低的分辨率。這樣可以占用更少的數(shù)據(jù)量,并且在圖像質(zhì)量上沒有明顯的下降。所以,將色彩信息以低于量度信息的分辨率來保存是一個簡單有效的圖像壓縮方法。

COLOUR SPACES .17 ITU-R recommendation BT.601 中,建議在計算Y時,權(quán)重選擇為kr=0.299,kg=0.587,kb=0.114。于是常用的轉(zhuǎn)換公式如下:

Y = 0.299R + 0.587G + 0.114B

Cb = 0.564(B  Y )

Cr = 0.713(R  Y )

 

R = Y + 1.402Cr

G = Y - 0.344Cb - 0.714Cr

B = Y + 1.772Cb

有了這個公式,我們就能夠?qū)⒁环?/span>RGB畫面轉(zhuǎn)換成為YUV畫面了,反過來也可以。下面將畫面數(shù)據(jù)究竟是以什么形式存儲起來的。

RGB24格式中,對于寬度為w,高度為h的畫面,需要w*h*3個字節(jié)來存儲其每個像素的rgb信息,畫面的像素數(shù)據(jù)是連續(xù)排列的。按照r(0,0),g(0,0),b(0,0);r(0,1),g(0,1),b(0,1);…;r(w-1,0),g(w-1,0),b(w-1,0);…;r(w-1,h-1),g(w-1,h-1),b(w-1,h-1)這樣的順序存放起來。

YUV格式中,以YUV420格式為例。寬度為w高度為h的畫面,其亮度Y數(shù)據(jù)需要w*h個字節(jié)來表示(每個像素點一個亮度)。而CbCr數(shù)據(jù)則是畫面中4個像素共享一個Cb,Cr值。這樣Cbw*h/4個字節(jié),Crw*h/4個字節(jié)。

YUV文件中,把多個幀的畫面連續(xù)存放。就是YUV YUV YUV…..這樣的不斷連續(xù)的形式,而其中每個YUV,就是一幅畫面。

在這單個YUV中,前w*h個字節(jié)是Y數(shù)據(jù),接著的w*h/4個字節(jié)是Cb數(shù)據(jù),再接著的w*h/4個字節(jié)為Cr數(shù)據(jù)。

在由這樣降低了分辨率的數(shù)據(jù)還原出RGB數(shù)據(jù)的時候,就要依據(jù)像素的位置找到它對應(yīng)的Y,Cb,Cr值,其中Y值最好找到,像素位置為x,y的話,Y數(shù)據(jù)中第y*width+x個數(shù)值就是它的Y值。CbCr由于是每2x2像素的畫面塊擁有一個,這樣CbCr數(shù)據(jù)相當(dāng)于兩個分辨率為w/2 * h/2的畫面,那么原來畫面中的位置為x,y的像素,在這樣的低分辨率畫面中的位置是x/2,y/2,屬于它的Cb,Cr值就在這個地方:(y/2)*(width/2)+(x/2)

為了直觀起見,再下面的圖中,分別將Y畫面(Cb,Cr=0)Cb,Cr畫面(Y=128)顯示出來,可見Cb,Cr畫面的分辨率是Y畫面的1/4。但是合成一個畫面之后,我們的眼睛絲毫感覺不到4個像素是共用一個Cb,Cr的。



  Cb,Cr畫面

Cb,Cr畫面放大觀察,里面顏色相同的塊都是2x2大小的。

附件為Windows Mobile上使用公式進行YUVRGB轉(zhuǎn)換的程序。其中需要注意的是Cb,Cr在計算過程中是會出現(xiàn)負數(shù)的,但是從-128127這些數(shù)值都用一個字節(jié)表示,讀取的時候就映射0255這個區(qū)間,成為了無符號的值,所以要減去128,才能參與公式計算。這樣的運算有浮點運算,效率是比較低的,所以要提高效率的話,一般在實用程序中使用整數(shù)計算或者查表法來代替。還有,運算后的r,g,b可能會超過0-255的區(qū)間,作一個判斷進行調(diào)整就可以了。

    不過這里面的YUV TO RGB的算法,效率實在是低,因為里面有了浮點運算,解一幀176*144的圖像大概需要400ms左右,這是無法忍受的,如果消除浮點運算,只需要10ms左右,效率的提升真是無法想象.所以大家還是避免在手機上面進行浮點運算.

轉(zhuǎn)自:http://www.shnenglu.com/gtwdaizi/articles/32956.html
posted on 2011-07-14 14:35 會飛的兔子 閱讀(767) 評論(0)  編輯 收藏 引用 所屬分類: 非C++技術(shù)資料
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美高清视频一区二区三区在线观看 | 亚洲国产日韩美| 亚洲欧美另类中文字幕| 国产老肥熟一区二区三区| 性欧美大战久久久久久久免费观看| aⅴ色国产欧美| 国产精品女人久久久久久| 欧美在线观看视频| 久久琪琪电影院| 日韩午夜在线电影| 亚洲视频每日更新| 国产一区日韩一区| 欧美大片免费观看| 欧美激情一区二区在线| 亚洲婷婷在线| 性欧美1819性猛交| 亚洲国产高清在线| 一本色道88久久加勒比精品 | 狠狠色狠狠色综合日日五| 欧美v日韩v国产v| 欧美色精品天天在线观看视频| 欧美一区二区日韩| 老司机久久99久久精品播放免费| 亚洲精品日韩激情在线电影| 亚洲一品av免费观看| 一区在线观看| 99xxxx成人网| 1024国产精品| 中文亚洲字幕| 亚洲黄色免费| 先锋影音久久| 夜夜嗨av一区二区三区| 国产日韩欧美高清| 麻豆精品视频在线观看| 久久精品91久久久久久再现| 欧美成人按摩| 欧美在线免费视屏| 欧美日韩综合另类| 老司机午夜精品| 国产精品福利在线观看| 欧美激情综合色| 国产日韩精品一区二区三区 | 亚洲精品欧洲| 久久久久久穴| 午夜久久黄色| 欧美日韩一区二区高清| 欧美激情中文不卡| 国产一区在线免费观看| 一本色道婷婷久久欧美| 最新国产成人av网站网址麻豆 | 欧美一区二区三区四区在线| 亚洲资源av| 欧美日韩精品免费观看视频完整| 美女视频黄免费的久久| 国产丝袜美腿一区二区三区| 亚洲视频欧美在线| 亚洲一区二区三区乱码aⅴ| 欧美96在线丨欧| 免费中文字幕日韩欧美| 国产一区二区三区网站| 亚洲女爱视频在线| 亚洲欧美日本视频在线观看| 欧美日韩精品欧美日韩精品| 亚洲二区视频| 亚洲欧洲综合另类| 欧美福利视频在线| 亚洲国内精品在线| 日韩一二三在线视频播| 欧美成人精品在线| 亚洲福利av| 亚洲精品免费在线播放| 欧美激情一二三区| 亚洲欧洲精品一区二区| 亚洲色图自拍| 国产精品久久久久久户外露出 | 亚洲国产美女久久久久| 亚洲精品在线免费| 欧美成人综合一区| 99xxxx成人网| 久久大逼视频| 亚洲高清毛片| 欧美另类在线观看| 99视频有精品| 久久成人一区| 91久久夜色精品国产九色| 欧美韩日精品| 亚洲永久视频| 玖玖玖国产精品| 亚洲精品小视频在线观看| 欧美午夜影院| 久久免费国产| 夜夜嗨av一区二区三区四区| 欧美一区二区视频免费观看| 亚洲福利专区| 国产精品伦子伦免费视频| 久久国产精品72免费观看| 欧美国产高清| 亚洲男女毛片无遮挡| 另类成人小视频在线| 亚洲乱码日产精品bd| 欧美一区二区三区免费观看视频 | 精品51国产黑色丝袜高跟鞋| 亚洲日本国产| 久久精彩免费视频| 91久久国产精品91久久性色| 欧美日韩免费观看一区| 一区二区免费看| 久久久久久日产精品| 欧美国产亚洲精品久久久8v| 亚洲日本成人女熟在线观看| 欧美一区二区三区视频在线观看| 一区二区亚洲精品| 欧美高清一区| 久久久999成人| 亚洲美女视频网| 久久狠狠一本精品综合网| 亚洲国产欧美日韩另类综合| 欧美性做爰猛烈叫床潮| 亚洲女性裸体视频| 欧美韩国在线| 亚洲一区二区久久| 国内精品久久久久影院色| 欧美激情在线播放| 欧美一级淫片播放口| 亚洲高清在线观看一区| 亚洲最黄网站| 亚洲电影一级黄| 国产精品免费电影| 欧美大片一区二区三区| 欧美一区二区日韩| 99re亚洲国产精品| 亚洲国产精品热久久| 久久婷婷色综合| 亚洲欧美日韩电影| 亚洲精品美女| 亚洲第一福利在线观看| 国产欧美一区二区在线观看| 欧美大片va欧美在线播放| 久久av一区二区| 亚洲欧美国产视频| 亚洲理伦电影| 亚洲国产精品传媒在线观看 | 欧美在线视频观看免费网站| 亚洲精品黄色| 欧美高清视频在线播放| 午夜在线视频观看日韩17c| 这里只有精品在线播放| 亚洲黄色有码视频| 在线欧美小视频| 在线免费不卡视频| 亚洲国产黄色片| 狠狠色综合网站久久久久久久| 欧美日韩在线播放| 欧美激情女人20p| 老司机久久99久久精品播放免费| 久久精品综合| 久久久国产精品一区二区三区| 久久免费精品视频| 久久爱另类一区二区小说| 亚洲欧美另类在线| 午夜一区不卡| 久久精品人人做人人爽电影蜜月| 美女黄网久久| 欧美1级日本1级| 欧美激情精品| 欧美视频国产精品| 国产乱肥老妇国产一区二| 欧美国产先锋| 日韩系列在线| 一区二区三区欧美在线| 亚洲精品极品| 亚洲专区在线| 欧美夜福利tv在线| 久久久精品999| 欧美丰满高潮xxxx喷水动漫| 国产精品第13页| 国产亚洲欧美一级| 亚洲国产精品欧美一二99| 亚洲欧洲日夜超级视频| 中文精品视频| 浪潮色综合久久天堂| 亚洲成人中文| 亚洲国产一区在线观看| 99精品视频免费观看视频| 国产精品99久久久久久www| 久久成人免费视频| 欧美国产一区二区在线观看| 国产精品伦一区| 伊人影院久久| 在线国产日韩| 欧美一区二区视频在线| 欧美成人国产| 一本色道久久综合亚洲精品小说| 欧美在线观看视频一区二区三区 | 久久网站热最新地址| 老牛影视一区二区三区| 99精品国产一区二区青青牛奶| 欧美亚洲三区| 欧美日韩国产精品一区| 欧美午夜大胆人体|