一种实现图像卷积的方法和装置、实现缓存的方法和装置的制造方法

文档序号:9489744阅读:347来源:国知局
一种实现图像卷积的方法和装置、实现缓存的方法和装置的制造方法
【技术领域】
[0001] 本发明涉及图像处理技术,尤指一种实现图像卷积的方法和装置、实现缓存的方 法和装置。
【背景技术】
[0002] 卷积神经网络(CNN,CoverletNeutralNetwork)是一种深度学习模型,可有效提 高图像识别准确率,特别是针对大规模的图像数据。
[0003] 现有的实现图像卷积的方法大致包括:
[0004] 将图像中左上角的像素为图像的第i行第j列的像素且大小与卷积核相同的子 图像加载到缓存中并与卷积核进行卷积,继续将图像中左上角的像素为图像的第i行第 (j+Ι)列的像素且大小与卷积核相同的子图像加载到缓存中与卷积核进行卷积,直到图像 中右下角的像素为图像的右边缘上的像素且大小与卷积核相同的子图像加载到缓存中与 卷积核卷积完成;将图像中左上角的像素为图像的第(i+1)行第j列的像素且大小与卷积 核相同的子图像加载到缓存中与卷积核进行卷积,继续将图像中左上角的像素为图像的第 α+1)行第(j+Ι)列的像素且大小与卷积核相同的子图像加载到缓存中与卷积核进行卷 积,直到图像中右下角的像素为图像的右边缘和下边缘上的像素且大小与卷积核相同的子 图像加载到缓存中与卷积核卷积完成。其中,i,j为大于或等于1的整数。
[0005] 现有的实现图像卷积的方法中,在将每一个子图像与卷积核进行卷积之前,首先 需要将子图像加载到缓存中,而由于CNN处理的图像规模较大,缓存中一般无法存储整个 图像,因此,进行卷积过程中需要对缓存中的数据进行多次替换,一般是首先将先加载到缓 存中的子图像进行替换,这样就会造成某一些被替换的数据重复加载到缓存中,从而降低 计算速度,并增加缓存的功耗。

【发明内容】

[0006] 为了解决上述问题,本发明提出了一种实现图像卷积的方法和装置、实现缓存的 方法和装置,能够提高计算速度,并减少缓存的功耗。
[0007] 为了达到上述目的,本发明提出了一种实现图像卷积的方法,包括:
[0008] 将图像中的第一子图像加载到缓存中并与卷积核进行卷积;其中,第一子图像为 中心像素为图像的中心像素且大小与卷积核相同的图像;
[0009] 将图像中的第二子图像分别加载到缓存中并与卷积核进行卷积,其中,第二子图 像包括中心像素为上一次子图像的中心像素的外围像素且大小与卷积核相同的若干图像; 以此类推,直到将边缘为图像的边缘且大小与卷积核相同的子图像分别加载到缓存中并与 卷积核进行卷积。
[0010] 优选地,所述第一子图像为第

