いまさら?自作360カメラの作り方 設計編
ayaです。
Advent Calender用の記事です。
insta360やThetaなど、たくさんの360カメラが市販され、自作しなくても良くなりました。
どうしてもこのカメラの画づくりが好きなど、特別なこだわりで360カメラを自作したいときに参考になれば幸いです。
参考にしているのは、こちらの本です。
「この一冊ですべてがわかる!360度VRパノラマ制作 パーフェクトガイド」
https://www.amazon.co.jp/dp/B00O8GIL76
(2012年の本ですが、基本から応用まで網羅しているすごい本です。新しい手法を発明したと思っていても、大抵、この本に書いてあったりします。)
本当に設計するのであれば、記録する解像度や実質的な解像度(画角当たりの解像本数)を決めて、カメラのセンサ解像度や画角と相談し、大まかな台数を決めます。
そのとき気にするのは、画角のオーバーラップ率です。
ステッチすることだけを考えれば、一般的に、オーバーラップ率は20%程度と聞いています。
が、動画のカメラの場合は、20%では足りなくなる可能性があることが注意点だと考えています。
例えば、よくある構成として、HFOV185deg, VFOV120degのカメラを縦向きにして4台使う場合、水平方向は4 x 120 = 480degになるので、480 / 360 - 100%= 33%です。
オーバーラップを検証する場合、PTGuiやAutoPanoなどステッチソフトを使います。例えば、こんな感じのチャートをパワポなどで作って、ステッチソフトに入力します。
等距離射影のレンズの場合、書きやすいです。現実には半径ひずみがあるので、計算するときのマージンをとっておく方がよいです。
PTGuiに入力したときのイメージ画像がこちらです。
UnityやBlenderなどでカメラ出力をレンダリングした画像を入力してみると、ステッチソフトのカメラパラメータの挙動を解析できて面白いです。
さて、前述の注意点というのは、動画で全方向を同時撮影する場合、物理的にレンズのノーダルポイントを一致できず、近い距離でオーバーラップしない部分ができるということです。
ノーダルポイントの影響は、Kolor社のこちらのページのwith parallaxを参照ください。
http://www.kolor.com/wiki-en/action/view/Autopano_Video_-_Parallax_200
パララックスがあるので、被写体の距離が近づくほど、オーバーラップ率が下がり、ある距離でゼロになります。
私はCADや3D CGソフトでビューコーンを並べ、360が破たんしない最短撮影距離を設計的に把握します。
オーバーラップ率を高めにする配慮は、最短撮影距離を小さくするためです。
大型の高性能カメラを使うとパララックスが大きくなりやすいので、最短撮影距離の配慮は特に不可欠だと思います。
以上、基本的なところだけですが、個人的な検討活動の償却になり恐縮です。
次回の作製編に続きます。