從EXIF JPEG圖片中提取GPS位置資訊
阿新 • • 發佈:2019-02-08
符合EXIFJPEG標準的圖片,除了記錄圖片壓縮資料之外,在儲存了拍攝引數,其中包括拍攝時GPS引數資訊,因此,可以利用程式從EXIF元資料資訊中解析提取GPS位置資訊。
1. Java讀取EXIF資訊
Metadata Extractor是一個開源的Java用具解析圖片元資料的庫,可以用來識別JPEG圖片的EXIF資訊,具體資訊參見:http://code.google.com/p/metadata-extractor/
輸出結果如下:import java.io.File; import java.io.IOException; import java.util.Collection; import com.drew.imaging.ImageProcessingException; import com.drew.imaging.jpeg.JpegMetadataReader; import com.drew.metadata.Metadata; import com.drew.metadata.MetadataException; import com.drew.metadata.Tag; import com.drew.metadata.exif.GpsDirectory; public class Main { public static void main(String[] args) throws ImageProcessingException, IOException, MetadataException { File jpegFile = new File("01.jpg"); Metadata meta = JpegMetadataReader.readMetadata(jpegFile); GpsDirectory gps = meta.getDirectory(GpsDirectory.class); if (gps != null) { Collection<Tag> tags = gps.getTags(); for (Tag tag : tags) { System.out.println(tag); } } } }
[GPS] GPS Version ID - 2.200 [GPS] GPS Latitude Ref - N [GPS] GPS Latitude - 40.0° 0.0' 16.999999999993065" [GPS] GPS Longitude Ref - E [GPS] GPS Longitude - 116.0° 22.0' 44.99999999998636" [GPS] GPS Altitude Ref - Below sea level [GPS] GPS Altitude - 0 metres [GPS] GPS Time-Stamp - 8:29:45 UTC [GPS] GPS Processing Method - 65 83 67 73 73 0 0 0 [GPS] GPS Date Stamp - 2014:06:16
2. 在Android中提取GPS資訊
Android API提供解析EXIF,具體可以參見這裡: