Comment activer JPEG2000 (jp2) dans ImageMagick?

9

Je veux utiliser ImageMagick pour convertir certains fichiers de jp2 (JPEG-2000) en jpg. La commande à faire est correcte, mais je ne sais pas comment activer le délégué jp2 dans ImageMagick.

J'ai installé ImageMagick via le gestionnaire de paquets: sudo apt-get install ImageMagick .
J'utilise ImageMagick 6.8.9-9, c'est la version la plus récente d'ImageMagick disponible sur apt-get .

Actuellement, de nombreux types de fichiers principaux sont automatiquement inclus. Les bibliothèques suivantes ont un support intégré et sont répertoriées en tant que délégués:

  

bzlib cairo djvu fftw fontconfig freetype jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png rsvg tiff wmf x xml

Modifier : j'aurais dû mentionner, j'ai essayé les conversions de fichiers avant de commencer à me disputer avec openjpeg-2 . Une commande comme convert input.jp2 output.jpg me donne le message d'erreur:

  

convert: aucun délégué de décodage pour ce format d’image 'JP2' @ error / constitue.c / ReadImage / 501.

Il faut donc que jp2 fonctionne. La bibliothèque concernée est openjpeg-2 et la page des délégués d'ImageMagick donne l'archive tar, openjpeg-2.0.0.tar.gz .

Bon, je l’ai donc téléchargé et suivi les instructions d’installation données dans le fichier d’installation. Des choses normales: cmake . , sudo make install .

Mais maintenant, comment puis-je configurer ImageMagick pour qu'il "reprenne" open-jpeg-2.0.0 ? Dois-je reconstruire ImageMagick à partir de la source pour le faire? Ou y a-t-il une commande que je peux entrer pour obtenir ImageMagick pour l'activer? Ou un fichier que je devrais changer, etc.?

J'ai passé des âges et des âges à examiner cela, à lire de nombreuses questions et réponses en ligne, mais je ne l'ai toujours pas trouvé. C'est une question de ma connaissance de Linux plutôt que de quelque chose à voir avec ImageMagick en soi , alors je l'apprécierais vraiment si quelqu'un pouvait m'aider à comprendre ce qui manquait. Je vous remercie.

    
posée arokath 02.04.2017 - 22:01
la source

3 réponses

2

D'après mon installation par défaut d'Image Magick 6.8.9.9 à partir des référentiels Ubuntu 16.04, il semble que Jpeg200 ( .jp2 ) soit entièrement pris en charge.

Les conversions peuvent être effectuées avec:

convert in.png out.jp2
convert in.jp2 out.jpg

Pour les options de ligne de commande esp. en ce qui concerne les options d'encodage ou le traitement des images en mosaïque, consultez la documentation en ligne d'Image Magick .

Il faut dire cependant que jp2 ne figure pas dans la liste des formats supportés:

identify -list format

Néanmoins, apparemment, cela fonctionne toujours bien.

    
réponse donnée Takkat 02.04.2017 - 22:45
la source
1

@arokath Comme vous, je n'ai pas pu trouver de support jp2 dans la version d'ImageMagick installée via apt-get (Ubuntu 16.04.1 LTS).

Avant de créer à partir des sources (en suivant les documents ImageMagick ), j'ai installé first libopenjp2-tools , puis libopenjp2-7-dev .

Remarque : je ne suis pas sûr de savoir qui a fait l'affaire: le résumé alphabétique à la fin de configure indiquait le support de jp2 comme OpenJP2 , plutôt que JP2 t attention jusqu'à ce que libopenjp2-7-dev ait été installé et reconfiguré; il est fort possible que cela ait fonctionné avec seulement la première lib.

En plus de ./configure , make et make install , j'ai trouvé (comme suggéré dans les documents) que je devais "configurer l'éditeur de liens dynamique": sudo ldconfig /usr/local/lib .

Maintenant, la sortie de /usr/local/bin/identify -list format contient:

  J2C* rw-   JPEG-2000 Code Stream Syntax (2.1.0)
  J2K* rw-   JPEG-2000 Code Stream Syntax (2.1.0)
  JNX* r--   Garmin tile format
  JP2* rw-   JPEG-2000 File Format Syntax (2.1.0)
  JPC* rw-   JPEG-2000 Code Stream Syntax (2.1.0)
  JPM* rw-   JPEG-2000 File Format Syntax (2.1.0)
  JPT* rw-   JPEG-2000 File Format Syntax (2.1.0)
 JSON  -w+   The image format and characteristics
    
réponse donnée user3294778 03.04.2017 - 22:11
la source
1

Je résous mon problème d’activation de la délégation openjp2 dans Imagemagick.

Assurez-vous d'avoir installé:

  • openjp2 & gt; = 2.1 (2.2 est la dernière version disponible, voir lien )
  • pkg-config (c'est mon problème)

Maintenant, lorsque vous lancez ./configure , vous pouvez voir openjp2 délégation

  

DELEGATES = MPEG jbig jng jpeg lcms lzma openjp2 png tiff zlib

    
réponse donnée Arnaud 15.06.2017 - 11:16
la source

Lire d'autres questions sur les étiquettes