Не совсем решение, скорее идея, которая может сработать или помочь другим людям придумать аналогичные или дальнейшие разработки ...
Если вы хотите выполнить несколько операций или кадрировать на каждом изображении монстра JP2, этовозможно, стоит заплатить цену заранее, только один раз, чтобы преобразовать в формат, который ImageMagick впоследствии сможет обрабатывать более легко.Итак, ваше изображение размером 20048x80000 с 2-байтовыми шортами, поэтому вы можете расширить его до 16-битного файла PGM, например:
convert monster.jp2 -depth 16 image.pgm
, и это займет около 3 минут.Однако, если вы теперь хотите извлечь часть изображения каким-то образом вниз по его высоте, теперь вы можете извлечь из PGM:
convert image.pgm -crop 400x400+0+6000 tile.tif
за 18 секунд вместо монстра JP2:
convert monster.jp2 -crop 400x400+0+6000 tile.tif
, что занимает 153 секунды.
Обратите внимание, что PGM будет занимать много места на диске .... Я думаю, вы можете попробовать то же самое с TIFF, который может содержать 16-битданные тоже могут быть сжаты LZW.Я полагаю, вы также можете использовать libvips
для еще более быстрого извлечения плиток из файла PGM.