一种基于卷积神经网络的UI异常图片分类方法及系统与流程

文档序号:15853037发布日期:2018-11-07 10:27阅读:296来源:国知局
一种基于卷积神经网络的UI异常图片分类方法及系统与流程

本发明涉及计算机视觉与深度学习技术领域,尤其涉及一种基于卷积神经网络的ui异常图片分类方法及系统。

背景技术

图像识别,是指利用计算机对图像进行处理、分析和理解,以识别各种不同模式的目标和对像的技术。现有的公开技术方案,例如专利申请号cn201710192706.6的基于图像识别的异常检测方法,使用传统的机器学习技术来进行图像异常检测,但这种技术方案需要自己设计某些分类训练时候需要输入的具体特征,并且需要对图片进行更多的预处理,比如需要对图片先进行灰度化处理,正则化处理等等,即存在着繁琐的人工特征提取器设计;并且只是个二分类器,模型并不具备一定的复用性和通用性,不能直接的应用在其他ui异常上,同时,上述的技术方案并不是针对app的ui异常图片分类的解决方案。没有积累相关的app的ui异常图片数据集。



技术实现要素:

本发明所要解决的技术问题是:提供一种基于卷积神经网络的ui异常图片分类方法及系统,从而提高图片分类的准确性。

为了解决上述技术问题,本发明采用的技术方案为:

一种基于卷积神经网络的ui异常图片分类方法,包括步骤:

s1、服务端接收客户端发送的待处理ui图片数据,调用异常分类模型对所述待处理ui图片数据进行归类,得到所述待处理ui图片数据的图片类型,并将所述图片类型返回至客户端,所述异常分类模型为已训练完成的卷积神经网络模型。

一种基于卷积神经网络的ui异常图片分类系统,包括服务端,所述服务端包括第一存储器、第一处理器及存储在第一存储器上并可在第一处理器上运行的第一计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:

s1、接收客户端发送的待处理ui图片数据,调用异常分类模型对所述待处理ui图片数据进行归类,得到所述待处理ui图片数据的图片类型,并将所述图片类型返回至客户端,所述异常分类模型为已训练完成的卷积神经网络模型。

本发明的有益效果在于:本发明利用卷积神经网络能够有效的提取ui图片的有效特征,并且这些特征不用人为的去设计,而是由卷积神经网络自己通过训练学习到的,这就解决了传统机器学习技术需要通过人工的分析设计有效的特征,而达到的效果又不理想的问题,即本发明整体上能保证学习的特征具有平移不变性,一方面使得本发明具有一定的复用性和通用性,另一方面能根据ui图片的有效特征达到很好的分类效果,从而大幅度提高了图片分类的准确性。

附图说明

图1为本发明实施例的一种基于卷积神经网络的ui异常图片分类方法的流程图;

图2为本发明实施例的一种基于卷积神经网络的ui异常图片分类系统的结构示意图;

图3为本发明实施例涉及的本地ui图片在分类之前的示意图;

图4为本发明实施例涉及的本地ui图片在分类之后的示意图;

标号说明:

1、一种基于卷积神经网络的ui异常图片分类系统;2、客户端;3、第二存储器;4、第二处理器;5、服务端;6、第一存储器;7、第一处理器。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

本发明最关键的构思在于:利用卷积神经网络能够有效的提取ui图片的有效特征,从而具备一定的复用性和通用性并提高了图片分类的准确性。

在此之前,为了便于理解本发明的技术方案,对于本发明中涉及的英文缩写、设备等进行说明如下:

(1)、ui:在本发明中为userinterface的简称,其中文解释为用户的操作界面,包含移动app、网页、智能穿戴设备等。

(2)、app:在本发明中为application的缩写,其中文解释为应用程序。

(3)、grpc:在本发明中为googleremoteprocedurecall的缩写,其中文解释为google开源的一个高性能、跨语言的远程过程调用框架。

(4)、relu:在本发明中为rectifiedlinearunits的缩写,其中文解释线性整流函数,又称修正线性单元,是一种人工神经网络中常用的激活函数,通常指代以斜坡函数及其变种为代表的非线性函数。

请参照图1,一种基于卷积神经网络的ui异常图片分类方法,包括步骤s1:

服务端接收客户端发送的待处理ui图片数据;

