吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2652|回复: 0
收起左侧

[C&C++ 转载] 【分享】今日学习的RGB10快速转32位RGB图像

[复制链接]
我是菜鸟哦 发表于 2015-1-6 20:24
BYTE  pbyRtab[256][256]={0};
BYTE  pbyGtab[256][256]={0};
BYTE  pbyBtab[256][256]={0};

//已经默认右移2未降质
void InitialTab()
{
    for( int i=0;i<256;i++ )
        for( int j=0;j<256;j++ )
        {
            //i为高位 j为低位
            pbyRtab[i][j] = (j & 0x3F)>>2) | ((i & 0x03)<<6) ;   //低位高6位 高位低2位
            pbyGtab[i][j] = (j & 0xF0)>>4) | ((i & 0x0F)<<4) ;   //低位高4位 高位低4位
            pbyBtab[i][j] = (j & 0xC0)>>6) | ((i & 0x3F)<<2) ;   //低位高2位 高位低6位
        }
}

void ConvertRGB10( DWORD * pDwSrc, BYTE * pbyDst, int nW, int nH )
{
    //小端模式,pDwSrc存放数据
    BYTE * pbySrc = (BYTE *)pDwSrc;
    for( int i=0;i<nH;i++ )
        for( int j=0;j<nW;j++ )
        {
            pbyDst[i*nW*3+j + 0] = pbyRtab[pbySrc[1]][pbySrc[0]];
            pbyDst[i*nW*3+j + 1] = pbyRtab[pbySrc[2]][pbySrc[1]];
            pbyDst[i*nW*3+j + 2] = pbyRtab[pbySrc[3]][pbySrc[2]];
        }
}

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-1 07:29

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表