图片识别方法及装置、计算机设备及计算机可读介质与流程

文档序号:11708097阅读:264来源:国知局
图片识别方法及装置、计算机设备及计算机可读介质与流程

【技术领域】

本发明涉及计算机应用技术领域,尤其涉及一种图片识别方法及装置、计算机设备及计算机可读介质。



背景技术:

在很多应用场景中,需要对图片进行分类,便于对图片归类管理。在图片较少的时候,可以人工手动地对图片进行分类。但是随着网络科技的发展,在网络场景下,通常需要对成千上万的图片进行分类,手动处理方式变得过于不切实际,因此,在网络场景中,如何智能地对图片进行识别,以进行分类变得尤为重要。

现有技术,可以采用卷积神经网络模型对图片的类别进行识别,现有的卷积神经网络模型包括卷积操作和池化操作,其中池化操作包括平均池化、最大值池化和双线性池化等等。平均池化操作将一组输入特征向量做平均后输出。最大值池化将一组特征向量取最大值之后输出。双线性池化将输入的特征向量对自身做向量外积,得到原特征的双线性表示并输出。双线性池化得到的特征表达性更强,效果好于平均池化和最大值池化。

但是现有的卷积神经网络模型中的这三种池化操作都不会丰富图片识别的粒度,导致现有技术中使用卷积神经网络模型对图片识别的粒度较大,对图片识别的准确性较差。



技术实现要素:

本发明提供了一种图片识别方法及装置、计算机设备及计算机可读介质,用于提高现有技术中的图片识别的准确性。

本发明提供一种图片识别方法,所述方法包括:

获取待识别的图片;

根据所述待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签;所述预先训练的图片识别模型采用卷积神经网络模型,且所述卷积神经网络模型中包括至少一层将通道维度由一维升阶为多维的核池化层;

根据所述待识别的图片的所述预测类别标签,识别所述待识别的图片的类别。

进一步可选地,如上所述的方法中,根据所述待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签之前,所述方法还包括:

采集数张已经确定类别的训练图片,生成训练图片数据库;

根据所述训练图片数据库中的数张所述训练图片以及各所述训练图片的类别,训练所述图片识别模型。

进一步可选地,如上所述的方法中,根据所述训练图片数据库中的数张所述训练图片以及各所述训练图片的类别,训练所述图片识别模型,具体包括:

将数张所述训练图片中的各所述训练图片依次输入至所述图片识别模型中,得到对应的所述训练图片的预测类别标签;

根据所述训练图片的类别,生成所述训练图片的真实类别标签;

根据所述训练图片的预测类别标签和所述训练图片的真实类别标签,生成所述训练图片的损失函数;

计算所述训练图片的损失函数对所述图片识别模型中各所述参数的导数;

根据所述图片识别模型中的各所述参数以及所述训练图片的损失函数对各所述参数的导数,更新所述图片识别模型中的各所述参数,从而确定本次训练后的所述图片识别模型;

重复执行上述步骤,直至数张所述训练图片都对所述图片识别模型进行训练,确定本轮训练后的所述图片识别模型。

进一步可选地,如上所述的方法中,根据所述训练图片数据库中的数张所述训练图片以及各所述训练图片的类别,训练所述图片识别模型,具体还包括:

按照上述每一轮训练中所述训练图片数据库中的数张所述训练图片对所述图片识别模型的训练,使用所述训练图片数据库中的数张所述训练图片重复对所述图片识别模型训练n轮,得到最终的所述图片识别模型。

进一步可选地,如上所述的方法中,根据所述待识别的图片的所述预测类别标签识别所述待识别的图片的类别,具体包括:

根据所述待识别的图片的所述预测类别标签,获取所述待识别的图片对应的概率最大的类别;

将所述待识别的图片对应的概率最大的类别作为所述待识别的图片的类别。

进一步可选地,如上所述的方法中,根据所述待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签之前,所述方法还包括:

获取所述卷积神经网络模型;

将所述卷积神经网络模型中的至少一层池化层中的通道维度由一维升阶为多维,得到所述图片识别模型。

本发明还提供一种图片识别装置,所述装置包括:

获取模块,用于获取待识别的图片;

