CN113256785B - 图像处理方法、装置、设备及介质 - Google Patents
图像处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN113256785B CN113256785B CN202110599787.8A CN202110599787A CN113256785B CN 113256785 B CN113256785 B CN 113256785B CN 202110599787 A CN202110599787 A CN 202110599787A CN 113256785 B CN113256785 B CN 113256785B
- Authority
- CN
- China
- Prior art keywords
- image
- processed
- brightness
- pixel
- volume shadow
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/60—Shadow generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/506—Illumination models
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本公开涉及一种图像处理方法、装置、设备及介质。其中,图像处理方法包括:获取待处理图像;对待处理图像进行亮度提取,得到待处理图像对应的亮度图像;按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。根据本公开实施例,能够高效地生成待处理图像的体积阴影效果,并且降低生成体积阴影时对算力和性能的需求。
Description
技术领域
本公开涉及图像处理技术领域,尤其涉及一种图像处理方法、装置、设备及介质。
背景技术
当在一个物体和光源之间存在障碍物时,该物体将会处在阴影中。障碍物产生的阴影区域称为体积阴影。
目前,一般利用光照深度图上的深度数值,将障碍物的边缘扩展到一定距离以外或者到无穷远处,产生边缘的放射感,以实现体积阴影效果。但是,在识别光照深度图上的深度数值的过程中,需要使用光照深度图进行逐帧循环步长比对,对算力和性能的需求较高,导致在算力和性能较低的设备上无法生成图像的体积阴影效果。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种图像处理方法、装置、设备及介质。
第一方面,本公开提供了一种图像处理方法,包括:
获取待处理图像;
对待处理图像进行亮度提取,得到待处理图像对应的亮度图像;
按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
第二方面,本公开提供了一种图像处理装置,包括:
图像获取单元,配置为获取待处理图像;
亮度提取单元,配置为对待处理图像进行亮度提取,得到待处理图像对应的亮度图像;
图像模糊单元,配置为按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
第三方面,本公开提供了一种图像处理设备,包括:
处理器;
存储器,用于存储可执行指令;
其中,处理器用于从存储器中读取可执行指令,并执行可执行指令以实现第一方面的图像处理方法。
第四方面,本公开提供了一种计算机可读存储介质,该存储介质存储有计算机程序,当计算机程序被处理器执行时,使得处理器实现第一方面的图像处理方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例的图像处理方法、装置、设备及介质,能够从待处理图像中提取亮度图像,并按照光线方向对亮度图像进行径向模糊,得到用于表征待处理图像的体积阴影效果的体积阴影图像,能够高效地生成待处理图像的体积阴影效果,并且无论是亮度提取处理还是径向模糊处理,对算力和性能的需求均比较低,进而可以降低生成体积阴影时对算力和性能的需求,使其可以适用于各种算力和性能的设备。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本公开实施例提供的一种体积阴影的原理图;
图2为本公开实施例提供的一种图像处理方法的流程示意图;
图3为本公开实施例提供的一种亮度图像的示意图;
图4为本公开实施例提供的一种设置体积阴影的界面示意图;
图5为本公开实施例提供的一种体积阴影图像的效果图;
图6为本公开实施例提供的又一种体积阴影图像的效果图;
图7为本公开实施例提供的另一种体积阴影图像的效果图;
图8为本公开实施例提供的另一种图像处理方法的流程示意图;
图9为本公开实施例提供的一种图像处理装置的结构示意图;
图10为本公开实施例提供的一种图像处理设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
随着计算机图形渲染能力的不断提高,游戏画面特效越来越多,游戏中加入了各种绚丽的技能效果、光照效果、雾化效果以及阴影效果等。其中,阴影效果包括体积阴影,在游戏中加入体积阴影,使游戏画面看上去更加生动,也更能体现出3D场景中物体的真实感,可以给玩家带来更好的游戏体验。
相关技术中,已有的体积阴影的生成方法为:沿相机到平面空间像素位置的方向,以光线步进的方式进行逐像素采样,在该方向进行抖动步进以获取世界空间的位置,并将该位置与光照深度图像上的深度数值对比,以进行阴影的判定。即利用光照深度图上的深度数值,将障碍物的边缘扩展到一定距离以外或者到无穷远处,产生边缘的放射感,以实现体积阴影效果。
然而,已有的体积阴影的生成方法包括如下缺点:
1、采用的光照深度图需要全尺寸,对图像处理设备的带宽占用和渲染性能消耗较大。
2、沿相机到平面空间的每个像素位置的方向,都需要对光照深度图进行多次循环采样和对比,增加了计算资源的消耗。
3、在执行光线步进的过程中,采用抖动步进的方式,会产生大量的噪点,因此需要对噪点进行降噪处理,降噪处理过程消耗大量的计算资源,对图像处理设备的性能要求较高。
4、对于产生的噪点,需要使用时序降噪方法,对于静帧图像来说容易产生抖动,使得生成的体积阴影的效果较差;
5、光线步进方式必须通过深度比较来进行阴影区的判定,无法绘制深度的遮挡,因此无法对体积阴影进行判定及绘制。
可见,基于已有的体积阴影的生成方法生成体积阴影时,对算力和性能的需求较高,并且生成的体积阴影的效果较差。
为了解决上述的问题,本公开实施例提供了一种对算力和性能的需求均比较低且生成的体积阴影的效果较好的图像处理方法、装置、设备及介质。
下面,首先结合图1,对体积阴影的生成原理进行说明。
图1示出了本公开实施例提供的一种体积阴影的生成原理。
如图1所示,该原理图中可以包括遮挡体(即遮挡物)的背光面20。遮挡体可以包括图像中的建筑物、桥梁、树木、游戏角色等,在此不做限制。体积阴影产生的原理可以是:光线10被遮挡物遮挡以后,使一定区域范围内没有光线。体积阴影30的一侧是遮挡体的背光面20。
经过对图1所示的体积阴影的生成原理进行研究,申请人发现:光线被遮挡体遮挡以后,遮挡体的背光面部分的亮度降低,将遮挡体的背光面部分沿着光照方向进行径向模糊操作,即可在一定程度上体现遮挡体的体积阴影的效果。
因此,本公开基于上述发现,提出一种图像处理方法,能够在需要生成待处理图像的体积阴影图像时,提取待处理图像的亮度信息,并沿着光线方向对亮度信息进行径向模糊,得到待处理图像内遮挡体的体积阴影效果。
下面首先结合图2至图7对本公开实施例提供的图像处理方法进行说明。
在本公开实施例中,该图像显示方法可以由电子设备执行。其中,该电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴设备、等等的移动终端以及诸如数字TV、台式计算机、智能家居设备等等的固定终端。
图2示出了本公开实施例提供的一种图像处理方法的流程示意图。
如图2所示,该图像处理方法可以包括如下步骤。
S210、获取待处理图像。
在本公开实施例中,待处理图像可以是用于生成体积阴影图像的原始图像。
在本公开实施例中,待处理图像包括实时渲染图像和预烘焙渲染图像中的任一种。
在本公开一些实施例中,在待处理图像包括实时渲染图像的情况下,待处理图像是利用图像颜色数据进行实时渲染得到的图像。
其中,在待处理图像包括实时渲染图像的情况下,待处理图像可以包括:游戏实时画面、用户绘制的图像、静态图像、视频帧等,在此不作限制。
在一些实施例中,在待处理图像是游戏实时画面的情况下,图像颜色数据可以是当前游戏画面帧对应的颜色数据,待处理图像可以是利用当前游戏画面帧对应的颜色数据进行实时渲染得到的图像。
在另一些实施例中,在待处理图像是视频帧的情况下,图像颜色数据可以是当前视频帧对应的颜色数据,待处理图像可以是利用当前视频帧对应的颜色数据进行实时渲染得到的图像。
在本公开另一些实施例中,在待处理图像包括预烘焙渲染图像的情况下,待处理图像可以是利用预先得到的图像颜色数据进行离线渲染得到的图像。
可选地,离线渲染方式可以是光照贴图(lightmap)方式。
其中,在待处理图像是预烘焙渲染图像的情况下,待处理图像可以包括:静态图像、视频帧等,在此不作限制。
在一些实施例中,在待处理图像是静态图像的情况下,图像颜色数据可以是静态图像对应的颜色数据,待处理图像可以是利用静态图像对应的颜色数据进行离线渲染得到的图像。
在另一些实施例中,在待处理图像是视频帧的情况下,图像颜色数据可以是视频帧对应的颜色数据,待处理图像可以是利用视频帧对应的颜色数据进行离线渲染得到的图像。
S220、对待处理图像进行亮度提取,得到待处理图像对应的亮度图像。
在本公开实施例中,对待处理图像进行亮度提取可以是提取待处理图像中的亮度值。其中,亮度值指的是待处理图像的明亮程度。
在本公开一些实施例中,对待处理图像进行亮度提取,得到待处理图像对应的亮度图像,可以包括:
基于待处理图像中各像素点的颜色值,将待处理图像由RGB色彩模式转化成HSL色彩模式;
提取HSL色彩模式的图像中各像素点的亮度,得到待处理图像对应的亮度图像。
其中,RGB色彩模式可以是R(Red,红色)、G(Green,绿色)和B(Blue,蓝色)模式;HSL色彩模式可以是H(Hue,色相)、S(Saturation,饱和度)和L(Lightness,亮度)模式。
具体地,电子设备可以基于RGB色彩模式的图像中各像素点的红色值、绿色值和蓝色值,将待处理图像转化成HSL色彩模式图像,并提取HSL色彩模式图像中各像素的亮度,生成待处理图像对应的亮度图像。
在本公开又一些实施例中,对待处理图像进行亮度提取,得到待处理图像对应的亮度图像,可以包括:
将待处理图像转化为二值化图像,将二值化图像作为待处理图像对应的亮度图像。
在本公开实施例中,电子设备获取到待处理图像后,可以将待处理图像中的各个待处理像素由彩色值转换为0-255之间的灰度值,得到二值化图像,并将二值化图像中的各像素的灰度值分别作为待处理图像相应待处理像素的亮度,即将二值化图像作为待处理图像对应的亮度图像。
S230、按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
在本公开实施例中,光线方向指的是光源的照射方向。
在本公开实施例中,径向模糊可以是径向上的模糊,通过对亮度图像进行径向模糊处理,可以使图像在一定程度上体现遮挡体的体积阴影效果。
具体的,电子设备可以沿着亮度图像中的各个像素点所处的光源的光线方向,对亮度图像的各个像素点朝向背向光源的方向进行模糊,以生成待处理图像对应的体积阴影图像,实现体现出待处理图像中的遮挡体的体积阴影效果。
在本公开实施例中,能够从待处理图像中提取亮度图像,并按照光线方向对亮度图像进行径向模糊,得到用于表征待处理图像的体积阴影效果的体积阴影图像,能够高效地生成待处理图像的体积阴影效果,并且无论是亮度提取处理还是径向模糊处理,对算力和性能的需求均比较低,进而可以降低生成体积阴影时对算力和性能的需求,使其可以适用于各种算力和性能的设备。
在本公开另一种实施方式中,无论是实时渲染图像还是预烘焙渲染图像,均可以基于以下方式进行渲染得到。
在本公开一些实施例中,待处理图像可以包括对图像颜色数据进行渲染得到的图像。
具体地,待处理图像可以是直接对图像颜色数据进行屏幕渲染得到的图像。
可选地,图像颜色数据可以包括纹理图像。纹理图像可以为RGB模式下的图像。
以待处理图像是游戏实时画面为例,电子设备可以首先基于屏幕后处理操作,获取游戏画面的实时屏幕帧的各个像素的颜色,并将实时屏幕帧的各个像素的颜色绘制到纹理图像中,然后对纹理图像进行屏幕渲染,得到待处理图像。
进一步地,电子设备可以将游戏画面的实时屏幕帧存储至预先创建的纹理画布中,以实现将游戏画面的实时屏幕帧绘制到纹理图像中。
在本公开实施例中,对待处理图像进行亮度提取,得到待处理图像对应的亮度图像,可以包括:
对待处理图像进行去色处理,得到待处理图像对应的灰度图像;
对灰度图像进行亮度调节,得到亮度图像。
在本公开实施例中,电子设备获取到待处理图像后,可以对待处理图像进行去色处理,以将待处理图像转化为对应的灰度图像,该灰度图像即相当于二值化转换后的二值化图像。为了将待处理图像的亮度信息调节到合适的程度,电子设备可以继续基于预先设置的调节比例,对灰度图像进行亮度调节,得到亮度图像。
在一个示例中,调节比例可以是固定比例。在另一个示例中,调节比例可以是增减比例。
其中,固定比例可以是根据需要预先设置的比例,在此不作限制。固定比例可以用于调节灰度图像的亮度值和对比度中的至少一种。固定比例可以将灰度图像调节至指定的亮度程度。增减比例可以是基于需要预先设置的比例,在此不作限制。增减比例可以用于调节灰度图像的亮度值和对比度中的至少一种。增减比例可以是增加比例或减小比例,增加比例可以将灰度图像增加一定的亮度程度,减小比例可以将灰度图像减小一定的亮度程度。
在一个示例中,在对亮度值进行调节且调节比例为固定比例的情况下,如果固定比例是50%,则电子设备在获取到灰度图像之后,可以将灰度图像的整体亮度值调整为当前值的50%。
在另一个示例中,在对亮度值进行调节且调节比例为减小比例的情况下,如果减小比例是20%,则电子设备在获取到灰度图像之后,可以将灰度图像的整体亮度值减小20%。
在又一个示例中,在对亮度值进行调节且调节比例为增加比例的情况下,如果增加比例是20%,则电子设备在获取到灰度图像之后,可以将灰度图像的整体亮度值增加20%。
在本公开实施例中,通过对待处理图像进行去色处理,得到待处理图像对应的灰度图像,并对灰度图像进行亮度调节,可以得到图3所示的亮度图像。
由此,在本公开实施例中,待处理图像可以包括对图像颜色数据进行渲染得到的图像,电子设备对待处理图像进行去色处理,可以只保留亮度信息,将亮度信息作为体积光效果的基本明暗信息,进而基于体积光效果的基本明暗信息生成体积阴影效果。电子设备对去色处理得到的灰度图像进行亮度调节,可以将灰度图像的亮度调节到合适的程度,能够使体积阴影效果的视觉性更好。同时,由于去色处理和亮度调节处理对算力和性能的需求均比较低,因此,有利于降低生成体积阴影时对算力和性能的需求,使其可以适用于各种算力和性能的设备。
在本公开另一些实施例中,待处理图像可以包括对图像光照数据进行渲染得到的图像,图像光照数据为对图像颜色数据进行光照提取得到的数据。
可选地,图像颜色数据可以包括纹理图像。纹理图像可以为RGB模式下的图像。
以待处理图像是游戏实时画面为例,电子设备可以首先基于屏幕后处理操作,获取游戏画面的实时屏幕帧的各个像素的颜色,并将实时屏幕帧的各个像素的颜色绘制到纹理图像中,然后按照预设的提取参数对纹理图像进行光照信息提取得到图像光照数据,进而对图像光照数据进行图像渲染,得到待处理图像。由此,可以使用纯的场景光照信息进行图像渲染,得到待处理图像。
进一步地,电子设备可以将游戏画面的实时屏幕帧存储至预先创建的纹理画布中,以实现将游戏画面的实时屏幕帧绘制到纹理图像中。
在本公开实施例中,提取参数可以包括物体基本色、粗糙度和金属度。
在一个示例中,物体基本色可以是白色,粗糙度可以是1,金属度0。需要说明的。在其他示例中,物体基本色还可以是根据需要预先设置的其他颜色,粗糙度和金属度也可以是根据需要预先设置的其他数值,在此不作限定。
在本公开一些实施例中,对待处理图像进行亮度提取,得到待处理图像对应的亮度图像,包括:
对待处理图像进行去色处理,得到亮度图像。
在本公开实施例中,由于待处理图像是基于纯的场景光照信息进行图像渲染得到的,电子设备获取到待处理图像后,可以直接对待处理图像进行去色处理,以将待处理图像转化为对应的灰度图像,该灰度图像即相当于二值化转换后的二值化图像,也即待处理图像对应的亮度图像。
由此,在本公开实施例中,待处理图像可以包括对图像光照数据进行渲染得到的图像,电子设备对待处理图像进行去色处理,可以只保留亮度信息,将亮度信息作为体积光效果的基本明暗信息,进而基于体积光效果的基本明暗信息生成体积阴影效果。并且,电子设备能够不同的体积光效果的基本明暗信息生成体积阴影,可以适应不同的明暗信息调节需求。同时,由于去色处理对算力和性能的需求均比较低,因此,有利于降低生成体积阴影时对算力和性能的需求,使其可以适用于各种算力和性能的设备。
在本公开又一种实施方式中,为了进一步提高待处理图像的体积阴影图像的生成效率,可以获取亮度图像的光源位置,并将亮度图像中各亮度像素到光源位置的方向进行单位化,之后对该单位化的方向进行随机操作,简化了生成体积阴影图像的流程,进而提高体积阴影的生成效率。
返回图2,在这些实施例中,可选的,S230中的按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像,可以包括:
获取亮度图像的光源位置;
按照预设的模数,对亮度图像的各个亮度像素到光源位置的方向矢量进行单位化处理,得到各个亮度像素的单位方向矢量;
按照光线方向,利用单位方向矢量对亮度图像进行随机模糊,得到体积阴影图像。
在本公开实施例中,亮度图像的光源位置可以是光源的中心点在亮度图像中的像素位置。
在一些实施例中,电子设备可以利用预设的图像光源识别算法,对亮度图像的光源的中心点的位置进行识别,得到亮度图像的光源位置。
在另一些实施例中,电子设备可以从图像绘制参数中获取预先设定好的亮度图像的光源位置。
在本公开实施例中,预设的模数可以是一个数值,预设的模数可以是1、2或者其他正整数。
在本公开实施例中,方向矢量可以是光源位置与亮度图像中各个亮度像素位置确定的矢量差,方向矢量可以包括亮度图像的各个亮度像素到光源位置的方向和每个矢量方向的长度。
在本公开实施例中,方向矢量可以基于如下公式确定:
shiftDir=viewSunPos.xy-i.uv (公式1)
其中,viewSunPos.xy指的是光源位置,i.uv指的是亮度图像中各个亮度像素位置,shiftDir是方向矢量。
在本公开实施例中,单位化处理可以是保持方向矢量的方向不变,将方向矢量的长度转化为预设的模数。例如,预设模数是1时,单位化处理将方向矢量的长度转化为1。
在本公开实施例中,单位化处理可以基于如下公式实现:
shiftDir_N=shiftDir/pow(max(dot(shiftDir,shiftDir),1e-5),0.5) (公式2)
其中,shiftDir_N是单位方向矢量,pow(*)是幂函数,dot(*)是向量的点乘函数。
在本公开实施例中,按照预设的模数,对亮度图像的各个亮度像素到光源位置的方向矢量进行单位化处理,得到各个亮度像素的单位方向矢量具体为:在预设的模数是1的情况下,对亮度图像的各个亮度像素到光源位置的方向矢量进行单位化处理,可以使方向矢量的方向保持不变,将矢量方向的长度转化为1,得到各个亮度像素的单位方向矢量。
由此,在本公开实施例中,可以得到各个光线方向对应的单位方向矢量。进一步地,每个亮度像素的单位方向矢量为该亮度像素所处的光线方向对应的单位方向矢量。
在本公开实施例中,按照光线方向,利用单位方向矢量对亮度图像进行随机模糊可以具体为:沿着亮度图像的各个像素点所处的光源的光线方向,将单位化矢量朝向背向光源的方向进行模糊。
在本公开一些实施例中,按照光线方向,利用单位方向矢量对亮度图像进行随机模糊,得到体积阴影图像,可以包括:
针对每个亮度像素,根据亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算亮度像素对应的偏移距离;
根据各个亮度像素对应的偏移距离和各个亮度像素对应的亮度值,对亮度图像沿光线方向进行模糊,得到体积阴影图像。
其中,模糊参数可以包括体积阴影偏离距离和体积阴影闪烁速度中的至少一种。
在一些实施例中,在待处理图像是静态图像的情况下,模糊参数可以包括体积阴影偏离距离。
具体地,首先针对每个光线方向,电子设备可以将该光线方向对应的单位方向矢量输入随机函数,得到该光线方向对应的基础偏移距离,该基础偏移距离为基于随机函数进行计算得到的0-1之间的随机值。然后针对每个亮度像素,电子设备可以根据该亮度像素所处的光线方向对应的基础偏移距离、预设的体积阴影偏离距离、该亮度像素对应的方向矢量,计算出该亮度像素对应的偏移距离。由此,电子设备可以在本次模糊的过程中,针对每个亮度像素,在原始亮度图像上查找该亮度像素在基于该亮度像素对应的偏移距离进行偏移后得到的原始亮度像素,并且将查找到的原始亮度像素的亮度值作为该亮度像素的亮度值,进而生成本次模糊得到的体积阴影图像。
在另一些实施例中,在待处理图像是动态图像、游戏动画、视频中的一帧图像的情况下,模糊参数可以包括体积阴影偏离距离和体积阴影闪烁速度。
具体地,首先针对每个光线方向,电子设备可以将该光线方向对应的单位方向矢量和预设的体积阴影闪烁速度输入随机函数,得到该光线方向对应的基础偏移距离,该基础偏移距离为基于随机函数进行计算得到的0-1之间的随机值。然后针对每个亮度像素,电子设备可以根据该亮度像素所处的光线方向对应的基础偏移距离、预设的体积阴影偏离距离、该亮度像素对应的方向矢量,计算出该亮度像素对应的偏移距离,以对基础偏移距离针对每个亮度像素分别进行修正。由此,电子设备可以在本次模糊的过程中,针对每个亮度像素,在原始亮度图像上查找该亮度像素在基于该亮度像素对应的偏移距离进行偏移后得到的原始亮度像素,并且将查找到的原始亮度像素的亮度值作为本次模糊得到的该亮度像素的亮度值,进而本次模糊得到的全部亮度像素的亮度值,生成本次模糊得到的体积阴影图像。
由此,上述径向模糊处理过程相比于步进过程,不会产生抖动,因此不需要进行降噪处理,可以节约计算资源且提高体积阴影图像的效果,并且无需绘制深度的遮挡,对无深度信息的遮挡物同样适用。同时,由于径向模糊方法过程简单,可以提高体积阴影图像的生成效率。另外,还可以通过调节模糊参数中的体积阴影闪烁速度,在动态画面中模拟光线闪烁的效果。
在本公开一些实施例中,电子设备可以利用一次计算得到的各个光线方向对应的基础偏移距离直接计算一次各个亮度像素对应的偏移距离,以实现对亮度图像的单次模糊。
由此,在本公开实施例中,可以通过利用一次计算得到的各个亮度像素对应的偏移距离对亮度图像进行一次模糊,降低模糊过程的计算量。
在本公开另一些实施例中,电子设备可以利用多次计算得到的各个光线方向对应的基础偏移距离计算一次各个亮度像素对应的偏移距离,以实现对亮度图像的模糊。
其中,预设数量可以是根据需要设置的任意数量,可以是2、3、4,这里不做限定。
可选地,根据亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算亮度像素对应的偏移距离,可以包括:
根据亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算预设数量的偏移距离初始值;
根据偏移距离初始值的平均值,计算亮度像素对应的偏移距离。
在本公开一些实施例中,偏移距离初始值可以为各个光线方向对应的基础偏移距离。
此时,电子设备可以将每个光线方向对应的偏移距离初始值的平均值作为该光线方向对应的基础偏移距离平均值,进而针对每个亮度像素,根据该亮度像素所处的光线方向对应的基础偏移距离平均值、预设的体积阴影偏离距离、该亮度像素对应的方向矢量,计算出该亮度像素对应的偏移距离。
以待处理图像是静态图像且模糊参数可以包括体积阴影偏离距离为例,首先针对每个光线方向,电子设备可以将该光线方向对应的单位方向矢量输入随机函数,得到该光线方向对应的预设数量的基础偏移距离,该基础偏移距离为基于随机函数进行计算得到的0-1之间的随机值,即该光线方向对应的预设数量的偏移距离初始值。然后针对每个光线方向,电子设备可以计算该光线方向对应的预设数量的偏移距离初始值的平均值,得到该光线方向对应的基础偏移距离均值。接着,针对每个亮度像素,电子设备可以根据该亮度像素所处的光线方向对应的基础偏移距离均值、预设的体积阴影偏离距离、该亮度像素对应的方向矢量,计算出该亮度像素对应的偏移距离。由此,电子设备可以在本次模糊的过程中,针对每个亮度像素,在原始亮度图像上查找该亮度像素在基于该亮度像素对应的偏移距离进行偏移后得到的原始亮度像素,并且将查找到的原始亮度像素的亮度值作为该亮度像素的亮度值,进而生成本次模糊得到的体积阴影图像。
由此,在本公开实施例中,可以基于对基础偏移距离的预处理,减轻亮度图像在光线方向上的颗粒感。并且,由于基础偏移距离是基于每个亮度像素的方向单位矢量上计算的,每个光线方向上计算的基础偏移距离能够保持一致,因此,保证了处于一个光线方向上的各个亮度像素对应的基础偏移距离的稳定性。
在本公开又一些实施例中,按照光线方向,利用单位方向矢量对亮度图像进行随机模糊,得到体积阴影图像,可以包括:
按照光线方向,利用单位方向矢量对亮度图像进行预设迭代次数的迭代式随机模糊,得到多个模糊图像;
根据多个模糊图像,合成体积阴影图像。
其中,预设迭代次数可以是预先设置的任意次数,例如:2次、3次或者4次等。
具体地,在每次迭代的过程中,电子设备可以按照光线方向,利用单位方向矢量对亮度图像进行随机模糊,得到多个模糊图像,然后,将全部的模糊图像中的相同像素的像素值进行叠加,得到叠加图像,以将叠加图像中的各个像素的像素值除以预设迭代次数,得到体积阴影图像。
以待处理图像是游戏动画且模糊参数包括体积阴影偏离距离和体积阴影闪烁速度为例,体积阴影图像的生成可以通过以下公式实现:
dirRandom=random(lerp(0,1,sin(0.001*_ShadowFlash*_Time.y))+shiftDir_N,100) (公式3)
其中,dirRandom是随机函数输出的基础偏移距离,random(*)是随机函数,lerp(*)是线性插值函数,0和1是线性插值函数lerp(*)的经验值,lerp(*)位于0~1之间、0.001用来缩小ShadowFlash的值,ShadowFlash是体积阴影闪烁速度,_Time.y是时间戳,100是random(*)的输入参数,用来表示随机数产生的密度。
由此,基于公式3可以计算得到各个光线方向对应的基础偏移距离。
blurshift=dirRandom*_OffsetRange*shiftDir/IterationNum (公式4)
其中,blurshift是亮度像素对应的偏移距离,_OffsetRange是体积阴影偏离距离,IterationNum是预设迭代次数。
由此,基于公式4可以计算得到各个亮度像素对应的偏移距离。
uvOffset=j*blurshift (公式5)
其中,uvOffset是偏移后的原始亮度像素的像素位置,j是当前迭代次数。
由此,基于公式5可以计算得到当前迭代次数下偏移后的原始亮度像素的像素位置。
tmpColor=tex2D(_MainTex,uvOffset).rgb (公式6)
其中,_MainTex为亮度图像。
由此,基于公式6可以计算得到当前迭代次数下得到的全部亮度像素的亮度值,得到当前迭代次数下的模糊图像。
最后,可以将全部的模糊图像中的相同像素的像素值进行叠加,得到叠加图像,以将叠加图像中的各个像素的像素值除以预设迭代次数,得到体积阴影图像。
图4示出了本公开实施例提供的一种设置体积阴影的界面示意图。图5示出了本公开实施例提供的一种体积阴影图像的效果图。图6示出了本公开实施例提供的又一种体积阴影图像的效果图。
在一个示例中,如果预设迭代次数是3,图4是第一次迭代模糊得到的体积阴影图像的效果图,图5是第二次迭代模糊得到的体积阴影图像的效果图,图6是第三次迭代模糊得到的体积阴影图像的效果图。由图4-图6可以看出,随着迭代次数的增加,体积阴影的效果逐渐提升。
在本公开一些实施例中,电子设备在不同迭代次数中均对原始的亮度图像进行模糊,以更可靠地生成体积阴影图像。
在本公开另一些实施例中,利用单位方向矢量对亮度图像进行预设迭代次数的迭代式随机模糊,得到体积阴影图像,可以包括:
对亮度图像进行降采样,得到转换后的亮度图像;
在预设迭代次数的前预设次数中,利用单位方向矢量对转换后的亮度图像进行迭代式随机模糊,得到前预设次数对应的第一模糊图像;
在预设迭代次数的其他次数中,利用单位方向矢量对亮度图像进行迭代式随机模糊,得到其他次数对应的第二模糊图像;
对各个第一模糊图像进行升采样,得到各个转换后的第一模糊图像;其中,转换后的第一模糊图像和第二模糊图像形成多个模糊图像。
相应地,根据多个模糊图像,合成体积阴影图像可以具体包括:
根据转换后的第一模糊图像和第二模糊图像,合成体积阴影图像
其中,前预设次数可以是预设迭代次数的第1次至预设次数的倒数第2次之间的任一迭代次数。
在本公开实施例中,电子设备可以首先基于根据需要预先设置的降采样比例,对亮度图像进行降采样,得到转换后的亮度图像。然后,在预设迭代次数中的除最后一次以外的其他迭代次数中,利用转换后的亮度图像进行迭代式随机模糊,得到各个除最后一次以外的其他迭代次数对应的第一模糊图像,以利用小尺寸的转换后的亮度图像减少模糊过程中的计算量。然后,电子设备可以在最后一次迭代次数中,利用原始的亮度图像进行随机模糊,得到最后一次迭代次数对应的第二模糊图像。接着,电子设备可以基于根据需要预先设置的升采样比例,对各个迭代次数对应的第一模糊图像分别进行升采样,得到各个转换后的第一模糊图像,使各个转换后的第一模糊图像的尺寸分别与原始的亮度图像相同。其中,升采样比例和降采样比例可以相对应。由此,电子设备可以将各个转换后的第一模糊图像和第二模糊图像中的相同像素的像素值进行叠加,得到叠加图像,并将叠加图像中的各个像素的像素值除以预设迭代次数,得到体积阴影图像,以在保证较好的径向模糊效果的前提下,节约模糊过程的计算量。
在本公开再一些实施方式中,基于用户的视觉体验,较深场景的体积阴影会给用户带来的视觉效果不明显,如果不为较深的场景绘制体积阴影,不但不会影响用户的视觉效果,还可以进一步减小生成体积阴影图像的计算量。
在本公开一些实施例中,在执行S220之前,该图像处理方法还可以包括:
提取待处理图像中每个像素点的深度值;
删除深度值大于预先设置的深度值阈值的像素点;
基于深度值小于或等于预先设置的深度值阈值的各像素点,生成中间处理图像。
其中,S220可以具体包括:
对中间处理图像进行亮度处理,得到待处理图像对应的亮度图像。
在一些实施例中,深度值阈值可以是预先设置的且不会影响用户的视觉效果的值,在此不作限制。
在另一些实施例中,深度值阈值可以是待处理图像中各像素位置的深度的平均值。
在本公开实施例中,当电子设备获取待处理图像后,可以提取待处理图像中每个像素点的深度值,并针对待处理图像中的每个像素点,确定每个像素点的深度值是否小于或等于预先设置的深度阈值。如果像素点的深度值大于预先设置的深度值阈值,将深度值大于预先设置的深度值阈值的像素点删除,如果像素点的深度值小于或等于预先设置的深度值阈值,则基于深度值小于深度值阈值的目标像素点确定中间处理图像,以进一步对中间处理图像进行亮度处理,得到待处理图像对应的亮度图像。
在一些实施例中,电子设备可以直接从待处理图像的绘制参数里获取各像素位置的深度。
在另一些实施例中,电子设备可以利用预设的深度识别算法对待处理图像的各个像素位置的深度进行识别,确定各像素位置的深度。
在本公开另一些实施例中,在执行S230之前,该图像处理方法还可以包括:
提取亮度图像中每个亮度像素的深度值;
删除深度值大于预先设置的深度值阈值的亮度像素;
基于深度值小于或等于预先设置的深度值阈值的每个亮度像素,生成中间亮度图像。
其中,S230可以具体包括:
对中间亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
在一些实施例中,深度值阈值可以是预先设置的且不会影响用户的视觉效果的值,在此不作限制。
在另一些实施例中,深度值阈值可以是亮度图像中各亮度像素的深度的平均值。
在本公开实施例中,当电子设备确定亮度图像后,可以提取亮度图像中每个亮度像素的深度值,针对亮度图像中的每个亮度像素,确定每个亮度像素的深度值是否小于或等于预先设置的深度阈值。如果亮度像素的深度值大于预先设置的深度值阈值,将深度值大于预先设置的深度值阈值的亮度像素删除,如果亮度像素的深度值小于或等于预先设置的深度值阈值,则基于深度值小于深度值阈值的目标亮度像素,确定中间亮度图像,以进一步对中间亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
在一些实施例中,电子设备可以直接从亮度图像的绘制参数里获取各像素位置的深度。
在另一些实施例中,电子设备可以利用预设的深度识别算法对亮度图像的各个像素位置的深度进行识别,确定各像素位置的深度。
在本公开又一些实施例中,S230可以包括:
提取亮度图像中每个亮度像素的深度值;
基于深度值小于或等于预先设置的深度值阈值的每个亮度像素,生成模糊输入数据;
按照光线方向对模糊输入数据进行径向模糊,得到待处理图像对应的体积阴影图像。
在一些实施例中,深度值阈值可以是预先设置的且不会影响用户的视觉效果的值,在此不作限制。
在另一些实施例中,深度值阈值可以是待处理图像中各像素位置的深度的平均值。
在本公开实施例中,当电子设备按照光线方向对亮度图像进行径向模糊时,针对亮度图像中的每个亮度像素,确定亮度像素的深度值是否小于或等于预先设置的深度值阈值。如果亮度像素的深度值大于预先设置的深度值阈值,则不利用其生成模糊输入数据,如果亮度像素的深度值小于或等于预先设置的深度值阈值,则利用其生成模糊输入数据,然后,按照光线方向对模糊输入数据进行径向模糊,得到待处理图像对应的体积阴影图像。
在一些实施例中,电子设备可以直接遍历亮度图像中深度值,提取亮度图像中各亮度像素的深度值。
在另一些实施例中,电子设备可以利用预设的深度识别算法遍历亮度图像中各亮度像素的深度值。
由此,在本公开实施例中,可以通过预先设置的深度值阈值,从图像中筛选出深度值较小的像素点,并基于深度值较小的像素点生成待处理图像对应的体积阴影图像,在保证用户的视觉体验的情况下,减小生成体积阴影图像的计算量,进一步优化图像处理设备的性能。
在本公开再一种实施例中,为了便于用户操作,用户可以对是否生成体积阴影图像以及模糊参数进行设置。
在本公开一些实施例中,S120可以具体包括:
在体积阴影模式处于开启状态的情况下,对待处理图像进行亮度提取,得到待处理图像对应的亮度图像;
在体积阴影模式未处于开启状态的情况下,直接显示待处理图像。
具体地,电子设备可以在获取到待处理图像之后,对是否处于体积阴影模式进行判断,如果体积阴影模式处于开启状态,则对待处理图像进行亮度提取,得到待处理图像对应的亮度图像,如果体积阴影模式未处于开启状态,则直接显示待处理图像。
进一步地,为了使体积阴影模式处于开启状态,在S110之前,图像处理方法还包括:
接收对体积阴影模式的开启触发操作;
响应于开启触发操作,开启体积阴影模式。
在本公开实施例中,开启触发操作可以是对开启触发操作控件的手势控制操作(如点击、长按、双击等)、语音控制操作或者表情控制操作或快捷方式。
例如,开启触发操作是对开启触发操作控件的手势控制操作,开启触发操作控件可以包括点击控件、长按控件、双击控件。
具体地,电子设备可以接收对体积阴影模式的开启触发操作,响应于开启触发操作,开启体积阴影模式;如果体积阴影模式处于开启状态,则对待处理图像进行亮度提取,得到待处理图像对应的亮度图像,如果体积阴影模式未处于开启状态,则直接显示待处理图像。
参见图7所示的设置界面,电子设备的显示页面上包括体积阴影的点击控件701,点击控件701用于激活或关闭体积阴影效果。当用户点击体积阴影的点击控件701时,电子设备接收该开启触发操作,响应于开启触发操作,开启体积阴影模式,点击控件701中显示体积阴影已开启的标识“√”,在电子设备的体积阴影模式处于开启状态下,获取待处理图像,对待处理图像进行亮度提取,得到待处理图像对应的亮度图像,以及按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
在本公开另一些实施例中,为了使用户对模糊参数进行设置,在S130之前,图像处理方法还包括:
接收对模糊参数的调节操作;
响应于模糊参数的调节操作,确定调节后的模糊参数。
在本实施例中,对模糊参数的调节操作可以是对模糊参数操作控件的手势控制操作(如点击、长按、双击、滑动操作等)、语音控制操作或者表情控制操作或快捷方式。
例如,对模糊参数的调节操作是对模糊参数操作控件的手势控制操作,模糊参数操作控件可以包括点击控件、长按控件、双击控件和滑动控件。
参见图7所示的设置界面,设置界面可以显示有多个滑动操作控件,滑动操作控件可以包括:体积阴影强度的滑动条702、体积阴影偏离距离的滑动条703和体积阴影闪烁速度的滑动条704。通过调节体积阴影强度的滑动条702,可以调节体积阴影图像的不同叠加占比参数;通过调节体积阴影偏离距离的滑动条703,可以调节屏幕亮度采样时的偏移距离;通过调节体积阴影闪烁速度的滑动条704,可以调节动态图像和视频图像的不同图像帧中体积阴影的闪烁速度。
以调节体积阴影强度的滑动条702为例,当用户滑动体积阴影强度的滑动条702上的滑动点时,滑动体积阴影强度的设置值可以随着滑动点的位置改变而改变,如果用户停止滑动滑动点时滑动体积阴影强度的设置值为6,则电子设备可以确定调节后的体积阴影强度为0.6。
由此,在本实施例中,用户可以通过上述控件,控制体积阴影模式的开启和关闭以及对与生成体积阴影相关的参数进行设置,进而调节电子设备生成的体积阴影的效果,提高用户的交互体验。
为了进一步得到具有体积阴影效果的场景图像,本公开实施例还提供了另一种图像处理方法,可以将待处理图像和体积阴影图像进行合成,以得到具有体积阴影效果的目标图像。
图8示出了本公开实施例提供的另一种图像处理方法的流程示意图。
如图8所示,该图像处理方法可以包括如下步骤。
S810、获取待处理图像。
S820、对待处理图像进行亮度提取,得到待处理图像对应的亮度图像。
S830、按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
其中,S810-S830与图2中所示的S810-S830相似,在此不做赘述。
S840、将待处理图像和体积阴影图像合成为目标图像。
在本公开一种实施例中,将待处理图像和体积阴影图像合成为目标图像,包括:
将待处理图像的每个待处理像素的颜色值分别与体积阴影图像的对应阴影像素的阴影值相乘,得到目标图像。
其中,待处理像素的颜色值可以包括待处理像素的红色(R)值、绿色(G)值和蓝色(B)值。阴影像素可以是待处理图像中待处理像素对应的像素点,阴影像素的阴影值可以是阴影像素的亮度值。
在本公开实施例中,以一个待处理像素为例,电子设备可以确定在阴影图像中的位置与该待处理像素在待处理图像中的位置相同的像素点,作为该待处理像素对应的阴影像素,进而计算该待处理像素与对应的阴影像素之间的乘积,得到目标图像中的位置与该待处理像素在待处理图像中的位置相同的像素的像素值,以生成目标图像。
在本公开一种实施例中,将待处理图像和体积阴影图像合成为目标图像,包括:
按照体积阴影图像对应的预设的叠加占比参数,将待处理图像和体积阴影图像合成为目标图像,其中,叠加占比参数包括体积阴影强度。
在本公开实施例中,按照体积阴影图像对应的预设的叠加占比参数,将待处理图像和体积阴影图像合成为目标图像,可以包括:
按照体积阴影图像对应的预设的叠加占比参数,分别确定体积阴影图像对应的第一占比和待处理图像对应的第二占比;
将体积阴影图像中每个阴影像素的阴影值和第一占比相乘,得到每个阴影像素的阴影数据,并将待处理图像每个待处理像素的颜色值和第二占比相乘,得到每个待处理像素的颜色数据;
将每个阴影像素的阴影数据与每个待处理像素的颜色数据对应相乘,得到目标图像。
在本公开实施例中,以一个待处理像素为例,电子设备可以确定在阴影图像中的位置与该待处理像素在待处理图像中的位置相同的像素点,作为该待处理像素对应的阴影像素,并按照体积阴影图像对应的预设的叠加占比参数,将待处理图像中的该待处理像素与叠加占比参数相乘,以及将阴影图像中该阴影像素与叠加占比参数相乘,并将该待处理像素对应的乘积和该阴影像素对应的乘积再次相乘,得到目标图像中的位置与该待处理像素在待处理图像中的位置相同的像素的像素值,以生成目标图像。
由此,在本公开实施例中,可以将待处理图像的每个待处理像素的颜色值分别与体积阴影图像的对应阴影像素的阴影值相乘,得到目标图像;或者,基于体积阴影强度分别确定体积阴影图像和待处理图像的占比,进一步基于体积阴影图像和待处理图像的占比,以及阴影像素的阴影数据与该个待处理像素的颜色数据,将待处理图像与体积阴影图像合成为目标图像,可以适应于多种场景下合成目标图像,以得到用户满意的目标图像。
本公开实施例还提供了一种用于实现上述的图像显示处理方法的图像处理装置,下面结合图9进行说明。在本公开实施例中,该图像处理装置可以为电子设备。其中,电子设备可以包括移动终端、平板电脑、车载终端、可穿戴电子设备、虚拟现实(Virtual Reality,VR)一体机、智能家居设备等具有通信功能的设备。
图9示出了本公开实施例提供的一种图像处理装置的结构示意图。
如图9所示,该图像处理装置1000可以包括:图像获取单元910、亮度提取单元920和图像模糊单元930。
该图像获取单元910,可以配置为获取待处理图像;
该亮度提取单元920,可以配置为对待处理图像进行亮度提取,得到待处理图像对应的亮度图像;
该图像模糊单元930,可以配置为按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
在本公开实施例中,能够从待处理图像中提取亮度图像,并按照光线方向对亮度图像进行径向模糊,得到用于表征待处理图像的体积阴影效果的体积阴影图像,能够高效地生成待处理图像的体积阴影效果,并且无论是亮度提取处理还是径向模糊处理,对算力和性能的需求均比较低,进而可以降低生成体积阴影时对算力和性能的需求,使其可以适用于各种算力和性能的设备。
在本公开一些实施例中,待处理图像包括对图像颜色数据进行渲染得到的图像;
其中,该亮度提取单元920还可以进一步配置为对待处理图像进行去色处理,得到待处理图像对应的灰度图像;对灰度图像进行亮度调节,得到亮度图像。
在本公开一些实施例中,待处理图像包括对图像光照数据进行渲染得到的图像,图像光照数据为对图像颜色数据进行光照提取得到的数据;
其中,该亮度提取单元920还可以进一步配置为对待处理图像进行去色处理,得到亮度图像。
在本公开一些实施例中,图像光照数据为按照预设的提取参数对图像颜色数据进行光照提取得到的数据;
其中,提取参数包括物体基本色、粗糙度和金属度。
在本公开一些实施例中,待处理图像包括实时渲染图像和预烘焙渲染图像中的任一种。
在本公开一些实施例中,该图像模糊单元930还可以进一步配置为获取亮度图像的光源位置;按照预设的模数,对亮度图像的各个亮度像素到光源位置的方向矢量进行单位化处理,得到各个亮度像素的单位方向矢量;按照光线方向,利用单位方向矢量对亮度图像进行随机模糊,得到体积阴影图像。
在本公开一些实施例中,该图像模糊单元930还可以进一步配置为针对每个亮度像素,根据亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算亮度像素对应的偏移距离;根据各个亮度像素对应的偏移距离和各个亮度像素对应的亮度值,对亮度图像沿光线方向进行模糊,得到体积阴影图像;其中,模糊参数包括体积阴影偏离距离和体积阴影闪烁速度中的至少一种。
在本公开一些实施例中,该图像模糊单元930还可以进一步配置为根据亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算预设数量的偏移距离初始值;根据偏移距离初始值的平均值,计算亮度像素对应的偏移距离。
在本公开一些实施例中,该图像模糊单元930还可以进一步配置为按照光线方向,利用单位方向矢量对亮度图像进行预设迭代次数的迭代式随机模糊,得到多个模糊图像;根据多个模糊图像,合成体积阴影图像。
在本公开一些实施例中,该图像模糊单元930还可以进一步配置为对亮度图像进行降采样,得到转换后的亮度图像;在预设迭代次数的前预设次数中,利用单位方向矢量对转换后的亮度图像进行迭代式随机模糊,得到前预设次数对应的第一模糊图像;在预设迭代次数的其他次数中,利用单位方向矢量对亮度图像进行迭代式随机模糊,得到其他次数对应的第二模糊图像;对各个第一模糊图像进行升采样,得到各个转换后的第一模糊图像;其中,转换后的第一模糊图像和第二模糊图像形成多个模糊图像。
相应地,该图像模糊单元930还可以进一步配置为根据转换后的第一模糊图像和第二模糊图像,合成体积阴影图像。
在本公开一些实施例中,该图像处理装置1000还可以包括图像合成单元,该图像合成单元可以配置为将待处理图像和体积阴影图像合成为目标图像。
在本公开一些实施例中,图像合成单元可以进一步配置为将待处理图像的每个待处理像素的颜色值分别与体积阴影图像的对应阴影像素的阴影值相乘,得到目标图像。
在本公开一些实施例中,图像合成单元可以进一步配置为按照体积阴影图像对应的预设的叠加占比参数,将待处理图像和体积阴影图像合成为目标图像;
其中,叠加占比参数包括体积阴影强度。
需要说明的是,图9所示的图像处理装置1000可以执行图2至图8所示的方法实施例中的各个步骤,并且实现图2至图8所示的方法实施例中的各个过程和效果,在此不做赘述。
本公开实施例还提供了一种图像处理设备,该图像处理设备可以包括处理器和存储器,存储器可以用于存储可执行指令。其中,处理器可以用于从存储器中读取可执行指令,并执行可执行指令以实现上述实施例中的图像处理方法。
图10示出了本公开实施例提供的一种图像处理设备的结构示意图。下面具体参考图10,其示出了适于用来实现本公开实施例中的图像处理设备1000的结构示意图。
本公开实施例中的图像处理设备1000可以为电子设备。其中,电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴设备、等等的移动终端以及诸如数字TV、台式计算机、智能家居设备等等的固定终端。
需要说明的是,图10示出的图像处理设备1000仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图10所示,该图像处理设备1000可以包括处理装置(例如中央处理器、图形处理器等)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储装置1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有信息处理设备1000操作所需的各种程序和数据。处理装置1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
通常,以下装置可以连接至I/O接口1005:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1006;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1007;包括例如磁带、硬盘等的存储装置1008;以及通信装置1009。通信装置1009可以允许图像处理设备1000与其他设备进行无线或有线通信以交换数据。虽然图9示出了具有各种装置的图像处理设备1000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
本公开实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,当计算机程序被处理器执行时,使得处理器实现上述实施例中的图像处理方法。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1009从网络上被下载和安装,或者从存储装置1008被安装,或者从ROM 1002被安装。在该计算机程序被处理装置1001执行时,执行本公开实施例的图像处理方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述图像处理设备中所包含的;也可以是单独存在,而未装配入该图像处理设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该图像处理设备执行时,使得该图像处理设备执行:
获取待处理图像;对待处理图像进行亮度提取,得到待处理图像对应的亮度图像;按照光线方向对亮度图像进行径向模糊,得到待处理图像对应的体积阴影图像。
在本公开实施例中,可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (15)
1.一种图像处理方法,其特征在于,包括:
获取待处理图像;
对所述待处理图像进行亮度提取,得到所述待处理图像对应的亮度图像;
按照光线方向对所述亮度图像进行径向模糊,得到所述待处理图像对应的体积阴影图像;
其中,所述按照光线方向对所述亮度图像进行径向模糊,得到所述待处理图像对应的体积阴影图像,包括:
获取所述亮度图像的光源位置;
按照预设的模数,对所述亮度图像的各个亮度像素到所述光源位置的方向矢量进行单位化处理,得到所述各个亮度像素的单位方向矢量;
按照所述光线方向,利用所述单位方向矢量对所述亮度图像进行随机模糊,得到所述体积阴影图像。
2.根据权利要求1所述的方法,其特征在于,所述待处理图像包括对图像颜色数据进行渲染得到的图像;
其中,所述对所述待处理图像进行亮度提取,得到所述待处理图像对应的亮度图像,包括:
对所述待处理图像进行去色处理,得到所述待处理图像对应的灰度图像;
对所述灰度图像进行亮度调节,得到所述亮度图像。
3.根据权利要求1所述的方法,其特征在于,所述待处理图像包括对图像光照数据进行渲染得到的图像,所述图像光照数据为对图像颜色数据进行光照提取得到的数据;
其中,所述对所述待处理图像进行亮度提取,得到所述待处理图像对应的亮度图像,包括:
对所述待处理图像进行去色处理,得到所述亮度图像。
4.根据权利要求3所述的方法,其特征在于,所述图像光照数据为按照预设的提取参数对所述图像颜色数据进行光照提取得到的数据;
其中,所述提取参数包括物体基本色、粗糙度和金属度。
5.根据权利要求1所述的方法,其特征在于,所述待处理图像包括实时渲染图像和预烘焙渲染图像中的任一种。
6.根据权利要求1所述的方法,其特征在于,所述按照所述光线方向,利用所述单位方向矢量对所述亮度图像进行随机模糊,得到所述体积阴影图像,包括:
针对每个所述亮度像素,根据所述亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算所述亮度像素对应的偏移距离;
根据各个所述亮度像素对应的偏移距离和各个所述亮度像素对应的亮度值,对所述亮度图像沿所述光线方向进行模糊,得到所述体积阴影图像;
其中,所述模糊参数包括体积阴影偏离距离和体积阴影闪烁速度中的至少一种。
7.根据权利要求6所述的方法,其特征在于,所述根据所述亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算所述亮度像素对应的偏移距离,包括:
根据所述亮度像素对应的单位方向矢量、随机函数和预设的模糊参数,计算预设数量的偏移距离初始值;
根据所述偏移距离初始值的平均值,计算所述亮度像素对应的偏移距离。
8.根据权利要求1所述的方法,其特征在于,所述按照所述光线方向,利用所述单位方向矢量对所述亮度图像进行随机模糊,得到所述体积阴影图像,包括:
按照所述光线方向,利用所述单位方向矢量对所述亮度图像进行预设迭代次数的迭代式随机模糊,得到多个模糊图像;
根据所述多个模糊图像,合成所述体积阴影图像。
9.根据权利要求8所述的方法,其特征在于,所述利用所述单位方向矢量对所述亮度图像进行预设迭代次数的迭代式随机模糊,得到所述体积阴影图像,包括:
对所述亮度图像进行降采样,得到转换后的亮度图像;
在所述预设迭代次数的前预设次数中,利用所述单位方向矢量对所述转换后的亮度图像进行迭代式随机模糊,得到所述前预设次数对应的第一模糊图像;
在所述预设迭代次数的其他次数中,利用所述单位方向矢量对所述亮度图像进行迭代式随机模糊,得到所述其他次数对应的第二模糊图像;
对各个所述第一模糊图像进行升采样,得到各个转换后的第一模糊图像;其中,所述转换后的第一模糊图像和所述第二模糊图像形成所述多个模糊图像;
其中,根据所述多个模糊图像,合成所述体积阴影图像,包括:
根据所述转换后的第一模糊图像和所述第二模糊图像,合成所述体积阴影图像。
10.根据权利要求1所述的方法,其特征在于,在所述按照光线方向对所述亮度图像进行径向模糊,得到所述待处理图像对应的体积阴影图像之后,所述方法还包括:
将所述待处理图像和所述体积阴影图像合成为目标图像。
11.根据权利要求10所述的方法,其特征在于,所述将所述待处理图像和所述体积阴影图像合成为目标图像,包括:
将所述待处理图像的每个待处理像素的颜色值分别与所述体积阴影图像的对应阴影像素的阴影值相乘,得到所述目标图像。
12.根据权利要求10所述的方法,其特征在于,所述将所述待处理图像和所述体积阴影图像合成为目标图像,包括:
按照所述体积阴影图像对应的预设的叠加占比参数,将所述待处理图像和所述体积阴影图像合成为所述目标图像;
其中,所述叠加占比参数包括体积阴影强度。
13.一种图像处理装置,其特征在于,包括:
图像获取单元,配置为获取待处理图像;
亮度提取单元,配置为对所述待处理图像进行亮度提取,得到所述待处理图像对应的亮度图像;
图像模糊单元,配置为按照光线方向对所述亮度图像进行径向模糊,得到所述待处理图像对应的体积阴影图像;
其中,所述图像模糊单元还可以进一步配置为:
获取所述亮度图像的光源位置;
按照预设的模数,对所述亮度图像的各个亮度像素到所述光源位置的方向矢量进行单位化处理,得到所述各个亮度像素的单位方向矢量;
按照所述光线方向,利用所述单位方向矢量对所述亮度图像进行随机模糊,得到所述体积阴影图像。
14.一种图像处理设备,其特征在于,包括:
处理器;
存储器,用于存储可执行指令;
其中,所述处理器用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实现上述权利要求1-12中任一项所述的图像处理方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,当所述计算机程序被处理器执行时,使得处理器实现上述权利要求1-12中任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110599787.8A CN113256785B (zh) | 2021-05-31 | 2021-05-31 | 图像处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110599787.8A CN113256785B (zh) | 2021-05-31 | 2021-05-31 | 图像处理方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113256785A CN113256785A (zh) | 2021-08-13 |
CN113256785B true CN113256785B (zh) | 2023-04-04 |
Family
ID=77183808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110599787.8A Active CN113256785B (zh) | 2021-05-31 | 2021-05-31 | 图像处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113256785B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114626978A (zh) * | 2022-03-17 | 2022-06-14 | 北京字跳网络技术有限公司 | 一种图像处理方法、装置、计算机设备以及存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101853490A (zh) * | 2010-04-21 | 2010-10-06 | 中国科学院半导体研究所 | 一种基于人类视觉特性的仿生图像复原方法 |
CN103238168A (zh) * | 2010-12-03 | 2013-08-07 | 夏普株式会社 | 图像处理装置、图像处理方法及图像处理程序 |
CN105430264B (zh) * | 2015-11-26 | 2019-03-05 | 努比亚技术有限公司 | 移动终端及其拍摄处理方法 |
CN107563977A (zh) * | 2017-08-28 | 2018-01-09 | 维沃移动通信有限公司 | 一种图像处理方法、移动终端及计算机可读存储介质 |
CN108629743B (zh) * | 2018-04-04 | 2022-03-25 | 腾讯科技(深圳)有限公司 | 图像的处理方法、装置、存储介质和电子装置 |
CN110889802B (zh) * | 2018-09-10 | 2022-12-06 | 北京微播视界科技有限公司 | 图像处理方法和装置 |
CN110264413B (zh) * | 2019-05-17 | 2021-08-31 | 北京达佳互联信息技术有限公司 | 一种图像处理方法、装置、电子设备及存储介质 |
CN111583157B (zh) * | 2020-05-13 | 2023-06-02 | 杭州睿琪软件有限公司 | 图像处理方法、系统及计算机可读存储介质 |
-
2021
- 2021-05-31 CN CN202110599787.8A patent/CN113256785B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113256785A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110049242B (zh) | 一种图像处理方法和装置 | |
CN113225606B (zh) | 视频弹幕处理方法及装置 | |
CN110070495B (zh) | 图像的处理方法、装置和电子设备 | |
CN113962859B (zh) | 一种全景图生成方法、装置、设备及介质 | |
CN111757100B (zh) | 相机运动变化量的确定方法、装置、电子设备和介质 | |
CN112767238A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
WO2017095543A1 (en) | Object detection with adaptive channel features | |
WO2024016923A1 (zh) | 特效图的生成方法、装置、设备及存储介质 | |
CN113256785B (zh) | 图像处理方法、装置、设备及介质 | |
CN115761090A (zh) | 特效渲染方法、装置、设备、计算机可读存储介质及产品 | |
WO2022142876A1 (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN112822413B (zh) | 拍摄预览方法、装置、终端和计算机可读存储介质 | |
CN113660531A (zh) | 视频处理方法及装置、电子设备和存储介质 | |
CN110097520B (zh) | 图像处理方法和装置 | |
US20230360286A1 (en) | Image processing method and apparatus, electronic device and storage medium | |
CN112819691A (zh) | 图像处理方法、装置、设备及可读存储介质 | |
CN110555799A (zh) | 用于处理视频的方法和装置 | |
CN116188314A (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN113393391B (zh) | 图像增强方法、图像增强装置、电子设备和存储介质 | |
CN114723600A (zh) | 美妆特效的生成方法、装置、设备、存储介质和程序产品 | |
CN110874816B (zh) | 一种图像处理方法、装置、移动终端及存储介质 | |
CN115358959A (zh) | 特效图的生成方法、装置、设备及存储介质 | |
CN114866706A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN114757843A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN114170341A (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 |