用于调整多个感兴趣区域数据的存储位置的方法和装置制造方法及图纸

技术编号:21061880 阅读:20 留言:0更新日期:2019-05-08 07:55
公开了一种用于调整多个感兴趣区域数据的存储位置的方法和装置。该方法可以包括:根据要调整的多个感兴趣区域数据的得分,确定与存储要调整的多个感兴趣区域数据的存储区域的地址范围相对应的多个局部地址范围;针对作为当前要调整的感兴趣区域数据的第一数据,确定要调整的多个局部地址范围中的第一局部地址范围内的第一地址;将第一地址处的第二数据从存储区域存储到缓冲存储器中;以及将第一数据存储到存储区域中的第一地址处。通过根据本公开的实施例的方法和装置,能够高效率地实现多个感兴趣区域数据的存储位置的就地调整。

【技术实现步骤摘要】
用于调整多个感兴趣区域数据的存储位置的方法和装置
本公开总体上涉及人工智能的
,并且具体地涉及一种用于调整多个感兴趣区域数据的存储位置的方法和装置。
技术介绍
可以采用诸如RCNN(RegionswithCNNfeatures)、空间金字塔池化网络(SpatialPyramidPoolingNetwork,SPP-Net)、快速RCNN(FastRCNN)、更快速RCNN(FasterRCNN)等方法检测输入图像或视频中的一个或多个关注对象,而这些对象检测方法需要先生成(或推荐)多个感兴趣区域(RegionofInterest,ROI),然后基于所生成的ROI数据执行后续处理。在基于ROI的对象检测方法中,需要根据ROI的得分重新调整所生成的各个ROI数据的存储位置。通常的用于控制调整ROI数据的位置的过程的时空复杂度均很高,不适合在硬件资源有限的人工智能芯片上高效率地实现。
技术实现思路
根据本公开的一个方面,提供了一种用于调整多个感兴趣区域数据的存储位置的方法和装置。该方法可以包括:根据要调整的多个感兴趣区域数据的得分,确定与存储要调整的多个感兴趣区域数据的存储区域的地址范围相对应的多个局部地址范围;针对作为当前要调整的感兴趣区域数据的第一数据,确定要调整的多个局部地址范围中的第一局部地址范围内的第一地址;将第一地址处的第二数据从存储区域存储到缓冲存储器中;以及将第一数据存储到存储区域中的第一地址处。根据本公开的另一个方面,还提供了一种用于调整多个感兴趣区域数据的存储位置的装置。该装置可以包括缓冲存储器和处理器,其中,缓冲存储器可以被配置为存储当前要调整的感兴趣区域数据,并且处理器可以被配置为在启动时至少执行上述方法。根据本公开的另一个方面,还提供了一种计算机可读取的非临时性存储介质,在其上存储有程序指令,该程序指令在被执行时至少执行上述方法。通过根据本公开的实施例的方法和装置,能够高效率地实现多个感兴趣区域数据的位置的就地调整。附图说明通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。图1示出根据本公开的实施例的存储着N个ROI数据的存储区域SR的示例。图2示出根据本公开的实施例的用于调整ROI数据的存储位置的方法的示例。图3示出在对于如图1所示的N个ROI数据执行图2的示例方法的过程的示例。图4示出执行图2的示例方法中的步骤S130和步骤S140的示例。图5示出在对于如图1所示的N个ROI数据执行图2的示例方法的过程的示例。图6示出根据本公开的实施例的用于调整ROI数据的存储位置的装置的示例。具体实施方式下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。概述在诸如RCNN、SPP-Net、FastRCNN和FasterRCNN这样的检测效果优良的多阶段对象检测方法中,通常需要对所产生大量(例如,数千个、数万个、甚至数十万个)的ROI进行排序,即,调整ROI数据在存储器中的存储位置。在通常的用于控制调整ROI数据的存储位置的方案中,通常需要所配置的存储器能够提供大于或等于ROI数据的总数据量的两倍的存储空间,其中,存储器可以包括前述的缓冲存储器和/或用于存储最初的ROI数据和最终的排序结果的存储器。对于人工智能芯片而言,由于硬件成本和芯片空间等不同方面的考虑和/或限制,通常只配置容量较低的片上存储器,例如,总容量可以为几百K字节到几M字节的静态存储器或高速缓冲存储器等。因此,人工智能芯片在不与片外存储器进行数据交换的情况下无法独立地对数量可达数十万或数万的ROI数据进行排序。即使只对数千个ROI数据进行排序,在人工智能芯片中,由于需要在片上存储器中分配例如容量至少与存储所有ROI数据的存储区域相同的存储区域,因此也将占用更多的片上存储器资源,甚至需要设置更多的片上存储器,这将增加人工智能芯片的硬件成本。另外,可以将人工智能芯片装配到诸如手机、导航仪这样的终端设备中,以便检测例如经由终端设备上的摄像头等拍摄的图像或视频中的一个或多个关注对象。在这样的情况下,可以控制人工智能芯片将所产生的ROI数据存储到设置在终端设备之内且在人工智能芯片之外的片外存储器中,甚至可以控制由终端设备中的处理器执行对存储于片外存储器中的ROI数据的排序。然而,诸如手机、导航仪这样的终端设备对处理效率、功耗和硬件成本等通常也具有较高要求。通常的ROI排序方案的较高的空间复杂度(例如,需要容量与存储器中存储所有ROI数据的存储区域相同的缓存区域)将导致终端设备需要更高的硬件成本,例如需要配置更多容量的存储器。因此,总是期望能够在确保执行的效率以及结果的准确性和精度的同时,尽可能降低人工智能芯片或装配了人工智能芯片的终端设备的硬件成本。根据本公开的实施例的用于调整ROI数据的存储位置的方法和装置,旨在至少部分地解决或缓解上述技术问题中的一个或多个,使得人工智能芯片或装配了人工智能芯片的终端设备能够高效率地实现ROI数据的存储位置的就地调整,而不必配置容量可能需要大于或等于存储器中用于存储所有ROI数据的存储区域的缓存区域。示例性方法图1示出已经生成并连续地存储在存储器的存储区域SR中的N个ROI数据ROI1、ROI2、……、ROIN,其中,N是大于1的整数,例如数十万、数万或数千,并且ROI1、ROI2、……、ROIN分别存储于存储区域SR中的地址ADDR1、ADDR2、……、ADDRN处。换句话说,N个ROI数据ROI1、ROI2、……、ROIN连续地存储于对应于连续的地址空间ADDR1至ADDRN(在本文中,也称为“完整地址范围”)的存储区域SR中。这里,由于每个ROI数据通常可以包括多个数据项(例如,ROI的坐标、宽度、高度、得分等),所以存储区域SR中的地址ADDR1、ADDR2、……、ADDRN中的每个地址对应的是存储区域SR中用于存储每个ROI数据的单位存储区域的首地址,而不是存储区域SR的每个物理上的存储单元的首地址。在本文中,为了简单,假设每个ROI数据只占据存储区域SR的一个存储单元,或者在存储区域SR是根据二维存储器确定的二维存储区域的情况下只占据存储区域SR的一个存储行或缓存行或缓冲区。需要根据各个ROI数据的得分调整各个ROI数据在存储区域SR中的存储位置,使得按照一种次序,对于在调整之后分别存储于ADDRi和ADDRi+1的ROIi和ROIi+1(i是大于或等于1且小于N的任意整数),ROIi的得分小于或等于ROIi+1的得分,或者按照另一种次序,对于在调整之后分别存储于ADDRi和ADDRi+1的ROIi和ROIi+1,ROIi的得分大于或等于ROIi+1的得分。图2示出根据本公开的实施例的用于调整ROI1、ROI2、……、ROIN在SR中的存储位置的方法的示例,该示例方法可以包括步骤S110、S120、S130和S140。在步骤S110中,可以根据RO本文档来自技高网...

