相似图片搜索的原理(二)

二年前,我写了《相似图片搜索的原理》,介绍了一种最简单的实现方法。

昨天,我在isnowfy的网站看到,还有其他两种方法也很简单,这里做一些笔记。


一、颜色分布法

每张图片都可以生成颜色分布的直方图(color histogram)。如果两张图片的直方图很接近,就可以认为它们很相似。


任何一种颜色都是由红绿蓝三原色(RGB)构成的,所以上图共有4张直方图(三原色直方图 + 最后合成的直方图)。

如果每种原色都可以取256个值,那么整个颜色空间共有1600万种颜色(256的三次方)。针对这1600万种颜色比较直方图,计算量实在太大了,因此需要采用简化方法。可以将0~255分成四个区:0~63为第0区,64~127为第1区,128~191为第2区,192~255为第3区。这意味着红绿蓝分别有4个区,总共可以构成64种组合(4的3次方)。

任何一种颜色必然属于这64种组合中的一种,这样就可以统计每一种组合包含的像素数量。


上图是某张图片的颜色分布表,将表中最后一栏提取出来,组成一个64维向量(7414, 230, 0, 0, 8, ..., 109, 0, 0, 3415, 53929)。这个向量就是这张图片的特征值或者叫"指纹"。

于是,寻找相似图片就变成了找出与其最相似的向量。这可以用皮尔逊相关系数或者余弦相似度算出。

二、内容特征法

除了颜色构成,还可以从比较图片内容的相似性入手。

首先,将原图转成一张较小的灰度图片,假定为50x50像素。然后,确定一个阈值,将灰度图片转成黑白图片。


如果两张图片很相似,它们的黑白轮廓应该是相近的。于是,问题就变成了,第一步如何确定一个合理的阈值,正确呈现照片中的轮廓?

显然,前景色与背景色反差越大,轮廓就越明显。这意味着,如果我们找到一个值,可以使得前景色和背景色各自的"类内差异最小"(minimizing the intra-class variance),或者"类间差异最大"(maximizing the inter-class variance),那么这个值就是理想的阈值。

