【问题标题】:Open CV cant read an image from URLOpencv 无法从 URL 读取图像
【发布时间】:2021-05-15 21:34:26
【问题描述】:

我尝试使用 open-cv 从 url 读取图像。我的代码是

url = "some url"

            hdr = {
                'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
                'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
                'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
                'Accept-Encoding': 'none',
                'Accept-Language': 'en-US,en;q=0.8',
                'Connection': 'keep-alive'}
            req = urllib.request.Request(url, None, headers=hdr)

            resp = urllib.request.urlopen(req)
            image = np.asarray(bytearray(resp.read()), dtype="uint8")
            image1 = cv2.imread(image)

但是我收到这样的错误- 图像 = cv2.imread(图像) TypeError:无法将“numpy.ndarray”类型的对象转换为“文件名”的“str”

【问题讨论】:

    标签: python opencv


    【解决方案1】:

    试试下面的代码。这会有所帮助

    import cv2
    import numpy as np
    import requests
    
    url = 'https://i.imgur.com/S3OGqV6.jpeg'
    resp = requests.get(url, stream=True).raw
    image = np.asarray(bytearray(resp.read()), dtype="uint8")
    image = cv2.imdecode(image, cv2.IMREAD_COLOR)
    cv2.imshow('image',image)
    cv2.waitKey(0)
    
    

    【讨论】:

      猜你喜欢
      • 2010-12-04
      • 2014-12-13
      • 2020-12-05
      • 1970-01-01
      • 1970-01-01
      • 2022-01-19
      • 1970-01-01
      • 2011-10-27
      • 2019-04-16
      相关资源
      最近更新 更多