CN110335205B - 一种地貌平滑方法、装置、计算机设备和存储介质 - Google Patents
一种地貌平滑方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110335205B CN110335205B CN201910383384.2A CN201910383384A CN110335205B CN 110335205 B CN110335205 B CN 110335205B CN 201910383384 A CN201910383384 A CN 201910383384A CN 110335205 B CN110335205 B CN 110335205B
- Authority
- CN
- China
- Prior art keywords
- brush
- map
- area
- image frame
- pixel point
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000009499 grossing Methods 0.000 title claims abstract description 70
- 230000008569 process Effects 0.000 claims abstract description 34
- 230000001960 triggered effect Effects 0.000 claims abstract description 23
- 238000010586 diagram Methods 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 238000001914 filtration Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 12
- 230000006870 function Effects 0.000 description 26
- 230000003287 optical effect Effects 0.000 description 6
- 230000000873 masking effect Effects 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000004804 winding Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例公开了一种地貌平滑方法、装置、设备和介质,其中,方法包括:当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息;针对每一图像帧,基于笔刷图对应的衰减信息对当前图像帧中笔刷图覆盖过的区域中各像素点的地表高度值进行调整;当笔刷图功能被释放时,根据记录的区域信息确定被笔刷图覆盖过的区域的边缘子区域,对边缘子区域对应的地表高度值进行平滑处理以完成地貌平滑。本发明实施例的技术方案解决了现有技术中针对特殊地貌平滑处理效果不佳的问题;可以实现提高对图像中的地貌区域进行平滑处理的效果,使图像中地貌更佳符合实际的地貌情况。
Description
技术领域
本发明实施例涉及图像处理技术领域,尤其涉及一种地貌平滑方法、装置、计算机设备和存储介质。
背景技术
在图像处理中,需要对图像中的一些对象进行细节处理,如对包含有地貌元素的图像进行平滑或锐化等操作,使各种不同的地貌更符合实际场景。例如,对游戏场景中的细节图像进行处理。具体的,游戏场景是指游戏中根据游戏企划的要求还原出游戏中的建筑物、树木、天空、道路等可用元素。针对于道路元素,需要对道路中的地貌地形进行平滑处理。
目前,现有的地貌平滑过渡算法是通过针对目标点周围一定范围内的地表高度信息进行平均计算达到所需效果。但是,该方法不适用于所有的地貌,对于某些特殊地貌,这样的操作会破坏地貌的一些特殊性质。例如,盘山路需要道路两侧基本保持在同一水平高度,在悬崖边雕刻盘山路的过程中,如果使用现有的平滑过渡算法,会使靠近山体的一侧偏高,靠近山谷的一侧偏低,道路整体呈现倾斜。
发明内容
本发明实施例提供一种地貌平滑方法、装置、计算机设备和存储介质,以提高对图像中的地貌区域进行平滑处理的效果,使图像中地貌更佳符合实际的地貌情况。
第一方面,本发明实施例提供了一种地貌平滑方法,该方法包括:
当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息;
针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整,其中,所述衰减信息为各像素点高度调整的参数;
当所述笔刷图功能被释放时,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
可选的,所述确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息,包括:
针对每一图像帧,将所述笔刷图的中心映射到当前图像帧中的目标雕刻区域,确定所述笔刷图中心点在当前图像帧的坐标,其中,每一图像帧中包含有相同的所述目标雕刻区域;
根据所述笔刷图中心点的坐标和所述笔刷图的参数确定所述笔刷图在当前图像帧覆盖的区域信息,以获取所述笔刷图在每一图像帧中覆盖的区域。
可选的,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整,包括:
计算当前图像帧中所述笔刷图覆盖过的区域中,衰减信息不为零的各像素点的目标高度值;
根据衰减信息不为零的各像素点的衰减信息、原始高度及目标高度计算衰减信息不为零的各像素点的最终地表高度值,其中,所述原始高度为各像素点在当前图像帧的前一图像帧中的计算得到的最终地表高度值。
可选的,根据衰减信息不为零的各像素点的衰减信息、原始高度及目标高度计算衰减信息不为零的各像素点的最终地表高度值,包括:
将衰减信息不为零的各像素点的原始高度和目标高度按照该像素点对应的衰减信息进行插值计算得到最终地表高度值。
可选的,计算当前图像帧中所述笔刷图覆盖过的区域中,衰减信息不为零的各像素点的目标高度值,具体包括:
当地貌平滑为雕刻盘山路时,计算衰减信息不为零的各像素点预设范围内的平均高度作为目标高度值;
当地貌平滑为地貌抬高时,在衰减信息不为零的各像素点的原始高度的基础上加上一个预设高度值作为目标高度值;
当地貌平滑为地貌压平时,将一个预设高度值作为衰减信息不为零的各像素点的目标高度值。
可选的,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,包括:
在所述区域信息覆盖的区域内,确定衰减信息不为零的像素点区域的边缘像素点的集合作为边缘子区域;
通过滤波算法对所述边缘子区域对应的地表高度值进行平滑。
可选的,所述笔刷图的形状是预先设定的形状,或是根据笔刷参数生成的笔刷图形状,其中,所述笔刷参数包括衰减信息曲线以及笔刷半径或笔刷边长中的至少一个。
可选的,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息,还包括:
创建一个与所述目标雕刻区域大小相同的覆盖蒙板图;
将每一个图像帧中被所述笔刷图覆盖且对应的衰减信息不为零的像素点对应的覆盖蒙板图数值记为1,以记录所述区域信息;相应的,
基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整,包括:
基于所述笔刷图对应的衰减信息对当前图像帧中覆盖蒙板图数值为1的像素点的地表高度值进行调整;
根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,包括:
将所述覆盖蒙板图中数值为1的像素点区域的边缘像素点作为边缘子区域。
第二方面,本发明实施例还提供了一种地貌平滑装置,该装置包括:
笔刷图覆盖区域确定模块,用于当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息;
地表内部高度调整模块,用于针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整;
地表边缘高度调整模块,用于当所述笔刷图功能被释放时,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
可选的,笔刷图覆盖区域确定模块具体用于:
针对每一图像帧,将所述笔刷图的中心映射到当前图像帧中的目标雕刻区域,确定所述笔刷图中心点在当前图像帧的坐标,其中,每一图像帧中包含有相同的所述目标雕刻区域;
根据所述笔刷图中心点的坐标和所述笔刷图的参数确定所述笔刷图在当前图像帧覆盖的区域信息,以获取所述笔刷图在每一图像帧中覆盖的区域。
可选的,地表内部高度调整模块,包括:
目标高度值计算单元,用于计算当前图像帧中所述笔刷图覆盖过的区域中,衰减信息不为零的各像素点的目标高度值;
最终地表高度值计算单元,用于根据衰减信息不为零的各像素点的衰减信息、原始高度及目标高度计算衰减信息不为零的各像素点的最终地表高度值,其中,所述原始高度为各像素点在当前图像帧的前一图像帧中的计算得到的最终地表高度值。
可选的,最终地表高度值计算单元具体用于:
将衰减信息不为零的各像素点的原始高度和目标高度按照该像素点对应的衰减信息进行插值计算得到最终地表高度值。
可选的,目标高度值计算单元具体用于:
当地貌平滑为雕刻盘山路时,计算衰减信息不为零的各像素点预设范围内的平均高度作为目标高度值;
当地貌平滑为地貌抬高时,在衰减信息不为零的各像素点的原始高度的基础上加上一个预设高度值作为目标高度值;
当地貌平滑为地貌压平时,将一个预设高度值作为衰减信息不为零的各像素点的目标高度值。
可选的,地表边缘高度调整模块,具体用于:
在所述区域信息覆盖的区域内,确定衰减信息不为零的像素点区域的边缘像素点的集合作为边缘子区域;
通过滤波算法对所述边缘子区域对应的地表高度值进行平滑。
可选的,所述笔刷图的形状是预先设定的形状,或是根据笔刷参数生成的笔刷图形状,其中,所述笔刷参数包括衰减信息曲线以及笔刷半径或笔刷边长中的至少一个。
可选的,笔刷图覆盖区域确定模块,还用于:
创建一个与所述目标雕刻区域大小相同的覆盖蒙板图;
将每一个图像帧中被所述笔刷图覆盖且对应的衰减信息不为零的像素点对应的覆盖蒙板图数值记为1,以记录所述区域信息;相应的,
地表内部高度调整模块,还用于:
基于所述笔刷图对应的衰减信息对当前图像帧中覆盖蒙板图数值为1的像素点的地表高度值进行调整;
地表边缘高度调整模块,还用于:
将所述覆盖蒙板图中数值为1的像素点区域的边缘像素点作为边缘子区域。
第三方面,本发明实施例还提供了一种计算机设备,该计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例中任一所述的地貌平滑方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如发明实施例中任一所述的地貌平滑方法。
本发明实施例通过利用笔刷图在连续多张图像帧中对待平滑的地貌区域进行处理,先对笔刷图覆盖区域内各像素点的地表高度值进行调整,然后对所有被笔刷图覆盖过区域的边缘的地表高度值进行平滑,从而完成了地貌的平滑,解决了现有技术中针对特殊地貌平滑处理效果不佳的问题;可以实现提高对图像中的地貌区域进行平滑处理的效果,使图像中地貌更佳符合实际的地貌情况。
附图说明
图1a是本发明实施例一中的地貌平滑方法的流程图;
图1b是本发明实施例一中的笔刷图的示意图;
图2是本发明实施例二中的地貌平滑方法的流程图;
图3是本发明实施例三中的地貌平滑装置的结构示意图;
图4是本发明实施例四中的计算机设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下将参照本发明实施例中的附图,通过实施方式清楚、完整地描述本发明的技术方案,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。
实施例一
图1a为本发明实施例一提供的地貌平滑方法的流程图,本实施例可适用于对图像中地貌元素进行处理的情况,该方法可以由地貌平滑装置实现,该装置配置于计算机设备中,具体可通过设备中的软件和/或硬件来实施。如图1a所示,地貌平滑方法具体包括:
S110、当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息。
具体的,对地貌进行平滑等处理的过程可以叫做地貌雕刻的过程,对地貌的雕刻操作是通过地形笔刷来完成的,当用户选定一个笔刷图之后,在地貌雕刻的界面鼠标会被显示为笔刷图的形状,用户按下鼠标则表示笔刷图功能被触发,地貌雕刻的开始,从用户拖动鼠标到释放鼠标为一次完整的雕刻过程。一次雕刻的结果是对多个连续的图像帧进行雕刻之后叠加的结果。
其中,逐帧播放的图像帧是具有相同的目标待雕刻的地貌区域的多个连续图像帧,在一次雕刻中相当于在不同的图像帧中雕刻了相同的目标待雕刻的地貌区域的不同部位,然后由游戏引擎将各图像帧中被雕刻的地貌坐标换算到游戏场景的世界坐标系X-Z坐标系下,继而进行相应的笔刷图覆盖区域面积运算和/或地表高度运算。这是由于,通常在一个待雕刻的地貌区域内,在一次雕刻过程中一个笔刷图不能形成目标地貌形状。若是想要在同一图像帧中完成地貌雕刻,则需要制作多种形状的笔刷图进行多次雕刻,过程较为麻烦,且制作的各形状的笔刷图也难以复用。
笔刷图可以是圆形、方形、星型或十字形等形状,笔刷图的大小可以预先进行设定,在笔刷图中,每一个位置点都有一个对应的衰减信息,该衰减信息表示了笔刷图每一个位置点覆盖的图像帧的像素点的高度调整参数。图1b示例性的展示了一个圆形的笔刷图,在该图的不同的位置点处具有相应的灰度值,表示不同点处相应的衰减信息。
在确定笔刷图覆盖范围过程中,针对每一图像帧,将笔刷图的中心(及鼠标对应的位置)映射到当前图像帧中的目标雕刻区域,确定笔刷图中心点在当前图像帧的坐标,进一步的,根据笔刷图中心点的坐标和笔刷图的参数确定所述笔刷图在当前图像帧覆盖的区域信息,以获取所述笔刷图在每一图像帧中覆盖的区域,其中,笔刷图的参数包括笔刷图的尺寸信息等。
在一种实施方式中,假设在每一个图像帧中,待雕刻的目标雕刻区域为一个长和宽分别为M和N的矩形区域,在该矩形区域内各像素点的地表高度图为h(x,y),其中,x=1,2,…,M,y=1,2,…,N。先将鼠标位置映射到该矩形区域内,假设待雕刻的目标雕刻区域在游戏世界坐标系中XZ平面的坐标范围为(xstart,zstart)至(xend,zend),分别对应目标雕刻区域的(1,1)至(M,N),鼠标所在位置为(x,z),则对应的高度图坐标点为
(x,y)=(Round([x-xstart]/[xend-xstart]×M),Round([z-zstart]/[zend-zstart]×N)),Round操作代表将输入小数四舍五入返回对应的整数。再根据笔刷图大小获得地表高度图中覆盖到的区域。由于笔刷图的中心点与鼠标所在的高度图点对应,则笔刷覆盖范围S为(x-U/2,y-U/2)至(x+U/2,y+U/2),分别对应笔刷图的(1,1)至(U,V),U和V分别代表笔刷图的长和宽。
S120、针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整,其中,所述衰减信息为各像素点高度调整的参数。
其中,衰减信息可以表示为b(i,j),其中i=1,2,…,U,j=1,2,…,V,U和V分别代表笔刷图的长和宽;b(i,j)的取值范围为[0,1],0代表更新高度数据时完全使用原高度值,即不会改变高度数据,1代表完全使用计算获得的新高度值,介于0和1之间时会将两个数据按一定规则混合。
在调整各像素点的地表高度值过程中,首先,计算当前图像帧中所述笔刷图覆盖过的区域中,衰减信息不为零的各像素点的目标高度值;具体的,目标高度值是地表高度的一个设定值,针对不同类型的地貌雕刻,目标高度值的确定方法不相同,例如,当地貌平滑为雕刻盘山路时,计算衰减信息不为零的各像素点预设范围内的平均高度作为目标高度值;当地貌平滑为地貌抬高时,在衰减信息不为零的各像素点的原始高度的基础上加上一个预设高度值作为目标高度值;当地貌平滑为地貌压平时,将一个预设高度值作为衰减信息不为零的各像素点的目标高度值。
根据衰减信息不为零的各像素点的衰减信息、原始高度及目标高度计算衰减信息不为零的各像素点的最终地表高度值,其中,所述原始高度为各像素点在当前图像帧的前一图像帧中的计算得到的最终地表高度值。若当前图像帧为第一个图像帧,那么该图像帧内待雕刻的目标雕刻区域中各像素点的原始高度为该图像帧未被雕刻时的初始地表高度。可以是,将衰减信息不为零的各像素点的原始高度和目标高度按照该像素点对应的衰减信息进行插值计算得到最终地表高度值。
示例性的,以盘山路为例,在盘山路地貌中每一个像素点的目标高度值对应的就是预设范围内各像素点的平均高度值,可表示为htarget(x,y)=avg(h)=Σh(x,y)/n,(x,y)∈S,n为数据点数量,S为笔刷覆盖范围。那么。各像素点的最终地表高度值可表示为h’(x,y)=(1-b(x,y))×h(x,y)+b(x,y)×htarget(x,y),(x,y)∈S。
S130、当所述笔刷图功能被释放时,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
其中,区域信息是笔刷图在移动的过程中,在各图像帧中覆盖的区域叠加之后的区域信息,在区域信息覆盖的区域内,确定衰减信息不为零的像素点区域的边缘像素点的集合作为边缘子区域;进而,可通过滤波算法对所述边缘子区域对应的地表高度值进行平滑。从而完成待雕刻的目标雕刻区域的地貌平滑。
本实施例的技术方案,通过利用笔刷图在连续多张图像帧中对待平滑的地貌区域进行处理,先对笔刷图覆盖区域内各像素点的地表高度值进行调整,然后对所有被笔刷图覆盖过区域的边缘的地表高度值进行平滑,从而完成了地貌的平滑,解决了现有技术中针对特殊地貌平滑处理效果不佳的问题;可以实现提高对图像中的地貌区域进行平滑处理的效果,使图像中地貌更佳符合实际的地貌情况。
实施例二
图2为发明实施例二提供的一种地貌平滑方法的流程图。本实施例以上述实施例中各个可选方案为基础,提供了一种确定并记录笔刷图覆盖区域的方法。如图2所示,本发明实施例中提供的地貌平滑方法包括如下步骤:
S210、当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,创建一个覆盖蒙板图。
同样的,假设在每一个图像帧中,待雕刻的目标雕刻区域为一个长和宽分别为M和N的矩形区域,在该矩形区域内各像素点的地表高度图为h(x,y),其中,x=1,2,…,M,y=1,2,…,N。那么,覆盖蒙板图则为一个与待雕刻的目标区域大小相同的图,可表示为m(x,y),其中x=1,2,…,M,y=1,2,…,N。m(x,y)的各像素点的初始值均为0,代表坐标为(x,y)的像素点未被笔刷图覆盖过。
其中,笔刷图包括两种指定方式,其中,一种方式是直接取一张灰度图作为笔刷图,另一种方式是针对一些固定形状的笔刷图,固定形状的笔刷图可以由参数生成,比如图1b圆形笔刷可由半径或衰减曲线等参数生成。
S220、将每一个图像帧中被所述笔刷图覆盖且对应的衰减信息不为零的像素点对应的覆盖蒙板图数值记为1,以记录所述区域信息。
由于,任意像素点的衰减信息为0代表该像素点在更新高度数据时,完全使用原度值,即不会改变高度数据,相当于对应衰减信息为0的各像素点的高度值不会被调整处理,因此不把该像素点作为被笔刷图覆盖过的像素点。仅将每一个图像帧中被笔刷图覆盖且对应的衰减信息不为零的像素点对应的覆盖蒙板图数值记为1,代表坐标为(x,y)的像素点被笔刷图覆盖过至少一次。
S230、针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中覆盖蒙板图数值为1的像素点的地表高度值进行调整,其中,所述衰减信息为各像素点高度调整的参数。
其中,覆盖蒙板图数值为1的像素点即为衰减信息不为零的各像素点。针对每一图像帧,首先,计算当前图像帧中所述笔刷图覆盖过的区域中,覆盖蒙板图数值为1的像素点的目标高度值;具体的,目标高度值是地表高度的一个设定值,针对不同类型的地貌雕刻,目标高度值的确定方法不相同,例如,当地貌平滑为雕刻盘山路时,计算覆盖蒙板图数值为1的像素点预设范围内的平均高度作为目标高度值;当地貌平滑为地貌抬高时,在覆盖蒙板图数值为1的像素点的原始高度的基础上加上一个预设高度值作为目标高度值;当地貌平滑为地貌压平时,将一个预设高度值作为覆盖蒙板图数值为1的像素点的目标高度值。
根据覆盖蒙板图数值为1的像素点的衰减信息、原始高度及覆盖蒙板图数值为1的像素点的最终地表高度值,其中,所述原始高度为各像素点在当前图像帧的前一图像帧中的计算得到的最终地表高度值。若当前图像帧为第一个图像帧,那么该图像帧内待雕刻的目标雕刻区域中各像素点的原始高度为该图像帧未被雕刻时的初始地表高度。可以是,将覆盖蒙板图数值为1的像素点的原始高度和目标高度按照该像素点对应的衰减信息进行插值计算得到最终地表高度值。
S240、当所述笔刷图功能被释放时,将所述覆盖蒙板图中数值为1的像素点区域的边缘像素点作为边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
具体的,在笔刷图功能被释放后,覆盖蒙板图中数值为1的像素点区域是笔刷图在移动的过程中,在各图像帧中覆盖蒙板图中值为1的各像素点叠加之后的区域,将该区域的边缘像素点的集合作为边缘子区域;进而,可通过滤波算法对所述边缘子区域对应的地表高度值进行平滑。从而完成待雕刻的目标雕刻区域的地貌平滑。
本实施例的技术方案,通过创建覆盖蒙板图记录笔刷图在地貌平滑过程中覆盖且对应衰减信息不为0的像素点,利用笔刷图在连续多张图像帧中对待平滑的地貌区域进行处理,先对笔刷图覆盖区域内各像素点的地表高度值进行调整,然后对所有被笔刷图覆盖过区域的边缘的地表高度值进行平滑,从而完成了地貌的平滑,解决了现有技术中针对特殊地貌平滑处理效果不佳的问题;可以实现提高对图像中的地貌区域进行平滑处理的效果,使图像中地貌更佳符合实际的地貌情况。
实施例三
图3示出了本发明实施例三提供的一种地貌平滑装置的结构示意图,本发明实施例可适用于对图像中地貌元素进行处理的情况。
如图3所示,本发明实施例中地貌平滑装置,包括:笔刷图覆盖区域确定模块310、地表内部高度调整模块320和地表边缘高度调整模块330。
其中,笔刷图覆盖区域确定模块310,用于当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息;地表内部高度调整模块320,用于针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整;地表边缘高度调整模块330,用于当所述笔刷图功能被释放时,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
本实施例的技术方案,通过利用笔刷图在连续多张图像帧中对待平滑的地貌区域进行处理,先对笔刷图覆盖区域内各像素点的地表高度值进行调整,然后对所有被笔刷图覆盖过区域的边缘的地表高度值进行平滑,从而完成了地貌的平滑,解决了现有技术中针对特殊地貌平滑处理效果不佳的问题;可以实现提高对图像中的地貌区域进行平滑处理的效果,使图像中地貌更佳符合实际的地貌情况。
可选的,笔刷图覆盖区域确定模块310具体用于:
针对每一图像帧,将所述笔刷图的中心映射到当前图像帧中的目标雕刻区域,确定所述笔刷图中心点在当前图像帧的坐标,其中,每一图像帧中包含有相同的所述目标雕刻区域;
根据所述笔刷图中心点的坐标和所述笔刷图的参数确定所述笔刷图在当前图像帧覆盖的区域信息,以获取所述笔刷图在每一图像帧中覆盖的区域。
可选的,地表内部高度调整模块320,包括:
目标高度值计算单元,用于计算当前图像帧中所述笔刷图覆盖过的区域中,衰减信息不为零的各像素点的目标高度值;
最终地表高度值计算单元,用于根据衰减信息不为零的各像素点的衰减信息、原始高度及目标高度计算衰减信息不为零的各像素点的最终地表高度值,其中,所述原始高度为各像素点在当前图像帧的前一图像帧中的计算得到的最终地表高度值。
可选的,最终地表高度值计算单元具体用于:
将衰减信息不为零的各像素点的原始高度和目标高度按照该像素点对应的衰减信息进行插值计算得到最终地表高度值。
可选的,目标高度值计算单元具体用于:
当地貌平滑为雕刻盘山路时,计算衰减信息不为零的各像素点预设范围内的平均高度作为目标高度值;
当地貌平滑为地貌抬高时,在衰减信息不为零的各像素点的原始高度的基础上加上一个预设高度值作为目标高度值;
当地貌平滑为地貌压平时,将一个预设高度值作为衰减信息不为零的各像素点的目标高度值。
可选的,地表边缘高度调整模块330,具体用于:
在所述区域信息覆盖的区域内,确定衰减信息不为零的像素点区域的边缘像素点的集合作为边缘子区域;
通过滤波算法对所述边缘子区域对应的地表高度值进行平滑。
可选的,所述笔刷图的形状是预先设定的形状,或是根据笔刷参数生成的笔刷图形状,其中,所述笔刷参数包括衰减信息曲线以及笔刷半径或笔刷边长中的至少一个。
可选的,笔刷图覆盖区域确定模块310,还用于:
创建一个与所述目标雕刻区域大小相同的覆盖蒙板图;
将每一个图像帧中被所述笔刷图覆盖且对应的衰减信息不为零的像素点对应的覆盖蒙板图数值记为1,以记录所述区域信息;相应的,
地表内部高度调整模块320,还用于:
基于所述笔刷图对应的衰减信息对当前图像帧中覆盖蒙板图数值为1的像素点的地表高度值进行调整;
地表边缘高度调整模块330,还用于:
将所述覆盖蒙板图中数值为1的像素点区域的边缘像素点作为边缘子区域。
本发明实施例所提供的地貌平滑装置可执行本发明任意实施例所提供的地貌平滑方法,具备执行方法相应的功能模块和有益效果。
实施例四
图4是本发明实施例四中的计算机设备的结构示意图。图4示出了适于用来实现本发明实施方式的示例性计算机设备412的框图。图4显示的计算机设备412仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,计算机设备412以通用计算设备的形式表现。计算机设备412的组件可以包括但不限于:一个或者多个处理器或者处理单元416,***存储器428,连接不同***组件(包括***存储器428和处理单元416)的总线418。
总线418表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
计算机设备412典型地包括多种计算机***可读介质。这些介质可以是任何能够被计算机设备412访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
***存储器428可以包括易失性存储器形式的计算机***可读介质,例如随机存取存储器(RAM)430和/或高速缓存存储器432。计算机设备412可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机***存储介质。仅作为举例,存储***434可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线418相连。存储器428可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块442的程序/实用工具440,可以存储在例如存储器428中,这样的程序模块442包括但不限于操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块442通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备412也可以与一个或多个外部设备414(例如键盘、指向设备、显示器424等)通信,还可与一个或者多个使得用户能与该计算机设备412交互的设备通信,和/或与使得该计算机设备412能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口422进行。并且,计算机设备412还可以通过网络适配器420与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器420通过总线418与计算机设备412的其它模块通信。应当明白,尽管图4中未示出,可以结合计算机设备412使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
处理单元416通过运行存储在***存储器428中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的地貌平滑方法,该方法主要包括:
当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息;
针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整,其中,所述衰减信息为各像素点高度调整的参数;
当所述笔刷图功能被释放时,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
实施例五
本发明实施例五还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的地貌平滑方法,该方法主要包括:
当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息;
针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整,其中,所述衰减信息为各像素点高度调整的参数;
当所述笔刷图功能被释放时,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (9)
1.一种地貌平滑方法,其特征在于,包括:
当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息,包括创建一个与目标雕刻区域大小相同的覆盖蒙板图;将每一个图像帧中被所述笔刷图覆盖且对应的衰减信息不为零的像素点对应的覆盖蒙板图数值记为1,以记录所述区域信息;
针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中覆盖蒙板图数值为1的像素点的地表高度值进行调整,其中,所述衰减信息为各像素点高度调整的参数;
当所述笔刷图功能被释放时,将所述覆盖蒙板图中数值为1的像素点区域的边缘像素点作为边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑,其中,所述笔刷图的形状是预先设定的形状,或是根据笔刷参数生成的笔刷图形状,其中,所述笔刷参数包括衰减信息曲线以及笔刷半径或笔刷边长中的至少一个。
2.根据权利要求1所述的方法,其特征在于,所述确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息,包括:
针对每一图像帧,将所述笔刷图的中心映射到当前图像帧中的目标雕刻区域,确定所述笔刷图中心点在当前图像帧的坐标,其中,每一图像帧中包含有相同的所述目标雕刻区域;
根据所述笔刷图中心点的坐标和所述笔刷图的参数确定所述笔刷图在当前图像帧覆盖的区域信息,以获取所述笔刷图在每一图像帧中覆盖的区域。
3.根据权利要求1所述的方法,其特征在于,基于所述笔刷图对应的衰减信息对当前图像帧中所述笔刷图覆盖过的区域中各像素点的地表高度值进行调整,包括:
计算当前图像帧中所述笔刷图覆盖过的区域中,衰减信息不为零的各像素点的目标高度值;
根据衰减信息不为零的各像素点的衰减信息、原始高度及目标高度计算衰减信息不为零的各像素点的最终地表高度值,其中,所述原始高度为各像素点在当前图像帧的前一图像帧中的计算得到的最终地表高度值。
4.根据权利要求3所述的方法,其特征在于,根据衰减信息不为零的各像素点的衰减信息、原始高度及目标高度计算衰减信息不为零的各像素点的最终地表高度值,包括:
将衰减信息不为零的各像素点的原始高度和目标高度按照该像素点对应的衰减信息进行插值计算得到最终地表高度值。
5.根据权利要求3所述的方法,其特征在于,计算当前图像帧中所述笔刷图覆盖过的区域中,衰减信息不为零的各像素点的目标高度值,具体包括:
当地貌平滑为雕刻盘山路时,计算衰减信息不为零的各像素点预设范围内的平均高度作为目标高度值;
当地貌平滑为地貌抬高时,在衰减信息不为零的各像素点的原始高度的基础上加上一个预设高度值作为目标高度值;
当地貌平滑为地貌压平时,将一个预设高度值作为衰减信息不为零的各像素点的目标高度值。
6.根据权利要求1所述的方法,其特征在于,根据记录的所述区域信息确定被所述笔刷图覆盖过的区域的边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,包括:
在所述区域信息覆盖的区域内,确定衰减信息不为零的像素点区域的边缘像素点的集合作为边缘子区域;
通过滤波算法对所述边缘子区域对应的地表高度值进行平滑。
7.一种地貌平滑装置,其特征在于,包括:
笔刷图覆盖区域确定模块,用于当在逐帧播放图像帧的过程中检测到笔刷图功能被触发时,确定并记录所述笔刷图功能被触发后笔刷图在移动过程中,在每一图像帧中覆盖的区域信息,包括创建一个与目标雕刻区域大小相同的覆盖蒙板图;将每一个图像帧中被所述笔刷图覆盖且对应的衰减信息不为零的像素点对应的覆盖蒙板图数值记为1,以记录所述区域信息;
地表内部高度调整模块,用于针对每一图像帧,基于所述笔刷图对应的衰减信息对当前图像帧中覆盖蒙板图数值为1的像素点的地表高度值进行调整,其中,所述衰减信息为各像素点高度调整的参数;
地表边缘高度调整模块,用于当所述笔刷图功能被释放时,将所述覆盖蒙板图中数值为1的像素点区域的边缘像素点作为边缘子区域,并对所述边缘子区域对应的地表高度值进行平滑处理,以完成地貌平滑。
8.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的地貌平滑方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的地貌平滑方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910383384.2A CN110335205B (zh) | 2019-05-09 | 2019-05-09 | 一种地貌平滑方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910383384.2A CN110335205B (zh) | 2019-05-09 | 2019-05-09 | 一种地貌平滑方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110335205A CN110335205A (zh) | 2019-10-15 |
CN110335205B true CN110335205B (zh) | 2021-09-14 |
Family
ID=68140071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910383384.2A Active CN110335205B (zh) | 2019-05-09 | 2019-05-09 | 一种地貌平滑方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110335205B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784790A (zh) * | 2020-06-22 | 2020-10-16 | 上海米哈游天命科技有限公司 | 一种地貌生成方法、装置、计算机设备和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109448078A (zh) * | 2018-10-19 | 2019-03-08 | 珠海金山网络游戏科技有限公司 | 一种图像编辑***、方法及设备 |
-
2019
- 2019-05-09 CN CN201910383384.2A patent/CN110335205B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109448078A (zh) * | 2018-10-19 | 2019-03-08 | 珠海金山网络游戏科技有限公司 | 一种图像编辑***、方法及设备 |
Non-Patent Citations (1)
Title |
---|
基于Unity3D的三维游戏场景设计与实践;张策;《中国优秀硕士学位论文全文数据库 信息科技辑》;20170215;第27-28页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110335205A (zh) | 2019-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10593098B2 (en) | Smooth draping layer for rendering vector data on complex three dimensional objects | |
CN112581629B (zh) | 增强现实显示方法、装置、电子设备及存储介质 | |
CN109771951B (zh) | 游戏地图生成的方法、装置、存储介质和电子设备 | |
US10701334B2 (en) | Virtual reality parallax correction | |
CN110378947B (zh) | 3d模型重建方法、装置及电子设备 | |
CN109191554B (zh) | 一种超分辨图像重建方法、装置、终端和存储介质 | |
CN110853488B (zh) | 一种poi标签显示方法、装置和设备 | |
CN112766027A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN111870953A (zh) | 一种高度图生成方法、装置、设备及存储介质 | |
CN110335205B (zh) | 一种地貌平滑方法、装置、计算机设备和存储介质 | |
CN112132845B (zh) | 三维模型的单体化方法、装置、电子设备和可读介质 | |
CN110378948B (zh) | 3d模型重建方法、装置及电子设备 | |
CN113178013A (zh) | 三角网格滤波方法、装置、电子设备和存储介质 | |
JPH0636013A (ja) | 地形データの作成方法および装置 | |
CN108520259B (zh) | 一种前景目标的提取方法、装置、设备及存储介质 | |
CN112465692A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN107452046B (zh) | 三维城市模型的纹理处理方法及装置、设备及可读介质 | |
CN113838199B (zh) | 一种三维地形生成方法 | |
CN115797533A (zh) | 模型描边方法、装置、设备及存储介质 | |
CN111870954B (zh) | 一种高度图生成方法、装置、设备及存储介质 | |
CN113157835B (zh) | 基于gis平台的图像处理方法、装置、平台及存储介质 | |
CN116109758B (zh) | 一种光源投影位置定位、场景渲染的方法及装置 | |
CN108062793A (zh) | 基于高程的物体顶部处理方法、装置、设备和存储介质 | |
CN116188668B (zh) | 一种基于ios平台的阴影渲染的方法、介质及电子设备 | |
CN111506680B (zh) | 地形数据生成、渲染方法及装置、介质、服务器、终端 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |