画像の位置を表示・変更するには~マップ(darktable3.0第63回)

RAW画像の位置のデータ

Jpeg画像には、Eixfという画像データ以外のデータを記載する部分があります。ここには、絞り、シャッター速度、カメラ名、レンズはどのデータが記載されています。

Rawファイルは、カメラ各社の独自フォーマットなので、Jpegのように共通規格はありませんが、各社のRAWファイルは現像するとJpegになるため、JpegExifに必要な情報を含んでいます。つまり、RAWファイルにも、Eixfがあると考えてよく、Exifに東経と北緯の位置情報を与えることができます。ただし、データフォーマットは、各社の考え方で異なります。

RAWファイルのExifに位置情報記録する方法には、次の3つがあります。

  1. GPS内臓のデジタルカメラをつかう。または、デジタルカメラ専用のGPSをカメラと併用する。

  2. デジタルカメラとスマートホーンを連動させ、スマートホーンの位置情報を画像ファイルに書き込む。

  3. 専用のGPSデジタルカメラを使い、パソコンの上で時刻をもとに、同期をとって、画像ファイルに位置情報を書き込む。

1の方法の長所はカメラの向きが記録されることです。また、機材はカメラだけなので、身軽になります。カメラの位置の記録だけであれば、1,2,3のどの方法も可能です。ただし、位置の精度と受信性能は機材により異なります。スカートホーンは、携帯している場合が多いので、2の方法でも、機材は、ほぼカメラだけといえます。ただし、この方法は、カメラとスマートホーン双方の電池消耗を加速させます。一方、3の方法は、カメラ以外にGPS受信機を携帯することになり、機材の量が増えてしまいます。スマートホーンの場合には、GPSが受信できない街中では、通信電波の強弱により位置推定をすることができますが、その場合の位置精度はGPSより劣ります。

 

なぜ、デジカメから位置情報が消えたのか

GPSデジタルカメラが増えた時期は、2013から2015年頃で、ニコンであれば、D5300、P340、Coolpix S9900が出たころです。ニコンでは、この前のデジカメは、GPSに対応していませんし、この後の後継機は、スマホの位置情報をつかうことで、GPSが非搭載になっています。

2019年時点で、GPS搭載のカメラは、オリンパス、キャノンのレンズ交換式カメラの機種の一部と防水コンデジに限られています。また、ニコンは、防水コンデジそのものから撤退しています。

つまり、位置情報付きデジカメは、2013から2015年の一時期だけ、対応機種が多かったのですが、その後は、急激に減っています。

上記の1,2,3の方法と位置精度、受信性能の関係を表に整理してみました。

結局、GPS付デジカメが普及しなかった理由は次の2点と思われます。

  • GPSをつけることで、コストが上がる。

  • カメラ付きのGPSは受信性能が低く、電波の弱いところでは使えない。

2番目の問題に対応するためには、GPS衛星の位置のデータを読み込んで、受信時間を短縮する方法が推奨されました。しかしながら、この方法では、電波の弱いところでの受信には対応できません。

 

  高受信性能 低受信性能
高精度 専用GPS(3) GPS付デジカメ1(1)
中精度 スマートホーン(2) GPS付デジカメ2(1)

 

今回、位置情報付きRAWファイルを作成するために、ここでは、1番目のGPS付デジカメを使う方法を選択しました。カメラはオリンパスのTough5です。実際に、自動車で移動中にGPSをオンにして使用しましたが、自動車の中では、まったく、受信できませんでした。Garmin社のGPSは、2007年頃ののモデルから受信性能が改善され、自動車の中でも問題なく受信できるようになりました。つまり、カメラ付きGPSは専用GPSであれば10年前以下の受信性能になります。

darktableでの位置情報利用

次に、darktableでGPSの位置情報を利用してみます。サンプルデータは、オリンパスの防水カメラTough5を使って、タイのチェンライ市とその周辺で撮影したものです。撮影は、特に防水を必要とする状況ではありませんでしたが、このデジカメは、マクロ撮影機能が優れているので、マクロが必要な場合の保険とGPS替わりに携帯しました。Tough5は、電源を切っても、GPSログをオンにしておくと、GPSが作動しつつけ、この状態で、INFOボタンを押すと、電子コンパスGPSが表示されますので、GPS代わりになるのではと思った次第です。実際には、弱電波の受信能力が低く、GPSとしては、使い物になりませんでした。

最初に、GPSデータのついた画像をフォルダにまとめておきます。

次に、このフォルダを読み込んで、ライトテーブルで、読み込んだ画像を確認します。

