CN115424038A - 多尺度图像处理方法、***、装置和计算机设备 - Google Patents
多尺度图像处理方法、***、装置和计算机设备 Download PDFInfo
- Publication number
- CN115424038A CN115424038A CN202211082679.4A CN202211082679A CN115424038A CN 115424038 A CN115424038 A CN 115424038A CN 202211082679 A CN202211082679 A CN 202211082679A CN 115424038 A CN115424038 A CN 115424038A
- Authority
- CN
- China
- Prior art keywords
- matrix
- image
- size
- elements
- original
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 20
- 239000011159 matrix material Substances 0.000 claims abstract description 358
- 238000012545 processing Methods 0.000 claims abstract description 88
- 238000000034 method Methods 0.000 claims abstract description 60
- 239000011800 void material Substances 0.000 claims abstract description 8
- 239000013598 vector Substances 0.000 claims description 75
- 238000004364 calculation method Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 24
- 238000005070 sampling Methods 0.000 claims description 21
- 238000009825 accumulation Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims 1
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 10
- 238000000605 extraction Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000017105 transposition Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 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
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/52—Scale-space analysis, e.g. wavelet analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
Abstract
本申请涉及一种多尺度图像处理方法、***、装置和计算机设备,涉及人工智能领域。所述方法包括:根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵,针对任一空洞卷积的尺寸(U,V),在图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数。针对任一起点元素(c,d),根据尺寸(U,V),从乘积矩阵中读取目标元素,得到第一矩阵,并根据乘积矩阵和尺寸(U,V),确定第一矩阵中各元素在特征图像中的目标位置,针对各起点元素(c,d)对应的第一矩阵,将位于同一目标位置的元素进行累加处理,得到原始图像在尺寸(U,V)下对应的特征图像。采用本方法能够提高图像处理效率。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种多尺度图像处理方法、***、装置和计算机设备。
背景技术
卷积神经网络作为人工智能领域的主流技术,在图像处理和识别领域得到了广泛的应用,在实际进行图像处理和识别时,可能需要对同一张图像进行不同分辨率的特征提取,因此,引入了空洞卷积(Dilated convolution)方法。
在传统空洞卷积方法中,对于一个尺寸为(U,V)的空洞卷积,会在原始卷积核中,各行的每两个元素之间补充U-1个0,各列的每两个元素之间补V-1个0,从而将原始卷积核扩大为稀疏卷积核,之后令稀疏卷积核与图像进行正常卷积计算。
采用上述图像处理方法对图像进行不同分辨率的特征提取时,对于每一种尺寸的空洞卷积,都需要进行一次完整的卷积处理,这导致图像处理的计算量过大,资源消耗过多,降低了图像处理效率,无法在实际应用过程进行多种分辨率的特征提取。
发明内容
基于此,有必要针对上述技术问题,提供一种能够减低计算量、提高图像处理效率的多尺度图像处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种多尺度图像处理方法。所述方法包括:
根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
针对任一所述起点元素(c,d),根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵;
根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
在其中一个实施例中,所述根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵,包括:
针对原始卷积核,按行顺序依次读取所述原始卷积核内各行的元素,得到卷积行向量;
对所述卷积行向量进行转置处理,得到所述原始卷积核对应的列向量;
针对原始图像对应的图像矩阵中的任一元素,将所述图像矩阵中的元素与所述原始卷积核对应的列向量进行乘积运算,得到所述乘积矩阵中的列向量;
根据所述图像矩阵中各元素对应的列向量,得到所述乘积矩阵。
在其中一个实施例中,所述根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵,包括:
确定所述乘积矩阵中的各元素[xij*kpq],其中,xij为所述图像矩阵中的任一元素,(i,j)表示xij在所述图像矩阵中的位置信息,kpq为所述原始卷积核中的任一元素,i、j、p、q均为正整数;
针对所述图像矩阵,从所述起点元素(c,d)开始,每行按间隔U-1、每列按间隔V-1进行采样,得到各目标元素在所述图像矩阵中对应的位置信息(i',j');
根据所述位置信息,从所述乘积矩阵中读取目标元素[xi'j'*kpq],得到所述第一矩阵。
在其中一个实施例中,所述根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置,包括:
针对所述第一矩阵中的任一元素[xi'j'*kpq],根据所述xi'j'在所述图像矩阵中的位置信息(i',j')、所述kpq在所述原始卷积核中的位置、所述尺寸(U,V),确定所述元素在特征图像中的目标位置。
在其中一个实施例中,所述根据所述xi'j'在所述图像矩阵中的位置信息(i',j')、所述kpq在所述原始卷积核中的位置、所述尺寸(U,V),确定所述元素在特征图像中的目标位置,包括:
根据所述xi'j'在所述图像矩阵中的行数i'、所述kpq在所述原始卷积核中的行数p、及所述尺寸U,确定所述元素在所述特征图像中的行数;
根据所述xi'j'在所述图像矩阵中的列数j'、所述kpq在所述原始卷积核中的列数q、及所述尺寸V,确定所述元素在所述特征图像中的列数。
在其中一个实施例中,所述针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)对应下的所述特征图像,包括:
针对任一所述目标位置,将各所述第一矩阵中位于所述目标位置的待处理元素进行累加处理,得到所述目标位置的元素;
根据各所述目标位置的元素,构建得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
第二方面,本申请还提供了一种多尺度图像处理***。所述***包括:逐点乘积和存储单元、参数生成单元、复用计算单元;其中,
所述逐点乘积和存储单元,用于根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵,并存储所述乘积矩阵;
所述复用计算单元,用于针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数,并针对任一所述起点元素(c,d),根据所述尺寸(U,V),从存储在所述逐点乘积和存储单元内的所述乘积矩阵中读取目标元素,得到第一矩阵;
所述参数生成单元,用于针对任一所述起点元素(c,d)对应的所述第一矩阵,根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
所述复用计算单元,还用于针对各所述起点元素(c,d)对应的所述第一矩阵,分别从所述参数生成单元中读取所述第一矩阵中各元素的所述目标位置,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
第三方面,本申请还提供了一种多尺度图像处理装置。所述装置包括:
乘积模块,用于根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
第一确定模块,用于针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
读取模块,用于针对任一所述起点元素(c,d),根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵;
第二确定模块,用于根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
累加模块,用于针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
在其中一个实施例中,所述乘积模块还用于:
针对原始卷积核,按行顺序依次读取所述原始卷积核内各行的元素,得到卷积行向量;
对所述卷积行向量进行转置处理,得到所述原始卷积核对应的列向量;
针对原始图像对应的图像矩阵中的任一元素,将所述图像矩阵中的元素与所述原始卷积核对应的列向量进行乘积运算,得到所述乘积矩阵中的列向量;
根据所述图像矩阵中各元素对应的列向量,得到所述乘积矩阵。
在其中一个实施例中,所述读取模块还用于:
确定所述乘积矩阵中的各元素[xij*kpq],其中,xij为所述图像矩阵中的任一元素,(i,j)表示xij在所述图像矩阵中的位置信息,kpq为所述原始卷积核中的任一元素,i、j、p、q均为正整数;
针对所述图像矩阵,从所述起点元素(c,d)开始,每行按间隔U-1、每列按间隔V-1进行采样,得到各目标元素在所述图像矩阵中对应的位置信息(i',j');
根据所述位置信息(i',j'),从所述乘积矩阵中读取目标元素[xi'j'*kpq],得到所述第一矩阵。
在其中一个实施例中,所述第二确定模块还用于:
针对所述第一矩阵中的任一元素[xi'j'*kpq],根据所述xi'j'在所述图像矩阵中的位置信息(i',j')、所述kpq在所述原始卷积核中的位置、所述尺寸(U,V),确定所述元素在特征图像中的目标位置。
在其中一个实施例中,所述第二确定模块还用于:
根据所述xi'j'在所述图像矩阵中的行数i'、所述kpq在所述原始卷积核中的行数p、及所述尺寸U,确定所述元素在所述特征图像中的行数;
根据所述xi'j'在所述图像矩阵中的列数j'、所述kpq在所述原始卷积核中的列数q、及所述尺寸V,确定所述元素在所述特征图像中的列数。
在其中一个实施例中,所述累加模块还用于:
针对任一所述目标位置,将各所述第一矩阵中位于所述目标位置的待处理元素进行累加处理,得到所述目标位置的元素;
根据各所述目标位置的元素,构建得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
第四方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
针对任一所述起点元素(c,d),根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵;
根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
第五方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
针对任一所述起点元素(c,d),根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵;
根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
第六方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
针对任一所述起点元素(c,d),根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵;
根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
上述多尺度图像处理方法、***、装置、计算机设备、存储介质和计算机程序产品,根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵。针对任一空洞卷积的尺寸(U,V),在图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数,其中,针对任一起点元素(c,d),根据尺寸(U,V),从乘积矩阵中读取目标元素,得到第一矩阵,并根据乘积矩阵和尺寸(U,V),确定第一矩阵中各元素在特征图像中的目标位置。针对各起点元素(c,d)对应的第一矩阵,将位于同一目标位置的元素进行累加处理,得到原始图像在所述尺寸(U,V)下对应的特征图像。基于上述多尺度图像处理方法、***、装置、计算机设备、存储介质和计算机程序产品,在对图像进行多尺度图像处理过程中,针对任一尺寸(U,V),可以根据尺寸(U,V)以及尺寸(U,V)所对应的起点元素(c,d),可以从乘积矩阵中读取目标元素,形成第一矩阵,并将各起点元素(c,d)对应的第一矩阵中各元素进行相应的累加处理,即可得到尺寸(U,V)下的特征图像,其中,乘积矩阵作为一组可以重复使用的数据,使得在多尺度图像处理过程中,执行各尺寸对应的空洞卷积时,均可以复用该乘积矩阵,直接从该乘积矩阵中读取相应元素,并进行简单的累加处理即可,无需在每一尺寸的空洞卷积过程执行一次完整的卷积运算,可以大大减少多尺度图像处理过程中的运算量,缩短了多尺度图像处理的时间,提高了图像处理的效率。
附图说明
图1为一个实施例中多尺度图像处理方法的流程示意图;
图2为一个实施例中传统图像处理方法中的卷积计算示意图;
图3为另一个实施例中多尺度图像处理方法的流程示意图;
图4为另一个实施例中多尺度图像处理方法的流程示意图;
图5为另一个实施例中多尺度图像处理方法的流程示意图;
图6为一个实施例中多尺度图像处理方法中的计算示意图;
图7为另一个实施例中多尺度图像处理方法的流程示意图;
图8为一个实施例中多尺度图像处理***的结构示意图;
图9为一个实施例中参数生成单元的工作流程示意图;
图10为一个实施例中复用计算单元的工作流程示意图;
图11为一个实施例中多尺度图像处理装置的结构示意图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种多尺度图像处理方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的***,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤102,根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵。
本申请实施例中,原始图像为待进行多尺度图像处理的图像,示例性的,在不同分辨率下进行图像分类等多尺度图像处理过程中,待进行不同分辨率下的图像分类操作的图像即为原始图像。
举例来说,可以将原始图像对应的图像矩阵中各元素与原始卷积核中各元素进行乘积运算,以得到对应的乘积矩阵。原始图像所对应的图像矩阵中的各元素可以对应该原始图像的各像素点,图像矩阵的大小可以对应该原始图像的大小,其中,图像矩阵的行数可以表示该原始图像的高(单位为像素),图像矩阵的列数可以表示该原始图像的宽(单位为像素),示例性的,以图像矩阵为一个I行J列的矩阵为例,该图像矩阵中的元素总数为I与J的乘积,则图像矩阵所对应的原始图像中像素点的总数为I与J的乘积。
本申请实施例中,根据原始图像对应的图像矩阵与原始卷积核,可以得到对应的乘积矩阵,其中,可以将原始图像对应的图像矩阵中各元素与原始卷积核中各元素进行乘积运算,得到乘积矩阵,也即,乘积矩阵中任一元素为图像矩阵中任一元素与原始卷积核中任一元素的乘积。示例性的,以图像矩阵为I行J列的矩阵X,原始卷积核为P行Q列的矩阵K为例,图像矩阵中任一元素可以用xij表示,原始卷积核中任一元素可以用kpq表示,则乘积矩阵中任一元素为[xij*kpq]。
步骤104,针对任一空洞卷积的尺寸(U,V),在图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数。
本申请实施例中,对原始图像进行图像处理时,不同的分辨率可以对应不同的空洞卷积的尺寸,也即通过改变空洞卷积的尺寸,就可以改变对原始图像进行图像处理时的分辨率。例如,对原始图像进行分辨率为A1的特征提取时,采用尺寸(U1,V1),对原始图像进行分辨率为A2的特征提取时,采用尺寸(U2,V2),对原始图像进行最高分辨率的特征提取时,则采用尺寸(1,1)。
在传统方法中,利用尺寸为(U,V)的卷积空洞对原始图像进行图像处理时,会在原始卷积核中进行补0,从而得到一个稀疏卷积核,再令该稀疏卷积核与原始卷积核对应的图像矩阵进行卷积,得到该尺寸(U,V)下的特征图像,其中,稀疏卷积核中的0元素与图像矩阵中的元素进行卷积,所得到的结果为0,只有稀疏卷积核中的非0元素与图像矩阵中的元素进行正常的卷积运算,上述卷积过程可以看做,根据尺寸(U,V)先对原始图像对应的图像矩阵进行采样,再令采样后得到的矩阵与原始卷积核进行卷积。上述根据尺寸(U,V)对图像矩阵进行采样的过程中,当尺寸(U,V)中U>1,V>1时,对图像矩阵进行一次采样所得到的矩阵中只能包含图像矩阵中的部分元素。
本申请实施例中,为保证采用尺寸为(U,V)的空洞卷积进行图像处理时,能够对图像矩阵中的所有元素进行处理,设置起点元素(c,d),1≤c≤V,1≤d≤U,U、V、c、d均为正整数,其中,起点元素(c,d)表示对图像矩阵进行采样时的起点位置,根据尺寸(U,V),在图像矩阵中确定多个起点元素(c,d),之后可以分别以各起点元素(c,d)为采样的起点位置开始采样,各起点元素(c,d)对应采样后的矩阵中的所有元素即为图像矩阵中的所有元素。
示例性的,以对一个汽车图像进行图像处理为例,汽车图像对应的图像矩阵为假设空洞卷积的尺寸为(2,3),其中,U=2,V=3,那么起点元素(c,d)中,1≤c≤3,1≤d≤2,可以确定多个起点元素(1,1)、(1,2)、(2,1)、(2,2)、(3,1)、(3,2),其中起点元素(1,1)即为元素X11、起点元素(1,2)即为元素X12、起点元素(2,1)即为元素X21、起点元素(2,2)即为元素X22、起点元素(3,1)即为元素X31、起点元素(3,2)即为元素X32。
步骤106,针对任一起点元素(c,d),根据尺寸(U,V),从乘积矩阵中读取目标元素,得到第一矩阵。
本申请实施例中,对于上述一个尺寸下的多个起点元素(c,d),针对任一起点元素,根据尺寸(U,V),从乘积矩阵中读取目标元素,得到第一矩阵。以上述实例为例,存在6个起点元素(1,1)、(1,2)、(2,1)、(2,2)、(3,1)、(3,2),则对应的可以得到6个第一矩阵。
传统空洞卷积的图像处理过程可以看做,先根据起点元素(c,d)和尺寸(U,V),对图像矩阵进行采样,再令采样后得到的矩阵与原始卷积核进行卷积。在卷积的原始定义中,图像矩阵表示为X,图像矩阵中各元素用x(i,j)表示,卷积核表示为K,卷积核中各元素用k(p,q)表示,原始图像卷积处理后得到的特征图像表示为Y,特征图像中各元素用y(u,v)表示,卷积公式为 根据上述卷积公式可以看出,卷积的实质是令位于相应位置处的图像矩阵中任一元素与原始卷积核中任一元素的乘积之和。
参照图2所示,利用3行3列的原始卷积核对一个图像矩阵为3行3列的原始图像进行图像处理,图2中包含9个子图,各子图为一个5行5列的网格,每个网格可以用于表征经过图像处理后的特征图像的元素位置,空白网格表示该位置处没有元素,其中,y(3,3)为9个子图中位置为(3,3)的元素之和。
因此,令采样后得到的矩阵与原始卷积核进行卷积的过程,也可以转化为从乘积矩阵中读取相应的目标元素,并令位于相应位置处的目标元素进行累加。
步骤108,根据乘积矩阵和尺寸(U,V),确定第一矩阵中各元素在特征图像中的目标位置。
本申请实施例中,特征图像为原始图像经过图像处理后得到的图像,根据乘积矩阵和尺寸(U,V),来确定第一矩阵中的各元素在特征图像中对应的目标位置。示例性的,特征图像可以表示为一个矩阵,元素的目标位置可以表示第一矩阵中该元素在特征图像中对应的行数和列数。
步骤110,针对各起点元素(c,d)对应的第一矩阵,将位于同一目标位置的元素进行累加处理,得到原始图像在尺寸(U,V)下对应的特征图像。
本申请实施例中,一个尺寸(U,V)对应多个起点元素(c,d),其中每个起点元素(c,d)对应一个第一矩阵,则一个尺寸(U,V)对应多个第一矩阵,针对各起点元素(c,d)对应的第一矩阵,将位于同一目标位置的元素进行累加,即可得到尺寸(U,V)下的特征图像。
在得到一个尺寸(U,V)下的特征图像后,可以针对其他尺寸的空洞卷积进行上述处理,最终可以得到多种尺寸下的多个特征图像,也即得到对原始图像进行不同分辨率的图像处理后的图像处理结果。
上述多尺度图像处理方法中,在对图像进行多尺度图像处理过程中,针对任一尺寸(U,V),根据尺寸(U,V)以及尺寸(U,V)所对应的起点元素(c,d),可以从乘积矩阵中读取目标元素,形成第一矩阵,并将各起点元素(c,d)对应的第一矩阵中各元素进行相应的累加处理,即可得到尺寸(U,V)下的特征图像,其中,乘积矩阵作为一组可以重复使用的数据,使得在多尺度图像处理过程中,执行各尺寸对应的空洞卷积时,均可以复用该乘积矩阵,直接从乘积矩阵中读取相应元素,并进行简单的累加处理即可,无需在每一尺寸的空洞卷积过程执行一次完整的卷积运算,可以大大减少多尺度图像处理过程中的运算量,缩短了多尺度图像处理的时间,提高了图像处理的效率。
在一个实施例中,如图3所示,步骤102包括:
步骤302,针对原始卷积核,按行顺序依次读取原始卷积核内各行的元素,得到卷积行向量。
本申请实施例中,针对原始卷积核,按行顺序依次读取原始卷积核内各行的元素,得到卷积行向量,其中,按行顺序为按照原始卷积核中行数从小到大的顺序依次读取原始卷积核内各行的元素,也即,首先读取原始卷积核内第一行的元素,将第一行的元素全部读取完毕后,再读取原始卷积核内第二行的元素,将第二行的元素全部读取完毕后,再读取第三行内的元素……直至将原始卷积核的最后一行的元素全部读取完毕,在读取每一行内的元素时,也要按照行内元素的列数进行读取。
示例性的,原始卷积核为在进行元素读取时,首先读取第一行的元素:K11,K12,K13,其次读取第二行的元素:K21,K22,K23,最后读取第三行的元素:K31,K32,K33,得到的卷积行向量为(K11,K12,K13,K21,K22,K23,K31,K32,K33)。
步骤304,对卷积行向量进行转置处理,得到原始卷积核对应的列向量。
本申请实施例中,对卷积行向量进行转置处理,转置可以对列向量和行向量之间进行相互转化,则对卷积行向量进行转置处理后,可以得到了原始卷积核对应的列向量。
步骤306,针对图像矩阵中的任一元素,将图像矩阵中的元素与原始卷积核对应的列向量进行乘积运算,得到乘积矩阵中的列向量。
本申请实施例中,针对原始图像对应的图像矩阵中的任一元素,将图像矩阵中的元素与原始卷积核对应的列向量进行乘积运算,可以得到乘积矩阵中的列向量,则乘积矩阵中的列向量的数目(也即列数)与图像矩阵中的元素总数相等,乘积矩阵中的行数与原始卷积核中的元素总数相等。
步骤308,根据图像矩阵中各元素对应的列向量,得到乘积矩阵。
本申请实施例中,在得到各元素在乘积矩阵中对应的各列向量后,对乘积矩阵中的各列向量进行拼接,可以得到乘积矩阵,在拼接过程中,可以将乘积矩阵中的各列向量中的元素的行数一一对齐。示例性的,以图像矩阵为原始卷积核为为例,首先可以得到原始卷积核对应的列向量(K11,K12,K21,K22)T,之后针对图像矩阵中的任一元素,例如元素X11,令X11与原始卷积核对应的列向量进行乘积运算,得到乘积矩阵的第一列向量(X11*K11,X11*K12,X11*K21,X11*K22)T,重复上述过程,可以分别得到乘积矩阵的第二列向量(X12*K11,X12*K12,X12*K21,X12*K22)T、乘积矩阵的第三列向量(X21*K11,X21*K12,X21*K21,X21*K22)T、乘积矩阵的第四列向量(X22*K11,X22*K12,X22*K21,X22*K22)T,对上述乘积矩阵的各列向量进行拼接,即可得到乘积矩阵
本申请实施例中,首先令原始图像对应的图像矩阵中各元素分别与原始卷积核中各元素进行乘积运算,并将乘积运算的结果以乘积矩阵的形式存储,乘积矩阵作为一组可以重复使用的数据存储起来,在之后针对各尺寸(U,V)进行图像处理时,可以直接从乘积矩阵中读取相应元素,并进行简单的累加处理即可,大大减少了多尺度图像处理过程中的运算量,缩短了多尺度图像处理的时间,提高了图像处理的效率。
在一个实施例中,如图4所示,步骤106包括:
步骤402,确定乘积矩阵中的各元素[xij*kpq],其中,xij为图像矩阵中的任一元素,(i,j)表示xij在图像矩阵中的位置信息,kpq为原始卷积核中的任一元素,i、j、p、q均为正整数。
本申请实施例中,首先确定乘积矩阵中的各元素[xij*kpq],乘积矩阵为图像矩阵中各元素分别与原始卷积核中各元素相乘得到的,故乘积矩阵中的任一元素应为图像矩阵中任一元素与原始卷积核中任一元素的乘积,因此,乘积矩阵中的各元素为[xij*kpq],其中,xij为图像矩阵中的任一元素,kpq为原始卷积核中的任一元素,(i,j)表示xij在图像矩阵中的位置信息。
步骤404,针对图像矩阵,从起点元素(c,d)开始,每行按间隔U-1、每列按间隔V-1进行采样,得到各目标元素在图像矩阵中对应的位置信息(i',j')。
本申请实施例中,针对图像矩阵,从起点元素(c,d)开始,每行按间隔U-1、每列按间隔V-1进行采样,得到各目标元素在图像矩阵中对应的位置信息(i',j'),其中,一个尺寸对应多个起点元素(c,d),分别从各起点元素(c,d)开始,根据每行按间隔U-1、每列按间隔V-1进行采样,所得到所有的位置信息(i',j')包括了图像矩阵中所有元素的位置信息。
仍以上述示例为例,图像矩阵为尺寸为(2,3),起点元素分别为(1,1)、(1,2)、(2,1)、(2,2)、(3,1)、(3,2),从(1,1)对应的元素X11开始,每行按间隔1、每列按间隔2进行采样,得到各目标元素在图像矩阵中对应的位置信息(1,1)、(1,3);从(1,2)对应的元素X12开始,可以得到位置信息(1,2);从(2,1)对应的元素X21开始,可以得到位置信息(2,1)、(2,3);从(2,2)对应的元素X22开始,可以得到位置信息(2,2);从(3,1)对应的元素X31开始,可以得到位置信息(3,1)、(3,3);从(3,2)对应的元素X32开始,可以得到位置信息(3,2)。
步骤406,根据位置信息(i',j'),从乘积矩阵中读取目标元素[xi'j'*kpq],得到第一矩阵。
本申请实施例中,可以根据位置信息(i',j'),从乘积矩阵中读取目标元素[xi'j'*kpq],得到第一矩阵,其中根据位置信息(i',j'),读取目标元素[xi'j'*kpq]时,以一个起点元素(c,d)为一组,则一个起点元素(c,d)对应一个第一矩阵。示例性的,以起点元素(1,1)为例,其对应的第一矩阵为(X11*kpq,X13*kpq)。
本申请实施例中,以一个尺寸(U,V)下的多个起点元素(c,d)为采样起点,根据该尺寸(U,V)分别进行采样,可以保证最终采样得到的位置信息(i',j')包括图像矩阵中所有元素的位置信息,从而保证在以不同分辨率对原始图像进行图像处理的过程中,对原始图像中的各部分均进行处理,避免了改变图像处理的分辨率后,原始图像中的部分特征无法被处理的现象。
在一个实施例中,步骤108包括:
针对第一矩阵中的任一元素[xi'j'*kpq],根据xi'j'在图像矩阵中的位置信息(i',j')、kpq在原始卷积核中的位置、尺寸(U,V),确定元素在特征图像中的目标位置。
本申请实施例中,针对第一矩阵中的任一元素[xi'j'*kpq],根据xi'j'在图像矩阵中的位置信息(i',j')、kpq在原始卷积核中的位置、尺寸(U,V),可以确定元素在特征图像中的目标位置,其中,目标位置表示第一矩阵中的任一元素[xi'j'*kpq]在特征图像中的行数和列数,在得到第一矩阵中各元素在特征图像中的目标位置后,对于处于同一个目标位置的第一矩阵的多个元素,只需将该多个元素相加即可得到特征图像的该目标位置处的元素。
本申请实施例中,通过确定第一矩阵中各元素在特征图像中的位置,以使得后续只需将位于同一位置的元素累加,即可得到特征图像的某一目标位置处的元素,也即本申请利用简单的累加处理代替了传统卷积计算中的一系列乘积运算,大大减小了多尺度图像处理的计算量,有效提高了图像处理的效率。
在一个实施例中,如图5所示,上述根据xi'j'在图像矩阵中的位置信息(i',j')、kpq在原始卷积核中的位置、尺寸(U,V),确定元素在特征图像中的目标位置,可以包括:
步骤502,根据xi'j'在图像矩阵中的行数i'、kpq在原始卷积核中的行数p、及尺寸U,确定元素在特征图像中的行数;
步骤504,根据xi'j'在图像矩阵中的列数j'、kpq在原始卷积核中的列数q、及尺寸V,确定元素在特征图像中的列数。
本申请实施例中,可以根据xi'j'在图像矩阵中的行数i'、kpq在原始卷积核中的行数p、及尺寸U,确定元素在特征图像中的行数,根据xi'j'在图像矩阵中的列数j'、kpq在原始卷积核中的列数q、及尺寸V,确定元素在特征图像中的列数,进而根据元素在特征图像中的行数和列数,即可确定元素在特征图像中的目标位置。
示例性的,确定元素在特征图像中的行数和列数的过程可以参照下述公式(一)。
H(i'j')(pq)=[(p-1)*U+i',(q-1)*V+j']公式(一)
其中,Hi'j'(pq)表示乘积矩阵中元素[xi'j'*kpq]在特征图像中的目标位置。
举例来说,采用尺寸(2,2)和3行3列的原始卷积核,对一个3行3列的原始图像进行图像处理时,参照图6所示,图6中各元素可以用x(i',j')*k(p,q)表示,也可以用[xi'j'*kpq]表示,对于元素[x11*k11],其中,p=q=i'=j'=1,则H(11)(11)=(1,1),则元素[x11*k11]在特征图像的第1行第1列;对于元素[x11*k12],其中p=i'=j'=1,q=2,则H(11)(12)=(1,3),则元素[x11*k12]在特征图像的第1行第3列;对于元素[x13*k11],其中p=q=i'=1,j'=3,则H(13)(11)=(1,3),则元素[x13*k11]在特征图像的第1行第3列。
需要说明的是,上述确定元素在特征图像中的行数和列数的过程为本实施例中的一个示例,本申请实施例中对确定元素在特征图像中的行数和列数的过程不做具体限定。
本申请实施例中,通过确定第一矩阵中各元素在特征图像中的位置,以使得后续只需将位于同一位置的元素累加,即可得到特征图像的某一目标位置处的元素,也即本申请利用简单的累加处理代替了传统卷积计算中的一系列乘积运算,大大减小了多尺度图像处理的计算量,有效提高了图像处理的效率。
在一个实施例中,参照图7所示,步骤110包括:
步骤702,针对任一目标位置,将各第一矩阵中位于目标位置的待处理元素进行累加处理,得到目标位置的元素。
本申请实施例中,针对任一目标位置,将各第一矩阵中位于目标位置的待处理元素进行累加处理,得到目标位置的元素。仍以上述示例为例,参照图7所示,可以得到位于特征图像的第1行第1列目标位置的待处理元素仅包括[x11*k11],则特征图像的第1行第1列的元素为[x11*k11],位于特征图像的第1行第3列目标位置的待处理元素包括[x11*k12]和[x13*k11],则特征图像的第1行第3列的元素为[x11*k12]+[x13*k11]。
步骤704,根据各目标位置的元素,构建得到原始图像在尺寸(U,V)下对应的特征图像。
本申请实施例中,首先要确定各起点元素(c,d)对应的第一矩阵中各元素在特征图像中的目标位置,因为从各起点元素(c,d)开始按照尺寸(U,V)进行采样,可以保证后续可以对图像矩阵中的所有元素进行处理,则需要确定一个尺寸(U,V)下的所有第一矩阵中的各元素的目标位置,之后再根据各目标位置的元素,就可以构建得到该尺寸(U,V)下原始图像对应的特征图像,也即得到了在尺寸(U,V)所对应的分辨率下,对原始图像进行图像处理后得到的特征图像。
在一个示例性的实施例中,以一个原始图像对应的图像矩阵为原始卷积核为尺寸为(2,2)为例,本示例中对原始卷积核按行顺序依次读取原始卷积核各行内的元素,即首先读取第一行的元素:K11,K12,K13,其次读取第二行的元素:K21,K22,K23,最后读取第三行的元素:K31,K32,K33,得到的卷积行向量为(K11,K12,K13,K21,K22,K23,K31,K32,K33),并对卷积行向量进行转置处理,将卷积行向量转化为列向量,该列向量即为原始卷积核对应的列向量。之后,令图像矩阵中的任一元素与原始卷积核对应的列向量进行乘积运算,得到乘积矩阵中的多个列向量,并将乘积矩阵中的多个列向量进行拼接,得到乘积矩阵。
对于尺寸(2,2),确定了多个起点元素(1,1)、(1,2)、(2,1)、(2,2)。并针对上述乘积矩阵,确定乘积矩阵中的各元素[xij*kpq]。之后从不同的起点元素开始对图像矩阵进行采样,以起点元素(1,1)为例,按每行间隔1、每列间隔1进行采样,得到位置信息(1,1)、(1,3)、(3,1)、(3,3),起点元素(1,2)对应的位置信息为(1,2)、(3,2),起点元素(2,1)对应的位置信息为(2,1)、(2,3),起点元素(2,2)对应的位置信息为(2,2)。
其中,不同起点元素对应为一组,针对上述起点元素为(1,1)时,根据其对应的位置信息,可以从乘积矩阵中读取目标元素[x11*kpq]、[x13*kpq]、[x31*kpq]、[x33*kpq],以得到起点元素(1,1)对应的第一矩阵。之后针对第一矩阵中的任意元素[xi'j'*kpq],根据xi'j'在图像矩阵中的位置信息(i',j')、kpq在原始卷积核中的位置、尺寸(U,V),确定元素在特征图像中的目标位置。上述为针对一组进行的处理过程,在实际应用中,可以同时对多个起点元素进行上述处理,最后以得到各起点元素(c,d)对应的第一矩阵中各元素的目标位置。
之后,针对任一目标位置,将各第一矩阵中位于目标位置的待处理元素进行累加处理,得到目标位置的元素。以目标位置为第1行第1列为例,位于第1行第1列的元素为[x11*k11];目标位置为第1行第3列时,位于第1行第3列的待处理元素包括[x11*k12]和[x13*k11],则特征图像的第1行第3列的元素为[x11*k12]+[x13*k11]。
经过上述一系列处理后,可以得到特征图像各位置处的元素,根据各目标位置的元素,构建得到尺寸(2,2)下原始图像对应的特征图像。
本申请的多尺度图像处理方法减小了图像处理过程中的计算量,缩短了图像处理时间,提高了图像处理效率,为实际的多尺度图像处理方法实用较多的尺寸组合奠定了基础,提高了多分辨率学习的准确性和效果。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
本申请提供了一种多尺度图像处理***,参照图8所示,所述***包括:逐点乘积和存储单元、参数生成单元、复用计算单元;其中,
逐点乘积和存储单元,用于根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵,并存储乘积矩阵;
复用计算单元,用于针对任一空洞卷积的尺寸(U,V),在图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数,并针对任一起点元素(c,d),根据尺寸(U,V),从存储在逐点乘积和存储单元内的乘积矩阵中读取目标元素,得到第一矩阵;
参数生成单元,用于针对任一起点元素(c,d)对应的第一矩阵,根据乘积矩阵和尺寸(U,V),确定第一矩阵中各元素在特征图像中的目标位置;
复用计算单元,还用于针对各起点元素(c,d)对应的第一矩阵,分别从参数生成单元中读取第一矩阵中各元素的目标位置,将位于同一目标位置的元素进行累加处理,得到原始图像在尺寸(U,V)下对应的特征图像。
本申请实施例中,逐点乘积和存储单元可以从共享存储中读取原始图像的图像矩阵和原始卷积核,并根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵,其中乘积矩阵作为后续可复用的数据存储在逐点乘积和存储单元中,以供其它模块读取。
复用计算单元用于针对任一空洞卷积的尺寸(U,V),在图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数,并针对任一起点元素(c,d),根据尺寸(U,V),从存储在逐点乘积和存储单元内的乘积矩阵中读取目标元素,得到第一矩阵。
参数生成单元,用于针对任一起点元素(c,d)对应的第一矩阵,根据乘积矩阵和尺寸(U,V),确定第一矩阵中各元素在特征图像中的目标位置;
复用计算单元,还用于针对各起点元素(c,d)对应的第一矩阵,分别从参数生成单元中读取第一矩阵中各元素的目标位置,将位于同一目标位置的元素进行累加处理,得到原始图像在尺寸(U,V)下的对应的特征图像。
本申请实施例中,所述***的工作过程还可为,逐点乘积和存储单元先读取图像矩阵和原始卷积核,将原始卷积核K作reshape处理,形成原始卷积核对应的列向量。然后将图像矩阵中的各元素x(i,j)和原始卷积核对应的列向量相乘,获得I*J个存储向量Gij=x(i,j)*1≤i≤I,1≤j≤J),KV表示原始卷积核对应的列向量,并将存储向量存储供后续复用。这部分存储向量Gij(1≤i≤I,1≤j≤J)即乘法运算结果,将只计算一次,后续多尺度卷积学习实不再重复计算乘法,从而节省多尺度图像处理的计算成本。本单元各向量获取相互独立,可使用多进程/线程/协程实现。
之后,参数生成单元用于生成索引,索引表示第一矩阵中各元素在特征图像中的目标位置。对于多种尺度(U,V),其需要对每种(U,V),根据不同起点元素(c,d),生成索引对于一种尺度(U,V)有U*V套索引。假设共有Z种(U,V)则共需生成Z*U*V套索引。通过指定索引,可以在不修改/移动存储结果的前提下,指定各x(i,j)*KV中不同位置的元素相加。
此外,复用计算单元用于对每种(U,V),根据参数生成单元生成的索引,首先按照不同起点元素(c,d)做分组处理(共U*V组,每组对应起点(c,d)的一种取值),在逐点乘积和存储单元中选择各组内参与计算的存储向量Gi'j'(也可表示为),然后根据索引将处于同一目标位置的对应元素相加,完成一个尺度下的图像处理过程。最后通过reshape处理,重构当前(U,V)尺度下的卷积结果。假设共有Z种(U,V)尺度,每种尺度的平均迭代次数为O,则上述过程共需执行Z*O次,每次均不需另外计算卷积中的乘法,只需计算加法,从而显著降低了计算成本。本单元中每次各向量获取相互独立,可使用多进程/线程/协程实现。
其中,参数生成单元的工作流程如下,参照图9所示,
步骤902,对于每一种多分辨率尺度(U,V),生成多个起点元素(c,d);
步骤904,对每个起点元素(c,d),生成空洞卷积所用“扩大后卷积核”所命中的目标元素在图像矩阵中对应的位置信息(i',j'),其中i'=e*U+c,j'=f*V+d,0≤e≤(ceil(I/U)+P-1)-1,0≤f≤(ceil(J/V)+Q-1)-1,表示向上取整,例如,ceil(1.5)=2。
复用计算单元的工作流程如下,参照图10所示,
步骤1002,在多个尺度中选择一个尺度(U,V),共有Z种候选尺度。
步骤1004,在该尺度(U,V)中选择一个起点元素(c,d)(1≤c≤V,1≤d≤U),共有U*V种起点元素。
步骤1006,生成当前尺度(U,V)当前起点(c,d)下的初始化结果图像Y(U,V,c,d),各分组计算的结果会按位置信息累加到初始化结果图像对应位置中,当所有起点元素都完成处理后则获得最终的特征图像。
步骤1008,选择当前尺度(U,V)当前起点(c,d)下各存储向量和对应的索引向量计算对应结果向量Y(U,V,c,d)。其中,存储向量可按起点(c,d)进行分组,即中上标“(c,d)”。计算时,根据索引,将对应中的元素累加到对应的特征图像的目标位置上,通过叠加实现图像处理。
步骤1010,判断当前尺度(U,V)当前起点(c,d)下的图像处理过程是否完毕,若未完成,则返回步骤1108,若完成了,则进行步骤1012。
其中,步骤1008和1010的完整伪代码如下:
其中,分组取值范围为i'=e*U+c,j'=f*V+d,0≤e≤(ceil(I/U)+P-1)-1,0≤f≤(ceil(J/V)+Q-1)-1,ceil表示向上取整;[r]表示中的位于第r维的元素;[r]1和[r]2表示的第r维中第1和第2个元素(的第r维是一个2维数组,分别表示元素在特征图像中的行数和列数), 表示Y(U,V,c,d)中一个元素位置(也即目标位置)。
步骤1012:判断本尺度(U,V)对应的所有起点元素(c,d)是否都已完成计算,若完成,则进行步骤1014,否则进行步骤1004,选择本尺度下未计算的起点元素再次计算。
步骤1014:对各个Y(U,V,c,d)(1≤c≤U,1≤d≤V)作reshape处理。即选择其中不为0的值,填写到本尺度对应的特征图像Y(U,V)的对应位置处,获得本尺度(U,V)下的特征图像。
步骤1016,如所有尺度(U,V)都已计算完毕,并获得对应的特征图像Y(U,V),则结束本次多尺度图像处理,否则进行1002,挑选其他尺度再次计算。
基于上述多尺度图像处理***,在对图像进行多尺度图像处理过程中,针对任一尺寸(U,V),根据尺寸(U,V)以及尺寸(U,V)所对应的起点元素(c,d),可以从乘积矩阵中读取目标元素,形成第一矩阵,并将各起点元素(c,d)对应的第一矩阵中各元素进行相应的累加处理,即可得到尺寸(U,V)下的特征图像,其中,乘积矩阵作为一组可以重复使用的数据,使得在多尺度图像处理过程中,执行各尺寸对应的空洞卷积时,均可以复用乘积矩阵,直接从乘积矩阵中读取相应元素,并进行简单的累加处理即可,无需在每一尺寸的空洞卷积过程执行一次完整的卷积运算,可以大大减少多尺度图像处理过程中的运算量,缩短了多尺度图像处理的时间,提高了图像处理的效率。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的多尺度图像处理方法的多尺度图像处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个多尺度图像处理装置实施例中的具体限定可以参见上文中对于多尺度图像处理方法的限定,在此不再赘述。
在一个实施例中,如图11所示,提供了一种多尺度图像处理装置,包括:乘积模块1102、第一确定模块1104、读取模块1106、第二确定模块1108和累加模块1110,其中:
乘积模块1102,用于根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
第一确定模块1104,用于针对任一空洞卷积的尺寸(U,V),在图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
读取模块1106,用于针对任一起点元素(c,d),根据尺寸(U,V),从乘积矩阵中读取目标元素,得到第一矩阵;
第二确定模块1108,用于根据乘积矩阵和尺寸(U,V),确定第一矩阵中各元素在特征图像中的目标位置;
累加模块1110,用于针对各起点元素(c,d)对应的第一矩阵,将位于同一目标位置的元素进行累加处理,得到原始图像在尺寸(U,V)下对应的特征图像。
在一个实施例中,所述乘积模块1102还用于:
针对原始卷积核,按行顺序依次读取原始卷积核内各行的元素,得到卷积行向量;
对卷积行向量进行转置处理,得到原始卷积核对应的列向量;
针对原始图像对应的图像矩阵中的任一元素,将图像矩阵中的元素与原始卷积核对应的列向量进行乘积运算,得到乘积矩阵中的列向量;
根据图像矩阵中各元素对应的列向量,得到乘积矩阵。
在一个实施例中,所述读取模块1106还用于:
确定乘积矩阵中的各元素[xij*kpq],其中,xij为图像矩阵中的任一元素,(i,j)表示xij在图像矩阵中的位置信息,kpq为原始卷积核中的任一元素,i、j、p、q均为正整数;
针对图像矩阵,从起点元素(c,d)开始,每行按间隔U-1、每列按间隔V-1进行采样,得到各目标元素在图像矩阵中对应的位置信息(i',j');
根据位置信息(i',j'),从乘积矩阵中读取目标元素[xi'j'*kpq],得到第一矩阵。
在一个实施例中,所述第二确定模块1108还用于:
针对第一矩阵中的任一元素[xi'j'*kpq],根据xi'j'在图像矩阵中的位置信息(i',j')、kpq在原始卷积核中的位置、尺寸(U,V),确定元素在特征图像中的特征位置。
在一个实施例中,所述第二确定模块1108还用于:
根据xi'j'在图像矩阵中的行数i'、kpq在原始卷积核中的行数p、及尺寸U,确定元素在特征图像中的行数;
根据xi'j'在图像矩阵中的列数j'、kpq在原始卷积核中的列数q、及尺寸V,确定元素在特征图像中的列数。
在其中一个实施例中,所述累加模块1110还用于:
针对任一目标位置,将各第一矩阵中位于目标位置的待处理元素进行累加处理,得到目标位置的元素;
根据各目标位置的元素,构建得到原始图像在尺寸(U,V)下对应的特征图像。
上述多尺度图像处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图12所示。该计算机设备包括通过***总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种XXX方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种多尺度图像处理方法,其特征在于,所述方法包括:
根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
针对任一所述起点元素(c,d),根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵;
根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
2.根据权利要求1所述的方法,其特征在于,所述根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵,包括:
针对原始卷积核,按行顺序依次读取所述原始卷积核内各行的元素,得到卷积行向量;
对所述卷积行向量进行转置处理,得到所述原始卷积核对应的列向量;
针对原始图像对应的图像矩阵中的任一元素,将所述图像矩阵中的元素与所述原始卷积核对应的列向量进行乘积运算,得到所述乘积矩阵中的列向量;
根据所述图像矩阵中各元素对应的列向量,得到所述乘积矩阵。
3.根据权利要求1或2任一项所述的方法,其特征在于,所述根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵,包括:
确定所述乘积矩阵中的各元素[xij*kpq],其中,xij为所述图像矩阵中的任一元素,(i,j)表示xij在所述图像矩阵中的位置信息,kpq为所述原始卷积核中的任一元素,i、j、p、q均为正整数;
针对所述图像矩阵,从所述起点元素(c,d)开始,每行按间隔U-1、每列按间隔V-1进行采样,得到各目标元素在所述图像矩阵中对应的位置信息(i',j');
根据所述位置信息(i',j'),从所述乘积矩阵中读取目标元素[xi'j'*kpq],得到所述第一矩阵。
4.根据权利要求1所述的方法,其特征在于,所述根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置,包括:
针对所述第一矩阵中的任一元素[xi'j'*kpq],根据所述xi'j'在所述图像矩阵中的位置信息(i',j')、所述kpq在所述原始卷积核中的位置、所述尺寸(U,V),确定所述元素在特征图像中的目标位置。
5.根据权利要求4所述的方法,其特征在于,所述根据所述xi'j'在所述图像矩阵中的位置信息(i',j')、所述kpq在所述原始卷积核中的位置、所述尺寸(U,V),确定所述元素在特征图像中的目标位置,包括:
根据所述xi'j'在所述图像矩阵中的行数i'、所述kpq在所述原始卷积核中的行数p、及所述尺寸U,确定所述元素在所述特征图像中的行数;
根据所述xi'j'在所述图像矩阵中的列数j'、所述kpq在所述原始卷积核中的列数q、及所述尺寸V,确定所述元素在所述特征图像中的列数。
6.根据权利要求1所述的方法,其特征在于,所述针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)对应下的所述特征图像,包括:
针对任一所述目标位置,将各所述第一矩阵中位于所述目标位置的待处理元素进行累加处理,得到所述目标位置的元素;
根据各所述目标位置的元素,构建得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
7.一种多尺度图像处理***,其特征在于,所述***包括:逐点乘积和存储单元、参数生成单元、复用计算单元;其中,
所述逐点乘积和存储单元,用于根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵,并存储所述乘积矩阵;
所述复用计算单元,用于针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数,并针对任一所述起点元素(c,d),根据所述尺寸(U,V),从存储在所述逐点乘积和存储单元内的所述乘积矩阵中读取目标元素,得到第一矩阵;
所述参数生成单元,用于针对任一所述起点元素(c,d)对应的所述第一矩阵,根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
所述复用计算单元,还用于针对各所述起点元素(c,d)对应的所述第一矩阵,分别从所述参数生成单元中读取所述第一矩阵中各元素的所述目标位置,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
8.一种多尺度图像处理装置,其特征在于,所述装置包括:
乘积模块,用于根据原始图像对应的图像矩阵与原始卷积核,得到对应的乘积矩阵;
第一确定模块,用于针对任一空洞卷积的尺寸(U,V),在所述图像矩阵中确定多个起点元素(c,d),其中1≤c≤V,1≤d≤U,U、V、c、d均为正整数;
读取模块,用于针对任一所述起点元素(c,d),根据所述尺寸(U,V),从所述乘积矩阵中读取目标元素,得到第一矩阵;
第二确定模块,用于根据所述乘积矩阵和所述尺寸(U,V),确定所述第一矩阵中各元素在特征图像中的目标位置;
累加模块,用于针对各所述起点元素(c,d)对应的所述第一矩阵,将位于同一所述目标位置的元素进行累加处理,得到所述原始图像在所述尺寸(U,V)下对应的所述特征图像。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211082679.4A CN115424038A (zh) | 2022-09-06 | 2022-09-06 | 多尺度图像处理方法、***、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211082679.4A CN115424038A (zh) | 2022-09-06 | 2022-09-06 | 多尺度图像处理方法、***、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115424038A true CN115424038A (zh) | 2022-12-02 |
Family
ID=84202162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211082679.4A Pending CN115424038A (zh) | 2022-09-06 | 2022-09-06 | 多尺度图像处理方法、***、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115424038A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116629321A (zh) * | 2023-07-24 | 2023-08-22 | 美智纵横科技有限责任公司 | 数据处理方法、语音处理方法、装置、介质及芯片 |
-
2022
- 2022-09-06 CN CN202211082679.4A patent/CN115424038A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116629321A (zh) * | 2023-07-24 | 2023-08-22 | 美智纵横科技有限责任公司 | 数据处理方法、语音处理方法、装置、介质及芯片 |
CN116629321B (zh) * | 2023-07-24 | 2023-10-03 | 美智纵横科技有限责任公司 | 数据处理方法、语音处理方法、装置、介质及芯片 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11620513B2 (en) | Computing convolutions using a neural network processor | |
US11620508B2 (en) | Vector computation unit in a neural network processor | |
EP3373210B1 (en) | Transposing neural network matrices in hardware | |
CN111758107B (zh) | 用于基于硬件的池化的***和方法 | |
US11210580B2 (en) | Rotating data for neural network computations | |
CA3030428C (en) | Superpixel methods for convolutional neural networks | |
KR101298393B1 (ko) | 그래픽 처리 유닛 상에서 콘볼루션 신경망을 트레이닝하는방법 | |
JP2021100247A (ja) | 歪んだドキュメント画像の矯正方法及び装置 | |
CN110580324B (zh) | 图像矩阵运算方法、装置、计算机设备和存储介质 | |
CN111127317B (zh) | 图像超分辨率重建方法、装置、存储介质和计算机设备 | |
WO2021218037A1 (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
CN114048845B (zh) | 点云修复方法、装置、计算机设备和存储介质 | |
CN114387289B (zh) | 输配电架空线路三维点云语义分割方法和装置 | |
CN115424038A (zh) | 多尺度图像处理方法、***、装置和计算机设备 | |
CN111639523B (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
CN112966729A (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN111429388B (zh) | 一种图像处理方法、装置和终端设备 | |
CN114022518B (zh) | 图像的光流信息获取方法、装置、设备和介质 | |
CN115424114A (zh) | 图像处理方法及装置、图像处理模型的训练方法及装置 | |
CN115147296A (zh) | 高光谱图像矫正方法、装置、计算机设备和存储介质 | |
CN111831207B (zh) | 一种数据处理方法、装置及其设备 | |
CN115511070A (zh) | 模型训练方法、装置及可读存储介质 | |
CN113379657B (zh) | 基于随机矩阵的图像处理方法及装置 | |
CN116543161A (zh) | 语义分割方法、装置、计算机设备和存储介质 | |
CN115063658A (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 |