卷积神经网络的图像运算方法、装置和电子设备制造方法及图纸

技术编号:24998341 阅读:45 留言:0更新日期:2020-07-24 18:00
本发明专利技术提供了一种卷积神经网络的图像运算方法、装置和电子设备,包括获取预设的卷积神经网络的运算参数;该运算参数与该电子设备的存储属性相关联;根据该运算参数,从待处理图像中采集图像块;针对每个图像块,通过该卷积神经网络计算其池化特征矩阵;根据每个图像块的池化特征矩阵组成该待处理图像的池化特征矩阵。本发明专利技术根据电子设备的内部缓存,推导池化层输出的特征矩阵的尺度,进而设置与该卷积神经网络的网络参数相匹配的窗口尺度参数,使得根据该窗口尺度参数采集的图像块,通过卷积运算得到的卷积特征矩阵中不出现冗余数据,从而可以对卷积层输出的卷积结果直接进行池化计算,无需将其缓存至DDR,节约了内存资源和网络宽带。

【技术实现步骤摘要】
卷积神经网络的图像运算方法、装置和电子设备
本专利技术涉及图像处理
,尤其是涉及一种卷积神经网络的图像运算方法、装置和电子设备。
技术介绍
卷积神经网络包括输入层、隐藏层和输出层;其中,隐藏层又包括卷积层和池化层,该池化层也称为采样层。相关技术中,卷积神经网络加速器通常采用固定尺度的窗口采集图像块,然后通过卷积层对采集到的图像块进行卷积计算后,并将卷积结果缓存至DDR(DoubleDataRateSynchronousDynamicRandomAccessMemory,双倍速率同步动态随机存储器),再从DDR中获取卷积结果,通过池化层进行池化计算,输出池化结果。该方式中,由于图像块的采集窗口尺度固定,如果相对于某个卷积层的卷积计算,该采集窗口尺度过大,则采集的图像块会较大,存在冗余数据;并且,卷积层输出的卷积结果相对于后续的池化层,也可能会存在冗余数据。因此,需要采用上述将卷积结果缓存至DDR,再从DDR中读取卷积结果的方式解决冗余数据的问题。但是,在DDR中存取卷积结果的方式,会浪费大量的内存资源和网络带宽。整体而言,现有的卷积神经网络运算方式会导致大量内存资源和网络带宽的浪费。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种卷积神经网络的图像运算方法、装置和电子设备,可以减少内存资源的占用,并节约网络宽带。第一方面,本专利技术实施例提供了一种卷积神经网络的图像运算方法,该方法应用于实现卷积神经网络运算的电子设备;该方法包括:获取预设的卷积神经网络的运算参数;该运算参数与该电子设备的存储属性相关联;根据该运算参数,从待处理图像中采集图像块;针对每个图像块,进行下述处理:通过该卷积神经网络的卷积层,对当前图像块进行卷积计算,得到该当前图像块的卷积特征矩阵;通过该卷积神经网络的池化层,对该卷积特征矩阵进行池化计算,得到当前图像块的池化特征矩阵;按照每个图像块在该待处理图像中的位置,将每个图像块的池化特征矩阵组成该待处理图像的池化特征矩阵。在本专利技术较佳的实施例中,上述获取预设的卷积神经网络的运算参数的步骤,包括:获取该电子设备的硬件参数;根据该硬件参数,确定预设的卷积神经网络的运算参数。在本专利技术较佳的实施例中,上述根据该硬件参数,确定预设的卷积神经网络的运算参数的步骤,包括:根据该硬件参数,确定预设的卷积神经网络的约束条件;其中,该硬件参数包括该电子设备的内部缓存大小;该约束条件包括:该卷积神经网络中卷积层输出的卷积特征矩阵的最大尺度,或者,该卷积层输入的图像块的最大尺度;根据该约束条件,确定该卷积神经网络的运算参数。在本专利技术较佳的实施例中,上述根据该约束条件,确定该卷积神经网络的运算参数的步骤,包括:如果该约束条件包括该卷积层输出的卷积特征矩阵的最大尺度,根据该卷积特征矩阵的最大尺度,确定该卷积层输入的图像块的最大尺度;根据该卷积层输入的图像块的最大尺度,确定该卷积神经网络中池化层输出的池化特征矩阵的尺度;根据该池化层输出的池化特征矩阵的尺度,确定该卷积神经网络的运算参数。在本专利技术较佳的实施例中,上述根据该卷积特征矩阵的最大尺度,确定该卷积层输入的图像块的最大尺度的步骤,包括:通过下述公式,确定该卷积层输入的图像块的最大尺度:i_cov_width_valid_max=(o_cov_width_max-1)*cs_w+1;i_cov_height_valid_max=(o_cov_height_max-1)*cs_h+1;其中,i_cov_width_valid_max为该卷积层输入的图像块的最大宽度;i_cov_height_valid_max为该卷积层输入的图像块的最大高度;o_cov_width_max为该卷积层输出的卷积特征矩阵的最大宽度;o_cov_height_max为该卷积层输出的卷积特征矩阵的最大高度;cs_w为该卷积层的水平步长;cw_h为该卷积层的垂直步长。在本专利技术较佳的实施例中,上述根据该卷积层输入的图像块的最大尺度,确定该卷积神经网络中池化层输出的池化特征矩阵的尺度的步骤,包括:通过下述公式,确定该卷积神经网络中池化层输出的池化特征矩阵的尺度:(pw_w+(pl_width-1)*ps_w-1)*cs_w+1=i_cov_width_valid_max;(pw_h+(pl_height-1)*ps_h-1)*cs_h+1=i_cov_height_validmax;其中,i_cov_width_valid_max为该卷积层输入的图像块的最大宽度;i_cov_height_valid_max为该卷积层输入的图像块的最大高度;cs_w为该卷积层的水平步长;cs_h为该卷积层的垂直步长;ps_w为该池化层的水平步长;ps_h为该池化层的垂直步长;pl_width为该池化层输出的池化特征矩阵的宽度;pl_height为该池化层输出的池化特征矩阵的高度;pw_w为该池化层的池化窗口宽度;pw_h为该池化层的池化窗口高度。在本专利技术较佳的实施例中,上述根据该池化层输出的池化特征矩阵的尺度,确定该卷积神经网络的运算参数的步骤,包括:对该池化层输出的池化特征矩阵的尺度进行取整处理;根据取整后的该池化层输出的池化特征矩阵的尺度,确定该卷积神经网络的运算参数。在本专利技术较佳的实施例中,上述根据取整后的该池化层输出的池化特征矩阵的尺度,确定该卷积神经网络的运算参数的步骤,包括:通过下述公式,计算该运算参数中,用于从待处理图像中采集图像块的窗口尺度:i_cov_width=(pw_w+(o_pl_width-1)*ps_w-1)*cs_w+cw_w;i_cov_height=(pw_h+(o_pl_height-1)*ps_h-1)*cs_h+cw_h;其中,i_cov_width为该窗口的宽度;i_cov_height为该窗口的高度;pw_w为该池化层的池化窗口宽度;pw_h为该池化层的池化窗口高度;o_pl_width为取整后的该池化层输出的池化特征矩阵的宽度;o_pl_height为取整后的该池化层输出的池化特征矩阵的高度;ps_w为该池化层的水平步长;ps_h为该池化层的垂直步长;cs_w为该卷积层的水平步长;cs_h为该卷积层的垂直步长。在本专利技术较佳的实施例中,上述根据取整后的该池化层输出的池化特征矩阵的尺度,确定该卷积神经网络的运算参数的步骤,包括:通过下述公式,计算该运算参数中,用于从待处理图像中采集图像块的窗口位移:cb_ws=((pw_w+(o_pl_width-1)*ps_w-1)*cs_w+1-(pw_w-ps_w))*cs_w;cb_hs=((pw_h+(o_pl_height-1)*ps_h-1)*cs_h+1-(pw_h-ps_h))*cs_h;其中,cb_ws为该窗口的水平位移步长;该cb_hs为该窗口的垂直位移步长。在本专利技术较佳的实施例中,上述运算参数包括:用于从待处理图像中采集图像块的窗口尺度参数和窗口位移参数,上述根据该运算参数,从待处理图像中采集图像块的步骤,包括:根据该运算参数中的窗口尺度参数和预设的默认初始本文档来自技高网...

【技术保护点】
1.一种卷积神经网络的图像运算方法,其特征在于,所述方法应用于实现卷积神经网络运算的电子设备;所述方法包括:/n获取预设的卷积神经网络的运算参数;所述运算参数与所述电子设备的存储属性相关联;/n根据所述运算参数,从待处理图像中采集图像块;/n针对每个所述图像块,进行下述处理:通过所述卷积神经网络的卷积层,对当前图像块进行卷积计算,得到所述当前图像块的卷积特征矩阵;通过所述卷积神经网络的池化层,对所述卷积特征矩阵进行池化计算,得到所述当前图像块的池化特征矩阵;/n按照每个所述图像块在所述待处理图像中的位置,将每个所述图像块的池化特征矩阵组成所述待处理图像的池化特征矩阵。/n

【技术特征摘要】
1.一种卷积神经网络的图像运算方法,其特征在于,所述方法应用于实现卷积神经网络运算的电子设备;所述方法包括:
获取预设的卷积神经网络的运算参数;所述运算参数与所述电子设备的存储属性相关联;
根据所述运算参数,从待处理图像中采集图像块;
针对每个所述图像块,进行下述处理:通过所述卷积神经网络的卷积层,对当前图像块进行卷积计算,得到所述当前图像块的卷积特征矩阵;通过所述卷积神经网络的池化层,对所述卷积特征矩阵进行池化计算,得到所述当前图像块的池化特征矩阵;
按照每个所述图像块在所述待处理图像中的位置,将每个所述图像块的池化特征矩阵组成所述待处理图像的池化特征矩阵。


