ブログ

【オルソにドローンは要らんのじゃ】デジタル一眼×Droggerでオルソモザイク作成【デジタル一眼RTKフォトグラメトリ】

テスト中の記事です。完成してません。
夏休みの自由研究課題です。


追加記事:【RTKデジカメ】イチ!どこでも実寸フォトグラメトリ【Drogger-RTKシステム】


試作品(Potree Viewer)

完成した3D画像で、実際に計測出来る事をご確認下さい。

土地テスト

http://3d.3ku.jp/potree-1.6/examples/R50823B/R50823B.html

建物テスト

http://3d.3ku.jp/potree-1.6/examples/23112/23112.html

デジタル一眼RTKとは。

Droggerの「cm級」測位性能
×
デジタル一眼の撮影画像処理能力+スマホの位置情報連動機能

それらを掛け合わせれば、原寸大フォトグラメトリの完成じゃ!

どういう事?

どういう事?

下記の画像をご覧下さい。

写真を撮る。それだけで、写真が3次元に!
しかも、実際のサイズを計測出来る、原寸大のデジタルアーカイブが出来るのです。

さらに、オルソモザイクとして出力すれば、従来必要だったドローンも不要になる。
つまり、写真を撮るだけで測量も出来るのです。

は?

は?

ですよね!
私も「は?」です!

フォトグラメトリとは

フォトグラメトリとは、写真からリアルな3次元モデルを生成する技術です。

3次元モデル

しかし、3次元モデルに寸法(スケール)があるかというと、「?」なんです。

現実世界で撮った写真と、精巧なミニチュアモデルを撮った写真は区別が付きません。

なんで?

なんで?

位置情報が足りないから!

その写真にはどこにも位置情報がないの!だからカメラに位置情報を・・・

なので、撮った写真に位置情報を与えてやれば、リアルな3次元モデルの寸法が計測出来るという訳なんです。

じゃぁ、こんなのに位置情報を持たせて写真とればいいじゃん。

マイゾックス-レーザースキャナーターゲット

それはそう!

それはそうなんですが、それをしなくてもいいじゃん!ってのが、「デジタル一眼RTKフォトグラメトリ」って事なんです!

GPSは誤差が多い

でもスマホの位置情報って、何メートルも違うじゃん。

そうですね!だからDroggerGPSを使ってセンチメートルの高精度な位置情報を求めるんです!

DroggerGPSと電子基準点を使えば、位置情報がリアルタイムにcm級で求める事が出来る。
それがRTK測位という手法です。


必要なもの

デジタル一眼カメラ(SONY)

広角単焦点レンズ / APS-C / FE 28mm F2

Drogger RWM

Android端末

アプリ(Creators’App)


どういう仕組みなの?

①スマホの位置情報がDroggerGPSアプリの位置情報に置き換わります。

②DroggerGPSアプリは、RTK測位によって、cm級の高精度測位を実現しています。

③その高精度位置情報を、Creators’Appがデジタルカメラと連動し、撮った写真に位置情報をリアルタイム(0.1秒間隔で更新)※テスト中で付与します。


デジタル一眼RTKカメラver.1.00

両面テープでRWMを貼付けただけ


デジタル一眼RTKカメラver.1.01

カメラシューにGNSSアンテナ(GN-GGB0710)を取付け
RWM本体は下部に貼付け

アンテナ:GN-GGB0710(TOPGNSS社)
L1,L2,G1,G2,BA,B2,B3


デジタル一眼RTKカメラver.1.12


デジタル一眼RTKカメラver.2.01 

RWM付属アタッチメントを使えば、シューマウントを用意するだけで余計な改造は不要!!


EXIFに記録された位置情報の確認

結果

74%の写真は誤差1cm以内に収まる。3cm以内なら100%

テストの内容

10cm毎に写真を撮る。以上。

画像位置情報取得ツールで位置情報を取得

取得した緯度経度から、ChatGPTで各点間距離を計算してもらう。

# New provided coordinates
new_coordinates = [
    (33.004359444444, 130.449065555556),
    (33.004360277778, 130.449065277778),
    (33.004361388889, 130.449065277778),
    (33.004361944444, 130.449065),
    (33.004363055556, 130.449064444444),
    (33.004363888889, 130.449064722222),
    (33.004364722222, 130.449064722222),
    (33.004365555556, 130.449064444444),
    (33.004366388889, 130.449064166667),
    (33.004367222222, 130.449063888889),
    (33.004368055556, 130.449063888889),
    (33.004369166667, 130.449063333333),
    (33.00437, 130.449063333333),
    (33.004370833333, 130.449063055556),
    (33.004371944444, 130.449062777778),
    (33.004372777778, 130.449063055556),
    (33.004373611111, 130.449062777778),
    (33.004374444444, 130.4490625),
    (33.004375555556, 130.4490625),
]

