CN106303153A - 一种图像处理方法及装置 - Google Patents

一种图像处理方法及装置 Download PDF

Info

Publication number
CN106303153A
CN106303153A CN201510288746.1A CN201510288746A CN106303153A CN 106303153 A CN106303153 A CN 106303153A CN 201510288746 A CN201510288746 A CN 201510288746A CN 106303153 A CN106303153 A CN 106303153A
Authority
CN
China
Prior art keywords
pixel value
point
image
tracing point
points
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
CN201510288746.1A
Other languages
English (en)
Other versions
CN106303153B (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 CN201510288746.1A priority Critical patent/CN106303153B/zh
Publication of CN106303153A publication Critical patent/CN106303153A/zh
Application granted granted Critical
Publication of CN106303153B publication Critical patent/CN106303153B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明实施例提供一种图像处理方法及装置,其中的方法可包括:获取待处理的图像,并捕获所述图像上的轨迹选择操作;根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。本发明可根据实时轨迹选择操作以及输入像素值灵活地对图像进行更新,更新图像多样化。

Description

一种图像处理方法及装置
技术领域
本发明涉及计算机技术领域,具体涉及一种图像处理方法及装置。
背景技术
随着图像处理技术的发展,往往会针对图像作一些图像处理以达到更新图像的视觉效果,例如,在图像中绘制烟花,从而更新图像的视觉效果。现有技术在图像中进行图像处理以更新图像视觉效果时,都是采用固定的图像更新方式,即是预先设定了在图像中需要进行预更新的目标像素点以及更新像素值,当需要进行图像更新时,直接将目标像素点更新为预先设定的更新像素值。例如,在图像中进行图像处理以绘制烟花效果时,则是基于粒子系统进行模拟,仅仅支持输出固定参数的烟花效果,即每次所输出的烟花效果相同。这种图像处理方式所输出的更新图像比较固定,无法根据实时输入参数灵活对图像进行更新。
发明内容
本发明实施例提供一种图像处理方法及装置,可根据轨迹选择操作以及输入像素值灵活地对图像进行更新,更新图像多样化。
本发明第一方面提供一种图像处理方法,可包括:
获取待处理的图像,并捕获所述图像上的轨迹选择操作;
根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;
将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;
将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。
本发明第二方面提供一种图像处理装置,可包括:
获取模块,用于获取待处理的图像,并捕获所述图像上的轨迹选择操作;
确定模块,用于根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;
计算模块,用于将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;
更新输出模块,用于将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。
实施本发明实施例,具有如下有益效果:
本发明实施例,获取待处理的图像,并捕获图像上的轨迹选择操作,根据轨迹选择操作的起点和终点,确定在图像中预更新像素值的目标像素点,将目标像素点在图像中对应的原始像素值与输入像素值进行融合计算,获得目标像素点的更新像素值,将目标像素点的像素值由原始像素值更新为更新像素值,并且输出更新出来后的图像。这种方式可以根据图像中的轨迹选择操作确定需要更新的目标像素点,并且可以根据输入像素值确定更新像素值,因此可以灵活地对图像进行更新,更新图像多样化。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种实体执行环境示意图;
图2为本发明实施例提供的一种图像处理方法的流程图;
图3为本发明实施例提供的另一种图像处理方法的流程图;
图4为本发明实施例提供的一种烟花绘制流程示意图;
图5为本发明实施例提供的一种图像处理装置的结构示意图;
图6为本发明实施例提供的一种确定模块的结构示意图;
图7为本发明实施例提供的一种获取单元的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例的图像处理方法可以应用于用户利用智能手机、个人电脑、个人数字助手等终端在图像中绘制更新图像的应用场景中,例如在图像中实时绘制烟花。
请参照图1,为本发明实施例提供的一种实体执行环境示意图;如图所示,本发明实施例中的图像处理装置包括输入设备1000;输出设备2000;处理器3000,例如CPU;和存储器4000,上述输入设备1000、输出设备2000、处理器3000和存储器4000通过总线5000连接。
其中,上述输入设备1000具体可为终端的触摸屏或者鼠标,用于捕获轨迹选择操作。
上述输出设备2000具体可为终端的显示屏,用于输出原始图像或更新处理后的图像。
上述存储器4000可以是高速RAM存储器,也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。上述存储器4000用于存储一组程序代码,上述输入设备1000、输出设备2000和处理器3000用于调用存储器4000中存储的程序代码,执行如下操作:
上述输出设备2000,用于获取待处理的图像,并且显示该图像;
上述输入设备1000,用于捕获所述图像上的轨迹选择操作;
上述处理器3000,用于根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;
上述处理器3000还用于将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;
上述输出设备2000,用于将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。
上述根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点步骤,包括:
计算所述轨迹选择操作的起点到终点之间的至少两个第一轨迹点;
针对每一个所述第一轨迹点,确定以所述第一轨迹点为圆心预设半径区域内的至少两个随机点;
根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点。
上述根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点步骤,包括:
针对每一个所述第一轨迹点,将所述第一轨迹点与所述第一轨迹点对应的至少两个随机点中每个随机点组成遍历点对;
针对每一个所述遍历点对,计算由所述第一轨迹点到所述随机点之间的至少两个第二轨迹点;
以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点;
将所有遍历点对中各个第二轨迹点对应的随机点确定为所述图像中预更新像素值的目标像素点。
上述以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点步骤,包括:
以所述至少两个第二轨迹点中每个第二轨迹点为圆心,预设常量为半径,组成所述图像中的多个选取区域;
从所述选取区域中随机选取至少两个像素点作为该选取区域的第二轨迹点对应的随机点。
上述将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值步骤,包括:
分别将所述目标像素点在所述图像中对应的原始像素值的三个颜色通道的分量与输入像素值的三个颜色通道的分量做融合计算,从而获得所述目标像素点的更新像素值中该颜色通道的颜色分量。
上述输出更新处理后的所述图像步骤,包括:
在预设时间内输出更新处理后的所述图像。
下面将结合附图2-附图4,对本发明实施例提供的图像处理方法进行详细介绍。
请参照图2,为本发明实施例提供的一种图像处理方法的流程图;该方法可包括以下步骤S100-步骤S103。
S100,获取待处理的图像,并捕获所述图像上的轨迹选择操作;
具体实施例中,待处理的图像可以是背景图像,具体可选的,待处理的图像可以是用户输入的二维图像,将所获取的待处理的图像进行显示,用户可以对图像进行轨迹选择操作,例如可以是对触摸显示屏的触摸轨迹选择操作,也可以是鼠标选择轨迹操作。实时捕获在图像上的轨迹选择操作。具体的捕获方法可以是每隔预设时间捕获一次图像上的轨迹选择操作,并且每次捕获的轨迹选择操作均有起点和终点。需要说明的是,预设时间较小时,下一次捕获的轨迹选择操作的起点可以是上一次轨迹选择操作的终点,对于每一次轨迹选择操作,均可以进行后续的图像更新处理。
S101,根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;
具体实施例中,根据轨迹选择操作的起点和终点,可以确定图像中预更新像素值的目标像素点,具体的确定方法可以是,假设轨迹选择操作的起点为S(x,y),终点为E(x,y),则基于Bresenham(高效画线)算法得到一组第一轨迹点:a0(x,y),a1(x,y),a2(x,y)…an(x,y)(个数为n+1),然后根据随机算法计算分别以ai(i=0,1,2…n)为圆心,预设半径区域内的多个随机点b0(x,y),b1(x,y),b2(x,y),…bm(个数为m+1),再将每一个ai(i=0,1,2…n)与该ai对应的多个随机点中每一个随机点组成遍历点对,例如,对于a1,则将以a1为圆心的预设半径区域内的每个随机点组成遍历点对(a1,bj),(j=0,1,…,m)。对于每一个遍历点对,基于Bresenham算法计算由起点ai(x,y)到终点bj(x,y)的一组第二轨迹点ci(x,y)(i=0,1,…,k)。对于每一个第二轨迹点,以第二轨迹点为中心,预设常量为半径随机选取图像中相关区域的像素点作为预更新像素值的目标像素点。
S102,将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;
具体实施例中,每一个目标像素点在图像中都有对应的原始像素值,输入像素值可以是用户预先输入的像素值,将原始像素值与输入像素值进行融合计算的计算方式可以是分别将原始像素值与输入像素值的三个颜色通道的分量做融合计算,获得更新像素值的三个颜色通道的分量。
S103,将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。
具体实施例中,确定图像中的目标像素点以及更新像素值后,即将目标像素点的像素值由原始像素值更新为更新像素值,并且输出更新处理后的图像。可选的,输出更新处理后的图像的输出方式可以是在预设时间内输出更新处理后的图像,当预设时间结束时,则继续将目标像素点的像素值由更新像素值更新为原始像素值进行输出,这样给用户的视觉效果就如同烟花。
本发明实施例,获取待处理的图像,并捕获图像上的轨迹选择操作,根据轨迹选择操作的起点和终点,确定在图像中预更新像素值的目标像素点,将目标像素点在图像中对应的原始像素值与输入像素值进行融合计算,获得目标像素点的更新像素值,将目标像素点的像素值由原始像素值更新为更新像素值,并且输出更新出来后的图像。这种方式可以根据图像中的实时轨迹选择操作确定需要更新的目标像素点,并且可以根据输入像素值确定更新像素值,因此可以灵活地对图像进行更新,更新图像多样化。
请参照图3,为本发明实施例提供的另一种图像处理方法的流程图;该方法可包括以下步骤S200-步骤S205。
S200,获取待处理的图像,并捕获所述图像上的轨迹选择操作;
本发明实施例步骤S200请参照图2的实施例步骤S100,在此不再赘述。
S201,计算所述轨迹选择操作的起点到终点之间的至少两个第一轨迹点;
具体实施例中,输入普通二维图像作为图像,图像宽为W,长为H,取出图像边长W和H中的最大值,表示为edgemax,轨迹点步长计算公式:stepsize=C0+edgemax/C1;其中,C0和C1为经验值常量。在Bresenham算法中输入起起点S(x,y),终点E(x,y),步长stepsize,由Bresenham算法计算得出第一轨迹点a0(x,y),a1(x,y),a2(x,y),…,an(x,y)(个数为n+1)。
S202,针对每一个所述第一轨迹点,确定以所述第一轨迹点为圆心预设半径区域内的至少两个随机点;
具体实施例中,依次遍历每一个第一轨迹点a0(x,y),a1(x,y),a2(x,y),…,an(x,y),针对每一个第一轨迹点重复如下操作,即确定以该第一轨迹点为圆心预设半径区域内的至少两个随机点。
可选的,确定方法可以是先计算预设半径,若是在图像中绘制烟花,则该预设半径可以是烟花半径范围的最大值,计算公式如下:
radiusmax=edgemax/C2*radiusCoe;
其中,radiusmax为预设半径,radiusCoe为用户输入的半径参数,取值范围为[0.0,1.0];edgemax为第一轨迹点的步长。
根据radiusmax计算以第一轨迹点为圆心,预设半径区域内的至少两个随机点b0(x,y),b1(x,y),b2(x,y)…bm(个数为m+1),方法如下:
m=C3+C4*V0;
bi.x=ai.x+radiusmax*V1*cos(2*PI*V2);(i=0,1,…,m)
bi.y=ai.y+radiusmax*V1*sin(2*PI*V2);(i=0,1,…,m)
V0,V1,V2为实时生成的随机数,取值范围[0.0,1.0],在每个随机点bi(i=0,1,…,m)处均不相同,C3和C4为经验值常量,cos,sin为三角函数;PI为圆周率常数。
由上述可知,每一个第一轨迹点均对应m+1个随机点b0(x,y),b1(x,y),b2(x,y)…bm(个数为m+1)。
S203,根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点。
具体实施例中,每一个第一轨迹点均对应了至少两个随机点,根据各个第一轨迹点和该第一轨迹点对应的至少两个随机点可以获得图像中预更新像素值的目标像素点。可选的,可以是以特定的随机算法获取目标像素点。
进一步的,所述根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点,包括以下步骤S20-S23:
S20,针对每一个所述第一轨迹点,将所述第一轨迹点与所述第一轨迹点对应的至少两个随机点中每个随机点组成遍历点对;
具体实施例中,对于每一个第一轨迹点可以与该第一轨迹点对应的至少两个随机点中每个随机点组成多个遍历点对,例如,对于第一轨迹点a1,则a1可以与a1对应的m+1个随机点组成m+1个遍历点对,由于第一轨迹点包括n+1个,因此遍历点对共有(m+1)*(n+1)个。
S21,针对每一个所述遍历点对,计算由所述第一轨迹点到所述随机点之间的至少两个第二轨迹点;
具体实施例中,每一个遍历点对包括两个像素点,将每一个遍历点对中的第一轨迹点ai(x,y)作为起点,将随机点bj(x,y)作为终点,基于Bresenham算法计算出至少两个第二轨迹点ci(x,y)(i=0,1,…,k),此处第二轨迹点步长取经验值常量C5。由于每一个遍历点对均有k+1个第二轨迹点,因此在整个图像中有(m+1)*(n+1)*(k+1)个第二轨迹点。
S22,以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点;
具体实施例中,以所计算获得的第二轨迹点中每个第二轨迹点为基准,获得每个第二轨迹点对应的多个随机点,需要说明的是,多个随机点可以是根据随机算法获得,也可以是使用输入模板进行取点等等。
更进一步的,所述以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点,包括以下两个步骤:
1、以所述至少两个第二轨迹点中每个第二轨迹点为圆心,预设常量为半径,组成所述图像中的多个选取区域;
具体实施例中,针对每个第二轨迹点重复如下操作,以第二轨迹点ci(x,y)(i=0,1,…k)为中心,经验值常量C6为半径,在图像中组成多个选取区域。
2、从所述选取区域中随机选取至少两个像素点作为该选取区域的第二轨迹点对应的随机点。
具体实施例中,遍历图像中所组成的多个选取区域,从选取区域中随机选取至少两个像素点pi(i=0,1,…w)作为该选取区域的第二轨迹点对应的随机点。
S23,将所有遍历点对中各个第二轨迹点对应的随机点确定为所述图像中预更新像素值的目标像素点。
具体实施例中,每一个遍历点对中包括多个第二轨迹点,每一个第二轨迹点对应多个随机点,将最终所获得的所有随机点作为图像中预更新像素值的目标像素点。
S204,分别将所述目标像素点在所述图像中对应的原始像素值的三个颜色通道的分量与输入像素值的三个颜色通道的分量做融合计算,从而获得所述目标像素点的更新像素值中该颜色通道的颜色分量。
具体实施例中,分别对目标像素点的三个颜色通道的分量做融合计算,具体计算方法为,例如,假设图像中目标像素点pi(i=0,1,…w)的原始像素值表示为pi(r,g,b),输入像素值为F(r,g,b),融合计算的结果表示为ri(r,g,b),则F与pi点对应颜色分量融合计算如下:
ri.r=pi.r+C7*F.r-C8;ri.g=pi.g+C7*F.g-C8;ri.b=pi.b+C7*F.b-C8;
其中,C7和C8为经验值常量。
计算结果ri(r,g,b)即是目标像素点的更新像素值。
S205,将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并在预设时间内输出更新处理后的所述图像。
具体实施例中,将目标像素点的像素值由原始像素值更新为所计算得到的更新像素值,在预设时间内输出更新处理后的图像,当该预设时间结束时,则将目标像素点的像素值由更新像素值更新为原始像素值,这种输出方式给用户在视觉效果上即是在图像上输出烟花图像。
本发明实施例,获取待处理的图像,并捕获图像上的轨迹选择操作,根据轨迹选择操作的起点和终点,确定在图像中预更新像素值的目标像素点,将目标像素点在图像中对应的原始像素值与输入像素值进行融合计算,获得目标像素点的更新像素值,将目标像素点的像素值由原始像素值更新为更新像素值,并且输出更新出来后的图像。这种方式可以根据图像中的实时轨迹选择操作确定需要更新的目标像素点,并且可以根据输入像素值确定更新像素值,因此可以灵活地对图像进行更新,更新图像多样化。
请参照图4,为本发明实施例提供的一种在背景图像中绘制烟花效果的流程示意图,如图所示,图中的所有点均指背景图像中对应的位置像素点,位置信息表示为(x,y):颜色信息表示为(r,g,b);
1、输入起终点S(x,y),终点e(x,y)以及背景图像B;
2、取出背景图像边长W和H中的最大值,表示为edgemax,轨迹点步长计算公式:stepsize=C0+edgemax/C1;基于Bresenham算法得到直线轨迹点:a0(x,y),a1(x,y),a2(x,y),…,an(x,y);
3、遍历轨迹点a0(x,y),a1(x,y),a2(x,y),…,an(x,y),在每个点上重复如下操作:
a)计算确定烟花半径范围最大值:
radiusmax=edgemax/C2*radiusCoe;
b)以ai(i=0,1…n)为圆心,radiusmax为最大半径的区域内,根据随机算法在背景图像B中取出随机点b0(x,y),b1(x,y),b2(x,y),…bm;
具体的,根据radiusmax计算一组点b0(x,y),b1(x,y),b2(x,y),…bm,方法如下:
m=C3+C4*V0;
bi.x=ai.x+radiusmax*V1*cos(2*PI*V2);(i=0,1,…,m)
bi.y=ai.y+radiusmax*V1*sin(2*PI*V2);(i=0,1,…,m)
V0,V1,V2为实时生成的随机数,取值范围[0.0,1.0],在每个随机点bi(i=0,1,…,m)处均不相同;
cos,sin为三角函数;
PI为圆周率常数;
c)由上述步骤得到一组遍历点对(ai,bj)(i=0,1,...n,j=0,1,…,m),在每一个遍历点对上重复操作如下:
i.输入遍历点对(ai,bj),基于Bresenham算法由起点ai(x,y)到终点bj(x,y)计算出一组点ci(x,y)(i=0,1,…,k),此处轨迹点步长取常量C5;
ii.遍历ci(x,y)(i=0,1,…,k),在每个点上执行如下操作:
以点ci(x,y)(i=0,1,…k)为中心,经验值常量C6为半径遍历背景图像相关区域,随机取出若干点(pi,i=0,1,…h),将p(x,y)(i=0,1,…h)的原始像素值pi(r,g,b)与输入像素值F(r,g,b)做融合操作,计算结果表示为ri(r,g,b),并作为目标像素点pi(r,g,b)的像素值;
4、遍历完成所有的轨迹点a0(x,y),a1(x,y),a2(x,y),…,an(x,y)所得结果图即为输出效果图。
下面将结合附图5-附图7,对本发明实施例提供的一种图像处理装置进行详细介绍。
请参阅图5,为本发明实施例提供的一种图像处理装置的结构示意图;该图像处理装置可包括:
获取模块100,用于获取待处理的图像,并捕获所述图像上的轨迹选择操作;
具体实施例中,待处理的图像可以是背景图像,具体可选的,待处理的图像可以是用户输入的二维图像,将所获取的待处理的图像进行显示,用户可以对图像进行轨迹选择操作,例如可以是对触摸显示屏的触摸轨迹选择操作,也可以是鼠标选择轨迹操作。获取模块100实时捕获在图像上的轨迹选择操作。具体的捕获方法可以是每隔预设时间捕获一次图像上的轨迹选择操作,并且每次捕获的轨迹选择操作均有起点和终点。需要说明的是,预设时间较小时,下一次捕获的轨迹选择操作的起点可以是上一次轨迹选择操作的终点,对于每一次轨迹选择操作,均可以进行后续的图像更新处理。
确定模块101,用于根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;
可选的,如图6所示,确定模块101可以包括计算单元1010、确定单元1011以及获取单元1012;
计算单元1010,用于计算所述轨迹选择操作的起点到终点之间的至少两个第一轨迹点;
具体实施例中,输入普通二维图像作为图像,图像宽为W,长为H,取出图像边长W和H中的最大值,表示为edgemax,轨迹点步长计算公式:stepsize=C0+edgemax/C1;其中,C0和C1为经验值常量。在Bresenham算法中输入起起点S(x,y),终点E(x,y),步长stepsize,由Bresenham算法计算得出第一轨迹点a0(x,y),a1(x,y),a2(x,y),…,an(x,y)(个数为n+1)。
确定单元1011,用于针对每一个所述第一轨迹点,确定以所述第一轨迹点为圆心预设半径区域内的至少两个随机点;
具体实施例中,依次遍历每一个第一轨迹点a0(x,y),a1(x,y),a2(x,y),…,an(x,y),针对每一个第一轨迹点重复如下操作,即确定单元1011确定以该第一轨迹点为圆心预设半径区域内的至少两个随机点。
可选的,确定方法可以是先计算预设半径,若是在图像中绘制烟花,则该预设半径可以是烟花半径范围的最大值,计算公式如下:
radiusmax=edgemax/C2*radiusCoe;
其中,radiusmax为预设半径,radiusCoe为用户输入的半径参数,取值范围为[0.0,1.0];edgemax为第一轨迹点的步长。
根据radiusmax计算以第一轨迹点为圆心,预设半径区域内的至少两个随机点b0(x,y),b1(x,y),b2(x,y)…bm(个数为m+1),方法如下:
m=C3+C4*V0;
bi.x=ai.x+radiusmax*V1*cos(2*PI*V2);(i=0,1,…,m)
bi.y=ai.y+radiusmax*V1*sin(2*PI*V2);(i=0,1,…,m)
V0,V1,V2为实时生成的随机数,取值范围[0.0,1.0],在每个随机点bi(i=0,1,…,m)处均不相同,C3和C4为经验值常量,cos,sin为三角函数;PI为圆周率常数。
由上述可知,每一个第一轨迹点均对应m+1个随机点b0(x,y),b1(x,y),b2(x,y)…bm(个数为m+1)。
获取单元1012,用于根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点。
具体实施例中,每一个第一轨迹点均对应了至少两个随机点,获取单元1012根据各个第一轨迹点和该第一轨迹点对应的至少两个随机点可以获得图像中预更新像素值的目标像素点。可选的,可以是以特定的随机算法获取目标像素点。
进一步的,如图7所示,获取单元1012可以包括组成子单元10120、计算子单元10121、获取子单元10122以及确定子单元10123;
组成子单元10120,用于针对每一个所述第一轨迹点,将所述第一轨迹点与所述第一轨迹点对应的至少两个随机点中每个随机点组成遍历点对;
具体实施例中,组成子单元10120对于每一个第一轨迹点可以与该第一轨迹点对应的至少两个随机点中每个随机点组成多个遍历点对,例如,对于第一轨迹点a1,则a1可以与a1对应的m+1个随机点组成m+1个遍历点对,由于第一轨迹点包括n+1个,因此遍历点对共有(m+1)*(n+1)个。
计算子单元10121,用于针对每一个所述遍历点对,计算由所述第一轨迹点到所述随机点之间的至少两个第二轨迹点;
具体实施例中,每一个遍历点对包括两个像素点,计算子单元10121将每一个遍历点对中的第一轨迹点ai(x,y)作为起点,将随机点bj(x,y)作为终点,基于Bresenham算法计算出至少两个第二轨迹点ci(x,y)(i=0,1,…,k),此处第二轨迹点步长取经验值常量C5。由于每一个遍历点对均有k+1个第二轨迹点,因此在整个图像中有(m+1)*(n+1)*(k+1)个第二轨迹点。
获取子单元10122,用于以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点;
具体实施例中,获取子单元10122以所计算获得的第二轨迹点中每个第二轨迹点为基准,获得每个第二轨迹点对应的多个随机点,需要说明的是,多个随机点可以是根据随机算法获得,也可以是使用输入模板进行取点等等。
更进一步的,所述获取子单元10122具体用于以所述至少两个第二轨迹点中每个第二轨迹点为圆心,预设常量为半径,组成所述图像中的多个选取区域;
从所述选取区域中随机选取至少两个像素点作为该选取区域的第二轨迹点对应的随机点。
具体实施例中,针对每个第二轨迹点重复如下操作,以第二轨迹点ci(x,y)(i=0,1,…k)为中心,经验值常量C6为半径,在图像中组成多个选取区域。遍历图像中所组成的多个选取区域,从选取区域中随机选取至少两个像素点pi(i=0,1,…w)作为该选取区域的第二轨迹点对应的随机点。
确定子单元10123,用于将所有遍历点对中各个第二轨迹点对应的随机点确定为所述图像中预更新像素值的目标像素点。
具体实施例中,每一个遍历点对中包括多个第二轨迹点,每一个第二轨迹点对应多个随机点,确定子单元10123将最终所获得的所有随机点作为图像中预更新像素值的目标像素点。
计算模块102,用于将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;
可选的,所述计算模块102具体用于分别将所述目标像素点在所述图像中对应的原始像素值的三个颜色通道的分量与输入像素值的三个颜色通道的分量做融合计算,从而获得所述目标像素点的更新像素值中该颜色通道的颜色分量。
具体实施例中,计算模块102分别对目标像素点的三个颜色通道的分量做融合计算,具体计算方法为,例如,假设图像中目标像素点pi(i=0,1,…w)的原始像素值表示为pi(r,g,b),输入像素值为F(r,g,b),融合计算的结果表示为ri(r,g,b),则F与pi点对应颜色分量融合计算如下:
ri.r=pi.r+C7*F.r-C8;ri.g=pi.g+C7*F.g-C8;ri.b=pi.b+C7*F.b-C8;
其中,C7和C8为经验值常量。
计算结果ri(r,g,b)即是目标像素点的更新像素值。
更新输出模块103,用于将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。
可选的,所述更新输出模块103具体用于将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,在预设时间内输出更新处理后的所述图像。
具体实施例中,更新输出模块103将目标像素点的像素值由原始像素值更新为所计算得到的更新像素值,在预设时间内输出更新处理后的图像,当该预设时间结束时,则将目标像素点的像素值由更新像素值更新为原始像素值,这种输出方式给用户在视觉效果上即是在图像上输出烟花图像。
本发明实施例,获取待处理的图像,并捕获图像上的轨迹选择操作,根据轨迹选择操作的起点和终点,确定在图像中预更新像素值的目标像素点,将目标像素点在图像中对应的原始像素值与输入像素值进行融合计算,获得目标像素点的更新像素值,将目标像素点的像素值由原始像素值更新为更新像素值,并且输出更新出来后的图像。这种方式可以根据图像中的实时轨迹选择操作确定需要更新的目标像素点,并且可以根据输入像素值确定更新像素值,因此可以灵活地对图像进行更新,更新图像多样化。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,附图5-附图7所示图像处理装置的模块或单元对应的程序可存储在可读存储介质内,并被该图像处理装置中的至少一个处理器执行,以实现上述图像处理方法,该方法包括图2至图4中各方法实施例所述的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (12)

