贾润亮
(山西省财政税务专科学校信息学院,太原 030024)
一种新的计算机视觉算法
贾润亮
(山西省财政税务专科学校信息学院,太原 030024)
受蚂蚁金服计算机视觉项目组委托,为了提高计算机视觉的识别效率和准确率,利用机器学习的思想开发自动进化图像学习机,将MATHEMATICA Cloud作为改学习机的计算云、搜索云,将学习函数和决策函数嵌入到学习机中,从而实现由学习机录入图像并导入MATHEMATICA Cloud进行计算和搜索的功能,利用搜索结果来锻炼学习机的学习函数,利用计算结果来锻炼学习机的决策函数,从而实现高效率的识别速度与高准确率的识别效果。基于蚂蚁金服提供的验算实例进行仿真实验,并从计算速度、收敛情况、识别精度等方面同现在常用的识别算法进行对比,结果显示:新算法的图像识别能力颇佳,与传统算法相比,新算法具有更快的计算速度、绝对收敛性和远高于传统算法的识别精度。
MATHEMATICA Cloud;机器学习;决策函数;识别精度
计算机视觉是实现计算机智能化的瓶颈所在,当下流行的计算机视觉算法难以在不同情况下正确识别对象,且计算速度较慢,识别精度较差[1-2]。
鉴于此,国内外学者对计算机视觉算法进行了大量的研究。Giovanni Maria Farinella[3]通过ASM算法,对图形的灰度进行处理,可以实现不同灰度情况下对图形对象的高识别率,但是文献[3]对饱和度的处理能力较差,如果涉及到色彩丰富的彩色图片,文献[3]的识别出错率极高;BentkowskaKafel[4]、Morrison C[5]等人提出的基于KD-Tree算法,将特征点匹配问题转化为在高维空间中距离矢量的检测搜索问题,使得图像识别问题在数学层面上得到了很好的描述,但是文献[4-5]的计算速度较慢,在高饱和度和高光照的情况下识别精度较差;Ungaisalánki R等[6]通过LMeds算法实现在复杂情况下的算法收敛,而且函数不需经过复杂的矢量计算,对于位图的识别效果较好,但是文献[6]所建立的识别模型对于特征点的提取效果欠佳,同一对象在不同情形下无法做到有效识别;Bastidas-Rodriguez M X等[7]基于M-estimators算法实现了同一对象在不同情形下的高度收敛,同时很好地兼容了灰度处理和饱和度处理,但是文献[7]无法就矢量图进行处理,极大地限制了M-estimators算法的适用性;Ferraz A,Brito J H等[8]提出的基于RANSAC算法实现了同一对象的在不同情形下的高度收敛,同时很好地兼容了灰度处理和饱和度处理,实现了不亚于M-estimators算法的位图处理能力,同样文献[8]无法就矢量图进行处理,极大地限制了M-estimators算法的适用性。
Bhanja S[9]和Giovanni Maria Farinella[10]发现基于云的图像处理算法具有很高的识别精度,而且计算速度极快,是未来计算机视觉算法发展的主流方向,但是文献[9]和文献[10]并没有针对这一思路进行相关工作,仅仅是根据实验结果提出了可能性构想。李闯[11]发现基于解析法、半解析法可以极大提高计算速度,但文献[11]研究的是边坡问题,而非计算机视觉问题。鉴于此,本文受蚂蚁金服计算机视觉项目组的委托,以付费但稳定的云MATHEMATICA Cloud为计算云和搜索云,使用半解析法函数提高学习函数的学习能力和决策函数的决策能力,并从计算速度、收敛情况、识别精度等方面与现在常用的识别算法进行对比,以验证本文算法对于计算机视觉问题的适用性和优越性。
对于机器学习,将感兴趣的数据集合命名为D,集合D也被称为训练数据,机器学习的目标便是确定假设空间(命名为H)中的最佳假设。令P(h)表示为未训练数据集合D之间的假设h所拥有的初始概率,将其命名为prior probability。prior probability表示在当前知识背景之下,假设h为正确假设的概率。同理,令P(D)表示欲观察训练数据集合D的prior probability。P(D)反映了在训练数据D之后假设h成立的置信度。
根据Bayes Rule:
(1)
在机器学习的过程中,机器学习考虑候选假设集合H,并在候选假设集合H中寻找上述给定的数据集合D。在此,可能性最大的假设被命名为h(h∈H),这样的具有最大可能性的假设被称为极大后检假设。
(2)
式中hMAP被称为极大后检假设。联立式(1)和式(2),得到
(3)
因为P(D)并不是依赖于h的变量,而是一个常量,故而,式(3)可以写作
(4)
式(4)可以做进一步的简化,如果假定H中每个假设有相同的prior probability,就可以使用极大似然假设:
(5)
式中hML被称为极大后检假设。对于H中的任意h,有
(6)
通过不断学习和训练,机器便拥有了对某一特定问题的处理能力。如此便搭建了学习机的学习函数和决策函数。
3.1 图像信息提取
Step1:对原始数据进行标准化采集,该集合x的维度为P。
x=(X1,X2,X3,…,XP)T,
(7)
式中n(n>P)个样品Xi,
Xi=(X1i,X2i,X3i,…,XPi)T,i=1,2,3,…,n。
(8)
针对样本阵元进行标准化变换
(9)
(10)
(11)
称Z为标准化阵。
Step2:为标准化阵Z的矩阵系数
(12)
其中,
(13)
Step3:求解R的特征方程
|R-λIP|P=0,
(14)
按照
(15)
Step4:将指标变量转化为主成分
(16)
式中:U1为第1主成分;U2为第2主成分;U3为第3主成分;UP为第P主成分。
Step5:对载入的人脸图像进行几何归一化处理。假设载入的人脸图像的像素点为m×n,则将像素储存在列向量(X1,X2,X3,…)T中。
Step6:求的平均人脸:
(17)
训练样本的协方差矩阵为
(18)
取差值向量
wi=xi-μx,
(19)
令
w=(w1,w2,w3,…,wn)。
(20)
Step7:投射到待检测空间,则每幅图像在特征空间的坐标函数为
yi=UT(xi-μx)=UTwi,
(21)
式中
(22)
同样可以将待测图像xtest投射到特征子空间之中,
ytest=UT(xtest-μx)。
(23)
Step8:利用距离分离器进行辨识,目标函数为
minDist=min‖yi-ytest‖。
(24)
3.2 云计算平台搭建
MATHEMATICACloud是针对正版MATHEMATICA软件开发的云计算服务平台,之所有没有选择常用的云计算平台Hadoop,主要有4点原因:
1)MATHEMATICACloud面对付费用户,进行了初步的信息筛选[12];
2)MATHEMATICACloud中涉及到大量的人文数据、经济数据、地理数据,数据库实施维护,其真实性得到了保障[12];
3)面向互联网具有自己的搜索引擎,其搜索引擎基于机器学习算法,对于信息具有很强的识别与筛选能力[13];
4)该软件为付费用户提供了快捷便利的接口,只需要在客户端上进行程序编写便可以自动导入云中进行计算[14]。
表1 程序主要函数
表1展现了计算机人像识别程序的主要函数。利用这些函数可以对图像进行复杂的操作,并最终实现识别人像的目的。
依照上述算法(Alg1),开发计算机视觉软件——COMPUTER_VISION,并利用COMPUTER_VISION进行仿真验算,检验本文算法(Alg1)的图像识别能力,并同现在常用的计算机视觉算法——ASM(ActiveShapeModel)算法(Alg2)、KD-Tree算法(Alg3)、LMeds算法(Alg4)、M-estimators算法(Alg5)、RANSAC算法(Alg6)进行对比。
4.1 对象识别能力
如图1所示,给定COMPUTER_VISION一幅图像,要求COMPUTER_VISION搜索出图中最大的汽车并确定该对象对应的英文名称,且该名称必须为美国俚语(真实结果为automobile)。
图1 求图中对象对应的美国俚语
COMPUTER_VISION在录入图像之后,对图像信息进行提取,抽取其中对象(图2(a)),并将无用背景进行剔除,以减少计算量(图2(b))。而后,将抠图之后的对象上传到MATHEMATICACloud并进行搜索操作,寻找出对应的结果,并将搜索结果传递回COMPUTER_VISION以训练学习函数。在对学习函数进行训练之后,COMPUTER_VISION矫正图像信息和关键字,上传到MATHEMATICACloud进行搜索,如此往复直至达到COMPUTER_VISION决策函数的要求。
根据图2(b)的抠图效果,COMPUTER_VISION给出了6组可能俚语,具体情形如图3。在得到每一次俚语以及其对应的概率之后,会对决策函数进行一次训练,而后决策函数会对学习函数进行决策以获得下一次的搜索。
根据图3可以看出,automobile为图形中最大汽车的美国俚语名称,与真实结果相同,说明COMPUTER_VISION的识别能力极佳。
(a)信息提取
(b)抠图图2 COMPUTER_VISION对输入图像进行初步处理
图3 6种可能俚语以及其对应的概率
4.2 计算速度
图4为hobbit1中的视频截图,图中有些许半兽人和些许矮人,需要从中识别ThorinOakenshield(矮人领袖),故而在计算之时需要排除半兽人,从矮人之中再次寻找ThorinOakenshield。
图4 寻找图中的Thorin Oakenshield
用本文算法(Alg1)、ASM(ActiveShapeModel)算法(Alg2)、KD-Tree算法(Alg3)、LMeds算法(Alg4)、M-estimators算法(Alg5)、RANSAC算法(Alg6)分别进行计算,统计计算时长,具体结果如图5(6种算法皆寻找出ThorinOakenshield)。
图5 6种算法的计算耗时
根据图5可以看出,本文提出的算法(Alg1)的计算速度最快,耗时为0.73h;M-estimators算法(Alg5)的计算速度次之,耗时为5.69h;RANSAC算法(Alg6)计算速度最慢,耗时为11.02h。总体而言,本文提出的算法(Alg1)的计算耗时是ASM算法(Alg2)的9.75%,是KD-Tree算法(Alg3)的11.35%,是LMeds算法(Alg4)的8.32%,是M-estimators算法(Alg5)的12.83%,是RANSAC算法(Alg6)的6.62%,说明本文提出的算法(Alg1)的计算速度远高于其他5种算法,这是因为MATHEMATICACloud中含有ThorinOakenshield的全部信息,在搜素与计算之时,本文提出的算法(Alg1)因为受到了不断的训练,导致其计算速度成指数型增长。
4.3 收敛情况
如果某种图像识别算法可以识别出某种对象并且识别正确,说明该算法在该情况下收敛,否则称该算法在该情况下不收敛,收敛情况代表了算法的健壮性。图6为“十月围城”的海报,需要从中识别所有演员的姓名(9人),因为海报灰度单一、光照复杂,某些算法在识别之时会出现识别不出或者识别错误的现象(算法在该情况下不收敛)。
图6 识别图中的演员姓名
根据图7可以看出,本文算法(Alg1)识别出了所有演员,说明本文算法(Alg1)在9种情形下皆收敛。总体而言,本文提出的算法(Alg1)的识别人数是ASM算法(Alg2)的900.00%,是KD-Tree算法(Alg3)的300.00%,是LMeds算法(Alg4)的150.00%,是M-estimators算法(Alg5)的112.50%,是RANSAC算法(Alg6)的112.50%,说明本文提出的算法(Alg1)的函数收敛数目远高于其他5种算法,这是因为本文算法(Alg1)提取了图像的关键信息,对灰度、光照的规避效果较好。
图7 6种算法的收敛情况/人
4.4 识别精度
对于同一对象不同状态下的图像,利用图像识别算法判断对象任意两种状态下的相似程度。图8共有5幅图像,皆为DaenerysTargaryen的形象。对于任何一种算法,计算任意两幅图之间的相似程度,共10组数据,取其平均值,该平均值便代表了识别效果的精确度。
根据图9可以看出,本文算法(Alg1)识别精度最高,精度为0.992 524 055 242 956。其次为RANSAC算法(Alg6),精度为0.599 258 852 233 269。LMeds算法(Alg4)的识别精度最差,精度为0.053 063 821 090 275 2。总体而言,本文提出的算法(Alg1)的识别精度是ASM算法(Alg2)的194.79%,是KD-Tree算法(Alg3)的175.87%,是LMeds算法(Alg4)的1 870.43%,是M-estimators算法(Alg5)的303.70%,是RANSAC算法(Alg6)的165.63%,说明本文提出的算法(Alg1)的识别精度远高于其他5种算法。
图8 判断5幅图之间的相似程度
本文基于机器学习的思想,将MATHEMATICACloud作为该学习机的计算云,开发计算机视觉软件COMPUTER_VISION,验证利用COMPUTER_VISION的对象识别能力,并从计算速度、收敛情况、识别精度等方面与现在常用的识别算法进行对比,结果显示:
图9 6种算法的识别精度
1)本文算法(Alg1)可以根据设定条件对图形对象进行抠图、搜索、计算,能够获得图形对象特定条件下的名称。
2)本文算法(Alg1)计算速度最快,其计算耗时是ASM算法(Alg2)的9.75%,是KD-Tree算法(Alg3)的11.35%,是LMeds算法(Alg4)的8.32%,是M-estimators算法(Alg5)的12.83%,是RANSAC算法(Alg6)的6.62%。
3)本文算法(Alg1)可以做到绝对收敛,识别人数是ASM算法(Alg2)的900.00%,是KD-Tree算法(Alg3)的300.00%,是LMeds算法(Alg4)的150.00%,是M-estimators算法(Alg5)的112.50%,是RANSAC算法(Alg6)的112.50%。
4)本文算法(Alg1)识别精度最高,是ASM算法(Alg2)的194.79%,是KD-Tree算法(Alg3)的175.87%,是LMeds算法(Alg4)的1 870.43%,是M-estimators算法(Alg5)的303.70%,是RANSAC算法(Alg6)的165.63%。
[1] 王海燕,张瑜慧.基于机器视觉的颗粒识别计数[J].长春工程学院学报:自然科学版,2013,14(4):101-104.
[2]MalikJ,ArbeláezP,CarreiraJ,etal.ThethreeR’sofcomputervision:recognition,reconstructionandreorganization[J].PatternRecognitionLetters,2016,72:214-217.
[3]GiovanniMariaFarinella.Specialissueonassistivecomputervisionandrobotics-partI[J].ComputerVisionandImageUnderstanding,2016(148):1-2.
[4]DavidGStork,CoddingtonJim,Bentkowska-kafelAnna.ComputerVisionandImageAnalysisofArtⅡ[C].//ProceedingsIS&T/SPIEElectronicImagingScierceandTechnology.SanFrancisco,California,UnitedStates:IS&T-TheSocietyforImagingScienceandTechnology,2011.
[5]MorrisonC,HuckvaleK,CorishB,etal.Assessingmultiplesclerosiswithkinect:designingcomputervisionsystemsforreal-worlduse[J].Human-ComputerInteraction,2016,31(314):1-36.
[6]UngaisalánkiR,GerecseiT,FürjesP,etal.Automatedsinglecellisolationfromsuspensionwithcomputervision[J].ScientificReports,2016(6):20375.
[7]Bastidas-RodriguezMX,Prieto-OrtizFA,EspejoE.Fractographicclassificationinmetallicmaterialsbyusingcomputervision[J].EngineeringFailureAnalysis,2016,59:237-252.
[8]FerrazA,BritoJH,CarvalhoV,etal.Bloodtypeclassificationusingcomputervisionandmachinelearning[J].NeuralComputing&Applications,2016,27:1-12.
[9]BhanjaS,KarunaratneDK,PanchumarthyR,etal.Non-Booleancomputingwithnanomagnetsforcomputervisionapplications[J].NatureNanotechnology,2016(11):177-183.
[10]GiovanniMariaFarinella,TakeoKanade,MarcoLeo,etal.Specialissueonassistivecomputervisionandrobotics-“assistivesolutionsformobility,communicationandHMI”[J].ComputerVisionandImageUnderstanding,2016(149):1-2.
[11] 王俊奇,李闯,董晔.Bishop法的半解析解及其广义数学模型[J].水利与建筑工程学报,2015(6):123-128.
[12]JanuszRosiek.MassToMI—AmathematicapackageforanautomaticmassInsertionexpansion[J].ComputerPhysicsCommunications,2016,201:144-158.
[13]VladimirV,Bytev,BerndA.Hyperdire-hypergeometricfunctionsdifferentialreduction:mathematica-basedpackagesforthedifferentialreductionofgeneralizedhypergeometricfunctions:lauricellafunctionFCFCmathcontainerloadingmathjax,ofthreevariables[J].ComputerPhysicsCommunications,2016,206:78-83.
[14]FinardiEC,TakigawaFYK,BritoBH.Assessingsolutionqualityandcomputationalperformanceinthehydrounitcommitmentproblemconsideringdifferentmathematicalprogrammingapproaches[J].ElectricPowerSystemsResearch,2016(136):212-222.
A New Computer Vision Algorithm
JIA Run-liang
(InformationInstitute,ShanxiFianceandTaxationCollege,Taiyuan030024,China)
By the commission of the computer vision project of ant gold service,in order to improve the recognition efficiency of the computer vision and accuracy,using the idea of machine learning to develop automatic evolution image learning machine,this article uses Mathematica cloud as the computing cloud,search cloud of this modified learning machine,makes learning function and decision function embed into the learning machine in order to achieve the calculation and search by inputting image and importing Mathematica Cloud to learning machine.By using the search results to exercise the learning function of the learning machine,by using the calculated results to exercise decision-making function of learning machine,in order to achieve high efficiency recognition speed and high accuracy rate of recognition effect.Based on the calculating example provided by ant gold service,the simulation experiment has been carried on and compared with the common recognition algorithm from calculation speed,convergence and identification precision.The results show that image recognition ability is quite good in the new algorithm proposed in this paper.Compared with the traditional algorithm,this algorithm has faster computing speed,absolute convergence,and much higher than traditional algorithm in recognition accuracy.
Cloud MATHEMATICA;machine learning;decision function;recognition accuracy
10.3969/j.issn.1009-8984.2016.04.029
2016-10-12
贾润亮(1973-),男(汉),山西阳曲,讲师 主要研究人工智能,计算机应用。
TP391
A
1009-8984(2016)04-0112-06