我们先了解一下EXIF:
EXIF能够附加于JPEG、TIFF、RIFF等文件之中。为其添加有关数码相机拍摄信息的内容和索引图或图像处理软件的版本号信息。
全部的JPEG文件以字符串“0xFFD8”开头。并以字符串“0xFFD9”结束。

文件头中有一系列“0xFF??

”格式的字符串,称为“标识”,用来标记JPEG文件的信息段。“0xFFD8”表示图像信息開始。“0xFFD9”表示图像信息结束,这两个标识后面没有信息,而其他标识紧跟一些信息字符。

0xFFE0 -- 0xFFEF之间的标识符称为“应用标记”,没有被常规JPEG文件利用,Exif正是利用这些信息串记录拍摄信息如快门速度、光圈值等。甚至能够包含全球定位信息。依照Exif2.1标准对这些标识符的定义,数码相机能够把各种拍摄信息记入数码图像中,应用软件能够读取这些数据,再依照Exif2.1标准。检索出它们的详细含义,一般而言包含下面一些信息:
Image Description 图像描写叙述、来源。指生成图像的工具
Artist 作者 有些相机能够输入使用者的名字
Make 生产者 指产品生产厂家
Model 型号 指设备型号
Orientation 方向 有的相机支持。有的不支持
XResolution/YResolution X/Y方向分辨率 本栏目已有专门条目解释此问题。
Resolution Unit 分辨率单位 一般为PPI
Software 软件 显示固件Firmware版本号
Date Time 日期和时间
YCbCrPositioning 色相定位
Exif Offset Exif 信息位置 定义Exif在信息在文件里的写入。有些软件不显示
Exposure Time 曝光时间 即快门速度
F Number光圈系数
Exposure Program 曝光程序 指程序式自己主动曝光的设置,各相机不同,可能是Shutter Priority(快门优先。Tv)、Aperture Priority(光圈优先,Av)等等。
ISO speed ratings感光度
Exif Version Exif版本号
DateTime Original 创建时间
DateTime Digitized 数字化时间
Components Configuration 图像构造(多指色彩组合方案)
Compressed Bits per Pixel(BPP) 压缩时每像素色彩位 指压缩程度
Exposure Bias Value 曝光补偿。
Max Aperture Value 最大光圈
Metering Mode 測光方式、平均式測光、中央重点測光、点測光等。

Light source 光源 指白平衡设置
Flash 是否使用闪光灯。
Focal Length 焦距,一般显示镜头物理焦距。有些软件能够定义一个系数,从而显示相当于35mm相机的焦距
Maker Note (User Comment) 作者标记、说明、记录
Flash Pix Version Flash Pix 版本号(个别机型支持)
Color Space 色域、色彩空间
ExifImage Width (Pixel X Dimension) 图像宽度 指横向像素数
ExifImage Length (Pixel Y Dimension) 图像高度 指纵向像素数
Interoperability IFD 通用性扩展项定义指针 和TIFF文件相关,详细含义不详
File Source 源文件
Compression 压缩比
以上是EXIF的一些简介。

如今大部分安卓手机在照相的时候都会加入位置信息,而且能够获取到这些经纬度,转换成地理位置,可是网络上的图片绝大部分是不带有位置信息的。

我近期项目须要对一些没有加入位置信息的照片加入位置信息。所以遇到了改动照片的exif信息的问题。
我尝试使用了Br对比片进行了查看(档案资讯)中的原始数据,看到了EXIF的xml:

可是遗憾的是当我想要改动的时候却发现无法编辑。

可是是能够存储和导入的,也就是说应该能够把另外一张照片的原始信息覆盖给还有一张,可是这样明显没什么意义。我也没有尝试。

之后我找到了这个软件,名字叫做EXIF pilot Lite ,安装之后就能够非常轻松的进行改动了:


以下附上下载地址:http://download.csdn.net/detail/sunmc1204953974/8095133
希望对大家有所帮助。

