[发明专利]一种数据处理方法、设备及装置有效
申请号: | 201710152660.5 | 申请日: | 2017-03-15 |
公开(公告)号: | CN108573305B | 公开(公告)日: | 2020-07-24 |
发明(设计)人: | 胡睿;方颉翔;张铧铧 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06F15/78 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 项京;马敬 |
地址: | 310051 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 设备 装置 | ||
1.一种数据处理方法,其特征在于,所述方法包括:
获取预设卷积核,并确定所述预设卷积核的卷积框宽度;
获取芯片缓存容量及预设数据量,将所述芯片缓存容量与所述预设数据量相除,得到所述芯片缓存的数据个数的最大值,所述预设数据量表征进行一次卷积运算所需缓存的数据量;
获取第一预设行数,将所述数据个数的最大值与所述第一预设行数相除,得到所述芯片缓存的每行数据的个数;
确定所述芯片缓存的每行数据的个数为数据列宽度,其中,所述数据列宽度大于或等于所述卷积框宽度;
按照所述数据列宽度对待处理数据矩阵进行列划分,得到多列区域,其中,所述待处理数据矩阵为存储在内存中的、包含所有待处理数据的矩阵;
在接收到数据处理指令时,针对所有列区域中的任一列区域,提取第二预设行数的待运算数据发送至所述芯片缓存,利用所述预设卷积核,对缓存的所述待运算数据进行卷积运算,其中,所述第二预设行数大于或等于所述卷积框宽度、且小于或等于所述第一预设行数;
在所述待运算数据中的第一行数据参与完卷积运算后,将所述第一行数据从所述芯片缓存中删除,并从对应列区域中提取下一行数据发送至所述芯片缓存,作为待运算数据的最后一行数据,更新待运算数据;
利用所述预设卷积核,对更新的待运算数据进行卷积运算,直至所述区域中的所有行数据均参与完卷积运算,将卷积运算后得到的所有运算结果发送至所述内存。
2.根据权利要求1所述的数据处理方法,其特征在于,所述按照所述数据列宽度对待处理数据矩阵进行列划分,得到多列区域的步骤之前,所述方法还包括:
将所述卷积框宽度减去预设值,得到重合区域的宽度,其中,所述重合区域为任一数据列与相邻数据列重合的区域;
确定所述数据列宽度中包含所述重合区域的宽度。
3.根据权利要求1所述的数据处理方法,其特征在于,所述在接收到数据处理指令时,针对所有区域中的任一列区域,提取第二预设行数的待运算数据发送至所述芯片缓存的步骤之前,所述方法还包括:
针对所有区域中的任一列区域,在第一行数据之前添加第一空行,并设置所述第一空行的数据为0;
在最后一行数据之后添加第二空行,并设置所述第二空行的数据为0;
所述提取第二预设行数的待运算数据发送至所述芯片缓存的步骤,包括:
从所述第一空行开始提取第二预设行数的待运算数据发送至所述芯片缓存。
4.根据权利要求1所述的数据处理方法,其特征在于,所述在所述待运算数据中的第一行数据参与完卷积运算后,将所述第一行数据从所述芯片缓存中删除,并从对应列区域中提取下一行数据发送至所述芯片缓存,作为待运算数据的最后一行数据,更新待运算数据的步骤,包括:
在所述待运算数据中的第一行数据参与完卷积运算时,将所述第一行数据从所述芯片缓存中删除,并从对应列区域中提取下一行数据发送至所述芯片缓存,作为待运算数据的最后一行数据,更新待运算数据;
或者,
在进行完任一次卷积运算后,将所述第一行数据从所述芯片缓存中删除,并在删除所述第一行数据后进行任一次卷积运算时,从对应列区域中提取下一行数据发送至所述芯片缓存,作为待运算数据的最后一行数据,更新待运算数据。
5.根据权利要求1所述的数据处理方法,其特征在于,所述利用所述预设卷积核,对更新的待运算数据进行卷积运算,直至所述区域中的所有行数据均参与完卷积运算,将卷积运算后得到的所有运算结果发送至所述内存的步骤,包括:
利用所述预设卷积核,对更新的待运算数据进行卷积运算,得到卷积结果;
将所述卷积结果存储至与对应列区域的列数相同的下一卷积层的列中;
发送所述下一卷积层至所述内存。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710152660.5/1.html,转载请声明来源钻瓜专利网。