2013/04/02(火) [n年前の日記]
#1 [digital] パノラマ画像作成の実験中
半球ミラー画像を撮影して、Huginで合成できるかテスト。
◎ 撮影。 :
まずは、PowerShot A570 ISを使って、部屋の中で8方向を撮影。デジカメは縦にして、半球ミラーが3000ドット前後で収まるようにした。
本来、半球ミラーの撮影は4方向ぐらいで十分らしいけど。それは望遠を使って、遠くからミラーを画面いっぱいに撮影できる場合の話。今回は、ミラーを画面いっぱいに入れるため、ミラーにデジカメをギリギリまで近づけてマクロ撮影しているので、そうなるとデジカメが映り込んでる面積がかなり大きくなってしまう。そのデジカメ部分を埋めるための画像を得るには、8方向ぐらいで撮らないといかんだろうと。
実際、試しに4方向分だけ Hugin に画像を読ませてみたら、穴がボコボコ開いているパノラマ画像になってしまった。やはり、マクロ撮影でどうにかする場合は、4方向では厳しいらしい。…ただ、合成作業中に、もしかして6方向ぐらいでも足りるような気もしてきたり。枚数が少ないほうが、合成時の作業は楽なんだよな…。
マクロ撮影をしてるので、ピントが合わなくて苦労してたのだけど。恥ずかしながら今頃になって、F値だか絞りだかを知り。F値を大きくするとピントが合う範囲が広がるので、ピント合わせも楽になる。ただ、F値が大きくなると入ってくる光量も少なくなるので、画像は暗くなり、ノイズだらけになってしまう。どのぐらいの値が適切なのか、見極めが難しく。
一応IBL用の画像 ―― HDRIを作りたいので、CHDK を有効にして、0EV,+2EV,-2EVの3枚を撮影。
本来、半球ミラーの撮影は4方向ぐらいで十分らしいけど。それは望遠を使って、遠くからミラーを画面いっぱいに撮影できる場合の話。今回は、ミラーを画面いっぱいに入れるため、ミラーにデジカメをギリギリまで近づけてマクロ撮影しているので、そうなるとデジカメが映り込んでる面積がかなり大きくなってしまう。そのデジカメ部分を埋めるための画像を得るには、8方向ぐらいで撮らないといかんだろうと。
実際、試しに4方向分だけ Hugin に画像を読ませてみたら、穴がボコボコ開いているパノラマ画像になってしまった。やはり、マクロ撮影でどうにかする場合は、4方向では厳しいらしい。…ただ、合成作業中に、もしかして6方向ぐらいでも足りるような気もしてきたり。枚数が少ないほうが、合成時の作業は楽なんだよな…。
マクロ撮影をしてるので、ピントが合わなくて苦労してたのだけど。恥ずかしながら今頃になって、F値だか絞りだかを知り。F値を大きくするとピントが合う範囲が広がるので、ピント合わせも楽になる。ただ、F値が大きくなると入ってくる光量も少なくなるので、画像は暗くなり、ノイズだらけになってしまう。どのぐらいの値が適切なのか、見極めが難しく。
一応IBL用の画像 ―― HDRIを作りたいので、CHDK を有効にして、0EV,+2EV,-2EVの3枚を撮影。
◎ 合成。 :
Hugin上で合成作業。
撮影した画像をビューワ等で見ると、EXIF情報により、縦長の画像として見えるのだけど。Huginに読み込むとそのあたりが反映されない。また、ミラーで写しているので、左右が逆になっている。XnView の「高画質JPEG変換」を使って、ロスレスで、EXIFに基づく回転、及び、左右反転をしてから、Hugin に画像を読み込んだ。
最初のうちは、露出の異なる画像を全部読み込んで、スタック値を指定して処理をしてみたのだけど。それだと、デジカメや三脚部分を、マスクを使って取り除いて合成する際に、結果画像にボコボコと穴が開いてしまう。仕方ないので、0EVの画像だけでパノラマ画像を一旦作ってから、その際の .pto をリネームコピーして、エディタで開き、画像ファイル名を +2EV、-2EVの画像ファイルに書き換えて、スティッチ?処理だけ行うようにしてみた。そうすることで、明るさの違うパノラマ画像が3つほど得られる。
得られた3つのパノラマ画像は、0EV画像の配置情報を元にして合成処理するわけだから、きっちり位置が合ってくれるだろうと予想したけど。これが微妙に位置が合ってない状態で困ってしまった。まあ、Picturenaut で無理矢理位置合わせをして、どうにかHDRIにすることはできたのだけど。最終的に、6000x3000ドットのHDRIが得られた。
撮影した画像をビューワ等で見ると、EXIF情報により、縦長の画像として見えるのだけど。Huginに読み込むとそのあたりが反映されない。また、ミラーで写しているので、左右が逆になっている。XnView の「高画質JPEG変換」を使って、ロスレスで、EXIFに基づく回転、及び、左右反転をしてから、Hugin に画像を読み込んだ。
最初のうちは、露出の異なる画像を全部読み込んで、スタック値を指定して処理をしてみたのだけど。それだと、デジカメや三脚部分を、マスクを使って取り除いて合成する際に、結果画像にボコボコと穴が開いてしまう。仕方ないので、0EVの画像だけでパノラマ画像を一旦作ってから、その際の .pto をリネームコピーして、エディタで開き、画像ファイル名を +2EV、-2EVの画像ファイルに書き換えて、スティッチ?処理だけ行うようにしてみた。そうすることで、明るさの違うパノラマ画像が3つほど得られる。
得られた3つのパノラマ画像は、0EV画像の配置情報を元にして合成処理するわけだから、きっちり位置が合ってくれるだろうと予想したけど。これが微妙に位置が合ってない状態で困ってしまった。まあ、Picturenaut で無理矢理位置合わせをして、どうにかHDRIにすることはできたのだけど。最終的に、6000x3000ドットのHDRIが得られた。
◎ 結果画像を検証。 :
出来た HDRI を、Shade 12 の背景に読み込んでレンダリングテストをしてみたけれど。Shade 12に添付されているHDRIと比べると、背景としてはボケボケな感じで。もしかして、Shade 12 添付のHDRIは、実際には 6000x3000 より大きいのだろうか…?
Shade公式サイトを眺めてみたら、どうやら Shade 添付のHDRIは、元々は10000x5000ドット、180MB前後の画像群だったりするようで。それを1/4程度に縮小してるから、シャープな画像になっているのかな…。いや、魚眼レンズと、半球ミラーに反射させた画の違い、かもしれない。後者は当然ボケボケになるはずだし。安く実現しようとすると、ボケボケになってしまうのは、仕方ないのかもしれないか…。
700万画素のコンパクトデジカメで、できるだけ枚数を少なく、かつ、安く済ませようとすると、このへんが限界なのかもしれない。もっとシャープな画を得るためには、
コンパクトデジカメ用の魚眼レンズを入手して、という手もありそうだけど、自分が今使えるデジカメの解像度が少ないので、得られる画像も荒くなってしまうはず。おそらく、デジカメや三脚分をマスクする手間が省ける程度のメリットしかないのであろう気もする。
巷のお店の天井に設置してある万引き予防用半球ミラー、みたいなものを使えれば、遠くから撮影画面いっぱいにミラーを撮影することもできるだろうから、シャープな画像になるだろうけど。その手のミラーは結構なお値段なわけで。下手すると、一眼レフデジカメ+魚眼レンズより高くなりそうな予感。それでは導入する意味が無いよな…。
Shade公式サイトを眺めてみたら、どうやら Shade 添付のHDRIは、元々は10000x5000ドット、180MB前後の画像群だったりするようで。それを1/4程度に縮小してるから、シャープな画像になっているのかな…。いや、魚眼レンズと、半球ミラーに反射させた画の違い、かもしれない。後者は当然ボケボケになるはずだし。安く実現しようとすると、ボケボケになってしまうのは、仕方ないのかもしれないか…。
700万画素のコンパクトデジカメで、できるだけ枚数を少なく、かつ、安く済ませようとすると、このへんが限界なのかもしれない。もっとシャープな画を得るためには、
- 解像度の高いデジカメを入手するか、
- 巨大な半球ミラーを入手するか、
- 半球ミラーは諦めて標準レンズで膨大な枚数を時間をかけて撮影するか、
コンパクトデジカメ用の魚眼レンズを入手して、という手もありそうだけど、自分が今使えるデジカメの解像度が少ないので、得られる画像も荒くなってしまうはず。おそらく、デジカメや三脚分をマスクする手間が省ける程度のメリットしかないのであろう気もする。
巷のお店の天井に設置してある万引き予防用半球ミラー、みたいなものを使えれば、遠くから撮影画面いっぱいにミラーを撮影することもできるだろうから、シャープな画像になるだろうけど。その手のミラーは結構なお値段なわけで。下手すると、一眼レフデジカメ+魚眼レンズより高くなりそうな予感。それでは導入する意味が無いよな…。
[ ツッコむ ]
以上です。