预测类别标签获取模块,用于根据所述待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签;所述预先训练的图片识别模型采用卷积神经网络模型,且所述卷积神经网络模型中包括至少一层将通道维度由一维升阶为多维的核池化层;

识别模块,用于根据所述待识别的图片的所述预测类别标签,识别所述待识别的图片的类别。

进一步可选地,如上所述的装置中,还包括:

采集模块,用于采集数个已经确定类别的训练图片,生成训练图片数据库;

训练模块,用于根据所述训练图片数据库中的数张所述训练图片以及各所述训练图片的类别,训练所述图片识别模型。

进一步可选地,如上所述的装置中,所述训练模块,具体用于:

所述训练模块,具体用于:

将数张所述训练图片中的各所述训练图片依次输入至所述图片识别模型中,得到对应的所述训练图片的预测类别标签;

根据所述训练图片的类别,生成所述训练图片的真实类别标签;

根据所述训练图片的预测类别标签和所述训练图片的真实类别标签,生成所述训练图片的损失函数;

计算所述训练图片的损失函数对所述图片识别模型中各所述参数的导数;

根据所述图片识别模型中的各所述参数以及所述训练图片的损失函数对各所述参数的导数,更新所述图片识别模型中的各所述参数,从而确定本次训练后的所述图片识别模型;

重复执行上述步骤,直至数张所述训练图片都对所述图片识别模型进行训练,确定本轮训练后的所述图片识别模型。

进一步可选地,如上所述的装置中,所述训练模块,具体还用于按照上述每一轮训练中所述训练图片数据库中的数张所述训练图片对所述图片识别模型的训练,使用所述训练图片数据库中的数张所述训练图片重复对所述图片识别模型训练n轮,得到最终的所述图片识别模型。

进一步可选地,如上所述的装置中,所述识别模块,具体用于:

根据所述待识别的图片的所述预测类别标签,获取所述待识别的图片对应的概率最大的类别;

将所述待识别的图片对应的概率最大的类别作为所述待识别的图片的类别。

进一步可选地,如上所述的装置中,所述装置还包括:

模型生成模块,用于获取所述卷积神经网络模型;将所述卷积神经网络模型中的至少一层池化层中的通道维度由一维升阶为多维,得到所述图片识别模型。

本发明还提供一种计算机设备,所述设备包括:

一个或多个处理器;

存储器,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的图片识别方法。

本发明还提供一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的图片识别方法。

本发明的图片识别方法及装置、计算机设备及计算机可读介质,通过获取待识别的图片;根据待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签;其中预先训练的图片识别模型采用卷积神经网络模型,且卷积神经网络模型中包括至少一层将通道维度由一维升阶为多维的核池化层;根据待识别的图片的预测类别标签,获取待识别的图片的类别。本发明通过采用上述带有核池化层的图片识别模型,对待识别图片进行识别时,能够实现更加精细粒度的图片类别的识别,有效地提高图片识别的准确性和图片识别的效率。

【附图说明】

图1为本发明的图片识别方法实施例一的流程图。

图2为本发明的图片识别方法实施例二的流程图。

图3为本发明的图片识别装置实施例一的结构图。

图4为本发明的图片识别装置实施例二的结构图。

图5为本发明的计算机设备实施例的结构图。

图6为本发明提供的一种计算机设备的示例图。

【具体实施方式】

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。

图1为本发明的图片识别方法实施例一的流程图。如图1所示,本实施例的图片识别方法,具体可以包括如下步骤:

100、获取待识别的图片;

101、根据待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签;其中预先训练的图片识别模型采用卷积神经网络模型,且卷积神经网络模型中包括至少一层将通道维度由一维升阶为多维的核池化层;

102、根据待识别的图片的预测类别标签,识别待识别的图片的类别。

本实施例的图片识别方法的执行主体为图片识别装置,该图片识别装置可以为一个实体的电子装置,也可以为采用软件集成的装置。

