CN111932437B - 图像处理方法、装置、电子设备及计算机可读存储介质 - Google Patents
图像处理方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111932437B CN111932437B CN202011076833.8A CN202011076833A CN111932437B CN 111932437 B CN111932437 B CN 111932437B CN 202011076833 A CN202011076833 A CN 202011076833A CN 111932437 B CN111932437 B CN 111932437B
- Authority
- CN
- China
- Prior art keywords
- sub
- deconvolution
- kernel
- matrix
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000012545 processing Methods 0.000 title claims abstract description 20
- 239000011159 matrix material Substances 0.000 claims abstract description 188
- 238000004364 calculation method Methods 0.000 claims abstract description 48
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000004590 computer program Methods 0.000 claims description 20
- 230000015572 biosynthetic process Effects 0.000 claims description 5
- 238000003786 synthesis reaction Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 15
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000004044 response Effects 0.000 description 4
- 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
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 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
- 238000011176 pooling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- 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
-
- 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/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- 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/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- 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/50—Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
-
- 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/20021—Dividing image into blocks, subimages or windows
-
- 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/20024—Filtering details
-
- 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/20081—Training; Learning
-
- 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/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本申请适用于数据处理技术领域,提供了一种图像处理方法、装置、电子设备及计算机可读存储介质。在本申请提供的方法中,根据预设拆分方式对反卷积核进行拆分,得到子卷积核。然后,根据子卷积核的参数及图像特征矩阵,确定子卷积核对应的原始子矩阵,并用子卷积核对相应的原始子矩阵进行卷积计算,得到各个子卷积核对应的反卷积子矩阵。之后,根据各个子卷积核对应的反卷积子矩阵确定目标特征矩阵。通过上述方法进行反卷积计算时,图像特征矩阵无需进行井字填充,可以减少反卷积计算过程中占用的存储空间。并且,由于没有井字填充的0参与反卷积计算,可以极大地减少计算量,提高反卷积计算的运算效率。
Description
技术领域
本申请属于数据处理技术领域,尤其涉及一种图像处理方法、装置、电子设备及计算机可读存储介质。
背景技术
在图像处理领域中,通常使用神经网络对输入的图像进行卷积、反卷积、池化、激活等运算,然后得到输出的图像矩阵。其中,反卷积(de-convolution),也称为转置卷积(transpose convolution),可以将较小的特征矩阵转化为较大的特征矩阵。
在目前的反卷积计算方式中,通常会对输入的图像特征矩阵进行井字填充(padding),即在该特征矩阵中相邻两个矩阵参数之间填充一个或多个0,从而扩大图像尺寸信息。然后,再按照卷积(convolution)的计算方法,用反卷积核对填充后的矩阵进行卷积,得到较大的特征矩阵。
在这种反卷积计算方式中,需要填充大量的0,这些0会占用较大的存储空间,并且,这些0会参与卷积,增大了计算量,严重影响图像处理的运算效率。
发明内容
有鉴于此,本申请实施例提供了一种图像处理方法、装置、电子设备及计算机可读存储介质,以解决现有图像处理的反卷积计算方式会占用较大存储空间且运算效率低的问题。
本申请实施例的第一方面提供了一种图像处理方法,包括:
获取图像特征矩阵以及反卷积核;
根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核;
根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵;
使用所述子卷积核对相应的原始子矩阵进行卷积,得到所述子卷积核对应的反卷积子矩阵;
根据各个所述子卷积核对应的反卷积子矩阵确定目标特征矩阵。
本申请实施例的第二方面提供了一种图像处理装置,包括:
数据获取模块,用于获取图像特征矩阵以及反卷积核;
核拆分模块,用于根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核;
矩阵获取模块,用于根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵;
卷积计算模块,用于使用所述子卷积核对相应的原始子矩阵进行卷积,得到所述子卷积核对应的反卷积子矩阵;
矩阵合成模块,用于根据各个所述子卷积核对应的反卷积子矩阵确定目标特征矩阵。
本申请实施例的第三方面提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备实现如上述方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:
在本申请的图像处理方法中,电子设备根据预设拆分方式对反卷积核进行拆分,得到子卷积核。然后,电子设备根据子卷积核的参数以及图像特征矩阵确定各个子卷积核对应的原始子矩阵,并用子卷积核与相应的原始子矩阵进行卷积计算,得到各个子卷积核对应的反卷积子矩阵。之后,电子设备根据各个子卷积核对应的反卷积子矩阵确定目标特征矩阵。
在当前的反卷积计算方式中,需要对输入的图像特征矩阵进行井字填充,然后再用反卷积核对填充后的图像特征矩阵进行卷积运算。在每一次卷积运算的过程中,反卷积核中存在部分权重值与井字填充的0进行运算,这部分权重值是无效的。因此,本申请提供的图像处理方法中,电子设备对反卷积核进行拆分,得到子卷积核。子卷积核表示每一次卷积运算过程中有效的权重值。然后,子卷积核对相应的原始子矩阵进行卷积,表示只有有效的权重值参与卷积运算。此时,原始子矩阵不需要井字填充多余的0与无效的权重值进行运算,从而减少参与反卷积计算的数据量,减少反卷积计算过程中占用的存储空间。并且,由于没有井字填充的0参与反卷积计算,可以极大地减少计算量,提高反卷积计算的运算效率,从而提高了图像处理的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图像处理方法的流程示意图;
图2是本申请实施例提供的一种应用场景的示意图;
图3是本申请实施例提供的另一种应用场景的示意图;
图4是本申请实施例提供的另一种应用场景的示意图;
图5是本申请实施例提供的另一种应用场景的示意图;
图6是本申请实施例提供的另一种应用场景的示意图;
图7是本申请实施例提供的另一种应用场景的示意图;
图8是本申请实施例提供的另一种应用场景的示意图;
图9是本申请实施例提供的另一种应用场景的示意图;
图10是本申请实施例提供的另一种应用场景的示意图;
图11是本申请实施例提供的一种图像处理装置的结构示意图;
图12是本申请实施例提供的电子设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
具体实现中,本申请实施例中描述的电子设备包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,上述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例一:
下面对本申请实施例一提供的一种图像处理方法进行描述,请参阅附图1,本申请实施例一中的图像处理方法包括:
S101、获取图像特征矩阵以及反卷积核;
反卷积是一种较为常见的运算操作,广泛应用于神经网络中,可以将较小的特征矩阵转化为较大的特征矩阵。
在进行反卷积计算时,可以先获取图像特征矩阵和反卷积核。
图像特征矩阵为需要进行反卷积计算的数据矩阵。图像特征矩阵的类型可以根据实际情况进行确定。例如,当进行图像反卷积操作时,上述图像特征矩阵可以为图像的像素值的矩阵。或者,图像特征矩阵也可以为图像的灰度值的矩阵。或者,图像特征矩阵也可以是图像的特征值的矩阵。或者,在其他应用场景中,上述图像特征矩阵也可以是其他类型的矩阵。
反卷积核为预先设置的权重值的矩阵。在进行反卷积操作时,电子设备使用反卷积核中的权重值对图像特征矩阵进行反卷积操作,从而得到目标特征矩阵。
S102、根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核;
电子设备在进行反卷积操作时,可以根据预设拆分方式,对反卷积核进行拆分,得到多个子卷积核。
预设拆分方式可以根据实际情况进行确定。在一些实施例中,电子设备可以获取反卷积核的横向滑动步长sw和纵向滑动步长sh,并根据所述横向滑动步长和所述纵向滑动步长对所述反卷积核进行拆分,得到(sw*sh)个子卷积核。
例如,假设反卷积核的横向滑动步长为2,纵向滑动步长为2,则电子设备可以将反卷积核拆分为(2*2)=4个子卷积核。
反卷积核的横向滑动步长sw和纵向滑动步长sh为电子设备中预先设置的参数。
具体地,电子设备可以获取子卷积核的行序号Q和列序号P,其中,Q为小于sh的自然数,P为小于sw的自然数;
然后,电子设备将所述反卷积核中第(Q+K1*sh-PT1+1)行第(P+K2*sw-PL1+1)列的权重值确定为所述子卷积核的权重值,得到(sw*sh)个子卷积核;其中,K1和K2为自然数,PL1为左侧反向填充层数,PT1为顶部反向填充层数,(Q+K1*sh-PT1+1)小于或等于所述反卷积核的纵向尺寸kh,(P+K2*sw-PL1+1)小于或等于所述反卷积核的横向尺寸kw。反卷积核的横向尺寸kw和纵向尺寸kh为电子设备中预先设置的参数。
上述子卷积核的拆分方式的推导过程如下:
请参阅图2,假设图像特征矩阵为5*5的矩阵,图像特征矩阵中的原始数据为D00至D44。反卷积核为3*3的矩阵,反卷积核中的权重值为K00至K22。反卷积核的横向滑动步长sw为2,纵向滑动步长sh为2。
在当前的反卷积方式,电子设备需要对图像特征矩阵进行井字填充,即横向相邻的两个原始数据中插入(sw-1)个0,纵向相邻的两个原始数据中插入(sh-1)个0,得到如图3所示的计算矩阵。
然后,电子设备再用反卷积核对上述计算矩阵进行滑动卷积,得到目标特征矩阵。反卷积核滑动卷积的过程可参阅图4至图8。
在图4至图8中,加粗的框表示反卷积核的滑动窗口当前所在的位置。如图4所示,反卷积核在进行卷积计算时,窗口内的原始数据只有D00、D01、D10、D11,其他位置为0。也即是说,当反卷积核与滑动窗口内的原始数据进行计算时,只有K00、K02、K20、K22是有效的,其他位置的权重值与0相乘得到0,是无效的。
如图5所示,当滑动窗口滑动到下一个位置时,有效的权重值为K01和K21。如图6所示,当滑动窗口继续滑动到下一个位置时,有效的权重值又变成了K00、K02、K20、K22。
如图7所示,当滑动窗口从图4所示位置向下滑动一次时,有效的权重值为K10和K12。当滑动窗口继续向下滑动时,有效的权重值又变成了K00、K02、K20、K22。
如图8所示,当滑动窗口从图7所示位置向右滑动一次时,有效的权重值为K11。当滑动窗口继续向右滑动时,有效的权重值又变成了K10和K12。
也即是说,当反卷积核在计算矩阵上滑动卷积时,每一次的卷积计算的过程中,只有部分权重值是有效的,其余部分的权重值与0相乘,是无效的。
因此,在本申请的方法中,可以将每一次卷积计算中有效的权重值划分为一个子卷积核,用子卷积核与相应的原始数据进行卷积,从而减少无效的权重值与0相乘的计算,减少计算量和存储空间。
子卷积核由每一次卷积计算中有效的权重值确定。有效的权重值呈规律性变化,其变化规律与井字填充的0的数量有关,即横向每隔sw次滑动循环一次,纵向每隔sh次循环重复一次。
也即是说,横向上反卷积核的有效部分有sw种变化,纵向上反卷积核的有效部分有sh中变化。
综合横向和纵向的变化可知,反卷积核的有效部分可以划分为(sw*sh)种情况。因此,电子设备可以将反卷积核划分为(sw*sh)个子卷积核。
之后,电子设备可以为每一个子卷积核赋予行序号Q和列序号P。Q为小于sh的自然数,P为小于sw的自然数,用Q和P区分(sw*sh)个子卷积核。
如图4至图8所示,在每次卷积的过程中,有效的权重值的分布规律与井字填充的规律一致。因此,子卷积核中,横向相邻的两个权重值的列号相差sw列,纵向相邻的两个权重值的行号相差sh行。
假设将行序号为0,列序号为0的子卷积核的第一个权重值设置为反卷积核中第1行第1列的权重值,则可以按照上述规律,从反卷积核中第1行第1列的权重值开始,每隔sw列选取一个权重值,每隔sh行选取一个权重值,遍历反卷积核,得到行序号为0,列序号为0的子卷积核。
也即是说,对于行序号为0,列序号为0的子卷积核,电子设备可以将反卷积核中第(K1*sh+1)行第(K2*sw+1)列的权重值确定为所述子卷积核的权重值,即K00、K02、K20、K22。
同理,对于行序号为Q,列序号为P的子卷积核,电子设备可以将反卷积核中第(Q+K1*sh+1)行第(P+K2*sw+1)列的权重值确定为该子卷积核的权重值。
此外,在一些情况下,电子设备在进行反卷积时,需要进行边缘填充。边缘填充是指在图像特征矩阵的边缘填充一层或多层0。
此时,电子设备可以根据左侧反向填充层数和顶部反向填充层数对应调整各个子卷积核对应的权重值。
以图9所示场景为例,假设左侧反向填充层数PL1和顶部反向填充层数PT1均为1,则表示图像特征矩阵的左侧需要填充1列0,以及图像特征矩阵的顶部需要填充1列0,得到如图9所示的计算矩阵。
此时,电子设备可以根据左侧反向填充层数PL1和顶部反向填充层数PT1对应调整各个子卷积核对应的权重值。
对于行为0,列为0的子卷积核而言,电子设备可以将反卷积核中第(K1*sh-PT1+1)行第(K2*sw-PL1+1)列的权重值确定为该子卷积核的权重值,即K11。
对于行序号为Q,列序号为P的子卷积核而言,电子设备可以将反卷积核中第(Q+K1*sh-PT1+1)行第(P+K2*sw-PL1+1)列的权重值确定为该子卷积核的权重值。
S103、根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵;
如图4至图8所示案例可知,子卷积核的卷积对象不一定是图像特征矩阵内的所有原始数据。
以图8所示的场景为例。假设Q为1,P为1的子卷积核的权重值只包括K11,该子卷积核的尺寸为1*1。如图8所示,该子卷积核的第一次卷积的卷积对象为D11,最后一次卷积的卷积对象为D33。也即是说,该子卷积核对应的原始子矩阵应当如图10所示,为图像特征矩阵中间的9个原始数据D11、D12、D13、D21、D22、D23、D31、D32、D33。
因此,在确定了子卷积核之后,电子设备可以根据各个子卷积核的参数以及上述图像特征矩阵,确定各个子卷积核对应的原始子矩阵。
在确定原始子矩阵时,电子设备可以获取左侧反向填充层数PL1以及子卷积核的列序号P。然后,电子设备根据左侧反向填充层数PL1以及子卷积核的列序号P计算左侧目标填充层数PL2,用PL1减去P,得到PL2:
P
L2
=P
L1
-P
左侧目标填充层数PL2表示图像特征矩阵左侧实际需要填充的列数量。当PL2大于0时,表示图像特征矩阵左侧需要填充PL2列0;当PL2等于0时,表示图像特征矩阵左侧不需要填充0;当PL2小于0时,表示图像特征矩阵左侧需要减少|PL2|列原始数据,即从第|PL2|+1列开始,|PL2|为PL2的绝对值。
同理,电子设备可以获取顶部反向填充层数PT1以及子卷积核的行序号Q。然后,电子设备根据顶部反向填充层数PT1以及子卷积核的列序号Q计算左侧目标填充层数PT2,用PT1减去Q,得到PT2:
P
T2
=P
T1
-Q
顶部目标填充层数PT2表示图像特征矩阵顶部实际需要填充的行数量。当PT2大于0时,表示图像特征矩阵顶部需要填充PT2行0;当PT2等于0时,表示图像特征矩阵顶部不需要填充0;当PT2小于0时,表示图像特征矩阵顶部需要减少|PT2|行原始数据,即从第|PT2|+1行开始,|PT2|为PT2的绝对值。
之后,电子设备可以获取目标特征矩阵的横向尺寸cow、目标特征矩阵的纵向尺寸coh。然后,电子设备可以根据cow、sw和P计算反卷积子矩阵的横向尺寸zow。电子设备计算cow和sw的商d1和余数r1。
通过上述案例可知,商d1表示滑动窗口在横向经历了d1个完整的循环。余数r1表示在第d1+1个循环时,只有前r1个子卷积核参与了运算。
因此,电子设备可以获取子卷积核的列序号P。如果子卷积核的列序号P小于r1,则将(d1+1)确定为该子卷积核对应的反卷积子矩阵的横向尺寸zow。如果子卷积核的列序号P大于或等于r1,则将d1确定为该子卷积核对应的反卷积子矩阵的横向尺寸zow。
同理,电子设备可以根据coh、sh和Q计算反卷积子矩阵的纵向尺寸zoh。电子设备计算coh和sh的商d2和余数r2。
通过上述案例可知,商d2表示滑动窗口在纵向经历了d2个完整的循环。余数r2表示在第d2+1个循环时,只有前r2个子卷积核参与了运算。
因此,电子设备可以获取子卷积核的行序号Q。如果子卷积核的行序号Q小于r2,则将(d2+1)确定为该子卷积核对应的反卷积子矩阵的纵向尺寸zoh。如果子卷积核的行序号Q大于或等于r2,则将d2确定为该子卷积核对应的反卷积子矩阵的纵向尺寸zoh。
在获取到zow和zoh之后,电子设备可以根据图像特征矩阵的横向尺寸ciw、反卷积子矩阵的横向尺寸zow、子卷积核的横向尺寸zkw以及左侧目标填充层数PL2确定右侧目标填充层数PR2,即:
P R2 =zow-P L2 -ciw+zkw-1
右侧目标填充层数PR2表示图像特征矩阵右侧实际需要填充的列数量。当PR2大于0时,表示图像特征矩阵右侧需要填充PR2列0;当PR2等于0时,表示图像特征矩阵右侧不需要填充0;当PR2小于0时,表示图像特征矩阵右侧需要减少|PR2|列原始数据,|PR2|为PR2的绝对值。
同理,电子设备可以根据图像特征矩阵的纵向尺寸cih、反卷积子矩阵的纵向尺寸zoh、子卷积核的纵向尺寸zkh以及顶部目标填充层数PT2确定底部目标填充层数PG2,即:
P G2 =zoh-P T2 -cih+zkh-1
底部目标填充层数PG2表示图像特征矩阵底部实际需要填充的行数量。当PG2大于0时,表示图像特征矩阵底部需要填充PG2行0;当PG2等于0时,表示图像特征矩阵底部不需要填充0;当PG2小于0时,表示图像特征矩阵底部需要减少|PG2|行原始数据,|PG2|为PG2的绝对值。
在确定了左侧目标填充层数PL2、顶部目标填充层数PT2、右侧目标填充层数PR2、底部目标填充层数PG2之后,电子设备可以根据这些填充层数对图像特征矩阵的边缘进行处理,填充0或删减相应的原始数据,得到子卷积核对应的原始子矩阵。
上述左侧反向填充层数PL1、顶部反向填充层数PT1、目标特征矩阵的横向尺寸cow、目标特征矩阵的纵向尺寸coh均为电子设备中预设的参数。图像特征矩阵的横向尺寸ciw和图像特征矩阵的纵向尺寸cih可以通过图像特征矩阵得到。子卷积核的横向尺寸zkw和子卷积核的纵向尺寸zkh可以在确定子卷积核之后得到。
通过上述方法,电子设备可以根据各个子卷积核的参数,计算各个子卷积核对应的原始子矩阵。
以图2、图8和图10所示场景为例,假设某个子卷积核的行序号为1,列序号为1。子卷积核的横向尺寸zkw为1,子卷积核的纵向尺寸zkh为1。图像特征矩阵的横向尺寸ciw为5,图像特征矩阵的纵向尺寸cih为5。左侧反向填充层数PL1为0,顶部反向填充层数PT1为0。目标特征矩阵的横向尺寸cow为7,目标特征矩阵的纵向尺寸coh为7。
根据该子卷积核的行序号、列序号、左侧反向填充层数PL1、顶部反向填充层数PT1进行计算,可得该子卷积核对应的左侧目标填充层数PL2为-1,顶部目标填充层数PT2为-1。
计算cow和sw的商和余数,得到d1为3,r1为1。计算coh和sh的商和余数,得到d2为3,r2为1。
由于P等于r1,所以zow为3。由于Q等于r2,所以zoh为3。则:
P R2 =3-(-1)-5+1-1=-1
P G2 =3-(-1)-5+1-1=-1
所以,左侧目标填充层数PL2、顶部目标填充层数PT2、右侧目标填充层数PR2、底部目标填充层数PG2均为-1,表示图像特征矩阵的左侧、右侧、顶部和底部均需要删减1行/列原始数据,从而得到如图10所示的原始子矩阵。
S104、使用所述子卷积核对相应的原始子矩阵进行卷积,得到所述子卷积核对应的反卷积子矩阵;
电子设备在获取到各个子卷积核对应的原始子矩阵之后,可以用子卷积核对相应的原始子矩阵进行卷积,得到各个子卷积核对应的反卷积子矩阵。
S105、根据各个所述子卷积核对应的反卷积子矩阵确定目标特征矩阵。
由于子卷积核中权重值与原始子矩阵的卷积过程和反卷积核与计算矩阵的卷积过程是等价的,因此,在得到反卷积子矩阵之后,可以根据子卷积核与反卷积核的对应关系,对各个反卷积子矩阵进行重组合并,得到目标特征矩阵。
具体地,电子设备可以将行序号为Q,列序号为P的子卷积核对应的反卷积子矩阵的第i行第j列的数据确定为目标特征矩阵中第(i*sh-sh+Q+1)行第(j*sw-sw+P+1)列的数据,从而得到目标特征矩阵。
本实施例一提供的图像处理方法中,电子设备根据预设拆分方式对反卷积核进行拆分,得到子卷积核。然后,电子设备根据子卷积核的参数以及图像特征矩阵确定各个子卷积核对应的原始子矩阵,并用子卷积核与相应的原始子矩阵进行卷积计算,得到各个子卷积核对应的反卷积子矩阵。之后,电子设备根据各个子卷积核对应的反卷积子矩阵确定目标特征矩阵。
电子设备通过上述方法进行反卷积计算时,图像特征矩阵无需进行井字填充,可以减少参与反卷积计算的数据量,减少反卷积计算过程中占用的存储空间。并且,由于没有井字填充的0参与反卷积计算,可以极大地减少计算量,提高反卷积计算的运算效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
实施例二:
本申请实施例二提供了一种图像处理装置,为便于说明,仅示出与本申请相关的部分,如图11所示,图像处理装置包括:
数据获取模块1101,用于获取图像特征矩阵以及反卷积核;
核拆分模块1102,用于根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核;
矩阵获取模块1103,用于根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵;
卷积计算模块1104,用于使用所述子卷积核对相应的原始子矩阵进行卷积,得到所述子卷积核对应的反卷积子矩阵;
矩阵合成模块1105,用于根据各个所述子卷积核对应的反卷积子矩阵确定目标特征矩阵。
可选地,所述核拆分模块1102,包括:
滑动步长子模块,用于获取所述反卷积核的横向滑动步长sw和纵向滑动步长sh;
步长拆分子模块,用于根据所述横向滑动步长和所述纵向滑动步长对所述反卷积核进行拆分,得到(sw*sh)个子卷积核。
可选地,所述步长拆分子模块,包括:
序号获取子模块,用于获取子卷积核的行序号Q和列序号P,其中,Q为小于sh的自然数,P为小于sw的自然数;
权重划分子模块,用于将所述反卷积核中第(Q+K1*sh-PT1+1)行第(P+K2*sw-PL1+1)列的权重值确定为所述子卷积核的权重值,得到(sw*sh)个子卷积核;
其中,K1和K2为自然数,PL1为左侧反向填充层数,PT1为顶部反向填充层数,(Q+K1*sh-PT1+1)小于或等于所述反卷积核的纵向尺寸kh,(P+K2*sw-PL1+1)小于或等于所述反卷积核的横向尺寸kw。
可选地,所述矩阵获取模块1103,包括:
第一填充子模块,用于根据左侧反向填充层数和所述子卷积核的列序号计算左侧目标填充层数,以及,根据顶部反向填充层数和所述子卷积核的行序号计算顶部目标填充层数;
矩阵尺寸子模块,用于根据所述目标特征矩阵的横向尺寸、所述横向滑动步长、所述子卷积核的列序号计算所述反卷积子矩阵的横向尺寸,以及,根据所述目标特征矩阵的纵向尺寸、所述纵向滑动步长、所述子卷积核的行序号计算所述反卷积子矩阵的纵向尺寸;
右侧填充子模块,用于根据所述图像特征矩阵的横向尺寸、所述反卷积子矩阵的横向尺寸、所述子卷积核的横向尺寸以及所述左侧目标填充层数确定右侧目标填充层数;
底部填充子模块,用于根据所述图像特征矩阵的纵向尺寸、所述反卷积子矩阵的纵向尺寸、所述子卷积核的纵向尺寸以及所述顶部目标填充层数确定底部目标填充层数;
矩阵确定子模块,用于根据所述目标特征矩阵、所述左侧目标填充层数、所述右侧目标填充层数、所述顶部目标填充层数以及所述底部目标填充层数确定所述子卷积核对应的原始子矩阵。
可选地,所述第一填充子模块,包括:
左侧填充子模块,用于用左侧反向填充层数减去所述子卷积核的列序号,得到左侧目标填充层数。
可选地,所述第一填充子模块,包括:
顶部填充子模块,用于用顶部反向填充层数减去所述子卷积核的行序号,得到顶部目标填充行数。
可选地,所述矩阵尺寸子模块,包括:
第一计算子模块,用于计算所述目标特征矩阵的横向尺寸与所述横向滑动步长的商d1和余数r1;
第一横向子模块,用于若所述子卷积核的列序号小于所述r1,则将(d1+1)确定为所述反卷积子矩阵的横向尺寸;
第二横向子模块,用于若所述子卷积核的列序号大于或等于所述r1,则将所述d1确定为所述反卷积子矩阵的横向尺寸。
可选地,所述矩阵尺寸子模块,包括:
第二计算子模块,用于计算所述目标特征矩阵的纵向尺寸与所述纵向滑动步长的商d2和余数r2;
第一纵向子模块,用于若所述子卷积核的行序号小于所述r2,则将(d2+1)确定为所述反卷积子矩阵的纵向尺寸;
第二纵向子模块,用于若所述子卷积核的行序号大于或等于所述r2,则将所述d2确定为所述反卷积子矩阵的纵向尺寸。
可选地,所述右侧填充子模块,具体用于用所述反卷积子矩阵的横向尺寸与所述子卷积核的横向尺寸的和,减去所述图像特征矩阵的横向尺寸、所述左侧目标填充层数以及1,得到右侧目标填充层数。
可选地,所述底部填充子模块,具体用于用所述反卷积子矩阵的纵向尺寸与所述子卷积核的纵向尺寸的和,减去所述图像特征矩阵的横向尺寸、所述顶部目标填充层数以及1,得到底部目标填充层数。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
实施例三:
图12是本申请实施例三提供的电子设备的示意图。如图12所示,该实施例的电子设备12包括:处理器120、存储器121以及存储在所述存储器121中并可在所述处理器120上运行的计算机程序122。所述处理器120执行所述计算机程序122时实现上述图像处理方法实施例中的步骤,例如图1所示的步骤S101至S105。或者,所述处理器120执行所述计算机程序122时实现上述各装置实施例中各模块/单元的功能,例如图11所示模块1101至1105的功能。
示例性的,所述计算机程序122可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器121中,并由所述处理器120执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序122在所述电子设备12中的执行过程。例如,所述计算机程序122可以被分割成数据获取模块、核拆分模块、矩阵获取模块、卷积计算模块以及矩阵合成模块,各模块具体功能如下:
数据获取模块,用于获取图像特征矩阵以及反卷积核;
核拆分模块,用于根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核;
矩阵获取模块,用于根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵;
卷积计算模块,用于使用所述子卷积核对相应的原始子矩阵进行卷积,得到所述子卷积核对应的反卷积子矩阵;
矩阵合成模块,用于根据各个所述子卷积核对应的反卷积子矩阵确定目标特征矩阵。
所述电子设备12可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述电子设备可包括,但不仅限于,处理器120、存储器121。本领域技术人员可以理解,图12仅仅是电子设备12的示例,并不构成对电子设备12的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器120可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器121可以是所述电子设备12的内部存储单元,例如电子设备12的硬盘或内存。所述存储器121也可以是所述电子设备12的外部存储设备,例如所述电子设备12上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器121还可以既包括所述电子设备12的内部存储单元也包括外部存储设备。所述存储器121用于存储所述计算机程序以及所述电子设备所需的其他程序和数据。所述存储器121还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (14)
1.一种图像处理方法,其特征在于,包括:
获取图像特征矩阵以及反卷积核;
根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核;
根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵;
使用所述子卷积核对相应的原始子矩阵进行卷积,得到所述子卷积核对应的反卷积子矩阵;
根据各个所述子卷积核对应的反卷积子矩阵确定目标特征矩阵;
所述根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵,包括:
根据左侧反向填充层数和所述子卷积核的列序号计算左侧目标填充层数,以及,根据顶部反向填充层数和所述子卷积核的行序号计算顶部目标填充层数;
根据所述目标特征矩阵的横向尺寸、所述反卷积核的横向滑动步长、所述子卷积核的列序号计算所述反卷积子矩阵的横向尺寸,以及,根据所述目标特征矩阵的纵向尺寸、所述反卷积核的纵向滑动步长、所述子卷积核的行序号计算所述反卷积子矩阵的纵向尺寸;
根据所述图像特征矩阵的横向尺寸、所述反卷积子矩阵的横向尺寸、所述子卷积核的横向尺寸以及所述左侧目标填充层数确定右侧目标填充层数;
根据所述图像特征矩阵的纵向尺寸、所述反卷积子矩阵的纵向尺寸、所述子卷积核的纵向尺寸以及所述顶部目标填充层数确定底部目标填充层数;
根据所述目标特征矩阵、所述左侧目标填充层数、所述右侧目标填充层数、所述顶部目标填充层数以及所述底部目标填充层数确定所述子卷积核对应的原始子矩阵。
2.如权利要求1所述的图像处理方法,其特征在于,所述根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核,包括:
获取所述反卷积核的横向滑动步长sw和所述反卷积核的纵向滑动步长sh;
根据所述横向滑动步长和所述纵向滑动步长对所述反卷积核进行拆分,得到(sw*sh)个子卷积核。
3.如权利要求2所述的图像处理方法,其特征在于,所述根据所述横向滑动步长和所述纵向滑动步长对所述反卷积核进行拆分,得到(sw*sh)个子卷积核,包括:
获取子卷积核的行序号Q和列序号P,其中,Q为小于sh的自然数,P为小于sw的自然数;
将所述反卷积核中第(Q+K1*sh-PT1+1)行第(P+K2*sw-PL1+1)列的权重值确定为所述子卷积核的权重值,得到(sw*sh)个子卷积核;
其中,K1和K2为自然数,PL1为左侧反向填充层数,PT1为顶部反向填充层数,(Q+K1*sh-PT1+1)小于或等于所述反卷积核的纵向尺寸kh,(P+K2*sw-PL1+1)小于或等于所述反卷积核的横向尺寸kw。
4.如权利要求2所述的图像处理方法,其特征在于,所述根据左侧反向填充层数和所述子卷积核的列序号计算左侧目标填充层数,包括:
用左侧反向填充层数减去所述子卷积核的列序号,得到左侧目标填充层数。
5.如权利要求2所述的图像处理方法,其特征在于,所述根据顶部反向填充层数和所述子卷积核的行序号计算顶部目标填充层数,包括:
用顶部反向填充层数减去所述子卷积核的行序号,得到顶部目标填充行数。
6.如权利要求2所述的图像处理方法,其特征在于,所述根据所述目标特征矩阵的横向尺寸、所述反卷积核的横向滑动步长、所述子卷积核的列序号计算所述反卷积子矩阵的横向尺寸,包括:
计算所述目标特征矩阵的横向尺寸与所述反卷积核的横向滑动步长的商d1和余数r1;
若所述子卷积核的列序号小于所述r1,则将(d1+1)确定为所述反卷积子矩阵的横向尺寸;
若所述子卷积核的列序号大于或等于所述r1,则将所述d1确定为所述反卷积子矩阵的横向尺寸。
7.如权利要求2所述的图像处理方法,其特征在于,所述根据所述目标特征矩阵的纵向尺寸、所述反卷积核的纵向滑动步长、所述子卷积核的行序号计算所述反卷积子矩阵的纵向尺寸,包括:
计算所述目标特征矩阵的纵向尺寸与所述反卷积核的纵向滑动步长的商d2和余数r2;
若所述子卷积核的行序号小于所述r2,则将(d2+1)确定为所述反卷积子矩阵的纵向尺寸;
若所述子卷积核的行序号大于或等于所述r2,则将所述d2确定为所述反卷积子矩阵的纵向尺寸。
8.如权利要求2所述的图像处理方法,其特征在于,所述根据所述图像特征矩阵的横向尺寸、所述反卷积子矩阵的横向尺寸、所述子卷积核的横向尺寸以及所述左侧目标填充层数确定右侧目标填充层数,包括:
用所述反卷积子矩阵的横向尺寸与所述子卷积核的横向尺寸的和,减去所述图像特征矩阵的横向尺寸、所述左侧目标填充层数以及1,得到右侧目标填充层数。
9.如权利要求2所述的图像处理方法,其特征在于,所述根据所述图像特征矩阵的纵向尺寸、所述反卷积子矩阵的纵向尺寸、所述子卷积核的纵向尺寸以及所述顶部目标填充层数确定底部目标填充层数,包括:
用所述反卷积子矩阵的纵向尺寸与所述子卷积核的纵向尺寸的和,减去所述图像特征矩阵的横向尺寸、所述顶部目标填充层数以及1,得到底部目标填充层数。
10.一种图像处理装置,其特征在于,包括:
数据获取模块,用于获取图像特征矩阵以及反卷积核;
核拆分模块,用于根据预设拆分方式,对所述反卷积核进行拆分,得到子卷积核;
矩阵获取模块,用于根据所述子卷积核的参数以及所述图像特征矩阵,确定所述子卷积核对应的原始子矩阵;
卷积计算模块,用于使用所述子卷积核对相应的原始子矩阵进行卷积,得到所述子卷积核对应的反卷积子矩阵;
矩阵合成模块,用于根据各个所述子卷积核对应的反卷积子矩阵确定目标特征矩阵;
所述矩阵获取模块,包括:
第一填充子模块,用于根据左侧反向填充层数和所述子卷积核的列序号计算左侧目标填充层数,以及,根据顶部反向填充层数和所述子卷积核的行序号计算顶部目标填充层数;
矩阵尺寸子模块,用于根据所述目标特征矩阵的横向尺寸、所述反卷积核的横向滑动步长、所述子卷积核的列序号计算所述反卷积子矩阵的横向尺寸,以及,根据所述目标特征矩阵的纵向尺寸、所述反卷积核的纵向滑动步长、所述子卷积核的行序号计算所述反卷积子矩阵的纵向尺寸;
右侧填充子模块,用于根据所述图像特征矩阵的横向尺寸、所述反卷积子矩阵的横向尺寸、所述子卷积核的横向尺寸以及所述左侧目标填充层数确定右侧目标填充层数;
底部填充子模块,用于根据所述图像特征矩阵的纵向尺寸、所述反卷积子矩阵的纵向尺寸、所述子卷积核的纵向尺寸以及所述顶部目标填充层数确定底部目标填充层数;
矩阵确定子模块,用于根据所述目标特征矩阵、所述左侧目标填充层数、所述右侧目标填充层数、所述顶部目标填充层数以及所述底部目标填充层数确定所述子卷积核对应的原始子矩阵。
11.如权利要求10所述的图像处理装置,其特征在于,所述核拆分模块,包括:
滑动步长子模块,用于获取所述反卷积核的横向滑动步长sw和所述反卷积核的纵向滑动步长sh;
步长拆分子模块,用于根据所述横向滑动步长和所述纵向滑动步长对所述反卷积核进行拆分,得到(sw*sh)个子卷积核。
12.如权利要求11所述的图像处理装置,其特征在于,所述步长拆分子模块,包括:
序号获取子模块,用于获取子卷积核的行序号Q和列序号P,其中,Q为小于sh的自然数,P为小于sw的自然数;
权重划分子模块,用于将所述反卷积核中第(Q+K1*sh-PT1+1)行第(P+K2*sw-PL1+1)列的权重值确定为所述子卷积核的权重值,得到(sw*sh)个子卷积核;
其中,K1和K2为自然数,PL1为左侧反向填充层数,PT1为顶部反向填充层数,(Q+K1*sh-PT1+1)小于或等于所述反卷积核的纵向尺寸kh,(P+K2*sw-PL1+1)小于或等于所述反卷积核的横向尺寸kw。
13.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至9任一项所述方法的步骤。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011076833.8A CN111932437B (zh) | 2020-10-10 | 2020-10-10 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
US17/471,187 US11328395B2 (en) | 2020-10-10 | 2021-09-10 | Image processing method, image processing device, electronic equipment and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011076833.8A CN111932437B (zh) | 2020-10-10 | 2020-10-10 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111932437A CN111932437A (zh) | 2020-11-13 |
CN111932437B true CN111932437B (zh) | 2021-03-05 |
Family
ID=73334945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011076833.8A Active CN111932437B (zh) | 2020-10-10 | 2020-10-10 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11328395B2 (zh) |
CN (1) | CN111932437B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112596965B (zh) * | 2020-12-14 | 2024-04-09 | 上海集成电路研发中心有限公司 | 一种数字图像坏簇统计方法及集成电路自动测试机 |
CN112686377B (zh) * | 2021-03-18 | 2021-07-02 | 北京地平线机器人技术研发有限公司 | 利用卷积硬件对特征数据进行反卷积处理的方法和装置 |
CN113378858A (zh) * | 2021-06-28 | 2021-09-10 | 北京百度网讯科技有限公司 | 图像检测方法、装置、设备、车辆和介质 |
CN114283314A (zh) * | 2021-12-06 | 2022-04-05 | 广州小鹏自动驾驶科技有限公司 | 图像数据处理方法及装置 |
CN115758054B (zh) * | 2023-02-10 | 2023-04-14 | 上海登临科技有限公司 | 一种卷积计算方法、数据处理方法、芯片及电子设备 |
CN115937050B (zh) * | 2023-03-02 | 2023-10-13 | 图兮数字科技(北京)有限公司 | 图像处理方法、装置、电子设备和存储介质 |
CN116843555B (zh) * | 2023-09-04 | 2023-12-19 | 镕铭微电子(济南)有限公司 | 图像插值方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106022307A (zh) * | 2016-06-08 | 2016-10-12 | 中国科学院自动化研究所 | 基于船只旋转矩形空间的遥感图像船只检测方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10832136B2 (en) * | 2016-05-18 | 2020-11-10 | Nec Corporation | Passive pruning of filters in a convolutional neural network |
CN107018400B (zh) * | 2017-04-07 | 2018-06-19 | 华中科技大学 | 一种将2d视频转换成3d视频的方法 |
CN109493347B (zh) * | 2017-09-12 | 2021-03-23 | 深圳科亚医疗科技有限公司 | 在图像中对稀疏分布的对象进行分割的方法和系统 |
US10678508B2 (en) * | 2018-03-23 | 2020-06-09 | Amazon Technologies, Inc. | Accelerated quantized multiply-and-add operations |
CN110647974A (zh) * | 2018-06-27 | 2020-01-03 | 杭州海康威视数字技术股份有限公司 | 深度神经网络中的网络层运算方法及装置 |
KR102562320B1 (ko) * | 2018-12-24 | 2023-08-01 | 삼성전자주식회사 | 비트 연산 기반의 뉴럴 네트워크 처리 방법 및 장치 |
US11669585B2 (en) * | 2019-06-25 | 2023-06-06 | Apple Inc. | Optimizing binary convolutional neural networks |
CN110322529B (zh) * | 2019-07-12 | 2023-04-18 | 电子科技大学 | 一种基于深度学习辅助艺术绘画的方法 |
CN110647978B (zh) * | 2019-09-05 | 2020-11-03 | 北京三快在线科技有限公司 | 在卷积神经网络中提取卷积窗的系统和方法 |
CN111179177B (zh) * | 2019-12-31 | 2024-03-26 | 深圳市联合视觉创新科技有限公司 | 图像重建模型训练方法、图像重建方法、设备及介质 |
CN111199273B (zh) * | 2019-12-31 | 2024-03-26 | 深圳云天励飞技术有限公司 | 卷积计算方法、装置、设备及存储介质 |
CN111428189B (zh) * | 2020-04-01 | 2023-09-22 | 南京大学 | 一种用于反卷积运算的数据预处理方法及装置 |
-
2020
- 2020-10-10 CN CN202011076833.8A patent/CN111932437B/zh active Active
-
2021
- 2021-09-10 US US17/471,187 patent/US11328395B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106022307A (zh) * | 2016-06-08 | 2016-10-12 | 中国科学院自动化研究所 | 基于船只旋转矩形空间的遥感图像船只检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111932437A (zh) | 2020-11-13 |
US11328395B2 (en) | 2022-05-10 |
US20220114708A1 (en) | 2022-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111932437B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
KR102315346B1 (ko) | 하드웨어에서의 평균 풀링의 수행 | |
EP3373210B1 (en) | Transposing neural network matrices in hardware | |
US10353705B2 (en) | Arithmetic processing device for deep learning and control method of the arithmetic processing device for deep learning | |
US10642622B2 (en) | Arithmetic processing device and control method of the arithmetic processing device | |
EP3093757B1 (en) | Multi-dimensional sliding window operation for a vector processor | |
CN111476718B (zh) | 一种图像放大方法、装置、存储介质及终端设备 | |
CN111210004B (zh) | 卷积计算方法、卷积计算装置及终端设备 | |
CN113032007A (zh) | 一种数据处理方法及装置 | |
CN116188942A (zh) | 一种图像卷积方法、装置、设备及存储介质 | |
CN115619678B (zh) | 一种图像变形的矫正方法、装置、计算机设备及存储介质 | |
CN111382831B (zh) | 加速卷积神经网络模型前向推理的方法及装置 | |
US7895420B2 (en) | System and method for eliminating common subexpressions in a linear system | |
CN107977923B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN111626938B (zh) | 图像插值方法、图像插值装置、终端设备及存储介质 | |
KR101688435B1 (ko) | 블록 구조를 이용한 적분 영상 생성 장치 및 그 방법 | |
CN112712461B (zh) | 一种图像反卷积处理方法、装置及终端设备 | |
CN111931937A (zh) | 图像处理模型的梯度更新方法、装置及系统 | |
CN114065119A (zh) | 数据处理方法及相关产品 | |
CN109993694B (zh) | 一种生成超分辨率图像的方法及装置 | |
KR20210001305A (ko) | 위노그라드 알고리즘에 기반한 행렬 곱셈 방법 및 장치 | |
CN110610451B (zh) | 图像梯度计算装置 | |
CN115456892B (zh) | 2.5维视景图像自动几何校正方法、装置、设备及介质 | |
CN117456562B (zh) | 姿态估计方法及装置 | |
Chang | Matrix inverse as by-product of determinant |
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 |