话题707325的标题是: 如何找相似的颜色? (80分)
分类:图形图象 guixm (2001-11-05 12:03:00)
己知图像中某一像素的颜色,如何从现存的多种颜色库中找出与之最接近的颜色?
abondon (2001-11-05 12:04:00)
我也想知道,你知道了,告诉我
卷起千堆雪tyn (2001-11-05 13:48:00)
>在已知的若干种颜色中找出一种最接近的颜色:
这个问题你应该运用RGB的空间模型,就是一个立方体来进行判断;两种颜色的R、G、B
作为空间两个点的坐标, Sqr(r1-r2)+Sqr(g1-g2)+Sqr(b1-b2)最小的就是所求的颜色.
guixm (2001-11-05 16:18:00)
to:卷起千堆雪tyn
谢谢你的赐教,但是你所想的这种数学模型几天前我己想过,然而这样仍然是无法处理的。
假若己知的像素坐标为A(x,y,z),通过这种数学模型求出的值是一个离A点的距离为Min:=
Sqr(r1-r2)+Sqr(g1-g2)+Sqr(b1-b2)的球面,而球面上有无数个点,可以设想有无数种颜色,
这些颜色有相当一部分与A点的颜色相差很远,例如:
A:R=100 ,B=100 ,G=0
像素一:R=130 ,B=0 ,G=250
像素二:R=0 ,B=130 ,G=250
通过公式的计算它们的值一样,然而,像素一,二的颜色实际相差很远。
望各位高手继续赐教,谢谢!!!!!!!
lha (2001-11-05 16:55:00)
>>通过公式的计算它们的值一样,然而,像素一,二的颜色实际相差很远。
他们的确相差很大,但是如果剩下的颜色都比这些颜色差的更远 那只能用这个颜色了
如果还有颜色比这两种颜色更接近 就可以用其它颜色来代替呀
这是一个排序的过程 我觉得效果还可以呀
liangdewei (2001-11-05 17:06:00)
就不能写一算法比较逐个比较r.g.b取出综合相差最小的?
guixm (2001-11-05 18:33:00)
to: lha
谢谢,现在有这样一个问题,如果我们需要电脑找出一个相似的颜色赋给像素 ,
而这时它寻找中计算出像素一,二的值相等,那么这时到底赋哪一种颜色更接近?
to:liangdewei
thank you! 逐个比较r.g.b取出综合相差最小的,而到底什么参数(含r,g,b)能
反映两个颜色接近,你能给出吗?
lha (2001-11-05 18:44:00)
>>那么这时到底赋哪一种颜色更接近?
呵呵 可以随机
如果说你的程序要求比较高,你可以考虑整个图像的色度,
找一个和图像整体色度比较相近的象素。
hug (2002-09-14 10:06:00)
取颜色的灰度可以吗,灰度值接近,颜色不接近吗?
huazai (2002-09-14 11:28:00)
>>取颜色的灰度可以吗,灰度值接近,颜色不接近吗?
这个根本不行!
xusong168 (2002-09-14 11:35:00)
改用YUV模型吧
DarwinZhang (2002-09-15 17:54:00)
主要是看你如何定义颜色相近的问题:有三色(RGB)空间;
亮度,彩度,饱和度(YUV)空间等等许多色彩空间。
如果是和人眼睛看起来才不多就用YUV。
dirk (2002-09-15 19:26:00)
有意思,我要的正好相反,怎样得到与一种颜色视觉色差最大的颜色,比如:黑->白、红->黄。
DarwinZhang (2002-09-16 9:01:00)
to dirk: 有一种四色理论可以满足你的要求.
dirk (2002-09-16 18:30:00)
是吗,怎么做?能否讲一下?或者相关链接?
lby91772 (2003-06-19 10:51:00)
不知道搂住取眼色相近具体有和用途?