1.一种图像处理方法,其特征在于,包括:
获取待处理的图像,并捕获所述图像上的轨迹选择操作;
根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;
将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;
将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。
2.如权利要求1所述的方法,其特征在于,所述根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点,包括:
计算所述轨迹选择操作的起点到终点之间的至少两个第一轨迹点;
针对每一个所述第一轨迹点,确定以所述第一轨迹点为圆心预设半径区域内的至少两个随机点;
根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点。
3.如权利要求2所述的方法,其特征在于,所述根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点,包括:
针对每一个所述第一轨迹点,将所述第一轨迹点与所述第一轨迹点对应的至少两个随机点中每个随机点组成遍历点对;
针对每一个所述遍历点对,计算由所述第一轨迹点到所述随机点之间的至少两个第二轨迹点;
以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点;
将所有遍历点对中各个第二轨迹点对应的随机点确定为所述图像中预更新像素值的目标像素点。
4.如权利要求3所述的方法,其特征在于,所述以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点,包括:
以所述至少两个第二轨迹点中每个第二轨迹点为圆心,预设常量为半径,组成所述图像中的多个选取区域;
从所述选取区域中随机选取至少两个像素点作为该选取区域的第二轨迹点对应的随机点。
5.如权利要求1所述的方法,其特征在于,所述将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值,包括:
分别将所述目标像素点在所述图像中对应的原始像素值的三个颜色通道的分量与输入像素值的三个颜色通道的分量做融合计算,从而获得所述目标像素点的更新像素值中该颜色通道的颜色分量。
6.如权利要求1所述的方法,其特征在于,所述输出更新处理后的所述图像,包括:
在预设时间内输出更新处理后的所述图像。
7.一种图像处理装置,其特征在于,包括:
获取模块,用于获取待处理的图像,并捕获所述图像上的轨迹选择操作;
确定模块,用于根据所述轨迹选择操作的起点和终点,确定在所述图像中预更新像素值的目标像素点;
计算模块,用于将所述目标像素点在所述图像中对应的原始像素值与输入像素值进行融合计算,获得所述目标像素点的更新像素值;
更新输出模块,用于将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,并输出更新处理后的所述图像。
8.如权利要求7所述的装置,其特征在于,所述确定模块包括:
计算单元,用于计算所述轨迹选择操作的起点到终点之间的至少两个第一轨迹点;
确定单元,用于针对每一个所述第一轨迹点,确定以所述第一轨迹点为圆心预设半径区域内的至少两个随机点;
获取单元,用于根据各个所述第一轨迹点和该第一轨迹点对应的至少两个随机点,获得所述图像中预更新像素值的目标像素点。
9.如权利要求8所述的装置,其特征在于,所述获取单元包括:
组成子单元,用于针对每一个所述第一轨迹点,将所述第一轨迹点与所述第一轨迹点对应的至少两个随机点中每个随机点组成遍历点对;
计算子单元,用于针对每一个所述遍历点对,计算由所述第一轨迹点到所述随机点之间的至少两个第二轨迹点;
获取子单元,用于以所述至少两个第二轨迹点中每个第二轨迹点为基准,获得该第二轨迹点对应的多个随机点;
确定子单元,用于将所有遍历点对中各个第二轨迹点对应的随机点确定为所述图像中预更新像素值的目标像素点。
10.如权利要求9所述的装置,其特征在于,所述获取子单元具体用于以所述至少两个第二轨迹点中每个第二轨迹点为圆心,预设常量为半径,组成所述图像中的多个选取区域;
从所述选取区域中随机选取至少两个像素点作为该选取区域的第二轨迹点对应的随机点。
11.如权利要求7所述的装置,其特征在于,所述计算模块具体用于分别将所述目标像素点在所述图像中对应的原始像素值的三个颜色通道的分量与输入像素值的三个颜色通道的分量做融合计算,从而获得所述目标像素点的更新像素值中该颜色通道的颜色分量。
12.如权利要求7所述的装置,其特征在于,所述更新输出模块具体用于将所述目标像素点的像素值由所述原始像素值更新为所述更新像素值,在预设时间内输出更新处理后的所述图像。
CN201510288746.1A 2015-05-29 2015-05-29 一种图像处理方法及装置 Active CN106303153B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510288746.1A CN106303153B (zh) 2015-05-29 2015-05-29 一种图像处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510288746.1A CN106303153B (zh) 2015-05-29 2015-05-29 一种图像处理方法及装置

