python - Opencv Video Capture .read功能在不同PC上的不同结果

标签 python opencv

我有一个代码,需要使用opencv读取视频文件并从视频中获取帧。我为此使用Python,并执行以下操作:

video = cv2.VideoCapture(video_path)
if not video.isOpened():
   self.logger.error("Error opening video from file {}".format(video_path))

ret, img = video.read()
while ret:
    frames.append(img)
    ret, img = video.read()

total_nbr_frames = len(frames)
我在一台机器上传递视频,结果得到35帧。但是当我使用其他机器时,会得到7帧。
我尝试的另一个视频正在第一台机器上运行(另一帧为27帧),该视频是打开的,但我无法读取这些帧(总计= 0)
这可能是什么原因?与硬件有关吗?我想念图书馆吗?

最佳答案

据我所知,这完全与硬件有关。没有可帮助您提高帧读取速度的库。

关于python - Opencv Video Capture .read功能在不同PC上的不同结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64587551/

相关文章:

c++ - 如何在 OPENCV 3.x C++ Visual Studio 2015 中声明 BruteForceMatcher

c++ - 计算正方形的方向并显示具有相同方向的对象

python - 打开连接并获取响应需要太多时间

python - 使用模型实例中的数据加载 Django 表单对象 "loaded"

python - 文件读取在 Brython/Python 中不起作用

python - 为什么 Python 将元组作为向量添加到列表理解中,但将它们与 '+' 运算符连接起来?

c - 实现本地化 Otsu 二值化

python - 本地机器上的图像在图像查看器上正确显示,但在使用 cv2.imread() 时无法正确读取?

c++ - 在opencv中访问多 channel 数组中的整个 channel

java - 从 Python 背景学习 Java