打印

24位BMP转为ARGB4444的算法讨论

[复制链接]
3123|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
艾森豪威尔|  楼主 | 2008-3-30 15:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用掩码取色的方法试验效果不是很好,转换后的图片失真比较严重。

tmp=0xF000;
tmp|= ((*p1 & 0x00F0)>>4)==0 ? ((*p1 & 0x000F)) : ((*p1 & 0x00F0)>>4) ;//b
p1++;
tmp|= ((*p1 & 0x00F0))==0 ? ((*p1 & 0x000F)<<4) : ((*p1 & 0x00F0));//g
p1++;
tmp|= ((*p1 & 0x00F0) <<4)==0 ? ((*p1 & 0x000F) <<8) : ((*p1 & 0x00F0) <<4);//r
p1++;

我看photoshop转换的效果跟我是一样的,也不理想。
谁有好一点的建议?

相关帖子

沙发
dld2| | 2008-3-30 15:46 | 只看该作者

不明白

首先24位变成12位本身信息量损失。
其次你这个方法本来就会让颜色改变,而不仅仅是降低分辨率。

使用特权

评论回复
板凳
艾森豪威尔|  楼主 | 2008-3-30 18:25 | 只看该作者

就是因为失真严重,才请教各位有没有失真小的算法

使用特权

评论回复
地板
xwj| | 2008-3-30 19:13 | 只看该作者

有,可以用空间混色的方法,但算法复杂

没有县城的软件,需要自己编
建议先自己去网上搜索图像处理算法的书看看

使用特权

评论回复
5
艾森豪威尔|  楼主 | 2008-4-1 10:54 | 只看该作者

xwj果然是乐于助人的高手

多谢多谢~

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

46

帖子

0

粉丝