利索能及
我要发布
收藏
专利号: 2019111433019
申请人: 上海商汤智能科技有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2025-11-07
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种数据处理方法,其特征在于,所述方法包括:

对待卷积数据以P列、M个输入通道为单位进行打包,获得多个第一数据元素;卷积核参数包含S*S个第一参数元素,每个第一参数元素包含M个输入通道、N个输出通道,其中,所述待卷积数据是基于目标图像得到的;

通过内积指令对各个所述第一参数元素与第一数据块中对应的第一数据元素进行内积操作,得到所述每个第一参数元素对应的内积结果,其中,所述第一数据块包括对所述待卷积数据的连续S行以设定步长对每行进行第一划窗S次获得的各个第一数据元素;

通过累加指令对各个所述第一参数元素对应的内积结果进行累加,获得第一累加结果;

以所述第一数据块的M个输入通道为单位对所述待卷积数据进行第二划窗,得到所述输入通道上每次第二划窗对应的各个第一累加结果;

将所述各个第一累加结果进行累加,得到第二累加结果;

以包含所有输入通道的第一数据块为单位对所述待卷积数据在列的方向上逐行进行第三划窗,得到在列的方向上每次第三划窗对应的各个第二累加结果;

偏移P列后重复在列的方向上逐行进行第三划窗,直至偏移至Q列,获得多个第二累加结果;

在所述待卷积数据的输出通道上逐次偏移M个输出通道,获得每次偏移在所述输出通道上对应的所述多个第二累加结果;

将所得到的各个第二累加结果在待卷积数据的行、列、输出通道上展开,获得数据处理结果。

2.根据权利要求1所述的方法,其特征在于,将所得到的各个第二累加结果在待卷积数据的行、列、输出通道上展开,获得目标展开结果,包括:将所述待卷积数据在列的方向上所对应的第二加累加结果,在列上进行展开,获得第一展开结果;

将Q列所对应的第一展开结果,在行上进行展开,获得第二展开结果;

将输出通道上对应的第二展开结果,在所述输出通道上展开,获得数据处理结果。

3.根据权利要求1所述的方法,其特征在于,所述卷积核参数为初始卷积核中每个元素与卷积核量化零点的差形成的参数;所述通过内积指令对各个所述第一参数元素与第一数据块中对应的第一数据元素进行内积操作,得到所述每个第一参数元素对应的内积结果,包括:将进行内积操作的结果与常量相加,得到所述内积结果,其中,所述常量根据待卷积数据量化零点与所述卷积核参数的乘积以及卷积运算的偏置得到。

4.根据权利要求1至3任一项所述的方法,其特征在于,在将卷积核参数设置为包含M个输入通道、N个输出通道,针对大小为S*S的卷积核参数得到S*S个第一参数元素之前,所述方法还包括:将所述卷积核参数搬移至第一存储区域,将所述待卷积数据搬移至第二存储区域,其中,所述第一存储区域为利用设定步长控制滑动的存储区域,所述内积指令为带步长滑窗的乘累加指令。

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:通过二维DMA控制器将待卷积数据搬移至所述第二存储区域。

6.根据权利要求5任一项所述的方法,其特征在于,所述方法还包括:对所述第二存储区域中的所述待卷积数据在列的方向上进行补齐操作。

7.一种数据处理方法,其特征在于,所述方法包括:

通过二维DMA控制器将待卷积数据搬移至存储区域,其中,所述待卷积数据是基于目标图像得到的;

对于所述存储区域中的所述待卷积数据在列的方向上进行补齐操作;

通过调用卷积指令对存储在所述存储区域中的数据进行卷积运算,所述卷积指令里在设定位置装载用于在行的方向上进行补齐操作的指令。

8.一种数据处理装置,其特征在于,所述装置包括:

打包单元,用于对待卷积数据以P列、M个输入通道为单位进行打包,获得多个第一数据元素;卷积核参数包含S*S个第一参数元素,每个第一参数元素包含M个输入通道、N个输出通道,其中,所述待卷积数据是基于目标图像得到的;

内积单元,用于通过内积指令对各个所述第一参数元素与第一数据块中对应的第一数据元素进行内积操作,得到所述每个第一参数元素对应的内积结果,其中,所述第一数据块包括对所述待卷积数据的连续S行以设定步长对每行进行第一划窗S次获得的各个第一数据元素;

累加单元,用于通过累加指令对各个所述第一参数元素对应的内积结果进行累加,获得第一累加结果;

获得单元,用于

以所述第一数据块的M个输入通道为单位对所述待卷积数据进行第二划窗,得到所述输入通道上每次第二划窗对应的各个第一累加结果;

将所述各个第一累加结果进行累加,得到第二累加结果;

以包含所有输入通道的第一数据块为单位对所述待卷积数据在列的方向上逐行进行第三划窗,得到在列的方向上每次第三划窗对应的各个第二累加结果;

偏移P列后重复在列的方向上逐行进行第三划窗,直至偏移至Q列,获得多个第二累加结果;

在所述待卷积数据的输出通道上逐次偏移M个输出通道,获得每次偏移在所述输出通道上对应的所述多个第二累加结果;

将所得到的各个第二累加结果在待卷积数据的行、列、输出通道上展开,获得数据处理结果。

9.根据权利要求8所述的装置,其特征在于,所述获得单元在用于将所得到的各个第二累加结果在待卷积数据的行、列、输出通道上展开,获得数据处理结果时,具体用于:将所述待卷积数据在列的方向上所对应的第二加累加结果,在列上进行展开,获得第一展开结果;

将Q列所对应的第一展开结果,在行上进行展开,获得第二展开结果;

将输出通道上对应的第二展开结果,在所述输出通道上展开,获得数据处理结果。

10.根据权利要求8所述的装置,其特征在于,所述卷积核参数为初始卷积核中每个元素与卷积核量化零点的差形成的参数;所述内积单元具体用于:将进行内积操作的结果与常量相加,得到所述内积结果,其中,所述常量根据待卷积数据量化零点与所述卷积核参数的乘积以及卷积运算的偏置得到。

11.根据权利要求8至10任一项所述的装置,其特征在于,所述装置还包括搬移单元,用于在将卷积核参数设置为包含M个输入通道、N个输出通道,针对大小为S*S的卷积核参数得到S*S个第一参数元素之前,将所述卷积核参数搬移至第一存储区域,将所述待卷积数据搬移至第二存储区域,其中,所述第一存储区域为利用设定步长控制滑动的存储区域,所述内积指令为带步长滑窗的乘累加指令。

12.根据权利要求11所述的装置,其特征在于,所述装置还包括子搬移单元,用于通过二维DMA控制器将待卷积数据搬移至所述第二存储区域。

13.根据权利要求12所述的装置,其特征在于,所述装置还包括补齐单元,用于对所述第二存储区域中的所述待卷积数据在列的方向上进行补齐操作。

14.一种数据处理装置,其特征在于,所述装置包括:

搬移单元,用于通过二维DMA控制器将待卷积数据搬移至存储区域,其中,所述待卷积数据是基于目标图像得到的;

补齐单元,用于对于所述存储区域中的所述待卷积数据在列的方向上进行补齐操作;

运算单元,用于通过调用卷积指令对存储在所述存储区域中的数据进行卷积运算,所述卷积指令里在设定位置装载用于在行的方向上进行补齐操作的指令。

15.一种数据处理设备,其特征在于,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现权利要求1至6任一项所述的方法。

16.一种数据处理设备,其特征在于,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现权利要求7所述的方法。

17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至6任一项所述的方法。

18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求7所述的方法。