调用异常分类模型对所述待处理ui图片数据进行归类,得到所述待处理ui图片数据的图片类型,所述异常分类模型为已训练完成的卷积神经网络模型;

将所述图片类型返回至客户端。

从上述描述可知,本发明的有益效果在于:利用卷积神经网络能够有效的提取ui图片的有效特征,并且这些特征不用人为的去设计,而是由卷积神经网络自己通过训练学习到的,这就解决了传统机器学习技术需要通过人工的分析设计有效的特征,而达到的效果又不理想的问题,即本发明整体上能保证学习的特征具有平移不变性,一方面使得本发明具有一定的复用性和通用性,另一方面能根据ui图片的有效特征达到很好的分类效果,从而大幅度提高了图片分类的准确性。

进一步的,所述步骤s1之前还包括步骤:

s01、客户端获取本地ui图片数据,并将所述本地ui图片数据进行序列化,得到所述待处理ui图片数据,并将所述待处理ui图片数据发送至服务端。

由上述描述可知,客户端在获取本地的若干ui图片数据时,通过对若干ui图片数据进行序列化,便于后续图片的提取和分类。

进一步的,所述步骤s01具体为:客户端获取本地ui图片数据,将所述本地ui图片数据统一缩放至同一尺寸,并序列化为二进制数据,得到所述待处理ui图片数据,并通过grpc协议将所述待处理ui图片数据发送至服务端;

所述步骤s1中将所述图片类型返回至客户端具体为:通过grpc协议将所述图片类型返回至客户端。

由上述描述可知,将ui图片数据统一进行缩放、序列化为二进制数据后通过grpc协议进行传输,能够有效的提高网络的传输效率。

进一步的,所述步骤s1中的卷积神经网络模型的训练步骤如下:

s21、构建所述卷积神经网络模型结构,所述卷积神经网络模型结构包括输入模块、特征提取模块、感知器模块;

s22、收集ui图片数据集,将所述ui图片数据集划分为测试集和训练集,并在两个集合中分别按照异常类别、正常类别建立文件夹来进行分类;

s23、初始化所述卷积神经网络模型,以所述训练集里的图片数据作为输入数据,训练所述卷积神经网络模型,并在训练后以所述测试集里的图片数据作为输入数据,测试所述卷积神经网络模型对于图片分类的正确率,若正确率达到预期值,则将训练后的所述卷积神经网络模型保存并上传至服务器部署。

由上述描述可知,通过按文件夹分类而不用一张张图片命名的打标签方式,能够让我们更加方便、更加有效的进行数据预处理。

进一步的,所述步骤s21具体为:

s211、构建输入模块,所述输入模块包括输入层,所述输入层设置有与所述待处理ui图片数据的图片像素一一对应的神经元;

s212、构建特征提取模块,所述特征提取模块从上到下依次为:第一卷积层、第一激活函数层、第一池化层、第二卷积层、第二激活函数层、第二池化层、第三卷积层、第三激活函数层、第三池化层。

s213、构建感知器模块,所述感知器模块包括第一全连接层和第二全连接层,所述第二全连接层包含与图片类别相同个数的神经元,所述第一全连接层包含的神经元个数是所述第二全连接层包含的神经元个数的平方。

由上述描述可知,本发明使用了交替分布的三层结构能够很好的学习到图像特征,其识别率可以达到99.8%;通常来说网络的结构越复杂,其网络中的参数也就越多,而参数越多,需要用来训练的数据也必须越多才使得网络在训练后取得好的数据拟合效果;如果网络结构过小,比如一层结构或者两层结构,这种过小的特征提取结构对不能够做很细致的分类,随着数据量的增大,这种较小的网络结构的算法性能提升得比较慢;而当网络结构过大,数据集的大小又无法跟上,故而本发明设置三层结构是权衡了快测平台训练集数据量的大小和网络过小无法在大数据集上有效提升算法性能,而其次,三层交替中每一层都有池化层是为了更好的学习到图像特征的平移不变性,这就意味着是该特征无论在图像那个位置都能够被有效的识别。

请参照图2,一种基于卷积神经网络的ui异常图片分类系统,包括服务端,所述服务端包括第一存储器、第一处理器及存储在第一存储器上并可在第一处理器上运行的第一计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:

