掌桥专利:专业的专利平台
掌桥专利
首页

图像处理方法、装置、计算机设备及存储介质

文献发布时间:2023-06-19 19:28:50


图像处理方法、装置、计算机设备及存储介质

技术领域

本申请实施例涉及计算机技术领域,特别涉及一种图像处理方法、装置、计算机设备及存储介质。

背景技术

随着计算机技术和人工智能技术的发展,网络模型的应用也越来越广泛,例如,在图像处理领域,基于图像处理模型对图像进行去噪、色度均衡、分割等处理。相关技术中,通常是由技术人员设计好网络模型的网络结构,然后基于训练数据训练网络模型,后续即可使用训练好的网络模型。但是,技术人员设计的网络模型依赖于主观经验,导致设计出的网络模型准确性较差。

发明内容

本申请实施例提供了一种图像处理方法、装置、计算机设备及存储介质,能够避免对原始图像处理模型中的参数信息过度拟合,提高了构建的目标图像处理模型的泛化性能。技术方案如下:

根据本申请实施例的一方面,提供了一种图像处理方法,所述方法包括:

获取原始图像处理模型,所述原始图像处理模型包括多个节点、每两个节点之间的多个算子和每个算子的权重参数;

对所述原始图像处理模型进行训练,以使在所述原始图像处理模型的损失函数中的第一目标参数属于第一取值范围的情况下,所述损失函数的输出值最小化,所述第一取值范围是指以训练后的权重参数为中心、以第一阈值为半径的取值范围,其中,在训练之后,所述第一目标参数的取值基于所述训练后的权重参数的取值确定;

基于所述多个节点和每两个节点之间的目标算子,构建目标图像处理模型,所述目标算子是基于训练后所述每个算子的权重参数选取的。

根据本申请实施例的另一方面,提供了一种图像处理装置,所述装置包括:

模型获取模块,用于获取原始图像处理模型,所述原始图像处理模型包括多个节点、每两个节点之间的多个算子和每个算子的权重参数;

第一训练模块,用于对所述原始图像处理模型中的参数信息进行训练,以使在所述原始图像处理模型的损失函数中的第一目标参数属于第一取值范围的情况下,所述损失函数的输出值最小化,所述第一取值范围是指以训练后的权重参数为中心、以第一阈值为半径的取值范围,其中,在训练之后,所述第一目标参数的取值基于所述训练后的权重参数的取值确定;

模型构建模块,用于基于所述多个节点和每两个节点之间的目标算子,构建目标图像处理模型,所述目标算子是基于训练后所述每个算子的权重参数选取的。

根据本申请实施例的另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器;所述存储器存储有至少一条指令,所述至少一条指令用于被所述处理器执行以实现如上述方面所述的图像处理方法。

根据本申请实施例的另一方面,提供了一种计算机可读存储介质,所述存储介质存储有至少一条指令,所述至少一条指令用于被处理器执行以实现如上述方面所述的图像处理方法。

根据本申请实施例的另一方面,提供了一种计算机程序产品,该计算机程序产品存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行以实现上述方面所述的图像处理方法。

根据本申请实施例的另一方面,提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,当所述芯片在终端设备上运行时,用于实现上述方面所述的图像处理方法。

本申请实施例提供的图像处理方法、装置、计算机设备及存储介质,通过训练原始图像处理模型对每个算子的权重参数进行优化,以使损失函数在第一目标参数属于该权重参数对应的第一取值范围时能够最小化,从而避免对权重参数的过度拟合,基于上述方式得到的权重参数来选取目标算子,构建出包括多个节点和多个目标算子的目标图像处理模型,从而实现了自动构建目标图像处理模型,无需人工设计模型的网络结构,且保证构建的目标图像处理模型具有较高的泛化性能,提高了目标图像处理模型的准确率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本申请一个示例性实施例提供的一种实施环境的示意图;

图2示出了本申请一个示例性实施例提供的一种图像处理方法的流程图;

图3示出了本申请一个示例性实施例提供的一种目标图像处理模型构建方法的流程图;

图4示出了本申请一个示例性实施例提供的一种网络结构的示意图;

图5示出了本申请一个示例性实施例提供的一种损失函数的示意图;

图6示出了本申请一个示例性实施例提供的一种训练原始图像处理模型的示意图;

图7示出了本申请一个示例性实施例提供的一种目标图像处理模型构建过程的示意图;

图8示出了本申请一个示例性实施例提供的一种图像处理方法的示意图;

图9示出了本申请一个示例性实施例提供的一种目标图像处理模型的示意图;

图10示出了本申请一个示例性实施例提供的一种图像处理装置的结构框图;

图11示出了本申请一个示例性实施例提供的一种图像处理装置的结构框图;

图12示出了本申请一个示例性实施例提供的一种终端的结构方框图;

图13示出了本申请一个示例性实施例提供的一种服务器的结构方框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

本申请实施例提供了一种图像处理方法,执行主体为计算机设备,计算机设备首先构建包括多个节点和多个算子的原始图像处理模型,再对该原始图像处理模型进行训练,以使在原始图像处理模型的损失函数中的目标参数属于对应的取值范围的情况下,损失函数的输出值最小化,然后基于多个节点和选取的目标算子构建目标图像处理模型,之后即可调用该目标图像处理模型对任一图像进行处理。

在一些实施例中,该计算机设备为终端,例如终端为手机、台式电脑、笔记本电脑、平板电脑、智能电视、智能音箱、车载终端、智能机器人等多种类型的终端。或者,该计算机设备为服务器,该服务器可以为一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务器中心。

或者,参见图1,该计算机设备包括终端101和服务器102,该终端101与服务器102进行交互,终端101训练原始图像处理模型,得到目标图像处理模型,然后使用该目标图像处理模型,或者终端101得到目标图像处理模型之后,还能够将该目标图像处理模型发送给服务器102或其他终端,由服务器102或其他终端使用该目标图像处理模型;或者,服务器102训练原始图像处理模型,得到目标图像处理模型,然后使用该目标图像处理模型,或者服务器102将目标图像处理模型发送给终端101,终端101使用该目标图像处理模型。

图2示出了本申请一个示例性实施例提供的一种图像处理方法的流程图,参见图2,该方法由计算机设备执行,该方法包括:

201、获取原始图像处理模型。

计算机设备获取待训练的原始图像处理模型,该原始图像处理模型包括多个节点、每两个节点之间的多个算子和每个算子的权重参数,该权重参数表示算子的重要程度,算子对应的权重参数越大,表示该算子越重要。节点表示图像特征,算子是指将连接的一个节点中待处理的特征变换为另一个特征,变换之后的特征即为该算子连接的另一个节点表示的特征。

202、对原始图像处理模型进行训练,以使在原始图像处理模型的损失函数中的第一目标参数属于第一取值范围的情况下,损失函数的输出值最小化。

其中,损失函数包括第一目标参数,第一取值范围是指以训练后的权重参数为中心、以第一阈值为半径的取值范围,在训练之后,该第一目标参数的取值基于训练后的权重参数确定。通过训练原始图像处理模型,得到训练后的权重参数,以使损失函数中的第一目标参数属于第一取值范围的情况下,无论原始图像处理模型中输入的样本图像是什么,输出的预测图像是什么,将样本图像对应的目标图像和预测图像输入至损失函数中后,该损失函数的输出值均能够趋于0,即损失函数的输出值最小化。

计算机设备对原始图像处理模型进行训练,在训练过程中不断更新每个算子的权重参数,直至在损失函数中的第一目标参数属于第一取值范围的情况下,损失函数的输出值最小化。本申请实施例中,在损失函数中的第一目标参数属于第一取值范围的情况下,该第一取值范围内的参数对应的输出值最小化,而不是仅在损失函数中的第一目标参数为训练后的权重参数的情况下,该训练后的权重参数对应的输出值最小化,从而使原始图像处理模型的训练过程中,损失函数收敛区域更加平滑,提高了原始图像处理模型的泛化性能。

203、基于多个节点和每两个节点之间的目标算子,构建目标图像处理模型。

由于原始图像处理模型中每两个节点之间有多个算子,但是最终需要构建的目标图像处理模型无需用到该多个算子中的全部算子,因此,按照多个算子的重要程度,从多个算子中选取出目标算子,即基于训练后每个算子的权重参数选取目标算子。

计算机设备确定了每两个节点之间的目标算子之后,根据多个节点和每两个节点之间的目标算子,来构建目标图像处理模型。该目标图像处理模型能够对任一图像进行去噪、去马赛克、色度均衡、分割、复原、去云、去雨、去雾等处理,本申请实施例对目标图像处理模型的作用不做限制。后续在使用该目标图像处理模型时,对于每个节点,将该节点对应的特征作为该节点与下一个节点之间的目标算子的输入,利用目标算子对该特征进行处理,将处理后的特征输入至下一个节点,从而在目标图像处理模型中实现利用目标算子对特征的处理。

本申请实施例提供了一种图像处理方法,通过训练原始图像处理模型对每个算子的权重参数进行优化,以使损失函数在第一目标参数属于该权重参数对应的第一取值范围时能够最小化,从而避免对权重参数的过度拟合,基于上述方式得到的权重参数来选取目标算子,构建出包括多个节点和多个目标算子的目标图像处理模型,从而实现了自动构建目标图像处理模型,无需人工设计模型的网络结构,且保证构建的目标图像处理模型具有较高的泛化性能,提高了目标图像处理模型的准确率。

上述图2所示的实施例仅是简单介绍了构建目标图像处理模型,基于该目标图像处理模型处理原始图像的过程,下面通过图3所示的实施例,对原始图像处理模型的训练过程进行详细介绍。

图3示出了本申请一个示例性实施例提供的一种目标图像处理模型构建方法的流程图,参见图3,该方法由计算机设备执行,该方法包括:

301、获取原始图像处理模型。

计算机设备获取待训练的原始图像处理模型,该原始图像处理模型包括多个节点、每两个节点之间的多个算子和每个算子的权重参数。权重参数表示算子的重要程度,算子的权重参数越大,表示该算子越重要。在一些实施例中,原始图像处理模型中每个算子的权重参数为任一数值,例如,权重参数为1、2、3等数值,在原始图像处理模型的训练过程中能够对权重参数进行更新。

算子是指将连接的一个节点中待处理的特征变换为另一个特征,变换之后的特征即为该算子连接的另一个节点表示的特征。例如,算子包括卷积算子、池化算子、全连接算子等多种类型的算子,本申请实施例对算子的类型不做限制。对于每个算子,算子中包括算子参数,原始图像处理模型中每个算子的算子参数为任意数值,在对原始图像处理模型的训练过程中能够对算子参数进行更新。

