CN112990370B - 图像数据的处理方法和装置、存储介质及电子设备 - Google Patents

图像数据的处理方法和装置、存储介质及电子设备 Download PDF

Info

Publication number
CN112990370B
CN112990370B CN202110451609.0A CN202110451609A CN112990370B CN 112990370 B CN112990370 B CN 112990370B CN 202110451609 A CN202110451609 A CN 202110451609A CN 112990370 B CN112990370 B CN 112990370B
Authority
CN
China
Prior art keywords
image data
data
weight
data set
group
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
Application number
CN202110451609.0A
Other languages
English (en)
Other versions
CN112990370A (zh
Inventor
艾通
李峰
李昊沅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110451609.0A priority Critical patent/CN112990370B/zh
Publication of CN112990370A publication Critical patent/CN112990370A/zh
Application granted granted Critical
Publication of CN112990370B publication Critical patent/CN112990370B/zh
Priority to PCT/CN2022/086217 priority patent/WO2022228105A1/zh
Priority to JP2023524148A priority patent/JP2023547831A/ja
Priority to EP22794576.3A priority patent/EP4296891A1/en
Priority to US17/991,416 priority patent/US20230083565A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Neurology (AREA)
  • Image Processing (AREA)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种图像数据的处理方法和装置、存储介质及电子设备。其中,该方法包括:采用获取待处理的第一图像数据集,其中,第一图像数据集中的图像数据按照第一数据格式进行排列,将第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,第二图像数据集中的图像数据按照第二数据格式进行排列,交织重排的方式与卷积操作匹配,第二数据格式的维度小于第一数据格式,对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果。本发明解决了相关技术中存在的处理图像数据的效率比较低的技术问题。

Description

图像数据的处理方法和装置、存储介质及电子设备
技术领域
本发明涉及计算机领域,具体而言,涉及一种图像数据的处理方法和装置、存储介质及电子设备。
背景技术
目前的相关技术中,传统计算模式一般为每一个输出即是一个线程组,利用SIMD(Single Instruction Multiple Data,单指令多数据结构)对图像数据进行处理,例如,在利用SIMD进行卷积运算的过程中,输入维度为[N,C,H,W]=[1,1,5,5],卷积核维度为[Cout,Cin,kernel_h,kernel_w]=[1,1,3,3],进行卷积计算并最终生成维度为[N,C,H,W]=[1,1,5,5]的输出,其中,N,C,H,W分别表示批次,通道数,高度,宽度;Cout表示卷积核的输出通道数,Cin表示卷积核的输入通道数,kernel_h表示卷积核的高度,kernel_w表示卷积核的宽度。
现有的技术方案的数据排列通常只针对于[N,C,H,W]的维度,相比传统的数据表达方式对比,对于卷积操作,根据计算机内存排布特点,如果输入空间尺寸较大的话,为了获取信息的完整,需要对输入进行例如补边等操作,进而,由于跨通道获取数据,造成CacheMiss以及额外的数据拷贝开销,导致严重影响计算过程中的设备运行性能。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种图像数据的处理方法和装置、存储介质及电子设备,以至少解决相关技术中存在的处理图像数据的效率比较低的技术问题。
根据本发明实施例的一个方面,提供了一种图像数据的处理方法,包括:获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照第一数据格式进行排列;将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照第二数据格式进行排列,所述交织重排的方式与卷积操作匹配,所述第二数据格式的维度小于所述第一数据格式;对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果。
可选地,所述对所述C2组图像数据和所述第二权重数据集中的N2×C2 组权重数据执行卷积操作,得到所述第三图像数据集中的N2组图像数据,包括:将所述N2×C2 组权重数据中的每C2组权重数据分别与所述C2组图像数据执行加权求和操作,得到所述N2组图像数据。
根据本发明实施例的另一方面,还提供了一种图像数据的处理装置,包括:获取模块,用于获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照第一数据格式进行排列;处理模块,用于将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照第二数据格式进行排列,所述交织重排的方式与卷积操作匹配,所述第二数据格式的维度小于所述第一数据格式;执行模块,用于对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果。
可选地,所述获取模块,包括:获取单元,用于获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照N1×C1×H1×W1的数据格式进行排列,N1表示所述第一图像数据集包括的图像数据子集的数量,C1表示每个所述图像数据子集中的通道数量,H1表示所述第一图像数据集中每个所述图像数据子集中的数据高度,W1表示所述第一图像数据集中表示每个所述图像数据子集中的数据宽度;所述处理模块,包括:处理单元,用于将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照N1×H2×W2的数据格式进行排列,H2表示所述第二图像数据集中每个所述图像数据子集中的数据高度,W2表示所述第二图像数据集中每个所述图像数据子集中的数据宽度。
可选地,所述处理模块,包括:分组单元,用于将所述第一图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,其中,M1≤C1;排列单元,用于将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集。
可选地,所述分组单元用于通过如下方式将所述第一图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据:在C1不为M1的整数倍的情况下,将所述第一图像数据集中的通道数量的从C1增加到C2,得到第三图像数据集,其中,C2为M1的整数倍,所述第三图像数据集中增加的通道上的图像数据为0;将所述第三图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,其中,
Figure 100002_DEST_PATH_IMAGE002
可选地,所述排列单元用于通过如下方式将将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集:在C1为M1的整数倍的情况下,将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集,其中,
Figure 100002_DEST_PATH_IMAGE004
Figure 100002_DEST_PATH_IMAGE006
在C1不为M1的整数倍的情况下,将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集,其中,
Figure 488286DEST_PATH_IMAGE004
Figure 100002_DEST_PATH_IMAGE008
可选地,所述装置还用于:获取预设的第一权重数据集,其中,所述第一权重数据集中的权重数据按照N2×C2×H3×W3的数据格式进行排列,N2表示所述第一权重数据集包括的权重数据子集的数量,C2表示每个所述权重数据子集中的通道数量,H3表示每个所述权重数据子集中的数据高度,W3表示每个所述权重数据子集中的数据宽度;将所述第一权重数据集中的数据进行交织重排,得到所述第二权重数据集,其中,所述第二权重数据集中的权重数据按照H4×W4的数据格式进行排列。
可选地,所述装置还用于通过如下方式将所述第一权重数据集中的数据进行交织重排,得到所述第二权重数据集:将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到S2组权重数据,其中,M2≤N2;将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集。
可选地,所述装置还用于通过如下方式将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到S2组权重数据,包括:
在N2为M2的整数倍的情况下,将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到所述S2组权重数据,其中,
Figure 100002_DEST_PATH_IMAGE010
在N2不为M2的整数倍的情况下,将所述第一权重数据集中的权重数据子集的数量的从N2增加到N3,得到第三权重数据集,其中,N3为M2的整数倍,所述第三权重数据集中增加的权重数据子集中的权重数据为0;将所述第三权重数据集中每M2个权重数据子集的权重数据分成一组,得到所述S2组权重数据,其中,
Figure 100002_DEST_PATH_IMAGE012
可选地,所述装置还用于通过如下方式将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,包括:
在N2为M2的整数倍的情况下,将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,其中,
Figure 100002_DEST_PATH_IMAGE014
Figure 100002_DEST_PATH_IMAGE016
在N2不为M2的整数倍的情况下,将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,其中,
Figure 100002_DEST_PATH_IMAGE018
Figure 371578DEST_PATH_IMAGE016
可选地,所述N2表示卷积核的输出通道的数量,所述C2表示所述卷积核的输入通道的数量,所述卷积操作为使用所述卷积核执行的卷积操作,每个所述权重数据子集包括C2个所述输入通道上的权重数据,每个所述输出通道包括C2个所述输入通道。
可选地,所述装置还用于通过如下方式对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果:对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果,包括:
对所述第二图像数据集和所述第二权重数据集执行所述卷积操作,得到第四图像数据集,其中,所述目标输出结果包括所述第三图像数据集,所述第二图像数据集是将S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到图像数据集,所述S1组图像数据是将所述第一图像数据集中每M1个通道的图像数据分成一组,得到图像数据,M1≤C1
可选地,所述装置还用于通过如下方式对所述第二图像数据集和所述第二权重数据集执行卷积操作,得到第三图像数据集,包括:
在所述第二图像数据集中获取C2组图像数据,其中,每组图像数据包括所述第一图像数据集中位于同一个通道的多个图像数据,所述每组图像数据是从所述C2组图像数据中的上一组图像数据的存储地址偏移1个地址得到的图像数据;
对所述C2组图像数据和所述第二权重数据集中的N2×C2 组权重数据执行卷积操作,得到所述第三图像数据集中的N2组图像数据,其中,每组权重数据与所述每组图像数据具有相同的数据结构;
其中,所述第二权重数据集是将第一权重数据集中的数据进行交织重排,得到第二权重数据集,所述第一权重数据集中的权重数据按照N2×C2×H3×W3的数据格式进行排列,N2表示所述第一权重数据集包括的权重数据子集的数量,C2 表示每个所述权重数据子集中的通道数量,H3表示每个所述权重数据子集中的数据高度,W3表示每个所述权重数据子集中的数据宽度。
可选地,所述装置还用于通过如下方式对所述C2 组图像数据和所述第二权重数据集中的N2×C2组权重数据执行卷积操作,得到所述第三图像数据集中的N2组图像数据,包括:
将所述N2×C2组权重数据中的每C2组权重数据分别与所述C2组图像数据执行加权求和操作,得到所述N2组图像数据。
可选地,所述装置还用于:在第一内存空间中存储所述第一图像数据集和所述第二图像数据集;在第二内存空间中存储所述第二权重数据集,其中,所述第一内存空间与所述第二内存空间为相互独立的内存空间。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述图像数据的处理方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的图像数据的处理方法。
在本发明实施例中,采用获取待处理的第一图像数据集,其中,第一图像数据集中的图像数据按照第一数据格式进行排列;将第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,第二图像数据集中的图像数据按照第二数据格式进行排列,交织重排的方式与卷积操作匹配,第二数据格式的维度小于第一数据格式,对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果的方式,通过针对图像数据处理过程中的计算过程实现深度优化,将计算过程中输入图像数据、输出图像数据以及计算权重进行相应的数据重排,降低了传统计算模式下额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了关技术中存在的处理图像数据的效率比较的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的图像数据的处理方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的图像数据的处理方法的流程示意图;
图3是根据本发明实施例的一种可选的图像数据的处理方法的示意图;
图4是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图5是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图6是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图7是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图8是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图9是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图10是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图11是根据本发明实施例的又一种可选的图像数据的处理方法的示意图;
图12是根据本发明实施例的一种可选的图像数据的处理装置的结构示意图;
图13是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
CNN: Convolutional Neural Networks (卷积神经网络);
SIMD: Single Instruction Multiple Data(单指令多数据结构);
Metal:一种可以访问硬件图像处理单元(GPU)的抽象的框架;
Buffer: Metal Buffer(Metal表示常规的内存);
Texture: Metal Texture(Metal表示纹理的内存);
[N,C,H,W]:数据的维度表示模式,[batch,channel,height,width]分别表示[批次,通道数,高度,宽度];
Cout:卷积核的输出通道数;
Cin:卷积核的输入通道数;
kernel_h:卷积核的高度;
kernel_w:卷积核的宽度。
下面结合实施例对本发明进行说明:
根据本发明实施例的一个方面,提供了一种图像数据的处理方法,可选地,在本实施例中,上述图像数据的处理方法可以应用于如图1所示的由服务器101和用户终端103所构成的硬件环境中。如图1所示,服务器101通过网络与终端103进行连接,可用于为用户终端或用户终端上安装的客户端提供服务,客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端、游戏客户端等。可在服务器上或独立于服务器设置数据库105,用于为服务器101提供数据存储服务,例如,图像数据存储服务器,上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络,用户终端103可以是配置有应用程序107的终端,可以包括但不限于以下至少之一:手机(如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视等计算机设备,上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器,使用上述图像数据的处理方法的应用程序107通过用户终端103进行显示。
结合图1所示,上述图像数据的处理方法可以在用户终端103通过如下步骤实现:
S1,在用户终端103的应用程序107中获取待处理的第一图像数据集,其中,第一图像数据集中的图像数据按照第一数据格式进行排列;
S2,在用户终端103的应用程序107中将第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,第二图像数据集中的图像数据按照第二数据格式进行排列,交织重排的方式与卷积操作匹配,第二数据格式的维度小于第一数据格式;
S3,在用户终端103的应用程序107中对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果。
可选地,在本实施例中,上述图像数据的处理方法还可以通过包括但不限于配置于服务器的客户端使用。
可选地,在本实施例中,上述图像数据的处理方法可以包括但不限于由用户终端103和设置于服务器101的客户端进行异步使用,例如,通过用户终端103中应用程序107执行上述步骤S1、S2,通过设置于服务器101的客户端执行上述步骤S3,上述仅是一种示例,本实施例不做具体的限定。
可选地,作为一种可选的实施方式,如图2所示,上述图像数据的处理方法包括:
S202,获取待处理的第一图像数据集,其中,第一图像数据集中的图像数据按照第一数据格式进行排列;
S204,将第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,第二图像数据集中的图像数据按照第二数据格式进行排列,交织重排的方式与卷积操作匹配,第二数据格式的维度小于第一数据格式;
S206,对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果。
可选地,在本实施例中,上述第一数据格式的图像数据可以包括但不限于按照
Figure 100002_DEST_PATH_IMAGE020
的数据格式进行排列,
Figure 100002_DEST_PATH_IMAGE022
表示所述第一图像数据集包括的图像数据子集的数量,
Figure DEST_PATH_IMAGE024
表示每个所述图像数据子集中的通道数量,
Figure DEST_PATH_IMAGE026
表示所述第一图像数据集中每个所述图像数据子集中的数据高度,
Figure DEST_PATH_IMAGE028
所述第一图像数据集中表示每个所述图像数据子集中的数据宽度。
例如,图3是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,上述第一图像数据集中的图像数据按照
Figure 746803DEST_PATH_IMAGE020
的数据格式进行排列可以包括但不限于如图3所示,
Figure 241369DEST_PATH_IMAGE022
表示第一图像数据集包括的图像数据子集的数量,图3中示出
Figure 446086DEST_PATH_IMAGE022
=2,换言之,在如图3所示的图像数据处理过程中,包括两个批次的待处理数据,其中,一个批次等于一个图像数据子集,
Figure 815625DEST_PATH_IMAGE024
表示每个图像数据子集中的通道数量,图3中示出
Figure 281241DEST_PATH_IMAGE024
=5,表示该批次的待处理数据包括有5个通道的待处理数据,
Figure 212288DEST_PATH_IMAGE026
表示每个图像数据子集中的数据高度,图3中示出
Figure 373142DEST_PATH_IMAGE026
=h,
Figure 47837DEST_PATH_IMAGE028
表示每个图像数据子集中的数据宽度,图3中示出
Figure 736002DEST_PATH_IMAGE028
=w,“A,B,C”表示不同通道内的图像数据。
可选地,在本实施例中,上述图像数据的处理方法的应用场景可以包括但不限于医疗、金融、征信、银行、政务、政府、游戏、能源、教育、安防、楼宇、游戏、交通、物联、工业以及人工智能等多种需要进行图像数据处理的应用场景,上述应用场景可以包括但不限于应用在神经网络前向计算库中,由于神经网络前向计算库提供了所有神经网络算法的计算能力,本发明的应用场景可以涵盖所有使用神经网络前向库的应用场景,例如,包括但不限于与云技术关联的AI算法相关应用,如虚拟背景等。
其中,人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision, CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能***。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
自动驾驶技术通常包括高精地图、环境感知、行为决策、路径规划、运动控制等技术,自动驾驶技术有着广泛的应用前景,随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
其中,云会议是基于云计算技术的一种高效、便捷、低成本的会议形式。使用者只需要通过互联网界面,进行简单易用的操作,便可快速高效地与全球各地团队及客户同步分享语音、数据文件及视频,而会议中数据的传输、处理等复杂技术由云会议服务商帮助使用者进行操作。
目前国内云会议主要集中在以SaaS (Software as a Service,软件即服务)模式为主体的服务内容,包括电话、网络、视频等服务形式,基于云计算的视频会议就叫云会议。
在云会议时代,数据的传输、处理、存储全部由视频会议厂家的计算机资源处理,用户完全无需再购置昂贵的硬件和安装繁琐的软件,只需打开浏览器,登录相应界面,就能进行高效的远程会议。
云会议***支持多服务器动态集群部署,并提供多台高性能服务器,大大提升了会议稳定性、安全性、可用性。近年来,视频会议因能大幅提高沟通效率,持续降低沟通成本,带来内部管理水平升级,而获得众多用户欢迎,已广泛应用在政府、军队、交通、运输、金融、运营商、教育、企业等各个领域。毫无疑问,视频会议运用云计算以后,在方便性、快捷性、易用性上具有更强的吸引力,必将激发视频会议应用新高潮的到来。
例如,以上述图像数据的处理方法应用在云会议场景中为例,图4是根据本发明实施例的一种可选的图像数据的处理方法的示意图,如图4所示,具体包括但不限于如下步骤:
S1,用户终端402获取待处理的第一图像数据集;
S2,位于用户终端402内部或与用户终端402相连接的处理器404将第一图像数据集中的数据进行交织重排,得到第二图像数据集;
S3,对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果。
其中,上述第一图像数据集可以包括但不限于如图4所示数据库中存储的待处理的第一图像数据集,上述目标输出结果可以包括但不限于用于在图4所示的云会议应用406的虚拟背景显示区域408中进行显示的虚拟背景,或,其他使用上述图像数据处理方法处理之后得到的图像数据。
上述仅是一种示例,本实施例不做任何具体的限定。
可选地,在本实施例中,上述对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果可以包括但不限于对第二图像数据集和第二权重数据集执行卷积操作,得到第三图像数据集,其中,卷积操作包括但不限于卷积操作,目标输出结果包括但不限于第三图像数据集,第二图像数据集是将
Figure DEST_PATH_IMAGE030
组图像数据中的每组图像数据中的
Figure DEST_PATH_IMAGE032
个通道的图像数据进行交织重排,得到图像数据集,
Figure 41212DEST_PATH_IMAGE030
组图像数据是将第一图像数据集中每
Figure 79576DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到图像数据,
Figure DEST_PATH_IMAGE034
通过本实施例,采用获取待处理的第一图像数据集,其中,第一图像数据集中的图像数据按照
Figure 463021DEST_PATH_IMAGE020
的数据格式进行排列,
Figure 513017DEST_PATH_IMAGE022
表示第一图像数据集包括的图像数据子集的数量,
Figure 785866DEST_PATH_IMAGE024
表示每个图像数据子集中的通道数量,
Figure 311526DEST_PATH_IMAGE026
表示每个图像数据子集中的数据高度,
Figure 62444DEST_PATH_IMAGE028
表示每个图像数据子集中的数据宽度,将第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,第二图像数据集中的图像数据按照
Figure DEST_PATH_IMAGE036
的数据格式进行排列,交织重排的方式与卷积操作匹配的方式,通过针对图像数据处理过程中的计算过程实现深度优化,将计算过程中输入图像数据、输出图像数据以及计算权重进行相应的数据重排,由于将较多维度的数据重新排列为较低维度的数据,在后续进行卷积计算的过程中,处理不同通道的数据时,例如,现有技术中每次从不同通道内提取数据均需要跨通道提取,而采用本申请中记载的技术方案,能够将多个通道的数据进行分组,每次从不同通道内提取数据时,通过跨分组形式实现提取,能够有效降低跨通道提取数据的次数,进而实现降低了传统计算模式下额外的数据拷贝开销,降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了关技术中存在的处理图像数据的效率比较的技术问题。
作为一种可选的方案,所述获取待处理的第一图像数据集,包括:获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照
Figure 668744DEST_PATH_IMAGE020
的数据格式进行排列,
Figure 378074DEST_PATH_IMAGE022
表示所述第一图像数据集包括的图像数据子集的数量,
Figure 816DEST_PATH_IMAGE024
表示每个所述图像数据子集中的通道数量,
Figure 680059DEST_PATH_IMAGE026
表示所述第一图像数据集中每个所述图像数据子集中的数据高度,
Figure 203182DEST_PATH_IMAGE028
所述第一图像数据集中表示每个所述图像数据子集中的数据宽度;
所述将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,包括:将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照
Figure 83413DEST_PATH_IMAGE036
的数据格式进行排列,
Figure DEST_PATH_IMAGE038
表示所述第二图像数据集中每个所述图像数据子集中的数据高度,
Figure DEST_PATH_IMAGE040
表示所述第二图像数据集中每个所述图像数据子集中的数据宽度。
可选地,在本实施例中,上述将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集可以包括但不限于将第二图像数据集中的图像数据进行交织重排,以降低图像数据的维度,便于后续卷积操作。
其中,图5是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,上述将第一图像数据集中的数据进行交织重排,得到第二图像数据集可以包括但不限于如图5所示,将第一图像数据集中每
Figure 573212DEST_PATH_IMAGE032
个通道的图像数据分成一组,其中,
Figure 524988DEST_PATH_IMAGE034
,将图像数据中的
Figure 669661DEST_PATH_IMAGE032
个通道的图像数据进行交织重排,得到第二图像数据集,以
Figure 392898DEST_PATH_IMAGE032
=4为例,则如图5中示出了将每个图像数据按每四个通道为一组分成
Figure 488768DEST_PATH_IMAGE024
/4个组,再将每组内的4个通道维度的数据按照交织(混合)的形式重新排列,得到如图5所示的[N,H,C/4,W,C4]的数据结构的第二图像数据集,其中,“A,B,C”表示不同通道内的图像数据。
例如,以图5中的示例进行如下说明:
位于第一图像数据集左上角的A(1,1)数据,其位于第一个通道内的第一行、第一列,而B(1,1)数据,其位于第二个通道内的第一行、第一列,当进行卷积运算时,在提取A(1,1)数据后,需要提取B(1,1)数据的情况下,现有技术中需要由提取A通道数据的模式切换为提取B通道数据的模式,也即,需要跨通道来进行数据提取,而采用本实施例,通过将A(1,1)的数据排列在第二图像数据集中的第一行、第一列,B(1,1)的数据排列在第二图像数据集中的第一行、第二列,在提取了A(1,1)数据之后,直接可以提取B(1,1)的数据,避免了跨通道提取数据造成的cache miss等问题。
作为一种可选的方案,将第一图像数据集中的数据进行交织重排,得到第二图像数据集,包括:
将第一图像数据集中每
Figure 447496DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 118780DEST_PATH_IMAGE030
组图像数据,其中,
Figure 245874DEST_PATH_IMAGE034
Figure 861663DEST_PATH_IMAGE030
组图像数据中的每组图像数据中的
Figure 997984DEST_PATH_IMAGE032
个通道的图像数据进行交织重排,得到第二图像数据集。
可选地,在本实施例中,上述将第一图像数据集中每
Figure 54933DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 447868DEST_PATH_IMAGE030
组图像数据可以包括但不限于在
Figure 801488DEST_PATH_IMAGE024
Figure 39702DEST_PATH_IMAGE032
的整数倍的情况下,将第一图像数据集中每
Figure 872529DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 905207DEST_PATH_IMAGE030
组图像数据,其中,
Figure DEST_PATH_IMAGE042
,在
Figure 197386DEST_PATH_IMAGE024
不为
Figure 911395DEST_PATH_IMAGE032
的整数倍的情况下,将第一图像数据集中的通道数量的从
Figure 270832DEST_PATH_IMAGE024
增加到
Figure DEST_PATH_IMAGE044
,得到第三图像数据集,其中,
Figure 848313DEST_PATH_IMAGE044
Figure 660411DEST_PATH_IMAGE032
的整数倍,第三图像数据集中增加的通道上的图像数据为0;将第三图像数据集中每
Figure 676646DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 828273DEST_PATH_IMAGE030
组图像数据,其中,
Figure 910411DEST_PATH_IMAGE002
以N=1为例,图6是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,上述第二图像数据集可以包括但不限于如图6所示,其中,“A,B,C”表示不同通道内的图像数据,将A(1,1)、B(1,1)、C(1,1)、D(1,1)交织重排为同一高度的数据,图像数据中不同通道的数据连续排序,提高了数据访问的局部性,可以极大的降低Cache Miss的概率,且M1个通道打包处理,在使用SIMD计算时,现有技术中,在卷积核的尺寸为非1x1尺寸的情况下,在对输入的图片提取特征时,对于边界区域的特征提取,需要将额外的区域配置为0,进而实现对边界区域的特征提取。
以图5为例,在卷积核的尺寸为3x3的情况下,在提取B(2,1)为中心点的特征数据时,现有技术需要在第一图像数据集中B(2,1)的左侧,补入三个数值为0的特征点,以实现B(2,1)数据的特征提取,而在重新排列数据之后,第二图像数据集中B(2,1)左侧的数据为A(2,1)的数据,因此,无需进行补边操作,直接基于B(2,1)进行特征提取即可,也即,由于在本申请中对待处理数据进行了重新交织排布,在使用卷积核提取边界数据的过程中,可以降低补边的次数,将不同通道内的数据置于同一维度,能够达到节省数据拷贝的额外开销的效果。
通过本实施例,采用将第一图像数据集中每
Figure 740963DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 826469DEST_PATH_IMAGE030
组图像数据,其中,
Figure 567023DEST_PATH_IMAGE034
,将
Figure 283044DEST_PATH_IMAGE030
组图像数据中的每组图像数据中的
Figure 69734DEST_PATH_IMAGE032
个通道的图像数据进行交织重排,得到第二图像数据集的方式,通过将第一图像数据集中的数据进行交织重排,得到第二图像数据集,降低了传统计算模式下容易造成的Cache Miss以及额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了关技术中存在的处理图像数据的效率比较的技术问题。
作为一种可选的方案,将第一图像数据集中每
Figure 257133DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 180090DEST_PATH_IMAGE030
组图像数据,包括:
Figure 926067DEST_PATH_IMAGE024
Figure 934474DEST_PATH_IMAGE032
的整数倍的情况下,将第一图像数据集中每
Figure 191143DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 133386DEST_PATH_IMAGE030
组图像数据,其中,
Figure 551729DEST_PATH_IMAGE042
Figure 516274DEST_PATH_IMAGE024
不为
Figure 311054DEST_PATH_IMAGE032
的整数倍的情况下,将第一图像数据集中的通道数量的从
Figure 441559DEST_PATH_IMAGE024
增加到
Figure 889858DEST_PATH_IMAGE044
,得到第三图像数据集,其中,
Figure 872857DEST_PATH_IMAGE044
Figure 940171DEST_PATH_IMAGE032
的整数倍,第三图像数据集中增加的通道上的图像数据为0;将第三图像数据集中每
Figure 331706DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 357431DEST_PATH_IMAGE030
组图像数据,其中,
Figure 562148DEST_PATH_IMAGE002
可选地,在本实施例中,上述在
Figure 964310DEST_PATH_IMAGE024
不为
Figure 334986DEST_PATH_IMAGE032
的整数倍的情况下,将第一图像数据集中的通道数量的从
Figure 203716DEST_PATH_IMAGE024
增加到
Figure 161308DEST_PATH_IMAGE044
可以包括但不限于C2=
Figure DEST_PATH_IMAGE046
,当然也可以向下取整或以其他方式进行取整。
以N=1,C1=5,M1=4为例,如果通道数C1不能整除4则补齐到4的倍数,补上的激活值(对应于前述的图像数据)全部填0,如图5所示,第二行第二列至第四列均为“0.0f”。
上述仅是一种示例,本实施例不做任何具体限定。
通过本实施例,采用在
Figure 215764DEST_PATH_IMAGE024
Figure 316313DEST_PATH_IMAGE032
的整数倍的情况下,将第一图像数据集中每
Figure 214999DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 394307DEST_PATH_IMAGE030
组图像数据,其中,
Figure 512174DEST_PATH_IMAGE042
,在
Figure 93328DEST_PATH_IMAGE024
不为
Figure 366177DEST_PATH_IMAGE032
的整数倍的情况下,将第一图像数据集中的通道数量的从
Figure 32782DEST_PATH_IMAGE024
增加到
Figure 908334DEST_PATH_IMAGE044
,得到第三图像数据集,其中,
Figure 576950DEST_PATH_IMAGE044
Figure 755122DEST_PATH_IMAGE032
的整数倍,第三图像数据集中增加的通道上的图像数据为0;将第三图像数据集中每
Figure 643444DEST_PATH_IMAGE032
个通道的图像数据分成一组,得到
Figure 322687DEST_PATH_IMAGE030
组图像数据,其中,
Figure 347274DEST_PATH_IMAGE002
,通过将第一图像数据集中的数据进行交织重排,得到第二图像数据集,降低了传统计算模式下容易造成的Cache Miss以及额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了关技术中存在的处理图像数据的效率比较的技术问题。
作为一种可选的方案,将
Figure 9198DEST_PATH_IMAGE030
组图像数据中的每组图像数据中的
Figure 119237DEST_PATH_IMAGE032
个通道的图像数据进行交织重排,得到第二图像数据集,包括:
Figure 211958DEST_PATH_IMAGE024
Figure 622210DEST_PATH_IMAGE032
的整数倍的情况下,将
Figure 640720DEST_PATH_IMAGE030
组图像数据中的每组图像数据中的
Figure 769213DEST_PATH_IMAGE032
个通道的图像数据进行交织重排,得到第二图像数据集,其中,
Figure 462362DEST_PATH_IMAGE004
Figure 632181DEST_PATH_IMAGE006
Figure 791898DEST_PATH_IMAGE024
不为
Figure 578327DEST_PATH_IMAGE032
的整数倍的情况下,将
Figure 544008DEST_PATH_IMAGE030
组图像数据中的每组图像数据中的
Figure 928853DEST_PATH_IMAGE032
个通道的图像数据进行交织重排,得到第二图像数据集,其中,
Figure 232708DEST_PATH_IMAGE004
Figure 335793DEST_PATH_IMAGE008
可选地,在本实施例中,如图5所示,以N=1,C1=5,M1=4为例,则上述
Figure 246111DEST_PATH_IMAGE004
即为图5所示的W2=w*C4
Figure 983998DEST_PATH_IMAGE008
即为图5所示的H2=H*C/4。
通过本实施例,将数据解构进行重排为
Figure 78993DEST_PATH_IMAGE036
后,不需要对数据进行补边也可以同时利用SIMD来进行加速,规避掉卷积运算时补边的数据拷贝的额外开销。
作为一种可选的方案,方法还包括:
获取预设的第一权重数据集,其中,第一权重数据集中的权重数据按照
Figure DEST_PATH_IMAGE048
的数据格式进行排列,
Figure DEST_PATH_IMAGE050
表示第一权重数据集包括的权重数据子集的数量,
Figure 121904DEST_PATH_IMAGE044
表示每个权重数据子集中的通道数量,
Figure DEST_PATH_IMAGE052
表示每个权重数据子集中的数据高度,
Figure DEST_PATH_IMAGE054
表示每个权重数据子集中的数据宽度;
将第一权重数据集中的数据进行交织重排,得到第二权重数据集,其中,第二权重数据集中的权重数据按照
Figure DEST_PATH_IMAGE056
的数据格式进行排列。
可选地,在本实施例中,上述第一权重数据集可以包括但不限于进行卷积计算过程中,使用卷积核处理图像数据时所采用的权重数据,例如,以上述图像数据的处理方法应用在云会议场景中为例,图7是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,如图7所示,具体包括但不限于如下步骤:
S1,位于用户终端702内部或与用户终端702相连接的处理器704获取预设的第一权重数据集;
S2,位于用户终端702内部或与用户终端702相连接的处理器704将第一权重数据集中的数据进行交织重排,得到第二权重数据集。
其中,上述第一权重数据集可以包括但不限于在如图7所示数据库中存储,上述第二权重数据集可以包括但不限于用于与待处理的第二图像数据集关联使用,以在图7所示的云会议应用706的虚拟背景显示区域708中生成虚拟背景。
可选地,在本实施例中,图8是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,上述第一图像数据集中的图像数据按照
Figure 109015DEST_PATH_IMAGE048
的数据格式进行排列可以包括但不限于如图8所示,
Figure 874977DEST_PATH_IMAGE050
表示第一权重数据集包括的权重数据子集的数量,图8中示出的N2=3,也即N2=Cout
Figure 203190DEST_PATH_IMAGE044
表示每个权重数据子集中的通道数量,图8中示出的C2=5,也即C2=Cin
Figure 484130DEST_PATH_IMAGE052
表示每个权重数据子集中的数据高度,图8中示出的H3=4,也即H3= kernel_h,
Figure 828261DEST_PATH_IMAGE054
表示每个权重数据子集中的数据宽度,图8中示出的W3=3,也即W3= kernel_w,“A,B,C”表示不同通道内的图像数据。
上述仅是一种示例,本实施例不做任何具体的限定。
通过本实施例,采用获取预设的第一权重数据集,其中,第一权重数据集中的权重数据按照
Figure 511047DEST_PATH_IMAGE048
的数据格式进行排列,
Figure 275740DEST_PATH_IMAGE050
表示第一权重数据集包括的权重数据子集的数量,
Figure 43976DEST_PATH_IMAGE044
表示每个权重数据子集中的通道数量,
Figure 162105DEST_PATH_IMAGE052
表示每个权重数据子集中的数据高度,
Figure 463511DEST_PATH_IMAGE054
表示每个权重数据子集中的数据宽度,将第一权重数据集中的数据进行交织重排,得到第二权重数据集,其中,第二权重数据集中的权重数据按照
Figure DEST_PATH_IMAGE056
的数据格式进行排列的方式,通过将第一权重数据集中的数据进行交织重排,得到第二权重数据集,降低了传统计算模式下容易造成的Cache Miss以及额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了关技术中存在的处理图像数据的效率比较的技术问题。
作为一种可选的方案,将第一权重数据集中的数据进行交织重排,得到第二权重数据集,包括:
将第一权重数据集中每
Figure DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure DEST_PATH_IMAGE062
组权重数据,其中,
Figure DEST_PATH_IMAGE064
Figure 992581DEST_PATH_IMAGE062
组权重数据中的每组权重数据中的
Figure 779272DEST_PATH_IMAGE060
个权重数据进行交织重排,得到第二权重数据集。
可选地,在本实施例中,图9是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,上述将第一图像数据集中的数据进行交织重排,得到第二图像数据集可以包括但不限于如图9所示,以N2=1为例,将第一权重数据集中每
Figure 736644DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 659601DEST_PATH_IMAGE062
组权重数据,将
Figure 47988DEST_PATH_IMAGE062
组权重数据中的每组权重数据中的
Figure 86089DEST_PATH_IMAGE060
个权重数据进行交织重排,得到第二权重数据集,以
Figure 483703DEST_PATH_IMAGE060
=4为例,则如图9中示出了将权重数据每四个输出通道为一组分成C/4个组,如果输出通道数不能整除4则补齐到4的倍数,补上的激活值全部填0,每组内的4个通道维度的数据按照交织(混合)的形式,另外在随后的维度将输入通道维度顺序排列,即可得到[Cout/4,kernel_h,kernel_w,Cin,Cout4]的数据结构,OC4即为Cout4,IC即为Cin。
可选地,在本实施例中,上述将第一权重数据集中每
Figure 526746DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 115728DEST_PATH_IMAGE062
组权重数据,包括但不限于在
Figure 877010DEST_PATH_IMAGE050
Figure 576851DEST_PATH_IMAGE060
的整数倍的情况下,将第一权重数据集中每
Figure 474400DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 594802DEST_PATH_IMAGE062
组权重数据,其中,
Figure DEST_PATH_IMAGE066
,在
Figure 110227DEST_PATH_IMAGE050
不为
Figure 974278DEST_PATH_IMAGE060
的整数倍的情况下,将第一权重数据集中的权重数据子集的数量的从
Figure 365814DEST_PATH_IMAGE050
增加到
Figure DEST_PATH_IMAGE068
,得到第三权重数据集,其中,
Figure 765440DEST_PATH_IMAGE068
Figure 501315DEST_PATH_IMAGE060
的整数倍,第三权重数据集中增加的权重数据子集中的权重数据为0;将第三权重数据集中每
Figure 637898DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 883940DEST_PATH_IMAGE062
组权重数据,其中,
Figure 611725DEST_PATH_IMAGE012
通过本实施例,采用将第一权重数据集中每
Figure 444683DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 244012DEST_PATH_IMAGE062
组权重数据,其中,
Figure 350420DEST_PATH_IMAGE064
,将
Figure 452368DEST_PATH_IMAGE062
组权重数据中的每组权重数据中的
Figure 490731DEST_PATH_IMAGE060
个权重数据进行交织重排,得到第二权重数据集的方式,通过将第一权重数据集中的数据进行交织重排,得到第二权重数据集,降低了传统计算模式下容易造成的Cache Miss以及额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了关技术中存在的处理图像数据的效率比较的技术问题。
作为一种可选的方案,将第一权重数据集中每
Figure 969117DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 783227DEST_PATH_IMAGE062
组权重数据,包括:
Figure 321656DEST_PATH_IMAGE050
Figure 129206DEST_PATH_IMAGE060
的整数倍的情况下,将第一权重数据集中每
Figure 440976DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 814320DEST_PATH_IMAGE062
组权重数据,其中,
Figure 163131DEST_PATH_IMAGE066
Figure 848190DEST_PATH_IMAGE050
不为
Figure 340482DEST_PATH_IMAGE060
的整数倍的情况下,将第一权重数据集中的权重数据子集的数量的从
Figure 529850DEST_PATH_IMAGE050
增加到
Figure 82185DEST_PATH_IMAGE068
,得到第三权重数据集,其中,
Figure 487496DEST_PATH_IMAGE068
Figure 783479DEST_PATH_IMAGE060
的整数倍,第三权重数据集中增加的权重数据子集中的权重数据为0;将第三权重数据集中每
Figure 364371DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 681083DEST_PATH_IMAGE062
组权重数据,其中,
Figure 950522DEST_PATH_IMAGE012
可选地,在本实施例中,上述在
Figure 142206DEST_PATH_IMAGE050
不为
Figure 813490DEST_PATH_IMAGE060
的整数倍的情况下,将第一权重数据集中的权重数据子集的数量的从
Figure 566682DEST_PATH_IMAGE050
增加到
Figure 827812DEST_PATH_IMAGE068
,得到第三权重数据集可以包括但不限于N3=
Figure DEST_PATH_IMAGE070
,当然也可以向上取整或以其他方式进行取整。
以N2=3, M2=4为例,如果N2不能整除4则补齐到4的倍数,补上的激活值(对应于前述的图像数据)全部填0,如图9所示,第四列、第八列、第十二列,以此类推均为“0.0f”。
上述仅是一种示例,本实施例不做任何具体限定。
通过本实施例,采用在
Figure 901816DEST_PATH_IMAGE050
Figure 552240DEST_PATH_IMAGE060
的整数倍的情况下,将第一权重数据集中每
Figure 351700DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 48260DEST_PATH_IMAGE062
组权重数据,其中,
Figure 191535DEST_PATH_IMAGE066
,在
Figure 165307DEST_PATH_IMAGE050
不为
Figure 260302DEST_PATH_IMAGE060
的整数倍的情况下,将第一权重数据集中的权重数据子集的数量的从
Figure 224584DEST_PATH_IMAGE050
增加到
Figure 328807DEST_PATH_IMAGE068
,得到第三权重数据集,其中,
Figure 345303DEST_PATH_IMAGE068
Figure 611199DEST_PATH_IMAGE060
的整数倍,第三权重数据集中增加的权重数据子集中的权重数据为0;将第三权重数据集中每
Figure 564242DEST_PATH_IMAGE060
个权重数据子集的权重数据分成一组,得到
Figure 439532DEST_PATH_IMAGE062
组权重数据,其中,
Figure 60001DEST_PATH_IMAGE012
的方式,通过将第一权重数据集中的数据进行交织重排,得到第二权重数据集,降低了传统计算模式下容易造成的Cache Miss以及额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了关技术中存在的处理图像数据的效率比较的技术问题。
作为一种可选的方案,将
Figure 700060DEST_PATH_IMAGE062
组权重数据中的每组权重数据中的
Figure 232411DEST_PATH_IMAGE060
个权重数据进行交织重排,得到第二权重数据集,包括:
Figure 553802DEST_PATH_IMAGE050
Figure 481306DEST_PATH_IMAGE060
的整数倍的情况下,将
Figure 462907DEST_PATH_IMAGE062
组权重数据中的每组权重数据中的
Figure 718439DEST_PATH_IMAGE060
个权重数据进行交织重排,得到第二权重数据集,其中,
Figure 905838DEST_PATH_IMAGE014
Figure 94373DEST_PATH_IMAGE016
在N2不为M2的整数倍的情况下,将
Figure 377368DEST_PATH_IMAGE062
组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到第二权重数据集,其中,
Figure 261142DEST_PATH_IMAGE018
Figure 517811DEST_PATH_IMAGE016
可选地,在本实施例中,以M2=4为例,则如图9所示,H3 = kernel_h*kernel_w,W3 =IC* OC4,每组权重数据的高为kernel_w,宽为OC4。
上述仅是一种示例,本实施例不做任何具体限定。
作为一种可选的方案,N2表示卷积核的输出通道的数量,C2 表示卷积核的输入通道的数量,卷积操作为使用卷积核执行的卷积操作,每个权重数据子集包括C2 个输入通道上的权重数据,每个输出通道包括C2 个输入通道。
可选地,在本实施例中,上述每个权重数据子集包括C2 个输入通道上的权重数据可以包括但不限于使用卷积核基于第二权重数据集将C2个待处理的第二图像数据集执行卷积操作,得到目标输出结果。
作为一种可选的方案,对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果,包括:
对所述第二图像数据集和所述第二权重数据集执行所述卷积操作,得到第四图像数据集,其中,所述目标输出结果包括所述第三图像数据集,所述第二图像数据集是将S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到图像数据集,所述S1组图像数据是将所述第一图像数据集中每M1个通道的图像数据分成一组,得到图像数据,M1≤C1
可选地,在本实施例中,上述对第二图像数据集和第二权重数据集执行卷积操作包括但不限于在第二图像数据集中获取C2组图像数据,其中,每组图像数据包括第一图像数据集中位于同一个通道的多个图像数据,每组图像数据是从C2组图像数据中的上一组图像数据的存储地址偏移1个地址得到的图像数据,对C2组图像数据和第二权重数据集中的N2×C2 组权重数据执行卷积操作,得到第三图像数据集中的N2组图像数据,其中,每组权重数据与每组图像数据具有相同的数据结构。
通过本实施例,采用对所述第二图像数据集和所述第二权重数据集执行所述卷积操作,得到第四图像数据集,其中,所述目标输出结果包括所述第三图像数据集,所述第二图像数据集是将S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到图像数据集,所述S1组图像数据是将所述第一图像数据集中每M1个通道的图像数据分成一组,得到图像数据,M1≤C1的方式,通过将第一权重数据集中的数据以及待处理的第一图像数据集中的数据进行交织重排,降低了传统计算模式下容易造成的Cache Miss以及额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了相关技术中存在的处理图像数据的效率比较低的技术问题。
作为一种可选的方案,对第二图像数据集和第二权重数据集执行卷积操作,得到第三图像数据集,包括:
在所述第二图像数据集中获取C2组图像数据,其中,每组图像数据包括所述第一图像数据集中位于同一个通道的多个图像数据,所述每组图像数据是从所述C2组图像数据中的上一组图像数据的存储地址偏移1个地址得到的图像数据;
对所述C2组图像数据和所述第二权重数据集中的N2×C2 组权重数据执行卷积操作,得到所述第三图像数据集中的N2组图像数据,其中,每组权重数据与所述每组图像数据具有相同的数据结构;
其中,所述第二权重数据集是将第一权重数据集中的数据进行交织重排,得到第二权重数据集,所述第一权重数据集中的权重数据按照N2×C2×H3×W3的数据格式进行排列,N2表示所述第一权重数据集包括的权重数据子集的数量,C2 表示每个所述权重数据子集中的通道数量,H3表示每个所述权重数据子集中的数据高度,W3表示每个所述权重数据子集中的数据宽度。
可选地,在本实施例中,上述每组图像数据是从C2组图像数据中的上一组图像数据的存储地址偏移1个地址得到的图像数据可以包括但不限于按照预定步长的滑动窗口处理图像数据,也即,从C2组图像数据中的上一组图像数据的存储地址偏移1个地址即为步长=1。
可选地,在本实施例中,上述每组权重数据与每组图像数据具有相同的数据结构可以包括但不限于上述M1与M2相同。
通过本实施例,采用从C2组图像数据中的上一组图像数据的存储地址偏移1个地址得到的图像数据,以得到每组图像数据,通过将第一权重数据集中的数据以及待处理的第一图像数据集中的数据进行交织重排,降低了卷积计算过程中,跨通道获取数据的频率,进而能够降低传统计算模式下容易造成的Cache Miss以及额外的数据拷贝开销,达到了降低出现Cache Miss的概率的目的,从而实现了优化设备计算性能,提高图像数据的处理效率的技术效果,进而解决了相关技术中存在的处理图像数据的效率比较低的技术问题。
作为一种可选的方案,对所述C2组图像数据和所述第二权重数据集中的N2×C2组权重数据执行卷积操作,得到所述第三图像数据集中的N2组图像数据,包括:
将所述N2×C2组权重数据中的每C2组权重数据分别与所述C2组图像数据执行加权求和操作,得到所述N2组图像数据。
可选地,在本实施例中,可以通过包括但不限于按照预定的滑动步长逐个使用卷积核将N2×C2组权重数据中的每C2组权重数据分别与C2组图像数据执行加权求和操作,得到N2组图像数据。
例如,图10是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,如图10所示,以卷积核尺寸为3x3为例,通过使用卷积核基于第二权重数据集中记录的对应的权重参数,对相同位置的第二图像数据集中的数据进行加权求和,得到N2组图像数据中的一组图像数据,按照步长为1滑动窗口继续处理,以得到上述N2组图像数据。
作为一种可选的方案,方法还包括:在第一内存空间中存储第一图像数据集和第二图像数据集;
在第二内存空间中存储第二权重数据集,其中,第一内存空间与第二内存空间为相互独立的内存空间。
可选地,在本实施例中,上述第一内存空间可以包括但不限于用于存储图像数据的存储空间,例如,Texture资源,上述第二内存空间可以包括但不限于用于存储权重数据的存储空间,例如,Buffer资源。
图11是根据本发明实施例的又一种可选的图像数据的处理方法的示意图,如图11所示,现有的技术方案在使用例如Metal做GPU运算的时候,一般只会使用一种内存(Buffer/Texture)作为数据加载/存储的空间,然后在目前模型设计越来越轻量级的计算模式下,内存带宽的访问往往会限制成为最终性能的瓶颈,而通过本实施例,Metal中DataBuffer资源和Texture资源是独立的内存空间。因此,相比传统的数据只使用一种内存结构(Buffer/Texture)表达方式对比,输入/输出使用Texture保存数据,权重/偏置参数使用Buffer来表示存储,区分开使用Texture和Buffer可以获取到更高的内存带宽,降低CacheMiss的概率,内存访问的性能得到提升。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述图像数据的处理方法的图像数据的处理装置。如图12所示,该装置包括:
获取模块1202,用于获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照第一数据格式进行排列;
处理模块1204,用于将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照第二数据格式进行排列,所述交织重排的方式与卷积操作匹配,所述第二数据格式的维度小于所述第一数据格式;
执行模块1206,用于对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果。
作为一种可选的方案,所述获取模块,包括:获取单元,用于获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照N1×C1×H1×W1的数据格式进行排列,N1表示所述第一图像数据集包括的图像数据子集的数量,C1表示每个所述图像数据子集中的通道数量,H1表示所述第一图像数据集中每个所述图像数据子集中的数据高度,W1表示所述第一图像数据集中表示每个所述图像数据子集中的数据宽度;所述处理模块,包括:处理单元,用于将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照N1×H2×W2的数据格式进行排列,H2表示所述第二图像数据集中每个所述图像数据子集中的数据高度,W2表示所述第二图像数据集中每个所述图像数据子集中的数据宽度。
作为一种可选的方案,所述处理模块,包括:分组单元,用于将所述第一图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,其中,M1≤C1;排列单元,用于将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集。
作为一种可选的方案,所述分组单元用于通过如下方式将所述第一图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据:在C1不为M1的整数倍的情况下,将所述第一图像数据集中的通道数量的从C1增加到C2,得到第三图像数据集,其中,C2为M1的整数倍,所述第三图像数据集中增加的通道上的图像数据为0;将所述第三图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,其中,
Figure 793809DEST_PATH_IMAGE002
作为一种可选的方案,所述排列单元用于通过如下方式将将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集:在C1为M1的整数倍的情况下,将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集,其中,
Figure 743310DEST_PATH_IMAGE004
Figure 645538DEST_PATH_IMAGE006
在C1不为M1的整数倍的情况下,将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集,其中,
Figure 204433DEST_PATH_IMAGE004
Figure 242928DEST_PATH_IMAGE008
作为一种可选的方案,所述装置还用于:获取预设的第一权重数据集,其中,所述第一权重数据集中的权重数据按照N2×C2×H3×W3的数据格式进行排列,N2表示所述第一权重数据集包括的权重数据子集的数量,C2表示每个所述权重数据子集中的通道数量,H3表示每个所述权重数据子集中的数据高度,W3表示每个所述权重数据子集中的数据宽度;将所述第一权重数据集中的数据进行交织重排,得到所述第二权重数据集,其中,所述第二权重数据集中的权重数据按照H4×W4的数据格式进行排列。
作为一种可选的方案,所述装置还用于通过如下方式将所述第一权重数据集中的数据进行交织重排,得到所述第二权重数据集:将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到S2组权重数据,其中,M2≤N2;将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集。
作为一种可选的方案,所述装置还用于通过如下方式将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到S2组权重数据,包括:
在N2为M2的整数倍的情况下,将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到所述S2组权重数据,其中,
Figure 97751DEST_PATH_IMAGE010
在N2不为M2的整数倍的情况下,将所述第一权重数据集中的权重数据子集的数量的从N2增加到N3,得到第三权重数据集,其中,N3为M2的整数倍,所述第三权重数据集中增加的权重数据子集中的权重数据为0;将所述第三权重数据集中每M2个权重数据子集的权重数据分成一组,得到所述S2组权重数据,其中,
Figure 844865DEST_PATH_IMAGE012
作为一种可选的方案,所述装置还用于通过如下方式将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,包括:
在N2为M2的整数倍的情况下,将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,其中,
Figure 584282DEST_PATH_IMAGE014
Figure 766696DEST_PATH_IMAGE016
在N2不为M2的整数倍的情况下,将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,其中,
Figure 526842DEST_PATH_IMAGE018
Figure 731558DEST_PATH_IMAGE016
作为一种可选的方案,所述N2表示卷积核的输出通道的数量,所述C2表示所述卷积核的输入通道的数量,所述卷积操作为使用所述卷积核执行的卷积操作,每个所述权重数据子集包括C2个所述输入通道上的权重数据,每个所述输出通道包括C2个所述输入通道。
作为一种可选的方案,所述装置还用于通过如下方式对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果:对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果,包括:
对所述第二图像数据集和所述第二权重数据集执行所述卷积操作,得到第四图像数据集,其中,所述目标输出结果包括所述第三图像数据集,所述第二图像数据集是将S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到图像数据集,所述S1组图像数据是将所述第一图像数据集中每M1个通道的图像数据分成一组,得到图像数据,M1≤C1
作为一种可选的方案,所述装置还用于通过如下方式对所述第二图像数据集和所述第二权重数据集执行卷积操作,得到第三图像数据集,包括:
在所述第二图像数据集中获取C2组图像数据,其中,每组图像数据包括所述第一图像数据集中位于同一个通道的多个图像数据,所述每组图像数据是从所述C2组图像数据中的上一组图像数据的存储地址偏移1个地址得到的图像数据;
对所述C2组图像数据和所述第二权重数据集中的N2×C2 组权重数据执行卷积操作,得到所述第三图像数据集中的N2组图像数据,其中,每组权重数据与所述每组图像数据具有相同的数据结构;
其中,所述第二权重数据集是将第一权重数据集中的数据进行交织重排,得到第二权重数据集,所述第一权重数据集中的权重数据按照N2×C2×H3×W3的数据格式进行排列,N2表示所述第一权重数据集包括的权重数据子集的数量,C2 表示每个所述权重数据子集中的通道数量,H3表示每个所述权重数据子集中的数据高度,W3表示每个所述权重数据子集中的数据宽度。
作为一种可选的方案,所述装置还用于通过如下方式对所述C2 组图像数据和所述第二权重数据集中的N2×C2组权重数据执行卷积操作,得到所述第三图像数据集中的N2组图像数据,包括:
将所述N2×C2组权重数据中的每C2组权重数据分别与所述C2组图像数据执行加权求和操作,得到所述N2组图像数据。
作为一种可选的方案,所述装置还用于:在第一内存空间中存储所述第一图像数据集和所述第二图像数据集;在第二内存空间中存储所述第二权重数据集,其中,所述第一内存空间与所述第二内存空间为相互独立的内存空间。
根据本发明实施例的又一个方面,还提供了一种用于实施上述图像数据的处理方法的电子设备,该电子设备可以是图1所示的终端设备或服务器。本实施例以该电子设备为服务器为例来说明。如图13所示,该电子设备包括存储器1302和处理器1304,该存储器1302中存储有计算机程序,该处理器1304被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取待处理的第一图像数据集,其中,第一图像数据集中的图像数据按照
Figure 133721DEST_PATH_IMAGE020
的数据格式进行排列,
Figure 238818DEST_PATH_IMAGE022
表示第一图像数据集包括的图像数据子集的数量,
Figure 169865DEST_PATH_IMAGE024
表示每个图像数据子集中的通道数量,
Figure 861877DEST_PATH_IMAGE026
表示每个图像数据子集中的数据高度,
Figure 707211DEST_PATH_IMAGE028
表示每个图像数据子集中的数据宽度;
S2,将第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,第二图像数据集中的图像数据按照
Figure 965017DEST_PATH_IMAGE036
的数据格式进行排列,交织重排的方式与卷积操作匹配;
S3,对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果。
可选地,本领域普通技术人员可以理解,图13所示的结构仅为示意,电子装置电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图13其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图13中所示更多或者更少的组件(如网络接口等),或者具有与图13所示不同的配置。
其中,存储器1302可用于存储软件程序以及模块,如本发明实施例中的图像数据的处理方法和装置对应的程序指令/模块,处理器1304通过运行存储在存储器1302内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的图像数据的处理方法。存储器1302可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1302可进一步包括相对于处理器1304远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1302具体可以但不限于用于存储待处理的图像数据等信息。作为一种示例,如图13所示,上述存储器1302中可以但不限于包括上述图像数据的处理装置中的获取模块1202,处理模块1204以及执行模块1206。此外,还可以包括但不限于上述图像数据的处理装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1306用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1306包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1306为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1308,用于显示图像数据;和连接总线1310,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式***中的一个节点,其中,该分布式***可以为区块链***,该区块链***可以是由该多个节点通过网络通信的形式连接形成的分布式***。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链***中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图像数据的处理方面的各种可选实现方式中提供的方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取待处理的第一图像数据集,其中,第一图像数据集中的图像数据按照
Figure 66965DEST_PATH_IMAGE020
的数据格式进行排列,
Figure 885755DEST_PATH_IMAGE022
表示第一图像数据集包括的图像数据子集的数量,
Figure 629720DEST_PATH_IMAGE024
表示每个图像数据子集中的通道数量,
Figure 476453DEST_PATH_IMAGE026
表示每个图像数据子集中的数据高度,
Figure 749303DEST_PATH_IMAGE028
表示每个图像数据子集中的数据宽度;
S2,将第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,第二图像数据集中的图像数据按照
Figure 389143DEST_PATH_IMAGE036
的数据格式进行排列,交织重排的方式与卷积操作匹配;
S3,对第二图像数据集和已获取的第二权重数据集执行卷积操作,得到目标输出结果。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (14)

1.一种图像数据的处理方法,其特征在于,包括:
获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照第一数据格式进行排列;
将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照第二数据格式进行排列,所述交织重排的方式与卷积操作匹配,所述第二数据格式的维度小于所述第一数据格式;
对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果;
所述获取待处理的第一图像数据集,包括:获取待处理的第一图像数据集,其中,所述第一图像数据集中的图像数据按照N1×C1×H1×W1的数据格式进行排列,N1表示所述第一图像数据集包括的图像数据子集的数量,C1表示每个所述图像数据子集中的通道数量,H1表示所述第一图像数据集中每个所述图像数据子集中的数据高度,W1表示所述第一图像数据集中表示每个所述图像数据子集中的数据宽度;
所述将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,包括:将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,其中,所述第二图像数据集中的图像数据按照N1×H2×W2的数据格式进行排列,H2表示所述第二图像数据集中每个所述图像数据子集中的数据高度,W2表示所述第二图像数据集中每个所述图像数据子集中的数据宽度。
2.根据权利要求1所述的方法,其特征在于,所述将所述第一图像数据集中的数据进行交织重排,得到第二图像数据集,包括:
将所述第一图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,其中,M1≤C1
将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集。
3.根据权利要求2所述的方法,其特征在于,所述将所述第一图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,包括:
在C1为M1的整数倍的情况下,将所述第一图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,其中,
Figure DEST_PATH_IMAGE002
在C1不为M1的整数倍的情况下,将所述第一图像数据集中的通道数量的从C1增加到C2,得到第三图像数据集,其中,C2为M1的整数倍,所述第三图像数据集中增加的通道上的图像数据为0;将所述第三图像数据集中每M1个通道的图像数据分成一组,得到S1组图像数据,其中,
Figure DEST_PATH_IMAGE004
4.根据权利要求3所述的方法,其特征在于,所述将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集,包括:
在C1为M1的整数倍的情况下,将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集,其中,
Figure DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE008
在C1不为M1的整数倍的情况下,将所述S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到所述第二图像数据集,其中,
Figure 195294DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE010
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取预设的第一权重数据集,其中,所述第一权重数据集中的权重数据按照N2×C2×H3×W3的数据格式进行排列,N2表示所述第一权重数据集包括的权重数据子集的数量,C2表示每个所述权重数据子集中的通道数量,H3表示每个所述权重数据子集中的数据高度,W3表示每个所述权重数据子集中的数据宽度;
将所述第一权重数据集中的数据进行交织重排,得到所述第二权重数据集,其中,所述第二权重数据集中的权重数据按照H4×W4的数据格式进行排列,所述H4表示所述第二权重数据集中的权重数据的数据高度,W4表示所述第二权重数据集中的权重数据的数据宽度。
6.根据权利要求5所述的方法,其特征在于,所述将所述第一权重数据集中的数据进行交织重排,得到所述第二权重数据集,包括:
将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到S2组权重数据,其中,M2≤N2
将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集。
7.根据权利要求6所述的方法,其特征在于,所述将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到S2组权重数据,包括:
在N2为M2的整数倍的情况下,将所述第一权重数据集中每M2个权重数据子集的权重数据分成一组,得到所述S2组权重数据,其中,
Figure DEST_PATH_IMAGE012
在N2不为M2的整数倍的情况下,将所述第一权重数据集中的权重数据子集的数量的从N2增加到N3,得到第三权重数据集,其中,N3为M2的整数倍,所述第三权重数据集中增加的权重数据子集中的权重数据为0;将所述第三权重数据集中每M2个权重数据子集的权重数据分成一组,得到所述S2组权重数据,其中,
Figure DEST_PATH_IMAGE014
8.根据权利要求7所述的方法,其特征在于,所述将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,包括:
在N2为M2的整数倍的情况下,将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,其中,
Figure DEST_PATH_IMAGE016
Figure DEST_PATH_IMAGE018
在N2不为M2的整数倍的情况下,将所述S2组权重数据中的每组权重数据中的M2个权重数据进行交织重排,得到所述第二权重数据集,其中,
Figure DEST_PATH_IMAGE020
Figure 696724DEST_PATH_IMAGE018
9.根据权利要求5所述的方法,其特征在于,所述N2的取值为卷积核的输出通道的数量,所述C2的取值为所述卷积核的输入通道的数量,所述卷积操作为使用所述卷积核执行的卷积操作,每个所述权重数据子集包括C2个所述输入通道上的权重数据。
10.根据权利要求1至9中任一项所述的方法,其特征在于,所述对所述第二图像数据集和已获取的第二权重数据集执行所述卷积操作,得到目标输出结果,包括:
对所述第二图像数据集和所述第二权重数据集执行所述卷积操作,得到第四图像数据集,其中,所述目标输出结果包括所述第四图像数据集,所述第二图像数据集是将S1组图像数据中的每组图像数据中的M1个通道的图像数据进行交织重排,得到的图像数据集,所述S1组图像数据是将所述第一图像数据集中每M1个通道的图像数据分成一组,得到的图像数据,M1≤C1,所述
Figure DEST_PATH_IMAGE022
表示每个所述图像数据子集中的通道数量。
11.根据权利要求10所述的方法,其特征在于,所述对所述第二图像数据集和所述第二权重数据集执行所述卷积操作,得到第四图像数据集,包括:
在所述第二图像数据集中获取C2组图像数据,其中,每组图像数据包括所述第一图像数据集中位于同一个通道的多个图像数据,所述每组图像数据是从所述C2组图像数据中的上一组图像数据的存储地址偏移1个地址得到的图像数据;
对所述C2组图像数据和所述第二权重数据集中的N2×C2 组权重数据执行卷积操作,得到所述第四图像数据集中的N2组图像数据,其中,每组权重数据与所述每组图像数据具有相同的数据结构;
其中,所述第二权重数据集是将第一权重数据集中的数据进行交织重排,得到第二权重数据集,所述第一权重数据集中的权重数据按照N2×C2×H3×W3的数据格式进行排列,N2表示所述第一权重数据集包括的权重数据子集的数量,C2 表示每个所述权重数据子集中的通道数量,H3表示每个所述权重数据子集中的数据高度,W3表示每个所述权重数据子集中的数据宽度。
12.根据权利要求1至9中任一项所述的方法,其特征在于,所述方法还包括:
在第一内存空间中存储所述第一图像数据集和所述第二图像数据集;
在第二内存空间中存储所述第二权重数据集,其中,所述第一内存空间与所述第二内存空间为相互独立的内存空间。
13.一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行所述权利要求1至12任一项中所述的方法。
14.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至12任一项中所述的方法。
CN202110451609.0A 2021-04-26 2021-04-26 图像数据的处理方法和装置、存储介质及电子设备 Active CN112990370B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202110451609.0A CN112990370B (zh) 2021-04-26 2021-04-26 图像数据的处理方法和装置、存储介质及电子设备
PCT/CN2022/086217 WO2022228105A1 (zh) 2021-04-26 2022-04-12 图像数据的处理方法和装置、存储介质及电子设备
JP2023524148A JP2023547831A (ja) 2021-04-26 2022-04-12 画像データの処理方法及び装置並びに電子機器及びコンピュータプログラム
EP22794576.3A EP4296891A1 (en) 2021-04-26 2022-04-12 Processing method and apparatus for image data, storage medium, and electronic device
US17/991,416 US20230083565A1 (en) 2021-04-26 2022-11-21 Image data processing method and apparatus, storage medium, and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110451609.0A CN112990370B (zh) 2021-04-26 2021-04-26 图像数据的处理方法和装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN112990370A CN112990370A (zh) 2021-06-18
CN112990370B true CN112990370B (zh) 2021-09-10

Family

ID=76340137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110451609.0A Active CN112990370B (zh) 2021-04-26 2021-04-26 图像数据的处理方法和装置、存储介质及电子设备

Country Status (5)

Country Link
US (1) US20230083565A1 (zh)
EP (1) EP4296891A1 (zh)
JP (1) JP2023547831A (zh)
CN (1) CN112990370B (zh)
WO (1) WO2022228105A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112990370B (zh) * 2021-04-26 2021-09-10 腾讯科技(深圳)有限公司 图像数据的处理方法和装置、存储介质及电子设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106779057B (zh) * 2016-11-11 2020-04-17 北京旷视科技有限公司 基于gpu的计算二值神经网络卷积的方法及装置
CN109426858B (zh) * 2017-08-29 2021-04-06 京东方科技集团股份有限公司 神经网络、训练方法、图像处理方法及图像处理装置
EP3654210A1 (en) * 2017-08-31 2020-05-20 Cambricon Technologies Corporation Limited Chip device and related products
CN108875904A (zh) * 2018-04-04 2018-11-23 北京迈格威科技有限公司 图像处理方法、图像处理装置和计算机可读存储介质
CN110557579B (zh) * 2018-05-31 2021-11-02 杭州海康威视数字技术股份有限公司 一种图像处理方法、装置及设备、可读介质
CN110163790A (zh) * 2018-06-11 2019-08-23 腾讯科技(深圳)有限公司 图像处理方法、装置、***、存储介质和计算机设备
CN112771578B (zh) * 2018-09-27 2024-05-24 渊慧科技有限公司 使用细分缩放和深度上缩放的图像生成
CN111695682B (zh) * 2019-03-15 2022-11-01 上海寒武纪信息科技有限公司 数据处理方法及装置
US11645512B2 (en) * 2019-04-30 2023-05-09 Baidu Usa Llc Memory layouts and conversion to improve neural network inference performance
CN110309837B (zh) * 2019-07-05 2021-07-06 北京迈格威科技有限公司 基于卷积神经网络特征图的数据处理方法及图像处理方法
CN111310115B (zh) * 2020-01-22 2024-05-24 深圳市商汤科技有限公司 数据处理方法、装置及芯片、电子设备、存储介质
CN112215754B (zh) * 2020-10-26 2024-01-26 北京达佳互联信息技术有限公司 图像放大方法、装置、电子设备和存储介质
CN112990370B (zh) * 2021-04-26 2021-09-10 腾讯科技(深圳)有限公司 图像数据的处理方法和装置、存储介质及电子设备

Also Published As

Publication number Publication date
US20230083565A1 (en) 2023-03-16
JP2023547831A (ja) 2023-11-14
WO2022228105A1 (zh) 2022-11-03
EP4296891A1 (en) 2023-12-27
CN112990370A (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
CN111626218B (zh) 基于人工智能的图像生成方法、装置、设备及存储介质
CN109543549B (zh) 用于多人姿态估计的图像数据处理方法及装置、移动端设备、服务器
CN111553267B (zh) 图像处理方法、图像处理模型训练方法及设备
CN111476708B (zh) 模型生成方法、模型获取方法、装置、设备及存储介质
CN111275784B (zh) 生成图像的方法和装置
CN111241985A (zh) 一种视频内容识别方法、装置、存储介质、以及电子设备
TWI719512B (zh) 使用像素通道置亂的卷積神經網路的演算方法與系統
CN113704531A (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
CN113344794B (zh) 一种图像处理方法、装置、计算机设备及存储介质
CN113763296A (zh) 图像处理方法、设备以及介质
CN113590854B (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN110992256B (zh) 一种图像处理方法、装置、设备及存储介质
CN112990370B (zh) 图像数据的处理方法和装置、存储介质及电子设备
CN114239809A (zh) 一种面向设备多源异构数据识别检测方法
CN114360018B (zh) 三维人脸表情的渲染方法及装置、存储介质及电子装置
CN113657272B (zh) 一种基于缺失数据补全的微视频分类方法及***
CN110956599A (zh) 图片处理方法和装置、存储介质及电子装置
CN113569824B (zh) 模型处理方法、相关设备、存储介质及计算机程序产品
CN116233532A (zh) 视频播放方法、装置、计算机设备及计算机可读存储介质
CN113793252B (zh) 图像处理方法、装置、芯片及其模组设备
CN113569886A (zh) 网络结构调整方法、装置和存储介质及电子设备
CN117079194B (zh) 云视频ai理解生成方法、装置及计算机设备
CN113825013B (zh) 图像显示方法和装置、存储介质及电子设备
WO2024082943A1 (zh) 视频检测方法和装置、存储介质及电子设备
CN115689881A (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
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40045464

Country of ref document: HK