Ladybugカメラでの外部GPSデバイスの使用
サポート対象製品
Ladybug5+
Ladybug6
概要
Ladybugライブラリには、GPSデバイスと連携し、NMEA文データをLadybug画像に挿入する機能があります。後で抽出したデータを使用して、Googleマップとして表示可能なHTMLデータ、またはGoogle Earthにロード可能なKMLデータとして生成できます。
注:Ladybugカメラには、画像のタイムスタンプをGPS時間と同期できる毎秒パルス(PPS)機能があります。PPSを使用してGPS時刻に同期する方法については、PPSを使用して外部GPSと同期するを参照してください。
GPSデータの操作
GPSレシーバーをLadybugカメラと組み合わせて使用すると、ストリームファイルにGPSデータを記録したり、GoogleマップまたはGoogle Earthファイルを生成したり、GPSータファイルをダウンロードしたりできます。
指定した距離の後にGPSの位置が変わった場合は、画像を録画してファイルをストリーミングできます。この機能は、Ladybug APIを使用して使用できます。詳細については、ladybugSimpleRecordingの例を参照してください。
LadybugでGPSレシーバーを使用する場合は、次の点に留意してください。
- GPSレシーバーには、ノートパソコンと接続するためのシリアルまたはUSBインターフェイスがあり、NMEA 0183データをリアルタイムでストリーミングできる必要があります。
- 信頼できるデータを提供するために、GPSデバイスは少なくとも3つの衛星との接続を示す必要があります。
- GPSデバイスをPCに初めて接続してから、認識され、LadybugCapProで使用できるように設定されるまでに時間がかかる場合があります。
- 次のGPS NMEAデータ構造がサポートされています。GPGGA、GPGSA、GPGSV、GPRMC、GPZDA、GPVTG、GPGLL
LadybugCapProでのGPSの使用
GPSレシーバーの設定
GPSデータをキャプチャする前に、メインツールバーのLadybugCapProオプションボタンを使用して、GPSレシーバーと通信するための基本設定を指定します。
制御 | 説明 |
ポート番号 | GPSレシーバーが接続されているポート ポートを決定するには、Windows Device Managerでポートノードを展開します。LadybugCapProは、起動時にこの設定を自動的に検出しません。 |
ボーレート | GPSレシーバーがPCと通信するシグナリングイベント速度 このレートは、GPS装置がサポートするものによって制限されます。NMEA 0183規格は、デフォルト値の4800をサポートします。 |
データ更新間隔 | 位置データがGPSからPCに更新される時間間隔 このレートは、GPS装置がサポートする最大まで設定できます。デフォルト値は1000msです。 |
LadybugCapProの起動時にGPSを起動する | オンにすると、LadybugCapProアプリケーションがライブカメラモードで起動するとすぐに、GPS装置は既存の設定を使用して位置データを送信するよう指定します。 |
Googleマップの高さ/Googleマップの幅 | 生成されるGoogleマップの寸法を指定します。これらの寸法は、マップでカバーされる領域の解像度ではなく、その領域の量に影響します。 |
GPSデータの記録とマップファイルの生成
GPSレシーバーを設定したら、GPSツールバーを使用してGPSデータを記録し、GoogleマップまたはGoogle Earthファイルを生成する準備が整います。
- アイコンをクリックして、GPS装置から位置データを受信し始めます。ストリームファイルのキャプチャと併用すると、GPSデータはストリームファイルとともに保存されます。この制御は、記録されたストリームモードでは利用できません。GPSの記録を停止するには、もう一度クリックします。
- アイコンをクリックして、以前にストリームファイルで記録されたGPSデータからGoogleマップファイルを作成します。これにより、読み込むオプションも可能になります。ファイルを表示するにはインターネット接続が必要です。Googleマップは、Ladybugインストールディレクトリのbinフォルダに.htmlファイルとして保存されます。この制御は、画像キャプチャモードでは利用できません。
- アイコンをクリックして、ストリームファイルで記録されたGPSデータからGoogle Earthファイルを作成します。これにより、読み込むオプションも可能になります。ファイルを表示するには、Google Earthアプリケーションとインターネット接続が必要です。Google Earthファイルは、Ladybugインストールディレクトリのbinフォルダに.kmlファイルとして保存されます。この制御は、画像キャプチャモードでは利用できません。
記録されたストリームファイルの各フレームのGPSデータを含むデータファイルをダウンロードすることができます。GPSメニュー項目から、[GPS/フレーム情報の生成]を選択します。ファイルが生成されると、ファイルの場所がダイアログボックスに表示されます。
Ladybug APIでのGPSの使用
コードの例については、ladybugSimpleGPSの例を参照してください。例には以下からアクセスできます。
スタートメニュー -> ポイントグレイLadybug SDK-> 例
GPS COMポートの検出
GPS機能を使用するには、GPSデバイスを使用する必要があります。GPSデバイスが接続されているCOMポートがわかっている必要があります。ポートを決定するには、次の手順を実行します。
- [マイコンピュータ]を右クリックします。
- [ハードウェア]タブをクリックし、[デバイスマネージャー]ボタンをクリックします。
- 「ポート(COMとLPT)」ノードを展開し、GPSデバイスがマッピングされているCOMポートをメモします。
GPSデータの記録とマップファイルの生成
次の手順では、LadybugライブラリのGPS機能の使用方法の概要をを簡単に説明します。
1. ladybugCreateGPSContext()を呼び出してGPSコンテキスト(LadybugGPSContext)を作成します。これは、Ladybugカメラコンテキストの作成と同時に行うことができます。
2. LadybugRegisterGPS()を呼び出して、LadybugカメラのコンテキストにGPSコンテキストを登録します。1つのGPSコンテキストを複数のLadybugカメラコンテキストに登録できます。
3. ladybugInitializeGPS()を呼び出してデバイスを初期化します。
4. ladybugStartGPS()を呼び出してGPSデバイスを起動します。これは、ladybugStart()が呼び出されたときに呼び出されり場合があります。GPSデータが利用可能になるまでに約5秒かかります。
5. 画像取得がアクティブになると、画像取得にはいくつかのオプションがあります。オプションは次のとおりです。
GPSデバイスまたはLadybugImageからNMEAデータを取得する
ladybugGetGPSNMEADataまたはladybugGetGPSNMEADataFromImage 機能を使用して、GPSデバイスまたはLadybugImageから単一のNMEA文を取得できます。必要な値のセットが小さい場合(たとえば、緯度と経度のみ)、通常はこれで十分です。
すべての文が必要な場合は、ladybugGetAllGPSNMEADataまたはladybugGetAllGPSNMEADataFromImageを呼び出すと、LadybugNMEAGPSData構造にサポートされているすべてのNMEA文(利用可能な場合)が入力されます。
各NMEA構造には、bValidDataと呼ばれるブール値があります。この値は、その構造に含まれるデータが有効である場合にのみ trueになります。
LadybugImageInfo構造からGPSデータを取得する
JPEGモードで画像を取得する場合、各LadybugImageで充てんさえたLadybugImageInfo構造を利用できます。GPS機能が有効な場合、次の値が入力されます。
- dGPSAltitude
- dGPSLatitude
- dGPSLongitude
これらの値のいずれかがLADYBUG_INVALID_GPS_DATAと等しい場合、それらは無効であると見なされます。
6. 画像の取得が完了したら、ladybugStopGPS()を呼び出して、GPSデバイスからのデータ取得を停止します。
7. ladybugUnregisterGPS()を呼び出して、GPSコンテキストの登録を解除します。
8. ladybugDestroyGPSContext()を呼び出して、コンテキストを破棄します。
9. ストリームコンテキストがすでに読み取り用に初期化されている場合は、関連するLadybugGPSFileTypeでladybugWriteGPSSummaryDataToFileを呼び出して、ストリームファイル全体のGPSデータを生成します。