OpenCV 写视频在 Docker 容器内不起作用

问题描述

我编写了一个脚本,该脚本通过 PiCamera 在特定时间间隔内录制视频并将其保存在定义的文件夹中。我使用 VideoWriter 方法和 write 方法。当我在主机上运行该脚本时,该脚本运行良好,但如果我将其容器化,该脚本将不起作用。它运行但它不会在容器中保存任何内容。我不明白为什么。这是录制视频的函数体。

        #print(time.time())
        videoLength = time.time() + int(seconds)
        #print(videoLength)
        #while(time.time()<videoLength and int(time.time())<=int(endTime)):
        fourcc = cv2.VideoWriter_fourcc(*'XVID')
        out = cv2.VideoWriter(filename,fourcc,fps,(640,480))
        while(time.time()<videoLength):
            #print("time.time",time.time())
            #print("Length-video",videoLength)
            #print("I'm here!")
            font = cv2.FONT_HERShey_SCRIPT_COMPLEX
            dt = str(datetime.datetime.Now())
            #print("inside while")
            #print(time.time())
            frame = self.get_frame()
            out.write(frame)

函数get_frame是:

def get_frame(self):
        ret,frame = self.video.read()
        # DO WHAT YOU WANT WITH TENSORFLOW / KERAS AND OPENCV
        #print(ret)
        if ret:
            return frame
        else:
            raise ValueError

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)