CN109767379B - 数据归一化的处理方法、装置、存储介质和电子设备 - Google Patents
数据归一化的处理方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN109767379B CN109767379B CN201811520981.7A CN201811520981A CN109767379B CN 109767379 B CN109767379 B CN 109767379B CN 201811520981 A CN201811520981 A CN 201811520981A CN 109767379 B CN109767379 B CN 109767379B
- Authority
- CN
- China
- Prior art keywords
- data
- group
- rendering pipeline
- color space
- taking
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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
- Image Generation (AREA)
- Image Processing (AREA)
Abstract
本公开涉及一种数据归一化的处理方法、装置、存储介质和电子设备,涉及数据处理技术领域,该方法包括:对待处理的第一组数据进行预处理,以得到第二组数据,第二组数据中的数据个数为C的N倍,C为图形处理单元GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数,将第二组数据与预设的N个顶点坐标作为渲染管线的输入,通过渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像,获取目标图像中与N个顶点坐标对应的N个目标像素点,将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据,每个目标像素点对应C个色彩空间参数。能够提高数据归一化的处理速度。
Description
技术领域
本公开涉及数据处理技术领域,具体地,涉及一种数据归一化的处理方法、装置、存储介质和电子设备。
背景技术
随着互联网、云计算等信息技术的迅猛发展,相应带来的数据量也是呈现爆发式的增长。在对大量的数据进行分析和挖掘的过程中,经常需要对数据进行归一化的处理,以使数据映射到0至1的范围之内。现有技术中,当数据量很大,或者归一化函数较复杂时,由于执行语言(例如:JavaScript)本身的性能瓶颈和CPU(英文:Central Processing Unit,中文:中央处理器)上的有限的计算资源,导致归一化的处理耗时较长,并且会一直占用了CPU的计算资源。
发明内容
本公开的目的是提供一种数据归一化的处理方法、装置、存储介质和电子设备,用以解决现有技术中数据归一化处理耗时长,占用计算资源的问题。
为了实现上述目的,根据本公开实施例的第一方面,提供一种数据归一化的处理方法,所述方法包括:
对待处理的第一组数据进行预处理,以得到第二组数据,所述第二组数据中的数据个数为C的N倍,C为图形处理单元GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数;
将所述第二组数据与预设的N个顶点坐标作为所述渲染管线的输入,通过所述渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取所述渲染管线输出的目标图像;
获取所述目标图像中与所述N个顶点坐标对应的N个目标像素点;
将所述N个目标像素点对应的色彩空间参数作为所述第一组数据对应的归一化数据,每个所述目标像素点对应C个色彩空间参数。
可选的,所述对待处理的第一组数据进行预处理,以得到第二组数据,包括:
将所述第一组数据中的数据个数除以C后取余数;
在所述第一组数据的预设位置处添加所述余数个零,以获得所述第二组数据,所述预设位置为所述第一组数据的起始处或结尾处。
可选的,所述将所述N个目标像素点对应的色彩空间参数作为所述第一组数据对应的归一化数据,包括:
将所述N个目标像素点对应的色彩空间参数作为第三组数据,所述第三组数据中的数据个数为C*N;
删除所述第三组数据中位于所述预设位置处的数据,以得到第四组数据;
将所述第四组数据作为所述第一组数据对应的所述归一化数据。
可选的,所述将所述第二组数据与预设的N个顶点坐标作为所述渲染管线的输入,通过所述渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取所述渲染管线输出的目标图像,包括:
将所述N个顶点坐标作为所述渲染管线的顶点着色器的输入,获取所述顶点着色器输出的以所述N个顶点坐标作为顶点的几何图形;
对所述几何图形进行光栅化处理,以得到多个片元;
将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,获取所述多个片元着色器输出的所述目标图像,所述多个片元着色器中的每个所述片元着色器均被配置为执行所述归一化函数。
可选的,所述将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,获取所述多个片元着色器输出的所述目标图像,包括:
将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,以调用所述GPU的多个并发线程分别对所述多个片元进行着色;
将经过着色的所述多个片元组成所述目标图像,作为所述多个片元着色器的输出。
根据本公开实施例的第二方面,提供一种数据归一化的处理装置,所述装置包括:
预处理模块,用于对待处理的第一组数据进行预处理,以得到第二组数据,所述第二组数据中的数据个数为C的N倍,C为图形处理单元GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数;
渲染模块,用于将所述第二组数据与预设的N个顶点坐标作为所述渲染管线的输入,通过所述渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取所述渲染管线输出的目标图像;
获取模块,用于获取所述目标图像中与所述N个顶点坐标对应的N个目标像素点;
归一化模块,用于将所述N个目标像素点对应的色彩空间参数作为所述第一组数据对应的归一化数据,每个所述目标像素点对应C个色彩空间参数。
可选的,所述预处理模块包括:
取余子模块,用于将所述第一组数据中的数据个数除以C后取余数;
补零子模块,用于在所述第一组数据的预设位置处添加所述余数个零,以获得所述第二组数据,所述预设位置为所述第一组数据的起始处或结尾处。
可选的,所述归一化模块包括:
归一化子模块,用于将所述N个目标像素点对应的色彩空间参数作为第三组数据,所述第三组数据中的数据个数为C*N;
删除子模块,用于删除所述第三组数据中位于所述预设位置处的数据,以得到第四组数据;
确定子模块,用于将所述第四组数据作为所述第一组数据对应的所述归一化数据。
可选的,所述渲染模块包括:
顶点着色子模块,用于将所述N个顶点坐标作为所述渲染管线的顶点着色器的输入,获取所述顶点着色器输出的以所述N个顶点坐标作为顶点的几何图形;
光栅化子模块,用于对所述几何图形进行光栅化处理,以得到多个片元;
片元着色子模块,用于将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,获取所述多个片元着色器输出的所述目标图像,所述多个片元着色器中的每个所述片元着色器均被配置为执行所述归一化函数。
可选的,所述片元着色子模块用于:
将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,以调用所述GPU的多个并发线程分别对所述多个片元进行着色;
将经过着色的所述多个片元组成所述目标图像,作为所述多个片元着色器的输出。
据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面提供的数据归一化的处理方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现第一方面提供的数据归一化的处理方法的步骤。
通过上述技术方案,本公开首先对待处理的第一组数据进行预处理,以得到数据个数为C的N倍的第二组数据,其中C为GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数,之后将第二组数据和预设的N个顶点坐标作为渲染管线的输入,利用渲染管线中多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像,再获取目标图像中与N个顶点坐标所指示的N个目标像素点,每个目标像素点都包括C个色彩空间参数,最后将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据。能够利用GPU的并行计算能力,实现对大量数据的归一化处理,降低了计算资源的占用率,提高了数据归一化的处理速度。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种数据归一化的处理方法的流程图;
图2是根据一示例性实施例示出的另一种数据归一化的处理方法的流程图;
图3是根据一示例性实施例示出的另一种数据归一化的处理方法的流程图;
图4是根据一示例性实施例示出的另一种数据归一化的处理方法的框图;
图5是根据一示例性实施例示出的一种数据归一化的处理装置的框图;
图6是根据一示例性实施例示出的另一种数据归一化的处理装置的框图;
图7是根据一示例性实施例示出的另一种数据归一化的处理装置的框图;
图8是根据一示例性实施例示出的另一种数据归一化的处理装置的框图;
图9是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在介绍本公开提供的数据归一化的处理方法、装置、存储介质和电子设备之前,首先对本公开中各个实施例所涉及的应用场景进行介绍,该应用场景可以包括在web(英文:网络)端对数据进行归一化处理。现有技术中,通常是由CPU来完成归一化处理,虽然CPU的算术运算单元计算能力强,但CPU上设置的算术运算单元的数量有限,并且算术运算单元的执行逻辑是串行执行的,在对较大数据量进行归一化处理时,会导致耗时较长,并且会一直占用CPU的算术运算单元。本公开通过WebGL(英文:Web Graphics Library,中文:Web图形库)协议来调用GPU(英文:Graphics Processing Unit,中文:图形处理器),由于GPU包含了大量的算术运算单元,并且算术运算单元的执行逻辑均为并发执行的,针对数据量较大场景,各个数据之间是不相关的,因此可以将数据分组,并行执行归一化函数,从而快速实现数据归一化的处理。
图1是根据一示例性实施例示出的一种数据归一化的处理方法的流程图,如图1所示,该方法包括:
步骤101,对待处理的第一组数据进行预处理,以得到第二组数据,第二组数据中的数据个数为C的N倍,C为图形处理单元GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数。
举例来说,用户可以将需要进行归一化处理的第一组数据上传至web端,由web端对待处理的第一组数据先进行预处理,以得到第二组数据。第二组数据中的数据个数为C的N倍(即第二组数据中的数据个数为:C*N个)。其中,C为GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数。需要说明的是,渲染管线是GPU内部实现对图形渲染的处理单元,渲染管线能够处理的色彩空间可以是RGB(英文:Red Green Blue,中文:红绿蓝)色彩空间,或者RGBA(英文:Red Green Blue Alpha,中文:红绿蓝Alpha)色彩空间,也可以是其他种类的色彩空间,RGB色彩空间的维度为3,RGBA色彩空间的维度为4。对第一组数据的预处理例如可以先确定第一组数据的数据个数,然后再根据色彩空间的维度,对第一组数据进行补零操作,使补零后的第二组数据中的数据个数为色彩空间的维度的整数倍。
步骤102,将第二组数据与预设的N个顶点坐标作为渲染管线的输入,通过渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像。
示例的,通过WebGL协议来调用GPU中的渲染管线,渲染管线中包括了多个片元着色器,多个片元着色器之间是并行执行的,并且每个片元着色器都能够执行预设的归一化函数。其中,归一化函数可以根据用户的具体需求来确定,也可以由片元着色器预先设置,例如,用户在上传第一组数据的同时,还可以设置归一化函数,再将归一化函数写入渲染管线中的每一个片元着色器中。首先将第二组数据与预设的N个顶点坐标作为渲染管线的输入,渲染管线中的多个片元着色器并行执行归一化函数,最后渲染管线输出的完成渲染的图像即为目标图像。由于多个片元着色器过程是并行执行的,并且能够执行归一化函数,因此能够快速实现图像的渲染,从而快速实现第一组数据的归一化处理。其中,N个顶点坐标用于指示目标图像的范围,即N个顶点坐标对应目标图像的N个顶点,N个顶点坐标的分布可以是任一种位置关系。以N=4为例,N个顶点坐标可以分布在与横坐标轴平行的一条线上:(1,2)、(3,2)、(6,2)、(7,2),N个顶点坐标也可以分布在其他位置上:(2,5)、(3,1)、(8,6)、(10,3)。
步骤103,获取目标图像中与N个顶点坐标对应的N个目标像素点。
步骤104,将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据,每个目标像素点对应C个色彩空间参数。
举例来说,在获取目标图像后,根据N个顶点坐标,将目标图像中N个顶点坐标所指示的像素点确定为N个目标像素点,每个目标像素点对应的色彩空间参数的个数均为C,例如:若渲染管线能够处理的色彩空间是RGB色彩空间,那么每个目标像素点都包括三个色彩空间参数,即该目标像素点在红、绿和蓝三个颜色通道上的取值。若渲染管线能够处理的色彩空间是RGBA色彩空间,那么每个目标像素点都包括四个色彩空间参数,即该目标像素点在红、绿和蓝三个颜色通道上的取值,和在alpha(不透明度)通道上的取值。每个目标像素点对应的色彩空间参数的个数均为C,那么N个目标像素点对应的色彩空间参数共有C*N个,C*N个色彩空间参数即为第一组数据对应的归一化数据。
综上所述,本公开首先对待处理的第一组数据进行预处理,以得到数据个数为C的N倍的第二组数据,其中C为GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数,之后将第二组数据和预设的N个顶点坐标作为渲染管线的输入,利用渲染管线中多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像,再获取目标图像中与N个顶点坐标所指示的N个目标像素点,每个目标像素点都包括C个色彩空间参数,最后将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据。能够利用GPU的并行计算能力,实现对大量数据的归一化处理,降低了计算资源的占用率,提高了数据归一化的处理速度。
图2是根据一示例性实施例示出的另一种数据归一化的处理方法的流程图,如图2所示,步骤101可以通过以下方式来实现:
步骤1011,将第一组数据中的数据个数除以C后取余数。
步骤1012,在第一组数据的预设位置处添加余数个零,以获得第二组数据,预设位置为第一组数据的起始处或结尾处。
举例来说,对第一组数据的预处理可以通过对第一组数据进行补零来实现。首先确定第一组数据中的数据个数M,再将M除以C后取余数R,之后在第一组数据的预设位置处添加R个零,以获得数据个数为C*N的第二组数据,其中C*N=M+R。其中,预设位置可以是第一组数据的起始处或结尾处,也可以按照一定的规律在第一组数据中补零,例如以3为间隔来补零。例如:第一组数据为:10、20、30、40、50、60、70、80、90、100,第一组数据中的数据个数M=10,色彩空间的维度C=4,那么余数R=2,那么可以在第一组数据的结尾处补2个零,那么第二组数据为:10、20、30、40、50、60、70、80、90、100、0、0,第二组数据中的数据个数C*N=12,N=3。
图3是根据一示例性实施例示出的另一种数据归一化的处理方法的流程图,如图3所示,步骤104可以通过以下步骤来实现:
步骤1041,将N个目标像素点对应的色彩空间参数作为第三组数据,第三组数据中的数据个数为C*N。
步骤1042,删除第三组数据中位于预设位置处的数据,以得到第四组数据。
步骤1043,将第四组数据作为第一组数据对应的归一化数据。
示例的,步骤101中获取的第二组数据中,除了包含原始待处理的第一组数据之外,还在预设位置还设置有一定数量(即R个)的零,因此,在获取N个目标像素点对应的C*N个色彩空间参数后,将C*N个色彩空间参数作为第三组数据,然后删除第三组数据中位于预设位置处的数据(这些数据均为零),以得到第四组数据,并将第四组数据作为第一组数据对应的归一化数据。其中,第四组数据中的数据个数与第一组数据中的数据个数相同,均为M=C*N-R。
图4是根据一示例性实施例示出的另一种数据归一化的处理方法的框图,如图4所示,步骤102可以包括:
步骤1021,将N个顶点坐标作为渲染管线的顶点着色器的输入,获取顶点着色器输出的以N个顶点坐标作为顶点的几何图形。
步骤1022,对几何图形进行光栅化处理,以得到多个片元。
步骤1023,将多个片元和第二组数据作为多个片元着色器的输入,获取多个片元着色器输出的目标图像,多个片元着色器中的每个片元着色器均被配置为执行归一化函数。
举例来说,渲染管线中包括了顶点着色器和片元着色器,将第二组数据与预设的N个顶点坐标作为渲染管线的输入,首先将N个顶点坐标填充至顶点缓冲区,顶点着色器从顶点缓冲区中读取N个顶点坐标,进行处理,以得到以N个顶点坐标作为顶点的几何图形。之后再对几何图形进行光栅化处理,得到多个片元(英文:Fragment),最后将多个片元和第二组数据作为多个片元着色器的输入,以获取多个片元着色器输出的目标图像,多个片元着色器中的每个片元着色器均被配置为执行归一化函数。其中,第二组数据可以理解为渲染管线在渲染图形时的参数,即片元着色器按照第二组数据进行图形的渲染。
其中,步骤1023的实现方式可以通过以下步骤:
A)将多个片元和第二组数据作为多个片元着色器的输入,以调用GPU的多个并发线程分别对多个片元进行着色。
B)将经过着色的多个片元组成目标图像,作为多个片元着色器的输出。
示例的,当多个片元着色器接收到多个片元和第二组数据时,通过调用GPU的多个并发线程分别对多个片元进行着色,即按照第二组数据所指示的参数,以归一化函数为规则来对多个片元进行着色,由于多个片元的着色过程是通过并发线程来实现的,因此能够快速实现数据归一化的处理,当多个片元完成着色后,按照多个片元之间的位置关系将多个片元组成目标图像,将目标图像作为多个片元着色器的输出。
例如,第一组数据为:10、20、30、40、50、60、70、80、90、100,第一组数据中的数据个数M=10。渲染管线能够处理的色彩空间是RGBA色彩空间,C=4。那么M除以C,求得余数R=2。在第一组数据的结尾处补2个零,得到第二组数据为:10、20、30、40、50、60、70、80、90、100,0,0,第二组数据中的数据个数C*N=12,N=3。选取3个顶点坐标为:(1,2)、(3,2)、(6,2),将第二组数据和3个顶点坐标作为渲染管线的输入,渲染管线中的每个片元着色器均被配置为执行归一化函数:F(x)=x/120。确定渲染管线输出的目标图像中(1,2)、(3,2)、(6,2)对应的3个目标像素点,3个目标像素点对应的色彩空间参数为RGBA(0.083,0.167,0.25,0.333)、RGBA(0.417,0.500,0.583,0.667)、RGBA(0.750,0.833,0,0),即第三组数据为:0.083、0.167、0.25、0.333、0.417、0.500、0.583、0.667、0.750、0.833、0、0。最后删除第三组数据中结尾处的两个零,即得到第一组数据对应的归一化数据:0.083、0.167、0.25、0.333、0.417、0.500、0.583、0.667、0.750、0.833。
综上所述,本公开首先对待处理的第一组数据进行预处理,以得到数据个数为C的N倍的第二组数据,其中C为GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数,之后将第二组数据和预设的N个顶点坐标作为渲染管线的输入,利用渲染管线中多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像,再获取目标图像中与N个顶点坐标所指示的N个目标像素点,每个目标像素点都包括C个色彩空间参数,最后将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据。能够利用GPU的并行计算能力,实现对大量数据的归一化处理,降低了计算资源的占用率,提高了数据归一化的处理速度。
图5是根据一示例性实施例示出的一种数据归一化的处理装置的框图,如图5所示,该装置200包括:
预处理模块201,用于对待处理的第一组数据进行预处理,以得到第二组数据,第二组数据中的数据个数为C的N倍,C为图形处理单元GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数。
渲染模块202,用于将第二组数据与预设的N个顶点坐标作为渲染管线的输入,通过渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像。
获取模块203,用于获取目标图像中与N个顶点坐标对应的N个目标像素点。
归一化模块204,用于将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据,每个目标像素点对应C个色彩空间参数。
图6是根据一示例性实施例示出的另一种数据归一化的处理装置的框图,如图6所示,预处理模块201包括:
取余子模块2011,用于将第一组数据中的数据个数除以C后取余数。
补零子模块2012,用于在第一组数据的预设位置处添加余数个零,以获得第二组数据,预设位置为第一组数据的起始处或结尾处。
图7是根据一示例性实施例示出的另一种数据归一化的处理装置的框图,如图7所示,归一化模块204包括:
归一化子模块2041,用于将N个目标像素点对应的色彩空间参数作为第三组数据,第三组数据中的数据个数为C*N。
删除子模块2042,用于删除第三组数据中位于预设位置处的数据,以得到第四组数据。
确定子模块2043,用于将第四组数据作为第一组数据对应的归一化数据。
图8是根据一示例性实施例示出的另一种数据归一化的处理装置的框图,如图8所示,渲染模块202包括:
顶点着色子模块2021,用于将N个顶点坐标作为渲染管线的顶点着色器的输入,获取顶点着色器输出的以N个顶点坐标作为顶点的几何图形。
光栅化子模块2022,用于对几何图形进行光栅化处理,以得到多个片元。
片元着色子模块2023,用于将多个片元和第二组数据作为多个片元着色器的输入,获取多个片元着色器输出的目标图像,多个片元着色器中的每个片元着色器均被配置为执行归一化函数。
可选的,片元着色子模块2023可以用于执行以下步骤:
A)将多个片元和第二组数据作为多个片元着色器的输入,以调用GPU的多个并发线程分别对多个片元进行着色。
B)将经过着色的多个片元组成目标图像,作为多个片元着色器的输出。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
综上所述,本公开首先对待处理的第一组数据进行预处理,以得到数据个数为C的N倍的第二组数据,其中C为GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数,之后将第二组数据和预设的N个顶点坐标作为渲染管线的输入,利用渲染管线中多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像,再获取目标图像中与N个顶点坐标所指示的N个目标像素点,每个目标像素点都包括C个色彩空间参数,最后将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据。能够利用GPU的并行计算能力,实现对大量数据的归一化处理,降低了计算资源的占用率,提高了数据归一化的处理速度。
图9是根据一示例性实施例示出的一种电子设备300的框图。如图9所示,该电子设备300可以包括:处理器301,存储器302。该电子设备300还可以包括多媒体组件303,输入/输出(I/O)接口304,以及通信组件305中的一者或多者。
其中,处理器301用于控制该电子设备300的整体操作,以完成上述的数据归一化的处理方法中的全部或部分步骤。存储器302用于存储各种类型的数据以支持在该电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件303可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器302或通过通信组件305发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口304为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件305用于该电子设备300与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件305可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的数据归一化的处理方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的数据归一化的处理方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器302,上述程序指令可由电子设备300的处理器301执行以完成上述的数据归一化的处理方法。
综上所述,本公开首先对待处理的第一组数据进行预处理,以得到数据个数为C的N倍的第二组数据,其中C为GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数,之后将第二组数据和预设的N个顶点坐标作为渲染管线的输入,利用渲染管线中多个片元着色器并行执行预设的归一化函数,以获取渲染管线输出的目标图像,再获取目标图像中与N个顶点坐标所指示的N个目标像素点,每个目标像素点都包括C个色彩空间参数,最后将N个目标像素点对应的色彩空间参数作为第一组数据对应的归一化数据。能够利用GPU的并行计算能力,实现对大量数据的归一化处理,降低了计算资源的占用率,提高了数据归一化的处理速度。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,本领域技术人员在考虑说明书及实践本公开后,容易想到本公开的其它实施方案,均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。同时本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。本公开并不局限于上面已经描述出的精确结构,本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种数据归一化的处理方法,其特征在于,所述方法包括:
对待处理的第一组数据进行预处理,以得到第二组数据,所述第二组数据中的数据个数为C的N倍,C为图形处理单元GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数;
将所述第二组数据与预设的N个顶点坐标作为所述渲染管线的输入,通过所述渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取所述渲染管线输出的目标图像;
获取所述目标图像中与所述N个顶点坐标对应的N个目标像素点;
将所述N个目标像素点对应的色彩空间参数作为所述第一组数据对应的归一化数据,每个所述目标像素点对应C个色彩空间参数。
2.根据权利要求1所述的方法,其特征在于,所述对待处理的第一组数据进行预处理,以得到第二组数据,包括:
将所述第一组数据中的数据个数除以C后取余数;
在所述第一组数据的预设位置处添加所述余数个零,以获得所述第二组数据,所述预设位置为所述第一组数据的起始处或结尾处。
3.根据权利要求2所述的方法,其特征在于,所述将所述N个目标像素点对应的色彩空间参数作为所述第一组数据对应的归一化数据,包括:
将所述N个目标像素点对应的色彩空间参数作为第三组数据,所述第三组数据中的数据个数为C*N;
删除所述第三组数据中位于所述预设位置处的数据,以得到第四组数据;
将所述第四组数据作为所述第一组数据对应的所述归一化数据。
4.根据权利要求1所述的方法,其特征在于,所述将所述第二组数据与预设的N个顶点坐标作为所述渲染管线的输入,通过所述渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取所述渲染管线输出的目标图像,包括:
将所述N个顶点坐标作为所述渲染管线的顶点着色器的输入,获取所述顶点着色器输出的以所述N个顶点坐标作为顶点的几何图形;
对所述几何图形进行光栅化处理,以得到多个片元;
将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,获取所述多个片元着色器输出的所述目标图像,所述多个片元着色器中的每个所述片元着色器均被配置为执行所述归一化函数。
5.根据权利要求4所述的方法,其特征在于,所述将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,获取所述多个片元着色器输出的所述目标图像,包括:
将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,以调用所述GPU的多个并发线程分别对所述多个片元进行着色;
将经过着色的所述多个片元组成所述目标图像,作为所述多个片元着色器的输出。
6.一种数据归一化的处理装置,其特征在于,所述装置包括:
预处理模块,用于对待处理的第一组数据进行预处理,以得到第二组数据,所述第二组数据中的数据个数为C的N倍,C为图形处理单元GPU的渲染管线能够处理的色彩空间的维度,N为大于或等于1的正整数;
渲染模块,用于将所述第二组数据与预设的N个顶点坐标作为所述渲染管线的输入,通过所述渲染管线中的多个片元着色器并行执行预设的归一化函数,以获取所述渲染管线输出的目标图像;
获取模块,用于获取所述目标图像中与所述N个顶点坐标对应的N个目标像素点;
归一化模块,用于将所述N个目标像素点对应的色彩空间参数作为所述第一组数据对应的归一化数据,每个所述目标像素点对应C个色彩空间参数。
7.根据权利要求6所述的装置,其特征在于,所述渲染模块包括:
顶点着色子模块,用于将所述N个顶点坐标作为所述渲染管线的顶点着色器的输入,获取所述顶点着色器输出的以所述N个顶点坐标作为顶点的几何图形;
光栅化子模块,用于对所述几何图形进行光栅化处理,以得到多个片元;
片元着色子模块,用于将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,获取所述多个片元着色器输出的所述目标图像,所述多个片元着色器中的每个所述片元着色器均被配置为执行所述归一化函数。
8.根据权利要求7所述的装置,其特征在于,所述片元着色子模块用于:
将所述多个片元和所述第二组数据作为所述多个片元着色器的输入,以调用所述GPU的多个并发线程分别对所述多个片元进行着色;
将经过着色的所述多个片元组成所述目标图像,作为所述多个片元着色器的输出。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-5中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811520981.7A CN109767379B (zh) | 2018-12-12 | 2018-12-12 | 数据归一化的处理方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811520981.7A CN109767379B (zh) | 2018-12-12 | 2018-12-12 | 数据归一化的处理方法、装置、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109767379A CN109767379A (zh) | 2019-05-17 |
CN109767379B true CN109767379B (zh) | 2023-06-23 |
Family
ID=66450494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811520981.7A Active CN109767379B (zh) | 2018-12-12 | 2018-12-12 | 数据归一化的处理方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109767379B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111065129B (zh) * | 2019-12-13 | 2020-09-22 | 吴云 | 一种用于数据发射归一化的电子设备及其实施方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5188334B2 (ja) * | 2008-09-04 | 2013-04-24 | キヤノン株式会社 | 画像処理装置、画像処理方法およびプログラム |
CN104008567A (zh) * | 2014-03-10 | 2014-08-27 | 昆山数字城市信息技术有限公司 | 一种基于gpu的城市雾霾天气的可视化绘制方法 |
-
2018
- 2018-12-12 CN CN201811520981.7A patent/CN109767379B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109767379A (zh) | 2019-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11710268B2 (en) | Graphics processing units and methods for controlling rendering complexity using cost indications for sets of tiles of a rendering space | |
US10311548B2 (en) | Scaling render targets to a higher rendering resolution to display higher quality video frames | |
US9558585B2 (en) | Hidden surface removal in graphics processing systems | |
EP3138006B1 (en) | System and method for unified application programming interface and model | |
CN107154063B (zh) | 图像展示区域的形状设置方法及装置 | |
US9684995B2 (en) | Setting a display list pointer for primitives in a tile-based graphics processing system | |
US20160005140A1 (en) | Graphics processing | |
JP5684089B2 (ja) | デプスエンジンの動的な再配置を用いたグラフィックシステム | |
US9536333B2 (en) | Method and apparatus for improved processing of graphics primitives | |
CN109785417B (zh) | 一种实现OpenGL累积操作的方法及装置 | |
US20080118148A1 (en) | Efficient scissoring for graphics application | |
US10943389B2 (en) | Removing or identifying overlapping fragments after z-culling | |
US20140267260A1 (en) | System, method, and computer program product for executing processes involving at least one primitive in a graphics processor, utilizing a data structure | |
CN113256764A (zh) | 一种光栅化装置、方法及计算机存储介质 | |
CN115908685A (zh) | 一种场景渲染方法、装置、设备和存储介质 | |
US8525843B2 (en) | Graphic system comprising a fragment graphic module and relative rendering method | |
GB2524047A (en) | Improvements in and relating to rendering of graphics on a display device | |
US8854385B1 (en) | Merging rendering operations for graphics processing unit (GPU) performance | |
CN109767379B (zh) | 数据归一化的处理方法、装置、存储介质和电子设备 | |
US20140354641A1 (en) | Methods of and apparatus for compressing depth data | |
CN110334027B (zh) | 游戏画面测试方法和装置 | |
CN112184538A (zh) | 图像加速方法、相关装置、设备及存储介质 | |
WO2023134277A1 (zh) | 可见元素的确定方法和装置、存储介质及电子设备 | |
KR20180037837A (ko) | 채널의 변화량에 기초하여 채널에 할당되는 비트들의 수를 결정하는 방법 및 장치. | |
KR20200056941A (ko) | 에지 앤티 앨리어싱의 그래픽 처리 방법, 시스템, 저장매체 및 장치 |
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 |