画像に埋め込まれたGPS情報を読み取る、ほか :: perl :: Pocketstudio'z log

« 平成21年6月29日(月) iPhoneのマニュアルに目を通した | メイン | 平成21年6月30日(火) 2009年も、折り返し地点。 »

perl :: Logbook :: Pocketstudio.jp

画像に埋め込まれたGPS情報を読み取る、ほか

◆JPEG画像に含まれるGPS情報を perl で呼み出す

Image::ExifTool (http://search.cpan.org/~exiftool/Image-ExifTool-7.67/ ) を使えば、Perl では手軽に JPEG 画像ファイルに含まれている各種のタグを読み出すことが出来る。

以下、GPS 情報を取得するまでの手順。

1. CPAN を使ってサクッとインストール

# perl -MCPAN -e shell
> install Image::ExifTool

 特にエラーが出なければコレで完了。

2. exiftool の動作確認

 インストールが正常であれば /usr/bin/exiftool (perlスクリプト) を使って、画像のタグを一覧取得出来る。

3. perl で GPS 情報を取得する

 GPS 情報を取得するには、GPSPosition タグの値が分かれば良い。

exif.pl
--------------------------------------------------------------------
#!/usr/bin/perl

use Image::ExifTool;

$exifTool = new Image::ExifTool;
$exifTool->ExtractInfo($ARGV[0]);
$GPS = $exifTool->GetValue(GPSPosition);
print "GPSPosition=$GPS\n";
--------------------------------------------------------------------

実行例
--------------------------------------------------------------------
$ perl ./exif.pl /home/zem/photo.jpg
GPSPosition=35 deg 40' 31.20" N, 139 deg 47' 24.00" E
--------------------------------------------------------------------

このようにサクッと取得出来る。
あとは、Google Maps などの API に流し込めば、
iPhone で GPS 情報付きの写真を撮影→メールで送信→自動的に Google Maps で位置表示、という一連の流れを PC を介することなく自動化出来る。

ちなみに、ほかにどんなタグが画像に埋め込まれているかは、

@tagList = $exifTool->GetFoundTags('Target');
foreach $tag (@tagList) {
print $tag,"\n";
}

のように書き加えることで、
タグ名と値が一覧表示される。


リソース
ImageExifTool - Read and write meta information - search.cpan.org SYNOPSIS のソース(一次情報)より。

トラックバック (SPAMチェック中)

このエントリーのトラックバックURL:
http://pocketstudio.jp/mt-cgi/mt-tb.cgi/877

コメント (3)

XRumerTest:

Hello. And Bye.

StephenWag:

vjghdrct xkbsonep caijrrin dgpvzsqh kcaqljpx aybspkji ipmsrnbc

Thomaslowl:

xgylvhbog imlkscpls

コメントを投稿 (サインインは必須ではありません、誰でもコメント出来ます/SPAMチェック中)

About

2009年07月01日 01:21に投稿されたエントリーのページです。

ひとつ前の投稿は「平成21年6月29日(月) iPhoneのマニュアルに目を通した」です。

次の投稿は「平成21年6月30日(火) 2009年も、折り返し地点。」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。