0

How can I display an image from url. This result an error

import urllib
img = urllib.request.urlopen('https://www.edgystl.com/wp-content/uploads/2018/01/leather-bicker-jacket-model-street-style-men-1-e1530998880646.jpg')
hv.RGB(img)
vozman
  • 1,198
  • 1
  • 14
  • 19

2 Answers2

0

HoloViews RGB elements expect generally expect a NumPy array, the easiest way of getting an array from an Image is to use the PIL (or Pillow) library and download it using requests. Here's what that looks like:

from PIL import Image
import requests
from io import BytesIO

url = 'https://www.edgystl.com/wp-content/uploads/2018/01/leather-bicker-jacket-model-street-style-men-1-e1530998880646.jpg'
response = requests.get(url)
img = Image.open(BytesIO(response.content))
hv.RGB(np.array(img))
philippjfr
  • 3,997
  • 14
  • 15
0

Turns out it can be done with skimage

import holoviews as hv
from skimage import io

img = io.imread('https://www.edgystl.com/wp-content/uploads/2018/01/leather-bicker-jacket-model-street-style-men-1-e1530998880646.jpg')
hv.RGB(np.array(img))
vozman
  • 1,198
  • 1
  • 14
  • 19