请教rgb565转YUV的问题,转换后的图象用yuvview看起来不太清楚

hhq188 2008-05-08 08:46:17
转换公式用
#define RGB565_MASK_RED 0xF800
#define RGB565_MASK_GREEN 0x07E0
#define RGB565_MASK_BLUE 0x001F
B=(image16[Index] & RGB565_MASK_BLUE);
G=(image16[Index] & RGB565_MASK_GREEN) >> 5;
R=(image16[Index] & RGB565_MASK_RED) >> 11;
yImage[Index] = static_cast<unsigned char>(0.299*R + 0.587*G + 0.114*B);
uImage[Index] = static_cast<unsigned char>(-0.147*R - 0.289*G + 0.436*B);
vImage[Index] = static_cast<unsigned char>(0.615*R - 0.515*G - 0.100*B);

这个公式转换的时候得到的图象基本上看不清楚,只能看见一大片紫红色
yuv文件见附件压缩包,大小是120*160的 YUV4:2:0 rgb2yuv.jpg (11.5 KB)

当用这个公式来转时,图象稍微好些,但是细节部分也不是很清楚,颜色也有点不对

B=(image16[Index] & 0x001F)<<3;
G=(image16[Index] & 0x03E0)>>2;
R=(image16[Index] & 0x7C00)>>7;
tmpColor = 65*R + 129*G + 25*B + ((R+B)>>1) + 128; //or 25
yImage[Index]=(tmpColor+4096)>>8;
tmpColor =-38*R - 74*G + 112*B +128 ;
uImage[Index]=(tmpColor+32768+128)>>8;
tmpColor =112*R - 94* G - 18*B +128 ;
vImage[Index]=(tmpColor+32768+128)>>8;

rgb2yuv1.jpg , rgb2yuv.rar


请问下这是不是公式的问题??
还是说和手机本身也会有关系?
对于ppc来说有比较准确的整型运算的公式吗?我用的手机是Dopod的CHT9000





...全文
286 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhq188 2008-05-08
  • 打赏
  • 举报
回复
有做过rgb565到yuv420转换的朋友帮个忙!!谢了
hhq188 2008-05-08
  • 打赏
  • 举报
回复
有没有做过rgb565到yuv420转换的朋友帮个忙

7,657

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