本实施例的图片识别方法是一种基于卷积神经网络模型的图片识别方法,即本实施例的图片识别模型具体采用卷积神经网络模型。但是本实施例的图片识别模型并非是普通的卷积神经网络模型,该图片识别模型所采用的卷积神经网络模型中包括至少一层通道维度由一维升阶为多维的核池化层。通常情况下,卷积神经网络模型可以包括2-6层的池化层和多个卷积层,且池化层不会位于卷积神经网络模型中的第一层,因此,该卷积神经网络模型中的池化操作通常位于卷积操作之后,是用于对卷积操作输出的卷积特征进行池化操作。卷积特征可以采用长、宽和通道的三维矩阵来表示。通常情况下的池化操作包括平均池化、最大值池化和双线性池化。这几种池化操作均不会改变通道的维度,因此现有的卷积神经网络模型的表达性能较差,无法对图片进行更加精细的粒度的分类识别。本实施例中的将卷积神经网络中的至少一个池化层中的通道维度由一维升阶为多维,该过程尤为核聚变的过程,因此将升阶之后的池化层称之为核池化层。而卷积神经网络模型中的其它层可以保持不变。在图片识别时,由于核池化层将通道维度增加,会增加卷积神经网络中位于该核池化层之后的各层的工作量,因此,为了节省图片识别模型对图片的识别时间,提高图片识别效率,当图片识别模型中仅包括一层核池化层时,可以将该核池化层设置在对应的卷积神经网络模型中的最后一层。本实施例中可以根据需求设置核池化层的层数,核池化层的层数越多,生成的图片识别模型的表达性能越好,识别的图片的分类粒度越精细。

本实施例中,根据待识别的图片和预先训练的图片识别模型,获取的待识别的图片的预测类别标签是一个向量的形式,该向量的维度的数量表示的是识别的图片能够分类的类别的多少,向量的维度的数量可以在训练该图片识别模型时确定的。也就是说,本实施例的图片识别方法,对待识别的图片进行识别时,仅能够支持将待识别图片识别为训练时能够识别的各个图片的分类。而训练时,可以采集所有能够支持的、较为精细粒度的各个图片类别对应的图片,对该图片识别模型进行训练。例如在训练时,设定的能够支持的图片类别包括1000类,该1000类中可以包括非常精细的图片类别。那么利用图片识别模型识别待识别的图片时,该图片识别模型输出的预测类别标签可以为1000维的向量;向量中每一个位置所代表的图片的类别是固定的,每一个位置的元素的数值表示该待识别图片属于该位置对应的图片的类别的概率值。

本实施例中,图片识别模型能够支持分类的图片类别越多,那么该图片识别模型在识别图片时,输出的预测类别标签的维度越丰富,从而可以支持对较为精细粒度的图片的识别与分类。例如,若现有技术的卷积神经网络模型仅能够对带有狗的图片识别为动物狗的图片分类中;而采用本实施例的图片识别模型,由于采用了核池化层,具有更加丰富的表达性能,从而可以实现对图片中的狗的品种进行分类,例如能够识别某图片中的狗的类别为藏獒、或者牧羊犬或者贵宾犬等等,从而可以实现更加精细粒度的图片类别的识别。

本实施例的图片识别方法,在根据待识别的图片和预先训练的图片识别模型,可以获取到获取待识别的图片的预测类别标签之后,可以根据待识别的图片的预测类别标签,获取待识别的图片的类别。例如该步骤102“根据待识别的图片的预测类别标签,识别待识别的图片的类别”,具体可以包括如下步骤:

(a1)根据待识别的图片的预测类别标签,获取待识别的图片对应的概率最大的类别;

(a2)将待识别的图片对应的概率最大的类别作为待识别的图片的类别。

由于图片识别模型输出的待识别的图片的预测类别标签中,每一个元素数值表示的是该待识别图片属于该位置对应的图片的类别的概率,因此可以从预测类别标签中获取待识别的图片对应的概率最大的类别;可以将该概率最大的类别作为待识别图片的类别;进而可以根据识别的图片的类别对图片进行分类。

进一步可选地,本实施例中的图片识别模型的生成过程,具体可以采用包括步骤:

(b1)获取卷积神经网络模型;

(b2)将卷积神经网络模型中的至少一层池化层中的通道维度由一维升阶为多维,得到图片识别模型。

