• <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>

            牽著老婆滿街逛

            嚴(yán)以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            YUV 像素格式

            轉(zhuǎn)載自:http://blog.csdn.net/skdev/article/details/6583028

            1簡(jiǎn)介

            YUV是種顏色編碼方法,是彩色電視為了兼容黑白電視而發(fā)展起來(lái)的。在現(xiàn)代彩色電視系統(tǒng)中,通常采用三管彩色攝影機(jī)或彩色CCD攝影機(jī)進(jìn)行取像,然后把取得的彩色圖像信號(hào)經(jīng)分色、分別放大校正后得到RGB,再經(jīng)過(guò)矩陣變換電路得到亮度信號(hào)Y和兩個(gè)色差信號(hào)R-Y(即U)、B-Y(即V),然后對(duì)這三個(gè)信號(hào)分別進(jìn)行編碼。Y就是所謂的流明(luminance),表示光的濃度且為非線性,使用伽馬修正(gamma correction)編碼處理,而CB和CR則為藍(lán)色和紅色的濃度偏移量成份。

             

            2 YUV采樣格式

              (1) YUV 4:4:4

              YUV三個(gè)信道的抽樣率相同,因此在生成的圖像里,每個(gè)象素的三個(gè)分量信息完整(每個(gè)分量通常8比特),經(jīng)過(guò)8比特量化之后,未經(jīng)壓縮的每個(gè)像素占用3個(gè)字節(jié)。

              下面的四個(gè)像素為: [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

              每個(gè)色差信道的抽樣率是亮度信道的一半,所以水平方向的色度抽樣率只是4:4:4的一半。對(duì)非壓縮的8比特量化的圖像來(lái)說(shuō),每個(gè)由兩個(gè)水平方向相鄰的像素組成的宏像素需要占用4字節(jié)內(nèi)存。

              下面的四個(gè)像素為:[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]

              存放的碼流為:Y0 U0 Y1 V1 Y2 U2 Y3 V3

              映射出像素點(diǎn)為:[Y0 U0 V1] [Y1 U0 V1] [Y2 U2 V3] [Y3 U2 V3]

              (3) YUV 4:1:1

              4:1:1的色度抽樣,是在水平方向上對(duì)色度進(jìn)行4:1抽樣。對(duì)于低端用戶(hù)和消費(fèi)類(lèi)產(chǎn)品這仍然是可以接受的。對(duì)非壓縮的8比特量化的視頻來(lái)說(shuō),每個(gè)由4個(gè)水平方向相鄰的像素組成的宏像素需要占用6字節(jié)內(nèi)存。

              下面的四個(gè)像素為: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]

              存放的碼流為: Y0 U0 Y1 Y2 V2 Y3

              映射出像素點(diǎn)為:[Y0 U0 V2] [Y1 U0 V2] [Y2 U0 V2] [Y3 U0 V2]

              (4)YUV4:2:0

              4:2:0并不意味著只有Y,Cb而沒(méi)有Cr分量。它指得是對(duì)每行掃描線來(lái)說(shuō),只有一種色度分量以2:1的抽樣率存儲(chǔ)。相鄰的掃描行存儲(chǔ)不同的色度分量,也就是說(shuō),如果一行是4:2:0的話,下一行就是4:0:2,再下一行是4:2:0...以此類(lèi)推。對(duì)每個(gè)色度分量來(lái)說(shuō),水平方向和豎直方向的抽樣率都是2:1,所以可以說(shuō)色度的抽樣率是4:1。

              下面八個(gè)像素為:[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

              映射出的像素點(diǎn)為:[Y0 U0 V5] [Y1 U0 V5] [Y2 U2 V7] [Y3 U2 V7]

               [Y5 U0 V5] [Y6 U0 V5] [Y7U2 V7] [Y8 U2 V7]

             3 YUV 存儲(chǔ)格式

            YUV格式分為packed格式和planar格式,packed格式會(huì)將YUV數(shù)據(jù)按順序放進(jìn)數(shù)組里,planar則分將YUV的數(shù)據(jù)分為三部分放進(jìn)數(shù)組里,即先放Y部分的數(shù)據(jù),再放U,接著是V的數(shù)據(jù)。

            3.1 Packed YUV Formats

            Label

            Bits per pixel

            Description

            AYUV

            32

            Combined YUV and alpha

            CLJR

            8

            Cirrus Logic format with 4 pixels packed into a u_int32. A form of YUV 4:1:1 wiht less than 8 bits per Y, U and V sample.

            cyuv

            16

            Essentially a copy of UYVY except that the sense of the height is reversed - the image is upside down with respect to the UYVY version.

            GREY

            8

            Apparently a duplicate of Y800 (and also, presumably, "Y8  ")

            IRAW

            ?

            Intel uncompressed YUV. I have no information on this format - can you help?

            IUYV

            16

            Interlaced version of UYVY (line order 0, 2, 4,....,1, 3, 5....) registered by Silviu Brinzei of LEAD Technologies.

            IY41

            12

            Interlaced version of Y41P (line order 0, 2, 4,....,1, 3, 5....) registered by Silviu Brinzei of LEAD Technologies.

            IYU1

            12

            12 bit format used in mode 2 of the IEEE 1394 Digital Camera 1.04 spec. This is equivalent to Y411

            IYU2

            24

            24 bit format used in mode 0 of the IEEE 1394 Digital Camera 1.04 spec

            HDYC

            16

            YUV 4:2:2 (Y sample at every pixel, U and V sampled at every second pixel horizontally on each line). A macropixel contains 2 pixels in 1 u_int32. This is a suplicate of UYVY except that the color components use the BT709 color space (as used in HD video).

            UYNV

            16

            A direct copy of UYVY registered by NVidia to work around problems in some old codecs which did not like hardware which offered more than 2 UYVY surfaces.

            UYVP

            24?

            YCbCr 4:2:2 extended precision 10-bits per component in U0Y0V0Y1 order. Registered by Rich Ehlers of Evans & Sutherland. (Awaiting confirmation of component packing structure)

            UYVY

            16

            YUV 4:2:2 (Y sample at every pixel, U and V sampled at every second pixel horizontally on each line). A macropixel contains 2 pixels in 1 u_int32.

            V210

            32

            10-bit 4:2:2 YCrCb equivalent to the Quicktime format of the same name.

            V422

            16

            I am told that this is an upside down version of UYVY.

            V655

            16?

            16 bit YUV 4:2:2 format registered by Vitec Multimedia. I have no information on the component ordering or packing.

            VYUY

            ?

            ATI Packed YUV Data (format unknown but you can get hold of a codec supporting ithere)

            Y422

            16

            Direct copy of UYVY as used by ADS Technologies Pyro WebCam firewire camera.

            YUY2

            16

            YUV 4:2:2 as for UYVY but with different component ordering within the u_int32 macropixel.

            YUYV

            16

            Duplicate of YUY2

            YUNV

            16

            A direct copy of YUY2 registered by NVidia to work around problems in some old codecs which did not like hardware which offered more than 2 YUY2 surfaces.

            YVYU

            16

            YUV 4:2:2 as for UYVY but with different component ordering within the u_int32 macropixel.

            Y41P

            12

            YUV 4:1:1 (Y sample at every pixel, U and V sampled at every fourth pixel horizontally on each line). A macropixel contains 8 pixels in 3 u_int32s.

            Y411

            12

            YUV 4:1:1 with a packed, 6 byte/4 pixel macroblock structure.

            Y211

            8

            Packed YUV format with Y sampled at every second pixel across each line and U and V sampled at every fourth pixel.

            Y41T

            12

            Format as for Y41P but the lsb of each Y component is used to signal pixel transparency .

            Y42T

            16

            Format as for UYVY but the lsb of each Y component is used to signal pixel transparency .

            YUVP

            24?

            YCbCr 4:2:2 extended precision 10-bits per component in Y0U0Y1V0 order. Registered by Rich Ehlers of Evans & Sutherland.

            Y800

            8

            Simple, single Y plane for monochrome images.

            Y8

            8

            Duplicate of Y800 as far as I can see.

            Y16

            16

            16-bit uncompressed greyscale image.

             UYVY存儲(chǔ)結(jié)構(gòu)

            UYVY 是一種最常用的 YUV 4:2:2 格式,其數(shù)據(jù)排列如下:

              

            3.2 Planar YUV Formats

            Label

            Bits per pixel

            Description

            YVU9

            9

            8 bit Y plane followed by 8 bit 4x4 subsampled V and U planes. Registered by Intel.

            YUV9

            9?

            Registered by Intel., this is the format used internally by Indeo video code

            IF09

            9.5

            As YVU9 but an additional 4x4 subsampled plane is appended containing delta information relative to the last frame. (Bpp is reported as 9)

            YV16

            16

            8 bit Y plane followed by 8 bit 2x1 subsampled V and U planes.

            YV12

            12

            8 bit Y plane followed by 8 bit 2x2 subsampled V and U planes.

            I420

            12

            8 bit Y plane followed by 8 bit 2x2 subsampled U and V planes.

            IYUV

            12

            Duplicate FOURCC, identical to I420.

            NV12

            12

            8-bit Y plane followed by an interleaved U/V plane with 2x2 subsampling

            NV21

            12

            As NV12 with U and V reversed in the interleaved plane

            IMC1

            12

            As YV12 except the U and V planes each have the same stride as the Y plane

            IMC2

            12

            Similar to IMC1 except that the U and V lines are interleaved at half stride boundaries

            IMC3

            12

            As IMC1 except that U and V are swapped

            IMC4

            12

            As IMC2 except that U and V are swapped

            CLPL

            12

            Format similar to YV12 but including a level of indirection.

            Y41B

            12?

            Weitek format listed as "YUV 4:1:1 planar". I have no other information on this format.

            Y42B

            16?

            Weitek format listed as "YUV 4:2:2 planar". I have no other information on this format.

            Y800

            8

            Simple, single Y plane for monochrome images.

            Y8

            8

            Duplicate of Y800 as far as I can see.

            CXY1

            12

            Awaiting clarification of format.

            CXY2

            16

            Awaiting clarification of format.

            Y42B存儲(chǔ)結(jié)構(gòu)

            YCbCr 4:2:2 的方式存儲(chǔ)

             4 YUVRGB的轉(zhuǎn)換關(guān)系

            yuv422 planar to rgb565
            轉(zhuǎn)換公式:
            R=Y+1.4075*(V-128)
            G=Y-0.3455*(U-128) - 0.7169*(V-128)
            B=Y+1.779*(U-128)
            為了加快運(yùn)算速度,采用下面的整形計(jì)算法:
            u = YUVdata[UPOS] - 128;
            v = YUVdata[VPOS] - 128;

            rdif = v + ((v * 103) >> 8);
            invgdif = ((u * 88) >> 8) +((v * 183) >> 8);
            bdif = u +( (u*198) >> 8);

            r = YUVdata[YPOS] + rdif;
            g = YUVdata[YPOS] - invgdif;
            b = YUVdata[YPOS] + bdif;
            r=r>255?:255:(r<0:?0:r);
            g=g>255?:255:(g<0:?0:g);
            b=b>255?:255:(b<0:?0:b);
            以上得到的是rgb888的數(shù)據(jù),再將rgb888轉(zhuǎn)為rgb555
            RGBdata[1] =( (r & 0xF8) | ( g >> 5) );
            RGBdata[0] =( ((g & 0x1C) << 3) | ( b >> 3) );
            YUV422 Planar  FORMAT size:
            size=width*height*2;
            YSIZE = size/2;
            USIZE = size/4;
            VSIZE = size/4;
            YPOS=0;
            UPOS=YPOS + size/2;
            VPOS=UPOS + size/4;

            posted on 2013-01-28 09:04 楊粼波 閱讀(2603) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            久久天天躁狠狠躁夜夜avapp| 伊人久久大香线蕉综合热线| 国产精品久久久福利| 欧美精品久久久久久久自慰| 久久亚洲日韩精品一区二区三区| 国产V综合V亚洲欧美久久| 久久WWW免费人成—看片| 久久亚洲AV成人无码国产| 99久久www免费人成精品| 精品国产日韩久久亚洲| 99久久国语露脸精品国产| 久久一区二区三区免费| 99国产欧美久久久精品蜜芽 | 欧美日韩久久中文字幕| 久久国产欧美日韩精品| 久久国产AVJUST麻豆| 国产精品一区二区久久精品无码 | 99久久精品九九亚洲精品| 2021久久精品免费观看| 99久久国产主播综合精品| 久久精品人成免费| 2021国产精品久久精品| 久久久久国产精品三级网| 久久精品草草草| 午夜不卡久久精品无码免费 | 久久www免费人成看片| 久久精品国产一区二区三区| 久久免费高清视频| 国产精品美女久久久久久2018| 久久人人爽人人爽人人片av麻烦 | 亚洲精品99久久久久中文字幕| 青青青国产成人久久111网站| 蜜臀av性久久久久蜜臀aⅴ| 开心久久婷婷综合中文字幕| 精品久久综合1区2区3区激情| 99久久精品国产毛片| 91精品观看91久久久久久| 欧美激情精品久久久久| 99久久无码一区人妻| 精品免费久久久久国产一区| 久久e热在这里只有国产中文精品99|