处理图像的多个感兴趣区域数据的装置和方法与流程

文档序号:19157001发布日期:2019-11-16 00:57阅读:260来源:国知局
处理图像的多个感兴趣区域数据的装置和方法与流程

本公开总体上涉及图像处理的技术领域,并且具体地涉及一种处理图像的多个感兴趣区域数据的装置和方法。



背景技术:

在基于图像或视频的目标检测中,可以使用诸如计算机视觉识别或神经网络等方法处理输入的一个或多个图像(例如,单个的单色或彩色图像,或者包括在时间上连续的至少两个图像的图像序列),产生并输出大量的感兴趣区域(regionofinterest,roi)数据。这样的roi数据也可以被称为包围盒(boundingbox,bb)数据,并且可以包括对应的roi在图像或图像序列中的位置、置信度和类别等信息。

然后,可以基于所产生的roi数据执行诸如非极大值抑制(non-maximumsuppression,nms)等后续处理。总是期望能够更加高效率地处理这些数量巨大的roi数据。



技术实现要素:

根据本公开的一个方面,提供了一种处理图像的多个感兴趣区域数据的装置。该装置可以包括内容寻址存储器和处理器,其中,内容寻址存储器可以被配置为根据基于前述多个感兴趣区域数据中的第一感兴趣区域数据中的位置数据的第一数据,确定前述多个感兴趣区域数据中的第二感兴趣区域数据,并且处理器可以被配置为针对前述第一感兴趣区域数据以及前述多个感兴趣区域数据中与前述第一感兴趣区域数据和由前述内容寻址存储器确定的每个第二感兴趣区域数据不同的第三感兴趣区域数据,执行删除感兴趣区域和合并感兴趣区域中的至少一个操作,其中,前述第一感兴趣区域数据和任一第二感兴趣区域数据可以分别对应于在前述图像中分离的第一感兴趣区域和第二感兴趣区域。

根据本公开的另一个方面,还提供了一种处理图像的多个感兴趣区域数据的方法。该方法可以包括:由处理器根据前述多个感兴趣区域数据中的第一感兴趣区域数据中的位置数据,确定供内容寻址存储器在查询模式中使用的第一数据;控制前述内容寻址存储器进入前述查询模式,以根据前述第一数据确定前述多个感兴趣区域数据中的第二感兴趣区域数据;以及由前述处理器针对前述第一感兴趣区域数据以及前述多个感兴趣区域数据中与前述第一感兴趣区域数据和由前述内容寻址存储器确定的每个第二感兴趣区域数据不同的第三感兴趣区域数据,执行包括感兴趣区域删除和感兴趣区域合并中的至少一个的处理,其中,前述第一感兴趣区域数据和任一第二感兴趣区域数据可以分别对应于在前述图像中分离的第一感兴趣区域和第二感兴趣区域。

根据本公开的另一个方面,还提供了一种计算机可读存储介质。该存储介质可以存储有计算机程序。前述计算机程序可以用于执行前述处理图像的多个感兴趣区域数据的方法。

根据本公开的另一个方面,还提供了一种电子设备。该电子设备可以包括前述处理图像的多个感兴趣区域数据的装置。

在根据本公开的实施例的处理图像的多个感兴趣区域数据的装置和方法中,根据基于指定roi数据中的位置数据确定的信息,从所有roi数据中确定另一roi数据,该另一roi数据对应的roi与该指定roi数据对应的roi被处理器解释为在图像中是分离的,然后由处理器针对该指定roi数据和该另一roi数据执行诸如roi删除和roi合并这样的后处理。由此,能够在执行后处理之前过滤到将导致无效计算或处理的roi数据,从而能够减小功耗和提高处理效率。

附图说明

通过结合附图对本公开实施例进行更详细的描述,本公开的前述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。

图1示出常规的处理roi数据的装置的示例。

图2示出图1所示的常规装置处理roi数据的过程。

图3示出图像坐标系的示例。

图4示出在图像上分离的两个roi的示例。

图5示出在图像上分离的两个roi的示例。

图6示出在图像上分离的两个roi的示例。

图7示出在图像上分离的两个roi的示例。

图8示出根据本公开的实施例的装置的示例。

图9示出根据本公开的实施例的装置中的cam的示例。

图10示出根据本公开的实施例的装置中的cam的示例。

图11示出根据本公开的实施例的装置中的cam的示例。

图12示出根据本公开的实施例的装置中的cam的示例。

图13示出根据本公开的实施例的装置的示例。

图14示出根据本公开的实施例的装置的示例。

图15示出根据本公开的实施例的方法的示例。

图16示出根据本公开的实施例的电子设备的示例。

具体实施方式

下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。

概述

如前文所述,在基于图像或视频的目标检测中,所产生的roi数据的数量通常非常巨大。即便是在根据置信度进行阈值过滤之后,保留下来的roi数据的数量通常仍然很大。这导致针对roi数据的后处理通常涉及很大的计算量和功耗。

传统的用于处理roi数据的装置将所接收或生成的roi数据存储在诸如静态随机存取存储器(staticrandom-accessmemory,sram)、动态随机存取存储器(dynamicrandomaccessmemory,dram)这样的常规存储器中,然后由处理器按地址从这样的常规存储器中顺序地读取所存储的roi数据并执行处理。

如图1所示,传统的装置dev1可以包括存储器mem和处理器pu1。存储器mem用于存储所接收或生成的roi数据d1、……、dn(n通常为远大于1的整数)。

处理器pu1例如通过总线耦接到存储器mem,并且被配置为根据预定的程序指令执行处理逻辑pl1,其中,处理器pu1从存储器mem中读取roi数据di(1≤i≤n)和dj(i<j≤n),并且按照处理逻辑pl1进行处理,然后可以将处理结果rst(di,dj)输出到存储器mem中或者根据处理结果rst(di,dj)来更新存储器mem中的roi数据di和/或dj。例如,对于nms,处理逻辑pl1的一个示例可以如图2所示。

图2所示的处理逻辑pl1为两层循环的嵌套。在外层循环(通过变量i控制)中,每次先从存储器mem中读取roi数据di。针对每次读取的roi数据di,在roi数据di未被抑制的情况下,进入内层循环(通过变量j控制)。在内层循环中,先在从存储器mem中读取另一roi数据dj,然后判断di是否抑制dj,如果判断结果为“是”,则抑制dj。

如图3所示,由roi数据di表示的感兴趣区域bi和由roi数据dj表示的感兴趣区域bj在图像img可能是完全分离的。但是,图1或图2的示例中的处理器pu1仍然需要从存储器mem中读取roi数据dj并且判断di是否抑制dj。这造成了处理器pu1的不必要的资源浪费和功耗,进而导致处理器pu1的处理性能的劣化。要处理的roi数据的数量越多,即n越大,这样的性能劣化就越明显。

本公开的技术方案旨在至少部分地解决上述技术问题,使宝贵的处理器资源能够尽可能地避免无效操作,从而降低功耗并提高性能。

示例性装置

首先,参考图3至图8描述本公开的原理。

如图8所示,根据本公开的实施例的用于处理图像的多个感兴趣区域数据的装置dev2可以包括:

内容寻址存储器cam,被配置为根据基于前述多个感兴趣区域数据中的第一感兴趣区域数据中的位置数据的第一数据,确定前述多个感兴趣区域数据中的第二感兴趣区域数据;以及

处理器pu,被配置为针对前述第一感兴趣区域数据以及前述多个感兴趣区域数据中与前述第一感兴趣区域数据和由前述内容寻址存储器确定的每个第二感兴趣区域数据不同的第三感兴趣区域数据,执行删除感兴趣区域和合并感兴趣区域中的至少一个操作,前述第一感兴趣区域数据和任一第二感兴趣区域数据分别对应于在前述图像中分离的第一感兴趣区域和第二感兴趣区域。

作为根据本公开的实施例的装置处理的对象,第一roi数据可以指装置的处理器从内容寻址存储器中读取的一个当前要处理的roi数据;由内容寻址存储器根据前述的第一数据确定的第二roi数据的实际数量可以是0个、1个、2个或更多,甚至可能除第一roi数据之外的所有的roi数据都被确定为第二roi数据;相应地,与第一roi数据和第二roi数据不同的第三roi数据的数量也可以是0个、1个、2个或更多,甚至可能除第一roi数据之外的所有的roi数据都被确定为第三roi数据。

每个roi数据通常包含相同的数据字段并且具有相同的数据的表示格式和存储格式。例如,每个roi数据通常可以包括用于指示对应的roi在图像或图像序列中的位置的位置数据以及对应的roi的关于指定类别的置信度数据,其中,根据事先规定的图像坐标系的情况下,位置数据可以采用任何适当的表示形式并且可以包括任何适当的元素。

例如,如图3所示,可以按照通常的图像坐标系确定图像img中的每个像素点的坐标,即,将图像img的最左上角的像素设为图像坐标系的原点o,将从原点o开始且水平向右的方向设置为图像中的像素点的横坐标递增的方向x,并且将从原点o开始垂直向下的方向设置为图像中的像素点的纵坐标递增的方向y。于是,图像img上的每个像素均可以具有相应的坐标,这样的坐标可以包括相应的横坐标值和纵坐标值。

进一步地,对于图像img的任一roi,例如,可以使用该roi的边框上且处于某个对角线两端的两个顶点的坐标、或者roi的边框的某个角的顶点的坐标以及边框的长度和宽度、或者roi的边框的多个关键点的坐标、或者roi中的某个像素点以及边框的长度和宽度等数据的组合,作为该roi的位置数据。

在本文中,为了方便,以图3所示的通常的图像坐标系为例进行描述。然而,应当理解,本公开的技术方案可以不局限于上述的通常的图像坐标系,而且也不局限于roi数据中的位置数据的特定的表现形式、存储格式、数据内容等。

对于任何两个roi数据,可以根据它们中的位置数据确定它们各自对应的roi在图像或图像序列是否分离。

如图4所示,可以根据roi数据di中的位置数据确定对应的感兴趣区域bi的左侧边界(即,图4中bi的左侧加粗的边界)上的任一点pi的坐标(xi,yi),其中,xi和yi分别为点pi在图像img的图像坐标系中的横坐标值和纵坐标值;并且可以根据roi数据dj中的位置数据确定对应的感兴趣区域bj的右侧边界(即,图4中bj的右侧加粗的边界)上的任一点pj的坐标(xj,yj),其中,xj和yj分别为点pj在图像img的图像坐标系中的横坐标值和纵坐标值。

如图4所示,如果两个点pi和pj的横坐标值满足“小于”关系xj<xi,或者反过来,pi和pj的横坐标值满足“大于”关系xi>xj,则可以确定bi和bj在图像img上是分离的,即,两者不包含图像img上的相同像素,或者说,两者的交并比为0。相应地,对于roi数据di而言,可以过滤掉roi数据dj的诸如nms等处理将成为无效处理。

另外,如图5所示,对于感兴趣区域bi的上侧边界(即,图和中bi的上侧加粗的边界)上的任一点pi的坐标(xi,yi)和感兴趣区域bj的下侧边界(即,图5中bj的下侧加粗的边界)上的任一点pj的坐标(xj,yj),如果两个点pi和pj的纵坐标值满足“小于”关系yj<yi,或者反过来,pi和pj的纵坐标值满足“大于”关系yi>yj,则可以确定bi和bj在图像img上是分离的。

另外,如图6所示,对于感兴趣区域bi的右侧边界(即,图和中bi的右侧加粗的边界)上的任一点pi的坐标(xi,yi)和感兴趣区域bj的左侧边界(即,图5中bj的左侧加粗的边界)上的任一点pj的坐标(xj,yj),如果两个点pi和pj的横坐标值满足“大于”关系xj>xi,或者反过来,pi和pj的横坐标值满足“小于”关系xi<xj,则可以确定bi和bj在图像img上是分离的。

另外,如图7所示,对于感兴趣区域bi的下侧边界(即,图和中bi的下侧加粗的边界)上的任一点pi的坐标(xi,yi)和感兴趣区域bj的上侧边界(即,图5中bj的上侧加粗的边界)上的任一点pj的坐标(xj,yj),如果两个点pi和pj的纵坐标值满足“大于”关系yj>yi,或者反过来,pi和pj的纵坐标值满足“小于”关系yi<yj,则可以确定bi和bj在图像img上是分离的。

