CN112991192B - 图像处理方法、装置、设备及其系统 - Google Patents

图像处理方法、装置、设备及其系统 Download PDF

Info

Publication number
CN112991192B
CN112991192B CN201911311133.XA CN201911311133A CN112991192B CN 112991192 B CN112991192 B CN 112991192B CN 201911311133 A CN201911311133 A CN 201911311133A CN 112991192 B CN112991192 B CN 112991192B
Authority
CN
China
Prior art keywords
image
processing
decoded
sample image
processing network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911311133.XA
Other languages
English (en)
Other versions
CN112991192A (zh
Inventor
王莉
武晓阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201911311133.XA priority Critical patent/CN112991192B/zh
Publication of CN112991192A publication Critical patent/CN112991192A/zh
Application granted granted Critical
Publication of CN112991192B publication Critical patent/CN112991192B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提供一种图像处理方法、装置、设备及其系统,该方法包括:获取已解码图像信息;将已解码图像信息输入给第一处理网络,由第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;将所述去失真图像对应的目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理;第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的。通过本申请的技术方案,可以避免或减轻图像中的压缩损失。

Description

图像处理方法、装置、设备及其系统
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像处理方法、装置、设备及其系统。
背景技术
在图像处理过程中,滤波、数据四舍五入、量化等处理,可能使像素值发生强度偏移,导致视觉障碍或假象。为了避免或减轻上述问题,可以使用去失真滤波器对图像进行后处理,以恢复像素强度偏移,减轻视觉损失。传统的去失真滤波器通常是人为地归纳失真图像的特征,利用该特征构建去失真滤波器,人为地设计失真滤波器的结构,以实验和经验为基础配置失真滤波器的系数。
近年来,深度学习网络迅速发展,深度神经网络可以在训练数据的驱动下,自适应地构建特征,在图像分类,目标检测和目标分割等领域均取得很大的成功。基于此,可以采用深度学习网络对图像进行后处理,相对去失真滤波器的处理方式,深度学习网络使得重建图像的主、客观质量得到提升。
在相关技术中,深度神经网络只对图像进行后处理,从改善信号的角度对图像进行增强,能够解决图像质量问题,如运动模糊等。但是,深度神经网络并未考虑编解码带来的压缩损失,即无法解决编解码造成的压缩损失。
发明内容
本申请提供一种图像处理方法,所述方法包括:
获取已解码图像信息;
将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;
将所述去失真图像对应的目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理;
其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像。
本申请提供一种图像处理系统,所述系统包括:
解码端,用于获取编码比特流,从所述编码比特流中解析出已解码图像信息,并将所述已解码图像信息输入给缺陷恢复模块;
缺陷恢复模块,用于获取已解码图像信息,将所述已解码图像信息输入给第一处理网络;由第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;
其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像;
人工智能处理模块,用于获取所述去失真图像对应的目标图像,将所述目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理。
本申请提供一种图像处理装置,所述装置包括:
获取模块,用于获取已解码图像信息;
处理模块,用于将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像;
发送模块,用于将所述去失真图像对应的目标图像输入给第二处理网络,以使第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理。
本申请提供一种图像处理设备,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现如下步骤:
获取已解码图像信息;
将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;
将所述去失真图像对应的目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理;
其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像。
由以上技术方案可见,本申请实施例中,可以根据编码前样本图像的特征和去失真样本图像的特征对第一处理网络进行训练,而第一处理网络用于解决编解码造成的压缩损失,显然,通过第一处理网络对已解码图像进行处理,得到去失真图像时,可以避免或减轻去失真图像中的压缩损失,提高去失真图像的性能。编码前样本图像的特征和去失真样本图像的特征可以为用于提升第二处理网络的处理性能的特征,这样,在根据编码前样本图像的特征和去失真样本图像的特征训练得到第一处理网络时,还能够提升第二处理网络的处理性能。
附图说明
图1是本申请一种实施方式中的视频编码框架/视频解码框架的示意图;
图2是本申请一种实施方式中的AI处理系统的结构示意图;
图3A和图3B是本申请一种实施方式中的AI处理系统的结构示意图;
图4是本申请一种实施方式中的神经网络的训练方法的流程示意图;
图5A-图5C是本申请一种实施方式中的神经网络的结构示意图;
图6A-图6B是本申请一种实施方式中的神经网络的结构示意图;
图7是本申请一种实施方式中的图像处理方法的流程示意图;
图8A是本申请一种实施方式中的图像处理装置的结构图;
图8B是本申请一种实施方式中的图像处理设备的结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例中提出一种图像处理方法,可以涉及如下概念:
神经网络:神经网络可以包括但不限于:卷积神经网络(简称CNN)、循环神经网络(简称RNN)、全连接网络等。神经网络的结构单元可以包括但不限于:卷积层(Conv)、池化层(Pool)、激励层、全连接层(FC)等,对此不做限制。
在卷积层中,通过使用卷积核对图像进行卷积运算,使图像特征增强,卷积层在空间范围内使用卷积核进行卷积运算,该卷积核可以是一个m*n大小的矩阵,卷积层的输入与卷积核进行卷积,可得到卷积层的输出。卷积运算实际是一个滤波过程,在卷积运算中,是将图像上点(x,y)的像素值f(x,y)与卷积核w(x,y)进行卷积。例如,提供4*4的卷积核,该4*4的卷积核包含16个数值,这16个数值的大小可以根据需要配置。按照4*4的大小在图像上依次滑动,得到多个4*4的滑动窗口,将该4*4的卷积核与每个滑动窗口进行卷积,得到多个卷积特征,这些卷积特征就是卷积层的输出,且被提供给下一层。
在池化层中,实际上就是一个降采样的过程,通过对多个卷积特征(即卷积层的输出)进行取最大值、取最小值、取平均值等操作,从而可以减少计算量,并保持特征不变性。在池化层中,可以利用图像局部相关性的原理,对图像进行子抽样,从而可以减少数据处理量,并保留图像中的有用信息。
在激励层中,可以使用激活函数(如非线性函数)对上一层输出的特征进行映射,从而引入非线性因素,使得神经网络通过非线性的组合而增强表达能力。其中,激励层的激活函数可以包括但不限于ReLU(Rectified Linear Units,整流线性单元)函数,以ReLU函数为例进行说明,则该ReLU函数可以将上一层输出的所有特征中,小于0的特征置0,而大于0的特征保持不变。
在全连接层中,该全连接层用于将输入给本全连接层的所有特征进行全连接处理,从而得到一个特征向量,且该特征向量中可以包括多个特征。进一步的,全连接层还可以采用1*1的卷积层,从而可以构成全卷积的网络。
在实际应用中,可以根据不同需求,将一个或多个卷积层、一个或多个池化层、一个或多个激励层和一个或多个全连接层进行组合构建神经网络。
当然,上述只是神经网络的示例,对此神经网络的结构不做限制。
在神经网络的训练过程中,可以利用训练数据训练神经网络内的各神经网络参数,如卷积层参数(如卷积核参数)、池化层参数、激励层参数、全连接层参数等,对此不做限制,可以训练神经网络内的所有神经网络参数。通过训练神经网络内各神经网络参数,可以使神经网络拟合出输入和输出的映射关系。
在神经网络的使用过程中,可以将输入数据提供给神经网络,由神经网络对输入数据进行处理,如利用所有神经网络参数对输入数据进行处理,得到输出数据,且输入数据与输出数据满足神经网络拟合出的输入和输出的映射关系。
卷积神经网络(Convolutional Neural Network,CNN):CNN作为一种前馈神经网络,是深度学习技术中极具代表的网络结构之一,它的人工神经元可以响应一部分覆盖范围内的周围单元,根据图像特征进行处理。一般地,CNN的基本结构包括两层,其一为特征提取层(如卷积层),每个神经元的输入与前一层的局部接受域相连,并提取该局部的特征。一旦该局部特征被提取后,它与其它特征间的位置关系也随之确定下来。其二是特征映射层(如采用ReLU函数的结构等),网络的每个计算层由多个特征映射组成,每个特征映射是一个平面,平面上所有神经元的权值相等。特征映射结构可以采用sigmoid函数(即S型函数,也称为S型生长曲线)、ReLU函数等作为卷积网络的激活函数。
视频编码框架/视频解码框架:参见图1所示,为视频编码框架/视频解码框架的示意图,该框架可以包括但不限于:帧内预测/帧间预测,变换,量化,熵编码,反变换,反量化,重建图像,环内滤波(如去块滤波器(DBK,Deblocking Filter)和样点自适应补偿(SAO,Sample Adaptive Offset)等)。
示例性的,帧内预测利用周围已重建的像素值预测当前待编码像素,从而去除空域冗余,以达到压缩视频数据的目的。帧间预测利用已编码视频帧内的图像块预测当前待编码图像块,从而去除时域冗余,以达到压缩视频数据的目的。变换模块将空域信号转换到频域,使得残差信号集中在低频部分,更利于后续对残差信号的编码。量化模块采用标量量化,即使用一个值来恢复对应区间中的所有数值,是量化编解码有损的根源。熵编码通过给予高概率出现的信号短码字,低概率出现的信号长码字的方式,来降低数据中的统计冗余。环路滤波用于改善视频的质量,减少块效应等,如去块滤波器和SAO等。
参见图2所示,为基于编码比特流的AI处理系统的结构示意图,解码端可以采用图1所示的视频解码框架,对编码比特流进行处理,并从编码比特流中解析出已解码图像,并将已解码图像输入给后处理模块。后处理模块可以使用去失真滤波器对图像进行后处理,得到增强图像,并将增强图像输入给人工智能处理模块,以使人工智能处理模块根据增强图像进行人工智能处理。
考虑到去失真滤波器通常是人为地归纳失真图像的特征,利用该特征构建去失真滤波器,人为地设计失真滤波器的结构,以实验和经验为基础配置失真滤波器的系数,因此,在另一种可能的实施方式中,后处理模块还可以采用深度学习网络对图像进行后处理,得到增强图像,并将增强图像输入给人工智能处理模块,采用深度学习网络得到的增强图像,主、客观质量均得到提升。
但是,上述方式只是从改善信号的角度对图像进行增强,能够解决图像质量问题,如运动模糊等。但是,并未考虑编解码带来的压缩损失,无法解决编解码造成的压缩损失。例如,块效应和振铃效应会导致出现压缩损失,而造成块效应和振铃效应的原因是:编解码按块处理,预测残差变换后获得频域信息,在频域上进行独立量化导致的。块效应是对DCT系数进行量化时忽略了相邻编码块间的相关性导致的,块效应主要是低频分量独立有损量化导致的。振铃效应来自高频分量的量化,振铃效应导致图像在像素值剧烈变化处产生震荡。
针对上述发现,本申请实施例中,还可以在AI处理系统中部署缺陷恢复模块,由缺陷恢复模块解决编解码造成的压缩损失,避免或者减轻压缩损失,如解决块效应和振铃效应等。参见图3A所示,为AI处理系统的结构示意图。
解码端,用于获取编码比特流,从编码比特流中解析出已解码图像信息,将已解码图像信息输入给缺陷恢复模块。
缺陷恢复模块,用于获取已解码图像信息,将已解码图像信息输入给第一处理网络,由第一处理网络对已解码图像信息进行处理,得到与已解码图像信息对应的去失真图像。第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,训练过程参见后续实施例。
人工智能处理模块,用于获取去失真图像对应的目标图像,该目标图像可以为去失真图像或去失真图像对应的增强图像,将目标图像输入给第二处理网络,第二处理网络根据目标图像进行用于实现智能分析的人工智能处理。
在一种可能的实施方式中,参见图3A所示,缺陷恢复模块得到与已解码图像信息对应的去失真图像后,将去失真图像确定为目标图像,并将该目标图像输入给人工智能处理模块。人工智能处理模块可以获取目标图像(即目标图像为去失真图像),并将目标图像输入给第二处理网络。
在另一种可能的实施方式中,参见图3A所示,缺陷恢复模块得到与已解码图像信息对应的去失真图像后,缺陷恢复模块还可以对去失真图像进行后处理,得到去失真图像对应的增强图像,将该增强图像确定为目标图像,并将该目标图像输入给人工智能处理模块。人工智能处理模块可以获取目标图像(即目标图像为增强图像),并将目标图像输入给第二处理网络。
示例性的,缺陷恢复模块可以使用去失真滤波器对去失真图像进行后处理,得到去失真图像对应的增强图像。或者,缺陷恢复模块可以采用深度学习网络对去失真图像进行后处理,得到去失真图像对应的增强图像。当然,上述方式只是两个示例,对此后处理的方式不做限制,只要能够得到增强图像即可。
在另一种可能的实施方式中,参见图3B所示,AI处理系统还可以包括后处理模块。缺陷恢复模块得到与已解码图像信息对应的去失真图像后,将去失真图像输入给后处理模块。后处理模块在得到去失真图像后,对去失真图像进行后处理,得到去失真图像对应的增强图像,将增强图像确定为目标图像,并将该目标图像输入给人工智能处理模块。人工智能处理模块可以获取该目标图像(即目标图像为增强图像),并将该目标图像输入给第二处理网络。
示例性的,后处理模块可以使用去失真滤波器对去失真图像进行后处理,得到去失真图像对应的增强图像。或者,后处理模块可以采用深度学习网络对去失真图像进行后处理,得到去失真图像对应的增强图像。当然,上述实现方式只是两个示例,对此后处理的方式不做限制,只要能够得到增强图像即可。
在上述实施例中,关于第二处理网络根据目标图像进行用于实现智能分析的人工智能处理的过程,与第二处理网络的功能有关。例如,若第二处理网络用于实现人脸检测,则第二处理网络根据目标图像进行人脸检测处理,若第二处理网络用于实现车辆检测,则第二处理网络根据目标图像进行车辆检测处理。当然,上述只是人工智能处理的两个示例,对此不做限制。
在上述实施例中,第二处理网络也可以称为人工智能处理网络,第二处理网络可以是神经网络(如卷积神经网络),也可以是其它类型的网络。
综上所述,本申请实施例中,缺陷恢复模块可以通过第一处理网络对已解码图像进行处理,得到去失真图像,从而避免或减轻去失真图像中的压缩损失。
示例性的,本申请实施例中的图像(如已解码图像,去失真图像,编码前样本图像,失真图像等等),可以是一帧图像,即针对一帧图像进行处理,也可以是视频流中的每帧图像,即对视频流中的每帧图像进行处理。为了方便描述,在后续实施例中,以针对图像的处理过程为例进行说明。
以下结合具体的实施例,对缺陷恢复模块的处理过程进行说明。
在一种可能的实施方式中,缺陷恢复模块用于根据训练数据得到第一处理网络,并根据第一处理网络对已解码图像进行处理,得到去失真图像。第一处理网络可以是神经网络(如卷积神经网络),也可以是其它类型的网络。
参见图4所示,为神经网络的训练方法的流程示意图,该流程用于训练第一处理网络,即,根据训练数据得到第一处理网络,该方法可以包括:
步骤401,将编码前样本图像,已解码样本图像的图像信息输入给第一处理网络,第一处理网络获取已解码样本图像对应的去失真样本图像。编码前样本图像和已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像。
示例性的,可以获取训练样本集,该训练样本集可以包括大量编码前样本图像,以及每个编码前样本图像对应的已解码样本图像的图像信息。已解码样本图像的图像信息可以包括已解码样本图像,或者,已解码样本图像的图像信息可以包括已解码样本图像和该已解码样本图像对应的边信息。
编码前样本图像是指未编码图像,编码端在得到编码前样本图像后,可以对编码前样本图像进行编码,对此编码方式不做限制,并将编码比特流发送给解码端。解码端可以采用图1所示的视频解码框架,对编码比特流进行处理,并从编码比特流中解析出已解码样本图像,已解码样本图像就是与编码前样本图像对应的失真图像,且编码前样本图像和已解码样本图像是针对同一帧图像。
已解码样本图像对应的边信息,用于表示已解码样本图像相对编码前样本图像的失真特征,失真特征包括如下失真特征的至少一种:失真程度、失真位置,失真类型。
示例性的,边信息表示已解码样本图像相对编码前样本图像的失真程度。
示例性的,边信息表示已解码样本图像相对编码前样本图像的失真位置。
例如,在视频编解码应用中,图像通常被划分为多个不重叠且不固定大小的编码单元,编码单元分别进行预测编码及不同程度的量化处理,编码单元之间的失真通常不具有一致性,在编码单元的边界处通常会产生像素突变,因此,编码单元的边界坐标可以作为一种先验的表征失真位置的边信息。
示例性的,边信息表示已解码样本图像相对编码前样本图像的失真类型。
例如,在视频编解码应用中,图像中的不同编码单元可能采用不同的预测模式,不同的预测模式会影响残差数据的分布,从而影响已解码样本图像的特征,因此,编码单元的预测模式可以作为一种表征失真类型的边信息。
综上所述,边信息是编码生成的码流中除像素信息(量化后的残差变换系数)之外的信息,这些信息指示了编码处理的过程,比如说,预测模式(预测模式属于失真类型)指示使用了哪个方向的重建像素,QP(Quantization Parameter,量化参数)值(QP值属于失真程度,即量化间隔)指示了量化颗粒度的大小。
示例性的,可以根据边信息获取边信息矩阵;通过第一处理网络对已解码样本图像和边信息矩阵进行处理,得到已解码样本图像对应的去失真样本图像。
在一种可能的实施方式中,已解码样本图像的图像信息可以包括已解码样本图像,第一处理网络获取已解码样本图像对应的去失真样本图像,可以包括但不限于:第一处理网络对已解码样本图像进行处理,得到已解码样本图像对应的去失真样本图像。例如,第一处理网络对已解码样本图像进行卷积处理,得到已解码样本图像对应的去失真样本图像。示例性的,针对已解码样本图像的处理方式,与第一处理网络的结构有关,第一处理网络的结构可以任意配置。
参见图5A所示,为第一处理网络的结构示意图,第一处理网络包括输入层处理单元,隐含层处理单元和输出层处理单元。输入层处理单元,用于接收第一处理网络的输入,如已解码样本图像,并对输入的数据进行第一层的卷积滤波处理。隐含层处理单元,用于对输入层处理单元的输出数据,进行至少一层的卷积滤波处理。输出层处理单元,用于对隐含层处理单元的输出数据,进行最后一层的卷积滤波处理,输出结果为已解码样本图像对应的去失真样本图像。
在另一种可能的实施方式中,已解码样本图像的图像信息可以包括已解码样本图像和该已解码样本图像对应的边信息,边信息表示已解码样本图像相对编码前样本图像的失真特征。第一处理网络获取已解码样本图像对应的去失真样本图像,可以包括但不限于:根据边信息获取边信息矩阵;对已解码样本图像和边信息矩阵进行合并,得到合并矩阵;对合并矩阵进行处理,得到已解码样本图像对应的去失真样本图像。例如,第一处理网络对合并矩阵进行卷积处理,得到去失真样本图像。示例性的,针对合并矩阵的处理方式,与第一处理网络的结构有关,第一处理网络的结构可以任意配置,对此不做限制。
参见图5B所示,为第一处理网络的结构示意图,根据边信息获取边信息矩阵,对已解码样本图像和边信息矩阵进行合并,得到合并矩阵。输入层处理单元,用于接收第一处理网络的输入,如合并矩阵,并对输入的数据进行第一层的卷积滤波处理。隐含层处理单元,用于对输入层处理单元的输出数据,进行至少一层的卷积滤波处理。输出层处理单元,用于对隐含层处理单元的输出数据,进行最后一层的卷积滤波处理,输出结果作为已解码样本图像对应的去失真样本图像。
在上述例子中,可以将已解码样本图像和边信息矩阵作为第一处理网络的输入,比如说,可以对已解码样本图像和边信息矩阵进行合并,得到合并矩阵,并将合并矩阵作为第一处理网络的输入,从而引入了能够表示已解码样本图像的失真特征的边信息,能够训练出具备更强泛化能力的神经网络模型,对大量的具有差异性的已解码样本图像的去失真能力会更强,进而能够对已解码样本图像进行更好的去失真处理,得到更接近编码前样本图像的去失真样本图像。
在另一种可能的实施方式中,已解码样本图像的图像信息可以包括已解码样本图像和该已解码样本图像对应的边信息,边信息表示已解码样本图像相对编码前样本图像的失真特征。第一处理网络获取已解码样本图像对应的去失真样本图像,可以包括但不限于:根据边信息获取边信息矩阵。通过第一处理网络的第一子结构(如像素处理结构,用于对像素信息进行处理)对已解码样本图像进行处理(如卷积处理),得到初步处理图像;通过第一处理网络的第二子结构(如权重生成结构,用于对权重信息进行处理)对边信息矩阵进行处理(如卷积处理),得到权重系数矩阵,权重系数矩阵的每个元素位置对应一个权重系数;权重系数矩阵的元素数量与初步处理图像的像素点数量相同。针对初步处理图像的每个像素点,从权重系数矩阵中确定与该像素点对应的元素位置,根据该元素位置的权重系数对该像素点的像素值进行调整,得到调整像素值。根据每个像素点的调整像素值获取去失真样本图像。
示例性的,针对已解码样本图像的处理方式,可以与第一处理网络的第一子结构有关,第一子结构可以任意配置,对此第一子结构不做限制。
示例性的,针对边信息矩阵的处理方式,与第一处理网络的第二子结构有关,第一处理网络的第二子结构可以任意配置,对此第二子结构不做限制。
参见图5C所示,为第一处理网络的一个结构示意图,首先,根据边信息获取边信息矩阵。第一处理网络的第一子结构可以包括输入层处理单元A1,隐含层处理单元B1和输出层处理单元C1。第一处理网络的第二子结构可以包括输入层处理单元A2,隐含层处理单元B2和输出层处理单元C2。
输入层处理单元A1,用于接收第一子结构的输入,如已解码样本图像,对输入数据进行第一层的卷积滤波处理。隐含层处理单元B1,用于对输入层处理单元A1的输出数据,进行至少一层的卷积滤波处理。输出层处理单元C1,用于对隐含层处理单元B1的输出数据,进行最后一层的卷积滤波处理,得到初步处理图像。
输入层处理单元A2,用于接收第二子结构的输入,如边信息矩阵,对输入的数据进行第一层的卷积滤波处理。隐含层处理单元B2,用于对输入层处理单元A2的输出数据,进行至少一层的卷积滤波处理。输出层处理单元C1,用于对隐含层处理单元B2的输出数据,进行最后一层的卷积滤波处理,得到权重系数矩阵,该权重系数矩阵的每个元素位置可以对应一个权重系数。
然后,针对初步处理图像的每个像素点,可以从权重系数矩阵中确定与该像素点对应的元素位置,根据该元素位置的权重系数对该像素点的像素值进行调整,得到调整像素值。根据每个像素点的调整像素值获取去失真样本图像。
例如,初步处理图像的像素点(x1,y1)与权重系数矩阵的元素位置(x1,y1)对应,假设初步处理图像的像素点(x1,y1)的像素值为R,权重系数矩阵的元素位置(x1,y1)的权重系数为q,则初步处理图像的像素点(x1,y1)的调整像素值可以为q*R。当然,上述只是根据权重系数对像素值进行调整,得到调整像素值的示例,对此不做限制。在得到初步处理图像中的每个像素点的调整像素值后,就可以根据每个像素点的调整像素值确定去失真样本图像。
示例性的,通过第一处理网络的第二子结构对边信息矩阵进行处理,得到权重系数矩阵,可以包括但不限于如下方式:通过第一处理网络的第二子结构对边信息矩阵进行处理(如卷积滤波处理),得到该边信息矩阵中的每个元素位置的损失程度;针对每个元素位置,根据该元素位置的损失程度确定该元素位置的权重系数;例如,当该元素位置的损失程度越高时,则该元素位置的权重系数越大。然后,根据每个元素位置的权重系数生成权重系数矩阵。
例如,输入层处理单元A2,用于接收第二子结构的输入,如边信息矩阵,对输入的数据进行第一层的卷积滤波处理。隐含层处理单元B2,用于对输入层处理单元A2的输出数据,进行至少一层的卷积滤波处理。输出层处理单元C1,用于对隐含层处理单元B2的输出数据,进行最后一层的卷积滤波处理,得到该边信息矩阵中的每个元素位置的损失程度。针对每个元素位置,根据该元素位置的损失程度确定该元素位置的权重系数,并根据每个元素位置的权重系数生成权重系数矩阵,该权重系数矩阵的每个元素位置可以对应一个权重系数。
在上述例子中,可以将已解码样本图像和边信息矩阵作为第一处理网络的输入,即已解码样本图像作为第一处理网络的第一子结构的输入,边信息矩阵作为第一处理网络的第二子结构的输入,从而引入了能够表示已解码样本图像的失真特征的边信息,能够训练出具备更强泛化能力的神经网络模型,对大量的具有差异性的已解码样本图像的去失真能力会更强,进而能够对已解码样本图像进行更好的去失真处理,得到更接近编码前样本图像的去失真样本图像。
步骤402,根据编码前样本图像的特征和去失真样本图像的特征,确定去失真样本图像对应的损失值。比如说,构建一个损失函数,该损失函数与编码前样本图像的特征和去失真样本图像的特征有关,因此,可以根据编码前样本图像的特征和去失真样本图像的特征,确定损失函数的损失值。
步骤403,根据损失值对第一处理网络进行训练,得到训练后的第一处理网络。例如,根据该损失值确定第一处理网络是否收敛。如果否,则对第一处理网络的网络参数进行调整,基于调整后的第一处理网络,返回执行由第一处理网络获取已解码样本图像对应的去失真样本图像的操作。如果是,则将第一处理网络确定为已完成训练的第一处理网络,基于该第一处理网络进行后续处理。
在一种可能的实施方式中,可以根据一个损失值确定第一处理网络是否收敛,例如,基于第一处理网络1得到去失真样本图像1,根据编码前样本图像的特征和去失真样本图像1的特征1,确定损失函数的损失值1。若损失值1不大于阈值,则确定第一处理网络1已收敛。若损失值1大于阈值,则对第一处理网络1的网络参数进行调整,得到第一处理网络2,基于第一处理网络2得到去失真样本图像2,并根据编码前样本图像的特征和去失真样本图像2的特征2,确定该损失函数的损失值2。若损失值2不大于阈值,则确定第一处理网络2已收敛。若损失值2大于阈值,则对第一处理网络2的网络参数进行调整,得到第一处理网络3,以此类推,一直到第一处理网络已收敛。
在上述实施例中,若损失值不大于阈值(根据经验配置,对此不做限制),则确定第一处理网络已收敛,若损失值大于阈值,则确定第一处理网络未收敛。
在另一种可能的实施方式中,可以根据多次迭代过程的多个损失值确定第一处理网络是否收敛,例如,在每次迭代过程中,对上次迭代过程的第一处理网络的网络参数进行调整,得到调整后的第一处理网络,并基于调整后的第一处理网络得到去失真样本图像,根据编码前样本图像的特征和去失真样本图像的特征,确定损失函数的损失值,即,每次迭代过程可以得到一个损失值。
然后,确定多个损失值的变化幅度曲线,若根据该变化幅度曲线确定损失值变化幅度已经平稳,且最后一次迭代过程的损失值不大于阈值,则可以确定最后一次迭代过程的第一处理网络已收敛。否则,可以确定最后一次迭代过程的第一处理网络未收敛,继续进行下一次迭代过程,得到下一次迭代过程的损失值,并重新确定多个损失值的变化幅度曲线(例如,已得到的所有损失值的变化幅度曲线),以此类推,一直到损失值变化幅度已经平稳,且最后一次迭代过程的损失值不大于阈值,确定最后一次迭代过程的第一处理网络已收敛。
例如,约定变化幅度曲线的损失值数量的最小值为10,则先进行10次迭代过程,得到损失值1-损失值10,确定损失值1-损失值10的变化幅度曲线,若根据该变化幅度曲线确定损失值变化幅度未平稳,则进行第11次迭代过程,得到损失值11,确定损失值1-损失值11的变化幅度曲线,若根据该变化幅度曲线确定损失值变化幅度未平稳,则进行第12次迭代过程,得到损失值12,确定损失值1-损失值12的变化幅度曲线,以此类推。假设进行第15次迭代过程后,基于损失值1-损失值15的变化幅度曲线,确定损失值变化幅度平稳,且损失值15不大于阈值,则可以确定第15次迭代过程的第一处理网络已收敛。
示例性的,损失值变化幅度平稳表示:连续多次迭代过程的损失值未发生变化,或者变化的幅度很小(可以小于某个阈值),对此不做限制。
综上所述,基于多次迭代过程的多个损失值,若确定损失值变化幅度已经平稳,且最后一次迭代过程的损失值不大于阈值,则确定最后一次迭代过程的第一处理网络已收敛,否则,确定最后一次迭代过程的第一处理网络未收敛。
在实际应用中,还可以采用其它方式确定第一处理网络是否收敛,对此不做限制。例如,若迭代次数达到预设次数阈值,则确定第一处理网络已收敛;又例如,若迭代时长达到预设时长阈值,则确定第一处理网络已收敛。
在一种可能的实施方式中,编码前样本图像的特征和去失真样本图像的特征为用于提升第二处理网络的处理性能的特征。示例性的,在训练第一处理网络时,第一处理网络不仅用于进行缺陷恢复,避免或减轻压缩损失,还能够提升第二处理网络的处理性能。基于此,衡量指标可以与第二处理网络紧耦合,在构建损失函数时,损失函数与用于提升第二处理网络的处理性能的特征有关。基于上述损失函数训练的第一处理网络,可以提升第二处理网络的处理性能,能够朝有利于第二处理网络的方向进行缺陷恢复。综述所述,编码前样本图像的特征和去失真样本图像的特征为用于提升第二处理网络的处理性能的特征。
在一种可能的实施方式中,为了提升第二处理网络的处理性能,则编码前样本图像的特征可以为频域特征(即用于描述信号在频率方面特性的特征),例如,编码前样本图像的特征为对编码前样本图像的像素值进行变换得到的特征值,如对编码前样本图像的像素值进行DCT变换得到的特征值。去失真样本图像的特征可以为频域特征(即用于描述信号在频率方面特性的特征),例如,去失真样本图像的特征为对去失真样本图像的像素值进行变换得到的特征值,如对去失真样本图像的像素值进行DCT变换得到的特征值。
示例性的,若编码前样本图像的特征和去失真样本图像的特征均为频域特征,则损失函数与编码前样本图像的频域特征和去失真样本图像的频域特征有关,基于该损失函数的损失值训练出第一处理网络后,第一处理网络能够得到与已解码图像信息对应的去失真图像,并将去失真图像输入给第二处理网络。
显然,由于第一处理网络是基于频域特征构建的,去失真图像的频域特征与编码前图像的频域特征有关,因此,若第二处理网络需要利用去失真图像的频域特征进行人工智能处理,那么,去失真图像的频域特征与编码前图像的频域特征有关时,就能够提升第二处理网络的处理性能。
在另一种可能的实施方式中,为了提升第二处理网络的处理性能,当第二处理网络根据目标图像的目标特征进行用于实现智能分析的人工智能处理时,则编码前样本图像的特征为编码前样本图像的目标特征,去失真样本图像的特征为去失真样本图像的目标特征。例如,若第二处理网络需要利用目标图像的特征A进行人工智能处理,则第二处理网络的目标特征为特征A,如人脸检测特征、车辆检测特征等,对此目标特征不做限制。基于此,编码前样本图像的特征为编码前样本图像的特征A,去失真样本图像的特征为去失真样本图像的特征A。示例性的,若编码前样本图像的特征和去失真样本图像的特征均为第二处理网络的目标特征,则损失函数与编码前样本图像的目标特征和去失真样本图像的目标特征有关,基于该损失函数的损失值训练出第一处理网络后,第一处理网络能够得到与已解码图像信息对应的去失真图像,并将去失真图像输入给第二处理网络。显然,由于第一处理网络是基于目标特征构建的,去失真图像的目标特征与编码前图像的目标特征有关,因此,第二处理网络利用去失真图像的目标特征进行人工智能处理时,那么,去失真图像的目标特征与编码前图像的目标特征有关,并能够提升第二处理网络的处理性能。
在另一种可能的实施方式中,为了提升第二处理网络的处理性能,则可以通过第三处理网络获取编码前样本图像的特征;通过第三处理网络获取去失真样本图像的特征;第三处理网络包括第二处理网络的特征提取层。综上所述,若第二处理网络的特征提取层,用于提取特征B进行人工智能处理,则可以部署第三处理网络,第三处理网络可以为神经网络(如卷积神经网络),也可以为其它类型的网络,且第三处理网络包括第二处理网络的特征提取层。基于此,第三处理网络的特征提取层(即第二处理网络的特征提取层),可以从编码前样本图像中获取特征B,并从去失真样本图像中获取特征B。
示例性的,若编码前样本图像的特征和去失真样本图像的特征均为特征提取层提取的特征B,则损失函数与编码前样本图像的特征B和去失真样本图像的特征B有关,基于该损失函数的损失值训练出第一处理网络后,第一处理网络能够得到与已解码图像信息对应的去失真图像,并将去失真图像输入给第二处理网络。显然,由于第一处理网络是基于特征B构建的,去失真图像的特征B与编码前图像的特征B有关,因此,第二处理网络的特征提取层从去失真图像中提取特征B,并利用特征B进行人工智能处理时,去失真图像的特征B与编码前图像的特征B有关,从而能够提升第二处理网络的处理性能。
由以上技术方案可见,本申请实施例中,可以根据编码前样本图像的特征和去失真样本图像的特征,对第一处理网络进行训练,得到训练后的第一处理网络,而第一处理网络用于解决编解码造成的压缩损失,显然,通过第一处理网络对已解码图像进行处理,得到去失真图像时,可以避免或减轻去失真图像中的压缩损失,提高去失真图像的性能,提高图像质量。编码前样本图像的特征和去失真样本图像的特征,可以为用于提升第二处理网络的处理性能的特征,这样,在训练得到第一处理网络时,能够提升第二处理网络的处理性能。考虑到编码端会使用不同的边信息(如预测模式,量化间隔,变换块大小和QP值等),使得已解码图像会有不同分布,不同程度的失真,因此,在训练第一处理网络时,可以利用解码过程中有效的边信息训练第一处理网络。
以下结合具体应用场景,对上述神经网络的训练过程进行说明。
参见图6A所示,为第一处理网络的结构示意图,该第一处理网络可以为VDSR(Accurate Image Super-Resolution,精确图像超分辨率)网路,当然,VDSR网路只是一个示例,对此第一处理网络的类型不做限制。在图6A中,第一处理网络可以包括输入层处理单元,隐含层处理单元和输出层处理单元。
步骤a1、获取编码前样本图像,编码前样本图像对应的已解码样本图像和该已解码样本图像对应的边信息。已解码样本图像对应的边信息,用于表示已解码样本图像相对编码前样本图像的失真特征,该失真特征包括如下至少一种:失真程度、失真位置,失真类型。
步骤a2、根据边信息获取边信息矩阵。
示例性的,当边信息包括失真程度时,则可以获取失真程度对应的边信息矩阵。针对已解码样本图像来说,可以确定已解码样本图像的每个像素点的失真程度值(用于准确表示像素点失真程度的失真程度值),而这些像素点的失真程度值,就组成边信息矩阵,即边信息矩阵的每个元素位置与已解码样本图像的像素点对应,每个元素位置的失真程度值就是该元素位置对应的像素点的失真程度值。
例如,已解码样本图像的每个编码区域的量化参数是已知的,可以获取每个编码区域的量化参数,针对已解码样本图像的每个像素点,可以确定该像素点所在编码区域的量化参数,将确定的量化参数确定为失真程度值。
又例如,针对通过超分辨率处理得到的已解码样本图像,已解码样本图像的上采样倍数是已知的,即可以将进行超分辨率处理时的上采样倍数,确定为已解码样本图像的像素点的失真程度值。假设在对已解码样本图像进行超分辨率处理中,需要将分辨率为100*100的已解码样本图像,处理成分辨率为200*200的已解码样本图像,则上采样倍数为2。
又例如,针对失真程度未知的已解码样本图像,可以使用无参考图像质量评价方法对已解码样本图像进行评估,得到已解码样本图像的每个像素点的失真程度值。无参考图像质量评价方法为图像主观质量评价方法,受测者根据主观观看感受对已解码样本图像的质量进行评分,评分分值可为已解码样本图像每个像素点的失真程度值。
示例性的,当边信息包括失真位置时,则可以获取失真位置对应的边信息矩阵。针对已解码样本图像来说,可以确定已解码样本图像的每个像素点是否为编码单元(已解码样本图像通常被划分为多个不重叠且不固定大小的编码单元,编码单元分别进行预测编码及不同程度的量化处理)的边界坐标。若像素点是编码单元的边界坐标,则失真位置值可以为第一取值,若像素点不是编码单元的边界坐标,则失真位置值可以为第二取值。已解码样本图像的每个像素点的失真位置值,就组成边信息矩阵,即边信息矩阵的元素位置与已解码样本图像的像素点对应,每个元素位置的失真位置值就是该元素位置对应的像素点的失真位置值。
示例性的,当边信息包括失真类型时,则可以获取失真类型对应的边信息矩阵。针对已解码样本图像来说,可以确定已解码样本图像的每个像素点所属编码单元的预测模式(已解码样本图像中的不同编码单元可能采用相同或不同的预测模式)。若像素点所属编码单元的预测模式为预测模式A,则该像素点的失真类型值可以为第一取值,若像素点所属编码单元的预测模式为预测模式B,则该像素点的失真类型值可以为第二取值,若像素点所属编码单元的预测模式为预测模式C,则该像素点的失真类型值可以为第三取值,以此类推。已解码样本图像的每个像素点的失真类型值,就组成边信息矩阵,即边信息矩阵的元素位置与已解码样本图像的像素点对应,每个元素位置的失真类型值就是该元素位置对应的像素点的失真类型值。
示例性的,当边信息包括失真程度和失真位置时,边信息矩阵中的每个元素位置,该元素位置的数值为该元素位置的失真程度值与该元素位置的失真位置值之和。当边信息包括失真程度和失真类型时,边信息矩阵中的每个元素位置,该元素位置的数值为该元素位置的失真程度值与该元素位置的失真类型值之和。当边信息包括失真位置和失真类型时,边信息矩阵中的每个元素位置,该元素位置的数值为该元素位置的失真位置值与该元素位置的失真类型值之和。当边信息包括失真程度,失真位置和失真类型时,边信息矩阵中的每个元素位置,该元素位置的数值为该元素位置的失真程度值,该元素位置的失真位置值,该元素位置的失真类型值之和。
当然,上述只是获取边信息矩阵的几个示例,对此不做限制。
步骤a3、将已解码样本图像和边信息矩阵输入给第一处理网络,第一处理网络对已解码样本图像和边信息矩阵进行合并,得到合并矩阵。
针对合并矩阵中的每个元素位置,该元素位置与边信息矩阵上相同位置的元素位置(后续记为元素位置A1)相对应,该元素位置也与已解码样本图像上相同位置的像素点(后续记为像素点B1)相对应,因此,该元素位置的数值可以为元素位置A1在边信息矩阵中的数值与像素点B1在已解码样本图像中的数值之和。
示例性的,像素点B1在已解码样本图像中的数值,可以为像素点B1的像素值(如亮度分量和色度分量),也可以为像素点B1的亮度值(如亮度分量)。
综上所述,可以将已解码样本图像cy(若人工智能处理过程在亮度分量上进行,则cy为像素点的亮度值)与边信息矩阵cm进行合并,得到合并矩阵I,即I=cy+cm
示例性的,在进行合并处理之前,还可以对已解码样本图像的亮度分量进行归一化处理,基于归一化处理后的亮度分量与边信息矩阵进行合并。
步骤a4、第一处理网络对合并矩阵I进行卷积处理,得到去失真样本图像。
示例性的,参见图6A所示,在输入层处理单元,可以对合并矩阵I进行第一层的卷积滤波处理。例如,可以采用如下公式对合并矩阵I进行多维卷积滤波和非线性映射,产生n1个以稀疏形式表示的图像块:F1(I)=g(W1*I+B1)。
示例性的,F1(I)为输入层的输出,I为输入层中卷积层的输入,*为卷积操作,W1为输入层的卷积层滤波器组的权重系数,B1为输入层的卷积层滤波器组的偏移系数,g()为非线性映射函数。W1对应于n1个卷积滤波器,即有n1个卷积滤波器作用于输入层的卷积层的输入,输出n1个图像块;每个卷积滤波器的卷积核的大小为c1×f1×f1,c1为输入通道数,f1为每个卷积核在空间上的大小。
在一种可能的实施方式中,输入层的参数可以为:c1=2,f1=5,n1=64,使用ReLU函数作为g(),ReLU函数的函数表达式为:g(x)=max(0,x);则该实施例中输入层卷积处理表达式为:F1(I)=max(0,W1*I+B1)。
示例性的,参见图6A所示,在隐含层处理单元,可以对输入层处理单元的输出数据F1(I),进行至少一层的卷积滤波处理。例如,隐含层对输入层提取的稀疏表示的图像块F1(I)进行进一步的高维映射。本实施例中,可以不对隐含层中包含的卷积层层数,卷积层连接方式、卷积层属性等作限定,即隐含层可以采用目前已知的各种结构,但是,隐含层中可以包含至少1个卷积层。
例如,隐含层包含N-1(N≥2)层卷积层,隐含层的处理过程由下式表示:Fi(I)=g(Wi*Fi-1(I)+Bi),i∈{2,3,…,N}。Fi(I)表示第一处理网络中第i层卷积层的输出,*为卷积操作,Wi为第i层卷积层滤波器组的权重系数,Bi为卷积层滤波器组的偏移系数,g()为非线性映射函数。Wi对应于ni个卷积滤波器,即有ni个卷积滤波器作用于第i层卷积层的输入,输出ni个图像块;每个卷积滤波器的卷积核的大小为ci×fi×fi,ci为输入通道数,fi为每个卷积核在空间上的大小。
在一种可能的实施方式中,该隐含层可以包括1个卷积层,该卷积层的卷积滤波器参数为:c2=64,f2=1,n2=32,使用ReLU函数作为g(),则该实施例中隐含层的卷积处理表达式为:F2(I)=max(0,W2*F1(I)+B2)。
示例性的,参见图6A所示,在输出层处理单元,可以对隐含层处理单元的输出数据FN(I),进行最后一层的卷积滤波处理,输出结果作为已解码样本图像对应的去失真样本图像,至此,成功得到去失真样本图像。例如,输出层对隐含层输出的高维图像块FN(I)进行聚合,最终输出去失真样本图像。
本实施例中,可以不对输出层的结构作限定,输出层可以是Residual Learning(残差学习)结构,也可以是Direct Learning(直接学习)结构,或者任何其它的结构,对此不做限制。
采用Residual Learning结构的处理如下:对隐含层的输出进行卷积操作获取补偿残差,再与已解码样本图像相加,得到去失真样本图像。输出层的处理可以由下式表示:F(I)=WN*FN-1(I)+BN+Y。F(I)为输出层输出,FN-1(I)为隐含层的输出,*为卷积操作,WN为输出层的卷积层滤波器组的权重系数,BN为输出层的卷积层滤波器组的偏移系数,Y为未经过卷积滤波处理,欲进行去失真处理的已解码样本图像。WN对应于nN个卷积滤波器,即有nN个卷积滤波器作用于第i层卷积层的输入,输出nN个图像块,nN为输出的去失真样本图像个数,与输入的已解码样本图像的个数相等,如果只输出一种去失真样本图像,则nN取值为1;每个卷积滤波器的卷积核的大小为cN×fN×fN,cN为输入通道数,fN为每个卷积核在空间上的大小。
采用Direct Learning结构的处理如下:对隐含层的输出进行卷积操作后,直接输出去失真样本图像,不再与已解码样本图像相加。输出层的处理可以由下式进行表示:F(I)=WN*FN-1(I)+BN。F(I)为输出层输出,FN-1(I)为隐含层的输出,*为卷积操作,WN为输出层的卷积层滤波器组的权重系数,BN为输出层的卷积层滤波器组的偏移系数。WN对应于nN个卷积滤波器,即nN个卷积滤波器作用于第i层卷积层的输入,输出nN个图像块,nN为输出的去失真样本图像个数,与输入的已解码样本图像的个数相等,若只输出一种去失真样本图像,nN取值为1;每个卷积滤波器的卷积核的大小为cN×fN×fN,cN为输入通道数,fN为每个卷积核在空间上的大小。
在一种可能的实施方式中,若该输出层采用Residual Learning结构,输出层包括1个卷积层,该输出层的卷积滤波器参数为:c3=32,f3=3,n3=1,则该实施例中输出层的卷积处理表达式为:F(I)=W3*F3(I)+B3+Y。
经过上述步骤a1-步骤a4,就可以通过第一处理网络得到已解码样本图像对应的去失真样本图像,在此基础上,为了训练第一处理网络,还执行以下步骤:
步骤a5、根据编码前样本图像的特征和去失真样本图像的类特征,确定去失真样本图像对应的损失值。例如,以频域特征为例,则根据编码前样本图像的频域特征和去失真样本图像的频域特征,确定去失真样本图像对应的损失值。
示例性的,编码前样本图像的频域特征,可以是对编码前样本图像的像素值进行变换得到的特征值,如对编码前样本图像的像素值进行DCT变换得到的特征值。去失真样本图像的频域特征,可以是对去失真样本图像的像素值进行变换得到的特征值,如对去失真样本图像的像素值进行DCT变换得到的特征值。
示例性的,可以获取训练样本集,该训练样本集可以包括大量编码前样本图像,以及每个编码前样本图像对应的已解码样本图像,该已解码样本图像对应的边信息。针对每个编码前样本图像来说,可以将该编码前样本图像,该编码前样本图像对应的已解码样本图像和该已解码样本图像对应的边信息组成图像对,大量图像对就组成训练样本集Ω。
示例性的,针对预设的第一处理网络,可以对该第一处理网络的网络参数进行初始化,初始化的网络参数由Θ1表示,初始化的网络参数可以根据实际需要和经验进行设置,对此网络参数Θ1不做限制。还可以对训练相关的高层参数(如学习率、梯度下降算法等)进行合理的设置,对此设置方式不做限制。
参见步骤a3和步骤a4的实现方式,将训练样本集Ω中的已解码样本图像和边信息矩阵,输入至第一处理网络,由第一处理网络进行卷积滤波处理,得到已解码样本图像对应的去失真样本图像。例如,对训练样本集Ω进行网络参数为Θi的前向计算,获取第一处理网络的输出F(Y),F(Y)为已解码样本图像对应的去失真样本图像。第一次执行本过程时,网络参数Θi为Θ1,再次执行本过程时,网络参数Θi为对上一次使用的网络参数Θi-1进行调整后得到的,对网络参数Θi-1的调整过程参见后续实施例。
在步骤a5中,可以使用频域均方误差(MSE)作为损失函数,该损失函数与编码前样本图像的频域特征和去失真样本图像的频域特征有关,即,可以根据编码前样本图像的频域特征和去失真样本图像的频域特征,确定损失函数的损失值L(Θi)。
在可能的实施方式中,损失函数的示例可以为: 当然,上述只是损失函数的示例,对此损失函数不做限制。
在上述公式中,N表示单次训练中从训练样本集Ω中选取的图像对个数,F(Yni)表示第一处理网络在网络参数Θi下前向计算得到的去失真样本图像(即第n个去失真样本图像),xn表示编码前样本图像(即第n个编码前样本图像),i为当前迭代的次数,DCT(*)表示按变换块大小对图像进行DCT变换。DCT(Xn)表示按变换块大小对编码前样本图像进行DCT变换,即编码前样本图像的频域特征。DCT(F(Yni))表示按变换块大小对去失真样本图像进行DCT变换,即去失真样本图像的频域特征。
综上所述,基于N个编码前样本图像的频域特征和N个去失真样本图像的频域特征,就可以利用上述公式得到损失函数的损失值L(Θi),对此过程不做限制。
步骤a6、根据损失函数的损失值L(Θi)确定第一处理网络是否收敛。
如果否,则可以执行步骤a7;如果是,则可以执行步骤a8。
示例性的,若损失函数的损失值L(Θi)不大于阈值(如预设损失值阈值,可以根据经验进行配置,对此不做限制),则确定第一处理网络已收敛,若损失函数的损失值L(Θi)大于阈值,则确定第一处理网络未收敛。在实际应用中,还可以采用其它方式确定第一处理网络是否收敛,对此不做限制。
步骤a7、对第一处理网络的网络参数进行调整,将调整后的神经网络作为第一处理网络,基于第一处理网络重新获取去失真样本图像,并返回步骤a5。
示例性的,可以利用反向传播算法对第一处理网络的网络参数Θi进行调整,得到调整后的网络参数。例如,在第一次使用第一处理网络获取去失真样本图像时,将第一处理网络记为第一处理网络1,将第一处理网络1的网络参数记为Θ1
步骤a7中,对第一处理网络1的网络参数Θ1进行调整,得到调整后的网络参数Θ2,并将当前的第一处理网络记为第一处理网络2。在第二次使用第一处理网络获取去失真样本图像时,是使用第一处理网络2重新获取去失真样本图像。
再次执行步骤a7时,对第一处理网络2的网络参数Θ2进行调整,得到调整后的网络参数Θ3,并将当前的第一处理网络记为第一处理网络3。在第三次使用第一处理网络获取去失真样本图像时,是使用第一处理网络3重新获取去失真样本图像。以此类推,一直到根据损失函数的损失值L(Θi)确定第一处理网络已收敛。
步骤a8、将第一处理网络确定为已完成训练的第一处理网络。
例如,假设使用第一处理网络3获取去失真样本图像后,根据损失函数的损失值L(Θi)确定第一处理网络已收敛,则将第一处理网络3确定为已完成训练的第一处理网络,且网络参数Θ3为目标网络参数,将目标网络参数记为Θfinal
经过上述处理,就可以成功训练得到第一处理网络,完成训练过程。
在一种可能的实施方式中,若使用像素域的MSE或PSNR进行约束,则无法提升第二处理网络的处理性能,因此,可以使用频域MSE进行约束,即使用频域MSE作为损失函数,使得第一处理网络向第二处理网络的处理性能提升的方向逐步迭代,继而能够提升第二处理网络的处理性能。
在另一种可能的实施方式中,可以将第二处理网络的前n层(n的取值可以根据经验配置)作为特征提取层,在第一处理网络的训练过程中,基于特征提取层从去失真样本图像F(Yni)中提取特征,并基于特征提取层从编码前样本图像Xn中提取特征,将二者特征之间的特征距离作为损失值进行迭代训练。显然,通过第二处理网络的前n层作为特征提取层,基于特征提取层所提取特征的特征距离作为损失函数,能够使第一处理网络向第二处理网络的处理性能提升的方向逐步迭代,继而能够提升第二处理网络的处理性能。
参见图6B所示,为第一处理网络的另一个结构示意图,该第一处理网络可以为Attention network(注意力网络),当然,Attention network只是一个示例,对此第一处理网络的类型不做限制。在图6B中,第一处理网络可以包括第一子结构(如像素处理结构,用于对像素信息进行处理)和第二子结构(如权重生成结构,用于对权重信息进行处理)。第一处理网络的第一子结构包括输入层处理单元A1,隐含层处理单元B1和输出层处理单元C1。第一处理网络的第二子结构可以包括输入层处理单元A2,隐含层处理单元B2和输出层处理单元C2。
步骤b1、获取编码前样本图像,编码前样本图像对应的已解码样本图像和该已解码样本图像对应的边信息。已解码样本图像对应的边信息,用于表示已解码样本图像相对编码前样本图像的失真特征,该失真特征包括如下至少一种:失真程度、失真位置,失真类型。
步骤b2、根据边信息获取边信息矩阵。
步骤b3、将已解码样本图像输入给第一处理网络的第一子结构,并将边信息矩阵输入给第一处理网络的第二子结构(可以作为第一处理网络的控制支路)。
步骤b4、第一处理网络的第一子结构对已解码样本图像进行处理(如卷积处理),得到初步处理图像,具体实现方式与步骤a4类似,不同之处在于:步骤a4中,输入数据是合并矩阵I,步骤b4中,输入数据是已解码样本图像;步骤a4中,输出数据是去失真样本图像,步骤b4中,输出数据是初步处理图像,还不是最终的去失真样本图像。
示例性的,针对第一处理网络的第一子结构(参见图6B所示),与图6A的结构可以相同,也可以不同,对此不做限制。例如,第一子结构的输入层处理单元A1与图6A的输入层处理单元可以相同,也可以不同,对此不做限制,均是由卷积层(Conv)和激励层(采用ReLU函数)组成。第一子结构的隐含层处理单元B1与图6A的隐含层处理单元可以相同,也可以不同,对此不做限制,均是由卷积层和激励层组成。第一子结构的输出层处理单元C1与图6A的输出层处理单元可以相同,也可以不同,对此不做限制,均是由卷积层和激励层组成。
步骤b5、第一处理网络的第二子结构对边信息矩阵进行处理(如卷积处理),得到损失程度矩阵,具体实现方式与步骤a4类似,不同之处在于:在步骤a4中,输入数据是合并矩阵I,在步骤b5中,输入数据是边信息矩阵;在步骤a4中,输出数据是去失真样本图像,在步骤b5中,输出数据是损失程度矩阵。
示例性的,针对第一处理网络的第二子结构(参见图6B所示),与图6A的结构可以相同,也可以不同,对此不做限制。例如,第二子结构的输入层处理单元A2与图6A的输入层处理单元可以相同,也可以不同,对此不做限制,均是由卷积层(Conv)和激励层(采用ReLU函数)组成。第二子结构的隐含层处理单元B2与图6A的隐含层处理单元可以相同,也可以不同,对此不做限制,均是由卷积层和激励层组成。第二子结构的输出层处理单元C2与图6A的输出层处理单元可以相同,也可以不同,对此不做限制,均是由卷积层和激励层组成。
示例性的,由于不同的失真程度(如量化程度),不同的失真位置(如边界位置),不同的失真类型(如预测模式),都会导致编码像素在编码过程中的损失不同,因此,可以利用这些信息生成边信息矩阵,并通过第一处理网络的第二子结构对边信息矩阵进行处理,得到损失程度矩阵。针对损失程度矩阵中的每个元素位置的数值,就可以表示该元素位置的损失程度。综上所述,第一处理网络的第二子结构对边信息矩阵进行处理,可以得到边信息矩阵中的每个元素位置的损失程度,而每个元素位置的损失程度就组成损失程度矩阵。
步骤b6、针对损失程度矩阵中的每个元素位置,根据该元素位置的损失程度确定该元素位置的权重系数,并将每个元素位置的权重系数组成权重系数矩阵,示例性的,权重系数矩阵的每个元素位置对应一个权重系数。
示例性的,针对损失程度矩阵中的每个元素位置,当该元素位置的损失程度越高时,则该元素位置的权重系数可以越大,即,对于损失程度高的元素位置给予较大的权重系数。当该元素位置的损失程度越低时,则该元素位置的权重系数可以越小,即,对于损失程度低的元素位置给予较小的权重系数。
例如,可以设置一个权重系数区间,如权重系数区间[0,1]或者其它权重系数区间,对此权重系数区间不做限制。基于该权重系数区间,针对损失程度矩阵中的每个元素位置,将该元素位置的损失程度转换为该权重系数区间中的权重系数,对此转换方式不做限制,只要损失程度越高时权重系数越大即可。
步骤b7、针对初步处理图像的每个像素点,从权重系数矩阵中确定与该像素点对应的元素位置,根据该元素位置的权重系数对该像素点的像素值进行调整,得到调整像素值。示例性的,可以将该元素位置的权重系数与该像素点的像素值(如亮度值和/或色度值等)之间的乘积,确定为该像素点的调整像素值。
步骤b8、根据初步处理图像的每个像素点的调整像素值获取去失真样本图像。例如,参见图6B所示,在得到初步处理图像中的每个像素点的调整像素值后,可以将每个像素点的调整像素值组成次级处理图像。将次级处理图像和已解码样本图像输入给卷积层(Conv),次级处理图像的尺寸和已解码样本图像的尺寸相同。然后,卷积层对次级处理图像和已解码样本图像进行处理(如卷积处理),对此处理过程不做限制,最终得到去失真样本图像。当然,上述方式只是示例,对此不做限制。
步骤b9、根据编码前样本图像的特征和去失真样本图像的特征,确定去失真样本图像对应的损失值。例如,以频域特征为例,则根据编码前样本图像的频域特征和去失真样本图像的频域特征,确定去失真样本图像对应的损失值。
步骤b10、根据损失函数的损失值L(Θi)确定第一处理网络是否收敛。
如果否,则可以执行步骤b11;如果是,则可以执行步骤b12。
步骤b11、对第一处理网络的网络参数进行调整,将调整后的神经网络作为第一处理网络,基于第一处理网络重新获取去失真样本图像,并返回步骤b9。
步骤b12、将第一处理网络确定为已完成训练的第一处理网络。
经过上述处理,就可以成功训练得到第一处理网络,完成训练过程。
参见图7所示,为图像处理方法的流程示意图,该流程用于根据第一处理网络得到已解码图像信息对应的去失真图像,该方法可以包括:
步骤701,获取已解码图像信息。
参见上述实施例,解码端能够获取编码比特流,从编码比特流中解析出已解码图像信息,将已解码图像信息输入给缺陷恢复模块。缺陷恢复模块可以获取已解码图像信息,根据第一处理网络得到已解码图像信息对应的去失真图像。
示例性的,已解码图像信息可以包括已解码图像。或者,已解码图像信息可以包括已解码图像和已解码图像对应的边信息。例如,若采用已解码样本图像训练第一处理网络,则已解码图像信息包括已解码图像;或者,若采用已解码样本图像和该已解码样本图像对应的边信息训练第一处理网络,则已解码图像信息包括已解码图像和已解码图像对应的边信息。
已解码图像对应的边信息,用于表示已解码图像相对编码前图像的失真特征。该失真特征可以包括如下失真特征的至少一种:已解码图像相对编码前图像的失真程度(如量化程度等)、已解码图像相对编码前图像的失真位置(如边界坐标等),已解码图像相对编码前图像的失真类型(如预测模式等)。编码前图像和已解码图像是针对同一帧图像的编码前图像和已解码图像。
示例性的,编码前图像是指没有经过编码的图像,是编码端得到的初始图像,与上述编码前样本图像是一个概念。编码端在得到编码前图像后,可以对编码前图像进行编码,对此编码方式不做限制,并将编码比特流发送给解码端。解码端可以采用图1所示的视频解码框架,对编码比特流进行处理,并从编码比特流中解析出已解码图像,并将已解码图像输入给缺陷恢复模块,且已解码图像是需要恢复的失真图像,缺陷恢复模块需要对已解码图像进行恢复。
步骤702,将已解码图像信息输入给第一处理网络;由第一处理网络对已解码图像信息进行处理,得到与已解码图像信息对应的去失真图像。
示例性的,第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,编码前样本图像和已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像,此训练过程参见上述实施例,在此不再赘述。示例性的,为了区分方便,将训练过程中的编码前图像称为编码前样本图像,将训练过程中的已解码图像称为已解码样本图像。
在一种可能的实施方式中,已解码图像信息可以包括已解码图像,第一处理网络对已解码图像信息进行处理,得到与已解码图像信息对应的去失真图像,可以包括但不限于:第一处理网络对已解码图像进行处理,得到去失真图像。例如,第一处理网络对已解码图像进行卷积处理,得到去失真图像。示例性的,针对已解码图像的处理方式,与第一处理网络的结构有关,对此不做限制。
参见图5A所示,为第一处理网络的结构示意图,第一处理网络可以包括输入层处理单元,隐含层处理单元和输出层处理单元。输入层处理单元,用于接收第一处理网络的输入,如已解码图像,并对输入的数据进行第一层的卷积滤波处理。隐含层处理单元,用于对输入层处理单元的输出数据,进行至少一层的卷积滤波处理。输出层处理单元,用于对隐含层处理单元的输出数据,进行最后一层的卷积滤波处理,输出结果作为已解码图像信息对应的去失真图像。
在另一种可能的实施方式中,已解码图像信息可以包括已解码图像和该已解码图像对应的边信息,该边信息用于表示已解码图像相对编码前图像的失真特征。第一处理网络对已解码图像信息进行处理,得到与已解码图像信息对应的去失真图像,可以包括但不限于:根据边信息获取边信息矩阵;对已解码图像和边信息矩阵进行合并,得到合并矩阵;对合并矩阵进行处理,得到去失真图像。例如,第一处理网络对合并矩阵进行卷积处理,得到去失真图像。示例性的,针对合并矩阵的处理方式,与第一处理网络的结构有关,对此不做限制。
参见图5B所示,为第一处理网络的结构示意图,根据边信息获取边信息矩阵,对已解码图像和边信息矩阵进行合并,得到合并矩阵。输入层处理单元,用于接收第一处理网络的输入,如合并矩阵,并对输入的数据进行第一层的卷积滤波处理。隐含层处理单元,用于对输入层处理单元的输出数据,进行至少一层的卷积滤波处理。输出层处理单元,用于对隐含层处理单元的输出数据,进行最后一层的卷积滤波处理,输出结果为已解码图像信息对应的去失真图像。
示例性的,图5B所示的第一处理网络,还可以参见图6A所示,基于第一处理网络的处理过程,可以参见图6A的相关描述,在此不再重复赘述。
在另一种可能的方式中,已解码图像信息可以包括已解码图像和该已解码图像对应的边信息,该边信息用于表示已解码图像相对编码前图像的失真特征。第一处理网络对已解码图像信息进行处理,得到与已解码图像信息对应的去失真图像,可以包括但不限于:根据该边信息获取边信息矩阵。然后,通过第一处理网络的第一子结构(如像素处理结构,用于对像素信息进行处理)对已解码图像进行处理(如卷积处理等),得到初步处理图像;通过第一处理网络的第二子结构(如权重生成结构,用于对权重信息进行处理)对边信息矩阵进行处理(如卷积处理等),得到权重系数矩阵,该权重系数矩阵的每个元素位置对应一个权重系数。针对初步处理图像的每个像素点,从权重系数矩阵中确定与该像素点对应的元素位置,根据该元素位置的权重系数对该像素点的像素值进行调整,得到调整像素值。根据每个像素点的调整像素值获取去失真图像。
示例性的,针对已解码图像的处理方式,可以与第一处理网络的第一子结构有关,对此第一子结构不做限制。针对边信息矩阵的处理方式,可以与第一处理网络的第二子结构有关,对此第二子结构不做限制。
参见图5C所示,为第一处理网络的一个结构示意图,首先,可以根据边信息获取边信息矩阵。第一处理网络的第一子结构可以包括输入层处理单元A1,隐含层处理单元B1和输出层处理单元C1。第一处理网络的第二子结构可以包括输入层处理单元A2,隐含层处理单元B2和输出层处理单元C2。
输入层处理单元A1,用于接收第一子结构的输入,如已解码图像,对输入数据进行第一层的卷积滤波处理。隐含层处理单元B1,用于对输入层处理单元A1的输出数据,进行至少一层的卷积滤波处理。输出层处理单元C1,用于对隐含层处理单元B1的输出数据,进行最后一层的卷积滤波处理,得到初步处理图像。输入层处理单元A2,用于接收第二子结构的输入,如边信息矩阵,对输入的数据进行第一层的卷积滤波处理。隐含层处理单元B2,用于对输入层处理单元A2的输出数据,进行至少一层的卷积滤波处理。输出层处理单元C1,用于对隐含层处理单元B2的输出数据,进行最后一层的卷积滤波处理,得到权重系数矩阵,该权重系数矩阵的每个元素位置可以对应一个权重系数。
然后,针对初步处理图像的每个像素点,可以从权重系数矩阵中确定与该像素点对应的元素位置,根据该元素位置的权重系数对该像素点的像素值进行调整,得到调整像素值。根据每个像素点的调整像素值获取去失真图像。
示例性的,通过第一处理网络的第二子结构对边信息矩阵进行处理,得到权重系数矩阵,可以包括但不限于如下方式:通过第一处理网络的第二子结构对边信息矩阵进行处理(如卷积滤波处理),得到该边信息矩阵中的每个元素位置的损失程度;针对每个元素位置,根据该元素位置的损失程度确定该元素位置的权重系数;例如,当该元素位置的损失程度越高时,则该元素位置的权重系数越大。然后,根据每个元素位置的权重系数生成权重系数矩阵。
例如,输入层处理单元A2,用于接收第二子结构的输入,如边信息矩阵,对输入的数据进行第一层的卷积滤波处理。隐含层处理单元B2,用于对输入层处理单元A2的输出数据,进行至少一层的卷积滤波处理。输出层处理单元C1,用于对隐含层处理单元B2的输出数据,进行最后一层的卷积滤波处理,得到该边信息矩阵中的每个元素位置的损失程度。针对每个元素位置,根据该元素位置的损失程度确定该元素位置的权重系数,并根据每个元素位置的权重系数生成权重系数矩阵,该权重系数矩阵的每个元素位置可以对应一个权重系数。
示例性的,图5C所示的第一处理网络,还可以参见图6B所示,基于第一处理网络的处理过程,可以参见图6B的相关描述,在此不再重复赘述。
步骤703,将去失真图像对应的目标图像输入给第二处理网络,以使第二处理网络根据目标图像进行用于实现智能分析的人工智能处理。
示例性的,可以将去失真图像确定为目标图像;或者,可以对去失真图像进行后处理,得到去失真图像对应的增强图像,将增强图像确定为目标图像。基于此,可以将目标图像(即去失真图像或增强图像)输入给第二处理网络。
在一种可能的实施方式中,缺陷恢复模块在得到与已解码图像信息对应的去失真图像之后,还可以将去失真图像输入给第二处理网络,以使第二处理网络根据去失真图像进行用于实现智能分析的人工智能处理。或者,缺陷恢复模块在得到与已解码图像信息对应的去失真图像之后,还可以对去失真图像进行后处理,得到去失真图像对应的增强图像,并将增强图像输入给第二处理网络,以使第二处理网络根据增强图像进行用于实现智能分析的人工智能处理。
在一种可能的实施方式中,将已解码图像信息输入给第一处理网络,可以包括:获取已解码图像信息的量化程度;根据该量化程度确定是否对已解码图像信息进行恢复处理;如果是,则将已解码图像信息输入给第一处理网络。
示例性的,在得到已解码图像后,还可以获取已解码图像的量化程度,如QP值。若该量化程度大于预设阈值(可以根据经验进行配置),则说明已解码图像的失真比较严重,需要对已解码图像进行恢复处理,因此,将已解码图像对应的已解码图像信息输入给第一处理网络,以使第一处理网络对已解码图像信息进行处理,得到去失真图像。若该量化程度不大于预设阈值,则说明已解码图像的失真不严重,可以不对已解码图像进行恢复处理。
由以上技术方案可见,本申请实施例中,能够通过第一处理网络对已解码图像进行处理,得到去失真图像,可以避免或减轻去失真图像中的压缩损失,提高去失真图像的性能,提高图像质量。能够提升第二处理网络的处理性能。
基于与上述方法同样的申请构思,本申请实施例中提出一种图像处理装置,参见图8A所示,为所述图像处理装置的结构示意图,所述装置可以包括:
获取模块811,用于获取已解码图像信息;
处理模块812,用于将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像;
发送模块813,用于将所述去失真图像对应的目标图像输入给第二处理网络,以使第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理。
所述图像处理装置还包括(在图中未示出):
训练模块,用于训练第一处理网络;所述训练模块具体用于:
将所述编码前样本图像,所述已解码样本图像的图像信息输入给第一处理网络;由所述第一处理网络获取所述已解码样本图像对应的去失真样本图像;
根据所述编码前样本图像的特征和所述去失真样本图像的特征,确定所述去失真样本图像对应的损失值;
根据所述损失值对第一处理网络进行训练,得到训练后的第一处理网络。
所述已解码样本图像的图像信息包括所述已解码样本图像和所述已解码样本图像对应的边信息;所述边信息表示所述已解码样本图像相对所述编码前样本图像的失真特征;所述训练模块通过所述第一处理网络获取所述已解码样本图像对应的去失真样本图像时具体用于:根据所述边信息获取边信息矩阵;
通过所述第一处理网络对所述已解码样本图像和所述边信息矩阵进行处理,得到所述已解码样本图像对应的去失真样本图像。
示例性的,所述编码前样本图像的特征为对所述编码前样本图像的像素值进行变换得到的特征值;所述去失真样本图像的特征为对所述去失真样本图像的像素值进行变换得到的特征值;或者,
当所述第二处理网络根据目标图像的目标特征进行用于实现智能分析的人工智能处理时,则所述编码前样本图像的特征为所述编码前样本图像的目标特征,所述去失真样本图像的特征为所述去失真样本图像的目标特征。
所述训练模块还用于:通过第三处理网络获取所述编码前样本图像的特征;通过所述第三处理网络获取所述去失真样本图像的特征;
其中,所述第三处理网络包括所述第二处理网络的特征提取层。
所述已解码图像信息包括已解码图像和所述已解码图像对应的边信息;所述边信息表示所述已解码图像相对编码前图像的失真特征,所述编码前图像和所述已解码图像是针对同一帧图像的编码前图像和已解码图像;所述处理模块812通过所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像时具体用于:根据所述边信息获取边信息矩阵;
对所述已解码图像和所述边信息矩阵进行合并,得到合并矩阵;
对所述合并矩阵进行处理,得到去失真图像。
所述已解码图像信息包括已解码图像和所述已解码图像对应的边信息;所述边信息表示所述已解码图像相对编码前图像的失真特征,所述编码前图像和所述已解码图像是针对同一帧图像的编码前图像和已解码图像;所述处理模块812通过所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像时具体用于:根据所述边信息获取边信息矩阵;
通过所述第一处理网络的第一子结构对所述已解码图像进行处理,得到初步处理图像;通过所述第一处理网络的第二子结构对所述边信息矩阵进行处理,得到权重系数矩阵,所述权重系数矩阵的每个元素位置对应一个权重系数;
针对初步处理图像的每个像素点,从所述权重系数矩阵中确定与所述像素点对应的元素位置,根据所述元素位置的权重系数对所述像素点的像素值进行调整,得到调整像素值;根据每个像素点的调整像素值获取去失真图像。
所述处理模块812通过所述第一处理网络的第二子结构对所述边信息矩阵进行处理,得到权重系数矩阵时具体用于:通过所述第一处理网络的第二子结构对所述边信息矩阵进行处理,得到所述边信息矩阵中的每个元素位置的损失程度;针对每个元素位置,根据所述元素位置的损失程度确定所述元素位置的权重系数;其中,所述元素位置的损失程度越高,所述元素位置的权重系数越大;根据每个元素位置的权重系数生成所述权重系数矩阵。
所述处理模块812将所述已解码图像信息输入给第一处理网络时具体用于:获取所述已解码图像信息的量化程度;
根据所述量化程度确定是否对所述已解码图像信息进行恢复处理;
如果是,则将所述已解码图像信息输入给第一处理网络。
所述发送模块813将所述去失真图像对应的目标图像输入给第二处理网络时具体用于:将所述去失真图像确定为目标图像;或者,对所述去失真图像进行后处理,得到所述去失真图像对应的增强图像,将所述增强图像确定为目标图像;将所述目标图像输入给第二处理网络。
基于与上述方法同样的申请构思,本申请实施例中提出一种图像处理设备,参见图8B所示,所述图像处理设备可以包括:处理器821和机器可读存储介质822,所述机器可读存储介质822存储有能够被所述处理器821执行的机器可执行指令;所述处理器821用于执行机器可执行指令,以实现如下步骤:
获取已解码图像信息;
将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;
将所述去失真图像对应的目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理;
其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像。
基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被处理器执行时,能够实现本申请上述示例公开的图像处理方法。
其中,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (14)

1.一种图像处理方法,其特征在于,所述方法包括:
获取已解码图像信息;
将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;
将所述去失真图像对应的目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理;
其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像;
其中,当所述第二处理网络根据目标图像的目标特征进行用于实现智能分析的人工智能处理时,则所述编码前样本图像的特征为所述编码前样本图像的目标特征,所述去失真样本图像的特征为所述去失真样本图像的目标特征。
2.根据权利要求1所述的方法,其特征在于,
所述第一处理网络的训练过程包括:
将所述编码前样本图像,所述已解码样本图像的图像信息输入给第一处理网络;由所述第一处理网络获取所述已解码样本图像对应的去失真样本图像;
根据所述编码前样本图像的特征和所述去失真样本图像的特征,确定所述去失真样本图像对应的损失值;
根据所述损失值对第一处理网络进行训练,得到训练后的第一处理网络。
3.根据权利要求2所述的方法,其特征在于,所述已解码样本图像的图像信息包括所述已解码样本图像和所述已解码样本图像对应的边信息;所述边信息表示所述已解码样本图像相对所述编码前样本图像的失真特征;所述由所述第一处理网络获取所述已解码样本图像对应的去失真样本图像,包括:
根据所述边信息获取边信息矩阵;
通过所述第一处理网络对所述已解码样本图像和所述边信息矩阵进行处理,得到所述已解码样本图像对应的去失真样本图像。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述编码前样本图像的特征为对所述编码前样本图像的像素值进行变换得到的特征值;所述去失真样本图像的特征为对所述去失真样本图像的像素值进行变换得到的特征值。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
通过第三处理网络获取所述编码前样本图像的特征;
通过所述第三处理网络获取所述去失真样本图像的特征;
其中,所述第三处理网络包括所述第二处理网络的特征提取层。
6.根据权利要求1所述的方法,其特征在于,所述已解码图像信息包括已解码图像和所述已解码图像对应的边信息;所述边信息表示所述已解码图像相对编码前图像的失真特征,所述编码前图像和所述已解码图像是针对同一帧图像的编码前图像和已解码图像;所述由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像,包括:
根据所述边信息获取边信息矩阵;
对所述已解码图像和所述边信息矩阵进行合并,得到合并矩阵;
对所述合并矩阵进行处理,得到去失真图像。
7.根据权利要求1所述的方法,其特征在于,所述已解码图像信息包括已解码图像和所述已解码图像对应的边信息;所述边信息表示所述已解码图像相对编码前图像的失真特征,所述编码前图像和所述已解码图像是针对同一帧图像的编码前图像和已解码图像;所述由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像,包括:
根据所述边信息获取边信息矩阵;
通过所述第一处理网络的第一子结构对所述已解码图像进行处理,得到初步处理图像;通过所述第一处理网络的第二子结构对所述边信息矩阵进行处理,得到权重系数矩阵,所述权重系数矩阵的每个元素位置对应一个权重系数;
针对初步处理图像的每个像素点,从所述权重系数矩阵中确定与所述像素点对应的元素位置,根据所述元素位置的权重系数对所述像素点的像素值进行调整,得到调整像素值;根据每个像素点的调整像素值获取去失真图像。
8.根据权利要求7所述的方法,其特征在于,所述通过所述第一处理网络的第二子结构对所述边信息矩阵进行处理,得到权重系数矩阵,包括:
通过所述第一处理网络的第二子结构对所述边信息矩阵进行处理,得到所述边信息矩阵中的每个元素位置的损失程度;
针对每个元素位置,根据所述元素位置的损失程度确定所述元素位置的权重系数;其中,所述元素位置的损失程度越高,所述元素位置的权重系数越大;
根据每个元素位置的权重系数生成所述权重系数矩阵。
9.根据权利要求1所述的方法,其特征在于,
所述将所述已解码图像信息输入给第一处理网络,包括:
获取所述已解码图像信息的量化程度;
根据所述量化程度确定是否对所述已解码图像信息进行恢复处理;
如果是,则将所述已解码图像信息输入给第一处理网络。
10.根据权利要求1所述的方法,其特征在于,
所述将所述去失真图像对应的目标图像输入给第二处理网络,包括:
将所述去失真图像确定为目标图像;或者,对所述去失真图像进行后处理,得到所述去失真图像对应的增强图像,将所述增强图像确定为目标图像;
将所述目标图像输入给第二处理网络。
11.一种图像处理系统,其特征在于,所述系统包括:
解码端,用于获取编码比特流,从所述编码比特流中解析出已解码图像信息,并将所述已解码图像信息输入给缺陷恢复模块;
缺陷恢复模块,用于获取已解码图像信息,将所述已解码图像信息输入给第一处理网络;由第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;
其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像;
人工智能处理模块,用于获取所述去失真图像对应的目标图像,将所述目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像的目标特征进行用于实现智能分析的人工智能处理;其中,当所述第二处理网络根据所述目标图像的目标特征进行用于实现智能分析的人工智能处理时,则所述编码前样本图像的特征为所述编码前样本图像的目标特征,所述去失真样本图像的特征为所述去失真样本图像的目标特征。
12.根据权利要求11所述的系统,其特征在于,
所述缺陷恢复模块,还用于将所述去失真图像确定为目标图像,并将所述目标图像输入给所述人工智能处理模块;或者,
所述缺陷恢复模块,还用于对所述去失真图像进行后处理,得到所述去失真图像对应的增强图像,将所述增强图像确定为目标图像,并将所述目标图像输入给所述人工智能处理模块;或者,
所述系统还包括后处理模块;
所述缺陷恢复模块,还用于将所述去失真图像输入给所述后处理模块;
所述后处理模块,用于对所述去失真图像进行后处理,得到所述去失真图像对应的增强图像,将所述增强图像确定为目标图像,并将所述目标图像输入给所述人工智能处理模块。
13.一种图像处理装置,其特征在于,所述装置包括:
获取模块,用于获取已解码图像信息;
处理模块,用于将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像;
发送模块,用于将所述去失真图像对应的目标图像输入给第二处理网络,以使第二处理网络根据所述目标图像的目标特征进行用于实现智能分析的人工智能处理;其中,当所述第二处理网络根据所述目标图像的目标特征进行用于实现智能分析的人工智能处理时,则所述编码前样本图像的特征为所述编码前样本图像的目标特征,所述去失真样本图像的特征为所述去失真样本图像的目标特征。
14.一种图像处理设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现如下步骤:
获取已解码图像信息;
将所述已解码图像信息输入给第一处理网络;由所述第一处理网络对所述已解码图像信息进行处理,得到与所述已解码图像信息对应的去失真图像;
将所述去失真图像对应的目标图像输入给第二处理网络,以使所述第二处理网络根据所述目标图像进行用于实现智能分析的人工智能处理;
其中,所述第一处理网络是根据编码前样本图像的特征和已解码样本图像对应的去失真样本图像的特征训练得到的,所述编码前样本图像和所述已解码样本图像是针对同一帧图像的编码前样本图像和已解码样本图像;其中,当所述第二处理网络根据目标图像的目标特征进行用于实现智能分析的人工智能处理时,则所述编码前样本图像的特征为所述编码前样本图像的目标特征,所述去失真样本图像的特征为所述去失真样本图像的目标特征。
CN201911311133.XA 2019-12-18 2019-12-18 图像处理方法、装置、设备及其系统 Active CN112991192B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911311133.XA CN112991192B (zh) 2019-12-18 2019-12-18 图像处理方法、装置、设备及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911311133.XA CN112991192B (zh) 2019-12-18 2019-12-18 图像处理方法、装置、设备及其系统

Publications (2)

Publication Number Publication Date
CN112991192A CN112991192A (zh) 2021-06-18
CN112991192B true CN112991192B (zh) 2023-07-25

Family

ID=76343971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911311133.XA Active CN112991192B (zh) 2019-12-18 2019-12-18 图像处理方法、装置、设备及其系统

Country Status (1)

Country Link
CN (1) CN112991192B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116614637B (zh) * 2023-07-19 2023-09-12 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备以及可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108932697B (zh) * 2017-05-26 2020-01-17 杭州海康威视数字技术股份有限公司 一种失真图像的去失真方法、装置及电子设备
CN109120937B (zh) * 2017-06-26 2020-03-27 杭州海康威视数字技术股份有限公司 一种视频编码方法、解码方法、装置及电子设备
CN110059796B (zh) * 2018-01-19 2021-09-21 杭州海康威视数字技术股份有限公司 卷积神经网络的生成方法及装置
US10936885B2 (en) * 2018-05-15 2021-03-02 Toyota Research Institute, Inc. Systems and methods of processing an image
CN109259784A (zh) * 2018-08-27 2019-01-25 上海铱硙医疗科技有限公司 脑梗塞的ai预测方法、装置、设备及存储介质
CN110210378B (zh) * 2019-05-30 2023-04-07 中国电子科技集团公司第三十八研究所 一种基于边缘计算的嵌入式视频图像解析方法及装置

Also Published As

Publication number Publication date
CN112991192A (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
Theis et al. Lossy image compression with compressive autoencoders
Torfason et al. Towards image understanding from deep compression without decoding
CN110059796B (zh) 卷积神经网络的生成方法及装置
Chen et al. Learning for video compression
Zhou et al. End-to-end Optimized Image Compression with Attention Mechanism.
CN111091503B (zh) 基于深度学习的图像去失焦模糊方法
Zhao et al. Learning a virtual codec based on deep convolutional neural network to compress image
Jin et al. Quality enhancement for intra frame coding via cnns: An adversarial approach
CN110971901A (zh) 卷积神经网络的处理方法及装置
US20220345699A1 (en) In-loop filtering method and device
CN105430416A (zh) 一种基于自适应稀疏域编码的指纹图像压缩方法
Meng et al. Enhancing quality for VVC compressed videos by jointly exploiting spatial details and temporal structure
Li et al. Patch-based video processing: A variational Bayesian approach
Huang et al. Adaptive deep reinforcement learning-based in-loop filter for VVC
CN113132729B (zh) 一种基于多参考帧的环路滤波方法及电子装置
Löhdefink et al. On low-bitrate image compression for distributed automotive perception: Higher peak snr does not mean better semantic segmentation
Klopp et al. How to exploit the transferability of learned image compression to conventional codecs
Galteri et al. Increasing video perceptual quality with gans and semantic coding
CN112991192B (zh) 图像处理方法、装置、设备及其系统
Jin et al. Post-processing for intra coding through perceptual adversarial learning and progressive refinement
Xu et al. Bit allocation using optimization
He et al. End-to-end facial image compression with integrated semantic distortion metric
CN115604485A (zh) 视频图像的解码方法及装置
Wang et al. Enhancing HEVC spatial prediction by context-based learning
Brand et al. Learning true rate-distortion-optimization for end-to-end image compression

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant