CN113793402A - 图像渲染方法、装置、电子设备及存储介质 - Google Patents
图像渲染方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113793402A CN113793402A CN202110915793.XA CN202110915793A CN113793402A CN 113793402 A CN113793402 A CN 113793402A CN 202110915793 A CN202110915793 A CN 202110915793A CN 113793402 A CN113793402 A CN 113793402A
- Authority
- CN
- China
- Prior art keywords
- roughness
- information
- reflection
- gradient information
- sub
- 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
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 89
- 238000000034 method Methods 0.000 title claims abstract description 67
- 239000013598 vector Substances 0.000 claims abstract description 168
- 238000009499 grossing Methods 0.000 claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 15
- 238000009795 derivation Methods 0.000 claims description 73
- 238000001914 filtration Methods 0.000 claims description 23
- 238000004458 analytical method Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 7
- 238000005286 illumination Methods 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 9
- 238000004364 calculation method Methods 0.000 abstract description 7
- 235000019592 roughness Nutrition 0.000 description 273
- 235000019587 texture Nutrition 0.000 description 83
- 238000012937 correction Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 10
- 230000003247 decreasing effect Effects 0.000 description 8
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000011045 prefiltration Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- 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
-
- 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
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
Abstract
本公开关于一种图像渲染方法、装置、电子设备及存储介质,该方法包括获取目标对象的三维模型;确定目标对象的二维像素点,在三维模型中对应点受到光照后的反射向量和原始粗糙度,二维像素点为所述三维模型投影到屏幕上的像素点;对反射向量进行变化趋势分析,得到反射向量的变化趋势信息;基于变化趋势信息对原始粗糙度进行平滑处理,得到目标粗糙度;基于目标粗糙度,在屏幕上渲染目标对象的二维图像。利用本公开实施例可以提升抗锯齿的效果,改善渲染出的图像质量,且在图像渲染过程中进行抗锯齿处理,可以避免产生额外计算量或者带来额外的存储占用,进而可以有效降低设备资源消耗,提升设备性能。
Description
技术领域
本公开涉及图像处理技术领域,尤其涉及一种图像渲染方法、装置、电子设备及存储介质。
背景技术
基于物理的渲染(PhysicallyBasedRendering,PBR),指的是一些在不同程度上都基于与现实世界的物理原理更相符的基本理论所构成的渲染技术的集合。在PBR渲染中,环境光照是提高渲染质量非常重要的一步,然而使用高动态范围图像(High-DynamicRange,HDR)图进行环境光照渲染时,会在模型的渲染结果上发现一些明显的锯齿。
相关技术中,为了解决渲染出的图像存在锯齿、失真的问题,往往都是基于渲染完成后的图像结果,进行一系列的修正处理,使得渲染出的图像锯齿处变得平滑。但相关技术中,基于渲染完的图像进行抗锯齿处理,抗锯齿的效果较差,且需要大量的额外计算或者空间去存储,对移动端等设备性能相对不友好,存在设备资源消耗大,性能损耗严重等问题。
发明内容
本公开提供一种图像渲染方法、装置、电子设备及存储介质,以至少解决相关技术中抗锯齿的效果较差、设备资源消耗大和性能损耗严重等问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种图像渲染方法,包括:
获取目标对象的三维模型;
确定所述目标对象的二维像素点,在所述三维模型中对应点受到光照后的反射向量和原始粗糙度,所述二维像素点为所述三维模型投影到屏幕上的像素点;
对所述反射向量进行变化趋势分析,得到所述反射向量的变化趋势信息;
基于所述变化趋势信息对所述原始粗糙度进行平滑处理,得到目标粗糙度;
基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像。
可选的,所述对所述反射向量进行变化趋势分析,得到所述反射向量的变化趋势信息包括:
确定所述反射向量在所述屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息;
基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息。
可选的,所述反射向量包括所述三维模型对应三维坐标系中横轴方向上的第一子反射向量、纵轴方向上的第二子反射向量和竖轴方向上的第三子反射向量;
所述确定所述反射向量在所述屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息包括:
对所述第一子反射向量、第二子反射向量和第三子反射向量分别沿所述横轴方向求导,得到所述第一子反射方向对应的第一求导结果、所述第二子反射方向对应的第二求导结果和所述第三子反射方向对应的第三求导结果;
对所述第一子反射向量、第二子反射向量和第三子反射向量分别沿所述纵轴方向求导,得到所述第一子反射方向对应的第四求导结果、所述第二子反射方向对应的第五求导结果和所述第三子反射方向对应的第六求导结果;
根据所述第一求导结果、所述第二求导结果和所述第三求导结果,确定所述第一梯度信息;
根据所述第四求导结果、所述第五求导结果和所述第六求导结果,确定所述第二梯度信息。
可选的,所述基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息包括:
确定所述第一梯度信息和所述第二梯度信息间的梯度和;
根据所述梯度和,确定所述变化趋势信息。
可选的,所述基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息还包括:
基于预设变化区间对所述梯度和进行过滤修正,得到目标梯度和;
所述根据所述梯度和,确定所述变化趋势信息包括:
根据所述目标梯度和,确定所述变化趋势信息。
可选的,所述第一梯度信息包括所述三维模型对应三维坐标系中三个方向上的子反射向量各自相对于所述横轴方向的梯度信息;所述第二梯度信息包括所述三维模型对应三维坐标系中三个方向上的子反射向量各自相对于所述纵轴方向的梯度信息;所述基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息包括:
从所述第一梯度信息和所述第二梯度信息中确定同一子反射向量对应的梯度信息中较大的梯度信息;
将所述三个方向上的子反射向量对应的较大的梯度信息之和,作为目标梯度信息;
根据所述目标梯度信息,确定所述变化趋势信息。
可选的,所述基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息还包括:
基于预设变化区间对所述目标梯度信息进行过滤修正,得到过滤修正后的梯度信息;
所述根据所述目标梯度信息,确定所述变化趋势信息包括:
根据所述过滤修正后的梯度信息,确定所述变化趋势信息。
可选的,所述目标粗糙度包括所述目标对象的初始二维图像对应的第一粗糙度和/或所述目标对象的滤镜基准图对应的第二粗糙度;
所述基于所述变化趋势信息对所述原始粗糙度进行平滑处理,得到目标粗糙度包括:
根据所述原始粗糙度和所述变化趋势信息,确定所述原始粗糙度对应的修正数据;
基于修正数据对所述原始粗糙度进行平滑处理,得到平滑后粗糙度;
基于第一粗糙度权重,对所述平滑后粗糙度和所述原始粗糙度进行加权处理,得到所述第一粗糙度;所述第一粗糙度权重用于控制所述初始二维图像生成过程中,所述平滑后粗糙度和所述原始粗糙度的影响比例;
和/或,
基于第二粗糙度权重,对所述平滑后粗糙度和粗糙度进行加权处理,得到所述第二粗糙度;所述第二粗糙度权重用于控制所述滤镜基准图生成过程中,所述平滑后粗糙度和所述原始粗糙度的影响比例。
可选的,所述基于修正数据对所述原始粗糙度进行平滑处理,得到平滑后粗糙度包括:
根据所述修正数据和所述原始粗糙度,确定修正粗糙度;
基于预设粗糙度区间对所述修正粗糙度进行过滤修正,得到所述平滑后粗糙度。
可选的,所述目标粗糙度包括所述目标对象的初始二维图像对应的第一粗糙度和所述目标对象的滤镜基准图对应的第二粗糙度;所述基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像包括:
根据所述第一粗糙度,确定所述目标对象对应的多级纹理中的第一目标纹理,所述多级纹理为分辨率递减的同一纹理,所述目标纹理为与所述第一粗糙度对应分辨率的纹理;
基于所述第一目标纹理和所述反射向量,生成目标对象的初始二维图像;
根据所述第二粗糙度,生成所述目标对象对应的滤镜基准图;
基于所述初始二维图像和所述滤镜基准图,在所述屏幕渲染出所述二维图像。
可选的,所述目标粗糙度包括所述目标对象的初始二维图像对应的第一粗糙度;所述基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像包括:
根据所述第一粗糙度,确定所述目标对象对应的多级纹理中的第一目标纹理,所述多级纹理为分辨率递减的同一纹理,所述第一目标纹理为与所述第一粗糙度对应分辨率的纹理;
基于所述第一目标纹理和所述反射向量,生成目标对象的初始二维图像;
根据所述原始粗糙度,生成所述目标对象对应的滤镜基准图;
基于所述初始二维图像和所述滤镜基准图,在所述屏幕渲染出所述二维图像。
可选的,所述目标粗糙度包括所述目标对象的滤镜基准图对应的第二粗糙度;所述基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像包括:
根据所述原始粗糙度,确定所述目标对象对应的多级纹理中的第二目标纹理,所述多级纹理为分辨率递减的同一纹理,所述第二目标纹理为与所述原始粗糙度对应分辨率的纹理;
基于所述第二目标纹理和所述反射向量,生成目标对象的初始二维图像;
根据所述第二粗糙度,生成所述目标对象对应的滤镜基准图;
基于所述初始二维图像和所述滤镜基准图,在所述屏幕渲染出所述二维图像。
根据本公开实施例的第二方面,提供一种图像渲染装置,包括:
三维模型获取模块,被配置为执行获取目标对象的三维模型;
三维信息获取模块,被配置为执行确定所述目标对象的二维像素点,在所述三维模型中对应点受到光照后的反射向量和原始粗糙度,所述二维像素点为所述三维模型投影到屏幕上的像素点;
变化趋势分析模块,被配置为执行对所述反射向量进行变化趋势分析,得到所述反射向量的变化趋势信息;
平滑处理模块,被配置为执行基于所述变化趋势信息对所述原始粗糙度进行平滑处理,得到目标粗糙度;
图像渲染模块,被配置为执行基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像。
可选的,所述变化趋势分析模块包括:
梯度信息确定单元,被配置为执行确定所述反射向量在所述屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息;
变化趋势信息确定单元,被配置为执行基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息。
可选的,所述反射向量包括所述三维模型对应三维坐标系中横轴方向上的第一子反射向量、纵轴方向上的第二子反射向量和竖轴方向上的第三子反射向量;
所述梯度信息确定单元包括:
第一求导单元,被配置为执行对所述第一子反射向量、第二子反射向量和第三子反射向量分别沿所述横轴方向求导,得到所述第一子反射方向对应的第一求导结果、所述第二子反射方向对应的第二求导结果和所述第三子反射方向对应的第三求导结果;
第二求导单元,被配置为执行对所述第一子反射向量、第二子反射向量和第三子反射向量分别沿所述纵轴方向求导,得到所述第一子反射方向对应的第四求导结果、所述第二子反射方向对应的第五求导结果和所述第三子反射方向对应的第六求导结果;
第一梯度信息确定单元,被配置为执行根据所述第一求导结果、所述第二求导结果和所述第三求导结果,确定所述第一梯度信息;
第二梯度信息确定单元,被配置为执行根据所述第四求导结果、所述第五求导结果和所述第六求导结果,确定所述第二梯度信息。
可选的,所述变化趋势信息确定单元包括:
梯度和确定单元,被配置为执行确定所述第一梯度信息和所述第二梯度信息间的梯度和;
第一变化趋势信息确定子单元,被配置为执行根据所述梯度和,确定所述变化趋势信息。
可选的,所述变化趋势信息确定单元还包括:
第一过滤修正单元,被配置为执行基于预设变化区间对所述梯度和进行过滤修正,得到目标梯度和;
所述第一变化趋势信息确定子单元还被配置为执行根据所述目标梯度和,确定所述变化趋势信息。
可选的,所述第一梯度信息包括所述三维模型对应三维坐标系中三个方向上的子反射向量各自相对于所述横轴方向的梯度信息;所述第二梯度信息包括所述三维模型对应三维坐标系中三个方向上的子反射向量各自相对于所述纵轴方向的梯度信息;所述变化趋势信息确定单元包括:
梯度比较单元,被配置为执行从所述第一梯度信息和所述第二梯度信息中确定同一子反射向量对应的梯度信息中较大的梯度信息;
目标梯度信息确定单元,被配置为执行将所述三个方向上的子反射向量对应的较大的梯度信息之和,作为目标梯度信息;
第二变化趋势信息确定子单元,被配置为执行根据所述目标梯度信息,确定所述变化趋势信息。
可选的,所述变化趋势信息确定单元还包括:
第二过滤修正单元,被配置为执行基于预设变化区间对所述目标梯度信息进行过滤修正,得到过滤修正后的梯度信息;
所述第二变化趋势信息确定子单元还被配置为执行根据所述过滤修正后的梯度信息,确定所述变化趋势信息。
可选的,所述目标粗糙度包括所述目标对象的初始二维图像对应的第一粗糙度和/或所述目标对象的滤镜基准图对应的第二粗糙度;
所述平滑处理模块包括:
修正数据确定单元,被配置为执行根据所述原始粗糙度和所述变化趋势信息,确定所述原始粗糙度对应的修正数据;
平滑处理单元,被配置为执行基于修正数据对所述原始粗糙度进行平滑处理,得到平滑后粗糙度;
第一加权处理单元,被配置为执行基于第一粗糙度权重,对所述平滑后粗糙度和所述原始粗糙度进行加权处理,得到所述第一粗糙度;所述第一粗糙度权重用于控制所述初始二维图像生成过程中,所述平滑后粗糙度和所述原始粗糙度的影响比例;
和/或,
第二加权处理单元,被配置为执行基于第二粗糙度权重,对所述平滑后粗糙度和粗糙度进行加权处理,得到所述第二粗糙度;所述第二粗糙度权重用于控制所述滤镜基准图生成过程中,所述平滑后粗糙度和所述原始粗糙度的影响比例。
可选的,所述平滑处理单元包括:
修正粗糙度确定单元,被配置为执行根据所述修正数据和所述原始粗糙度,确定修正粗糙度;
第三过滤修正单元,被配置为执行基于预设粗糙度区间对所述修正粗糙度进行过滤修正,得到所述平滑后粗糙度。
可选的,所述目标粗糙度包括所述目标对象的初始二维图像对应的第一粗糙度和所述目标对象的滤镜基准图对应的第二粗糙度;所述图像渲染模块包括:
第一目标纹理确定单元,被配置为执行根据所述第一粗糙度,确定所述目标对象对应的多级纹理中的目标纹理,所述第一目标纹理为与所述第一粗糙度对应分辨率的纹理;
第一初始二维图像生成单元,被配置为执行基于所述目标纹理和所述反射向量,生成目标对象的初始二维图像;
第一滤镜基准图生成单元,被配置为执行根据所述第二粗糙度,生成所述目标对象对应的滤镜基准图;
第一图像渲染单元,被配置为执行基于所述初始二维图像和所述滤镜基准图,在所述屏幕渲染出所述二维图像。
可选的,所述目标粗糙度包括所述目标对象的初始二维图像对应的第一粗糙度;所述基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像包括:
第二目标纹理确定单元,被配置为执行根据所述第一粗糙度,确定所述目标对象对应的多级纹理中的第一目标纹理,所述多级纹理为分辨率递减的同一纹理,所述第一目标纹理为与所述第一粗糙度对应分辨率的纹理;
第二初始二维图像生成单元,被配置为执行基于所述第一目标纹理和所述反射向量,生成目标对象的初始二维图像;
第二滤镜基准图生成单元,被配置为执行根据所述原始粗糙度,生成所述目标对象对应的滤镜基准图;
第二图像渲染单元,被配置为执行基于所述初始二维图像和所述滤镜基准图,在所述屏幕渲染出所述二维图像。
可选的,所述目标粗糙度包括所述目标对象的滤镜基准图对应的第二粗糙度;所述基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像包括:
第三目标纹理确定单元,被配置为执行根据所述原始粗糙度,确定所述目标对象对应的多级纹理中的第二目标纹理,所述多级纹理为分辨率递减的同一纹理,所述第二目标纹理为与所述原始粗糙度对应分辨率的纹理;
第三初始二维图像生成单元,被配置为执行基于所述第二目标纹理和所述反射向量,生成目标对象的初始二维图像;
第三滤镜基准图生成单元,被配置为执行根据所述第二粗糙度,生成所述目标对象对应的滤镜基准图;
第三图像渲染单元,被配置为执行基于所述初始二维图像和所述滤镜基准图,在所述屏幕渲染出所述二维图像。
根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上述第一方面中任一项所述的方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行本公开实施例的第一方面中任一所述方法。
根据本公开实施例的第五方面,提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开实施例的第一方面中任一所述方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
在图像渲染过程中,结合目标对象三维模型中反射向量的变化趋势信息对粗糙度进行修正,可以校准高光反射的清晰程度,从而降低渲染出的图像的锯齿感,同时在渲染过程中,进行抗锯齿处理,可以避免产生额外计算量或者带来额外的存储占用,进而可以有效降低设备资源消耗,提升设备性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种图像渲染方法的流程图。
图2是根据一示例性实施例示出的一种确定反射向量在屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息的流程图;
图3是根据一示例性实施例示出的一种基于第一梯度信息和第二梯度信息,确定变化趋势信息的流程图;
图4是根据一示例性实施例示出的另一种根基于第一梯度信息和第二梯度信息,确定变化趋势信息的流程图;
图5是根据一示例性实施例示出的另一种根基于第一梯度信息和第二梯度信息,确定变化趋势信息的流程图;
图6是根据一示例性实施例示出的另一种根基于第一梯度信息和第二梯度信息,确定变化趋势信息的流程图;
图7是根据一示例性实施例示出的一种基于变化趋势信息对粗糙度进行平滑处理,得到目标粗糙度的流程图;
图8是根据一示例性实施例示出的一种基于目标粗糙度,在屏幕上渲染目标对象的二维图像的流程图;
图9是根据一示例性实施例示出的一种图像渲染装置框图;
图10是根据一示例性实施例示出的一种用于图像渲染的电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
在实际应用中,在PBR渲染过程中,可以基于图像的光照(ImageBasedLighting,IBL)技术。锯齿的产生是由于在计算IBL高光反射,也就是高频光照部分,由于采样Prefilter图(目标对象的初始二维图像)时,相邻像素的跳变比较大,或者在采样BRDFLUT图(目标对象的滤镜基准图)时,边缘部分过于光滑,跳变比较大导致的。
在一个具体的实施例中,在计算IBL高光反射时,需要结合目标对象的三维模型的粗糙度,一般的,粗糙度越低,能获得更清晰的镜面反射,也就是能得到更清晰的图案;相应的,在目标对象的二维图像渲染过程中,针对反射向量跳变较大时,也就是产生锯齿比较多的地方,可以把粗糙度增大,这样就可以保证在反射向量跳变大的像素点,颜色梯度也不会变化的过于明显,也就是反射的更模糊,色块比较接近,产生的锯齿也就越少;本说明书实施例中,可以结合图像渲染过程中模糊度的调整,提升抗锯齿的效果,改善渲染出的图像质量,且在图像渲染过程中进行抗锯齿,可以避免产生额外计算量或者带来额外的存储占用,进而可以有效降低设备资源消耗,提升设备性能。
请参阅图1,图1是根据一示例性实施例示出的一种图像渲染方法的流程图,如图1所示,该图像渲染方法用于终端电子设备中,包括以下步骤。
在步骤S101中,获取目标对象的三维模型。
本说明书实施例中,目标对象可以为需要渲染的对象,具体的,目标对象可以结合实际应用场景的不同而不同。在一个具体的实施例中,以用户在进行拍照时,需要在拍摄的照片中渲染出耳机特效的场景为例,目标对象可以为耳机。
在一个可选的实施例中,终端可以展示有特效选择控件,可选的,用户可以基于相应的特效选择控件,触发相应的目标对象的三维模型的获取。具体的,目标对象的三维模型可以由终端上的相关硬件装置(例如摄像装置)生成。具体的,摄像装置往往会结合预设的光照环境生成目标对象的三维模型。
在步骤S103中,确定目标对象的二维像素点,在三维模型中对应点受到光照后的反射向量和原始粗糙度,。
在实际应用中,目标对象的三维模型中的点在屏幕的二维像素坐标中会与相应的二维像素点相对应。在一个具体的实施例中,二维像素点可以为三维模型投影到屏幕上的像素点在一个具体的实施例中,以上述用户在进行拍照时,需要在拍摄的照片中渲染出耳机特效的场景为例,耳机(目标对象)的三维模型会对应捕捉到的人物画面中人耳附近的像素点。相应的,可以获取人耳附近的每一像素点在三维模型中对应点的反射向量和原始粗糙度。
在一个具体的实施例中,反射向量可以包括三维模型对应三维坐标系中横轴方向上的第一子反射向量、纵轴方向上的第二子反射向量和竖轴方向上的第三子反射向量。
在步骤S105中,对反射向量进行变化趋势分析,得到反射向量的变化趋势信息。
在一个可选的实施例中,上述对反射向量进行变化趋势分析,得到反射向量的变化趋势信息可以包括:确定反射向量在屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息;基于第一梯度信息和第二梯度信息,确定变化趋势信息。
在一个具体的实施例中,第一梯度信息可以表征反射向量在横轴方向上的梯度变化;即在光栅化处理时,目标对象对应二维图像中相邻两个像素块在横轴方向受到的反射量的差值。
在一个具体的实施例中,第二梯度信息可以表征反射向量在纵轴方向上的梯度变化,即在光栅化处理时,目标对象对应二维图像中相邻两个像素块在纵轴方向受到的反射量的差值。
上述实施例中,结合反射向量在二维像素坐标系的两个方向上的梯度信息,可以精准刻画反射向量在像素级别的变化情况,进而便于结合反射向量在像素级别的变化情况来修正图像渲染过程中出现的锯齿失真问题。
在一个可选的实施例中,由于反射向量包括三维模型对应三维坐标系中的第一子反射向量、第二子反射向量和第三子反射向量;相应的,如图2所示,上述确定反射向量在屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息可以包括以下步骤:
在步骤S201中,对第一子反射向量、第二子反射向量和第三子反射向量分别沿横轴方向求导,得到第一子反射方向对应的第一求导结果、第二子反射方向对应的第二求导结果和第三子反射方向对应的第三求导结果;
在步骤S203中,对第一子反射向量、第二子反射向量和第三子反射向量分别沿纵轴方向求导,得到第一子反射方向对应的第四求导结果、第二子反射方向对应的第五求导结果和第三子反射方向对应的第六求导结果;
在步骤S205中,根据第一求导结果、第二求导结果和第三求导结果,确定第一梯度信息;
在步骤S207中,根据第四求导结果、第五求导结果和第六求导结果,确定第二梯度信息。
在一个具体的实施例中,上述根据第一求导结果、第二求导结果和第三求导结果,确定第一梯度信息可以包括:将第一求导结果、第二求导结果和第三求导结果各自对应的绝对值作为第一梯度信息。相应的,第一梯度信息可以为一个三维的数组。
在一个具体的实施例中,上述根据第四求导结果、第五求导结果和第六求导结果,确定第二梯度信息可以包括将第四求导结果、第五求导结果和第六求导结果各自对应的绝对值作为第二梯度信息。相应的,第二梯度信息可以为一个三维的数组。
上述实施例中,通过对三维坐标中三个方向的反射向量分别进行二维像素坐标系的两个方向上的求导,可以实现对目标对象对应二维图像中相邻两个像素块受到的反射量差异的精准刻画。
在一个可选的实施例中,如图3所示,上述基于第一梯度信息和第二梯度信息,确定变化趋势信息可以包括以下步骤:
在步骤S301中,确定第一梯度信息和第二梯度信息间的梯度和;
在步骤S303中,根据梯度和,确定变化趋势信息。
在一个具体的实施例中,确定第一梯度信息和第二梯度信息间的梯度和可以结合下述公式:
delta1=dx.x+dx.y+dx.z+dy.x+dy.y+dy.z
其中,delta1为上述梯度和,dx.x为第一求导结果的绝对值(即第一子反射向量在二维像素坐标系对应横轴方向上的梯度绝对值),dx.y为第二求导结果的绝对值(即第二子反射向量在二维像素坐标系对应横轴方向上的梯度绝对值),dx.z为第三求导结果的绝对值(即第三子反射向量在二维像素坐标系对应横轴方向上的梯度绝对值),dy.x为第四求导结果的绝对值(即第一子反射向量在二维像素坐标系对应纵轴方向上的梯度绝对值),dy.y为第五求导结果的绝对值(即第二子反射向量在二维像素坐标系对应纵轴方向上的梯度绝对值),dy.z为第六求导结果的绝对值(即第三子反射向量在二维像素坐标系对应纵轴方向上的梯度绝对值)。
在一个可选的实施例中,上述根据梯度和,确定变化趋势信息可以包括将梯度和作为上述变化趋势信息。
上述实施例中,通过对反射向量在二维像素坐标系的两个方向上的梯度信息进行相加,得到反射向量的变化趋势信息,可以实现对反射向量在像素级别的变化情况进行精准刻画,进而便于结合反射向量在像素级别的变化情况来修正图像渲染过程中出现的锯齿失真问题。
在一个可选的实施例中,如图4所示,上述基于第一梯度信息和第二梯度信息,确定变化趋势信息还可以包括:
在步骤S305中,基于预设变化区间对梯度和进行过滤修正,得到目标梯度和;
相应的,上述步骤S303中根据梯度和,确定变化趋势信息可以包括:
根据目标梯度和,确定变化趋势信息。
在实际应用中,反射向量跳变不大的像素点,并不需要有颜色梯度变化,相应的,可以结合预设变化区间过滤反射向量跳变不大的像素点。
本说明书实施例中,预设变化区间可以为预先设置反射向量的跳变范围,在一个具体的实施例中,预设变化区间可以为[factor1,1],具体的,factor1为预先设置的反射向量的变化幅度下限值。相应的,1为反射向量的变化幅度上限值。
可选的,可以判断目标对象的二维像素点对应的梯度和是否位于预设变化区间,若某一二维像素点对应的梯度和位于预设变化区间,该二维像素点对应的目标梯度和等于相应的梯度和;反之,若某一二维像素点对应的梯度和大于预设变化区间的上限值,该二维像素点对应的目标梯度和等于上限值,若某一二维像素点对应的梯度和小于预设变化区间的下限值,该二维像素点对应的目标梯度和等于下限值。
可选的,为了更好的过滤反射向量跳变不大的像素点,若某一二维像素点对应的梯度和位于预设变化区间,该二维像素点对应的目标梯度和等于相应的梯度和减去下限值,反之,若某一二维像素点对应的梯度和大于预设变化区间的上限值,该二维像素点对应的目标梯度和等于上限值减去下限值,若某一二维像素点对应的梯度和小于预设变化区间的下限值,该二维像素点对应的目标梯度和等于零。
在一个具体的实施例中,上述根据目标梯度和,确定变化趋势信息可以包括将目标梯度和作为上述变化趋势信息。
上述实施例中,结合反射向量的跳变幅度区间,对梯度和进行过滤修正,可以过滤反射向量跳变不大的像素点,更好的保证后续渲染出的图像质量。
在一个可选的实施例中,第一梯度信息包括三维模型对应三维坐标系中三个方向上的子反射向量各自相对于横轴方向的梯度信息;第二梯度信息包括三维模型对应三维坐标系中三个方向上的子反射向量各自相对于纵轴方向的梯度信息;相应的,如图5所示,上述基于第一梯度信息和第二梯度信息,确定变化趋势信息可以包括以下步骤:
在步骤S501中,从第一梯度信息和第二梯度信息中确定同一子反射向量对应的梯度信息中较大的梯度信息;
在步骤S503中,将三个方向上的子反射向量对应的较大的梯度信息之和,作为目标梯度信息;
在步骤S505中,根据目标梯度信息,确定变化趋势信息。
在一个具体的实施例中,可以比较同一子反射向量在二维像素坐标系的两个方向上对应的梯度信息,并每个子反射向量对应的较大的梯度信息进行相加,得到目标梯度信息。
在一个具体的实施例中,上述确定目标梯度信息可以结合下述公式:
delta2=max(dx.x,dy.x)+max(dx.y,dy.y)+max(dx.z,dy.z)
其中,delta2为目标梯度信息,max(dx.x,dy.x)表示取dx.x,dy.x中较大值,max(dx.y,dy.y)表示取dx.y,dy.y中较大,max(dx.z,dy.z)表示取dx.z,dy.z中较大。
在一个具体的实施例中,上述根据目标梯度信息,确定变化趋势信息可以包括将目标梯度信息作为上述变化趋势信息。
上述实施例中,通过将反射向量中每个子反射向量在二维像素坐标系的两个方向上,较大的梯度信息进行相加,得到反射向量的变化趋势信息,可以实现对反射向量在像素级别的变化情况进行精准刻画,进而便于结合反射向量在像素级别的变化情况来修正图像渲染过程中出现的锯齿失真问题。
在一个可选的实施例中,如图6所示,上述基于第一梯度信息和第二梯度信息,确定变化趋势信息还可以包括以下步骤:
在步骤S507中,基于预设变化区间对目标梯度信息进行过滤修正,得到过滤修正后的梯度信息;
相应的,上述步骤S505中根据目标梯度信息,确定变化趋势信息可以包括:
根据过滤修正后的梯度信息,确定变化趋势信息。
在一个具体的实施例中,基于预设变化区间对目标梯度信息进行过滤修正,得到过滤修正后的梯度信息的具体细化步骤可以参见上述基于预设变化区间对梯度和进行过滤修正,得到目标梯度和的具体细化步骤,在此不再赘述。
在一个具体的实施例中,上述根据过滤修正后的梯度信息,确定变化趋势信息可以包括将过滤修正后的梯度信息,作为上述变化趋势信息。
上述实施例中,结合反射向量的跳变幅度区间,对目标梯度信息进行过滤修正,可以过滤反射向量跳变不大的像素点,更好的保证后续渲染出的图像质量。
在步骤S107中,基于变化趋势信息对原始粗糙度进行平滑处理,得到目标粗糙度。
在一个可选的实施例中,可以结合实际应用情况,确定对高频光照部分中的Prefilter图和/或BRDFLUT图对应的原始粗糙度进行修正,相应的,上述目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度和/或目标对象的滤镜基准图对应的第二粗糙度;
可选的,如图7所示,上述基于变化趋势信息对原始粗糙度进行平滑处理,得到目标粗糙度可以包括以下步骤:
在步骤S1071中,根据原始粗糙度和变化趋势信息,确定原始粗糙度对应的修正数据;
在步骤S1073中,基于修正数据对原始粗糙度进行平滑处理,得到平滑后粗糙度;
在步骤S1075中,基于第一粗糙度权重,对平滑后粗糙度和原始粗糙度进行加权处理,得到第一粗糙度;和/或,基于第二粗糙度权重,对平滑后粗糙度和原始粗糙度进行加权处理,得到第二粗糙度。
在一个具体的实施例中,可以将1减去原始粗糙度后的差,乘以变化趋势信息,得到原始粗糙度对应的修正数据。
在一个可选的实施例中,上述基于修正数据对原始粗糙度进行平滑处理,得到平滑后粗糙度可以包括:
根据修正数据和原始粗糙度,确定修正粗糙度;
基于预设粗糙度区间对修正粗糙度进行过滤修正,得到平滑后粗糙度。
在一个具体的实施例中,可以将修正数据和原始粗糙度相加,得到修正粗糙度。具体的,通过在三维模型的原始粗糙度中加入上述修正数据,可以让平滑后粗糙度越趋近于0,受到反射变化量的影响越大,进而图像可以更清晰。
本说明书实施例中,预设粗糙度区间可以为预先设置的粗糙度的平滑区间。在一个具体的实施例中,预设粗糙度区间可以为[0,1]。相应的,0为预设粗糙度区间的粗糙度下限值;1为预设粗糙度区间的粗糙度上限值。
可选的,若修正粗糙度位于预设粗糙度区间,平滑后粗糙度等于修正粗糙度;反之,若修正粗糙度大于粗糙度上限值,平滑后粗糙度等于粗糙度上限值,若修正粗糙度小于粗糙度下限值,平滑后粗糙度等于粗糙度下限值。
上述实施例中,结合预先设置的粗糙度的平滑区间,对修正粗糙度进行过滤修正,可以精准得到平滑后的粗糙度,进而可以提升抗锯齿的效果,改善渲染出的图像质量。
在一个具体的实施例中,第一粗糙度权重可以结合实际应用进行设置,第一粗糙度权重可以用于控制初始二维图像生成过程中,平滑后粗糙度和三维模型中原始粗糙度的影响比例;第二粗糙度权重可以结合实际应用进行设置,第二粗糙度权重可以用于控制滤镜基准图生成过程中,平滑后粗糙度和三维模型中原始粗糙度的影响比例。
在一个可选的实施例中,上述基于第一粗糙度权重,对平滑后粗糙度和原始粗糙度进行加权处理,得到第一粗糙度可以包括计算原始粗糙度与(1-第一粗糙度权重)的第一乘积,以及第一粗糙度权重与平滑后粗糙度间的第二乘积可将第一乘积和第二乘积之和,作为上述第一粗糙度。
在一个可选的实施例中,上述基于第二粗糙度权重,对平滑后粗糙度和原始粗糙度进行加权处理,得到第二粗糙度可以包括计算原始粗糙度与(1-第二粗糙度权重)的第三乘积,以及第二粗糙度权重与平滑后原始粗糙度间的第四乘积可将第三乘积和第四乘积之和,作为上述第二粗糙度。
上述实施例中,结合反射向量的变化趋势信息对原始粗糙度进行修正,以得到平滑的粗糙度,并结合平滑后的粗糙度来控制生成初始二维图像和/或滤镜基准图所需的粗糙度,可以保证在反射向量跳变大的像素点,颜色梯度也不会变化的过于明显,也就是反射的更模糊,色块比较接近,减少锯齿的产生,进而提升图像质量。
在步骤S109中,基于目标粗糙度,在屏幕上渲染目标对象的二维图像。
在一个可选的实施例中,上述目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度和目标对象的滤镜基准图对应的第二粗糙度的情况下;如图8所示,上述基于目标粗糙度,在屏幕上渲染目标对象的二维图像可以包括以下步骤:
在步骤S1091中,根据第一粗糙度,确定目标对象对应的多级纹理中的第一目标纹理;
在步骤S1093中,基于第一目标纹理和反射向量,生成目标对象的初始二维图像;
在步骤S1095中,根据第二粗糙度,生成目标对象对应的滤镜基准图;
在步骤S1097中,基于初始二维图像和滤镜基准图,在屏幕渲染出二维图像。
在实际应用中,多级纹理为分辨率递减的同一纹理,目标纹理为与第一粗糙度对应分辨率的纹理,具体的,多级纹理(mipmap)的等级信息与粗糙度间为预先设置的正比映射关系,相应的,可以结合第一粗糙度来确定目标对象对应的多级纹理中的目标纹理。
在一个具体的实施例中,基于第一目标纹理和反射向量,生成目标对象的初始二维图像过程中,可以结合采样立方体贴图函数texCube,具体的,可以结合下述公式:
Lc(R)=texCube(prefiltermap,R,mipmap)
其中,Lc(R)为初始二维图像(预设环境光照的结果),prefiltermap为采样的贴图,R为反射向量,mipmap为目标纹理。
在一个具体的实施例中,在根据第二粗糙度,生成目标对象对应的滤镜基准图过程中,可以以目标对象的某一二维像素点对应的第二粗糙度为x坐标,二维像素点在三维模型中对应的法线与视角的点乘为y坐标,去双向反射分布表中查找用于生成滤镜基准图的双向反射分布的预计算项1和双向反射分布的预计算项2。
在一个具体的实施例中,目标对象的渲染过程中,可以结合IBL技术,具体的,IBL技术中,光照模型中的光照信息(出射光)可以包括低频光照部分和高频光照部分,其中,低频光照部分可以结合辐照度贴图确定,高频光照部分包括Prefilter图和BRDFLUT图。相应的,上述基于初始二维图像和滤镜基准图,在屏幕渲染出二维图像可以包括基于上述目标对象对应的辐照度贴图、初始二维图像和滤镜基准图渲染出二维图像。
在一个具体的实施例中,辐照度贴图可以结合目标对象的二维像素点在三维模型中的法线方向来确定。
上述实施例中,结合平滑后的粗糙度对图像渲染过程中高频光照中初始二维图像和滤镜基准图进行修正,避免相邻像素的跳变比较大,可以有效改善渲染出的图像出现锯齿、失真的情况,进而有效改善图像质量。
可选的,上述目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度的情况下,上述基于目标粗糙度,在屏幕上渲染目标对象的二维图像可以包括:根据第一粗糙度,确定目标对象对应的多级纹理中的第一目标纹理;基于第一目标纹理和反射向量,生成目标对象的初始二维图像;根据原始粗糙度,生成目标对象对应的滤镜基准图;基于初始二维图像和滤镜基准图,在屏幕渲染出二维图像。
可选的,上述目标粗糙度包括目标对象的滤镜基准图对应的第二粗糙度的情况下,上述基于目标粗糙度,在屏幕上渲染目标对象的二维图像可以包括:根据原始粗糙度,确定目标对象对应的多级纹理中的第二目标纹理;基于目标纹理和反射向量,生成目标对象的初始二维图像;根据第二粗糙度,生成目标对象对应的滤镜基准图;基于初始二维图像和滤镜基准图,在屏幕渲染出二维图像。
在一个具体的实施例中,目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度,或目标粗糙度包括目标对象的滤镜基准图对应的第二粗糙度的情况下,在基于目标粗糙度,在屏幕上渲染目标对象的二维图像,可以仅对初始二维图像生成过程中所需的粗糙度或仅对滤镜基准图生成过程中所需的粗糙度进行修正,具体的,细化步骤可以参见上述目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度和目标对象的滤镜基准图对应的第二粗糙度的情况下,基于目标粗糙度,在屏幕上渲染目标对象的二维图像的细化步骤,在此不再赘述。
上述实施例中,结合平滑后的粗糙度对图像渲染过程中高频光照中初始二维图像或滤镜基准图进行修正,避免相邻像素的跳变比较大,可以有效改善渲染出的图像出现锯齿、失真的情况,进而有效改善图像质量。
由以上本说明书实施例提供的技术方案可见,本说明书中,在图像渲染过程中,结合目标对象三维模型中反射向量的变化趋势信息对原始粗糙度进行修正,可以校准高光反射的清晰程度,从而降低渲染出的图像的锯齿感,提升图像质量;同时在渲染过程中,进行抗锯齿处理,可以避免产生额外计算量或者带来额外的存储占用,进而可以有效降低设备资源消耗,提升设备性能。
图9是根据一示例性实施例示出的一种图像渲染装置框图。参照图9,该装置包括:
三维模型获取模块910,被配置为执行获取目标对象的三维模型;
三维信息获取模块920,被配置为执行确定目标对象的二维像素点,在三维模型中对应点受到光照后的反射向量和原始粗糙度,二维像素点为三维模型投影到屏幕上的像素点;
变化趋势分析模块930,被配置为执行对反射向量进行变化趋势分析,得到反射向量的变化趋势信息;
平滑处理模块940,被配置为执行基于变化趋势信息对原始粗糙度进行平滑处理,得到目标粗糙度;
图像渲染模块950,被配置为执行基于目标粗糙度,在屏幕上渲染目标对象的二维图像。
可选的,变化趋势分析模块930包括:
梯度信息确定单元,被配置为执行确定反射向量在屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息;
变化趋势信息确定单元,被配置为执行基于第一梯度信息和第二梯度信息,确定变化趋势信息。
可选的,反射向量包括三维模型对应三维坐标系中横轴方向上的第一子反射向量、纵轴方向上的第二子反射向量和竖轴方向上的第三子反射向量;
梯度信息确定单元包括:
第一求导单元,被配置为执行对第一子反射向量、第二子反射向量和第三子反射向量分别沿横轴方向求导,得到第一子反射方向对应的第一求导结果、第二子反射方向对应的第二求导结果和第三子反射方向对应的第三求导结果;
第二求导单元,被配置为执行对第一子反射向量、第二子反射向量和第三子反射向量分别沿纵轴方向求导,得到第一子反射方向对应的第四求导结果、第二子反射方向对应的第五求导结果和第三子反射方向对应的第六求导结果;
第一梯度信息确定单元,被配置为执行根据第一求导结果、第二求导结果和第三求导结果,确定第一梯度信息;
第二梯度信息确定单元,被配置为执行根据第四求导结果、第五求导结果和第六求导结果,确定第二梯度信息。
可选的,变化趋势信息确定单元包括:
梯度和确定单元,被配置为执行确定第一梯度信息和第二梯度信息间的梯度和;
第一变化趋势信息确定子单元,被配置为执行根据梯度和,确定变化趋势信息。
可选的,变化趋势信息确定单元还包括:
第一过滤修正单元,被配置为执行基于预设变化区间对梯度和进行过滤修正,得到目标梯度和;
第一变化趋势信息确定子单元还被配置为执行根据目标梯度和,确定变化趋势信息。
可选的,第一梯度信息包括三维模型对应三维坐标系中三个方向上的子反射向量各自相对于横轴方向的梯度信息;第二梯度信息包括三维模型对应三维坐标系中三个方向上的子反射向量各自相对于纵轴方向的梯度信息;变化趋势信息确定单元包括:
梯度比较单元,被配置为执行从第一梯度信息和第二梯度信息中确定同一子反射向量对应的梯度信息中较大的梯度信息;
目标梯度信息确定单元,被配置为执行将三个方向上的子反射向量对应的较大的梯度信息之和,作为目标梯度信息;
第二变化趋势信息确定子单元,被配置为执行根据目标梯度信息,确定变化趋势信息。
可选的,变化趋势信息确定单元还包括:
第二过滤修正单元,被配置为执行基于预设变化区间对目标梯度信息进行过滤修正,得到过滤修正后的梯度信息;
第二变化趋势信息确定子单元还被配置为执行根据过滤修正后的梯度信息,确定变化趋势信息。
可选的,目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度和/或目标对象的滤镜基准图对应的第二粗糙度;
平滑处理模块940包括:
修正数据确定单元,被配置为执行根据原始粗糙度和变化趋势信息,确定原始粗糙度对应的修正数据;
平滑处理单元,被配置为执行基于修正数据对原始粗糙度进行平滑处理,得到平滑后粗糙度;
第一加权处理单元,被配置为执行基于第一粗糙度权重,对平滑后粗糙度和原始粗糙度进行加权处理,得到第一粗糙度;第一粗糙度权重用于控制初始二维图像生成过程中,平滑后粗糙度和原始粗糙度的影响比例;
和/或,
第二加权处理单元,被配置为执行基于第二粗糙度权重,对平滑后粗糙度和粗糙度进行加权处理,得到第二粗糙度;第二粗糙度权重用于控制滤镜基准图生成过程中,平滑后粗糙度和原始粗糙度的影响比例。
可选的,平滑处理单元包括:
修正粗糙度确定单元,被配置为执行根据修正数据和原始粗糙度,确定修正粗糙度;
第三过滤修正单元,被配置为执行基于预设粗糙度区间对修正粗糙度进行过滤修正,得到平滑后粗糙度。
可选的,目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度和目标对象的滤镜基准图对应的第二粗糙度;图像渲染模块950包括:
第一目标纹理确定单元,被配置为执行根据第一粗糙度,确定目标对象对应的多级纹理中的目标纹理,第一目标纹理为与第一粗糙度对应分辨率的纹理;
第一初始二维图像生成单元,被配置为执行基于目标纹理和反射向量,生成目标对象的初始二维图像;
第一滤镜基准图生成单元,被配置为执行根据第二粗糙度,生成目标对象对应的滤镜基准图;
第一图像渲染单元,被配置为执行基于初始二维图像和滤镜基准图,在屏幕渲染出二维图像。
可选的,目标粗糙度包括目标对象的初始二维图像对应的第一粗糙度;基于目标粗糙度,在屏幕上渲染目标对象的二维图像包括:
第二目标纹理确定单元,被配置为执行根据第一粗糙度,确定目标对象对应的多级纹理中的第一目标纹理,多级纹理为分辨率递减的同一纹理,第一目标纹理为与第一粗糙度对应分辨率的纹理;
第二初始二维图像生成单元,被配置为执行基于第一目标纹理和反射向量,生成目标对象的初始二维图像;
第二滤镜基准图生成单元,被配置为执行根据原始粗糙度,生成目标对象对应的滤镜基准图;
第二图像渲染单元,被配置为执行基于初始二维图像和滤镜基准图,在屏幕渲染出二维图像。
可选的,目标粗糙度包括目标对象的滤镜基准图对应的第二粗糙度;基于目标粗糙度,在屏幕上渲染目标对象的二维图像包括:
第三目标纹理确定单元,被配置为执行根据原始粗糙度,确定目标对象对应的多级纹理中的第二目标纹理,多级纹理为分辨率递减的同一纹理,第二目标纹理为与原始粗糙度对应分辨率的纹理;
第三初始二维图像生成单元,被配置为执行基于第二目标纹理和反射向量,生成目标对象的初始二维图像;
第三滤镜基准图生成单元,被配置为执行根据第二粗糙度,生成目标对象对应的滤镜基准图;
第三图像渲染单元,被配置为执行基于初始二维图像和滤镜基准图,在屏幕渲染出二维图像。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是根据一示例性实施例示出的一种用于图像渲染的电子设备的框图,该电子设备可以是终端,其内部结构图可以如图10所示。该电子设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像渲染方法。该电子设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示屏上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本公开方案相关的部分结构的框图,并不构成对本公开方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在示例性实施例中,还提供了一种电子设备,包括:处理器;用于存储该处理器可执行指令的存储器;其中,该处理器被配置为执行该指令,以实现如本公开实施例中的图像渲染方法。
在示例性实施例中,还提供了一种计算机可读存储介质,当该存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本公开实施例中的图像渲染方法。
在示例性实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开实施例中的图像渲染方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种图像渲染方法,其特征在于,包括:
获取目标对象的三维模型;
确定所述目标对象的二维像素点,在所述三维模型中对应点受到光照后的反射向量和原始粗糙度,所述二维像素点为所述三维模型投影到屏幕上的像素点;
对所述反射向量进行变化趋势分析,得到所述反射向量的变化趋势信息;
基于所述变化趋势信息对所述原始粗糙度进行平滑处理,得到目标粗糙度;
基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像。
2.根据权利要求1所述的图像渲染方法,其特征在于,所述对所述反射向量进行变化趋势分析,得到所述反射向量的变化趋势信息包括:
确定所述反射向量在所述屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息;
基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息。
3.根据权利要求2所述的图像渲染方法,其特征在于,所述反射向量包括所述三维模型对应三维坐标系中横轴方向上的第一子反射向量、纵轴方向上的第二子反射向量和竖轴方向上的第三子反射向量;
所述确定所述反射向量在所述屏幕的二维像素坐标系对应横轴方向上的第一梯度信息和纵轴方向上的第二梯度信息包括:
对所述第一子反射向量、第二子反射向量和第三子反射向量分别沿所述横轴方向求导,得到所述第一子反射方向对应的第一求导结果、所述第二子反射方向对应的第二求导结果和所述第三子反射方向对应的第三求导结果;
对所述第一子反射向量、第二子反射向量和第三子反射向量分别沿所述纵轴方向求导,得到所述第一子反射方向对应的第四求导结果、所述第二子反射方向对应的第五求导结果和所述第三子反射方向对应的第六求导结果;
根据所述第一求导结果、所述第二求导结果和所述第三求导结果,确定所述第一梯度信息;
根据所述第四求导结果、所述第五求导结果和所述第六求导结果,确定所述第二梯度信息。
4.根据权利要求2所述的图像渲染方法,其特征在于,所述基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息包括:
确定所述第一梯度信息和所述第二梯度信息间的梯度和;
根据所述梯度和,确定所述变化趋势信息。
5.根据权利要求4所述的图像渲染方法,其特征在于,所述基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息还包括:
基于预设变化区间对所述梯度和进行过滤修正,得到目标梯度和;
所述根据所述梯度和,确定所述变化趋势信息包括:
根据所述目标梯度和,确定所述变化趋势信息。
6.根据权利要求2所述的图像渲染方法,其特征在于,所述第一梯度信息包括所述三维模型对应三维坐标系中三个方向上的子反射向量各自相对于所述横轴方向的梯度信息;所述第二梯度信息包括所述三维模型对应三维坐标系中三个方向上的子反射向量各自相对于所述纵轴方向的梯度信息;所述基于所述第一梯度信息和所述第二梯度信息,确定所述变化趋势信息包括:
从所述第一梯度信息和所述第二梯度信息中确定同一子反射向量对应的梯度信息中较大的梯度信息;
将所述三个方向上的子反射向量对应的较大的梯度信息之和,作为目标梯度信息;
根据所述目标梯度信息,确定所述变化趋势信息。
7.一种图像渲染装置,其特征在于,包括:
三维模型获取模块,被配置为执行获取目标对象的三维模型;
三维信息获取模块,被配置为执行确定所述目标对象的二维像素点,在所述三维模型中对应点受到光照后的反射向量和原始粗糙度,所述二维像素点为所述三维模型投影到屏幕上的像素点;
变化趋势分析模块,被配置为执行对所述反射向量进行变化趋势分析,得到所述反射向量的变化趋势信息;
平滑处理模块,被配置为执行基于所述变化趋势信息对所述原始粗糙度进行平滑处理,得到目标粗糙度;
图像渲染模块,被配置为执行基于所述目标粗糙度,在所述屏幕上渲染所述目标对象的二维图像。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的图像渲染方法。
9.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至6中任一项所述的图像渲染方法。
10.一种计算机程序产品,包括计算机指令,其特征在于,所述计算机指令被处理器执行时实现权利要求1至6中任一项所述的图像渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110915793.XA CN113793402B (zh) | 2021-08-10 | 2021-08-10 | 图像渲染方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110915793.XA CN113793402B (zh) | 2021-08-10 | 2021-08-10 | 图像渲染方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113793402A true CN113793402A (zh) | 2021-12-14 |
CN113793402B CN113793402B (zh) | 2023-12-26 |
Family
ID=78875868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110915793.XA Active CN113793402B (zh) | 2021-08-10 | 2021-08-10 | 图像渲染方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113793402B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114998504A (zh) * | 2022-07-29 | 2022-09-02 | 杭州摩西科技发展有限公司 | 二维图像光照渲染方法、装置、系统和电子装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872491A (zh) * | 2010-05-21 | 2010-10-27 | 清华大学 | 基于光度立体的自由视角重光照方法和系统 |
US8411990B1 (en) * | 2009-08-28 | 2013-04-02 | Adobe Systems Incorporated | System and method for decomposing an image into reflectance and shading components |
KR101451792B1 (ko) * | 2013-05-30 | 2014-10-16 | 한국과학기술연구원 | 영상 렌더링 장치 및 그 방법 |
CN109448117A (zh) * | 2018-11-13 | 2019-03-08 | 北京旷视科技有限公司 | 图像渲染方法、装置及电子设备 |
CN111862344A (zh) * | 2020-07-17 | 2020-10-30 | 北京字节跳动网络技术有限公司 | 图像处理方法、设备和存储介质 |
CN112085671A (zh) * | 2020-08-19 | 2020-12-15 | 北京影谱科技股份有限公司 | 一种背景重建方法、装置、计算设备及存储介质 |
CN112116692A (zh) * | 2020-08-28 | 2020-12-22 | 北京完美赤金科技有限公司 | 模型渲染方法、装置、设备 |
-
2021
- 2021-08-10 CN CN202110915793.XA patent/CN113793402B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8411990B1 (en) * | 2009-08-28 | 2013-04-02 | Adobe Systems Incorporated | System and method for decomposing an image into reflectance and shading components |
CN101872491A (zh) * | 2010-05-21 | 2010-10-27 | 清华大学 | 基于光度立体的自由视角重光照方法和系统 |
KR101451792B1 (ko) * | 2013-05-30 | 2014-10-16 | 한국과학기술연구원 | 영상 렌더링 장치 및 그 방법 |
CN109448117A (zh) * | 2018-11-13 | 2019-03-08 | 北京旷视科技有限公司 | 图像渲染方法、装置及电子设备 |
CN111862344A (zh) * | 2020-07-17 | 2020-10-30 | 北京字节跳动网络技术有限公司 | 图像处理方法、设备和存储介质 |
CN112085671A (zh) * | 2020-08-19 | 2020-12-15 | 北京影谱科技股份有限公司 | 一种背景重建方法、装置、计算设备及存储介质 |
CN112116692A (zh) * | 2020-08-28 | 2020-12-22 | 北京完美赤金科技有限公司 | 模型渲染方法、装置、设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114998504A (zh) * | 2022-07-29 | 2022-09-02 | 杭州摩西科技发展有限公司 | 二维图像光照渲染方法、装置、系统和电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113793402B (zh) | 2023-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109325532A (zh) | 一种小样本下扩充数据集的图像处理方法 | |
GB2532541A (en) | Depth map generation | |
CN110766639A (zh) | 图像增强方法、装置、移动设备及计算机可读存储介质 | |
EP2870585A1 (en) | A method and system for correcting a distorted input image | |
CN109817170B (zh) | 像素补偿方法、装置和终端设备 | |
CN109801244A (zh) | 图像增强方法、装置、计算机设备和存储介质 | |
CN113643414A (zh) | 一种三维图像生成方法、装置、电子设备及存储介质 | |
CN109887002A (zh) | 图像特征点的匹配方法、装置、计算机设备和存储介质 | |
CN115578286A (zh) | 高动态范围的混合曝光成像方法和装置 | |
CN108876704A (zh) | 人脸图像变形的方法、装置及计算机存储介质 | |
CN109102524B (zh) | 图像特征点的跟踪方法和跟踪装置 | |
WO2013094131A1 (en) | Image processing apparatus, image pickup apparatus, image processing method, and image processing program | |
CN109872344A (zh) | 图像特征点的跟踪方法、匹配方法和坐标获取方法、装置 | |
CN114049268A (zh) | 图像校正方法、装置、电子设备和计算机可读存储介质 | |
KR20190067438A (ko) | 이미지를 제공하기 위한 방법 및 이를 지원하는 전자 장치 | |
CN113793402B (zh) | 图像渲染方法、装置、电子设备及存储介质 | |
CN108182666A (zh) | 一种视差校正方法、装置和终端 | |
WO2016098323A1 (ja) | 情報処理装置、情報処理方法、及び、記録媒体 | |
CN111199717A (zh) | 一种液晶显示屏Mura补偿方法、系统及存储介质 | |
KR101888837B1 (ko) | 스테레오 매칭 시스템의 전처리 장치 | |
CN110619611B (zh) | 图像校正标定方法、装置、计算机设备和存储介质 | |
WO2023023960A1 (zh) | 图像处理及神经网络的训练方法和装置 | |
CN109063601A (zh) | 唇纹检测方法、装置、计算机设备和存储介质 | |
CN112422841B (zh) | 图像补偿方法、装置、计算机设备和存储介质 | |
CN110910436B (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 |