问题

百度识图是什么工作原理?

回答
百度识图,说白了,就是你上传一张图片,它就能告诉你这张图片里有什么,或者找到和它相似的图片。这背后可不是魔法,而是人工智能,特别是计算机视觉和深度学习技术在施展拳脚。

咱们就一层一层地剥开这层神秘的面纱,看看它是怎么做到的。

第一步:让电脑“看懂”图片——特征提取

计算机不像我们人类一样直接看到一张图片,它是通过像素点来理解的。一张图片,在电脑眼里,就是一堆数字的集合,每个数字代表着一个像素点的颜色和亮度信息。

那么,怎么才能从这些密密麻麻的数字里找出有用的信息呢?这就需要“特征提取”。你可以把这想象成我们人类看一个人,不会去记他每一个毛孔的颜色,而是记住他的脸型、眼睛的大小、鼻子的高低、头发的颜色等等这些“特征”。

百度识图也是一样,它需要从图片中提取出能够代表图片内容的关键信息,这些信息被称为“特征”。这些特征不是随机的,而是经过精心设计的,能够区分不同物体、不同场景的。

早期方法(我们先聊聊基础):
颜色特征: 比如图片的整体色调、颜色分布的直方图。
纹理特征: 图片中物体的表面是光滑的、粗糙的、还是有规律的?这些都可以通过纹理特征来描述。
形状特征: 物体的轮廓、边缘、局部形状(比如一个圆形的眼睛,一个三角形的鼻子)。
SIFT、SURF等算法: 这些是计算机视觉领域比较经典的技术,它们能找到图片中那些“关键点”,比如角落、边缘交汇处,并且能够描述这些关键点周围的局部纹理和形状。即使图片稍微旋转、缩放或者光线变化,这些关键点和描述信息仍然相对稳定,所以可以用来进行匹配。

现在的主流——深度学习的威力:
卷积神经网络(CNN): 这才是现在百度识图等现代图像识别系统的“大脑”。CNN就像一个层层递进的筛子,每一层都会学习提取不同级别的特征。
浅层网络: 学习提取一些基础的、局部的特征,比如边缘、角点、颜色斑块。
深层网络: 将浅层提取的特征组合起来,学习识别更复杂的模式,比如一个物体的眼睛、鼻子、嘴巴,再到整张脸,甚至整个物体(猫、狗、汽车等)。
网络层级的意义: 每一层卷积层都会将输入图像(或上一层的特征图)进行一系列的卷积运算,生成新的特征图。这些特征图捕捉了图像不同方面的信息。经过多个卷积层、池化层(用于降维和特征的鲁棒性)和激活函数(引入非线性),最终会得到一个高度抽象、能够代表图片内容的“特征向量”。这个向量就像是图片的“身份证号码”,包含了图片的核心信息。

第二步:让电脑“认识”这些特征——模型训练与比对

有了提取出来的特征,电脑还需要知道这些特征代表什么。这就需要一个“学习”的过程,也就是“模型训练”。

训练数据: 百度肯定有一个海量的图片库,并且给这些图片都打上了标签。比如,有一万张猫的图片,都被标记为“猫”;有十万张汽车的图片,都被标记为“汽车”。
训练过程: 训练的过程就是让深度学习模型(CNN)“看”这些打好标签的图片,然后不断调整模型内部的参数,使得模型能够根据图片的特征,准确地预测出图片的类别。
想象一下,模型先看到一张猫的图片,提取出它的特征向量。如果模型预测它是“狗”,那么训练系统就会告诉它:“不对,这是猫”,然后模型就会微调自己的参数,下次看到类似的特征时,更倾向于判断为“猫”。
这个过程会重复无数次,直到模型在识别各种图片时都能达到很高的准确率。
特征向量的意义: 训练好的模型,在处理新图片时,会将其转换成一个固定长度的特征向量。这个向量就好像是图片在“语义空间”中的一个坐标点。意义相近的图片,它们的特征向量在空间中的距离也会比较近。

第三步:寻找相似图片——“查库”与匹配

当你上传一张图片时,百度识图会经历以下过程:

