国产精品另类激情久久久免费_国产激情久久久久影院小草_洗澡被公强奷30分钟视频_精品人妻无码区二区三区_人人爽人人澡人人人妻

歡迎訪問易龍三維科技官網(wǎng),專注研發(fā)數(shù)碼打印機(jī)20年!
全國咨詢熱線:400-8316492
聯(lián)系我們
400-8316492

手機(jī):13823737137

郵箱:3485053954@qq.com

QQ:3485053954

地址:深圳市龍崗區(qū)橫坪公路89號(hào)數(shù)字硅谷E棟4樓

當(dāng)前位置:首頁 > 行業(yè)新聞 > 公司動(dòng)態(tài)

YUV圖像淺析(1)

時(shí)間:2025-01-13 09:32:30 作者:147小編 點(diǎn)擊:

undefined
undefined
undefined
undefined
undefined

undefined

 

0.引言

本篇文案重點(diǎn)講解YUV格式和內(nèi)存擺列,看完本篇文案,能夠快速對YUV格式有個(gè)更清楚的認(rèn)識(shí)。

從下圖就能夠看出,YUV4:1:1,YUV4:2:0,就壓縮的最厲害。一般在網(wǎng)絡(luò)傳輸時(shí),通常在送到編碼之前,都轉(zhuǎn)換作為這2種格式。

1.YUV簡述

yuv是歐洲電視系統(tǒng)采用的顏色編碼辦法之一,包括一個(gè)亮度信號(hào)Y和兩個(gè)色差信號(hào)U、V。yuv格式能夠優(yōu)化彩色視頻信號(hào)數(shù)據(jù)的存儲(chǔ)方式。與RGB格式相比,最大的優(yōu)良在于只需占用極少的數(shù)據(jù)存儲(chǔ)空間,使得數(shù)據(jù)傳輸更為簡易。

yuv中,“Y”暗示亮度,便是灰階值;而“U”和“V”暗示的則是色度,色度的功效是記錄圖像色彩及飽和度。“亮度”是透過輸入信號(hào)來創(chuàng)立的,辦法將信號(hào)的特定部分疊加到一塊。“色度”則定義了顏色的兩個(gè)方面─色調(diào)與飽和度,分別用Cr和Cb來暗示。其中,Cr反映了RGB輸入信號(hào)紅色部分與RGB信號(hào)亮度值之間的差異。而Cb反映的是RGB輸入信號(hào)藍(lán)色部分與RGB信號(hào)亮度值之間的差異。

采用yuv色彩空間的重要性是它的亮度信號(hào)y和色度信號(hào)u、v是分離的。倘若僅有y信號(hào)分量而u、v分量,那樣這般暗示的圖像便是黑白灰度圖像。彩色電視采用yuv空間正是為了用亮度信號(hào)y處理彩色電視機(jī)與黑白電視機(jī)的兼容問題,使黑白電視機(jī)能接收彩色電視信號(hào)。

2.YUV采樣格式

重點(diǎn)的采樣格式有YCbCr:4:4:4、YCbCr:4:2:2、YCbCr:4:2:0、以及YCbCr:4:2:1,舉例說明中YCbCr:4:1:1為常用的采樣格式,其含義為:每一個(gè)點(diǎn)保留一個(gè)8bit的亮度值(便是Y值),每4個(gè)點(diǎn)保留一個(gè)Cr和Cb值,Cr和Cb像素點(diǎn)在肉眼中的感覺不會(huì)起太大的變化。因此,原來用RGB(R,G,B都是8bit unsigned)模型,即1個(gè)點(diǎn)需要24bits。如果按YCbCr:4:1:1采樣后,平均每一個(gè)點(diǎn)僅需要8+8/4+8/4=12bits。這般就把圖像的數(shù)據(jù)壓縮了一半。下面對這幾種格式做仔細(xì)介紹。

(1)YUV 4:4:4

YUV三個(gè)采樣數(shù)據(jù)完整存儲(chǔ),不存在任何數(shù)據(jù)損失與壓縮,當(dāng)然數(shù)據(jù)存儲(chǔ)體積不變,與格式相同。如下圖:

