一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图像放大方法、模块、系统与流程

2021-11-03 14:41:00 来源:中国专利 TAG:


1.本发明涉及图像处理领域,尤其涉及一种图像放大技术。


背景技术:

2.现今往往利用与待插值点上下左右四个方向上邻近的源像素点(共四个源像素点)进行双线性插值计算,以对目标图像进行插值放大,但当放大倍数较大时,所得放大图像中低频边界处锯齿现象明显,高频处较模糊,故为保证放大图像的图像质量,现有图像放大方法仅适用于放大倍数低于8倍的场景。


技术实现要素:

3.本发明针对现有技术中图像放大方法在放大倍数较大时,所得放大图像质量较差的缺点,提供了一种能够提高放大图像清晰度的图像放大方法。
4.为了解决上述技术问题,本发明通过下述技术方案得以解决:
5.一种图像放大方法,包括以下步骤:
6.获取目标图像,配置放大方向和放大倍数,所述放大方向为垂直方向或水平方向;
7.基于所述放大方向对所述目标图像进行加边处理(使用邻近的行和列进行加边处理),获得相应的源图像,所述源图像包括若干源像素数据,各源像素数据沿所述放大方向排列;
8.本技术中,基于关联像素数据的数量进行加边,如关联像素数据的数量为2m时,按照放大方向对所述目标图像的上下两边(或左右两边)分别增加m行或列的像素数据;
9.基于所述放大方向、所述放大倍数和所述源像素数据,计算获得相应的拉伸图像。
10.本技术适用于图像拉伸及图像放大等场景;
11.所述拉伸图像包括若干重构像素数据,基于所述放大方向、所述放大倍数和所述源像素数据依次计算各重构像素数据,计算当前重构像素数据的步骤为:
12.提取相位数据和关联像素数据,所述关联像素数据为与所述当前重构像素数据在所述放大方向上邻近的至少4个源像素数据;
13.所述相位数据用于表示重构像素数据与其各关联像素数据的位置分布关系,具体详见附图1,本技术以该相位数据为依据,为各关联像素数据进行权值分配,由于关联像素数据的数量至少为4,其不仅包含像素信息(即,像素值),还能提供像素的变化信息,从而有效提高图像质量。
14.基于所述相位数据和所述放大倍数对各关联像素数据进行加权计算,获得相应的加权像素数据;
15.基于所述加权像素数据和放大倍数计算获得当前重构像素数据;
16.基于所述放大倍数和所述相位数据,对下一个重构像素数据的相位数据进行预测,获得相位预测数据;
17.基于相位预测数据判断当前重构像素数据的关联像素数据与下一个重构像素数
据所对应的关联像素数据是否一致,获得相应的判断结果;
18.基于所述判断结果更新所述关联像素数据,还基于所述判断结果和所述相位预测数据更新所述相位数据。
19.本技术中基于相位预测数据进行更新判断,能够自动对关联像素数据和相位数据进行更新,在基于放大方向对拉伸图像的各重构像素数据进行计算的过程中,无需于源图像中找寻每一个重构像素数据的关联像素数据,亦无需计算重构像素数据与各关联像素数据的距离,大大缩减了计算量。
20.作为一种可实施方式:
21.所述放大倍数包括放大倍数分子和放大倍数分母,即所述放大倍数分子和放大倍数分母互为质数;
22.本技术中用分数表示放大倍数,使得在一维数据放大过程中,以分子参数为参考将放大前图像样点的距离数值化,以分母参数为参考将放大后图像样点的距离数值化,以数值化的放大前图像样点为坐标,即可描绘出放大后图像样点的位置,从而可计算出放大后图像样点与其邻近的放大前图像样点的相位关系,参照图1,图1中五角星指示放大后的图像样点,圆点指示放大前的图像样点,d表示分母参数,n表示分子参数,phi表示相位数据。
23.所述关联像素数据的数量为4,依次为第一关联像素数据、第二关联像素数据、第三关联像素数据和第四关联像素数据;
24.当关联像素数据较少时,如现有的双线性插值算法中在放大方向上仅采用两个邻近的源像素点进行计算,所得放大图像的质量差;
25.当关联像素数据过多时,与当前重构数据距离较远的源像素数据将会成为干扰数据,影响当前重构数据的准确性。
26.现有技术中往往基于待插值点的位置,从目标图像中提取与该待插值点相邻近的像素点,再基于所提取的像素点的坐标,计算待插值点与像素点的距离,最后基于距离的比例,基于各像素点的像素值,计算获得待插值点的像素值。
27.故关联像素数据越多,计算量越大,计算所需用时越长。
28.本技术中通过对相位数据和权重计算公式的设计,以相位数据为依据,计算各关联像素数据所对应权重,以达到精确地将图像放大到任意倍数的目的。
29.计算上述各关联像素数据所对应权重的公式为:
30.t1=n