在一些实施例中,原始图像处理模型还包括映射函数,映射函数用于对原始图像处理模型中每个算子的权重参数进行映射,使映射后每个算子的权重的取值范围为0-1。例如映射函数为sigmoid函数、softmax函数或其他函数,sigmoid函数能够将输入的数值映射到0-1范围内,且在同时输入多个数值的情况下,sigmoid函数能够对多个数值分别进行映射,即多个数值的映射互不影响;softmax函数能够将输入的数值映射到0-1范围内,且在同时输入多个数值的情况下,softmax函数能够保证该多个数值映射后的数值之和为1。

在一些实施例中,计算机设备先确定待构建的模型中需要用到的节点,然后确定多个节点中每两个节点之间的多个算子,以及确定每个算子的权重参数,基于多个节点、每两个节点之间的多个算子以及每个算子的权重参数,构建原始图像处理模型。

对于多个节点,计算机设备首先确定需要用到的节点的数量,然后确定该多个节点的排列方式。对于每个节点,计算机设备确定该节点与其他节点之间的算子,从而确定在多个节点中每两个节点之间的多个算子。在一些实施例中,每两个节点之间具有先后顺序,对于每两个节点之间的算子来说,将每两个节点中第一个节点作为算子的输入,第二个节点作为算子的输出。需要说明的是,由于每个节点均与多个算子连接,且在算子位于节点之前的情况下,该节点即为算子的输出,在算子是该节点之后的算子的情况下,该节点即为算子的输入。

例如,参见图4所示的网络结构的示意图,该网络结构包括两个输入、三个节点和一个输出,即包括输入节点A、输入节点B、节点1、节点2、节点3以及输出节点C。其中,输入节点A和输入节点B是该网络结构中的输入节点,输出节点C是该网络结构中的输出节点,节点1、节点2和节点3是该网络结构中的中间节点。每两个节点之间的连线表示算子,连线的箭头表示特征处理顺序,对于节点1和节点2来说,将节点1作为节点1与节点2之间的算子的输入,算子的输出即为节点2。

在一些实施例中,计算机设备在搜索空间中构建原始图像处理模型,该搜索空间中包括多个节点和多个算子,基于在搜索空间中选取节点和算子来构建原始图像处理模型。例如,采用DARTS(Differentiable Architecture Search,可微神经网络搜索)构建原始图像处理模型,该DARTS是一种基于松弛连续化的,使用梯度下降进行搜索的神经网络架构搜索算法。

302、基于训练数据,对原始图像处理模型进行训练,分别得到训练后每个算子的权重参数和算子参数,以使每个算子的权重参数和算子参数收敛,且在损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小。

计算机设备获取训练数据,并基于该训练数据对原始图像处理模型中每个算子的权重参数和算子参数进行训练,在原始图像处理模型的训练过程中,基于损失函数的输出值调整每个算子的权重参数和算子参数,然后基于调整后的权重参数和算子参数继续对原始图像处理模型进行训练,直至训练得到的每个权重参数和每个算子参数收敛,且损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小。其中,训练数据包括样本图像和该样本图像对应的目标图像。其中,在训练之后,第一目标参数的取值基于训练后的权重参数的取值确定,第二目标参数的取值基于训练后的算子参数的取值确定。

其中,损失函数包括第一目标参数和第二目标参数,第一取值范围是指以训练后的权重参数为中心、以第一阈值为半径的取值范围,第二取值范围是指以训练后的算子参数为中心、以第二阈值为半径的取值范围。其中,对于原始图像处理模型的任一次训练过程,该第一目标参数为此次训练得到的权重参数,第二目标参数为此次训练得到的算子参数,第一阈值和第二阈值可以相同,也可以不同。

通过训练原始图像处理模型,得到训练后的权重参数和算子参数,以使损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,无论原始图像处理模型中输入的样本图像是什么,输出的预测图像是什么,将样本图像对应的目标图像和预测图像输入至损失函数中后,该损失函数的输出值均能够趋于0,即损失函数的输出值最小化。例如,对于某次训练过程来说,权重参数为W1,算子参数为W2,则将损失函数中第一目标参数取值为W1,第二目标参数取值为W2,将此次训练过程中使用的样本图像和输出的预测图像输入至该损失函数中,基于损失函数的输出值调整权重参数和算子参数,之后再基于调整后的权重参数和算子参数继续训练原始图像处理模型。

例如,将样本图像对应的目标图像和原始图像处理模型预测得到的预测图像作为该损失函数的输入,在第一目标参数属于第一取值范围且第二目标参数属于第二取值范围的情况下,损失函数的输出值趋近于0。并且,在输入为其他样本图像对应的目标图像和对应的预测得到的预测图像的情况下,在第一目标参数属于第一取值范围且第二目标参数属于第二取值范围的情况下,损失函数的输出值也是趋近于0。即损失函数的输出值最小化是指:无论损失函数的输入是不是原始图像处理模型处理过的样本图像和对应的预测图像,只要第一目标参数属于第一取值范围且第二目标参数属于第二取值范围,损失函数的输出值都趋近于0。

在一些实施例中,将样本图像的图像特征和对应的预测图像的图像特征作为损失函数的输入。其中,图像特征可以是向量、矩阵、特征图或其他形式。

例如,损失函数为:

其中,L表示损失函数,w1表示算子的权重参数,w2表示算子的算子参数,w1+∈1表示第一目标参数,w2+∈2表示第二目标参数,L

需要说明的是,本申请实施例中的第一取值范围和第二取值范围是针对每个算子来说的,也就是说,原始图像处理模型中每个算子的权重参数都有对应的第一取值范围,每个算子的算子参数也都有对应的第二取值范围。