可以将处理器配置为能够根据各roi数据中的位置数据确定它们各自对应的roi在图像或图像序列是否分离。然而,这样的处理逻辑的时间复杂度很高,在要处理的roi数据的数量很大(例如,通常在数万、数十万这样的数量级)的情况下,处理器的性能将显著劣化,并且将增加额外的功耗。在诸如人工智能芯片这样的对于性能和功耗要求都很高的应用场景下,处理器的性能劣化和功耗的增加总是不被期望的。

为此,与图1所示的传统的处理装置不同,在根据本公开的实施例的装置中设置内容寻址存储器。

如图8所示,与图1中的常规存储器mem相同,根据本公开的实施例的装置dev2中的cam也可以支持常规的写模式和读模式,从而支持roi数据的写入和读取。例如,可以控制cam进入写模式,并将多个roi数据d1、……、dn存储/写入到cam中。

除了写模式和读模式之外,根据本公开的实施例的装置dev2中的cam还可以支持查询模式。在查询模式下,cam可以根据所接收的与内容有关的查询关键词或数据,从所存储的多个roi数据中查找符合匹配条件的roi数据。

根据不同的实施例,cam的模式转换可以通过例如信号、开关等各种不同的方式触发和/或控制。例如,cam的模式转换可以在处理器pu2的控制下完成。例如,处理器pu2可以从cam中读取多个roi数据d1、……、dn(n为任意自然数)中的第一roi数据di(i为小于或等于n的任意自然数),并且可以根据第一roi数据di中的位置数据确定第一数据ki(di),然后可以通过向cam发出控制信号和/或提供第一数据ki(di)等方式,控制cam进入查询模式,并且可以将第一数据ki(di)作为查询关键词提供给cam。

在查询模式下,cam可以根据所接收的第一数据ki(di),从所存储的多个roi数据d1、……、dn中确定满足匹配条件的第二roi数据dj,其中,匹配条件是根据cam的电路设计和第一数据ki(di)确定的,并且应当能够被处理器pu2解释为由第一roi数据di表示的第一roi和由每个第二roi数据dj表示的每个第二roi在图像中是分离的,即,第一roi和每个第二roi在图像中不包括相同的像素。

应当理解,“符合匹配条件”可以意味着两个roi在图像中是分离的,但是“不符合匹配条件”并不意味着两个roi在图像中具有重合部分。然而,在一些实施例中,取决于第一数据ki(di)的确定方式和/或cam的设计方式,根据本公开的实施例的cam可以根据位置数据准确地判断任何两个roi数据对应的roi是否有重合部分。

根据不同的实施例,cam可以采用任何适当的方式输出任何适当形式的查询结果。例如,cam可以一次性地或者分批地或者逐个地输出符合匹配条件的roi数据的存储地址,和/或,一次性地或者分批地或者逐个地输出不符合匹配条件的roi数据的存储地址。在此基础上,或者替代地,如图4所示,cam还可以输出与每个所存储的roi数据相关的标志,以便指示对应的roi数据是否符合匹配条件。

在本文中,将与任意roi数据d的标志记为f(d),并且用“f(d)==m”表示“对应的roi数据d符合匹配条件”,用“f(d)==u”表示“对应的roi数据d不符合匹配条件”。例如,在图4中,f(d1)、f(dj)、f(dk)和f(dn)可以分别表示roi数据d1、dj、dk和dn的各自的标志,“f(dj)==m”可以表示roi数据dj符合匹配条件,并且“f(dk)==u”可以表示roi数据dk不符合匹配条件。为了简洁,在图4中省略了一些roi数据的标志以及一些标志的值,例如f(d1)和f(dn)。

根据不同的实施例,所输出的每个roi数据的标志可以具有任何形式的值,只要能够清楚地指示对应的roi数据是否符合匹配条件即可。例如,可以使用二进制数字“1”和“0”中的一个表示m并且使用另一个表示u。在另外的实施例中,roi数据的标志还可以具有不同于m和u的另外的值。例如,roi数据的标志可以具有用于指示“忽略对应的roi数据”的值。

根据不同的实施例,每个roi数据的标志可以通过任何适当的形式输出。例如,可以用高电平信号和低电平信号中的一个表示m,并用另一个表示u;也可以使用不同的电压值或电压范围表示标志的不同值;也可以输出一个二进制数的序列,其中每个比特可以指示一个roi数据的标志;等等。

然后,如图8所示,处理器pu2可以接收来自cam的一个或多个roi数据的标志f(d),并且可以根据所接收的各个标志f(d),确定与第一roi数据di和每个第二roi数据dj不同的第三roi数据dk(1≤k≤n,k≠i,并且k≠j)。这样的第三roi数据dk的标志f(dk)==u,即,第三roi数据dk不符合匹配条件。

然后,处理器pu2可以从cam中读取第三roi数据dk,并针对第一roi数据di和第三roi数据dk,执行诸如nms、计算交并比、删除感兴趣区域、合并感兴趣区域等一个或多个处理。

然后,pu2可以将处理结果rst(di,dk)反馈给cam。根据不同的实施例,这样的反馈结果rst(di,dk)可以包括但不限于用于控制从cam中删除所存储的di或dk的信息和/或数据、用于控制更新cam中存储的di和/或dk的信息和/或数据等。

在根据本公开的实施例的装置中,例如在图8所示的示例装置dev2中,在处理器pu2开始操作以执行诸如nms等操作之前,先利用由cam的硬件提供的数据内容查询功能,通过向cam提供根据第一roi数据di中的位置数据确定的第一数据ki(di),使cam的硬件自动地根据所接收的与位置数据有关的查询关键词对所存储的roi数据进行分类,例如,分为诸如dj这样的“符合匹配条件”(f(d)==m)的roi数据以及诸如dk这样的“不符合匹配条件”(f(d)==u)的roi数据;然后,处理器pu2可以根据cam的查询输出,过滤掉诸如dj这样的“符合匹配条件”的roi数据,而只读取与第一roi数据di和诸如dj这样的每个“符合匹配条件”的第二roi数据不同的“不符合匹配条件”的第三roi数据dk,并只针对第一roi数据di和第三roi数据dk执行有效操作。

利用cam的硬件特性,上述的数据分类可以由cam的硬件自动地、一次性完成,几乎没有任何额外的时间成本;而处理器pu2则能够至少省去根据两个roi数据中的位置数据确定对应的两个roi是否分离的判断,并且要执行的处理逻辑从必须处理所有的roi数据d1、……、dn变为只需要处理部分roi数据,并且因此可以具有更低的功耗。

由此,根据本公开的实施例的装置能够通过更低的功耗获得更高的处理效率,而且要处理的roi数据的数量越大,这种处理效率的提升和功耗的节省就越明显。

下面结合示例描述根据本公开的实施例的装置的更多细节。

如图9所示,在一个实施例中,根据本公开的实施例的装置中的内容寻址存储器cam可以包括:

多个存储单元c1至cn(n为正整数),被配置为存储前述多个感兴趣区域数据;

第一寄存器reg1,被配置为在查询模式下存储前述第一数据;

与前述多个存储单元c1至cn对应配置的多个比较逻辑电路cmp1至cmpn,每个比较逻辑电路被配置为在前述第一数据和基于对应的存储单元中的感兴趣区域数据中的位置数据的第二数据满足预定大小关系的情况下,输出指示对应的存储单元中的感兴趣区域数据是前述第二感兴趣区域数据的信号;以及

与前述多个比较逻辑电路cmp1至cmpn对应配置的多个第二寄存器reg21至reg2n,每个第二寄存器被配置为存储与对应的比较逻辑电路所输出的信号相对应的标志。

第一寄存器reg1可以在cam的查询模式下接收并存储前面参考图8所述的第一数据ki(di),并且其输出端可以耦接到比较逻辑电路cmp1至cmpn中的每个比较逻辑电路的一个输入端。

存储单元c1至cn用于存储roi数据。在一个实施例中,每个存储单元可以存储一个roi数据。在另外的实施例中,在图9中示出的存储单元c1至cn中的每一个可以是cam中的每个实际存储单元的一部分,并且可以存储例如相应的roi数据中的位置数据、或者相应的位置数据中的例如指示相应roi中的特定点的横坐标值和/或纵坐标值这样的数据项。如图9所示,每个存储单元的输出端可以耦接到对应的比较逻辑电路的另一个输入端。

对于第二寄存器reg21至reg2n中的任一第二寄存器reg2r,其可以存储与对应的比较逻辑电路cmpr所输出的信号相对应的标志,例如前述的m或u。在一个实施例中,第二寄存器reg21至reg2n中的每一个可以是单独的寄存器。在另外的实施例中,可以设置一个或多个寄存器,第二寄存器reg21至reg2n中的每一个可以对应于这样的一个或多个寄存器的每个比特或每组比特。

在图9的示例中,比较逻辑电路cmp1至cmpn中的每一个被配置为实现“小于”比较逻辑。也就是说,比较逻辑电路cmp1至cmpn中的任一比较逻辑电路cmpr(1≤r≤n)可以被配置为在经由其第一输入端接收的数据小于在经由其第二输入端接收的数据的情况下,输出用于指示存储单元cr中的roi数据符合匹配条件并且因此可以被标记为或者作为前述的第二roi数据的信号。

在第一实施例中,对于比较逻辑电路cmp1至cmpn中的任一比较逻辑电路cmpr,其第一输入端可以是耦接到对应的存储单元cr的输出端的输入端,其第二输入端可以是耦接到第一寄存器reg1的输出端的输入端。由此,比较逻辑电路cmpr可以为在经由其第一端接收的数据(例如,对应的存储单元cr中存储的roi数据中的位置数据,或者在存储单元cr中存储的roi数据中的指定数据项,或者根据对应的存储单元cr中存储的roi数据中的位置数据确定的数据项)小于经由其第二端接收的数据(即,第一寄存器reg1中的数据)的情况下,输出用于指示存储单元cr中的roi数据符合匹配条件并且因此可以被标记为或者作为前述的第二roi数据的信号。

在第二实施例中,对于任一比较逻辑电路cmpr,其第二输入端可以是耦接到对应的存储单元cr的输出端的输入端,其第一输入端可以是耦接到第一寄存器reg1的输出端的输入端。由此,比较逻辑电路cmpr可以为在经由其第一端接收的数据(即,第一寄存器reg1中的数据)小于经由其第二端接收的数据(例如,对应的存储单元cr中存储的roi数据中的位置数据,或者在存储单元cr中存储的roi数据中的指定数据项,或者根据对应的存储单元cr中存储的roi数据中的位置数据确定的数据项)的情况下,输出用于指示存储单元cr中的roi数据符合匹配条件并且因此可以被标记为或者作为前述的第二roi数据的信号。

在第三实施例中,还可以在第一寄存器reg1与比较逻辑电路cmp1至cmpn中的每一个之间以及每个存储单元与对应的比较逻辑电路之间设置切换开关,从而根据需要预先或实时地在第一实施例和第二实施例中描述的两种耦接方式之间进行切换。

图10示出根据本公开的实施例的cam的另一个示例,其中的第一寄存器reg1、存储单元c1至cn(n为正整数)和第二寄存器reg21至reg2n等与图9的示例中的情况相似,重复之处不再赘述。

与图9的示例中的cam不同的是,图10中的比较逻辑电路cmp’1至cmp’n中的每一个被配置为实现“大于”比较逻辑。也就是说,图10的示例中的比较逻辑电路cmp’1至cmp’n中的任一比较逻辑电路cmp’r可以被配置为可以被配置为在经由其第一输入端接收的数据大于在经由其第二输入端接收的数据的情况下,输出用于指示存储单元cr中的roi数据符合匹配条件并且因此可以被标记为或者作为前述的第二roi数据的信号。

在第四实施例中,对于比较逻辑电路cmp’1至cmp’n中的任一比较逻辑电路cmp’r,其第一输入端可以是耦接到对应的存储单元cr的输出端的输入端,其第二输入端可以是耦接到第一寄存器reg1的输出端的输入端。由此,比较逻辑电路cmp’r可以为在经由其第一端接收的数据(例如,对应的存储单元cr中存储的roi数据中的位置数据,或者在存储单元cr中存储的roi数据中的指定数据项,或者根据对应的存储单元cr中存储的roi数据中的位置数据确定的数据项)大于经由其第二端接收的数据(即,第一寄存器reg1中的数据)的情况下,输出用于指示存储单元cr中的roi数据符合匹配条件并且因此可以被标记为或者作为前述的第二roi数据的信号。

