我正在寻找一种工具/软件,以图像为例,并扫描硬盘以找到与其相似的图像,就像Google Images在网络上所做的一样。

必须在Linux上运行。请参阅用于Windows软件的给定图像文件(在Windows上)查找视觉上相似的图像。

#1 楼

findimagedupes是Linux和其他Unix平台上常用的命令行程序。

它在所有文件中寻找相似之处。如果愿意,您可以过滤输出以仅保留有关一个文件的信息,我认为这不会对性能产生巨大的影响(最慢的部分是扫描所有文件)。某个目录下的JPEG文件,并且仅保留类似于SOMEIMAGE.jpg的图像,请运行以下命令:可以将图像指纹存储在数据库中,一旦建立数据库,搜索速度就会大大加快。有关更多详细信息,请参见手册。

评论


结果是:“ bash:findimagesdupes:找不到命令”。在网站上说,大多数linux发行版都默认安装了软件包,我检查了kal linux(已更新),并安装了“ imagemagik”。我是否需要安装其他软件包?

–user6306
2015年3月24日5:15



@Saeed您需要安装findimagedupes软件包。包括Kali在内的大多数发行版都已对其进行了预打包,而不是预先安装。

–吉尔斯'所以-不再是邪恶的'
15年3月24日在8:55

是的,您是对的,现在我运行命令,看来它正在运行,但是我既未得到任何输出,也未收到错误。

–user6306
15年3月24日在12:43

findimagedupes对我来说就像一种魅力,这里是其文档:manpages.ubuntu.com/manpages/precise/man1/…

–点
16年11月30日在13:52

