Android API或分析图像中主要使用哪种颜色的东西?
我正在寻找一种方法来分析不同的图像,以便获得关于在大多数情况下是使用暖色还是冷色的信息 像下面这样的东西,当然还有他们所有的阴影 你知道我怎么做吗 我已经制作了一个绘图程序,看起来像: 我想分析这些画Android API或分析图像中主要使用哪种颜色的东西?,android,image,colors,drawing,Android,Image,Colors,Drawing,我正在寻找一种方法来分析不同的图像,以便获得关于在大多数情况下是使用暖色还是冷色的信息 像下面这样的东西,当然还有他们所有的阴影 你知道我怎么做吗 我已经制作了一个绘图程序,看起来像: 我想分析这些画 编辑:谢谢大家:)支持库(调色板库)中提供的标准材质设计功能(可以从位图中提取许多突出颜色)对您想要实现的功能有些熟悉。您可以查看这些链接开始: - -使用官方文件。v7调色板支持库包括调色板类,可用于从图像中提取突出的颜色 您可能还想看看这个库:您也可以自己编写代码 我最近开发了一些用于图像
编辑:谢谢大家:)支持库(调色板库)中提供的标准材质设计功能(可以从位图中提取许多突出颜色)对您想要实现的功能有些熟悉。您可以查看这些链接开始:
-
-使用官方文件。v7调色板支持库包括调色板类,可用于从图像中提取突出的颜色
您可能还想看看这个库:您也可以自己编写代码 我最近开发了一些用于图像处理的过滤器,并进行了实验。 我写了这个剪报来计算不同颜色的出现。 它迭代所有像素并返回所有颜色及其外观。 键=RGB,值=计数
public static Map<Integer, Integer> getColorsFromImage(BufferedImage image){
final int widthInPx = image.getWidth();
final int heightInPx = image.getHeight();
System.out.println("Image has widht: " + widthInPx + " and height: " + heightInPx);
Map<Integer, Integer> colors = new HashMap<Integer, Integer>(); // rgb
int count = 0;
int currentColor = 0;
for(int x = 0; x < widthInPx; x++){
for(int y = 0; y < heightInPx; y++){
count = 0;
currentColor = image.getRGB(x, y);
if(colors.containsKey(currentColor)){
count = colors.get(currentColor) + 1;
}
colors.put(currentColor, count);
count = 0;
}
}
return colors;
}
公共静态映射getColorsFromImage(BuffereImage图像){
final int-widthInPx=image.getWidth();
final int heightInPx=image.getHeight();
System.out.println(“图像的宽度:+widthInPx+”和高度:+heightInPx”);
Map colors=new HashMap();//rgb
整数计数=0;
int currentColor=0;
对于(int x=0;x