アサリの砂抜きは不要?

アサリの砂抜きは常識ですが、実際は潮干狩りで取ったアサリを良く洗えば直ぐ食べれます??

RunDiary(4) iPhoneカメラのexif情報

2009-10-26 21:26:27 | iPhone開発

   ExifReaderで見たら、「サムネイル」画像が見えなかった。また、測位の信頼性もおかしな値だったので、再度調査したら、オフセット調整が不足していた。結局

<回答2>
 アプリで撮影したJPGデータに。。
1)GPS-IFD-Ptrを追加する(12=0x0cバイト)
2)ExifIFDPointer+12バイト位置に、GPSタグ・GPSデータ部分を追加する(0x0bcバイト)
3)オフセット、サイズを調整する
   0x0004 =APPIサイズに(0x0c+0x0bc)加える
       0x002c =XResolutionに(0x0c)加える
       0x0038 =XResolutionに(0x0c)加える
       0x005c =ExifIFDPointerに(0x0c+0x0bc)加える
       0x006c =IFD1へのオフセットに(0x0c+0x0bc)加える
4)GPSデータ部分の値を、実際のオフセット、緯度、経度、。。。などに再設定する。
       0x0096 =緯度へのオフセットを(0x0d8)にする
          0x0d8から緯度を設定する
       0x00AE =経度へのオフセットを(0x0f0)にする
    0x0f0から経度を設定する
       0x00c6 =標高へのオフセットを(0x0108)にする
    0x0108から標高を設定する
       0x00d2 =GPS時間へのオフセットを(0x0110)にする
    0x0110から時間を設定する
       0x00de =即位の信頼性へのオフセットを(0x0128)にする
    0x0128から即位の信頼性を設定する
5)exifデータ部分の値を、実際のオフセットに設定する
       0x0196 =XResolutionへのオフセットを(0x01c0)にする
       0x01a2 =YResolutionへのオフセットを(0x01c8)にする
       0x01ba =サムネイルへのオフセットを(0x01d0)にする

<exifReader結果>
 上記修正をした結果(左がオリジナル)。。これでOKのようだ。
 
修正結果のダンプ

 。。。これで、iPhoneアプリ内でカメラ画像を取った後に、GPS情報を埋め込む事が出来るはず。。。それでは、実際のプログラム作成に移ります。。まずは、Windows上のexeとして作ってみよう。。出来たら、それも使えるTOOLになるかも


RunDiary(3) カメラのexif情報

2009-10-26 10:23:04 | iPhone開発

 RunDiaryの撮影情報にGPS情報を埋め込む=exifパズルの回答(?)です。
<調査>
 iPhoneカメラで撮影したjpg画像には、以下のようにGPSInfoIFDPointer(GPS-IFD-Ptr)がIFD最後に追加されている。GPS-IFD-Ptrの先には8個のGPSタグがある。
(1)GPSLatitudeRef  南北(=N=北)
(2)GPSLatitude        緯度へのオフセット
(3)GPSLongitudeRef 東西(=E=東)
(4)GPSLongitude  経度へのオフセット
(5)GPSAltitudeRef 高度基準
(6)GPSAltitude    標高へのオフセット
(7)GPSTimeStamp  GPS時間へのオフセット
(8)GPSDOP      即位の信頼性へのオフセット


 緯度、経度へのオフセットはAPPIからのオフセットなので実際のファイル位置へはファイル先頭部分の12バイトを加えた値になる。

 のような事を調べて、結局以下のような事をやれば、RunDiaryで撮影したjpgにGPS情報を埋め込めそうだ。

<回答>
 アプリで撮影したJPGデータに。。
1)GPS-IFD-Ptrを追加する(12=0x0cバイト)
2)ExifIFDPointer+12バイト位置に、GPSタグ・GPSデータ部分を追加する(0x0baバイト)
3)かくオフセット、サイズを調整する
   0x0004 =APPIサイズに(0x0c+0x0ba)加える
       0x002c =XResolutionに(0x0c)加える
       0x0038 =XResolutionに(0x0c)加える
       0x005c =ExifIFDPointerに(0x0c+0x0ba)加える    
4)GPSデータ部分の値を、実際のオフセット、緯度、経度、。。。などに再設定する。
       0x0096 =緯度へのオフセットを(0x0d8)にする
          0x0d8から緯度を設定する
       0x00AE =経度へのオフセットを(0x0f0)にする
    0x0f0から経度を設定する
       0x00c6 =標高へのオフセットを(0x0108)にする
    0x0108から標高を設定する
       0x00d2 =GPS時間へのオフセットを(0x0110)にする
    0x0110から時間を設定する
       0x00de =即位の信頼性へのオフセットを(0x0128)にする
    0x0128から即位の信頼性を設定する
。。。

のような事を調査・設定した結果は大体以下のような感じ

<参考にしたiPhoneカメラexif情報>
Camera-Specific Properties:
Equipment Make: Apple
Camera Model: iPhone 3G
Camera Software: 3.1
Sensing Method: One-Chip Color Area
Image-Specific Properties:
Image Orientation: Top, Left-Hand
Horizontal Resolution: 72 dpi
Vertical Resolution: 72 dpi
Image Created: 2009:10:03 13:29:26
F-Number: f/2.8
Exposure Program: Normal Program
Lens Aperture: f/2.8
Metering Mode: Average
Flash: No Flash Function
Color Space Information: sRGB
Image Width: 1600
Image Height: 1200
Exposure Mode: Auto
White Balance: Auto
Latitude: N 33ー 7.17'
Longitude: E 131ー 47.88'
Altitude: 34.00 m
Time (UTC): 13:29:26.26

<元のexif情報>
Camera-Specific Properties:
Image-Specific Properties:
Image Orientation: Top, Left-Hand
Horizontal Resolution: 72 dpi
Vertical Resolution: 72 dpi
Color Space Information: sRGB

<修正結果のexif情報>
Camera-Specific Properties:
Image-Specific Properties:Image Orientation: Top, Left-Hand
Horizontal Resolution: 72 dpi
Vertical Resolution: 72 dpi
Color Space Information: sRGB
Latitude: N 33ー 7.17'
Longitude: E 131ー 47.88'
Altitude: 34.00 m
Time (UTC): 13:29:26.26

 大体良さそう。。JPGとして画像も一応見えているが。。ただしexiftag.exeでは「skipped spurious byte in JPEG」とワーニングが出ているので、もう少し調整が必要なようです

 まあ、いい加減ですが、exifパズルを解いた結果は上記のような事なので、簡単にプログラム化できます。これならライセンス違反にはならないので自由に使えます


旅行グルメ

にほんブログ村 旅行ブログ 旅行グルメへ
にほんブログ村