动画包找不到带有convert =“convert”的ImageMagick

时间:2013-12-09 17:24:54

标签: r animation imagemagick

我在过去2周前在Windows 7,R 3.0.1上运行过动画。今天我加载了R 3.0.2并需要下载动画包来运行制作动画。在我尝试运行动画(here is a script)之后,我收到以下错误:

> saveGIF(FUN2(), interval = 0.1, outdir = "images/animate")
I cannot find ImageMagick with convert = "convert"
NULL
Warning messages:
1: running command 'convert --version' had status 4 
2: In im.convert(img.files, output = movie.name, convert = convert,  :
  ImageMagick not installed yet!

我安装了ImageMagick并在路径上,如我在问题视频中所示:http://www.youtube.com/watch?v=gvpawqLyCZY&feature=youtu.be

我可以在Windows命令行中运行convert --version并获取以下内容:

C:\Users\trinker>convert --version
Version: ImageMagick 6.8.6-8 2013-08-04 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2013 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates: bzlib djvu fftw fontconfig freetype jng jp2 jpeg lcms lzma openexr pa
ngo png ps tiff webp x xml zlib

然而在R中运行system("convert --version")会产生:

Invalid drive specification.
Warning message:
running command 'convert --version' had status 4 

我做错了什么,或者我可以改变以使动画包(和R)看到ImageMagick?

以下是该问题的其他信息(在我得到的R命令行中):

> system("convert -version")
Invalid drive specification.
Warning message:
running command 'convert -version' had status 4 

> shell("convert --version")
Version: ImageMagick 6.8.7-9 Q16 x64 2013-11-28 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC Modules OpenMP
Delegates: bzlib freetype jbig jng jp2 jpeg lcms lqr pangocairo png ps tiff webp xml zlib

2 个答案:

答案 0 :(得分:5)

{rgl} movie3d()函数存在类似问题。在这种情况下,您可以显式传递要执行的转换字符串,因此可以“告诉”R在哪里找到正确的convert.exe

imconvertstring<-"\"c:\\Program Files\\ImageMagick-6.9.0-Q16\\convert.exe\" -delay 1x%d %s*.png %s.%s"

movie3d(spin3d(),duration=10,convert=imconvertstring)

您可以使用ani.options()对{animation}包执行相同操作,以指定所需的convert.exe的确切位置。请参阅{animation}包中的im.convert()的帮助条目。

答案 1 :(得分:1)

我不知道有多少人知道这一点。

在较新版本的Windows中已经存在一个名为convert的程序,它可以处理文件系统。安装Imagemagick后,我重命名了IM转换器并使用它来进行系统调用。我还没有使用动画包,所以我不能说出解决这个特定问题的最佳方法。