当前位置: 首页 > news >正文

不花一分钱清掉硬盘里的重复图片:AntiDupl 上手全记录

不花一分钱清掉硬盘里的重复图片:AntiDupl 上手全记录

【免费下载链接】AntiDuplA program to search similar and defect pictures on the disk项目地址: https://gitcode.com/gh_mirrors/an/AntiDupl

深夜整理照片,你在三个文件夹里发现了同一张海边日落各存了一份;想给网盘瘦身,翻了上百个"最终版"却分不清哪个才是真身。这种时候你就会明白:图片去重这件事,靠人眼一张张比对,纯属自虐。而开源工具 AntiDupl 就是来替你干这活儿的——它不看文件名,只分析图片内容,把重复的、相似的、甚至坏掉的图全部列到你面前,你只负责点头或摇头。

这篇文章不讲多余的细节,只带你走一条最省心的上手路径:从拿到工具到完成第一次清理,全程十分钟。你会看到它怎么扫描、怎么读结果,以及哪些场景下最好别用它。

先承认吧:手动清理重复图片,是笔亏本买卖

你可能会想:删个图而已,用文件哈希工具不就行了?哈希工具确实能找出"一模一样"的文件,但照片只要经过压缩、旋转、改尺寸,哈希值就完全变了,它立刻"失明"。

AntiDupl 的做法完全不同。它会先把图片缩小到统一的比较网格,再计算结构相似性指标(SSIM,一种模拟人眼感知的相似度评分),文件名、路径、格式后缀统统不认,只认"看起来像不像"。所以同一张照片的压缩版、旋转版、不同尺寸版,它都能揪出来。这也是它和"按文件名找重复"的小工具最本质的区别。想看具体算法的话,比较逻辑都写在src/AntiDupl/adImageComparer.cpp里,多线程并行那部分则集中在src/AntiDupl/adThreadManagement.cpp

提示:AntiDupl 目前主要面向 Windows 用户。项目里另有一个命令行版 AntiDuplX,能在 Linux 服务器上运行,适合写脚本做定时去重。

三分钟跑完第一次扫描

拿到工具有两条路。图省事,直接下载编译好的发布版,解压即用;想研究源码或改功能,就把仓库克隆下来,用 Visual Studio 2022 打开src/AntiDupl.sln自己构建:

git clone https://gitcode.com/gh_mirrors/an/AntiDupl

首次运行,你会看到一个干净的空界面。工具栏上的关键按钮不多:打开文件夹、开始扫描、选项设置,一眼就能认出来。

启动后的初始界面:左侧是预览区,右侧是结果表,底部状态栏显示统计数字。

第一次扫描只需三步。先点工具栏的文件夹按钮,把照片库目录加进来,可以一次加多个目录;再点开始按钮,进度条走完,结果就出来了。剩下的事,就是读懂那张结果表。

结果表怎么读?别被一堆数字吓到

扫描结束后,右侧表格会列出所有疑似重复的文件。重点看这几列:

  • Group:当前文件属于第几组重复;
  • Diff:两张图的差异比例,越小越像;
  • 相似度列:和 Diff 对应,越接近 100% 越难区分;
  • 尺寸、大小、格式:帮你判断哪张更值得留。

底部状态栏的 Total / Current / Selected 分别是文件总数、当前组数量和你选中的数量。选中的行会在左侧预览区放大显示,分辨率、EXIF 信息、所在路径也一并给出。第一次见到这张表别慌,核心信息其实就三行字。

扫描完成后,右侧表格按组列出重复文件,左侧预览区展示当前选中的图片及其详细信息。

到这里你只是"看见了重复",真正的决策还在下一关。

留哪张、删哪张:两招帮你做决定

面对一组重复图,先别急着删。第一招:双击任意一条,进入并排对比模式,两张图肩并肩显示,光影、裁切、清晰度差异一目了然。很多"看起来一样"的图,放大后高下立判。

对比模式下左右各显示一张图,表格同步给出差异数据,适合在删除前做最后核对。

第二招:用硬指标定标准。通常保留分辨率更高、体积更大、路径更"正式"的那份——比如原图目录里的,优先于缓存目录里的。确定后勾选要清理的行,点删除即可。AntiDupl 的删除会先走回收站逻辑(相关代码在src/AntiDupl/adRecycleBin.cpp),而且自带撤销功能,误删了能救回来。这一点在批量操作时尤其重要,它给你留了反悔的余地。

提示:动手删除前,确认每组至少留下一张。AntiDupl 会把组里"最像"的文件标出来,但最终留谁,决定权始终在你手里。

相似度阈值调到多少,才不会冤枉好图

默认的扫描阈值未必适合所有场景。在选项设置里找到比较阈值,可以参考这个经验:

  • 90% 以上:严格模式,只认肉眼几乎分不出的图,适合备份校验这类精确场景;
  • 70%–90%:平衡档,日常整理相册、素材库的主力区间;
  • 70% 以下:宽松档,会把"同一构图的不同版本"也算作相似,适合清理重复下载的多版本文件。