s1、接收客户端发送的待处理ui图片数据,调用异常分类模型对所述待处理ui图片数据进行归类,得到所述待处理ui图片数据的图片类型,并将所述图片类型返回至客户端,所述异常分类模型为已训练完成的卷积神经网络模型。

从上述描述可知,本发明的有益效果在于:利用卷积神经网络能够有效的提取ui图片的有效特征,并且这些特征不用人为的去设计,而是由卷积神经网络自己通过训练学习到的,这就解决了传统机器学习技术需要通过人工的分析设计有效的特征,而达到的效果又不理想的问题,即本发明整体上能保证学习的特征具有平移不变性,一方面使得本发明具有一定的复用性和通用性,另一方面能根据ui图片的有效特征达到很好的分类效果,从而大幅度提高了图片分类的准确性。

进一步的,还包括客户端,所述客户端包括第二存储器、第二处理器及存储在第二存储器上并可在第二处理器上运行的第二计算机程序,所述第二处理器执行所述第二计算机程序时实现以下步骤:

s01、获取本地ui图片数据,并将所述本地ui图片数据进行序列化,得到所述待处理ui图片数据,并将所述待处理ui图片数据发送至服务端。

由上述描述可知,客户端在获取本地的若干ui图片数据时,通过对若干ui图片数据进行序列化,便于后续图片的提取和分类。

进一步的,所述步骤s01具体为:获取本地ui图片数据,将所述本地ui图片数据统一缩放至同一尺寸,并序列化为二进制数据,得到所述待处理ui图片数据,并通过grpc协议将所述待处理ui图片数据发送至服务端;

所述步骤s1中将所述图片类型返回至客户端具体为:通过grpc协议将所述图片类型返回至客户端。

由上述描述可知,将ui图片数据统一进行缩放、序列化为二进制数据后通过grpc协议进行传输,能够有效的提高网络的传输效率。

进一步的,所述步骤s1中的卷积神经网络模型的训练步骤如下:

s21、构建所述卷积神经网络模型结构,所述卷积神经网络模型结构包括输入模块、特征提取模块、感知器模块;

s22、收集ui图片数据集,将所述ui图片数据集划分为测试集和训练集,并在两个集合中分别按照异常类别、正常类别建立文件夹来进行分类;

s23、初始化所述卷积神经网络模型,以所述训练集里的图片数据作为输入数据,训练所述卷积神经网络模型,并在训练后以所述测试集里的图片数据作为输入数据,测试所述卷积神经网络模型对于图片分类的正确率,若正确率达到预期值,则将训练后的所述卷积神经网络模型保存并上传至服务器部署。

由上述描述可知,通过按文件夹分类而不用一张张图片命名的打标签方式,能够让我们更加方便、更加有效的进行数据预处理。

进一步的,所述步骤s21具体为:

s211、构建输入模块,所述输入模块包括输入层,所述输入层设置有与所述待处理ui图片数据的图片像素一一对应的神经元;

s212、构建特征提取模块,所述特征提取模块从上到下依次为:第一卷积层、第一激活函数层、第一池化层、第二卷积层、第二激活函数层、第二池化层、第三卷积层、第三激活函数层、第三池化层。

s213、构建感知器模块,所述感知器模块包括第一全连接层和第二全连接层,所述第二全连接层包含与图片类别相同个数的神经元,所述第一全连接层包含的神经元个数是所述第二全连接层包含的神经元个数的平方。

由上述描述可知,本发明使用了交替分布的三层结构能够很好的学习到图像特征,其识别率可以达到99.8%;通常来说网络的结构越复杂,其网络中的参数也就越多,而参数越多,需要用来训练的数据也必须越多才使得网络在训练后取得好的数据拟合效果;如果网络结构过小,比如一层结构或者两层结构,这种过小的特征提取结构对不能够做很细致的分类,随着数据量的增大,这种较小的网络结构的算法性能提升得比较慢;而当网络结构过大,数据集的大小又无法跟上,故而本发明设置三层结构是权衡了快测平台训练集数据量的大小和网络过小无法在大数据集上有效提升算法性能,而其次,三层交替中每一层都有池化层是为了更好的学习到图像特征的平移不变性,这就意味着是该特征无论在图像那个位置都能够被有效的识别。

实施例一

如图1所示,一种基于卷积神经网络的ui异常图片分类方法,包括步骤:

