纯 python 开发批量读取照片 Exif 信息的小程序
自己动手写一些小程序解决工作中的问题,是学习 python 的高效途径。这中间会遇到一些不动手想不到的问题,一个一个地解决它们,你 python 开发水平就会突飞猛进!
本文总结一下实战 python 开发批量读取照片中 GPS 信息的小程序。
工作中,有时需要野外工作者实时拍摄一些照片,手机拍摄的照片中有GPS位置信息,我们需要提取这些照片中的位置信息,并对这些位置信息进行统计分析(比如工作路径、目标的分布)。
要提取这些照片中的位置信息,可以借助看图软件,有些看图软件有查看 exif 信息的功能,可以在看图软件中复制 exif 信息,再整理成表格。如下图所示:
这种方法处理少量照片是可以的,照片数量一多,这就成了一件痛苦的事,并且还容易出错。
学习 python,就想到自己动手写一个小程序,批量读取照片中的 GPS 信息。
程序结构
程序结构如下图所示:
get_lng_lat.py
模块,读取照片的 exif 的主要模块,这里定义了一些函数和方法,遍历、读取文件夹下照片的 exif 信息,并对原始信息进行解析处理,将信息保存到 csv、xlsx 文件中;- .
lng_lat_correct.py
模块,采用算法对 GPS 信息进行变换处理。 ReadExif_win.py
模块,用 wxPython 设计的图形化窗口界面;ReadExif_main.py
wxPython图形界面的主控模块;- 最后用 pyinstaller 打包成 windows 可执行程序,界面如下图:
小程序的使用
下载得到的是一个压缩包,解压下载得到的压缩文件,双击运行其中的 ReadExif_main.exe
文件即可启动程序。免安装,无需安装 python 环境。
点击第一个”浏览“按钮,打开资源管理器选择文件对话框,指定你要处理的照片所在的文件夹。
点击第二个”浏览“按钮,打开资源管理器选择文件对话框,指定将读取的信息保存的位置文件夹。
点击“开始读取”,根据读取的照片的数量和PC的性能,需要不等的时间,4000张照片,大概5-6分钟时间…
完成后在下面信息框会显示一些信息,包括照片的位置、数量、Exif信息的csv/xlsx文件的位置、耗时、示例数据等。
读取的信息处理后保存为 csv, xlsx 两个文件。
有任何问题,欢迎到 Python草堂QQ群:457079928 讨论交流。有需要这个小程序的可以到这里下载:https://download.csdn.net/download/sinat_32570141/23457264
ReadExifApp
纯 python 开发批量读取照片 Exif 信息的小程序相关推荐
- php 获取照片信息,PHP中读取照片exif信息的方法
这篇文章主要介绍了PHP中读取照片exif信息的方法,本文从什么是exif信息开始讲解,使用PHP需要什么扩展.及它的安装方法和使用代码示例等,需要的朋友可以参考下 先来了解什么是图片的Exif信息 ...
- 使用python完成的一个烟花小程序-厉害了,我用Python写了一个自动回复拜年信息的小程序!...
大年三十到年初一,有没有也被拜年短信(大部分是群发)搞得很焦虑?不回复似乎显得很没有礼貌,一一回复又累心劳神.一位大神程序员今年就用python拯救了自己的新年假期.这里分享这位社区博主happycc ...
- java exif 语言编码_Java读取图片EXIF信息的代码
Java读取图片EXIF信息的代码 本文实例讲述了Java读取图片EXIF信息的方法.分享给大家供大家参考.具体分析如下: 首先介绍一下什么是EXIF,EXIF是Exchangeable Image ...
- 快速合并谷歌相册(Google Photo)批量导出的exif信息
如题,谷歌相册已关闭不限量照片同步功能,批量导出以后谷歌的做法是将照片exif信息独立存放在json中,本教程帮助你快速合并. 1.下载免费工具:exiftool(点击下载,或者访问官网:ExifTo ...
- java exif 怎么获取属性_Java如何读取图片EXIF信息
Java如何读取图片EXIF信息 大家知道Java如何读取图片属性信息吗?下面小编为大家整理了Java读取图片EXIF信息的方法,希望能帮到大家! 首先介绍一下什么是EXIF,EXIF是Exchang ...
- python数据库应用开发实例_纯Python开发的nosql数据库CodernityDB介绍和使用实例
看看这个logo,有些像python的小蛇吧 .这次介绍的数据库codernityDB是纯python开发的. 先前用了下tinyDB这个本地数据库,也在一个api服务中用了下,一开始觉得速度有些不给 ...
- python怎么批量读取文件_python如何批量读取txt文件
原标题:python如何批量读取txt文件 python批量读取txt文件的方法:首先导入系统模块:然后将文件夹路径更改为需要批量读取的txt文件存放的路径:再调用系统模块得到该文件夹下的所有文件名称 ...
- python运行时关闭硬件信息-Python实现的读取电脑硬件信息功能示例
本文实例讲述了Python实现的读取电脑硬件信息功能.分享给大家供大家参考,具体如下: 上学那会,老师让我用java获取电脑硬件信息,CPU, 硬盘,MAC等,那个时候感觉搞了好久...... 今天, ...
- python软件电脑配置要求-Python实现的读取电脑硬件信息功能示例
本文实例讲述了Python实现的读取电脑硬件信息功能.分享给大家供大家参考,具体如下: 上学那会,老师让我用java获取电脑硬件信息,CPU, 硬盘,MAC等,那个时候感觉搞了好久...... 今天, ...
最新文章
- oracle定时器怎么开启,Oracle的定时器使用示例
- NHibernate初学者指南(1):开篇
- 【造轮子】打造一个简单的万能Excel读写工具
- es6添加删除class_es6中class类的使用
- mac安装python虚拟环境_详解Mac配置虚拟环境Virtualenv,安装Python科学计算包
- python怎么加图片_python中如何保存图片
- 有了这组新年元旦海报PSD模板素材,不愁晚交稿!
- MSSQL Server 2008 功能
- 应用数据挖掘进行客户关系管理
- php过滤iframe,php过滤XSS攻击的函数
- Linux宝库幕后推手齐聚OpenInfra Days China
- K60(Cortex-M4)开源开发探索(一)—— K60简介
- 关于iPhone 5的适配
- 谷歌抢注18个“.中国”域名:下一盘很大的棋?
- jQuery DOM操作
- 第五篇:uCOS-IInbsp;信号量及其…
- 友元函数实现复数加减法
- 富文本编辑器:ckeditor(使用官网下载包)
- 【EPICS】在Ubuntu下安装epics及Asyn、Streamdevice工具包
- 堆栈内存的分析以及作用域的详解
热门文章
- 脑洞|手绘从零维到十维空间
- 视频编码失真测度:SAD、SATD、SSD、MSE、PSNR
- LintCode之玩具工厂
- php div 实现上中下布局,上中下结构DIV CSS布局实例
- android 画笔轨迹,Android中SurfaceView和view画出触摸轨迹
- Lumerical Python API学习之补充笔记
- 论文笔记:Pre-training to Match for Unified Low-shot Relation Extraction
- Linux基本指令(二)
- (盘点)25个值得收藏的Python文本处理案例
- 北京某高校可用的电话号码有以下几类,校内电话号码由4位数字组成,第1位数字不是0,校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0)