忍者ブログ
サブタイトル:「mer2のマイノリティ・レポート(笑)」 --- 最近忍者ブログの仕様が変わったようで、一部の画像が見えなくなってますが、画像のURLコピペで見られます。(どうしよう困ったな) --- ご用件など、ございましたらtwitterまでどうぞ。
[585] [584] [583] [582] [581] [580] [579] [578] [577] [576] [575]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。



  前記事ついででYouTubeを眺めてたら、こんなのも有った。この方法(正式名称が有ったと思ったのだが、忘れた。ぐぐるキーワードすらうかばない。)は静止画版は見かけても、動画版というのは見た事が無いのよね。そもそもそんなこと可能なのだろうか。ああ、気になってきた。実験したい。

  さあ、ffmpegの出番ですこれ、やってみたかったのよ。

ffmpeg:
最新のFFMpegを導入しよう
こちらからダウンロード

ImageMagic:
本家
参考:
ImageMagick: Command-line Tools: Convert
ツールのぺえじ - convert コマンド結果一覧

  どちらもコマンドラインなプログラムです。コマンドプロンプトを立ち上げて、実行ファイルの有るフォルダにパスを通しておきましょう。
・ pathの確認
>path

・ 実行ファイルが"D:\ffmpeg"に有るならば、
>path=%path%;D:\ffmpeg
これをffmpegとImageMagicの両方に対して行なう。

・ 確認
>ffmpeg
>convert
でちゃんと反応が有れば準備オーケー。


  手持ちのサイドバイサイドな3D動画を加工する事にします。
・ まず、動画を連続画像に分解します。
>ffmpeg -i  TEST.avi  TEST-%04d.png
うわっ、本当にできた。面白い。

・ 各画像をImageMagickでサイドバイサイドな画像から左右の画像に分離させます。
  もしかしたらもっと要領のいい方法が有るのかもしれないけど、これしか見つかんなかった。ImageMagickできる事多過ぎ。

こんな手順になります。

・ 以下のコマンドで、元画像が4つに分割されます。
>convert -crop 50% ./test.png dest.png
こんなふう。
dest-0.png 左上
dest-1.png 右上
dest-2.png 左下
dest-3.png 右下

・ 左画像は左上と左下
>convert -append dest-0.png dest-2.png dest-L.png
・ 右画像は右上と右下
>convert -append dest-1.png dest-3.png dest-R.png

  これで1フレーム分の左右の画像が取り出せました。さらに、

・ 50%side-by-sideな場合はさらに横に伸ばす。
>convert -resize 200x100% dest-L.png dest-LL.png
>convert -resize 200x100% dest-R.png dest-RR.png

  この作業を全フレーム分行なわなければなりません。forコマンドを使います。
  変換元のファイル名は「TEST-xxxx.png」とします。「tmp-xxxxx.png」に変換します。加工中にファイル名の通し番号が5桁になっている点にご注意下さい。

  こんなんなりました。

>for %I in (TEST-*) do convert -crop 50%  %~nI.png dest-%~nI.png && convert -append dest-%~nI-0.png dest-%~nI-2.png %~nI1.png && convert -append dest-%~nI-1.png dest-%~nI-3.png %~nI2.png && del dest*.png

  うぎゃー。本当は各行を分けたほうが分かりやすいのですが、4分割の時にファイル名のフォーマットが変わってしまうので、ファイル名をforコマンドに確実に渡すにはマルチステートメント(&&)せざるを得ませんでした。これももしかしたらもっと上手い方法が有るかもしれません。

  50%side-by-sideな場合はさらにこうなります。ぎゃー。

>for %I in (TEST-*) do convert -crop 50%  %~nI.png dest-%~nI.png && convert -append dest-%~nI-0.png dest-%~nI-2.png %~nI1.png && convert -resize 200x100% %~nI1.png %~nI0.png && del %~nI1.png && convert -append dest-%~nI-1.png dest-%~nI-3.png %~nI2.png && convert -resize 200x100% %~nI2.png %~nI5.png && del %~nI2.png && del dest*.png

  これで素材ができあがりました。しかしffmpegで連続画像から動画を作るには、ファイル名の通し番号が1から始まる連番じゃないと駄目なんだそうです。間が空いているとエラーになります。確かDOS時代にはリナンバー系のテクニックが有ったと思ったんだけど、駄目だ、忘れた。
  悔しいけどwindows版のリナンバーツールを使う事にしました。このへんから適当にどうぞ。私はこれを使ってみました。うーん、ちょっといまいち。だけどちゃんとリナンバーはできました。

  それでもまだ問題が。どうもpngだと動画作成の時にエラーが出てしまいます。jpgならいけるので、jpgに変換します。
>for %I in (tmp-*) do convert  -quality 100 %~nI.png %~nI.jpg

これでやっと通りました。
>ffmpeg -r 29.97 -i tmp-%05d.jpg test.avi

完成です!!

  さあ、どんなでしょうか。


駄目だこりゃ。どっと疲れが。

  毎秒30フレームは速すぎるので10fpsでいってみましょう。
>ffmpeg -r 10 -i tmp-%05d.jpg test.avi


  何か基本的な認識を誤っていたような気がします。これは失敗ですね。お粗末様でした。
PR


この記事にコメントする
お名前
タイトル
文字色
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
ついったやろうぜ
ブログ内検索
検索エンジンから来た人、思った結果が出なかったら再検索してちょ。
最新コメント
[08/27 BernardSr]
[08/27 BernardSr]
[08/27 BernardSr]
[12/29 GroverIcow]
[12/26 gayenKinesl]
[12/25 gayenKincfv]
[12/25 geRoesonokp]
[12/24 geRoesonmxu]
[06/30 LindsayDom]
[06/24 Ayukupim]
[06/22 francinerj2]
[06/21 Karsewis]
[06/17 Porsulik]
[06/16 Porsulik]
[06/16 Porsulik]
[06/16 Amimior]
[06/15 WilfordMof]
[06/11 lakeishatb1]
[06/04 Mathewlomi]
[05/31 tiopomWarriorvrp]
[05/31 Lasdumor]
[05/29 Aredorer]
[05/27 IMPUCKICT]
[05/26 Asosans]
[05/24 RaymondZice]
アクセス解析
カウンター
カレンダー
09 2017/10 11
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
プロフィール
HN:
mer2
性別:
男性
趣味:
野良猫の餌付け
Powered by ニンジャブログ  Designed by 穂高
Copyright © PCで立体視してみるぶろぐ All Rights Reserved
忍者ブログ / [PR]