Linux imagemagick-变形:增加文件号,但不连续

Linux imagemagick-变形:增加文件号,但不连续,linux,imagemagick,Linux,Imagemagick,我已经用imagemagick好几天了。我的目标是,我想把几个截图合并成一个视频,我想在帧之间做一个很好的转换。例如,我找到了-morph选项 convert original/*.jpg -morph 10 new/img%03d.jpg 这将创建总共12个图像,从img001.jpg到img012.jpg 是否有一种方法可以使输出中的图像类似于,例如,每X个数字一个图像?例如img0x.jpgimg00(x+x).jpg等等?如果我很了解您的要求,您希望获得: img002.jpgimg0

我已经用imagemagick好几天了。我的目标是,我想把几个截图合并成一个视频,我想在帧之间做一个很好的转换。例如,我找到了-morph选项

convert original/*.jpg -morph 10 new/img%03d.jpg
这将创建总共12个图像,从
img001.jpg
img012.jpg


是否有一种方法可以使输出中的图像类似于,例如,每X个数字一个图像?例如
img0x.jpg
img00(x+x).jpg
等等?

如果我很了解您的要求,您希望获得:

img002.jpg
img004.jpg
img006.jpg
<代码>img024.jpg

而不是:

img001.jpg
img002.jpg
img003.jpg
<代码>img012.jpg

我不确定您是否可以直接使用imageMagick执行此操作,但是您可以转到
新的
目录并键入:

for i in `ls -r`;do mv $i `printf "img%03d.jpg" $(($(expr ${i:3:3} + 0)*2))`;done

(我假设此目录中没有其他文件)

实际上,没有前导零也是可能的。例如,使用5个转换步骤对每个png进行变形,并将输出计数器增加3

im *.png -morph 5 -set filename:a %[fx:t*3] "output-%[filename:a].jpg"

我相信有一个简单的答案,但我不明白你的问题。。。您有两个原始图像(或者您有更多的图像吗?),并且您希望在10个步骤中在它们之间变形,因此您将有12个输出图像-您的第一个原始图像,然后是10个新图像和最终图像?对吗?我们应该把它们制作成动画GIF还是什么?你会回答关于这个的问题吗?那么,如果在你的原始目录中,你有a.jpg、b.jpg和c.jpg,你会把它们变成什么?a、 jpg变成了b.jpg?还是a.jpg变成c.jpg?或者什么?如果我们发现你要变形成什么,如果a.jpg变形成某个东西,你通过new/img024.jpg将12个结果保存为new/img001.jpg,然后我为你将b.jpg变形成其他东西,根据您的规范,b.jpg也将在变形的a.jpg之上变形,因为这也将通过new/img024.jpg变形为new/img001.jpg。