每一個(gè)交叉暗示一個(gè)Y值數(shù)據(jù),每一個(gè)圓圈暗示一個(gè)U值與V值數(shù)據(jù),圖中為每一個(gè)Y值對應(yīng)一個(gè)U值與V值,整體為一個(gè)像素點(diǎn),該像素點(diǎn)數(shù)據(jù)保留完整。

YUV 4:4:4圖像

交錯(cuò)格式存儲(chǔ)如下:

YUV數(shù)據(jù)在內(nèi)存中的存儲(chǔ)方式,每3個(gè)為一組,為方便32位計(jì)算機(jī)的按位直接讀取,一般在每組YUV值后會(huì)填充一個(gè)A值,使得每次讀取數(shù)值為32位,增多讀取速度。

YUV 4:4:4內(nèi)存存儲(chǔ)方式

(2)YUV 4:2:2

灰度值數(shù)據(jù)Y完整讀取,色度U與V僅保存本來的一半,取每行像素點(diǎn)的奇數(shù)位的UV值進(jìn)行保留。此處UV數(shù)據(jù)壓縮百分之五十,Y數(shù)據(jù)不變,壓縮比為1-(4+2+2)/(4+4+4)*100%=33.33%)。因像素點(diǎn)在屏幕表示后,圖像顏色的失真針對觀察者來講并不會(huì)影響圖像的質(zhì)量與觀賞度,因此能夠按此法進(jìn)行壓縮。如下圖所示:

YUV 4:2:2圖像

交錯(cuò)格式存儲(chǔ)如下:

YUV 4:2:2 內(nèi)存存儲(chǔ)方式

每一個(gè)交叉暗示一個(gè)Y值數(shù)據(jù),每一個(gè)圓圈暗示一個(gè)U值與V值數(shù)據(jù),圖中為每兩個(gè)Y值對應(yīng)一個(gè)U值與V值,整體為兩個(gè)像素點(diǎn),兩像素點(diǎn)共用一個(gè)相同的色度差,利用物體顏色在兩個(gè)像素的距離內(nèi)不會(huì)變化過大的原理,恰當(dāng)壓縮圖像數(shù)據(jù)。

為YUV數(shù)據(jù)在內(nèi)存中的存儲(chǔ)方式,每4個(gè)為一組,其中奇數(shù)位為Y值,偶數(shù)位為U值與V值,32位計(jì)算機(jī)在讀取時(shí)能夠一次恰好讀取一組YUV數(shù)據(jù),其中包含兩個(gè)Y值與其共用的一個(gè)U值與V值。

(3)YUV 4:1:1

灰度值數(shù)據(jù)Y依舊完整讀取,而色度U與V僅保存本來的四分之一,取每兩行像素點(diǎn)的左上位置的UV值進(jìn)行保留。此處數(shù)據(jù)壓縮百分之七十五,Y數(shù)據(jù)不變,壓縮比為1-(4+1+1)/(4+4+4)*100%=50%)。一樣利用因像素點(diǎn)在屏幕表示后,圖像顏色的失真針對觀察者來講并不會(huì)影響圖像的質(zhì)量與觀賞度,既然YUV4:2:2能夠橫向壓縮,因此YUV 4:1:1能夠增多縱向壓縮,達(dá)到更加高的壓縮比例,但需要付出數(shù)據(jù)較難處理的代價(jià)。如下圖所示:

每一個(gè)交叉暗示一個(gè)Y值數(shù)據(jù),每一個(gè)圓圈暗示一個(gè)U值與V值數(shù)據(jù),圖中為每四個(gè)Y值對應(yīng)一個(gè)U值與V值,整體為四個(gè)像素點(diǎn),四個(gè)像素點(diǎn)共用一個(gè)相同的色度差,一樣利用物體顏色在兩個(gè)像素的距離內(nèi)不會(huì)變化過大的原理,恰當(dāng)壓縮圖像數(shù)據(jù)。內(nèi)存擺列如下圖所示:

內(nèi)存存儲(chǔ)方式Y(jié)UV 4:1:1內(nèi)存存儲(chǔ)方式

