CN103377463A - 一种滤镜处理的方法及装置 - Google Patents

一种滤镜处理的方法及装置 Download PDF

Info

Publication number
CN103377463A
CN103377463A CN2012101243124A CN201210124312A CN103377463A CN 103377463 A CN103377463 A CN 103377463A CN 2012101243124 A CN2012101243124 A CN 2012101243124A CN 201210124312 A CN201210124312 A CN 201210124312A CN 103377463 A CN103377463 A CN 103377463A
Authority
CN
China
Prior art keywords
convolution
image
row
mask
pixel
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.)
Granted
Application number
CN2012101243124A
Other languages
English (en)
Other versions
CN103377463B (zh
Inventor
姜德强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201210124312.4A priority Critical patent/CN103377463B/zh
Publication of CN103377463A publication Critical patent/CN103377463A/zh
Application granted granted Critical
Publication of CN103377463B publication Critical patent/CN103377463B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Abstract

本发明公开了一种滤镜处理的方法及装置,属于图像处理领域。所述方法包括:获取图像;根据预设的卷积半径R确定第一卷积模板和第二卷积模板,第一卷积模板和所述第二卷积模板中的矩阵元素均为K;根据第一卷积模板对图像的像素点bi,1进行水平方向的卷积运算,得到第一卷积和;根据第一卷积和计算第i行除bi,1之外的其他像素点的卷积和,生成第一图像;根据第二卷积模板对第一图像的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和;根据第二卷积和计算第j列除A1,j之外的其他像素点的卷积和,生成第二图像;根据第二图像和预设的卷积半径R得到滤镜处理后的图像。本发明降低了卷积过程中的冗余计算。

Description

一种滤镜处理的方法及装置
技术领域
本发明涉及图像处理领域,特别涉及一种滤镜处理的方法及装置。
背景技术
滤镜在图像处理中的使用是非常灵活的,熟练地使用滤镜可以实现图像的特殊表现效果,增强图像的表现能力。
现有滤镜处理图像时的卷积方式就是定义图像f(x),卷积模板是g(x),然后将卷积模版g(x)在图像f(x)中移动,每移动到一个位置,即一个像素点,就把f(x)与g(x)的定义域相交的元素进行乘积并且求和,得出一个新的像素点,把新得到的像素集合起来就是卷积后的图像,即滤镜处理后的图像。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:在相邻像素点的卷积过程中会存在重叠区域的卷积,使得卷积过程的冗余计算增多,降低了滤镜生成效率。
发明内容
为了降低卷积过程中的冗余计算,提高滤镜生成效率,本发明实施例提供了一种滤镜处理的方法及装置。所述技术方案如下:
一方面,提供了一种滤镜处理的方法,包括:
获取图像;
根据预设的卷积半径R确定第一卷积模板和第二卷积模板,所述第一卷积模板为1*(2R+1)的矩阵,所述第二卷积模板为(2R+1)*1的矩阵,所述第一卷积模板和所述第二卷积模板中的矩阵元素均为K,其中R和K均为自然数;
根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,其中i=1,2,、、、,N,N为所述图像对应的矩阵的最大行数;
根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和,生成第一图像;
根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,其中j=1,2,、、、,M,M为所述第一图像对应的矩阵的最大列数;
根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和,生成第二图像;
根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像。
另一方面,提供了一种滤镜处理的装置,包括:
获取模块,用于获取图像;
模板确定模块,用于根据预设的卷积半径R确定第一卷积模板和第二卷积模板,所述第一卷积模板为1*(2R+1)的矩阵,所述第二卷积模板为(2R+1)*1的矩阵,所述第一卷积模板和所述第二卷积模板中的矩阵元素均为K,其中R和K均为自然数;
水平卷积模块,用于根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,其中i=1,2,、、、,N,N为所述图像对应的矩阵的最大行数;
第一图像生成模块,用于根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和,生成第一图像;
垂直卷积模块,用于根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,其中j=1,2,、、、,M,M为所述第一图像对应的矩阵的最大列数;
第二图像生成模块,用于根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和,生成第二图像;
处理模块,用于根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像。
本发明实施例提供的技术方案带来的有益效果是:通过当第一卷积模板和第二卷积模板的元素均相同时,通过第一卷积模块对所述图像的每行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,再根据第一卷积和分别计算bi,1所在行除bi,1之外的其他像素点的卷积和,同理,可以根据第二卷积模板对所述第一图像的每列第1行的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,再根据第二卷积和分别计算A1,j所在列除A1,j之外的其他像素点的卷积和,也就是说水平方向和垂直方向的卷积运算均利用了已经计算出来的卷积和来实现后续相邻像素点卷积和的计算,避免了相邻像素点的卷积过程中对重叠区域的卷积运算,降低了卷积过程中的冗余计算,提高了滤镜生成效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1提供的一种滤镜处理的方法实施例的流程图;
图2是本发明实施例2提供的一种滤镜处理的方法实施例的流程图;
图3是本发明实施例3提供的一种滤镜处理的装置实施例的第一结构示意图;
图4是本发明实施例3提供的一种滤镜处理的装置实施例的第二结构示意图;
图5是本发明实施例3提供的一种滤镜处理的装置实施例的第三结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
参考图1,图1是本发明实施例1提供的一种滤镜处理的方法实施例的流程图;所述滤镜处理的方法包括:
S101:获取图像。
S102:根据预设的卷积半径R确定第一卷积模板和第二卷积模板,所述第一卷积模板为1*(2R+1)的矩阵,所述第二卷积模板为(2R+1)*1的矩阵,所述第一卷积模板和所述第二卷积模板中的矩阵元素均为K,其中R和K均为自然数。
S103:根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,其中i=1,2,、、、,N,N为所述图像对应的矩阵的最大行数。
S104:根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和,生成第一图像。
S105:根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,其中j=1,2,、、、,M,M为所述第一图像对应的矩阵的最大列数。
S106:根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和,生成第二图像。
S107:根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像。
本实施例中,当第一卷积模板和第二卷积模板的元素均相同时,通过第一卷积模块对所述图像的每行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,再根据第一卷积和分别计算bi,1所在行除bi,1之外的其他像素点的卷积和,同理,可以根据第二卷积模板对所述第一图像的每列第1行的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,再根据第二卷积和分别计算A1,j所在列除A1,j之外的其他像素点的卷积和,也就是说水平方向和垂直方向的卷积运算均利用了已经计算出来的卷积和来实现后续相邻像素点卷积和的计算,避免了相邻像素点的卷积过程中对重叠区域的卷积运算,降低了卷积过程中的冗余计算,提高了滤镜生成效率。
实施例2
参考图2,图2是本发明实施例2提供的一种滤镜处理的方法实施例的流程图;本实施例中所设计的卷积操作就是滤镜操作,不同的滤镜可能对应不同的卷积模板;其中滤镜是图像处理的处理效果,其在数学上是用卷积的方式实现的,也就是说滤镜是结果,卷积是实现方式。
所述滤镜处理的方法包括:
S201:获取图像。
本实施例所涉及的图像f(x)可以是一张张的图片,该图像f(x)上的像素点对应着图像f(x)的像素矩阵。
S202:根据预设的卷积半径R确定第一卷积模板和第二卷积模板。
本实施例中涉及的预设的卷积半径R为自然数,可以根据所述预设的卷积半径R来确定第一卷积模板和第二卷积模板,具体地,所述第一卷积模板为1*(2R+1)的矩阵,其中所述第一卷积模板用于水平方向的卷积运算;所述第二卷积模板为(2R+1)*1的矩阵,其中所述第二卷积模板用于垂直方向的卷积运算。所述第一卷积模板和所述第二卷积模板的元素均为K,其中K为自然数;优选的,所述第一卷积模板和所述第二卷积模板均为全1矩阵,即K=1。
例如,当R=1时,K=1时,所述第一卷积模板为[1,1,1],所述第二卷积模板为 1 1 1 .
S203:根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和。
此步骤中,具体地,获取所述第一卷积模板的卷积中心C1,R+1,其中,所述C1,R+1为所述第一卷积模板的第1行第(R+1)列的元素;将所述第一卷积模板覆盖在所述图像对应的像素矩阵上,使所述卷积中心C1,R+1与所述图像的第i行第1列的像素点bi,1重叠,其中i=1,2,、、、,N,N为所述图像对应的矩阵的最大行数;获取所述覆盖后的第一卷积模板与所述图像对应的像素矩阵的第一重叠区域,对所述第一重叠区域进行卷积运算,得到第一卷积和。
例如,当所述第一卷积模板为[1,1,1],所述图像对应的像素矩阵为 a 1 , a 2 , a 3 , a 4 b 1 , b 2 , b 3 , b 4 c 1 , c 2 , c 3 , c 4 d 1 , d 2 , d 3 , d 4 时,计算第1行第1列的像素点b1,1的第一卷积和A1,1的过程为:获取所述第一卷积模板的卷积中心C1,2;将所述第一卷积模板覆盖在所述图像对应的像素矩阵上,使所述第一卷积模板的卷积中心C1,2与所述图像的像素点b1,1重叠,此时所述第一卷积模板的C1,3与所述图像的像素点b1,2也重叠;获取所述覆盖后的第一卷积模板与所述图像对应的像素矩阵的第一重叠区域,对所述第一重叠区域进行卷积运算,即计算第一重叠区域对应元素的乘积和,如下所示:
A1,1=C1,2*b1,1+C1,3*b1,2=1*a1+1*a2=a1+a2
对于其他行第1列像素点的第一卷积和也按照上述方法进行计算,在此不再赘述。
S204:根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和,生成第一图像。
此步骤中,具体地,按照公式分别计算第i行除所述bi,1之外的其他像素点的卷积和,其中Ai,1为第一卷积和,
Figure BDA0000157174080000053
为第i行第j1列的像素点的卷积和,
Figure BDA0000157174080000055
为第i行第(j1+1)列的像素点
Figure BDA0000157174080000056
的卷积和,j1=1,2,、、、,M-1。
也就是说对于第1行而言,根据第一卷积和A1,1,按照公式
Figure BDA0000157174080000057
计算A1,2;再根据A1,2,按照公式计算A1,3;按照上述方法依次计算第1行后续其他像素点的卷积和;同理可以按照上述方法依次计算除第1行之外的其他行的像素点的卷积和,直至所述图像的全部像素点的卷积和计算完毕,生成第一图像,其中所述第一图像为 A 1,1 , A 1,2 , A 1,3 , A 1,4 A 2,1 , A 2,2 , A 2,3 , A 2,4 A 3,1 , A 3,2 , A 3,3 , A 3,4 A 4,1 , A 4,2 , A 4,3 , A 4,4 .
其中,当(j1-R)<1时,
Figure BDA00001571740800000510
当M>(j1-R)≥1时, 为所述图像的第i行第(j1-R)列的像素点;当(j1+R+1)≤M时,当(j1+R+1)>M时,
Figure BDA00001571740800000514
例如,当所述第一卷积模板为[1,1,1],所述图像对应的像素矩阵为 a 1 , a 2 , a 3 , a 4 b 1 , b 2 , b 3 , b 4 c 1 , c 2 , c 3 , c 4 d 1 , d 2 , d 3 , d 4 , A1,1=a1+a2时,计算第1行除b1,1之外的其他像素点的卷积和的过程为:
A1,2=A1,1-B1,0+B1,3=a1+a2-0+a3=a1+a2+a3
A1,3=A1,2-B1,1+B1,4=a1+a2+a3-a1+a4=a2+a3+a4
A1,4=A1,3-B1,2+B1,5=a2+a3+a4-a2+0=a3+a4
对于其他行而言,也按照上述方法计算所述图像对应的像素矩阵中每行中除第1列之外的其他像素点的卷积和,在此不再赘述。
S205:根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和。
此步骤中,具体地,获取所述第二卷积模板的卷积中心C′R+1,1,其中,所述C′R+1,1为所述第二卷积模板的第(R+1)行第1列的元素;将所述第二卷积模板覆盖在所述第一图像对应的像素矩阵上,使所述卷积中心C′R+1,1与所述第一图像的第1行第j列的像素点A1,j重叠,其中j=1,2,、、、,M,M为所述第一图像对应的矩阵的最大列数;获取所述覆盖后的第二卷积模板与第一图像对应的像素矩阵的第二重叠区域,对所述第二重叠区域进行卷积运算,得到第二卷积和。
例如,当所述第二卷积模板为 1 1 1 , 所述第一图像对应的像素矩阵为 A 1,1 , A 1,2 , A 1,3 , A 1,4 A 2,1 , A 2,2 , A 2,3 , A 2,4 A 3,1 , A 3,2 , A 3,3 , A 3,4 A 4,1 , A 4,2 , A 4,3 , A 4,4 时,计算第1列第1行的像素点A1,1的第二卷积和A′1,1的过程为:获取所述第二卷积模板的卷积中心C′2,1,将所述第二卷积模板覆盖在所述第一图像对应的像素矩阵上,使所述第二卷积模板的卷积中心C′2,1与所述第一图像的像素点A1,1重叠,此时所述第二卷积模板的C′3,1与所述第一图像的像素点A2,1也重叠;获取所述覆盖后的第二卷积模板与所述第一图像对应的像素矩阵的第二重叠区域,对所述第二重叠区域进行卷积运算,即计算第二重叠区域对应元素的乘积和,如下所示:
A′1,1=C′2,1*A1,1+C′3,1*A2,1=A1,1+A2,1
对于其他列第1行像素点的第二卷积和也按照上述方法进行计算,在此不再赘述。
S206:根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和,生成第二图像,根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像。
此步骤中,具体地,按照公式
Figure BDA0000157174080000063
分别计算第j列除所述A1,j之外的其他像素点的卷积和,其中A′1,j为第二卷积和,
Figure BDA0000157174080000071
为第i1行第j列的像素点
Figure BDA0000157174080000072
的卷积和,
Figure BDA0000157174080000073
为第(i1+1)行第j列的像素点
Figure BDA0000157174080000074
的卷积和;i1=1,2,、、、,N-1
也就是说对于第1列而言,根据第二卷积和A′1,1,按照公式
Figure BDA0000157174080000075
计算A′2,1;再根据A′2,1,按照公式
Figure BDA0000157174080000076
计算A′3,1;按照上述方法以此计算第1列后续其他像素点的卷积和;同理可以按照上述方法依次计算除第1列之外的其他列的像素点的卷积和,直至所述第一图像的全部像素点的卷积和计算完毕,生成第二图像,其中所述第二图像为 A 1,1 ′ , A 1,2 ′ , A 1,3 ′ A 1,4 ′ A 2,1 ′ , A 2,2 ′ , A 2,3 ′ , A 2,4 ′ A 3,1 ′ , A 3,2 ′ , A 3,3 ′ , A 3,4 ′ A 4,1 ′ , A 4,2 ′ , A 4,3 ′ , A 4,4 ′ .
其中,当(i1-R)<1时,当N>(i1-R)≥1时,
Figure BDA0000157174080000079
为所第一图像的第(i1-R)行第j列的像素点;当(i1+R+1)≤N时,
Figure BDA00001571740800000710
当(i1+R+1)>N时,
Figure BDA00001571740800000711
例如,当所述第二卷积模板为 1 1 1 , 所述第一图像对应的像素矩阵为 A 1,1 , A 1,2 , A 1,3 , A 1,4 A 2,1 , A 2,2 , A 2,3 , A 2,4 A 3,1 , A 3,2 , A 3,3 , A 3,4 A 4,1 , A 4,2 , A 4,3 , A 4,4 , A′1,1=A1,1+A2,1时,计算第1列除A1,1之外的其他像素点的卷积和的过程为:
A′2,1=A′1,1-B0,1+B3,1=A1,1+A2,1-0+A3,1=A1,1+A2,1+A3,1
A′3,1=A′2,1-B1,1+B4,1=A1,1+A2,1+A3,1-A1,1+A4,1=A2,1+A3,1+A4,1
A′4,1=A′3,1-B2,1+B5,1=A2,1+A3,1+A4,1-A2,1+0=A3,1+A4,1
对于其他列而言,页按照上述方法计算所述第一图像对应的像素矩阵中每列中除第1行之外的其他像素点的卷积和,在此不再赘述。
得到所述第二图像后,对第二图像对应的像素矩阵中的各个像素点均处以所述矩阵元素K,得到滤镜处理后的图像;如果K=1,即所述第一卷积模板和所述第二卷积模板均为全1矩阵,则所述第二图像即为滤镜处理后的图像。
对于所述图像对应的像素矩阵的行数和列数均很大时,可以先对像素矩阵进行分块处理,然后再对各个块按照S202-S206并行进行处理。
本实施例中,当第一卷积模板和第二卷积模板的元素均相同时,通过第一卷积模块对所述图像的每行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,再根据第一卷积和分别计算bi,1所在行除bi,1之外的其他像素点的卷积和,同理,可以根据第二卷积模板对所述第一图像的每列第1行的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,再根据第二卷积和分别计算A1,j所在列除A1,j之外的其他像素点的卷积和,也就是说水平方向和垂直方向的卷积运算均利用了已经计算出来的卷积和来实现后续相邻像素点卷积和的计算,避免了相邻像素点的卷积过程中对重叠区域的卷积运算,降低了卷积过程中的冗余计算,提高了滤镜生成效率。
实施例3
参考图3,图3是本发明实施例3提供的一种滤镜处理的装置实施例的第一结构示意图;
所述滤镜处理装置包括:
获取模块301,用于获取图像。
模板确定模块302,用于根据预设的卷积半径R确定第一卷积模板和第二卷积模板,所述第一卷积模板为1*(2R+1)的矩阵,所述第二卷积模板为(2R+1)*1的矩阵,所述第一卷积模板和所述第二卷积模板中的矩阵元素均为K,其中R和K均为自然数。
水平卷积模块303,用于根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,其中i=1,2,、、、,N,N为所述图像对应的矩阵的最大行数。
第一图像生成模块304,用于根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和,生成第一图像。
垂直卷积模块305,用于根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,其中j=1,2,、、、,M,M为所述第一图像对应的矩阵的最大列数。
第二图像生成模块306,用于根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和,生成第二图像。
处理模块307,用于根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像。
在一种实施方式中,所述第一图像生成模块304包括:第一计算单元3041,如图4所示,图4是本发明实施例3提供的一种滤镜处理的装置实施例的第二结构示意图;
所述第一计算单元3041,用于按照公式
Figure BDA0000157174080000081
分别计算第i行除所述bi,1之外的其他像素点的卷积和,其中,当(j1-R)<1时,
Figure BDA0000157174080000091
当M>(j1-R)≥1时,
Figure BDA0000157174080000092
Figure BDA0000157174080000093
为所述图像的第i行第(j1-R)列的像素点;当(j1+R+1)≤M时,当(j1+R+1)>M时,
Figure BDA0000157174080000095
Ai,1为第一卷积和,为第i行第j1列的像素点
Figure BDA0000157174080000097
的卷积和,为第i行第(j1+1)列的像素点的卷积和;j1=1,2,、、、,M-1。
在另一种实施方式中,所述第二图像生成模块306包括:第二计算单元3061,如图5所示,图5是本发明实施例3提供的一种滤镜处理的装置实施例的第三结构示意图;
所述第二计算单元3061,用于按照公式分别计算第j列除所述A1,j之外的其他像素点的卷积和,其中,当(i1-R)<1时,
Figure BDA00001571740800000911
当N>(i1-R)≥1时,
Figure BDA00001571740800000912
Figure BDA00001571740800000913
为所第一图像的第(i1-R)行第j列的像素点;当(i1+R+1)≤N时,
Figure BDA00001571740800000914
当(i1+R+1)>N时,
Figure BDA00001571740800000915
A′1,j为第二卷积和,为第i1行第j列的像素点
Figure BDA00001571740800000917
的卷积和,
Figure BDA00001571740800000918
为第(i1+1)行第j列的像素点
Figure BDA00001571740800000919
的卷积和;i1=1,2,、、、,N-1。
在上述实施方式的基础上,所述水平卷积模块303包括:
第一获取单元,用于获取所述第一卷积模板的卷积中心C1,R+1,其中,所述C1,R+1为所述第一卷积模板的第1行第(R+1)列的元素。
第一覆盖单元,用于将所述第一卷积模板覆盖在所述图像对应的像素矩阵上,使所述卷积中心C1,R+1与所述图像的第i行第1列的像素点bi,1重叠。
第一计算单元,用于获取所述覆盖后的第一卷积模板与所述图像对应的像素矩阵的第一重叠区域,对所述第一重叠区域进行卷积运算。
所述垂直卷积模块305包括:
第二获取单元,用于获取所述第二卷积模板的卷积中心C′R+1,1,其中,所述C′R+1,1为所述第二卷积模板的第(R+1)行第1列的元素。
第二覆盖单元,用于将所述第二卷积模板覆盖在所述第一图像对应的像素矩阵上,使所述卷积中心C′R+1,1与所述第一图像的第1行第j列的像素点A1,j重叠。
第二计算单元,用于获取所述覆盖后的第二卷积模板与第一图像对应的像素矩阵的第二重叠区域,对所述第二重叠区域进行卷积运算。
所述处理模块307包括:
第三计算单元,用于将所述第二图像的各个像素点均除以所述矩阵元素K,得到滤镜处理后的图像。
本实施例中,当第一卷积模板和第二卷积模板的元素均相同时,通过第一卷积模块对所述图像的每行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,再根据第一卷积和分别计算bi,1所在行除bi,1之外的其他像素点的卷积和,同理,可以根据第二卷积模板对所述第一图像的每列第1行的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,再根据第二卷积和分别计算A1,j所在列除A1,j之外的其他像素点的卷积和,也就是说水平方向和垂直方向的卷积运算均利用了已经计算出来的卷积和来实现后续相邻像素点卷积和的计算,避免了相邻像素点的卷积过程中对重叠区域的卷积运算,降低了卷积过程中的冗余计算,提高了滤镜生成效率。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种滤镜处理的方法,其特征在于,包括:
获取图像;
根据预设的卷积半径R确定第一卷积模板和第二卷积模板,所述第一卷积模板为1*(2R+1)的矩阵,所述第二卷积模板为(2R+1)*1的矩阵,所述第一卷积模板和所述第二卷积模板中的矩阵元素均为K,其中R和K均为自然数;
根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,其中i=1,2,、、、,N,N为所述图像对应的矩阵的最大行数;
根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和,生成第一图像;
根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,其中j=1,2,、、、,M,M为所述第一图像对应的矩阵的最大列数;
根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和,生成第二图像;
根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和包括:
按照公式分别计算第i行除所述bi,1之外的其他像素点的卷积和,其中,当(j1-R)<1时,
Figure FDA0000157174070000012
当M>(j1-R)≥1时,
Figure FDA0000157174070000014
为所述图像的第i行第(j1-R)列的像素点;当(j1+R+1)≤M时,
Figure FDA0000157174070000015
当(j1+R+1)>M时,
Figure FDA0000157174070000016
Ai,1为第一卷积和,为第i行第j1列的像素点
Figure FDA0000157174070000018
的卷积和,为第i行第(j1+1)列的像素点
Figure FDA00001571740700000110
的卷积和;j1=1,2,、、、,M-1。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和包括:
按照公式
Figure FDA00001571740700000111
分别计算第j列除所述A1,j之外的其他像素点的卷积和,其中,当(i1-R)<1时,
Figure FDA00001571740700000112
当N>(i1-R)≥1时,
Figure FDA00001571740700000114
为所第一图像的第(i1-R)行第j列的像素点;当(i1+R+1)≤N时,
Figure FDA00001571740700000115
当(i1+R+1)>N时,A′1,j为第二卷积和,
Figure FDA00001571740700000117
为第i1行第j列的像素点
Figure FDA00001571740700000118
的卷积和,
Figure FDA00001571740700000119
为第(i1+1)行第j列的像素点
Figure FDA00001571740700000120
的卷积和;i1=1,2,、、、,N-1。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算包括:
获取所述第一卷积模板的卷积中心C1,R+1,其中,所述C1,R+1为所述第一卷积模板的第1行第(R+1)列的元素;
将所述第一卷积模板覆盖在所述图像对应的像素矩阵上,使所述卷积中心C1,R+1与所述图像的第i行第1列的像素点bi,1重叠;
获取所述覆盖后的第一卷积模板与所述图像对应的像素矩阵的第一重叠区域,对所述第一重叠区域进行卷积运算。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算包括:
获取所述第二卷积模板的卷积中心C′R+1,1,其中,所述C′R+1,1为所述第二卷积模板的第(R+1)行第1列的元素;
将所述第二卷积模板覆盖在所述第一图像对应的像素矩阵上,使所述卷积中心C′R+1,1与所述第一图像的第1行第j列的像素点A1,j重叠;
获取所述覆盖后的第二卷积模板与第一图像对应的像素矩阵的第二重叠区域,对所述第二重叠区域进行卷积运算。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像包括:
将所述第二图像的各个像素点均除以所述矩阵元素K,得到滤镜处理后的图像。
7.一种滤镜处理的装置,其特征在于,包括:
获取模块,用于获取图像;
模板确定模块,用于根据预设的卷积半径R确定第一卷积模板和第二卷积模板,所述第一卷积模板为1*(2R+1)的矩阵,所述第二卷积模板为(2R+1)*1的矩阵,所述第一卷积模板和所述第二卷积模板中的矩阵元素均为K,其中R和K均为自然数;
水平卷积模块,用于根据所述第一卷积模板对所述图像的第i行第1列的像素点bi,1进行水平方向的卷积运算,得到第一卷积和,其中i=1,2,、、、,N,N为所述图像对应的矩阵的最大行数;
第一图像生成模块,用于根据所述第一卷积和计算第i行除所述bi,1之外的其他像素点的卷积和,生成第一图像;
垂直卷积模块,用于根据所述第二卷积模板对所述第一图像的第1行第j列的像素点A1,j进行垂直方向的卷积运算,得到第二卷积和,其中j=1,2,、、、,M,M为所述第一图像对应的矩阵的最大列数;
第二图像生成模块,用于根据所述第二卷积和计算第j列除所述A1,j之外的其他像素点的卷积和,生成第二图像;
处理模块,用于根据所述第二图像和所述预设的卷积半径R得到滤镜处理后的图像。
8.根据权利要求7所述的装置,其特征在于,所述第一图像生成模块包括:
第一计算单元,用于按照公式
Figure FDA0000157174070000031
分别计算第i行除所述bi,1之外的其他像素点的卷积和,其中,当(j1-R)<1时,
Figure FDA0000157174070000032
当M>(j1-R)≥1时,
Figure FDA0000157174070000033
Figure FDA0000157174070000034
为所述图像的第i行第(j1-R)列的像素点;当(j1+R+1)≤M时,
Figure FDA0000157174070000035
当(j1+R+1)>M时,
Figure FDA0000157174070000036
Ai,1为第一卷积和,为第i行第j1列的像素点
Figure FDA0000157174070000038
的卷积和,
Figure FDA0000157174070000039
为第i行第(j1+1)列的像素点的卷积和;j1=1,2,、、、,M-1。
9.根据权利要求7所述的装置,其特征在于,所述第二图像生成模块包括:
第二计算单元,用于按照公式
Figure FDA00001571740700000311
分别计算第j列除所述A1,j之外的其他像素点的卷积和,其中,当(i1-R)<1时,
Figure FDA00001571740700000312
当N>(i1-R)≥1时,
Figure FDA00001571740700000314
为所第一图像的第(i1-R)行第j列的像素点;当(i1+R+1)≤N时,
Figure FDA00001571740700000315
当(i1+R+1)>N时,
Figure FDA00001571740700000316
A′1,j为第二卷积和,
Figure FDA00001571740700000317
为第i1行第j列的像素点
Figure FDA00001571740700000318
的卷积和,为第(i1+1)行第j列的像素点
Figure FDA00001571740700000320
的卷积和;i1=1,2,、、、,N-1。
10.根据权利要求7-9任一项所述的装置,其特征在于,所述水平卷积模块包括:
第一获取单元,用于获取所述第一卷积模板的卷积中心C1,R+1,其中,所述C1,R+1为所述第一卷积模板的第1行第(R+1)列的元素;
第一覆盖单元,用于将所述第一卷积模板覆盖在所述图像对应的像素矩阵上,使所述卷积中心C1,R+1与所述图像的第i行第1列的像素点bi,1重叠;
第一计算单元,用于获取所述覆盖后的第一卷积模板与所述图像对应的像素矩阵的第一重叠区域,对所述第一重叠区域进行卷积运算。
11.根据权利要求7-9任一项所述的装置,其特征在于,所述垂直卷积模块包括:
第二获取单元,用于获取所述第二卷积模板的卷积中心C′R+1,1,其中,所述C′R+1,1为所述第二卷积模板的第(R+1)行第1列的元素;
第二覆盖单元,用于将所述第二卷积模板覆盖在所述第一图像对应的像素矩阵上,使所述卷积中心C′R+1,1与所述第一图像的第1行第j列的像素点A1,j重叠;
第二计算单元,用于获取所述覆盖后的第二卷积模板与第一图像对应的像素矩阵的第二重叠区域,对所述第二重叠区域进行卷积运算。
12.根据权利要求7-9任一项所述的装置,其特征在于,所述处理模块包括:
第三计算单元,用于将所述第二图像的各个像素点均除以所述矩阵元素K,得到滤镜处理后的图像。
CN201210124312.4A 2012-04-25 2012-04-25 一种滤镜处理的方法及装置 Active CN103377463B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210124312.4A CN103377463B (zh) 2012-04-25 2012-04-25 一种滤镜处理的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210124312.4A CN103377463B (zh) 2012-04-25 2012-04-25 一种滤镜处理的方法及装置

Publications (2)

Publication Number Publication Date
CN103377463A true CN103377463A (zh) 2013-10-30
CN103377463B CN103377463B (zh) 2017-11-14

Family

ID=49462532

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210124312.4A Active CN103377463B (zh) 2012-04-25 2012-04-25 一种滤镜处理的方法及装置

Country Status (1)

Country Link
CN (1) CN103377463B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104918044A (zh) * 2014-03-14 2015-09-16 腾讯科技(深圳)有限公司 图像处理方法及装置
CN105279727A (zh) * 2014-07-08 2016-01-27 腾讯科技(深圳)有限公司 图像处理方法及装置
CN108307088A (zh) * 2017-10-09 2018-07-20 腾讯科技(深圳)有限公司 一种图像处理方法、装置、系统和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090097545A1 (en) * 2007-10-14 2009-04-16 Nokia Corporation Fixed-Point Implementation of an Adaptive Image Filter with High Coding Efficiency
CN101763627A (zh) * 2008-12-12 2010-06-30 新奥特(北京)视频技术有限公司 一种高斯模糊的实现方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090097545A1 (en) * 2007-10-14 2009-04-16 Nokia Corporation Fixed-Point Implementation of an Adaptive Image Filter with High Coding Efficiency
CN101763627A (zh) * 2008-12-12 2010-06-30 新奥特(北京)视频技术有限公司 一种高斯模糊的实现方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
杨继业等: "计算二维数字卷积的重叠相加法研究", 《工程数学学报》 *
贾君霞: "一种改进的实信号快速卷积算法", 《电气电子教学学报》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104918044A (zh) * 2014-03-14 2015-09-16 腾讯科技(深圳)有限公司 图像处理方法及装置
CN104918044B (zh) * 2014-03-14 2019-05-17 腾讯科技(深圳)有限公司 图像处理方法及装置
CN105279727A (zh) * 2014-07-08 2016-01-27 腾讯科技(深圳)有限公司 图像处理方法及装置
CN105279727B (zh) * 2014-07-08 2019-08-06 腾讯科技(深圳)有限公司 图像处理方法及装置
CN108307088A (zh) * 2017-10-09 2018-07-20 腾讯科技(深圳)有限公司 一种图像处理方法、装置、系统和存储介质

Also Published As

Publication number Publication date
CN103377463B (zh) 2017-11-14

Similar Documents

Publication Publication Date Title
CN102156975B (zh) 基于支撑值变换和多尺度冗余字典学习的自然图像去噪方法
CN103907109B (zh) 为图像处理目的用滤波器应用卷积的快速数值逼近
CN103985085A (zh) 图像超分辨率放大的方法和装置
CN107845086A (zh) 一种皮革表面显著性缺陷的检测方法、系统及装置
CN104285239A (zh) 图像处理装置、图像处理方法、程序、印刷介质以及记录介质
CN112419152B (zh) 一种图像超分辨率方法、装置、终端设备和存储介质
CN105513014A (zh) 一种多帧图像超分辨率重建方法及其重建系统
CN113421187B (zh) 一种超分辨率重建方法、系统、存储介质、设备
CN103377463A (zh) 一种滤镜处理的方法及装置
US20190035120A1 (en) Method And System For Automated Generation Of Constrained Curves In Computer Graphics
CN106778347A (zh) 一种基于三角函数的矢栅地理数据可逆脱密方法
CN112183517B (zh) 证卡边缘检测方法、设备及存储介质
CN107133978A (zh) 基于一致点漂移算法的三维非刚体点云配准方法
CN106709898A (zh) 一种图像融合方法及装置
CN103440618A (zh) 基于块的纹理合成方法和装置
CN104616265B (zh) 一种遥感序列数据的时域重建方法
CN112837420B (zh) 基于多尺度和折叠结构的兵马俑点云的形状补全方法及系统
CN100371942C (zh) 对具有条形结构的图像进行滤波的方法
CN102509258B (zh) 矩形窗口中椭圆曲线的快速裁剪方法
CN104794682A (zh) 一种基于变换域的图像插值方法与装置
CN111260723A (zh) 棒材的质心定位方法及终端设备
CN107680058A (zh) Ct图像去噪中基于格林空间的固定滞后平滑滤波方法
CN115170916B (zh) 一种多尺度特征融合的图像重建方法及系统
CN116844192B (zh) 一种低质量指纹图像的增强处理方法
CN103455975B (zh) 合成孔径雷达图像边缘增强的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant