Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java通过缩放图像来确定最常见颜色的最快方法?_Java_Image_Algorithm_Colors - Fatal编程技术网

Java通过缩放图像来确定最常见颜色的最快方法?

Java通过缩放图像来确定最常见颜色的最快方法?,java,image,algorithm,colors,Java,Image,Algorithm,Colors,解决方案应该相当简单,但因为我在这个领域没有经验,也找不到一个明确的解决方案,所以我在问 对于一个简单的项目,我需要确定在我的屏幕的所有4个角落最引人注目的颜色。 我正处在这样一个点上,我有一个所有4个角的BuffereImage,但找不到一个快速有效的算法来确定最常见的颜色(不是平均值!) 我认为最好的办法是将找到的所有颜色加载到HashMap中,每次找到颜色的实例时,您要么将其添加到映射中,要么增加该颜色的计数器。完成后,取所有整数的最大值 有关HashMaps的更多信息: 你的答案是对的。

解决方案应该相当简单,但因为我在这个领域没有经验,也找不到一个明确的解决方案,所以我在问

对于一个简单的项目,我需要确定在我的屏幕的所有4个角落最引人注目的颜色。
我正处在这样一个点上,我有一个所有4个角的BuffereImage,但找不到一个快速有效的算法来确定最常见的颜色(不是平均值!)

我认为最好的办法是将找到的所有颜色加载到
HashMap
中,每次找到
颜色的实例时,您要么将其添加到映射中,要么增加该颜色的计数器。完成后,取所有整数的最大值

有关HashMaps的更多信息:

你的答案是对的。但是,不要回答,并说这是一个错误的问题的地方。如果问题过于宽泛,请将其标记为宽泛。如果你想回答这个问题,就这么做。不要两者都做。这很有道理,谢谢你让我知道。我应该从我的答案中去掉“广泛性”陈述,还是继续标记它?OP需要决定“最常见的颜色”是什么意思。例如,如果有很多红色像素(255,0,0),那么颜色为(255,0,1)的像素(我严重怀疑任何人都无法从视觉上区分红色)应该被视为相同的东西吗?这可能取决于他将如何处理结果。另外,根据颜色贴图的深度,可能只有很少几个像素具有相同的值。这是公平的,但我觉得这更像是一个算法问题,而不是分离颜色背后的细节。无论他们是否使用java.awt.Color或他们决定的某种颜色的其他定义(其中可能(255,0,1)仍然是红色),这应该仍然会计算每种颜色的出现次数。@LordFarquaad我会从你的答案中扣除广泛性。特别是因为你用这么短的答案很好地回答了这个问题,所以答案可能不太宽泛。但总的来说,它应该是一个或另一个。如果它不属于这一类,就把它标上,不要回答。这是相当宽泛的。您的意思是希望在图像的四个象限中的每个象限中使用最频繁的颜色吗?你想让这些颜色量化,以便相似的颜色被视为相同的吗?例如,颜色(255,0,0)和(255,1,1)都是“红色”,将被视为相同的颜色。