GraphicsMagick: Difference between revisions
→Quantum depth
Carandraug (talk | contribs) (→Main dependencies: add new dependency of libwebp-dev) |
|||
Line 13: | Line 13: | ||
The most common problem is the following warning when using {{Codeline|imread()}}: | The most common problem is the following warning when using {{Codeline|imread()}}: | ||
<pre>warning: your version of GraphicsMagick limits images to 8 bits per pixel</pre> | <pre>warning: your version of GraphicsMagick limits images to 8 bits per pixel</pre> | ||
The reason for this is that GraphicsMagick was compiled with {{Codeline|--with-quantum-depth 8}}. Possible values are 8, 16 or 32, each | The reason for this is that GraphicsMagick was compiled with {{Codeline|--with-quantum-depth 8}}. Possible values are 8, 16 or 32, each implementing that limitation. See the {{Path|INSTALL}} [http://graphicsmagick.hg.sourceforge.net/hgweb/graphicsmagick/graphicsmagick/file/tip/INSTALL-unix.txt#l429 file] on GraphicsMagick sourcefor an explanantion of this. There has bugs reported requesting package maintainers to compile it with higher values. You should not create a new bug, instead leave a comment on the already open bugs: [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=557879 Debian], [https://bugs.launchpad.net/ubuntu/+source/graphicsmagick/+bug/696215 Ubuntu], [https://bugzilla.redhat.com/show_bug.cgi?id=996411 Fedora]. | ||
As versions with higher values are not available on the repositories, the solution is to compile it. Octave needs then to be recompiled to use the freshly compiled Magick++ library. | As versions with higher values are not available on the repositories, the solution is to compile it. Octave needs then to be recompiled to use the freshly compiled Magick++ library. | ||
{{warning|Increasing quantum depth may have a dramatic increase in memory usage. If you use QuantumDepth 32, all images will be read with that precision even if they were saved with 8bit. This means that a 100MB 8bit image will | {{warning|Increasing quantum depth may have a dramatic increase in memory usage. If you use QuantumDepth 32, all images will be read with that precision even if they were saved with 8bit. This means that a 100MB 8bit image will temporarily take 400MB memory, or more if the image was compressed and they usually are, before Octave resizes it back down to 100MB. Because of this, because 32 bit integers images are rare, and because GraphicsMagick does not handle floating point, it's recommended to use QuantumDepth of 16.}} | ||
== Magick++ == | == Magick++ == |