压缩图像处理方法、装置、电子设备及计算机可读介质与流程

文档序号:13426919阅读:263来源:国知局

本发明涉及图像处理技术领域,尤其是涉及压缩图像处理方法、装置、电子设备及计算机可读介质。



背景技术:

目前,jpeg图片的解压缩过程是在计算机的cpu(centralprocessingunit,中央处理器)上进行的,而将jpeg图片解压缩成纯rgb像素的图片,花费的时间比较长。而对于很多例如计算机视觉中的任务,输入的训练样本是一张jpeg格式的图片,因此,利用这种格式的图片训练神经网络或是用神经网络推断图片中的信息,需要经过较长的图片解压缩过程,从而限制了神经网络的训练以及推断的处理速度。



技术实现要素:

有鉴于此,本发明的目的在于提供压缩图像处理方法、装置、电子设备及计算机可读介质,可以在gpu上执行,减少训练所需要的数据解压缩的预处理时间,以及神经网络进行推断的时间。

第一方面,本发明实施例提供了压缩图像处理方法,所述方法包括:

获取原始图像,所述原始图像的格式为jpeg格式;

将所述原始图像进行熵解码和反量化处理,得到预处理的图像;

利用所述预处理的图像进行神经网络算法训练,得到所述预处理的图像的神经网络的参数;

通过所述预处理的图像的神经网络的参数对所述原始图像进行推断,从而得到推断结果。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述利用所述预处理的图像进行神经网络算法训练,得到所述预处理的图像的神经网络的参数包括,重复执行以下处理,直至达到第一预设条件:

确定神经网络模型,并根据所述神经网络模型构建计算图;

将所述计算图通过后向传播计算每个层的参数的梯度;

将每个所述层的参数的梯度和学习率通过梯度下降法更新每个所述层的参数,从而得到所述预处理的图像的所述神经网络的参数;

其中,所述第一预设条件包括为准确率达到预设阈值或者循环次数达到预设频次。

结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,将所述计算图通过后向传播计算每个层的参数的梯度,包括:

将所述预处理的图像输入到所述神经网络模型中,得到所述神经网络中每个所述层的参数;

将所述计算图通过后向传播计算所述神经网络中每个所述层的参数的梯度。

结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述将每个所述层的参数的梯度和学习率通过梯度下降法更新每个所述层的参数,从而得到所述预处理的图像的所述神经网络的参数,包括:

获取不同的任务;

根据所述不同的任务的属性确定对应的学习率;

从所述对应的学习率中选取满足第二预设条件的学习率;

将所述神经网络中每个所述层的参数的梯度和满足所述第二预设条件的学习率通过所述梯度下降法更新所述神经网络中每个所述层的参数,得到所述预处理的图像的所述神经网络的参数;

其中,所述第二预设条件包括为所述准确率达到预设阈值。

结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述任务的属性包括类别和数据集,所述根据所述不同的任务的属性确定对应的学习率包括:

根据不同的所述类别和所述数据集确定所述对应的学习率。

结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述推断结果包括图片的分类结果、图片检测框和图片语义分割热力图。

第二方面,本发明实施例还提供压缩图像处理装置,所述装置包括:

获取模块,用于获取原始图像,所述原始图像的格式为jpeg格式;

处理模块,用于将所述原始图像进行熵解码和反量化处理,得到预处理的图像;

训练模块,用于利用所述预处理的图像进行神经网络算法训练,得到所述预处理的图像的神经网络的参数;

推断模块,用于通过所述预处理的图像的神经网络的参数对所述原始图像进行推断,从而得到推断结果。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述训练模块包括,重复执行以下处理,直至达到第一预设条件:

构建单元,用于确定神经网络模型,并根据所述神经网络模型构建计算图;

第一计算单元,用于将所述计算图通过后向传播计算每个层的参数的梯度;

第一更新单元,用于将每个所述层的参数的梯度和学习率通过梯度下降法更新每个所述层的参数,从而得到所述预处理的图像的所述神经网络的参数。;

其中,所述第一预设条件包括为准确率达到预设阈值或者循环次数达到预设频次。

