繁体   English   中英

如何通过命令行从图像Magick(IM)将大量的.img文件转换为gif

[英]How to convert a large series of .img files to a gif with image magick (IM) from command line

我有一组1800张图像(每个.img类型16Mb)。

我想从命令行将它们转换为gif,因为我已远程连接到存储它们的服务器,并且不可能全部下载(供本地程序使用)。 我无法在服务器上安装新程序,但已安装了imagemagick(IM)。

当我尝试标准命令时: convert -resize 20% -delay 5 -loop 0 /pwd/*.img output.gif

no decode delegate for this image format IMG @ error/constitute.c/ReadImage/504.no decode delegate for this image format IMG @ error/constitute.c/ReadImage/504. convert: no images defined d263g_07.gif @ error/convert.c/ConvertImageCommand/3257.

有没有办法在IM中完全处理img格式? 在他们的文档中似乎这不是受支持的文件类型,但其他谷歌搜索表示.img图像的格式非常接近位图。 我想知道是否有管道选项或可以让我实现目标的东西?

编辑 :这些是直接来自CMOS衍射图样检测器的图像(X射线晶体学)。 我也刚刚找到了一个隐藏的imageJ可执行文件。 因此,如果提供了IM无法使用的选项,那也可能是一个解决方案。

第一次尝试,我认为您将需要遵循以下原则:

#!/bin/bash

for f in *img; do
    cat "$f" | convert -depth 16 -size 2952x2820+3072 gray:- -resize 800x -normalize -depth 8 MIFF:-
done | convert - -delay 80 result.gif

您可能需要降低质量,或降低子样本帧的尺寸,或者进一步减小尺寸以获得可接受的GIF尺寸。 要减小大小,可以将其更改为-resize 500x 或者,要降低质量(并因此降低尺寸),请添加-quality 75%或类似值。 查看您的前进情况并向您汇报!

因此,将以上内容保存到HOME(登录)目录中名为go的文件中,然后执行以下命令(仅执行一次)使其可执行:

chmod +x $HOME/go

然后,转到存储图像的目录,例如:

cd /some/place/images

并通过键入以下命令运行脚本:

$HOME/go

不久后它将有望完成,动画GIF将被称为result.gif 如果仍然有问题,请按原样复制下面的每一行,然后将它们一次粘贴到终端中:

for f in *img; do cat "$f" | 
convert -depth 16 -size 2952x2820+3072 gray:- -resize 800x -normalize -depth 8 MIFF:- done |
convert - -delay 80 result.gif

我不知道您安装了哪些查看器,但是您可以尝试:

feh results.gif

输出为电影/视频

如果您想尝试输出视频/电影而不是动画GIF,则应该可以使用ffmpeg来实现。 该命令(未经测试)看起来非常像这样:

#!/bin/bash

for f in *img; do
    cat "$f" | convert -depth 16 -size 2952x2820+3072 gray:- -resize 800x -normalize -depth 8 ppm:-
done | ffmpeg -f image2pipe -framerate 30 -i - -c:v libx264 -pix_fmt yuv420p test.mp4

原始答案

我认为我们可能必须逐步解决此问题……这看起来是否像您的形象:

在此处输入图片说明

我是这样的:

convert -depth 16 -size 2952x2820+3072 gray:- -normalize a.jpg < ~/Desktop/d263g-07_1_0001.img

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM