微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

OpenCV 计算帧数但不读取它们

如何解决OpenCV 计算帧数但不读取它们

我下载了一个视频数据集,我正在尝试访问它的帧。这是下面的代码,它正确计算视频帧但是当我打印帧时它返回零矩阵。这段代码有什么问题?非常感谢任何帮助。

(我也可以在 opencv 窗口中正确看到帧:cv2.imshow('a',frame)

def get_video_files(glob_path):
    video_count,frames=0,0
    frame_list=[]
    for file in os.scandir(glob_path): #each video in the path
        video_count+=1
        cap = cv2.VideoCapture(file.path)
        while True:
            status,frame = cap.read()
            if not status:
                break
            frames += 1
            print(frame)
            frame_list.append(frame)
        cap.release()
    print (str(video_count)+' videos and '+str(frames)+' frames are found. Average frame count is '+"{:.3f}".format((frames/video_count)))  #RETURNS LOGICAL RESULTS
    print(frame_list)  #RETURNS ZERO MATRICES

解决方法

我解决了,问题是 Google Colab 无法访问我的本地。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。