【问题标题】:cv2.VideoCapture( ' html live stream'? )cv2.VideoCapture('html 直播'?)
【发布时间】:2022-01-23 20:57:31
【问题描述】:

尝试打开直播时出错。 我正在将它从我的树莓派流式传输到我在 Windows 上的视图中,这样我就可以运行 opencv 和 yolo。 有没有办法用 opencv 做到这一点?

import cv2

cap = cv2.VideoCapture('http://______/html/#')

while True:
    ret, frame = cap.read()

    cv2.imshow("frame", frame)
    key = cv2.waitKey(50)
    if key == 27:
        break
cv2.destroyAllWindows()

【问题讨论】:

  • 该网址的末尾是什么?一个网站?一张jpeg图片? mp4视频?闪视频? Prime 视频网站流?
  • Raspberrypi 凸轮控制。它显示了一个 pi 相机的小窗口和它下面的设置。我确实设法使用此代码对浏览器进行屏幕记录,但我希望我可以查看 url 并让 opencv 查看页面上实时流显示的像素范围。 holypython.com/how-to-use-imagegrab-of-cv2
  • VideoCapture 不适用于任意网页。您需要了解“pi cam control”是如何流式传输视频的,这意味着 URL 实际上只发送视频而不发送 html 或任何内容。这些问题经常出现。我相信你已经可以在这个网站上找到这个确切的问题和解决方案。

标签: python html opencv http raspberry-pi


【解决方案1】:

因此,我尝试连接的 URL 显示了来自树莓派的直播及其下的设置。我必须与此答案中的代码一起做的是右键单击实时流显示,在另一个选项卡中打开它并使用该选项卡中的 URL。不过大约需要 2-3 秒。

https://stackoverflow.com/a/57539561/17280268

import cv2

cap = cv2.VideoCapture('http://345.63.46.1256/html/cam_pic_new.php?time=1642941457007&p')

#^^ Opened in new tab URL ^^
#cap = cv2.VideoCapture('http://345.63.46.1256/html/')

cv2.namedWindow('live cam', cv2.WINDOW_NORMAL)

while(True):
    ret, frame = cap.read()
    #img_resize = cv2.resize(frame, (960, 540))
    cv2.imshow('live cam', frame)
    if cv2.waitKey(50) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-20
    • 2017-07-10
    • 1970-01-01
    • 1970-01-01
    • 2022-01-25
    • 2020-12-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多