動画加工の方法
動画解析自体は主にImageJで行います.しかしながら,動画をImageJで取り扱い可能な非圧縮avi形式に持ち込むため,以下の手順を踏むこととなります.この時,
①DVファイル(WinDV経由) (.avi)
②デジカメ付随のムービー機能 (.mov)
③ハイビジョンDVカメラで撮影 (.m2ts)
④USBカメラで撮影 (.avi)
の4通りのうち,どの手法で撮影したかにより扱いが微妙に異なります.中でも④の手法で撮影したファイルの場合,適切に設定することであらかじめ非圧縮aviで保存することが可能なので,直接ImageJに取り込むことが可能です.一方①から③のファイルは圧縮がかかっているので,Virtual Dubを経由することで圧縮をはずす必要があります.また,②,③のファイルはVirtual Dubで読み込むためにdecodeが必要で,Avisynthを援用する必要があります. 図にすると以下の通りです
以下,手順の少ない順に解説します.
④の場合は特に手間は必要ありません.そのまま次の手順の動画解析のページをご覧ください.
①の場合は,動画をVirtual DubにDrag and Dropした後,音声をデータから外し,非圧縮ファイルとして出力します.
また非圧縮にすることでファイルサイズは非常に大きくなるので,この時点でコマ落とし,画像の切り抜き,画像の縮小,動画範囲の指定をすべきです.
そのためには
a. 映像(Video)→フィルター(Filter)→resizeで720×480の動画を640×480に変更します
ここでAspect ratioの固定を外す(Disabled)を選ぶのを忘れずに
640*480でOKしましょう
b. grayscale(もしくはnull transform)のフィルターを選び,フィルター選択時表示される右下のクロップを使うと画像の範囲が狭められます
音声(Audio)→音声なし(No Audio)を選んでください
映像(Video)→フレームレート(Frame rate)→フレームレート変換(Frame rate conversion)でdecimated by ~ の値を変化させることで~倍速にできます
映像(Video)→範囲指定(Select range)でフレーム範囲を指定することで動画の範囲を指定できます.
以上の状態でファイル(File) Save as AVIで保存した後、ImageJで開いてください、このときconvert to grayscaleオプションを選ぶと8-bitになるのでファイルサイズが1/3になります、ここで再度保存しておくと容量が少なくて済むのでお勧めです.
②,③の場合は最初に必要なツール(K-Lite,Avisynth,warpsharpプラグイン,VirtualDub) をインストールしていることを確認した後,
1.ビデオカメラからAVCHDファイル(*.m2ts)もしくは,Quick timeファイル(*.mov)をPCに取り込む.
2.次のAVSファイル (Avisynthスクリプトファイル)をテキストファイルで作成し,動画と同じフォルダに入れファイル名は○○○.avsとする.
※ DirectShowSource...の行はファイル名を実際のモノに合わせてください。あとfps=xxxも実際のファイルに合わせてください。普通 は29.97で良いハズ。
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\warpsharp_2003_1103\warpsharp.dll")
もしも64bitをインストールしていたり,多少改変している時はwarpsharpのインストールでwarpsharp.dllが置かれることになった適切なフォルダを指定してください.
64bitでこのサイトの指示どおりにインストールしていればLoadPlugin("C:\Program Files\AviSynth 2.5\plugins\warpsharp64\warpsharp.dll"))となります
DirectShowSource("(動画のファイル名)",fps=29.97(高速度なら60等適切に))
FrameCache(9).AutoDeint("")
LanczosResize(1920,1080)(ここはサイズを動画に合わせてください.)
3.VirtualDubに○○○.avsをDrag and dropする.すると、指定したサイズ・指定したフレームレートの動画ファイルとして指定のファイルが開かれます.
①の時同様,非圧縮にすることでファイルサイズは非常に大きくなるので,この時点でコマ落とし,画像の切り抜き,画像の縮小,動画範囲の指定をすべきです.
そのためには
映像(Video)→フィルター(Filter)→grayscaleで右下のクロップを使うと画像の範囲が決められます
音声(Audio)→音声なし(No Audio)を選んでください(この時点で生AVIの24bitになります)
映像(Video)→フレームレート(Frame rate)→フレームレート変換(Frame rate conversion)でdecimated by ~ の値を変化させることで~倍速にできます
映像(Video)→範囲指定(Select range)でフレーム範囲を指定することで動画の範囲を指定できます.
以上の状態でファイル(File) Save as AVIで保存した後、ImageJで開いてください、このときconvert to grayscaleオプションを選ぶと8-bitになるのでファイルサイズが1/3になります、ここで再度保存しておくとHD容量が少なくていいかもしれません.