在一些实施例中,计算机设备基于锐度感知最小化(Sharpness-AwareMinimization,SAM)优化算法训练原始图像处理模型。SAM是一种二阶优化算法,基于该算法能够使对应的损失函数地貌更加平滑,使训练得到的模型性能更加稳定,即提高模型的泛化性能。例如,参见图5所示的损失函数的示意图,分别采用不同的算法对原始图像处理模型进行处理,采用随机梯度下降法(Stochastic Gradient Descent,SGD)优化算法对原始图像处理模型进行处理,得到的损失函数在空间坐标系中的表现形式如501所示,采用SAM优化算法对原始图像处理模型进行处理,得到的损失函数在空间坐标系中的表现形式如502所示,从图5中能够明显看出,采用SAM优化算法得到的损失函数更加平坦,即在更大的取值范围内,该损失函数的输出值能够最小化。

在一些实施例中,计算机设备将样本图像输入至原始图像处理模型,基于该原始图像处理模型对该样本图像进行处理,得到样本图像对应的预测图像。然后确定该预测图像与目标图像之间的差异,该差异越小,表示原始图像处理模型的准确度越高。因此,计算机设备根据该差异,调整原始图像处理模型中至少一个算子的权重参数和算子参数,然后继续基于其他样本图像和目标图像对原始图像处理模型进行训练,以减小预测图像与目标图像之间的差异,从而得到更加准确的原始图像处理模型。

在一些实施例中,由于原始图像中包括多个节点,该多个节点之间具有先后顺序,计算机设备将样本图像输入至原始图像处理模型的第一个节点中,分别基于第一个节点与下一个节点之间的每个算子,对样本图像进行处理,按照多个算子的权重参数,对多个算子的处理结果进行加权求和,得到下一个节点的处理结果,直至得到原始图像处理模型的最后一个节点的处理结果,将最后一个节点的处理结果确定为预测图像。

在一些实施例中,计算机设备保持原始图像处理模型中的权重参数和算子参数中的第一种参数不变,对原始图像处理模型中的第二种参数进行训练,分别得到每个算子的第二种参数,保持每个算子的第二种参数不变,对原始图像处理模型中的第一种参数进行训练,分别得到每个算子的第一种参数,直至得到的算子参数和权重参数均收敛,且在损失函数中的所述第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小化。其中,在第一种参数为权重参数的情况下,第二种参数为算子参数;在第一种参数为算子参数的情况下,第二种参数为权重参数。

也即是,计算机设备保持原始图像处理模型中的权重参数不变,基于训练数据,对原始图像处理模型中的算子参数进行训练,分别得到每个算子的算子参数;然后再保持每个算子的算子参数不变,基于训练数据,对原始图像处理模型中的权重参数进行训练,分别得到每个算子的权重参数,直至得到的每个算子参数和每个第一权重参数均收敛,且在损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小化。也即是,权重参数和算子参数交替训练,直至每个算子参数和每个权重参数均收敛。例如,参见图6,保持每个算子的算子参数α、β、γ等不变,分别更新算子1、算子2、算子3和算子4的权重参数,然后再保持每个算子的权重参数不变,更新算子参数α、β、γ等。

上述实施方式仅是以训练一次权重参数,然后再训练一次算子参数交替训练为例进行说明,在另一实施例中,能够先在权重参数不变的情况下,训练多次算子参数,然后再在算子参数不变的情况下,训练多次权重参数的交替训练方式进行训练,也即是,计算机设备保持原始图像处理模型中的权重参数不变,基于训练数据,对原始图像处理模型中的算子参数进行训练,分别得到每个算子的算子参数。在算子参数的训练次数达到第一次数的情况下,再保持每个算子的算子参数不变,基于训练数据,对原始图像处理模型中的权重参数进行训练,分别得到每个算子的权重参数,然后在权重参数的训练次数达到第二次数的情况下,继续保持得到的每个算子的权重参数不变,基于训练数据,对每个算子的算子参数进行训练。其中,第一次数和第二次数均为不小于1的任一次数,第一次数与第二次数可以相同,也可以不同。在一些实施例中,考虑到原始图像处理模型中的权重参数的数量远小于算子参数的数量,因此,第一次数大于第二次数。

需要说明的是,上述实施例中仅是以先训练算子参数为例进行说明,在另一实施例中,能够先训练权重参数,即先保持原始图像处理模型中每个算子的算子参数不变,基于训练数据,对原始图像处理模型中每个算子的权重参数进行训练,分别得到每个算子的权重参数,再权重参数的训练次数达到第二次数的情况下,保持每个算子的权重参数不变,基于训练数据,对原始图像处理模型中每个算子的算子参数进行训练,得到每个算子的算子参数,直至得到的算子参数和权重参数均收敛,且在损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小化。

或者,在另一实施例中,同时训练每个算子的权重参数和算子参数,本申请实施例对原始图像处理模型的训练方式不做限制。

303、基于每个算子的权重参数,从每两个节点之间的多个算子中,选取目标算子。

由于原始图像处理模型中每两个节点之间有多个算子,但是最终需要构建的目标图像处理模型中不需要用到该多个算子中的全部算子,因此,按照多个算子的重要程度,从多个算子中选取目标算子。其中,从每两个节点之间选取的目标算子为一个或多个。

在一些实施例中,计算机设备基于每个算子的权重参数的大小来选取目标算子。即计算机设备从每两个节点之间的多个算子中,选取目标数量的目标算子,选取出的目标算子的权重参数大于未被选取的算子的权重参数,该目标数量为任一数量,例如,目标数量为2、3、4或其他数量。可选地,计算机设备对每两个节点之间的多个算子的权重参数按照从大到小的顺序排列,从第一个权重参数对应的算子开始依次选取目标数量个算子作为目标算子,或者计算机设备也能够采用其他方式从多个算子中选取目标数量的目标算子。