phi;
31.t2=phi;
[0032][0033]
p1=t1‑
p0;
[0034][0035]
p2=t2‑
p3;
[0036]
其中,n表示放大倍数分子,phi表示当前重构像素数据的相位数据,p0为第一关联像素数据所对应的权重,p1为第二关联像素数据所对应的权重,p2为第三关联像素数据所对
应的权重,p3为第三关联像素数据所对应的权重,t1和t2为中间参数,“*”表示乘法运算。
[0037]
关联像素数据与对应权重相乘后,获得相应的加权像素数据,对各加权像素数据求和后,除以放大倍数分子,获得相应的重构像素数据。
[0038]
本技术通过上述权重公式的设计,保证所得拉伸图像的图像质量,在大倍数放大场景下,仍保证低频边界不出现锯齿,高频区域不模糊。
[0039]
作为一种可实施方式:
[0040]
当判断结果为不一致时,基于放大倍数和相位预测数据更新相位数据,还基于滑动窗口机制更新关联像素数据,上述滑动窗口的步长为1,滑动方向为放大方向。
[0041]
当判断结果为一致时,基于相位预测数据更新相位数据。
[0042]
作为一种可实施方式:
[0043]
计算放大倍数分母和当前重构像素数据的相位数据的和,获得相位预测数据;
[0044]
当所述相位预测数据大于等于所述放大倍数分子时,所述判断结果为不一致,否则所述判断结果为一致;
[0045]
当判断结果为不一致时,利用所述相位预测数据和放大倍数分子的差,更新所述相位数据。
[0046]
作为一种可实施方式:
[0047]
当所述当前重构像素数据为放大方向上第一个重构像素数据时,相对应的相位数据为初始相位数据;
[0048]
当放大倍数大于1时,初始相位数据为0.5*n,当放大倍数等于1时,初始相位数据为n,其中n为放大倍数分子。
[0049]
作为一种可实施方式:
[0050]
当放大方向为垂直方向时,所述源像素数据和所述重构像素数据为像素行;
[0051]
当放大方向为水平方向时,所述源像素数据和所述重构像素数据为像素列。
[0052]
作为一种可实施方式:
[0053]
当放大方向为垂直方向时,将拉伸图像的像素行与目标图像的像素行的比例,作为相应的放大倍数;
[0054]
当放大方向为水平方向时,将拉伸图像的像素列与目标图像的像素列的比例,作为相应的放大倍数。
[0055]
本技术还提出一种图像放大模块,包括:
[0056]
获取单元,用于获取目标图像,还用于配置放大方向和放大倍数,所述放大方向为垂直方向或水平方向;
[0057]
预处理单元,用于基于所述放大方向对所述目标图像进行加边处理(使用邻近的行和列进行加边处理),获得相应的源图像,所述源图像包括沿所述放大方向依次排列的若干源像素数据;
[0058]
一维放大单元,用于基于所述放大方向、所述放大倍数和所述源像素数据,计算获得相应的拉伸图像,所述拉伸图像包括若干个重构像素数据;
[0059]
作为一种可实施方式:
[0060]
所述一维放大单元,用于基于所述放大方向、所述放大倍数和所述源像素数据,计算各重构像素数据,其包括:提取单元,用于提取相位数据和关联像素数据,所述关联像素
数据为与所述当前重构像素数据在所述放大方向上邻近的至少4个源像素数据;
[0061]
计算单元,用于基于所述相位数据和所述放大倍数对各关联像素数据进行加权计算,获得相应的加权像素数据;还用于基于所述加权像素数据和放大倍数计算获得当前重构像素数据;
[0062]
预测单元,用于基于所述放大倍数和所述相位数据,对下一个重构像素数据的相位数据进行预测,获得相位预测数据;
[0063]
更新判断单元,用于基于相位预测数据判断当前重构像素数据的关联像素数据与下一个重构像素数据所对应的关联像素数据是否一致,获得相应的判断结果;
[0064]
更新单元,用于基于所述判断结果更新所述关联像素数据,还基于所述判断结果和所述相位预测数据更新所述相位数据。
[0065]
本技术还提出一种图像放大方法,用于对目标图像在水平方向和垂直方向上进行放大,包括以下步骤:
[0066]
获取原始图像,并配置垂直放大倍数和水平放大倍数;
[0067]
基于所述垂直放大倍数对所述原始图像进行垂直放大,获得拉伸图像,垂直放大的方法采用上述任意一项所述的方法;
[0068]
基于所述水平放大倍数对所述拉伸图像进行水平放大,获得相应的放大图像,水平方法的方法采用上述任意一项所述的方法。
[0069]
本技术将二维图像放大拆解成垂直方向和水平方向两个一维放大,简化图像放大实现过程;
[0070]
由于在垂直放大过程中需要对源图像中的像素行数据进行加权,而在硬件电路实现中,需要行buffer存储作为关联像素数据的像素行数据,像素行数据越大,所需使用的存储空间越大,电路资源成本越高,故本技术中先进行垂直放大,再对相应的拉伸图像进行多的水平放大,能够在实际应用时,降低成本。
[0071]
本技术还提出一种图像放大系统,包括:
[0072]
配置模块,用于获取原始图像,并配置垂直放大倍数和水平放大倍数;
[0073]
垂直放大模块,用于基于所述垂直放大倍数对所述原始图像进行垂直放大,获得拉伸图像;
[0074]
水平放大模块,用于基于所述水平放大倍数对所述拉伸图像进行水平放大,获得相应的放大图像;
[0075]
所述垂直放大模块和所述水平放大模块均采用上述图像放大模块。
[0076]
本发明由于采用了以上技术方案,具有显著的技术效果:
[0077]
本发明通过获取当前重构像素数据的相位数据和关联像素数据,以相位数据为依据,为各关联像素数据分配权重以获得相应的拉伸图像,且在放大倍数大于8倍时,所得拉伸图像仍保证低频边界无锯齿,高频区域不模糊。
附图说明
[0078]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以
[0103][0104]
p2=t2‑
p3[0105]
上式中,p0至p3为权重,t1和t2为中间参数。
[0106]
s133、获取关联像素数据;
[0107]
将源图像中第i0行源数据作为第一关联像素数据,则获得的第一关联像素数据至第四关联数据对应源图像的第i0至i0 3行数据。
[0108]
当i=1时,i0=1,即,关联像素数据为源图像的第1~4行数据。
[0109]
当i>1时,通过提取计算第i

