CN117853740A - 特征图处理方法及装置、计算机可读存储介质 - Google Patents
特征图处理方法及装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN117853740A CN117853740A CN202211198854.6A CN202211198854A CN117853740A CN 117853740 A CN117853740 A CN 117853740A CN 202211198854 A CN202211198854 A CN 202211198854A CN 117853740 A CN117853740 A CN 117853740A
- Authority
- CN
- China
- Prior art keywords
- convolution kernel
- feature map
- anchor point
- determining
- convolution
- 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 claims abstract description 36
- 230000000875 corresponding effect Effects 0.000 claims description 25
- 230000002596 correlated effect Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 2
- 238000000034 method Methods 0.000 abstract description 13
- 238000010586 diagram Methods 0.000 description 19
- 238000004364 calculation method Methods 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000011496 digital image analysis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
Abstract
本公开涉及特征图处理方法及装置、计算机可存储介质,涉及图像处理领域。特征图处理方法包括:根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置;根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置;在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积。根据本公开,提高了特征图处理的速度。
Description
技术领域
本公开涉及图像处理领域,特别涉及特征图处理方法及装置、计算机可读存储介质。
背景技术
得益于人工智能和计算能力的进步,计算机视觉技术已经朝着融入人们日常生活的方向大步迈进。在计算机的图像信息处理中运用深度学习方法,不仅可以大大提高计算机获取和表征图像的信息表达和知识泛化能力,还可以更方便、高效、快速、准确、有效地进行计算机图像分析和处理。
在图像处理中,基于深度学习的端到端编码方式得到了极大的发展。其中,一些先进的端到端的人工智能编码(例如,棋盘上下文模型,3D上下文模型等)方法往往对从图像中提取的特征图采用卷积上下文模型,以提高编码性能。
发明内容
根据本公开的第一方面,提供了一种特征图处理方法,包括:
根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置;
根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置;
在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积。
在一些实施例中,根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置。
在一些实施例中,其中,根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定位于第二卷积核的锚点下一个时刻在特征图中的位置的第一方向的反方向的第一特征点和第二方向的反方向的第二特征点的至少一对特征点,其中,第一方向为第一卷积核的锚点沿行方向的移动方向,第二方向为第一卷积核的锚点沿列方向的移动方向;
根据至少一对特征点,确定下一个时刻第二卷积核的锚点在特征图中的位置。
在一些实施例中,根据至少一对特征点,确定第二卷积核的锚点下一个时刻在特征图中的位置,包括:
针对至少一对特征点中的每对特征点,根据位于第一特征点的第一方向且位于第二特征点的第二方向的位置,确定一个第二卷积核的锚点下一个时刻在特征图中的位置。
在一些实施例中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:
在当前时刻第一卷积核没有到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点沿第一方向移动第一步长后的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置。
在一些实施例中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:
在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点当前时刻在特征图中的位置和卷积的填充参数,确定第一卷积核的锚点下一个时刻在特征图中的位置。
在一些实施例中,在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点当前时刻在特征图中的位置和卷积的填充参数,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点从当前时刻在特征图中的位置沿第二方向移动第二步长、且沿第一方向的反方向移动与填充参数相同的长度后到达的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置。
在一些实施例中,第一卷积核的锚点已经经过的位置包括第一卷积核的锚点当前时刻在特征图中的位置,所述根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点当前时刻在特征图中的位置,确定偏移参数的一个或多个值,其中,每个偏移参数对应一个第二卷积核;
针对每个偏移参数的值,根据偏移参数的值和第一卷积核的锚点当前时刻在特征图中的位置的行索引,确定对应的第二卷积核的锚点下一个时刻在特征图中的位置的行索引;
针对每个偏移参数的值,根据偏移参数的值和第一卷积核的锚点当前时刻在特征图中的位置的列索引,确定对应的第二卷积核的锚点下一个时刻在特征图中的位置的列索引。
在一些实施例中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定偏移参数的一个或多个值,包括:
生成偏移参数的多个候选值,其中,多个候选值是等差数列;
针对每个候选值,判断候选值、填充参数和第一卷积核的锚点当前时刻在特征图中的位置的列索引,是否满足预设不等式;
根据满足预设不等式的候选值,确定偏移参数的一个或多个值。
在一些实施例中,根据满足预设不等式的候选值,确定偏移参数的值,包括:
在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据满足预设不等式、且不为1的候选值,确定偏移参数的一个或多个值,其中,第一方向为第一卷积核的锚点沿行方向的移动方向。
在一些实施例中,第二卷积核的锚点下一个时刻在特征图中的位置的列索引与卷积的填充参数成负相关。
在一些实施例中,第二卷积核的锚点下一个时刻在特征图中的位置的行索引与偏移参数成正相关、且与第一卷积核的锚点当前时刻在特征图中的位置的行索引成正相关。
在一些实施例中,第二卷积核的锚点下一个时刻在特征图中的位置的列索引与偏移参数成负相关、且与第一卷积核的锚点当前时刻在特征图中的位置的列索引成正相关。
在一些实施例中,其中,卷积的填充参数与第一卷积核的尺寸成正相关。
在一些实施例中,在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积,包括:
根据第一卷积核的锚点下一个时刻在特征图中的位置,确定第一卷积核对应的特征图区域;
根据第二卷积核的锚点下一个时刻在特征图中的位置,确定第二卷积核对应的特征图区域。
在一些实施例中,第一卷积核的锚点下一个时刻在特征图中的位置与第二卷积核的锚点下一个时刻在特征图中的位置不在同一行。
根据本公开的第二方面,提供了一种特征图处理装置,包括:
第一确定模块,被配置为根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置;
第二确定模块,被配置为根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置;
卷积模块,被配置为在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积。
根据本公开的第三方面,提供了一种通信装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令,执行根据本公开一些实施例所述的特征图处理方法。
根据本公开的第四方面,提供了一种计算机可存储介质,其上存储有计算机程序指令,该指令被处理器执行时,实现根据本公开一些实施例所述的特征图处理方法。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1示出相关技术的上下文卷积的卷积核锚点移动的示意图;
图2示出相关技术的上下文卷积的卷积顺序的示意图;
图3示出根据本公开一些实施例的特征图处理方法的流程图;
图4示出根据本公开一些实施例的第一卷积核的锚点移动的示意图;
图5示出根据本公开一些实施例的卷积顺序的示意图;
图6示出根据本公开一些实施例的特征图处理装置的框图;
图7示出根据本公开另一些实施例的特征图处理装置的框图;
图8示出用于实现本公开一些实施例的计算机系统的框图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
相关技术中,卷积上下文给图像处理系统整体的性能提升带来了有益的作用,但与此同时,基于卷积上下文的更新计算,也给系统带来了较大的时间复杂度。基于卷积神经网络的上下文模型,特征点在计算中需要用到位于特征点上面和左边更新过的特征内容,因此特征通道内特征点采用逐行逐点串行计算的方式,时间复杂度高,卷积速度慢,降低了图像处理的效率。
本专利提供了一种特征图处理方法,能够提高图像处理的效率。
图1示出了相关技术的上下文卷积的卷积核锚点移动的示意图。
如图1所示,深灰色边缘为特征图中根据填充参数进行填充的点,不作为卷积核的锚点的位置。卷积过程中,卷积核的锚点需要从特征图最左侧逐步移动到当前行的最右侧,然后换行,移动到第二行的最左侧,以此类推,直至锚点经过全部待更新点。
图2示出了相关技术的上下文卷积的卷积顺序的示意图。
图2中的数字用于表示时刻,在第1时刻,卷积核锚点在第一行第一个,进行卷积。上下文卷积和普通卷积的区别在于,上下文卷积要求在卷积时,基准点(卷积核的锚点所在的位置)左侧和上方的点(且在卷积核范围内的点)都已经更新完毕。因此,需要卷积核的锚点对第一行的所有位置都更新过以后,在w+1时刻,卷积核的锚点才来到第二行的左侧第一个位置进行卷积,其中,w为特征图的宽度(不包括填充边缘)。
相关技术中,这种逐行逐点、串行地进行上下文卷积的方式,需要等待第一行的位置全都更新过以后,才能更新第二行,因此卷积效率低,耗时长。
图3示出根据本公开一些实施例的特征图处理方法的流程图。
如图3所示,特征图处理方法包括步骤S1-步骤S3。
在步骤S1中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置。
例如,对于从图像中提取的特征图,先以第一卷积核的锚点所在的位置为基准点,基准点在特征图中移动,从当前位置移动到下一个位置。卷积核的锚点即卷积核的中心点。
在一些实施例中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:在当前时刻第一卷积核没有到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点沿第一方向移动第一步长后的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置。
图4示出了根据本公开一些实施例的第一卷积核的锚点移动的示意图。
图4中圆圈所在的位置表示第一卷积核所在的位置。如图4所示,令第一步长为1,第一卷积核的尺寸是3*3,第一方向可以是行方向第一卷积核移动的方向。在第一时刻,第一卷积核的锚点(基准点)在第一行第一个圆圈,第二时刻,基准点向右移动,移动到第一行第二个圆圈,以此类推,直到第一卷积核的锚点到达第一行的最后一个圆圈处。
例如,当前的第一卷积核的锚点的位置坐标为X1(i,j),则在移动前先判断是否满足以下条件:
j=W-1
其中,i为行索引,j为列索引,W为特征图的宽度。
j=W-1时,表示卷积核已经到达图像边缘,记录flag=1;不满足j=W-1时,flag=0。
在flag=0的情况下,下一个时刻第一卷积核的锚点的位置为X1(i,j+1),即,向右移动一个像素。
在一些实施例中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点当前时刻在特征图中的位置和卷积的填充参数,确定第一卷积核的锚点下一个时刻在特征图中的位置。
如图4所示,在第一卷积核的尺寸是3*3的情况下,当第一卷积核的锚点到达图4中倒数第二个圆圈时,第一卷积核已经到达特征图最右侧的边缘,或者说,第一卷积核的右侧边缘此时与特征图的右侧边缘重合,flag=1。则此时第一卷积核的锚点除了需要换行外,还需要根据填充参数,确定向左移动的点数。
在一些实施例中,在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点当前时刻在特征图中的位置和卷积的填充参数,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:根据第一卷积核的锚点从当前时刻在特征图中的位置沿第二方向移动第二步长、且沿第一方向的反方向移动与填充参数相同的长度后到达的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置。
例如,第二步长也为1,第二方向为第一卷积核的锚点沿列方向移动的方向。在当前flag=1的情况下,下一个时刻,第一卷积核的锚点移动到X1(i+1,j-p),其中,p是卷积的填充参数。
在一些实施例中,卷积的填充参数与第一卷积核的尺寸成正相关。
例如,第一卷积核的尺寸k和填充参数p满足以下公式:
p=(k-1)/2
在步骤S2中,根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置。
例如,第一卷积核的锚点已经经过的位置是已经利用卷积核更新过的点,根据已经更新过的点,确定下一时刻,哪些点可以利用第二卷积核并行更新。其中,第二卷积核的尺寸等参数可以和第一卷积核相同。第一卷积核和第二卷积核的区别仅在于在同一时刻,二者对图像的不同位置进行卷积。第一卷积核和第二卷积核不限于二维尺寸,也可为更多维尺寸,例如帧内多特征通道同时计算,帧间多特征通道同时计算。
根据本公开的一些实施例的上下文卷积方法,对于位于不同特征行上,根据已经更新过的点,确定满足卷积更新条件的特征点,可同步开展更新计算,在不降低性能情况下,提高特征图处理的速度。
在一些实施例中,根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置。
例如,除了考虑已经利用第一卷积核更新过的点之外,还考虑已经利用第二卷积核更新过的点。根据所有已经更新过的点,确定下一个时刻的第二卷积核的锚点的位置(即,下一个时刻可以与基准点同时进行更新的点)。
在一些实施例中,根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定位于第二卷积核的锚点下一个时刻在特征图中的位置的第一方向的反方向的第一特征点和第二方向的反方向的第二特征点的至少一对特征点,其中,第一方向为第一卷积核的锚点沿行方向的移动方向,第二方向为第一卷积核的锚点沿列方向的移动方向;根据至少一对特征点,确定下一个时刻第二卷积核的锚点在特征图中的位置。
例如,先找出特征图中所有已经经过的点(即,已经更新的点,包括第一卷积核和第二卷积核的锚点已经经过点)。在剩余的点中(即待更新点),找出哪些待更新点的左面和上面都为已经更新的点,将找出来的待更新点作为下一时刻第二卷积核的锚点的位置(另外,需要从中排除与步骤S1中确定的第一卷积核的位置重合的位置)。
也可以先确定第一特征点和第二特征点的组合,第一特征点和第二特征点为已经更新的点,且满足第一特征点的右边的点和第二特征点的下边的点为同一个待更新点。
在一些实施例中,根据至少一对特征点,确定第二卷积核的锚点下一个时刻在特征图中的位置,包括:针对至少一对特征点中的每对特征点,根据位于第一特征点的第一方向且位于第二特征点的第二方向的位置,确定一个第二卷积核的锚点下一个时刻在特征图中的位置。
例如,对于每个满足上述条件的第一特征点和第二特征点的组合,可以确定第一特征点的右边的待更新的点(即第二特征点的下边的点)的位置为下一个时刻第二卷积核的锚点的位置。
在一些实施例中,第一卷积核的锚点已经经过的位置包括第一卷积核的锚点当前时刻在特征图中的位置,所述根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:根据第一卷积核的锚点当前时刻在特征图中的位置,确定偏移参数的一个或多个值,其中,每个偏移参数对应一个第二卷积核;针对每个偏移参数的值,根据偏移参数的值和第一卷积核的锚点当前时刻在特征图中的位置的行索引,确定对应的第二卷积核的锚点下一个时刻在特征图中的位置的行索引;针对每个偏移参数的值,根据偏移参数的值和第一卷积核的锚点当前时刻在特征图中的位置的列索引,确定对应的第二卷积核的锚点下一个时刻在特征图中的位置的列索引。
例如,由于第一卷积核的锚点移动是有规律的,所以第一卷积核的锚点当前位置,就可以直接反映出第一卷积核的锚点已经经过的所有位置。另外,由于在每一个时刻,第二卷积核的锚点的位置都是根据第一卷积核的锚点确定,所以第一卷积核的锚点当前位置,也可以直接反映出第二卷积核的锚点已经经过的位置。因此,可以直接根据第一卷积核的锚点的当前位置,计算得到下一时刻第二卷积核的锚点已经经过的位置。
本公开通过第一卷积核的锚点的当前位置,确定满足卷积核区域其上方和左方的特征值已更新的特征点(其中待更新特征点位于卷积核中心位置,即锚点),从而能够确定第二卷积核的位置。直接根据第一卷积核的锚点当前时刻的行索引和列索引,就可以计算得到下一时刻能并行更新的不同位置,计算复杂度低,能够提高卷积效率。
另外,在偏移参数n的取值不止一个时,能得到下一时刻多个第二卷积核的锚点的位置,在下一时刻,可以同时对第一卷积核和多个第二卷积核进行卷积,进一步提升了卷积的速度。
在一些实施例中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定偏移参数的一个或多个值,包括:生成偏移参数的多个候选值,其中,多个候选值是等差数列;针对每个候选值,判断候选值、填充参数和第一卷积核的锚点当前时刻在特征图中的位置的列索引,是否满足预设不等式;根据满足预设不等式的候选值,确定偏移参数的一个或多个值。
例如,要根据第一卷积核的锚点的当前位置,计算得到下一时刻第二卷积核的锚点已经经过的位置,需要计算偏移参数n。从n=1开始,判断n的值是否满足下列预设不等式:
i+n<H
j+1<W
j-(p+1)*n+1≥0
其中,H为特征图张量高度,W为特征图张量宽度,i为第一卷积核的当前位置的行索引,j为第一卷积核的当前位置的列索引。
判断n是否满足上述不等式,将满足条件的n的值确定为一个偏移参数,然后令n的值加1,继续判断(n=2,3,4,5……)是否满足上述不等式,直到不满足时停止。图4中的箭头所在的位置,都是第二卷积核的锚点经过的位置,可以看出,从第一卷积核的锚点的同一个位置(一个圆圈),可以延伸出多个第二卷积核的锚点下一时刻的位置(箭头)。
通过将等差数列作为偏移参数的候选的取值,充分考虑了偏移参数的所有可能的取值,使得所有满足条件的位置都能同时进行卷积,进一步提升了卷积的速度。
在一些实施例中,第二卷积核的锚点下一个时刻在特征图中的位置的列索引与卷积的填充参数成负相关。
在一些实施例中,第二卷积核的锚点下一个时刻在特征图中的位置的行索引与偏移参数成正相关、且与第一卷积核的锚点当前时刻在特征图中的位置的行索引成正相关。
在一些实施例中,第二卷积核的锚点下一个时刻在特征图中的位置的列索引与偏移参数成负相关、且与第一卷积核的锚点当前时刻在特征图中的位置的列索引成正相关。
确定n所有的取值之后,代入X2(i+n,j-(p+1)*n+1),将所有得到的X2,都作为下一个时刻第二卷积核的位置。
在一些实施例中,根据满足预设不等式的候选值,确定偏移参数的值,包括:在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据满足预设不等式、且不为1的候选值,确定偏移参数的一个或多个值,其中,第一方向为第一卷积核的锚点沿行方向的移动方向。
例如,在第一卷积核到达特征图在第一方向的边缘的情况下,即flag=1时,此时第一卷积核的锚点的下一个时刻的位置X1(i+1,j-p)。而此时,如果n=1,则也有X2(i+1,j-p),就造成了第一和第二卷积核的下一个时刻的位置重合,为了使得第一卷积核和第二卷积核在下一个时刻的位置不重叠,排除n=1的值。
在一些实施例中,第一卷积核的锚点下一个时刻在特征图中的位置和每个第二卷积核的锚点下一个时刻在特征图中的位置不在同一行。
例如,下一个时刻,第一卷积核的锚点和第二卷积核的锚点不在同一行上,从而可以在特征图的不同行,同时对第一和第二卷积核进行卷积,提高卷积效率,降低卷积的时间复杂度。
在步骤S3中,在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积。
在一些实施例中,在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积,包括:根据第一卷积核的锚点下一个时刻在特征图中的位置,确定第一卷积核对应的特征图区域;根据第二卷积核的锚点下一个时刻在特征图中的位置,确定第二卷积核对应的特征图区域。
例如,根据第一卷积核的锚点下一个时刻在特征图中的位置,可以确定第一卷积核的扫描区域对应的特征图区域,类似地,可以确定第二卷积核的扫描区域对应的特征图区域。在下一个时刻,对第一卷积核的扫描区域对应的特征图区域和第二卷积核的扫描区域对应的特征图区域,同时进行卷积。
图5示出根据本公开一些实施例的卷积顺序的示意图。
图5中的数字表示时刻顺序。其中,第一排的五幅图表示第一卷积核的移动轨迹,第二排的三幅图和第三排的一副图表示第二卷积核的移动轨迹。例如,在第3时刻,同时利用第一卷积核对第一行的第三个位置(不包括填充边缘)和利用第二卷集合对第二行的第一个位置进行卷积,在第5时刻,同时利用第一卷积核对第一行,以及利用第二卷积核对第二行、第三行的相应位置并行进行卷积。
与图3所示的串行上下文卷积方法相比,本公开不需要等待第一行卷积完成再卷积第二行,而是提前找出满足条件的位置,并行进行卷积,需要的时间更短。
本公开根据第一卷积核已经卷积过的位置,可以确定第二卷积核的位置,从而对第一卷积核和第二卷积核同时卷积,实现了在同一张特征图上并行计算卷积,在不降低性能情况下,提高特征图处理的速度。
可以在任意需要上下文卷积的图像处理中,应用根据本公开一些实施例的特征图处理方法。例如,在cheng2020深度学习端到端图像编码模型中的上下文卷积模块中,使用根据本公开一些实施例的特征图处理方法。以输入图像1920x1080x3为例,进入上下文模型的特征尺寸为120x68x192,上下文模型中卷积核尺寸为3*3。
第一卷积核的锚点(基准点)从(0,0)开始,根据第一卷积核的锚点的当前位置(0,0),计算满足更新条件的特征点作为第二卷积核的锚点。
第一卷积核的锚点在没到达右侧边缘前,先进行横向移动更新,第一卷积核的锚点在(0,2)点时,下一时刻第一卷积核的锚点在(0,3),下一时刻第二卷积核的锚点在(1,0)。
下一时刻,第一卷积核的锚点移动到(0,3),根据第一卷积核的锚点(0,3)计算满足更新条件的特征点,计算得到下一时刻第一卷积核的锚点在(0,4),下一时刻第二卷积核的锚点在(1,1)
下一时刻,第一卷积核的锚点移动到(0,4),根据(0,4)计算满足更新条件的特征点,计算得到下一时刻第一卷积核的锚点在(0,5),下一时刻第二卷积核的锚点在(1,2)。
下一时刻,第一卷积核的锚点移动到(0,5),根据(0,5)计算满足更新条件的特征点,计算下一时刻第一卷积核的锚点在(0,6),下一时刻有两个第二卷积核的锚点,分别在(1,3),(2,0),以此计算下去。
直到第一卷积核的锚点移动到(0,67),记录flag=1。根据(0,67)计算满足更新条件的特征点,计算得到下一时刻第一卷积核的锚点在(1,65)。下一时刻有两个第二卷积核的锚点,分别在(2,62)(3,59)(4,56)(5,53)(6,50)(7,47)(8,44)(9,41)(10,38)(11,35)(12,32)(13,29)(14,26)(15,23)(16,20)(17,17)(18,14)(19,11)(20,8)(21,5)(22,2)。
下一时刻,第一行已经全部更新完成,第一卷积核的锚点移动到(1,65)。
图6示出根据本公开一些实施例的特征图处理装置的框图。
如图6所示,特征图处理装置6包括第一确定模块61、第二确定模块62和卷积模块63。
第一确定模块61,被配置为根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置,例如执行如图6所示的步骤S1。
第二确定模块62,被配置为根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,例如执行如图6所示的步骤S2。
卷积模块63,被配置为在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积,例如执行如图6所示的步骤S3。
图7示出根据本公开另一些实施例的特征图处理装置的框图。
如图7所示,特征图处理装置7包括存储器71;以及耦接至该存储器71的处理器72,存储器71用于存储执行特征图处理方法。处理器72被配置为基于存储在存储器71中的指令,执行本公开中任意一些实施例中的特征图处理方法。
图8示出用于实现本公开一些实施例的计算机系统的框图。
如图8所示,计算机系统80可以通用计算设备的形式表现。计算机系统80包括存储器810、处理器820和连接不同系统组件的总线800。
存储器810例如可以包括系统存储器、非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。系统存储器可以包括易失性存储介质,例如随机存取存储器(RAM)和/或高速缓存存储器。非易失性存储介质例如存储有执行本公开中任意一些实施例中的特征图处理方法的指令。非易失性存储介质包括但不限于磁盘存储器、光学存储器、闪存等。
处理器820可以用通用处理器、数字信号处理器(DSP)、应用专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑设备、分立门或晶体管等分立硬件组件方式来实现。相应地,诸如判断模块和确定模块的每个模块,可以通过中央处理器(CPU)运行存储器中执行相应步骤的指令来实现,也可以通过执行相应步骤的专用电路来实现。
总线800可以使用多种总线结构中的任意总线结构。例如,总线结构包括但不限于工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、外围组件互连(PCI)总线。
计算机系统80还可以包括输入输出接口830、网络接口840、存储接口850等。这些接口830、840、850以及存储器810和处理器820之间可以通过总线800连接。输入输出接口830可以为显示器、鼠标、键盘等输入输出设备提供连接接口。网络接口840为各种联网设备提供连接接口。存储接口850为软盘、U盘、SD卡等外部存储设备提供连接接口。
这里,参照根据本公开实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个框以及各框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可提供到通用计算机、专用计算机或其他可编程装置的处理器,以产生一个机器,使得通过处理器执行指令产生实现在流程图和/或框图中一个或多个框中指定的功能的装置。
这些计算机可读程序指令也可读存储在计算机可读存储器中,这些指令使得计算机以特定方式工作,从而产生一个制造品,包括实现在流程图和/或框图中一个或多个框中指定的功能的指令。
本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。
通过上述实施例中的特征图处理方法及装置、计算机可读存储介质,提高了特征图处理的速度。
至此,已经详细描述了根据本公开的特征图处理方法及装置、计算机可读存储介质。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
Claims (19)
1.一种特征图处理方法,包括:
根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置;
根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置;
在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积。
2.根据权利要求1所述的特征图处理方法,其中,根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置。
3.根据权利要求2所述的特征图处理方法,其中,根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点已经经过的位置和第二卷积核的锚点已经经过的位置,确定位于第二卷积核的锚点下一个时刻在特征图中的位置的第一方向的反方向的第一特征点和第二方向的反方向的第二特征点的至少一对特征点,其中,第一方向为第一卷积核的锚点沿行方向的移动方向,第二方向为第一卷积核的锚点沿列方向的移动方向;
根据至少一对特征点,确定下一个时刻第二卷积核的锚点在特征图中的位置。
4.根据权利要求3所述的特征图处理方法,其中,根据至少一对特征点,确定第二卷积核的锚点下一个时刻在特征图中的位置,包括:
针对至少一对特征点中的每对特征点,根据位于第一特征点的第一方向且位于第二特征点的第二方向的位置,确定一个第二卷积核的锚点下一个时刻在特征图中的位置。
5.根据权利要求3所述的特征图处理方法,其中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:
在当前时刻第一卷积核没有到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点沿第一方向移动第一步长后的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置。
6.根据权利要求3所述的特征图处理方法,其中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:
在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点当前时刻在特征图中的位置和卷积的填充参数,确定第一卷积核的锚点下一个时刻在特征图中的位置。
7.根据权利要求6所述的特征图处理方法,其中,在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据第一卷积核的锚点当前时刻在特征图中的位置和卷积的填充参数,确定第一卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点从当前时刻在特征图中的位置沿第二方向移动第二步长、且沿第一方向的反方向移动与填充参数相同的长度后到达的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置。
8.根据权利要求1所述的特征图处理方法,其中,第一卷积核的锚点已经经过的位置包括第一卷积核的锚点当前时刻在特征图中的位置,所述根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置,包括:
根据第一卷积核的锚点当前时刻在特征图中的位置,确定偏移参数的一个或多个值,其中,每个偏移参数对应一个第二卷积核;
针对每个偏移参数的值,根据偏移参数的值和第一卷积核的锚点当前时刻在特征图中的位置的行索引,确定对应的第二卷积核的锚点下一个时刻在特征图中的位置的行索引;
针对每个偏移参数的值,根据偏移参数的值和第一卷积核的锚点当前时刻在特征图中的位置的列索引,确定对应的第二卷积核的锚点下一个时刻在特征图中的位置的列索引。
9.根据权利要求8所述的特征图处理方法,其中,根据第一卷积核的锚点当前时刻在特征图中的位置,确定偏移参数的一个或多个值,包括:
生成偏移参数的多个候选值,其中,多个候选值是等差数列;
针对每个候选值,判断候选值、填充参数和第一卷积核的锚点当前时刻在特征图中的位置的列索引,是否满足预设不等式;
根据满足预设不等式的候选值,确定偏移参数的一个或多个值。
10.根据权利要求9所述的特征图处理方法,其中,根据满足预设不等式的候选值,确定偏移参数的值,包括:
在当前时刻第一卷积核到达特征图在第一方向的边缘的情况下,根据满足预设不等式、且不为1的候选值,确定偏移参数的一个或多个值,其中,第一方向为第一卷积核的锚点沿行方向的移动方向。
11.根据权利要求8所述的特征图处理方法,其中,第二卷积核的锚点下一个时刻在特征图中的位置的列索引与卷积的填充参数成负相关。
12.根据权利要求8所述的特征图处理方法,其中,第二卷积核的锚点下一个时刻在特征图中的位置的行索引与偏移参数成正相关、且与第一卷积核的锚点当前时刻在特征图中的位置的行索引成正相关。
13.根据权利要求8所述的特征图处理方法,其中,第二卷积核的锚点下一个时刻在特征图中的位置的列索引与偏移参数成负相关、且与第一卷积核的锚点当前时刻在特征图中的位置的列索引成正相关。
14.根据权利要求6或7所述的特征图处理方法,其中,卷积的填充参数与第一卷积核的尺寸成正相关。
15.根据权利要求1所述的特征图处理方法,其中,在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积,包括:
根据第一卷积核的锚点下一个时刻在特征图中的位置,确定第一卷积核对应的特征图区域;
根据第二卷积核的锚点下一个时刻在特征图中的位置,确定第二卷积核对应的特征图区域。
16.根据权利要求1所述的特征图处理方法,其中,第一卷积核的锚点下一个时刻在特征图中的位置与第二卷积核的锚点下一个时刻在特征图中的位置不在同一行。
17.一种特征图处理装置,包括:
第一确定模块,被配置为根据第一卷积核的锚点当前时刻在特征图中的位置,确定第一卷积核的锚点下一个时刻在特征图中的位置;
第二确定模块,被配置为根据第一卷积核的锚点已经经过的位置,确定至少一个第二卷积核的锚点下一个时刻在特征图中的位置;
卷积模块,被配置为在下一个时刻,利用第一卷积核和第二卷积核,分别对相应的特征图区域同时进行卷积。
18.一种通信装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令,执行根据权利要求1至16任一项所述的特征图处理方法。
19.一种计算机可存储介质,其上存储有计算机程序指令,该指令被处理器执行时,实现根据权利要求1至16任一项所述的特征图处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211198854.6A CN117853740A (zh) | 2022-09-29 | 2022-09-29 | 特征图处理方法及装置、计算机可读存储介质 |
PCT/CN2023/114674 WO2024066829A1 (zh) | 2022-09-29 | 2023-08-24 | 特征图处理方法及装置、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211198854.6A CN117853740A (zh) | 2022-09-29 | 2022-09-29 | 特征图处理方法及装置、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117853740A true CN117853740A (zh) | 2024-04-09 |
Family
ID=90476039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211198854.6A Pending CN117853740A (zh) | 2022-09-29 | 2022-09-29 | 特征图处理方法及装置、计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117853740A (zh) |
WO (1) | WO2024066829A1 (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110473137B (zh) * | 2019-04-24 | 2021-09-14 | 华为技术有限公司 | 图像处理方法和装置 |
CN112150462B (zh) * | 2020-10-22 | 2023-12-22 | 北京百度网讯科技有限公司 | 确定目标锚点的方法、装置、设备以及存储介质 |
CN113378862B (zh) * | 2021-07-09 | 2023-12-19 | 上海商汤科技开发有限公司 | 一种图像处理方法及装置、电子设备和存储介质 |
-
2022
- 2022-09-29 CN CN202211198854.6A patent/CN117853740A/zh active Pending
-
2023
- 2023-08-24 WO PCT/CN2023/114674 patent/WO2024066829A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024066829A1 (zh) | 2024-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110738207B (zh) | 一种融合文字图像中文字区域边缘信息的文字检测方法 | |
CN110991560B (zh) | 一种结合上下文信息的目标检测方法及系统 | |
US10026148B2 (en) | Image recognition method, image recognition device and image recognition program | |
CN111783797B (zh) | 目标检测方法、装置及存储介质 | |
CN113743587B (zh) | 一种卷积神经网络池化计算方法、系统、及存储介质 | |
CN114742225A (zh) | 一种基于异构平台的神经网络推理加速方法 | |
CN110738317A (zh) | 基于fpga的可变形卷积网络运算方法、装置和系统 | |
CN114926722A (zh) | 基于YOLOv5的尺度自适应目标检测的方法及存储介质 | |
CN112633470A (zh) | 优化神经网络卷积残差结构的方法、系统、设备及介质 | |
JP2021532449A (ja) | 車線属性検出 | |
CN117217274B (zh) | 向量处理器、神经网络加速器、芯片及电子设备 | |
US11704546B2 (en) | Operation processing apparatus that calculates addresses of feature planes in layers of a neutral network and operation processing method | |
CN115619678B (zh) | 一种图像变形的矫正方法、装置、计算机设备及存储介质 | |
CN110826687B (zh) | 数据处理方法及其装置、介质和系统 | |
CN117853740A (zh) | 特征图处理方法及装置、计算机可读存储介质 | |
CN115565148A (zh) | 道路图像的检测方法、装置、存储介质和电子装置 | |
CN114882247A (zh) | 图像的处理方法、装置和电子设备 | |
CN115294361A (zh) | 一种特征提取的方法及装置 | |
US20240135677A1 (en) | Method, system and storage media for training a graphics processing neural network with a patch-based approach | |
CN113011415A (zh) | 基于Grid R-CNN模型改进的目标检测方法及系统 | |
Gopinathan et al. | Implementation of lane detection in autonomous vehicle using fpga | |
CN112149674A (zh) | 一种图像处理方法及装置 | |
CN112329544A (zh) | 基于深度信息的手势识别机器学习方法及系统 | |
CN116645524B (zh) | 边缘检测方法及图像分割方法 | |
CN117809025B (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 |