YUV4:2:2和YUV4:2:0有什么区别 yuv-YUV444,YUV422,YUV420中的4,2,...
YUV4:2:2\u548cYUV4\uff1a2\uff1a0\u6709\u4ec0\u4e48\u533a\u522b\uff1fYUV\u4e3b\u8981\u7528\u4e8e\u4f18\u5316\u5f69\u8272\u89c6\u9891\u4fe1\u53f7\u7684\u4f20\u8f93\uff0c\u4f7f\u5176\u5411\u540e\u76f8\u5bb9\u8001\u5f0f\u9ed1\u767d\u7535\u89c6\u3002\u4e0eRGB\u89c6\u9891\u4fe1\u53f7\u4f20\u8f93\u76f8\u6bd4\uff0c\u5b83\u6700\u5927\u7684\u4f18\u70b9\u5728\u4e8e\u53ea\u9700\u5360\u7528\u6781\u5c11\u7684\u9891\u5bbd\uff08RGB\u8981\u6c42\u4e09\u4e2a\u72ec\u7acb\u7684\u89c6\u9891\u4fe1\u53f7\u540c\u65f6\u4f20\u8f93\uff09\u3002\u5176\u4e2d\u201cY\u201d\u8868\u793a\u660e\u4eae\u5ea6\uff08Luminance\u6216Luma\uff09\uff0c\u4e5f\u5c31\u662f\u7070\u9636\u503c\uff1b\u800c\u201cU\u201d\u548c\u201cV\u201d \u8868\u793a\u7684\u5219\u662f\u8272\u5ea6\uff08Chrominance\u6216Chroma\uff09\uff0c\u4f5c\u7528\u662f\u63cf\u8ff0\u5f71\u50cf\u8272\u5f69\u53ca\u9971\u548c\u5ea6\uff0c\u7528\u4e8e\u6307\u5b9a\u50cf\u7d20\u7684\u989c\u8272\u3002\u201c\u4eae\u5ea6\u201d\u662f\u900f\u8fc7RGB\u8f93\u5165\u4fe1\u53f7\u6765\u5efa\u7acb\u7684\uff0c\u65b9\u6cd5\u662f\u5c06RGB\u4fe1\u53f7\u7684\u7279\u5b9a\u90e8\u5206\u53e0\u52a0\u5230\u4e00\u8d77\u3002\u201c\u8272\u5ea6\u201d\u5219\u5b9a\u4e49\u4e86\u989c\u8272\u7684\u4e24\u4e2a\u65b9\u9762\u2500\u8272\u8c03\u4e0e\u9971\u548c\u5ea6\uff0c\u5206\u522b\u7528Cr\u548cCB\u6765\u8868\u793a\u3002\u5176\u4e2d\uff0cCr\u53cd\u6620\u4e86GB\u8f93\u5165\u4fe1\u53f7\u7ea2\u8272\u90e8\u5206\u4e0eRGB\u4fe1\u53f7\u4eae\u5ea6\u503c\u4e4b\u95f4\u7684\u5dee\u5f02\u3002\u800cCB\u53cd\u6620\u7684\u662fRGB\u8f93\u5165\u4fe1\u53f7\u84dd\u8272\u90e8\u5206\u4e0eRGB\u4fe1\u53f7\u4eae\u5ea6\u503c\u4e4b\u540c\u7684\u5dee\u5f02\u3002 \u91c7\u7528YUV\u8272\u5f69\u7a7a\u95f4\u7684\u91cd\u8981\u6027\u662f\u5b83\u7684\u4eae\u5ea6\u4fe1\u53f7Y\u548c\u8272\u5ea6\u4fe1\u53f7U\u3001V\u662f\u5206\u79bb\u7684\u3002\u5982\u679c\u53ea\u6709Y\u4fe1\u53f7\u5206\u91cf\u800c\u6ca1\u6709U\u3001V\u5206\u91cf\uff0c\u90a3\u4e48\u8fd9\u6837\u8868\u793a\u7684\u56fe\u50cf\u5c31\u662f\u9ed1\u767d\u7070\u5ea6\u56fe\u50cf\u3002\u5f69\u8272\u7535\u89c6\u91c7\u7528YUV\u7a7a\u95f4\u6b63\u662f\u4e3a\u4e86\u7528\u4eae\u5ea6\u4fe1\u53f7Y\u89e3\u51b3\u5f69\u8272\u7535\u89c6\u673a\u4e0e\u9ed1\u767d\u7535\u89c6\u673a\u7684\u517c\u5bb9\u95ee\u9898\uff0c\u4f7f\u9ed1\u767d\u7535\u89c6\u673a\u4e5f\u80fd\u63a5\u6536\u5f69\u8272\u7535\u89c6\u4fe1\u53f7\u3002 YUV\u4e0eRGB\u76f8\u4e92\u8f6c\u6362\u7684\u516c\u5f0f\u5982\u4e0b\uff08RGB\u53d6\u503c\u8303\u56f4\u5747\u4e3a0-255\uff09\ufe30 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
1\uff09 YUV 4:4:4
YUV\u4e09\u4e2a\u4fe1\u9053\u7684\u62bd\u6837\u7387\u76f8\u540c\uff0c\u56e0\u6b64\u5728\u751f\u6210\u7684\u56fe\u50cf\u91cc\uff0c\u6bcf\u4e2a\u8c61\u7d20\u7684\u4e09\u4e2a\u5206\u91cf\u4fe1\u606f\u5b8c\u6574\uff08\u6bcf\u4e2a\u5206\u91cf\u901a\u5e388\u6bd4\u7279\uff09\uff0c\u7ecf\u8fc78\u6bd4\u7279\u91cf\u5316\u4e4b\u540e\uff0c\u672a\u7ecf\u538b\u7f29\u7684\u6bcf\u4e2a\u50cf\u7d20\u5360\u75283\u4e2a\u5b57\u8282\u3002
\u4e0b\u9762\u7684\u56db\u4e2a\u50cf\u7d20\u4e3a: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
\u5b58\u653e\u7684\u7801\u6d41\u4e3a: Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3
\uff082\uff09 YUV 4:2:2
\u6bcf\u4e2a\u8272\u5dee\u4fe1\u9053\u7684\u62bd\u6837\u7387\u662f\u4eae\u5ea6\u4fe1\u9053\u7684\u4e00\u534a\uff0c\u6240\u4ee5\u6c34\u5e73\u65b9\u5411\u7684\u8272\u5ea6\u62bd\u6837\u7387\u53ea\u662f4:4:4\u7684\u4e00\u534a\u3002\u5bf9\u975e\u538b\u7f29\u76848\u6bd4\u7279\u91cf\u5316\u7684\u56fe\u50cf\u6765\u8bf4\uff0c\u6bcf\u4e2a\u7531\u4e24\u4e2a\u6c34\u5e73\u65b9\u5411\u76f8\u90bb\u7684\u50cf\u7d20\u7ec4\u6210\u7684\u5b8f\u50cf\u7d20\u9700\u8981\u5360\u75284\u5b57\u8282\u5185\u5b58\u3002
\u4e0b\u9762\u7684\u56db\u4e2a\u50cf\u7d20\u4e3a\uff1a[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
\u5b58\u653e\u7684\u7801\u6d41\u4e3a\uff1aY0 U0 Y1 V1 Y2 U2 Y3 V3
\u6620\u5c04\u51fa\u50cf\u7d20\u70b9\u4e3a\uff1a[Y0 U0 V1] [Y1 U0 V1] [Y2 U2 V3] [Y3 U2 V3]
\uff083\uff09 YUV 4:1:1
4:1:1\u7684\u8272\u5ea6\u62bd\u6837\uff0c\u662f\u5728\u6c34\u5e73\u65b9\u5411\u4e0a\u5bf9\u8272\u5ea6\u8fdb\u884c4:1\u62bd\u6837\u3002\u5bf9\u4e8e\u4f4e\u7aef\u7528\u6237\u548c\u6d88\u8d39\u7c7b\u4ea7\u54c1\u8fd9\u4ecd\u7136\u662f\u53ef\u4ee5\u63a5\u53d7\u7684\u3002\u5bf9\u975e\u538b\u7f29\u76848\u6bd4\u7279\u91cf\u5316\u7684\u6765\u8bf4\uff0c\u6bcf\u4e2a\u75314\u4e2a\u6c34\u5e73\u65b9\u5411\u76f8\u90bb\u7684\u50cf\u7d20\u7ec4\u6210\u7684\u5b8f\u50cf\u7d20\u9700\u8981\u5360\u75286\u5b57\u8282\u5185\u5b58\u3002
\u4e0b\u9762\u7684\u56db\u4e2a\u50cf\u7d20\u4e3a: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
\u5b58\u653e\u7684\u7801\u6d41\u4e3a: Y0 U0 Y1 Y2 V2 Y3
\u6620\u5c04\u51fa\u50cf\u7d20\u70b9\u4e3a\uff1a[Y0 U0 V2] [Y1 U0 V2] [Y2 U0 V2] [Y3 U0 V2]
\uff084\uff09YUV4:2:0
4:2:0\u5e76\u4e0d\u610f\u5473\u7740\u53ea\u6709Y\uff0cCb\u800c\u6ca1\u6709Cr\u5206\u91cf\u3002\u5b83\u6307\u5f97\u662f\u5bf9\u6bcf\u884c\u626b\u63cf\u7ebf\u6765\u8bf4\uff0c\u53ea\u6709\u4e00\u79cd\u8272\u5ea6\u5206\u91cf\u4ee52:1\u7684\u62bd\u6837\u7387\u5b58\u50a8\u3002\u76f8\u90bb\u7684\u626b\u63cf\u884c\u5b58\u50a8\u4e0d\u540c\u7684\u8272\u5ea6\u5206\u91cf\uff0c\u4e5f\u5c31\u662f\u8bf4\uff0c\u5982\u679c\u4e00\u884c\u662f4:2:0\u7684\u8bdd\uff0c\u4e0b\u4e00\u884c\u5c31\u662f4:0:2\uff0c\u518d\u4e0b\u4e00\u884c\u662f4:2:0\u4ee5\u6b64\u7c7b\u63a8\u3002\u5bf9\u6bcf\u4e2a\u8272\u5ea6\u5206\u91cf\u6765\u8bf4\uff0c\u6c34\u5e73\u65b9\u5411\u548c\u7ad6\u76f4\u65b9\u5411\u7684\u62bd\u6837\u7387\u90fd\u662f2:1\uff0c\u6240\u4ee5\u53ef\u4ee5\u8bf4\u8272\u5ea6\u7684\u62bd\u6837\u7387\u662f4:1\u3002\u5bf9\u975e\u538b\u7f29\u76848\u6bd4\u7279\u91cf\u5316\u7684\u6765\u8bf4\uff0c\u6bcf\u4e2a\u75312x2\u4e2a2\u884c2\u5217\u76f8\u90bb\u7684\u50cf\u7d20\u7ec4\u6210\u7684\u5b8f\u50cf\u7d20\u9700\u8981\u5360\u75286\u5b57\u8282\u5185\u5b58\u3002
\u4e0b\u9762\u516b\u4e2a\u50cf\u7d20\u4e3a\uff1a[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
[Y5 U5 V5] [Y6 U6 V6] [Y7U7 V7] [Y8 U8 V8]
\u5b58\u653e\u7684\u7801\u6d41\u4e3a\uff1aY0 U0 Y1 Y2 U2 Y3
Y5 V5 Y6 Y7 V7 Y8
\u6620\u5c04\u51fa\u7684\u50cf\u7d20\u70b9\u4e3a\uff1a[Y0 U0 V5] [Y1 U0 V5] [Y2 U2 V7] [Y3 U2 V7]
[Y5 U0 V5] [Y6 U0 V5] [Y7U2 V7] [Y8 U2 V7]
YUV三个信道的抽样率相同,因此在生成的图像里,每个象素的三个分量信息完整(每个分量通常8比特),经过8比特量化之后,未经压缩的每个像素占用3个字节。
下面的四个像素为: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
存放的码流为: Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3
(2) YUV 4:2:2
每个色差信道的抽样率是亮度信道的一半,所以水平方向的色度抽样率只是4:4:4的一半。对非压缩的8比特量化的图像来说,每个由两个水平方向相邻的像素组成的宏像素需要占用4字节内存。
下面的四个像素为:[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
存放的码流为:Y0 U0 Y1 V1 Y2 U2 Y3 V3
映射出像素点为:[Y0 U0 V1] [Y1 U0 V1] [Y2 U2 V3] [Y3 U2 V3]
(3) YUV 4:1:1
4:1:1的色度抽样,是在水平方向上对色度进行4:1抽样。对于低端用户和消费类产品这仍然是可以接受的。对非压缩的8比特量化的视频来说,每个由4个水平方向相邻的像素组成的宏像素需要占用6字节内存。
下面的四个像素为: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
存放的码流为: Y0 U0 Y1 Y2 V2 Y3
映射出像素点为:[Y0 U0 V2] [Y1 U0 V2] [Y2 U0 V2] [Y3 U0 V2]
(4)YUV4:2:0
4:2:0并不意味着只有Y,Cb而没有Cr分量。它指得是对每行扫描线来说,只有一种色度分量以2:1的抽样率存储。相邻的扫描行存储不同的色度分量,也就是说,如果一行是4:2:0的话,下一行就是4:0:2,再下一行是4:2:0...以此类推。对每个色度分量来说,水平方向和竖直方向的抽样率都是2:1,所以可以说色度的抽样率是4:1。对非压缩的8比特量化的视频来说,每个由2x2个2行2列相邻的像素组成的宏像素需要占用6字节内存。
下面八个像素为:[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
[Y5 U5 V5] [Y6 U6 V6] [Y7U7 V7] [Y8 U8 V8]
存放的码流为:Y0 U0 Y1 Y2 U2 Y3
Y5 V5 Y6 Y7 V7 Y8
映射出的像素点为:[Y0 U0 V5] [Y1 U0 V5] [Y2 U2 V7] [Y3 U2 V7]
[Y5 U0 V5] [Y6 U0 V5] [Y7U2 V7] [Y8 U2 V7]
国内的话貌似:
4:2:2 是电视台用
4:4:4 数字电视母带
4:2:0 民用
YUV之4:2:2或4:2:0都是指的Y分量和UV分量在一个像素点中占有的平均比例。
YUV422即Y:U:V=4:2:2,所以如下四个像素原始排列:
Y0U0V0 Y1U1V1
Y2U2V2 Y3U3V3
存为422格式后:
Y0U0 Y1V0
Y2U2 Y3V2
还原:
Y0U0V0 Y1U0V0
Y2U2V2 Y3U2V2
YUV420有点小小的不一样,刚刚的422你会发现水平方向上的UV分量减半了,而420则是水平垂直方向都会减半。
其三个分量的真实比例4:1:1而不是4:2:0
420只是为了区别YUV411的。
原:
Y0U0V0 Y1U1V1
Y2U2V2 Y3U3V3
存:
Y0 U0 Y1
Y2 V0 Y3
还原:
Y0U0V0 Y1U0V0
Y2U0V0 Y3U0V0
你仔细看下是不是4:1:1,给他起个名字420是因为他在水平方向上每一行除了Y只有U 或 V,这与YUV411是不同的
绛旓細鏁板瓧瑙嗛鐨勯噰鏍锋牸寮忔牴鎹數瑙嗕俊鍙风殑鐗瑰緛,浜害淇″彿鐨勫甫瀹芥槸鑹插害淇″彿甯﹀鐨勪袱鍊.鍥犳鍏舵暟瀛楀寲鏃跺彲閲囩敤骞呰壊閲囨牱娉,鍗冲淇″彿鐨勮壊宸垎閲忕殑閲囨牱鐜囦綆浜庡浜害鍒嗛噺鐨勯噰鏍风巼.鐢╕锛歎锛歏鏉ヨ〃绀YUV涓夊垎閲忕殑閲囨牱姣斾緥,鍒欐暟瀛楄棰戠殑...
绛旓細鑰屽悓鏍稴ONY鐨凚VM-D24E1WU涓洪拡瀵:1080/60i(720/60p)鐨4:2:2杈撳叆绔瓙鐨24"楂樻竻鏅扮洃瑙嗗櫒.鍏朵环鏍肩害鍦$23,000宸﹀彸!寰堥毦鎯宠薄閫犳垚瀹冧滑濡傛涔嬪ぇ鐨勪环鏍煎樊鍒(鍦ㄦ绫婚珮娓呮櫚鐩戣鍣ㄤ笂鎵褰㈡垚鐨勫浘鍍忓樊鍒湁澶氬ぇ) 钃濋奔鍗¢氳繃纭欢瀹冨湪杞欢鍐呴儴瀹炵幇浜 10 bit Frame buffer 妯″紡,骞朵笖杩涜纭欢 RGB 鍜 YUV 涔嬮棿杩涜鑹插僵绌洪棿...
绛旓細涓嬮潰鐨勫洓涓儚绱犱负锛 [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]瀛樻斁鐨勭爜娴佷负锛 Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3 (2)YUV 4:2:2 姣忎釜鑹插樊淇¢亾鐨勬娊鏍风巼鏄寒搴︿俊閬撶殑涓鍗婏紝鎵浠ユ按骞虫柟鍚戠殑 鑹插害鎶芥牱 鐜囧彧鏄4:4:4鐨勪竴鍗娿傚闈炲帇缂╃殑8姣旂壒閲忓寲鐨勫浘鍍忔潵璇达紝姣忎釜鐢变袱涓...
绛旓細ps5瑙嗛浼犺緭閫熺巼-1鏄寚4K锛60甯э紝鍏惰緭鍑轰俊鍙峰皢浼氭槸YUV 4锛2锛2鑹插害閲囨牱鐨勮鏍笺-2鏄寚4K锛30甯э紝鍏惰緭鍑轰俊鍙锋槸YUV 4锛2锛0鐨勮鏍笺侾S5鏄涔濅笘浠f父鎴忔満涔嬩竴锛岄噰鐢ㄥ畾鍒剁殑AMD鍥惧舰澶勭悊鍣紝鍏锋湁鍏夌嚎杩借釜銆4K鍒嗚鲸鐜囥佹瘡绉掓樉绀哄抚鏁拌揪120銆3D闊虫晥锛屼笖鍙悜涓嬪吋瀹筆S4鍜孭layStation VR鐨勬父鎴忋傛惌閰嶅悕涓...
绛旓細杈撳嚭鏍煎紡鏈塝UV 4:1:1(8bit)鍜孻UV4:2:2(8bit)涓ょ銆傚畠杩樺寘鎷姉娣峰彔婊ゆ尝,A/D杞崲,鑷姩宓屼綅,鑷姩澧炵泭鎺у埗,鏃堕挓浜х敓,澶氬埗寮忚В鐮佸強浜害銆佸姣斿害鍜岄ケ鍜屽害鐨勬帶鍒剁瓑鍔熻兘銆傝绯荤粺閲囩敤VW2010浣滀负澶氬獟浣撶紪瑙g爜鑺墖,瀹冩槸涓绉嶅疄鏃禡PEG-4闊宠棰戝帇缂/瑙e帇鑺墖銆傚叾鐗囧唴闆嗘垚鏈3涓俊鍙峰鐞/鎺у埗鍗曞厓,鍖呮嫭涓涓棰戠紪鐮(...
绛旓細4:2:2鐨勶細 720脳576x2 4:1:1鍜4:2:0鐨勶細720脳576x1.5
绛旓細鍚庤竟鐨剈v鏄墦鍖呮ā寮忋俬ttp://blog.csdn.net/app_12062011/article/details/8781729 http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html https://en.wikipedia.org/wiki/Chroma_subsampling#4:2:0 http://www.fourcc.org/yuv.php ...
绛旓細RGB鏍煎紡鐨勫浘鍍忓崰鐢ㄥ瓧鑺傛暟涓:size = width * height * 3 RGBA鏍煎紡鐨勫浘鍍忓崰鐢ㄥ瓧鑺傛暟涓:size = width * height * 4 yuv420涔熷寘鍚笉鍚岀殑鏁版嵁鎺掑垪鏍煎紡锛欼420锛孨V12锛孨V21.I420鏍煎紡锛歽,u,v 3涓儴鍒嗗垎鍒瓨鍌細Y0,Y1鈥n,U0,U1鈥n/2,V0,V1鈥n/2 NV12鏍煎紡锛歽鍜寀v 2涓儴鍒嗗垎鍒瓨鍌細Y0,Y1鈥...
绛旓細閲囨牱涓庡瓨鍌ㄧ殑鑹烘湳 YUV鐨勯噰鏍锋柟寮忓垎涓哄叏閲囨牱(4:4:4)銆佷笅閲囨牱(4:2:2鍜4:2:0)锛岃繖浜涢噰鏍锋瘮渚嬩細鐩存帴褰卞搷鍒板瓨鍌ㄧ┖闂村拰鍘嬬缉鏁堢巼銆傚湪瀛樺偍鏂归潰锛孻UV鏈変笁绉嶄富瑕佹牸寮忥細Planar (涓夐儴鍒嗙嫭绔嬬殑瀛楄妭鏁扮粍): Y銆乁銆乂鍒嗗紑瀛樺偍锛屼究浜庣嫭绔嬪鐞嗐侾acked: YUV缁勪欢绱у瘑鎺掑垪锛岃妭鐪佸瓨鍌ㄧ┖闂淬係emi-planar/packed: Y鍜孶V...
绛旓細YUV鏍煎紡鐨勮棰戜腑Y:U:V=4:2:2,浣嗛氫織鍙420鈥濇牸寮忋傚浘4-3 鏈祵鍏ユ按鍗扮殑瑙嗛绗竴姝:璇诲彇鏂囦欢;璇诲彇瑙嗛鏂囦欢鐢盵yuv,Y,u,v,num_f]=loadyuv(filename)瀹炵幇,filename鏄墍閫夊彇寰楄棰戞枃浠跺悕绉般倅uv鏄竴涓洓缁存暟缁,瀹冭繑鍥炵殑鏄棰戠殑yuv鍒嗛噺,Y鏄寒搴﹀垎閲,u鍜寁鏄壊褰╁垎閲,num_f鏄棰戞枃浠朵腑鎵鏈夊抚鐨勬暟鐩傝鍙...