计算图像相似度的算法有哪些
SIM = Structural SIMilarity(结构相似性),这是一种用来评测图像质量的一种方法。
由于人类视觉很容易从图像中抽取出结构信息,因此计算两幅图像结构信息的相似性就可以用来作为一种检测图像质量的好坏.首先结构信息不应该受到照明的影响,因此在计算结构信息时需要去掉亮度信息,即需要减掉图像的均值;其次结构信息不应该受到图像对比度的影响,因此计算结构信息时需要归一化图像的方差;最后我们就可以对图像求取结构信息了,通常我们可以简单地计算一下这两幅处理后的图像的相关系数.然而图像质量的好坏也受到亮度信息和对比度信息的制约,因此在计算图像质量好坏时,在考虑结构信息的同时也需要考虑这两者的影响.通常使用的计算方法如下,其中C1,C2,C3用来增加计算结果的稳定性: 2u(x)u(y) + C1L(X,Y) = ------------------------ ,u(x), u(y)为图像的均值 u(x)^2 + u(y)^2 + C1 2d(x)d(y) + C2C(X,Y) = ------------------------,d(x),d(y)为图像的方差 d(x)^2 + d(y)^2 + C2 d(x,y) + C3S(X,Y) = ----------------------,d(x,y)为图像x,y的协方差 d(x)d(y) + C3而图像质量Q = [L(X,Y)^a] x [C(X,Y)^b] x [S(X,Y)^c],其中a,b,c分别用来控制三个要素的重要性,为了计算方便可以均选择为1,C1,C2,C3为比较小的数值,通常C1=(K1 x L)^2, C2=(K2 xL)^2, C3 = C2/2, K1。
谷歌人工智能写作项目:神经网络伪原创
相似图片搜索的原理是怎样的?
2011年,Google把“相似图片搜索”正式放上了首页写作猫。你可以用一张图片,搜索互联网上所有与它相似的图片。点击搜索框中照相机的图标。一个对话框会出现。
你输入网片的网址,或者直接上传图片,Google就会找出与其相似的图片。下面这张图片是美国女演员Alyson Hannigan。
上传后,Google返回如下结果类似的”相似图片搜索引擎”还有不少,TinEye甚至可以找出照片的拍摄背景。这种技术的原理是什么?计算机怎么知道两张图片相似呢?
根据Neal Krawetz博士的解释,原理非常简单易懂。我们可以用一个快速算法,就达到基本的效果。
这里的关键技术叫做”感知哈希算法”(Perceptual hash algorithm),它的作用是对每张图片生成一个”指纹”(fingerprint)字符串,然后比较不同图片的指纹。
结果越接近,就说明图片越相似。下面是一个最简单的实现:第一步,缩小尺寸。将图片缩小到8×8的尺寸,总共64个像素。
这一步的作用是去除图片的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的图片差异。第二步,简化色彩。将缩小后的图片,转为64级灰度。也就是说,所有像素点总共只有64种颜色。
第三步,计算平均值。计算所有64个像素的灰度平均值。第四步,比较像素的灰度。将每个像素的灰度,与平均