使用Python获取图像的信息(如拍摄位置)
- 首先,需要安装一下python,官网直接下载有时候比较慢,可以复制链接然后在迅雷上下。官网链接
- 安装好python以后需要安装python第三方库exifread。安装方法有多种,可以直接在命令提示符中输pip install exifread,或者通过在官网下载第三方库,然后放到本地文件夹里。下载链接
下载以后操作如下,将文件夹中的这个子文件夹放到python文件的lib/site-packages下,我用的是anaconda集成开发环境。如下图
然后在开发环境里面测试一下,没报错就是成功了。
**
现在进入正文部分
**
整个流程比较简单,总的来讲就是通过第三方库得到图像的参数,然后通过遍历或者是说调取的方式拿出你想要的值。
首先以二进制方式读取图像,然后通过exifread.process_file函数得到图像的信息。返回的是一个字典。读取它的keys可以看到它所包含的图像的参数。
下图是一部分参数,包括制造商,模型,分辨率,GPS经纬度,图像的曝光信息等等。
通过字典的键值对操作就可以得到你想要的信息。但前提是图片的信息未被隐藏,比如有些在微信里保存的照片,一些信息是看不见的。
下面是我拍摄的一张图片得到的经纬度信息
具体代码如下: