一种图像处理方法、装置及计算机设备的制作方法

文档序号:6536531阅读:193来源:国知局
一种图像处理方法、装置及计算机设备的制作方法
【专利摘要】本发明实施例公开了一种图像处理方法、装置及计算机设备。本发明实施例公开的图像处理方法包括:图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;图形处理器对接收到的场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到;图形处理器对待渲染目标物进行渲染得到渲染深度参数,所述待渲染目标物由不位于射线光源处的摄像机拍摄得到;图形处理器根据场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图;图形处理器对各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。本发明实施例能够提高图像的处理效率。
【专利说明】一种图像处理方法、装置及计算机设备

【技术领域】
[0001]本发明实施例涉及图像处理【技术领域】,尤其涉及一种图像处理方法、装置及计算机设备。

【背景技术】
[0002]在网络游戏蓬勃发展的今天,人们对游戏场景的真实感要求越来越高。环境光遮蔽(Ambient Occlus1n, A0)是全局光照(Global Illuminat1n,GI)技术中的重要组成部分,AO描述了物体表面上每个点与场景中其他物体的遮挡值,通常使用AO来衰减光照在物体表面的光照值,进而生成阴影增强空间的层次感,场景的真实感,增强画面的艺术性。
[0003]但是在游戏开发的过程中,本发明的发明人发现,目前市场上主流的AO贴图烘焙软件多是基于中央处理器(Central Processing Unit, CPU)的,而中央处理器对图像数据的处理效率比较低,所以导致AO贴图的烘焙效率也非常低,通常烘焙一张AO贴图需要好几个小时;也有一些烘焙软件可以将一部分处理过程放在CPU上,另一部分处理过程放在图形处理器(Graphic Processing Unit, GPU)上,但是这类烘焙软件中涉及到的算法往往很复杂,最终还是会产生图像处理效率低的问题。因此,有必要提供一种新的方法解决上述问题。


【发明内容】

[0004]本发明实施例提供了一种图像处理方法、装置及计算机设备,能够提高图像的处理效率。所述技术方案如下:
[0005]第一方面,提供了一种图像处理方法,所述图像处理方法包括:
[0006]图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;
[0007]所述图形处理器对所述场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到;
[0008]所述图形处理器对所述待渲染目标物进行渲染得到渲染深度参数,所述待渲染目标物由不位于射线光源处的摄像机拍摄得到;
[0009]所述图形处理器根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图;
[0010]所述图形处理器对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0011]第二方面,提供了一种图像处理装置,所述图像处理装置包括:
[0012]接收单元,用于接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;
[0013]渲染处理单元,用于对所述场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到,以及对所述待渲染目标物进行渲染得到渲染深度参数,所述待渲染目标物由不位于射线光源处的摄像机拍摄得到;
[0014]贴图生成单元,用于根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图;
[0015]输出处理单元,用于对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0016]第三方面,提供了一种计算机设备,所述计算机设备包括中央处理器和图形处理器,其中:
[0017]所述中央处理器用于,确定以待渲染目标物为中心、呈球形或半球形分布的射线点,在每个射线点的位置建立光照朝向所述待渲染目标物的射线光源;
[0018]所述图形处理器用于,接收所述中央处理器发送的待渲染目标物周围预置范围内的场景的信息;对所述场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到;对所述待渲染目标物进行渲染得到渲染深度参数,所述待渲染目标物由不位于射线光源处的摄像机拍摄得到;根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图;对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0019]从以上技术方案可以看出,本发明实施例具有以下优点:
[0020]本发明实施例中,图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;图形处理器对接收到的场景进行渲染得到场景深度参数;图形处理器对待渲染目标物进行渲染得到渲染深度参数;图形处理器根据场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图;图形处理器对各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。本发明实施例中,由于只需要根据场景深度参数以及渲染深度参数就可以计算出待渲染目标物在各射线光源方向的环境光遮蔽贴图,对各射线光源方向的环境光遮蔽贴图进行简单的叠加就可以得到输出图像,避开了现有技术中复杂的计算过程,且将这些对图像的计算处理过程放在了图形处理器中完成,利用图形处理器对图像数据的强大处理能力,提高了图像的处理效率。

【专利附图】

【附图说明】
[0021]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]图1为本发明图像处理方法一个实施例示意图;
[0023]图2为本发明图像处理方法另一实施例示意图;
[0024]图3为本发明图像处理装置一个实施例示意图;
[0025]图4为本发明图像处理装置另一实施例示意图;
[0026]图5为本发明计算机设备一个实施例示意图;
[0027]图6为未经Gamma矫正的输出图像;
[0028]图7为经过Gamma矫正的输出图像。