1行重构像素数据过程中更新i0的取值。
[0110]
s134、加权计算,计算公式为:
[0111][0112]
其中,img_temp(i,:)表示第i行重构像素数据,img_in(i0,:)表示第一关联像素数据,img_in(i0 1,:)表示第二关联像素数据,img_in(i0 2,:)表示第三关联像素数据,img_in(i0 3,:)表示第四关联像素数据,其中i0的取值范围为1~h 1。
[0113]
注:关联像素数据与对应权重的乘积为相应的加权像素数据。
[0114]
s135、数据更新:
[0115]
计算相位预测数据phi
0y
,phi
0y
=phi
y
d
y

[0116]
将相位预测数据phi
0y
与放大倍数分子n
y
进行比较;
[0117]
当phi
0y
≥n
y
时:
[0118]
令,i0=i0 1,即第一关联像素数据至第四关联像素数据在源图像中对应的行序号依次加1,位置下移一行,更新关联像素数据。
[0119]
且将phi
y
=phi
0y

n
y
,将相位预测数据和放大倍数分子的差作为下一行重构像素数据的相位值。
[0120]
当phi
0y
<n
y
时:
[0121]
i0不变,即,不更新关联像素数据;
[0122]
phi
y
=phi
0y
,即,将相位预测数据作为下一行重构像素数据的相位值。
[0123]
本实施例所公开的图像放大方法,能够将目标图像在垂直方向上进行任意倍数的放大。
[0124]
实施例2、一种图像放大方法,基于水平方向对目标图像进行一维放大,包括以下步骤:
[0125]
s210、数据获取:
[0126]
获取目标图像,配置放大方向和放大倍数,本实施例中放大方向为水平方向,放大倍数大于1;
[0127]
配置放大倍数的方法为:
[0128]
获取放大前的列数w,即目标图像中像素列的数量w;
[0129]
获取放大后的列数w,即相应的拉伸图像中像素列的数量w;
[0130]
对进行约分,将所得最简分数作为放大倍数,由此可见,本实施例中放大倍
数分子为n
x
,放大倍数分母为d
x

