Perl: 画像に埋め込まれたGPS情報を取り出す実験
BLOG HacksのHACK #74「moblogで位置情報」によると,
GPS付き携帯電話で撮影した写真には, GPS情報が埋め込まれるようです.
そこで実験してみることにしました.
GPS付き携帯電話を持っていないので, GPS情報が埋め込まれている画像をゲットして試してみました.
use strict; use Devel::Peek; use Image::EXIF; my $exif = Image::EXIF->new("./gps.jpg"); my $all_info = $exif->get_all_info(); print "--- Latitude ---------------------\n"; Dump $all_info->{image}->{Latitude}; print "--- Longitude --------------------\n"; Dump $all_info->{image}->{Longitude};
これを実行すると...
$ perl location.pl --- Latitude --------------------- SV = PV(0x8152868) at 0x81524dc REFCNT = 1 FLAGS = (POK,pPOK) PV = 0x805c5a0 "N 54\260 59.38'"\0 CUR = 12 LEN = 13 --- Longitude -------------------- SV = PV(0x8152874) at 0x81524e8 REFCNT = 1 FLAGS = (POK,pPOK) PV = 0x814eb00 "W 1\260 54.85'"\0 CUR = 11 LEN = 12
凄いですねぇ.
緯度, 経度がちゃんとゲットできています.
Image::EXIFを使えば簡単に緯度と経度を取れるようです.