Получение кадров из видео с настройкой кадров? - PullRequest
0 голосов
/ 30 мая 2018

У меня есть видео, и я использовал следующий код, чтобы получить кадры из видео.Видео длилось 24 секунды, и я получил 742 изображения.Я хочу настроить эту часть в своем коде, чтобы получить большее количество изображений из видео.

, а также кадры, которые я получаю, наклонены на 90 * против часовой стрелки.Пожалуйста, помогите мне с этим.

import cv2
vidcap = cv2.VideoCapture('20180530_115209.mp4')
success,image = vidcap.read()
count = 0
success = True
while success:
    cv2.imwrite("sushant_2/image/frame%d.jpg" % count, image)     # save frame as JPEG file      
    success,image = vidcap.read()
    print('Read a new frame: ', count)
    count += 1

1 Ответ

0 голосов
/ 30 мая 2018

В видео имеется ограниченное количество кадров, вы уже извлекаете всех из них.

vidcap.read захватывает, декодирует и возвращает следующий видеокадр, а также при наличииесли больше нет кадров, он вернет false, это то, что вы уже обрабатываете.


Чтобы повернуть, попробуйте это (измените степень на требуемую):

import cv2
vidcap = cv2.VideoCapture('20180530_115209.mp4')
success,image = vidcap.read()
h, w = image.shape[:2]
M = cv2.getRotationMatrix2D((w / 2, h / 2), 90, 1.0)
count = 0
success = True
while success:
    rotated90 = cv2.warpAffine(image, M, (h, w))
    cv2.imwrite("sushant_2/image/frame%d.jpg" % count, rotated90)     # save frame as JPEG file      
    success,image = vidcap.read()
    print('Read a new frame: ', count)
    count += 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...