gpt4 book ai didi

c# - 如何检查重复图像? C#

转载 作者:行者123 更新时间:2023-11-30 21:43:56 25 4
gpt4 key购买 nike

伙计们,这就是我所拥有的。

我有一个包含大约 30k 图片的 1 个文件夹(很久以前的旧备份)第二个文件夹用作当前备份。

所以我只是想检查第一个文件夹中是否有第二个文件夹中没有的图片.. 如果我在文件夹 1 中有我在文件夹 2 中已有的图片,那么它将从中删除文件夹 1。

我想也许我应该比较文件夹 1 中的 1 张图片与文件夹 2 中的所有图片在磁盘上的大小。(有 2 个 for 循环)

但我看到我有 2 张不同的图片,大小完全相同(磁盘上的大小)。所以我不能真正使用它。

有人知道我该怎么做吗? (记住我在文件夹 1 中有大约 30k 张照片,所以算法应该是有效的)ץ

得到了同一张图片的不同哈希值。 :

            using (var md5 = MD5.Create())
{
using (var stream = File.OpenRead("C:/Users/Sam/Desktop/1.jpg"))
{
Console.WriteLine(BitConverter.ToString(md5.ComputeHash(stream)));
}
using (var stream2 = File.OpenRead("C:/Users/Sam/Desktop/2.jpg"))
{
Console.WriteLine(BitConverter.ToString(md5.ComputeHash(stream2)));
}
}

嗨,我确实使用了这个算法: Algorithm to compare two images in C#

但是速度太慢了。 (将 1 张图像与其他 100 张图像进行比较大约需要 2-3 秒,因此比较所有图像(大约 30k)将永远如此)..

最佳答案

从每张图片计算一个哈希值,并使用哈希值来比较文件夹

关于c# - 如何检查重复图像? C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41185101/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com