Estoy luchando con un procesamiento y espero poder resolverlo aquí.
Trabajo con la teledetección aplicada a la silvicultura, especialmente trabajando con datos LiDAR. La idea es utilizar Scikit-image para la detección de la copa de los árboles. Como soy nuevo en Python, consideré un gran triunfo personal hacer lo siguiente:
- Importar un CHM (con matplotlib);
- Ejecutar un filtro gaussiano (con el paquete scikit-image);
- Ejecutar un filtro maxima (con el paquete scikit-image);
- Ejecute el peak_local_max (con el paquete scikit-image);
- Mostrar el CHM con los máximos locales (con matplotlib);
Ahora mi problema. Cuando importo con matplot, la imagen pierde sus coordenadas geográficas. Así que las coordenadas que tengo son sólo coordenadas básicas de la imagen (es decir, 250,312). Lo que necesito es obtener el valor del pixel bajo el punto máximo local de la imagen (puntos rojos en la imagen). Aquí en el foro he visto a un chico preguntando lo mismo ( ¿Obtener el valor del píxel de la trama GDAL bajo el punto OGR sin NumPy? ), pero ya tenía los puntos en un shapefile. En mi caso los puntos fueron calculados con scikit-image (Es un array con las coordenadas de cada copa de árbol). Así que no tengo el shapefile.
En conclusión, lo que quiero al final es un archivo txt con las coordenadas de cada máximo local en coordenadas geográficas, por ejemplo:
525412 62980123 1150 ...