2.根据权利要求1所述的方法,其特征在于,获取预设的卷积神经网络的运算参数的步骤,包括:
获取所述电子设备的硬件参数;
根据所述硬件参数,确定预设的卷积神经网络的运算参数。


3.根据权利要求2所述的方法,其特征在于,根据所述硬件参数,确定预设的卷积神经网络的运算参数的步骤,包括:
根据所述硬件参数,确定预设的卷积神经网络的约束条件;其中,所述硬件参数包括所述电子设备的内部缓存大小;所述约束条件包括:所述卷积神经网络中卷积层输出的卷积特征矩阵的最大尺度,或者,所述卷积层输入的图像块的最大尺度;
根据所述约束条件,确定所述卷积神经网络的运算参数。


4.根据权利要求3所述的方法,其特征在于,根据所述约束条件,确定所述卷积神经网络的运算参数的步骤,包括:
如果所述约束条件包括所述卷积层输出的卷积特征矩阵的最大尺度,根据所述卷积特征矩阵的最大尺度,确定所述卷积层输入的图像块的最大尺度;
根据所述卷积层输入的图像块的最大尺度,确定所述卷积神经网络中池化层输出的池化特征矩阵的尺度;
根据所述池化层输出的池化特征矩阵的尺度,确定所述卷积神经网络的运算参数。


5.根据权利要求4所述的方法,其特征在于,根据所述卷积特征矩阵的最大尺度,确定所述卷积层输入的图像块的最大尺度的步骤,包括:
通过下述公式,确定所述卷积层输入的图像块的最大尺度:
i_cov_width_valid_max=(o_cov_width_max-1)*cs_w+1;
i_cov_height_valid_max=(o_cov_height_max-1)*cs_h+1;
其中,i_cov_width_valid_max为所述卷积层输入的图像块的最大宽度;i_cov_height_valid_max为所述卷积层输入的图像块的最大高度;o_cov_width_max为所述卷积层输出的卷积特征矩阵的最大宽度;o_cov_height_max为所述卷积层输出的卷积特征矩阵的最大高度;cs_w为所述卷积层的水平步长;cw_h为所述卷积层的垂直步长。


6.根据权利要求4所述的方法,其特征在于,根据所述卷积层输入的图像块的最大尺度,确定所述卷积神经网络中池化层输出的池化特征矩阵的尺度的步骤,包括:
通过下述公式,确定所述卷积神经网络中池化层输出的池化特征矩阵的尺度:
(pw_w+(pl_width-1)*ps_w-1)*cs_w+1=i_cov_width_valid_max;
(pw_h+(pl_height-1)*ps_h-1)*cs_h+1=i_cov_height_validmax;
其中,i_cov_width_valid_max为所述卷积层输入的图像块的最大宽度;i_cov_height_valid_max为所述卷积层输入的图像块的最大高度;cs_w为所述卷积层的水平步长;cs_h为所述卷积层的垂直步长;ps_w为所述池化层的水平步长;ps_h为所述池化层的垂直步长;pl_width为所述池化层输出的池化特征矩阵的宽度;pl_height为所述池化层输出的池化特征矩阵的高度;pw_w为所述池化层的池化窗口宽度;pw_h为所述池化层的池化窗口高度。


7.根据权利要求4所述的方法,其特征在于,根据所述池化层输出的池化特征矩阵的尺度,确定所述...

【专利技术属性】
技术研发人员:王艳龙
申请(专利权)人:北京爱芯科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1