« 乳Model。 Model を作るプラグイン。 | トップページ | 墓場にのびボーンを埋葬。 »

2008年6月23日 (月)

アオリ補正。










アオリ補正の作業を少し楽にできないかなーと思ってツー ルを作っているんだけど、そのアオリ補正の話を少し。




先細りになっていない。垂直線はどこまでも垂直。


こういう絵、CGで簡単に作れますか。
あるいは、普通に写真撮れますか。


建築の写真やCG、あるいはアニメの背景画などによくあるパース。アオっているにも関わらず、先細りにならない絵。

先細りにならないということは、もともと地面に対して垂直なラインが、画面上で実際に垂直になっているということになります。









ロングレンズ(長玉)。 先細りは弱まったけど、そもそもこーゆー絵が欲しいのではない。

先細りにしないためにはロングレンズを使う=狭い視野角 (FOV)にするのもひとつの手ですが、そもそもそれは意図した絵と違う。ロングレンズの圧縮されたパースが欲しいわけではないっす。欲しいパースを得る ためにはある程度以上ワイドのレンズを使う必要があるっす。






アオリ補正しないと永遠に先細りのまま。

で、最初の画像の感じにしようと思って XSI上でレンズの視野角(FOV) いじったり、SキーZキーなどを総動員してカメラ位置や向きをいろいろいじっても、左の画像のような感じになるだけで、永遠に上の画像のパースにはならな いはずです。アオリ補正しないと無理っす。










新築分譲マンション の広告写真など建築パースの世界ではおそらく、先細りになると見栄えが悪いと認識されているのかな。まあそりゃそうだよな。  先細りを避けるにはアオら なければいい。でもアオらないと写真に建物全体がおさまらない。アオらずに建物全体をおさめるためにはカメラ位置を引くしかない。でも撮影場所の物理的な 制約で引きが取れない(後ろに下がれない)。 建物全体を入れないわけにはいかないから、引きが取れないならアオるしかない。アオると先細りになる。先細 りはヤダ。以下永久ループ。


なのでこういう時にアオリ補正をするわけで。


アニメの背景画の場合は、もちろん建築の例と同じく見栄えの問題もあるだろうけど、おそらく最大の要因は、ヨコ長やタテ長に描いた絵を2D的にタテヨコに 引くことに よってカメラの動きを表現する、いわゆる 2D-PAN を多用せざるを得ないからでしょう。 先細り的パースが付いている絵で 2D-PAN したらとても不自然な画面になりやすいですな。 画面の端に行くほど傾きは強くなるので、ある程度以上ワイドレンズな絵を真面目に描いたら、ヨコ長の端っ この方はとんでもなく傾いた線が出現するわけで、んなもん 2D-PAN したらヒッチコックさんやキューブリックさんが喜びそうな絵になっちまう。 ってことでワイドレンズにしつつも先細りパースを殺した絵を描くわけですね。 結果的にアオリ補正と似たようなことになってますね。たぶん。






じゃあ具体的にどう すればいいのか。

まず、被写体の垂直な線が写真上でも垂直になるための大前提として、
カメラがティルト(rot x)して はいけない。

つまりアオリでもフカンでもなく、カメラが地面と水平でなければいけない。
別の言い方をすると、「レンズとフィルム面を結ぶ直線」 と 「地面に対して垂直な線」  が、直角でなければいけない。
わかりにくいな。 要は、見上げも せず見下ろしもせず、まっすぐ前を見た状態ってことですな。

今手元にカメラを持っている人は、ファインダをのぞいてみればわかりますね。例えばビルのタテの線とか窓枠のタテの線など「地面に対して垂直」な線は、カ メラをまっすぐ水平に構えれば、レンズの焦点距離(視野角)に関係なく、また、カメラをどの方向に向けていても(上下は固定のまま)、永遠に垂直ですね。   レンズのディストーションはまた別の問題としてね。


あるいは XSI のカメラでももちろん同じなので、やってみればわかりますね。 右の画像。

cube でも取り出して適当に配置し、カメラを完全に水平にする。

こうすると、どんなにワイドレンズでも(FOV値が大きくても)、水平方向のどの方向に向いていても cube のタテの線は永遠に画面の中で垂直です。

しつこいようですが上下はもちろん固定ですよ。カメラ が水平でなければいけないので。



でもこうすると当然、ビルなどのタテに長い被写体は全体が写真に入らなくなったりするわけで。
そこでレンズの上下位置をシフトさせて、レンズとフィルムを結ぶ直線 をナナメにしてやると、被写体の垂直な線は垂直なまま、上の方まで画角に入ってくるわけですね。 レンズの上下位置が変わっても、レンズ面そのものは地面 に対して垂直を保っているので、被写体の垂直 線も変わらないまま写るわけですね。


実際の機材の話だと、大判カメラを使ってレンズとフィルム面を平行にずらす(シフトする)こと によって実現しますね。蛇腹が付いたカメラのレンズ面を上に上げる操作ですね。 これは ライズ と呼ばれていますね。

実は大判カメラはいじったことがないので本やインターネットで勉強した知識だけで言ってますが・・・。







スヴァらしくわかりやすい説明がありました。
大判カメラ写真教室。
http://www.komamura.co.jp/lecture/index.html


ウィキペディアの説明も写真入りでわかりやすいですね。
http://ja.wikipedia.org/wiki/%E3%81%82%E3%81%8A%E3%82%8A_%28%E5%86%99%E7%9C%9F%29