在一些实施例中,计算机设备基于每个算子的权重参数是否具有上升趋势来选取目标算子。即计算机设备从每两个节点之间的多个算子中,选取权重参数具有上升趋势的目标算子,权重参数具有上升趋势是指在原始图像处理模型的训练过程中,随着训练次数的增多而逐渐增大的权重参数。

可选地,权重参数具有上升趋势是指从原始图像处理模型第一次训练开始,每次训练后的权重参数都大于上一次训练后的权重参数,例如,经过5次训练,第一次训练后权重参数为1,之后几次训练后的权重参数依次为1.2、1.4、1.6、1.8,则确定该算子的权重参数具有上升趋势;或者,权重参数具有上升趋势是指最后一次训练得到的权重参数大于初始的权重参数,中间训练过程中,权重参数大小可存在波动,例如,经过5次训练,第一次训练后权重参数为1,之后几次训练后的权重参数依次为1.2、1.4、1.6、1.4;或者,权重参数具有上升趋势是指在最终得到权重参数之前的连续多次训练过程中,每次训练后的权重参数都大于上一次训练后的权重参数,例如,连续三次训练过程中权重参数都是增大的,经过5次训练,第一次训练后权重参数为1,之后几次训练后的权重参数依次为0.8、1、1.2、1.4。

在一些实施例中,计算机设备基于每个算子的权重参数的大小,以及是否具有上升趋势来选取目标算子。即计算机设备从每两个节点之间的多个算子中,选取权重参数具有上升趋势的多个第一算子,再从多个第一算子中选取目标数量的目标算子,目标算子的权重参数大于未被选取的第一算子的权重参数。其中选取具有上升趋势的第一算子的方式与上述选取具有上升趋势的目标算子的方式同理,从多个第一算子中选取权重参数较大的目标算子的方式与上述从多个算子中选取权重参数较大的多个目标算子的方式同理,在此不再赘述。

例如,参见图7所示的目标图像处理模型构建过程的示意图,原始图像处理模型中包括节点1、节点2、节点3和节点4,每两个节点之间均有三个算子,图7中采用两个节点之间的连接线表示对应的算子,连接线的箭头方向指示算子的输入和输出。每个算子的初始权重均为1,计算机设备对该原始图像处理模型中每个算子的权重参数进行训练,得到训练后的原始图像处理模型中每个算子的权重参数,然后从每两个节点之间的多个算子中选取目标算子,后续即可根据4个节点、每两个节点之间的目标算子和每个目标算子的权重参数,确定目标图像处理模型。

304、基于多个节点、每两个节点之间的目标算子和每个目标算子的权重参数,构建目标图像处理模型。

计算机设备确定每两个节点之间的目标算子之后,根据多个节点、每两个节点之间的目标算子和每个目标算子的权重参数,构建目标图像处理模型。其中,每个目标算子包括训练后的算子参数。

在一些实施例中,由于在之前的训练过程中,原始图像处理模型中包括目标算子以及其他算子,因此训练目标算子的算子参数时会受到其他算子的影响。因此为了提高目标图像处理模型的准确性,避免其他算子对目标算子的算子参数的影响,计算机设备构建目标图像处理模型之后,继续采用训练数据,对目标图像处理模型中的算子参数进行训练,直至每个目标算子的算子参数收敛,此时得到的目标图像处理模型的准确性更高。其中,对目标图像处理模型中算子参数的优化方式与上述对原始图像处理模型中权重参数和算子参数的优化方式可以相同,也可以不同,本申请实施例对此不做限制。

需要说明的是,构建目标图像处理模型之后,对目标图像处理模型继续进行训练所采用的训练数据与对原始图像处理模型进行训练所采用的训练数据可以相同,也可以不同。

本申请实施例提供了一种图像处理方法,通过训练原始图像处理模型对每个算子的权重参数进行优化,以使损失函数在第一目标参数属于该权重参数对应的第一取值范围时能够最小化,从而避免对权重参数的过度拟合,基于上述方式得到的权重参数来选取目标算子,构建出包括多个节点和多个目标算子的目标图像处理模型,从而实现了自动构建目标图像处理模型,无需人工设计模型的网络结构,且保证构建的目标图像处理模型具有较高的泛化性能,提高了目标图像处理模型的准确率。

并且,使损失函数在第一目标参数属于权重参数对应的第一取值范围,且第二目标参数属于算子参数对应的第二取值范围时能够最小化,不仅能够避免对权重参数的过度拟合,还能够避免对算子权重的过度拟合,从而提高了原始图像处理模型的泛化性能。

并且,由于原始图像处理模型中算子的权重参数的数量远远小于算子参数的数量,在一起训练权重参数和算子参数的情况下,容易导致权重参数过拟合或算子参数欠拟合的问题,而本申请中权重参数和算子参数交替训练,能够避免训练过程中权重参数和算子参数相互影响,在充分训练算子参数的情况下,保证权重参数不会过拟合,提高了原始图像处理模型的准确性。

在一些实施例中,参见图8,在步骤304之后,该方法还包括:

305、调用目标图像处理模型,对任一图像进行处理,得到该图像对应的目标图像。

在上述图3实施例中已经得到目标图像处理模型的基础上,执行步骤306,调用该目标图像处理模型,对任一图像进行处理,得到目标图像。

例如,目标图像处理模型用于对图像进行去噪,将任一图像输入至目标图像处理模型,得到去噪后的目标图像;或者,目标图像处理模型用于对图像进行色度均衡,将任一图像输入至目标图像处理模型,得到色度均衡后的目标图像;或者,目标图像处理模型用于去马赛克,将任一图像输入至目标图像处理模型,得到去马赛克后的目标图像,当然,目标图像处理模型还能够对任一图像进行分割处理、识别处理、复原、去云、去雨、去雾等其他处理,本申请实施例对目标图像处理模型的作用不做限制。

在一些实施例中,计算机设备基于任一图像与该图像对应的目标图像之间的峰值信噪比(Pulse Signal Noise Ratio,PSNR)和结构相似性(Structural Similarity,SSIM)来确定目标图像处理模型的性能。其中,峰值信噪比用于表示图像是否失真,峰值信噪比越大,表示图像的质量越好,即目标图像处理模型的性能越高;结构相似性用于表示两个图像之间的相似度,结构相似性越大,表示图像的质量越好,即目标图像处理模型的性能越高。

在一些实施例中,计算机设备将任一图像输入至目标图像处理模型;对于目标图像处理模型中的第一节点,基于第一节点与第二节点之间的多个目标算子进行处理,得到每个目标算子的处理结果,基于每个目标算子的权重参数,对多个目标算子的处理结果进行加权求和,得到第二节点的处理结果;在得到目标图像处理模型中最后一个节点的处理结果的情况下,将最后一个节点的处理结果确定为该图像对应的目标图像。其中,第一节点为目标图像处理模型中的任一节点,第二节点是与该第一节点连接的任一节点。

在一些实施例中,每两个节点之间有多个目标算子、且该多个目标算子的权重参数之和不为1的情况下,先基于多个目标算子的权重参数,重新计算每个目标算子的权重参数,以使重新计算得到的多个目标算子的权重参数之和为1,然后基于重新计算得到的每个目标算子的权重参数,对多个目标算子的处理结果进行加权求和。

另外,在两个节点之间仅有一个目标算子的情况下,在确定目标算子的处理结果时无需考虑该目标算子的权重参数。

例如,参见图7所示的目标图像处理模型,该目标图像处理模型中包括4个节点,将任一图像输入至节点1中,然后按照目标图像处理模型中每两个节点之间的算子对对应的节点的特征进行处理,在图7中,采用节点之间的连接线表示算子,连接线的指向指示算子的输入和输出,先基于节点1与节点2之间的两个目标算子分别对该图像进行处理,将这两个目标算子的处理结果进行加权求和,得到节点2的处理结果1,基于节点1与节点3之间的目标算子对该图像进行处理,将得到的处理结果2输入至节点3,基于节点2与节点3之间的目标算子,对处理结果1进行处理,将得到的处理结果3输入至节点3,将处理结果2和处理结果3作为节点3的处理结果4,然后,基于节点1与节点4之间的目标算子对该图像进行处理,将得到的处理结果5输入至节点4,基于节点2与节点4之间的目标算子对处理结果1进行处理,将得到的处理结果6输入至节点5,基于节点3与节点4之间的两个目标算子对处理结果4进行处理,将这两个目标算子的处理结果进行加权求和,将得到的处理结果7输入至节点4,将处理结果5、处理结果6和处理结果7作为节点4的处理结果,然后基于该节点4的处理结果确定对应的目标图像。

在一些实施例中,目标图像处理模型为U型网络,U型网络是一种深度学习框架,U型网络的输入和输出尺寸保持不变。该目标图像处理模型包括n个编码网络和n个解码网络,则计算机设备调用目标图像处理模型,对任一图像进行处理,得到该图像对应的目标图像,包括:将该图像输入至第1个编码网络中,基于第1个编码网络对该图像进行编码,得到第1个编码特征;基于第k个编码网络,对上一个编码网络输出的编码特征进行编码,得到第k个编码特征,直至第n个编码网络输出第n个编码特征;将第n个编码特征输入至第1个解码网络中,基于第1个解码网络对第n个编码特征进行解码,得到第1个解码特征;基于第k个解码网络,对上一个解码网络输出的解码特征和第(n+1-k)个编码特征进行解码,得到第k个解码特征,直至得到第n个解码网络输出目标图像;其中,目标图像处理模型中的n个编码网络和n个解码网络依次连接,n为大于1的正整数,k为大于1且不大于n的任一正整数。

对于目标图像处理模型中的每个编码网络和每个解码网络,编码网络和解码网络均包括多个节点、每两个节点之间的至少一个目标算子和每两个目标算子的权重参数,每个编码网络和每个解码网络的处理过程,与上述目标图像处理模型基于第一节点、第二节点及第一节点与第二节点之间的目标算子对输入的图像的处理过程类似。

例如,目标图像处理模型中的编码网络为下采样网络,解码网络为上采样网络。参见图9,目标图像处理模型中包括下采样网络901、下采样网络902、下采样网络903、下采样网络904、上采样网络905、上采样网络906、上采样网络907和上采样网络908,网络901-908之间依次连接。将任一图像输入下采样网络901中,多个网络依次进行处理,且每个下采样网络的处理结果经过恒等映射后会输入到对应的上采样网络中,实现对下采样网络的处理结果的重复利用,最终目标图像处理模型中最后一个上采样网络908输出目标图像。其中,恒等映射是指将处理结果映射为唯一对应的另一种形式,例如,处理结果为0,经过恒等映射将处理结果映射为0.1。