1979年,日本学者大津展之证明了,"类内差异最小"与"类间差异最大"是同一件事,即对应同一个阈值。他提出一种简单的算法,可以求出这个阈值,这被称为"大津法"(Otsu's method)。下面就是他的计算方法。

假定一张图片共有n个像素,其中灰度值小于阈值的像素为 n1 个,大于等于阈值的像素为 n2 个( n1 + n2 = n )。w1 和 w2 表示这两种像素各自的比重。

  w1 = n1 / n

  w2 = n2 / n

再假定,所有灰度值小于阈值的像素的平均值和方差分别为 μ1 和 σ1,所有灰度值大于等于阈值的像素的平均值和方差分别为 μ2 和 σ2。于是,可以得到

  类内差异 = w1(σ1的平方) + w2(σ2的平方)

  类间差异 = w1w2(μ1-μ2)^2

可以证明,这两个式子是等价的:得到"类内差异"的最小值,等同于得到"类间差异"的最大值。不过,从计算难度看,后者的计算要容易一些。

下一步用"穷举法",将阈值从灰度的最低值到最高值,依次取一遍,分别代入上面的算式。使得"类内差异最小"或"类间差异最大"的那个值,就是最终的阈值。具体的实例和Java算法,请看这里


有了50x50像素的黑白缩略图,就等于有了一个50x50的0-1矩阵。矩阵的每个值对应原图的一个像素,0表示黑色,1表示白色。这个矩阵就是一张图片的特征矩阵。

两个特征矩阵的不同之处越少,就代表两张图片越相似。这可以用"异或运算"实现(即两个值之中只有一个为1,则运算结果为1,否则运算结果为0)。对不同图片的特征矩阵进行"异或运算",结果中的1越少,就是越相似的图片。

(完)

时间: 2024-10-30 11:36:26

相似图片搜索的原理(二)的相关文章

相似图片搜索的原理

上个月,Google把"相似图片搜索"正式放上了首页. 你可以用一张图片,搜索互联网上所有与它相似的图片.点击搜索框中照相机的图标. 一个对话框会出现. 你输入网片的网址,或者直接上传图片,Google就会找出与其相似的图片.下面这张图片是美国女演员Alyson Hannigan. 上传后,Google返回如下结果: 类似的"相似图片搜索引擎"还有不少,TinEye甚至可以找出照片的拍摄背景. ====================================

广东医保基金安全监管再创新,推广人脸识别技术;eBay App 上线人工智能图片搜索技术

eBay App 上线人工智能图片搜索技术 Google 早前推出了 Google Lens 应用,是全新的 AI 驱动的图像搜索.用户只需拍摄一些东西,Google 那令人难以置信的高级算法就会尝试找出它是什么,并为您提供搜索结果.eBay 现在已经为其移动应用添加了类似(但不太先进)的功能,目的是为了加速 AI 布局. 用户只需按下应用程序顶部的相机按钮,然后选择新的"图像搜索"选项.经过这个操作之后您就可以拍摄照片,也可以从相册中选择一幅照片.然后,eBay 的机器学习服务器将尝

Google推桌面语音搜索 支持用图片搜索

[搜狐IT消息]北京时间6月15消息,Google今天召开搜索发布会,工程师阿米特•辛格尔(Amit Singhal)在会上作了演讲,他说新介绍的搜索"打破了人和搜索知识之间有障碍",他谈论的内容集中于三方面:移动,桌面和Google Instant.现场实录概要 如下:1.一天中移动搜索高峰出现在晚上现在谈谈"知识"(knowledge),Google最近喜欢上这个词.在搜索时,Google努力搞清搜索者的思路,搜索就是"快速获取所有知识".

语音、图片搜索代表未来

"手机百度不等于传统百度",百度移动产品副总监李东旻强调. 如果以为百度的移动战略只是将网页版搬到手机上,那就大错特错了.李东旻表示:"尽管我们的手机客户端还是叫百度,但只为移动搜索而开发,绝不等于www.baidu.com." 百度Siri 移动互联网时代,语音搜索的应用应被提到第一的位置,其次才是图像搜索及文字搜索.这是不少专家的观点.  举个例子,"如果有个人在北京三里屯附近想找家餐厅吃饭,他对手机说'我饿了,要吃泰国菜',那么这个时候他期待的是,手机根据其地理位置及语

个性化推荐?图片搜索?导购机器人?看人工智能将如何颠覆传统购物体验

为服务好今天的顾客,仅仅强调在线渠道的简单方便已经远远不能满足.良好的客户体验对每次成功的购物来说已经必不可少.根据IBM的研究,70%的客户会不再购买那些给他们带来很差购物体验的品牌.他们中的许多人甚至会因为没有买到他们感兴趣的产品而非常失落. 鉴于上面这些问题,满足客户需求的速度是至关重要的,因为人们很容易产生即时的满足感和冲动的购买欲.因此电子商务需要一个快速个性化引擎来提高客户体验.每个给予客户的建议都应该是动态的和个性化.机器学习已经被电子商务巨头如亚马逊用来提供定制化产品推荐和畅销排

谷歌称其图片搜索技术取得重大突破

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 北京时间6月23日消息,在周一于美国佛罗里达州迈阿密市举行的"计算机视觉和图案识别"技术大会上,谷歌技术人员宣布,该公司已在图片搜索技术上取得了重大突破. 科学家指出,人类在观看各类图片时,人脑可迅速根据图片内容而识别出全球各种标志性建筑,如万里长城.金字塔等等.但计算机却没有这么"智能.任何图片,如果缺乏相应文

百度李彦宏:未来五年语音图片搜索将超过文字

摘要: 9月3日上午消息,2014年 百度 世界大会在京举行.本届大会主题为拥抱移动时代,打造人与服务连接的移动开放平台.百度CEO李彦宏在会上透露,未来五年语音图像搜索会超过文字,而   9月3日上午消息,2014年 百度 世界大会在京举行.本届大会主题为拥抱移动时代,打造人与服务连接的移动开放平台.百度CEO李彦宏在会上透露,未来五年语音图像搜索会超过文字,而目前百度10%的搜索请求来自语音搜索. 在移动时代,用户的消费行为发生巨大变化,不仅倾向于移动搜索,同时在搜索形式上更加多元化.在搜索

百度搜索引擎优化系列篇:图片搜索优化

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 目前,SEO行业内大家都把眼光主要盯在百度,GOOLGE,YAHOO等各大搜索引擎的网页搜索上,对其它产品的搜索优化则研究的甚少,百度众多产品中除了网页搜索,MP3搜索和图片搜索同样聚集着巨大的人气.剧调查机构数据显示,目前图片搜索约占百度总搜索量的15%-20%,金汤网络多年来致力于搜索引擎优化的研究,今天我们大家一起将视野扩展至除网页搜索

利用Python实现简单的相似图片搜索的教程

  利用Python实现简单的相似图片搜索的教程         这篇文章主要介绍了利用Python实现简单的相似图片搜索的教程,文中的示例主要在一个图片指纹数据库中实现,需要的朋友可以参考下 大概五年前吧,我那时还在为一家约会网站做开发工作.他们是早期创业公司,但他们也开始拥有了一些稳定用户量.不像其他约会网站,这家公司向来以洁身自好为主要市场形象.它不是一个供你鬼混的网站--是让你能找到忠实伴侣的地方. 由于投入了数以百万计的风险资本(在US大萧条之前),他们关于真爱并找寻灵魂伴侣的在线广告