将图像转换为 Jpeg2000 不起作用

gue*_*tli 8 convert imagemagick jpeg

我尝试将图像转换为 Jpeg2000:

convert example2.png -quality 95 example.jp2
Run Code Online (Sandbox Code Playgroud)

但输出仍然是 png:

file example.jp2
example.jp2: PNG image data, 2549 x 3507, 8-bit/color RGB, non-interlaced
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

convert -version
Version: ImageMagick 6.8.9-9 Q16 x86_64 2016-11-29 http://www.imagemagick.org
Run Code Online (Sandbox Code Playgroud)

L. *_*mes 8

我究竟做错了什么?

没有。您输入的命令是正确的。问题在于Imagemagick的存储库版本中没有内置*.jp2( JPEG 2000) 支持。转换为不受支持的格式时,生成的目标文件将与源文件格式相同。

您可以通过查看convert -version输出的第四行来验证这一点:

$ convert -version
Run Code Online (Sandbox Code Playgroud)

输出:

Version: ImageMagick 6.8.9-9 Q16 x86_64 2016-11-29 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC Modules OpenMP
Delegates: bzlib cairo djvu fftw fontconfig freetype jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png rsvg tiff wmf x xml zlib
Run Code Online (Sandbox Code Playgroud)

请注意,jp2不包括在内。

这是一个已报告的错误(imagemagick:缺少 JPEG-2000 支持):

错误报告描述了该问题,并指出它已在尚未到达存储库的最新版本(版本 6.9.1.2-1)中得到修复。

另一个jp2支持测试是:

$ identify -list format | egrep -i jp2
Run Code Online (Sandbox Code Playgroud)

使用风险自负PPAhttps :
//launchpad.net/~isage-dna/+archive/ubuntu/imagick

更新:

正如 SamWilson 在命令中提供的,我测试的受支持 PPA 位于:https ://launchpad.net/~lyrasis/+archive/ubuntu/imagemagick-jp2

sudo add-apt-repository ppa:lyrasis/imagemagick-jp2
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)