14

我正在尝试从 url 地址直接加载 .jpeg 图像。我想知道是否有一种基本的方法可以通过使用url连接来做到这一点。

我第一次尝试:

require(biOps)
con <- url("http://upload.wikimedia.org/wikipedia/commons/9/95/Apollonian_spheres.jpg")
pic <- readJpeg(con)
#Error in readJpeg(con) : Cannot open file.

另一个问题似乎与此相同,但针对 .png 文件。我试图适应 .jpeg,但也出现错误。

require(biOps)
require(RCurl)
myurl <- "http://upload.wikimedia.org/wikipedia/commons/9/95/Apollonian_spheres.jpg"
pic <-  readJpeg(getURLContent(myurl))
#Error in readJpeg(getURLContent(myurl)) : Cannot open file.

任何帮助将不胜感激!

4

2 回答 2

22

只需将图像保存为临时文件:

myurl <- "http://upload.wikimedia.org/wikipedia/commons/9/95/Apollonian_spheres.jpg"
z <- tempfile()
download.file(myurl,z,mode="wb")
pic <- readJPEG(z)
file.remove(z) # cleanup
于 2013-07-29T07:48:05.653 回答
4

您不必将图像保存到磁盘中。您可以通过 URL 以及以下方式直接读取图像:

library(magick)
image_url <- "http://upload.wikimedia.org/wikipedia/commons/9/95/Apollonian_spheres.jpg"
pic <- image_read(image_url)
print(pic)

在此处输入图像描述

于 2020-06-10T14:43:44.860 回答