Publications (2)

Publication Number Publication Date
CN106303153A true CN106303153A (zh) 2017-01-04
CN106303153B CN106303153B (zh) 2019-08-23

Family

ID=57655110

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510288746.1A Active CN106303153B (zh) 2015-05-29 2015-05-29 一种图像处理方法及装置

Country Status (1)

Country Link
CN (1) CN106303153B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154030A (zh) * 2017-05-17 2017-09-12 腾讯科技(上海)有限公司 图像处理方法及装置、电子设备及存储介质
CN109509237A (zh) * 2017-09-15 2019-03-22 展讯通信(上海)有限公司 滤镜处理的方法、装置及电子设备
US20210110511A1 (en) * 2018-10-30 2021-04-15 Beijing Sensetime Technology Development Co., Ltd. Image processing method and apparatus, computer device, and computer storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101276480A (zh) * 2008-04-28 2008-10-01 浙江大学 一种生成特定形状烟花的计算机模拟方法
CN102999931A (zh) * 2011-09-15 2013-03-27 汉王科技股份有限公司 电子笔迹绘制方法及装置
US8600712B1 (en) * 2010-07-27 2013-12-03 William Harvey System and method for designing and simulating a fireworks show
CN103793174A (zh) * 2014-02-11 2014-05-14 厦门美图网科技有限公司 一种图像的涂鸦方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101276480A (zh) * 2008-04-28 2008-10-01 浙江大学 一种生成特定形状烟花的计算机模拟方法
US8600712B1 (en) * 2010-07-27 2013-12-03 William Harvey System and method for designing and simulating a fireworks show
CN102999931A (zh) * 2011-09-15 2013-03-27 汉王科技股份有限公司 电子笔迹绘制方法及装置
CN103793174A (zh) * 2014-02-11 2014-05-14 厦门美图网科技有限公司 一种图像的涂鸦方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154030A (zh) * 2017-05-17 2017-09-12 腾讯科技(上海)有限公司 图像处理方法及装置、电子设备及存储介质
CN109509237A (zh) * 2017-09-15 2019-03-22 展讯通信(上海)有限公司 滤镜处理的方法、装置及电子设备
CN109509237B (zh) * 2017-09-15 2022-09-20 展讯通信(上海)有限公司 滤镜处理的方法、装置及电子设备
US20210110511A1 (en) * 2018-10-30 2021-04-15 Beijing Sensetime Technology Development Co., Ltd. Image processing method and apparatus, computer device, and computer storage medium