结合第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述第一计算单元包括:

输入单元,用于将所述预处理的图像输入到所述神经网络模型中,得到所述神经网络中每个所述层的参数;

第二计算单元,用于将所述计算图通过后向传播计算所述神经网络中每个所述层的参数的梯度。

结合第二方面的第二种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述第一更新单元包括:

获取单元,用于获取不同的任务;

确定单元,用于根据所述不同的任务的类属性确定对应的学习率

选取单元,用于从所述对应的学习率中选取满足第二预设条件的学习率;

第二更新单元,用于将所述神经网络中每个所述层的参数的梯度和满足所述第二预设条件的学习率通过所述梯度下降法更新所述神经网络中每个所述层的参数,得到所述预处理的图像的所述神经网络的参数;

其中,所述第二预设条件包括为所述准确率达到预设阈值。

结合第二方面的第三种可能的实施方式,本发明实施例提供了第二方面的第四种可能的实施方式,其中,所述任务的属性包括类别和数据集,所述确定单元包括:

根据不同的所述类别和所述数据集确定所述对应的学习率。

结合第二方面,本发明实施例提供了第二方面的第五种可能的实施方式,其中,所述推断结果包括图片的分类结果、图片检测框和图片语义分割热力图。

第三方面,本发明实施例还提供电子设备,包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的压缩图片训练神经网络的方法的步骤。

第四方面,本发明实施例还提供计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的压缩图片训练神经网络的方法的步骤。

本发明实施例提供了压缩图像处理方法、装置、电子设备及计算机可读介质,包括:获取格式为jpeg的原始图像,将原始图像进行熵解码和反量化处理,得到预处理的图像;再将预处理的图像进行神经网络算法训练;最后将训练得到的预处理的图像的神经网络的参数对原始图像进行推断,从而得到推断结果,可以在gpu上执行,减少训练所需要的数据解压缩的预处理时间,以及神经网络进行推断的时间。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

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

图1为本发明实施例一提供的电子设备的示意图;

图2为本发明实施例二提供的压缩图像处理方法流程图;

图3为本发明实施例二提供的压缩图像处理方法中步骤s103的流程图;

图4为本发明实施例三提供的压缩图像处理装置示意图。

图标:

10-获取模块;20-处理模块;30-训练模块;40-推断模块;31-构建单元;32-第一计算单元;33-第一更新单元;100-电子设备;102-处理器;104-存储装置;106-输入装置;108-输出装置;110-图像采集装置;112-总线系统。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为便于对本实施例进行理解,下面对本发明实施例进行详细介绍。

实施例一:

图1为本发明实施例一提供的电子设备的示意图。

参照图1,用于实现本发明实施例的压缩图像处理方法和装置的示例电子设备100,包括一个或多个处理器102、一个或多个存储装置104、输入装置106、输出装置108以及图像采集装置110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子设备100的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备也可以具有其他组件和结构。

所述处理器102可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制所述电子设备100中的其它组件以执行期望的功能。

