リハビリ 人工知能 理学療法 Deep learning Deep Neural Network ディープラーニング AI 鍼灸

人工知能・リハビリ・日記・理学療法

タイトルはAIですが、個人的な日記なので、あまり気になさらないように。

動画を一秒づつ自動で画像にしてみた。

ハウスメーカーとの打ち合わせで、こだわりのなさがこだわりのGuchiです。いきなりのカミングアウトすみません。

(ネットの通信速度重視ですから。)

 

 

動画を一秒づつ自動で画像にしてみる。

まぁこれは別に、Pythonでしなくてもいいんですが、私の場合は、Pythonの方が楽に出来ます。

 

もしかしたら、家屋調査とかに使えるかもしれません。

(これでも、私は、一応、理学療法士の資格を持っている身なのでw)

 

すべて自動でできれば楽ですよね。働き方が自称データサイエンティスト+セラピストなのですが、リハビリ部内に一人くらい、私みたいな人が居てもいいかもしれません。

 

自意識過剰ですみません。

 

階層的に作っています。

 

f:id:Takuma_AI:20210420213317p:plain

 

OpenCVのインストールはこちら↓↓

pip install opencv-python

 

import cv2
from os import makedirs
from os.path import splitext, dirname, basename, join

 

def save_frames(video_path: str, frame_dir: str,
    name="image", ext="png"):
 cap = cv2.VideoCapture(video_path)
 if not cap.isOpened():
  return
 v_name = splitext(basename(video_path))[0]
 if frame_dir[-1:] == "\\" or frame_dir[-1:] == "/":
  frame_dir = dirname(frame_dir)
 frame_dir_ = join(frame_dir, v_name)

 makedirs(frame_dir_, exist_ok=True)
 base_path = join(frame_dir_, name)

 idx = 0
 while cap.isOpened():
  idx += 1
 ret, frame = cap.read()
 if ret:
if cap.get(cv2.CAP_PROP_POS_FRAMES) == 1:
  cv2.imwrite("{}_{}.{}".format(base_path, "0000", ext),
frame)
 elif idx < cap.get(cv2.CAP_PROP_FPS):
  continue
 else: #
  second =     int(cap.get(cv2.CAP_PROP_POS_FRAMES)/idx)
  filled_second = str(second).zfill(4)
  cv2.imwrite("{}_{}.{}".format(base_path,   filled_second, ext),
  frame)
  idx = 0
 else:
  break

save_frames("movie_path", ".//folder_path")

 

なんかややこしいけど、できやした。

 

明日も仕事です。頑張りましょう。

 

最近、Rに触れてないなー。

 

今度、R系のしょうもない記事を書いてみます。

 

      

 

 

 

 

 

前回の記事↓

takuma-ai.hatenablog.com

 

意思決定曲線分析関連↓

takuma-ai.hatenablog.com

 

takuma-ai.hatenablog.com