Skip to main content

ログ取得ツール

お手軽HDRI計画(3) EV値とRGBの値の関係は…

理論はわかりませんが、少しずつためていたサンプル画像を観察すると、だいたいEV補正値が0.5違う場合、JPEGで見えるRGBの値(0~255)で20程度違いがあります。20という値が正確なのかどうかはわかりませんが、色の平均をとってみると、そんな感じで出る画像が多い。EV補正±0.3の場合は10程度の差に見える。 そのため、オートブラケットでEV補正±0.5で3枚撮った場合は、RGBの範囲が0~255だったのが-20~275くらいに広がるという感じにまではできそうです。 明るいほうと暗いほうに、だいたい7~8%ずつ増えて、256階調→約300階調くらいになる程度ですね。ちょっと物足りない感じもしますが、あくまでも「お手軽」だからこのくらいでいっか、という気もするところ。 0~99を暗め明るめの画像から、100~199(元画像の値で80~179)は中くらいの画像から、200~300(160~255)を明るめ暗めの画像から採用すれば、そこそこ色の範囲が広くなるのではないかと思います。 (追記) 2008/02/20(水) 19:44 「明るめ」と「暗め」が逆でしたね。

お手軽HDRI計画(2) EV値を求めてみよう

今回はメタデータについて。Raw(DNG)にもjpegにもEXIF情報が入っていて、撮影したときの情報を得ることができる。実際に出ている色のみで処理するのもいいけど、こういうメタデータをもとに明るさ情報を取り出してどうのこうのする、というのもアリだと思います。 EXIF情報を眺めると、ブラケット撮影で変更しながら撮影された明るさの情報が入っているのは、ExposureBiasValueという部分です。EV値(意味はわかりませんが高いほど明るい画像になるようです)の差分が入っている。これは…分数型かなぁ。 もともとのEV値は直接は入っていなくて、計算しなくてはならないようだ。BrightnessValue+log2(ISOSpeedRatings/3.125)+ExposureBiasValueの値がEV値、という情報をWebのどこか(URL忘れました)で仕入れて計算。 私のカメラでは、DNGでもJPEGでもこのスクリプトで食えています。

いまさらながら「-(ハイフン・マイナス)」と「_(アンダースコア)」

asciiの並びでは、「-」は数字やアルファベット、「/」や「.」よりも前、「_」は数字やアルファベット大文字より後ろでアルファベット小文字より前、という特性がある。

!"#$%&’()*+,-./0(略)9:;<=>?@A(略)Z[]^_`a(略)z{|}~

そのため、あるものに追加して属性を書く目的では、「-」よりも「_」が適している。何を言おうとしているのかというと、以下の2つのファイルがあるとすると、

  • 01234.jpg
  • 01234-1.jpg

名前でソートしたときの並び順が

  • 01234-1.jpg
  • 01234.jpg

である。「.(ドット)」よりも「-(ハイフン)」が前にあるためだ(拡張子を特別扱いするような面倒なソート方式を使っていれば別)。そのため、「_0」しかないときでも省略することができない。これが「-」ではなく「_」なら、

  • 01234.jpg
  • 01234_1.jpg

という順番になり、「_0」を省略しても構わないことになる。

今からasciiコードや拡張子の区切り文字を再定義できればなぁ…と思う人ってけっこういるんじゃないかな(「.」はもっと前にあるべき文字だよ…)。でも実現できるもんではないので、我々はあるものに合わせていくしかない。

xyzzyの名前空間

xyzzyを作業環境にしようと思い立って、auto-save-buffers.lというのを見つけてきて(require ‘auto-save-buffers)してみたら、「名前が衝突するため、exportできません」と言われてしまう。見ると、(in-package “editor”)としているので、editorという名前空間に自前のシンボルをexportしようとしてエラーになっているようにも見えた。

調べてみると、xyzzyのlispの名前空間は勝手に作っていいものではなくて、いくつか決まったものがあってネストされた状態になっている(?)みたいな。そこで、(in-package “user”)に変更したら、うまいこと動いてくれたようだ。xyzzyのlispはEmacs-lispよりもcommon-lispに近いらしいですね。ちゃんと分数(実数)型になるらしい。Lisp系の言語は以前にちょっとかじってた程度なんで分からないけど。

実数型はなんで流行らないのかな。誤差を考えなくて済むので便利だと思うんですけどね。

あとはTortoiseHGを入れてmercurialで作業環境を管理するようにして、Linuxとの同期をとったりできるようにした。auto-save-buffersもこういうものを前提にしたものですしね。Windowsで作業するというのがイメージできていなかったが、そう悪くない環境になるような気がする。xyzzyのPythonのモードも悪くない出来だと思います。

北朝鮮代表1-1日本代表

