2020年8月27日木曜日

MoviePyとscikit-imageで動画画面の明度を変更する

MoviePyとscikit-imageで動画画面の明度を変更するには、fl_imageメソッドとrgb2hsv関数、hsv2rgb関数を使用します。

〇サンプルコード
以下のサンプルコードでは、scikit-imageのrgb2hsv関数でHSVに変換し、彩度を指定の値に設定後RGBに戻しています。
from moviepy.editor import *
from skimage.color import *

def process_brightness(image, brightness):
    hsv = rgb2hsv(image.astype(float))
    hsv[:, :, 2] = brightness
    return hsv2rgb(hsv)

clip1 = VideoFileClip("hydrangea.mp4")

clip1t = clip1.fl_image(lambda clip1: process_brightness(clip1, 255))

clip1t.write_videofile("brightness.mp4")

〇元動画の画面

〇出力動画の画面

〇scikit-imageインストール
MoviePyの他、仮想環境のフォルダに移動して以下のコマンドを実行します。
pipenv install scikit-image

関連情報

MoviePyのまとめ

・moviepyのホームページ
https://zulko.github.io/moviepy/

0 件のコメント:

コメントを投稿