百度图片搜索引擎原理是如何实现的

在百度图片搜索页面 只有上传一张图片就可以搜出想要的东西 请问这是基于什么原理 ?而且我是本地上传 图片 无标题 等 标识文字

图片搜索的原理有三个步骤
1. 将目标图片进行特征提取,描述图像的算法很多,用的比较多的是:SIFT描述子,指纹算法函数,bundling features算法,hash function(散列函数)等。也可以根据不同的图像,设计不同的算法,比如图像局部N阶矩的方法提取图像特征。
2. 将图像特征信息进行编码,并将海量图像编码做查找表。对于目标图像,可以对分辨率较大的图像进行降采样,减少运算量后在进行图像特征提取和编码处理。
3. 相似度匹配运算:利用目标图像的编码值,在图像搜索引擎中的图像数据库进行全局或是局部的相似度计算;根据所需要的鲁棒性,设定阈值,然后将相似度高的图片预保留下来;最后应该还有一步筛选最佳匹配图片,这个应该还是用到特征检测算法。
其中每个步骤都有很多算法研究,围绕数学,统计学,图像编码,信号处理等理论进行研究。

根据Neal Krawetz博士的解释,原理非常简单易懂。我们可以用一个快速算法,就达到基本的效果。
这里的关键技术叫做"感知哈希算法"(Perceptual hash algorithm),它的作用是对每张图片生成一个"指纹"(fingerprint)字符串,然后比较不同图片的指纹。结果越接近,就说明图片越相似。下面是一个最简单的实现:
第一步,缩小尺寸。
将图片缩小到8x8的尺寸,总共64个像素。这一步的作用是去除图片的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的图片差异。
第二步,简化色彩。
将缩小后的图片,转为64级灰度。也就是说,所有像素点总共只有64种颜色。
第三步,计算平均值
计算所有64个像素的灰度平均值。
第四步,比较像素的灰度。
将每个像素的灰度,与平均值进行比较。大于或等于平均值,记为1;小于平均值,记为0。
第五步,计算哈希值
将上一步的比较结果,组合在一起,就构成了一个64位的整数,这就是这张图片的指纹。组合的次序并不重要,只要保证所有图片都采用同样次序就行了。
得到指纹以后,就可以对比不同的图片,看看64位中有多少位是不一样的。在理论上,这等同于计算"汉明距离"(Hammingdistance)。如果不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片。
具体的代码实现,可以参见Wote用python语言写的imgHash.py。代码很短,只有53行。使用的时候,第一个参数是基准图片,第二个参数是用来比较的其他图片所在的目录,返回结果是两张图片之间不相同的数据位数量(汉明距离)。
这种算法的优点是简单快速,不受图片大小缩放的影响,缺点是图片的内容不能变更。如果在图片上加几个文字,它就认不出来了。所以,它的最佳用途是根据缩略图,找出原图。
实际应用中,往往采用更强大的pHash算法和SIFT算法,它们能够识别图片的变形。只要变形程度不超过25%,它们就能匹配原图。这些算法虽然更复杂,但是原理与上面的简便算法是一样的,就是先将图片转化成Hash字符串,然后再进行比较。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-17
原理:百度看不见图片,但是百度索引擎可以识别文字,只要你在上传图片的时候写上ALT(图片属性,属性就是这图片的内容),然后引擎才能知道你这张图片是表达什么意思的,百度才会收录。 收录后你百度一下你之前在图片里面写的文字,然后搜索百度图片可以找到你的图片了追问

【淘淘搜】是国内第一个基于视觉计算的图片购物搜索网站!其工作原理是由图像分析软件自动抽取图像的颜色、形状、纹理等特征,建立特征索引库,用户只需将要查找的图像的大致特征描述出来,就可以找出与之具有相近特征的图像   我貌似找到答案了 但是 也谢谢你   你说的那是传统的搜索逻辑 

追答

你问的是百度,我当然回答的是百度

试用了一下你说的那个图片搜索引擎,按你所说的图像分析软件自动抽取图像的颜色、形状、纹理搜索出来的精确度的差距在70%,有待改进这软件,   也算是一个综合型图片搜索引擎。

我搜索上了黑色皮衣,竟然出了两个别的不同的颜色

追问

呵呵 是的 电商网站 和 专门做搜索的网站 在逻辑上是差不多的 但是在人工干预上是差距蛮大的 分词 联想词 什么的 都不尽相同。但是百度的图片搜索会更加严谨一些 不会出来相关推荐 电商要出来一些推荐性的商品 不错 这种搜索显得人机友好又得到一定提升

追答

把相关推荐的放到最后,把完全配合的放到前面,这是用户要看到的!软件识别能力有待加强调整。

