入社準備などがあり,全然投稿していませんでした!w
毎週日曜更新とか大嘘付いてしまったな・・・.
今回は前に話した3Dとステレオ視の続きにあたります.
本記事では,米国NVIDIA社製の3D VISION (シャッタ式メガネ)とC言語,OpenGLを採用してステレオ立体視視表現を実現します.
まず,そもそもなぜ物体が立体的に見えるかです.
ステレオ立体視では両眼視差を利用して実現しています(上記画像参照).
これを理解しなければ何をしているのかが分かりません!
ここで両眼視差という言葉が出てきましたが,なんのこっちゃ分からないYO!という方がいるはずです.
両眼視差とは,人間がある対象物を見たとき,2つの眼球は視点が異なるため,それぞれ異なった見え方をします.
これにより,この2つの画像の差異から脳が空間の再構築を行うことで,対象物が立体的に見える現象のことです.
さあ両眼視差を理解したところで,この両眼視差をどうやってディスプレイで表現するかですか,これには様々な手法があります.
その中でも,今回は3D VISIONを採用します.
ディスプレイに両眼用の画像を交互に描画する必要があります.
しかし,両眼で同じ画像を見ても意味がありません.
そこで,3D VISIONを用いて左眼用の画像を描画している際には右眼をシャッタで隠し,同様に右眼用の画像を表示しているときは左眼をシャッタで隠します.
これにより,左右の両眼が別々の画像を見ることによって,ステレオ視が実現します.
ディスプレイ側に細工をする裸眼立体視と比べると,メガネを用いた場合は飛び出るような感じの立体視ですが,裸眼は奥行きを感じる立体視であると感じます.
また,3D VISIONの様なシャッタ式では,FPSを倍にすることでクオリティを維持していますが,裸眼は横軸に縦一列の黒線を加えることで横軸の解像度が半減してしまいます.
そのため,裸眼ステレオ視対応のディスプレイでは横の解像度が通常の倍の画素数にしてクオリティを維持しています.
どうでしょうか?
難しそうですがそんなに難しいことはありません!
長くなってしまったので,実際のプログラムについて次回にしたいと思います.
by 未承認 2013年01月12日(土)16時01分 編集・削除
管理者に承認されるまで内容は表示されません。