Enblend memory requirements and best practice

44 views
Skip to first unread message

Kdblist

unread,
Mar 15, 2022, 3:20:50 PM3/15/22
to hugin and other free panoramic software
Hi,

When trying to create a mosaic stitch consisting of 160 25Mp 16bit TIFFs, enblend is killed while it emits these last words:

enblend: info: estimated space required for this blend step: 43783MB
enblend: info: generating Gaussian pyramid:  g0 g1 g2 g3 g4 g5 g6 g7 g8 g9 g10 g11 g12
enblend: info: CIELUV color conversion from/to "sRGB" profile
enblend: info: generating Gaussian pyramid:  g0 g1 g2 g3 g4 g5 g6 g7 g8 g9 g10 g11 g12
enblend: info: generating Laplacian pyramid: l0 l1 l2 l3 l4 l5 l6 l7 l8 l9 l10 l11 l12
enblend: info: CIELUV color conversion from/to "sRGB" profile
enblend: info: generating Gaussian pyramid:  g0 g1 g2Killed


I'm on Ubuntu 20.04, with 32G RAM and a temporary swapfile of 24G and enblend:

enblend 4.2

Extra feature: image cache: no
Extra feature: OpenMP: yes
  - version 2015-11
  - support for dynamic adjustment of the number of threads;
    dynamic adjustment disabled by default
  - using 16 processors and up to 16 threads
  - allocating thread-local dynamic memory with malloc/free
Extra feature: OpenCL: no

The stitched image it is trying to blend is 35436 x 36943=1309MP.

Will stitching/blending each row separately, and then blending the result together help?
And is that the only way, or is there another workaround for this memory limitation of Enblend?

Thanks.

More info:
I have built a rig that moves a camera with macro lens over a surface of about 100cm x 90cm, in small increments, in order to create high resolution images of old nautical maps from an ethnographic museum. As there are many maps, I am trying to automate as much of the process as possible.

Kdblist

unread,
Mar 16, 2022, 7:20:57 AM3/16/22
to hugin and other free panoramic software
I have found that dividing the blending process in four steps did not help. I was able to create the four separate stitched images, but Enblend still fails when I try to combine them in the final step.

Furthermore, I noticed that in the intermediate blends, there were black holes / artefacts in the images.

In one of the attempts I lowered the desired resolution, and then Enblend failed because Maximum Tiff file size exceeded:

enblend: error: Maximum TIFF file size exceeded
terminate called after throwing an instance of 'vigra::Encoder::TIFFCompressionException'
Aborted (core dumped)

I then switched to the inbuilt blender of Hugin, with hard seams, and the --BigTiff commandline option using the bigtiff.executor from Thomas Modes found at: https://groups.google.com/g/hugin-ptx/c/WhQs3avexk0/m/DfgMKMO2CgAJ

The result is a Tiff image of 9.2GB. The mosaic looks good and the blend went fine. It can be opened in Gimp. However I have yet to solve how to export it again, as Gimp seems to suffer from its own limitations in relation to Bigtiff files.
Reply all
Reply to author
Forward
0 new messages