在第五实施例中,对于任一比较逻辑电路cmp’r,其第二输入端可以是耦接到对应的存储单元cr的输出端的输入端,其第一输入端可以是耦接到第一寄存器reg1的输出端的输入端。由此,比较逻辑电路cmp’r可以为在经由其第一端接收的数据(即,第一寄存器reg1中的数据)大于经由其第二端接收的数据(例如,对应的存储单元cr中存储的roi数据中的位置数据,或者在存储单元cr中存储的roi数据中的指定数据项,或者根据对应的存储单元cr中存储的roi数据中的位置数据确定的数据项)的情况下,输出用于指示存储单元cr中的roi数据符合匹配条件并且因此可以被标记为或者作为前述的第二roi数据的信号。

在第六实施例中,与前述的第三实施例相似地,也可以在第一寄存器reg1与比较逻辑电路cmp’1至cmp’n中的每一个之间以及每个存储单元与对应的比较逻辑电路之间设置切换开关,从而根据需要预先或实时地在第四实施例和第五实施例中描述的两种耦接方式之间进行切换。

另外,还可以将图9和图10的示例结合在一起。如图11所示,在任一存储单元cr与对应的第二寄存器reg2r之间的路径上设置的比较逻辑电路cmp”r可以包括至少一个如图9所示的“小于”比较逻辑电路cmpr、至少一个如图10所示的“大于”比较逻辑电路cmp’r以及或门元件o,其中,cmpr的两个输出端可以分别耦接到第一寄存器reg1的第一部分p’1和存储单元cr的第一部分p1,cmp’r的两个输出端可以分别耦接到第一寄存器reg1的第二部分p’2和存储单元cr的第二部分p2,cmpr的输出端和cmp’r的输出端分别耦接到或门元件o的两个输入端,并且或门元件o的输出端耦接到第二寄存器reg2r。由此,在第一寄存器reg1的第一部分p’1和存储单元cr的第一部分p1中的数据满足预定的“小于”关系或者第一寄存器reg1的第二部分p’2和存储单元cr的第二部分p2中的数据满足预定的“大于”关系的情况下,比较逻辑电路cmp”r可以输出用于指示存储单元cr中的roi数据符合匹配条件并且因此可以被标记为或者作为前述的第二roi数据的信号。

在不同的实施例中,第一寄存器reg1的第一部分p’1和存储单元cr的第一部分p1与cmpr之间的耦接方式以及第一寄存器reg1的第二部分p’2和存储单元cr的第二部分p2与cmp’r之间的耦接方式可以参考上述第一实施例至第六实施例适当地设置。

假设任一roi数据中的位置数据包括对应的roi在例如图3所示的图像坐标系中的左上角顶点的横坐标值和纵坐标值以及右下角顶点的横坐标值和纵坐标值,则在根据本公开的实施例的cam中,在任一存储单元cr与对应的第二寄存器reg2r之间的路径上设置的比较逻辑电路cmp”r可以如图12所示,其中,比较逻辑电路cmp”r中用于实现“小于”关系判断的部件可以是图9或图11中的比较逻辑电路cmpr,而比较逻辑电路cmp”r中用于实现“大于”关系判断的部件可以是图10或图11中的比较逻辑电路cmp’r。

如图12所示,例如,可以根据当前的第一roi数据中的位置数据确定的第一roi的左上角顶点的横坐标值xi1和纵坐标值yi1以及右下角顶点的横坐标值xi2和纵坐标值yi2,并将确定出的各个数据项存储到第一寄存器reg1中。由此,根据本公开的实施例的cam能够自动地根据第一roi数据对应的第一roi的左上角顶点横坐标值xi1和存储单元cr中的roi数据对应的roi的右下角顶点的横坐标值xr2(另请参考图4),或者自动地根据第一roi数据对应的第一roi的左上角顶点纵坐标值yi1和存储单元cr中的roi数据对应的roi的右下角顶点的纵坐标值yr2(另请参考图5),或者自动地根据第一roi数据对应的第一roi的右下角顶点横坐标值xi2和存储单元cr中的roi数据对应的roi的左上角顶点的横坐标值xr1(另请参考图6),或者自动地根据第一roi数据对应的第一roi的右下角顶点纵坐标值yi2和存储单元cr中的roi数据对应的roi的左上角顶点的纵坐标值yr1(另请参考图7),确定存储单元cr中的roi数据是否为第二roi数据。

如图11或图12所示,第一寄存器reg1可以存储多个数据项。在这样的情况下,在一个实施例中,第一寄存器reg1可以包括多个寄存器,其中每个寄存器用于存储一个数据项;在另外的实施例中,第一寄存器reg1可以包括一个寄存器,并使用掩码屏蔽其他数据项(可能地,还包括移位),然后向比较逻辑电路提供数据。类似地,存储单元cr也可以包括一个或多个部分,并且其中存储的数据也可以在经过掩码(可能地,还包括移位)操作和/或进一步地转换之后提供给对应的比较逻辑电路。

如上所述,与传统的实现“等于”或“不等于”的比较逻辑的cam不同,根据本公开的实施例的cam中的每个比较逻辑电路可以被配置为实现预定的“大小关系”的比较逻辑,即,根据本公开的实施例的cam中的每个比较逻辑电路可以被配置为实现“小于”比较逻辑(例如,图9的示例)或者“大于”比较逻辑(例如,图10的示例),或者针对根据位置数据确定的一类数据项(例如,横坐标值和纵坐标值中的一个)实现“小于”逻辑并且针对根据位置数据确定的另一类数据项(例如,横坐标值和纵坐标值中的另一个)实现“大于”逻辑(例如,图11或图12的示例)。

由此,根据本公开的实施例的cam能够针对例如在图4至图7中所示的情况,根据roi数据中的位置数据,判断两个roi数据对应的roi在图像或图像序列中是否分离。而且,只要控制cam进入查询模式并且对其提供适当的查询关键词(即,reg1中的数据),根据本公开的实施例的cam就在无需另外的逻辑控制的情况下,自动且快速地针对每个存储单元中的数据完成上述判断。

