Detección de color Java

Estoy buscando implementar una función en Java que lea una imagen y pueda detectar dónde hay sombras de rojo, azul, verde, amarillo, etc. como parte de un programa de análisis de imágenes satelitales. Entonces, por ejemplo, en una imagen satelital estándar, el azul sería agua, así que me gustaría que el programa lea cuántos píxeles son azules y luego podría decir que x% de la imagen es agua.

Sé que sería posible utilizar una carga completa de declaraciones lógicas leyendo el valor RGB de cada píxel, pero ¿hay alguna manera más fácil de hacerlo? De lo contrario, habrá cientos de sentencias if que llevarán mucho tiempo escribir pero también mucho tiempo realizarlas. Idealmente, me gustaría algo como esto:

if (pixelValue = red) {
   redCounter++;
}

Lo cual es obviamente muy simple, pero ahorraría tener que pasar por todas las combinaciones RGB posibles para rojo, azul, verde, amarillo, púrpura, etc., que son todos los colores presentes en algunas de las imágenes coloreadas.

Gracias por adelantado.

Respuestas a la pregunta(1)

Su respuesta a la pregunta