真彩图转256色?

rwx_tech 2005-05-31 01:42:50
有什么好的算法没有? 我做出来效果失真很严重, 大家都是怎么做的?

先是找用的最多的256种颜色, 然后再把其他的颜色用这256种颜色种最接近的代替, 这样需要2次遍历象素数据, 计算量也蛮大的. 如果考虑误差扩散, 更麻烦

...全文
257 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
lauyee 2005-06-23
  • 打赏
  • 举报
回复
主要还是配色方案的问题
rwx_tech 2005-06-18
  • 打赏
  • 举报
回复
如果你要通过几张真彩图制作GIF动画, 转成256色是不可避免的,而且还有几张图调色板合成的问题
WhiteWizard 2005-06-17
  • 打赏
  • 举报
回复
只会转灰度。。。
summer54 2005-06-16
  • 打赏
  • 举报
回复
UP
primen 2005-06-15
  • 打赏
  • 举报
回复
用ACDSEE,你看看它做出来是什么效果。
一般真彩转成256色,最好不要转成彩色,转成灰度图。
建议看<<WINDOW编程>>调色板
mynetpc 2005-06-12
  • 打赏
  • 举报
回复
r=g=b = (r+g+b)/3
ehom 2005-06-11
  • 打赏
  • 举报
回复
>>真彩转成256色,一定是很难看得

真彩转成256色,效果还是可以接受的,不少情况下很难感觉有区别
ehom 2005-06-11
  • 打赏
  • 举报
回复
八叉数量化+误差扩散 效果是可以接受的,就是太慢,代码MSDN里就有。
rwx_tech 2005-06-08
  • 打赏
  • 举报
回复
因为16M色减色为256色后, 原图中过度的地方就会出现问题, 某点RGB(120,120,120), 减色处理(取高4位)则为(120/16 * 16, ...)=(112, 112, 112), 就有个8的误差, 如果能够对周围的点进行补偿, 效果会好一点, 我现在想问各位对于这样的问题有什么好的办法?

你可以看看把一幅有过度色的24位图用MS的画笔转成256就知道了
zzwu 2005-06-08
  • 打赏
  • 举报
回复
你指的“误差扩散“是什么?
我的步骤中只有量化过程,会引起误差,这是不可避免的。毕竟你只有256色,而实际有16m色。
rwx_tech 2005-06-07
  • 打赏
  • 举报
回复
误差扩散怎么实现呢?
zzwu 2005-06-05
  • 打赏
  • 举报
回复
另有一种不需要对图像进行预扫描的办法是:

把RGB原有的0-255的256个等级分别量化为6个等级,每个等级的差为|255/6|=43,
即原来为(r,g,b),就用(|r/43|,|g/43|,|b/43|)来代,
这样一来,可能出现的颜色总数为6*6*6=216,它<256。

当然,图像质量是大大打折扣了,
但如果原来的图像色彩丰富,并经过autolever处理,这样得到的图像应该还行。
Android 2005-06-01
  • 打赏
  • 举报
回复
用gdi的bitblt呀,会自动转化颜色类型的,到时再把DDB转成DIB就OK了
coolbacon 2005-05-31
  • 打赏
  • 举报
回复
楼主说的计算量也不是很大.如果你用更好的算法,只怕算法的复杂度和时间都很高.

统计颜色用好的算法和差的算法所花的时间是不一样的.

首先我谈谈如何快速的统计颜色,一般来说,一幅图像的大小为MxN,那么它的颜色不可能超过MxN种,如果要查找这么多种颜色,肯定速度很慢,那么,一种颜色只有一个灰度级别,共有256个灰度级别,那么只要将颜色的灰度级做为索引,两种颜色,只有灰度相同才可能相同,建立256个链表,每一个对应一个灰度级,相同灰度的像素在链表中比较,发现相同则不入表,不相同就入表.速度大幅度提高.

另外,楼主用的方法不是最好的,好的方法可以用色彩压缩这个关键字搜索一下论文库.可以找到很多相关的论文,K-均值,最小准则法,概率居类法等,都要很多次遍历数据,但是一般在两三秒内都能给出结果.如果楼主的程序不能在2-3s内给出结果,要考虑是不是数据结构和计算策略出了问题.
rwx_tech 2005-05-31
  • 打赏
  • 举报
回复
能讲讲原理,算法么?
minideveloper 2005-05-31
  • 打赏
  • 举报
回复
加点抖动会好一些
Jackie 2005-05-31
  • 打赏
  • 举报
回复
freeimage cximage library
Tranquillo 2005-05-31
  • 打赏
  • 举报
回复
真彩转成256色,一定是很难看得

4,446

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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