首先,可以获取一个普通的卷积神经网络模型,然后将该卷积神经网络模型中的至少一层池化层的通道维度由一维升阶为多维,从而得到本实施例的图片识别模型。本实施例中,在将池化层的通道维度由一维升阶为多维的方法,具体可以采用作向量外积的方式来实现;或者也可以采用其他的能够实现将池化层的通道维度由一维升阶为多维的方法;或者本实施例的核池化层也可以将该核池化层的输入特征表示为原特征向量的多项式组合,以丰富通道的维度,并利用快速傅里叶变换对输出特征进行压缩表示,并输出;这样,得到的输出特征包含了原特征在更高维度上的组合信息,从而使得本实施例的图片识别模型具有更加丰富的表达性能,能够实现更加精细粒度的图片类别的识别,提高图片识别的准确性和识别效率。

本实施例的图片识别方法,通过获取待识别的图片;根据待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签;其中预先训练的图片识别模型采用卷积神经网络模型,且卷积神经网络模型中包括至少一层将通道维度由一维升阶为多维的核池化层;根据待识别的图片的预测类别标签,获取待识别的图片的类别。本实施例通过采用上述带有核池化层的图片识别模型,对待识别图片进行识别时,能够实现更加精细粒度的图片类别的识别,有效地提高图片识别的准确性和图片识别的效率。

图2为本发明的图片识别方法实施例二的流程图。如图2所示,本实施例的图片识别方法,在上述图1所示实施例的技术方案的基础上,在步骤101“据待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签”之前,还可以包括如下步骤:

200、采集数个已经确定类别的训练图片,生成训练图片数据库;

201、根据训练图片数据库中的数张训练图片以及各训练图片的类别,训练图片识别模型。

本实施例的步骤200-201是用于对图片识别模型进行训练。本实施例在训练图片识别模型时,首先采集数张训练图片,生成图片训练数据库来对图片识别模型进行训练。本实施例的图片训练数据库中包括的图片的类别越多,在后续识别待识别的图片时,所能够支持识别的图片的类别也越多。而且,本实施例中的图片识别模型,由于带有核池化层,可以支持对精细粒度的图片类别的图片进行识别,所以在训练时,可以采用精细粒度的图片类别的图片对图片识别模型进行训练。

本实施例的图片训练数据库中包括的训练图片的数量越多,训练的图片识别模型的参数越准确,后续根据该图片识别模型得出的预测类别标签越准确,对图片的识别效率就越高。例如本实施例的图片训练数据库中可以包括20万-30万甚至更多的训练图片。

例如,本实施例中,该步骤201“根据训练图片数据库中的数张训练图片以及各训练图片的类别,训练图片识别模型”,具体可以包括如下步骤:

(c1)将训练图片数据库中的数张训练图片中的各训练图片依次输入至图片识别模型中,得到对应的训练图片的预测类别标签;

本实施例中,在训练图片识别模型的过程中,图片识别模型中的参数是不断地变化的,即图片识别模型是在不断地变化。在每一次训练时,所采用的图片识别模型均为上一次训练更新后的图片识别模型。而本实施例的图片识别模型被初次使用时各参数采用的是预设的初始值。其中预测类别标签的维度在训练时确定,例如若训练图片数据库中的数张训练图片共包括999个分类的图片,则可以设置图片识别模型输出的预测类别标签的维度为999。

(c2)根据训练图片的类别,生成训练图片的真实类别标签;

由于训练图片的类别是已知的,可以根据训练图片的类别,生成该训练图片的类别的真实类别标签。同理,该训练图片的真实类别标签也为向量的形式,该向量中,仅该训练图片的类别对应的位置的元素的数值为1,其余位置均为0。

(c3)根据训练图片的预测类别标签和训练图片的真实类别标签,生成训练图片的损失函数;

根据(c1)得到的训练图片的预测类别标签和(c2)得到的训练图片的真实类别标签,可以知道训练图片的预测类别标签与训练图片的真实类别标签的差距,并根据该差距生成训练图片的损失函数。本实施例在训练图片识别模型的过程中,要将该损失函数的值逐渐变小,从而使得训练的图片识别模型越准确。

(c4)计算训练图片的损失函数对图片识别模型中各参数的导数;

