CN117011130A - 图像超分辨率的方法、装置、设备、介质及程序产品 - Google Patents
图像超分辨率的方法、装置、设备、介质及程序产品 Download PDFInfo
- Publication number
- CN117011130A CN117011130A CN202211145665.2A CN202211145665A CN117011130A CN 117011130 A CN117011130 A CN 117011130A CN 202211145665 A CN202211145665 A CN 202211145665A CN 117011130 A CN117011130 A CN 117011130A
- Authority
- CN
- China
- Prior art keywords
- image
- hidden state
- hidden
- attention
- sharpening
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 130
- 238000009499 grossing Methods 0.000 claims abstract description 60
- 230000007246 mechanism Effects 0.000 claims abstract description 32
- 239000013598 vector Substances 0.000 claims description 84
- 239000011159 matrix material Substances 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 27
- 238000010586 diagram Methods 0.000 claims description 22
- 230000003287 optical effect Effects 0.000 claims description 21
- 238000005070 sampling Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 11
- 238000010606 normalization Methods 0.000 claims description 4
- 239000000126 substance Substances 0.000 claims 1
- 238000013473 artificial intelligence Methods 0.000 abstract description 15
- 230000015556 catabolic process Effects 0.000 description 65
- 238000006731 degradation reaction Methods 0.000 description 65
- 230000008569 process Effects 0.000 description 62
- 238000012512 characterization method Methods 0.000 description 29
- 238000012549 training Methods 0.000 description 25
- 238000013256 Gubra-Amylin NASH model Methods 0.000 description 20
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 16
- 238000002474 experimental method Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 13
- 125000004122 cyclic group Chemical group 0.000 description 10
- 238000004140 cleaning Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000002679 ablation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000001303 quality assessment method Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (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)
Abstract
本申请公开了一种图像超分辨率的方法、装置、设备、介质及程序产品,属于人工智能领域。该方法包括:获取当前帧的第一图像特征和执行前一帧的超分辨率得到的第一隐状态;将第一隐状态分别进行n次平滑操作,得到n个平滑隐状态;以及,将第一隐状态分别进行m次锐化操作,得到m个锐化隐状态;其中,m、n均为正整数;基于n个平滑隐状态与第一图像特征之间的注意力机制以及m个锐化隐状态与第一图像特征之间的注意力机制,得到第二隐状态;基于第二隐状态和第一图像特征,得到第二图像特征;基于上采样后的第二图像特征,得到当前帧的超分辨率图像。上述方法不仅去除了当前帧的图像伪影,还保证了图像超分辨率的效率。
Description
技术领域
本申请实施例涉及人工智能领域,特别涉及一种图像超分辨率的方法、装置、设备、介质及程序产品。
背景技术
视频超分辨率(Video Super Resolution,VSR)是指将低分辨率的视频帧重建为高分辨率的视频帧的过程。
相关技术中,常常使用循环结构执行视频超分辨率任务,循环结构通过帧之间的隐状态模拟帧之间的时间依赖性。然而,当相关技术的循环结构应用于低质量视频时,恢复得到的高分辨率图像往往会带有图像伪影,这些图像伪影经过循环结构的传播将被放大。
为了解决循环结构下的图像伪影问题,相关技术在每帧图像输入循环结构之前,将使用单独的图像预清洗模块,明确地去除每一帧图像的图像伪影,然后再输入循环结构执行图像超分辨率。然而,引入单独的预清洗模块增加了大量的计算成本,进而降低了图像的超分辨率速度,影响了实际使用。
发明内容
本申请提供了一种图像超分辨率的方法、装置、设备、介质及程序产品,不仅缓解了当前帧中的图像退化现象,还保证了超分辨率的效率。技术方案如下:
根据本申请的一方面,提供了一种图像超分辨率的方法,所述方法包括:
获取当前帧的第一图像特征和执行前一帧的超分辨率得到的第一隐状态;
将第一隐状态分别进行n次平滑操作,得到n个平滑隐状态;以及,将第一隐状态分别进行m次锐化操作,得到m个锐化隐状态;其中,m、n均为正整数;
基于n个平滑隐状态与第一图像特征之间的注意力机制以及m个锐化隐状态与第一图像特征之间的注意力机制,得到第二隐状态;
基于第二隐状态和第一图像特征,得到第二图像特征;
基于上采样后的第二图像特征,得到当前帧的超分辨率图像。
根据本申请的另一方面,提供了一种图像超分辨率的装置,所述装置包括:
获取模块,用于获取当前帧的第一图像特征和执行前一帧的超分辨率得到的第一隐状态;
处理模块,用于将第一隐状态分别进行n次平滑操作,得到n个平滑隐状态;以及,将第一隐状态分别进行m次锐化操作,得到m个锐化隐状态;其中,m、n均为正整数;
处理模块,还用于基于n个平滑隐状态与第一图像特征之间的注意力机制以及m个锐化隐状态与第一图像特征之间的注意力机制,得到第二隐状态;
生成模块,还用于基于第二隐状态和第一图像特征,得到第二图像特征;
生成模块,还用于基于上采样后的第二图像特征,得到当前帧的超分辨率图像。
根据本申请的一个方面,提供了一种计算机设备,所述计算机设备包括:处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如上所述的图像超分辨率的方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序由处理器加载并执行以实现如上所述的图像超分辨率的方法。
根据本申请的另一方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的图像超分辨率的方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
经过大量的实验推理论证,研究人员发现前一帧传播给当前帧的隐状态不仅携带有图像细节表征,还携带了图像退化表征。因此,本申请将构建第一隐状态对应的平滑隐状态和锐化隐状态,平滑隐状态同时去除了图像退化表征和图像细节表征,锐化隐状态不仅增强了图像细节表征,还保留图像退化表征。并且,通过后续的注意力机制,即可实现在当前帧的图像退化区域使用平滑隐状态,在除图像退化区域之外的其他区域使用锐化隐状态。
因此,本申请提供的图像超分辨率的方法不仅缓解了当前帧中的图像退化现象(图像伪影),还增强了图像细节。相比于相关技术(RealBasicVSR),本申请未使用单独的预清洗模块进行图像伪影的去除,本申请直接对隐状态进行处理,进而降低了视频超分辨过程的计算成本,提高了视频的超分辨率速度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一个示例性实施例提供的隐状态在真实场景下对VSR过程的负面作用的示意图;
图2示出了一个示例性实施例提供的不同的模型执行VSR的过程的示意图;
图3示出了一个示例性实施例提供的不同的模型执行VSR过程的输出结果的示意图;
图4示出了一个示例性实施例提供的计算机系统的示意图;
图5示出了一个示例性实施例提供的VSR过程的单向循环框架的示意图;
图6示出了一个示例性实施例提供的图像超分辨率的方法的流程图;
图7示出了一个示例性实施例提供的VSR过程的另一个单向循环框架的示意图;
图8示出了一个示例性实施例提供的隐状态注意力网络的示意图;
图9示出了一个示例性实施例提供的不同的模型执行VSR过程的输出结果的示意图;
图10示出了一个示例性实施例提供的多个实验的输出结果的示意图;
图11示出了一个示例性实施例提供的另一个不同的模型执行VSR过程的输出结果的示意图;
图12示出了一个示例性实施例提供的不同的模型执行VSR过程的效果的对比示意图;
图13示出了一个示例性实施例提供的图像超分辨率的装置的结构框图;
图14示出了一个示例性实施例提供的计算机设备的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“若干个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
首先,针对本申请实施例中涉及的名词进行简单介绍。
人工智能(Artificial Intelligence,AI):是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
视频超分辨率(Video Super Resolution,VSR):是指将低分辨率(Low-resolution)的视频帧序列重建为高分辨率(High-resolution)的视频帧序列。在VSR过程中,可以利用相邻两帧之间的互补信息提升超分辨率后的图像质量。相关技术中,通过基于滑动窗口的方法和基于循环结构的方法实现VSR。基于循环结构的方法中,将通过帧之间的隐状态构建视频帧的时间依赖关系。
然而,当应用于低质量视频时,基于循环结构的方法(如BasicVSR)容易产生图像退化现象(指图像由理想图像转变为实际生成的有瑕疵图像),图像退化现象经过循环结构的传播将不断放大。若图像退化现象是由未知的图像模糊、图像噪声和压缩图像等复杂因素导致的,则生成的高分辨率图像的质量将更差。
相关技术中,为解决视频超分辨率过程中存在的图像退化,提供了两类方法。
第一类(RealVSR),通过特定的相机来采集更加符合真实场景的数据对。由于真实场景中的图像退化是复杂而多样的,基于特定相机采集的数据对训练得到的模型很难泛化到真实场景。
第二类(RealBasicVSR),在每帧图像输入循环结构之前,将使用单独的图像预清洗模块,去除低质量视频中的图像退化。也即,先让低质量视频变得“干净”(同时保持尺寸不变),再通过循环结构(BasicVSR)对“干净”的视频帧执行图像超分辨率。然而,在对低质量视频进行清洗的过程中,将不可避免地导致部分图像信息的丢失,并且,引入的预清洗模块额外增加了大量的计算量,使得视频超分辨率过程的整体效率较低。
在本申请中,研究人员通过研究VSR图像退化的原因,得到两个观察结果。
第一个观察结果:若前一帧的输出结果存在图像退化现象(如图像伪影),则前一帧传递给当前帧的隐状态将包含图像退化表征。若丢弃该隐状态,只使用输入的当前帧执行图像超分辨率,则当前帧对应的输出结果将不存在(或轻微存在)图像退化现象,然而,当前帧的输出结果将发生细节丢失。
结合参考图1,图1示出了隐状态在真实场景下对VSR的负面作用,其中,隐状态在前序视频帧中携带了图像退化表征,并进一步传播给后续的视频帧。图1中椭圆形标注的内容即为图像退化现象。图1的(A)和(C)部分中,第T-1帧和第T帧的椭圆框中标注的图像退化现象,在第T+1帧中得以保留并放大显示。若不使用前序帧的隐状态(隐状态设置为0),仅根据输入的当前帧执行VSR,则图像退化现象将得到缓解。图1的(B)部分与图1的(A)部分相对应,图1的(D)部分与图1的(C)部分相对应,图(1)的(B)部分和(D)部分丢弃了之前的隐状态。相比于(A)部分和(C)部分,(B)部分和(D)部分中的图像退化现象得以缓解。然而,直接丢弃之前的隐状态,也造成了图像细节丢失。
综上所述,隐状态不仅增强了图像细节还传播了图像退化表征。
第二个观察结果:若将前一帧传递给当前帧的隐状态替换为更“干净”的隐状态,则当前帧的输出结果中的图像退化现象将得到很好的缓解。
在下文中,将通过GAN模型、MSE模型和联合模型分别执行的VSR过程进行举例。GAN(Generative Adversarial Network,生成对抗网络)模型是在MSE(Mean Squared Error,均方误差)模型的基础上结合MSE损失、感知损失和GAN损失微调得到的模型。MSE模型是经过MSE损失训练得到的模型,MSE模型往往会产生过度平滑的输出结果。在下文中,将MSE模型中的隐状态称为MSE隐状态,GAN模型中的隐状态称为GAN隐状态。基于GAN模型,将GAN隐状态替换为MSE模型的MSE隐状态得到的模型称为联合模型。
结合参考图2,图2的(A)部分示出了使用MSE模型的MSE隐状态执行VSR的过程,图2的(B)部分示出了使用GAN模型的GAN隐状态执行VSR的过程,图2的(C)部分示出了使用联合模型的MSE隐状态执行VSR的过程。
以MSE模型为例,将当前帧图像输入2个残差块(Resblock)之后,得到当前帧图像的浅层特征,之后将MSE隐状态进行光流估计后,与当前帧图像的浅层特征进行拼接,之后再经过另外的28个残差块(Resblock),得到当前帧图像的深层特征。将深层特征进行上采样(Upsampling)之后,再经过一个卷积层,然后与双线性插值(Bilinear Upsampling)后的当前帧图像进行自适应求和操作(Element-wise Addition),得到当前帧图像的超分辨率图像。同理,可得GAN模型和联合模型对应的VSR过程。
结合参考图3,图3示出了MSE模型、GAN模型和联合模型执行VSR过程后输出的图像。通过观察图3的(A)部分的第二行和第三行,可以发现GAN模型对应的图像退化现象在联合模型中已经有所减弱。通过观察图3(B)部分的第二行和第三行,可以发现相比于GAN模型输出的图像,联合模型输出的图像中发生了部分细节的丢失。
综上所述,尽管直接使用MSE隐状态替换GAN隐状态可以缓解图像退化现象,但该方案并不适用于实际使用,该方案存在两个缺点:(1)先运行MSE模型得到MSE隐状态,再运行联合模型执行VSR过程,需要花费两倍的时长方能缓解图像退化现象;(2)联合模型的输出相比于GAN模型的输出仍丢失部分图像细节。因此,为获取最好的VSR输出结果,最佳方案应该是直接对GAN模型的GAN隐状态进行操作,得到新的重建后的隐状态,使得重建后的隐状态不仅平滑了图像退化区域,还保留了其他区域的图像细节。
基于上述推理和实验验证,本申请提供了一种直接对隐状态进行处理,以缓解VSR过程中的图像退化现象的方法。该方法应用于一种真实场景下的快速视频超分辨率的AI(Artificial Intelligence,人工智能)模型,在下文中将该AI模型简称为FastRealVSR。
需要说明的是,本申请在收集用户的相关数据之前以及在收集用户的相关数据的过程中,都可以显示提示界面、弹窗或输出语音提示信息,该提示界面、弹窗或语音提示信息用于提示用户当前正在搜集其相关数据,使得本申请仅仅在获取到用户对该提示界面或者弹窗发出的确认操作后,才开始执行获取用户相关数据的相关步骤,否则(即未获取到用户对该提示界面或者弹窗发出的确认操作时),结束获取用户相关数据的相关步骤,即不获取用户的相关数据。换句话说,本申请所采集的所有用户数据都是在用户同意并授权的情况下进行采集的,且相关用户数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
图4示出了本申请一个示例性实施例提供的计算机系统的示意图,计算机系统400包括FastRealVSR的训练设备401和FastRealVSR的使用设备402,训练设备401将训练好的FastRealVSR发送至使用设备402。FastRealVSR为应用有本申请提供的图像超分辨率的方法的AI模型。
其中,训练设备401和使用设备402可以是具有机器学习能力的计算机设备,比如,该计算机设备可以是终端或服务器。
可选的,上述训练设备401和使用设备402可以是同一个计算机设备,或者,训练设备401和使用设备402也可以是不同的计算机设备。并且,当训练设备401和使用设备402是不同的设备时,训练设备401和使用设备402可以是同一类型的设备,比如训练设备401和使用设备402可以都是服务器;或者,训练设备401和使用设备402也可以是不同类型的设备,比如训练设备401是服务器,使用设备402是终端。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。上述终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能电视、车载终端、可穿戴设备和智能音箱等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在本申请中,图像超分辨率的过程应用于一种单向循环框架。图5示出了本申请一个示例性实施例提供的单向循环框架的示意图。图5示出了前一帧的超分辨率过程501、当前帧的超分辨率过程502和后一帧的超分辨率过程503。
在前一帧的超分辨率过程501中,将低分辨率的前一帧Xt-1进行特征提取,得到浅层特征fs(t-1),将获取的隐状态ht-2与浅层特征fs(t-1)进行拼接之后,再次进行特征提取,得到深层特征fd(t-1),通过对深层特征fd(t-1)进行上采样操作,得到前一帧Xt-1对应的高分辨率视频帧。
在当前帧的超分辨率过程502中,将低分辨率的当前帧Xt进行特征提取,得到浅层特征fst,将获取的隐状态ht-1与浅层特征fst进行拼接之后,再次进行特征提取,得到深层特征fdt,通过对深层特征fdt进行上采样操作,得到当前帧Xt对应的高分辨率视频帧。需要说明的是,隐状态ht-1是前一帧的超分辨率过程501传递给当前帧的超分辨率过程502的隐状态,隐状态ht-1可以是前一帧的超分辨率过程501中提取得到的任意特征进行光流估计得到的隐状态,图5示出的隐状态ht-1为深层特征fd(t-1)进行光流估计得到的隐状态。
在后一帧的超分辨率过程503中,将低分辨率的后一帧Xt+1进行特征提取,得到浅层特征fs(t+1),将获取的隐状态ht与浅层特征fs(t+1)进行拼接之后,再次进行特征提取,得到深层特征fd(t+1),通过对深层特征fd(t+1)进行上采样操作,得到后一帧Xt+1对应的高分辨率视频帧。需要说明的是,隐状态ht是当前帧的超分辨率过程502传递给后一帧的超分辨率过程503的隐状态,隐状态ht可以是当前帧的超分辨率过程502中提取得到的任意特征进行光流估计得到的隐状态,图5示出的隐状态ht为深层特征fdt进行光流估计得到的隐状态。
图6示出了本申请一个示例性实施例提供的图像超分辨率的方法的流程图,以该方法由服务器执行进行举例说明,下述实施例应用于图5所示的当前帧的超分辨率过程502,图6所示的方法包括:
步骤610,获取当前帧的第一图像特征和执行前一帧的超分辨率得到的第一隐状态;
当前帧,指视频流中应用有本申请提供的图像超分辨率的方法的视频帧,在下文中经常使用Xt表示当前帧。前一帧,指视频流中当前帧的上一帧,在下文中经常使用Xt-1表示前一帧。在一个实施例中,本申请提供的图像超分辨率的方法应用于视频超分辨率(VSR)过程。视频超分辨率,是指将低分辨率的视频帧重建为高分辨率的视频帧的过程。
在一个实施例中,本申请提供的图像超分辨率的方法是基于单向循环框架(Unidirectional Recurrent Network,URN)下运行的。单向循环框架下通过执行前一帧Xt-1的超分辨率过程,将得到隐状态ht-1,以及将隐状态ht-1传递至当前帧Xt的超分辨率过程。同理,通过执行当前帧Xt的超分辨率过程,将得到隐状态ht,以及将隐状态ht传递至后一帧Xt+1的超分辨率过程。
第一图像特征,指当前帧进行初次特征提取得到的特征。可选的,将当前帧输入第一残差网络,得到第一图像特征,第一残差网络包括多个残差块(Resblock)。此时得到的第一图像特征为当前帧的浅层特征。在下文中可能采用fst表示当前帧的第一图像特征。
示意性的,通过公式(1)计算得到第一图像特征,RB1表示第一残差网络。
fs(t)=RB1(Xt);(1)
第一隐状态,指通过执行前一帧的超分辨率过程得到的隐状态。隐状态用于模拟相邻两帧之间的时间依赖性。根据上文指出的研究人员的两个观察结果,得知隐状态之间携带有图像退化表征和图像细节表征。在当前帧的超分辨率过程中融入前一帧传播的隐状态,使得当前帧可能产生图像退化现象,并且,隐状态也增强了当前帧的图像细节。
可选的,第一隐状态是前一帧执行超分辨率的过程中的任意图像特征进行光流估计得到的隐状态。在执行前一帧的超分辨率过程中,可能采用多个残差块(Resblock)对前一帧进行特征提取,第一隐状态可以是任意一个残差块输出的图像特征进行光流估计得到的隐状态。可选的,将最后一个残差块执行完特征提取后的图像特征进行光流估计得到的隐状态作为第一隐状态。在下文中,第一隐状态可能表示为ht-1。
在本申请中,执行当前帧的超分辨率过程需要获取当前帧和前一帧传播给当前帧的第一隐状态。之后,还需执行构建第一隐状态的隐状态池(Hidden State Pool)的操作,以及将隐状态池中的多个隐状态输入选择性交叉注意力(Selective Cross Attention,SCA)网络的操作。
步骤620,将第一隐状态分别进行n次平滑操作,得到n个平滑隐状态;以及,将第一隐状态分别进行m次锐化操作,得到m个锐化隐状态;
其中,m、n均为正整数。
步骤620即为构建第一隐状态的隐状态池的相关步骤。
平滑隐状态,指第一隐状态经过平滑操作后得到的隐状态。锐化隐状态,指第一隐状态经过锐化操作后得到的隐状态。
在一个实施例中,通过n个平滑算子对第一隐状态进行n次不同的平滑操作,得到n个不同的平滑隐状态。可选的,平滑算子为高斯算子(Gaussian Filter)、均值滤波算子(Mean Filter)等。可选的,n的值为1或大于1的正整数。
在一个实施例中,通过m个锐化算子对第一隐状态进行m次不同的锐化操作,得到m个不同的锐化隐状态。可选的,锐化算子为拉普拉斯算子(Laplacian Filter)、Robert边缘检测算子等。可选的,m的值为1或大于1的正整数。
在一个实施例中,还可基于平滑算子对第一隐状态执行锐化操作。在一个实施例中,还可基于锐化算子对第一隐状态执行平滑操作。
在本申请中,n个平滑隐状态和m个锐化隐状态将构成隐状态池,隐状态池中的多个隐状态将输入后续的SCA网络。
可以理解的是,隐状态池中的平滑隐状态用于平滑当前帧的图像退化区域(或者说平滑隐状态用于去除图像伪影),锐化隐状态用于增强当前帧的其他区域的图像细节。在一个实施例中,若隐状态池中仅包含平滑隐状态,则当前帧的输出图像的图像退化现象得以缓解,但丢失了部分图像细节。若隐状态池中仅包含锐化隐状态,则当前帧的输出图像保留了图像细节,但图像退化现象仍然存在。
步骤630,基于n个平滑隐状态与第一图像特征之间的注意力机制以及m个锐化隐状态与第一图像特征之间的注意力机制,得到第二隐状态;
步骤630即为将隐状态池中的多个隐状态输入SCA网络的相关步骤。
在一个实施例中,基于n个平滑隐状态与第一图像特征之间的注意力机制,得到n张平滑注意力图;以及,基于m个锐化隐状态与第一图像特征之间的注意力机制,得到m张锐化注意力图;基于n张平滑注意力图和m张锐化注意力图,得到第二隐状态。
在一个实施例中,对于每个平滑隐状态,将根据与第一图像特征之间的注意力机制,生成一张平滑注意力图,共得到n张平滑注意力图。
在一个实施例中,对于每个锐化隐状态,将根据与第一图像特征之间的注意力机制,生成一张锐化注意力图,共得到m张锐化注意力图。
在一个实施例中,将n张平滑注意力图与m张锐化注意力图进行叠加,得到第二隐状态。
步骤640,基于第二隐状态和第一图像特征,得到第二图像特征;
在一个实施例中,将第二隐状态和第一图像特征进行拼接操作,之后,再输入第二残差网络,得到第二图像特征,第二残差网络包括多个残差块(Resblock)。此时得到的第一图像特征为当前帧的深层特征。需要说明的是,此处的第一残差网络与第二残差网络中的多个残差块是不同的多个残差块。
示意性的,通过公式(2)计算得到第二图像特征。
fd(t)=RB2(Concat(ht-1,fs(t)));(2)
其中,RB2表示第二残差网络,Concat表示拼接操作。
在一个实施例中,步骤650之后还包括:将第二图像特征进行光流估计操作(Estimate Optical Flow),生成用于执行后一帧的超分辨率的隐状态,以及执行后一帧的超分辨率。可选的,通过预训练得到的SpyNET(一种通过结合经典的空间金字塔方法与深度学习的方法实现的计算光流的模型)网络生成光流。光流估计操作实现了相邻帧之间的时间依赖。
步骤650,基于上采样后的第二图像特征,得到当前帧的超分辨率图像。
超分辨率图像,也可称为低分辨率的当前帧执行图像超分辨率之后得到的高分辨率图像。
在一个实施例中,将第二图像特征输入上采样网络,得到当前帧的超分辨率图像。可选的,基于上采样后的第二图像特征和上采样后的当前帧,得到当前帧的超分辨率图像。
在一个实施例中,将第二图像特征输入上采样网络,得到第一像素矩阵;将当前帧进行双线性插值,得到第二像素矩阵;计算第一像素矩阵与第二像素矩阵的和值,得到第三像素矩阵;将第三像素矩阵作为当前帧的超分辨率图像的像素矩阵。此时,图5中当前帧的超分辨率过程502还包括:将低分辨率的当前帧Xt执行双线性插值,将上采样后的深层特征fdt与双线性插值后的当前帧Xt进行自适应求和操作(各个像素对应求和),得到当前帧Xt对应的高分辨率图像。
示意性的,通过公式(3)生成当前帧Xt对应的高分辨率图像Yt。
Yt=UP(fd(t))+Bilinear(Xt);(3)
其中,UP表示上采样操作,Bilinear表示双线性插值操作。
综上所述,经过大量实验的推理论证,研究人员发现前一帧传播给当前帧的隐状态不仅携带有图像细节表征,还携带了图像退化表征。因此,本申请将构建第一隐状态对应的平滑隐状态和锐化隐状态,平滑隐状态同时去除了图像退化表征和图像细节表征,锐化隐状态不仅增强了图像细节表征,还保留图像退化表征。并且,通过后续的注意力机制,即可实现在当前帧的图像退化区域使用平滑隐状态,在除图像退化区域之外的其他区域使用锐化隐状态。
因此,本申请提供的图像超分辨率的方法不仅缓解了当前帧的图像退化现象(图像伪影),还增强了图像细节。并且,相比于RealBasicVSR,本申请未使用单独的预清洗模块进行图像伪影的去除,本申请直接对隐状态进行处理,进而降低了视频超分辨过程的计算成本,提高了视频的超分辨率速度。
图7示出了本申请一个示例性实施例提供的另一个单向循环框架的示意图。图7示出了前一帧的超分辨率过程701、当前帧的超分辨率过程702和后一帧的超分辨率过程703。
在前一帧的超分辨率过程701中,将低分辨率的前一帧Xt-1输入两个残差块,得到浅层特征fs(t-1);将来自之前帧的图像特征进行光流估计,得到隐状态ht-2;将隐状态ht-2与浅层特征fs(t-1)进行拼接操作之后,输入28个残差块,得到深层特征fd(t-1)。通过对深层特征fd(t-1)进行上采样操作,之后再输入卷积层,将卷积层输出的像素矩阵与前一帧Xt-1进行双线性插值上采样得到的像素矩阵进行自适应求和操作(像素对应求和),即得到前一帧Xt-1对应的高分辨率图像。
在当前帧的超分辨率过程702中,将低分辨率的当前帧Xt输入两个残差块,得到浅层特征fst;将来自前一帧Xt-1的图像特征进行光流估计,得到隐状态ht-1;将隐状态ht-1与浅层特征fst进行拼接操作之后,输入28个残差块,得到深层特征fdt。通过对深层特征fdt进行上采样操作,之后再输入卷积层,将卷积层输出的像素矩阵与当前帧Xt进行双线性插值上采样得到的像素矩阵进行自适应求和操作(像素对应求和),即得到当前帧Xt对应的高分辨率图像。
在后一帧的超分辨率过程703中,将低分辨率的后一帧Xt+1输入两个残差块,得到浅层特征fs(t+1);将来自当前帧Xt的图像特征进行光流估计,得到隐状态ht;将隐状态ht与浅层特征fs(t+1)进行拼接操作之后,输入28个残差块,得到深层特征fd(t+1)。通过对深层特征fd(t+1)进行上采样操作,之后再输入卷积层,将卷积层输出的像素矩阵与后一帧Xt+1进行双线性插值上采样得到的像素矩阵进行自适应求和操作(像素对应求和),即得到后一帧Xt+1对应的高分辨率图像。
基于图6所示的方法实施例中,步骤620是构建第一隐状态的隐状态池的相关步骤,步骤630是将隐状态池中的多个隐状态输入选择性交叉注意力网络的相关步骤。在一个实施例中,隐状态注意力网络(Hidden State Attention,HSA)包括隐状态池(HiddenState Pool)和选择性交叉注意力网络(Selective Cross Attention,SCA)。图8示出了本申请一个示例性实施例提供的隐状态注意力网络的示意图。隐状态注意力网络800包括隐状态池801和选择性交叉注意力网络802。
针对隐状态池801的相关介绍:
结合参考图8,在隐状态池801中,将第一隐状态ht-1进行n次平滑操作,得到n个平滑隐状态将第一隐状态ht-1进行m次锐化操作,得到m个锐化隐状态/>w等于n与m的和值,m为不小于2的正整数。
在一个实施例中,使用n个不同的平滑算子进行n次平滑操作。针对n次平滑操作中的第i平滑操作,将第一隐状态ht-1与第i平滑算子进行卷积操作,得到第i平滑隐状态。平滑算子为高斯算子或均值滤波算子。
示意性的,第i平滑隐状态的计算公式如下:
其中,ki表示第i平滑算子,表示卷积操作,/>表示第i平滑隐状态。
示意性的,表1示出了执行3次平滑操作的3个平滑算子。
表1
在一个实施例中,使用m个不同的平滑算子进行m次锐化操作。针对m次锐化操作中的第j锐化操作,将第一隐状态ht-1与第j平滑算子进行卷积操作,得到第j中间平滑隐状态;将第一隐状态ht-1减去第j中间平滑隐状态,得到第j中间锐化隐状态;将第一隐状态ht-1加上第j中间锐化隐状态,得到第j锐化隐状态。
示意性的,第j锐化隐状态的计算公式如下:
其中,kj表示第j平滑算子,表示卷积操作,/>表示第j锐化隐状态。
示意性的,表2示出了执行2次锐化操作的2个平滑算子。
表2
综上所述,提供了一种隐状态池的构建方式,通过对第一隐状态进行n次不同的平滑操作,得到n个平滑隐状态;对第一隐状态进行n次不同的锐化操作,得到m个锐化隐状态。在生成n个平滑隐状态时,使用了n个不同的平滑算子;在生成m个锐化隐状态时,使用了m个不同的平滑算子。通过上述公式(4)和公式(5)执行的平滑操作和锐化操作,仅使用平滑算子即可执行平滑操作和锐化操作,计算量较小;并且,平滑算子为常规的平滑算子,使得平滑操作和锐化操作的方式均十分简便,提高了VSR的效率。
关于隐状态池的更详细的有益效果,请参考下文消融实验中“隐状态池”和“隐状态池中的滤波算子”的相关介绍。
针对选择性交叉注意力网络802的相关介绍:
结合参考图8,在选择性交叉注意力网络802中,将隐状态池中的每个隐状态均与当前帧Xt的第一图像特征fst进行注意力计算。
在一个实施例中,将当前帧Xt的第一图像特征fst输入第一卷积层,得到查询向量Query;针对隐状态池的n个平滑隐状态中的第i平滑隐状态,将第i平滑隐状态输入第二卷积层,得到第i键值向量Key;基于查询向量与第i键值向量之间的注意力运算,得到第i平滑注意力图。将第i平滑隐状态输入第三卷积层,得到第i价值向量Value;将第i平滑注意力图与第i价值向量进行乘法运算,得到第i平滑向量。将n张平滑注意力图对应的n个平滑向量进行求和操作,得到第一中间向量。
示意性的,图8示出了i等于1时,第1个平滑隐状态的注意力运算的过程。将当前帧Xt的第一图像特征fst输入第一卷积层,得到查询向量Q;将第1平滑隐状态输入第二卷积层,得到键值向量基于查询向量Q与键值向量/>之间的注意力运算,得到第1平滑注意力图。将第1平滑隐状态输入第三卷积层,得到价值向量/>将第1平滑注意力图与价值向量/>进行乘法运算,得到第1平滑向量;将n张平滑注意力图对应的n个平滑向量进行求和操作,得到第一中间向量。
在一个实施例中,将当前帧Xt的第一图像特征输入第一卷积层,得到查询向量Query;针对隐状态池的m个锐化隐状态中的第j锐化隐状态,将第j锐化隐状态输入第二卷积层,得到第j键值向量Key;基于查询向量与第j键值向量之间的注意力运算,得到第j锐化注意力图。将第j锐化隐状态输入第三卷积层,得到第j价值向量;将第j锐化注意力图与第j价值向量进行乘法运算,得到第j锐化向量。将m张锐化注意力图对应的m个锐化向量进行求和操作,得到第二中间向量。
示意性的,图8示出了j等于m时,第m个锐化隐状态的注意力运算的过程。将当前帧Xt的第一图像特征fst输入第一卷积层,得到查询向量Q;将第m锐化隐状态输入第二卷积层,得到键值向量基于查询向量Q与键值向量/>之间的注意力运算,得到第m锐化注意力图。将第m锐化隐状态输入第三卷积层,得到价值向量/>将第m锐化注意力图与价值向量/>进行乘法运算,得到第m锐化向量。将m张锐化注意力图对应的m个锐化向量进行求和操作,得到第二中间向量。
基于上述,已经计算得到全部的平滑隐状态对应的第一中间向量和全部的锐化隐状态对应的第二中间向量,将第一中间向量加上第二中间向量之后,进行归一化操作,得到第二隐状态。图8中,第二隐状态表示为h′t-1。
示意性的,上述涉及到将第一图像特征fst输入第一卷积层,得到查询向量Q的过程,可采用公式表示:
Q=Hconv(fs(t));(6)
其中,Hconv表示卷积操作。
示意性的,上述选择性交叉注意力网络802执行的作用可通过公式表示:
其中,SoftMax表示归一化操作,Q表示查询向量,K表示键值向量,V表示价值向量,T表示矩阵转置操作。
综上所述,通过注意力机制,实现了第一图像特征与n个平滑隐状态之间的注意力计算,注意力计算将输出n张平滑注意力图;并且,通过注意力机制,实现了第一图像特征与m个锐化隐状态之间的注意力计算,注意力计算将输出m张锐化注意力图。基于n张平滑注意力图和m张锐化注意力图,即可得到第二隐状态。此时,第二隐状态中将不包含(或包含更少)图像退化表征和保留了图像细节表征。
关于选择性交叉注意力网络更详细的有益效果,请参考下文消融实验中“SCA网络”和“SCA网络中注意力图的可视化”的相关介绍。
接下来将介绍对FastRealVSR(应用有本申请提供的图像超分辨率方法的AI模型)、HSA(隐状态注意力)网络、隐状态池、SCA(选择性交叉注意力)网络进行实验的相关内容。
训练设置:在一个实施例中,在REDS数据集上训练本申请生成的FastRealVSR模型。可选的,通过下述图像退化表达式生成训练数据。
其中,X是低分辨率的帧序列,Y是与X对应的高分辨率的帧序列;k、n和r分别是平滑算子、加性噪声和下采样因子。通过恒定速率因子(Constant Rate Factor,CRF)控制FFMPEG(一套用于处理音视频的开源计算机程序)的压缩程度。恒定速率因子通过自动调整比特率来生成特定的图像质量。可选的,采样范围σ、δ和恒定速率因子分别为[0.2:3]、[1:5]、[18:35]。
在一个实施例中,按照相关技术中RealBasicVSR的设置,设置此次实验的帧序列长度为15帧,并在每次迭代中对帧序列进行临时翻转。在一个实施例中,实验输入的低分辨率的视频帧的大小为64*64。在一个实施例中,实验使用预先训练的SpyNet进行光流估计操作,在训练SpyNet时固定其权重。
在一个实施例中,本实验采用Adam优化器,整个训练过程分为两个阶段。
在第一个阶段:采用如图7所示的URN(单向循环架构)即进行训练,在训练时通过L1损失执行300K次迭代。训练数据的批次大小设置为16,模型的学习率设置为10-4。
在第二个阶段:通过在URN上配置HSA网络,得到了FastRealVSR。通过预训练得到的MSE模型进行初始化。然后,结合L1损失、感知损失和GAN损失进行70K次迭代,三个损失的权重依次设置为1、1、5×10-2。训练数据的批次大小设置为8。生成器和判别器的学习率分别设置为5×10-5、5×10-4。为了更稳定的训练和更好的实验表现,采用指数移动平均值(Exponential Moving Average,EMA)指标进行训练。
上述第一个阶段和第二个阶段均通过Pytorch(深度学习框架平台)在8个NVIDIA(英伟达)的A100 GPU(Graphics Processing Unit,图形处理器)实现。
FastRealVSR网络配置:在URN中,将提取浅层特征和深层特征的残差块数量分别设置为2和28。设置特征的通道数量为64。在对抗性训练中,使用Real-ESRGAN的判别器。对于隐状态池,选择3个平滑算子和2个锐化算子来生成多个不同的隐状态。
消融实验:
隐状态池。实验使用URN-GAN模型(URN的GAN版本)作为基线模型。然后,使用相同的实验设置训练FastRealVSR模型、FastRealVSR-Blurry模型和FastRealVSR-Sharp模型。这三个模型之间的区别仅在于隐状态池中的隐状态类型不同。FastRealVSR-Blurry模型的隐状态池中只包含平滑隐状态、FastRealVSR-Sharp模型的隐状态池中只包含锐化隐状态。表3示出了三个模型和URN-GAN模型的定量比较结果,其中,FastRealVSR模型对应的NIQE(Natural Image Quality Evaluator,一种无参考图像质量指标)数值最小,FastRealVSR模型明显优于FastRealVSR-Blurry模型和FastRealVSR-Sharp模型,这表明隐状态中平滑和锐化的信息是互补的。
表3
模型 | NIQE↓ |
URN-GAN模型 | 3.8435 |
FastRealVSR-Blurry模型 | 3.8544 |
FastRealVSR-Sharp模型 | 3.8210 |
FastRealVSR模型 | 3.7658 |
图9示出了上述四个模型对应的执行VSR后的图像结果。可以看出,FastRealVSR模型和FastRealVSR-Blurry模型输出的图像含有少量的图像退化现象(图像伪影),URN-GAN模型和FastRealVSR-Sharp模型输出的图像含有较为明显的图像退化现象(图像伪影),图9中已用椭圆框标注出图像退化现象。并且,相比于FastRealVSR-Blurry模型,FastRealVSR模型输出的图像具有更清晰的细节。
SCA网络。在SCA网络中,隐状态池中的每个隐状态都通过注意力机制与输入特征进行注意力计算。若不使用输入特征来引导多个隐状态的聚合,而只采用一个卷积层来聚合多个隐状态的话,则图像质量将变得更差。如表4所示,未携带SCA网络的FastRealVSR模型输出的图像质量差于(NIQE数值大于)携带有SCA网络的FastRealVSR模型。因此,从隐状态池中聚合新的隐状态时,需要使用输入特征的引导。
表4
HSA网络。HSA网络目的在于去除(或减少)隐状态中的图像退化表征。因此,接下来将验证HSA网络对于“有问题”的隐状态(包含有图像退化表征的隐状态)的有效性。考虑到若前一帧输出的图像存在图像退化现象,则前一帧传递给当前帧的隐状态将存在图像退化表征。结合参考图9和图10中的第①行,第T帧和第T+1帧保留并放大了第T-1帧的图像退化现象,表明URN-GAN模型中的隐状态即为“有问题的隐状态”。为获取上述“有问题的隐状态”,通过运行URN-GAN并存储所有生成的隐状态。通过ht(1≤t≤L-1)(L为视频帧序列长度)表示URN-GAN在还原低分辨率帧时产生的“有问题的隐状态”。为了验证FastRealVSR模型具有缓解图像退化现象的能力,使用恢复Xt帧时得到的URN-GAN模型的“有问题的隐状态”ht-1替换FastRealVSR模型中的隐状态。结合参考图10的第②行,可以看出HAS网络具有缓解“有问题的隐状态”中的图像退化表征的作用。
图10中,从第①行可以看出URN-GAN模型的输出包含明显的图像退化现象;从第②行可以看出,在FastRealVSR模型中,URN-GAN模型产生的图像退化现象得到明显的缓解;从第③行可以看出,当FastRealVSR模型中隐状态池的所有隐状态均为同一个平滑隐状态时,URN-GAN模型产生的图像退化现象得到明显的缓解;从第④行可以看出,当FastRealVSR模型中隐状态池的所有隐状态均为同一个锐化隐状态时,URN-GAN模型产生的图像退化现象仍然存在;第⑤行示出了隐状态池对应的所有的平滑注意力图求和得到的可视化的图;第⑥行示出了隐状态池对应的所有的锐化注意力图求和得到的可视化的图;第⑦行的二值图示出了第⑤行图像的像素值大于第⑥行图像的像素值的区域。图10中的椭圆框标注出了图像退化现象。
隐状态池中的滤波算子。实验还研究了平滑算子和锐化算子在隐状态池中各自的作用。具体的做法是将隐状态池中的所有隐状态替换为同一个隐状态。需要注意的是,在替换时需保持隐状态池中隐状态的数量在替换前后保持不变。图10第③行示出了在隐状态池中仅使用一个平滑算子的效果,图10第④行示出了在隐状态池中仅使用一个锐化算子的效果。
结合图10的第③行和第④行,可以看出平滑算子缓解了图像退化现象,但是造成了图像细节的丢失。然而,锐化算子增强了图像细节,但是保留了图像退化现象。因此,平滑算子和锐化算子的结合使用可以更好地增强图像细节和抑制图像退化。
SCA网络中注意力图的可视化。实验还可视化了SCA网络中的注意力图,用于知悉基于输入特征,隐状态中的不同表征(平滑表征和锐化表征)所起的作用。为了获得更好的可视化效果,实验时将多张平滑注意力图进行加法操作,以及将多张锐化注意力图进行加法操作,共得到累加后的两张注意力图。图10的第⑤行示出了多张平滑注意力图累加后的两张注意力图,图10的第⑥行示出了多张锐化注意力图累加后的两张注意力图。可以观察得到,SCA网络确实发挥了在端到端的训练中挑选出合适的隐状态的作用。并且,实验还对比了累加后的两张注意力图,得到了图10的第⑦行示出的二值图。二值图示出了第⑤行图像的像素值大于第⑥行图像的像素值的区域。由图10可以观察得到,对于存在图像退化现象的区域,SCA网络更倾向于对该区域进行平滑操作。
与其他算法相比:此次实验还将FastRealVSR与其他七种超分辨率算法进行比较。如下表5所示。
表5
/>
在实验中,将FastRealVSR模型(本申请提供的模型)与DAN模型、RealSR模型、BSRGAN模型、Real-ESRGAN模型、RealVSR模型、DBVSR模型、RealBasicVSR模型在VideoLQ数据集上进行比较。其中,VideoLQ数据集包含50个真实世界中的低质量视频,这些低质量视频是从视频托管网站收集得到的。
参考表5所示的量化结果,图5中将最优性能进行加粗显示、次优性能进行倾斜显示。在参数量(Params)指标上,RealVSR取得了最优性能、FastRealVSR取得了次优性能;在运行时长(Runtime)指标上,FastRealVSR取得了最优性能、RealBasicVSR取得了次优性能;在NIQE(一种图像质量评估指标)指标上,FastRealVSR取得了最优性能、RealBasicVSR取得了次优性能;在BRISQUE(一种图像质量评估指标)指标上,RealBasicVSR取得了最优性能、FastRealVSR取得了次优性能。
由表5可以看出,与其他算法相比,FastRealVSR更好地平衡了速度与图像质量的关系。特别注意的是,FastRealVSR模型以高于RealBasicVSR模型不止2倍的运行速度和更小的模型尺寸运行,FastRealVSR模型还实现了与RealBasicVSR类似的图像质量。参考图11,相比于其他模型,FastRealVSR模型更好地去除了图像退化现象,并保留了图像细节。
结合参考图12,图12示出了FastRealVSR模型相比于DAN模型、DBVSR模型、BSRGAN模型、Real-ESRGAN模型、RealBasic模型,在NIQE指标上具有更优的表现,在FPS(每秒传输帧数)指标上具有更优的表现,且参数量更小。
图13示出了本申请一个示例性实施例提供的图像超分辨率的装置,该装置包括:
获取模块1301,用于获取当前帧的第一图像特征和执行前一帧的超分辨率得到的第一隐状态;
处理模块1302,用于将第一隐状态分别进行n次平滑操作,得到n个平滑隐状态;以及,将第一隐状态分别进行m次锐化操作,得到m个锐化隐状态;其中,m、n均为正整数;
处理模块1302,还用于基于n个平滑隐状态与第一图像特征之间的注意力机制以及m个锐化隐状态与第一图像特征之间的注意力机制,得到第二隐状态;
生成模块1303,还用于基于第二隐状态和第一图像特征,得到第二图像特征;
生成模块1303,还用于基于上采样后的第二图像特征,得到当前帧的超分辨率图像。
在一个可选的实施例中,处理模块1302,还用于针对n次平滑操作中的第i平滑操作,将第一隐状态与第i平滑算子进行卷积操作,得到第i平滑隐状态;其中,n次平滑操作对应有n个不同的平滑算子。
在一个可选的实施例中,处理模块1302,还用于针对m次锐化操作中的第j锐化操作,将第一隐状态与第j平滑算子进行卷积操作,得到第j中间平滑隐状态;将第一隐状态减去第j中间平滑隐状态,得到第j中间锐化隐状态;将第一隐状态加上第j中间锐化隐状态,得到第j锐化隐状态;其中,m次锐化操作对应有m个不同的平滑算子。
在一个可选的实施例中,处理模块1302,还用于基于n个平滑隐状态与第一图像特征之间的注意力机制,得到n张平滑注意力图;以及,基于m个锐化隐状态与第一图像特征之间的注意力机制,得到m张锐化注意力图。
在一个可选的实施例中,处理模块1302,用于基于n张平滑注意力图和m张锐化注意力图,得到第二隐状态。
在一个可选的实施例中,处理模块1302,还用于将第一图像特征输入第一卷积层,得到查询向量Query;针对n个平滑隐状态中的第i平滑隐状态,将第i平滑隐状态输入第二卷积层,得到第i键值向量Key;基于查询向量与第i键值向量之间的注意力运算,得到第i平滑注意力图。
在一个可选的实施例中,处理模块1302,还用于将第一图像特征输入第一卷积层,得到查询向量Query;针对m个锐化隐状态中的第j锐化隐状态,将第j锐化隐状态输入第二卷积层,得到第j键值向量Key;基于查询向量与第j键值向量之间的注意力运算,得到第j锐化注意力图。
在一个可选的实施例中,处理模块1302,还用于针对n张平滑注意力图中的第i平滑注意力图,将n个平滑隐状态中的第i平滑隐状态输入第三卷积层,得到第i价值向量Value;将第i平滑注意力图与第i价值向量进行乘法运算,得到第i平滑向量;将n张平滑注意力图对应的n个平滑向量进行求和操作,得到第一中间向量。
在一个可选的实施例中,处理模块1302,还用于针对m张锐化注意力图中的第j锐化注意力图,将m个锐化隐状态中的第j锐化隐状态输入第三卷积层,得到第j价值向量Value;将第j锐化注意力图与第j价值向量进行乘法运算,得到第j锐化向量;将m张锐化注意力图对应的m个锐化向量进行求和操作,得到第二中间向量。
在一个可选的实施例中,处理模块1302,还用于将第一中间向量加上第二中间向量之后,进行归一化操作,得到第二隐状态。
在一个可选的实施例中,获取模块1301,还用于将当前帧输入第一残差网络,得到第一图像特征,第一图像特征为当前帧的浅层特征,第一残差网络包括多个残差块。
在一个可选的实施例中,生成模块1303,还用于将第二隐状态和第一图像特征进行拼接后,输入第二残差网络,得到第二图像特征,第二残差网络包括多个残差块,第二图像特征为当前帧的深层特征;其中,第一残差网络与第二残差网络是不同的残差网络。
在一个可选的实施例中,生成模块1303,还用于基于上采样后的第二图像特征和上采样后的当前帧,得到当前帧的超分辨率图像。
在一个可选的实施例中,生成模块1303,还用于将第二图像特征输入上采样网络,得到第一像素矩阵;将当前帧进行双线性插值,得到第二像素矩阵;计算第一像素矩阵与第二像素矩阵的和值,得到第三像素矩阵;将第三像素矩阵作为当前帧的超分辨率图像的像素矩阵。
在一个可选的实施例中,生成模块1303,还用于将第二图像特征进行光流估算操作,生成用于执行后一帧的超分辨率的隐状态。
在一个可选的实施例中,该装置还用于执行后一帧的超分辨率。
综上所述,经过大量实验的推理论证,研究人员发现前一帧传播给当前帧的隐状态不仅携带有图像细节表征,还携带了图像退化表征。因此,本申请将构建第一隐状态对应的平滑隐状态和锐化隐状态,平滑隐状态同时去除了图像退化表征和图像细节表征,锐化隐状态不仅增强了图像细节表征,还保留图像退化表征。并且,通过后续的注意力机制,即可实现在当前帧的图像退化区域使用平滑隐状态,在除图像退化区域之外的其他区域使用锐化隐状态。
因此,本申请提供的图像超分辨率的装置不仅缓解了当前帧中的图像退化现象(图像伪影),还增强了图像细节。并且,相比于RealBasicVSR,本申请未使用单独的预清洗模块进行图像伪影的去除,本申请直接对隐状态进行处理,进而降低了视频超分辨过程的计算成本,提高了视频的超分辨率速度。
图14是根据一示例性实施例示出的一种计算机设备的结构示意图。所述计算机设备1400包括中央处理单元(Central Processing Unit,CPU)1401、包括随机存取存储器(Random Access Memory,RAM)1402和只读存储器(Read-Only Memory,ROM)1403的系统存储器1404,以及连接系统存储器1404和中央处理单元1401的系统总线1405。所述计算机设备1400还包括帮助计算机设备内的各个器件之间传输信息的基本输入/输出系统(Input/Output,I/O系统)1406,和用于存储操作系统1413、应用程序1414和其他程序模块1415的大容量存储设备1407。
所述基本输入/输出系统1406包括有用于显示信息的显示器1408和用于用户输入信息的诸如鼠标、键盘之类的输入设备1409。其中所述显示器1408和输入设备1409都通过连接到系统总线1405的输入输出控制器1410连接到中央处理单元1401。所述基本输入/输出系统1406还可以包括输入输出控制器1410以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1410还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1407通过连接到系统总线1405的大容量存储控制器(未示出)连接到中央处理单元1401。所述大容量存储设备1407及其相关联的计算机设备可读介质为计算机设备1400提供非易失性存储。也就是说,所述大容量存储设备1407可以包括诸如硬盘或者只读光盘(Compact Disc Read-Only Memory,CD-ROM)驱动器之类的计算机设备可读介质(未示出)。
不失一般性,所述计算机设备可读介质可以包括计算机设备存储介质和通信介质。计算机设备存储介质包括以用于存储诸如计算机设备可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机设备存储介质包括RAM、ROM、可擦除可编程只读存储器(Erasable Programmable ReadOnly Memory,EPROM)、带电可擦可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,EEPROM),CD-ROM、数字视频光盘(Digital Video Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机设备存储介质不局限于上述几种。上述的系统存储器1404和大容量存储设备1407可以统称为存储器。
根据本公开的各种实施例,所述计算机设备1400还可以通过诸如因特网等网络连接到网络上的远程计算机设备运行。也即计算机设备1400可以通过连接在所述系统总线1405上的网络接口单元1412连接到网络1411,或者说,也可以使用网络接口单元1412来连接到其他类型的网络或远程计算机设备系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,中央处理器1401通过执行该一个或一个以上程序来实现上述图像超分辨率方法的全部或者部分步骤。
本申请还提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述方法实施例提供的图像超分辨率的方法。
本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法实施例提供的图像超分辨率的方法。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种图像超分辨率的方法,其特征在于,所述方法包括:
获取当前帧的第一图像特征和执行前一帧的超分辨率得到的第一隐状态;
将所述第一隐状态分别进行n次平滑操作,得到n个平滑隐状态;以及,将所述第一隐状态分别进行m次锐化操作,得到m个锐化隐状态;其中,m、n均为正整数;
基于所述n个平滑隐状态与所述第一图像特征之间的注意力机制以及所述m个锐化隐状态与所述第一图像特征之间的注意力机制,得到第二隐状态;
基于所述第二隐状态和所述第一图像特征,得到第二图像特征;
基于上采样后的所述第二图像特征,得到所述当前帧的超分辨率图像。
2.根据权利要求1所述的方法,其特征在于,所述将所述第一隐状态分别进行n次平滑操作,得到n个平滑隐状态,包括:
针对所述n次平滑操作中的第i平滑操作,将所述第一隐状态与第i平滑算子进行卷积操作,得到第i平滑隐状态;
其中,所述n次平滑操作对应有n个不同的平滑算子。
3.根据权利要求1所述的方法,其特征在于,所述将所述第一隐状态分别进行m次锐化操作,得到m个锐化隐状态,包括:
针对所述m次锐化操作中的第j锐化操作,将所述第一隐状态与第j平滑算子进行卷积操作,得到第j中间平滑隐状态;将所述第一隐状态减去所述第j中间平滑隐状态,得到第j中间锐化隐状态;将所述第一隐状态加上所述第j中间锐化隐状态,得到第j锐化隐状态;
其中,所述m次锐化操作对应有m个不同的平滑算子。
4.根据权利要求1至3任一所述的方法,其特征在于,所述基于所述n个平滑隐状态与所述第一图像特征之间的注意力机制以及所述m个锐化隐状态与所述第一图像特征之间的注意力机制,得到第二隐状态,包括:
基于所述n个平滑隐状态与所述第一图像特征之间的注意力机制,得到n张平滑注意力图;以及,基于所述m个锐化隐状态与所述第一图像特征之间的注意力机制,得到m张锐化注意力图;
基于所述n张平滑注意力图和所述m张锐化注意力图,得到所述第二隐状态。
5.根据权利要求4所述的方法,其特征在于,所述基于所述n个平滑隐状态与所述第一图像特征之间的注意力机制,得到n张平滑注意力图,包括:
将所述第一图像特征输入第一卷积层,得到查询向量Query;
针对所述n个平滑隐状态中的第i平滑隐状态,将所述第i平滑隐状态输入第二卷积层,得到第i键值向量Key;基于所述查询向量与所述第i键值向量之间的注意力运算,得到第i平滑注意力图。
6.根据权利要求4所述的方法,其特征在于,所述基于所述m个锐化隐状态与所述第一图像特征之间的注意力机制,得到m张锐化注意力图,包括:
将所述第一图像特征输入第一卷积层,得到查询向量Query;
针对所述m个锐化隐状态中的第j锐化隐状态,将所述第j锐化隐状态输入第二卷积层,得到第j键值向量Key;基于所述查询向量与所述第j键值向量之间的注意力运算,得到第j锐化注意力图。
7.根据权利要求4所述的方法,其特征在于,所述基于所述n张平滑注意力图和所述m张锐化注意力图,得到所述第二隐状态,包括:
针对所述n张平滑注意力图中的第i平滑注意力图,将所述n个平滑隐状态中的第i平滑隐状态输入第三卷积层,得到第i价值向量Value;将所述第i平滑注意力图与所述第i价值向量进行乘法运算,得到第i平滑向量;将所述n张平滑注意力图对应的n个平滑向量进行求和操作,得到第一中间向量;
针对所述m张锐化注意力图中的第j锐化注意力图,将所述m个锐化隐状态中的第j锐化隐状态输入所述第三卷积层,得到第j价值向量Value;将所述第j锐化注意力图与所述第j价值向量进行乘法运算,得到第j锐化向量;将所述m张锐化注意力图对应的m个锐化向量进行求和操作,得到第二中间向量;
将所述第一中间向量加上所述第二中间向量之后,进行归一化操作,得到所述第二隐状态。
8.根据权利要求1至3任一所述的方法,其特征在于,所述获取当前帧的第一图像特征,包括:
将所述当前帧输入第一残差网络,得到所述第一图像特征,所述第一图像特征为所述当前帧的浅层特征,所述第一残差网络包括多个残差块;
所述基于所述第二隐状态和所述第一图像特征,得到第二图像特征,包括:
将所述第二隐状态和所述第一图像特征进行拼接后,输入第二残差网络,得到所述第二图像特征,所述第二图像特征为所述当前帧的深层特征,所述第二残差网络包括多个残差块;
其中,所述第一残差网络与所述第二残差网络是不同的残差网络。
9.根据权利要求1至3任一所述的方法,其特征在于,所述基于上采样后的所述第二图像特征,得到所述当前帧的超分辨率图像,包括:
基于上采样后的所述第二图像特征和上采样后的所述当前帧,得到所述当前帧的超分辨率图像。
10.根据权利要求9所述的方法,其特征在于,所述基于上采样后的所述第二图像特征和上采样后的所述当前帧,得到所述当前帧的超分辨率图像,包括:
将所述第二图像特征输入上采样网络,得到第一像素矩阵;
将所述当前帧进行双线性插值,得到第二像素矩阵;
计算所述第一像素矩阵与所述第二像素矩阵的和值,得到第三像素矩阵;
将所述第三像素矩阵作为所述当前帧的超分辨率图像的像素矩阵。
11.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
将所述第二图像特征进行光流估算操作,生成用于执行后一帧的超分辨率的隐状态;
以及,执行所述后一帧的超分辨率。
12.一种图像超分辨率的装置,其特征在于,所述装置包括:
获取模块,用于获取当前帧的第一图像特征和执行前一帧的超分辨率得到的第一隐状态;
处理模块,用于将所述第一隐状态分别进行n次平滑操作,得到n个平滑隐状态;以及,将所述第一隐状态分别进行m次锐化操作,得到m个锐化隐状态;其中,m、n均为正整数;
所述处理模块,还用于基于所述n个平滑隐状态与所述第一图像特征之间的注意力机制以及所述m个锐化隐状态与所述第一图像特征之间的注意力机制,得到第二隐状态;
生成模块,还用于基于所述第二隐状态和所述第一图像特征,得到第二图像特征;
所述生成模块,还用于基于上采样后的所述第二图像特征,得到所述当前帧的超分辨率图像。
13.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至11任一所述的图像超分辨率的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至11任一所述的图像超分辨率的方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品存储有计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至11任一所述的图像超分辨率的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211145665.2A CN117011130A (zh) | 2022-09-20 | 2022-09-20 | 图像超分辨率的方法、装置、设备、介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211145665.2A CN117011130A (zh) | 2022-09-20 | 2022-09-20 | 图像超分辨率的方法、装置、设备、介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117011130A true CN117011130A (zh) | 2023-11-07 |
Family
ID=88566102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211145665.2A Pending CN117011130A (zh) | 2022-09-20 | 2022-09-20 | 图像超分辨率的方法、装置、设备、介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117011130A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117523060A (zh) * | 2024-01-04 | 2024-02-06 | 虚拟现实(深圳)智能科技有限公司 | 元宇宙数字人的画质处理方法、装置、设备及存储介质 |
-
2022
- 2022-09-20 CN CN202211145665.2A patent/CN117011130A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117523060A (zh) * | 2024-01-04 | 2024-02-06 | 虚拟现实(深圳)智能科技有限公司 | 元宇宙数字人的画质处理方法、装置、设备及存储介质 |
CN117523060B (zh) * | 2024-01-04 | 2024-05-17 | 虚拟现实(深圳)智能科技有限公司 | 元宇宙数字人的画质处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111275626B (zh) | 一种基于模糊度的视频去模糊方法、装置及设备 | |
Matakos et al. | Accelerated edge-preserving image restoration without boundary artifacts | |
Yu et al. | A unified learning framework for single image super-resolution | |
CN111429347A (zh) | 图像超分辨率重建方法、装置及计算机可读存储介质 | |
CN107133923B (zh) | 一种基于自适应梯度稀疏模型的模糊图像非盲去模糊方法 | |
CN112164011B (zh) | 基于自适应残差与递归交叉注意力的运动图像去模糊方法 | |
CN113222855B (zh) | 一种图像恢复方法、装置和设备 | |
CN113066034A (zh) | 人脸图像的修复方法与装置、修复模型、介质和设备 | |
US20220414838A1 (en) | Image dehazing method and system based on cyclegan | |
CN114723630A (zh) | 基于空洞双残差多尺度深度网络的图像去模糊方法及系统 | |
López-Tapia et al. | A single video super-resolution GAN for multiple downsampling operators based on pseudo-inverse image formation models | |
Fuoli et al. | NTIRE 2020 challenge on video quality mapping: Methods and results | |
Xie et al. | Mitigating artifacts in real-world video super-resolution models | |
Lim et al. | Deep spectral-spatial network for single image deblurring | |
CN117011130A (zh) | 图像超分辨率的方法、装置、设备、介质及程序产品 | |
CN109993701B (zh) | 一种基于金字塔结构的深度图超分辨率重建的方法 | |
CN106981046A (zh) | 基于多层梯度约束回归的单幅图像超分辨率重建方法 | |
CN113538245A (zh) | 基于退化模型的超分辨率图像重建方法及系统 | |
Wu et al. | Dcanet: Dual convolutional neural network with attention for image blind denoising | |
CN116957964A (zh) | 一种基于扩散模型的小样本图像生成方法及系统 | |
CN114820389B (zh) | 一种基于无监督解耦表征的人脸图像去模糊方法 | |
Peng | Super-resolution reconstruction using multiconnection deep residual network combined an improved loss function for single-frame image | |
CN116309158A (zh) | 网络模型的训练方法、三维重建方法、装置、设备和介质 | |
Zhang et al. | Neural Maximum A Posteriori Estimation on Unpaired Data for Motion Deblurring | |
You et al. | INDigo: An INN-Guided Probabilistic Diffusion Algorithm for Inverse Problems |
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 |