Python数据获取实现图片数据提取

 更新时间:2022年05月30日 11:26:47   作者:温欣'  
本文主要介绍了Python数据获取实现图片数据提取,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

比如我随便从手机上传一张图片到我的电脑里,通过python可以获取这张照片的所有信息。如果是数码相机拍摄的照片,我们在属性里可以找到照片拍摄的时间,拍摄的经纬度,海拔高度。
那么这些信息有什么作用呢?

有很多功能…比如用户画像,客户信息标签设定等等,用户喜欢拍摄照片的季节,时间点,所使用的相机的参数指标可以反应出一个人的金钱状况,对于其拍摄的内容,我们可以通过AI的方式对照片的内容信息进行提取,从而判断一个人的兴趣爱好

在这里插入图片描述

一、利用exifread提取图片的EXIF信息

exifread介绍:

EXIF信息,是可交换图像文件的缩写,是专门为数码相机的照片设定的,可以记录数码照片的属性信息和拍摄数据。EXIF可以附加于JPEGTIFFRIFF等文件之中,为其增加有关数码相机拍摄信息的内容和索引图或图像处理软件的版本信息。

首先要安装ExifRead

pip3 install ExifRead
pic=r'D:\S072003Python\input\test\test.jpg'

import exifread
f = open(pic, 'rb')
tags = exifread.process_file(f)
print(tags) #内有相机型号,拍摄时间,经纬度等

在这里插入图片描述

tags

在这里插入图片描述

print(tags)和tags获取数据的格式不同。

tags['Image ImageWidth']
tags['Image ImageLength']
tags['Image ExifOffset']
tags['Image Orientation']
tags['Image DateTime']
tags['EXIF WhiteBalance']
tags['EXIF ISOSpeedRatings']
tags['EXIF FocalLength']
tags['EXIF Flash']
tags['EXIF LightSource']
exifcolumns=['Image ImageWidth','Image ImageLength','Image ExifOffset','Image Orientation','Image DateTime','EXIF WhiteBalance','EXIF ISOSpeedRatings','EXIF FocalLength','EXIF Flash','EXIF LightSource'] # 把要提取的数据都封装在列表当中
for i in range(len(exifcolumns)):
    print(tags[exifcolumns[i]]) # 使用循环拿到所有的数据

在这里插入图片描述

二、循环遍历图片信息

任务:一次性获得以下图片的"Image ImageWidth"信息。写一个循环即可:

在这里插入图片描述

import exifread
import os
import pandas as pd 
import glob 
pic_list=glob.glob(r'C:\Users\Lenovo\Pictures\Saved Pictures\*.jpg')  # 如果是png,jpeg,bmp等数据格式,如何设置?

for i in pic_list:
    fr=open(i,'rb')
    tags=exifread.process_file(fr)
    if "Image ImageWidth" in tags:  # 条件判断,因为并不是所有的照片都有"Image ImageWidth"
        print(tags["Image ImageWidth"])   
# 经纬度获取
import exifread
import os
import pandas as pd 
import glob 
pic_list=glob.glob(r'C:\Users\Lenovo\Pictures\Saved Pictures\*.jpg')  

latlonlists=[]
for i in pic_list:
    fr=open(i,'rb')
    tags=exifread.process_file(fr)
    if "GPS GPSLatitude" in tags:  # 条件判断,因为并不是所有的照片都有"Image ImageWidth"
        # 维度转换
        lat_ref=tags["GPS GPSLatitudeRef"]
        lat=tags["GPS GPSLatitude"].printable[1:-1].replace(" ","").replace("/",",").split(",")
        lat=float(lat[0])+float(lat[1])/60+float(lat[2])/3600
        if lat_ref  in  ["N"]:    # 表示是南半球的数据
            lat=lat*(-1)
        # 经度转换
        lon_ref=tags["GPS GPSLongitudeRef"]
        lon=tags["GPS GPSLongitude"].printable[1:-1].replace("","").replace("/",",").split(",")
        lon=float(lon[0])+float(lon[1])/60+float(lon[2])/3600
        if lon_ref  in  ["E"]:    # 表示是西半球的数据
            lon=lon*(-1)
            
        print("维度:",lat,"经度:",lon)
        latlonlist=[lat,lon]
        latlonlists.append(latlonlist)  

 到此这篇关于Python数据获取实现图片数据提取的文章就介绍到这了,更多相关Python 图片数据提取内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python使用pymupdf实现PDF加密

    Python使用pymupdf实现PDF加密

    这篇文章主要介绍了如何使用 Python 和 wxPython 库创建一个简单的图形用户界面(GUI)应用程序,用于对 PDF 文件进行加密,感兴趣的小伙伴可以了解下
    2023-08-08
  • python区块链简易版交易实现示例

    python区块链简易版交易实现示例

    这篇文章主要为大家介绍了python区块链简易版交易实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • wxpython学习笔记(推荐查看)

    wxpython学习笔记(推荐查看)

    wxPython是Python编程语言的一个GUI工具箱。他使得Python程序员能够轻松的创建具有健壮、功能强大的图形用户界面的程序
    2014-06-06
  • python 一些常用的小脚本

    python 一些常用的小脚本

    本文主要介绍了python 一些常用的小脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2007-10-10
  • 使用Python从有道词典网页获取单词翻译

    使用Python从有道词典网页获取单词翻译

    这篇文章主要介绍了使用Python从有道词典网页获取单词翻译的相关资料,需要的朋友可以参考下
    2016-07-07
  • Python实现将MP4视频转化为GIF图像

    Python实现将MP4视频转化为GIF图像

    与静态图像相比,动态的 GIF 图片更能吸引各位读者的注意力,还可以提供更生动、有趣和引人入胜的内容,本文为大家介绍了Python将MP4视频转化为GIF图像的方法,需要的可以参考下
    2023-06-06
  • Python使用Pickle库实现读写序列操作示例

    Python使用Pickle库实现读写序列操作示例

    这篇文章主要介绍了Python使用Pickle库实现读写序列操作,结合实例形式分析了pickle模块的功能、常用函数以及序列化与反序列化相关操作技巧,需要的朋友可以参考下
    2018-06-06
  • Python新手入门之解释器的安装

    Python新手入门之解释器的安装

    相信有很多小伙伴还不会安装Python解释器,今天特地整理了本篇文章,文章有非常详细的图文示例,对不会安装的小伙伴很有帮助,需要的朋友可以参考下
    2021-06-06
  • Python自动化办公之PPT段落的使用

    Python自动化办公之PPT段落的使用

    这篇文章将详细为大家介绍一些Python中PPT段落的一些使用:获取段落、段落添加内容、自定义段落等,文中的示例代码讲解详细,需要的可以参考一下
    2022-05-05
  • python 内置函数汇总详解

    python 内置函数汇总详解

    这篇文章主要介绍了python 内置函数汇总详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09

最新评论