CN117392304A - 贴图处理方法、装置、电子设备及存储介质 - Google Patents
贴图处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117392304A CN117392304A CN202311082832.8A CN202311082832A CN117392304A CN 117392304 A CN117392304 A CN 117392304A CN 202311082832 A CN202311082832 A CN 202311082832A CN 117392304 A CN117392304 A CN 117392304A
- Authority
- CN
- China
- Prior art keywords
- data
- feature
- specified
- principal component
- mapping
- 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.)
- Pending
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 128
- 238000003672 processing method Methods 0.000 title abstract description 23
- 239000013598 vector Substances 0.000 claims abstract description 167
- 238000012545 processing Methods 0.000 claims abstract description 129
- 238000000034 method Methods 0.000 claims abstract description 58
- 230000006835 compression Effects 0.000 claims abstract description 38
- 238000007906 compression Methods 0.000 claims abstract description 38
- 238000000513 principal component analysis Methods 0.000 claims abstract description 28
- 230000004044 response Effects 0.000 claims abstract description 16
- 239000011159 matrix material Substances 0.000 claims description 24
- 238000000354 decomposition reaction Methods 0.000 claims description 11
- 230000009466 transformation Effects 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 9
- 238000004458 analytical method Methods 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000006837 decompression Effects 0.000 claims description 5
- 238000009877 rendering Methods 0.000 abstract description 34
- 230000000007 visual effect Effects 0.000 abstract description 15
- 230000006872 improvement Effects 0.000 abstract description 9
- 230000000694 effects Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 17
- 230000008859 change Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000017105 transposition Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 108010068977 Golgi membrane glycoproteins Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Landscapes
- Image Processing (AREA)
Abstract
本公开涉及计算机技术领域,提供一种贴图处理方法、装置、电子设备及存储介质;其中,该方法包括:响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到多张指定贴图的像素值;对多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;对中心化处理后的数据进行主成分分析,得到目标主成分特征;基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量;基于重建后的特征向量生成压缩后的贴图。该方法,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
Description
技术领域
本公开涉及计算机技术领域,尤其是涉及一种贴图处理方法、装置、电子设备及存储介质。
背景技术
在游戏领域中,为了减少渲染时的纹理切换和调用次数,会对已渲染或者绘制的多张贴图进行特定的处理。将多张贴图合并为一张更大分辨率的贴图是一种常见的优化处理方式。这种贴图处理方法虽然能够保留原有的贴图信息和实现直观、简单的效果,但是,存在增加显存占用的问题,进而影响到渲染性能,即存在无法在保证渲染质量的基础上提高渲染性能的缺陷。
发明内容
有鉴于此,本公开的目的在于提供一种贴图处理方法、装置、电子设备及存储介质,通过多张指定贴图进行像素值处理、中心化处理和主成分分析,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
第一方面,本公开实施例提供了一种贴图处理方法,所述贴图处理方法包括:
响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到所述多张指定贴图的像素值;
对所述多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
对所述中心化处理后的数据进行主成分分析,得到目标主成分特征;
基于所述中心化处理后的数据和所述目标主成分特征进行特征向量重建,得到重建后的特征向量;
基于所述重建后的特征向量生成压缩后的贴图。
第二方面,本公开实施例提供了一种贴图处理装置,所述贴图处理装置包括:
解析模块,用于响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到所述多张指定贴图的像素值;
中心化模块,用于对所述多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
分析模块,用于对所述中心化处理后的数据进行主成分分析,得到目标主成分特征;
重建模块,用于基于所述中心化处理后的数据和所述目标主成分特征进行特征向量重建,得到重建后的特征向量;
生成模块,用于基于所述重建后的特征向量生成压缩后的贴图。
第三方面,本公开实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述贴图处理方法。
第四方面,本公开实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述贴图处理方法。
本公开实施例带来了以下有益效果:
上述贴图处理方法、装置、电子设备及存储介质,响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到所述多张指定贴图的像素值;对所述多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;对所述中心化处理后的数据进行主成分分析,得到目标主成分特征;基于所述中心化处理后的数据和所述目标主成分特征进行特征向量重建,得到重建后的特征向量;基于所述重建后的特征向量生成压缩后的贴图。该方法中,通过多张指定贴图进行像素值处理、中心化处理和主成分分析,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
本公开的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的贴图处理方法的一个实施例示意图;
图2为本公开实施例提供的贴图处理方法的另一个实施例示意图;
图3为本公开实施例提供的3张指定贴图的一个实施例示意图;
图4为本公开实施例提供的压缩后的贴图的一个实施例示意图;
图5为本公开实施例提供的基于压缩后的贴图渲染后的物体效果与原始物体效果的对比的一个实施例示意图;
图6为本公开实施例提供的一种贴图处理装置的示意图;
图7为本公开实施例提供的一种电子设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
在三维(Three-Dimensional,3D)模型和游戏开发中,贴图是一种常用的用于给模型表面添加细节和纹理的图像,可以增强3D模型的视觉效果,例如,颜色、光照和纹理等。通常一个3D模型需要采用多种类型的贴图,例如,用于提供颜色信息的漫反射贴图、用于提供表面细节信息的法线贴图、用于控制模型表面的高光反射效果的高光贴图等,因此,在实时渲染时,图形处理器(Graphics Processing Unit,GPU)需要为每个像素进行多次采样,这无疑增加了渲染的计算负担,消耗了大量的性能,此外,每张贴图都需要占用显存,多张贴图就意味着更高的显存消耗。
因而,为了减少渲染时的纹理切换和调用次数,会对已渲染或者绘制的多张贴图进行特定的处理。将多张贴图合并为一张更大分辨率的贴图是一种常见的优化处理方式。这种贴图处理方法虽然能够保留原有的贴图信息和实现直观、简单的效果,但是,实际上没有减少贴图数据,存在增加显存占用的问题,进而影响到渲染性能,即存在无法在保证渲染质量的基础上提高渲染性能的缺陷,可能存在部分贴图空间浪费的状况,且对于一些只支持较小纹理尺寸的硬件,大尺寸的合并贴图可能无法使用,即存在不适合所有硬件的问题。
基于上述,本公开实施例提供了一种贴图处理方法、装置、电子设备及存储介质。主要应用在游戏中。
在本公开其中一种实施例中的贴图处理方法,可以运行于终端设备或者是服务器。其中,终端设备可以为本地终端设备。当贴图处理方法运行于服务器时,该方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。
在一可选的实时方式中,云交互系统下可以运行各种云应用,例如:云游戏。以云游戏为例,云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏程序的运行主体和游戏画面呈现主体是分离的,信息交互方法的储存与运行是在云游戏服务器上完成的,客户端设备的作用用于数据的接收、发送以及游戏画面的呈现,举例而言,客户端设备可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息处理的终端设备为云端的云游戏服务器。在进行游戏时,玩家操作客户端设备向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回客户端设备,最后,通过客户端设备进行解码并输出游戏画面。
在一可选的实施方式中,终端设备可以为本地终端设备。以游戏为例,本地终端设备存储有游戏程序并用于呈现游戏画面。本地终端设备用于通过图形用户界面与玩家进行交互,即,常规的通过电子设备下载安装游戏程序并运行。该本地终端设备将图形用户界面提供给玩家的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给玩家。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面以及控制图形用户界面在显示屏上的显示。
为便于理解,下面对本公开实施例的具体流程进行描述,请参阅图1,本公开实施例中贴图处理方法的一个实施例包括如下步骤:
步骤101,响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到多张指定贴图的像素值;
作为示例而非限定的是,上述多张指定贴图可为用于表示同一对象的不同部分的贴图(例如,金属贴图、粗糙度贴图和法线贴图等);上述多张指定贴图也可为一个三维模型实时渲染时需要采用的多张不同类型的贴图(例如,漫反射贴图、法线贴图和高光贴图等);上述多张指定贴图也可为类型相同的多张贴图。
上述多张指定贴图所采用的尺寸、坐标系和色彩空间均是相同的,使用相同的尺寸是为了在后续的渲染过程中能够正确对应到模型的纹理坐标上,避免贴图在渲染过程中出现错位或拉伸的问题,使用相同的坐标系是为了在后续的渲染过程中保证不同的贴图能够正确地映射到模型表面的相应区域,并且纹理的过渡效果更加平滑,使用相同的色彩空间是为了在后续的渲染过程中确保不同的贴图在渲染时颜色保持一致,避免出现明显的色彩偏差。在一种可行的实现方式中,根据应用程序和项目需求,上述多张指定贴图所采用的尺寸、坐标系和色彩空间可不相同。
可选的,上述步骤101的执行过程包括:加载多张指定贴图至指定位置,其中,上述指定位置为图像处理工具或编程环境,图像处理工具为用于处理和编辑图像的应用程序,例如,Adobe Photoshop、(GNU Image Manipulation Program,GIMP),上述编程环境指的是用于编写、运行和调试代码的开发环境,例如,Python(通过Python编程语言结合图像处理库(如PIL、OpenCV)可以进行图像处理编程);获取每张指定贴图的尺寸信息,其中,上述尺寸信息包括宽度信息和高度信息;对每张指定贴图的像素数据进行遍历、访问和像素值读取,得到每张指定贴图对应的像素值,进而得到多张指定贴图的像素值。
步骤102,对多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
可选的,一个像素点对应一个像素值,上述步骤102的执行过程包括:响应于每个像素点对应三个颜色通道或四个颜色通道,计算每张指定贴图对应的每个颜色通道对应的像素值的均值,得到每张指定贴图对应的多个通道均值,其中,一个通道均值对应一个颜色通道,三个颜色通道为红颜色通道、绿颜色通道和蓝颜色通道,四个颜色通道为红颜色通道、绿颜色通道、蓝颜色通道和透明颜色通道;将每张指定贴图对应的每个像素点对应的原始像素值减去对应的通道均值,得到多张指定贴图预处理后的数据;将多张指定贴图预处理后的数据进行组合,得到中心化处理后的数据。
可选的,一个像素点对应一个像素值,上述步骤102的执行过程包括:响应于每个像素点对应三个颜色通道或四个颜色通道,将每张指定贴图对应的每个像素点对应的所有颜色通道的像素值进行合并,得到每张指定贴图对应的每个像素点的合并后的通道像素值;将每张指定贴图对应的所有像素点的合并后的通道像素值进行累加,得到每张指定贴图对应的像素和值;将每张指定贴图对应的像素和值除以每张指定贴图对应的像素点总数量,得到每张指定贴图对应的通道均值,其中,三个颜色通道为红颜色通道、绿颜色通道和蓝颜色通道,四个颜色通道为红颜色通道、绿颜色通道、蓝颜色通道和透明颜色通道;将每张指定贴图对应的每个像素点对应的原始像素值减去对应的通道均值,得到多张指定贴图预处理后的数据;将多张指定贴图预处理后的数据进行组合,得到中心化处理后的数据。
响应于每个像素点对应一个颜色通道(即指定贴图为灰度图像),计算所有像素点的像素值的均值,得到目标均值;将每个像素点对应的原始像素值减去目标均值,得到多张指定贴图预处理后的数据;将多张指定贴图预处理后的数据进行组合,得到中心化处理后的数据。
步骤103,对中心化处理后的数据进行主成分分析,得到目标主成分特征;
其中,上述目标主成分特征可理解为以特征向量的形式表示,也可理解为包括多个特征向量。
可选的,计算中心化处理后的数据的协方差矩阵;对协方差矩阵进行特征值分解,得到分解后的特征值以及特征值对应的特征向量;从分解后的特征值以及特征值对应的特征向量中确定所需的特征向量,得到目标主成分特征。上述目标主成分特征包括多个特征向量;上述目标主成分特征中的特征向量的数量可根据所需压缩效果而定;上述目标主成分特征用于降低多张指定贴图的贴图数据的维度,以及提取出多张指定贴图的贴图数据中最重要的信息,以保留多张指定贴图的最重要原始信息。
步骤104,基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量;
可选的,将中心化处理后的数据和目标主成分特征进行点乘,得到点乘后的数据;将点乘后的数据与所有列对应的特征平均值进行相加,得到重建后的特征向量,将目标主成分特征近似地还原为原始数据。
步骤105,基于重建后的特征向量生成压缩后的贴图。
可选的,将重建后的特征向量转换为图像格式,得到压缩后的贴图。
可选的,上述重建后的特征向量为一维的数据数组,将重建后的特征向量转换二维像素矩阵;将二维像素矩阵转换为贴图,得到压缩后的贴图。具体的,确定压缩后的贴图的尺寸(即宽度和高度);根据压缩后的贴图的尺寸将重建后的特征向量转换二维像素矩阵;调用预置的图像处理库或者图像处理工具,基于指定参数将二维像素矩阵转换为贴图,得到压缩后的贴图,其中,上述指定参数包括图像格式和压缩质量。
上述贴图处理方法,通过多张指定贴图进行像素值处理、中心化处理和主成分分析,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
参见图2所示的一种贴图处理方法的另一实施例示意图,该贴图处理包括如下步骤:
步骤201,响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到多张指定贴图的像素值;
可选的,上述步骤201的执行过程包括:将多张指定贴图导入预置的图像处理库(例如,Python的Scikit-learn库);调用图像处理库中的访问函数对每张指定贴图对应的图像对象(表示图像数据的数据结构或类)的像素数据,得到每张指定贴图对应的每个像素点的像素值,即多张指定贴图的像素值。其中,若指定贴图为彩色贴图,则每个像素点的像素值由RGB(红、绿、蓝)通道或RGBA(红、绿、蓝、透明度)通道的值组成,即RGB值;若指定贴图为灰度贴图,则每个像素点的像素值为单通道的灰度值。
本实施例以多张指定贴图为3张指定贴图为例进行说明,3张指定贴图如图3所示。
步骤202,将多张指定贴图的像素值转换为二维数组;其中,二维数组中每列包括多个元素,每个元素对应一个像素点,每列对应一个特征;
可选的,将多张指定贴图中每张指定贴图的像素值转换为一维数组,得到多个一维数组,其中,一张指定贴图对应一个一维数组;将多个一维数组按列组合起来(即将每个一维数组作为列组合成一个二维数组),以构成一个新的二维数组,其中,二维数组中的每一列对应一张指定贴图的像素值,上述每列对应一个特征中的特征可理解为指定贴图对应的像素特征。
步骤203,对二维数组进行每列的平均值运算,得到每列对应的特征平均值;
可选的,计算二维数组中每列的像素值的均值,得到每列对应的特征平均值。具体的,将二维数组中每列对应的每个像素点对应的所有颜色通道的像素值进行合并,得到每列对应的每个像素点的合并后的通道像素值;将每张列对应的所有像素点的合并后的通道像素值进行累加,得到每列对应的像素和值;将每列对应的像素和值除以每列对应的像素点总数量,得到每列对应的特征平均值。
步骤204,将二维数组中每列的各元素减去对应列的特征平均值,得到中心化处理后的数据;
将二维数组中每列的各像素点减去所在列的特征平均值,待到所有列的所有像素点均减去所在列的特征平均值后得到的二维数组,即可得到中心化处理后的数据。
通过将多张指定贴图的像素值进行均值去除处理,以将贴图数据转换为适合主成分分析处理的数据格式,以确保主成分分析的准确性,以及能够将均值提取出来作为贴图恢复的参数。
步骤205,对中心化处理后的数据进行主成分分析,得到目标主成分特征;
在一种实现方式中,上述步骤205包括:计算中心化处理后的数据的协方差矩阵;对协方差矩阵进行特征值分解,得到分解后的特征值以及特征值对应的特征向量;按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征。
上述协方差矩阵用于指示中心化处理后的数据中不同维度之间的变化关系以及不同颜色通道之间的关系。上述特征向量用于指示一种变化模式,即数据变化的方向,对应的特征值则指示该变化模式的重要性,即数据变化的重要性。
上述预设压缩需求信息用于指示压缩后的贴图所需的新特征数量;上述预设压缩需求信息可为所需的压缩级别或信息保留程度,具体在此不做限定。上述目标主成分特征可作为将多张指定贴图的原始数据映射到低维空间中的主成分空间。
通过对中心化处理后的数据进行协方差矩阵的特征值分解以及主成分选择,提取了重要特征,能够在保持压缩后的图像质量的同时减少存储和传输的数据量,以便于后续有效地重构原始的高维图像数据,使得解压后的图像与原图相似度较高。
在一种实现方式中,上述按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征的步骤,包括:按照分解后的特征值从大到小的顺序对特征值对应的特征向量进行排序,得到特征向量序列;从特征向量序列中提取数量符合预设压缩需求信息的排列前位的特征向量,得到目标主成分特征。
作为示例而非限定的是,由于前4个主成分通常是解释方差最大的成分,包含了数据中最重要的变化模式和信息,能够实现数据的降维处理,能够更高效地存储和处理,同时可以减少计算负荷,能够通过分析主成分的载荷(指示原始特征对主成分的贡献程度),可推断出原始数据中的关键特征和因素,以及可以将高维数据映射到较低维度的空间中进行可视化,因而,上述符合预设压缩需求信息的数量优选为4。
作为示例而非限定的是,上述从特征向量序列中提取数量符合预设压缩需求信息的排列前位的特征向量可理解为:从特征向量序列中选取前4个特征向量作为目标主成分特征。
通过根据特征值大小选取目标主成分特征,提取了中心化处理后的数据最重要的变化模式或结构,保留了最显著的信息并降低数据的维度,实现了较高的压缩率,以及简化了数据表示。
步骤206,基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量;
在一种实现方式中,上述步骤206包括:将目标主成分特征与中心化处理后的数据进行相乘,得到投影后的数据;将投影后的数据与所有列对应的特征平均值进行相加,得到重建后的特征向量。
可选的,将目标主成分特征进行转置(transpose)处理,得到转置处理后的目标主成分特征;将转置处理后的目标主成分特征与中心化处理后的数据进行点乘,得到投影后的数据,其中,投影后的数据为一维数组。
通过将投影后的数据与所有列对应的特征平均值进行相加,以将目标主成分特征近似地还原为原始数据,其中,上述重建后的特征向量为一维数组,需要说明的是,还原的数据也不会完全等于原始数据,但它们在主要组件方面是相似的。
通过获取重建后的特征向量,能够将数据映射回原始数据空间,有利于保证压缩后的贴图的质量,确保了压缩贴图的质量和效率。
步骤207,基于重建后的特征向量生成压缩后的贴图;
可选的,上述重建后的特征向量为一维的数据数组,将重建后的特征向量转换二维像素矩阵;将二维像素矩阵转换为贴图,得到压缩后的贴图。具体的,确定压缩后的贴图的尺寸(即宽度和高度);根据压缩后的贴图的尺寸将重建后的特征向量转换二维像素矩阵;调用预置的图像处理库或者图像处理工具,基于指定参数将二维像素矩阵转换为贴图,得到压缩后的贴图,其中,上述指定参数包括图像格式和压缩质量。
对三张指定贴图压缩后的贴图,即压缩后的贴图可如图4所示。其中,基于压缩后的贴图渲染后的物体效果与原始物体效果的对比可如图5所示,图5中的(1)为原始物体效果,图5中的(1)为压缩后的贴图对应的物体效果。
步骤208,响应于信息的保存指令,读取每列对应的特征平均值以及特征向量序列中指定数量的特征向量;其中,指定数量的特征向量包括目标主成分特征和目标主成分特征之外的特征向量;
其中,上述指定数量为特征向量序列排列前位的指定数量;上述指定数量根据多张指定贴图的数量而定,一张指定贴图对应三个主成分,即三个特征向量,例如,多张指定贴图为3张指定贴图,则特征向量序列中指定数量的特征向量为特征向量序列中排列前9个特征向量,其中,目标主成分特征为特征向量序列中排列前4个特征向量。
步骤209,将指定数量的特征向量和每列对应的特征平均值存储至压缩后的贴图或者指定对象文件;
其中,上述指定对象文件可为Json文件。
可选的,上述将指定数量的特征向量和每列对应的特征平均值存储至压缩后的贴图的步骤包括:将指定数量的特征向量和每列对应的特征平均值映射至压缩后的贴图对应的数据存储区间,得到区间处理后的数据,其中,上述数据存储区间可理解为压缩后的贴图中适合存储的数据区间(为正值的数据区间),由于指定数量的特征向量和每列对应的特征平均值中可能存在负数,但是压缩后的贴图中存储的数据为正数,因而,需要进行数据区间的映射处理;将区间处理后的数据存储至压缩后的贴图。
可选的,将指定数量的特征向量和每列对应的特征平均值存储至指定对象文件的步骤包括:将指定数量的特征向量转换为包含四个浮点数的向量(float4)数据,将每列对应的特征平均值转换为包含三个浮点数的向量(float3)数据,得到转换后的数据;将转换后的数据存储至指定对象文件。
通过将指定数量的特征向量和每列对应的特征平均值作为参数存储至压缩后的贴图或者指定对象文件,不占用显存,减少性能消耗,以及便于数据的读取、压缩后的贴图的解压处理。
步骤210,响应于针对压缩后的贴图的解压指令,读取中心化处理后的数据,以及读取目标存储空间中存储的指定数量的特征向量和每列对应的特征平均值;其中,目标存储空间用于指示压缩后的贴图或者指定对象文件;
其中,若是从压缩后的贴图读取存储的指定数量的特征向量和每列对应的特征平均值,则将读取的存储的指定数量的特征向量和每列对应的特征平均值映射至对应的数据区间,以将存储的指定数量的特征向量和每列对应的特征平均值恢复到原来的数据区间。
步骤211,基于中心化处理后的数据、指定数量的特征向量和每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图。
通过从指示压缩后的贴图或者指定对象文件读取数据,并进行逆变换处理,得到还原后的多张指定贴图,能够便捷地进行数据的读取和处理,提高了数据的处理效果,以及较大程度地减少了内存,减少了性能消耗。
在一种实现方式中,上述步骤211包括:基于中心化处理后的数据、指定数量的特征向量和每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图的步骤,包括:将中心化处理后的数据和指定数量的特征向量中各指定贴图对应的特征向量进行点乘,得到各指定贴图对应的投影后数据;将各指定贴图对应的投影后数据与对应列的平均值进行相加,得到每张指定贴图对应的还原数据;将每张指定贴图对应的还原数据进行数据转换,得到还原后的多张指定贴图。
例如,多张指定贴图为3张指定贴图,中心化处理后的数据为data,通过函数float4samplerBase=data*2-1将中心化处理后的数据规范化,以将其范围从[0,1]转换为[-1,1],得到数据规范化的中心化处理后的数据samplerBase,指定数量的特征向量为component_1、component_2、component_3、component_4、component_5、component_6、component_7、component_8和component_9,列的平均值分别为mean_1、mean_2和mean_3,通过texture_1=mean_1+float3(dot(component_1,samplerBase),dot(component_2,samplerBase),dot(component_3,samplerBase)),得到第一张指定贴图对应的还原数据,其中,dot函数用于将主成分对数据规范化的中心化处理后的数据samplerBase点乘得到每个颜色通道的值,即各指定贴图对应的投影后数据,通过texture_1=saturate(texture_1)以将第一张指定贴图texture_1对应的所有通道值都在[0,1]范围内,从而得到还原后的第一张指定贴图;同理可得还原后的第二张指定贴图(texture_2=mean_2+float3(dot(component_4,samplerBase),dot(component_5,samplerBase),dot(component_6,samplerBase));texture_2=saturate(texture_2))和还原后的第三张指定贴图(texture_3=mean_3+float3(dot(component_7,samplerBase),dot(compone nt_8,samplerBase),dot(component_9,samplerBase));texture_3=saturate(texture_3)),在此不进行对应详细说明。
通过特征相乘并与平均值相加得到还原后的多张指定贴图,能够快速、高效地对压缩后的贴图进行解压,并保证了解压后的贴图的质量。
需要说明的是,本发明实施例提供的贴图处理方法实现以下效果:减少采样次数:通过将多张指定贴图压缩成一张得到压缩后的贴图,可以显著减少渲染时GPU需要进行的采样次数,可以直接提高渲染的速度和效率,尤其在处理复杂3D场景或大规模开放世界游戏时更为显著;节省显存:主成分分析(Principal Component Analysis,PCA)压缩可以大大减少所需的贴图数据,从而显著减少显存的使用,这不仅可以提高性能,还可以为其他显存密集型任务(如复杂的后处理效果或高分辨率渲染)释放更多的显存资源;减少功耗:减少采样次数和显存使用也可以帮助降低设备的功耗,这对于移动设备和电池供电的设备来说尤其重要,因为它可以帮助延长设备的电池寿命;平衡视觉质量和性能:虽然PCA压缩可能会引入一些视觉质量的损失,但通过适当的参数调整,我们可以在保持接受的视觉质量的同时,实现显著的性能提升,能够平衡渲染效果的质量和实时性能的需求。因此,本发明实施例提供的贴图处理方法,无论从性能、显存管理、电池寿命,还是开发效率等方面,都可以带来明显的有益效果。
上述贴图处理方法,通过多张指定贴图进行像素值处理、中心化处理和主成分分析,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
对应于上述方法实施例,参见图6所示的一种贴图处理装置的示意图,该装置包括:
解析模块601,用于响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到多张指定贴图的像素值;
中心化模块602,用于对多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
分析模块603,用于对中心化处理后的数据进行主成分分析,得到目标主成分特征;
重建模块604,用于基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量;
生成模块605,用于基于重建后的特征向量生成压缩后的贴图。
上述贴图处理装置,通过多张指定贴图进行像素值处理、中心化处理和主成分分析,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
可选的,中心化模块602还可以用于:
将多张指定贴图的像素值转换为二维数组;其中,二维数组中每列包括多个元素,每个元素对应一个像素点,每列对应一个特征;
对二维数组进行每列的平均值运算,得到每列对应的特征平均值;
将二维数组中每列的各元素减去对应列的特征平均值,得到中心化处理后的数据。
可选的,重建模块604还可以用于:
将目标主成分特征与中心化处理后的数据进行相乘,得到投影后的数据;
将投影后的数据与所有列对应的特征平均值进行相加,得到重建后的特征向量。
可选的,分析模块603还可以用于:
计算中心化处理后的数据的协方差矩阵;
对协方差矩阵进行特征值分解,得到分解后的特征值以及特征值对应的特征向量;
按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征。
可选的,分析模块603还可以用于:
按照分解后的特征值从大到小的顺序对特征值对应的特征向量进行排序,得到特征向量序列;
从特征向量序列中提取数量符合预设压缩需求信息的排列前位的特征向量,得到目标主成分特征。
可选的,贴图处理装置还包括:
第一读取模块606,用于响应于信息的保存指令,读取每列对应的特征平均值以及特征向量序列中指定数量的特征向量;其中,指定数量的特征向量包括目标主成分特征和目标主成分特征之外的特征向量;
存储模块607,用于将指定数量的特征向量和每列对应的特征平均值存储至压缩后的贴图或者指定对象文件。
可选的,贴图处理装置还包括:
第二读取模块608,用于响应于针对压缩后的贴图的解压指令,读取中心化处理后的数据,以及读取目标存储空间中存储的指定数量的特征向量和每列对应的特征平均值;其中,目标存储空间用于指示压缩后的贴图或者指定对象文件;
逆变换处理模块609,用于基于中心化处理后的数据、指定数量的特征向量和每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图。
可选的,逆变换处理模块609还可以用于:
将中心化处理后的数据和指定数量的特征向量中各指定贴图对应的特征向量进行点乘,得到各指定贴图对应的投影后数据;
将各指定贴图对应的投影后数据与对应列的平均值进行相加,得到每张指定贴图对应的还原数据;
将每张指定贴图对应的还原数据进行数据转换,得到还原后的多张指定贴图。
本实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述贴图处理方法。该电子设备可以是服务器,也可以是终端设备。
参见图7所示,该电子设备包括处理器700和存储器701,该存储器701存储有能够被处理器700执行的机器可执行指令,该处理器700执行机器可执行指令以实现上述贴图处理方法。
进一步地,图7所示的电子设备还包括总线702和通信接口703,处理器700、通信接口703和存储器701通过总线702连接。
其中,存储器701可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口703(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线702可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器700可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器700中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器700可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本公开实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本公开实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器701,处理器700读取存储器701中的信息,结合其硬件完成如下步骤:
响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到多张指定贴图的像素值;
对多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
对中心化处理后的数据进行主成分分析,得到目标主成分特征;
基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量;
基于重建后的特征向量生成压缩后的贴图。
通过多张指定贴图进行像素值处理、中心化处理和主成分分析,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
上述对多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据的步骤,包括:
将多张指定贴图的像素值转换为二维数组;其中,二维数组中每列包括多个元素,每个元素对应一个像素点,每列对应一个特征;
对二维数组进行每列的平均值运算,得到每列对应的特征平均值;
将二维数组中每列的各元素减去对应列的特征平均值,得到中心化处理后的数据。
通过将多张指定贴图的像素值进行均值去除处理,以将贴图数据转换为适合主成分分析处理的数据格式,以确保主成分分析的准确性,以及能够将均值提取出来作为贴图恢复的参数。
上述基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量的步骤,包括:
将目标主成分特征与中心化处理后的数据进行相乘,得到投影后的数据;
将投影后的数据与所有列对应的特征平均值进行相加,得到重建后的特征向量。
通过获取重建后的特征向量,能够将数据映射回原始数据空间,有利于保证压缩后的贴图的质量,确保了压缩贴图的质量和效率。
上述对中心化处理后的数据进行主成分分析,得到目标主成分特征的步骤,包括:
计算中心化处理后的数据的协方差矩阵;
对协方差矩阵进行特征值分解,得到分解后的特征值以及特征值对应的特征向量;
按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征。
通过对中心化处理后的数据进行协方差矩阵的特征值分解以及主成分选择,提取了重要特征,能够在保持压缩后的图像质量的同时减少存储和传输的数据量,以便于后续有效地重构原始的高维图像数据,使得解压后的图像与原图相似度较高。
上述按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征的步骤,包括:
按照分解后的特征值从大到小的顺序对特征值对应的特征向量进行排序,得到特征向量序列;
从特征向量序列中提取数量符合预设压缩需求信息的排列前位的特征向量,得到目标主成分特征。
通过根据特征值大小选取目标主成分特征,提取了中心化处理后的数据最重要的变化模式或结构,保留了最显著的信息并降低数据的维度,实现了较高的压缩率,以及简化了数据表示。
上述贴图处理方法还包括:
响应于信息的保存指令,读取每列对应的特征平均值以及特征向量序列中指定数量的特征向量;其中,指定数量的特征向量包括目标主成分特征和目标主成分特征之外的特征向量;
将指定数量的特征向量和每列对应的特征平均值存储至压缩后的贴图或者指定对象文件。
通过将指定数量的特征向量和每列对应的特征平均值作为参数存储至压缩后的贴图或者指定对象文件,不占用显存,减少性能消耗,以及便于数据的读取、压缩后的贴图的解压处理。
上述贴图处理方法还包括:
响应于针对压缩后的贴图的解压指令,读取中心化处理后的数据,以及读取目标存储空间中存储的指定数量的特征向量和每列对应的特征平均值;其中,目标存储空间用于指示压缩后的贴图或者指定对象文件;
基于中心化处理后的数据、指定数量的特征向量和每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图。
通过从指示压缩后的贴图或者指定对象文件读取数据,并进行逆变换处理,得到还原后的多张指定贴图,能够便捷地进行数据的读取和处理,提高了数据的处理效果,以及较大程度地减少了内存,减少了性能消耗。
上述基于中心化处理后的数据、指定数量的特征向量和每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图的步骤,包括:
将中心化处理后的数据和指定数量的特征向量中各指定贴图对应的特征向量进行点乘,得到各指定贴图对应的投影后数据;
将各指定贴图对应的投影后数据与对应列的平均值进行相加,得到每张指定贴图对应的还原数据;
将每张指定贴图对应的还原数据进行数据转换,得到还原后的多张指定贴图。
通过特征相乘并与平均值相加得到还原后的多张指定贴图,能够快速、高效地对压缩后的贴图进行解压,并保证了解压后的贴图的质量。
本实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述贴图处理方法的如下步骤:
响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到多张指定贴图的像素值;
对多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
对中心化处理后的数据进行主成分分析,得到目标主成分特征;
基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量;
基于重建后的特征向量生成压缩后的贴图。
通过多张指定贴图进行像素值处理、中心化处理和主成分分析,能够较大程度地减少所需的贴图数据,显著地减少显存的使用,能够在保持接受的视觉质量的同时实现显著的性能提升,能够在保证渲染质量的基础上提高渲染性能。
上述对多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据的步骤,包括:
将多张指定贴图的像素值转换为二维数组;其中,二维数组中每列包括多个元素,每个元素对应一个像素点,每列对应一个特征;
对二维数组进行每列的平均值运算,得到每列对应的特征平均值;
将二维数组中每列的各元素减去对应列的特征平均值,得到中心化处理后的数据。
通过将多张指定贴图的像素值进行均值去除处理,以将贴图数据转换为适合主成分分析处理的数据格式,以确保主成分分析的准确性,以及能够将均值提取出来作为贴图恢复的参数。
上述基于中心化处理后的数据和目标主成分特征进行特征向量重建,得到重建后的特征向量的步骤,包括:
将目标主成分特征与中心化处理后的数据进行相乘,得到投影后的数据;
将投影后的数据与所有列对应的特征平均值进行相加,得到重建后的特征向量。
通过获取重建后的特征向量,能够将数据映射回原始数据空间,有利于保证压缩后的贴图的质量,确保了压缩贴图的质量和效率。
上述对中心化处理后的数据进行主成分分析,得到目标主成分特征的步骤,包括:
计算中心化处理后的数据的协方差矩阵;
对协方差矩阵进行特征值分解,得到分解后的特征值以及特征值对应的特征向量;
按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征。
通过对中心化处理后的数据进行协方差矩阵的特征值分解以及主成分选择,提取了重要特征,能够在保持压缩后的图像质量的同时减少存储和传输的数据量,以便于后续有效地重构原始的高维图像数据,使得解压后的图像与原图相似度较高。
上述按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征的步骤,包括:
按照分解后的特征值从大到小的顺序对特征值对应的特征向量进行排序,得到特征向量序列;
从特征向量序列中提取数量符合预设压缩需求信息的排列前位的特征向量,得到目标主成分特征。
通过根据特征值大小选取目标主成分特征,提取了中心化处理后的数据最重要的变化模式或结构,保留了最显著的信息并降低数据的维度,实现了较高的压缩率,以及简化了数据表示。
上述贴图处理方法还包括:
响应于信息的保存指令,读取每列对应的特征平均值以及特征向量序列中指定数量的特征向量;其中,指定数量的特征向量包括目标主成分特征和目标主成分特征之外的特征向量;
将指定数量的特征向量和每列对应的特征平均值存储至压缩后的贴图或者指定对象文件。
通过将指定数量的特征向量和每列对应的特征平均值作为参数存储至压缩后的贴图或者指定对象文件,不占用显存,减少性能消耗,以及便于数据的读取、压缩后的贴图的解压处理。
上述贴图处理方法还包括:
响应于针对压缩后的贴图的解压指令,读取中心化处理后的数据,以及读取目标存储空间中存储的指定数量的特征向量和每列对应的特征平均值;其中,目标存储空间用于指示压缩后的贴图或者指定对象文件;
基于中心化处理后的数据、指定数量的特征向量和每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图。
通过从指示压缩后的贴图或者指定对象文件读取数据,并进行逆变换处理,得到还原后的多张指定贴图,能够便捷地进行数据的读取和处理,提高了数据的处理效果,以及较大程度地减少了内存,减少了性能消耗。
上述基于中心化处理后的数据、指定数量的特征向量和每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图的步骤,包括:
将中心化处理后的数据和指定数量的特征向量中各指定贴图对应的特征向量进行点乘,得到各指定贴图对应的投影后数据;
将各指定贴图对应的投影后数据与对应列的平均值进行相加,得到每张指定贴图对应的还原数据;
将每张指定贴图对应的还原数据进行数据转换,得到还原后的多张指定贴图。
通过特征相乘并与平均值相加得到还原后的多张指定贴图,能够快速、高效地对压缩后的贴图进行解压,并保证了解压后的贴图的质量。
本公开实施例所提供的贴图处理方法、装置、电子设备及存储介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本公开实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本公开中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本公开的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (11)
1.一种贴图处理方法,其特征在于,所述方法包括:
响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到所述多张指定贴图的像素值;
对所述多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
对所述中心化处理后的数据进行主成分分析,得到目标主成分特征;
基于所述中心化处理后的数据和所述目标主成分特征进行特征向量重建,得到重建后的特征向量;
基于所述重建后的特征向量生成压缩后的贴图。
2.根据权利要求1所述的方法,其特征在于,所述对所述多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据的步骤,包括:
将所述多张指定贴图的像素值转换为二维数组;其中,所述二维数组中每列包括多个元素,每个元素对应一个像素点,每列对应一个特征;
对所述二维数组进行每列的平均值运算,得到每列对应的特征平均值;
将所述二维数组中每列的各元素减去对应列的特征平均值,得到中心化处理后的数据。
3.根据权利要求2所述的方法,其特征在于,所述基于所述中心化处理后的数据和所述目标主成分特征进行特征向量重建,得到重建后的特征向量的步骤,包括:
将所述目标主成分特征与所述中心化处理后的数据进行相乘,得到投影后的数据;
将所述投影后的数据与所有列对应的特征平均值进行相加,得到重建后的特征向量。
4.根据权利要求1所述的方法,其特征在于,所述对所述中心化处理后的数据进行主成分分析,得到目标主成分特征的步骤,包括:
计算所述中心化处理后的数据的协方差矩阵;
对所述协方差矩阵进行特征值分解,得到分解后的特征值以及特征值对应的特征向量;
按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征。
5.根据权利要求4所述的方法,其特征在于,所述按照预设压缩需求信息,对分解后的特征值以及特征值对应的特征向量进行筛选,得到目标主成分特征的步骤,包括:
按照分解后的特征值从大到小的顺序对特征值对应的特征向量进行排序,得到特征向量序列;
从所述特征向量序列中提取数量符合预设压缩需求信息的排列前位的特征向量,得到目标主成分特征。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
响应于信息的保存指令,读取每列对应的特征平均值以及所述特征向量序列中指定数量的特征向量;其中,所述指定数量的特征向量包括目标主成分特征和所述目标主成分特征之外的特征向量;
将所述指定数量的特征向量和每列对应的特征平均值存储至所述压缩后的贴图或者指定对象文件。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
响应于针对所述压缩后的贴图的解压指令,读取所述中心化处理后的数据,以及读取目标存储空间中存储的所述指定数量的特征向量和所述每列对应的特征平均值;其中,所述目标存储空间用于指示所述压缩后的贴图或者所述指定对象文件;
基于所述中心化处理后的数据、所述指定数量的特征向量和所述每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图。
8.根据权利要求7所述的方法,其特征在于,所述基于所述中心化处理后的数据、所述指定数量的特征向量和所述每列对应的平均值进行逆变换处理,得到还原后的多张指定贴图的步骤,包括:
将所述中心化处理后的数据和所述指定数量的特征向量中各指定贴图对应的特征向量进行点乘,得到各指定贴图对应的投影后数据;
将所述各指定贴图对应的投影后数据与对应列的平均值进行相加,得到每张指定贴图对应的还原数据;
将每张指定贴图对应的还原数据进行数据转换,得到还原后的多张指定贴图。
9.一种贴图处理装置,其特征在于,所述贴图处理装置包括:
解析模块,用于响应于贴图的压缩指令,对多张指定贴图的像素值分别进行解析,得到所述多张指定贴图的像素值;
中心化模块,用于对所述多张指定贴图的像素值进行中心化处理,得到中心化处理后的数据;
分析模块,用于对所述中心化处理后的数据进行主成分分析,得到目标主成分特征;
重建模块,用于基于所述中心化处理后的数据和所述目标主成分特征进行特征向量重建,得到重建后的特征向量;
生成模块,用于基于所述重建后的特征向量生成压缩后的贴图。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-8任一项所述的贴图处理方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-8任一项所述的贴图处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311082832.8A CN117392304A (zh) | 2023-08-25 | 2023-08-25 | 贴图处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311082832.8A CN117392304A (zh) | 2023-08-25 | 2023-08-25 | 贴图处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117392304A true CN117392304A (zh) | 2024-01-12 |
Family
ID=89436239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311082832.8A Pending CN117392304A (zh) | 2023-08-25 | 2023-08-25 | 贴图处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117392304A (zh) |
-
2023
- 2023-08-25 CN CN202311082832.8A patent/CN117392304A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11257279B2 (en) | Systems and methods for providing non-parametric texture synthesis of arbitrary shape and/or material data in a unified framework | |
US8180165B2 (en) | Accelerated screen codec | |
CN109919869A (zh) | 一种图像增强方法、装置及存储介质 | |
CN111127631B (zh) | 基于单图像的三维形状和纹理重建方法、系统及存储介质 | |
CN102222314B (zh) | 用并行处理从源位图标识并提取模式来加速位图远程发送 | |
DE102013222685B4 (de) | System, Verfahren und Computer-Programm-Produkt zum Abtasten einer hierarchischen Tiefe-Karte | |
TW200818054A (en) | Tile based precision rasterization in graphics pipeline | |
CN107077828A (zh) | 对颜色查找表的大小进行压缩 | |
DE102021207678A1 (de) | Streamen eines komprimierten lichtfelds | |
US20090309877A1 (en) | Soft shadow rendering | |
CN110517352B (zh) | 一种物体的三维重建方法、存储介质、终端及系统 | |
US9905037B2 (en) | System, method, and computer program product for rejecting small primitives | |
CN112288665A (zh) | 图像融合的方法、装置、存储介质及电子设备 | |
Yue et al. | SIFT-based image compression | |
WO2024098685A1 (zh) | 虚拟人物面部驱动方法、装置、终端设备和可读存储介质 | |
US20230033319A1 (en) | Method, apparatus and device for processing shadow texture, computer-readable storage medium, and program product | |
CN113822794A (zh) | 一种图像风格转换方法、装置、计算机设备和存储介质 | |
WO2022121653A1 (zh) | 确定透明度的方法、装置、电子设备和存储介质 | |
Willmott | Rapid simplification of multi-attribute meshes | |
CN115836317A (zh) | 增量三元组索引压缩 | |
CN112991170A (zh) | 图像超分辨率重建的方法、装置、终端及存储介质 | |
CN117392304A (zh) | 贴图处理方法、装置、电子设备及存储介质 | |
CN112150362A (zh) | 一种图片前处理解决方法 | |
CN114998504B (zh) | 二维图像光照渲染方法、装置、系统和电子装置 | |
CN115713585A (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 |