本发明涉及计算机视觉领域,特别是指一种基于扩散后验采样的图像复原方法。
背景技术:
1、目前的深度学习领域中图像复原方法主要分为三种:基于深度卷积神经网络
2、(convolutional neural network,简称cnn)的图像复原方法、基于生成对抗网络(generative adversarial networks,简称gan)的图像复原方法和基于扩散概率模型(denoising diffusion probabilistic models,简称ddpm)的图像复原方法。
3、基于cnn的图像复原方法主要是通过学习lq到hq图像块的映射,但大多数图像复原任务需要密集的像素预测,而基于cnn的图像复原方法通常需要大量的计算和内存资源,这需要增大模型大小和计算复杂度。
4、基于gan的图像复原方法主要是通过增强生成器(即还原网络)和判别器来完成图像复原任务。传统的图像复原任务容易受到纹理模糊的影像,但gan网络中的对抗生成引入到图像复原任务中,从而增强了其纹理的生成能力。尽管如此,基于gan的图像复原方法仍然有两个不可避免的关键问题:(1)其模型的训练容易存在模型崩溃和优化不稳定的问题;(2)大多数生成图像的纹理是伪造的,与事实不符。
5、基于ddpm的图像复原方法是通过生成先验知识进行图像复原任务。由于扩散模型其卓越的生成能力,让扩散模型应用于图像复原任务成为当前的主流,根据训练策略,目前的研究类型可以分为两类:(1)通过监督学习从零开始优化复原任务的扩散模型;(2)采用zero-shot方法,致力于利用预训练的扩散模型生成的先验信息应用于图像复原任务。
技术实现思路
1、本发明的主要目的在于克服现有技术中的上述缺陷,提出一种基于扩散后验采样的图像复原方法,通过设计的基于vit的扩散模型框架、引入近似对数似然的后验采样机制psm与采用影响因子机制,不仅可以在保证真实性和一致性的条件下,实现更好的纹理细节,并且摒弃了传统的投影方法,能够大幅度的提升采样的速度。
2、本发明采用如下技术方案:
3、一种基于扩散后验采样的图像复原方法,包括如下:
4、制作数据集以及确定退化算子;
5、构建基于vit的扩散模型,采用影响因子机制改良扩散模型中的跳跃连接方式,采用数据集进行训练和测试得到噪声预测模型;
6、利用训练好的所述噪声预测模型对图像进行预测输出扩散模型反向过程中所需的高斯噪声图;
7、采用基于确定的所述退化算子采用近似对数似然的后验采样机制在反向过程对所述的高斯噪声图进行不断的迭代去噪以实现图像复原。
8、所述数据集包括人脸图像数据集和自然图像数据集,对所述人脸图像数据集和自然图像数据集进行预处理;对于不同的图像复原任务,采用不同的退化算子进行退化。
9、所述基于vit的扩散模型包括有embed模块、in_block模块、mid_block模块、out_block模块和extra_conv模块;所述embed模块用于将输入的信息处理为模型所需要的数据得到若干图像块;所述in_block模块用于获取不同图像块的浅层信息关联性与对应的注意力权重;所述mid_block模块对所述in_block模块输出的张量进一步进行注意力权重计算和线性变换;所述out_block模块通过获取mid_block模块输出的张量,使用层归一化进行标准化,通过注意力层获取每个图像块的权重分布,获得图形块深层关联信息,采用多层感知机是对输入数据进行非线性变换,从而学习到图像块所对应的复杂特征,采用跳跃连接层将浅层网络和深层网络连接起来获得浅层信息和高频信息;所述extra_conv模块用于在输出结构前进行提取特征以得到更好的预测结果。
10、所述embed模块包括patch_embed模块、time_embed模块、label_embed模块和pos_embed模块;所述patch_embed模块通过线性投影的方式将输入图像分成大小patch_size×patch_size的块,并将每个块转换为一个大小一致的嵌入向量;所述time_embed模块通过一个包含两个linear线性层和一个silu激活函数的序列对嵌入向量进行变换,输出一个形状和图像块尺度一致的张量;所述label_embed模块将类别标签映射为尺度和图像块尺度一致的嵌入向量;所述pos_embed模块获取到每个图像块所对应在原图像的位置信息并将其转化为嵌入向量。
11、所述in_block模块包括八个模块组,每个模块组包括两个层归一化、一个注意力层和一个多层感知机;所述层归一化对输入张量进行归一化和标准化;所述注意力层包括两个线性层和两个丢弃层,一个线性层实现生成对应的qkv矩阵,另一个线性层是进行线性变化,维持张量的尺度不变,而通过丢弃层随机丢弃一部分的信息来增强模型的泛化能力和鲁棒性;多层感知机包括两个线性层、一个gelu激活层和一个丢弃层,实现图像的非线性变化和提取关键特征。
12、所述mid_block模块包括两个层归一化、一个注意力层和一个多层感知机。
13、所述out_block模块包括八个模块组,每一个模块组包括两个层归一化、一个注意力层、一个多层感知机和一个跳跃连接层。
14、所述后验采样机制表达式如下:
15、
16、xt为加噪后的图像,y为测量值,后验均值,表示为对xt求梯度,ρ为步长,sθ(.)为分数估计值,a(.)为退化算子,为似然函数。
17、所述影响因子机制引入两个调节因子,包括用于缩放out_block模块的主干网络特征图xl的因子bl,以及用于缩放out_block模块的跳跃特征图hl的因子sl,因子bl的缩放表达式如下:
18、
19、其中xl,i表示的为特征图xl的第i个通道,c则是特征图xl中通道的总数,x'l,i表示在第l的特征时经过缩放表达式后的主干特征图;
20、因子sl的缩放表达式如下:
21、
22、其中,al,i(r)为傅里叶掩码以实现在频域中对跳跃特征图进行筛选,r为半径,rthresh是阈值频率。
23、由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:
24、本发明提供了一种基于扩散后验采样的图像复原方法,构建了一种基于vit(vision transformers)的扩散模型框架(dvit)来替代传统的unet网络,与基于unet网络的扩散模型网络相比,在图像复原任务上,dvit网络能够更好的注重图像的纹理细节,从而保证复原图像的真实性与一致性,通过采用aol和引入影响因子机制,dvit网络能够保持高度真实性的条件下,以保证一致性,并且可以有效的加速采样速度。
1.一种基于扩散后验采样的图像复原方法,其特征在于,包括如下:
2.如权利要求1所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述数据集包括人脸图像数据集和自然图像数据集,对所述人脸图像数据集和自然图像数据集进行预处理;对于不同的图像复原任务,采用不同的退化算子进行退化。
3.如权利要求1所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述基于vit的扩散模型包括有embed模块、in_block模块、mid_block模块、out_block模块和extra_conv模块;所述embed模块用于将输入的信息处理为模型所需要的数据得到若干图像块;所述in_block模块用于获取不同图像块的浅层信息关联性与对应的注意力权重;所述mid_block模块对所述in_block模块输出的张量进一步进行注意力权重计算和线性变换;所述out_block模块通过获取mid_block模块输出的张量,使用层归一化进行标准化,通过注意力层获取每个图像块的权重分布,获得图形块深层关联信息,采用多层感知机是对输入数据进行非线性变换,从而学习到图像块所对应的复杂特征,采用跳跃连接层将浅层网络和深层网络连接起来获得浅层信息和高频信息;所述extra_conv模块用于在输出结构前进行提取特征以得到更好的预测结果。
4.如权利要求3所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述embed模块包括patch_embed模块、time_embed模块、label_embed模块和pos_embed模块;所述patch_embed模块通过线性投影的方式将输入图像分成大小patch_size×patch_size的块,并将每个块转换为一个大小一致的嵌入向量;所述time_embed模块通过一个包含两个linear线性层和一个silu激活函数的序列对嵌入向量进行变换,输出一个形状和图像块尺度一致的张量;所述label_embed模块将类别标签映射为尺度和图像块尺度一致的嵌入向量;所述pos_embed模块获取到每个图像块所对应在原图像的位置信息并将其转化为嵌入向量。
5.如权利要求3所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述in_block模块包括八个模块组,每个模块组包括两个层归一化、一个注意力层和一个多层感知机;所述层归一化对输入张量进行归一化和标准化;所述注意力层包括两个线性层和两个丢弃层,一个线性层实现生成对应的qkv矩阵,另一个线性层是进行线性变化,维持张量的尺度不变,而通过丢弃层随机丢弃一部分的信息来增强模型的泛化能力和鲁棒性;多层感知机包括两个线性层、一个gelu激活层和一个丢弃层,实现图像的非线性变化和提取关键特征。
6.如权利要求3所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述mid_block模块包括两个层归一化、一个注意力层和一个多层感知机。
7.如权利要求3所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述out_block模块包括八个模块组,每一个模块组包括两个层归一化、一个注意力层、一个多层感知机和一个跳跃连接层。
8.如权利要求3所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述后验采样机制表达式如下:
9.如权利要求3所述的一种基于扩散后验采样的图像复原方法,其特征在于,所述影响因子机制引入两个调节因子,包括用于缩放out_block模块的主干网络特征图xl的因子bl,以及用于缩放out_block模块的跳跃特征图hl的因子sl,因子bl的缩放表达式如下: