通俗解释~ 图像识别究竟是什么?

转载自:搜狐-KPMG大数据挖掘

丰富的数据来源总是少不了对图像的处理,本周来介绍一下图像识别技术,我们还亲手做了几种技术的比较哦~

曾几何时,图像识别技术似乎还是很陌生的一个词,现在却已经越来越贴近人们的生活了。近些年比较经典的一个应用,就是谷歌和百度推出的识图功能,相信大家都已经有所体验;IT行业同事炒得火热的人脸识别,也是图像识别应用的一个典例;当然,现在的日常生活中也少不了网上购物中的识图,只要把想买的东西拿在某宝APP拍一下,就会立即搜索出此物品的种类和价格。

不过,这些厉害的功能究竟是怎么实现的呢?未来图像识别还会和我们生活有哪些更深的接触,又跟大数据有什么关系?今天让我为你慢慢探索。

数字图像(又称数码图像或数位图像),是二维图像用有限数字数值像素的表示。完成数字图像的识别需要大致经过信息获取图像采集 -> 图像预处理(如二值化、反色等处理方法)得到特征数据 -> 训练过程(分类器涉及和分类决策) -> 识别这几个步骤。由于数字图像和文字、数字均以像素为基本元素,加之数字图像识别和数字识别的基本过程类似,我将以图像识别技术中比较基础的数字识别简单讲述识别的过程。

先介绍一下几个后面会用到的基本概念:

1. 模式识别:当前,模式识别的应用范围十分广泛,它的观察对象囊括了人类感官直接或间接接受的外界信息。而运用模式识别的目的,则是利用计算机模仿人的识别能力来辨别观察对象。模式识别方法大致可分为两种,即结构方法和决策理论方法,其中决策理论方法又称为统计方法。字符模式识别的方法可以大致分为统计模式识别、结构模式识别和人工神经网络等。上述的图像识别步骤就是模式识别的基本步骤了。

常用的模式识别方法之一是模板匹配,顾名思义,就是在输入图像上不断切割出临时图像、并将之与模板图像匹配,如果相似度足够高,就认为我们寻找到了应有的目标。最常见的匹配方法包括平方差匹配法、相关匹配法、相关系数匹配法等。以下我们都将以模板匹配为例,说明模型识别的概念。

2. 支持向量机(SVM):支持向量机是一种可训练的、基于结构风险最小化原则的通用机器学习方法,简单来说就是一种分类器。SVM方法的原理简单说即是线性化和升维的过程。SVM是从线性可分情况下的最优分类超平面发展而来的。如下图所示,空心点和实心点分别代表两类样本,H为H维分类超平面,HI和H2分别为过各类点且离分类超平面举例最近且平行于H的超平面。最优分类超平面理论要求分类超平面在可将两类正确分开的基础上,使分类间隔最大化。

3. OpenCV:是一个基于BSD许可证授权发型的跨平台计算机视觉库。与其他函数库相比,致力于真实世界的实时应用。同时通过优化的C代码的编写,为其执行速度带来了客观的提升。

4. LIBSVM:一个简单、易于使用的SVM模式识别与回归软件包。软件包内包含python,svmtoy等文件夹,以及SVM-predict,svm-scale,svm-train等。

我首先运用OpenCV函数库读取原始图像库中的图像数据,存储特征值到外部.txt文档。随后对数据进行预处理,并形成待训练数据;随后对及格过预处理的数据进行参数寻优、模型训练。在对待测试图像进行数据特征的提取后,将特征数据放进模型中进行预测并得到识别率预测值。最后对识别率情况进行分析。

下面是我的实战步骤:

1. 图像采集

我手绘了0-9共十个数字,每个数字10个样本,共100个样本。样本均为5*5模板。通过代码实现获得了手写数字图像的特征信息。

2. 预处理

在得到特征数据后,需对特征数据进行一定的预处理以保证后续工作的正常进行。此次我们选用归一化处理,用svm-scale实现。进行归一化,目的是保证提取的数据处在一定范围内,避免过大或过小的情况发生,进而为模型的训练提供了保障。

此外,过程中还运用了参数寻优,目的是为模型的训练提供好的参数,以得到准确率更高的模型。下图为对数据进行参数寻优操作的截图。

上图中最后一行就是最佳参数。通常,我们会使用几个正确的模型,提取出特征值,作为参数寻优的结果;之后进行预测工作,都要以寻找出来的最优值作为标杆,进行预测,满足这些特征值的就会被识别成功。

3. 模型训练

模型训练即是根据之前提取到的样本特征数据,放到LIBSVM分类器中进行分类,分类的依据是每组特征值的标签。SVM机器学习方法是基于统计学理论的,因此大量的数据会得到更为精准的模型文件。

实战结果:

我进行了几组简单的试验。

1. 使用相同的训练集和测试样本,分别基于模板匹配法和基于SVM的识别方法,以观察数据维度对于识别准确率的影响。

运用方法

16维

25维

模板匹配法

70%

81%

SVM方法

84%

88%

原因分析:由于模板匹配方法使用网络特征的提取方法,对每个区域内黑色像素个数进行统计,计算得到每个区域占得总体区域的百分比;而SVM是针对每个像素点的坐标进行统计分析的,加之高纬度可以使得坐标定位更加精准,因此SVM方法优势较大。

结论:在相同测试样本、相同纬度的前提下,运用SVM方法训练得到的模型分别在16维和25维下预测,运用SVM方法得到的准确率高于模板匹配法。

2. 运用SVM方法,使用相同训练样本和测试样本,在不同维度下对比准确率。训练样本500个,测试样本100个。

运用方法及准确率

16维

25维

64维

80维

SVM

86%

88%

99.5%

99.5%

结论:对于相同样本,使用SVM方法对模型进行预测,维度的高低对于准确率起到一定积极的影响,但准确率不会随维度的升高而无限升高。

3.对于相同测试样本,在相同维度下,测试训练样本数对于准确率的影响。

样本维度

训练集样本数

准确率

16维

100

84%

300

96%

700

98%

原因分析:由于SVM方法的图像识别是基于统计学理论进行研究的,因此大量的训练样本有助于得到更加准确的训练模型,对模型训练的预测准确度起到一定积极的影响。

图像识别和大数据有着密不可分的关系。有前辈指出,数据挖掘=大数据+机器学习;也有专家认为,模式识别=数据+机器学习。大数据是一个时代性的概念,也是社会发展的必然产物。我们通过大数据技术实现我们最终的目的——即数据挖掘。无疑,“图像”也是一种数据,而图像识别是将非结构化数据结构化的必要过程。

图像识别技术日益火热,每年都在以火箭般的速度更新着新的技术和成果,当然并不局限于图像处理和购物方面。如今,图像识别技术更是从搜图识物发展到了视频领域,不断给我们带来惊喜。比如新兴的互动视频技术video++,已经可以实现在视频中捕捉待识别的人脸和同款服饰。科技是第一生产力,在21世纪,最火的技术之一当属人工智能,然而图像识别技术又是人工智能的核心,它是未来智能AI的“眼睛”,它的发展必然会带动人工智能的迅速发展。未来已至,你准备好了吗?

参考文献:曾志强,支持向量分类的训练与简化算法研究[D]浙江:浙江大学2007.6,29.

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页