# Convert these coordinates to the plane coordinate system
converted_new_coords = [latlon_to_xy(lat, lon) for lat, lon in new_coordinates]

# Create a dataframe with the converted coordinates
df_new = pd.DataFrame(converted_new_coords, columns=["X", "Y"])

# Calculate distances between consecutive points for the new coordinates
new_distances = [((df_new["X"][i+1] - df_new["X"][i])**2 + (df_new["Y"][i+1] - df_new["Y"][i])**2)**0.5 for i in range(len(df_new)-1)]
new_distances

出力されたものがこちら

  1. 点1と点2の間: 0.094 m (-0.006 m)
  2. 点2と点3の間: 0.122 m (+0.022 m)
  3. 点3と点4の間: 0.065 m (-0.035 m)
  4. 点4と点5の間: 0.129 m (+0.029 m)
  5. 点5と点6の間: 0.094 m (-0.006 m)
  6. 点6と点7の間: 0.091 m (-0.009 m)
  7. 点7と点8の間: 0.094 m (-0.006 m)
  8. 点8と点9の間: 0.094 m (-0.006 m)
  9. 点9と点10の間: 0.094 m (-0.006 m)
  10. 点10と点11の間: 0.091 m (-0.009 m)
  11. 点11と点12の間: 0.129 m (+0.029 m)
  12. 点12と点13の間: 0.091 m (-0.009 m)
  13. 点13と点14の間: 0.094 m (-0.006 m)
  14. 点14と点15の間: 0.124 m (+0.024 m)
  15. 点15と点16の間: 0.094 m (-0.006 m)
  16. 点16と点17の間: 0.094 m (-0.006 m)
  17. 点17と点18の間: 0.094 m (-0.006 m)
  18. 点18と点19の間: 0.122 m (+0.022 m)

0.10m±0.01mに収まっている写真は66.67%
0.10m±0.03mに収まっている写真は94.44


ちなみにスマホ単体の位置情報はこちら

点1と点2の間: 0.000 m (-0.100 m)
点2と点3の間: 3.339 m (+3.239 m)
点3と点4の間: 0.000 m (-0.100 m)
点4と点5の間: 0.000 m (-0.100 m)
点5と点6の間: 0.755 m (+0.655 m)
点6と点7の間: 0.000 m (-0.100 m)
点7と点8の間: 0.288 m (+0.188 m)
点8と点9の間: 0.000 m (-0.100 m)
点9と点10の間: 0.000 m (-0.100 m)
点10と点11の間: 0.589 m (+0.489 m)
点11と点12の間: 0.000 m (-0.100 m)
点12と点13の間: 0.803 m (+0.703 m)
点13と点14の間: 0.000 m (-0.100 m)
点14と点15の間: 0.000 m (-0.100 m)
点15と点16の間: 0.458 m (+0.358 m)
点16と点17の間: 0.000 m (-0.100 m)
点17と点18の間: 0.283 m (+0.183 m)
点18と点19の間: 0.000 m (-0.100 m)


Excelで計算

=2*6371000*ASIN(SQRT(SIN((RADIANS(VALUE(SUBSTITUTE(A3, " N", "")))-RADIANS(VALUE(SUBSTITUTE(A2, " N", ""))))/2)^2 + COS(RADIANS(VALUE(SUBSTITUTE(A2, " N", "")))) * COS(RADIANS(VALUE(SUBSTITUTE(A3, " N", "")))) * SIN((RADIANS(VALUE(SUBSTITUTE(B3, " E", "")))-RADIANS(VALUE(SUBSTITUTE(B2, " E", ""))))/2)^2))

テスト環境を整えて、再度検証

結果
3cm以内のデータ 100%
(内1cm以内は74%)

単管パイプにメジャーシートを貼付け

カメラのマーキングに合わせて、10cm間隔で撮影。
撮影時間のインターバルは3秒前後

