2015-08-07 8 views
4

Я работаю с TIFF изображений в изображениях R. загружает вКаков самый простой способ отображения растрового изображения в R?

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

Я манипулируя с img массива, то и хочу, чтобы увидеть результаты. Одним из вариантов является использование функции writeTIFF для сохранения изображения на диске и открытия его с помощью средства просмотра изображений. Однако я хочу иметь простой способ отображения изображений внутри Р. Что бы вы порекомендовали?

+0

Из пакета, который приходит 'readTIFF'? Кроме того, не 'plot (img)' работает? –

+0

Посмотрите на ['rasterImage'] (https://stat.ethz.ch/R-manual/R-devel/library/graphics/html/rasterImage.html) –

+0

@Pascal' readTIFF' происходит от 'tiff' пакет. 'plot (img)' работает ... ну, вроде. Он не отображает изображение, а вместо него преобразует векторы. – avli

ответ

5

вот один вариант:

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

Если вы читаете в размолвке, как родной растр, вы можете использовать функцию 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

Этот пример не использует никаких функций из растрового пакета (я добавил ответ, который делает). – RobertH

+0

Ничего себе, хороший улов. Я отредактировал свой ответ в соответствии с вашим комментарием. Ура! –

3

Вы можете сделать:

library(raster) 
b <- brick("someimage.tiff") 
plotRGB(b) 
Смежные вопросы