[英]extracting geographic coordinates from a smartphone photo
我想从智能手机图片中提取地理坐标。 我们所有的照片都经过地理定位,并且该信息嵌入到标题中的某个位置。 有matlab或python函数可以告诉我图片的地理坐标吗? 我想编写一个可以计算两个图像之间距离的脚本,因此,如果我可以提取两个照片的地理坐标,则可以计算距离。 谢谢
如果要使用MATLAB,则有一个名为imfinfo
的函数,该函数从图像文件中提取exif数据并将其保存在结构中。 您可以在GPSInfo
字段中找到GPS信息。 例:
info = imfinfo('filename.png');
info.GPSInfo
然后,要访问各个纬度和经度值(以度,分,秒表示),可以检查字段GPSLatitude
和GPSLongitude
:
info.GPSInfo.GPSLatitude
info.GPSInfo.GPSLongitude
您可以使用外部工具吗?
使用jpegsnoop或exiftools提取txt文件。 我不记得确切的命令,但是您可以轻松找到它。 两种工具都有可执行文件和可用代码。 我个人更喜欢jpegsnoop。
system('jpegsnoop.exe image/path ... output_image.txt);
阅读包含地理位置标签的txt文件。 最多可能有7个标签,不同的相机品牌使用不同的标签。 其中,将选择地理位置(我不记得确切的名称,但名称中包含经度和纬度)。
您可以通过一个简单的while循环来做到这一点:
while (line = readline) ~= EOF
if line.startsWith (geo-tags)
print line %or add to cell array etc.
以我的经验,python不如jpegsnoop
。
如NaN所述,从智能手机拍摄照片时,请确保gps处于打开状态。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.