Imagemagick 如何使用ImageMagic转换工具合并图像列表

Imagemagick 如何使用ImageMagic转换工具合并图像列表,imagemagick,imagemagick-convert,Imagemagick,Imagemagick Convert,我对魔术一无所知。现在我试着跟随教程。我能够使用gdalwarp工具创建三个独立的图像。我是这样做的: $ gdalwarp -t_srs EPSG:3857 LC80120542013154LGN00_B4.TIF 4-projected.tif $ gdalwarp -t_srs EPSG:3857 LC80120542013154LGN00_B3.TIF 3-projected.tif $ gdalwarp -t_srs EPSG:3857 LC80120542013154LGN00_B2

我对魔术一无所知。现在我试着跟随教程。我能够使用gdalwarp工具创建三个独立的图像。我是这样做的:

$ gdalwarp -t_srs EPSG:3857 LC80120542013154LGN00_B4.TIF 4-projected.tif
$ gdalwarp -t_srs EPSG:3857 LC80120542013154LGN00_B3.TIF 3-projected.tif
$ gdalwarp -t_srs EPSG:3857 LC80120542013154LGN00_B2.TIF 2-projected.tif
因此,目前我有三个单独的图像-4-projected.tif、3-projected.tif和2-projected.tif,并希望将它们组合在一起,但我不知道如何解释教程中的此命令:

$ convert -combine {4,3,2}-projected.tif RGB.tif
我不确定是应该逐个运行它们,还是应该使用某个单行命令。我按原样进行了尝试,但收到了错误消息:

无法打开{4,3,2}-projected.tif图像

我还尝试一个接一个地运行此命令,如:

$ convert -combine 4-projected.tif RGB.tif
$ convert -combine 3-projected.tif RGB.tif
$ convert -combine 2-projected.tif RGB.tif

但似乎下面的每个命令都只是重写了前一个命令,我没有使用组合,而是使用了与2-projected.tif完全相同的RGB.tif。因此,我需要一些帮助。

假设每个图像都是单波段(灰度)图像,并且您希望使用
4.tif
作为红色通道,
3.tif
作为绿色通道,
2.tif
作为蓝色通道:

convert 4.tif 3.tif 2.tif -combine result.tif
此外,我通常建议进行无损压缩,否则TIF文件往往会过大而毫无益处:

convert 4.tif 3.tif 2.tif -combine -compress lzw result.tif

假设每幅图像都是单波段(灰度)图像,并且您希望将
4.tif
用作红色通道,
3.tif
用作绿色通道,
2.tif
用作蓝色通道:

convert 4.tif 3.tif 2.tif -combine result.tif
此外,我通常建议进行无损压缩,否则TIF文件往往会过大而毫无益处:

convert 4.tif 3.tif 2.tif -combine -compress lzw result.tif

顺便问一下,你有没有试过用ImageMagic计算NDVI?此时,我尝试了这种方法-
convert NIR.tif RGB.tif-channel RGB-fx'(u.r-v.r)/(u.r+v.r+0.001)'RGB_ndvi.tif
,但得到了一条错误消息,“convert:无法解析表达式(u.r-1.0*v.r)”。也许,你知道如何修复它。谢谢我知道NDVI,但我没有任何图像可以测试。也许再问一个问题,提供一个小的红色和近红外通道,我会试试。目前,在尝试中,您需要在加载图像后执行
-separate
,以获得3个单独的频带/通道,然后才能使用
u
v
引用两个单独的图像。或者您可以使用
u.r
来表示红色通道,使用
u.g
来表示图像中的绿色或第二个通道。谢谢,马克!我将在一分钟内准备好所有图片并准备一个新问题。我准备了所有图片并提出了一个新问题-。所以,如果你有时间,请看一看。谢谢顺便问一下,你有没有试过用ImageMagic计算NDVI?此时,我尝试了这种方法-
convert NIR.tif RGB.tif-channel RGB-fx'(u.r-v.r)/(u.r+v.r+0.001)'RGB_ndvi.tif
,但得到了一条错误消息,“convert:无法解析表达式(u.r-1.0*v.r)”。也许,你知道如何修复它。谢谢我知道NDVI,但我没有任何图像可以测试。也许再问一个问题,提供一个小的红色和近红外通道,我会试试。目前,在尝试中,您需要在加载图像后执行
-separate
,以获得3个单独的频带/通道,然后才能使用
u
v
引用两个单独的图像。或者您可以使用
u.r
来表示红色通道,使用
u.g
来表示图像中的绿色或第二个通道。谢谢,马克!我将在一分钟内准备好所有图片并准备一个新问题。我准备了所有图片并提出了一个新问题-。所以,如果你有时间,请看一看。谢谢