真面目に見ていませんでしたが、川島の代表初キャップにテセの先制ゴールか。ビデオにとっときゃよかったな。山岸は表情を見る限り、自分のプレーに納得してませんでしたね。テセは調子が良さそうでした。開幕スタメンはやっぱテセかなぁ。

我那覇の調子はどうなんだろう。

お手軽なHDRI計画(1) 色数の問題

HDRIに憧れる少年がいたとする。まあ実際は30代のオッサンですけど。自分のコンパクトデジカメでできるだけHDRIな人になるにはどうしたらいいのか。いくつか方法を考えてみたいなぁと。 HDRIっていうのはいろんな文脈で使われるようだが、私が言っているのはこっちに近いかな。写真っぽくない、絵画みたいな雰囲気。といっても非現実的になるわけじゃなくて、人間の目で見たものにより近い感じになる。写真だと逆光だのなんだので条件が悪いと猛烈に色が飛んで、目にははっきり見えるものがぜんぜん写らないじゃないですか。芸術を追求したいわけじゃなくて、あれがむかつくんですね。だからHDRIに憧れるといっても、「スクリプトを通せばある程度きれいになります」というレベルでいい。 そんなことができるのか。 このカメラにはオートブラケットの機能がついている。明るさ(用語はわからないが)を変えながら3回シャッターが切られて、3つの画像が保存される。これを組み合わせて、明るい部分を暗い画像から、暗い部分を明るい画像から採用すればそれっぽくなるような気がする。これならPythonのPILで簡単なスクリプトを書くか、Gimp(Script-Fu?)で頑張ればどうにかなるレベル。3枚のうち、暗すぎる部分と明るすぎる部分を捨てながら色を採用orブレンドしていけばいい。ただ、何の単位かわからないが、±0.5までしかないのであまりアグレッシブな(?)絵にはならないかもしれないし、三脚ではなく手で持って液晶を見ながらいい加減に撮るし、ずれると悲惨かもしれないね。ちょっとブレやすい程度で済めばいいけど。 ズレの解消法として、3つの画像をautopano-SIFTとhuginで重ねて、enblendの部分を自分で書くとか? 自分で書かなくても、enblendのオプションでどうにかなるのかもしれない。ありものをつなぎ合わせるだけでスクリプトにもしやすい(huginの部分はnonaを直接呼べばいいだけ?)。調べてみる価値はあるだろう。 また、このカメラはRaw(AdobeのDNG形式=tiffの拡張)でも保存できる。Rawでオートブラケットは効かないようだが、とにかくjpegでは飛んでしまう色まで記録できるように作られているはずだから、HDRIに近づけるだろう。OpenEXRに変換すれば、exrtoolsあたりでがんばれば、それなりになるかもしれないし、Pythonのモジュールもあるからどうにかなる可能性が高まる。 ざっと考えるとこの2つ。他にもやりようがあるのかもしれないが。 どっちがいいのかな。最初に気になるのは、Rawのデータのビット数。これが8ビットだと、何やってるんだという話になる。さすがにないか。調べる方法が分からないが手探りでやってみると、

日付と時刻を入れたいとき

ブログに情報を追記するときに、エントリの更新時刻は変えたくないけど、いつ追記したのかはわかるようにしたい、ということがある。

そういうときは「(追記)2008/02/10(日) 22:53」みたいな文字列を入れるといい。しかし使っているWindows Live Writerでそれを入れるにはどうしたらいいのか。プラグインをちょっと見たけどなさそうだし、途中でクリップボードに日付と時刻を入れるちょっとしたスクリプトを書けばいいじゃないかと思った。

しかし、調べていくとWindowsの標準的なスクリプト環境であるWSHはクリップボードにアクセスできないらしい。これは恥だと思わなければなりません。WSHはVBScriptとJScriptの2種類の言語が使えるらしいが、どちらも直接クリップボードにアクセスできない。しかしなぜか裏口があるらしく、(IE7/Vistaでも使えるかどうかは疑問だが)IEにクリップボードを読ませるという方法があるようだ。できるかもしれないけど、なんかこれは違うと思う。

とどろきでぇ、うまれた~ものはしあわっせさ~

132014等々力しあわせ音頭のリズムに乗って、等々力渓谷に行ってきました。確かに、23区内とは思えない風景が広がっていました。「等々力」の由来となった不動の滝も健在です(なんかチョロチョロと水が落ちているだけで、轟く滝を期待していた私はちょっと期待外れでしたが)。

なかなか近くて穴場ですし、よろしいかと思います。今日はちょっとぬかるんでいました。乳児をだっこして行くには危険だったかもしれません。ベビーカーで行くのは「無理」だと思います。ご注意ください。

将来的に目黒通りと宮内は橋で直結されるらしい(詳細は未定らしいですが)ので、そうなるとそれこそ自宅から歩いて行けるようになるでしょうね。旧等々力村が一つになるということ。橋というのは断絶した文化が交流できるようになる技術であり、私は架橋を楽しみにしています。