[0131]
s220、预处理:
[0132]
采用目标图像的第一列像素列,于目标图像左侧(第一列像素列坐在的一侧)进行两行加边,同时采用目标图像最后一列像素列,于目标图像右侧进行两列加边,获得相应的源图像。
[0133]
参照图1,图1指示水平放大过程中,将3列像素数据放大两倍,获得6列重构像素数据的原理示意图;
[0134]
图1中五角星指示重构像素数据,圆点指示源像素数据,其中圆点2至圆点4为表示目标图像的像素列,圆点0和圆点1为圆点2的加边,圆点5和圆点6为圆点4的加边;图1中d表示放大倍数分母d
x
,n表示放大倍数分子n
x
,本实施例通过相邻重构像素数据的距离和相邻源像素数据的距离表示图像放大的比例。
[0135]
s230、水平放大:
[0136]
从左至右依次计算拉伸图像中像素列对应的像素数据,即重构像素数据,计算第j列重构像素数据的步骤如下:
[0137]
s231、获取第j列重构像素数据的相位数据phi
x

[0138]
以图1中第1个五角星所对应的像素列作为当前重构像素数据时,与其最邻近的源像素数据如图1中圆点1所示,在计算该当前重构像素数据时,以图1中phi作为相位数据对圆点0至圆点3对应的源像素数据进行权值分配。
[0139]
当j=1时,phi
x
=n
x
/2,即图1中phi的值1。
[0140]
当j>1时,提取计算第j

1个重构像素数据过程中更新后的phi
x
;。
[0141]
s232、权重计算;
[0142]
为与实施例1中垂直方法过程中的权重相区别,本实施例中利用k0至k3表示权重系数,计算公式如下:
[0143]
t1=n
x

phi
x t2=phi
x
[0144][0145]
k1=t1‑
k0[0146][0147]
k2=t2‑
k3[0148]
上式中,t1和t2为中间参数。
[0149]
s233、获取关联像素数据;
[0150]
将源图像中第j0列源数据作为第一关联像素数据,则获得的第一关联像素数据至第四关联数据对应源图像的第j0至j0 3列数据。
[0151]
当j=1时,j0=1,即对应的关联像素数据为源图像的第1~4列数据;
[0152]
当j>1时,通过提取计算第j

1行重构像素数据过程中更新j0的取值。
[0153]
参照图1,每个重构像素数据由4个源像素数据加权计算得到,即,具有4个关联像素数据,其中第一个重构像素数据的关联像素数据为圆点0~3所指示的源像素数据;第2~3个重构像素数据的关联像素数据为圆点1~4所指示的源像素数据;第4~5个重构像素数
据的关联像素数据均为圆点2~5所指示的源像素数据;第6个重构像素数据的关联像素数据为圆点3~6所指示的源像素数据。
[0154]
s234、加权计算,计算公式为:
[0155][0156]
其中,img_out(:,j)表示相应的拉伸图像中第j列的像素数据,即第j列的重构像素数据,img_temp(:,j0)表示第一关联像素数据,img_temp(:,j0 1)表示第二关联像素数据,img_temp(:,j0 2)表示第三关联像素数据,img_temp(:,j0 3)表示第四关联数据,其中j0的取值范围为1~w 1。
[0157]
s235、数据更新:
[0158]
参照图1,各重构像素数据之间的间隔相同,且各源像素数据之间的间隔亦相同,故可按照其之间的规律,确定与重构像素数据最邻近的源像素数据,并可根据重构像素数据与其最邻近点的位置关系,获悉该重构像素数据的关联像素数据,本实施例具体基于以下步骤实现相位和关联像素数据自动更新:
[0159]
计算相位预测数据phi
0x
,phi
0x
=phi
x
d
x

[0160]
将相位预测数据phi
0x
与放大倍数分子n
x
进行比较;
[0161]
当phi
0x
≥n
x
时:
[0162]
令,j0=j0 1,即第一关联像素数据至第四关联像素数据在源图像中对应的列序号依次加1,位置右移一列,更新关联像素数据。
[0163]
且将phi
x
=phi
0x