s01、客户端获取本地ui图片数据,将本地ui图片数据统一缩放至150*150,并序列化为二进制数据,得到待处理ui图片数据,并通过grpc协议将待处理ui图片数据发送至服务端;

s1、服务端接收客户端发送的待处理ui图片数据,调用异常分类模型对待处理ui图片数据进行归类,得到待处理ui图片数据的图片类型,并通过grpc协议将图片类型返回至客户端,异常分类模型为已训练完成的卷积神经网络模型。

本实施例是针对某移动端app的ui图片数据,其中,图片类型共有八种类别,包括一种正常类别和七种异常类别。

其中,步骤s1中的卷积神经网络模型的训练步骤如下:

s21、构建卷积神经网络模型结构,卷积神经网络模型结构包括输入模块、特征提取模块、感知器模块;

s22、收集ui图片数据集,将ui图片数据集划分为测试集和训练集,并在两个集合中分别按照异常类别、正常类别建立文件夹来进行分类;

s23、初始化卷积神经网络模型,以训练集里的图片数据作为输入数据,训练卷积神经网络模型,并在训练后以测试集里的图片数据作为输入数据,测试卷积神经网络模型对于图片分类的正确率,若正确率达到预期值,则将训练后的卷积神经网络模型保存并上传至服务器部署。

其中,对于本实施例中的步骤s22说明如下:为了保证训练效果,每个类别都至少要保证有3000张,对于其中只有1000张但未达到3000张的情况,可以对图片进行旋转、缩放等变换,再从变换后的图片进行挑选,以保证每个类别都达到3000张以上。

其中,步骤s21具体为:

s211、构建输入模块,输入模块包括输入层,输入层设置有与待处理ui图片数据的图片像素一一对应的神经元;

s212、构建特征提取模块,特征提取模块从上到下依次为:第一卷积层、第一激活函数层、第一池化层、第二卷积层、第二激活函数层、第二池化层、第三卷积层、第三激活函数层、第三池化层。

s213、构建感知器模块,感知器模块包括第一全连接层和第二全连接层,第二全连接层包含与图片类别相同个数的神经元,第一全连接层包含的神经元个数是第二全连接层包含的神经元个数的平方。

其中,对于本实施例中的步骤s211说明如下:本实施例中待处理ui图片数据的图片像素为150*150,故而输入层设置有150*150各神经元,以对应图片每个位置的像素。

其中,对于本实施例中的步骤s212说明如下:

(1)、第一层:第一卷积层,设置有32个卷积核,其中,每个卷积核的大小是3*3;

(2)、第二层:第一激活函数层,使用的是relu激活函数;

(3)、第三层:第一池化层,大小是2*2。

(4)、第四层:第二卷积层,设置有32个卷积核,其中,每个卷积核的大小是3*3;

(5)、第五层:第二激活函数层,使用的是relu激活函数;

(6)、第六层:第二池化层,大小是2*2。

(7)、第七层:第三卷积层,设置有64个卷积核,其中,每个卷积核的大小是3*3。

(8)、第八层:第三激活函数层,使用的是relu激活函数;

(9)、第九层:第三池化层,大小是2*2。

对于上述选取卷积核的个数说明如下:通常卷积核越多意味能提取到的特征也越多,但特征越多并不意味有效特征越多,对于本实施例来说,通过实验不断迭代训练,验证训练的识别正确率来得出一个最有效的数值,这个参数并没有唯一标准,需要通过对卷积神经网络模型的不断迭代训练,参数调整才能确定,故而,在本实施例中,卷积神经网络模型模型中设置32个或64个卷积核,能够最大限度的提取有效特征。

其中,对于本实施例中的步骤s213说明如下:本实施例中图片类别的个数为8个,故而本实施例中的第一全连接层包含8个神经元,第二全连接层包含64个神经元,即两层全连接层共有512个全连接。

如图3、图4所示,在执行上述方法之后,自动按文件夹分好了异常图片类别,其中,正常图片会分类至normal,执行上述方法后,若判断本地ui图片为正常图片后会将其过滤掉,即只显示ui异常图片。

实施例2

如图2所示,一种基于卷积神经网络的ui异常图片分类系统,包括服务端,所述服务端包括第一存储器、第一处理器及存储在第一存储器上并可在第一处理器上运行的第一计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:

