基于HOG特征与SVM的胶体气泡识别方法研究
2018-10-20潘琪尹雄秦襄培武胜超王洪娇李俊林
潘琪 尹雄 秦襄培 武胜超 王洪娇 李俊林
Abstract: In this paper, a classification method based on HOG feature and Support Vector Machine is proposed to replace manual method to detect colloid bubble in the optical fiber connector. Firstly, this method gets the image about colloidal part from video frame by frame, making positive and negative training sample set and test set according to the sample. Then, the appropriate parameters are selected to extract colloid bubble HOG features from training set and test set, and HOG features trained and tested by the Support Vector Machine (SVM) to detect whether there is a bubble. Finally, the classification results of this method are verified by artificial recognition. The results show that this method can effectively classify the samples without bubbles and gain obvious advantages in time and manpower.
引言
近年来,光纤技术随着科学研究的发展而迅速崛起为现代新兴实用门类之一。光纤活动连接器作为光纤技术中的一个重要部件,通常要经过裁缆、穿散件、剥纤、注胶、穿纤、加热、断纤、组装、机磨、检测、包装等一系列加工组装环节。然而,在其注胶和固化的过程中,会因为一些人为因素导致光纤活动连接器中间的胶体部分产生气泡,比如人工参与注胶是由于无法一直保持稳定性或者点胶路径未臻完美而产生气泡,并且在加热阶段过后会使这些胶体气泡更加明显。大约100个产品中会存在3~5个带有胶体气泡的产品。这种带有气泡的光纤活动连接器若在恶劣的工作环境下付诸使用会导致炸胶现象,会急剧缩短光纤电子元器件的使用寿命。
现阶段,对于光纤活动连接器的胶体部分是否存在气泡依然处于人工识别的阶段,也就是通过电子显微镜依靠人眼来检测产品是否合格,不仅速度慢、强度大,而且也削弱了所得结果的客观性。光纤活动连接器及内部气泡的视像效果可如图1所示。
对于传统的图像处理方法,由于不同样本的环境或多或少皆有不同,其二值化过程中的阈值则将难以选取,不同的产品生成结果也不尽相同;而对于神经网络法,虽然其适应性好、抗干扰能力强、准确率高,但识别速度较慢,并且在识别过程中容易产生过学习[1]。基于此,本文将提出一种基于方向梯度直方图特征(Histogram of Oriented Gradient,HOG)与支持向量机(Support Vector Machine,SVM)的方法來对存在胶体气泡的产品进行识别与分类。一方面,这种方法能代替人工做到产品特征的识别;另一方面,这种方法兼顾训练误差和泛化能力,在解决小样本、非线性、高维数、局部极小值等模式识别问题中具有诸多鲜明的独特优势[。下面将对此展开研究论述。
1方向梯度直方图特征
方向梯度直方图特征是一种在图像处理以及计算机视觉领域中用来检测物体的特征描述符。其主要思想是图像的局部目标的表象和现状能够很好地被梯度或方向密度分布来描述,首先将图像分成很小的细胞单元,接着采集每个细胞单元中各个像素点的梯度的或边缘的方向直方图,最后将这些直方图组合起来便构成了HOG特征描述器[3]。在此,给出HOG特征提取算法的流程步骤具体如下。
(1)使用Gamma校正法对颜色空间归一化。由于局部的表层曝光在图像纹理强度中的比重较大,为了能够减少光照等因素对图像的影响,需要将图像进行归一化处理,通常是先将其转为灰度图。Gamma压缩公式为:I(x,y)=I(x,y)gamma(1)其中,I(x,y)表示图像,gamma表示校正值。
θx,y=arctanGxx,yGyx,y(5)(3)构建每个细胞单元的梯度方向直方图。将梯度方向量化成9个直方图通道,对细胞单元中的每个像素点都基于这9个方向的直方图通道进行加权投票,其中9个直方图通道代表9个不同的梯度方向,而梯度大小则作为投影依次按投影量作为权值来叠加到这9个梯度方向所代表的直方图上。
(4)将细胞单元组合成较大的块,并在块内的梯度直方图实现归一化。考虑到局部光照和前景-背景对比度的变化,会使梯度强度的变化范围趋于宽泛,于是需要对梯度强度再次调取归一化,即对光照、阴影以及边缘予以进一步压缩。主要方法就是将若干个细胞单元组合成一个块,则可以将块内所有的细胞单元串联起来得到对应块的HOG特征。但是这些块是互有重叠的,因此每个细胞单元的特征会以不同的结果并且多次出现在最后的特征向量中。而这种引入了归一化处理后的块描述符则称为HOG描述符。
(5)收集HOG特征。收集检测窗口中所有存在重叠的块的HOG特征,以供后续分类研究使用。
2支持向量机
支持向量机是Vapnik等人根据统计学理论设计提出的一种通用学习方法,就是建立在统计学的VC维理论和结构风险最小原理基础上的,能较好地解决小样本、非线性、高维数和局部极小点等实际问题[5-8]。
对于线性不可分的问题,则需要将非线性问题转换为线性问题来求解。此时便可以利用核函数把低维输入空间中的数据通过非线性函数映射到高维属性空间,将分类问题转化在属性空间来延承此后的设计与开发[9]。属性空间中的向量的点积运算就与输入空间中的核函数对应。其分类函数将随即变换为如下形式:f(x)=sgn{∑ni=1a*iyiKxi·x+b*}(7)其中,Kxi·x为核函数。目前使用的核函数主要有4种,分别是:线性核函数、p阶多项式核函数、多层感知器核函数和RBF核函数[10]。
一般情况下,SVM分类器的设计步骤可概括描述如下。
(1)将读取的数据分为2组,一组作为训练集,一组作为测试集。其中,训练集再根据需求分为若干类。
(2)选取适当的核函数,对训练集样本的数据进行SVM训练。
(3)根据训练的结果对测试集进行测试,从而得出测试集的分类结果。
3实验分析
本次研究是基于Matlab开发环境,选择样本为采用353ND胶水进行注胶的光纤活动连接器。其中,353ND胶水是按一定比例调制混合,在80 ℃温度下经过15 min确保达到固化。
3.1实验设计
(1)使用电子显微镜对样品采集一段视频,而后利用Matlab将该视频逐帧提取,撷取其中存在气泡的50帧图片作为正样本训练集,记为pos,再取其中不存在气泡的50帧图片作为负样本训练集,记为neg。训练集取样结果即如图2所示。接着从该视频中再取其它的50帧图片作为测试集,用于此后的训练结果验证。
(2)对所有的图片进行预处理,将其图像大小归为统一。然后利用Matlab的extractHOGFeatures函数来提取每张图片的HOG特征。该函数中,参数cellsize取[8 8],blocksize取[2 2],numbins取9,即定义8*8个像素为一个细胞单元,2*2个细胞单元作为一个块,直方图通道为9。研究得到样本中的HOG特征描绘可如图3所示。
(3)使用Matlab中的fitcecoc函数对正、负样本图片的HOG特征进行SVM分类训练,且采用Gaussian RBF函数作为核函数。
(4)使用Matlab中的predict函数对测试样本进行预测分类。分类结果展示可详见图4。
3.2实验結果分析
为了验证本文方法的有效性,将以人工识别作为标准,与这50个测试样本的预测结果进行对比。研究内容可表述如下。
(1)人工识别与SVM分类器正确率对比。对比结果可见表1。
由表1实验数据分析指出,在50个小样本测试过程中,HOG特征与SVM结合的分类器在正样本识别正确率、负样本识别正确率、总识别正确率上均超过了90%。证明本文方法在一定误差范围允许的情况下的可行性。
(2)人工识别与SVM分类器时间对比。对比结果可见表2。
由表2实验数据分析指出,对于50个小样本测试,人工识别因人而异,需要5~8 min;而在本次实验Intel G1620 2.70 GHz处理器上使用Matlab训练和测试SVM分类器总共只需要14.466 2 s。证明本文方法在时间上明显优于人工识别。
4结束语
针对光纤连接器在生产过程中胶体会存在气泡的现象,本文探讨提出了一种基于HOG特征与SVM的分类方法,用以替代目前人工检测胶体中是否存在气泡的常规手段。该方法首先创建了训练集和测试集,然后根据气泡的特征,选取了适当的参数来提取胶体中气泡的HOG特征,并利用支持向量机来训练和测试气泡的HOG特征,最后能够通过计算机来运行识别胶体中是否存在气泡。相比较人工识别而言,验证了本文的方法的可行性,并在时间、人力上,取得明显的优势。
参考文献
[1] 薛丹,孙万蓉,李京京,等. 一种基于SVM的改进车牌识别算法[J]. 电子科技,2013,26(11):22-25.
[ 田有文,李天来,李成华,等. 基于支持向量机的葡萄病害图像识别方法[J]. 农业工程学报,2007,23(6):175-180.
[3] KAPOOR R, GUPTA R, SON L H, et al. Detection of power quality event using histogram of oriented gradients and Support Vector Machine[J]. Measurement,2018(120):52-75.
[4] 徐渊,许晓亮,李才年,等. 结合SVM分类器与HOG特征提取的行人检测[J]. 计算机工程,2016,42(1)56-60,65.
[5] VAPNIK V N .The nature of statistical learning theory[M]. New York: Springer-Verlag Inc,2000 .
[6] 杨淑莹. 模式识别与智能计算—Matlab技术实现[M]. 北京:电子工业出版社,2008.
[7] 郭明玮,赵宇宙,项俊平,等. 基于支持向量机的目标检测算法综述[J]. 控制与决策,2014,29(2):193-200.
[8] 汪海燕,黎建辉,杨风雷. 支持向量机理论及算法研究综述[J]. 计算机应用研究,2014,31(5):1281-1286.
[9] 汪永涛. 利用SVM的聚类算法在时间序列信号识别中的应用[J]. 微电子学与计算机,2012,29(3):182-184.
[10]许国根,贾瑛. 模式识别与智能计算的MATLAB实现[M]. 北京:北京航空航天大学出版社,2012.(上接第20页)
[6] NANDI A, MANDAL A, ATREJA S, et al. Anomaly detection using program control flow graph mining from execution logs[C]// Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. San Francisco, California, USA:ACM, 2016:215-224.
[7] SAHOO R K, OLINER A J, RISH I, et al. Critical event prediction for proactive management in large-scale computer clusters[C]// Proceedings of the ninth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Washington, DC, USA:ACM, 2003:426-435.
[8] TINGSANCHALI T, GAUTAM M R. Application of tank, NAM, ARMA and neural network models to flood forecasting[J]. Hydrological Processes, 2015, 14(14):2473-2487.
[9] WATANABE Y, MATSUMOTO Y. Online failure prediction in cloud data centers[J]. Fujitsu Scientific & Technical Journal, 2014, 50(1):66-71.
[10]FRONZA I, SILLITTI A, SUCCI G, et al. Failure prediction based on log files using random indexing and Support Vector Machines[J]. Journal of Systems and Software, 2013, 86(1):2-11.
[11]KEERTHI S S, SHEVADE S K, BHATTACHARYYA C, et al. Improvements to Platt's SMO algorithm for SVM classifier design[J]. Neural Computation, 2001, 13(3):637-649.
[12]LEVENSHTEIN V I. Binary codes capable of correcting deletions, insertions and reversals[J]. Soviet Physics Doklady, 1966, 10(1):707-710.
[13]OKUDA T, TANAKA E, KASAI T. A method for the correction of Garbled words based on the Levenshtein Metric[J]. IEEE Transactions on Computers, 1976, C-25(2):172-178.
[14]MAKANJU A A O, ZINCIR-HEYWOOD A N, MILIOS E E. Clustering event logs using iterative partitioning[C]// Proceedings of the 15th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Paris, France:ACM, 2009:1255-1264.
[15]VAARANDI R. A data clustering algorithm for mining patterns from event logs[C]// 3rd IEEE Workshop on Ip Operations & Management. Kansas City, MO, USA:IEEE, 2003:119-126.
[16]AIZAWA A. An information-theoretic perspective of tf-idf measures[J]. Information Processing & Management, 2003, 39(1):45-65.
[17]ZAHARIA M, CHOWDHURY M, FRANKLIN M J, et al. Spark: Cluster computing with working sets[C]// HotCloud'10 Proceedings of the 2nd USENIX conference on Hot topics in cloud computing. Boston, MA:ACM, 2010:10.
[18]HARRELL F E. Regression modeling strategies: with applications to linear models, logistic regression, and survival analysis[M]. New York:Springer-Verlag, 2001.
[19]LIAW A, WIENER M. Classification and regression by Random Forest[J]. R news, 2002, 2(3): 18-22.