n
x
,将相位预测数据和放大倍数分子的差作为下一行重构像素数据的相位值。
[0164]
当phi
0x
<n
x
时:
[0165]
j0不变,即,不更新关联像素数据;
[0166]
phi
x
=phi
0x
,即,将相位预测数据作为当前像素行中下一点重构像素数据的相位值。
[0167]
本实施例所公开的图像放大方法,能够将目标图像在水平方向上进行任意倍数的放大。
[0168]
实施例3、一种图像放大方法,其用于对目标图像在垂直方向和水平方向上的放大,参照图2,包括以下步骤:
[0169]
获取原始图像(尺寸为h
×
w),并配置垂直放大倍数和水平放大倍数
[0170]
将所述原始图像代替实施例1中的目标图像进行垂直放大,获得相应的拉伸图像(尺寸为h
×
w);
[0171]
将所得拉伸图像代替实施例2中的目标图像进行水平放大,获得相应的放大图像(尺寸为h
×
w)。
[0172]
本实施例中将二维图像的放大步骤拆解成垂直方向和水平方向两个一维放大,简化图像放大实现过程,且将放大倍数以分数形式表示,支持图像任意倍数放大,并采用4点加权插值算法,保证所得放大图像的图像质量;
[0173]
图3为现有技术中基于双线性插值算法将图像放大8倍后所得的放大图像,图4为
按照本实施例所公开的方法将图像放大8倍后所得的放大图像,对比可知,基于本实施例所公开方法放大所得的图像低频边界处未出现锯齿,且高频区域更清晰。
[0174]
注:基于本实施例所公开的放大方法,在将图像放大10倍、20倍以及更高时,亦能保证图像质量,但由于现有图像放大工具中仅支持放大8倍,故为便于比较放大效果,仅提供放大8倍的效果图。
[0175]
实施例3、图像放大模块,包括:
[0176]
获取单元100,用于获取目标图像,还用于配置放大方向和放大倍数,所述放大方向为垂直方向或水平方向,所述放大倍数大于等于1;
[0177]
预处理单元200,用于基于所述放大方向对所述目标图像进行加边处理(使用邻近的行和列进行加边处理),获得相应的源图像,所述源图像包括沿所述放大方向依次排列的若干源像素数据;
[0178]
一维放大单元300,用于基于所述放大方向、所述放大倍数和所述源像素数据,计算获得相应的拉伸图像,所述拉伸图像包括若干个重构像素数据;
[0179]
所述一维放大单元300,用于基于所述放大方向、所述放大倍数和所述源像素数据,计算各重构像素数据,其包括:
[0180]
提取单元310,用于提取相位数据和关联像素数据,所述关联像素数据为与当前重构像素数据在所述放大方向上邻近的至少4个源像素数据;
[0181]
计算单元320,用于基于所述相位数据和所述放大倍数对各关联像素数据进行加权计算,获得相应的加权像素数据;还用于基于所述加权像素数据和放大倍数计算获得当前重构像素数据;
[0182]
预测单元330,用于基于所述放大倍数和所述相位数据,对下一个重构像素数据的相位数据进行预测,获得相位预测数据;
[0183]
更新判断单元340,用于基于相位预测数据判断当前重构像素数据的关联像素数据与下一个重构像素数据所对应的关联像素数据是否一致,获得相应的判断结果;
[0184]
更新单元350,用于基于所述判断结果更新所述关联像素数据,还基于所述判断结果和所述相位预测数据更新所述相位数据。
[0185]
本实施例是实施例1和实施例2所对应的装置实施例,由于其与实施例1和实施例2基本相似,所以描述的比较简单,相关之处参见实施例1和实施例2的部分说明即可。
[0186]
实施例4、一种图像放大系统,包括:
[0187]
配置模块,用于获取原始图像,并配置垂直放大倍数和水平放大倍数;
[0188]
垂直放大模块,用于基于所述垂直放大倍数对所述原始图像进行垂直放大,获得拉伸图像;
[0189]
水平放大模块,用于基于所述水平放大倍数对所述拉伸图像进行水平放大,获得相应的放大图像;
[0190]
所述垂直放大模块和所述水平放大模块均采用实施例3所公开的图像放大模块。
[0191]
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0192]
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0193]
本发明是参照根据本发明的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0194]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0195]
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0196]
需要说明的是:
[0197]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0198]
此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同。凡依本发明专利构思所述的构造、特征及原理所做的等效或简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献