Leyendo GeoTiff usando .NET

11

¿Existe una biblioteca administrada para leer las coordenadas de un archivo geotiff en .NET?

Sé que se puede hacer a través de GDAL, pero estoy buscando una alternativa administrada .

BjartN
fuente
Puede usar Manifold: manifold.net , pero necesitaría al menos su tiempo de ejecución para distribuir con su aplicación. Sin embargo, tendría que leer el GeoTIFF como un componente múltiple antes de consultarlo, lo que puede ser una opción para usted. Todo está gestionado VC ++ bajo el capó, y su lector GeoTIFF está escrito por ellos. Puede probar con scripts VBScript o C # dentro de la aplicación y luego transferirlos a una aplicación externa en C # o lo que sea.
mdsumner
de lo contrario, la API de mapwindow podría ser útil, estoy seguro de que también hay otros que publicaré si no recuerdo
mdsumner

Respuestas:

10

Puede usar los contenedores .NET incluidos en GDAL . Esto le permite acceder a cualquiera de las funciones de GDAL desde el código administrado.

Reed Copsey
fuente
Estoy de acuerdo ... mejor seguir con el código probado en batalla en este caso
WolfOdrade
Esto sigue siendo GDAL no administrado bajo el capó. En este caso particular, estoy buscando solo administrado.
BjartN
1
@BjartN: Siempre puede usar System.Drawing.Bitmap.PropertyItems, luego manejar el procesamiento de las etiquetas GeoTiff usted mismo: remotesensing.org/geotiff/spec/geotiff2.6.html#2.6.1 Sin embargo, prefiero usar un contenedor administrado alrededor de una biblioteca nativa ...
Reed Copsey
Thx esto podría ser lo que estoy buscando. Investigaré :) Además, podría terminar con un contenedor administrado, pero no estoy muy interesado en depender de GDAL. Preferiría algo más ligero.
BjartN
3

No verá muchos en C # administrado, debido a las limitaciones de rendimiento y uso de memoria impuestas por la capa de administración de memoria de .NET Framework. No me malinterpreten: me encanta C # y .NET. Sin embargo, C ++ nativo es mucho más rápido y (en mi opinión) menos frustrante de escribir, en este caso.

Las encuestas generalmente contienen muchos archivos GeoTIFF, que requieren mucha memoria y manipulación de datos, cuando se realizan geotransformaciones (es decir, coordenadas WGS82 a UTMM a TIFF XY, y luego de nuevo). La demanda de rendimiento de memoria y eficiencia de administración aumenta aún más, cuando involucra cosas como compilar resultados de encuestas lineales, radiales y de área.

Probablemente no desee escuchar esto, pero escribir un analizador en C ++ nativo y luego envolverlo en C # aumentará enormemente el rendimiento y eliminará las limitaciones de memoria. Escribir un analizador es bastante fácil y será muy liviano, ya que puede adaptarlo a sus necesidades. Esto será particularmente cierto cuando integre funciones más avanzadas, como la selección automática y la expansión de archivos GeoTIFF.

Mike Christian
fuente
Te doy un punto por el valor agregado :)
BjartN
¡Muy apreciado! ;)
Mike Christian
2

¿Qué tal este bit de código ?

Chad Cooper
fuente
Esto es GDAL no administrado bajo el capó también
BjartN
El enlace ya no es accesible
Graviton