一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据处理方法、装置、终端设备及计算机可读存储介质与流程

2022-05-18 02:36:30 来源:中国专利 TAG:


1.本技术属于数据处理技术领域,尤其涉及数据处理方法、装置、终端设备及计算机可读存储介质。


背景技术:

2.神经网络处理器是一种用于执行神经网络模型的计算任务的处理器,如用于执行基于神经网络的目标检测任务和目标跟踪任务等。神经网络模型中包括多种算子,如卷积算子、转换算子和reorg算子等。神经网络处理器可以较为高效地执行一些逻辑较为简单的算子的计算任务,如卷积算子和转换算子等。但对于如reorg算子这种逻辑较复杂的算子,神经网络处理器的执行效率较低。


技术实现要素:

3.本技术实施例提供了一种数据处理方法、装置、终端设备及计算机可读存储介质,可以提高神经网络处理器对逻辑复杂算子的执行效率。
4.第一方面,本技术实施例提供了一种数据处理方法,应用于神经网络处理器,所述方法包括:
5.获取待处理算子的输入张量和第一计算参数;
6.根据所述第一计算参数设置所述神经网络处理器的基础算子的第二计算参数,其中,所述基础算子的算法复杂度低于所述待处理算子的算法复杂度;
7.基于所述第二计算参数,利用所述基础算子对所述待处理算子的输入张量进行计算,获得所述基础算子的输出张量;
8.转换所述基础算子的输出张量的张量形状,获得目标张量,所述目标张量的张量形状与所述待处理算子的输出张量的张量形状一致。
9.在本技术实施例中,根据待处理算子的第一计算参数设置基础算子的第二计算参数,以通过基础算子来执行待处理算子的计算任务;最后将基础算子的输出张量转换为符合待处理算子的输出张量的张量形状的目标张量。上述方法中,相当于将待处理算子对应的计算任务转为由基础算子组成的计算任务,由于基础算子的算法复杂度比待处理算子的算法复杂度低,因此,通过上述方法,当神经网络处理器执行逻辑复杂的图像处理任务或音视频处理任务时,可以将逻辑复杂的处理任务转换为逻辑简单的处理任务,可以有效提高神经网络处理器的执行效率,进而有效提高图像处理任务或音视频处理任务的处理效率。
10.在第一方面的一种可能的实现方式中,所述基础算子为二维卷积算子,相应的,所述第二计算参数包括权重矩阵、步长和卷积核;
11.所述根据所述第一计算参数设置所述神经网络处理器的基础算子的第二计算参数,包括:
12.生成所述权重矩阵,其中,所述权重矩阵的张量形状由所述第一计算参数确定;
13.将所述步长每个维度的大小设置为所述第一计算参数;
14.将所述卷积核每个维度的大小设置为所述第一计算参数。
15.在第一方面的一种可能的实现方式中,所述生成所述权重矩阵,包括:
16.根据所述第一计算参数计算第一张量形状;
17.获取与所述第一计算参数相匹配的单位矩阵;
18.将所述单位矩阵转换为符合所述第一张量形状的权重矩阵。
19.在第一方面的一种可能的实现方式中,所述基于所述第二计算参数,利用所述基础算子对所述待处理算子的输入张量进行计算,获得所述基础算子的输出张量,包括:
20.转换所述待处理算子的输入张量的张量形状,获得第一中间张量,所述第一中间张量的张量形状与所述第二计算参数相匹配;
21.基于所述第二计算参数,利用所述基础算子对所述第一中间张量进行计算,获得所述基础算子的输出张量。
22.在第一方面的一种可能的实现方式中,所述转换所述待处理算子的输入张量的张量形状,获得第一中间张量,包括:
23.根据所述待处理算子的输入张量的张量形状和所述第一计算参数,计算第二张量形状;
24.将所述待处理算子的输入张量转换为符合所述第二张量形状的所述第一中间张量。
25.在第一方面的一种可能的实现方式中,所述转换所述基础算子的输出张量的张量形状,获得目标张量,包括:
26.根据所述待处理算子的输入张量的张量形状和所述第一计算参数计算第三张量形状;
27.将所述基础算子的输出张量转换为符合所述第三张量形状的所述目标张量。
28.第二方面,本技术实施例提供了一种数据处理装置,应用于神经网络处理器,所述装置包括:
29.获取单元,用于获取待处理算子的输入张量和第一计算参数;
30.设置单元,用于根据所述第一计算参数设置所述神经网络处理器的基础算子的第二计算参数;
31.计算单元,用于基于所述第二计算参数,利用所述基础算子对所述待处理算子的输入张量进行计算,获得所述基础算子的输出张量;
32.转换单元,用于转换所述基础算子的输出张量的张量形状,获得目标张量,所述目标张量的张量形状与所述待处理算子的输出张量的张量形状一致。
33.第三方面,本技术实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上述第一方面中任一项所述的数据处理方法。
34.第四方面,本技术实施例提供了一种计算机可读存储介质,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述的数据处理方法。
35.第五方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的数据处理方法。
36.可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
37.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
38.图1是本技术实施例提供的卷积过程示意图;
39.图2是本技术实施例提供数据转换的示意图;
40.图3是本技术实施例提供的reorg算子的数据处理示意图;
41.图4是本技术实施例提供的数据处理方法的流程示意图;
42.图5是本技术实施例提供的数据处理装置的结构框图;
43.图6是本技术实施例提供的终端设备的结构示意图。
具体实施方式
44.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
45.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
46.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
47.如在本技术说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0048]
另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0049]
在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
[0050]
首先介绍本技术的技术背景。
[0051]
神经网络模型中包括多种算子,如卷积算子、转换算子和reorg算子等。示例性的,介绍以下几种算子。
[0052]
卷积算子用于实现卷积计算。参见图1,是本技术实施例提供的卷积过程示意图。如图1中的(a)所示,左侧为待处理图像,每个方格表示待处理图像的一个像素,方格上的数字表示像素值。右侧为卷积核,卷积核中的数字为权值。如图1中的(b)所示,从待处理图像的左上方起始位置开始卷积,将卷积核与左侧图中阴影框内的像素进行加权,获得一个卷积值。假设卷积的步长为1,即将阴影框向右移动一个像素,如图1中的(c)所示,继续将此时的阴影框内的像素与卷积核进行加权,获得第二个卷积值。依次类推,可以得到最终的卷积值,如图1中的(d)所示。其中,卷积核的大小决定了感受野的大小,步长的大小决定了提取数据的精度。
[0053]
转换算子用于实现数据的转换,如reshape算子用于将输入数据转换为特定维度的数据。如图2所示,左侧为3
×
4的矩阵a,设置目标维度为2
×
6,通过reshape转换后得到2
×
6的矩阵b。reshape算子既可以实现数据维度的转换,又可以保证原有数据不变。
[0054]
reorg算子用于实现数据的重排,将不同层级不同大小的特征图连接在一起。如图3所示,左侧为2w
×
2w的特征图p,将该特征图输入reorg算子,可以得到右侧的4个w
×
w的特征图q。每次从特征图p中取4个元素分别分配给4个特征图q,按照这种方式从左到右,从上到下遍历就可以得到4个w*w的特征图q。
[0055]
神经网络处理器通常用于执行图像处理(如目标识别、目标跟踪等)和音视频处理(如声音检测等)等任务,在执行上述处理任务的过程中,往往涉及一些逻辑较为复杂的计算任务。例如,上述的reorg算子,神经网络处理器执行该算子,以实现对图像或音视频特征的重排。神经网络处理器可以较为高效地执行一些逻辑较为简单的算子的计算任务,如卷积算子和转换算子等。但对于如reorg算子这种逻辑较复杂的算子,神经网络处理器的执行效率较低,进而影响图像处理任务或音视频处理任务的处理效率。
[0056]
为了解决上述问题,本技术实施例提供了一种数据处理方法。参见图4,是本技术实施例提供的数据处理方法的流程示意图,作为示例而非限定,所述方法可以包括以下步骤:
[0057]
s401,获取待处理算子的输入张量和第一计算参数。
[0058]
本技术实施例中的,待处理算子指计算逻辑较为复杂的算子。为了便于描述,下面实施例以reorg算子为例进行介绍。
[0059]
神经网络中每个层的输入/输出数据通常为张量数据,即多维数据。通常,输入/输出张量的维度为(n,c,h,w),其中,n表示二维数据的批数(batch),c表示通道数,h表示二维数据的高,w表示二维数据的宽。
[0060]
reorg算子的输入张量的张量形状为(n,c,h,w),如上述reorg算子的计算逻辑代码所示,其第一计算参数为步长stride(s)。
[0061]
s402,根据所述第一计算参数设置所述神经网络处理器的基础算子的第二计算参数。
[0062]
本技术实施例中的基础算子指计算逻辑较为简单的算子。需要说明的是,本技术实施例中,可以采用一个基础算子或多个基础算子的组合来实现待处理算子的计算任务。为了便宜描述,下面实施例以卷积算子为例进行介绍。
[0063]
在一个实施例中,所述基础算子为二维卷积算子,相应的,所述第二计算参数包括权重矩阵、步长和卷积核。
[0064]
相应的,s402包括:
[0065]
生成所述权重矩阵,其中,所述权重矩阵的张量形状由所述第一计算参数确定;将所述步长每个维度的大小设置为所述第一计算参数;将所述卷积核每个维度的大小设置为所述第一计算参数。
[0066]
可选的,生成权重矩阵的方式为:
[0067]
根据所述第一计算参数计算第一张量形状;获取与所述第一计算参数相匹配的单位矩阵;将所述单位矩阵转换为符合所述第一张量形状的权重矩阵。
[0068]
具体的,第一张量形状可以根据公式new_shape1=(s*s,1,s,s))确定,其中,s为第一计算参数,即reorg算子中的步长。
[0069]
单位矩阵每个维度的大小为s
×
s,即张量形状为(s
×
s,s
×
s)。例如,若s=2,则单位矩阵为:
[0070][0071]
可以利用reshape算子对单位矩阵进行转换,具体的转换原理可以参见图2实施例中的描述。示例性的,通过函数weight_out=reshape(weight_in,new_shape=(s*s,1,s,s))表示转换过程。其中,reshape函数中第一个参数为输入数据,第二个参数为输出数据的张量形状。上述函数中,输入数据为单位矩阵weight_in,输出数据的张量形状为第一张量形状new_shape1=(s*s,1,s,s))。
[0072]
示例性的,当卷积核为二维时,卷积核的大小为[s,s],相应的,步长也为[s,s]。
[0073]
s403,基于所述第二计算参数,利用所述基础算子对所述待处理算子的输入张量进行计算,获得所述基础算子的输出张量。
[0074]
待处理算子的输入张量的张量形状与基础算子的输入数据的张量形状可能是不一致。为了解决该问题,需要先对待处理算子的输入张量的张量形状进行转换。
[0075]
在一个实施例中,s403包括:
[0076]
转换所述待处理算子的输入张量的张量形状,获得第一中间张量,所述第一中间张量的张量形状与所述第二计算参数相匹配;基于所述第二计算参数,利用所述基础算子对所述第一中间张量进行计算,获得所述基础算子的输出张量。
[0077]
可选的,获取第一中间张量的方式为:
[0078]
根据所述待处理算子的输入张量的张量形状和所述第一计算参数,计算第二张量形状;将所述待处理算子的输入张量转换为符合所述第二张量形状的所述第一中间张量。
[0079]
具体的,第二张量形状可以通过公式new_shape2=(n,1,c*h/s,w*s)确定。可以利用reshape算子对待处理算子的输入张量的张量形状进行转换,具体的转换原理可以参见图2实施例中的描述。
[0080]
将基础算子的参数设置为第二计算参数。获得第一中间张量之后,将第一中间张量作为基础算子的输入数据,由基础算子计算后,得到基础算子的输出张量。
[0081]
示例性的,通过函数y=conv2d(x,weight_out,strides=(s,s),kernel_size=(s,s))表示卷积算子的计算。其中,x为第一中间张量。
[0082]
s404,转换所述基础算子的输出张量的张量形状,获得目标张量,所述目标张量的张量形状与所述待处理算子的输出张量的张量形状一致。
[0083]
基础算子的输出张量的张量形状与待处理算子的输出张量的张量形状不一致,为了获取与待处理算子等价的计算结果,需要对基础算子的输出张量的张量形状进行转换。
[0084]
在一个实施例中,获取目标张量的方式为:
[0085]
根据所述待处理算子的输入张量的张量形状和所述第一计算参数计算第一张量形状;将所述基础算子的输出张量转换为符合所述第一张量形状的所述目标张量。
[0086]
具体的,第三张量形状可以通过公式new_shape3=(n,c*s*s,h/s,w/s)确定。同样的,可以利用reshape算子对待处理算子的输入张量的张量形状进行转换,具体的转换原理可以参见图2实施例中的描述。
[0087]
在本技术实施例中,根据待处理算子的第一计算参数设置基础算子的第二计算参数,以通过基础算子来执行待处理算子的计算任务;最后将基础算子的输出张量转换为符合待处理算子的输出张量的张量形状的目标张量。上述方法中,相当于将待处理算子对应的计算任务转为由基础算子组成的计算任务,由于基础算子的算法复杂度比待处理算子的算法复杂度低,因此,通过上述方法,当神经网络处理器执行逻辑复杂的图像处理任务或音视频处理任务时,可以将逻辑复杂的处理任务转换为逻辑简单的处理任务,有效提高了神经网络处理器的执行效率,进而有效提高了图像处理任务或音视频处理任务的处理效率。
[0088]
另外,由于reshape的过程不会丢失数据,可以保证原有数据不变,因此,将reorg算子的计算任务转换为由reshape和conv(卷积算子)实现,可以在提高神经网络处理器的执行效率的同时,保证执行结果与reorg算子的执行结果一致。
[0089]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0090]
对应于上文实施例所述的数据处理方法,图5是本技术实施例提供的数据处理装置的结构框图,为了便于说明,仅示出了与本技术实施例相关的部分。
[0091]
参照图5,该装置包括:
[0092]
获取单元51,用于获取待处理算子的输入张量和第一计算参数。
[0093]
设置单元52,用于根据所述第一计算参数设置所述神经网络处理器的基础算子的第二计算参数,其中,所述基础算子的算法复杂度低于所述待处理算子的算法复杂度。
[0094]
计算单元53,用于基于所述第二计算参数,利用所述基础算子对所述待处理算子的输入张量进行计算,获得所述基础算子的输出张量。
[0095]
转换单元54,用于转换所述基础算子的输出张量的张量形状,获得目标张量,所述目标张量的张量形状与所述待处理算子的输出张量的张量形状一致。
[0096]
可选的,所述基础算子为二维卷积算子,相应的,所述第二计算参数包括权重矩阵、步长和卷积核。
[0097]
相应的,设置单元52还用于:
[0098]
生成所述权重矩阵,其中,所述权重矩阵的张量形状由所述第一计算参数确定;将所述步长每个维度的大小设置为所述第一计算参数;将所述卷积核每个维度的大小设置为所述第一计算参数。
[0099]
可选的,设置单元52还用于:
[0100]
根据所述第一计算参数计算第一张量形状;
[0101]
获取与所述第一计算参数相匹配的单位矩阵;
[0102]
将所述单位矩阵转换为符合所述第一张量形状的权重矩阵。
[0103]
可选的,计算单元53还用于:
[0104]
转换所述待处理算子的输入张量的张量形状,获得第一中间张量,所述第一中间张量的张量形状与所述第二计算参数相匹配;
[0105]
基于所述第二计算参数,利用所述基础算子对所述第一中间张量进行计算,获得所述基础算子的输出张量。
[0106]
可选的,计算单元53还用于:
[0107]
根据所述待处理算子的输入张量的张量形状和所述第一计算参数,计算第二张量形状;
[0108]
将所述待处理算子的输入张量转换为符合所述第二张量形状的所述第一中间张量。
[0109]
可选的,转换单元54还用于:
[0110]
根据所述待处理算子的输入张量的张量形状和所述第一计算参数计算第三张量形状;
[0111]
将所述基础算子的输出张量转换为符合所述第三张量形状的所述目标张量。
[0112]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0113]
另外,图5所示的数据处理装置可以是内置于现有的终端设备内的软件单元、硬件单元、或软硬结合的单元,也可以作为独立的挂件集成到所述终端设备中,还可以作为独立的终端设备存在。
[0114]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0115]
图6是本技术实施例提供的终端设备的结构示意图。如图6所示,该实施例的终端设备6包括:至少一个处理器60(图6中仅示出一个)处理器、存储器61以及存储在所述存储器61中并可在所述至少一个处理器60上运行的计算机程序62,所述处理器60执行所述计算机程序62时实现上述任意各个数据处理方法实施例中的步骤。
[0116]
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图6仅仅是终端设备6的举例,并不构成对终端设备6的限定,可以包括比图示更多或更少的部件,或者组
合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
[0117]
所称处理器60可以是中央处理单元(central processing unit,cpu),该处理器60还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0118]
所述存储器61在一些实施例中可以是所述终端设备6的内部存储单元,例如终端设备6的硬盘或内存。所述存储器61在另一些实施例中也可以是所述终端设备6的外部存储设备,例如所述终端设备6上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器61还可以既包括所述终端设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
[0119]
本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
[0120]
本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
[0121]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0122]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0123]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0124]
在本技术所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所
述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0125]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0126]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献