我正在尝试使用cv2.VideoCapture从docker容器中捕获图像。
import cv2
vid = cv2.VideoCapture('path\to\video')
ret, frame = vid.read()
就视频文件而言,
我试过了
用docker -v
挂载文件
或docker cp
将视频文件复制到容器中,
但两者都没有运气(ret返回False)。
我应该在启动容器时添加任何命令吗? 提前谢谢。
答案 0 :(得分:0)
可能有两个问题:
1)在您的容器中,opencv未正确安装。检查是否打印(ret,frame)。如果他们来(假,没有)。然后opencv没有正确安装。
2)您使用的文件已损坏。要检查是否尝试将任何图像文件(jpg)复制到容器中并使用cv2.imread读取图像然后打印它。如果numpy数组出现,那么复制文件时不会损坏。
最好的选择是拉取任何opencv + python图像,然后用它创建一个容器。更好的选择是使用这些图像的dockerfiles来创建容器。