【具体实施方式】
[0029]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0030]本发明实施例提供了一种图像处理方法、装置及计算机设备,能够提高图像的处理效率。
[0031]请参阅图1,图1为本发明图像处理方法一个实施例示意图,本实施例的图像处理方法包括:
[0032]101、图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;
[0033]本实施例中,在中央处理器中建立待渲染目标物模型,并设置射线光源,并由中央处理器通过模拟的位于射线光源处的摄像机拍摄待渲染目标物,以获取待渲染目标物周围预置范围内的场景的信息,预置范围可根据实际需要预先在中央处理器中进行设定,获取的场景中可以包括待渲染目标物以及其他的物件、地形等。中央处理器将获取的待渲染目标物周围预置范围内的场景的信息发送给图形处理器,以由图形处理器进行进一步的处理。
[0034]102、图形处理器对接收到的场景进行渲染得到场景深度参数;
[0035]图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息,对接收到的场景进行渲染得到场景深度参数。
[0036]103、图形处理器对待渲染目标物进行渲染得到渲染深度参数;
[0037]图形处理器利用不处于射线光源处的摄像机单独拍摄待渲染目标物,对待渲染目标物进行渲染得到渲染深度参数。图形处理器在利用不处于射线光源处的摄像机拍摄待渲染目标物时,所选取的拍摄角度要能够拍摄到完整的待渲染目标物。
[0038]104、图形处理器根据场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图;
[0039]具体实现中,射线光源可以有多个,图形处理器根据待渲染目标物在每一个射线光源方向的场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图。
[0040]105、图形处理器对各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0041]本实施例中,只需要根据场景深度参数以及渲染深度参数就可以计算出待渲染目标物在各射线光源方向的环境光遮蔽贴图,对各射线光源方向的环境光遮蔽贴图进行简单的叠加就可以得到输出图像,避开了现有技术中复杂的计算过程,且将这些对图像的计算处理过程放在了图形处理器中完成,利用图形处理器对图像数据的强大处理能力,提高了图像的处理效率。
[0042]为便于理解,下面以一具体实施例对本发明实施例中图像处理方法进行描述,请参阅图2,本实施例的图像处理方法包括:
[0043]201、中央处理器确定以待渲染目标物为中心、呈球形或半球形分布的射线点;
[0044]本实施例中,在中央处理器中建立待渲染目标物模型,然后中央处理器确定以待渲染目标物为中心,呈球形或半球形均匀分布的射线点。
[0045]202、中央处理器在每个射线点的位置建立光照朝向待渲染目标物的射线光源;
[0046]中央处理器在每个射线点的位置处建立射线光源,射线光源的光照朝向待渲染目标物,优选地,射线光源的个数为900个。
[0047]中央处理器通过模拟的位于射线光源处的摄像机拍摄待渲染目标物,以获取待渲染目标物周围预置范围内的场景的信息。其中,预置范围可根据实际需要在中央处理器中预先设定,摄像机拍摄待渲染目标物的方式可以是平行投影矩阵方式,获取的场景中可以包括待渲染目标物以及其他的物件、地形等。
[0048]为保证图像绘制的准确性,中央处理器可以将获取的待渲染目标物周围预置范围内的场景中的动态物件过滤掉,这些动态物件例如粒子,带骨骼动画等,将过滤之后的待渲染目标物周围预置范围内的场景的信息发送给图形处理器,以由图形处理器进行进一步的处理。
[0049]具体地,中央处理器可以利用四叉树、八叉树,九宫等算法将获取的场景的信息发送给图形处理器。另外,发送给图形处理器的信息中还可以包括射线光源处的摄像机的相关参数,例如视矩阵,投影矩阵,镜头位置等。
[0050]203、图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;
[0051]图形处理器接收的场景是由射线光源处的摄像机拍摄所得。
[0052]204、图形处理器对接收到的场景进行渲染得到场景深度参数;
[0053]图形处理器对接收到的场景进行渲染,得到场景深度图,场景深度图中保存了射线光源处的摄像机拍摄的场景中每个像素点的场景深度参数,即也包含了待渲染目标物的每个像素点的场景深度参数。
[0054]205、图形处理器对待渲染目标物进行渲染得到渲染深度参数;
[0055]待渲染目标物由不位于射线光源处的摄像机拍摄所得,该摄像机可以用平行投影的方式单独拍摄待渲染目标物,且所选取的拍摄角度要能拍摄到完整的待渲染目标物。
[0056]图形处理器对待渲染目标物进行渲染,渲染之后,得到渲染深度图,从渲染深度图中获取待渲染目标物的顶点坐标,将待渲染目标物的顶点坐标与世界坐标矩阵相乘之后,再与射线光源处的摄像机视矩阵和投影矩阵相乘,得到待渲染目标物的渲染深度参数。待渲染目标物的渲染深度参数中包括待渲染目标物的每个像素点的渲染深度参数。
[0057]206、对于每一个射线光源,图形处理器根据待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值;
[0058]对于每一个射线光源,图形处理器获取与该射线光源处的摄像机拍摄的待渲染目标物对应的场景深度参数,以及不位于任何一个射线光源处的摄像机拍摄待渲染目标物的渲染深度参数,根据待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值,具体如下:
[0059]对于某一像素点,图形处理器比较该像素点的渲染深度参数与场景深度参数,当渲染深度参数大于场景深度参数时,确定该像素点的阴影值为I ;当该像素点的渲染深度参数小于或等于场景深度参数时,确定该像素点的阴影值为O。
[0060]图形处理器将该像素点的阴影值乘以权重系数就得到该像素点在该射线光源方向的环境光遮蔽值,权重系数包括该射线光源的光照方向与该像素点的法线方向的点积,以及射线光源的总数的倒数,例如,当射线光源为900个时,射线光源的总数的倒数就为1/900。
[0061]另外,为保证每个像素点的环境光遮蔽值的计算准确性,还可以将上面计算所得的环境光遮蔽值乘以预设的经验系数,该经验系数根据实验测得可为0.15。
[0062]207、图形处理器对每个像素点的环境光遮蔽值进行叠加得到待渲染目标物在该射线光源方向的环境光遮蔽贴图;
[0063]图形处理器对每个像素点的环境光遮蔽值进行叠加得到待渲染目标物的环境光遮蔽值,根据待渲染目标物的环境光遮蔽值绘制出待渲染目标物在该射线光源方向的环境光遮蔽贴图。
[0064]208、图形处理器计算待渲染目标物在各射线光源方向的环境光遮蔽贴图;
[0065]依次类推,图形处理器按照上述方法可以获取待渲染目标物在每一个射线光源方向的环境光遮蔽贴图。
[0066]209、图形处理器对各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像;
[0067]输出图像可能会因为锯齿和纹理像素的溢出产生黑边。对于锯齿产生的黑边,可以采用阴影的“百分比渐进过滤”进行处理,每个像素去上下左右和自己取平均数。对于像素的溢出产生的黑边可通过扩充有效像素来解决,具体地,可在像素着色器中判断当前像素是否无效,如果无效,则采样其周围8个像素,累加其中的有效像素,获取有效像素的平均值,将这个平均值作为当前像素的阴影值,并设置当前像素有效,这样就实现了将输出图像扩展一个像素防止采样过界。
[0068]210、图形处理器对输出图像进行Gamma矫正并输出。
[0069]图形处理器对输出图像进行Gamma矫正,即图形处理器将输出图像贴到待渲染目标物模型上进行显示,使用颜色图表(Color Chart)来调整输出图像的显示效果,以解决场景中因加入环境光遮蔽导致的场景整体变暗的问题。
[0070]本实施例中,只需要根据场景深度参数以及渲染深度参数就可以计算出待渲染目标物在各射线光源方向的环境光遮蔽贴图,对各射线光源方向的环境光遮蔽贴图进行简单的叠加就可以得到输出图像,避开了现有技术中复杂的计算过程,且将这些对图像的计算处理过程放在了图形处理器中完成,利用图形处理器对图像数据的强大处理能力,提高了图像的处理效率。
[0071]下面介绍本发明实施例提供的图像处理装置,请参阅图3,图像处理装置300包括:
[0072]接收单元301,用于接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;
[0073]渲染处理单元302,用于对接收到的场景进行渲染得到场景深度参数,该场景由位于射线光源处的摄像机拍摄得到,以及对待渲染目标物进行渲染得到渲染深度参数,待渲染目标物由不位于射线光源处的摄像机拍摄得到;
[0074]贴图生成单元303,用于根据场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图;
[0075]输出处理单元304,用于对各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0076]为进一步理解本发明的技术方案,下面对本实施例的图像处理装置300内的各单元之间的交互方式进行描述,具体如下:
[0077]本实施例中,在中央处理器中建立待渲染目标物模型,并设置射线光源,并由中央处理器通过模拟的位于射线光源处的摄像机拍摄待渲染目标物,以获取待渲染目标物周围预置范围内的场景的信息,预置范围可根据实际需要预先在中央处理器中进行设定,获取的场景中可以包括待渲染目标物以及其他的物件、地形等。中央处理器将获取的待渲染目标物周围预置范围内的场景的信息发送给图像处理装置,接收单元301接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息。
[0078]渲染处理单元302对接收单元301接收到的场景进行渲染得到场景深度参数,渲染处理单元302接收到的场景由位于射线光源处的摄像机拍摄得到,以及对待渲染目标物进行渲染得到渲染深度参数,待渲染目标物由不位于射线光源处的摄像机拍摄得到。在利用不处于射线光源处的摄像机拍摄待渲染目标物时,所选取的拍摄角度要能够拍摄到完整的待渲染目标物。
[0079]贴图生成单元303根据渲染处理单元302获得的场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图。具体实现中,射线光源可以有多个,贴图生成单元303根据待渲染目标物在每一个射线光源方向的场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图。
[0080]输出处理单元304对贴图生成单元303生成的各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0081]本实施例中,贴图生成单元只需要根据场景深度参数以及渲染深度参数就可以计算出待渲染目标物在各射线光源方向的环境光遮蔽贴图,输出处理单元对各射线光源方向的环境光遮蔽贴图进行简单的叠加就可以得到输出图像,避开了现有技术中复杂的计算过程,且本实施例中的图像处理装置具有的图形数据处理能力比中央处理器的图形数据处理能力更强大,提高了图像的处理效率。
[0082]为便于理解,下面进一步介绍本发明实施例提供的图像处理装置,请参阅图4,图像处理装置400包括:
[0083]接收单元401,用于接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;
[0084]渲染处理单元402,用于对接收到的场景进行渲染得到场景深度参数,该场景由位于射线光源处的摄像机拍摄得到,以及对待渲染目标物进行渲染得到渲染深度参数,待渲染目标物由不位于射线光源处的摄像机拍摄得到;
[0085]贴图生成单元403,用于根据场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图;
[0086]具体地,贴图生成单元403包括计算单元4031及贴图生成子单元4032,其中:
[0087]计算单元4031用于,对于每一个射线光源,根据待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值;
[0088]贴图生成子单元4032用于,对该环境光遮蔽值进行叠加得到待渲染目标物在该射线光源方向的环境光遮蔽贴图。
[0089]输出处理单兀404,用于对各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像;
[0090]矫正单元405,用于对输出图像进行Gamma矫正并输出。
[0091]为进一步理解本发明的技术方案,下面对本实施例的图像处理装置400内的各单元之间的交互方式进行描述,具体如下:
[0092]本实施例中,在中央处理器中建立待渲染目标物模型,并设置射线光源,并由中央处理器通过模拟的位于射线光源处的摄像机拍摄待渲染目标物,以获取待渲染目标物周围预置范围内的场景的信息,预置范围可根据实际需要预先在中央处理器中进行设定,获取的场景中可以包括待渲染目标物以及其他的物件、地形等。中央处理器将获取的待渲染目标物周围预置范围内的场景的信息发送给图像处理装置,接收单元401接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息。接收单元401接收到的场景中包含待渲染目标物以及其他物件、地形等,接收的场景的信息中还可以包括射线光源处的摄像机的相关参数,例如视矩阵,投影矩阵,镜头位置等。
[0093]渲染处理单元402对接收单元401接收到的场景进行渲染,得到场景深度图,场景深度图中保存了射线光源处的摄像机拍摄的场景中每个像素点的场景深度参数,即也包含了待渲染目标物的每个像素点的场景深度参数。
[0094]接下来渲染处理单元402对待渲染目标物进行渲染得到渲染深度参数,待渲染目标物由不位于射线光源处的摄像机拍摄所得,该摄像机可以用平行投影的方式单独拍摄待渲染目标物,且所选取的拍摄角度要能拍摄到完整的待渲染目标物。
[0095]具体地,渲染处理单元402对待渲染目标物进行渲染,渲染之后,得到渲染深度图,从渲染深度图中获取待渲染目标物的顶点坐标,将待渲染目标物的顶点坐标与世界坐标矩阵相乘之后,再与射线光源处的摄像机视矩阵和投影矩阵相乘,得到待渲染目标物的渲染深度参数。待渲染目标物的渲染深度参数中包括待渲染目标物的每个像素点的渲染深度参数。
[0096]贴图生成单元403根据渲染处理单元402获取的场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图。
[0097]具体地,对于每一个射线光源,计算单元4031获取与该射线光源处的摄像机拍摄的待渲染目标物对应的场景深度参数,以及不位于任何一个射线光源处的摄像机拍摄待渲染目标物的渲染深度参数,根据待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值,计算过程如下:
[0098]对于某一像素点,计算单元4031比较该像素点的渲染深度参数与场景深度参数,当渲染深度参数大于场景深度参数时,确定该像素点的阴影值为I ;当该像素点的渲染深度参数小于或等于场景深度参数时,确定该像素点的阴影值为O ;
[0099]然后计算单元4031将该像素点的阴影值乘以权重系数就得到该像素点在该射线光源方向的环境光遮蔽值,权重系数包括该射线光源的光照方向与该像素点的法线方向的点积,以及射线光源的总数的倒数,例如,当射线光源为900个时,射线光源的总数的倒数就为1/900。
[0100]另外,为保证每个像素点的环境光遮蔽值的计算准确性,计算单元4031还可以将上面计算所得的环境光遮蔽值乘以预设的经验系数,该经验系数根据实验测得可为0.15。
[0101]贴图生成子单元4032对计算单元4031计算的每个像素点的环境光遮蔽值进行叠加得到待渲染目标物的环境光遮蔽值,根据待渲染目标物的环境光遮蔽值绘制出待渲染目标物在该射线光源方向的环境光遮蔽贴图。依次类推,贴图生成子单元4032按照上述方法可以获取待渲染目标物在每一个射线光源方向的环境光遮蔽贴图。
[0102]输出处理单元404对贴图生成子单元4032生成的各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0103]输出图像可能会因为锯齿和纹理像素的溢出产生黑边。对于锯齿产生的黑边,输出处理单元404可以采用阴影的“百分比渐进过滤”进行处理,每个像素去上下左右和自己取平均数。对于像素的溢出产生的黑边输出处理单元404可通过扩充有效像素来解决,具体地,可在像素着色器中判断当前像素是否无效,如果无效,则采样其周围8个像素,累加其中的有效像素,获取有效像素的平均值,将这个平均值作为当前像素的阴影值,并设置当前像素有效,这样就实现了将输出图像扩展一个像素防止采样过界。
[0104]最后矫正单元405对输出处理单元404的输出图像进行Gamma矫正,即矫正单元405将输出图像贴到待渲染目标物模型上进行显示,使用颜色图表(Color Chart)来调整输出图像的显示效果,以解决场景中因加入环境光遮蔽导致的场景整体变暗的问题。具体的矫正效果请参阅图6及图7,图6表示的是未做Gamma矫正的输出图像的显示效果,图7表示的是做了 Gamma矫正之后的输出图像显示效果。
[0105]本实施例中,贴图生成单元只需要根据场景深度参数以及渲染深度参数就可以计算出待渲染目标物在各射线光源方向的环境光遮蔽贴图,输出处理单元对各射线光源方向的环境光遮蔽贴图进行简单的叠加就可以得到输出图像,避开了现有技术中复杂的计算过程,且本实施例中的图像处理装置具有的图形数据处理能力比中央处理器的图形数据处理能力更强大,提高了图像的处理效率。经实验测得,使用本实施例提供的图像处理装置生成一张环境光遮蔽贴图只需要几分钟,所用时间远低于现有技术中生成一张环境光遮蔽贴图的时间。
[0106]下面介绍本发明实施例提供的计算机设备,请参阅图5,计算机设备500包括可以包括RF (Rad1 Frequency,射频)电路510、包括有一个或一个以上计算机可读存储介质的存储器520、输入单元530、显示单元540、传感器550、音频电路560、WiFi (wirelessfidelity,无线保真)模块570、包括有一个或者一个以上处理核心的处理器580、以及电源590等部件。
[0107]本领域技术人员可以理解,图5中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0108]RF电路510可用于收发消息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器580处理;另外,将涉及上行的数据发送给基站。通常,RF电路510包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、稱合器、LNA (Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路510还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobilecommunicat1n,全球移动通讯系统)、GPRS (General Packet Rad1 Service,通用分组无线服务)、CDMA (Code Divis1n Multiple Access,码分多址)、WCDMA (Wideband CodeDivis1n Multiple Access,宽带码分多址)、LTE (Long Term Evolut1n,长期演进)、电子邮件、SMS (Short Messaging Service,短消息服务)等。
[0109]存储器520可用于存储软件程序以及模块,处理器580通过运行存储在存储器520的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备500的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器520还可以包括存储器控制器,以提供处理器580和输入单元530对存储器520的访问。
[0110]输入单元530可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元530可包括触敏表面531以及其他输入设备532。触敏表面531,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面531上或在触敏表面331附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器580,并能接收处理器580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面531。除了触敏表面531,输入单元530还可以包括其他输入设备532。具体地,其他输入设备532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0111]显示单元540可用于显示由用户输入的信息或提供给用户的信息以及计算机设备500的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元540可包括显示面板541,可选的,可以采用IXD(Liquid CrystalDisplay,液晶显示器)、OLED (Organic Light-Emitting D1de,有机发光二极管)等形式来配置显示面板541。进一步的,触敏表面531可覆盖显示面板541,当触敏表面531检测到在其上或附近的触摸操作后,传送给处理器580以确定触摸事件的类型,随后处理器580根据触摸事件的类型在显示面板541上提供相应的视觉输出。虽然在图5中,触敏表面531与显示面板541是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面531与显示面板541集成而实现输入和输出功能。
[0112]计算机设备500还可包括至少一种传感器550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板541的亮度,接近传感器可在计算机设备500移动到耳边时,关闭显示面板541和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别计算机设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于计算机设备500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0113]音频电路560、扬声器561,传声器562可提供用户与计算机设备500之间的音频接口。音频电路560可将接收到的音频数据转换后的电信号,传输到扬声器561,由扬声器561转换为声音信号输出;另一方面,传声器562将收集的声音信号转换为电信号,由音频电路560接收后转换为音频数据,再将音频数据输出处理器580处理后,经RF电路510以发送给比如另一终端,或者将音频数据输出至存储器520以便进一步处理。音频电路560还可能包括耳塞插孔,以提供外设耳机与计算机设备500的通信。
[0114]WiFi属于短距离无线传输技术,计算机设备500通过WiFi模块570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图5示出了 WiFi模块570,但是可以理解的是,其并不属于计算机设备500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0115]处理器580是计算机设备500的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器520内的软件程序和/或模块,以及调用存储在存储器520内的数据,执行计算机设备500的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器580可包括一个或多个处理核心;优选的,处理器580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器580中。
[0116]计算机设备500还包括给各个部件供电的电源590 (比如电池),优选的,电源可以通过电源管理系统与处理器580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源590还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0117]尽管未示出,计算机设备500还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0118]具体在本发明的一些实施例中,处理器580包括中央处理器581及图形处理器582,计算机设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由中央处理器581执行所述一个或者一个以上程序包含用于进行以下操作的指令:
[0119]确定以待渲染目标物为中心、呈球形或半球形分布的射线点;
[0120]在每个射线点的位置建立光照朝向待渲染目标物的射线光源。
[0121]另外,经配置由图形处理器582执行所述一个或者一个以上程序包含用于进行以下操作的指令:
[0122]接收中央处理器581发送的待渲染目标物周围预置范围内的场景的信息;
[0123]对接收到的场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到;
[0124]对待渲染目标物进行渲染得到渲染深度参数,待渲染目标物由不位于射线光源处的摄像机拍摄得到;
[0125]根据场景深度参数以及渲染深度参数计算待渲染目标物在各射线光源方向的环境光遮蔽贴图;
[0126]对各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
[0127]假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,图形处理器582执行所述一个或者一个以上程序还包含用于进行以下操作的指令:
[0128]对于每一个射线光源,根据待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值;
[0129]对所述环境光遮蔽值进行叠加得到待渲染目标物在该射线光源方向的环境光遮蔽贴图。
[0130]在第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,图形处理器582执行所述一个或者一个以上程序还包含用于进行以下操作的指令:
[0131 ] 根据每个像素点的场景深度参数及渲染深度参数计算该像素点的阴影值;
[0132]将该像素点的阴影值乘以权重系数得到该像素点在该射线光源方向的环境光遮蔽值,其中,权重系数包括该射线光源的光照方向与该像素点的法线方向的点积,以及射线光源的总数的倒数。
[0133]在第三种可能的实施方式作为基础而提供的第四种可能的实施方式中,图形处理器582执行所述一个或者一个以上程序还包含用于进行以下操作的指令:
[0134]当该像素点的渲染深度参数大于场景深度参数时,确定该像素点的阴影值为I ;
[0135]当该像素点的渲染深度参数小于或等于场景深度参数时,确定该像素点的阴影值为O。
[0136]在第一种、或第二种、或第三种、或第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,图形处理器582执行所述一个或者一个以上程序还包含用于进行以下操作的指令:
[0137]对待渲染目标物进行渲染,获取待渲染目标物的顶点坐标;
[0138]将顶点坐标与世界坐标矩阵相乘之后,再与位于该射线光源处的摄像机的视矩阵和投影矩阵相乘,得到渲染深度参数。
[0139]在第一种、或第二种、或第三种、或第四种可能的实施方式作为基础而提供的第六种可能的实施方式中,图形处理器582执行所述一个或者一个以上程序还包含用于进行以下操作的指令:
[0140]对输出图像进行Gamma矫正并输出。
[0141]本实施例中,图形处理器只需要根据场景深度参数以及渲染深度参数就可以计算出待渲染目标物在各射线光源方向的环境光遮蔽贴图,对各射线光源方向的环境光遮蔽贴图进行简单的叠加就可以得到输出图像,避开了现有技术中复杂的计算过程,因为将这些对图像的计算处理过程放在了图形处理器中完成,利用图形处理器对图像数据的强大处理能力,节省了图像的处理时间,提高了图像的处理效率。
[0142]另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,单元之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0143]通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0144]以上对本发明实施例所提供的一种图像处理方法、装置及计算机设备进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在【具体实施方式】及应用范围上均会有改变之处,因此,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种图像处理方法,其特征在于,包括: 图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息; 所述图形处理器对所述场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到; 所述图形处理器对所述待渲染目标物进行渲染得到渲染深度参数,所述待渲染目标物由不位于射线光源处的摄像机拍摄得到; 所述图形处理器根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图; 所述图形处理器对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
2.根据权利要求1所述的图像处理方法,其特征在于,所述图形处理器根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图包括: 对于每一个射线光源,所述图形处理器根据所述待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值; 所述图形处理器对所述环境光遮蔽值进行叠加得到所述待渲染目标物在该射线光源方向的环境光遮蔽贴图。
3.根据权利要求2所述的图像处理方法,其特征在于,所述图形处理器根据所述待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值包括: 所述图形处理器根据每个像素点的场景深度参数及渲染深度参数计算所述像素点的阴影值; 所述图形处理器将所述像素点的阴影值乘以权重系数得到该像素点在该射线光源方向的环境光遮蔽值,所述权重系数包括该射线光源的光照方向与该像素点的法线方向的点积,以及射线光源的总数的倒数。
4.如权利要求3所述的图像处理方法,其特征在于,所述图形处理器根据每个像素点的场景深度参数及渲染深度参数计算所述像素点的阴影值包括: 当所述像素点的渲染深度参数大于所述场景深度参数时,确定所述像素点的阴影值为I ; 当所述像素点的渲染深度参数小于或等于所述场景深度参数时,确定所述像素点的阴影值为O。
5.根据权利要求1所述的图像处理方法,其特征在于,所述图形处理器接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息之前还包括: 所述中央处理器确定以所述待渲染目标物为中心、呈球形或半球形分布的射线点; 所述中央处理器在每个射线点的位置建立光照朝向所述待渲染目标物的射线光源。
6.根据权利要求1至5中任一项所述的图像处理方法,其特征在于,所述图形处理器对所述待渲染目标物进行渲染得到渲染深度参数包括: 所述图形处理器对所述待渲染目标物进行渲染,获取所述待渲染目标物的顶点坐标; 所述图形处理器将所述顶点坐标与世界坐标矩阵相乘之后,再与位于所述射线光源处的摄像机的视矩阵和投影矩阵相乘,得到所述渲染深度参数。
7.根据权利要求1至5中任一项所述的图像处理方法,其特征在于,所述图形处理器对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像之后还包括: 对所述输出图像进行Gamma矫正并输出。
8.根据权利要求1至5中任一项所述的图像处理方法,其特征在于,所述射线光源为.900 个。
9.一种图像处理装置,其特征在于,包括: 接收单元,用于接收中央处理器发送的待渲染目标物周围预置范围内的场景的信息;渲染处理单元,用于对所述场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到,以及对所述待渲染目标物进行渲染得到渲染深度参数,所述待渲染目标物由不位于射线光源处的摄像机拍摄得到; 贴图生成单元,用于根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图; 输出处理单元,用于对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
10.根据权利要求9所述的图像处理装置,其特征在于,所述贴图生成单元包括: 计算单元,用于对于每一个射线光源,根据所述待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值; 贴图生成子单元,用于对所述环境光遮蔽值进行叠加得到所述待渲染目标物在该射线光源方向的环境光遮蔽贴图。
11.根据权利要求10所述的图像处理装置,其特征在于,所述计算单元具体用于: 根据每个像素点的场景深度参数及渲染深度参数计算所述像素点的阴影值; 将所述像素点的阴影值乘以权重系数得到该像素点在该射线光源方向的环境光遮蔽值,所述权重系数包括该射线光源的光照方向与该像素点的法线方向的点积,以及射线光源的总数的倒数。
12.根据权利要求11所述的图像处理装置,其特征在于,所述计算单元根据每个像素点的场景深度参数及渲染深度参数计算所述像素点的阴影值包括: 当所述像素点的渲染深度参数大于所述场景深度参数时,所述计算单元确定所述像素点的阴影值为I ; 当所述像素点的渲染深度参数小于或等于所述场景深度参数时,所述计算单元确定所述像素点的阴影值为O。
13.根据权利要求9至12任一项所述的图像处理装置,其特征在于,所述渲染处理单元对所述待渲染目标物进行渲染得到渲染深度参数包括: 所述渲染处理单元对所述待渲染目标物进行渲染,获取所述待渲染目标物的顶点坐标,将所述顶点坐标与世界坐标矩阵相乘之后,再与位于所述射线光源处的摄像机的视矩阵和投影矩阵相乘,得到所述渲染深度参数。
14.根据权利要求9至12任一项所述的图像处理装置,其特征在于,还包括: 矫正单兀,用于对所述输出图像进行Gamma矫正并输出。
15.根据权利要求9至12任一项所述的图像处理装置,其特征在于,所述射线光源为.900 个。
16.一种计算机设备,其特征在于,所述计算机设备包括中央处理器和图形处理器,其中: 所述中央处理器用于,确定以待渲染目标物为中心、呈球形或半球形分布的射线点,在每个射线点的位置建立光照朝向所述待渲染目标物的射线光源; 所述图形处理器用于,接收所述中央处理器发送的待渲染目标物周围预置范围内的场景的信息;对所述场景进行渲染得到场景深度参数,所述场景由位于射线光源处的摄像机拍摄得到;对所述待渲染目标物进行渲染得到渲染深度参数,所述待渲染目标物由不位于射线光源处的摄像机拍摄得到;根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图;对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像。
17.根据权利要求16所述的计算机设备,其特征在于,所述图形处理器根据所述场景深度参数以及渲染深度参数计算所述待渲染目标物在各射线光源方向的环境光遮蔽贴图包括: 对于每一个射线光源,所述图形处理器根据所述待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值; 所述图形处理器对所述环境光遮蔽值进行叠加得到所述待渲染目标物在该射线光源方向的环境光遮蔽贴图。
18.根据权利要求17所述的计算机设备,其特征在于,所述图形处理器根据所述待渲染目标物的每个像素点的场景深度参数及渲染深度参数计算每个像素点在该射线光源方向的环境光遮蔽值包括: 所述图形处理器根据每个像素点的场景深度参数及渲染深度参数计算所述像素点的阴影值; 所述图形处理器将所述像素点的阴影值乘以权重系数得到该像素点在该射线光源方向的环境光遮蔽值,所述权重系数包括该射线光源的光照方向与该像素点的法线方向的点积,以及射线光源的总数的倒数。
19.根据权利要求18所述的计算机设备,其特征在于,所述图形处理器根据每个像素点的场景深度参数及渲染深度参数计算所述像素点的阴影值包括: 当所述像素点的渲染深度参数大于所述场景深度参数时,所述图形处理器确定所述像素点的阴影值为I ; 当所述像素点的渲染深度参数小于或等于所述场景深度参数时,所述图形处理器确定所述像素点的阴影值为O。
20.根据权利要求16至19任一项所述的计算机设备,其特征在于,所述图形处理器对所述待渲染目标物进行渲染得到渲染深度参数包括: 所述图形处理器对所述待渲染目标物进行渲染,获取所述待渲染目标物的顶点坐标; 所述图形处理器将所述顶点坐标与世界坐标矩阵相乘之后,再与位于所述射线光源处的摄像机的视矩阵和投影矩阵相乘,得到所述渲染深度参数。
21.根据权利要求16至19任一项所述的计算机设备,其特征在于,所述图形处理器对所述各射线光源方向的环境光遮蔽贴图进行叠加得到输出图像之后还包括: 所述图形处理器对所述输出图像进行Gamma矫正并输出。
22.根据权利要求16至19任一项所述的计算机设备,其特征在于,所述射线光源为.900 个。
【文档编号】G06T15/10GK104134230SQ201410030054
【公开日】2014年11月5日 申请日期:2014年1月22日 优先权日:2014年1月22日
【发明者】韩宇飞, 简小征, 张晖 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1