我正在寻找一种方法来减少颜色在一个聪明的方式,保留罕见的色调。
例如,如果你拿宇航员的图像,并添加一个小方块的明亮和不同的色调(绿色在这种情况下)。颜色会丢失,如果你减少到一定数量的颜色。它有256种颜色,但丢失了32种颜色(见树图)。
x1c 0d1x的数据
的
的
有太多的方式非常相似的颜色和色调的橙子和灰色的减少。(即使在32色,我不需要)。
所以我想知道是否有一种在色调差中加权的色调保持颜色减少。我试过许多库,但没有一个擅长这个。这是Imagemagick。
还是我必须自己执行?
可能是这样的:
- 减少到256色(这几乎适用于所有图像,较小的数据)
- 循环通过颜色和比较,并挑选出相当相似的颜色与CIEDE 2000 DeltaE
- 从PIL获取剩余的唯一颜色
- 转换为HSV颜色模型
- 用特定的箱制作直方图(色调0 - 10为红色,11 - 30为橙子.)
- 再次循环通过颜色并将可接受的颜色距离Δ E增加到一定量
- 但是如果比较的颜色超过直方图箱边界,
我不知道如何检查直方图边界。
1条答案
按热度按时间ikfrs5lh1#
在Imagemagick中,你可以尝试-mean-shift。它同时考虑了位置和颜色。参见https://legacy.imagemagick.org/discourse-server/viewforum.php?f=4&sid=77516589270dc747fbc7cba3197a79c4
这里有两个结果。
字符串
x1c 0d1x的数据
型
的
如果这是你想要的,OpenCV也有一个meanShift。https://docs.opencv.org/4.1.1/dc/d6b/group__video__track.html#ga432a563c94eaf179533ff1e83dbb65ea