我不记得是何时添加它的,但是-a选项可让您仅检查数据库中是否有短文件命中,这比检查所有文件的速度更快-像m(n文件和数据库中的n,而不是O(n ^ 2)。

– jhnc
19年2月2日在20:47

#2 楼

稍微自己动手做一点,但是您可以使用python再加上OpenCV或Numpy进行这种操作-在两种情况下,方法都是相同的:按以下方式搜索:

缩小为灰度
调整为固定大小,例如64x64
可能会生成强度的直方图


使用os.walk查找文件进行测试
生成可能匹配的指纹
比较指纹手指指纹在一起或异或相加并计数1,以衡量它们之间的差异。

如果需要,可添加GUI。 Linux,OS-X,Raspberry Pi,超级计算机。
免费-价格和FOSS兼具
GUI-许多GUI库可用-您可以将其视为加号或减号。




评论


谢谢,但那是很多DIY,而且我没有时间学习另一种编程语言,如果有一个程序可以自动执行该操作会很好。

–user6306
15年2月24日在19:44

@Conspiria如果您精通某种相关的编程语言。对于其他语言,也有类似的库。

– Eric S
19年1月22日,下午1:37

#3 楼

我建议使用geeqie,您可以通过软件包管理器(例如sudo apt install geeqie)进行安装。



您可以看到,即使图像完全不同,它也可以按皮卡丘的耳朵分组。请注意,该目录有〜3759张图像,大约需要5分钟才能完成。或者,您可以先打开cd,然后再插入路径。
键入geeqie以打开当前目录图像。

ctrl + A突出显示左侧面板中的所有图像。
单击鼠标右键打开上下文菜单。
选择“查找重复项”。菜单项
选择“低”的相似性。等待右下角的进度条完成。如果您在“自定义阈值”字段中键入但未刷新页面,则可能需要重新选择“自定义”相似性。
单击“缩略图”按钮以查看缩略图(如果未显示,请重新单击)
右键单击单个项目,然后在主窗口中选择“查看”或在“新窗口中查看”。
只有相似的图像组将可见,其余图像组将保持隐藏。在右下角,将要比较的图像文件从文件管理器拖放到右面板,它将在左面板上显示相似的图像(来自第一组)。该错误是相似度级别在这里似乎无法正常工作,只能显示完全相同而不是较低的相似度。

[UPDATE]

我只是写了一个python脚本(不相关到geeqie)执行此操作。该脚本具有强大的选项,可让您选择哈希方法或曼哈顿范数方法,将匹配/不匹配输出保存为指向特定目录的符号链接,缓存文件(您可以在几秒钟内比较10000多张图像!),并指定可接受的百分比。目前,我只能使其在Linux上运行。

评论


该脚本与Geeqie有关吗?例如,它是一个插件吗?如果不是,请编辑您的帖子。谢谢

–knb
19年8月26日在7:44

@knb与Geeqie无关。编辑。

–水果
19年8月26日在8:01

#4 楼

注意:这不再起作用。我无法再运行它来处理大多数文件,看来这个工具坏了。要安装它,请使用软件包libpuzzle-bin,它将为您提供命令行工具。

它是一个库和命令行工具,旨在比较两个图像并列出它们的相似性。我用它来查找前一阵子非常相似的文件(徽标),并且效果很好。 br />
我写了一个脚本,可用于find -exec命令。该脚本是这样的(我在一个名为simple-pd.sh的文件中拥有该脚本): />
,将MYIMAGE替换为要进行比较的图像。该脚本需要可执行权限(chmod +x simple-pd.sh

该工具(与此处的脚本一起)将在大多数时间执行您想要的操作。

我确实喜欢该工具有其缺点。它无法读取所有文件(有时会出现jpgs问题),并且在失败时很烦人。

几乎没有记录puzzle-diff的参数,您将需要对一些要测试的图像进行测试有,有些则看不到,哪一个最适合您的任务。

我的脚本假定一个非常相似(0.80)的图像报告为YES,其余图像报告为没有。您可能需要减少该数量以满足您的需求。

评论


好的,所以我在Kali上安装了libpuzzle-php,并将您的脚本放在根目录中的sh文件中,并键入命令来调用它,但我只得到“ find:`./puzzle.sh':Permission denied”

–user6306
2015年2月25日在12:08

您是否使用chmod + x puzzle.sh?

–安吉洛·福克斯(Angelo Fuchs)
2015年2月25日在12:09

@Saeed不,它不应该。您能通过电子邮件将文件(或其位置)发送给我吗?那我今晚再看

–安吉洛·福克斯(Angelo Fuchs)
2015年2月25日在12:27

好的,我已经将它们发送到您在个人资料中输入的电子邮件地址。谢谢

–user6306
2015年2月25日在12:35

@Saeed:我再也无法运行它,而且在libpuzzle中也没有找到导致此问题的错误。我现在放弃这个。

–安吉洛·福克斯(Angelo Fuchs)
15年3月20日在15:31

#5 楼

dupeGuru PE。加上它是开源的。 :)


dupeGuru图片编辑器(简称PE)是一种在计算机上查找重复的图片的工具。 dupeGuru PE是dupeGuru的老大哥。
它的工作原理类似于dupeGuru,但专门用于重复图片匹配。 dupeGuru PE可在Windows,Mac OS X和Linux上运行。

dupeGuru PE是高效的。 dupeGuru PE不仅可以找到精确的匹配项,
,而且还可以在不同类型(PNG,
JPG,GIF等)和质量的图片之间找到重复项。在Mac OS X上,dupeGuru PE可以扫描您的iPhoto库。

dupeGuru PE是可定制的。您可以调整其匹配引擎以找到
您想要查找的重复项的确切类型。帮助文件的“首选项”页面
列出了您可以更改的所有扫描引擎设置。

dupeGuru PE是安全的。其发动机在设计时特别考虑了安全性。它的参考目录系统及其分组
系统可防止您删除不是要删除的图片。

比较任何图片格式。 dupeGuru PE支持JPG,PNG,TIFF,GIF
和BMP格式。所有这些格式可以一起比较。 dupeGuru PE的Mac
OS X版本还支持PSD和RAW(CR2和NEF)格式。

支持iPhoto和Aperture库。

/>做任何你想做的复制品。您不仅可以删除dupeGuru找到的重复文件,而且还可以将其移动或复制到其他地方。还有多种方法可以过滤和排序
结果,以轻松清除错误的重复项(用于低阈值扫描)。 .com / questions / 311633 / free-visual-likeness-image-for-a-local-hard-drive-search / 453251#453251-所有内容均在此处输入链接描述)

#6 楼

尝试按磁盘上的图像搜索。它是我开发的基于浏览器的(Linux,Windows,Mac等)程序。由于其他浏览器可能不支持文件夹选择,因此与Chrome和Firefox配合使用效果最佳。您可以通过下载网页并将其托管在端口8080上来离线使用该程序,因为它不涉及图像的服务器处理。

评论


请明确说明它是否适用于Linux(由于每个问题都应该是唯一的,因此每个答案都必须是不同的,以解决该问题的独特要求)。请同时应用与另一页相同的建议。谢谢!

–尼古拉斯·拉乌尔(Nicolas Raoul)♦
19年1月22日,0:59