在R中显示栅格图像的最简单方法是什么?

6

我正在使用R处理TIFF图像。我将图像加载为

library(tiff)
img <- readTIFF("someimage.tiff")

我正在处理img数组并希望查看结果。其中一个选项是使用writeTIFF函数将图像存储到磁盘上,并使用图像查看器打开它。然而,我希望有一种简单的方法在R内显示图像。你会推荐什么?


readTIFF 函数属于哪个包?另外,plot(img) 不起作用吗? - user3710546
请查看rasterImage - Nick Kennedy
@Pascal 中的 readTIFF 函数来自 tiff 包。plot(img) 函数可以工作… 但是有点问题。它没有显示图像,而是显示了向量坐标。 - avli
3个回答

9

这里有一个选择:

img <- readTIFF(system.file("img", "Rlogo.tiff", package="tiff"))
grid::grid.raster(img)

5

您可以做以下事情:

library(raster)
b <- brick("someimage.tiff")
plotRGB(b)

3
如果您将tiff文件作为本机栅格读取,则可以使用函数rasterImage()
 img = readTIFF('someimage.tiff', native=TRUE)
 plot(NA,xlim=c(0,nrow(img)),ylim=c(0,ncol(img)))
 rasterImage(img,0,0,nrow(img),ncol(img))

这种方法同样适用于函数(以及相应的包):readJPEG、readTIFF等。

1
该示例未使用raster包中的任何函数(我添加了一个使用该函数的答案)。 - Robert Hijmans
哇,好发现。我已根据您的评论编辑了我的答案。干杯! - Alex Witsil

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接