所述存储装置104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(randomaccessmemory,简称ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(read-onlymemory,简称rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的本发明实施例中(由处理器实现)的客户端功能以及/或者其它期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。

所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。

所述输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。

所述图像采集装置110可以拍摄用户期望的图像(例如照片、视频等),并且将所拍摄的图像存储在所述存储装置104中以供其它组件使用。应当理解,图像采集装置110仅是示例,电子设备100可以不包括图像采集装置110。在这种情况下,可以利用其他具有图像采集能力的部件采集人脸图像,并将采集的图像发送给电子设备100。

示例性地,用于实现根据本发明实施例提供的压缩图片训练神经网络的方法和装置的示例电子设备可以被实现为诸如智能手机、平板电脑、人脸识别门锁、个人计算机或远程服务器等的终端设备。

实施例二:

图2为本发明实施例二提供的压缩图片训练神经网络的方法流程图。

根据本发明实施例,提供了压缩图片训练神经网络的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

参照图2,该方法包括以下步骤:

步骤s101,获取原始图像,原始图像的格式为jpeg格式,其中,jpeg格式为一种国际图像的压缩标准。

原始图像可以是图像采集装置(例如终端设备的摄像头)采集到的原始图像,也可以是对原始图像进行预处理之后获得的图像。此外,原始图像可以是单个的静态图像,也可以是视频流中的某一视频帧。

步骤s102,将原始图像进行熵解码和反量化处理,得到预处理的图像;

这里,jpeg的解压缩包括五个步骤,通常是先将原始图像经过熵解码、反量化、反离散余弦变换、反缩减取样和色彩空间转换,其中,在这些步骤中耗时较长的是反离散余弦变换、反缩减取样和色彩空间转换三个步骤。因此,将这三个步骤看成是一种卷积操作,并将这三个步骤合并到神经网络的卷积层中进行训练,从而减少训练所需要的数据解压缩的预处理时间,以及神经网络进行推断的时间。

将在cpu(centralprocessingunit,中央处理器)上实现解压的一部分过程转化到神经网络上,并且在gpu(graphicsprocessingunit,图形处理器)上进行操作,可以更高程度地并行化,加快解压速度。

另外,将原始图像经过熵解码和反量化的处理,利用得到的预处理的图像进行神经网络算法训练。

步骤s103,利用预处理的图像进行神经网络算法训练,得到预处理的图像的神经网络的参数;

这里,将预处理的图像经过神经网络算法中的构建计算图、后向传播和更新参数,从而得到预处理的图像的神经网络的参数。

步骤s104,通过预处理的图像的神经网络的参数对原始图像进行推断,从而得到推断结果。

这里,推断结果包括图片的分类结果、图片检测框和图片语义分割热力图。推断结果根据任务的不同而不同,并不限于上述三种情况,还可以是其他情况。

具体地,预处理的图像的神经网络的参数可以用于推断,具体的推断过程为利用构造好的计算图,按照计算图进行前向传播,最后将计算图的输出节点作为推断结果。

通过获取原始图像,将原始图像经过jpeg解压缩过程中的前两个步骤,即熵解码和反量化处理,得到预处理的图片;再将耗时较长的是反离散余弦变换、反缩减取样和色彩空间转换这三个步骤看成是一种卷积操作,并将这三个步骤合并到神经网络的卷积层中进行训练,得到预处理的图像的神经网络参数;最后通过预处理的图像的神经网络的参数对原始图片进行推断,得到推断结果,从而减少训练所需要的数据解压缩的预处理时间,以及神经网络进行推断的时间。

进一步的,参照图3,步骤s103包括以下步骤,重复执行以下处理,直至达到第一预设条件:

步骤s201,确定神经网络模型,并根据神经网络模型构建计算图;

步骤s202,将计算图通过后向传播计算每个层的参数的梯度;

步骤s203,将每个层的参数的梯度和学习率通过梯度下降法更新每个层的参数,从而得到预处理的图像的神经网络的参数。

这里,将预处理的图像通过神经网络算法进行训练,需要经过三个步骤,第一个步骤是构建计算图;第二个步骤是后向传播;第三个步骤是更新参数。其中,神经网络算法中包括神经网络模型,在确定了神经网络算法中的神经网络模型之后,根据神经网络模型构建计算图。另外,步骤s201至步骤s203是循环执行的,直到满足第一预设条件后,停止执行,从而得到预处理的图像的神经网络的参数,其中,第一预设条件为准确率达到预设阈值或者循环次数达到预设频次。准确率对于分类任务,就是指分类的准确率;对于其他任务,则对应相应的指标,当指标达到预设阈值即可。

具体地,步骤s202包括以下步骤:

步骤s301,将预处理的图像输入到神经网络模型中,得到神经网络中每个层的参数;

步骤s302,将计算图通过后向传播计算神经网络中每个层的参数的梯度。

这里,神经网络中包括多个层,例如卷积层、池化层和全连接层等。将预处理的图像输入到神经网络模型中,可以得到卷积层的参数、池化层的参数和全连接层的参数等;然后将计算图通过后向传播计算卷积层的参数的梯度、池化层的参数的梯度和全连接层的参数的梯度。

具体地,步骤s203包括以下步骤:

步骤s401,获取不同的任务;

步骤s402,根据所述不同的任务的属性确定对应的学习率;

这里,神经网络包括任务,不同的任务对应不同的学习率。通过判断任务的属性来确定对应的学习率;任务的属性包括类别和数据集,根据不同的类别和数据集确定对应的学习率。

步骤s403,从对应的学习率中选取满足第二预设条件的学习率;

这里,第二预设条件可以为准确率达到预设阈值或者达到其他指标。

步骤s404,将神经网络中每个层的参数的梯度和满足第二预设条件的学习率通过梯度下降法更新神经网络中每个层的参数,得到预处理的图像的神经网络的参数。

本发明实施例提供了压缩图像处理方法,包括:获取格式为jpeg的原始图像,将原始图像进行熵解码和反量化处理,得到预处理的图像;再将预处理的图像进行神经网络算法训练;最后将训练得到的预处理的图像的神经网络的参数对原始图像进行推断,从而得到推断结果,可以在gpu上执行,减少训练所需要的数据解压缩的预处理时间,以及神经网络进行推断的时间。

实施例三:

本发明实施例还提供压缩图像处理装置,该压缩图像处理装置主要用于执行本发明实施例上述内容所提供的压缩图像处理方法,以下对本发明实施例提供的压缩图像处理装置做具体介绍。

图4为本发明实施例三提供的压缩图像处理装置示意图。

参照图4,该装置包括获取模块10、处理模块20、训练模块30和推断模块40,其中,训练模块30包括构建单元31、第一计算单元32和第一更新单元33。

获取模块10,用于获取原始图像,原始图像的格式为jpeg格式;

处理模块20,用于将原始图像进行熵解码和反量化处理,得到预处理的图像;

训练模块30,用于利用预处理的图像进行神经网络算法训练,得到预处理的图像的神经网络的参数;

推断模块40,用于通过预处理的图像的神经网络的参数对原始图像进行推断,从而得到推断结果。

进一步的,训练模块30包括,重复执行以下处理,直至达到第一预设条件:

构建单元31,用于确定神经网络模型,并根据神经网络模型构建计算图;

第一计算单元32,用于将计算图通过后向传播计算每个层的参数的梯度;

第一更新单元33,用于将每个层的参数的梯度和学习率通过梯度下降法更新每个层的参数,从而得到预处理的图像的神经网络的参数;

其中,第一预设条件包括为准确率达到预设阈值或者循环次数达到预设频次。

进一步的,第一计算单元32包括:

输入单元(未示出),用于将预处理的图像输入到神经网络模型中,得到神经网络中每个层的参数;

第二计算单元(未示出),用于将计算图通过后向传播计算神经网络中每个层的参数的梯度。

进一步的,第一更新单元33包括:

获取单元(未示出),用于获取不同的任务;

确定单元(未示出),用于根据不同的任务的属性确定对应的学习率;

选取单元(未示出),用于从对应的学习率中选取满足第二预设条件的学习率;

第二更新单元(未示出),用于将神经网络中每个层的参数的梯度和满足第二预设条件的学习率通过梯度下降法更新神经网络中每个层的参数,得到预处理的图像的神经网络的参数;

其中,第二预设条件包括为准确率达到预设阈值。

进一步的,所述任务的属性包括类别和数据集,确定单元(未示出)包括:

根据不同的类别和数据集确定对应的学习率。

进一步的,推断结果包括图片的分类结果、图片检测框和图片语义分割热力图。

本发明实施例提供了压缩图像处理装置,包括:获取格式为jpeg的原始图像,将原始图像进行熵解码和反量化处理,得到预处理的图像;再将预处理的图像进行神经网络算法训练;最后将训练得到的预处理的图像的神经网络的参数对原始图像进行推断,从而得到推断结果,可以在gpu上执行,减少训练所需要的数据解压缩的预处理时间,以及神经网络进行推断的时间。

本发明实施例所提供的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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