神奇的Python图片处理库exifread
发布日期:2021-06-30 11:43:52
浏览次数:3
分类:技术文章
本文共 1728 字,大约阅读时间需要 5 分钟。
来源:挣扎的蓝藻
https://lanzao.blog.csdn.net/article/details/103080034
【导语】:用 python 怎样获得图片的GPS信息?今天推荐一下 exifread 这个神奇的库,不仅仅是 GPS 信息,几乎能能获得图片的所有信息,快进来看看!!
要怎样获得拍摄图片的GPS呢?这里我们需要exifread 库,这个就是用来提取 GPS 信息的。直接 pip install exifread 来安装就好了。
其实不仅能获得GPS信息,图片的几乎所有信息都能获得。exifread的作用其实是代替了查看图片属性!如下图:
这里用在三亚拍的骆驼照片来做个演示,看看能不能定位到三亚。
注:如果图片被压缩了的话会破坏里面的二进制信息,肯定就不能提取了哦!原理是: 先把图片以二进制的格式读取出来,然后通过 exifread 库把里面的 GPS 信息提取出来,再以特定的格式打印出来,最后直接复制里面的经纬度信息,在支持通过经纬度来查位置的地图里一查就能定位到了。
exifread库读取图片的二进制示例:
具体代码如下
import exifreadimport re# 读取图片为二进制格式f = open("luotuo.JPG","rb")tags = exifread.process_file(f)# GPS信息GPS = {}# 拍摄时间Data = ""for tag,value in tags.items(): # 获取纬度信息 if re.match('GPS GPSLatitude', tag): try: match_result=re.match('\[(\w*), (\w*), (\w.*)/(\w.*)\]', str(value)).groups() GPS['纬度'] = str(int(match_result[0])) + " " + str(int(match_result[1])) + " " + str(int(match_result[2])/int(match_result[3])) except: GPS['纬度'] = str(value) # 获取纬度信息 elif re.match('GPS GPSLongitude', tag): try: match_result=re.match('\[(\w*), (\w*), (\w.*)/(\w.*)\]',str(value)).groups() GPS['经度'] = str(int(match_result[0])) + " " + str(int(match_result[1])) + " " + str(int(match_result[2])/int(match_result[3])) except: GPS['经度'] = str(value) # 获取高度 elif re.match('GPS GPSAltitude', tag): GPS['高度'] = str(value) # 获取拍摄时间 elif re.match('Image DateTime', tag): Data = str(value)# 打印信息print("纬 经 度:" + GPS['纬度'] + "," + GPS['经度'])print("拍摄时间:" + Data)
如图所示,读取后的纬经度信息直接就显示出来了
拓展1: 后期我们可以通过百度提供的 API 接口直接把经纬度转换为具体的地点。大家可以自己来尝试一下!
拓展2: 当然,你右键图片属性的详细信息里也有这些信息。
如果想保密的话,直接点击删除属性和个人信息就能能把信息删掉。PS:如果觉得分享内容有一些帮助,欢迎大家随手分享、点赞、在看。
< END >
转载地址:https://ityard.blog.csdn.net/article/details/110605984 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年04月05日 19时57分50秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
SOTA model
2019-04-30
ablation study 消融实验/消融研究
2019-04-30
ICDAR数据集
2019-04-30
Pytorch(十四) —— hook
2019-04-30
GPT (OpenAI GPT)
2019-04-30
linux(ubuntu)切换用户后出现 -bash-$
2019-04-30
Camera-ready ddl
2019-04-30
NLP之N-Gram模型
2019-04-30
CIFAR-100数据集
2019-04-30
Tiny Imagenet 数据集
2019-04-30
Knowledge Amalgamation 知识合并
2019-04-30
autossh
2019-04-30
CUB-200鸟类数据集
2019-04-30
MMLab工具箱 —— Hook机制
2019-04-30
MMLab工具箱 —— Runner类
2019-04-30
动态语言 vs. 静态语言
2019-04-30
Python反射机制
2019-04-30
YAPF —— Python代码格式化工具
2019-04-30
MMOCR——config文件
2019-04-30
NCCL
2019-04-30