阈值调低,找得多但误报也多;调高则相反。第一次用建议从平衡档起步,跑完看看结果,心里有数了再收紧或放宽。

顺带做个体检:找模糊图、坏图

AntiDupl 还藏着一个容易被忽略的功能:缺陷检测。扫描时会顺带检查 JPEG 文件是否完整(比如缺少结束标记)、图像是否模糊、有没有块状压缩伪影,检测逻辑集中在src/AntiDupl/adDataCollector.cpp。整理素材库时这招很实用——那些拍糊了还占着几 MB 空间的老照片,一次就能筛出来。

三个"先别用"的时刻

再顺手的工具也要知道边界,这三个场景建议谨慎:

  1. 还没备份的珍贵照片,先备份再清理,任何批量删除都有误伤概率;
  2. 需要严格保留原始文件的商业项目,先确认格式在支持列表里(AntiDupl 覆盖 JPEG、PNG、GIF、TIFF、WEBP、HEIF、PSD、DDS、AVIF、JXL 等常见格式);
  3. 想完全自动化、无人值守的服务器场景,图形界面不如命令行版顺手。

别让重复图片继续吃你的硬盘

回到开头那个深夜。下一次整理照片时,你不需要再对着几百个文件夹眼冒金星——把目录交给 AntiDupl,喝杯水的工夫,回来面对一张清清楚楚的清单,剩下的决定十分钟就能做完。存储空间省下来,找素材的时间也省下来,这笔账怎么算都划算。

行动建议:今天就挑一个最乱的图片文件夹,跑一次扫描试试。第一次先不删除,只观察结果、熟悉流程,然后再动真格。官方文档在docs/目录下,按需查阅即可。清理完记得回来删掉备份的临时文件,让硬盘真正瘦下来。

【免费下载链接】AntiDuplA program to search similar and defect pictures on the disk项目地址: https://gitcode.com/gh_mirrors/an/AntiDupl

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/1395352/

相关文章:

  • 1.6 窗口布局
  • OpenClaw-RL Combine模式:强化学习工程化架构设计与源码解析
  • 从网页到向量库:基于RAG的本地化知识库构建实战
  • Python图书数据抓取实战:反爬对抗与结构化处理
  • 若依(RuoYi)前后端分离版本地环境配置与部署全攻略
  • 【单片机毕业设计】基于单片机的语音交互型室内温湿度智能通风系统设计 基于 STC89C52 单片机的人体感知多档位调速风扇控制系统(012703)
  • AIGC内容检测与降AI率工具实战指南
  • 2026年8月大圆柱锂电池回收哪家好?上海居民必看的优缺点排行榜
  • Oracle分页查询性能优化:从ROWNUM原理到千万级数据实战
  • Vue3+SSE实现AI流式对话打字机效果,70行代码优化用户体验
  • Visio专业绘图:从基础操作到高阶技巧的完整指南
  • AutoHotkey V2扩展库ahk2_lib快速上手:10分钟搭建一个智能截图识别工具
  • 免费开源的英雄联盟战绩查询工具Seraphine,自动禁选加秒看对手,一局排位能省下十分钟
  • 如何用 G-Helper 让华硕笔记本告别卡顿:从拆箱到收工的上手手记
  • CTFHub-WEB实战指南:从SQL注入到XSS的Web安全技能树构建
  • 科技成果转化过程中如何实现全链条智能撮合?
  • 使用CCSwitch代理将DeepSeek接入Codex:低成本AI编程助手方案
  • 高效挖掘小众网站:从信息孤岛到知识富矿的实践指南
  • 数据中心建设中的非技术挑战:能源、水资源与社区关系的平衡之道
  • 融合训练:提升大语言模型数学泛化能力的工程实践
  • Linux下构建高性能WebSocket服务器实战指南
  • 元初混沌体系架构 第二卷 第五十九篇 极端高速运动状态通信稳态架构
  • 数据模型设计全解析:从概念到物理模型的实战指南
  • FL Studio FLEX插件全解析:预设驱动音源与快速编曲实战指南
  • 【单片机课设毕设项目】基于 STM32 的垃圾桶满溢、烟雾综合监测系统开发 移动端远程可控的 STM32 智能感应垃圾桶装置研究(013103)
  • 高校科研人员如何利用平台提升成果转化成功率?
  • DeepSeek Harness 刚发布,大厂为何集体做智能体壳?六大深层逻辑拆解
  • WebSocket心跳机制:原理、实现与性能优化
  • 文件包含漏洞深度解析:从LFI/RFI原理到实战攻防与防御方案
  • NVIDIA Nemotron 3.5 Lightning:突破智能体“七秒记忆”,实现长时运行