上圖中,為YUV 4:1:1數(shù)據(jù)在內(nèi)存中的存儲(chǔ)方式,與YUV 4:4:4、YUV 4:2:2區(qū)別的是,雖然YUV 4:1:1壓縮比最大,需要存儲(chǔ)的數(shù)據(jù)最少,然則其存儲(chǔ)方式是最為繁雜的,需要運(yùn)用三個(gè)Buffer依次存取Y,U,V,三值,此存儲(chǔ)方式節(jié)約了存儲(chǔ)內(nèi)存空間與數(shù)據(jù)進(jìn)行傳送時(shí)的網(wǎng)絡(luò)傳輸帶寬,增多了編程人員對數(shù)據(jù)還原表示處理的難度。

確定圖像的存儲(chǔ)方式關(guān)系到數(shù)據(jù)在內(nèi)存中的存儲(chǔ)方式,當(dāng)進(jìn)行圖像合并時(shí),需要對內(nèi)存中的數(shù)據(jù)進(jìn)行修改,以達(dá)到合并圖像的效果,因此認(rèn)識(shí)圖像存儲(chǔ)方式至關(guān)重要。

重視:盡管上面列舉出了有些常用的格式,然則還是有非常多格式是有用到的,實(shí)質(zhì)遇到采集與編碼格式區(qū)別,或解碼與播放格式區(qū)別,就需要進(jìn)行格式轉(zhuǎn)換。理解清楚這些格式轉(zhuǎn)換就曉得怎么去轉(zhuǎn)換了,當(dāng)然倘若搞不清這種數(shù)據(jù)關(guān)系,有庫能夠用。

3.其它

如WebRTC庫中源碼針對圖像類的命名為I420,初步猜測為YUV4:2:0格式。但在interface文件I420videoframe.h中觀察創(chuàng)建圖像的辦法與其參數(shù):

int CreateFrame(int size_y,const uint8_t & buffer_y,int size_U,const uint8_t & buffer_U, int size_V,const uint8_t & buffer_V,int width,intheigth,int stride_y,int stride_u,int stride_v)

推斷其實(shí)質(zhì)存儲(chǔ)方式為YUV4:1:1,由于參數(shù)中包括三個(gè)Buffer,分別為bufferY,bufferU以及bufferV,以及她們對應(yīng)的體積

事實(shí)上,WebRTC做為視頻通話的研發(fā)庫,其思慮最優(yōu)先的必然是最大化壓縮數(shù)據(jù),減少需要網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù),減少視頻通話與現(xiàn)實(shí)中的延遲,在使得視頻通話順暢的基本上,再進(jìn)行畫質(zhì)的改善。因此呢WebRTC選取YUV4:1:1為恰當(dāng)選取,但此圖像格式處理的方式較為困難,后面文案再介紹下怎么轉(zhuǎn)換的算法。

4.總結(jié)

本文用一篇非常簡短的文案,再次講述了YUV格式和內(nèi)存擺列,后面有機(jī)會(huì)再繼續(xù)講講一些轉(zhuǎn)換算法和RGB格式。歡迎關(guān)注,保藏,轉(zhuǎn)發(fā),分享。

后期關(guān)于項(xiàng)目知識(shí),會(huì)更新在微X公眾號(hào)“記錄世界 from antonio”,歡迎關(guān)注

  • 免責(zé)聲明:部分文章信息來源于網(wǎng)絡(luò)以及網(wǎng)友投稿,本網(wǎng)站只負(fù)責(zé)對文章進(jìn)行整理、排版、編輯,是出于傳遞更多信息之目的,并不意味著贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真
  • 實(shí)性,如本站文章和轉(zhuǎn)稿涉及版權(quán)等問題,請作者在及時(shí)聯(lián)系本站,我們會(huì)盡快刪除處理問答,若不聯(lián)系則默認(rèn)允許本站轉(zhuǎn)載。
  • 上一篇:「剎那教程05」仔細(xì)過程教貼UV膜
  • 下一篇:視頻產(chǎn)生的本質(zhì)及色彩空間:RGB 和 YUV