s1、服务端接收客户端发送的待处理ui图片数据,调用异常分类模型对所述待处理ui图片数据进行归类,得到所述待处理ui图片数据的图片类型,并将所述图片类型返回至客户端,所述异常分类模型为已训练完成的卷积神经网络模型。

从上述描述可知,本发明的有益效果在于:利用卷积神经网络能够有效的提取ui图片的有效特征,并且这些特征不用人为的去设计,而是由卷积神经网络自己通过训练学习到的,这就解决了传统机器学习技术需要通过人工的分析设计有效的特征,而达到的效果又不理想的问题,即本发明整体上能保证学习的特征具有平移不变性,一方面使得本发明具有一定的复用性和通用性,另一方面能根据ui图片的有效特征达到很好的分类效果,从而大幅度提高了图片分类的准确性。

进一步的,还包括客户端,所述客户端包括第二存储器、第二处理器及存储在第二存储器上并可在第二处理器上运行的第二计算机程序,所述第二处理器执行所述第二计算机程序时实现以下步骤:,所述步骤s1之前还包括步骤:

s01、客户端获取本地ui图片数据,并将所述本地ui图片数据进行序列化,得到所述待处理ui图片数据,并将所述待处理ui图片数据发送至服务端。

由上述描述可知,客户端在获取本地的若干ui图片数据时,通过对若干ui图片数据进行序列化,便于后续图片的提取和分类。

进一步的,所述步骤s01具体为:客户端获取本地ui图片数据,将所述本地ui图片数据统一缩放至同一尺寸,并序列化为二进制数据,得到所述待处理ui图片数据,并通过grpc协议将所述待处理ui图片数据发送至服务端;

所述步骤s1中将所述图片类型返回至客户端具体为:通过grpc协议将所述图片类型返回至客户端。

由上述描述可知,将ui图片数据统一进行缩放、序列化为二进制数据后通过grpc协议进行传输,能够有效的提高网络的传输效率。

进一步的,所述步骤s1中的卷积神经网络模型的训练步骤如下:

s21、构建所述卷积神经网络模型结构,所述卷积神经网络模型结构包括输入模块、特征提取模块、感知器模块;

s22、收集ui图片数据集,将所述ui图片数据集划分为测试集和训练集,并在两个集合中分别按照异常类别、正常类别建立文件夹来进行分类;

s23、初始化所述卷积神经网络模型,以所述训练集里的图片数据作为输入数据,训练所述卷积神经网络模型,并在训练后以所述测试集里的图片数据作为输入数据,测试所述卷积神经网络模型对于图片分类的正确率,若正确率达到预期值,则将训练后的所述卷积神经网络模型保存并上传至服务器部署。

由上述描述可知,通过按文件夹分类而不用一张张图片命名的打标签方式,能够让我们更加方便、更加有效的进行数据预处理。

进一步的,所述步骤s21具体为:

s211、构建输入模块,所述输入模块包括输入层,所述输入层设置有与所述待处理ui图片数据的图片像素一一对应的神经元;

s212、构建特征提取模块,所述特征提取模块从上到下依次为:第一卷积层、第一激活函数层、第一池化层、第二卷积层、第二激活函数层、第二池化层、第三卷积层、第三激活函数层、第三池化层。

s213、构建感知器模块,所述感知器模块包括第一全连接层和第二全连接层,所述第二全连接层包含与图片类别相同个数的神经元,所述第一全连接层包含的神经元个数是所述第二全连接层包含的神经元个数的平方。

综上所述,本发明提供的一种基于卷积神经网络的ui异常图片分类方法及系统,本发明利用卷积神经网络能够有效的提取ui图片的有效特征,并且这些特征不用人为的去设计,而是由卷积神经网络自己通过训练学习到的,这就解决了传统机器学习技术需要通过人工的分析设计有效的特征,而达到的效果又不理想的问题,即本发明整体上能保证学习的特征具有平移不变性,一方面使得本发明具有一定的复用性和通用性,另一方面能根据ui图片的有效特征达到很好的分类效果,从而大幅度提高了图片分类的准确性;通过对图片数据进行压缩、序列化,从而有效的提高网络的传输效率;通过合理的设置卷积核个数,添加适当的池化层能够学习到图片中更有效的特征,从而能够做更加多种类,更精细的ui异常图片分类。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1