如上所述,根据本公开的实施例的cam可以在处理器pu2(参见图8)的控制下进入查询模式,并且cam在查询模式下所需的查询关键词(例如,图8的示例中的第一数据ki(di))可以由处理器pu2来确定和提供。

例如,与图9的cam或者图11或图12中的实现小于比较逻辑的cam相配合地,根据本公开的实施例的装置中的处理器(例如图8的示例中的处理器pu2)可以被配置为将根据第一roi数据(例如图8的示例中的di)中的位置数据确定的第一roi在图像的图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值作为第一数据(例如图8的示例中的ki(di))提供给cam。然后,cam的每个比较逻辑电路可以在第二数据小于第一数据的情况下,输出指示对应的存储单元中的roi数据是第二roi数据的信号,其中,第二数据可以表示根据对应的roi数据中的位置数据确定的对应的roi在前述图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值。

例如,与图10的cam或者图11或图12中的实现大于比较逻辑的cam相配合地,根据本公开的实施例的装置中的处理器(例如图8的示例中的处理器pu2)可以被配置为将根据第一roi数据(例如图8的示例中的di)中的位置数据确定的第一roi在图像的图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值作为第一数据(例如图8的示例中的ki(di))提供给cam。然后,cam的每个比较逻辑电路可以在第二数据大于第一数据的情况下,输出指示对应的存储单元中的roi数据是第二roi数据的信号,其中,第二数据可以表示根据对应的roi数据中的位置数据确定的对应的roi在前述图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值。

处理器pu2在读取第一roi数据di之后,可以通过简单的处理逻辑确定第一数据ki(di),例如,通过读取di中与第一数据ki(di)相对应的字段确定第一数据ki(di)。然后,可以向cam发出进入查询模式的信号,并将第一数据ki(di)作为查询关键词提供给cam。由此,cam可以在处理器pu2的控制下进入查询模式,以便利用其自身的硬件特性,自动且快速地使用第一寄存器reg1中的数据来比对每个存储单元中的对应的数据。然后,处理器pu2可以根据来自cam的反馈结果,过滤掉对应的roi与第一roi数据对应的第一roi之间的交并比为0的所有第二roi数据,从而可以减少不必要的计算,减少时间消耗,进而可以提高处理性能并减小功耗。

在另外的实施例中,根据本公开的实施例的装置(例如,图8的示例中的装置dev2)中的cam也可以采用常规的三态内容寻址存储器tcam。

如图13所示,在这样的情况下,前述的第一数据ki(di)可以包括供tcam在查询模式中使用的参考数据refi和掩码mai,并且处理器pu2可以被配置为根据基于第一roi数据di中的位置数据确定的坐标数据,确定参考数据refi和掩码mai。

在一个实施例中,坐标数据可以表示第一roi在图像的图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值。在这样的情况下,参考数据refi与掩码mai之间的逻辑或的结果和参考数据refi可以均小于该坐标数据。然后,对于每个存储单元中的roi数据,tcam可以在根据该roi数据中的位置数据确定的对应的roi在图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值满足取决于第一数据ki(di)和tcam中的匹配逻辑电路设计的匹配条件的情况下,确定该roi数据是第二roi数据。

例如,假设坐标数据表示第一roi的左边界点的横坐标,并且其对应的二进制数值为10101100,则可以确定参考数据refi与掩码mai,使得参考数据refi与掩码mai之间的逻辑或的结果和参考数据refi均小于该坐标数据,例如refi=10000000并且mai=00011111。于是,tcam可以确定对应的roi的右边界点的横坐标值符合100xxxxx格式(其中,“x”表示“不关注位”)的所有roi数据,作为第二roi数据。显然,每个第二roi数据表示的第二roi的右边界点的横坐标值小于与第一roi相关的坐标数据10101100,因此每个第二roi与第一roi在图像中是分离的。

在另一个实施例中,坐标数据也可以表示第一roi在图像的图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值。在这样的情况下,掩码mai的反码与参考数据refi之间的逻辑与的结果和参考数据refi可以均大于该坐标数据。然后,对于每个存储单元中的roi数据,tcam可以在根据该roi数据中的位置数据确定的对应的roi在图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值满足取决于第一数据ki(di)和tcam中的匹配逻辑电路设计的匹配条件的情况下,确定该roi数据是第二roi数据。

例如,假设坐标数据表示第一roi的右边界点的横坐标,并且其对应的二进制数值为10101100,则可以确定参考数据refi与掩码mai,使得掩码mai的反码与参考数据refi之间的逻辑与的结果和参考数据refi均大于该坐标数据,例如refi=10110000并且mai=01001111。于是,tcam可以确定对应的roi的左边界点的横坐标值符合1x11xxxx格式(其中,“x”表示“不关注位”)的所有roi数据,作为第二roi数据。显然,每个第二roi数据表示的第二roi的左边界点的横坐标值大于与第一roi相关的坐标数据10101100,并且因此每个第二roi与第一roi在图像中是分离的。

也就是说,在使用tcam的情况下,可以通过向tcam提供适当的第一数据ki(di),实现与前文参考图9至图12的示例所述的cam相似的功能。

取决于所确定的参考数据refi和掩码mai,tcam反馈给处理器pu2的第二roi数据的集合可以是前文参考图9至图12的示例所述的cam能够反馈给处理器pu2的第二roi数据的集合的不同规模的子集。然而,使用tcam仍然能够在程度中减少处理器pu2的运算量。而且,由于可以使用常规的tcam,因此相比于前文参考图9至图12描述的实施例(其中,需要开发和使用根据本公开的实施例的专用cam),可以省去硬件设计和生产上的成本。

如图8或图13所示,处理器pu2根据来自cam或tcam的反馈,过滤掉第二roi数据(即,对应的标志f为m的roi数据),选择与第一roi数据di和每个第二roi数据dj不同的第三roi数据dk,将针对第一roi数据di和第三roi数据dk执行后续处理。

这样的后续处理可以包括但不限于计算两个roi数据对应的roi之间的交并比、roi数据删除、roi数据合并等操作。

在一个实施例中,处理器pu2还可以被配置为根据第一roi数据和第三roi数据,确定第一roi与第三roi数据对应的第三roi之间的交并比所属的数值区间,然后可以根据所确定的数值区间,确定用于对第三roi数据的置信度进行抑制的衰减系数。

例如,可以将交并比的范围[0,1]按照相同或不同的步长划分成至少两个子区间,例如{[0,δ1),[δ1,δ1+δ2),……,[σ1≤i≤n-1δi,1]},其中,n为大于1的整数,各个δ(例如,δ1、δ2等)的值可以相同,也可以不同。应当理解,各子区间的划分方式不局限于该示例。

针对每个子区间,可以预先确定对应的衰减系数,并且可以将用于反映各子区间与衰减系数之间的对应关系的查找表存储在存器中。在针对第一roi和第三roi计算出交并比之后,可以通过查表的方式,直接确定对应的衰减系数,并且例如可以通过将第三roi数据的置信度乘以所查找到的衰减系数,对第三roi数据的置信度进行抑制(也称为soft-nms)。

与通常的例如通过下面的式a或式b来确定衰减系数的方式不同,在根据本公开的实施例的方案中,通过查表的操作确定衰减系数,而不需要执行除法运算或指数运算。例如,由于交并比为小于1的数值,因此在实现式a和/或b的过程中将涉及除法运算,并且在实现式b中还将涉及指数运算,这些运算的硬件实现方式成本很高,将增加硬件的面积,但仍需消耗很多时间。由于根据本公开的实施例的方案无需执行除法运算或指数运算,所以根据本公开的实施例的方案的硬件成本较低,并且执行效率也高得多。

根据不同的实施例,可以通过提供高精细的查找表(例如,通过提供更精细的区间划分方式),来满足更高的精度需求。也就是说,可以根据需要调节精度。

以上示出了根据本公开的实施例的处理图像的多个感兴趣区域数据的装置的一些示例。应当理解,根据本公开的实施例的装置不局限于上述示例。

例如,除了前文参考图8至图13等描述的cam之外,本公开的实施例的装置还可以包括一个或多个另外的内容寻址存储器,用于针对roi数据中的另外的数据项进行分类,并且可以通过包括多个与元件的与逻辑电路将这样的一个或多个内容寻址存储器的输出与根据本公开的实施例的cam或tcam的输出进行合并。

图14示出根据本公开的实施例的处理图像的多个感兴趣区域数据的装置的另一个示例。在该示例中,除了在前面的示例中描述的处理器pu2以及cam或tcam之外,装置dev2还可以包括一个或多个另外的内容寻址存储器cam’/tcam’。

这样的每个cam’/tcam’可以是常规的cam或tcam,也可以是根据本公开的实施例的cam,并且例如可以存储每个roi数据中的指定的一个或多个数据项,例如与类别有关的数据项。相应地,根据本公开的实施例的cam/tcam中可以存储位置数据。

然后,对于当前的第一roi数据di,处理器pu2可以确定与位置数据有关的检索关键词ki(di)(参见前文描述的示例)以及与例如类别有关的检索关键词k’i(di),并控制cam’/tcam’以及cam/tcam进入查询模式。

然后,cam/tcam在查询模式下可以例如按照前文参照图8至图13描述的示例中那样操作,并针对roi数据d1至dn中的每个roi数据输出对应的标志f(d1)至f(dn)。cam’/tcam’在查询模式下可以自动地判断每个存储单元中的数据是否匹配所接收的检索关键词k’i(di),并且相应地输出用于指示匹配结果的标志f’(d1)至f’(dn)。

如图14所示,装置dev2还可以包括与逻辑电路(图14中用虚线框表示的部分),其中可以包括与cam’/tcam’和cam/tcam的每个输出相对应的与门元件a1至an。例如,与门元件a1的两个输入端可以分别耦接至cam’/tcam’的f’(d1)的输出端和cam/tcam的f(d1)的输出端,并且与门元件a1的输出端可以耦接到处理器pu2,由此,cam/tcam的各个标志的输出端可以间接地耦接到处理器pu2。

通过图14所示的装置,可以通过硬件自动地挑选或过滤掉同时满足多个匹配条件的roi数据。

在另外的示例中,代替上述的与逻辑电路,或者在上述的与逻辑电路的基础上,可以包括或设计另外的(例如,更复杂的)逻辑电路,例如包括或、异或等元件的逻辑电路,从而实现其他逻辑判断。

示例性方法

图14示出根据本公开的实施例的处理图像的多个感兴趣区域数据的方法的示例流程,该方法可以由根据本公开的实施例的处理图像的多个感兴趣区域数据的装置(例如,上述的装置dev2)执行,或者可以用于控制根据本公开的实施例的装置执行相应的操作。

如图14所示,根据本公开的实施例的方法可以包括:

步骤s10,由处理器根据多个roi数据中的第一roi数据中的位置数据,确定供内容寻址存储器(cam)在查询模式中使用的第一数据;

步骤s20,控制cam进入查询模式,以根据第一数据确定前述多个roi数据中的第二roi数据;以及

步骤s30,由处理器针对第一roi数据以及前述多个roi数据中与第一roi数据和每个第二roi数据不同的第三roi数据,执行包括roi删除和roi合并中的至少一个的处理,其中,第一roi数据和任一第二roi数据分别对应于在图像中分离的第一roi和第二roi。

在根据本公开的实施例的方法中,在处理器开始操作以执行诸如nms等操作之前,先利用由cam的硬件提供的数据内容查询功能,通过向cam提供根据第一roi数据di中的位置数据确定的第一数据ki(di),使cam的硬件自动地根据所接收的与位置数据有关的查询关键词对所存储的roi数据进行分类。然后,处理器可以根据cam的查询输出,过滤掉诸如dj这样的“符合匹配条件”的roi数据,而只读取与第一roi数据di和诸如dj这样的每个“符合匹配条件”的第二roi数据不同的“不符合匹配条件”的第三roi数据dk,并只针对第一roi数据di和第三roi数据dk执行有效操作。

利用cam的硬件特性,上述的数据分类可以由cam的硬件自动地、一次性迅速地完成,几乎没有任何额外的时间成本;而处理器则能够至少省去根据两个roi数据中的位置数据确定对应的两个roi是否分离的判断,并且要执行的处理逻辑从必须处理所有的roi数据d1、……、dn变为只需要处理部分roi数据,并且因此可以具有更低的功耗。

