デジカメで三角測量 (1)
デジカメで撮った写真をもとに被写体の位置を特定しようというのがテーマです。
これは方位角・高度あるいは赤経・赤緯を方向余弦に変換すれば星野写真を撮ったときの未知の天体の方位角・高度、赤経・赤緯を求めることにも使えます。そしてそういう目的であれば「関連係数法(1) 」に書いた方法より精度が高い方法です。
-----
今回は被写体の座標から画像上の位置を求める計算方法について書きます。
-----
ところでなぜこんなテーマで記事を書き始めたかというと
「惑さんのワクワク天体観察日記 - 横切るターゲットの速度を求めるには? 」
「惑さんのワクワク天体観察日記 - 横切るターゲットの速度を求めるには?2」
がきっかけです。
ひと様の記事にさんざんいちゃもん(?)をつけた以上自分だったらこうするというのを書かなきゃまずいだろうと思ったからです。
----
カメラの焦点距離(厳密にはレンズ主点からセンサーまでの距離)をf、センサーのサイズをْDX、DY、センサーのピクセル数をPX、PYとします。
直交座標を考えカメラ(正確にはレンズ)を原点O(0,0,0)に水平におきP(x,y,z)にある点がセンサー上の(px,py)のところに写ったとします。
センサー上の座標は画像の左上(つまりセンサーの右下)を原点としx軸は右向き、y軸は左向きと考えるとカメラの原理から次の式が成り立ちます。
y / x = ( PX/2 + 1/2 - px ) * DX/PX / f
z / x = ( PY/2 + 1/2 - py ) * DY/PY / f
-------
ここでカメラが原点ではなく高さH(z=H)のところにあるとします。上の式で
z' = z - H
をzのかわりに使うことになります。
さてカメラがx軸の方向ではなく( x-y平面上で時計回りに測って)方向 yaw を向いているものとします。座標系をz軸の回りに yaw だけ回転した新たな座標P1に対して上の式が使えます。
このことを次のように表します。
P1 = Rz(yaw) P
次にカメラに仰角=ピッチ(pitch)があるとします。これは 座標をy軸の回りに pitch だけ回転することを意味しており、
P2 = Ry(pitch) P1
と表します。
最後にカメラに傾き=ロール(roll)があるものとします。これはx軸回りの回転ということになりますので
P3 = Rx(roll) P2
です。
まとめると高さを補正した被写体のある点Pに対して
Rx(roll) Ry(pitch) Rz(yaw)P
を計算し最初の式を使えば点Pの画像上の位置がわかることになります。
さてここで問題になるのは一般的にはカメラの高さ、ヨー、ピッチ、ロールはわからないことです。ヨーは方位磁石で測り、ピッチやロールは水準器(あるいはカメラ内蔵の電子水準器)を使って0にしたり、分度器等を使って測ることができるようにも思えますがトランシット(セオドライト)のように精度よく水平を保つというのはなかなかたいへんだと思います。
つまり実際にはカメラに写った位置がはっきりした点の画像上の位置からカメラの高さ、ヨー、ピッチ、ロールを求め、それを元に未知の点の座標(方向)を求めるという手順を踏むことになります。
もちろん一枚の写真から求まるのは未知の点の方向であり、その座標を求めるためには少なくとも二枚の写真が必要になります。
なお天体の場合は方向さえわかればいいので一枚の写真でじゅうぶんです。
計算例を示します。
このExcelファイルはこれからの記事でダウンロードできるようにします。
センサーのサイズは
「アンタレスのデジカメ部屋 - 画像(イメージ)センサー・(CCD・CMOS)の大きさ比較」
を参考にさせていただきました。
これは次の写真の右にあるポールの水位を示す目盛を“参照点”にしています。
ポールまでの距離が4.605mととかカメラの傾きが-1.3度とか妙に測定条件の精度が高いように見えますが、これは写真を分析した結果から得られたものです(より精度の高い分析をしたらこの数値も違っていましたが....)
なお上のExcelのシートでの計算はとうぜん
・ポールは鉛直に建てられている。
・ポールの目盛は精度よくつけられている。
ということを前提にしています。
(「デジカメで三角測量 (2)」に続く)
« はくちょう座デネブ (9) - アラビア語の星 | トップページ | デジカメで三角測量 (2) »
「カメラとレンズ」カテゴリの記事
- (私の)デジカメ二十年史 (1)(2016.04.24)
- デジカメのこんにゃく現象の写し方・起こし方(2016.01.04)
- デジカメ PENTAX Q7 のセンサーサイズを実測してみた(2014.11.01)
- 星野写真の星像の明るさは何で決まるのか?(2014.10.28)
- ISO値の設定によるラティチュードの違い(2014.10.27)
この記事へのコメントは終了しました。
コメント