图像搜索原理--小白语言解析

    随着苹果的人像识别解锁的出现,现在手机越来越多图像识别的功能走进大众化的接触范围内,人像识别--》手机解锁,手机支付等,花草识别--QQ浏览器识花君,红酒识别--》酒咔嚓等(如百度移动端,京东购物,QQ浏览器,品尚,海尔酒柜)等,衣服识别--》淘宝等电商类APP,以上种种的图像识别都归类为拍照搜索或以图搜图的方式进行技术实现,图像搜索的诞生,让计算机大大的减轻了人工处理的负担及更好的处理数据化的东西。

图像搜索原理--小白语言解析_第1张图片

    图像识别技术的过程分为信息的获取、预处理、特征抽取和选择、分类器设计和分类决策。简单分析了图像识别技术的引入、其技术原理以及模式识别等,通过这些技术,最终识别出我们要查询的目标。以红酒酒标搜索为案例,用最简单的话术述说一下图像识别的原理及算法。

一、原理

1、大家都知道用户搜索的步骤:拍照/选择本地图片--》提交--》正在搜索--》返回结果,


大多人认为获取用户提交的图片即为第一步,然而不是,第一步是用户看不见的步骤,也是技术行业俗称的云端入库(数据库)。


图像搜索原理--小白语言解析_第2张图片


二、算法

    阮一峰的一个最简单的实现:也是大家最常见的图像搜索原理的文章之首。原文链接http://www.ruanyifeng.com/blog/2011/07/principle_of_similar_image_search.html 

    图像搜索的技术原理是什么?

    根据Neal Krawetz博士的解释,原理非常简单易懂。我们可以用一个快速算法,就达到基本的效果。这里的关键技术叫做"感知哈希算法"(Perceptual hash algorithm),它的作用是对每张图片生成一个"指纹"(fingerprint)字符串,然后比较不同图片的指纹。结果越接近,就说明图片越相似。

    用我们公司的图像搜索做例子:

    每一个图片在图片入库时,计算分析该图片为128个特征点,每一个特征点占据一个PX(像素),并生成128位的字段进行存储。

    当用户上传了这个图片的时候,算法会再次对该图片进行解析,同样也是解析128个特征点,然后拿该位置特征点生成的字段对比数据库字段,字段越接近,返回的精准度越高。

    Q:是不是每一个像素的位置都记录一样的呢?

    A:不是的。记录的像素位置是随机性的。

    Q:那为什么会能知道这个图片的128个像素能对比到用户的图片上的128个位置呢?

    A:图片在入库,分析的过程中,会先划分为模块,模块间先进行对比特征点,比如颜色,像素位置等,再细化分析到每一个像素的特征点。从而确定最接近的那个库内的存储图片--返回给用户。

    Q:如果同一个图片但是不同颜色怎么记录色彩???

    A:位置,大小,特征点都足够让该图片核对上了,色彩不是最重要的哦。

相似度低于3%,则返回所有相似度差距在3%以内的图片,越接近返回排名越靠前。

现在市场上的大部分图像搜索原理(百度,谷歌,搜狗等),都有一个简单的流程:简化图像色彩--》计算平均值--》比较像素灰度--》计算哈希值--》生成“指纹”(字段)。每一个图片转换成字段之后都是独一无二的,计算最接近的并没有相似图片,则只返回一个。


这么说你们懂了吗?小白语言的梳理,下次我尽量多给一些技术上的细节更精准的描绘关于图像搜索的原理吧~~先支持一下好不好!

图像搜索原理--小白语言解析_第3张图片

你可能感兴趣的:(图像搜索原理--小白语言解析)