改动图片exif信息的更多相关文章

  1. Android 图片Exif信息相关的获取与修改

    1 Exif是什么 Exif是一种图像文件格式,它的数据存储于JPEG格式是完全相同的,实际上Exif格式就是JPEG格式头插入了 数码照片的信息,包括拍摄的光圈.快门.平衡白.ISO.焦距.日期时间 ...

  2. Android--操作图片Exif信息

    前言 在Android系统中,图片文件在内存中以像素点的二维数组加载,存放像素信息,还会在开头加上一些额外的照片拍摄参数信息,这些信息就是Exif.Android2.0之后,媒体库加入了操作图片Exi ...

  3. Android -- 加载大图片到内存,从gallery获取图片,获取图片exif信息

    1. 加载大图片到内存,从gallery获取图片 android默认的最大堆栈只有16M, 图片像素太高会导致内存不足的异常, 需要将图片等比例缩小到适合手机屏幕分辨率, 再加载. 从gallery ...

  4. 七牛--关于图片上传方向不统一的问题--主要关于图片EXIF信息中旋转参数Orientation的理解

    [图片引用方向纠正]直接在图片后面添加 ?imageMogr/auto-orient eg:http://data.upfitapp.com/data/2016/10/18/1629114767606 ...

  5. 图片Exif 信息中Orientation的理解和对此的处理

    这个问题是在用七牛上传图片后获取宽高时发现的,一张图片,用图片浏览器打开始终是竖图,但是查看属性或者用七牛获取宽高,却发现宽大于高,也就是在属性中这是个横图.这样导致客户端用该宽高来展示图片会出现问题 ...

  6. Android 获取图片exif信息

    使用android api读取图片的exif信息 布局代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...

  7. 七牛:关于图片 EXIF 信息中旋转参数 Orientation 的理解

    EXIF(Exchangeable Image File)是 “可交换图像文件” 的缩写,当中包含了专门为数码相机的照片而定制的元数据,可以记录数码照片的拍摄参数.缩略图及其他属性信息,简单来说,Ex ...

  8. 图片Exif信息

    Exif文件格式简述链接:https://www.zhihu.com/question/23727439/answer/25467748 可交换图像文件常被简称为Exif(Exchangeable i ...

  9. Java读取图片exif信息实现图片方向自动纠正

    起因 一个对试卷进行OCR识别需求,需要实现一个功能,一个章节下的题目图片需要上下拼接合成一张大图,起初写了一个工具实现图片的合并,程序一直很稳定的运行着,有一反馈合成的图片方向不对,起初怀疑是本身图 ...

随机推荐

  1. 【转】docker之Dockerfile实践

    转自:https://www.cnblogs.com/jsonhc/p/7767669.html 上一篇介绍了Dockerfile中使用的指令,现在开始进行指令实践 先查看下本地的镜像,选一个作为ba ...

  2. n2n搭建手记-1-V1

    搭建环境 supernode :阿里云主机一台 aly1(Centos 6.5) edg2node:美团云机器两台 mty1,mty2(Centos 7.0) Step-1 各机器安装subviers ...

  3. 5.6(java学习笔记) queue

    一.queue接口 queue的中文意思是队列,是一种以先进先出方式处理数据的集合. 队列还提供额外的插入.提取和检查操作.这些方法都以两种形式存在:一种在操作失败时抛出异常,另一种返回特殊值(根据操 ...

  4. 5.3类集(java学习笔记)集合的输出

    一.集合的输出 迭代输出:Iteratror接口 在输出集合时,最标准的方法是使用迭代器迭代输出. 1,List中的迭代器. Iterator中包含三个方法: hasNex()t判断集合内是否有元素存 ...

  5. SQL函数学习(十六):STUFF()函数

    16.STUFF()函数 STUFF()函数用于删除指定长度的字符,并可以在制定的起点处插入另一组字符. 16.1 STUFF()函数语法 select stuff(列名,开始位置,长度,替代字符串) ...

  6. BlockTransferService 实现

    spark的block管理是通过BlockTransferService定义的方法从远端获取block.将block存储到远程节点.shuffleclient生成过程就会引入blockTransfer ...

  7. hadoop InputFormat getSplits

    /** Splits files returned by {@link #listStatus(JobConf)} when * they're too big.*/ public InputSpli ...

  8. IntelliJ IDEA控制台输出中文乱码问题解决

    如果还不行,那么再极端的设置,在IDEA启动的时候强制设置为UTF-8: 打开增加-Dfile.encoding=UTF-8,重启Intellij IDEA 再或者直接在项目运行的时候加入UTF-8的 ...

  9. [测试技术分享]DNS域传送漏洞测试

    DNS域传送漏洞测试 1.简介: DNS(Domain Name System)也叫域名管理系统,它它建立在一个分布式数据库基础之上,在这个数据库里,保存了IP地址和域名的相互映射关系.正因为DNS的 ...

  10. Linux命令之 file命令

    该命令用来识别文件类型,也可用来辨别一些文件的编码格式.它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的. 执行权限 :All User 指令所在路径:/us ...