16

这一定很容易,但是如果不使用 urllib 模块并手动获取远程文件,我现在无法弄清楚

我想用远程图像覆盖图(比如说“http://matplotlib.sourceforge.net/_static/logo2.png”),既imshow()不能也imread()不能加载图像。

任何想法哪个功能将允许加载远程图像?

4

3 回答 3

19

这确实很容易:

import urllib2
import matplotlib.pyplot as plt

# create a file-like object from the url
f = urllib2.urlopen("http://matplotlib.sourceforge.net/_static/logo2.png")

# read the image file in a numpy array
a = plt.imread(f)
plt.imshow(a)
plt.show()
于 2012-08-24T22:49:15.173 回答
17

这适用于我在带有 python 3.5 的笔记本中:

from skimage import io
import matplotlib.pyplot as plt

image = io.imread(url)
plt.imshow(image)
plt.show()
于 2017-01-13T20:34:09.053 回答
14

你可以用这段代码来做;

from matplotlib import pyplot as plt
a = plt.imread("http://matplotlib.sourceforge.net/_static/logo2.png")
plt.imshow(a)
plt.show()
于 2019-02-19T13:06:27.670 回答