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

            牽著老婆滿街逛

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

            YUV 像素格式

            轉載自:http://blog.csdn.net/skdev/article/details/6583028

            1簡介

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

             

            2 YUV采樣格式

              (1) YUV 4:4:4

              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。

              下面八個像素為:[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]

             3 YUV 存儲格式

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

            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存儲結構

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

              

            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存儲結構

            YCbCr 4:2:2 的方式存儲

             4 YUVRGB的轉換關系

            yuv422 planar to rgb565
            轉換公式:
            R=Y+1.4075*(V-128)
            G=Y-0.3455*(U-128) - 0.7169*(V-128)
            B=Y+1.779*(U-128)
            為了加快運算速度,采用下面的整形計算法:
            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的數據,再將rgb888轉為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) 評論(0)  編輯 收藏 引用

            91久久精一区二区三区大全| 久久精品卫校国产小美女| 久久久国产精品亚洲一区| AV无码久久久久不卡蜜桃| 一本伊大人香蕉久久网手机| 色综合久久中文字幕综合网| 久久久一本精品99久久精品88| 国产精品亚洲综合久久| 久久精品成人国产午夜| 久久精品免费全国观看国产| 无码精品久久久久久人妻中字| 国产精品免费久久久久电影网| 色综合久久夜色精品国产| 久久综合丁香激情久久| 国产成人精品三上悠亚久久| 久久久中文字幕| 国内精品久久久久影院薰衣草 | 亚洲国产精品成人久久蜜臀| 精品久久人妻av中文字幕| 国内精品久久久久久久久| 国产麻豆精品久久一二三| 欧美伊人久久大香线蕉综合| 国产 亚洲 欧美 另类 久久| 久久综合亚洲欧美成人| 久久人人爽人人人人片av| 精品久久国产一区二区三区香蕉| 蜜臀av性久久久久蜜臀aⅴ| 亚洲国产成人精品久久久国产成人一区二区三区综 | 狠狠狠色丁香婷婷综合久久俺| 亚洲精品乱码久久久久久不卡| 91精品国产综合久久四虎久久无码一级 | 狠狠色丁香婷婷久久综合不卡| 亚洲va久久久噜噜噜久久狠狠 | 国产精品无码久久久久久| 精品多毛少妇人妻AV免费久久| 日韩欧美亚洲国产精品字幕久久久 | 7国产欧美日韩综合天堂中文久久久久| 久久亚洲精精品中文字幕| 久久成人国产精品| 99麻豆久久久国产精品免费| 国产69精品久久久久777|