Есть ли объяснение, почему мой код OpenCV в Python будет читать некоторые файлы mp4 / avi, а другие нет? - PullRequest
0 голосов
/ 16 мая 2019

Я работаю с базовым кодом для чтения видео в переменную. Функция cv2.VideoCapture() иногда снимает видео, а иногда нет. Я также пытался сделать видео по телефону и / или веб-камеру для реализации этого, но все равно не сработало. Тем не менее, для видео из учебника это работает совершенно нормально.

Мой тестовый видеоролик, который сработал: https://ufile.io/vk9sdy27

Мой тестовый видеоролик, который не сработал: https://ufile.io/y1uyw8lv

Итак, мой вопрос: почему некоторые видео работают, а некоторые нет? Я бы на самом деле хотел снять несколько фильмов сам и проанализировать их.

Я уже просмотрел большинство cv2.VideoCapture() сообщений в Интернете (насколько я мог их найти). Однако все они не ответили на мой вопрос, но были связаны с какими-то похожими, но разными темами.

import numpy as np
import cv2
import pandas as pd #not necessary for this part of the code
from datetime import datetime #not necessary for this part of the code

cap = cv2.VideoCapture("60 BPM Metronome.mp4")
frames_count, fps, width, height = cap.get(cv2.CAP_PROP_FRAME_COUNT), 
cap.get(cv2.CAP_PROP_FPS), cap.get(
    cv2.CAP_PROP_FRAME_WIDTH), cap.get(cv2.CAP_PROP_FRAME_HEIGHT)
width = int(width)
height = int(height)
print(frames_count, fps, width, height)

Я должен получить frames_count, fps, width и height. Они имеют решающее значение для остальной части моего кода.

Спасибо за любую помощь заранее.

...