关于 photo-dedup
photo-dedup 是用于查找文件夹中重复及相似照片的 Skill,并将候选照片整理供审核。它通过感知哈希聚类,原始照片不会被移动或删除。
主要功能
- 01基于感知哈希匹配图像
- 02按相似度聚类照片
- 03选择最大文件作为代表
- 04通过浏览器审核分组
- 05支持预览和阈值调整
适用场景
- 01清理活动照片文件夹
- 02保存前审核相似照片
- 03从大量照片中筛选独特图像
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ tivojn/ photo-dedup --skill photo-dedup安装后在 Claude Code 中输入/photo-dedup确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdscripts/generate_review.pyreview_server.pydedup.py详细介绍
照片去重 — 从重复照片中查找并选出唯一照片
当用户想要为照片去重、从大量照片中查找唯一图像、移除相似或重复照片,或按唯一性整理照片时,使用此技能。触发短语:“照片去重”“查找重复照片”“唯一照片”“移除重复图像”“照片去重”“/photo-dedup”。
概述
此技能会处理一个照片文件夹(通常包含数百张活动照片,例如校园摄影照片),使用感知哈希识别重复和近似重复照片,并将它们分类到唯一照片和重复照片文件夹中。此技能专为这样的工作流设计:收到约 500 张照片,但其中真正唯一的只有约 100 张。
工作原理
-
感知哈希 — 将每张图像转换为代表其视觉内容的感知哈希(pHash)。即使图像的分辨率、压缩方式或细节编辑不同,相似图像生成的哈希也相似。
-
聚类 — 根据哈希相似度对图像分组。每个集群代表一个“场景”或“镜头”。从每个集群中选出最佳图像(文件大小最大 = 画质最高)作为唯一代表。
-
输出 — 将唯一照片复制到
unique/文件夹。生成报告,显示找到的重复照片数量及集群分组。
用法
基本用法 — 为文件夹去重:
/photo-dedup ~/Photos/school-event/
自定义阈值:
/photo-dedup ~/Photos/school-event/ --threshold 8
阈值用于控制相似度检测灵敏度(默认值:6,范围:0-20)。值越低,匹配越严格;值越高,分组越宽松。
预览模式(不复制文件):
/photo-dedup ~/Photos/school-event/ --preview
工作流
用户调用此技能时:
- 验证输入 — 确认源文件夹存在且包含图像
- 按需安装依赖项 —
pip3 install Pillow imagehash pillow-heif - 运行去重扫描:
python3 ~/.claude/skills/photo-dedup/scripts/dedup.py <source_folder> --preview [--threshold N] - 向用户报告结果(总数、唯一照片数、重复照片数)
- 启动审核服务(在本地运行并自动打开浏览器):
然后,用户可以:python3 ~/.claude/skills/photo-dedup/scripts/review_server.py /tmp/dedup_report_<folder_name>.json --output ~/Desktop/selected_photos &- 并排查看所有重复照片组(Notion 风格的 UI)
- 点击选择每组中要保留的照片
- 使用“自动选择最佳”一键选择默认照片
- 点击“保存所选项”——照片会立即复制完成,无需使用 Terminal
- 用户保存后,告知他们所选照片的位置
- 完成后终止服务:
kill $(pgrep -f review_server)
审核服务是一个轻量级本地 HTTP 服务——无需安装、无需配置,只需 Python。 非技术用户只需与浏览器交互。点击一次即可保存。
输出结构
~/Desktop/selected_photos/ ← User's selected photos (copies, originals untouched)
/tmp/dedup_report_*.json ← Clustering report
(original photos are NEVER modified or deleted)
重要说明
- 无损操作 — 绝不会移动或删除原始照片。唯一照片会复制到子文件夹中。
- 支持的格式 — JPG、JPEG、PNG、HEIC、WEBP、TIFF、BMP
- 性能 — 在现代硬件上,不到一分钟即可处理 500 张以上的照片
- 选择标准 — 找到重复照片时,选取文件最大(画质最高)的照片作为代表
评论
支持 Markdown