如何使用JavaScript/PHP从图像中获取地理位置数据

How do I get the geo location data from an image using JavaScript / PHP?

本文关键字:获取 位置 置数据 图像 JavaScript 何使用 PHP      更新时间:2023-09-26

我正在制作一个自定义的谷歌地图应用程序。我想在地图上显示我所有的iPhone图像,我想使用JavaScript或PHP检索地理位置数据。这可能吗?如果没有,我可以通过什么其他方式获取数据?

谢谢。

使用JavaScript回答的地理数据:

公认的答案只回答PHP问题,但如果你正在处理一张智能手机照片,很有可能图像会是3分钟或更长!所以获取EXIF数据客户端就是您想要的。

我用过一个很棒的jQuery插件。下载项目并打开index.html进行演示,取消注释第26行//console.log(exifObject);以查看对象详细信息,您可以在EXIF对象中获得任何内容,而不仅仅是Geodata:http://plugins.jquery.com/file-exif/

在PHP中,可以使用EXIF函数

如果地理位置数据存储在图像元数据中,这是可能的。您可以使用PHP使用Exif函数来完成此操作。

一旦你从图像元数据中解析了经度和纬度,就可以使用谷歌地图api来显示它。根据你想要的地图的交互和样式,有很多方法可以嵌入它:

http://code.google.com/apis/maps/index.html

如果您只是想要一个平面图像,请使用静态映射api。请记住,您可以设置很多内容,包括缩放级别。示例:

http://maps.google.com/maps/api/staticmap?center=Brooklyn+布里奇,纽约+纽约;缩放=14&尺寸=512x512&maptype=路线图&marks=颜色:蓝色|标签:S|40.702147,-74.015794&marks=颜色:绿色|标签:G|40.711614,-74.012318&marks=颜色:红色|颜色:红色|label:C|40.718217,-73.98284&传感器=错误

此信息存储在图像中的EXIF元数据中。在PHP中,您可以使用exif_read_data()函数读取这些数据。