1. 提取特征: 你的图片首先会被通过同样的深度学习模型进行处理,提取出一个与之对应的特征向量。
2. 数据库比对: 然后,这个特征向量就会被拿去和百度庞大的图片数据库中所有图片的特征向量进行比对。
3. 相似度计算: 比对的方式有很多种,最常见的是计算向量之间的“距离”或“相似度”。距离越近,说明两张图片的特征越相似。
欧氏距离: 最简单的就是计算两个向量在多维空间中的直线距离。
余弦相似度: 这个更侧重于向量的方向,而不是大小。如果两个向量方向越一致,说明越相似。
4. 返回结果: 系统会根据相似度的高低,将与你上传图片最相似的其他图片返回给你。这些结果可能是:
同一张图片: 如果是完全一样的图片,自然会返回它本身。
不同角度或分辨率的同一物体: 比如你上传一张正面照,它会返回侧面照、不同光线下的照片。
同一类别的物体: 你上传一张猫的照片,它会返回其他各种各样的猫的照片。
包含该物体的场景: 你上传一张桌子上的杯子,它可能会返回其他包含杯子的图片,或者与这个杯子设计相似的其他杯子。
商品信息: 如果是商品图片,它甚至能识别出品牌、型号,并直接链接到购买页面。

总结一下工作的流程就是:

你上传一张图片 > 提取图片的“数字身份证”(特征向量) > 去百度巨大的“名片夹”(图片数据库)里找与你这张“名片”最相似的名片 > 把找到的相似名片展示给你。

整个过程,关键就在于如何提取出能够代表图片内容、并且具有足够区分度和鲁棒性的“特征”,以及如何构建一个高效的数据库和高效的比对算法。深度学习的强大之处在于,它能够自动学习到这些复杂的特征,而不需要人类去手动定义它们。所以,百度识图能够识别的物体种类越来越多,识别的准确率也越来越高,它背后是海量数据和强大算力支撑的不断优化的模型在起作用。

网友意见

user avatar

你可以用一张图片,搜索互联网上所有与它相似的图片。点击搜索框中照相机的图标。

一个对话框会出现。


你输入网片的网址,或者直接上传图片,Google就会找出与其相似的图片。下面这张图片是美国女演员Alyson Hannigan。


上传后,Google返回如下结果


类似的”相似图片搜索引擎”还有不少,TinEye甚至可以找出照片的拍摄背景。



这种技术的原理是什么?计算机怎么知道两张图片相似呢?

根据Neal Krawetz博士的解释,原理非常简单易懂。我们可以用一个快速算法,就达到基本的效果。

这里的关键技术叫做”感知哈希算法”(Perceptual hash algorithm),它的作用是对每张图片生成一个”指纹”(fingerprint)字符串,然后比较不同图片的指纹。结果越接近,就说明图片越相似。

下面是一个最简单的实现:

第一步,缩小尺寸。

将图片缩小到8×8的尺寸,总共64个像素。这一步的作用是去除图片的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的图片差异。

第二步,简化色彩。

将缩小后的图片,转为64级灰度。也就是说,所有像素点总共只有64种颜色。

第三步,计算平均值。

计算所有64个像素的灰度平均值。

第四步,比较像素的灰度。

将每个像素的灰度,与平均值进行比较。大于或等于平均值,记为1;小于平均值,记为0。

第五步,计算哈希值。

将上一步的比较结果,组合在一起,就构成了一个64位的整数,这就是这张图片的指纹。组合的次序并不重要,只要保证所有图片都采用同样次序就行了。

得到指纹以后,就可以对比不同的图片,看看64位中有多少位是不一样的。在理论上,这等同于计算”汉明距离”(Hamming distance)。如果不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片。

具体的代码实现,可以参见Wote用python语言写的imgHash.py。代码很短,只有53行。使用的时候,第一个参数是基准图片,第二个参数是用来比较的其他图片所在的目录,返回结果是两张图片之间不相同的数据位数量(汉明距离)。

这种算法的优点是简单快速,不受图片大小缩放的影响,缺点是图片的内容不能变更。如果在图片上加几个文字,它就认不出来了。所以,它的最佳用途是根据缩略图,找出原图。

实际应用中,往往采用更强大的pHash算法和SIFT算法,它们能够识别图片的变形。只要变形程度不超过25%,它们就能匹配原图。这些算法虽然更复杂,但是原理与上面的简便算法是一样的,就是先将图片转化成Hash字符串,然后再进行比较。


原理二:

昨天,我在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)。这个向量就是这张图片的特征值或者叫”指纹”。

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