由此,能够通过更低的功耗获得更高的处理效率,而且要处理的roi数据的数量越大,这种处理效率的提升和功耗的节省就越明显。

在根据本公开的实施例的方法中使用的cam可以是前文例如参考图8至图12描述的示例中的cam。

相应地,在一个实施例中,前述的第一数据可以包括或对应于根据第一roi数据中的位置数据确定的第一roi在图像的图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值,并且相应地,根据第二roi数据中的位置数据确定的第二roi在图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值可以小于前述第一数据。

由此,根据本公开的实施例的方法能够针对例如在图4和图5中所示的情况,利用cam的硬件特性,根据roi数据中的位置数据,自动且快速地判断两个roi数据对应的roi在图像或图像序列中是否分离。

在另一个实施例中,前述的第一数据可以包括或对应于根据第一roi数据中的位置数据确定的第一roi在图像的图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值,并且相应地,根据第二roi数据中的位置数据确定的第二roi在图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值可以大于前述第一数据。

由此,根据本公开的实施例的方法能够针对例如在图6和图7中所示的情况,利用cam的硬件特性,根据roi数据中的位置数据,自动且快速地判断两个roi数据对应的roi在图像或图像序列中是否分离。

另外,在根据本公开的实施例的方法中使用的cam也可以三态内容寻址存储器(tcam),例如前文参照图13描述的示例中的tcam,并且前述的第一数据可以包括供tcam在查询模式中使用的参考数据和掩码。

相应地,在一个实施例中,参考数据和所述掩码是根据基于第一roi数据中的位置数据确定的坐标数据确定的,该坐标数据可以表示第一roi在图像的图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值,其中,掩码的反码与参考数据之间的逻辑与的结果和参考数据均大于坐标数据,并且根据第二roi数据中的位置数据确定的第二roi在图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值满足取决于第一数据和tcam中的匹配逻辑电路设计的匹配条件。

由此,根据本公开的实施例的方法能够针对例如在图4和图5中所示的情况,利用tcam的硬件特性,根据roi数据中的位置数据,自动且快速地判断两个roi数据对应的roi在图像或图像序列中是否分离。

在另一个实施例中,参考数据和所述掩码是根据基于第一roi数据中的位置数据确定的坐标数据确定的,该坐标数据可以表示第一roi在图像的图像坐标系中的左边界点的横坐标值或上边界点的纵坐标值,其中,参考数据与掩码之间的逻辑或的结果和参考数据均小于坐标数据,并且根据第二roi数据中的位置数据确定的第二roi在图像坐标系中的右边界点的横坐标值或下边界点的纵坐标值满足取决于第一数据和tcam中的匹配逻辑电路设计的匹配条件。

由此,根据本公开的实施例的方法能够针对例如在图4和图5中所示的情况,利用tcam的硬件特性,根据roi数据中的位置数据,自动且快速地判断两个roi数据对应的roi在图像或图像序列中是否分离。

取决于所确定的参考数据和掩码,tcam反馈给处理器的第二roi数据的集合可以是前文参考图9至图12的示例所述的cam能够反馈给处理器的第二roi数据的集合的不同规模的子集。然而,使用tcam仍然能够减少处理器的运算量。而且,由于可以使用常规的tcam,因此可以省去硬件设计和生产上的成本。

另外,例如在步骤s30中或者在步骤s30中,根据本公开的实施例的方法还可以包括:根据第一roi数据和第三roi数据,确定第一roi与第三roi数据对应的第三roi之间的交并比所属的数值区间;以及根据所确定的数值区间,确定用于对第三roi数据的置信度进行抑制的衰减系数。

由此,在根据本公开的实施例的方案中,可以通过查表的操作确定衰减系数,而不需要执行除法运算或指数运算,从而非常有利于硬件实现。另外,根据不同的实施例,可以通过提供高精细的查找表(例如,通过提供更精细的区间划分方式),来满足更高的精度需求。也就是说,可以根据需要调节精度。

示例性电子设备

图15示出根据本公开的实施例的电子设备的示例.

如图15所示,该电子设备ed包括前文所述的根据本公开的实施例的装置dev2。

另外,电子设备ed还可以包括一个或多个另外的处理器(未示出),这些另外的处理器可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备ed中的其他组件以执行期望的功能和/或与装置dev2相配合以实现期望的功能。

如图15所示,电子设备ed还可以包括存储器str。存储器str可以存储一个或多个计算机程序产品,并且可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪速存储器等。

装置dev2或者前述的另外的一个或多个处理器可以读取例如在str中存储的一个或多个计算机程序指令并运行,以实现上文所述的本公开的各个实施例的方法以及/或者其他期望的功能。

如图15所示,在一些实施例中,电子设备ed还可以包括输入装置inp和输出装置outp,其中,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。根据不同的实施例,输入设备inp可以包括例如键盘、鼠标等,并且输出装置outp可以并且可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等以便向外部输出各种信息。

为了简化,图15中仅示出了该电子设备ed中的一些示例性部件,而省略了诸如总线、输入/输出接口等的其他组件。除此之外,根据具体应用情况,电子设备ed还可以包括任何其他适当的组件。

示例性计算机程序产品和计算机可读存储介质

除了前述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,该计算机程序指令在被处理器运行时使得处理器执行本说明书前述“示例性方法”部分中描述的根据本公开各种实施例的方法中的步骤。

计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,程序设计语言可以包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。

此外,本公开的实施例还可以是计算机可读存储介质,例如计算机可读取的非临时性存储介质,其上存储有程序指令,程序指令在被处理器运行时使得处理器执行本说明书前述“示例性方法”部分中描述的根据本公开各种实施例的方法中的步骤。

计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪速存储器)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者前述的任意合适的组合。

以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,前述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,前述细节并不限制本公开为必须采用前述具体的细节来实现。

本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。

还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。

在本文中,诸如“第一”、“第二”等不带有量词的修饰词旨在用于区分不同的元件/部件/电路/模块/装置/步骤,而不用于强调次序、位置关系、重要程度、优先级别等。与此不同,诸如“第一个”、“第二个”等带有量词的修饰词可以用于强调不同的元件/部件/电路/模块/装置/步骤的次序、位置关系、重要程度、优先级别等。

提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。

为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1