CN113327217B - 一种卷积处理方法、装置、计算机设备及存储介质 - Google Patents
一种卷积处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN113327217B CN113327217B CN202110602237.7A CN202110602237A CN113327217B CN 113327217 B CN113327217 B CN 113327217B CN 202110602237 A CN202110602237 A CN 202110602237A CN 113327217 B CN113327217 B CN 113327217B
- Authority
- CN
- China
- Prior art keywords
- sub
- image data
- convolution
- group
- image
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 89
- 238000004590 computer program Methods 0.000 claims description 8
- 238000000034 method Methods 0.000 abstract description 29
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本公开提供了一种卷积处理方法、装置、计算机设备及存储介质,其中,该方法包括:获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据;针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核;利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。本公开实施例实现利用AI芯片对深度可分卷积depthwise卷积进行处理。
Description
技术领域
本公开涉及数据处理技术领域,具体而言,涉及一种卷积处理方法、装置、计算机设备及存储介质。
背景技术
卷积操作广泛应用于深度学习、图像处理等领域。其中,普通卷积、以及深度可分depthwise卷积应用较为广泛,普通卷积一般通过人工智能(Artificial Intelligence,AI)芯片进行处理,但是因为普通卷积和depthwise卷积的算法原理不同,但AI芯片通常是基于有限的算子类型设计的,对于某些AI芯片而言,其仅能够对普通卷积进行处理;造成depthwise卷积在AI芯片中处理受限。
发明内容
本公开实施例至少提供一种卷积处理方法、装置、计算机设备以及存储介质。
第一方面,本公开实施例提供了一种卷积处理方法,包括:获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据;针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核;利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。
这样,通过将depthwise卷积转换为普通卷积,能够利用AI芯片采用对普通卷积的处理方式得到depthwise卷积的处理结果。
在一种可能的实施方式中,所述将所述待处理图像数据分为至少一组子图像数据,包括:基于所述待处理图像数据中的子图像的数量、以及预设通道数量阈值,对所述待处理图像数据中的子图像进行分组,得到所述至少一组子图像数据。
这样,基于预设通道数量阈值对待处理图像数据分组,可以让每一组子图像数据中包含的子图像的数量等于预设通道数量阈值,进而保证该组子图像数据下的卷积核的每一位置处的卷积操作数据都有一个对应的子图像。
在一种可能的实施方式中,还包括:读取卷积处理核的配置信息;并基于所述配置信息,确定所述预设通道数量阈值。
这样,基于卷积处理核的配置信息得到的预设通道数量阈值可以知道该卷积处理核中的每一卷积核可以容纳卷积操作数据的位置的数量。
在一种可能的实施方式中,针对所述至少一组子图像数据中的每组子图像数据,在该组子图像数据中的子图像数量小于所述预设通道数量阈值的情况下,所述卷积处理方法还包括:为该组子图像数据填充预设图像数据;所述利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,包括:利用该组子图像数据对应的卷积核,对填充了所述预设图像数据后的该组子图像数据进行卷积处理。
这样,通过在子图像的数量小于预设通道数量阈值的子图像数据中添加预设图像数据,使得该组子图像数据中包含的待处理图像的子图像的数量与预设图像数据中的子图像的数量的和等于预设通道数量阈值。
在一种可能的实施方式中,每组子图像数据对应的卷积核包括:该组子图像数据中的子图像分别对应的卷积核;所述针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核,包括:针对该组子图像数据中的各子图像,根据该子图像在该组子图像数据中的第一相对位置,确定该子图像对应的卷积操作数在对应的卷积核中的第二相对位置;基于所述第二相对位置,生成该子图像对应的卷积核。
在一种可能的实施方式中,述基于所述第二相对位置,生成该子图像对应的卷积核,包括:在该子图像对应的卷积核中,除所述第二相对位置外的其他位置填充预设卷积操作数;并在所述第二相对位置填充该子图像对应的卷积操作数,得到该子图像对应的卷积核。
在一种可能的实施方式中,所述利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据,包括:将该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据输入至卷积处理核;利用所述卷积处理核同步对该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据进行卷积处理,得到该组图像数据中各子图像分别对应的输出结果数据。
第二方面,本公开实施例还提供一种卷积处理装置,包括:
第一处理模块,用于获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据;生成模块,用于针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核;第二处理模块,用于利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。
在一种可能的实施方式中,在将所述待处理图像数据分为至少一组子图像数据时,所述第一处理模块,具体用于基于所述待处理图像数据中的子图像的数量、以及预设通道数量阈值,对所述待处理图像数据中的子图像进行分组,得到所述至少一组子图像数据。
在一种可能的实施方式中,所述第一处理模块还用于读取卷积处理核的配置信息;并基于所述配置信息,确定所述预设通道数量阈值。
在一种可能的实施方式中,针对所述至少一组子图像数据中的每组子图像数据,在该组子图像数据中的子图像数量小于所述预设通道数量阈值的情况下,所述第一处理模块,还用于为该组子图像数据填充预设图像数据;所述第二处理模块,在所述利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理时,用于:利用该组子图像数据对应的卷积核,对填充了所述预设图像数据后的该组子图像数据进行卷积处理。
在一种可能的实施方式中,每组子图像数据对应的卷积核包括:该组子图像数据中的子图像分别对应的卷积核;在针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核时,所述生成模块,具体用于针对该组子图像数据中的各子图像,根据该子图像在该组子图像数据中的第一相对位置,确定该子图像对应的卷积操作数在对应的卷积核中的第二相对位置;基于所述第二相对位置,生成该子图像对应的卷积核。
在一种可能的实施方式中,在基于所述第二相对位置,生成该子图像对应的卷积核时,所述生成模块,具体用于在该子图像对应的卷积核中,除所述第二相对位置外的其他位置填充预设卷积操作数;并在所述第二相对位置填充该子图像对应的卷积操作数,得到该子图像对应的卷积核。
在一种可能的实施方式中,在利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据时,所述第二处理模块,具体用于将该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据输入至卷积处理核;利用所述卷积处理核同步对该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据进行卷积处理,得到该组图像数据中各子图像分别对应的输出结果数据。
第三方面,本公开可选实现方式还提供一种计算机设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
关于上述卷积处理装置、计算机设备、及计算机可读存储介质的效果描述参见上述卷积处理方法的说明,这里不再赘述。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的普通卷积过程示例图;
图2示出了本公开实施例所提供的depthwise卷积过程示例图;
图3示出了本公开实施例所提供的一种卷积处理方法的流程图;
图4示出了本公开实施例所提供的生成每组子图像数据下的各子图像的卷积核的方法流程图;
图5示出了本公开实施例所提供的一组子图像数据下的卷积核的示例图;
图6示出了本公开实施例所提供的一种子图像与对应卷积核进行卷积处理的示例图;
图7示出了本公开实施例所提供的一种计算一组子图像数据对应的数据输出结果的示例图;
图8示出了本公开实施例所提供的一种基于至少一组子图像数据下的各子图像分别对应的卷积核的输出结果数据,得到待处理图像数据的卷积结果数据的示例图;
图9示出了本公开实施例所提供的一种卷积处理装置的示意图;
图10示出了本公开实施例所提供的一种计算机设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
普通卷积、以及depthwise卷积是两种应用较为广泛的卷积。普通卷积、与depthwise卷积的计算原理不同:普通卷积的待处理图像数据对应多个卷积核,每个卷积核中包括待处理图像数据中的各子图像分别对应的卷积操作数(如图1中示出的卷积核1~卷积核n),针对每个子图像分别对应待处理图像不同通道子图像的情况,卷积操作数可以理解为对对应通道子图像进行卷积操作的子卷积核。针对每个卷积核,会将待处理图像数据中的各子图像与该卷积核中与该子图像对应的卷积操作数卷积后的输出数据对位相加后,得到该卷积核对待处理图像数据的输出结果数据(如图1中c所示),将多个卷积核得到的输出结果数据叠放在一起得到待处理图像数据的卷积结果数据(如图1中d所示);depthwise卷积的待处理图像数据对应的卷积核的数量等于待处理图像数据中包含的子图像的数量,每个卷积核中只包含待处理图像数据中的一个子图像对应的卷积操作数(如图2中b所示),将待处理图像数据中的每个子图像与该子图像对应的卷积核中的卷积操作数卷积后的输出数据叠放在一起,得到待处理图像数据的卷积结果数据(如图2中c所示)。
对于某些AI芯片而言,其仅能够对普通卷积进行处理;造成depthwise卷积在AI芯片中处理受限。
基于上述研究,本公开提供了一种卷积处理方法、装置、计算机设备及存储介质,通过对待处理图像数据、以及待处理图像中的各子图像分别对应的卷积操作数的处理,将depthwise卷积转换为普通卷积,能够利用AI芯片采用对普通卷积的处理方式得到depthwise卷积的处理结果。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种卷积处理方法进行详细介绍,本公开实施例所提供的卷积处理方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该卷积处理方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
本公开实施例中所述的卷积操作数,例如为在卷积过程中用到的权重数据,例如包括数据矩阵。
下面对本公开实施例提供的卷积处理方法加以说明。
参见图3所示,为本公开实施例提供的卷积处理方法的流程图,所述方法包括步骤S301~S303,其中:
S301:获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据。
在具体实施中,待处理图像数据例如可以包括:对某场景进行图像采集得到的原始图像、或者对原始图像进行特征提取处理后得到的特征图。
待处理图像数据中,包括至少一个数据通道分别对应的子图像。每个数据通道对应本公开实施例中的一张子图像。
将待处理图像数据分为至少一组子图像数据时,例如可以基于待处理图像数据中的子图像的数量、以及预设通道数量阈值,对待处理图像数据中的子图像进行分组,得到至少一组子图像数据。
其中,预设通道数量阈值是基于AI芯片的硬件结构决定的,其中,若AI芯片能够同时对C个通道的特征图进行处理,则该预设通道数量阈值为C。不同的AI芯片因为硬件结构的不同,其预设通道数量阈值也可以不同,具体的,例如可以读取AI芯片中卷积处理核的配置信息;基于该配置信息,得到AI芯片对应的预设通道数量阈值。
上述配置信息例如包括AI芯片的卷积处理核能够处理的特征图的通道数,在得到该通道数后,将该通道数作为预设通道数量阈值。
基于待处理图像数据中的子图像的数量、以及预设通道数量阈值,对待处理图像数据中的子图像进行分组时,例如可以将待处理图像数据中的子图像的数量作为被除数,将预设通道数量阈值作为除数,对被除数除以除数的结果进行向上取整,得到的数值即为子图像数据的组数。
示例性的:
(1):在子图像的数量小于预设通道数量阈值的情况下,将待处理图像数据中的各子图像分为一组子图像数据,该组子图像数据中包含的子图像数据的数量小于预设通道数量阈值。
(2):在子图像的数量等于预设通道数量阈值的情况下,将待处理图像数据中的各子图像分为一组子图像数据,该组子图像数据中包含的子图像数据的数量等于预设通道数量阈值。
(3):在子图像的数量大于预设通道数量阈值的情况下,将待处理图像数据中的各子图像分为多组子图像数据,其中,多组子图像数据中,至多存在一组子图像数据中的子图像数据的数量小于预设通道数量阈值,除该至多一组子图像数据外,其他子图像数据中的子图像数据的数量等于预设通道数量阈值。
AI芯片的每一卷积核通道中都包含预设通道数量阈值个容纳卷积操作数的位置,该卷积核通道在进行卷积计算时,要保证该卷积核每一位置处的卷积操作数都有一个对应的子图像,因此每一卷积核通道对应的子图像数据中包含的子图像的数量应当等于该卷积核通道对应卷积核包含的卷积操作数的数量,即预设通道数量阈值。针对任一组子图像数据中的子图像数量小于预设通道数量阈值的情况,本公开另一实施例中,为该组子图像数据填充预设图像数据,在利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理时,利用该组子图像数据对应的卷积核,对填充了所述预设图像数据后的该组子图像数据进行卷积处理。其中,预设图像数据例如包括至少一个包含预设数据的子图像,预设数据例如为该子图像中像素点的预设像素值,该预设像素值例如为0。
这样,通过在子图像的数量小于预设通道数量阈值的子图像数据中添加预设图像数据,使得该组子图像数据中包含的待处理图像的子图像的数量与预设图像数据中的子图像的数量的和等于预设通道数量阈值。
承接上述S301,本公开实施例提供的卷积处理方法还包括:
S302:针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核。
在具体实施中,待处理图像数据中的各子图像都分别对应于一个卷积操作数,要保证通过AI芯片得到每一子图像与该子图像对应的卷积操作数进行卷积处理后的输出数据,就需要基于待处理图像数据中各子图像的分组情况对待处理图像数据中的各子图像的卷积操作数进行分组,生成每组子图像数据对应的卷积核。其中,每组子图像数据对应卷积核的数量与该组子图像数据中包含的子图像的数量相同,每一子图像对应一卷积核由该子图像对应的卷积操作数、以及预设卷积操作数构成,具体的构成方式可参见下述实施例所述,在此不再赘述。针对该组子图像数据对应的每一卷积核,利用各卷积核对该组子图像数据进行卷积处理,即得到与卷积核对应的子图像的卷积处理结果。
因此,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核时,例如可以采用图4所示的方法:
S401:针对该组子图像数据中的各子图像,根据该子图像在该组子图像数据中的第一相对位置,确定该子图像对应的卷积操作数在对应的卷积核中的第二相对位置。
其中,该子图像在该组子图像数据中的第一相对位置例如为该子图像在该组子图像数据中的各子图像中的顺序;该子图像对应的卷积操作数在与该子图像对应的卷积核中的第二相对位置例如为该子图像对应的卷积操作数据在对应的卷积核中的各卷积操作数据中的顺序;基于该子图像在该组子图像数据中的各子图像中的顺序确定该子图像对应的卷积操作数据在对应的卷积核中的各卷积操作数据中的顺序。
示例性的,该组子图像数据中包含四个子图像,如果该子图像是这四个子图像中的第二个子图像,则该子图像对应的卷积核包含四个卷积操作数,该子图像对应的卷积操作数应当是这四个卷积操作数中的第二个卷积操作数。
S402:基于第二相对位置,生成该子图像对应的卷积核。
基于第二相对位置,生成该子图像对应的卷积核例如在该子图像对应的卷积核中,除第二相对位置外的其他位置填充预设卷积操作数,并在第二相对位置填充该子图像对应的卷积操作数,得到该子图像对应的卷积核,其中,预设卷积操作数例如为数据值都为0的数据矩阵。例如图5所示,假设该组图像数据中包含3个子图像甲、乙、丙,子图像甲对应于卷积操作数1,子图像乙对应于卷积操作数2,子图像丙对应于卷积操作数3,图5中a为甲对应的卷积核、b为乙对应的卷积核、c为丙对应的卷积核。
这样,因为每一卷积核中除第二相对位置外的其他位置填充的预设卷积操作数为0,该卷积核中的卷积操作数与该组子图像数据中对应的子图像进行卷积后求和的输出结果数据,即为该组子图像数据中与第二相对位置的卷积操作数据对应的子图像、与该第二相对位置的卷积操作数据卷积后的输出数据,例如图6所示,为该组子图像数据中的第一个子图像对应的卷积核的计算方式以及计算结果的示例图。
承接上述S302,本公开实施例所述的卷积处理方法还包括:
S303:利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。
具体的,例如将该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据输入至卷积处理核;利用所述卷积处理核同步对该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据进行卷积处理,得到该组图像数据中各子图像分别对应的输出结果数据。
示例性的,如图7所示,预设通道数量阈值为3,每组子图像数据中包含3个子图像,该组子图像数据对应于三个卷积核A、B、C,三个卷积核对该组子图像数据分别进行卷积处理后,得到对应的输出结果数据A1、B1、C1。
本公开另一实施例中,基于至少一组子图像数据下的各子图像分别对应的卷积核的输出结果数据(如图8中b所示),得到待处理图像数据的卷积结果数据(如图8所示c所示)。
本公开实施例通过将待处理图像数据分为至少一组子图像数据,然后根据每组子图像数据中的各子图像对应的卷积操作数生成该组子图像对应的卷积核,利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据,这样,保证每组图像数据下的每一卷积核的输出结果数据为该组子图像中的一个子图像与该子图像对应的卷积操作数卷积后的输出数据,则该组子图像数据下的所有卷积核分别对应的输出结果数据即为该组子图像数据的各个子图像分别对应输出数据,实现利用AI芯片对depthwise卷积进行处理。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与卷积处理方法对应的卷积处理装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述卷积处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图9所示,为本公开实施例提供的一种卷积处理装置的示意图,所述装置包括:第一处理模块901、生成模块902、以及第二处理模块903;其中,
第一处理模块901,用于获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据;
生成模块902,用于针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核;
第二处理模块903,用于利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。
在一种可能的实施方式中,在将所述待处理图像数据分为至少一组子图像数据时,所述第一处理模块901,具体用于基于所述待处理图像数据中的子图像的数量、以及预设通道数量阈值,对所述待处理图像数据中的子图像进行分组,得到所述至少一组子图像数据。
在一种可能的实施方式中,所述第一处理模块901还用于读取卷积处理核的配置信息;并基于所述配置信息,确定所述预设通道数量阈值。
在一种可能的实施方式中,针对所述至少一组子图像数据中的每组子图像数据,在该组子图像数据中的子图像数量小于所述预设通道数量阈值的情况下,所述第一处理模块901,还用于为该组子图像数据填充预设图像数据;所述第二处理模块903,在所述利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理时,用于:利用该组子图像数据对应的卷积核,对填充了所述预设图像数据后的该组子图像数据进行卷积处理。
在一种可能的实施方式中,每组子图像数据对应的卷积核包括:该组子图像数据中的子图像分别对应的卷积核;在针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核时,所述生成模块902,具体用于针对该组子图像数据中的各子图像,根据该子图像在该组子图像数据中的第一相对位置,确定该子图像对应的卷积操作数在对应的卷积核中的第二相对位置;基于所述第二相对位置,生成该子图像对应的卷积核。
在一种可能的实施方式中,在基于所述第二相对位置,生成该子图像对应的卷积核时,所述生成模块902,具体用于在该子图像对应的卷积核中,除所述第二相对位置外的其他位置填充预设卷积操作数;并在所述第二相对位置填充该子图像对应的卷积操作数,得到该子图像对应的卷积核。
在一种可能的实施方式中,在利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据时,所述第二处理模块903,具体用于将该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据输入至卷积处理核;利用所述卷积处理核同步对该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据进行卷积处理,得到该组图像数据中各子图像分别对应的输出结果数据。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
本公开实施例还提供了一种计算机设备,如图10所示,为本公开实施例提供的计算机设备结构示意图,包括:
处理器101和存储器102;所述存储器102存储有处理器101可执行的机器可读指令,处理器101用于执行存储器102中存储的机器可读指令,所述机器可读指令被处理器101执行时,处理器101执行下述步骤:
获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据;针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核;利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。
上述存储器102包括内存1021和外部存储器1022;这里的内存1021也称内存储器,用于暂时存放处理器101中的运算数据,以及与硬盘等外部存储器1022交换的数据,处理器101通过内存1021与外部存储器1022进行数据交换。
上述指令的具体执行过程可以参考本公开实施例中所述的卷积处理方法的步骤,此处不再赘述。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的卷积处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的卷积处理方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种卷积处理方法,其特征在于,包括:
获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据;
所述将所述待处理图像数据分为至少一组子图像数据,包括:基于所述待处理图像数据中的子图像的数量、以及预设通道数量阈值,对所述待处理图像数据中的子图像进行分组,得到所述至少一组子图像数据;其中,所述预设通道数量阈值基于卷积处理核能够处理的特征图的通道数确定;
对所述待处理图像数据中的子图像进行分组,包括:将所述待处理图像数据中的子图像的数量作为被除数,将预设通道数量阈值作为除数,对被除数除以除数的结果进行向上取整,将得到的数值作为分组后得到的所述至少一组子图像数据的组数;
针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核;
利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。
2.根据权利要求1所述的卷积处理方法,其特征在于,针对所述至少一组子图像数据中的每组子图像数据,在该组子图像数据中的子图像数量小于所述预设通道数量阈值的情况下,所述卷积处理方法还包括:
为该组子图像数据填充预设图像数据;
所述利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,包括:
利用该组子图像数据对应的卷积核,对填充了所述预设图像数据后的该组子图像数据进行卷积处理。
3.根据权利要求1或2所述的卷积处理方法,其特征在于,每组子图像数据对应的卷积核包括:该组子图像数据中的子图像分别对应的卷积核;
所述针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核,包括:
针对该组子图像数据中的各子图像,根据该子图像在该组子图像数据中的第一相对位置,确定该子图像对应的卷积操作数在对应的卷积核中的第二相对位置;其中,该子图像在该组子图像数据中的第一相对位置,包括:该子图像在该组子图像数据中的各子图像中的顺序;该子图像对应的卷积操作数在对应的卷积核中的第二相对位置,包括:该子图像对应的卷积操作数据在对应的卷积核中的各卷积操作数据中的顺序;
基于所述第二相对位置,生成该子图像对应的卷积核。
4.根据权利要求3所述的卷积处理方法,其特征在于,所述基于所述第二相对位置,生成该子图像对应的卷积核,包括:
在该子图像对应的卷积核中,除所述第二相对位置外的其他位置填充预设卷积操作数;并
在所述第二相对位置填充该子图像对应的卷积操作数,得到该子图像对应的卷积核。
5.根据权利要求1所述的卷积处理方法,其特征在于,所述利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据,包括:
将该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据输入至卷积处理核;
利用所述卷积处理核同步对该组子图像数据的各子图像分别对应的卷积核、以及该组子图像数据进行卷积处理,得到该组子图像数据中各子图像分别对应的输出结果数据。
6.一种卷积处理装置,其特征在于,包括:
第一处理模块,用于获取待处理图像数据,并将所述待处理图像数据分为至少一组子图像数据;
所述第一处理模块在将所述待处理图像数据分为至少一组子图像数据时,用于:基于所述待处理图像数据中的子图像的数量、以及预设通道数量阈值,对所述待处理图像数据中的子图像进行分组,得到所述至少一组子图像数据;其中,所述预设通道数量阈值基于卷积处理核能够处理的特征图的通道数确定;
第一处理模块在对所述待处理图像数据中的子图像进行分组时,具体用于:将所述待处理图像数据中的子图像的数量作为被除数,将预设通道数量阈值作为除数,对被除数除以除数的结果进行向上取整,将得到的数值作为分组后得到的所述至少一组子图像数据的组数;
生成模块,用于针对所述至少一组子图像数据中的每组子图像数据,根据该组子图像数据中各个子图像分别对应的卷积操作数,生成该组子图像数据对应的卷积核;
第二处理模块,用于利用该组子图像数据对应的卷积核,对该组子图像数据进行卷积处理,得到该组子图像数据对应的输出结果数据。
7.一种计算机设备,其特征在于,包括:处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述处理器执行如权利要求1至5任一项所述的卷积处理方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被计算机设备运行时,所述计算机设备执行如权利要求1至5任一项所述的卷积处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110602237.7A CN113327217B (zh) | 2021-05-31 | 2021-05-31 | 一种卷积处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110602237.7A CN113327217B (zh) | 2021-05-31 | 2021-05-31 | 一种卷积处理方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113327217A CN113327217A (zh) | 2021-08-31 |
CN113327217B true CN113327217B (zh) | 2024-03-22 |
Family
ID=77422747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110602237.7A Active CN113327217B (zh) | 2021-05-31 | 2021-05-31 | 一种卷积处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113327217B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114463584B (zh) * | 2022-01-29 | 2023-03-24 | 北京百度网讯科技有限公司 | 图像处理、模型训练方法、装置、设备、存储介质及程序 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866862A (zh) * | 2020-01-19 | 2020-03-06 | 光子算数(北京)科技有限责任公司 | 基于缓冲器的数据处理方法、装置、存储介质及电子设备 |
CN111951269A (zh) * | 2020-10-16 | 2020-11-17 | 深圳云天励飞技术股份有限公司 | 图像处理方法及相关设备 |
CN112102164A (zh) * | 2020-08-11 | 2020-12-18 | 深圳云天励飞技术股份有限公司 | 一种图像处理方法、装置、终端及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10896306B2 (en) * | 2019-04-29 | 2021-01-19 | Ncr Corporation | Barcode scanner optimization |
-
2021
- 2021-05-31 CN CN202110602237.7A patent/CN113327217B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866862A (zh) * | 2020-01-19 | 2020-03-06 | 光子算数(北京)科技有限责任公司 | 基于缓冲器的数据处理方法、装置、存储介质及电子设备 |
CN112102164A (zh) * | 2020-08-11 | 2020-12-18 | 深圳云天励飞技术股份有限公司 | 一种图像处理方法、装置、终端及存储介质 |
CN111951269A (zh) * | 2020-10-16 | 2020-11-17 | 深圳云天励飞技术股份有限公司 | 图像处理方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113327217A (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3349153B1 (en) | Convolutional neural network (cnn) processing method and apparatus | |
US20220292163A1 (en) | Dilated convolution using systolic array | |
CN111542839B (zh) | 一种反卷积神经网络的硬件加速方法、装置和电子设备 | |
US10200191B2 (en) | Electronic calculating device for performing obfuscated arithmetic | |
EP3239853A1 (en) | Data processing system, calculation node and data processing method | |
RU2701716C2 (ru) | Электронное вычислительное устройство для выполнения арифметики с обфускацией | |
CN109859314B (zh) | 三维重建方法、装置、电子设备和存储介质 | |
CN113327217B (zh) | 一种卷积处理方法、装置、计算机设备及存储介质 | |
CN112836806B (zh) | 一种数据格式调整方法、装置、计算机设备和存储介质 | |
CN115238863A (zh) | 一种卷积神经网络卷积层的硬件加速方法、系统及应用 | |
CN111158907B (zh) | 数据处理方法及装置、电子设备和存储介质 | |
CN112529897A (zh) | 一种图像检测方法、装置、计算机设备及存储介质 | |
CN112967211A (zh) | 一种图像处理方法、装置、计算机设备及存储介质 | |
CN112598611A (zh) | 一种凸字体银行卡号图像的合成方法、识别方法及装置 | |
CN112927125B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN105718214B (zh) | 指纹掩膜图像的存取方法及装置 | |
CN111767246B (zh) | 数据处理方法、相关设备及计算机可读介质 | |
US9871554B2 (en) | Method and vector computing unit for implementing de-scrambling and de-spreading, and computer storage medium | |
CN114003859A (zh) | 卷积运算方法、可读介质和电子设备 | |
EP3200112A1 (en) | Usage based authentication system | |
CN113111891B (zh) | 一种图像重建方法、装置、终端设备和存储介质 | |
CN116152043B (zh) | 一种基于图像处理的内存管理方法及装置、电子设备 | |
CN111552478A (zh) | 用于生成cuda程序的设备、方法和存储介质 | |
CN112445521B (zh) | 数据处理方法、相关设备及计算机可读介质 | |
CN115063299B (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 |