hirax.net::Keywords::動画のブログ

2007-09-20[n年前へ]

油と時間

 電車の中で、ゴッホの油絵の断面がどうなっているかを想像する。

カムチャツカの若者がきりんの夢をみているとき
広重「名所江戸百景 大はし阿たけの夕立」から、三十年の時を経て、ゴッホが"Bridge in the Rain (after Hiroshige)"を 描く。その二枚の絵を同時に眺めることができる動画を作ってみた。
シミュレーション計算を作ったり、使ったりするには、確信犯的でなければダメだ。
実は色は“その色”の中に“別の色”を持っていて“他の色”と組み合わされて“また別の色”を見せているのだと思います。
三十年の時間の違いも、江戸とパリの遠い距離も、アニメーションGIFではほんの一秒ほどになる。
メキシコの娘は朝もやの中でバスを待っている

2007-12-16[n年前へ]

2008-01-12[n年前へ]

プルフリッヒ効果で飛び出すラトルバック立体動画

 ラトルバックが逆転する瞬間のスローモーション映は、立体動画として眺めることができます。片目だけサングラスをかけて、ラトルバック動画を眺めるとプルフリッヒ効果(錯視)"The Pulfrich Illusion"により、チューインガムが逆回転し始める瞬間から、ガムが立体的に見えてきます。平面的なディスプレイからガムが奥へ前へ飛び出して回る姿が見えてきます。

 片目だけサングラスやフィルターをかけて動画を眺めても良いですし、100円ショップでサングラスを買って、上のような片目サングラスを作って眺めてみても面白いと思います。そして、他の動画も眺めてみれば、立体的に見えるものがたくさんあるかもしれません。

片目サングラスラトルバックが逆転する瞬間のスローモーション映像プルフリッヒ効果で飛び出すラトルバック立体動画






2008-04-05[n年前へ]

「PowerPoint」から「他アプリケーション」を立ち上げる時のTips

 WindowsでPowrePointで動画を使ったプレゼンテーションを行う時に問題になることは結構あるように思います。「動画のエンコーダ(展開プログラム)」「外部・内部ディスプレイ(もしくはプライマリ or セカンダリ以降のディスプレイ)の機能の違いやソフトウエア制限」「複数の動画再生をしたい」「(外部アプリケーションを使って)動画を再生した場合にPowerPointへの画面復帰が不自然になったりする」という辺りで、よく困ることがあります。

 「動画のエンコーダ」や「複数の動画の再生を簡単にしたい」という場合に便利なのが、次のようなMS-DOSのバッチファイルを書き、さらにそのバッチファイルのショートカットを作ることで、PowerPointのオブジェクト(たとえば画像など)をクリックし、バッチファイル(へのショートカット)を呼び出す、というテクニックです。

start "" "C:\Program Files\QuickTime\QuickTimePlayer.exe" "C:\s1.avi"
start "" "C:\Program Files\QuickTime\QuickTimePlayer.exe" "C:\s2.avi"
 上のようなバッチファイル(へのショートカット)を使えば、QuickTimePlayerをPowerPointから複数立ち上げて、複数のAVIファイルを同時に並べて再生することができます。

 バッチファイルを直接呼び出すのではなく、ショートカットを作り呼ぶようにするのは、コマンドプロンプトを表示させないようにするためです。右に示すダイアログ画面のように、バッチファイルの「ショートカットの実行時のプロパティ」を「最小化」にしておけば、QuickTimePlayer.exeを立ち上げるコマンドプロンプト(のような余計なもの)を聴衆に見せずにすみます。

 というわけで、これは「バッチファイルのショートカットを(プロパティを設定した上で)使う」というPowerPointから他アプリを使う時のTipsです。もちろん、PowerPointから他アプリを使う時でなくとも、複数のアプリケーションや動画などを一瞬で同時に立ち上げるときにも便利かもしれません。

バッチファイルのショートカットオブジェクトの動作設定






2008-07-11[n年前へ]

「スペクトル操作Mathematicaライブラリ」で動画を作る

 光スペクトル操作用のMathematicaライブラリで、スペクトル変化の動画を作ると、こんな感じになります。Map も spectorPlot も Table も addtiveMixtureSpector も whiteLight も cyanFilter も・・・どれも「関数」です。addtiveMixtureSpector や whiteLight や cyanFilter は「関数を返す関数」で、Map などは関数を引数にとる関数です。Mathematica でコードを書いていると、なぜか自然に関数を重ね合わせていくような書き方が気持良くなってきます。

Map[spectorPlot,
 Table[
  addtiveMixtureSpector[
   {whiteLight,
   transmissionSpector[whiteLight,
   cyanFilter, 1.0]}, {1-r,r}]
 ,{r,0,3,0.05}]]

 それで、今この瞬間の悩みはMathematicaで"spectorFitting[targetSpector_,usingSpectrum]"というような関数をどうやって書くか、ということです。targetSpector は、任意のスペクトルを表現する関数で、usingSpectrum は「スペクトルを表す関数群」で要素数は任意のリストです。usingSpectrumを使いtargetSpectorをどのように表現するかを、最小二乗近似で最適解をNMinimize で解くというのが、そんな関数を作るときの定番の手順なのだろうと思います。つまり、方程式と制約条件を動的に作成し、それをNMinimize で解いた結果を返す、という具合です。

 さて、この spectorFitting という関数はどう簡単に書くことができるものでしょうか。Mathematicaは変数名と文字列を明確に区別する割に、見た目ではまったくその違いがわからないのが面白いところ(同時に苦労するところ)かも、と思ったりしたのです。