satelite pro ortofoto online imagenes gratis google georeferenciadas earth descargar google-maps opencv image-processing colors imagemagick

ortofoto - ¿Cómo reconozco los árboles en una imagen de Google Maps usando el procesamiento de imágenes?



google satelite (1)

El problema con el -threshold Y% es este: ¡traducirá todos los píxeles, que son lo suficientemente oscuros al negro!

Si tiene otro color oscuro (marrón oscuro, azul oscuro, rojo oscuro, gris oscuro o negro) en su imagen, lo identificará falsamente como "madera".

Si te entiendo correctamente, estás buscando esos píxeles solamente, que son de algún tipo de verde o verde oscuro.

Por lo tanto, sugeriría comparar su propio enfoque con alguna variante del siguiente comando:

compare / -size 600x600 / -fuzz 30% / http://i.stack.imgur.com/kqMtt.png / xc:''darkgreen'' / output-1.png

En lugar de ''verde oscuro'' puede usar el valor de color respectivo de ''# 006400'', es el mismo:

compare / -size 600x600 / -fuzz 30% / http://i.stack.imgur.com/kqMtt.png / xc:''#006400'' / output-2.png

El comando de compare anterior crea una output-1.png de las dos imágenes de entrada con las siguientes características:

  1. se realiza una comparación de la imagen original con un parche de 600x600 píxeles creado dinámicamente ( xc: :) de color uniforme ''verde oscuro'';
  2. el resultado muestra la imagen original como un fondo pálido;
  3. el resultado muestra píxeles rojos donde los píxeles respectivos de la imagen original difieren del valor de color ''verde oscuro'' después de tener en cuenta un ''factor de fuzz'' del 30% (donde ''0%'' significaría una coincidencia exacta del valor del color);
  4. el resultado muestra píxeles blancos / semitransparentes donde los píxeles respectivos de la imagen original son similares al color ''verde oscuro'' (dentro de un factor de fuzz del 30%).

Aquí está el resultado en una comparación lado a lado:

Por supuesto, puede jugar con el factor de fuzz y con la definición exacta del valor de color "verde oscuro". Aquí está el resultado para -fuzz 25% :

Si desea que la comparación muestre los colores inversos (los píxeles rojos se muestran donde la imagen original tenía colores verdosos, transparente / blanco donde los píxeles no eran verdes), use el color invertido de ''verde oscuro'' como un parche de comparación (esto es algún tipo de rosa, por cierto) y un factor de fuzz diferente:

compare / -size 600x600 / -fuzz 70% / http://i.stack.imgur.com/kqMtt.png / xc:''#ff9bff'' / output-3.png

El resultado es ahora:

Si desea que la salida NO muestre la imagen original como un fondo pálido, agregue -compose src a su (s) comando (s):

compare / -size 600x600 / -fuzz 70% / http://i.stack.imgur.com/kqMtt.png / xc:''#ff9bff'' / -compose src / output-4.png

También puede cambiar el color rojo que resalta los píxeles "delta" en algún otro color. Para usar negro:

compare / -highlight-color black / -size 600x600 / -fuzz 60% / http://i.stack.imgur.com/kqMtt.png / xc:''#ff9bff'' / -compose src / output-5.png

Ahora podría usar el resultado del último comando como una "máscara". Superponga esa máscara a la imagen original y compártala de forma que aparezca la parte "solo árbol" de la imagen en el resultado, quitando todas las demás partes.

Estoy tratando de encontrar aproximadamente el área cubierta de árboles con una imagen de mapa estático ( imagen izquierda ).

El método en el que pensé consistía en hacer un análisis de píxel por píxel de la imagen descubriendo los píxeles "más verdes" inicialmente (utilizando el esquema de color HSV para extraer el valor de matiz).

Me di cuenta de que en algunas imágenes tomadas durante el amanecer o el atardecer, los árboles pueden no tener ningún color verde, y pueden aparecer gris oscuro-negro / negro. Mientras que los tomados durante el mediodía, aparecen de color verde brillante. Así que traté de usar el umbral de imagen y obtuve resultados decentes ( imagen de la derecha ):

Pero todavía no estoy satisfecho ya que las sombras de edificios u objetos oscuros pueden darme falsos positivos.

Me gustaría utilizar la experiencia de algunos desarrolladores aquí en Stack Overflow, y sugerir qué herramienta de procesamiento de imágenes y enfoque me daría los mejores resultados en ese escenario.