【技术保护点】
1.一种用于调整多个感兴趣区域数据的存储位置的方法,包括:根据所述多个感兴趣区域数据的得分,确定与存储所述多个感兴趣区域数据的存储区域的地址范围相对应的多个局部地址范围;针对作为当前要调整的感兴趣区域数据的第一数据,确定所述多个局部地址范围中的第一局部地址范围内的第一地址;将所述第一地址处的第二数据从所述存储区域存储到缓冲存储器中;以及将所述第一数据存储到所述存储区域中的第一地址处。

【技术特征摘要】
1.一种用于调整多个感兴趣区域数据的存储位置的方法,包括:根据所述多个感兴趣区域数据的得分,确定与存储所述多个感兴趣区域数据的存储区域的地址范围相对应的多个局部地址范围;针对作为当前要调整的感兴趣区域数据的第一数据,确定所述多个局部地址范围中的第一局部地址范围内的第一地址;将所述第一地址处的第二数据从所述存储区域存储到缓冲存储器中;以及将所述第一数据存储到所述存储区域中的第一地址处。2.根据权利要求1所述的方法,其中,所述多个局部地址范围中的每个局部地址范围的大小取决于所述多个感兴趣区域数据中具有与该局部地址范围相对应的得分的感兴趣区域数据的数量。3.根据权利要求1所述的方法,其中,所述第一数据具有与所述第一局部地址范围相对应的得分,并且所述第一地址的第二数据不是已调整的感兴趣区域数据。4.根据权利要求3所述的方法,其中,确定所述多个局部地址范围中的第一局部地址范围内的第一地址包括:根据与所述第一局部地址范围相对应的计数器的计数值确定所述第一地址。5.根据权利要求4所述的方法,还包括:更新与所述第一局部地址范围相对应的计数器的计数值,使得更新后的计数值对应于所述第一局部地址范围内的未被访问过的地址。6.根据权利要求1所述的方法,其中,将所述第一地址处的第二数据从所述存储区域存储到缓冲存储器中包括:将缓存在所述缓冲存储器的第一缓冲区中的第一数据存储到所述缓冲存储器的第二缓冲区中;以及将所述第二数据从所述存储区域缓存到所述缓冲存储器的第一缓冲区中。7.根据权利要求6所述的方法,其中,将所述缓冲存储器中的第一数据存储到所述存储区域中的第一地址处包括:将所述第二...

【专利技术属性】
技术研发人员:李军李建军张鑫语李晓森黄畅
申请(专利权)人:北京地平线机器人技术研发有限公司
类型:发明
国别省市:北京,11

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

1