記録時間緯度経度列1列2
16:48:1533.004360277778 N130.449064166667 E前点との点間距離10cm基準との差
16:48:2033.004361388889 N130.449064166667 E0.1240.024
16:48:2333.004362222222 N130.449064166667 E0.093-0.007
16:48:2633.004363055556 N130.449063888889 E0.096-0.004
16:48:2833.004363888889 N130.449063611111 E0.096-0.004
16:48:3133.004364722222 N130.449063611111 E0.093-0.007
16:48:3433.004365555556 N130.449063333333 E0.096-0.004
16:48:3733.004366666667 N130.449063333333 E0.1240.024
16:48:4033.0043675 N130.449062777778 E0.1060.006
16:48:4233.004368333333 N130.449062777778 E0.093-0.007
16:48:4633.004369166667 N130.4490625 E0.096-0.004
16:48:5133.00437 N130.4490625 E0.093-0.007
16:48:5333.004370833333 N130.449062222222 E0.096-0.004
16:48:5633.004371944444 N130.449061944444 E0.1260.026
16:48:5833.004372777778 N130.449061944444 E0.093-0.007
16:49:0133.004373611111 N130.449061666667 E0.096-0.004
16:49:0433.004374722222 N130.449061388889 E0.1260.026
16:49:0933.004373888889 N130.449061666667 E0.096-0.004
16:49:1233.004372777778 N130.449061666667 E0.1240.024
16:49:1533.004371944444 N130.449061944444 E0.096-0.004
16:49:1733.004371111111 N130.449061944444 E0.093-0.007
16:49:2133.004370277778 N130.4490625 E0.1060.006
16:49:2433.004369444444 N130.4490625 E0.093-0.007
16:49:2733.004368333333 N130.449062777778 E0.1260.026
16:49:3033.0043675 N130.449062777778 E0.093-0.007
16:49:3333.004366666667 N130.449063055556 E0.096-0.004
16:49:3533.004365833333 N130.449063333333 E0.096-0.004
16:49:3833.004365 N130.449063611111 E0.096-0.004
16:49:4033.004363888889 N130.449063888889 E0.1260.026
16:49:4433.004363055556 N130.449063888889 E0.093-0.007
16:49:4633.004362222222 N130.449064166667 E0.096-0.004
16:49:4933.004361388889 N130.449064444444 E0.096-0.004
16:49:5333.004360277778 N130.449064444444 E0.1240.024
16:49:5833.004361388889 N130.449064444444 E0.1240.024
16:50:0133.004362222222 N130.449064166667 E0.096-0.004
16:50:0333.004363055556 N130.449063888889 E0.096-0.004
16:50:0633.004363888889 N130.449063888889 E0.093-0.007
16:50:0833.004364722222 N130.449063333333 E0.1060.006
16:50:1133.004365833333 N130.449063333333 E0.1240.024
16:50:1333.004366666667 N130.449063055556 E0.096-0.004
16:50:1633.0043675 N130.449062777778 E0.096-0.004
16:50:1933.004368333333 N130.449062777778 E0.093-0.007
16:50:2133.004369166667 N130.4490625 E0.096-0.004
16:50:2433.00437 N130.449062222222 E0.096-0.004
16:50:2633.004371111111 N130.449061944444 E0.1260.026
16:50:2933.004371944444 N130.449061944444 E0.093-0.007
16:50:3233.004372777778 N130.449061666667 E0.096-0.004
16:50:3533.004373611111 N130.449061666667 E0.093-0.007
16:50:3933.004374444444 N130.449061388889 E0.096-0.004
16:50:4233.004373611111 N130.449061388889 E0.093-0.007
16:50:4433.004373055556 N130.449061666667 E0.067-0.033
16:50:4633.004371944444 N130.449061944444 E0.1260.026
16:50:5033.004371111111 N130.449061944444 E0.093-0.007
16:50:5333.004370277778 N130.449062222222 E0.096-0.004
16:50:5633.004369166667 N130.4490625 E0.1260.026
16:50:5833.004368333333 N130.4490625 E0.093-0.007
16:51:0133.0043675 N130.449063055556 E0.1060.006
16:51:0333.004366666667 N130.449063055556 E0.093-0.007
16:51:0633.004365833333 N130.449063333333 E0.096-0.004
16:51:0833.004364722222 N130.449063333333 E0.1240.024
16:51:1033.004363888889 N130.449063611111 E0.096-0.004
16:51:1433.004363055556 N130.449063888889 E0.096-0.004
16:51:1733.004361944444 N130.449063888889 E0.1240.024
16:51:1933.004361388889 N130.449064166667 E0.067-0.033
16:51:2233.004360277778 N130.449064166667 E0.1240.024
16:51:2433.004361111111 N130.449064166667 E0.093-0.007
16:51:2833.004362222222 N130.449064166667 E0.1240.024
16:51:3033.004363055556 N130.449063888889 E0.096-0.004
16:51:3333.004363888889 N130.449063611111 E0.096-0.004
16:51:3533.004364722222 N130.449063333333 E0.096-0.004
16:51:3833.004365555556 N130.449063333333 E0.093-0.007
16:51:4133.004366666667 N130.449063055556 E0.1260.026
16:51:4433.0043675 N130.449063055556 E0.093-0.007
16:51:4733.004368333333 N130.449062777778 E0.096-0.004
16:51:4933.004369166667 N130.4490625 E0.096-0.004
16:51:5333.004370277778 N130.449062222222 E0.1260.026
16:51:5633.004370833333 N130.449061944444 E0.067-0.033
16:51:5933.004371944444 N130.449061944444 E0.1240.024
16:52:0133.004372777778 N130.449061666667 E0.096-0.004
16:52:0433.004373611111 N130.449061388889 E0.096-0.004
16:52:0733.004372777778 N130.449061666667 E0.096-0.004
16:52:1033.004371944444 N130.449061944444 E0.096-0.004
16:52:1233.004370833333 N130.449061944444 E0.1240.024
16:52:1533.004370277778 N130.449062222222 E0.067-0.033
16:52:1733.004369166667 N130.4490625 E0.1260.026
16:52:2033.004368333333 N130.4490625 E0.093-0.007
16:52:2333.0043675 N130.449062777778 E0.096-0.004
16:52:2633.004366666667 N130.449063055556 E0.096-0.004
16:52:2833.004365833333 N130.449063333333 E0.096-0.004
16:52:3133.004364722222 N130.449063333333 E0.1240.024
16:52:3433.004363888889 N130.449063611111 E0.096-0.004
16:52:3633.004363055556 N130.449063888889 E0.096-0.004
16:52:3933.004362222222 N130.449064166667 E0.096-0.004
16:52:4133.004361388889 N130.449064166667 E0.093-0.007
16:52:4433.004360277778 N130.449064444444 E0.1260.026
16:52:4733.004361111111 N130.449064166667 E0.096-0.004
16:52:4933.004361944444 N130.449064166667 E0.093-0.007
16:52:5233.004363055556 N130.449063888889 E0.1260.026
16:52:5433.004363888889 N130.449063611111 E0.096-0.004
16:52:5733.004364722222 N130.449063333333 E0.096-0.004
16:53:0033.004365833333 N130.449063333333 E0.1240.024

Creators’Appの位置情報連動

Creators’Appのアプリから、カメラに接続する。

※Android端末のBluetooth設定からは接続しない事。
上手くいかない場合は、カメラ側もAndroid端末側もペアリングを解除し、Androidを再起動させてから最初から。

https://knowledge.support.sony.jp/electronics/support/articles/CCCA06002

Creators’Appのアプリから、カメラに接続できたら。


関連記事

  1. 【テスト用mini三脚】チョイRTK用三脚【シンワ短脚+下げ振り…
  2. (DroggerGPS)RWPで杭探し(現場編)
  3. 【GNSS関連用語】DroggerとかGNSSの研修に行く前にな…
  4. 【1級GNSS測量機:登録番号235】Drogger3周波で公共…
  5. (3周波基準局)【①確認・準備】mosaic×ラズパイ=mosa…
  6. 3周波RTK基準局購入品
  7. 簡単!Droggerでマイ電子基準点②観測データのロギング
  8. 参-受信機に接続(septentrio mosaic-x5)トラ…

コメント

    • PIEROT
    • 2023年 9月 28日 8:56am

    ドローン要らずということで大変興味があるのですが、カメラはSONY製でないと難しいですかね。
    別メーカーのカメラは持っているのですが、Droggerの情報をカメラへ送るにはそれなりのアプリが必要ということですよね。
    となるとスマホもそのアプリに対応できるもの、となりますかね。SONYへお布施するのは若干の抵抗が・・・(汗)

  1. カメラで撮った写真のExif情報に、正確な位置情報を付加する事が目的ですので、
    お持ちのカメラの専用アプリに、位置情報を付加する機能があれば同じ事が出来ると思います。
    SONYのアプリでも、位置情報やGPSの時刻は付加出来るのですが、高度は記録されないし、パン・チルト・ヨーといったカメラの角度も記録されないし、
    SONYでも、満足いくものではないです。
    逆に、他のメーカーの位置情報連動の性能を知りたいです。

      • PIEROT
      • 2023年 9月 28日 8:41pm

      ご返答ありがとうございます。
      手持ちのカメラで同様のことができるかどうか調べてみたいと思います。
      ただちょっと古いものなので難しいかな。

  1. この記事へのトラックバックはありません。

PAGE TOP