(c5)根据图片识别模型中的各参数以及训练图片的损失函数对各参数的导数,更新图片识别模型中的各参数,从而确定本次训练后的图片识别模型;

(c6)重复执行上述步骤(c1)-(c5),直至数张训练图片都对所述图片识别模型进行训练,确定本轮训练后的图片识别模型。

具体地,由于图片识别模型中是包括多个参数,当输入的训练图片确定时,也可以将损失函数看作是关于图片识别模型中的参数的函数,此时可以计算训练图片的损失函数对图片识别模型中各参数的导数;对于图片识别模型中的每一个参数,在更新时,可以将图片识别模型中该参数更新为该参数减去损失函数对该参数的导数,即每一次训练都对图片识别模型进行更新。更新完图片识别模型之后,然后返回到步骤(c1)开始使用下一张训练图片对图片识别模型进行训练,直到步骤(c5),完成下一张训练图片数据对图片识别模型的训练,并再次更新图片识别模型中的各参数,从而更新图片识别模型;依次类推,直至训练图片数据库中的数张训练图片都对图片识别模型进行训练,确定本轮训练后的图片识别模型。此时得到的图片识别模型也可以应用于图片识别中。

因为损失函数表征的是一个向梯度方向下降的值,损失函数值越大,表示图片识别模型的对输入的图片进行处理后输出的预测类别标签越不准确,本实施例中通过不断地调整损失函数,使得损失函数的最终点的梯度为0。损失函数的值越小,表示图片识别模型的处理结果越准确。上述实施例的技术方案,在更新图片识别模型的时候,具体是在朝着损失函数逐渐降低的方向更新。因此,通过不断的训练,不断地优化损失函数,不断地更新图片识别模型的参数,从而不断的更新图片识别模型,使得最终得到的图片识别模型能够非常准确地对图片进行处理,得到更加准确地预测类别标签。

进一步可选地,还可以按照上述步骤(c1)-(c6)所示的每一轮训练中训练图片数据库中的数张训练图片对图片识别模型的训练,使用训练图片数据库中的数张训练图片重复对图片识别模型训练n轮,得到最终的图片识别模型。例如当图片训练数据库中包括20万张训练图片时,按照顺序依次使用图片训练数据库中的20万张训练图片对图片识别模型进行训练后,可以认为完成一轮对图片识别模型的训练;然后按照每一轮对图片识别模型的训练,再使用图片训练数据库中的20万张训练图片对图片识别模型进行n-1轮训练,可以得到最终的图片识别模型。本实施例中,经过多轮训练,可以进一步提高训练得到的图片识别模型在对图片识别时,输出的预测类别标签的准确性,进而进一步提高基于图片识别模型进行图片识别的效率。本实施例中的n可以根据实际经验选取一个正整数,例如该n可以为5、6或者8、10之类的正整数。

本实施例的图片识别方法,通过采用上述带有核池化层的图片识别模型,对待识别图片进行识别时,能够实现更加精细粒度的图片类别的识别,有效地提高图片识别的准确性和图片识别的效率。

图3为本发明的图片识别装置实施例一的结构图。如图3所示,本实施例的图片识别装置,具体包括:获取模块10、预测类别标签获取模块11和识别模块12。

其中获取模块10用于获取待识别的图片;

预测类别标签获取模块11用于根据获取模块10获取的待识别的图片和预先训练的图片识别模型,获取待识别的图片的预测类别标签;预先训练的图片识别模型采用卷积神经网络模型,且卷积神经网络模型中包括至少一层将通道维度由一维升阶为多维的核池化层;

识别模块12用于根据预测类别标签获取模块11获取的待识别的图片的预测类别标签,识别待识别的图片的类别。

本实施例的图片识别装置,通过采用上述模块实现图片识别的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。

图4为本发明的图片识别装置实施例二的结构图。如图4所示,本实施例的图片识别装置,在上述图3所示实施例的技术方案的基础上,进一步更加详细地介绍本发明的技术方案。

如图4所示,本实施例的图片识别装置,还包括:采集模块13和训练模块14。

采集模块13用于采集数个已经确定类别的训练图片,生成训练图片数据库;

训练模块14用于根据训练图片数据库中的数张训练图片以及各训练图片的类别,训练图片识别模型。