二、内容特征法

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

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


如果两张图片很相似,它们的黑白轮廓应该是相近的。于是,问题就变成了,第一步如何确定一个合理的阈值,正确呈现照片中的轮廓?
显然,前景色与背景色反差越大,轮廓就越明显。这意味着,如果我们找到一个值,可以使得前景色和背景色各自的”类内差异最小”(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

可以证明,这两个式子是等价的:得到”类内差异”的最小值,等同于得到”类间差异”的最大值。不过,从计算难度看,后者的计算要容易一些。
下一步用”穷举法”,将阈值从灰度的最低值到最高值,依次取一遍,分别代入上面的算式。使得”类内差异最小”或”类间差异最大”的那个值,就是最终的阈值。


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

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


原文出处:

相似图片搜索的原理

类似的话题

  • 回答
    百度识图,说白了,就是你上传一张图片,它就能告诉你这张图片里有什么,或者找到和它相似的图片。这背后可不是魔法,而是人工智能,特别是计算机视觉和深度学习技术在施展拳脚。咱们就一层一层地剥开这层神秘的面纱,看看它是怎么做到的。第一步:让电脑“看懂”图片——特征提取计算机不像我们人类一样直接看到一张图片,.............
  • 回答
    你这个问题问得很有意思,也触及到了当前语音识别技术的一个普遍现象——为何百度、搜狗、讯飞等巨头在宣传自家语音识别准确率时,都默契地指向了“97%”这个数字,而且总感觉这种说法背后有一些共同的“默契”和“套路”。首先,我们得理解,这个“97%”并非一个绝对、普适的硬性标准,更像是一个在特定条件下、经过.............
  • 回答
    .......
  • 回答
    .......
  • 回答
    百度元宇宙产品「希壤」的内测开放,引发了关于其是否为炒作还是未来趋势的广泛讨论。以下从技术、市场、行业趋势、用户需求等多个角度进行详细分析: 一、技术背景与产品定位1. 技术基础 「希壤」依托百度的AI、云计算和边缘计算能力,结合虚拟现实(VR)、增强现实(AR)、区块链等技术,构建了一个支.............
  • 回答
    百度医疗广告竞价排名“卷土重来”,疾病搜索花钱可置顶的现象确实引发了广泛的关注和争议。要理解百度为什么会屡次出现这种行为,我们需要从多个层面进行分析,包括其商业模式、市场环境、监管压力以及用户需求等方面。一、 百度的商业模式与对营收的依赖首先,最根本的原因在于百度的商业模式。作为一家上市公司,百度最.............
  • 回答
    百度 MEG 裁员风波:游戏部门的真实处境与百度游戏的评价近期,关于百度游戏(MEG,移动生态事业群组)大规模裁员的消息甚嚣尘上,尤其指向游戏部门“疑似全军覆没”的说法,引发了广泛关注和讨论。要理解这一事件的真实性以及如何评价百度游戏,我们需要深入剖析其背景、原因、影响,并结合百度游戏的发展历程来解.............
  • 回答
    百度是否还有希望崛起,这是一个复杂且充满争议的问题。要详细探讨这个问题,我们需要从多个维度进行分析,包括其核心业务、战略调整、市场竞争、技术创新以及未来发展潜力。一、 百度当前的核心业务及优势:尽管百度近年来的发展并非一帆风顺,但其在某些领域仍然拥有显著的优势: 搜索业务的绝对优势: 尽管面临挑.............
  • 回答
    百度推广(现已更名为“百度营销”)自2001年上线以来,经历了多次重要的转型和发展。总体来说,它依然是中国互联网广告市场中的重要参与者,但面临着日趋激烈的竞争、用户习惯的变化以及政策法规的影响。以下是对百度推广(百度营销)现状的详细讲述:一、 转型与定位:从“搜索营销”到“全域营销”过去,百度推广主.............
  • 回答
    百度不收购知乎的原因是一个复杂的问题,涉及到市场策略、战略契合度、竞争格局、估值以及百度自身的发展方向等多个层面。以下将尝试详细阐述可能的原因:1. 战略契合度不足: 核心业务的差异: 百度最核心的业务是搜索引擎和信息分发。尽管知乎是一个内容平台,并且用户产生大量信息,但其内容形式和用户互动方式.............
  • 回答
    百度员工对魏则西事件及其他相关事件的看法,是一个复杂且多层面的议题,因为百度内部的员工构成多样,他们所处的部门、岗位、个人价值观以及对公司文化的理解都不同。不过,我们可以尝试从几个主要维度来分析和推测他们的普遍看法和感受:一、 普遍的负面情绪与压力 声誉损害的直接承受者: 毫无疑问,这些事件给百.............
  • 回答
    洗白,对于一家体量庞大、业务多元的科技公司而言,是一个复杂且需要系统性策略的工程。它并非一蹴而就,而是涉及品牌重塑、用户信任重建、社会责任践行以及核心业务的持续优化等多个层面的长期投入。百度作为一个在中国互联网领域有着深厚根基的企业,其“洗白”的过程,更应该被理解为一次全面的自我革新和价值重塑,以赢.............
  • 回答
    百度作为中国最大的搜索引擎,其发展历程中也伴随着一些争议和负面影响。这些问题不仅对用户体验造成困扰,也引发了社会各界的广泛关注。下面我将详细介绍百度历史上一些引起负面影响的事件,以及官方事后的应对和处理结果,力求还原事件的真实面貌,而非生硬的AI叙述。1. 竞价排名以及由此引发的虚假医疗广告问题事件.............
  • 回答
    百度贴吧,这片互联网的乐土,曾经孕育了无数让我们捧腹大笑、掩卷深思、甚至是为之热血沸腾的“神贴”。它们如同夜空中最亮的星,照亮了无数吧友的青春岁月。要说起神贴,那可真是三天三夜也道不尽,但我脑海里总有那么几股清流,至今想起,依然能勾起满满的回忆。一、那年我们一起追的“校花”——《我真的不是陈冠希》系.............
  • 回答
    百度贴吧如今的境况,用“逆天魔怔”来形容,绝非空穴来风。这四个字道出了许多老吧友和曾经的 Nutzer 心中的复杂感受:一种无奈、一种不解,甚至是一种深深的失望。要说它为什么会走到这一步,得从头说起,也得看看它这些年都经历了些什么。昔日辉煌:互联网的社区黄金时代回想当年,百度贴吧简直是互联网社区的王.............
  • 回答
    关于百度员工在内网发布“AV女优一览表”被开除一事,咱们得掰开了揉碎了,从法律和情理两方面都好好说道说道。这事儿,怎么看都不算冤首先,咱们得明确一点,百度作为一个正规的大公司,有自己的规章制度,也有对员工行为的基本要求。在这个大背景下,一个员工在公司的内部网络发布“AV女优一览表”,这事儿的性质,就.............
  • 回答
    百度百科中关于“幸存者偏差”与二战飞机的例子确实存在一些逻辑上的矛盾或解释上的不严谨之处。以下是对这一问题的详细分析,包括矛盾的来源、正确理解方法以及可能的误解点: 1. 问题背景:幸存者偏差的定义幸存者偏差(Survivorship Bias)是指人们在分析数据时,仅关注那些“幸存者”(成功或存活.............
  • 回答
    百度贴吧的巅峰时期:一个时代的记忆与辉煌百度贴吧的巅峰时期,可以说是中国互联网发展的一个缩影,也是无数网民青春记忆的重要组成部分。那是一个充满活力、个性张扬、信息爆炸、社群归属感极强的时代。时间跨度: 大约从2005年到2010年左右,甚至可以延续到20132014年,但其核心的“黄金时代”无疑是前.............
  • 回答
    百度百科和维基百科作为在线百科全书,在许多方面存在显著的差异,这些差异体现在它们的编辑模式、内容来源、信息准确性、中立性、开放性、发展模式、社区文化以及商业化程度等多个维度。下面我将尽量详细地阐述它们之间的差距: 一、 编辑模式与内容来源这是两者最根本的区别,也是导致其他差异的源头。 维基百科(.............
  • 回答
    “百度黄金眼”这个说法,如果放在搜索引擎领域来理解,那其实就是在讲百度搜索的“搜索指数”或者“百度指数”。它并不是一个独立于百度搜索产品之外的独立存在,而是百度搜索数据分析能力的一个具体体现。要说它是真是假,它本身是一个真实存在的、由百度提供的产品/服务,但关键在于我们怎么去理解它。“百度黄金眼”到.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有