4个版本
0.2.0 | 2024年2月4日 |
---|---|
0.1.2 | 2023年2月13日 |
0.1.1 | 2023年2月10日 |
0.1.0 | 2023年2月10日 |
在图像分类中排名372
每月下载43次
14KB
273 行
dupimg
一个简单的重复图像查找器。
概述
使用由dssim-core
实现的SSIM算法检查两张图像之间的相似度。通过首先将图像内部缩放到200x200,可以在任何大小的JPG和PNG图像上工作。
多线程运行,每个图像都会与另一个图像进行检查,没有例如提前找到可能的候选者的启发式方法,因此虽然这已经有所优化,但检查许多文件仍然可能非常慢。
注意:我在Rust方面相当不熟练,所以这里肯定有一些愚蠢的代码。
安装
运行cargo install dupimg
,或者克隆此仓库并从项目根目录运行cargo install --path .
。
基本用法
dupimg[-r 目录1/目录2/ ...]文件1.jpg 文件2.png...
输出格式
<IMAGE 1> # path to first image
<IMAGE 2> # path to second image
SSIM: 0.0... # positive and unbounded; lower values indicate a closer match
阈值
可以通过例如-t 0.01
设置显示匹配的阈值。只有SSIM小于或等于此阈值的匹配才会显示。
默认值为0.1,因为这通常会产生很少的误报。
递归
-r
可以指定以启用遍历指定的目录。
当递归启用时,仅检查PNG和JPG文件。这也适用于命令行中指定的文件名。
有关更多信息,请参阅dupimg --help
。
注意
所有程序输出都是未排序和不稳定的,不要依赖它。
致谢
此crate中的所有代码都是我自己编写的。
所有使用到的库的功劳都归功于它们的各自作者。
依赖项
~10–20MB
~252K SLoC