对应地,预测类别标签获取模块11用于根据获取模块10获取的待识别的图片和训练模块14预先训练的图片识别模型,获取待识别的图片的预测类别标签。

进一步可选地,本实施例的图片识别装置中,训练模块14具体用于:

将采集模块13采集的训练图片数据库中的数张训练图片中的各训练图片依次输入至图片识别模型中,得到对应的训练图片的预测类别标签;

根据训练图片的类别,生成训练图片的真实类别标签;

根据训练图片的预测类别标签和训练图片的真实类别标签,生成训练图片的损失函数;

计算训练图片的损失函数对图片识别模型中各参数的导数;

根据图片识别模型中的各参数以及训练图片的损失函数对各参数的导数,更新图片识别模型中的各参数,从而确定本次训练后的图片识别模型;

重复执行上述步骤,直至数张训练图片都对图片识别模型进行训练,确定本轮训练后的图片识别模型。

进一步可选地,本实施例的图片识别装置中,训练模块14具体还用于按照上述每一轮训练中训练图片数据库中的数张训练图片对图片识别模型的训练,使用训练图片数据库中的数张训练图片重复对图片识别模型训练n轮,得到最终的图片识别模型。

进一步可选地,本实施例的图片识别装置中,识别模块12具体用于:

根据预测类别标签获取模块11获取的待识别的图片的预测类别标签,获取待识别的图片对应的概率最大的类别;

将待识别的图片对应的概率最大的类别作为待识别的图片的类别。

进一步可选地,如图4所示,本实施例的图片识别装置中,还包括:

模型生成模块15用于获取卷积神经网络模型;将卷积神经网络模型中的至少一层池化层中的通道维度由一维升阶为多维,得到图片识别模型。

对应地,训练模块14用于根据训练图片数据库中的数张训练图片以及各训练图片的类别,训练模型生成模块15生成的图片识别模型。

本实施例的图片识别装置,通过采用上述模块实现图片识别的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。

图5为本发明的计算机设备实施例的结构图。如图5所示,本实施例的计算机设备,包括:一个或多个处理器30,以及存储器40,存储器40用于存储一个或多个程序,当存储器40中存储的一个或多个程序被一个或多个处理器30执行,使得一个或多个处理器30实现如上图1-图2所示实施例的图片识别方法。图5所示实施例中以包括多个处理器30为例。

例如,图6为本发明提供的一种计算机设备的示例图。图6示出了适于用来实现本发明实施方式的示例性计算机设备12a的框图。图6显示的计算机设备12a仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图6所示,计算机设备12a以通用计算设备的形式表现。计算机设备12a的组件可以包括但不限于:一个或者多个处理器16a,系统存储器28a,连接不同系统组件(包括系统存储器28a和处理器16a)的总线18a。

总线18a表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

计算机设备12a典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12a访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器28a可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30a和/或高速缓存存储器32a。计算机设备12a可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34a可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18a相连。系统存储器28a可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明上述图1-图4各实施例的功能。

具有一组(至少一个)程序模块42a的程序/实用工具40a,可以存储在例如系统存储器28a中,这样的程序模块42a包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42a通常执行本发明所描述的上述图1-图4各实施例中的功能和/或方法。

计算机设备12a也可以与一个或多个外部设备14a(例如键盘、指向设备、显示器24a等)通信,还可与一个或者多个使得用户能与该计算机设备12a交互的设备通信,和/或与使得该计算机设备12a能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22a进行。并且,计算机设备12a还可以通过网络适配器20a与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20a通过总线18a与计算机设备12a的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12a使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理器16a通过运行存储在系统存储器28a中的程序,从而执行各种功能应用以及数据处理,例如实现上述实施例所示的图片识别方法。

本发明还提供一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所示的图片识别方法。

本实施例的计算机可读介质可以包括上述图6所示实施例中的系统存储器28a中的ram30a、和/或高速缓存存储器32a、和/或存储系统34a。

随着科技的发展,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载,或者采用其他方式获取。因此,本实施例中的计算机可读介质不仅可以包括有形的介质,还可以包括无形的介质。

本实施例的计算机可读介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

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