相転移

0時40分を過ぎたところ。
今日(昨日)はとてもよい日だった。昨日(一昨日)は地獄というか、自分が存在する意味はあるのか…という感じになったのが一変、なんだかものすごく楽しくなってきた。
1つは研究のこと。まあ自分の状況は変わってないんだけどね。けど、Boltzmannの命日である9月5日*1までに方向性だけでも見えるようにしたい。
2つ目はセミナー。とても楽しかった。電子顕微鏡できれいな写真を撮るのは大変なんじゃゴルァ、、というお話。このセミナーはその研究室では当たり前になっていることでも他の研究室じゃ知らないことが多いということで、あえて泥臭い話をして情報交換しようというもの。
けど、実験屋さんにはいつも驚かされる。特に高分解能の電子顕微鏡(だったと思う)を用いたカーボンアモルファス(だったと思う…)の撮影時の光軸(きっとそうだったと思う。。)の調整。普通は撮った画像をフーリエ変換したものを見て調節するそうだが、職人ともなると変換する前の乱雑な画像を見ただけで調節できてしまうらしい。調節前と調節後の画像が並べられていたが、ぼくら素人にはほとんど違いがわからなかった。。
試料作成も人の手でやっていてそこには職人技があり…きっと機械では作れないのだろう。人間ってすごいなぁ。今までは論文やらを結構ぞんざいに読んでいたけど、もっと丁寧に読もうと思う。
最後。静止画からmpegを作った。今までも作ったことあったけど、諸事情により何やら面倒臭い手続きが必要だった。けど、FedoraCore5のターミナルからガシガシ作れるようになった(と思う)。
やり方はImageMagickとmpeg2vidcodecを入れる*2。そして連番静止画ファイルを作ってホルダーに入れてImageMagickのconvertコマンドを使って
$ convert *.png hehe.mpg
とすればmpegファイルが出来る(pngの場合)*3
因みに以下のサイトを参考にした。


http://www1.linkclub.or.jp/~zhidao/zlab/computing/mpegencode.html


あと、まだ試していないのだけどconvertコマンドのオプションが使えるんじゃねぇかと。
$ convert -delay 100 *.gif hoho.mpg
とかすれば…明日やってみよう。これで“-delay 100”オプションで1/100[s]で画像が切り換わるよう設定されるはずだ。。(何度も言うがまだやってない)*4
あとImageMagickのみを使って
$ convert -delay 100 -loop 0 *.gif ehe.gif
としてgifアニメーションも作れる(こっちは実際にやった。むしろmpeg作る前にやった)。“-loop 0”というオプションは無限ループにするものらしい。0を他の正の整数(自然数)にすればその回数だけ同じアニメが流れるものとなる。それと画像が少ない場合“-delay 100"だと速過ぎることがある。遅過ぎるのは容易に気付きそうだが、速すぎるのはエラーかと思ってしまうので注意。
ここら辺については


http://mechanics.civil.tohoku.ac.jp/soft/node43.html


を参考にした。
それと、convertコマンドはもともと画像の保存形式(等)を変えるのもなので
$ convert peke.jpg piki.gif
とかしてjpgからgifを作ったりできる。
ImageMagickとmpeg2vidcodecはWIN版もあるそうなのでインストールしてコマンドプロンプトで同じことをやれば出来る気がする。。保障はないが…*5まあダメだったらきちんとpathを通すか*6cygwinを入れれば出来るんじゃね?(投げやり)
連番画像自体はpgplotとかgnuplotとかを駆使して作れる。一度静止画を作ってからでもImageMagickを使えば一遍に(大きさ等を)変換できるだろうが、pgplotやgnuplotをきちんと設定しておけばそのまま使えるものができると思う。
それとgnuplotをプログラム中で使うにはどうやらstdio.hにあるpopenとかいう関数を使えばすぐ出来るそうな。以下参照。


http://tortoise1.math.ryukoku.ac.jp/~takataka/gnuplot/fromC.html

*1:http://www.d4.dion.ne.jp/~warapon/data04/death-0905.htmより。
もともと知っていたわけではない。

*2:FedoraCore5にはImageMagickは最初から入っているξ。

*3:やる時はなるべく関係ないファイルを排除してからやるべきだと思われ。初めgifファイルからmpegを作ったらgifアニメーションが入っているのを見落していて、一応出来たがエラーが出る動画となってしまった。

*4:追記:ダメでした。楽せずもう少し調べねば…

*5:特に“*.png”とかの表記が効くかどうか不明。

*6:マイコンピュータを右クリック→プロパティ→詳細設定(タブ)→環境変数とかして設定する。