一种图片分割方法、装置及存储介质
文献发布时间:2023-06-19 10:54:12
技术领域
本说明书实施例涉及人工智能技术领域,特别涉及一种图片分割方法、装置及存储介质。
背景技术
移动互联网拥有的数据源丰富多样,其中图片的数据量级越来越大,图片中附带的信息量也越来越大。为了能从这些海量图片中提取有用的信息,需要对图片中的文字进行识别,然后转换为半结构化数据存入数据中心,用于提供更全面的数据存储和检索服务。
随着人工智能技术的发展,对于图片中的文字识别通常要用到OCR(OpticalCharacter Recognition,光学字符识别)技术。就目前现状而言,OCR识别任务分为两种模式:一种是逐字识别,第一步先提取出单字图片,第二步用图像分类算法对图片进行单字分类,最后将所有识别出的文字拼接成句子输出;另一种做法是整行识别,同时考虑了图片中的上下文特征,第一步先定位出整个行句子,第二步用一种序列文字识别模型直接识别出整行文字。
然而,一些图片中还会包括一些手写的数字。例如,统计报表、财务报表、邮政编码、各种票据等通常会包括手写的日期等信息。在这些应用中,通常要求手写数字识别算法具有较高的识别速度和识别精确度以及较高的可靠性和稳定性。现有的OCR识别方式通常会根据手写的日期中的字符之间的空白间隙进行分割,再对分割后的每个字符进行识别。
但是包含日期的图片中间的“年月日”可能未必是汉字,也可能是“-”、“.”、空格、阴影等。有时候数字也可能与汉字重合,这样导致简单地按图片中的空白间隙进行分割的效果较差,进而不能准确地识别图片中的日期。
发明内容
本说明书实施例的目的是提供一种图片分割方法、装置及存储介质,以实现对图片的精准分割,提高日期识别效率。
为解决上述问题,本说明书实施例提供一种图片分割方法,所述方法包括:对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;使用卷积神经网络提取各个样本图片的特征值向量;基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
为解决上述问题,本说明书实施例还提供一种图片分割装置,所述装置包括:标注模块,用于对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;提取模块,用于使用卷积神经网络提取各个样本图片的特征值向量;拟合模块,用于基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;分割模块,用于在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
为解决上述问题,本说明书实施例还提供一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现:对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;使用卷积神经网络提取各个样本图片的特征值向量;基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
为解决上述问题,本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现:对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;使用卷积神经网络提取各个样本图片的特征值向量;基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
由以上本说明书实施例提供的技术方案可见,本说明书实施例中,可以对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;使用卷积神经网络提取各个样本图片的特征值向量;基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割,以实现对图片的精准分割,提高日期识别效率。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例日期图片示意图;
图2为本说明书实施例切出数字图片的示意图;
图3为本说明书实施例日期图片样例;
图4为本说明书实施例一个场景示例中模型训练过程示意图;
图5为本说明书实施例对图片进行标注的示意图;
图6为本说明书实施例一个场景示例中模型结构示意图;
图7为本说明书实施例数字图像识别的流程图;
图8为本说明书实施例分割效果示意图;
图9为本说明书实施例一种图片分割方法的流程图;
图10为本说明书实施例一种电子设备的功能结构示意图;
图11为本说明书实施例一种图片分割装置的功能结构示意图。
具体实施方式
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
在本说明书实施例中,OCR(Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程;即,针对印刷体字符,采用光学的方式将纸质文档中的文字转换成为黑白点阵的图像文件,并通过识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑加工的技术。
就目前现状而言,OCR识别任务分为两种模式。一种是逐字识别,第一步先提取出单字图片,第二步用图像分类算法对图片进行单字分类,最后将所有识别出的文字拼接成句子输出。另一种做法是整行识别,第一步先定位出整个行句子,第二步用一种序列文字识别模型直接识别出整行文字。第二种OCR识别模型由于同时考虑了图片中的上下文特征,且能一次性输出整行文字的识别结果,在准确率和识别速度上都有很好的表现,是一种比较流行的做法。但其也有个缺点就是识别模型的泛化能力不够,移植性较差。如果换了一个模型之前很少学习过的场景,比如把一个在医疗场景训练的模型复用到金融场景,两个场景出现的专业术语完全不一样,那么文本识别的准确率可能会大幅下降,就需要重新标注大量样本给其训练,很多时候是很难在短时间内获取大量标注样本的。但第一种方案就可以做到很灵活的移植。因为它是逐字识别,对上下文语境并不敏感。
由于缺少更多训练样本,有些OCR识别模型,如日期识别,直接调用的是已经训练好的数字识别模型,需要将日期如“2019年8月22”(如图1所示),切分成“2019”、“8”和“22”三张图片输给下游数字识别模型进行识别。这就需要将包含日期的图片切成如图2的形式。现有的分割方式通常会根据日期中的字符之间的空白间隙进行分割,再对分割后的每个字符进行识别。但是包含日期的图片中间的“年月日”可能未必是汉字,也可能是“-”、“.”、空格、阴影等,如图3所示。当然,有时候数字也可能与汉字重合。这样导致简单地按图片中的空白间隙进行分割的效果较差,进而不能准确地识别图片中的日期。
考虑到如果基于深度学习的方法,制作包含分割线坐标的样本图片,使用深度学习算法对样本图片进行特征提取和训练,从而得到样本图片中分割线位置的归类条件,并根据归类条件对待分割图片进行分割,则有望解决现有技术中根据日期中的字符之间的空白间隙进行分割效果较差的问题,实现对图片的精准分割,提高日期识别效率。基于此,本说明书实施例提供一种图片分割方法、装置及存储介质。
请参阅图4和图5。在一个场景示例中,可以基于深度学习算法建立一个机器学习模型,并使用有标注的样本对该模型进行训练,在训练后的模型满足一定条件后,将训练后的模型作为数字分割提取的模型。将待分割的图片输入至数字分割提取的模型中,可以输出分割线坐标,以便于对待分割图片进行分割。
在本场景示例中,如图4所示,模型的训练过程可以包括以下步骤。
S401:读取日期图像数据并调整到固定大小,得到训练数据。
在本场景示例中,所述日期图像数据包括预设数量的图片,所述图片中可以包含有日期类型的数据。
在本场景示例中,可以使用OpenCV工具将日期图像数据读取为RGB三通道格式,以便于将提取图像数据转换为三维矩阵,在将转换得到的三维矩阵调整为3×100×400的形状。其中,3表示RGB三通道,100×400为图片的像素,即图片固定高为100,宽度为400的尺寸。调整后的三维矩阵即为本场景示例中进行模型训练的训练数据x。本场景示例中,可以取100组训练数据对模型进行训练。
S402:计算标准化后的分割线坐标向量得到标注。
在本场景示例中,可以以分割线的坐标作为标注,对训练数据进行打标。其中,所述分割线为基于数字对图片进行分割的位置。如图5所示,四条竖线(y
在本场景示例中,可以将这个4维的、元素取值为0-100之间整数的向量(y
S403:基于Resnet18和FPN构建分割模型结构。
深度残差网络(Deep residual network,ResNet)是一种卷积神经网络(Convolutional Neural Networks,CNN)。Resnet18为深度残差网络中的一个网络结构,数字18代表网络的深度,即18指定的是带有权重的18层,包括卷积层和全连接层,不包括池化层和BN层。
FPN(特征金字塔网络,Feature Pyramid Networks)是一种利用常规CNN模型来高效提取图片中各维度特征的方法。FPN的整体目标就是使用卷积网络的从高到低的具有语义的特征金字塔,构建一个具有高层次语义的金字塔;提出了自上而下和横向连接来连接丰富的语义特征和高分辨率,使网络适应与分类和定位的任务。
在本场景示例中,模型结构如图6所示。可以使用Resnet18作为图片的特征提取模型,用于提取所述各个样本图片的特征图;其中,每个样本图片对应多个特征图;不同特征图由不同的颜色通道组成。具体的,在每个卷积层,样本图片是以三维形式存在的,可以把样本图片看成许多个二维图片叠在一起,其中每一个二维图片可以称为一个特征图。在输入层,如果是灰度图片,那就只有一个特征图;如果是彩色图片,一般就是3个特征图(红绿蓝)。层与层之间会有若干个卷积核(kernel),上一层和每个特征图跟每个卷积核做卷积,都会产生下一层的一个特征图,由此,每个样本图片可以提取得到多个对应的特征图。
在本场景示例中,在提取所述各个样本图片的特征图后,可以通过FPN将每个样本图片的多个特征图进行汇集和卷积操作,即同时利用低层特征高分辨率和高层特征的高语义信息,通过融合这些不同层的特征图,再用一个25×1大小的卷积核做卷积操作,得到4个1×100维的向量(y′
S404:根据设计的模型结构、目标函数对训练数据和标注数据进行拟合。
在本场景示例中,可以定义目标函数对模型进行训练。其中,模型的训练过程也就是拟合过程,其目标识为了让目标函数收敛。具体的,定义的目标函数loss为:
其中,
在本场景示例中,约定每个向量去拟合一条分割线。每个向量的元素的最大值所在的位置分别对应(y
CrossEntropy表示交叉熵损失函数。使用交叉熵损失函数作为目标函数的组成部分时,可以将四条分割线的拟合问题转化为四个分类问题,每个问题都是100类的分类问题。S403输出了4个1×100维向量。每个1×100向量的最大值所在的位置就是所分的类的标号。用这个标号(y′
S405:输出能自动进行数字分割提取的模型。
在本场景示例中,使用smoothL
在本场景示例中,可以将训练好的模型称为分割模型。如图7所示,可以根据以下步骤使用分割模型来对图片进行分割,以便于识别图片中的日期。
S1:输入图像数据。
S2:分割模型进行图像分割。
所述分割模型可以对图像进行分割,提取出数字小图片,然后供下游数字识别模型进行识别最后输出日期识别结果。即便是数字和文字重合的情况也能精准分割,如图8所示。所述分割模型对图像进行分割的准确率在98%以上。
S3:数字识别模型对分割得到的图像块进行逐个识别。
其中,数字识别模型可以为基于OCR技术构建的模型,用于对数字进行识别。
S4:整合成日期输出。
具体的,可以将各个图像块的识别结果进行组合,得到图像数据的日期识别结果。
在场景示例中,可以读取日期图像数据并调整到固定大小,得到训练数据,针对训练数据,计算标准化后的分割线坐标向量得到标注,基于Resnet18和FPN构建分割模型结构,根据设计的模型结构、目标函数对训练数据和标注数据进行拟合得到分割模型,使用分割模型来对图片进行分割,以便于识别图片中的日期,从而以实现对图片的精准分割,提高日期识别效率。当然,本场景示例中也可以应用到对长句文字图像进行断句的场景。这时候只需要标注需要长句子需要断句的位置的坐标。即可用本场景示例的方法进行模型训练,制作自动断句模型。
请参阅图9,本说明实施例提供一种图片分割方法。在本说明书实施例中,执行所述图片分割方法的主体可以是具有逻辑运算功能的电子设备,所述电子设备可以是服务器。所述服务器可以是具有一定运算处理能力的电子设备。其可以具有网络通信单元、处理器和存储器等。当然,所述服务器并不限于上述具有一定实体的电子设备,其还可以为运行于上述电子设备中的软体。所述服务器还可以为分布式服务器,可以是具有多个处理器、存储器、网络通信模块等协同运作的系统。或者,服务器还可以为若干服务器形成的服务器集群。所述方法可以包括以下步骤。
S910:对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置。
在一些实施例中,所述图片可以为电子文件,如格式为pdf、jpg、png等的图片文件。所述图片也可以是通过扫描仪、数码相机等设备对所述纸质文件进行扫描,得到对应的电子文件。其中,所述纸质文件可以是各种票据、报刊、书籍、文稿及其他印刷品等文件。
所述图片中可以包含数字,例如各类图片中可以包括日期信息,数字可以为日期信息中的年、月、日。
在一些实施例中,如图5所示,每个样本图片的分割线可以为4条,所述4条分割线将样本图片中的数字按年、月、日分隔开。当然,由于有些图片中的日期可能没有“日”,所述分割线也可以为3条。其中,同一批次的样本图片中的每个样本图片的分割线条数应当相同,优选为4条,对于有些图片中的日期可能没有“日”的情况,可以将后用于分割“日”的分割线与前一条分割线重合。
在一些实施例中,可以以分割线的坐标作为标注,对包含数字的图片进行打标。其中,所述分割线为基于数字对图片进行分割的位置。如图5所示,四条竖线(y
在一些实施例中,可以将这个4维的、元素取值为0-100之间整数的向量(y
在一些实施例中,由于各种图片的来源不同,使得图片的格式、尺寸等都可能存在较大的差异,为尽量使这些差异减少,可以在对预设数量包含数字的图片标注分割线坐标之前将各个图片读取为RGB三通道格式,得到预设数量三维矩阵形式的图片;将所述预设数量三维矩阵形式的图片的像素设置为预设像素。举例来说,可以使用OpenCV工具将图片读取为RGB三通道格式,以便于将图片转换为三维矩阵,在将转换得到的三维矩阵调整为3×100×400的形状。其中,3表示RGB三通道,100×400为图片的像素,即图片固定高为100,宽度为400的尺寸。当然,所述图片的像素还可以设置为其他值,例如,一些图片的分辨率可能为300*160,一些图片的分辨率可能是320*150。因此,为提高图片的特征值向量提取的准确性,可以将图片设置为相同的分辨率。具体的,可以以第一个图片的像素为基准,将后续图片的像素均设置为与第一个图片相同的像素。例如第一个图片的像素为300*160,则可以将图片均的像素均设置为300*160。或者还可以预先设定一个像素,将图片均设置为预设的像素。例如,预先设置的像素为320*150,则可以将图片的像素均设置为320*150。
在一些实施例中,所述方法还包括:对所述预设数量包含数字的图片进行预处理;相应的,对预处理后的图片标注分割线坐标。具体的,由于各种图片的来源不同,使得图片的质量得不到保证,为提高图片的质量,还可以对所述预设数量包含数字的图片进行预处理操作。
在一些实施例中,所述预处理可以包括标准化处理、倾斜校正等。图像标准化处理是将数据通过去均值实现中心化的处理,根据凸优化理论与数据概率分布相关知识。数据中心化符合数据分布规律,更容易取得训练之后的泛化效果。
由于扫描和拍摄过程涉及人工操作,输入计算机的待识别图像或多或少都会存在一些倾斜,在对图像中印刷体字符进行识别处理前,就需要进行图像方向检测,并校正图像方向。具体的,可以通过霍夫变换的方法对待识别图片进行校正。霍夫变换主要是利用图片所在的空间和霍夫空间之间的变换,将图片所在的直角坐标系中具有形状的曲线或直线映射到霍夫空间的一个点上形成峰值,从而将检测任意形状的问题转化成了计算峰值的问题。即在图片所在的直角坐标系的一个直线,转换到霍夫空间便成了一点,并且是由多条直线相交而成,统计的峰值也就是该相交点的相交线的条数。
S920:使用卷积神经网络提取各个样本图片的特征值向量。
在一些实施例中,所述特征值向量可包括像素值向量,通过提取图片中每个像素的RGB值,并将提取的RGB值按照一定顺序排序,例如按照像素编号排序,从而可以构成该图片的特征值向量。具体的,一幅图片一般可以由多个像素组成后体现。例如,显示器上显示的图片,是通过显示器屏幕上每个能够显示不同色彩的发光元件通电后的显示功能,最终使得屏幕上众多这样的发光元件组合起来还原显示出图片。当显示器屏幕显示的图片是原始分辨率时,显示器屏幕上用于显示的图片的每一元件对应图片上的每一像素。通过像素值向量来标注图片的特征值向量可以有效表征图片的特征。
在一些实施例中,所述卷积神经网络(Convolutional Neural Networks,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一。本说明书实施例中,采用Resnet18和FPN来提取各个样本图片的特征值向量。具体的,所述使用卷积神经网络提取各个样本图片的特征值向量可以包括以下步骤。
S921:使用Resnet18提取所述各个样本图片的特征图;其中,每个样本图片对应多个特征图;不同特征图由不同的颜色通道组成。
在一些实施例中,Resnet18为深度残差网络中的一个网络结构,数字18代表网络的深度,即18指定的是带有权重的18层,包括卷积层和全连接层,不包括池化层和BN层。可以使用Resnet18作为图片的特征提取模型,用于提取所述各个样本图片的特征图;其中,每个样本图片对应多个特征图;不同特征图由不同的颜色通道组成。具体的,在每个卷积层,样本图片是以三维形式存在的,可以把样本图片看成许多个二维图片叠在一起,其中每一个二维图片可以称为一个特征图。在输入层,如果是灰度图片,那就只有一个特征图;如果是彩色图片,一般就是3个特征图(红绿蓝)。层与层之间会有若干个卷积核(kernel),上一层和每个特征图跟每个卷积核做卷积,都会产生下一层的一个特征图,由此,每个样本图片可以提取得到多个对应的特征图。
S922:使用特征金字塔网络对每个样本图片的多个特征图进行汇集和卷积操作,得到各个样本图片的特征值向量。
在一些实施例中,特征金字塔网络(Feature Pyramid Networks,FPN)是一种利用常规CNN模型来高效提取图片中各维度特征的方法。FPN的整体目标就是使用卷积网络的从高到低的具有语义的特征金字塔,构建一个具有高层次语义的金字塔;提出了自上而下和横向连接来连接丰富的语义特征和高分辨率,使网络适应与分类和定位的任务。在提取所述各个样本图片的特征图后,可以通过FPN将每个样本图片的多个特征图进行汇集和卷积操作,即同时利用低层特征高分辨率和高层特征的高语义信息,通过融合这些不同层的特征图,再用一个25×1大小的卷积核做卷积操作,得到4个1×100维的向量(y′
在本说明书实施例中,使用Resnet18和FPN提取各个样本图片的特征值向量,可以减少提取各个样本图片的特征值向量的计算量,提高特征值向量提取效率。
S930:基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件。
在一些实施例中,定义的目标函数loss为:
其中,
在本场景示例中,约定每个向量去拟合一条分割线。每个向量的元素的最大值所在的位置分别对应(y
CrossEntropy表示交叉熵损失函数。使用交叉熵损失函数作为目标函数的组成部分时,可以将四条分割线的拟合问题转化为四个分类问题,每个问题都是100类的分类问题。S920输出了4个1×100维向量。每个1×100向量的最大值所在的位置就是所分的类的标号。用这个标号(y′
使用smoothL
在一些实施例中,所述归类条件可以为各个样本图片的特征值向量和各个样本图片对应的分割线坐标的映射关系,例如可以为f(x)=y′。其中,x表示样本图片的特征值向量,y′表示拟合的分割线坐标。
S940:在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
在一些实施例中,目标函数等于0,即表示标注的分割线坐标和拟合的分割线坐标相等,但是实际应用中,难以达到使所有样本图片的标注的分割线坐标和拟合的分割线坐标相等的情况,因此要尽可能时目标函数趋近于零,在目标函数收敛的情况下表示目标函数区域稳定,即使拟合再多的数据也不会对归类条件有大的提升。因此,可以在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
在一些实施例中,所述根据所述归类条件对待分割图片进行分割可以包括以下步骤。
S941:使用卷积神经网络提取所述待分割图片的特征值向量;
S942:将所述待分割图片的特征值向量代入所述归类条件,得到所述待分割图片的分割线坐标;
S943:根据所述分割线坐标对所述待分割图片进行分割。
具体的,首先可以获取待分割图片,然后对所述待分割图片进行与样本图片类似的操作,例如预处理操作,将待分割图片转换为三维矩阵形式,并设置为预设像素等,再使用卷积神经网络提取所述待分割图片的特征值向量,将所述待分割图片的特征值向量代入所述归类条件,得到所述待分割图片的分割线坐标,根据所述分割线坐标对所述待分割图片进行分割。通过上述操作,使得待分割图片尽可能与样本图片处于相同的环境下,减少不必要的变量,从而提高图片分割的准确性。
在一些实施例中,对待分割图片进行分割后,可以得到多个图片块。所述方法还可以包括分别对所述待分割图片分割后得到的多个图片块进行数字识别,得到各个图片块的识别结果;输出由各个图片块的识别结果各个图片块的识别结果组合得到的日期识别结果。通过对本说明书实施例提供的方法分割得到的图片块进行识别,能够提高日期识别的准确率。
由以上本说明书实施例提供的技术方案可见,本说明书实施例中,可以对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;使用卷积神经网络提取各个样本图片的特征值向量;基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割,以实现对图片的精准分割,提高日期识别效率。
本说明书上述实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的电子设备中执行。图10为本说明书实施例一种电子设备的功能结构示意图,所述电子设备可以包括存储器和处理器。
在一些实施例中,所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现图片分割方法的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据用户终端的使用所创建的数据。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(APPlication Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。所述处理器可以执行所述计算机指令实现以下步骤:对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;使用卷积神经网络提取各个样本图片的特征值向量;基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
在本说明书实施例中,该电子设备具体实现的功能和效果,可以与其它实施例对照解释,在此不再赘述。
图11为本说明书实施例一种图片分割装置的功能结构示意图,该装置具体可以包括以下的结构模块。
标注模块1110,用于对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;
提取模块1120,用于使用卷积神经网络提取各个样本图片的特征值向量;
拟合模块1130,用于基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;
分割模块1140,用于在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
在一些实施例中,所述装置还可以包括:预处理模块,用于对所述预设数量包含数字的图片进行预处理;相应的,所述标注模块1110用于对预处理后的图片标注分割线坐标。
在一些实施例中,所述装置还可以包括:识别模块,用于分别对所述待分割图片分割后得到的多个图片块进行数字识别,得到各个图片块的识别结果;输出模块,用于输出由各个图片块的识别结果各个图片块的识别结果组合得到的日期识别结果。
本说明书实施例还提供了一种图片分割方法的计算机可读存储介质,所述计算机可读存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:对预设数量包含数字的图片标注分割线坐标,得到预设数量的样本图片;所述分割线为基于数字对图片进行分割的位置;使用卷积神经网络提取各个样本图片的特征值向量;基于预设的目标函数,对各个样本图片的特征值向量和各个样本图片对应的分割线坐标进行拟合,得到所述样本图片中分割线位置的归类条件;在所述目标函数收敛的情况下,根据所述归类条件对待分割图片进行分割。
在本说明书实施例中,上述存储介质包括但不限于随机存取存储器(RandomAccess Memory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(HardDisk Drive,HDD)或者存储卡(Memory Card)。所述存储器可用于存储所述计算机程序和/或模块,所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据用户终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器。在本说明书实施例中,该计算机可读存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
需要说明的是,本说明书实施例提供的图片分割方法、装置及存储介质,可以应用于人工智能技术领域。当然,也可以应用于金融领域,或者除金融领域之外的任意领域,本说明书实施例对所述图片分割方法、装置及存储介质的应用领域不做限定。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于装置实施例和设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员在阅读本说明书文件之后,可以无需创造性劳动想到将本说明书列举的部分或全部实施例进行任意组合,这些组合也在本说明书公开和保护的范围内。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。
- 一种图片分割方法、装置及存储介质
- 图片区域分割方法、装置、电子设备及存储介质