AviUtlを使用して、gif動画をフレーム単位で画像に分解する方法について紹介します。
このページでは例として、以下↓のgifを画像に分解してみます。
.bmpとして出力する方法
タイムラインに画像に分解したい動画をドロップして読み込みます(図1)
図1
「圧縮プログラム」が「RGBA(32bit)」になっているのを確認します。(図4)
- RGBA(32bit):元動画のフレームを圧縮せずに無圧縮(劣化なし)で出力する設定
図4
前画面に戻り、「ファイルの種類」を「BmpFile(*.bmp)」に変更します。(図5)
あとは「ファイル名」に好きな名前を入れて「保存」ボタンを押します。
図5
保存を押すと、フレーム単位に分解された画像が保存されます。
▲出力結果はこのような感じになります。 (このgifは合計57フレームだったので、0~56のナンバーの.bmpが出力されています) |
.jpgとして出力する方法
AviUtlではデフォルトで「.jpg」で出力する機能がありません。
なので、jpgで出力したい場合は、有志の方が作られた出力プラグインを導入する必要があります。
このページでは「JPEG 3点セット」という出力プラグインを導入して.jpgを出力する方法について紹介します。
導入
- 以下のページで「JPEG 3点セット」の本体ファイルをダウンロードする
→AviUtl プラグイン フィルタ by うえぽん - ダウンロードしてきたファイルを展開し、「jpeg_input.aui」「jpeg_output.auo」「jpeg_print.auf」の3つのファイルをAviUtl本体フォルダに移動させる
インストールは以上で終了です。
使い方
基本的には.bmpとして出力する際の手順と全く同じです。
メニューの「ファイル」→「プラグイン出力」→「連番JPEG出力(YC48)」を選択します。
図6
保存ダイアログが出てくるので、「ファイル名」を入力し、「保存」をクリックします。(図7)
図7
保存を押すと、フレーム単位に分解された画像が保存されます。
▲出力結果としてはこのような感じになります。 (このgifは合計57フレームだったので、0~56のナンバーの.jpgが出力されています) |
圧縮設定
保存ダイアログ画面で「ビデオ圧縮」ボタンを押す事で、
出力時の設定を開く事ができます。
圧縮品質
数字を上げれば上げるほど高画質になります。
その分ファイルサイズも大きくなります。
数字を下げるとファイルサイズは小さくなりますが、
ノイズブロック的なのが大きくなっていきます。
ハフマンテーブル最適化
「ハフマンテーブル」を最適化します。
ハフマンテーブルについては以下のページなどが参考になります。
参考:Crazy*Planet:お絵描き研究室:JPEG(原理編3)(外部ページ)
プログレッシプ
jpg画像を「プログレッシブ」で出力するか「ベースライン」で出力するかを設定します。
これらの違いについては以下のページなどが参考になります。
参考:JPEGには2種類ある!プログレッシブとベースラインの違いは何?(外部ページ)
ダウンサンプリング
YUVで出力する際のサンプリングの方法について指定できます。
「4:2:2(2×1)YUY2相当」を選ぶと、メニューの「AVI出力」で「YUY2」出力したのと同じ画質になります。
基本的に↑にいけばいくほど画質が上がりますが、ファイルサイズも大きくなります。
YUY2とRGBの違いについては以下の記事を参考にしてください
参考:YUV422とRGBの違い
量子化テーブル
量子化の仕方を設定できます。以下サンプルです。
▲標準 | ▲フォトショ風 | ▲ジグザグ |
※よく見ると細かい違いが確認できます
補足
このプラグインを導入する事で、
メニューの「編集」→「JPEGワンクリック保存」という項目が追加され、現在選択中のフレームをワンクリックでjpgに保存できます。
関連:【AviUtl】動画の1フレームをPNG・JPEG画像にして保存する方法【プラグイン】
このページの情報は異常です。
コメント