convert
dari ImageMagick
Misalnya, skala abu-abu 2x3 8-bit:
printf '\x00\xFF\x88\xFF\x00\xFF' > f
Kemudian:
convert -depth 8 -size 3x2+0 gray:f out.png
Penjelasan perintah:
-depth 8
: setiap warna memiliki 8 bit
-size 2x3+0
: 2x3
gambar. +0
berarti mulai dari offset 0 dalam file. Jika ada header metadata, Anda dapat melewati mereka dengan offset.
gray:f
: file input f
, dan formatnya gray
, seperti yang didefinisikan di http://www.imagemagick.org/script/formats.php Notasi aneh ini digunakan karena ImageMagick biasanya menentukan format dari ekstensi, tetapi di sini tidak ada ekstensi .
Masalahnya sekarang adalah bagaimana cara melihat output. A direct eog
:
eog out.png
tidak terlalu baik karena gambarnya terlalu kecil, dan jika Anda memperbesar banyak eog
menggunakan algoritma tampilan yang mencampur piksel, yang lebih baik untuk sebagian besar gambar, tetapi tidak dalam kasus kami. Saya menemukan dua kemungkinan:
gimp out.png
. Editor gambar harus menunjukkan setiap piksel.
convert out.png -scale 300x200 out2.png
. -scale
diperlukan alih-alih -resize
, karena -resize
mencampur piksel ke atas seperti eog
secara default.
Keluaran:
Contoh RGB:
printf '\xFF\x00\x00\x00\xFF\x00\x00\x00\xFF' > f
convert -depth 8 -size 3x1+0 rgb:f out.png
Diuji pada Ubuntu 16.04, ImageMagick 6.8.9.