当前位置: 首页 > 知识库问答 >
问题:

如何在MATLAB中用我自己的托盘替换合适的颜色?

皇甫展
2023-03-14

我正在使用MATLAB 2015。我想减少图像的颜色计数。RGB图像将使用k均值算法分割。然后平均颜色将被替换为我拥有的颜色。

颜色是(10),

黑色-[255,255,255],

黄色-[255, 255, 0],

橙色-[255,128,0],

白色-[255,255,255],

粉红色-[255153255],

薰衣草-[120, 102, 255],

布朗-[153,51,0],

绿色-[0,255,0],

蓝色-[0,0,255],

红色-[255,0,0].

我已经成功地对图像进行了聚类。聚类图像应该用最近的颜色替换。聚类后如何更改这些颜色?

共有1个答案

吴高洁
2023-03-14

如果你用MATLAB找不到方法,你可以在命令行用ImageMagick重新映射图像中的颜色。ImageMagick安装在大多数Linux发行版上,也适用于OSX和Windows。

首先,你要在调色板上做一个颜色样本。显然,你只需要做一次:

convert xc:black           xc:yellow             xc:"rgb(255,128,0)"   \
        xc:white           xc:"rgb(255,153,255)" xc:"rgb(120,102,255)" \
        xc:"rgb(153,51,0)" xc:lime xc:blue       xc:red                \
        +append colormap.png

看起来像这样(放大):

现在,让我们假设你有一个像这个色轮的图像(colorwheel.png):

并且你想要应用你的调色板(即,将颜色重新映射到你的样本中):

convert colorwheel.png +dither -remap colormap.png result.png
 类似资料:
  • 问题内容: 我想知道是否有一种更有效的方法来替换BufferedImage中的颜色。目前,我使用以下方法: 我用要替换的颜色和要替换的颜色(包括透明度)填充数组。然后,我遍历图像中的每个像素。如果它与阵列中的一种颜色匹配,我将其替换为阵列中的新颜色。这是代码: 我正在处理的图像很小,约为20x20像素。但是,似乎必须有一种更有效的方法来执行此操作。 问题答案: 您可以修改基础ColorModel而

  • 问题内容: 所以我有一个带有火山的图像文件。其他所有内容均为0xFFFF00FF(不透明的洋红色)。我想将包含该颜色的每个像素替换为0(透明)。到目前为止,我的方法如下所示: 这工作正常,但似乎很慢。我见过有人以其他方式执行此操作,但是我不知道发生了什么。如果有人知道更好的方法,我非常想听听。 问题答案: 为了避免遍历像素,请更改基础ColorModel。这是一个例子。以下是作者使用原始Buffe

  • 问题内容: 我正在创建一个用于多个不同android应用程序的登录屏幕。打包它的最佳方法是什么,以便其他人可以在他们的应用程序上使用我的登录功能。如果我们要进行更改,最好将它们自动同步。编辑*看来将其打包到一个库模块中是最好的选择。如何上载此模块,以便如果我们对此模块进行更新,则它将无缝更新,而不必从github中获取。 谢谢! 问题答案: 如果您已将代码推送到GitHub,则使用JitPack可

  • 问题内容: 我想替换图像的颜色。例如,将所有蓝色变为红色而形状没有任何变形。当我尝试这样做时,我可以通过迭代每个像素来交换颜色,但是交换区域的形状变为平坦的形状。 example1输入:http: //www.tutorialwiz.com/tutorials/changing_color/images/original.jpg example1输出:http : //www.tutorialwi

  • 问题内容: 我是一名工程专业的学生,​​我必须做大量的数值处理,绘图,模拟等工作。我目前使用的工具是Matlab。我在大多数作业中都用它在大学计算机中。但是,我想知道有哪些可用的免费选项。 我已经做过一些研究,许多人说python在各种情况下都可以替代matlab。我想知道如何用python做所有这些事情。我正在使用Mac,如何安装不同的python软件包。那些包是什么?这真的是可行的选择吗?使用

  • 我遇到了这个问题,因为我有一个应用程序,有restful服务,但我需要提供一些静态的。在这个应用程序中,我还使用了注释。看起来这个类是公共的,我可以将其子类化,但我不确定如何配置它。我的目标是覆盖这条线,这样我就可以控制404。