相机参数水印

修图后读不到 EXIF 怎么办

最后更新 · 约 4 分钟读完

用 Lightroom、Photoshop 或脚本导出一张照片,拖进水印工具,机型和参数一个都读不出来,第一反应往往是画质被弄坏了。

多半是导出设置的问题:同一段代码只差一个保留元数据的参数,一边全丢,一边原样保留。

打开镜笺,免费试一张免费,不用注册,照片不上传。

同一张照片的两份导出,一份读得到机型与参数,一份读不到

一、这页管什么

修图软件或脚本重存之后 EXIF 不见了,分三种情况,各能救回多少,这页讲清楚。 EXIF 是什么、参数水印怎么加,见照片怎么加相机参数水印; 位置一类隐私字段,见EXIF / GPS 隐私自查。 参数是发微信之类聊天软件之后丢的,看这一篇更对症。

二、三步查到底

  1. 第一步:先查还剩什么
    终端里对重存件跑 exiftool -s -EXIF:all,没有任何输出,标题写着修图软件或脚本重存之后二进制 EXIF 整段没了
    重存件的 exiftool 命令行输出,不是软件界面:-EXIF:all 什么都没读到,二进制 EXIF 整段没了。

    对导出后的文件跑 exiftool -s -EXIF:all 照片.jpg。列得出机型、镜头、光圈、快门、ISO, 二进制 EXIF 就好好的,问题不在这里。像上图这样一行都没有,接着看第二步。

    不用命令行,也可以直接拖进镜笺看水印信息栏:机型和参数都印出来了,说明 EXIF 或 XMP 里至少有一处还在。

  2. 第二步:试 XMP 兜底
    终端里对 xmp-only.jpg 跑 exiftool -s -XMP:all,拍摄时间、快门、光圈、焦距、镜头、ISO、品牌和机型 X-T5 逐行列出
    同一类文件的 -XMP:all 命令行输出:二进制 EXIF 没了,参数还在 XMP 里。EXIF 为演示数据。

    再跑一次 exiftool -s -XMP:all 照片.jpg。Lightroom、Photoshop 导出的文件常见这种情况: 二进制 EXIF 段被清空,XMP 包里还留着一份参数。

    这种文件拖进镜笺,什么都不用做,它会自动从 XMP 补上机型、镜头、光圈、快门、ISO、焦距和日期, 线上实测有效。方向是例外:刻意不从 XMP 读,免得和文件本身的方向标记叠加,转两次。

  3. 第三步:都没有就手填机型
    镜笺网页版里一张没有任何 EXIF 的照片套着「标准水印2」,下方信息栏一片空白,顶栏能看到「本张机型兜底」输入框
    完全没有 EXIF 的照片套「标准水印2」,信息栏是空白的。这时能用的只剩顶栏的「本张机型兜底」。

    EXIF 和 XMP 都没有,常见于 convert -strip 一类处理,或者「导出为网页用」的预设。 镜笺顶栏有个「本张机型兜底」,最多 40 字,只用于这一张的水印显示:不跨照片、不保存, 也不写回导出文件的 EXIF,每张单独填。

    镜头、光圈、快门、ISO、日期没有手填入口,丢了就只能空着。

三、几种导出方式实测对照

同一份原始文件,元数据完整
原始文件:FUJIFILM X-T5 + XF23mmF1.4 R LM WR,f/2.8 1/500s ISO 320,二进制 EXIF 完整(演示数据)。
终端里 exiftool -EXIF:all 读取重存件的输出,除文件名外没有任何字段
重存件的 exiftool -EXIF:all:用 Python Pillow 重新保存,没传 exif=, 二进制 EXIF 整段没了。画质没变,是保存时没把元数据带上。本机命令行输出,不是软件界面。
同一类文件的 exiftool -XMP:all 输出,机型、镜头、光圈、快门、ISO 仍逐行列出
同类文件的 exiftool -XMP:all:二进制 EXIF 没了,参数还在 XMP 包里, 镜笺兜底读的就是这一段,方向除外。EXIF 为演示数据。
文件代表什么字节像素机型光圈快门ISO焦距GPS
原始文件相机直出2015071240×827X-T52.81/50032023mm有
Pillow save(),未传 exif=修图 / 脚本最常见的丢法2463431240×827—————无
Pillow save(),传了 exif=im.info['exif']同一段代码,多写一个参数2471531240×827X-T52.81/50032023mm有
二进制 EXIF 已剥、XMP 还在Lightroom / Photoshop 常见形态1172731080×720EXIF 无 · XMP 有XMP 2.8XMP 1/500XMP 320XMP 23mm无
convert -strip「导出为网页用」类预设的典型效果1405211240×827—————无

看中间两行:同一段 Pillow 代码,只差一个 exif= 参数,一行全丢,一行原样保留。 丢参数是导出设置的事,跟压缩、画质无关。

第四行是另一种常见形态:二进制 EXIF 清空了,XMP 里还剩 8 个字段,镜笺能从这里读出参数; 原图按 IFD0、ExifIFD、GPS、XMP 合计是 34 个。数字为本机 exiftool 12.76 / Pillow 10.2.0 实测, 别的软件、别的版本可能不同,以你自己文件的检查结果为准。

现在就试

修图软件剥掉了二进制 EXIF、XMP 还留着的那种,镜笺能直接读出来。拖一张进去就知道是哪种情况。

打开镜笺网页版

四、常见失败案例

现象原因解法
导出后拖进镜笺,信息栏一片空白 导出时没勾保留元数据,或者用了「导出为网页用」一类预设 导出前在软件的元数据选项里勾上保留;已经导出的,回到原始文件重新导出,或者手填机型
手机修图 App 处理完,参数没了 修图软件重存时把元数据剥掉了 回到原始文件;修图之前先用原图做好参数水印
水印上只有参数,没有机型 文件里没有 EXIF Model 字段 换回原图;实在没有,用「本张机型兜底」手填
填了「本张机型兜底」,换下一张又要重填 它刻意按张生效,不跨照片、不保存 正常行为,每张单独填

五、下一步

六、常见问题

修图会因为画质变差而丢参数吗?

不会。元数据和像素分开存,丢参数是导出设置的问题。同一段代码只要显式保留 EXIF,比如 Pillow 的 save(exif=...),参数就原样保留,画质不受任何影响。

为什么有的照片「看起来没有 EXIF」其实还能读出参数?

二进制 EXIF 和 XMP 是两套独立的元数据。有些导出流程只清掉前者,参数还留在 XMP 包里,镜笺会从那里读出机型、镜头、光圈、快门、ISO、焦距和日期。两边都有的字段,以二进制 EXIF 为准。

参数彻底没了还能编回去吗?

光圈、快门、ISO、焦距编不回来。镜笺的「本张机型兜底」只能手填机型一项,只影响当前这张的水印显示,不写回文件,也不跨照片。

免费加参数水印 →