Python OoenCVでavi形式の動画を画像として分割保存する

個人開発したアプリの宣伝
目的地が設定できる手帳のような使い心地のTODOアプリを公開しています。
Todo with Location

Todo with Location

  • Yoshiko Ichikawa
  • Productivity
  • Free

スポンサードリンク

VideoCaptureimwriteすることで、avi形式のフレームごとに画像として書き出すことが可能です。

import cv2

cap = cv2.VideoCapture("moviefile.avi")
num = 0
# 出力
while(cap.isOpened()):
    ret, frame = cap.read()
    if ret:
        filepath = "split_"+str(num)+".jpg"
        cv2.imwrite(filepath, frame)
    else:
        cap.release()
    num += 1

cap.release()


    else:
        cap.release()

の部分でframeの読み込みが失敗するとリソースストリームを閉じる処理を施しています。