本发明涉及图像处理领域,尤其是涉及一种基于深度学习的感兴趣区域图像编码、解码系统及方法。
背景技术:
如果在进行图像编码时为人们感兴趣的区域分配比背景区域更多的码字,就既明显地减少编码所需码率,也能保持人们感兴趣内容有较高的编码质量。感兴趣区域图像编码可以为众多图像处理和分析系统减少大量的数据冗余,因此在实际应用中有着十分重要的实用价值。
感兴趣区域编码和一般图像编码类似,仍然可以建模为一个率失真最优化的问题,不同在于需要对感兴趣区域的失真赋予更大的惩罚。这是个高度非线性的问题,很难直接求解。对于感兴趣区域图像编码的研究已经有较长的历史了,研究人员提出了大量的方法,但是大多数方法都基于一种级联的框架。该框架将感兴趣区域编码分为两个独立的步骤:感兴趣区域预测和基于感兴趣掩模的编码。使用该框架的编码器首先使用基于目标检测或分割的方法预测出感兴趣区域,生成一副二进制掩模。然后基于该掩模,采用某种编码标准进行编码,为掩模指示的区域分配更多的码字,从而达到感兴趣区域编码的目的。这种传统的级联式的框架很好理解,也容易基于现有方法实现,但是这种框架从理论上无法得到一种最优化的感兴趣区域编码系统。
近几年深度学习技术在图像处理和分析领域取得多项重大进展。深度学习技术,尤其是卷积神经网络技术,被证明有十分强大的解决复杂优化问题的能力。比如he等人提出的mask-rcnn,同时解决了目标检测,目标分割和目标分类的综合优化问题。而且基于深度卷积神经网络的目标分割和图像编码的研究,也取得了许多卓著的成果。这些研究进展,启发了我们使用深度学习技术,来解决感兴趣区域编码这一复杂的优化问题。
技术实现要素:
针对上述技术问题,提供了基于深度学习的感兴趣区域图像编码、解码系统及方法、同时提供了一种基于上述编码、解码系统及方法实现的编码器、解码器以及终端,结合深度学习技术,在保持优越编码性能的同时,实现输出目标码率的图像压缩。
本发明是通过以下技术方案实现的。
根据本发明的第一个方面,提供了一种基于深度学习的感兴趣区域图像编码系统,包括:
感兴趣区域编码网络模块,该模块基于深度卷积神经网络,将输入原始图像分解为多个尺度的图像特征并进行量化,同时对所述原始图像进行图像分析得到感兴趣区域掩模矩阵,将量化的所述多个尺度的图像特征以及所述感兴趣区域掩模矩阵发送至码率分配模块;
码率分配模块,根据所述感兴趣区域编码网络模块得到的所述感兴趣区域掩模矩阵和所述多个尺度的图像特征进行码率分配,并将分配后的整数图像特征作为编码结果发送至熵编码模块;
熵编码模块,将所述码率分配模块分配后的整数图像特征编码为二进制码流并输出。
优选地,所述感兴趣区域编码网络模块基于深度卷积神经网络构建而成,其中:卷积层采用标准的卷积神经网络层;归一化层和采用广义归一化层;通道连接操作将多个尺度的图像特征在通道维度上连接在一起,输出完整的特征图。
优选地,所述码率分配模块基于高效的元素过滤或元素乘法操作。
优选地,所述熵编码模块基于二进制数字编码,采用的熵编码模型通过网络训练及测试过程统计更新得到;其中,网络训练过程采用概率模型进行近似,测试过程采用的概率模型由网络训练完成后的概率模型离线计算得到,并保存在熵编码模块中。
优选地,所述网络训练过程为:利用随机梯度下降算法,对概率模型参数进行优化,直到率失真损失收敛。
根据本发明第二个方面,提供了一种感兴趣区域图像解码系统,用于解码所述系统形成的编码,包括:
熵解码模块,对经过熵编码后输出的二进制码流进行熵解码,得到的图像特征并输出至感兴趣区域解码网络模块;
感兴趣区域解码网络模块,基于深度卷积神经网络,将熵解码得到的图像特征重构为解码图像并输出。
优选地,所述感兴趣区域解码网络模块基于深度卷积神经网络构建而成,其中:反卷积层采用标准的卷积神经网络层;反归一化层采用广义反归一化层;通道分离操作将多个尺度的图像特征在通道维度上平均分成多组特征图输出。
优选地,所述熵解码模块基于二进制数字解码,采用的熵解码模型通过网络训练及测试过程统计更新得到;其中,网络训练过程采用基于线性样条插值的概率模型进行近似,测试过程采用的概率模型由网络训练完成后的概率模型离线计算得到,并保存在熵解码模块中。
根据本发明的第三个方面,提供了一种基于深度学习的感兴趣区域图像编码方法,包括:
s101:将原始图像输入感兴趣区域编码网络模块,同时输出得到多尺度图像特征以及感兴趣区域掩模矩阵;
s102:对s101中得到的多尺度图像特征量化为整数;
s103:根据感兴趣区域掩模矩阵对s102中得到的量化成整数的多尺度图像特征进行码率分配;
s104:对s103中得到的分配后的图像特征进行熵编码,得到二进制码流并输出。
优选地,所述s104包括:分别对图像特征中长、宽、二维感兴趣掩模以及保留下来的特征进行熵编码;其中长和宽直接采用16比特进行二进制化,不进行算术编码;二维感兴趣掩模中的元素都是二进制数,直接按扫描顺序写入到码流中,不进行算术编码;保留下来的特征采用二进制算术编码。
优选地,所述基于深度学习的感兴趣图像编码系统还包括参数离线训练过程,步骤如下:
a1:在高清自然训练图像中随机裁剪256×256的图像块组成训练集,并对所述图像块进行随机翻转以扩充训练数据,同时对人工标注好的感兴趣区域真值掩模图像进行同样的操作,并将两次操作的结果组成数据标签对以供训练;
a2:对网络中的量化操作使用加均匀分布的随机噪声来近似,对生成感兴趣区域掩模时的硬判决操作使用软判决来近似;
a3:利用随机梯度下降算法对整个系统的参数进行联合优化,直到率失真损失收敛。
优选地,在所述随机梯度下降算法中,损失函数是码率、感兴趣区域的失真和整张图的平均失真的加权和;其中感兴趣区域的失真由像素级失真衡量,整张图的平均失真由全局性结构失真衡量。
根据本发明的第四个方面,提供了一种基于深度学习的感兴趣区域图像解码方法,用于解码上述编码方法形成的编码,包括:
s201,对经过熵编码得到的二进制码流进行熵解码,得到解码图像特征;
s202,采用深度卷积神经网络,对s201中得到的解码图像特征重构为解码图像并输出。
优选地,所述s202中,根据元信息,将解码图像特征进行重构,得到解码图像。
优选地,所述s201中,熵解码针对二进制码流进行解码,包括:对二进制码流依次解码,得到图像特征中的长、宽、最优尺度以及保留的图像特征。
根据本发明的第五个方面,提供了一种编码器,执行上述任一项所述的编码方法,将输入原始图像编码后形成二进制码流输出。
根据本发明的第六个方面,提供了一种解码器,执行上述任一项所述的解码方法,将经过编码后形成的二进制码流重构为解码图像。
根据本发明第第七个方面,提供了一种终端,安装有上述任一项所述的编码系统和/或解码系统;
或,包括存储器、处理器及存储在存储器上并能够在处理器上运行的计算机程序,所述处理器执行上述任一项所述的编码方法和/或解码方法;
或,安装上述任一项所述的编码器和/或解码器。
本发明取得的有益效果在于:
1.利用深度学习技术,学习得到端到端优化的感兴趣区域编码操作,可以取得优化的编码性能;
2.感兴趣区域编码网络可以同时输出多尺度特征和隐式感兴趣掩模矩阵,从而可以高效地进行码率分配;
3.采用的像素级和结构性分层失真损失衡量方法,使得编码的结果同时具有高保真的感兴趣区域质量以及和谐的整体视觉质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例的基于深度学习的感兴趣区域图像编码、解码系统示意图;
图2是本发明一实施例的感兴趣区域编码网络结构示意图;
图3是本发明一实施例的感兴趣区域解码网络结构示意图。
具体实施方式
为了便于本领域技术人员的理解,下面结合实施例与附图对本发明作进一步的说明,实施方式提及的内容并非对本发明的限定。
本发明为了进一步提升感兴趣区域图像编码的性能,提供了一种基于深度学习的感兴趣区域图像编码、解码系统及方法,该系统提供了一种全新的端到端优化的感兴趣区域编码框架,可以直接取得率失真优化的编码结果。为了对整个系统中所有的参数进行联合训练,本发明还提供了一种基于退火算法的训练方法,使得对系统的训练可以端到端进行,该系统的网络参数在大量图像数据集上进行离线学习得到,学习得到的感兴趣区域图像编码系统可以取得显著优于传统感兴趣区域图像编码方法的编码性能。
本发明实施例提供了一种基于深度学习的感兴趣区域图像编码系统,系统包括如下模块:
模块一:感兴趣区域编码网络模块,该模块基于深度卷积神经网络,将输入原始图像分解为多个尺度的图像特征并进行量化,同时还将图像分析得到感兴趣区域掩模矩阵,最后将量化的多个尺度的图像特征以及感兴趣区域掩模矩阵发送至码率分配模块;
模块二:码率分配模块,根据感兴趣区域编码网络得到的感兴趣区域掩模矩阵和多个尺度的图像特征进行码率分配,并将分配后的整数图像特征作为编码结果发送至熵编码模块;
模块三:熵编码模块,用于将码率分配模块分配后的整数图像特征编码为二进制码流并输出。
进一步地,感兴趣区域编码网络基于深度卷积神经网络构建而成,其中:卷积层采用标准的卷积神经网络层;归一化层和采用广义归一化层;通道连接操作将特征图在通道维度上连接在一起,输出完整的特征图。
进一步地,码率分配模块基于高效的元素过滤或元素乘法操作。
进一步地,熵编码模块基于二进制数字编码,采用的熵编码模型通过网络训练及测试过程统计更新得到;其中,网络训练过程采用概率模型进行近似,测试过程采用的概率模型由网络训练完成后的概率模型离线计算得到,并保存在熵编码模块中。
进一步地,网络训练过程为:利用随机梯度下降算法,对概率模型参数进行优化,直到率失真损失收敛。
本发明实施例还提供基于深度学习的感兴趣区域图像编码方法,包括如下步骤:
s101:将原始图像输入感兴趣区域编码网络模块,同时输出得到多尺度图像特征以及感兴趣区域掩模矩阵;
s102:对s101中得到的多尺度图像特征量化为整数;
s103:根据感兴趣区域掩模矩阵对s102中得到的量化成整数的多尺度图像特征进行码率分配;
s104:对s103中得到的分配后的图像特征进行熵编码,得到二进制码流并输出。
进一步地,步骤s104包括:分别对图像特征中长、宽、二维感兴趣掩模以及保留下来的特征进行熵编码;其中长和宽直接采用16比特进行二进制化,不进行算术编码;二维感兴趣掩模中的元素都是二进制数,直接按扫描顺序写入到码流中,不进行算术编码;保留下来的特征采用二进制算术编码。
进一步地,基于深度学习的感兴趣图像编码系统还包括参数离线训练过程,步骤如下:
a1:在高清自然训练图像中随机裁剪256×256的图像块组成训练集,并对所述图像块进行随机翻转以扩充训练数据,同时对人工标注好的感兴趣区域真值掩模图像进行同样的操作,并将两次操作的结果组成数据标签对以供训练;
a2:对网络中的量化操作使用加均匀分布的随机噪声来近似,对生成感兴趣区域掩模时的硬判决操作使用软判决来近似;
a3:利用随机梯度下降算法对整个系统的参数进行联合优化,直到率失真损失收敛。
进一步地,在随机梯度下降算法中,损失函数是码率、感兴趣区域的失真和整张图的平均失真的加权和;其中感兴趣区域的失真由像素级失真衡量,整张图的平均失真由全局性结构失真衡量。
本发明实施例还提供了一种感兴趣区域图像解码系统,用于解码上述编码系统形成的编码,包括:
熵解码模块,对经过熵编码后输出的二进制码流进行熵解码,得到的图像特征并输出至感兴趣区域解码网络模块;
感兴趣区域解码网络模块,基于深度卷积神经网络,将熵解码得到的图像特征重构为解码图像并输出。
进一步地,感兴趣区域解码网络模块基于深度卷积神经网络构建而成,其中:反卷积层采用标准的卷积神经网络层;反归一化层采用广义反归一化层;通道分离操作将特征图在通道维度上平均分成多组特征图输出。
进一步地,熵解码模块基于二进制数字解码,采用的熵解码模型通过网络训练及测试过程统计更新得到;其中,网络训练过程采用基于线性样条插值的概率模型进行近似,测试过程采用的概率模型由网络训练完成后的概率模型离线计算得到,并保存在熵解码模块中。
利用该解码系统进行图像解码的步骤如下:
s201,对经过熵编码得到的二进制码流进行熵解码,得到解码图像特征;
s202,采用深度卷积神经网络,对s201中得到的解码图像特征重构为解码图像并输出。
进一步地,在步骤s202中,根据元信息,将解码图像特征进行重构,得到解码图像。
进一步地,在步骤s201中,熵解码针对二进制码流进行解码,包括:对二进制码流依次解码,得到图像特征中的长、宽、最优尺度以及保留的图像特征。
其中,保留下来的图像特征是指:图像经过前向变换的特征为所有特征,在码率控制时,根据率失真最优化规则,会舍弃一部分特征,只编码传输剩下来的特征。剩下来的特征就是保留下来的图像特征。
下面结合附图以及一具体实例对本发明上述实施例的技术方案进一步详细描述。
如图1所示,本发明上述实施例中提供的一种基于深度学习的感兴趣区域图像编码、解码系统,包括:
感兴趣区域编码网络,用于对输入图像进行多尺度分解变换,得到图像的多尺度特征的表达,对应与分级的质量和码率,同时还用于分析图像,得到感兴趣区域掩模矩阵;感兴趣区域编码网络的结构如图2所示,其中包含一系列卷积层、一系列归一化层、元素减法器、通道连接操作、残差网络组块,池化层、特征金字塔组块、上采样层、概率判决、二进制化层和三维变换层;其中卷积层是标准的卷积神经网络层,归一化层采用的是ballé等人提出的广义归一化层,元素减法器是对输入的两组矩阵的各个元素进行独立的减操作,通道连接操作是将特征图在通道维度上连接在一起,输出一个完整的特征图,残差网络组块采用的是由he等人提出模块,特征金字塔组块是由chen等人提出,概率判决采用的是sigmoid函数,输出得到[0,1]范围内的感兴趣区域的概率图,二进制化采用的是四舍五入函数:rounding,用于得到感兴趣图的硬判决,三维变换是将二维的感兴趣掩模矩阵变换为和多尺度特征尺寸一样的三维掩模矩阵;
码率分配模块,用于根据所述感兴趣区域编码网络得到的感兴趣区域掩模矩阵和多尺度特征,进行码率分配;在模型应用时,码率分配模块基于元素过滤操作,根据掩模对多尺度特征进行过滤操作,为感兴趣区域保留所有的特征,如果三维掩模中的元素是1,则保留对应位置处的图像特征,如果元素是0,则舍弃,最后只对保留下来的图像特征进行熵编码,对背景区域只保留基本层特征,同时滤除其他特征;在模型训练时,码率分配模块基于元素乘法操作,直接将掩模矩阵和多尺度特征进行元素乘,从而使背景区域的高质量层特征置为零,该操作保证系统训练时的可导性;
熵编码模块,用于将所述码率分配模块分配后的图像特征编码为二进制码流;熵编码模块的模型通过一个概率分布函数计算得到,该分布函数包含一组参数,用于在训练时对码率进行估计;
熵解码模块,用于将所述二进制码流解码为图像特征;
感兴趣区域解码网络,用于将所述熵解码模块解码后的图像特征反变换回像素域数据,得到解码重构图像;感兴趣区域解码网络的结构如图3所示,其中包含一系列反卷积层、一系列反归一化层、一个元素加法器和一个通道分离操作,其中反卷积层是标准的卷积神经网络层,反归一化层采用的是ballé等人提出的广义反归一化层,通道分离操作是将特征图在通道维度上平均分成多组特征图输出,元素加法器是对输入的两组矩阵的各个元素进行独立的加操作。
在本发明另一实施例中,使用基于深度学习的感兴趣区域图像编码系统进行图像编码、解码的具体操作步骤如下:
步骤s101:将原始图像输入感兴趣区域编码网络,同时输出得到图像的多尺度特征以及感兴趣区域掩模矩阵;
输入原始图像i,经过感兴趣区域编码网络,同时得到多尺度特征和一个感兴趣区域掩模矩阵,这个过程可以表示成式(1):
其中
步骤s102:对多尺度特征进行量化为整数;
对特征进行量化:
步骤s103:根据感兴趣区域掩模矩阵对多尺度特征进行码率分配;
基于掩模m对图像特征进行码率分配操作,如式(2):
其中⊙表示元素过滤操作。如果m中的元素等于1,则保留m中对应位置的元素;如果等于0,则舍弃。
步骤s104:对分配后的特征进行熵编码得到二进制码流;
首先对图像的长和宽进行熵编码,直接采用16比特进行二进制化后,写进码流,再对二维的感兴趣掩模进行编码,直接将每个二进制元素按扫描顺序写进码流,最后对保留的特征进行熵编码,采用二进制数字编码,其中熵编码模块的模型由训练过程使用的概率分布函数提前离线计算得到。
步骤s201:对所述二进制码流进行熵解码,依次解码得到图像的长和宽、二维感兴趣掩模和保留的图像特征;
对输入的二进制码流进行熵解码,得到图像的长和宽、二维感兴趣区域掩模图和图像特征。
步骤s202:根据元信息,组织好图像特征并输入感兴趣区域解码网络,重构得到解码图像。
根据图像尺寸和感兴趣区域掩模重新排列图像特征矩阵,矩阵空缺位置用零填充,将该矩阵输入到反向多尺度分解变换网络,重构得到解码图像。
在本发明的又一实施例中,本申请的基于深度学习的感兴趣区域图像编码系统的模型参数离线训练方法如下:
a1:在高清自然训练图像中随机裁剪256×256的图像块组成训练集,并对所述图像块进行随机翻转以扩充训练数据,同时对人工标注好的感兴趣区域真值掩模图像进行同样的操作,并将两次操作的结果组成数据标签对以供训练;
a2:对网络中的量化操作使用加均匀分布的随机噪声来近似,对生成感兴趣区域掩模时的硬判决操作使用软判决来近似,如式(3):
b=sigmoid(σ·f)(3)
其中f是概率判决层的输入,b是二维感兴趣区域掩模,σ是退火系数,初始化为1,此时b是一张软掩模,随着训练进行,我们逐渐增大σ,使得b中的元素逐渐二值化,从而能不断逼近真实的硬判决操作,在保证可导性的同时达到准确近似的目的。
a3:利用随机梯度下降算法对整个系统的参数进行联合优化,直到率失真损失收敛。
利用随机梯度下降算法对整个系统中的参数进行联合优化,损失函数设为式(4),训练直到损失收敛;
l=r+λroidroi+λimdim+c(4)
其中r表示编码所需码率,训练时采用信息熵估计,特征的分布采用线性样条插值函数建模,模型参数使用极大似然估计更新;droi表示解码图像中感兴趣区域的均方误差失真,此时感兴趣区域的判定基于真值掩模,采样监督训练;dim是全图的平均失真,采用1-ms-ssim失真函数度量;c表示掩模的预测误差损失,先将预测得到的二维感兴趣区域掩模上采样到和真值掩模相同的尺寸,再计算两者的交叉熵得到;λroi和λim是码率和失真的折中系数,其中λroi远大于λim,表示对感兴趣区域的失真赋予较大的惩罚,从而保证感兴趣区域较高的编码质量。
a3中的优化方法是adam优化方法,学习率设为10-4,当训练损失不再下降时,降为10-5,训练收敛后,保存参数,实际使用时直接加载使用即可。
基于上述编码方法,本发明实施例还提供了一种编码器,执行上述的编码方法,将输入原始图像编码后形成二进制码流输出。
基于上述解码方法,本发明实施例还提供了一种解码器,执行上述的解码方法,将经过编码后形成的二进制码流重构为解码图像。
基于上述编码系统、解码系统、编码方法、解码方法、编码器、解码器,本发明实施例还提供了一种终端,安装有上述任一项的编码系统和/或解码系统。
或者,在另一实施例中,提供了一种终端,包括存储器、处理器及存储在存储器上并能够在处理器上运行的计算机程序,处理器执行上述的编码方法和/或解码方法。
或者,在另一实施例中,提供了一种终端,安装上述的编码器和/或解码器。
本发明上述实施例所提供的一种基于深度学习的感兴趣区域图像编码系统及方法,图像输入到系统后,经过感兴趣区域编码网络模块后被分解为多个尺度的图像特征集合,对特征进行量化后再输入到系统中后根据目标码率进行码率分配,分配后的特征经过熵编码得到二进制码流。同时提供了一种可变码率图像解码系统及方法,在解码时,首先对码流进行熵解码得到多尺度特征(即解码图像特征),最后经过感兴趣区域解码网络得到解码图像。本发明上述实施例使用深度卷积神经网络构建感兴趣区域编码、解码网络模块,利用大量数据进行训练得到最优模型参数,在实际应用中可达到显著优于现有感兴趣编码系统的主观和客观的编码性能。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在本发明的保护范围内。