本回答被提问者采纳
第2个回答  2015-09-25
原理:百度看不见图片,但是百度索引擎可以识别文字,只要你在上传图片的时候写上ALT(图片属性,属性就是这图片的内容),然后引擎才能知道你这张图片是表达什么意思的,百度才会收录。 收录后你百度一下你之前在图片里面写的文字,然后搜索百度图片可以找到你的图片了
第3个回答  2015-04-01
这个涉及到和复杂的模式识别以及人工智能的算法

百度如何图片识别
百度通过图像识别技术实现图片搜索和识别功能。百度图片识别主要依赖于其强大的图像算法和机器学习技术。当用户上传一张图片或者输入一个关于图片的关键词时,百度图像识别系统会通过以下步骤进行工作:一、图片上传与处理 用户可以通过百度搜索引擎的图片搜索功能上传图片。上传后,百度图像识别技术会对图片进行预...

百度图片搜索引擎原理是如何实现的
3. 相似度匹配运算:利用目标图像的编码值,在图像搜索引擎中的图像数据库进行全局或是局部的相似度计算;根据所需要的鲁棒性,设定阈值,然后将相似度高的图片预保留下来;最后应该还有一步筛选最佳匹配图片,这个应该还是用到特征检测算法。其中每个步骤都有很多算法研究,围绕数学,统计学,图像编码,信号...

百度识图是怎么做到的?
图片搜索的原理有三个步骤 1. 将目标图片进行特征提取,描述图像的算法很多,用的比较多的是:SIFT描述子,指纹算法函数,bundling features算法,hash function(散列函数)等。也可以根据不同的图像,设计不同的算法,比如图像局部N阶矩的方法提取图像特征。2. 将图像特征信息进行编码,并将海量图像编码...

百度图片的以图搜图功能工作原理什麽什麽
1、自动查找图形文:可以通过两个HTML标签,即IMG SRC和HREF来检测是否存在可显示的图像文件,IMG SRC表示“显示下面的图像文件”,而HREF则表示“下面是一个链接”,这两种标签经常导向一个图像文件。搜索引擎通过检查文件扩展名来判断链接的是否是图像文件。如果文件扩展名是.GIF或.JPG,那它就是一个可...

我有几张图片想传到百度图片里,却不知道方法,谁给指教一下,别太麻烦...
百度图片不是网友传到“百度图片”栏目里,它的工作原理是就是搜索引擎功能,在网络上,图片有名称,或者配套图片的文字有关键词,当网友在百度里搜图片的时候需要输入关键词,这样百度就回从网络上找到,并显示出来。例如:某个网友搜“非主流图片”,如果网上有相关信息,百度图片会罗列出这些图片,网友...

百度图片搜索引擎如何实现全球最大的中文图片数据库?
通过百度基金会,以系统化的公益行动,推动社会进步。总结来说,百度图片搜索引擎不仅在视觉搜索上独领风骚,其背后的技术实力和企业责任更是令人瞩目。无论你是寻找资讯图片还是分享生活瞬间,百度都将成为你探索世界、获取信息的可靠伙伴。搜索之旅就在这里,期待你在百度图片的世界里发现更多精彩 ...

我想知道百度图片是怎么搜集到明星的图片的?除了媒体拍到的。或者说明 ...
而不是百度公司自己服务器里的。那些这些图片都是摄影师,网友,明星自己,以及一些其它网站自己上传的。然后百度图片的搜索引擎(俗称蜘蛛)就会去爬到网络上的那些网站里,然后获取到那些图片,并映射到百度图片的网站上供我们查看。所以你打开每张图片,都可以定位到它原来的网站上的。

百度搜索引擎工作原理,让你了解百度排名规则
深入理解百度搜索引擎的工作原理,有助于掌握其排名规则。搜索引擎主要由抓取、过滤、包含和排序模块构成,它们共同影响网页的可见性。抓取模块搜索引擎通过自动化工具“蜘蛛”(如百度蜘蛛)在互联网上抓取网页。吸引蜘蛛的方法包括外部链接和提交链接。高质量内容的网站会更易被频繁抓取。过滤模块过滤模块过滤...

如何让图片出现在百度图片里,可以搜索的到?
百度图片中的内容都是百度蜘蛛自动抓取到的。百度蜘蛛简介:百度蜘蛛,是百度搜索引擎的一个自动程序。它的作用是访问收集整理互联网上的网页、图片、视频等内容,然后分门别类建立索引数据库, 使用户能在百度搜索引擎中搜索到您网站的网页、图片、视频等内容。百度图片如何被抓取?简单来说,你在论坛、...

百度搜索优化的原理是什么,
下图:搜索引擎工作原理的图片 百度搜索优化的原理:1、www:互联网,一个巨大的、复杂的体系;2、搜集器:俗称蜘蛛,爬虫,工作任务就是访问页面,抓取页面,并下载页面;3、控制器:蜘蛛下载下来的传给控制器,功能是调度,主要来控制蜘蛛的抓取间隔,以及派最近的蜘蛛去抓取;4、原始数据库:存取网页的...

相似回答