CN111612882A - 图像处理方法、装置、计算机存储介质及电子设备 - Google Patents
图像处理方法、装置、计算机存储介质及电子设备 Download PDFInfo
- Publication number
- CN111612882A CN111612882A CN202010524473.7A CN202010524473A CN111612882A CN 111612882 A CN111612882 A CN 111612882A CN 202010524473 A CN202010524473 A CN 202010524473A CN 111612882 A CN111612882 A CN 111612882A
- Authority
- CN
- China
- Prior art keywords
- color
- lookup table
- texel
- information
- average
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 49
- 238000003672 processing method Methods 0.000 title claims abstract description 39
- 238000000034 method Methods 0.000 claims abstract description 69
- 230000009467 reduction Effects 0.000 claims abstract description 36
- 238000013507 mapping Methods 0.000 claims description 43
- 239000013598 vector Substances 0.000 claims description 43
- 238000005070 sampling Methods 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 29
- 238000005286 illumination Methods 0.000 description 28
- 230000008569 process Effects 0.000 description 19
- 238000009877 rendering Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 239000003086 colorant Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000003708 edge detection Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000000873 masking effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004575 stone Substances 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
-
- 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/80—Shading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
- G06T5/94—Dynamic range modification of images or parts thereof based on local image properties, e.g. for local contrast enhancement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/12—Shadow map, environment map
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
Abstract
本公开提供了一种图像处理方法、装置、计算机存储介质及电子设备,涉及图像处理领域。该方法包括:获取漫反射贴图,并获取所述漫反射贴图中位于阴影区域的阴影纹素;根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差;根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,并根据所述还原颜色信息对所述阴影纹素的颜色信息进行还原。本公开能够有效去除漫反射贴图中的阴影,使得模型能够在任意光照条件的场景中使用。
Description
技术领域
本公开涉及图像处理技术领域,具体而言,涉及一种图像处理方法、图像处理装置、计算机可读存储介质及电子设备。
背景技术
在美术设计时,通常会采用基于摄影测量法的三维模型建模技术进行建模,基于摄影测量法的三维模型建模技术是通过多张照片来进行三维建模的,并使用多张照片的像素颜色信息来还原物件漫反射颜色信息,因此生成的模型的颜色贴图中必然带有原始照片中的阴影。
为了在任意光照条件的场景中使用生成的模型,必须在尽可能多的保留原始颜色信息的前提下,把漫反射贴图中的阴影去除。漫反射贴图中的阴影包括直射光作用产生的阴影和环境光作用产生的阴影,目前通常采用诸如Agisoft Texture Delighting等工具去除直射光光照产生的阴影,采用诸如Unity De-Lightingtool等工具去除非直射光光照产生的阴影,但是该些去光照阴影方案存在贴图细节丢失、色相改变、色彩溢出和色块等问题,导致根据去除阴影后的漫反射贴图所生成的模型效果不逼真、无法适用于任意光照条件的场景中,用户体验差。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的实施例提供了一种图像处理方法、图像处理装置、计算机可读存储介质和电子设备,进而至少在一定程度上可以提高漫反射贴图中阴影的去除效率和去除质量,提高根据去除阴影后的漫反射贴图所生成模型的图像质量,进一步提升用户体验。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的一个方面,提供了一种图像处理方法,包括:获取漫反射贴图,并获取所述漫反射贴图中位于阴影区域的阴影纹素;根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差;根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,并根据所述还原颜色信息对所述阴影纹素的颜色信息进行还原。
根据本公开实施例的一个方面,提供了一种图像处理装置,包括:获取模块,用于获取漫反射贴图,并获取所述漫反射贴图中位于阴影区域的阴影纹素;计算模块,用于根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差;还原模块,用于根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,并根据所述还原颜色信息对所述阴影纹素的颜色信息进行还原。
在本公开的一些实施例中,基于前述方案,所述第一坐标获取单元配置为:将颜色信息中透明值为1的纹素作为所述目标纹素。
根据本公开实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例所述的图像处理方法。
根据本公开实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,所述存储装置用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上述实施例中所述的图像处理方法。
在本公开的一些实施例所提供的技术方案中,首先获取漫反射贴图,并获取漫反射贴图中位于阴影区域的阴影纹素;接着根据阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与阴影纹素对应的平均亮度差;最后根据平均亮度差和阴影纹素的颜色信息确定还原颜色信息,并根据还原颜色信息对阴影纹素的颜色信息进行还原。本公开的技术方案一方面提高了颜色还原的效率和质量;另一方面不影响贴图中非阴影区域纹素的颜色,避免了贴图细节丢失、色相改变、色彩溢出和色块等问题,保证了生成的模型可以适用于任意光照条件的场景中,进一步提高了画面效果和用户体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本公开实施例的技术方案的示例性***架构的示意图;
图2A-2B示意性示出了相关技术中的对模型纹理进行处理的界面示意图;
图3示意性示出了根据本公开的一个实施例的图像处理方法的流程示意图;
图4示意性示出了根据本公开的一个实施例的确定阴影纹素的流程示意图;
图5示意性示出了根据本公开的一个实施例的获取亮面平均色查找表和暗面平均色查找表的流程示意图;
图6示意性示出了根据本公开的一个实施例的获取亮面颜色查找表和暗面颜色查找表的流程示意图;
图7示意性示出了根据本公开的一个实施例的构建亮面平均色查找表和暗面平均色查找表的流程示意图;
图8示意性示出了根据本公开的一个实施例的形成平均色查找表的流程示意图;
图9示意性示出了根据本公开的一个实施例的计算亮部平均色和暗部平均色的流程示意图;
图10示意性示出了根据本公开的一个实施例的根据本公开的图像处理方法去除模型中的阴影的界面示意图;
图11示意性示出了根据本公开的一个实施例的去除非直射光光照产生的阴影的流程示意图;
图12A-12C示意性示出了根据本公开的一个实施例的模型中的非直射光阴影去除前和去除后的界面示意图;
图13示意性示出了根据本公开的一个实施例的图像处理装置的框图;
图14示意性示出了根据本公开的一个实施例的图像处理装置的框图;
图15示出了适于用来实现本公开实施例的电子设备的计算机***的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1示出了可以应用本公开实施例的技术方案的示例性***架构的示意图。
如图1所示,***架构100包括终端设备101、网络102和服务器103,其中,终端设备101可以是任意的具有显示屏幕的电子设备以及具有拍摄单元的电子设备,诸如平板电脑、笔记本电脑、台式计算机、智能手机、照相机、摄像机等电子设备;网络102用以在终端设备101和服务器103之间提供通信链路的介质,网络102可以包括各种连接类型,例如有线通信链路、无线通信链路等等;服务器103可以是独立的服务器,也可以是由多个服务器组成的服务器集群。
应该理解,图1中的终端设备101、网络102、服务器103的数目仅仅是示意性的。根据实际需要,可以具有任意数目的终端设备101、网络102、服务器103。
在本公开的一个实施例中,用户通过终端设备101的拍摄单元对实际空间的物体进行多角度拍摄,然后将拍摄得到的多张照片传送至搭载有模型渲染引擎的终端设备中进行三维建模。在三维建模的过程中,通过多张照片的像素颜色信息来还原物件漫反射颜色信息,由于直射光和/或非直射光的作用,在照片中通常会存在阴影,而在建模时会根据实际需要调整光照类型和角度,如果直接使用照片中的颜色信息,会使最终生成的模型中在不该有阴影的位置存在阴影,导致模型失真并且不能在任意光照条件的场景中使用。在本公开的实施例中,用户将照片上传至终端设备101后,终端设备101可以通过渲染引擎对与模型对应的刚模进行处理,在转写纹理贴图后将纹理贴图导出,该纹理贴图包括漫反射贴图、位置贴图、法线贴图、阴影贴图和环境光遮蔽贴图。在获取纹理贴图后,可以将纹理贴图通过网络102发送至服务器103,以使服务器103对漫反射贴图中阴影纹素的颜色进行还原。服务器103在接收到纹理贴图后,可以根据漫反射贴图中的阴影纹素所对应的颜色信息和平均亮度差确定还原颜色信息,通过将漫反射贴图中阴影纹素的颜色信息更新为还原颜色信息即可去除图像中的阴影。进一步地,终端设备101还可以通过网络102将照片发送至服务器103,通过服务器103中搭载的渲染引擎进行三维建模,并获取建模过程中形成的纹理贴图。
在本公开的一个实施例中,可以通过不同的方法获取与阴影纹素对应的平均亮度差,并根据平均亮度差和阴影温度的颜色信息对阴影纹素进行还原。
一种方法为通过采集漫反射贴图中各个纹素的亮面颜色信息和暗面颜色信息,根据亮面颜色信息和暗面颜色信息分别形成亮面颜色查找表和暗面颜色查找表,进一步地,可以根据亮面颜色查找表或暗面颜色查找表中各像素的透明值将亮面颜色查找表或暗面颜色查找表中的亮面颜色信息转换为亮面平均色或暗面平均色,形成亮面平均色查找表和暗面平均色查找表,同时可以对亮面颜色查找表和暗面颜色查找表分别进行多级下采样以获取亮面平均色贴图集和暗面平均色贴图集。然后根据漫反射贴图中每个阴影纹素的空间坐标信息在亮面平均色查找表和暗面平均色查找表中查找与该空间坐标信息对应且不为零的亮面平均色信息和暗面平均色信息,对于未查询到对应平均色信息的情况,可以根据空间坐标信息在亮面平均色贴图集和/或暗面平均色贴图集中进行查询,对于每个阴影纹素必然存在与之对应的至少一个亮面平均色信息和暗面平均色信息。最后根据亮面平均色信息、暗面平均色信息和阴影纹素的颜色信息即可确定还原颜色信息,并对阴影纹素的颜色进行还原。
另一种获取平均亮度差的方法为通过边缘提取算法提取阴影贴图中的边缘,并以边缘点为中心点在漫反射贴图中确定亮部区域和暗部区域;然后采集亮部区域的亮部平均色和暗部区域的暗部平均色,并根据亮部平均色和暗部平均色确定平均亮度差,该平均亮度差可被存储于四维查找表中形成平均色查找表;进一步地,可以对平均色查找表进行多次下采样获取平均色贴图集;最后可以根据漫反射贴图中阴影纹素的空间位置坐标和暗部亮度信息在平均色查找表或平均色贴图集中查询与阴影纹素对应的平均亮度差,并根据平均亮度差和阴影纹素的颜色信息确定还原颜色信息,进而根据还原颜色信息对阴影纹素的颜色进行还原。
本公开实施例的技术方案一方面提高了颜色还原的效率和质量;另一方面不影响贴图中非阴影区域纹素的颜色,避免了贴图细节丢失、色相改变、色彩溢出和色块等问题,保证了根据贴图生成的模型可以适用于任意光照条件的场景中,进一步提高了画面效果和用户体验。
需要说明的是,本公开实施例所提供的图像处理方法可由服务器执行,相应地,图像处理装置可设置于服务器中。但是,在本公开的其它实施例中,也可以由终端设备执行本公开实施例所提供的图像处理方法。
在本领域的相关技术中,为了去除直射光光照,通常采用工具AgisoftTextureDelighting进行处理,但是通常会存在贴图细节丢失、色相改变、色彩溢出和色块等问题。图2A-2B示出了对模型纹理进行处理的界面示意图,图2A示出了未经去直射光光照的原始模型纹理,可以看出在物体的背光面处存在阴影(如图中的椭圆标识所示);图2B示出了使用AgisoftTexture Delighting工具去除直射光光照后的模型纹理,虽然经过该工具处理后能够减弱阴影的程度,但是还是存在残留(如图中的椭圆标识所示),阴影部分的纹理有一块块的色块,同时锥形柱的色相和色彩也较原始照片中的色相和色彩发生了改变。
鉴于相关技术中存在的问题,本公开实施例提供了一种图像处理方法,该图像处理方法能够对漫反射贴图中的阴影进行去除,保证模型可在任意的光照条件的场景中使用。
图3示意性示出了根据本公开的一个实施例的图像处理方法的流程图,该方法可由服务器执行,该服务器为图1中所示的服务器103。参照图3所示,该图像处理方法至少包括步骤S310至步骤S330,详细介绍如下:
在步骤S310中,获取漫反射贴图,并获取所述漫反射贴图中位于阴影区域的阴影纹素。
在本公开的一个实施例中,在获取关于同一场景不同角度的多张照片后,可以基于摄影测量法3D模型建模技术根据多张照片进行三维建模。在建模的过程中,首先可以根据照片获取对应的带有顶点色的三维模型信息,该带有顶点色的三维模型信息为包含颜色信息的点云信息,在获取包含颜色信息的点云信息后,可以采用图形软件进行纹理贴图映射以生成纹理贴图,具体地,可以调用任意可编程管线的三维图形接口,以标准光栅化的方式将模型渲染在渲染目标上,并通过顶点着色器将模型的顶点坐标设置为纹理贴图映射的UV坐标,实现纹理贴图的转写,其中UV坐标是UV纹理贴图坐标的简称,指所有的图像文件都是二维的一个平面,水平方向是U,垂直方向是V,通过这个平面的、二维的UV坐标系可以定位图像上的任意一个像素。纹理贴图为用于表达模型表面漫反射、法线、物件空间位置等信息的贴图,各个贴图以模型的UV坐标方式映射存储,在本公开的实施例中,纹理贴图包括漫反射贴图、位置贴图、法线贴图、阴影贴图,进一步地,还可以包括环境光遮蔽贴图和环境法线贴图。在转写贴图时,以漫反射贴图、位置贴图和法线贴图为例,可以在顶点着色器中计算颜色信息、物件空间位置、法线信息后,由GPU在光栅化时进行线性插值,渲染到对应的漫反射贴图、位置贴图、法线贴图的渲染目标上,并通过图形软件将漫反射贴图、位置贴图和法线贴图导出待用。
进一步地,对于直射光,还可以在图形软件中指定直射光方向,以光源为视点,通过正交投影渲染模型得到深度信息位图,其中在图形软件中指定直射光方向可以通过两种方式实现,第一种方式可以通过在模型上指定原点和投影点,图形软件根据原点和投影点的信息可以计算得到直射光的方向;第二种方式可以是通过仪器测量拍摄经纬度和时间,以使图形软件根据经纬度和时间能够计算得到直射光方向。在获取深度信息位图后,可以在像素着色器中获取像素所在物件的空间坐标,通过对空间坐标进行线性变换处理以变换到深度信息位图对应的坐标,获取深度信息位图中的信息并与预设深度值进行比较即可得到阴影贴图,该阴影贴图用于表达模型表面是否能被特定光源直接照射到,阴影贴图中可以以不同的数值对纹素是否为阴影纹素和非阴影纹素进行表示,例如阴影贴图可以是由0和1组成的贴图,其中0代表非阴影纹素,1代表阴影纹素。与漫反射贴图、位置贴图、法线贴图类似,阴影贴图也以UV坐标转写存储。
在本公开的一个实施例中,在基于摄影测量法三维模型建模技术进行三维建模时,无论是太阳、照明灯等具有固定的光发射方向的光源产生的直射光还是非固定光源发射的非直射光的作用,拍摄的照片中都会存在阴影,其中以直射光产生的阴影更为普遍。为了模型能够在任意光照条件的场景中都能使用,因此有必要对各类光产生的阴影进行去除。在本公开的实施例中,通过对漫反射贴图中位于阴影区域的阴影纹素的颜色进行还原实现阴影的去除。接下来对如何还原直射光光照产生的阴影纹素的颜色进行详细说明。
在本公开的一个实施例中,在获取漫反射贴图的同时,可以获取到与漫反射贴图对应的位置贴图、法线贴图和阴影贴图,首先需要确定漫反射贴图中位于阴影区域的阴影纹素,然后才能有针对性的进行颜色还原,去除图像中的阴影。
图4示出了确定阴影纹素的流程示意图,如图4所示,在步骤S401中,获取阴影贴图中对应阴影区域的纹素的第一UV坐标;在步骤S402中,将第一UV坐标与漫反射贴图中纹素的UV坐标进行匹配,以获取漫反射贴图中与第一UV坐标对应的纹素作为阴影纹素。其中,在步骤S401中,以上述实施例中以0/1表示阴影值的阴影贴图为例,其中阴影值为1的所有纹素即为位于阴影区域的纹素,从阴影贴图中获取这些纹素的UV坐标即为第一UV坐标。由于漫反射贴图和阴影贴图是通过UV坐标进行映射存储的,因此漫反射贴图和阴影贴图中与同一UV坐标对应的纹素对应模型中的同一面,进而在获取第一UV坐标后,可以根据该第一UV坐标查找到漫反射贴图中对应第一UV坐标的纹素,该纹素即为漫反射贴图中位于阴影区域的阴影纹素。
在步骤S320中,根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差。
在本公开的一个实施例中,在确定漫反射贴图中的阴影纹素后,可以获取各个阴影纹素的空间坐标信息,并根据阴影纹素的空间坐标信息在平均色查找表中查找对应的平均色信息,并根据查询结果确定与阴影纹素对应的平均亮度差,进而根据平均亮度差对阴影纹素的颜色进行还原。
在本公开的一个实施例中,可以通过两种不同的方法去除直射光光照产生的阴影,对于各个去除方法,所涉及的平均色查找表的具体内容也不同。
对于第一种去除直射光光照产生的阴影的方法,其中所涉及的平均色查找表包括亮面平均色查找表和暗面平均色查找表,接下来对如何获取亮面平均色查找表和暗面平均色查找表进行详细说明。
在本公开的一个实施例中,在步骤S310之前,可以设置两个查找表:亮面查找表和暗面查找表,其中亮面查找表用于存储漫反射贴图中非阴影纹素的空间坐标信息和颜色信息,暗面查找表用于存储漫反射贴图中阴影纹素的空间坐标信息和颜色信息,值得说明的是,查找表(Look up table,简称LUT)是可以使用地址信息进行查询的一种数据结构,通过输入一个地址进行查表,可以找到地址对应的内容。
图5示出了获取亮面平均色查找表和暗面平均色查找表的流程示意图,如图5所示,该流程至少包括步骤S501-S502,具体的:
在步骤S501中,遍历漫反射贴图中的各个纹素,根据阴影贴图中与各纹素对应的阴影信息将各纹素的颜色信息累加至亮面查找表或暗面查找表中,以形成亮面颜色查找表和暗面颜色查找表。
在本公开的一个实施例中,为了将漫反射贴图中所有纹素的颜色信息分别存储在亮面查找表或暗面查找表中,可以对漫反射贴图中的各个纹素进行遍历并将其颜色信息累加至相应的查找表中与该纹素的空间坐标信息对应的像素位上。在本公开的实施例中,亮面查找表和暗面查找表均为五维查找表,其中五个维度包括漫反射贴图中的纹素在空间直角坐标系中所对应的三个坐标维度,包括X轴坐标、Y轴坐标和Z轴坐标,同时还包括各纹素对应的法线的经度和维度,其中纹素在空间直角坐标系中的位置信息和法线信息可以在顶点着色器中根据模型各个三角形面的顶点坐标进行计算确定,并在转写贴图的时候转写至位置贴图和法线贴图中。
在本公开的一个实施例中,在将漫反射贴图中各纹素的颜色信息累加至亮面查找表或暗面查找表时,首先可以根据各纹素的UV坐标获取其空间坐标信息,该空间坐标信息与查找表的维度相同,也包括位置坐标(X,Y,Z)和法线坐标(经度,维度);同时可以根据各纹素的UV坐标获取各纹素的阴影信息;然后根据纹素的阴影信息确定存放该纹素颜色信息的查找表是亮面查找表还是暗面查找表,并根据纹素的空间坐标信息在确定好的查找表中确定存储颜色信息的像素位置;最后将纹素的颜色信息累加至对应的像素位置上即可。由于查找表中存放的颜色信息为包含R、G、B、A四个通道的颜色向量,当α通道的透明值为0时,说明该纹素并未映射在模型上,当α通道的透明值为1时,说明该纹素映射在模型上,同时考虑到采集的模型只能是不透明的物件,因此所采集的纹素的α通道值应为1,也就是说,在将纹素的颜色信息累加至查找表时,只需将透明值为1的纹素的颜色信息累加即可,这样可以节省计算量,提高数据处理效率。
图6示出了获取亮面颜色查找表和暗面颜色查找表的流程示意图,如图6所示,在步骤S601中,根据各纹素的颜色信息中的透明值确定目标纹素,并获取目标纹素的第二UV坐标;在步骤S602中,根据第二UV坐标在阴影贴图中确定与目标纹素对应的目标阴影信息,并根据目标阴影信息在亮面查找表和暗面查找表中确定目标查找表;在步骤S603中,根据第二UV坐标分别在位置贴图和法线贴图中确定目标位置信息和目标法线信息;在步骤S604中,根据目标位置信息和目标法线信息在目标查找表中确定目标像素,并将目标纹素的颜色信息累加至目标像素上。
其中,在步骤S601中,该目标纹素即为颜色信息中透明值为1的纹素;在步骤S602中,根据第二UV坐标可以在阴影贴图中进行查询获取目标纹素的目标阴影信息,在确定目标阴影信息的类型后,可以根据目标阴影信息确定用于存储该纹素的颜色信息的目标查找表,即当目标阴影信息为目标纹素是阴影纹素时,将暗面查找表作为目标查找表;当目标阴影信息为目标纹素是非阴影纹素时,将亮面查找表作为目标查找表;在步骤S603中,与上述实施例类似,可以根据目标纹素的第二UV坐标在位置贴图和法线贴图中确定与其对应的目标位置信息和目标法线信息,该目标位置信息即为目标纹素在空间直角坐标系中的位置坐标,目标法线信息即为目标纹素对应的法线的经纬度;在步骤S604中,可以根据目标位置信息和目标法线信息在亮面查找表或暗面查找表中确定与其对应的像素,进而可以将目标纹素的颜色信息累加至该像素上。在累加颜色信息时,仍将颜色信息以(R,G,B,A)向量的形式进行累加。值得说明的是,亮面查找表和暗面查找表在初始时,各个像素中的颜色值均为零。
在步骤S502中,根据亮面颜色查找表中像素的透明值对亮面颜色查找表中的颜色信息进行转换,根据暗面颜色查找表中像素的透明值对暗面颜色查找表中的颜色信息进行转换,以获取亮面平均色查找表和暗面平均色查找表。
在本公开的一个实施例中,在将漫反射贴图中各个纹素的颜色信息累加至亮面查找表或暗面查找表中形成亮面颜色查找表和暗面颜色查找表之后,可以分别根据亮面颜色查找表中颜色信息的透明值和暗面颜色查找表中颜色信息的透明值对对应的查找表的颜色信息进行转换,形成亮面平均色查找表和暗面平均色查找表。
图7示出了构建亮面平均色查找表和暗面平均色查找表的流程示意图,如图7所示,在步骤S701中,获取亮面颜色查找表中所有像素的透明值的第一和值,同时获取暗面颜色查找表中所有像素的透明值的第二和值;在步骤S702中,将亮面颜色查找表中各个像素的颜色信息与第一和值相除,以获取亮面平均色查找表;在步骤S703中,将暗面颜色查找表中各个像素的颜色信息与第二和值相除,以获取暗面平均色查找表。
在本公开的一个实施例中,由于需要获取与阴影纹素对应的亮面平均色和暗面平均色以计算平均亮度差,而对于同一纹素,不一定能同时在亮面平均色查找表和暗面平均色查找表中找到对应的亮面平均色和暗面平均色,因此在获取亮面颜色查找表和暗面颜色查找表之后,可以对亮面颜色查找表和暗面颜色查找表分别进行多级下采样以获取亮面平均色贴图集和暗面平均色贴图集,其中亮面平均色贴图集包含多个大小不同的亮面平均色贴图,暗面平均色贴图集包括多个大小不同的暗面平均色贴图。举例而言,纹素A为阴影纹素,纹素B为非阴影纹素,那么纹素A的颜色信息将被存储于暗面颜色查找表中,纹素B的颜色信息将被存储于亮面颜色查找表中,也就是说,在亮面颜色查找表中与纹素A的空间坐标信息对应的像素中不存在颜色信息,在暗面颜色查找表中与纹素B的空间坐标信息对应的像素中不存在颜色信息,但是为了获取与纹素A对应的亮面平均色或者获取与纹素B对应的暗面平均色,就需要对亮面颜色查找表和暗面颜色查找表进行下采样,下采样的时候会对更大区域的颜色信息进行处理,并且下采样实质上是对颜色信息进行平均处理的过程,因此通过对亮面颜色查找表进行下采样就会将与阴影纹素A相邻的非阴影纹素的颜色信息统计进来,进而得到与阴影纹素A的空间坐标信息对应的亮面平均色,同时通过对暗面颜色查找表进行下采样可以将与非阴影纹素B相邻的阴影纹素的颜色信息统计进来,进而得到与非阴影纹素B的空间坐标信息对应的暗面平均色。
在本公开的一个实施例中,下采样的过程还可以理解为卷积过程,在本公开实施例中,可以以边长为2个像素的五维卷积核对第N-1级的平均色贴图进行卷积处理以获取第N级的平均色贴图,直至得到最小平均色贴图,其中N为正整数,并且当N=1时,第0级的平均色贴图为亮面颜色查找表或暗面颜色查找表。在本公开的实施例中,在对亮面颜色查找表或暗面颜色查找表进行多级下采样时,可以直接将卷积核覆盖范围内各个像素的颜色信息相加,作为新的颜色信息。
在本公开的一个实施例中,在获取亮面平均色查找表、暗面平均色查找表、亮面平均色贴图和暗面平均色贴图后,可以根据纹素的空间坐标信息从中获取与纹素对应的亮面平均色和暗面平均色。由于本公开的目的是要去除漫反射贴图中的阴影,因此只需对漫反射贴图中的阴影纹素进行颜色还原即可。在查找与阴影纹素对应的亮面平均色和暗面平均色时,首先可以获取阴影纹素的空间坐标信息;然后根据阴影纹素的空间坐标信息在暗面平均色查找表中查找与阴影纹素的空间坐标信息对应且值不为零的暗面平均色信息;然后可以根据阴影纹素的空间坐标信息在亮面平均色贴图集中从低级亮面平均色贴图到高级亮面平均色贴图进行逐级查询,以获取与该空间坐标信息对应且值不为零的亮面平均色信息,进而根据亮面平均色信息和暗面平均色信息确定平均亮度差。
在本公开的一个实施例中,在根据阴影纹素的空间坐标信息在暗面平均色查找表中确定与其对应的暗面平均色信息时,可以对暗面平均色信息进行多维线性插值处理,以降低图像颜色梯度,使颜色更平滑。在对暗面平均色查找表进行多维线性插值处理时,具体可以以暗面平均色查找表中与阴影纹素的空间坐标信息所对应的像素为原采样点,并在每个维度上进行采样,以获取包括原采样点在内的多个采样点,例如暗面平均色查找表为五维查找表,则可以获取32(25)个采样点;然后根据多个采样点在五个维度上依次进行插值,计算插值点的平均色偏移量,并将平均色偏移量的超立方体的体积作为权重,其中超立方体的体积总量为1;最后根据超立方体的体积对平均色偏移量加权求和即可获取经多维线性插值处理所得到的暗面平均色信息。
在本公开的一个实施例中,在根据亮面平均色信息和暗面平均色信息确定平均亮度差后,由于亮面平均色信息和暗面平均色信息为包含(R,G,B,A)四通道颜色值的颜色信息,而在颜色还原时只需对R、G、B三通道的颜色值进行还原,因此可以先从亮面平均色信息中获取亮面RGB向量,同时从暗面平均色信息中获取暗面RGB向量,然后将亮面RGB向量与暗面RGB向量相除,即可得到平均亮度差。
对于第二种去除直射光光照产生的阴影的方法,其中所涉及的平均色查找表为根据平均亮度差形成的查找表,接下来对如何获取平均色查找表进行详细说明。
在本公开的一个实施例中,在步骤S310之前,可以对阴影贴图和漫反射贴图进行处理以获取平均色查找表。图8示出了形成平均色查找表的流程示意图,如图8所示,该流程至少包括步骤S801-S803,具体地:
在步骤S801中,提取阴影贴图中的边缘纹素,并根据边缘纹素在漫反射贴图中确定中心纹素。
在本公开的一个实施例中,可以基于边缘提取算法对阴影贴图进行边缘提取,具体地,在提取阴影贴图的边缘时,可以通过水平方向模板和垂直方向模板对阴影贴图进行邻域卷积,以获取边缘纹素。其中,水平方向模板用于基于阴影贴图中的纹素检测水平边缘,垂直方向模板用于基于阴影贴图中的纹素检测垂直边缘,在获取对应同一纹素的水平边缘检测结果和垂直边缘检测结果后,可以通过取二者中的最大值或者将二者相加以获取检测值,最后将该检测值与预设阈值进行比较,若检测值大于或等于预设阈值则说明纹素为边缘纹素。
在本公开的一个实施例中,在获取阴影贴图中的边缘纹素后,可以获取边缘纹素的UV坐标作为第三UV坐标,由于漫反射贴图和阴影贴图都是通过UV坐标进行映射存储的,因此根据第三UV坐标可以在漫反射贴图中确定与第三UV坐标对应的纹素,并将该纹素作为中心纹素以进行后续的平均色的采集。
在步骤S802中,根据所述中心纹素和预设范围确定目标贴图区域,并根据阴影贴图确定目标贴图区域中的亮部区域和暗部区域。
在本公开的一个实施例中,在确定中心纹素后,可以根据预设范围在漫反射贴图中确定以中心纹素为中心的目标贴图区域。该预设范围可以是根据实际需要设置的,例如可以设置为64×64、80×80等等,本公开实施例对此不作具体限定。进一步地,可以根据阴影贴图中的阴影纹素和非阴影纹素的位置信息在目标贴图区域中确定亮部区域和暗部区域,具体地,首先可以获取目标贴图区域中各个纹素的第四UV坐标,然后根据各纹素的第四UV坐标和阴影贴图确定目标贴图区域中各个纹素的阴影信息,若与该第四UV坐标对应的纹素的阴影信息为纹素为非阴影纹素时,则目标贴图区域中该第四UV坐标对应的纹素为亮部区域中的纹素,若与该UV坐标对应的纹素的阴影信息为纹素为阴影纹素时,则目标贴图区域中该UV坐标对应的纹素为暗部区域中的纹素,也就是说,将阴影信息为非阴影纹素且空间坐标信息相邻的纹素所形成的区域作为亮部区域,并将阴影信息为阴影纹素且空间坐标信息相邻的纹素所形成的区域作为暗部区域。
在本公开的一个实施例中,在确定目标贴图区域中的亮部区域和暗部区域时,由于贴图中纹素的映射不一定是连续的,可能会有在贴图上临近,但是映射的表面离的非常远的情况,因此在本公开的实施例中还可以根据目标贴图区域中各纹素的位置信息和法线信息判断位置映射和法线是否连续,并对非连续的纹素进行过滤。这样可以提高亮部区域和暗部区域中纹素的连续性,提高计算的准确度。
在步骤S803中,分别计算与亮部区域对应的亮部平均色和与暗部区域对应的暗部平均色,根据亮部平均色和暗部平均色确定平均亮度差,并将平均亮度差累加至平均色查找表中。
在本公开的一个实施例中,在获取目标贴图区域中的亮部区域和暗部区域后,可以根据亮部区域中各纹素的颜色信息确定亮部平均色,同时根据暗部区域中各纹素的颜色信息确定暗部平均色,图9示出了计算亮部平均色和暗部平均色的流程示意图,如图9所示:在步骤S901中,将亮部区域中所有纹素的颜色信息相加以获取亮部颜色信息,同时将亮部区域中所有纹素的颜色信息中的透明值相加以获取第三和值;在步骤S902中,将暗部区域中所有纹素的颜色信息相加以获取暗部颜色信息,同时将暗部区域中所有纹素的颜色信息中的透明值相加以获取第四和值;在步骤S903中,将亮部颜色信息与第三和值相除以获取亮部平均色,并将暗部颜色信息与第四和值相除以获取暗部平均色。
在本公开的一个实施例中,获取亮部平均色和暗部平均色之后,获取亮部平均色中的亮部RGB向量和暗部平均色中的暗部RGB向量,然后将亮部RGB向量与暗部RGB向量相除,即可获取平均亮度差。在获取平均亮度差之后,可以将各个中心纹素对应的平均亮度差累加至平均色查找表中,其中平均色查找表为一个四维查找表,其中的四个维度分别为漫反射贴图中各中心纹素所对应物件的空间位置坐标(X,Y,Z)和中心纹素对应的暗部平均色的颜色均值,而在将中心纹素对应的平均亮度差累加至平均色查找表时,则根据中心纹素所对应物件的空间位置坐标和其对应的暗部平均色的颜色均值在平均色查找表中确定对应的像素,然后将该中心纹素对应的平均亮度差累加至该像素上即可。其中,暗部平均色的颜色均值为暗部平均色中R、G、B三通道颜色值的平均值。
在本公开的一个实施例中,该平均色查找表可为后续计算还原颜色信息提供数据支持,但是在平均色查找表中并不是对应每个阴影纹素都存在对应的平均亮度差,因此可以对平均色查找表进行多级下采样以获取与其对应的平均色贴图集,该平均色贴图集包括多个大小不同的平均色贴图。其中对平均色查找表进行下采样的过程与上述实施例中对亮面颜色查找表和暗面颜色查找表进行下采样的方法相同,在此不再赘述。
在本公开的一个实施例中,为了对漫反射贴图中的阴影纹素的颜色信息进行还原,可以在确定漫反射贴图中所有的阴影纹素后,根据位置贴图获取各阴影纹素的空间位置坐标,同时获取各阴影纹素对应的暗部平均色的颜色均值,然后根据空间位置坐标和暗部平均色的颜色均值在平均色查找表中查找与阴影纹素对应的平均亮度差。当平均色查找表中不存在与阴影纹素对应的平均亮度差时,则根据空间位置坐标和暗部平均色的颜色均值在平均色贴图集中从低级平均色贴图向高级平均色贴图的查找,直至找到与其对应的平均亮度差,其中低级的平均色贴图的大小大于高级的平均色贴图,最高级的平均色贴图可以是1×1×1×1的矩阵。
在本公开的一个实施例中,在根据阴影纹素的空间位置坐标和暗部平均色的颜色均值在平均色查找表中进行查询时,可以对平均色信息进行多维线性插值,以提高颜色的平滑性,减小图像颜色的梯度。与上述实施例中对暗面平均色查找表进行多维线性插值处理的方法类似,在对平均色查找表进行多维线性插值处理时,具体可以以平均色查找表中与阴影纹素的空间位置坐标和暗部平均色的颜色均值所对应的像素为原采样点,并在每个维度上进行采样,以获取包括原采样点在内的多个采样点,例如平均色查找表为四维查找表,则可以获取16(24)个采样点;然后根据多个采样点在四个维度上依次进行插值,计算插值点的平均亮度差偏移量,并将平均亮度差偏移量对应的超立方体的体积作为权重,其中超立方体的体积总量为1;最后根据超立方体的体积对平均色偏移量加权求和即可获取经多维线性插值处理所得到的平均亮度差信息。
在步骤S330中,根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,并根据所述还原颜色信息对所述阴影纹素的颜色信息进行还原。
在本公开的一个实施例中,无论是第一种去除直射光光照的方法还是第二种去除直射光光照的方法,在获取与阴影纹素对应的平均亮度差之后,都可以根据平均亮度差和阴影纹素的颜色信息进行颜色还原。具体地,可以将平均亮度差与阴影纹素的颜色信息中的RGB向量相乘,以获取还原颜色信息,根据该还原颜色信息即可实现对阴影纹素的颜色还原。
在本公开的一个实施例中,在根据上述实施例的方法对阴影纹素的颜色进行还原后,还可以对漫反射贴图中阴影纹素和非阴影纹素之间的交界处,即明暗交界处,进行模糊化处理,以消除接缝处颜色不一致的问题。作为示例性说明,本公开实施例中可以通过高斯滤波、中值滤波、双边滤波、均值滤波等方法进行模糊化处理。
本公开实施例中的图像处理方法通过根据与阴影纹素对应的亮面平均色信息和暗面平均色信息可以确定平均亮度差,并根据平均亮度差对阴影纹素的颜色信息进行还原,或者根据漫反射贴图中与阴影贴图中的边缘纹素对应的中心纹素所对应的亮部平均色和暗部平均色计算平均亮度差,并根据平均亮度差对阴影纹素的颜色信息进行还原,能够有效去除直射光光照产生的阴影,同时避免了图像中其它地方出现贴图细节丢失、色相改变、色彩溢出或色块问题,使得模型的视觉效果更好,且能够在任意光照条件的场景中使用,例如可广泛应用于游戏、3D交互式体验等实时渲染应用中,另外便于从现实场景中采集和制作模型素材,使得用户体验更真实、更好。图10示出了根据本公开的图像处理方法去除模型中的阴影的界面示意图,如图10所示,与图2A-2B相比,根据本公开的图像处理方法去除阴影的效果更好,图像质量更高。
在本公开的一个实施例中,由于第一种去除直射光光照产生的阴影的方法主要是针对漫反射贴图中每一个纹素进行平均色的采集,进而根据阴影纹素对应的亮面平均色信息和暗面平均色信息确定还原颜色信息,并根据还原颜色信息对阴影纹素的颜色进行还原,因此第一种阴影去除方法对于颜色较少的漫反射贴图中的阴影去除效果更好;第二种去除直射光光照产生的阴影的方法主要是针对与漫反射贴图中的中心纹素所对应的亮部区域和暗部区域的平均色进行采集,进而根据亮部区域的平均色和暗部区域的平均色确定还原颜色信息,并根据还原颜色信息对阴影纹素的颜色进行还原,因此第二种阴影去除方法对于颜色较多的漫反射贴图中的阴影去除效果更好。
在本公开的一个实施例中,直射光光照可以产生阴影,非直射光光照也可以产生阴影,接下来对如何去除由非直射光光照产生的阴影进行详细说明。
在本公开的一个实施例中,通过渲染引擎根据多张照片进行建模时,能够通过渲染引擎导出与模型对应的多种贴图,当照片中的光源为环境光时,能够通过渲染引擎导出与模型对应的漫反射贴图、法线贴图、位置贴图之外,还能导出环境光遮蔽贴图(AOmapping)和环境法线贴图(Bentnormal mapping)。表面法线向量是几何模型的一个必要参数,而环境法线就是对原始的法线做修改之后的新向量,它指向了当前像素一个不被其它物体(或几何体元)遮挡的平均方向,也即光线传入的主要方向。环境法线一般来说可以有两种用途:用来改变原始的法线,并记录光线的主要通过方向,这样在做环境贴图的采样时可以从更优化的方向来计算采样的光线;用来代替原始的法线做正常的渲染,这样可以在尽管只有法线的情况下一定程度上得到类似于环境光遮蔽的软阴影效果。
在本公开的一个实施例中,图11示出了去除非直射光光照产生的阴影的流程示意图,如图11所示,该流程至少包括步骤S1110-S1140,具体地:
在步骤S1110中,根据漫反射贴图中各纹素的法线信息构建第一平均色查找表。
在本公开的一个实施例中,可以以法线的经纬度为坐标构建查找表,然后将漫反射贴图中各纹素的颜色信息累加至查找表中与各纹素对应的像素上,以形成第一颜色查找表。具体地,首先可以获取漫反射贴图各个纹素的第五UV坐标,由于漫反射贴图和法线贴图均通过UV坐标映射存储,因此根据该第五UV坐标可以在法线贴图中确定与其对应的法线信息;接着根据获取的法线信息中的经度和维度在第一颜色查找表中可以确定目标像素;然后判断具有第五UV坐标的纹素的颜色信息中的透明值是否为1,当透明值为1时,将该纹素的颜色信息累加至目标像素上,当透明值不为1时,则不对该纹素的颜色信息进行处理;最后采集包含纹素颜色信息的第一颜色查找表中各像素的透明值,将各像素的透明值相加以获取第五和值,并将第一颜色查找表中各像素的颜色信息与第五和值相除,以获取第一平均色查找表。
在步骤S1120中,根据第一平均色查找表确定与所述漫反射贴图对应的整体平均亮区域颜色信息,并根据第一平均色查找表获取中间结果贴图。
在本公开的一个实施例中,在获取第一平均色查找表后,可以遍历第一平均色查找表中的各个像素,计算各个像素接近0.7亮度的程度,接着可以将各个像素接近0.7亮度的程度作为权重,对第一平均色查找表中的像素进行处理,以获取与漫反射贴图对应的整体平均亮区域颜色信息。在计算各个像素接近0.7亮度的程度时,可以根据公式(1)进行计算,具体地:
ω=(1.0-Abs(Lumin(RGB)-0.7)×2)3 (1)
其中,ω为权重,Abs为取绝对值,Lumin(RGB)为第一平均色查找表中各个像素的RGB向量的亮度值。
在本公开的一个实施例中,RGB向量的亮度值可以通过将RGB颜色空间转换为YIQ色彩空间来获得,其中的Y即为颜色的明视度,即亮度。在计算RGB向量的亮度值时,可以根据一定的转换比例对RGB三通道的颜色值进行转换,具体地,Y=0.299R+0.587G+0.114B。
在本公开的一个实施例中,在获取第一平均色查找表中各个像素所对应的权重之后,可以将各个像素的颜色信息和与其对应的权重相乘,以获取加权颜色信息;接着可以将所有像素对应的加权颜色信息进行加和求平均,以获取整体平均亮区域颜色信息。整体平均亮区域颜色信息可以根据公式(2)计算得到,具体为:
其中,Q为整体平均亮区域颜色信息,i为第一平均色查找表中存在颜色信息的任一像素,m为第一平均色查找表中存在颜色信息的像素的数量,ω为与各像素对应的权重。
在本公开的一个实施例中,与各个像素对应的权重为各个像素接近0.7亮度的程度,通过权重值可以让期望亮度的颜色值的权重更高,以达到整体向期望平均亮度接近的目的,进而实现对非直射光光照产生的阴影的恢复。
在本公开的一个实施例中,还可以遍历漫反射贴图中的各个纹素,根据各个纹素的法线信息和第一平均色查找表确定中间结果贴图,该中间结果贴图由与漫反射贴图中各个纹素所对应的经处理的平均色信息构成。由于第一平均色查找表中只保存有透明值为1的纹素的平均色信息,对于其它透明值不为1的纹素在第一平均色查找表中不存在对应的平均色信息,因此需要对第一平均色查找表进行多次下采样,以获取第一平均色贴图集,该第一平均色贴图集包含多个大小不同的第一平均色贴图,通过下采样可以保证对应漫反射贴图中的每一个纹素,都有与之对应的第一平均色。在确定中间结果贴图时,首先获取漫反射贴图中各个纹素的第六UV坐标,然后根据第六UV坐标在法线贴图中查找与其对应的法线信息,接着根据该法线信息在第一平均色查找表中获取对应的平均色信息,如果在第一平均色查找表中无法获取与法线信息对应的平均色信息,则根据该法线信息在第一平均色贴图集中由低级第一平均色贴图向高级第一平均色贴图进行查找,直至获取与该法线信息对应的平均色信息;最后根据获取的与各个纹素对应的平均色信息可以进行处理,得到经处理的平均色信息。在对与各个纹素对应的平均色信息进行处理时,可以先获取与纹素对应的平均色信息中的第一RGB向量和漫反射贴图中与纹素对应的颜色信息中的第二RGB向量,然后根据公式(3)进行计算得到处理后的平均色信息,进而根据处理后的平均色信息可以形成中间结果贴图。公式(3)具体为:
P=(1.0f/V1)×V2 (3)
其中,P为经处理后的颜色信息,V1为第一RGB向量,V2为第二RGB向量。
在步骤S1130中,根据中间结果贴图和环境光遮蔽贴图构建第二平均色查找表。
在本公开的一个实施例中,可以以环境光遮蔽信息和环境法线信息为坐标形成查找表,并将中间结果贴图中各纹素的颜色信息经加权处理后累加到该查找表中形成第二平均色查找表。其中环境光遮蔽信息和环境法线信息均为一个通道值的浮点数,也就是说,第二平均色查找表也是一个二维的查找表,进一步地,第一平均色查找表和第二平均色查找表可以具有相同的大小,例如均设置为64×32等等,当然也可以设置为不同的大小,本公开实施例对此不作具体限定。
在本公开的一个实施例中,在形成第二平均色查找表时,遍历中间结果贴图中的各个纹素,根据各个纹素的UV坐标获取中间结果贴图中与其对应的环境光遮蔽值,然后将该环境光遮蔽值作为权重,对与相应纹素对应的中间结果进行加权处理。在获取中间结果贴图中各个纹素对应的加权处理后的中间结果后,可以获取各纹素对应的加权处理后的中间结果中的透明值,然后将所有纹素对应的透明值相加得到第六和值,接着将各个纹素对应的加权处理后的中间结果与第六和值相除,以获取与各个纹素对应的平均色信息;最后将与各个纹素对应的平均色信息累加至查找表中对应的像素中即可获取第二平均色查找表。
在本公开的一个实施例中,还可以对第二平均色查找表进行多次下采样,以获取第二平均色贴图集,该第二平均色贴图集包含多个大小不同的第二平均色贴图,其中对第二平均色查找表进行下采样的方法与对亮面颜色查找表或暗面颜色查找表进行下采样的方法相同,在此不再赘述。
在步骤S1140中,遍历中间结果贴图中的各个纹素,根据各个纹素在第二平均色查找表中的颜色信息确定还原颜色信息,并根据还原颜色信息对各个纹素的颜色进行还原。
在本公开的一个实施例中,对中间结果贴图中的纹素进行遍历,获取中间结果贴图中各中间结果纹素的UV坐标,根据该UV坐标在环境光遮蔽贴图和环境法线贴图中进行查询,以获取与各中间结果纹素对应的环境光遮蔽信息和环境法线信息。接着根据各中间结果纹素的环境光遮蔽信息和环境法线信息在第二平均色查找表中进行查询,以获取对应的第二平均色信息,如果在第二平均色查找表中不存在对应的第二平均色信息,那么可以根据中间结果纹素的环境光遮蔽信息和环境法线信息在第二平均色贴图集中从低级的第二平均色贴图到高级的第二平均色贴图进行查找,直至获取与中间结果纹素对应的第二平均色信息。
在本公开的一个实施例中,在获取与中间结果纹素对应的第二平均色信息后,可以根据第二平均色信息、中间结果纹素的颜色信息和整体平均亮区域颜色信息确定还原颜色信息。在确定还原颜色信息时,首先获取中间结果纹素的颜色信息中的RGB向量,然后根据公式(4)计算得到还原颜色信息,公式(4)具体如下所示:
C=(1.0f/L)×V3×Q (4)
其中,C为还原颜色信息,L为第二平均色信息,V3为中间结果纹素的颜色信息中的RGB向量,Q为整体平均亮区域颜色信息。
在本公开的一个实施例中,由于中间结果贴图是通过对漫反射贴图中的纹素进行处理得到的,那么中间结果纹素与漫反射贴图中的纹素对应,因此在获取中间结果纹素对应的还原颜色信息后,可以采用各纹素对应的还原颜色信息替换漫反射贴图中各纹素的颜色信息,进而可以去除漫反射贴图中由非直射光光照所产生的阴影。
图12A-12C示出了模型中的非直射光阴影去除前和去除后的界面示意图,如图12A所示,图像为未经去除阴影的原始模型纹理;如图12B所示,图像为经Unity De-Lightingtool工具去除阴影后的模型纹理,其中的石头上的青苔颜色有失真;而经过本公开实施例中的图像处理方法对模型中的阴影进行去除后,青苔颜色没有失真,图像质量较高,如图12C所示。
值得说明的是,对于同时存在直射光和非直射光的情况,由于直射光的作用较强,非直射光的作用较弱,因此可以仅根据去除直射光光照产生的阴影的方法进行图像处理即可。
本公开实施例中的图像处理方法,一方面通过两种方法去除漫反射贴图中由于直射光光照产生的阴影,另一方面通过一种方法去除漫反射贴图中由于非直射光光照产生的阴影,均有效地避免了现有技术中采用已知工具去除阴影时存在的贴图细节丢失、色相改变、色彩溢出和色块等问题,提高了漫反射贴图的质量,进而使得覆盖有漫反射贴图的模型可以在任意光照条件的场景中使用,而不会因为阴影的存在导致图像质量差、用户体验低等问题。
以下介绍本公开的装置实施例,可以用于执行本公开上述实施例中的图像处理方法。对于本公开装置实施例中未披露的细节,请参照本公开上述的图像处理方法的实施例。
图13示意性示出了根据本公开的一个实施例的图像处理装置的框图。该装置可以用于执行本申请实施例提供的方法中的相应步骤。
参照图13所示,根据本公开的一个实施例的图像处理装置1300,包括:获取模块1301、计算模块1302和还原模块1303。
其中,获取模块1301,用于获取漫反射贴图,并获取所述漫反射贴图中位于阴影区域的阴影纹素;计算模块1302,用于根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差;还原模块1303,用于根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,并根据所述还原颜色信息对所述阴影纹素的颜色信息进行还原。
在本公开的一个实施例中,所述图像处理装置1300还配置为:获取与所述漫反射贴图对应的位置贴图、法线贴图和阴影贴图。
在本公开的一个实施例中,所述获取模块1301配置为:获取所述阴影贴图中对应阴影区域的纹素的第一UV坐标;将所述第一UV坐标与所述漫反射贴图中纹素的UV坐标进行匹配,以获取所述漫反射贴图中与所述第一UV坐标对应的纹素作为所述阴影纹素。
在本公开的一个实施例中,所述平均色查找表包括亮面平均色查找表和暗面平均色查找表;所述图像处理装置1300还包括:颜色查找表形成模块,用于在获取所述漫反射贴图中位于阴影区域的阴影纹素之前,遍历所述漫反射贴图中的各个纹素,根据所述阴影贴图中与各所述纹素对应的阴影信息将各所述纹素的颜色信息累加至亮面查找表或暗面查找表中,以形成亮面颜色查找表和暗面颜色查找表;平均色查找表形成模块,用于根据所述亮面颜色查找表中像素的透明值对所述亮面颜色查找表中的颜色信息进行转换,根据所述暗面颜色查找表中像素的透明值对所述暗面颜色查找表中的颜色信息进行转换,以获取所述亮面平均色查找表和所述暗面平均色查找表。
在本公开的一个实施例中,所述亮面查找表和所述暗面查找表均为五维查找表,所述五维查找表包括所述漫反射贴图中的纹素在空间直角坐标系中的三个坐标维度以及纹素所对应法线的经度和维度。
在本公开的一个实施例中,所述平均色查找表形成模块配置为:获取所述亮面颜色查找表中所有像素的透明值的第一和值,同时获取所述暗面颜色查找表中所有像素的透明值的第二和值;将所述亮面颜色查找表中各个像素的颜色信息与所述第一和值相除,以获取所述亮面平均色查找表;将所述暗面颜色查找表中各个像素的颜色信息与所述第二和值相除,以获取所述暗面平均色查找表。
在本公开的一个实施例中,所述颜色查找表形成模块包括:第一坐标获取单元,用于根据各所述纹素颜色信息中的透明值确定目标纹素,并获取所述目标纹素的第二UV坐标;阴影信息查询单元,用于根据所述第二UV坐标在所述阴影贴图中确定与所述目标纹素对应的目标阴影信息,并根据所述目标阴影信息在所述亮面查找表和所述暗面查找表中确定目标查找表;位置信息查询单元,用于根据所述第二UV坐标分别在所述位置贴图和所述法线贴图中确定目标位置信息和目标法线信息;颜色累加单元,用于根据所述目标位置信息和所述目标法线信息在所述目标查找表中确定目标像素,并将所述目标纹素的颜色信息累加至所述目标像素上,以形成所述亮面颜色查找表和所述暗面颜色查找表。
在本公开的一个实施例中,所述第一坐标获取单元配置为:将颜色信息中透明值为1的纹素作为所述目标纹素。
在本公开的一个实施例中,所述目标位置信息为所述目标纹素在空间直角坐标系中的位置坐标,所述目标法线信息为所述目标纹素对应的法线的经度和维度,所述目标阴影信息为所述目标纹素是否为所述阴影纹素。
在本公开的一个实施例中,所述阴影信息查询单元配置为:根据所述第二UV坐标在所述阴影贴图中进行查询以获取所述目标阴影信息,并判断所述目标阴影信息的类型;所述目标阴影信息为所述目标纹素是阴影纹素时,将所述暗面查找表作为所述目标查找表;当所述目标阴影信息为所述目标纹素是非阴影纹素时,将所述亮面查找表作为所述目标查找表。
在本公开的一个实施例中,所述图像处理装置1300还配置为:对所述亮面颜色查找表和所述暗面颜色查找表分别进行多级下采样以获取亮面平均色贴图集和暗面平均色贴图集,其中所述亮面平均色贴图集包含多个大小不同的亮面平均色贴图,所述暗面平均色贴图集包括多个大小不同的暗面平均色贴图。
在本公开的一个实施例中,所述计算模块1302包括:暗面平均色获取单元,用于根据所述阴影纹素的空间坐标信息在所述暗面平均色查找表中确定与所述空间坐标信息对应且值不为零的暗面平均色信息;亮面平均色获取单元,用于根据所述空间坐标信息在所述亮面平均色贴图集中从低级亮面平均色贴图到高级亮面平均色贴图进行逐级查询,以获取与所述空间坐标信息对应且值不为零的亮面平均色信息;平均亮度差计算单元,用于根据所述亮面平均色信息与所述暗面平均色信息确定所述平均亮度差。
在本公开的一个实施例中,所述计算模块还配置为:在确定所述暗面平均色信息时,对所述暗面平均色查找表进行多维线性插值处理。
在本公开的一个实施例中,所述平均亮度差计算单元配置为:获取所述亮面平均色信息中的亮面RGB向量和所述暗面平均色信息中的暗面RGB向量;将所述亮面RGB向量与所述暗面RGB向量相除,以获取所述平均亮度差。
在本公开的一个实施例中,所述还原模块1303配置为:将所述平均亮度差和所述阴影纹素对应的颜色信息中的RGB向量相乘以获取所述还原颜色信息。
在本公开的一个实施例中,所述图像处理装置1300还包括:中心纹素确定模块,用于提取所述阴影贴图中的边缘纹素,并根据所述边缘纹素在所述漫反射贴图中确定中心纹素;亮暗区域确定模块,用于根据所述中心纹素和预设范围确定目标贴图区域,并根据所述阴影贴图确定所述目标贴图区域中的亮部区域和暗部区域;平均亮度差计算模块,用于分别计算与所述亮部区域对应的亮部平均色和与所述暗部区域对应的暗部平均色,根据所述亮部平均色和所述暗部平均色确定平均亮度差,并将所述平均亮度差累加至所述平均色查找表中。
在本公开的一个实施例中,所述中心纹素确定模块配置为:通过水平方向模板和垂直方向模板对所述阴影贴图进行邻域卷积,以获取所述边缘纹素;获取所述边缘纹素的第三UV坐标,根据所述第三UV坐标在所述漫反射贴图中进行查找以获取所述中心纹素。
在本公开的一个实施例中,所述亮暗区域确定模块配置为:获取所述目标贴图区域中各个纹素的第四UV坐标,根据所述第四UV坐标和所述阴影贴图确定所述目标贴图区域中各个纹素对应的阴影信息;将阴影信息为非阴影纹素且空间坐标信息相邻的纹素所形成的区域作为所述亮部区域,并将阴影信息为阴影纹素且空间坐标信息相邻的纹素所形成的区域作为所述暗部区域。
在本公开的一个实施例中,所述平均亮度差计算模块配置为:将所述亮部区域中所有纹素的颜色信息相加以获取亮部颜色信息,同时将所述亮部区域中所有纹素的颜色信息中的透明值相加以获取第三和值;将所述暗部区域中所有纹素的颜色信息相加以获取亮部颜色信息,同时将所述暗部区域中所有纹素的颜色信息中的透明值相加以获取第四和值;将所述亮部颜色信息与所述第三和值相除以获取所述亮部平均色,并将所述暗部颜色信息与所述第四和值相除以获取所述暗部平均色。
在本公开的一个实施例中,所述平均亮度差计算模块配置为:获取所述亮部平均色中的亮部RGB向量和所述暗部平均色中的暗部RGB向量;将所述亮部RGB向量与所述暗部RGB向量相除,以获取所述平均亮度差。
在本公开的一个实施例中,所述平均色查找表为四维查找表,包括所述中心纹素的空间位置坐标的三个维度和暗部平均色的颜色均值。
在本公开的一个实施例中,所述计算模块1302包括:信息获取单元,用于根据所述位置贴图确定与所述阴影纹素对应的空间位置坐标,同时获取所述阴影纹素对应的暗部平均色的颜色均值;信息查找单元,用于根据所述阴影纹素的空间位置坐标和暗部平均色的颜色均值在所述平均色查找表中查询对应的平均亮度差。
在本公开的一个实施例中,所述信息查找单元配置为:根据所述阴影纹素的空间位置坐标和暗部平均色的颜色均值在所述平均色查找表中查询是否存在对应的平均亮度差;若不存在,根据所述阴影纹素的空间位置坐标和暗部平均色的颜色均值在与所述平均色查找表对应的平均色贴图集中查询对应的平均亮度差,其中所述平均色贴图集是通过对所述平均色查找表进行多级下采样所形成的多个贴图。
在本公开的一个实施例中,所述信息查找单元还配置为:在查询所述平均亮度差时,对所述平均色查找表进行多维线性插值处理。
在本公开的一个实施例中,所述还原模块1303配置为:将所述平均亮度差和所述阴影纹素对应的颜色信息中的RGB向量相乘以获取所述还原颜色信息。
在本公开的一个实施例中,所述图像处理装置1300还配置为:对所述漫反射贴图中阴影纹素和非阴影纹素之间的交界处进行模糊化处理。
图14示意性示出了根据本公开的一个实施例的图像处理装置的框图。该装置可以用于执行本申请实施例提供的方法中的相应步骤。
参照图14所示,根据本公开的一个实施例的图像处理装置1400,包括:第一查找表构建模块1401、中间结果贴图获取模块1402、第二查找表构建模块1403和颜色还原模块1404。
其中,第一查找表构建模块1401,用于根据漫反射贴图中各纹素的法线信息构建第一平均色查找表;中间结果贴图获取模块,用于根据第一平均色查找表确定与所述漫反射贴图对应的整体平均亮区域颜色信息,并根据第一平均色查找表获取中间结果贴图;第二查找表构建模块,用于根据中间结果贴图和环境光遮蔽贴图构建第二平均色查找表;颜色还原模块,用于遍历中间结果贴图中的各个纹素,根据各个纹素在第二平均色查找表中的颜色信息确定还原颜色信息,并根据还原颜色信息对各个纹素的颜色进行还原。
图15示出了适于用来实现本公开实施例的电子设备的计算机***的结构示意图。
需要说明的是,图15示出的电子设备的计算机***1500仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图15所示,计算机***1500包括中央处理单元(Central Processing Unit,CPU)1501,其可以根据存储在只读存储器(Read-Only Memory,ROM)1502中的程序或者从存储部分1508加载到随机访问存储器(Random Access Memory,RAM)1503中的程序而执行各种适当的动作和处理,实现上述实施例中所述的图像标注方法。在RAM 1503中,还存储有***操作所需的各种程序和数据。CPU 1501、ROM 1502以及RAM1503通过总线1504彼此相连。输入/输出(Input/Output,I/O)接口1505也连接至总线1504。
以下部件连接至I/O接口1505:包括键盘、鼠标等的输入部分1506;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1507;包括硬盘等的存储部分1508;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至I/O接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入存储部分1508。
特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被中央处理单元(CPU)1501执行时,执行本公开的***中限定的各种功能。
需要说明的是,本公开实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的图像处理装置中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (28)
1.一种图像处理方法,其特征在于,包括:
获取漫反射贴图,并获取所述漫反射贴图中位于阴影区域的阴影纹素;
根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差;
根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,并根据所述还原颜色信息对所述阴影纹素的颜色信息进行还原。
2.根据权利要求1所述的图像处理方法,其特征在于,在获取漫反射贴图时,所述方法还包括:
获取与所述漫反射贴图对应的位置贴图、法线贴图和阴影贴图。
3.根据权利要求2所述的图像处理方法,其特征在于,所述获取漫反射贴图中位于阴影区域的阴影纹素,包括:
获取所述阴影贴图中对应阴影区域的纹素的第一UV坐标;
将所述第一UV坐标与所述漫反射贴图中纹素的UV坐标进行匹配,以获取所述漫反射贴图中与所述第一UV坐标对应的纹素作为所述阴影纹素。
4.根据权利要求2所述的图像处理方法,其特征在于,所述平均色查找表包括亮面平均色查找表和暗面平均色查找表;
在获取所述漫反射贴图中位于阴影区域的阴影纹素之前,所述方法还包括:
遍历所述漫反射贴图中的各个纹素,根据所述阴影贴图中与各所述纹素对应的阴影信息将各所述纹素的颜色信息累加至亮面查找表或暗面查找表中,以形成亮面颜色查找表和暗面颜色查找表;
根据所述亮面颜色查找表中像素的透明值对所述亮面颜色查找表中的颜色信息进行转换,根据所述暗面颜色查找表中像素的透明值对所述暗面颜色查找表中的颜色信息进行转换,以获取所述亮面平均色查找表和所述暗面平均色查找表。
5.根据权利要求4所述的图像处理方法,其特征在于,所述亮面查找表和所述暗面查找表均为五维查找表,所述五维查找表包括所述漫反射贴图中的纹素在空间直角坐标系中的三个坐标维度以及纹素所对应法线的经度和维度。
6.根据权利要求4所述的图像处理方法,其特征在于,所述根据所述亮面颜色查找表中像素的透明值对所述亮面颜色查找表中的颜色信息进行转换,根据所述暗面颜色查找表中像素的透明值对所述暗面颜色查找表中的颜色信息进行转换,以获取所述亮面平均色查找表和所述暗面平均色查找表,包括:
获取所述亮面颜色查找表中所有像素的透明值的第一和值,同时获取所述暗面颜色查找表中所有像素的透明值的第二和值;
将所述亮面颜色查找表中各个像素的颜色信息与所述第一和值相除,以获取所述亮面平均色查找表;
将所述暗面颜色查找表中各个像素的颜色信息与所述第二和值相除,以获取所述暗面平均色查找表。
7.根据权利要求4所述的图像处理方法,其特征在于,所述根据各所述纹素的阴影信息将各所述纹素的颜色向量累加至所述亮面查找表或所述暗面查找表中,以形成亮面颜色查找表和暗面颜色查找表,包括:
根据各所述纹素颜色信息中的透明值确定目标纹素,并获取所述目标纹素的第二UV坐标;
根据所述第二UV坐标在所述阴影贴图中确定与所述目标纹素对应的目标阴影信息,并根据所述目标阴影信息在所述亮面查找表和所述暗面查找表中确定目标查找表;
根据所述第二UV坐标分别在所述位置贴图和所述法线贴图中确定目标位置信息和目标法线信息;
根据所述目标位置信息和所述目标法线信息在所述目标查找表中确定目标像素,并将所述目标纹素的颜色信息累加至所述目标像素上,以形成所述亮面颜色查找表和所述暗面颜色查找表。
8.根据权利要求7所述的图像处理方法,其特征在于,所述目标位置信息为所述目标纹素在空间直角坐标系中的位置坐标,所述目标法线信息为所述目标纹素对应的法线的经度和维度,所述目标阴影信息为所述目标纹素是否为所述阴影纹素。
9.根据权利要求8所述的图像处理方法,其特征在于,所述根据所述第二UV坐标在所述阴影贴图中确定与所述目标纹素对应的目标阴影信息,并根据所述目标阴影信息在所述亮面查找表和所述暗面查找表确定目标查找表,包括:
根据所述第二UV坐标在所述阴影贴图中进行查询以获取所述目标阴影信息,并判断所述目标阴影信息的类型;
当所述目标阴影信息为所述目标纹素是阴影纹素时,将所述暗面查找表作为所述目标查找表;
当所述目标阴影信息为所述目标纹素是非阴影纹素时,将所述亮面查找表作为所述目标查找表。
10.根据权利要求4所述的图像处理方法,其特征在于,在获取所述亮面颜色查找表和所述暗面颜色查找表之后,所述方法还包括:
对所述亮面颜色查找表和所述暗面颜色查找表分别进行多级下采样以获取亮面平均色贴图集和暗面平均色贴图集,其中所述亮面平均色贴图集包含多个大小不同的亮面平均色贴图,所述暗面平均色贴图集包括多个大小不同的暗面平均色贴图。
11.根据权利要求10所述的图像处理方法,其特征在于,所述根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差,包括:
根据所述阴影纹素的空间坐标信息在所述暗面平均色查找表中确定与所述空间坐标信息对应且值不为零的暗面平均色信息;
根据所述空间坐标信息在所述亮面平均色贴图集中从低级亮面平均色贴图到高级亮面平均色贴图进行逐级查询,以获取与所述空间坐标信息对应且值不为零的亮面平均色信息;
根据所述亮面平均色信息与所述暗面平均色信息确定所述平均亮度差。
12.根据权利要求11所述的图像处理方法,其特征在于,所述方法还包括:
在确定所述暗面平均色信息时,对所述暗面平均色查找表进行多维线性插值处理。
13.根据权利要求11所述的图像处理方法,其特征在于,所述根据所述亮面平均色信息和所述暗面平均色信息确定所述平均亮度差,包括:
获取所述亮面平均色信息中的亮面RGB向量和所述暗面平均色信息中的暗面RGB向量;
将所述亮面RGB向量与所述暗面RGB向量相除,以获取所述平均亮度差。
14.根据权利要求1或13所述的图像处理方法,其特征在于,所述根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,包括:
将所述平均亮度差和所述阴影纹素对应的颜色信息中的RGB向量相乘以获取所述还原颜色信息。
15.根据权利要求2所述的图像处理方法,其特征在于,在所述获取所述漫反射贴图中位于阴影区域的阴影纹素之前,所述方法还包括:
提取所述阴影贴图中的边缘纹素,并根据所述边缘纹素在所述漫反射贴图中确定中心纹素;
根据所述中心纹素和预设范围确定目标贴图区域,并根据所述阴影贴图确定所述目标贴图区域中的亮部区域和暗部区域;
分别计算与所述亮部区域对应的亮部平均色和与所述暗部区域对应的暗部平均色,根据所述亮部平均色和所述暗部平均色确定平均亮度差,并将所述平均亮度差累加至所述平均色查找表中。
16.根据权利要求15所述的图像处理方法,其特征在于,所述提取所述阴影贴图中的边缘纹素,并根据所述边缘纹素在所述漫反射贴图中确定中心纹素,包括:
通过水平方向模板和垂直方向模板对所述阴影贴图进行邻域卷积,以获取所述边缘纹素;
获取所述边缘纹素的第三UV坐标,根据所述第三UV坐标在所述漫反射贴图中进行查找以获取所述中心纹素。
17.根据权利要求15所述的图像处理方法,其特征在于,所述根据所述阴影贴图确定所述目标贴图区域中的亮部区域和暗部区域,包括:
获取所述目标贴图区域中各个纹素的第四UV坐标,根据所述第四UV坐标和所述阴影贴图确定所述目标贴图区域中各个纹素对应的阴影信息;
将阴影信息为非阴影纹素且空间坐标信息相邻的纹素所形成的区域作为所述亮部区域,并将阴影信息为阴影纹素且空间坐标信息相邻的纹素所形成的区域作为所述暗部区域。
18.根据权利要求15所述的图像处理方法,其特征在于,所述分别计算与所述亮部区域对应的亮部平均色和与所述暗部区域对应的暗部平均色,包括:
将所述亮部区域中所有纹素的颜色信息相加以获取亮部颜色信息,同时将所述亮部区域中所有纹素的颜色信息中的透明值相加以获取第三和值;
将所述暗部区域中所有纹素的颜色信息相加以获取亮部颜色信息,同时将所述暗部区域中所有纹素的颜色信息中的透明值相加以获取第四和值;
将所述亮部颜色信息与所述第三和值相除以获取所述亮部平均色,并将所述暗部颜色信息与所述第四和值相除以获取所述暗部平均色。
19.根据权利要求15所述的图像处理方法,其特征在于,所述根据所述亮部平均色和所述暗部平均色确定平均亮度差,包括:
获取所述亮部平均色中的亮部RGB向量和所述暗部平均色中的暗部RGB向量;
将所述亮部RGB向量与所述暗部RGB向量相除,以获取所述平均亮度差。
20.根据权利要求19所述的图像处理方法,其特征在于,所述平均色查找表为四维查找表,包括所述中心纹素的空间位置坐标的三个维度和暗部平均色的颜色均值。
21.根据权利要求20所述的图像处理方法,其特征在于,所述根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差,包括:
根据所述位置贴图确定与所述阴影纹素对应的空间位置坐标,同时获取所述阴影纹素对应的暗部平均色的颜色均值;
根据所述阴影纹素的空间位置坐标和暗部平均色的颜色均值在所述平均色查找表中查询对应的平均亮度差。
22.根据权利要求21所述的图像处理方法,其特征在于,所述根据所述阴影纹素的空间位置坐标和暗部平均色的颜色均值在所述平均色查找表中查询对应的平均亮度差,包括:
根据所述阴影纹素的空间位置坐标和暗部平均色的颜色均值在所述平均色查找表中查询是否存在对应的平均亮度差;
若不存在,根据所述阴影纹素的空间位置坐标和暗部平均色的颜色均值在与所述平均色查找表对应的平均色贴图集中查询对应的平均亮度差,其中所述平均色贴图集是通过对所述平均色查找表进行多级下采样所形成的多个贴图。
23.根据权利要求22所述的图像处理方法,其特征在于,所述方法还包括:
在查询所述平均亮度差时,对所述平均色查找表进行多维线性插值处理。
24.根据权利要求21或22所述的图像处理方法,其特征在于,所述根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,包括:
将所述平均亮度差和所述阴影纹素对应的颜色信息中的RGB向量相乘以获取所述还原颜色信息。
25.根据权利要求1所述的图像处理方法,其特征在于,所述方法还包括:
对所述漫反射贴图中阴影纹素和非阴影纹素之间的交界处进行模糊化处理。
26.一种图像处理装置,其特征在于,包括:
获取模块,用于获取漫反射贴图,并获取所述漫反射贴图中位于阴影区域的阴影纹素;
计算模块,用于根据所述阴影纹素的空间坐标信息在平均色查找表中进行查询,并根据查询结果确定与所述阴影纹素对应的平均亮度差;
还原模块,用于根据所述平均亮度差和所述阴影纹素对应的颜色信息确定还原颜色信息,并根据所述还原颜色信息对所述阴影纹素的颜色信息进行还原。
27.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至25中任一项所述的图像处理方法。
28.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,所述存储装置用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1至25中任一项所述的图像处理方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010524473.7A CN111612882B (zh) | 2020-06-10 | 2020-06-10 | 图像处理方法、装置、计算机存储介质及电子设备 |
JP2022554220A JP7390497B2 (ja) | 2020-06-10 | 2021-05-12 | 画像処理方法、装置、コンピュータプログラム、および電子デバイス |
KR1020227014210A KR102611066B1 (ko) | 2020-06-10 | 2021-05-12 | 이미지 처리 방법 및 장치, 컴퓨터 저장 매체, 그리고 전자 기기 |
EP21822842.7A EP4044122A4 (en) | 2020-06-10 | 2021-05-12 | IMAGE PROCESSING METHOD AND DEVICE, COMPUTER STORAGE MEDIUM AND ELECTRONIC DEVICE |
PCT/CN2021/093232 WO2021249091A1 (zh) | 2020-06-10 | 2021-05-12 | 图像处理方法、装置、计算机存储介质及电子设备 |
US17/705,169 US11776202B2 (en) | 2020-06-10 | 2022-03-25 | Image processing method and apparatus, computer storage medium, and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010524473.7A CN111612882B (zh) | 2020-06-10 | 2020-06-10 | 图像处理方法、装置、计算机存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111612882A true CN111612882A (zh) | 2020-09-01 |
CN111612882B CN111612882B (zh) | 2023-04-07 |
Family
ID=72196278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010524473.7A Active CN111612882B (zh) | 2020-06-10 | 2020-06-10 | 图像处理方法、装置、计算机存储介质及电子设备 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11776202B2 (zh) |
EP (1) | EP4044122A4 (zh) |
JP (1) | JP7390497B2 (zh) |
KR (1) | KR102611066B1 (zh) |
CN (1) | CN111612882B (zh) |
WO (1) | WO2021249091A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112381705A (zh) * | 2021-01-14 | 2021-02-19 | 奥特酷智能科技(南京)有限公司 | 在Unity3d中快速点云绘制的方法 |
CN112419459A (zh) * | 2020-10-20 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 烘焙模型ao贴图的方法、装置、计算机设备和存储介质 |
CN113487716A (zh) * | 2021-07-23 | 2021-10-08 | 杭州群核信息技术有限公司 | 瓷砖铺贴渲染方法、装置、存储介质和计算机程序产品 |
CN113538549A (zh) * | 2021-08-31 | 2021-10-22 | 广州光锥元信息科技有限公司 | 在处理图像时保留图像质感纹理的方法及*** |
WO2021249091A1 (zh) * | 2020-06-10 | 2021-12-16 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、计算机存储介质及电子设备 |
WO2023005853A1 (zh) * | 2021-07-30 | 2023-02-02 | 上海商汤智能科技有限公司 | 图像处理方法及装置、电子设备、存储介质及计算机程序产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030179926A1 (en) * | 2002-03-20 | 2003-09-25 | Canon Kabushiki Kaisha | Image processing apparatus and method |
CN1700253A (zh) * | 2004-05-20 | 2005-11-23 | 明基电通股份有限公司 | 图像修正***及方法以及计算机可读取存储媒体 |
CN102301391A (zh) * | 2009-01-27 | 2011-12-28 | 日本电气株式会社 | 彩色图像处理方法、彩色图像处理设备以及彩色图像处理程序 |
CN102314600A (zh) * | 2010-07-06 | 2012-01-11 | 通用汽车环球科技运作有限责任公司 | 用于畅通路径检测的去除由基于车辆的相机捕获的图像中的阴影 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101605770B1 (ko) * | 2009-07-28 | 2016-03-23 | 삼성전자주식회사 | 영상 처리 방법 및 장치 |
JP5795384B2 (ja) | 2010-12-09 | 2015-10-14 | サムスン エレクトロニクス カンパニー リミテッド | 映像処理装置、照明処理装置及びその方法 |
JP6763285B2 (ja) * | 2016-11-29 | 2020-09-30 | セイコーエプソン株式会社 | シェーディング補正装置、電子機器、及びシェーディング補正方法 |
EP3352137A1 (en) * | 2017-01-24 | 2018-07-25 | Thomson Licensing | Method and apparatus for processing a 3d scene |
JP7003994B2 (ja) * | 2017-08-08 | 2022-01-21 | ソニーグループ株式会社 | 画像処理装置および方法 |
US10699477B2 (en) * | 2018-03-21 | 2020-06-30 | Zoox, Inc. | Generating maps without shadows |
JP7104575B2 (ja) * | 2018-06-29 | 2022-07-21 | キヤノン株式会社 | 画像処理装置、制御方法、及びプログラム |
CN111612882B (zh) * | 2020-06-10 | 2023-04-07 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、计算机存储介质及电子设备 |
-
2020
- 2020-06-10 CN CN202010524473.7A patent/CN111612882B/zh active Active
-
2021
- 2021-05-12 JP JP2022554220A patent/JP7390497B2/ja active Active
- 2021-05-12 KR KR1020227014210A patent/KR102611066B1/ko active IP Right Grant
- 2021-05-12 EP EP21822842.7A patent/EP4044122A4/en active Pending
- 2021-05-12 WO PCT/CN2021/093232 patent/WO2021249091A1/zh unknown
-
2022
- 2022-03-25 US US17/705,169 patent/US11776202B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030179926A1 (en) * | 2002-03-20 | 2003-09-25 | Canon Kabushiki Kaisha | Image processing apparatus and method |
CN1700253A (zh) * | 2004-05-20 | 2005-11-23 | 明基电通股份有限公司 | 图像修正***及方法以及计算机可读取存储媒体 |
CN102301391A (zh) * | 2009-01-27 | 2011-12-28 | 日本电气株式会社 | 彩色图像处理方法、彩色图像处理设备以及彩色图像处理程序 |
CN102314600A (zh) * | 2010-07-06 | 2012-01-11 | 通用汽车环球科技运作有限责任公司 | 用于畅通路径检测的去除由基于车辆的相机捕获的图像中的阴影 |
Non-Patent Citations (1)
Title |
---|
刘永刚: "法线贴图应用流程中的经验总结--以常州清代篦箕巷3D模拟为例", 《艺术科技》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021249091A1 (zh) * | 2020-06-10 | 2021-12-16 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、计算机存储介质及电子设备 |
US11776202B2 (en) | 2020-06-10 | 2023-10-03 | Tencent Technology (Shenzhen) Company Limited | Image processing method and apparatus, computer storage medium, and electronic device |
CN112419459A (zh) * | 2020-10-20 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 烘焙模型ao贴图的方法、装置、计算机设备和存储介质 |
CN112419459B (zh) * | 2020-10-20 | 2023-09-08 | 上海哔哩哔哩科技有限公司 | 烘焙模型ao贴图的方法、装置、计算机设备和存储介质 |
CN112381705A (zh) * | 2021-01-14 | 2021-02-19 | 奥特酷智能科技(南京)有限公司 | 在Unity3d中快速点云绘制的方法 |
CN113487716A (zh) * | 2021-07-23 | 2021-10-08 | 杭州群核信息技术有限公司 | 瓷砖铺贴渲染方法、装置、存储介质和计算机程序产品 |
WO2023005853A1 (zh) * | 2021-07-30 | 2023-02-02 | 上海商汤智能科技有限公司 | 图像处理方法及装置、电子设备、存储介质及计算机程序产品 |
CN113538549A (zh) * | 2021-08-31 | 2021-10-22 | 广州光锥元信息科技有限公司 | 在处理图像时保留图像质感纹理的方法及*** |
CN113538549B (zh) * | 2021-08-31 | 2023-12-22 | 广州光锥元信息科技有限公司 | 在处理图像时保留图像质感纹理的方法及*** |
Also Published As
Publication number | Publication date |
---|---|
JP2023520841A (ja) | 2023-05-22 |
KR102611066B1 (ko) | 2023-12-06 |
US20220215618A1 (en) | 2022-07-07 |
EP4044122A1 (en) | 2022-08-17 |
KR20220070506A (ko) | 2022-05-31 |
CN111612882B (zh) | 2023-04-07 |
WO2021249091A1 (zh) | 2021-12-16 |
JP7390497B2 (ja) | 2023-12-01 |
EP4044122A4 (en) | 2023-05-10 |
US11776202B2 (en) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111612882B (zh) | 图像处理方法、装置、计算机存储介质及电子设备 | |
Li et al. | Haze visibility enhancement: A survey and quantitative benchmarking | |
Zach | Fast and high quality fusion of depth maps | |
US7889913B2 (en) | Automatic compositing of 3D objects in a still frame or series of frames | |
CN108986195B (zh) | 一种结合环境映射和全局光照渲染的单镜头混合现实实现方法 | |
US10049486B2 (en) | Sparse rasterization | |
CN107886552B (zh) | 贴图处理方法和装置 | |
CN108805971B (zh) | 一种环境光遮蔽方法 | |
US20090309877A1 (en) | Soft shadow rendering | |
US20210044788A1 (en) | System and method for performing 3d imaging of an object | |
CN114549374A (zh) | 对使用蒙特卡罗绘制进行绘制的图像去噪 | |
CN110992366A (zh) | 一种图像语义分割方法、装置及存储介质 | |
CN111724313A (zh) | 一种阴影贴图生成方法与装置 | |
CN117557714A (zh) | 三维重建方法、电子设备及可读存储介质 | |
CN115375820A (zh) | 顶点环境光遮蔽值的确定方法、应用方法、装置及设备 | |
Rosen | Rectilinear texture warping for fast adaptive shadow mapping | |
CN113506305B (zh) | 三维点云数据的图像增强方法、语义分割方法及装置 | |
CN111739074B (zh) | 一种场景多点光源渲染方法及装置 | |
CN112891946A (zh) | 游戏场景生成方法和装置、可读存储介质、电子设备 | |
CN115375847B (zh) | 材质恢复方法、三维模型的生成方法和模型的训练方法 | |
CN116385619A (zh) | 对象模型渲染方法、装置、计算机设备和存储介质 | |
CN114820904A (zh) | 支持光照的伪室内渲染方法、装置、介质和设备 | |
Wang et al. | An airlight estimation method for image dehazing based on gray projection | |
US9514566B2 (en) | Image-generated system using beta distribution to provide accurate shadow mapping | |
CN116167922B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40028083 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |