一种图像处理方法及装置与流程

文档序号:33504845发布日期:2023-03-17 23:38阅读:35来源:国知局
一种图像处理方法及装置与流程

1.本技术涉及图像处理领域,具体而言,涉及一种图像处理方法及装置。


背景技术:

2.超分辨率算法是通过硬件或软件方法提高原有图像的分辨率,即通过一幅或者多幅低分辨率的图像来得到一幅高分辨率的图像。现有技术中,超分辨率算法主要分为两类:传统方法以及深度学习方法,其中,传统方法主要包括:插值方法、稀疏表示方法、局部嵌入方法、基于样例(example-based)方法等,而深度学习方法主要包括以神经网络模型为主的各种深度学习方法。但是,采用传统方法得到的超分辨率图像的清晰度较低,而采用深度学习方法得到的超分辨率图像的过程计算量较大。


技术实现要素:

3.本技术实施例的目的在于提供一种图像处理方法及装置,用以解决如何在保证生成的图像的清晰度的基础上降低提高分辨率过程的计算量的技术问题。
4.第一方面,本技术实施例提供一种图像处理方法,包括:获取输入图像包含的多张单通道图像;根据目标分辨率以及所述输入图像对应的初始分辨率分别对所述多张单通道图像进行缩放处理,得到对应的多张缩放图像;其中,所述目标分辨率大于所述初始分辨率;将所述多张缩放图像进行拼接,得到单通道的原始图像;其中,所述原始图像的分辨率为所述目标分辨率;根据所述原始图像中每个像素点的像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与所述输入图像的通道数相同的目标图像。在上述方案中,将初始分辨率的输入图像分离为多张单通道图像,并对经过缩放处理后的单通道图像进行拼接,然后将拼接得到的原始图像恢复为多通道的图像,得到的目标图像即为满足目标分辨率的图像。其中,由于在拼接以及恢复为多通道的过程中,可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
5.在可选的实施方式中,所述通道包括第一类通道、第二类通道以及第三类通道,所述多张单通道图像包括两张第一类通道对应的第一图像、一张第二类通道对应的第二图像以及一张第三类通道对应的第三图像。
6.在可选的实施方式中,所述将所述多张缩放图像进行拼接,得到单通道的原始图像,包括:将缩放后的第一图像、缩放后的第二图像以及缩放后的第三图像中同一位置处的像素点拼接为所述原始图像中对应位置处的像素块;其中,每个像素块包括四个像素点,每个像素块中的一条对角线上的两个像素点分别为所述缩放后的第二图像、所述缩放后的第三图像在该位置处的像素点,另一条对角线上的两个像素点均为所述缩放后的第一图像在该位置处的像素点。在上述方案中,通过拼接的过程,将缩放后的单通道图像拼接为原始图像,从而可以引入足够的非线性,因此可以提高生成的目标图像的清晰度。
7.在可选的实施方式中,所述原始图像中像素值属于第一通道的像素点为第一像素
点,所述原始图像中像素值属于第二通道的像素点为第二像素点,所述原始图像中像素值属于第三通道的像素点为第三像素点;所述根据所述原始图像中每个像素点的像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与所述输入图像的通道数相同的目标图像,包括:遍历所述原始图像中的第二像素点以及第三像素点,并确定以每个第二像素点或者第三像素点为中心点的处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第二像素点或者所述第三像素点相关的像素点的像素值,计算所述第二像素点或者所述第三像素点在第一通道上的像素值,得到第一中间图像;遍历所述第一中间图像中的与所述第二像素点位置对应的第四像素点以及与所述第三像素点位置对应的第五像素点,并确定以每个第四像素点或者第五像素点为中心点的所述处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第四像素点或者所述第五素点相关的像素点的像素值,计算所述第四像素点在第三通道上的像素值或者所述第五像素点在第二通道上的像素值,得到第二中间图像;遍历所述第二中间图像中的与所述第一像素点位置对应的第六像素点,并确定以每个第六像素点为中心点的所述处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第六像素点相关的像素点的像素值的,计算所述第六像素点在第二通道以及第三通道上的像素值,得到所述目标图像。在上述方案中,通过依次对原始图像中的包括属于单通道像素值的像素点进行遍历,并插入其他通道的像素值,可以根据原始图像还原得到多通道图像,由于在插入的过程中可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
8.在可选的实施方式中,所述遍历所述原始图像中的第二像素点以及第三像素点,并确定以每个第二像素点或者第三像素点为中心点的处理窗口范围内的插值方向,包括:计算所述处理窗口范围内的水平方向梯度以及垂直方向梯度;将所述水平方向梯度以及所述垂直方向梯度中较小的值对应的方向确定为所述插值方向。
9.在可选的实施方式中,所述遍历所述第一中间图像中的与所述第二像素点位置对应的第四像素点以及与所述第三像素点位置对应的第五像素点,并确定以每个第四像素点或者第五像素点为中心点的所述处理窗口范围内的插值方向,包括:计算所述处理窗口范围内的两个对角线方向梯度;将所述两个对角线方向梯度中较小的值对应的方向确定为所述插值方向。
10.在可选的实施方式中,所述根据目标分辨率以及所述输入图像对应的初始分辨率分别对所述多张单通道图像进行缩放处理,得到对应的多张缩放图像,包括:根据所述目标分辨率、所述初始分辨率以及所述单通道图像的总数计算缩放率;根据所述缩放率对所述单通道图像进行缩放处理,得到所述缩放图像。在上述方案中,在对单通道图像进行缩放处理的过程中,可以根据目标分辨率以及初始分辨率计算对应的缩放率,以根据缩放率对单通道图像进行合适的缩放。
11.在可选的实施方式中,在所述缩放率大于1时,所述根据所述缩放率对所述单通道图像进行缩放处理,得到所述缩放图像,包括:针对所述单通道图像中的至少一个图像单元,若待插入像素点的总数量m支持均匀插值,则将m个待插入像素点均匀地插入到所述图像单元中的每两个原始像素点之间;若待插入像素点的总数量m不支持均匀插值,则将n个
待插入像素点均匀地插入到所述图像单元中的每两个原始像素点之间;其中,n为小于m的正整数,m-n+1小于所述图像单元中的原始像素点的个数;计算插入所述n个待插入像素点后,所述图像单元中每两个相邻的像素点之间的待插入像素值;将所述待插入像素值与所述原始像素点的像素值构成的折线之间的距离,将计算出的距离中最小的m-n个距离对应的待插入像素值作为m-n个待插入像素点的像素点,并将m-n个待插入像素点插入到与所述最小的m-n个距离对应的像素点之间。在上述方案中,在需要对单通道图像进行放大的情况下,可以采用插值的方式对单通道图像进行缩放。其中,在计算待插入像素点对应的像素值时,可以根据相邻的两个像素点的像素值以及目标清晰度,从而可以降低插值过程中清晰度的损失;此外,针对不能均匀差值的待插入像素点,可以使其尽量在折线上或者折线的周围分布,以增大总体方差。
12.在可选的实施方式中,在所述缩放率大于1时,所述根据所述缩放率对所述单通道图像进行缩放处理,得到所述缩放图像,包括:在所述单通道图像上的像素点之间插入像素点;其中,插入的像素点的像素值根据与所述插入的像素点相邻的两个像素点的像素值以及目标清晰度计算得到,且越靠近所述单通道图像中的图像单元的中心点的像素值在计算过程中所占的比重越大。
13.在可选的实施方式中,所述图像单元包括以下至少一个对象:所述单通道图像中的首行、首列、末行以及末列。
14.第二方面,本技术实施例提供一种图像处理装置,包括:获取模块,用于获取输入图像包含的多张单通道图像;缩放模块,用于根据目标分辨率以及所述输入图像对应的初始分辨率分别对所述多张单通道图像进行缩放处理,得到对应的多张缩放图像;其中,所述目标分辨率大于所述初始分辨率;拼接模块,用于将所述多张缩放图像进行拼接,得到单通道的原始图像;其中,所述原始图像的分辨率为所述目标分辨率;生成模块,用于根据所述原始图像中每个像素点的像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与所述输入图像的通道数相同的目标图像。在上述方案中,将初始分辨率的输入图像分离为多张单通道图像,并对经过缩放处理后的单通道图像进行拼接,然后将拼接得到的原始图像恢复为多通道的图像,得到的目标图像即为满足目标分辨率的图像。其中,由于在拼接以及恢复为多通道的过程中,可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
15.在可选的实施方式中,所述通道包括第一类通道、第二类通道以及第三类通道,所述多张单通道图像包括两张第一类通道对应的第一图像、一张第二类通道对应的第二图像以及一张第三类通道对应的第三图像。
16.在可选的实施方式中,所述拼接模块具体用于:将缩放后的第一图像、缩放后的第二图像以及缩放后的第三图像中同一位置处的像素点拼接为所述原始图像中对应位置处的像素块;其中,每个像素块包括四个像素点,每个像素块中的一条对角线上的两个像素点分别为所述缩放后的第一图像、所述缩放后的第三图像在该位置处的像素点,另一条对角线上的两个像素点均为所述缩放后的第二图像在该位置处的像素点。在上述方案中,通过拼接的过程,将缩放后的单通道图像拼接为原始图像,从而可以引入足够的非线性,因此可以提高生成的目标图像的清晰度。
17.在可选的实施方式中,所述原始图像中像素值属于第一通道的像素点为第一像素点,所述原始图像中像素值属于第二通道的像素点为第二像素点,所述原始图像中像素值属于第三通道的像素点为第三像素点;所述生成模块具体用于:遍历所述原始图像中的第二像素点以及第三像素点,并确定以每个第二像素点或者第三像素点为中心点的处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第二像素点或者所述第三像素点相关的像素点的像素值,计算所述第二像素点或者所述第三像素点在第一通道上的像素值,得到第一中间图像;遍历所述第一中间图像中的与所述第二像素点位置对应的第四像素点以及与所述第三像素点位置对应的第五像素点,并确定以每个第四像素点或者第五像素点为中心点的所述处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第四像素点或者所述第五素点相关的像素点的像素值,计算所述第四像素点在第三通道上的像素值或者所述第五像素点在第二通道上的像素值,得到第二中间图像;遍历所述第二中间图像中的与所述第一像素点位置对应的第六像素点,并确定以每个第六像素点为中心点的所述处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第六像素点相关的像素点的像素值的,计算所述第六像素点在第二通道以及第三通道上的像素值,得到所述目标图像。在上述方案中,通过依次对原始图像中的包括属于单通道像素值的像素点进行遍历,并插入其他通道的像素值,可以根据原始图像还原得到多通道图像,由于在插入的过程中可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
18.在可选的实施方式中,所述生成模块还用于:计算所述处理窗口范围内的水平方向梯度以及垂直方向梯度;将所述水平方向梯度以及所述垂直方向梯度中较小的值对应的方向确定为所述插值方向。
19.在可选的实施方式中,所述生成模块还用于:计算所述处理窗口范围内的两个对角线方向梯度;将所述两个对角线方向梯度中较小的值对应的方向确定为所述插值方向。
20.在可选的实施方式中,所述缩放模块具体用于:根据所述目标分辨率、所述初始分辨率以及所述单通道图像的总数计算缩放率;根据所述缩放率对所述单通道图像进行缩放处理,得到所述缩放图像。在上述方案中,在对单通道图像进行缩放处理的过程中,可以根据目标分辨率以及初始分辨率计算对应的缩放率,以根据缩放率对单通道图像进行合适的缩放。
21.在可选的实施方式中,在所述缩放率大于1时,所述缩放模块还用于:针对所述单通道图像中的至少一个图像单元,若待插入像素点的总数量m支持均匀插值,则将m个待插入像素点均匀地插入到所述图像单元中的每两个原始像素点之间;若待插入像素点的总数量m不支持均匀插值,则将n个待插入像素点均匀地插入到所述图像单元中的每两个原始像素点之间;其中,n为小于m的正整数,m-n+1小于所述图像单元中的原始像素点的个数;计算插入所述n个待插入像素点后,所述图像单元中每两个相邻的像素点之间的待插入像素值;将所述待插入像素值与所述原始像素点的像素值构成的折线之间的距离,将计算出的距离中最小的m-n个距离对应的待插入像素值作为m-n个待插入像素点的像素点,并将m-n个待插入像素点插入到与所述最小的m-n个距离对应的像素点之间。在上述方案中,在需要对单通道图像进行放大的情况下,可以采用插值的方式对单通道图像进行缩放。其中,在计算待
插入像素点对应的像素值时,可以根据相邻的两个像素点的像素值以及目标清晰度,从而可以降低插值过程中清晰度的损失;此外,针对不能均匀差值的待插入像素点,可以使其尽量在折线上或者折线的周围分布,以增大总体方差。
22.在可选的实施方式中,所述缩放模块还用于:在所述单通道图像上的像素点之间插入像素点;其中,插入的像素点的像素值根据与所述插入的像素点相邻的两个像素点的像素值以及目标清晰度计算得到,且越靠近所述单通道图像中的图像单元的中心点的像素值在计算过程中所占的比重越大。
23.在可选的实施方式中,所述图像单元包括以下至少一个对象:所述单通道图像中的首行、首列、末行以及末列。
24.第三方面,本技术实施例提供一种电子设备,包括:处理器、存储器和总线;所述处理器和所述存储器通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如第一方面所述的图像处理方法。
25.第四方面,本技术实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令被计算机运行时,使所述计算机执行如第一方面所述的图像处理方法。
26.第五方面,本技术实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面所述的图像处理方法。
附图说明
27.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
28.图1为本技术实施例提供的一种图像处理方法的流程图;
29.图2为本技术实施例提供的一种像素块的示意图;
30.图3为本技术实施例提供的另一种像素块的示意图;
31.图4为本技术实施例提供的上述步骤s102的具体实施方式的流程图;
32.图5为本技术实施例的一种处理窗口范围内的像素点的示意图;
33.图6为本技术实施例的另一种处理窗口范围内的像素点的示意图;
34.图7为本技术实施例提供的一种图像处理装置的结构框图;
35.图8为本技术实施例提供的一种电子设备的结构框图。
具体实施方式
36.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
37.请参照图1,图1为本技术实施例提供的一种图像处理方法的流程图,该图像处理方法可以由本技术实施例提供的电子设备执行。其中,该图像处理方法可以包括如下内容:
38.步骤s101:获取输入图像包含的多张单通道图像。
39.步骤s102:根据目标分辨率以及输入图像对应的初始分辨率分别对多张单通道图像进行缩放处理,得到对应的多张缩放图像。
40.步骤s103:将多张缩放图像进行拼接,得到单通道的原始图像。其中,原始图像的分辨率为目标分辨率。
41.步骤s104:根据原始图像中每个像素点的像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与输入图像的通道数相同的目标图像。
42.具体的,图像可以分为单通道图像、三通道图像、四通道图像等。其中,单通道图像中的每个像素点仅对应一个像素值,且该像素值仅属于一个通道,例如:对于一张红色单通道图像,其中的每个像素点的像素值均属于红色通道;假设三通道图像中的通道包括第一类通道、第二类通道以及第三类通道,则三通道图像的每个像素点对应三个像素值,且三个像素值分别属于第一类通道、第二类通道以及第三类通道,例如:对于一张rgb图像,其中的每个像素点对应的三个像素值分别属于红色通道、绿色通道以及蓝色通道。
43.在本技术实施例中,电子设备可以在步骤s101中获取到一张输入图像包含的多张单通道图像,其中,电子设备获取多张单通道图像的方式有多种。以输入图像为rgb图像为例,电子设备可以先获取到一张输入图像,然后再将该输入图像分离为三张单通道的图像,每张单通道的图像对应红色通道、绿色通道以及蓝色通道中的一个通道;或者,电子设备可以直接接收外部设备发送的或者从云端服务器读取一张输入图像对应的三张单通道的图像,同样的,每张单通道的图像对应红色通道、绿色通道以及蓝色通道中的一个通道。
44.可以理解的是,作为一种实施方式,电子设备获取的单通道图像的数量也可以大于三,例如:可以获取四张单通道图像,包括两张第一类通道对应的图像、一张第二类通道对应的图像以及一张第三类通道对应的图像,其中,两张第一类通道对应的图像可以通过复制其中一张第一类通道对应的图像得到;或者,可以获取五张单通道图像,包括两张第一类通道对应的图像、一张第二类通道对应的图像以及两张第三类通道对应的图像,同样的,两张第一类通道或者第二类通道对应的图像可以通过复制其中一张第一类通道或者第二类通道对应的图像得到。
45.电子设备在执行步骤s102之前,还可以获取输入图像对应的初始分辨率以及目标图像对应的目标分辨率,也就是说,本技术实施例提供的图像处理方法的目的在于将初始分辨率的输入图像转换为目标分辨率的目标图像。与上述实施例类似,电子设备获取初始分辨率以及目标分辨率的方式也有多种。例如:电子设备可以读取本地存储的初始分辨率或者目标分辨率;电子设备可以从云端服务器读取存储的初始分辨率或者目标分辨率;或者,电子设备还可以读取用户输入的初始分辨率或者目标分辨率等。本技术实施例对此不作具体的限定,本领域技术人员可以根据实际情况进行合适的选择。
46.可以理解的是,本技术实施例提供的目标分辨率可以大于初始分辨率。
47.作为一种实施方式,电子设备除了可以获取初始分辨率以及目标分辨率之外,还可以获取其他在执行本技术实施例提供的图像处理方法的过程中所需的参数,例如:目标清晰度、目标图像的尺寸大小等,本领域技术人员同样可以根据实际情况进行合适的调整。
48.接下来,电子设备可以在步骤s102中根据获取到的目标分辨率以及初始分辨率分别对多张单通道图像进行缩放处理,从而得到每一张单通道图像对应的缩放图像。其中,缩放处理的方式有多种,例如:可以通过插值的方式增大单通道图像的分辨率;可以通过删除部分像素点的方式减小单通道图像的分辨率;可以通过局部嵌入的方式增大单通道图像的
分辨率等。
49.需要说明的是,后续实施例将会对通过插值的方式增大单通道图像的分辨率以及通过删除部分像素点的方式减小单通道图像的分辨率的具体实施过程进行详细的介绍,此处暂不说明。
50.然后,在得到多张单通道图像对应的多张缩放图像之后,可以在步骤s103中将多张缩放图像进行拼接,得到单通道的原始图像,且该原始图像的分辨率与目标分辨率相同。其中,根据单通道图像的数量以及具体对应的通道类型,对说中缩放图像进行拼接的方式有多种,本技术实施例对此不作具体的限定。
51.以步骤s101中获取到了四张单通道图像,且四张单通道图像包括两张第一类通道对应的图像(第一图像)、一张第二类通道对应的图像(第二图像)以及一张第三类通道对应的图像(第三图像)为例,上述步骤s103具体可以包括如下内容:
52.将缩放后的第一图像、缩放后的第二图像以及缩放后的第三图像中同一位置处的像素点拼接为原始图像中对应位置处的像素块;其中,每个像素块包括四个像素点,每个像素块中的一条对角线上的两个像素点分别为缩放后的第二图像、缩放后的第三图像在该位置处的像素点,另一条对角线上的两个像素点均为缩放后的第一图像在该位置处的像素点。因此,采用该拼接方式,可以使得不同通道的像素值均匀的混合在一起,便于进行插值。
53.可以理解的是,执行上述步骤后拼接得到的原始图像中,每一个像素块可以如图2或者如图3所示的。其中,图2为本技术实施例提供的一种像素块的示意图,图3为本技术实施例提供的另一种像素块的示意图,包括斜线的方块代表缩放后的第一图像中的像素点、包括竖线的方块代表缩放后的第二图像中的像素点、包括横线的方块代表缩放后的第三图像中的像素点。
54.需要说明的是,当第一类通道为绿色通道、第二类通道为红色通道、第三类通道为蓝色通道时,如图2所示的像素块为按照拜耳阵列(bayer pattern)对缩放图像进行拼接得到的;或者,当第一类通道为红色通道,第二类通道为绿色通道、第三类通道为蓝色通道时,也可以按照如图2所示的方式进行拼接。
55.在四张单通道图像的情况下,为了保证原始图像的分辨率为目标分辨率,则在上述步骤s102中得到的缩放图像的分辨率应该为目标分辨率的四分之一。这是由于,在水平方向上,由于原始图像的像素点的个数是缩放图像像素点个数的两倍,因此水平方向上缩放图像分辨率的大小为原始图像分辨率的大小的二分一;类似的,在垂直方向上,由于原始图像的像素点的个数是缩放图像像素点个数的两倍,因此水平方向上缩放图像分辨率的大小也为原始图像分辨率的大小的二分一。
56.最后,电子设备在得到单通道的原始图像之后,可以在步骤s104中将原始图像的每个像素点的通道补充完整,得到与输入图像的通道数相同的目标图像。例如,若输入图像为三通道图像,则需要在原始图像的每一个像素点补充另外两个通道对应的像素值,以使每一个像素点均满足三通道。
57.需要说明的是,后续实施例将会对将原始图像的每个像素点的通道补充完整的具体实施过程进行详细的介绍,此处暂不说明。
58.因此,在本技术实施例中,将初始分辨率的输入图像分离为多张单通道图像,并对经过缩放处理后的单通道图像进行拼接,然后将拼接得到的原始图像恢复为多通道的图
像,得到的目标图像即为满足目标分辨率的图像。其中,由于在拼接以及恢复为多通道的过程中,可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
59.下面对上述步骤s102的具体实施过程进行介绍。请参照图4,图4为本技术实施例提供的上述步骤s102的具体实施方式的流程图,上述步骤s102可以包括如下内容:
60.步骤s401:根据目标分辨率、初始分辨率以及单通道图像的总数计算缩放率。
61.步骤s402:根据缩放率对单通道图像进行缩放处理,得到缩放图像。
62.具体的,可以根据目标分辨率、初始分辨率以及单通道图像的总数计算缩放率。其中,缩放率可以包括一个数值,例如:放大两倍;或者,缩放率也可以包括两个数值,例如:分别为水平缩放率以及垂直缩放率。
63.举例来说,假设目标分辨率为c
×
d、初始分辨率为a
×
e、单通道图像的总数为4,则水平缩放率可以根据如下公式计算得到:
[0064][0065]
垂直缩放率可以根据如下公式计算得到:
[0066][0067]
在计算得到缩放率之后,若上述缩放率大于1,则说明需要对单通道图像进行放大;若上述缩放率小于1,则说明需要对单通道图像进行缩小。下面以缩放率包括水平缩放率以及垂直缩放率为例,对上述步骤s402的具体实施方式进行详细的介绍。
[0068]
作为一种实施方式,在上述缩放率大于1时,可以通过插值的方式增大单通道图像的分辨率。此时,上述步骤s402具体可以包括如下内容:
[0069]
针对单通道图像中的至少一个图像单元,若待插入像素点的总数量m支持均匀插值,则将m个待插入像素点均匀地插入到图像单元中的每两个原始像素点之间。
[0070]
若待插入像素点的总数量m不支持均匀插值,则将n个待插入像素点均匀地插入到图像单元中的每两个原始像素点之间。
[0071]
计算插入n个待插入像素点后,图像单元中每两个相邻的像素点之间的待插入像素值。
[0072]
将待插入像素值与原始像素点的像素值构成的折线之间的距离,将计算出的距离中最小的m-n个距离对应的待插入像素值作为m-n个待插入像素点的像素点,并将m-n个待插入像素点插入到与最小的m-n个距离对应的像素点之间。其中,原始像素点指在未进行插值前,单通道图像中的像素点。
[0073]
其中,n为小于m的正整数,m-n+1小于图像单元中的原始像素点的个数,一个图像单元可以为单通道图像中的一行或者一列。待插入像素点的总数量m可以根据缩放率以及单通道图像中一个图像单元内的像素点的数量决定。
[0074]
举例来说,当一个图像单元内的原始像素点的数量为3,水平缩放率为时,针对单通道图像中的一行,待插入像素点的总数量m=2。此时,由于m的大小与图像单元内的像素点的数量减1的大小相等,因此待插入像素点的总数量m支持均匀插值,可以直接将2个待插入像素点均匀地插入到图像单元中的每两个原始像素点之间,即每两个原始像素点之间恰
好插入一个像素点。
[0075]
再如,当一个图像单元内的原始像素点的数量为3,水平缩放率为时,针对单通道图像中的一行,待插入像素点的总数量m=3。此时,由于m的大小与图像单元内的像素点的数量减1的大小不相等,因此待插入像素点的总数量m不支持均匀插值,可以先将2个待插入像素点均匀地插入到图像单元中的每两个原始像素点之间,然后计算插入2个待插入像素点后,图像单元中每两个相邻的像素点之间的待插入像素值(共四个),并将剩余的一个待插入像素点插入到四个待插入像素值中与原始像素点的像素值构成的折线之间的距离最小的待插入像素值对应的像素点之间。例如,根据第一个像素点与第二个像素点计算得到的待插入像素值与上述折线之间的距离最小,则将剩余的一个待插入像素点插入到第一个像素点以及第二个像素点之间。
[0076]
根据上述两个示例可以看出,在插值的过程中,尽可能保证均匀插值,除非实在无法均匀插值,可以对少量像素点采用非均匀插值。
[0077]
需要说明的是,在上述实施例中,插入的像素点的像素值可以根据与该插入的像素点相邻的两个像素点的像素值以及目标清晰度计算得到。进一步的,可以使越靠近图像单元的中心点的像素点的像素值在计算过程中所占的比重越大。这样,使得新插入的像素点更接近于中间值,采用这种非均匀过渡的方式可以有效减少过渡带,从而防止出现传统插值方式清晰度损失过大的情况,使得最终图片效果的清晰度较高。
[0078]
举例来说,当一个图像单元内的原始像素点的数量为3,水平缩放率为时,针对单通道图像中的一行,待插入像素点的总数量m=2,第一个待插入像素点插入第一个原始像素点与第二个原始像素点之间,其像素值可以根据如下公式确定:
[0079][0080]
其中,pixel2为第一个待插入像素点的像素值,α为目标清晰度,pixel1为第一个原始像素点的像素值,pixel3为第二个原始像素点的像素值。
[0081]
可以理解的是,一张单通道图像中的所有图像单元均可以采用上述实施方式中的插值方式进行放大;也可以部分图像单元采用上述实施方式中的插值方式进行放大、另外部分图像单元采用其他插值方式(例如:双线性插值法、双三次插值法等)进行放大,作为一种实施方式,可以单通道图像中的首行、首列、末行、末列采用上述实施方式中的插值方式进行放大,单通道图像中除了首行、首列、末行、末列的其他行以及其他列采用其他插值方式进行放大。这是由于,对于首行、首列、末行、末列中的像素点,其不存在完整的四个方向上的相邻像素点,因此无法采用其他插值方式进行插值。
[0082]
因此,在本技术实施例中,在需要对单通道图像进行放大的情况下,可以采用插值的方式对单通道图像进行缩放。其中,在计算待插入像素点对应的像素值时,可以根据相邻的两个像素点的像素值以及目标清晰度,从而可以降低插值过程中清晰度的损失;此外,针对不能均匀差值的待插入像素点,可以使其尽量在折线上或者折线的周围分布,以增大总体方差。
[0083]
作为另一种实施方式,在上述缩放率小于1时,可以通过删除部分像素点的方式减小单通道图像的分辨率的具体实施过程进行介绍。
[0084]
下面对将原始图像的每个像素点的通道补充完整的具体实施过程进行介绍。同样以步骤s101中获取到了四张单通道图像,且四张单通道图像包括两张第一类通道对应的图像、一张第二类通道对应的图像以及一张第三类通道对应的图像为例,此时,上述步骤s104具体可以包括如下内容:
[0085]
遍历原始图像中的第二像素点以及第三像素点,并确定以每个第二像素点或者第三像素点为中心点的处理窗口范围内的插值方向。
[0086]
根据插值方向以及处理窗口范围内的与第二像素点或者第三像素点相关的像素点的像素值,计算第二像素点或者第三像素点在第一通道上的像素值,得到第一中间图像。
[0087]
遍历第一中间图像中的与第二像素点位置对应的第四像素点以及与第三像素点位置对应的第五像素点,并确定以每个第四像素点或者第五像素点为中心点的处理窗口范围内的插值方向。
[0088]
根据插值方向以及处理窗口范围内的与第四像素点或者第五素点相关的像素点的像素值,计算第四像素点在第三通道上的像素值或者第五像素点在第二通道上的像素值,得到第二中间图像。
[0089]
遍历第二中间图像中的与第一像素点位置对应的第六像素点,并确定以每个第六像素点为中心点的处理窗口范围内的插值方向。
[0090]
根据插值方向以及处理窗口范围内的与第六像素点相关的像素点的像素值的,计算第六像素点在第二通道以及第三通道上的像素值,得到目标图像。
[0091]
具体的,为了便于叙述,将原始图像中像素值属于第一通道的像素点命名为第一像素点,将原始图像中像素值属于第二通道的像素点命名为第二像素点,将原始图像中像素值属于第三通道的像素点命名为第三像素点;将第一中间图像中像素值属于第一通道以及第二通道的像素点命名为第四像素点,将原始图像中像素值属于第一通道以及第三通道的像素点命名为第五像素点;将第二中间图像中像素值属于第一通道的像素点命名为第六像素点。
[0092]
在对原始图像的像素点的通道进行补充的过程中,可以循环遍历原始图像中的每一个像素点,其中,可以将遍历的过程分为三个过程:
[0093]
第一个过程,进行第一遍遍历,当遍历到原始图像中的第二像素点时,在该第二像素点处插入与第一通道对应的像素值;类似的,当遍历到原始图像中的第三像素点时,在该第三像素点处插入与第一通道对应的像素值;遍历完成所有的像素点后,得到第一中间图像;
[0094]
第二个过程,进行第二遍遍历,当遍历到第一中间图像中的第五像素点时,在该第四像素点处插入与第三通道对应的像素值;类似的,当遍历到第一中间图像中的第五像素点时,在该第五像素点处插入与第二通道对应的像素值;遍历完成所有的像素点后,得到第二中间图像;
[0095]
第三个过程,进行第三遍遍历,当遍历到第二中间图像中的第六像素点时,在该第六像素点处插入与第二通道对应的像素值以及与第三通道对应的像素值;遍历完成所有的像素点后,得到目标图像。
[0096]
在上述三个过程中,当遍历到一个像素点时,首先可以确定以该像素点为中心点的处理窗口范围内的插值方向,然后根据上述插值方向以及处理窗口范围内的与该像素点
相关的像素点的像素值,插入的像素值。
[0097]
作为一种实施方式,在第一个过程以及第二个过程中,确定插值方向的步骤具体可以包括如下内容:
[0098]
计算处理窗口范围内的水平方向梯度以及垂直方向梯度。
[0099]
将水平方向梯度以及垂直方向梯度中较小的值对应的方向确定为插值方向。
[0100]
其中,由于在处理窗口范围内,第二像素点的水平方向以及垂直方向存在与第一类通道对应的像素点,因此可以根据上述与第一类通道对应的像素点的像素值计算该第二像素点的水平方向梯度以及垂直方向梯度。
[0101]
同样的,由于在处理窗口范围内,第三像素点的水平方向以及垂直方向存在与第一类通道对应的像素点,因此可以根据上述与第一类通道对应的像素点的像素值计算该第三像素点的水平方向梯度以及垂直方向梯度。
[0102]
同样的,由于在处理窗口范围内,第六像素点的水平方向以及垂直方向存在与第二类通道以及第三类通道对应的像素点,因此可以根据上述与第二类通道以及第三类通道对应的像素点的像素值计算该第六像素点的水平方向梯度以及垂直方向梯度。
[0103]
作为另一种实施方式,在第三个过程中,确定插值方向的步骤具体可以包括如下内容:
[0104]
计算处理窗口范围内的两个对角线方向梯度。
[0105]
将两个对角线方向梯度中较小的值对应的方向确定为插值方向。
[0106]
其中,由于在处理窗口范围内,第四像素点的水平方向以及垂直方向不存在与第三类通道对应的像素点,但是对角线方向存在与第三类通道对应的像素点,因此可以根据上述与第三类通道对应的像素点的像素值计算该第四像素点的水平方向梯度以及垂直方向梯度。
[0107]
同样的,由于在处理窗口范围内,第五像素点的水平方向以及垂直方向不存在与第二类通道对应的像素点,但是对角线方向存在与第二类通道对应的像素点,因此可以根据上述与第二类通道对应的像素点的像素值计算该第五像素点的水平方向梯度以及垂直方向梯度。
[0108]
需要说明的是,在根据插值方向以及处理窗口范围内的与该像素点相关的像素点的像素值计算该像素点在其他通道上的像素值之后,可以判断计算得到的像素值是否在一定的像素值范围之内,如果计算得到的像素值不在上述像素值范围之内,则可以取该范围的边界作为该像素点在其他通道上的像素值,从而避免计算得到的像素值与整张图像的像素值差距较大,导致图像清晰度较低。
[0109]
此外,本技术实施例对处理窗口范围以及像素值范围的大小均不作具体的限定,例如:处理窗口范围可以为5
×
5大小的范围、6
×
6大小的范围等;像素值范围可以为0-255、与该像素点相邻的像素点中的最小值至与该像素点相邻的像素点中的最大值等。本领域技术人员可以根据实际情况进行合适的调整。
[0110]
可以理解的是,对于原始图像中位于图像边缘的像素点,以该像素点为中心时处理窗口范围内的像素点不完整,此时可以采用补零的方式补全像素点(即将不存在的像素点对应的像素值置零)或者采用对称映射的方式补全像素点(即根据不存在的像素点与存在的像素点的对称关系,将存在的像素点的像素值映射为对应的不存在的像素点的像素
值)。
[0111]
下面举例对上述步骤s104的具体实施过程进行介绍。
[0112]
假设第一类通道为绿色通道,第二类通道为红色通道,第三类通道为蓝色通道;处理窗口范围可以为5
×
5大小的范围。
[0113]
请参照图5及图6,图5为本技术实施例的一种处理窗口范围内的像素点的示意图,图6为本技术实施例的另一种处理窗口范围内的像素点的示意图。其中,包括斜线的方块代表缩放后的第一图像中的像素点、包括竖线的方块代表缩放后的第二图像中的像素点、包括横线的方块代表缩放后的第三图像中的像素点;从第一行第一个像素点开始编号为00至最后一行最后一个像素点编号为44。
[0114]
在第一遍遍历的过程中,当遍历到图5中的像素点22时,由于像素点22为第一像素点,因此应该插入与绿色通道对应的像素值。其中,计算与绿色通道对应的像素值的过程如下:
[0115]
首先,根据如下公式计算像素点22的水平方向梯度:
[0116]
gradh=abs(r
22-r
20
)+abs(r
22-r
24
)+abs(r
20-g
21
)+abs(g
21-r
22
)+abs(r
22-g
23
)+abs(g
23-r
24
);
[0117]
其中,gradh为像素点22的水平方向梯度,r
22
为像素点22与红色通道对应的像素值,r
20
为像素点20与红色通道对应的像素值,r
24
为像素点24与红色通道对应的像素值,g
21
为像素点21与绿色通道对应的像素值,g
23
为像素点23与绿色通道对应的像素值。
[0118]
然后,根据如下公式计算像素点22的垂直方向梯度:
[0119]
gradv=abs(r
22-r
02
)+abs(r
22-r
42
)+abs(r
02-g
12
)+abs(g
12-r
22
)+abs(r
22-g
32
)+abs(g
32-r
42
);
[0120]
其中,gradv为像素点22的水平方向梯度,r
02
为像素点02与红色通道对应的像素值,r
42
为像素点42与红色通道对应的像素值,g
12
为像素点12与绿色通道对应的像素值,g
32
为像素点32与绿色通道对应的像素值。
[0121]
接下来,比较上述水平方向梯度以及垂直方向梯度。
[0122]
若水平方向梯度小于垂直方向梯度,则根据如下公式计算像素点22与绿色通道对应的像素值:
[0123][0124]
其中,interpg为像素点22与绿色通道对应的像素值。
[0125]
此时,如若计算得到的像素值在[min(g
21
,g
23
),max(g
21
,g
23
)]范围之内,则确定插入的像素值为;若计算得到的像素值小于min(g
21
,g
23
),则确定插入的像素值为min(g
21
,g
23
);若计算得到的像素值大于max(g
21
,g
23
),则确定插入的像素值为max(g
21
,g
23
)。
[0126]
若水平方向梯度大于垂直方向梯度,则根据如下公式计算像素点22与绿色通道对应的像素值:
[0127][0128]
此时,如若计算得到的像素值在[min(g
12
,g
32
),max(g
12
,g
32
)]范围之内,则确定插入的像素值为;若计算得到的像素值小于min(g
12
,g
32
),则确定插入的像素值为min(g
12
,g32
);若计算得到的像素值大于max(g
12
,g
32
),则确定插入的像素值为max(g
12
,g
32
)。
[0129]
在第二遍遍历的过程中,当遍历到图5中的像素点22时,由于像素点22为第四像素点,因此应该插入与蓝色通道对应的像素值。其中,计算与蓝色通道对应的像素值的过程如下:
[0130]
首先,根据如下公式计算像素点22的45
°
方向梯度:
[0131]
grad
45
=abs(r
22-r
00
)+abs(r
22-r
44
)+abs(r
00-g
11
)+abs(g
11-r
22
)+abs(r
22-g
33
)+abs(g
33-r
44
);
[0132]
其中,grad
45
为像素点22的45
°
方向梯度,r
22
为像素点22与红色通道对应的像素值,r
00
为像素点00与红色通道对应的像素值,r
44
为像素点44与红色通道对应的像素值,g
11
为像素点11与绿色通道对应的像素值,g
33
为像素点33与绿色通道对应的像素值。
[0133]
然后,根据如下公式计算像素点22的135
°
方向梯度:
[0134]
grad
135
=abs(r
22-r
04
)+abs(r
22-r
40
)+abs(r
04-g
13
)+abs(g
13-r
22
)+abs(r
22-g
31
)+abs(g
31-r
40
);
[0135]
其中,grad
135
为像素点22的135
°
方向梯度,r
04
为像素点04与红色通道对应的像素值,r
40
为像素点40与红色通道对应的像素值,g
14
为像素点14与绿色通道对应的像素值,g
31
为像素点31与绿色通道对应的像素值。
[0136]
接下来,比较上述45
°
方向梯度以及135
°
方向梯度。
[0137]
若45
°
方向梯度小于135
°
方向梯度,则根据如下公式计算像素点22与蓝色通道对应的像素值:
[0138][0139]
其中,interpb为像素点22与蓝色通道对应的像素值。
[0140]
此时,如若计算得到的像素值在[min(b
11
,b
33
),max(s
11
,b
33
)]范围之内,则确定插入的像素值为;若计算得到的像素值小于min(b
11
,b
33
),则确定插入的像素值为min(b
11
,b
33
);若计算得到的像素值大于max(b
11
,b
33
),则确定插入的像素值为max(b
11
,b
33
)。
[0141]
若45
°
方向梯度大于135
°
方向梯度,则根据如下公式计算像素点22与蓝色通道对应的像素值:
[0142][0143]
此时,如若计算得到的像素值在[min(b
13
,b
31
),max(b
13
,b
31
)]范围之内,则确定插入的像素值为;若计算得到的像素值小于min(b
13
,b
31
),则确定插入的像素值为min(b
13
,b
31
);若计算得到的像素值大于max(b
13
,b
31
),则确定插入的像素值为max(b
13
,b
31
)。
[0144]
在第三遍遍历的过程中,当遍历到图6中的像素点22时,由于像素点22为第六像素点,因此应该插入红色通道对应的像素值以及与蓝色通道对应的像素值。其中,计算与红色通道对应的像素值的过程如下:
[0145]
首先,根据如下公式计算像素点22的水平方向梯度:
[0146]
gradh=abs(g
22-g
20
)+abs(g
22-g
24
)+abs(g
20-g
21
)+abs(g
21-g
22
)+abs(g
22-g
23
)+abs(g
23-g
24
);
[0147]
其中,gradh为像素点22的水平方向梯度,g
22
为像素点22与绿色通道对应的像素
值,g
20
为像素点20与绿色通道对应的像素值,g
24
为像素点24与绿色通道对应的像素值,g
21
为像素点21与绿色通道对应的像素值,g
23
为像素点23与绿色通道对应的像素值。
[0148]
然后,根据如下公式计算像素点22的垂直方向梯度:
[0149]
gradv=abs(g
22-g
02
)+abs(g
22-g
42
)+abs(g
02-g
12
)+abs(g
12-g
22
)+abs(g
22-g
32
)+abs(g
32-g
42
);
[0150]
其中,gradv为像素点22的垂直方向梯度,g
02
为像素点02与绿色通道对应的像素值,g
42
为像素点42与绿色通道对应的像素值,g
12
为像素点12与绿色通道对应的像素值,g
32
为像素点32与绿色通道对应的像素值。
[0151]
接下来,比较上述水平方向梯度以及垂直方向梯度。
[0152]
若水平方向梯度小于垂直方向梯度,则根据如下公式计算像素点22与蓝色通道对应的像素值:
[0153][0154]
其中,interpr为像素点22与蓝色通道对应的像素值。
[0155]
此时,如若计算得到的像素值在[min(r
21
,r
23
),max(r
21
,r
23
)]范围之内,则确定插入的像素值为;若计算得到的像素值小于min(r
21
,r
23
),则确定插入的像素值为min(r
21
,r
23
);若计算得到的像素值大于max(r
21
,r
23
),则确定插入的像素值为max(r
21
,r
23
)。
[0156]
若水平方向梯度大于垂直方向梯度,则根据如下公式计算像素点22与蓝色通道对应的像素值:
[0157][0158]
此时,如若计算得到的像素值在[min(r
12
,r
32
),max(r
12
,r
32
)]范围之内,则确定插入的像素值为;若计算得到的像素值小于min(r
12
,r
32
),则确定插入的像素值为min(r
12
,r
32
);若计算得到的像素值大于max(r
12
,r
32
),则确定插入的像素值为max(r
12
,r
32
)。
[0159]
经过上述三次遍历,最终可以得到三通道的目标图像。
[0160]
需要说明的是,上述示例仅对部分像素点的插值方式进行了介绍,可以理解的是,本领域技术人员在上述示例的基础上,可以采用类似的实现方式对其他的像素点的插值方式进行计算,此处不再赘述。
[0161]
因此,在本技术实施例中,通过依次对原始图像中的包括属于单通道像素值的像素点进行遍历,并插入其他通道的像素值,可以根据原始图像还原得到多通道图像,由于在插入的过程中可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
[0162]
此外,本技术实施例提供的图像处理方法可以应用在超分辨率方案中,也就是说,可以利用本技术实施例提供的图像处理方法提高图像分辨率。
[0163]
请参照图7,图7为本技术实施例提供的一种图像处理装置的结构框图,该图像处理装置700可以包括:获取模块701,用于获取输入图像包含的多张单通道图像;缩放模块702,用于根据目标分辨率以及所述输入图像对应的初始分辨率分别对所述多张单通道图像进行缩放处理,得到对应的多张缩放图像;其中,所述目标分辨率大于所述初始分辨率;拼接模块703,用于将所述多张缩放图像进行拼接,得到单通道的原始图像;其中,所述原始
图像的分辨率为所述目标分辨率;生成模块704,用于根据所述原始图像中每个像素点的像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与所述输入图像的通道数相同的目标图像。
[0164]
在本技术实施例中,将初始分辨率的输入图像分离为多张单通道图像,并对经过缩放处理后的单通道图像进行拼接,然后将拼接得到的原始图像恢复为多通道的图像,得到的目标图像即为满足目标分辨率的图像。其中,由于在拼接以及恢复为多通道的过程中,可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
[0165]
进一步的,所述通道包括第一类通道、第二类通道以及第三类通道,所述多张单通道图像包括两张第一类通道对应的第一图像、一张第二类通道对应的第二图像以及一张第三类通道对应的第三图像。
[0166]
进一步的,所述拼接模块703具体用于:将缩放后的第一图像、缩放后的第二图像以及缩放后的第三图像中同一位置处的像素点拼接为所述原始图像中对应位置处的像素块;其中,每个像素块包括四个像素点,每个像素块中的一条对角线上的两个像素点分别为所述缩放后的第二图像、所述缩放后的第三图像在该位置处的像素点,另一条对角线上的两个像素点均为所述缩放后的第一图像在该位置处的像素点。
[0167]
在本技术实施例中,通过拼接的过程,将缩放后的单通道图像拼接为原始图像,从而可以引入足够的非线性,因此可以提高生成的目标图像的清晰度。
[0168]
进一步的,所述原始图像中像素值属于第一通道的像素点为第一像素点,所述原始图像中像素值属于第二通道的像素点为第二像素点,所述原始图像中像素值属于第三通道的像素点为第三像素点;所述生成模块704具体用于:遍历所述原始图像中的第二像素点以及第三像素点,并确定以每个第二像素点或者第三像素点为中心点的处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第二像素点或者所述第三像素点相关的像素点的像素值,计算所述第二像素点或者所述第三像素点在第一通道上的像素值,得到第一中间图像;遍历所述第一中间图像中的与所述第二像素点位置对应的第四像素点以及与所述第三像素点位置对应的第五像素点,并确定以每个第四像素点或者第五像素点为中心点的所述处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第四像素点或者所述第五素点相关的像素点的像素值,计算所述第四像素点在第三通道上的像素值或者所述第五像素点在第二通道上的像素值,得到第二中间图像;遍历所述第二中间图像中的与所述第一像素点位置对应的第六像素点,并确定以每个第六像素点为中心点的所述处理窗口范围内的插值方向;根据所述插值方向以及所述处理窗口范围内的与所述第六像素点相关的像素点的像素值的,计算所述第六像素点在第二通道以及第三通道上的像素值,得到所述目标图像。
[0169]
在本技术实施例中,通过依次对原始图像中的包括属于单通道像素值的像素点进行遍历,并插入其他通道的像素值,可以根据原始图像还原得到多通道图像,由于在插入的过程中可以引入足够的非线性,因此可以提高生成的目标图像的清晰度;同时,由于无需进行大量的训练等运算过程,因此可以降低整个过程的计算量。
[0170]
进一步的,所述生成模块704还用于:计算所述处理窗口范围内的水平方向梯度以及垂直方向梯度;将所述水平方向梯度以及所述垂直方向梯度中较小的值对应的方向确定
为所述插值方向。
[0171]
进一步的,所述生成模块704还用于:计算所述处理窗口范围内的两个对角线方向梯度;将所述两个对角线方向梯度中较小的值对应的方向确定为所述插值方向。
[0172]
进一步的,所述缩放模块702具体用于:根据所述目标分辨率、所述初始分辨率以及所述单通道图像的总数计算缩放率;根据所述缩放率对所述单通道图像进行缩放处理,得到所述缩放图像。
[0173]
在本技术实施例中,在对单通道图像进行缩放处理的过程中,可以根据目标分辨率以及初始分辨率计算对应的缩放率,以根据缩放率对单通道图像进行合适的缩放。
[0174]
进一步的,在所述缩放率大于1时,所述缩放模块还702用于:针对所述单通道图像中的至少一个图像单元,若待插入像素点的总数量m支持均匀插值,则将m个待插入像素点均匀地插入到所述图像单元中的每两个原始像素点之间;若待插入像素点的总数量m不支持均匀插值,则将n个待插入像素点均匀地插入到所述图像单元中的每两个原始像素点之间;其中,n为小于m的正整数,m-n+1小于所述图像单元中的原始像素点的个数;计算插入所述n个待插入像素点后,所述图像单元中每两个相邻的像素点之间的待插入像素值;将所述待插入像素值与所述原始像素点的像素值构成的折线之间的距离,将计算出的距离中最小的m-n个距离对应的待插入像素值作为m-n个待插入像素点的像素点,并将m-n个待插入像素点插入到与所述最小的m-n个距离对应的像素点之间。
[0175]
在本技术实施例中,在需要对单通道图像进行放大的情况下,可以采用插值的方式对单通道图像进行缩放。其中,在计算待插入像素点对应的像素值时,可以根据相邻的两个像素点的像素值以及目标清晰度,从而可以降低插值过程中清晰度的损失;此外,针对不能均匀差值的待插入像素点,可以使其尽量在折线上或者折线的周围分布,以增大总体方差。
[0176]
进一步的,在所述缩放率大于1时,所述缩放模块702还用于:在所述单通道图像上的像素点之间插入像素点;其中,插入的像素点的像素值根据与所述插入的像素点相邻的两个像素点的像素值以及目标清晰度计算得到,且越靠近所述单通道图像中的图像单元的中心点的像素值在计算过程中所占的比重越大。
[0177]
进一步的,所述图像单元包括以下至少一个对象:所述单通道图像中的首行、首列、末行以及末列。
[0178]
请参照图8,图8为本技术实施例提供的一种电子设备的结构框图,该电子设备800包括:至少一个处理器801,至少一个通信接口802,至少一个存储器803和至少一个通信总线804。其中,通信总线804用于实现这些组件直接的连接通信,通信接口802用于与其他节点设备进行信令或数据的通信,存储器803存储有处理器801可执行的机器可读指令。当电子设备800运行时,处理器801与存储器803之间通过通信总线804通信,机器可读指令被处理器801调用时执行上述图像处理方法。
[0179]
例如,本技术实施例的处理器801通过通信总线804从存储器803读取计算机程序并执行该计算机程序可以实现如下方法:步骤s101:获取输入图像包含的多张单通道图像。步骤s102:根据目标分辨率以及输入图像对应的初始分辨率分别对多张单通道图像进行缩放处理,得到对应的多张缩放图像。步骤s103:将多张缩放图像进行拼接,得到单通道的原始图像。其中,原始图像的分辨率为目标分辨率。步骤s104:根据原始图像中每个像素点的
像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与输入图像的通道数相同的目标图像。
[0180]
处理器801可以是一种集成电路芯片,具有信号处理能力。上述处理器801可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行本技术实施例中公开的各种方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0181]
存储器803可以包括但不限于随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。
[0182]
可以理解,图8所示的结构仅为示意,电子设备800还可包括比图8中所示更多或者更少的组件,或者具有与图8所示不同的配置。图8中所示的各组件可以采用硬件、软件或其组合实现。于本技术实施例中,电子设备800可以是,但不限于台式机、笔记本电脑、智能手机、智能穿戴设备、车载设备等实体设备,还可以是虚拟机等虚拟设备。另外,电子设备800也不一定是单台设备,还可以是多台设备的组合,例如服务器集群,等等。
[0183]
本技术实施例还提供一种计算机程序产品,包括存储在非暂态计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,计算机能够执行上述实施例中图像处理方法的步骤,例如包括:获取输入图像包含的多张单通道图像;根据目标分辨率以及所述输入图像对应的初始分辨率分别对所述多张单通道图像进行缩放处理,得到对应的多张缩放图像;其中,所述目标分辨率大于所述初始分辨率;将所述多张缩放图像进行拼接,得到单通道的原始图像;其中,所述原始图像的分辨率为所述目标分辨率;根据所述原始图像中每个像素点的像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与所述输入图像的通道数相同的目标图像。
[0184]
本技术实施例还公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:获取输入图像包含的多张单通道图像;根据目标分辨率以及所述输入图像对应的初始分辨率分别对所述多张单通道图像进行缩放处理,得到对应的多张缩放图像;其中,所述目标分辨率大于所述初始分辨率;将所述多张缩放图像进行拼接,得到单通道的原始图像;其中,所述原始图像的分辨率为所述目标分辨率;根据所述原始图像中每个像素点的像素值所属的通道以及与该像素点相关的像素点的像素值,计算该像素点在其他通道上的像素值,得到与所述输入图像的通道数相同的目标图像。
[0185]
在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可
以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0186]
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0187]
再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0188]
需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0189]
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
[0190]
以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1