人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

GPS付画像のexifデータのうち、C#で緯度経度のバイト配列を取得することはできたのですが、このバイト配列をどう加工すれば緯度経度になるのかわかりません。バイト列より緯度経度への変換(このバイト列とこのバイト列をこうすれば、緯度が出る)といったことを教えて



●質問者: raijin
●カテゴリ:コンピュータ インターネット
✍キーワード:C# Exif GPS データ バイト
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Mook
●200ポイント ベストアンサー

直接の回答ではありませんが、下記が参考にならないでしょうか。

まず各タグ情報は、北緯35度41分7.74秒、東経139度48分7.74秒の場合、

GPSLatitudeRef : N
GPSLatitude : 35/1,41/1,774/100
GPSLongitudeRef: E 
GPSLongitude : 139/1,48/1,774/100

という内容になっているようです。

http://www.kanzaki.com/docs/sw/geoinfo.html#gps-exif


各タグの、フォーマットに関しては下記が参考になるでしょうか。

 * 0x0001 北緯(N)or 南緯(S) GPSLatitudeRef
 * Type:ASCII
 * Count:2
 o 実際は,'N'か'S'しかない。
 o MM/IIで,長整数(4byte)で読み込み,そのままChr()すればよい。 

 * 0x0002 緯度(数値) GPSLatitude
 * Type:RATIONAL
 * Count:3
 o 分子と分母に相当するMM/IIで,長整数(4byte)が2つで1組。全体で3組ある。
 o カシミール3Dでは,2組しか使っていない。
 o 2組-DM表記  (例 35°20.609)
 o 3組-DNS表記 (例 35°20′36.54″)
 o そこで,Exif2Clipでは,3組目が0/0などであれば,2組目を分解して3組目を派生させている。
 + Dim c0 as Double ' 2組目の値
 + Dim c2 as Integer ' 単発の分′
 + Dim c3 as Integer ' 単発の秒″
 + c2=c0
 + c3=(c0-c2) * 60# 

 * 0x0003 東経(E)or 西経(W) GPSLongitudeRef
 o 0x0001と同じ 

 * 0x0004 経度(数値) GPSLongitude
 o 0x0002と同じ 

http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/gps....

http://www005.upp.so-net.ne.jp/cyber-catseye/e2csv/exif0201gps.h...

◎質問者からの返答

ありがとうございます。

確認できるのは明日夜になってしまうので、明日夜以降に質問終了し、返礼させていただきます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