其中,对于上采样网络908,该上采样网络908的网络结构如图4所示,将对应的下采样网络901的输出作为上采样网络908的输入1,上一个上采样网络907的输出作为该上采样网络908的输入2,基于输入节点A与节点1之间的目标算子1对输入1进行处理,基于输入节点B与节点1之间的目标算子2对输入2进行处理,将目标算子1和目标算子2的输出作为节点1的处理结果,同理,基于节点2与输入节点A、输入节点B和节点1之间的目标算子,得到节点2的处理结果,基于节点3与输入节点A、输入节点B、节点1和节点2之间的目标算子,得到节点3的处理结果,基于输出节点与节点1、节点2和节点3之间的目标算子,得到输出节点的处理结果,该处理结果即为输入的图像对应的目标图像。对于其他上采样网络或下采样网络,采用与上采样网络908类似的方式得到对应的处理结果。

在一些实施例中,本申请实施例中得到的目标图像处理模型能够应用于ISP(Image Signal Process,图像信号处理)模块,该ISP是指计算机设备内部配置的、用于对拍摄的图像进行处理的模块。例如,计算机设备为具有拍摄功能的终端,则将目标图像处理模型应用在该终端中的ISP模块中,终端通过摄像头采集到图像之后经过该ISP模块对采集的图像进行处理,得到目标图像。

本申请实施例提供了一种图像处理方法,通过训练原始图像处理模型对每个算子的权重参数进行优化,以使损失函数在第一目标参数属于该权重参数对应的第一取值范围时能够最小化,从而避免对权重参数的过度拟合,基于上述方式得到的权重参数来选取目标算子,构建出包括多个节点和多个目标算子的目标图像处理模型,从而实现了自动构建目标图像处理模型,无需人工设计模型的网络结构,且保证构建的目标图像处理模型具有较高的泛化性能,提高了目标图像处理模型的准确率。

下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。

图10出了本申请一个示例性实施例提供的图像处理装置的结构框图。该图像处理装置应用于计算机设备,参见图10,该图像处理装置包括:

模型获取模块1001,用于获取原始图像处理模型,原始图像处理模型包括多个节点、每两个节点之间的多个算子和每个算子的权重参数;

第一训练模块1002,用于对原始图像处理模型进行训练,以使在原始图像处理模型的损失函数中的第一目标参数属于第一取值范围的情况下,损失函数的输出值最小化,第一取值范围是指以训练后的权重参数为中心、以第一阈值为半径的取值范围,其中,在训练之后,第一目标参数的取值基于训练后的权重参数的取值确定;

模型构建模块1003,用于基于多个节点和每两个节点之间的目标算子,构建目标图像处理模型,目标算子是基于训练后每个算子的权重参数选取的。

本申请实施例提供的装置,通过训练原始图像处理模型对每个算子的权重参数进行优化,以使损失函数在第一目标参数属于该权重参数对应的第一取值范围时能够最小化,从而避免对权重参数的过度拟合,基于上述方式得到的权重参数来选取目标算子,构建出包括多个节点和多个目标算子的目标图像处理模型,从而实现了自动构建目标图像处理模型,无需人工设计模型的网络结构,且保证构建的目标图像处理模型具有较高的泛化性能,提高了目标图像处理模型的准确率。

在一些实施例中,参见图11,该装置还包括:

算子选取模块1004,用于从每两个节点之间的多个算子中,选取目标数量的目标算子,目标算子的权重参数大于未被选取的算子的权重参数;或者,

算子选取模块1004,还用于从每两个节点之间的多个算子中,选取权重参数具有上升趋势的目标算子,权重参数具有上升趋势是指在原始图像处理模型的训练过程中,随着训练次数的增多而逐渐增大的权重参数;或者,

算子选取模块1004,还用于从每两个节点之间的多个算子中,选取权重参数具有上升趋势的多个第一算子,从多个第一算子中选取目标数量的目标算子,目标算子的权重参数大于未被选取的第一算子的权重参数。

在一些实施例中,每个算子包括算子参数,第一训练模型1002,用于对原始图像处理模型进行训练,以使在损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小化,第二取值范围是指以训练后的算子参数为中心、以第二阈值为半径的取值范围,其中,在训练之后,第二目标参数的取值基于训练后的算子参数的取值确定。

在一些实施例中,第一训练模块1002,用于对原始图像处理模型进行训练,分别得到训练后每个算子的权重参数和算子参数,以使每个算子的权重参数和算子参数收敛,且在损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小化。

在一些实施例中,第一训练模块1002,用于保持原始图像处理模型中的权重参数和算子参数中的第一种参数不变,对原始图像处理模型中的第二种参数进行训练,分别得到每个算子的第二种参数,保持每个算子的第二种参数不变,对原始图像处理模型中的第一种参数进行训练,分别得到每个算子的第一种参数,直至得到的算子参数和权重参数均收敛,且在损失函数中的第一目标参数属于第一取值范围、且第二目标参数属于第二取值范围的情况下,损失函数的输出值最小化,其中,在第一种参数为权重参数的情况下,第二种参数为算子参数,在第一种参数为算子参数的情况下,第二种参数为权重参数。

在一些实施例中,模型构建模块1003,用于基于多个节点、每两个节点之间的目标算子和每个目标算子的权重参数,构建目标图像处理模型。

在一些实施例中,每个算子包括算子参数,参见图11,该装置还包括:

第二训练模块1005,用于基于训练数据,对目标图像处理模型中每个目标算子的算子参数进行训练,直至每个目标算子的算子参数收敛,训练数据包括样本图像和样本图像对应的目标图像。

在一些实施例中,参见图11,该装置还包括:

