Архив метки: opencv

OpenCV. Запись видео из набора изображений

Запись видеофайла из серии изображений при помощи библиотеки opencv на языке Python 3.6. Для записи используется объект VideoWriter, который в моем случае вызывается с заранее определенными параметрами: название видеофайла (для сохранения), fourcc (видеокодек), fps, size, isColour.
Размер видеофайла size определяется при однократном чтении первой в серии картинки. Код последовательно читает картинки (названия серии Hxxxx.jpg — H0000.jpg, H0001.jpg, H0002.jpg и так далее), которые находятся в той же папке, где расположен сам исходник.

import cv2

end = 120		#последний номер изображения в серии
fps = 5			#fps
file_ind = 'H'	#индекс изображения

img = cv2.imread(file_ind+'0000.jpg') #читаем первое изображение
size = img.shape[1], img.shape[0] #получаем размеры - высота/ширина
fourcc = cv2.VideoWriter_fourcc(*'XVID') #подключаем кодек по http://www.fourcc.org/codecs.php
video_name = file_ind + '_video.avi'
video = cv2.VideoWriter(video_name, fourcc, fps, size, True) #создаем видеофайл, определяем параметры

for i in range(0,end,1): #проходим в цикле все изображения
    filename = file_ind+str(i).zfill(4)+'.jpg' #формируем переменную с номером файла изображения
    print(filename) #печатаем номер текущего файла
    try:
        img = cv2.imread(filename) #читаем файл изображения
    except:
        pass
    video.write(img) #дописываем кадр в видеофайл

video.release() #отключаем видеозапись
cv2.destroyAllWindows()

В результате сборки изображений получается следующее видео движения облачных масс в радиусе действия ДМРЛ аэропорта Борисполь.

Изображения для составления видео получены с сайта meteo.gov.ua и представляют собой данные ДМРЛ (доплеровского метеорологического радара) аэропорта Борисполь (UKBB) за 4 апреля 2017 года.