ならんのITと読書と共に生きるブログ

ネタバレなしで本んを読んでみたい!ITなどの最新情報を知りたいという人に向けて語るためのブログです。

【動画変換】動画を画像へ変換する【Python】

f:id:acfoapon:20200308163451j:plain

背景

スマホで、撮影した動画から、ベストショットを見つけて、スクリーンショットを撮るという作業がめんどかった。
なので、簡単に画像を見つけるために、動画を全て画像にすればいいのではないかと思った。

目的

楽をするために、指定した動画をすべて画像化する

要件定義

  1. 目的の動画を指定する
  2. 動画を画像へ変換する
  3. 変換した画像を保存する場所を簡単に指定する

環境

  • Windows10Pro

  • Python3.7

  • Anaconda

環境構築方法

Anaconda Promptを起動します。
Prompt内に下記のコードを記述します。

pip install opencv-python

実際に書いたコード

import cv2

filepath=r'C:\Users\Downloads\test/'
vpath = r'C:\Users\Downloads\test\413'
video_path=vpath+'.mp4'

cap = cv2.VideoCapture(video_path)

num = 0
while(cap.isOpened()):
    ret, frame = cap.read()
    if ret == True:
        cv2.imwrite(filepath+"picture{:0=3}".format(num)+".jpg",frame)
        print("save picture{:0=3}".format(num)+".jpg")
        num += 1
    else:
        break

cap.release()

感想

思ったよりも簡単に(ググって、4分くらいで答えにたどりついた)自分の作りたいプログラムを作ることが出来た。
ファイルの指定を簡単にするぞ!と考えていた。しかし、ファイルの指定は絶対パスで指定した方が、間違い防止になると思い直したため、やめた。

次は、好みの画像を自動提案してくれるプログラムを作りたい。
気が向いたら、作る。
多分他のことに興味がわきそうな気がするから、実現するかは不明

参考文献

Pythonで画像処理をするならOpenCVがオススメ!
Python, OpenCVを用いて動画を画像へ変換する(動画から画像の切り出し)