图像处理模型1006,用于调用目标图像处理模型,对任一图像进行处理。

在一些实施例中,参见图11,图像处理模块1004,用于:

将原始图像输入至目标图像处理模型;

对于原始图像处理模型中的第一节点,基于第一节点与第二节点之间的多个目标算子进行处理,得到每个目标算子的处理结果,基于每个目标算子的权重参数,对多个目标算子的处理结果进行加权求和,得到第二节点的处理结果;

在得到目标图像处理模型中最后一个节点的处理结果的情况下,将最后一个节点的处理结果确定为原始图像对应的目标图像。

在一些实施例中,目标图像处理模型包括n个编码网络和n个解码网络,编码网络和解码网络均包括多个节点、每两个节点之间的至少一个目标算子和每个目标算子的权重参数,参见图11,图像处理模块100,6,用于:

将图像输入至第1个编码网络中,基于第1个编码网络对图像进行编码,得到第1个编码特征;

基于第k个编码网络,对上一个编码网络输出的编码特征进行编码,得到第k个编码特征,直至第n个编码网络输出第n个编码特征;

将第n个编码特征输入至第1个解码网络中,基于第1个解码网络对第n个编码特征进行解码,得到第1个解码特征;

基于第k个解码网络,对上一个解码网络输出的解码特征和第(n+1-k)个编码特征进行解码,得到第k个解码特征,直至得到第n个解码网络输出原始图像对应的目标图像;

其中,n为大于1的正整数,k为大于1且不大于n的任一正整数。

需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本申请实施例提供了一种计算机设备,该计算机设备包括处理器和存储器;该存储器存储有至少一条指令,该至少一条指令用于被处理器执行以实现如上述各个方法实施例提供的图像处理方法。

在一些实施例中,该计算机设备为终端,请参考图12,其示出了本申请一个示例性实施例提供的终端的结构方框图。在一些实施例中,终端1200是智能手机、平板电脑、可穿戴设备等能够作为无线站点接入无线局域网的终端。本申请中的终端1200至少包括一个或多个以下部件:处理器1210、存储器1220和至少两个无线链路1230。

在一些实施例中,处理器1210包括一个或者多个处理核心。处理器1210利用各种接口和线路连接整个终端1200内的各个部分,通过运行或执行存储在存储器1220内的程序代码,以及调用存储在存储器1220内的数据,执行终端1200的各种功能和处理数据。在一些实施例中,处理器1210采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器1210能集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、神经网络处理器(Neural-network Processing Unit,NPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;NPU用于实现人工智能(Artificial Intelligence,AI)功能;调制解调器用于处理无线通信。能够理解的是,上述调制解调器也能不集成到处理器1210中,单独通过一块芯片进行实现。

在一些实施例中,该处理器1210用于控制至少两个无线链路1230的工作状况,相应的,该处理器1210为集成了无线保真(Wireless Fidelity,Wi-Fi)芯片的处理器。其中,该Wi-Fi芯片为具有双Wi-Fi处理能力的芯片。例如,该Wi-Fi芯片为双频双发(Dual BandDual Concurrent,DBDC)芯片,或者,双频同步(Dual Band Simultaneous,DBS)芯片等。

在一些实施例中,存储器1220包括随机存储器(Random Access Memory,RAM),在一些实施例中,存储器1220包括只读存储器(Read-Only Memory,ROM)。在一些实施例中,该存储器1220包括非瞬时性计算机可读介质(non-transitory computer-readable storagemedium)。存储器1220可用于存储程序代码。存储器1220可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等;存储数据区可存储根据终端1200的使用所创建的数据(比如音频数据、电话本)等。

在一些实施例中,存储器1220中存储有不同的无线链路1230的接收信标帧的接收方案。以及,不同的无线链路1230连接的接入节点的标识、无线链路1230的标识等。

该至少两个无线链路1230用于连接不同的接入节点(Access Point,AP)。接收AP下发的下行数据。其中,该不同的接入节点为同一路由器中的接入节点或者不同路由器中的接入节点。

在一些实施例中,终端1200中还包括显示屏。显示屏是用于显示用户界面的显示组件。在一些实施例中,该显示屏为具有触控功能的显示屏,通过触控功能,用户可以使用手指、触摸笔等任何适合的物体在显示屏上进行触控操作。在一些实施例中,显示屏通常设置在终端1200的前面板。在一些实施例中,显示屏被设计成为全面屏、曲面屏、异型屏、双面屏或折叠屏。在一些实施例中,显示屏还被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合等,本实施例对此不加以限定。

除此之外,本领域技术人员能够理解,上述附图所示出的终端1200的结构并不构成对终端1200的限定,终端1200包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,终端1200中还包括麦克风、扬声器、输入单元、传感器、音频电路、模块、电源、蓝牙模块等部件,在此不再赘述。

在一些实施例中,该计算机设备为服务器,请参考图13,其示出了本申请一个示例性实施例提供的服务器的结构方框图,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central Processing Units,CPU)1301和一个或一个以上的存储器1302,其中,所述存储器1302中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器1301加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。

本申请还提供一种计算机可读介质,该计算机可读介质存储有至少一条指令,该至少一条指令由该处理器加载并执行以实现如上各个实施例示出的图像处理方法。

本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,该至少一条指令由该处理器加载并执行以实现如上各个实施例示出的图像处理方法。

根据本申请实施例的另一方面,提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,当所述芯片在终端设备上运行时,用于实现上述方面所述的图像处理方法。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的图像处理方法中全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

技术分类

06120115925040