ImageMagick cortar imagem enorme

Eu estou tentando criar telhas de uma imagem enorme dizer 40000x40000

Eu encontrei um script on line para imagemagick ele colhe os azulejos. funciona bem em imagens pequenas, como 10000x5000

Quando eu fico maior, acaba usando muita memória e o computador morre.

Eu adicionei as opções de limite, mas elas não parecem ter efeito

Eu tenho o monitor lá, mas isso não ajuda, pois o script simplesmente desacelera e bloqueia a máquina

parece apenas goble up como 50gig de disco de swap, em seguida, matar a máquina

Eu acho que o problema é que, como ele corta cada azulejo, ele os mantém na memória. O que eu acho que eu preciso é que ele escreva cada bloco para o disco, uma vez que ele cria não armazena todos eles na memória.

aqui está o roteiro até agora

<code> #!/bin/bash
 file=$1
 function tile() {
 convert -monitor -limit memory 2GiB -limit map 2GiB -limit area 2GB $file -scale ${s}%x -crop 256x256 \
 -set filename:tile "%[fx:page.x/256]_%[fx:page.y/256]" \
 +repage +adjoin "${file%.*}_${s}_%[filename:tile].png"
 }
 s=100
 tile
 s=50
 tile
</code>

questionAnswers(4)

yourAnswerToTheQuestion