批量照片加水印怎么最快:semi-utils 自动填入 EXIF 参数和品牌 Logo 的完整指南

📅 2026/8/24 20:29:59
批量照片加水印怎么最快:semi-utils 自动填入 EXIF 参数和品牌 Logo 的完整指南
批量照片加水印怎么最快semi-utils 自动填入 EXIF 参数和品牌 Logo 的完整指南【免费下载链接】semi-utils一个批量添加相机机型和拍摄参数的工具后续「可能」添加其他功能。项目地址: https://gitcode.com/gh_mirrors/se/semi-utilssemi-utils 是一款本地运行的批量照片水印工具它直接从照片的 EXIF 元数据里读出相机型号、镜头、光圈、快门、ISO 和拍摄时间自动配上品牌 Logo按模板统一排版后批量输出。照着下面的步骤走你大概 5 分钟就能拿到第一批带水印的成片。先别管原理看三张成片三套内置模板的真实效果分别代表信息全、够低调、有风格三个方向看完这三张你可以先有个判断如果你发片要一眼专业选第一张这种全参数布局如果是日常社交分享第二张足够想玩点风格化的第三张的模糊背景值得一试。为什么全程不用你动手semi-utils 的核心机制就两条理解它俩你就知道为什么不输错。第一条参数是读出来的不是打出来的。处理时它会调用 exiftool 解析每张照片的 EXIF 元数据相关代码在core/util.py的get_exif型号、镜头、焦距、光圈、快门、ISO、拍摄时间全部从文件本身取。对你意味着什么你不需要背参数也不用对着相机回放屏抄写第 300 张和第 1 张的参数准确率一样因为根本不经过你的手。第二条Logo 是自动认领的。拿到相机品牌后模板里的auto_logo()函数会拿品牌名去内置 Logo 库里比对实现见core/jinja2renders.py。仓库自带尼康、佳能、索尼、富士、徕卡、哈苏、奥林巴斯、松下、宾得、理光、大疆等品牌的 Logo 文件config/logos/目录。对你意味着什么每张照片右上角出现的是它自己牌子的标识换品牌混拍也不用逐张换图。另外一个省事的细节iPhone 直出的.heic会被自动转成 JPEG 再进入处理流程不用你提前批量转换格式。零基础上手四步跑通第一批第一步拉取项目并初始化环境git clone https://gitcode.com/gh_mirrors/se/semi-utils cd semi-utils ./init.shinit.sh会检查 Python、建虚拟环境、装依赖最后直接启动服务。macOS 用户有配套的macOS启动脚本.applescriptWindows 用户可以直接用打包好的主程序不用走这套脚本。第二步放照片。在项目目录下建一个input文件夹把照片丢进去支持.jpeg、.jpg、.png、.heic。子文件夹会被按结构保留不用担心目录乱掉。第三步等浏览器自己弹出来。服务启动后会自动打开http://localhost:15050界面上列出的就是input里的照片可以全选也可以只勾几张先试。第四步选模板、点开始。处理是并发跑的界面实时显示进度和当前在跑的文件成品写入output文件夹目录层级和input一一对应。我建议第一次先勾 5 张跑一遍放大检查 Logo 位置和参数文字没问题再整批放行。7 套模板怎么选按场景对号入座你的场景推荐模板一句话理由作品集、参赛投稿standard1标准水印型号、镜头、全参数、时间、Logo 一个不少发朋友圈、小红书normal1右下角参数右下角一行参数画面几乎无感想按文件夹归档展示normal2文件夹名右下角参数橙色文字直接显示文件夹名和拍摄时间社交媒体要精致感standard2标准水印2在 standard1 基础上加圆角、阴影和留白尼康 Z 系列用户nikon_blur尼康专用背景模糊红色Z字高亮 模糊背景复古味极简留白风格blur背景模糊型号加参数垂直居中配模糊背景品牌宣传、产品展示center_logoLogo 居中品牌 Logo 放大居中四周文字可自定义拿不准就先各挑一张试跑肉眼对比比看说明快得多。所有模板都是config/templates/下的 JSON 文件仓库里还有对应的示例效果文件在static/目录名字和模板一一对应。改成自己的样子只动这三个地方不想大改就改config/config.ini里的两三个值重启后生效quality默认60范围 1100输出 JPEG 的压缩质量。默认值偏向控制体积要冲画质就调到8595文件会明显变大但观感干净很多。override_existed默认False为False时output里已存在的同名文件会被跳过而不是覆盖。想反复调模板对比效果时把它设成True否则旧成片一直占位。template_name在[render]段默认套用的模板名。换个名字下次启动界面默认就切过去。想改模板本身的样式就复制config/templates/里任意一个 JSON 另存新名然后动这几个字段文字颜色color支持#242424这种写法、文字大小height可以写{{vh(3)}}表示图高的 3%、字体文件font_path仓库自带阿里巴巴普惠体和 Roboto放在config/fonts/。模板文本还支持直接引用 EXIF 字段比如{{ exif.FNumber }}输出光圈值。保存后刷新网页界面新模板就出现在列表里。问题速查现象原因处理某张图水印里型号是-或空这张照片的 EXIF 被后期软件剥掉或是截图、转存图换原图处理确认 exiftool 能读出参数后再批量成片体积偏小、颜色发闷默认quality 60在压体积调到 8595 重新处理记得配合打开override_existed重新处理却没覆盖旧文件override_existed为False已存在的输出被跳过改配置为True或先清掉output对应文件界面里看不到照片input目录没建、或文件后缀不在.jpeg,.jpg,.png,.heic里按配置里supported_file_suffixes支持的格式放文件HEIC 在界面预览不出来个别 HEIC 解码失败这类图程序会转 JPEG 处理个别失败属正常看处理日志确认结果边界之外这套管道还能干什么水印只是 semi-utils 的默认玩法。看processor/目录的命名就明白它的底座——generators.py、filters.py、mergers.py构成一条生成器 滤镜 合并器的图片处理流水线start_process把模板 JSON 里的节点逐个执行最后一张图落盘。这意味着批量压缩、统一画幅加白边、生成纯色或渐变背景这类需求本质上都是换一组节点配置就能做的。想深入的话官方 Wiki 有开发文档顺着processor/core.py的PipelineContext和core/jinja2renders.py的模板函数读两三个小时能摸清楚整条链路。现在就跑起来把一组 5 张左右的照片放进input选standard1跑一遍确认参数和 Logo 都正确再上全量。动手前留一句先备份原图第一次务必小批量试跑——工具不会动你的原文件但你对效果到底行不行的判断值得用 5 张先验证一遍。快门留给拍照加字这件事从今往后交给它。【免费下载链接】semi-utils一个批量添加相机机型和拍摄参数的工具后续「可能」添加其他功能。项目地址: https://gitcode.com/gh_mirrors/se/semi-utils创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考