图像识别如何在Google Shopper中运行?

时间:2010-09-16 12:56:47

标签: algorithm image-recognition

我很惊讶这个软件有多好(和快速)。我在昏暗的灯光下将手机的相机悬停在书籍封面的一小块区域上,Google Shopper只花了几秒钟来识别它。这几乎是神奇的。有谁知道它是如何工作的?

3 个答案:

答案 0 :(得分:2)

我不知道Google Shopper 实际是如何运​​作的。但它可以这样工作:

  • 拍摄图像并转换为边缘(使用边缘滤镜,保留颜色信息)。
  • 找到边相交的点并列出它们的列表(包括颜色和交叉边的角度)。
  • 通过选择高对比度点对并测量它们之间的距离,转换为与旋转无关的度量。现在书的封面被表示为一堆数字:(edgecolor1a,edgecolor1b,edgecolor2a,edgecolor2b,distance)。
  • 选择最值得注意的距离值对和距离比率。
  • 将此数据作为查询字符串发送给Google,在那里找到最相似的矢量(可能使用直接最近邻居计算,或者可能使用经过适当训练的分类器 - 可能是支持向量机)。

Google Shopper还可以发送整个图片,此时Google可以使用功能更强大的处理器来处理图像处理数据,这意味着它可以使用更复杂的预处理(我选择上述步骤非常简单可以在智能手机上使用。)

无论如何,一般步骤很可能是(1)提取比例和旋转不变特征,(2)将特征向量与预先计算的特征库相匹配。

答案 1 :(得分:1)

无论如何,模式识别/机器学习方法通​​常基于:

  1. 从可以描述为数字的图像中提取功能。例如,使用边缘(如之前解释的Rex Kerr),颜色,纹理等。描述或表示图像的一组数字称为“特征向量”或有时称为“描述符”。在提取图像的“特征向量”之后,可以使用距离或(差异)相似度函数来比较图像。
  2. 从图片中提取文字。有几种方法可以做到这一点,通常基于OCR(光学字符识别)
  3. 使用功能和文本对数据库执行搜索,以便找到最接近的相关产品。

    由于算法经常在图像上找到特定的徽标,因此图像也可能会被插入到子图像中。

    在我看来,图像功能被发送到不同的模式分类器(能够使用特征向量作为输入预测“类”的算法),以便识别徽标,然后,产品本身。

    使用这种方法,它可以是:本地,远程或混合。如果是本地的,则在设备上执行所有处理,并且只将“特征向量”和“文本”发送到数据库所在的服务器。如果是远程的,整个图像都会进入服务器。如果是混合的(我认为这是最可能的),部分在本地执行,部分在服务器上执行。

    另一个有趣的软件是谷歌谷歌,它使用CBIR(基于内容的图像检索)来搜索与智能手机拍摄的照片相关的其他图像。它与Shopper解决的问题有关。

答案 2 :(得分:-1)

模式识别。