web-dev-qa-db-fra.com

Quel logiciel peut afficher des images bitmap brutes sous Linux?

J'ai un fichier brut mais je ne connais pas le format de pixel ni la largeur de l'image. J'ai besoin d'un outil qui puisse afficher rapidement les données et me permettre d'essayer facilement différents formats. Un exemple d'un tel outil pour Windows serait 7yuv . Quel logiciel existe pour cette tâche sous Linux?

Remarque: cela n'a rien à voir avec les images brutes d'appareils photo numériques, ce qui décourage mes tentatives d'utilisation de Google pour répondre à cette question.

7yuv

10
Alistair Buxton

Il s'avère que Gimp peut le faire. Ouvrez simplement le fichier brut, et vous obtenez cette boîte de dialogue utile qui vous permet de prévisualiser l'image:

enter image description here

7
Alistair Buxton

convert from ImageMagick

Par exemple, une échelle de gris 2x3 8 bits:

printf '\x00\xFF\x88\xFF\x00\xFF' > f

Ensuite:

convert -depth 8 -size 3x2+0 gray:f out.png

Explication de la commande:

  • -depth 8: chaque couleur a 8 bits
  • -size 2x3+0: 2x3 image. +0 signifie commencer à l'offset 0 dans le fichier. S'il existe des en-têtes de métadonnées, vous pouvez les ignorer avec le décalage.
  • gray:f: le fichier d'entrée est f et le format est gray, comme défini à http://www.imagemagick.org/script/formats.php = Cette notation étrange est utilisée car ImageMagick détermine généralement le format à partir de l'extension, mais ici il n'y a pas d'extension.

Le problème est maintenant de savoir comment afficher le résultat. Un direct eog:

eog out.png

n’est pas très bon car l’image est trop petite et si vous zoomez beaucoup, eog utilise un algorithme d’affichage qui mélange les pixels, ce qui est préférable pour la plupart des images, mais pas dans notre cas. J'ai trouvé deux possibilités:

  • gimp out.png. Les éditeurs d'images doivent afficher chaque pixel.
  • convert out.png -scale 300x200 out2.png. -scale est nécessaire à la place de -resize, étant donné que -resize mélange les pixels au même niveau que eog par défaut.

Sortie:

enter image description here

Exemple RVB:

printf '\xFF\x00\x00\x00\xFF\x00\x00\x00\xFF' > f
convert -depth 8 -size 3x1+0 rgb:f out.png

enter image description here

Testé sur Ubuntu 16.04, ImageMagick 6.8.9.