Java颜色检测

标签 java algorithm colors computer-vision detection

我正在用 java 实现算法,它选择图像的一部分作为标记。 我的问题是

1)选择标记区域后,如何得到RGB中标记颜色的具体均值作为颜色差异较小的像素数。

2) 如何根据之前的标记选择找到标记值,即颜色的阈值。

请提供算法,如果可能,请提供 Java 实现。 提前致谢。

最佳答案

我不确定您尝试了什么,以及卡在哪里,但这里是:

  1. 要获得平均颜色,最好的办法是尝试分别找到三个 channel (R、G 和 B)的中值并将其用作平均值。由于 RGB 颜色空间的特殊性质,均值非常容易受到异常值的影响,而中值则不然。

  2. 我假设您要选择与您的标记颜色相似的所有颜色。为此,您可以选择颜色较小的所有像素 euclidean distance到上面选择的中值 RGB 颜色。

如果这对您不起作用,您可以查看 alternative colorspaces .但我认为以上内容应该足够了。

关于Java颜色检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7506579/

相关文章:

SQL将样本点转换为持续时间

algorithm - 关节点忽略通向直接父级的边的反转

algorithm - 梯度下降和爬山之间的行为差​​异

html - 如何获得半透明的边框图像以显示其背后的边框颜色?

java - Eclipse Java 调试器在一个文件中始终偏离应有的位置 6 行

java - @JmsListener 的 JUnit 测试

java - 在 android 的 ListView 中将来自 SQLite 的两列显示为相同的字符串

java - com.google.gdata.util.AuthenticationException : Error authenticating (check service name) due to this not able to read the google spreadsheets

python - 数量到 RGB 颜色之间的连续映射?

math - 颜色之间的相似性