ImageMagick ogromny obraz upraw
Próbuję tworzyć kafelki z ogromnego obrazu, powiedzmy 40000x40000
znalazłem skrypt on-line dla imagemagick, który przycina płytki. działa dobrze na małych obrazkach, np. 10000x5000
gdy już się powiększę, kończy się zużywaniem dużej ilości pamięci, a komputer umiera.
Dodałem opcje limitu, ale nie wydają się mieć wpływu
mam tam monitor, ale to nie pomaga, ponieważ skrypt zwalnia i blokuje komputer
wydaje się, że po prostu zdobędzie 50 GB dysku wymiany, a następnie zabije maszynę
Myślę, że problem polega na tym, że podczas kadrowania każdej płytki utrzymuje ją w pamięci. Myślę, że potrzebuję, aby każdy kafelek zapisywał na dysku, ponieważ tworzy go, a nie zapisuje w pamięci.
tutaj jest skrypt
<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>