大判カメラじゃなくても、ベローズユニットってのを使えば 35mm一眼でもできるのかな。
http://zeiss.hp.infoseek.co.jp/na-bellows.htm





で、XSI でこれをやりましょう。




右の画像は上の3枚目と同じです。
アオリによって先細りパースになっている状態。
ここからスタートします。





アオリのカメラ。これを水平にしてやる。

このカメラをヨコから見ると、こうなっています。
アオってます。

カメラを水平にしないと被写体の垂直線が垂直に写らないので、まずはこれを修正。






Camera と Interest が同じ Y ポジション=水平

修正って言っても、超簡単。 Camera 自身の Y ポジションの値をコピーして、Interest の Y ポジションにペーストしてやるだけ。 これで、カメラ位置は変えないまま、世界に対して水平なカメラになる。

もし Interest の無いカメラであれば、rot x をゼロにすればよろし。






垂直になったのはいいが、建物が入ってなきゃ意味ねえぞゴルァ。

そのカメラから見た画像。

カメラが水平になったおかげで、建物の垂直線は完璧に垂直になった。

でもこのままでは建物が画角におさまっていない。
今度はこれを修正しないと意味ない。






これじゃ意味ねえんだよゴルァ

← カメラを水平に保ったまま位置をまるごと上にずらすんじゃダ メっすよ。 垂直は保たれてるけど、これじゃアオリの絵にならない。意味ないっす。







そこで、Camera と Interest の位置は変えないまま、レンズ面を上へシフト=ライズします。

カメラのプロパティの2つめのタブで Projection Plane をオンにして、一番下の Optical Center Shift の Y をいじってやりましょう。画角の中に入ってくるものがどんどんずれていきます。 

Optical Center Shift = 直訳すれば 「光学系の中心をずらす。」 うーむ。直訳が一番わかりやすい。


ためしに日本語 XSI でどうなってるのか見てみたら「オ プティカルセンター変動」。 うーむ、なんとも中途半端というか違和感のある日本語だ。相変わらずですねこのローカライズぶりは。この部分 のヘルプの 日本語記述も何やら怪しいぞ。わかって書いてますか翻訳者のあなた。そう、あなたです。 けけけけ。


Optical Center Shift はちょっといじっただけで大幅に変わるんだよねえ。 Shift 押しながらスライダをドラッグするか、数値を手打ちで入れましょう。






アオリ補正完了。 垂直線は完璧に垂直のまま、建物はちゃんと画面におさまっている。

建物が画面におさまるまでライズしてやれば、めでたく垂直線を 保った絵の出来上がりっす。アオリ補正っす。

レンズ面を平行にずらしているわけであって、カメラを上下に振っているのではないことに注意ですね。また、カメラ自身の位置も変わっていません。

ワイドなレンズで貼ったカメラプロジェクションマップのUVを見たことがある人ならばわかるでしょうが、あの永遠に広がるパースの一部分をカメラの画角で 切り取ってのぞいている状態と同じですね。切り取る位置を Optical Center Shift の X と Y をずらして移動させて行く、というのと同じだと思います。






完璧な垂直は違和感あるので、若干先細りを復活させて、一応完成。

でも、完全にティルト無し=完璧な垂直 は 少し違和感が強い気がするな。少しはナナメ線が出てきた方が落ち着くと思う。
ってことで若干先細りを復活させる。

ま、これは絵作りの意図によるので、唯一の正解はもちろんありません。








建築パースCGな人は、これがないと話にならないんじゃないんですかね? どうなんでしょう。



・・・・と、色々とエラソーに書きましたが実は、昔はアオリ補正の概念を知らず、垂直線がパースで先細りし過ぎることに不満を持ちつつもCGのカメラって ものはそういうもんだと勝手に思い込んで作っていました。 Max だったかな、このアオリ補正の機能があると誰かに聞いて、いいなあと思っていました。 その後 Optical Center Shift を知り、いじり始めた頃はこれで調整できる! と思っていたけどしくみをちゃんと理解していなかったので、当てずっぽうでした。 カメラや写真のことを勉 強していくうちに、だんだんわかってきた感じであります。


で、そんなときに XSI Base のこのスレッドに出会いまして。
http://www.xsibase.com/forum/index.php?board=6;action=display;threadid=27539

ああ、やっぱり Octical Center Shift するのね。なーんだ、簡単にできるじゃん、とわかり、概念もまさに写真のそれと同じだったので、ようやく頭の中でつながったのでした。そんなに昔のことで はありませ ん。このスレッドを立ててくれたどこぞの外人さんに感謝します。



-----------------------------------

本物のカメラや写真やフィルムをいじらずにCGのカメラばかりいじっていると、やっぱりダメなんだよなあ。俺もCGから入ったからなあ。 でも大 判カメラはなかなかいじる機会がないんじゃないの。いくらするんだろう。 デジタルなら、やはりデチイチにベローズかますことになるんだろうか。誰かやっ たことある人教えてください。



で、上記一連のアオリ補正作業を少し楽にしようとして(ま、もともと大した作業じゃないので効果は薄いけど)、スクリプトを書いてました。ほぼできあが り。ちょっとだけ工数が減る。ちょっとだけね。 そのうちここに載せます。たぶん。









|

« 乳Model。 Model を作るプラグイン。 | トップページ | 墓場にのびボーンを埋葬。 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: アオリ補正。:

« 乳Model。 Model を作るプラグイン。 | トップページ | 墓場にのびボーンを埋葬。 »