iOS版微信朋友圈识别图片位置信息 如何实现?
iOS版微信的一项功能:当你在朋友圈发照片的时候,就可以根据照片的拍摄地点显示地理位置。消息一出,网友们便纷纷开始尝试新功能的玩法。

在微信朋友圈上传图片时,点击位置可以自动识别照片拍摄的地理位置。
过去我们发送朋友圈时,可以显示自己所在的位置信息,而现在自动读取照片拍摄位置让不少人联想到了图像识别技术。事实上,微信所做的并没有这么复杂,有业内人士告诉雷锋网新功能是基于图片位置信息(即Exif的GPS定位信息)实现的。
什么是Exif?
Exif(Exchangeable Image File)是一种图像文件格式,它最早是由日本电子和信息技术协会(JEITA)为相机相机厂商制定一套标准。
现在,任何一部手机拍出的照片都有一组Exif参数,Exif除了有像素信息之外,还包含了光圈、快门、白平衡、ISO、焦距、日期时间等各种图像信息以及相机品牌、型号、色彩编码、拍摄时录制的声音以及GPS全球定位系统数据。
理论上,只要不经过特殊处理,每张图片的Exif信息会一直保留。
微信做了什么?
微信这次的新功能很有可能就是调用了Exif中的GPS全球定位系统数据,这些数据都来自于手机内部的传感器以及陀螺仪。
在某Exif查看器上对手机拍摄的照片进行了试验,结果显示只要图片未被压缩,日期时间、拍照设备型号、像素以及光圈快门等信息都能记录下来,而位置信息则需要用户打开GPS才能展现出来。

如上图所示,Exif涵盖的位置信息有经度、纬度以及海拔,而这组数据对应的刚好就是小编拍摄照片时的位置。可以确定的是,微信的新功能就解析了这组数据。

看到这里你应该就知道微信是如何精准识别用户上传图片的拍摄位置了,是不是比大家想象的要简单呢?
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
PHP exif扩展方法开启详解
服务器配置说明: 1.在php.ini文件中找到;extension=php_exif.dll,去掉前面的分号 2.在php.ini文件中找到;extension=php_mbstring.dll,去掉前面的分号,并将此行移动到extension=php_exif.dll之前,使之首先加载*. 3.找到[exif]段,把下面语句的分号去掉. ;exif.encode_unicode = ISO-8859-15 ;exif.decode_unicode_motorola = UCS-2BE ;ex
-
Python读取图片EXIF信息类库介绍和使用实例
首先要介绍的是 Python Imaging Library,使用方法如下: 复制代码 代码如下: from PIL import Image from PIL.ExifTags import TAGS def get_exif_data(fname): """Get embedded EXIF data from image file.""" ret = {} try: img = Image.open(
-
ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法
本文实例讲述了ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法.分享给大家供大家参考.具体如下: 一.问题描述: ThinkPHP做文字水印 ,今天做一个电子请帖,就把祝福语贴到图片上面,发现一直报错是取不到图片类型,比如gif,jpg等,并提示call an undefined function exif_imagetype(). 二.解决方法: 出现这个错误就是php.in 配置问题,打开即可:打开扩展 exten
-
微信获取用户地理位置信息的原理与步骤
在微信公众服务号开发需求中经常有获取用户位置信息的功能,通过用户的位置信息,可以做一些地图导航,以及基于LBS的营销活动. 下面通过给大家介绍微信服务号获取用户位置信息的原理与步骤. 原理 1. 位置信息获取流程 2. 位置信息报文 <xml><ToUserName><![CDATA[gh_public_member_account]]></ToUserName> <FromUserName><