プログラム処理をした動画をPythonのOpenCVを使いMP4形式にして保存する方法

今までの投稿で載せている動画はPowerPoint挿入から画面録画で撮った動画を載せていましたが、今回の投稿ではプログラム処理(加工)をした動画をPythonのOpenCVを使いMP4形式の動画にして保存するPythonプログラムを紹介します。

プログラム処理(加工)は過去に投稿したコマ飛ばしで早送り風にした処理顔にマスクを着ける(合成)処理逆再生にする処理などをMP4形式の動画にして保存します。

この投稿で使っている動画はPexelsさんの動画を使っています。

目次

動画を保存する命令

コマ飛ばしで早送り風にした処理をMP4形式で保存した動画

コマ飛ばしで早送り風にした処理をMP4形式で保存するプログラム

顔にマスクを着ける(合成)処理をMP4形式で保存した動画

顔にマスクを着ける(合成)処理をMP4形式で保存するプログラム

逆再生にした処理をMP4形式で保存した動画

逆再生にした処理をMP4形式で保存するプログラム

プログラムでMP4形式の動画保存をして良かった点

参考サイト



動画を保存する命令

cv2.VideoWriter_fourcc(‘m’,’p’,’4′,’v’)
保存形式の指定

int(mv.get(cv2.CAP_PROP_FPS))
読み込んだ動画のFPS(フレームレート)を取得して整数型にする

cv2.VideoWriter(‘保存する名前’,保存形式,フレームレート,サイズ)
動画を保存する形を作成

save.write(frame)
プログラム処理をした1フレーム(画像)を保存。これを繰り返すことで動画になります

save.release()
保存した動画ファイルを閉じる


コマ飛ばしで早送り風にした処理をMP4形式で保存した動画

コマ飛ばしで早送り風にした処理をMP4形式で保存するプログラム

このプログラムはこちら→「for文を使って動画をコマ飛ばしで表示、早送り風の投稿で紹介したプログラムにMP4形式で保存するプログラムを追加しものです。

コマ飛ばしで早送り風の動画は5コマ飛ばしで表示しています。

顔にマスクを着ける(合成)処理をMP4形式で保存した動画

顔にマスクを着ける(合成)処理をMP4形式で保存するプログラム

このプログラムはこちら→「Pythonプログラムで動画に写る人の顔にマスクを着ける方法の投稿で紹介したプログラムにMP4形式で保存するプログラムを追加しものです。

逆再生にした処理をMP4形式で保存した動画

逆再生にした処理をMP4で保存するプログラム

このプログラムはこちら→「Pythonで動画を逆再生にするプログラムを紹介しますの投稿で紹介したプログラムにMP4形式で保存するプログラムを追加しものです。

プログラムでMP4形式の動画保存をして良かった点 

・cv2.imshowで動画を表示するよりもカクカクせず滑らかに映ります。

・画面録画で撮るとパソコンの背景やプログラムなどの余計な部分が映りますが、プログラムで保存すると余計な部分が映らないです。

参考サイト

OpenCVを使った動画の保存について
http://labs.eecs.tottori-u.ac.jp/sd/Member/oyamada/OpenCV/html/py_tutorials/py_gui/py_video_display/py_video_display.html

FPS(フレームレート)について
https://nvr.bz/topics/knowledge/what-framerate.php

MP4Vについて
https://www.it-swarm.jp.net/ja/video/mp4v%E3%81%A8mp4a%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F/959394152/