ImageMagick 图像相似度调研报告

简介: 文档声称该改进的算法对于轻度的图像攻击(缩放,旋转[黑色背景],平移[黑色背景],亮度变换,对比度变换,伽马变换,高斯模糊,JPEG压缩,噪声,镜像或转置,水印,弧形畸变,桶形畸变,枕形失真,切向畸变)具有一定的鲁棒性

文档声称该改进的算法对于轻度的图像攻击(缩放,旋转[黑色背景],平移[黑色背景],亮度变换,对比度变换,伽马变换,高斯模糊,JPEG压缩,噪声,镜像或转置,水印,弧形畸变,桶形畸变,枕形失真,切向畸变)具有一定的鲁棒性



一、ImageMagick中的pHash算法

根据ImageMagick 官方文档的说明,它的相似图像对比算法是来自于《Perceptual Hashing for Color Images Using Invariant Moments》(基于不变矩的彩色图像感知哈希算法),但是是它的改进版本。


主要的不同点在于:


1.如果是彩色图像,原论文使用的彩色空间是 HSI 和 YCbCr,而ImageMagick 使用的是sRGB和HCLp(然后每个通道计算Hu矩);如果是灰度图像,只使用一个通道。


2.最后计算相似度距离采用的公式不同,论文采用两幅图像哈希值差的平方和的开方,而ImageMagick采用的是均方根误差(RMSE)。


特点:


1.由于引入了 Hu矩,该算法对缩放、旋转(黑色背景)、平移、翻转具有一定的鲁棒性,由于采用了HCLp彩色空间,加强了对缩放、旋转(黑色背景)、平移、翻转的不敏感性,但增加了对光照、对比度、Gamma变化的敏感性。


2.由于相似度计算使用了均方根误差,所以对于镜像变换具有一定的鲁棒性。


3.由于彩色图像是根据6个通道计算的7维的Hu矩,所有产生的哈希码为6x7=42位,但灰度图像由于只计算一个通道,只有7位的哈希码,所以彩色图像与灰度图像不能直接用哈希码进行计算。



二、什么是Hu矩

Hu 矩是由Hu在1962年提出的,归一化的中心矩对于图像的平移、缩放、旋转具有不变性(直接使用普通矩或中心矩不具有不变性)。


p+q阶普通矩的公式为


image.png

image.png

其中f(x, y)为图像的灰度分布。

p+q阶中心矩的公式为

image.png

其中x0 = M10/M00y0=M01/M00

归一化的中心矩的公式为

image.png

其中 r=(p+q+2)/2,  (p+q = 2, 3, ...)

Hu不变矩是利用二阶和三阶的中心矩构造了七个不变矩,它们在相似图像的条件下可以保持平移、缩放、旋转不变。

定义如下:

image.png

其中npq(p, q = 0, 1, 2, ...)是归一化的中心矩。


三、测试实验

在相同尺度下实验


A 样本:“有大范围平移+大范围裁剪+大范围水印,没有翻转+旋转”


B 样本:“在没有大范围平移+大范围裁剪+大范围水印,有翻转+旋转”





ImageMaigck




A 样本运行结果


image.png

image.png

B 样本运行结果

image.png

我优化的算法


A 样本运行结果

image.png

B 样本运行结果

image.png


目录
相关文章
|
9月前
|
编解码 算法 数据挖掘
【数据挖掘】聚类趋势估计、簇数确定、质量测定等评估方法详解(图文解释 超详细)
【数据挖掘】聚类趋势估计、簇数确定、质量测定等评估方法详解(图文解释 超详细)
235 0
|
2月前
|
机器学习/深度学习 人工智能 算法
VE-Bench:北京大学开源首个针对视频编辑质量的评估指标,从多角度考虑审美并准确地评估视频编辑效果
北京大学开源了首个针对视频编辑质量评估的新指标 VE-Bench,旨在通过人类感知一致的度量标准,更准确地评估视频编辑效果。
62 14
VE-Bench:北京大学开源首个针对视频编辑质量的评估指标,从多角度考虑审美并准确地评估视频编辑效果
|
4月前
|
机器学习/深度学习 人工智能 算法
基于YOLOv8的钢铁缺陷实时检测系统【训练和系统源码+Pyside6+数据集+包运行】
基于YOLOv8的钢铁缺陷实时检测系统,通过1800张图片训练,开发了带GUI界面的检测系统,支持图片、视频和摄像头实时检测,提高生产效率和产品质量。系统基于Python和Pyside6开发,具备模型权重导入、检测置信度调节等功能。项目代码、数据集可通过特定链接获取。
100 1
基于YOLOv8的钢铁缺陷实时检测系统【训练和系统源码+Pyside6+数据集+包运行】
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
趋势来袭!大模型时代的文档图像发展与图像安全剖析
趋势来袭!大模型时代的文档图像发展与图像安全剖析
81 1
|
8月前
|
自然语言处理 安全 数据安全/隐私保护
不影响输出质量还能追踪溯源,大模型无偏水印入选ICLR 2024 Spotlight
【6月更文挑战第7天】研究人员提出了一种无偏水印技术,能在不降低大型语言模型(LLMs)输出质量的情况下实现追踪和归属。此方法被ICLR 2024选为Spotlight论文,保证水印不影响模型性能,保护知识产权,防止滥用。无偏水印的挑战包括设计无损模型质量的实现、有效检测及安全防范措施。[论文链接: https://openreview.net/pdf?id=uWVC5FVidc]
91 2
|
前端开发 计算机视觉
开源人体动作识别OpenPose的安装与测试
人体关键点检测对于描述人体姿态,预测人体行为至关重要。因此人体关键点检测是诸多计算机视觉任务的基础。其在动作分类,异常行为检测,以及人机交互等领域有着很广阔的应用前景,是计算机视觉领域中一个既具有研究价值、同时又极具挑战性的热门课题。
2742 0
|
SQL 机器学习/深度学习 开发框架
【网安AIGC专题10.25】8 CoLeFunDa华为团队:静默漏洞检测(识别+多分类)+数据增强、样本扩充+对比学习+微调+结果分析(降维空间,分类错误样本归纳,应用场景优势,有效性威胁分析)
【网安AIGC专题10.25】8 CoLeFunDa华为团队:静默漏洞检测(识别+多分类)+数据增强、样本扩充+对比学习+微调+结果分析(降维空间,分类错误样本归纳,应用场景优势,有效性威胁分析)
323 0
|
机器学习/深度学习 人工智能 达摩院
达摩院OpenVI-图像MOS评价协助清理“垃圾”照片
达摩院OpenVI-图像MOS评价协助清理“垃圾”照片
|
存储 算法 数据可视化
利用TCseq包进行基因表达趋势分析
TCseq包提供了一个统一的套件去处理不同时序类型的数据分析,可以应用于转录组或者像ATAC-seq,Chip-seq的表观基因组时序型数据分析。该包主要的集中于不同时间点的差异分析,时间趋势分析及可视化作图。
512 0
|
PyTorch 算法框架/工具 计算机视觉