s平面の左側

左側なので安定してます(制御工学の話は出てきません)

OpenCV(+ Python)を使って動画ファイルをフレームごとの画像ファイルに変換する

前提

pip install opencv-python

手順

  1. ファイルパスを引数に渡して VideoCapture オブジェクトのインスタンスを生成
  2. read() メソッドを呼び出す毎に次のフレームを取得
  3. imwrite() 関数で画像ファイルとして書き出す

コード例

#!/usr/bin/python3
# coding: utf-8

import cv2
import os
import sys

video_file_path = 'video.mp4' # 入力ファイル名
result_dir_path = 'results' # 画像ファイルを格納するディレクトリ

video = cv2.VideoCapture(video_file_path)

# 先頭 100 フレームを画像ファイルに変換
for i in range(100):
    success, frame = video.read()

    if not success:
        print(i, 'failed')
        continue

    result_file_name = 'frame{}.png'.format(str(i).zfill(3))
    cv2.imwrite(os.path.join(result_dir_path, result_file_name), frame)