cv2.VideoCapture在docker container

时间:2017-05-29 12:40:16

标签: python opencv docker video-capture

我正在尝试使用cv2.VideoCapture从docker容器中捕获图像。

import cv2 vid = cv2.VideoCapture('path\to\video') ret, frame = vid.read()

就视频文件而言, 我试过了 用docker -v挂载文件 或docker cp将视频文件复制到容器中, 但两者都没有运气(ret返回False)。

我应该在启动容器时添加任何命令吗? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

可能有两个问题:

1)在您的容器中,opencv未正确安装。检查是否打印(ret,frame)。如果他们来(假,没有)。然后opencv没有正确安装。

2)您使用的文件已损坏。要检查是否尝试将任何图像文件(jpg)复制到容器中并使用cv2.imread读取图像然后打印它。如果numpy数组出现,那么复制文件时不会损坏。

最好的选择是拉取任何opencv + python图像,然后用它创建一个容器。更好的选择是使用这些图像的dockerfiles来创建容器。