同的图像;其中,Μ为所述图像的总行数或总列数,N为所述子图像的总行数或总列数。
[0011] 本发明还提出了一种实现缓存的方法,包括:
[0012] 将图像中的第一子图像加载到缓存中;其中,第一子图像为中心像素为图像的中 心像素且大小与卷积核相同的图像;
[0013] 判断出缓存未溢出,将图像中的第二子图像分别加载到缓存中,其中,第二子图像 包括中心像素为上一次子图像的中心像素的外围像素且大小与卷积核相同的若干图像;以 此类推,直到将边缘为图像的边缘且大小与卷积核相同的子图像分别加载到缓存中。
[0014] 优选地,当判断出所述缓存溢出时,所述将图像中的第二子图像分别加载到缓存 中包括:
[0015] 将所述图像中的第二子图像按照先进先出的方式分别加载到所述缓存中。
[0016] 本发明还提出了一种实现图像卷积的装置,至少包括:
[0017] 第一缓存模块,用于将图像中的第一子图像加载到缓存中;其中,第一子图像为中 心像素为图像的中心像素且大小与卷积核相同的图像;在上一次子图像与卷积核进行卷积 后,将图像中的第二子图像分别加载到缓存中,其中,第二子图像包括中心像素为上一次子 图像的中心像素的外围像素且大小与卷积核相同的若干图像;以此类推,直到将边缘为图 像的边缘且大小与卷积核相同的子图像分别加载到缓存中;
[0018] 卷积模块,用于将加载到缓存中的子图像与卷积核进行卷积。
[0019] 优选地,所述第一缓存模块具体用于:
数,N为所述子图像的总行数或总列数;在上一次子图像与卷积核进行卷积后,将图像中的 第二子图像加载到缓存中,其中,第二子图像包括中心像素为上一次子图像的中心像素的 外围像素且大小与卷积核相同的若干图像;以此类推,直到将边缘为图像的边缘且大小与 卷积核相同的子图像分别加载到缓存中。
[0021] 本发明还提出了一种实现缓存的装置,至少包括:
[0022] 第二缓存模块,用于将图像中的第一子图像加载到缓存中;其中,第一子图像为中 心像素为图像的中心像素且大小与卷积核相同的图像;接收到第一通知消息,将图像中的 第二子图像分别加载到缓存中,其中,第二子图像包括中心像素为上一次子图像的中心像 素的外围像素且大小与卷积核相同的若干图像;以此类推,直到将边缘为图像的边缘且大 小与卷积核相同的子图像分别加载到缓存中;
[0023] 判断模块,用于判断出缓存未溢出,向第二缓存模块发送第一通知消息。
[0024] 优选地,所述判断模块还用于:
[0025] 当判断出所述缓存溢出时,向所述第二缓存模块发送第二通知消息;
[0026] 所述第二缓存模块还用于:
[0027] 接收到所述第二通知消息,将所述图像中的第二子图像按照先进先出的方式分别 加载到所述缓存中。
[0028] 与现有技术相比,本发明的技术方案包括:将图像中的第一子图像加载到缓存中 并与卷积核进行卷积;其中,第一子图像为中心像素为图像的中心像素且大小与卷积核相 同的图像;将图像中的第二子图像分别加载到缓存中并与卷积核进行卷积,其中,第二子图 像包括中心像素为上一次子图像的中心像素的外围像素且大小与卷积核相同的若干图像; 以此类推,直到将边缘为图像的边缘且大小与卷积核相同的子图像分别加载到缓存中并与 卷积核进行卷积。通过本发明的方案,将图像中由内而外的子图像加载到缓存中并进行卷 积运算,减少了重复加载到缓存中的次数,从而提高了计算速度,并减少了缓存的功耗。
【附图说明】
[0029] 下面对本发明实施例中的附图进行说明,实施例中的附图是用于对本发明的进一 步理解,与说明书一起用于解释本发明,并不构成对本发明保护范围的限制。
[0030] 图1为本发明实现图像卷积的方法的流程图;
[0031] 图2为本发明图像的示意图;
[0032] 图3为本发明实现图像卷积的装置的结构组成示意图;
[0033] 图4为本发明实现缓存的装置的结构组成示意图。
【具体实施方式】
[0034] 为了便于本领域技术人员的理解,下面结合附图对本发明作进一步的描述,并不 能用来限制本发明的保护范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实 施例中的各种方式可以相互组合。
[0035] 参见图1,本发明提出了一种实现图像卷积的方法,包括:
[0036] 步骤100、将图像中的第一子图像加载到缓存中并与卷积核进行卷积。
[0037] 本步骤中,第一子图像为中心像素为图像的中心像素且大小与卷积核相同的图 像。
图像;其中,Μ为图像的总行数或总列数,N为子图像的总行数或总列数。
[0039] 本步骤中,子图像与卷积核进行卷积是指将子图像和卷积核对应的像素相乘后进 行相加。
[0040] 步骤101、将图像中的第二子图像分别加载到缓存中并与卷积核进行卷积,以此类 推,直到将边缘为图像的边缘且大小与卷积核相同的子图像分别加载到缓存中并与卷积核 进行卷积。
[0041] 本步骤中,第二子图像包括中心像素为上一次子图像的中心像素的外围像素且大 小与卷积核相同的若干图像。
[0042] 其中,上一次子图像的中心像素的外围像素是指与上一次子图像的中心像素相邻 的外围像素。图2为图像的示意图。如图2所示,假设像素1为图像的中心图像,则像素 2~9为与像素1相邻的外围像素,像素10~25为与像素2~9相邻的外围像素,以此类 推。
[0043]
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1