Also Published As

Publication number Publication date
CN106303153B (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
CN111815754B (zh) 一种三维信息确定方法、三维信息确定装置及终端设备
CN105448184B (zh) 地图道路的绘制方法及装置
WO2021017471A1 (zh) 一种基于图像处理的点云滤波方法、装置和存储介质
CN112863234B (zh) 一种车位显示方法、装置、电子设备及存储介质
CN112507806B (zh) 智慧课堂信息交互方法、装置及电子设备
CN110633843B (zh) 园区巡检方法、装置、设备及存储介质
CN111402413B (zh) 三维视觉定位方法、装置及计算设备、存储介质
CN106303153A (zh) 一种图像处理方法及装置
CN110597937A (zh) 一种无人智能巡检的方法、装置、设备及存储介质
CN106295491A (zh) 车道直线检测方法及装置
CN113108792A (zh) Wi-Fi指纹地图重建方法、装置、终端设备及介质
CN108197596B (zh) 一种手势识别方法和装置
CN113099111A (zh) 点胶轨迹生成方法、装置、电子设备和存储介质
CN110188495B (zh) 一种基于深度学习的二维户型图生成三维户型图的方法
CN111476062A (zh) 车道线检测方法、装置、电子设备及驾驶系统
CN109934896B (zh) 一种绘画方法、装置、终端设备及计算机可读存储介质
CN109344989B (zh) 路线规划方法及装置
CN105447901A (zh) 图像处理方法和装置
CN111368860A (zh) 重定位方法及终端设备
CN110222576A (zh) 拳击动作识别方法、装置和电子设备
CN113009884B (zh) 无人设备的作业控制方法、装置、设备及存储介质
CN104156058B (zh) 生成控制指令的方法和系统
CN112192563B (zh) 智能绘画机器人的绘画控制方法、芯片及智能绘画机器人
CN112686476A (zh) 一种应用于地图的路径生成方法、系统、设备和存储介质
CN116266402A (zh) 对象自动标注方法、装置、电子设备及存储介质

Legal Events

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