はじめに
GoPro HERO10にはGPS受信機が搭載されています.これまで,そのデータを抽出する方法を色々試してみました.
今回は,GoPro HERO10 BlackのGPS性能を試してみます.
電車内での受信性能
試してみるといっても,屋外の条件の良いところではそれなりに受信するでしょうから,今回試したのは電車内での受信性能です.先頭車両の運転室側に張り付いて,GoProで前面展望動画と同時にGPS位置情報が取得できるか試してみました.
結論から言うと,結構ガンバってくれます.使えます.
ただ,トンネルから出た後とか,駅舎の屋根下で衛星を見失った後の再捕捉には若干時間がかかっているかな?という感触です.今度時間のあるときに,スマホGPSや専用機と比べてみたいと思います.
東海道線の栗東~草津間で撮影した動画からGoProExtractorでGPX,KMLを作り,Google mapsとGoogleEarthで見てみます.
左の画像は栗東駅(右上)から草津駅(左下)までの走行経路を地図上にプロットしたものです.これくらいの縮尺なら何ら問題無く使えるレベルかと思いますが,赤丸の部分をGoogleEarthで拡大してみますと,結構線路からズレています.距離にして20m弱くらいかと思います.
これだけズレていても,GoProのGPS出力としては,測位モード(FIX)は3D(3次元測位)で,DOP値は2.5付近でした.この後,段々と線路の方にゆっくりと寄っていきます.寄って行き方は緩慢で,この辺りは受信機によって味付けが変わるところかと思います.
電車内,運転室後部の中央付近での受信であることを考えますと,まずまず良い仕事をしてくれてるように思います.
東海道本線,栗東~草津間でGoProで撮影した前面展望とGPSデータの表示をYouTubeにアップしておきました.
地図上で,左側の線路をきちんとトレースできています.じっくり見ると,数mほど南東よりにずれているようにも見えますが,この程度の用途であれば(自分的には)許容範囲です.
草津駅から先(京都方面)は複々線になるため,駅の手前でポイントを渡って内側線に入りますが,その様子もトレースできています(2:04あたり).
GoProでGPSデータを上手く記録するには
色んな方が紹介されておられますが,上手くきれいなGPSデータを取るコツは以下の通りかなと思います.
- なるべく空の開けた場所で使うこと
- GPSアンテナはGoProの上面にあるので,手で覆ったり,向きを逆にして使わないこと
- 先にGoProの電源を入れておき,GPSマーク(位置ピンのアイコン)が点灯した状態を保っておくこと
気付いたこと
今回は,ホームでGoProの電源をONし,GPSマークが点灯している状態で乗り込んで撮影を開始しました.車内に入ってから衛星を捕捉しようとすると結構時間がかかると思います.
また,今回の動画の長さは2分59秒でした.
一方,GPSデータは約18Hz(1秒間に18回)で記録されていて,最初と最後に記録されている時刻を調べてみますと,
- 動画ファイルに埋め込まれる撮影日時(creation_time):10時56分55秒
- GPS最初の記録:10時56分12.939秒
- GPS最後の記録:10時59分13.949秒
のようになっていました.GPSの方が若干()尺が長いことになります.そこで,記録されているGPSの時刻をみていきますと,以下のようになっていました.
- 1回目:10時56分12.939秒(を先頭に18回記録)
- 2回目:10時56分15.194秒(を先頭に18回記録)
- 3回目:10時56分16.184秒(を先頭に18回記録)
- 4回目:10時56分17.174秒(を先頭に18回記録)
1回目と2回目の記録の間が間隔が広めになっています.そのため,最初の記録を無視するとちょうど動画の尺と同じくらいになりそうなことがわかりました.
この解釈で本当に正しいのかどうか分かりませんが,上の動画は最初のGPS記録を破棄して2回目以降を動画に合わせて表示したものです.
動画の方に記録されている撮影時刻(creation_time,ffprobeで取得可能)でタイミングを合わせようかとも考えましたが,GoProの時計は結構ズレるようで,撮影の度にいちいち時刻合わせをするのは面倒なので,このような対応にしました.