Estoy trabajando con 1 gb de imágenes tiff grandes de alrededor de 20000 x 20000 píxeles. Necesito extraer varias fichas (de aproximadamente 300x300 píxeles) de las imágenes, en posiciones aleatorias.extracción eficiente de mosaicos TIFF C++
probé las siguientes soluciones:
libtiff (la única biblioteca de bajo nivel que pude encontrar) ofrece TIFFReadline() pero eso significa que la lectura en alrededor de 19700 píxeles innecesarios.
Implementé mi propio lector tiff que extrae un mosaico de la imagen sin leer en píxeles innecesarios. Esperaba que fuera más rápido, pero hacer una búsqueda para cada línea del mosaico lo hace muy lento. También intenté leer en un búfer todas las líneas del archivo que incluyen mi tesela, y luego extraer la tesela del búfer, pero los resultados son más o menos los mismos.
¡Me gustaría recibir sugerencias que mejorarían mi herramienta de extracción de mosaicos!
Todo es bienvenido, tal vez se puede proponer una biblioteca más eficiente que podría utilizar, algunos consejos acerca de C C++ I O, alguna estrategia de nivel// más alto para mis necesidades, etc.
Saludos, Juan
¿Podemos suponer que no están comprimidos? –
¿Y que los datos están organizados en scanlines? –
sí, es sin comprimir los datos y organizado de la forma más traditinal: línea 1 línea 2 línea 3 ... – Juan