事例は、チェンライ市内の撮影画像です。

f:id:computer_philosopher:20191219144027p:plain

チェンライ市内の撮影画像


 ここで、darktableのメニューからマップを選びます。

位置の表示

マップが起動すると、次の画面になり、GPSのデータに基づいて、地図上に画像のサムネイルが表示されます。

このGPSオリンパスコンデジTough5に内蔵のGPSのデータです。地図は、タイのチェンライ市の旧市街の中心部です。時計台、教会、ワンカムホテル、ナイトバザールのステージ、ねこカフェの写真を使いました。

マップのソースは、OSMです。このなかでは、ワンカムホテル(Wang come)とねこカフェ(Cap in a cup)の位置がずれています。ねこカフェは通りの向かいから撮影したので、地図のねこカフェの場所に表示されずに、通りの向いに表示されればよいです。しかし、撮影位置は、通りの南側なのですが、ここでは、西側になっています。ワンカムホテルも、ホテルの東側から撮影したので、向きはあっていますが、撮影地点の距離はホテルから30mくらいだったのに、位置データは、150mくらいはなれた位置になっています。カメラ内臓のGPSの精度はあまり高くないとおもわれ、10mくらいの誤差はありうると思いますが、ワンカムホテルの誤差はあまりに大きすぎます。それ以外は、撮影位置に対して、半径2mくらいの範囲に収まっています。

f:id:computer_philosopher:20191219144114p:plain

チャンライ市内のマップ(1)

 

位置の変更

以上のように、ワンカムホテルの位置のずれはあまりに大きいので、データを補正します。また、せっかくなので、ねこカフェのデータも修正することにします。まず、マップの画面で、ワンカムホテルの画像をマウスの左ボタンを押しながらドラックすると画像を動かすことができまので、地図のホテルの位置まで移動します。ねこカフェの画像も、同様にして、表示位置を補正します。

f:id:computer_philosopher:20191219144159p:plain

チャンライ市内のマップ(2)


 次は、表示位置を移動する前のワンカムホテルの位置データです。

 

f:id:computer_philosopher:20191219144308p:plain

ワンカムホテルの位置データ(旧)

次は、表示位置を移動後のワンカムホテルの位置データです。画像を移動させるともに、位置データも自動的に修正されていることがわかります。

 

f:id:computer_philosopher:20191219144349p:plain

ワンカムホテルの位置データ(新)

位置の付与

次は、チェンライ市郊外の画像データです。

同じように、位置データ付きRAWファイルをフォルダにまとめて読み込んで、ライトテーブルで表示しています。

f:id:computer_philosopher:20191219144458p:plain

チェンライ市郊外の画像データ

実は、この画像の中で、次のレストランの画像にだけ、位置情報を付与することができませんでした。

そこで、ここでは、地図を使って、位置情報を付与することを試みます。

f:id:computer_philosopher:20191219144540p:plain

パイ・レストランの画像

 

Googleマップで、レストランの名称と位置をまず、確認しました。このレストランは

Charin Garden Resort ( 19.695987, 99.581624 )にあるSusan Charin Pie (19.695831, 99.582043)という

パイ専門のレストランです。レストランの位置を度から、度分秒と度分に変換しておきます。

 

f:id:computer_philosopher:20191219145244p:plain

レストランの位置(1)

マップで、レストランの周辺の地図を表示します。マップの下には、画像一覧が表示されています。

レストランの画像が、マップの下に来るように画像を動かします。

f:id:computer_philosopher:20191219144632p:plain

地図の準備

次に、マップの下にあるパイの画像をマウスの左ボタンを押しながら、ドラッグアンドドロップで、地図のレストランの位置まで動かします。

  

f:id:computer_philosopher:20191219144712p:plain

位置データの付与

次は、位置情報データが、以上の操作で画像に書き込まれたを画像情報で確認します。緯度、経度のデータが確かに記入されています。

 

f:id:computer_philosopher:20191219144747p:plain

画像情報の確認


 Google Mapの値はいかでしたので、位置はだいたいあっています。

  

f:id:computer_philosopher:20191219145318p:plain

レストランの位置(2)

ここで、マップに戻り、全ての画像が表示されるようにスケールを調整します。左から3枚目にパイの画像が表示されています。

f:id:computer_philosopher:20191219144840p:plain

チェンライ市郊外の地図

 

まとめ

darktableのマップ機能では、撮影位置に画像を表示するだけでなく、画像をドラグアンドドロップで移動することで位置情報データを簡単に書き換えることができます。