基于图像的位置检测方法、装置、设备及存储介质与流程

文档序号:16323219发布日期:2018-12-19 05:47阅读:187来源:国知局
基于图像的位置检测方法、装置、设备及存储介质与流程

本申请实施例涉及人工智能技术领域,尤其涉及一种基于图像的位置检测方法、装置、设备及存储介质。

背景技术

随着社会智能化的推进,无人超市作为一种新的零售方式被广泛关注。目前,无人超市的相关技术还不是很成熟,尤其是如何通过多摄像头判断顾客位置并持续位置跟踪是一个难点。

目前的解决办法主要是通过人体关键点检测的方法来获得人体所在图像区域的矩形框,通过该矩形框来定位和跟踪人体位置,该矩形框的准确性非常依赖关键点的准确性,一旦关键点漏检或误检,就会造成矩形框即人体定位的不准确。



技术实现要素:

本申请实施例提供一种基于图像的位置检测方法、装置、设备及存储介质,用以提高生物体在图像中二维位置和实际环境中三维位置的定位准确性。

本申请实施例第一方面提供一种基于图像的位置检测方法,包括:获取架设在不同方位的多个拍摄设备在同一时刻拍摄获得的图像,其中,所述多个拍摄设备的时间同步;在所述多个拍摄设备拍摄的图像中检测目标生物体的关键点,以及所述目标生物体的躯体和头部,基于检测结果确定各拍摄设备拍摄的图像中所述目标生物体所在的第一区域位置;基于所述目标生物体在各拍摄设备拍摄的图像中的第一区域位置,以及各拍摄设备的内部参数和外部参数,确定所述目标生物体实际的三维位置。

本申请实施例第二方面提供一种基于图像的位置检测装置,包括:获取模块,用于获取架设在不同方位的多个拍摄设备在同一时刻拍摄获得的图像,其中,所述多个拍摄设备的时间同步;检测模块,用于在所述多个拍摄设备拍摄的图像中检测目标生物体的关键点,以及所述目标生物体的躯体和头部,基于检测结果确定各拍摄设备拍摄的图像中所述目标生物体所在的第一区域位置;第一确定模块,用于基于所述目标生物体在各拍摄设备拍摄的图像中的第一区域位置,以及各拍摄设备的内部参数和外部参数,确定所述目标生物体实际的三维位置。

本申请实施例第三方面提供一种计算机设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述第一方面所述的方法。

本申请实施例第四方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的方法。

基于以上各方面,本申请实施例通过获取架设在不同方位的多个拍摄设备在同一时刻拍摄获得的图像,并在这些拍摄设备拍摄的图像中检测目标生物体的关键点,以及目标生物体的躯体和头部,基于检测结果确定个拍摄设备拍摄的图像中目标生物体所在的第一区域位置,从而基于目标生物体在各拍摄设备拍摄的图像中的第一区域位置,以及各拍摄设备的内部参数和外部参数来确定目标生物体实际的三维位置。由于本申请实施例是基于关键点的检测结果以及躯体和头部的检测结果来确定目标生物体在各图像中的第一区域位置的,因而,能够避免因关键点漏检或误检所导致的第一区域位置定位不准确的问题,以及因头部尺寸小而导致的误检问题,从而提高了生物体在图像中二维位置和实际环境中三维位置的定位准确性。

应当理解,上述发明内容部分中所描述的内容并非旨在限定本申请的实施例的关键或重要特征,亦非用于限制本申请的范围。本公申请的其它特征将通过以下的描述变得容易理解。

附图说明

图1是本申请实施例提供的一种基于图像的位置检测方法的流程图;

图2是本申请实施例提供的一种确定第一区域位置的方法示意图;

图3是本申请实施例提供的一种步骤s12的执行方法流程图;

图4a是本申请实施例提供的一种拍摄设备拍摄获得的图像示意图;

图4b是本申请实施例提供的一种头部和躯体检测的结果的示意图;

图4c是在图4b的基础上进行关键点检测的结果的示意图;

图5是本申请实施例提供的一种步骤s12的执行方法流程图;

图6a为基于预设的关键点检测模型检测获得的目标生物体在图像上的分布区域示意图;

图6b是基于预设的头部和躯体检测模型检测获得的目标生物体的头部区域和躯体区域示意图;

图6c是基于图6a和图6b确定的目标生物体所在区域的示意图;

图7是本申请实施例提供的一种基于图像的位置检测装置的结构示意图;

图8是本申请实施例提供的一种检测模块72的结构示意图;

图9是本申请实施例提供的一种检测模块72的结构示意图。

具体实施方式

下面将参照附图更详细地描述本申请的实施例。虽然附图中显示了本申请的某些实施例,然而应当理解的是,本申请可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本申请。应当理解的是,本申请的附图及实施例仅用于示例性作用,并非用于限制本申请的保护范围。

本申请实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

在无人超市等新零售场景下,怎么通过多个摄像头判断顾客位置并持续跟踪是一个技术难点。整个购物流程里需要将顾客和顾客所拿的商品关联起来,需要持续得到顾客的位置以及运动轨迹。目前判断人体位置的方法主要是基于人体关键点检测技术在图像中获得代表人体所在区域的矩形框,并根据该矩形框来定位和跟踪人体位置。但是,该由于矩形框的确定非常依赖关键点的而检测精度,当出现关键点误检或漏检等情况时,很容易造成矩形框不准确,导致人体定位不准确的问题。

针对现有技术存在的上述问题,本申请实施例提供了一种基于图像的位置检测方法,该方法通过在多个拍摄设备拍摄的图像中进行目标生物体的关键点检测以及躯体和头部检测,从而综合二者的检测结果来确定目标生物体在各图像中的区域置位,进而根据目标生物体在各图像中的区域位置以及各拍摄设备的内部参数和外部参数来确定目标生物体的实际三维位置。避免了因关键点漏检或误检所导致的生物体在图像中定位不准确的问题,以及因头部尺寸小而导致的误检问题,提高了生物体在图像中二维位置和实际环境中三维位置的定位准确性。

以下将结合附图来具体描述本申请实施例的技术方案。

图1是本申请实施例提供的一种基于图像的位置检测方法的流程图,该方法可以由一种基于图像的位置检测装置(以下简称位置检测装置)来执行。参见图1,该方法包括步骤s11-s13:

s11、获取架设在不同方位的多个拍摄设备在同一时刻拍摄获得的图像,其中,所述多个拍摄设备的时间同步。

其中,本实施例中所称的多个拍摄设备可以对准同一个标定物,也可以分别对准不同的标定物,各拍摄设备的位置、朝向以及拍摄角度可以根据需要进行设定。另外该多个拍摄设备可以通过读取网络时间来进行时间同步,也可以通过接收特定装置发送的同步信号来进行同步,本实施例中不做具体限定。

s12、在所述多个拍摄设备拍摄的图像中检测目标生物体的关键点,以及所述目标生物体的躯体和头部,基于检测结果确定各拍摄设备拍摄的图像中所述目标生物体所在的第一区域位置。

本实施例中的目标生物体可以是人体也可以是其他生物体。

本实施例中对于“第一区域位置”的命名仅用于将生物体在图像中的区域位置与其他位置进行区别,并不具有其他含义。在确定目标生物体在各图像中的第一区域位置时,可以基于预设的第一检测模型对各图像中目标生物体的关键点进行检测,基于预设的第二模型对目标生物体的躯体和头部进行检测。优选的,第一模型和第二模型均可以是预先训练获得的神经网络模型。其中,本实施例中所称的关键点可以是生物体上的任意点,比如,手上的点、胳膊上的点、腿上的点等,但不局限于这些位置上的点。

另外,本实施例中对于关键点的检测,以及躯体和头部的检测可以同时执行,也可以基于预设顺序执行,本实施例中不做具体限定。比如,在一种可能的方式中,可以先在各图像中进行躯体和头部检测,获得目标生物体在各图像中的头部位置和躯体位置,并基于目标生物体在各图像中的头部位置和躯体位置,确定目标生物体整体在各图像中的大概区域位置,进一步的,再上述大概区域位置中进行关键点检测,并基于二者的检测结果确定目标生物体在各图像中的第一区域位置。这种方式不但能够避免关键点漏检或误检造成的定位不准确的问题,还能够降低关键点检测的计算量,提高检测效率。在另一种可能的方式中,可以同时在各图像中进行关键点检测,以及躯体和头部的检测,基于各图像中目标生物体上关键点的分布区域,以及目标生物体的躯体和头部的区域,综合确定目标生物体在各图像中的第一区域位置,排除关键点误检或漏检对确定第一区域位置的干扰。示例的,图2是本申请实施例提供的一种确定第一区域位置的方法示意图,如图2所示,图像20中,区域21是检测获得的目标生物体头部所在的区域,区域22是检测获得的目标生物体躯体所在的区域,区域23是检测所得的关键点的分布区域,从而根据区域23、区域21和区域22,确定生物体所在的第一区域位置为24。当然这里仅为示例说明而不是唯一限定。

s13、基于所述目标生物体在各拍摄设备拍摄的图像中的第一区域位置,以及各拍摄设备的内部参数和外部参数,确定所述目标生物体实际的三维位置。

其中,本实施例所称拍摄设备的内部参数包括但不局限于:焦距,视场(fov)、分辨率。本实施例所称拍摄设备的外部参数包括但不局限于:坐标位置、朝向和俯仰角。

本实施例在基于目标生物体在各拍摄设备拍摄的图像中的第一区域位置,以及各拍摄设备的内部参数和外部参数,确定目标生物体实际的三维位置时,可选择的方法包括多种:

在一种可能的方式中,可以基于目标生物体在各图像上的区域的顶点位置,以及各摄设备的内部参数和外部参数,确定目标生物体实际的三维位置。

在另一种可能的方式中,可以基于目标生物体的关键点在各图像上的位置,以及各拍摄设备的内部参数和外部参数,确定各关键点的三维位置,基于各关键点的三维位置确定生物体在实际空间中的三维位置。

当然本领域技术人员应该理解的是上述两种方式仅是为了清楚说明本实施技术方案所列举的两种最可能的实现方式,而不是全部实现方式。

进一步的,由于在诸如无人超市等场景中,除了关心生物体的位置之外往往还关心生物体的移动轨迹和行为,为了满足实际应用的需求,本实施例在获得当前时刻目标生物体的三维位置后,还可以基于目标生物体在当前时刻之前的三维位置生成目标生物体的移动轨迹,以便更好的对生物体的行为进行分析。或者可以基于目标生物体在各图像中的关键点的位置以及各拍摄设备的内部参数和外部参数确定各关键点的三维位置,并基于各关键点的三维置位确定生物体的姿态。从而到达更好分析生物体行为的目的。

本实施例通过获取架设在不同方位的多个拍摄设备在同一时刻拍摄获得的图像,并在这些拍摄设备拍摄的图像中检测目标生物体的关键点,以及目标生物体的躯体和头部,基于检测结果确定个拍摄设备拍摄的图像中目标生物体所在的第一区域位置,从而基于目标生物体在各拍摄设备拍摄的图像中的第一区域位置,以及各拍摄设备的内部参数和外部参数来确定目标生物体实际的三维位置。由于本实施例是基于关键点的检测结果以及躯体和头部的检测结果来确定目标生物体在各图像中的第一区域位置的,因而,能够避免因关键点漏检或误检所导致的第一区域位置定位不准确的问题,以及因头部尺寸小而导致的误检问题,从而提高了生物体在图像中二维位置和实际环境中三维位置的定位准确性。

下面结合附图对上述实施例进行进一步的优化和扩展。

图3是本申请实施例提供的一种步骤s12的执行方法流程图,如图3所示,在图1实施例的基础上,该方法包括步骤s21-s23:

s21、在所述多个拍摄设备拍摄的图像中检测目标生物体的躯体和头部,基于所述目标生物体的躯体所在的区域位置和所述目标生物体的头部所在的区域位置,确定各图像中所述目标生物体整体所在的第二区域位置。

s22、在各图像的所述第二区域位置中进行关键点检测。

s23、确定所述目标生物体的关键点在各图像的第二区域位置中的分布位置为所述目标生物体在各图像上的第一区域位置。

示例的,图4a是本申请实施例提供的一种拍摄设备拍摄获得的图像示意图,图像40中包括目标生物体41。首先基于预设的神经网络模型对图像40进行检测,获得目标生物体41头部所在的区域42以及躯体所在的区域43,基于区域42和区域43得到目标生物体41整体所在的区域位置(即第二区域位置)44,其检测结果如图4b所示。进一步的,在区域位置44中进行关键点检测,得到图4c所示的关键点,并确定关键点在区域位置44中分布的位置为目标生物体41所在的第一区域位置45。

当然上述示例仅为示例说明而不是本发明的唯一限定。

本实施例通过先在拍摄设备拍摄的图像中进行头部检测和躯体检测,根据目标生物体在图像中的头部位置和躯体位置,确定目标生物体的整体在图像中的大概位置,再在该大概位置中进行关键点检测,并将关键点在该大概位置中的分布位置作为目标生物体在图像中的第一区域位置,不但能够消除关键点误检或漏检对生物体定位的不利影响,还能够降低关键点检测的计算量,提高检测效率。

图5是本申请实施例提供的一种步骤s12的执行方法流程图,如图3所示,在图1实施例的基础上,该方法包括步骤s31-s33:

s31、在所述多个拍摄设备拍摄的图像中检测目标生物体的关键点,确定各图像中所述目标生物体的关键点的分布区域。

s32、在所述多个拍摄设备拍摄的图像中检测目标生物体的躯体和头部,确定各图像中所述目标生物体的头部和躯体所在的区域位置。

s33、针对每个图像,基于所述图像中目标生物体的头部和躯体所在的区域位置,对所述目标生物体上关键点在所述图像上的分布区域进行纠正,获得第一区域位置。

示例的,假设图6a为基于预设的关键点检测模型检测获得的目标生物体在图像上的分布区域示意图,其中,区域61为关键点的分布区域。图6b是基于预设的头部和躯体检测模型检测获得的目标生物体的头部区域和躯体区域示意图,其中,区域62为目标生物体头部在图像中的区域,区域63为目标生物体的躯体在图像中的区域。则基于图6a和图6b,排除误检和漏检关键点的干扰,即可获得如图6c所示的目标生物体在图像中的区域64。

当然这里仅为示例说明而不是对本申请的唯一限定。

本实施例能够消除关键点误检或漏检对生物体定位的不利影响,还能够降低关键点检测的计算量,提高检测效率。

图7是本申请实施例提供的一种基于图像的位置检测装置的结构示意图,如图7所示,该装置70包括:

获取模块71,用于获取架设在不同方位的多个拍摄设备在同一时刻拍摄获得的图像,其中,所述多个拍摄设备的时间同步;

检测模块72,用于在所述多个拍摄设备拍摄的图像中检测目标生物体的关键点,以及所述目标生物体的躯体和头部,基于检测结果确定各拍摄设备拍摄的图像中所述目标生物体所在的第一区域位置;

第一确定模块73,用于基于所述目标生物体在各拍摄设备拍摄的图像中的第一区域位置,以及各拍摄设备的内部参数和外部参数,确定所述目标生物体实际的三维位置。

在一种可能的设计中,所述第一确定模块73,包括:

第二确定子模块,用于基于所述目标生物体的关键点在各拍摄设备拍摄的图像上的位置,以及各拍摄设备的内部参数和外部参数,确定所述目标生物体实际的三维位置。

在又一种可能的设计中,所述装置还包括:

生成模块,用于基于所述目标生物体在所述时刻的三维位置,以及所述目标生物体在所述时刻之前各时刻的三维位置,生成所述目标生物体的移动轨迹。

在又一种可能的设计中,所述装置还包括:

第二确定模块,用于在从所述多个拍摄设备拍摄的图像中检测获得目标生物体的关键点后,基于所述目标生物体的关键点在各拍摄设备拍摄的图像上的位置,以及各拍摄设备的内部参数和外部参数,确定所述目标生物体上各关键点实际的三维位置;

第三确定模块,用于基于所述目标生物体上各关键点实际的三维位置,确定所述目标生物体的姿势。

本实施例提供的装置能够用于执行图1实施例的方法,其执行方式和有益效果类似,在这里不再赘述。

图8是本申请实施例提供的一种检测模块72的结构示意图,如图8所示,在图7实施例的基础上,检测模块72包括:

第一检测子模块721,在所述多个拍摄设备拍摄的图像中检测目标生物体的躯体和头部,基于所述目标生物体的躯体所在的区域位置和所述目标生物体的头部所在的区域位置,确定各图像中所述目标生物体整体所在的第二区域位置;

第二检测子模块722,用于在各图像的所述第二区域位置中进行关键点检测;

第一确定子模块723,用于确定所述目标生物体的关键点在各图像的第二区域位置中的分布位置为所述目标生物体在各图像上的第一区域位置。

本实施例提供的装置能够用于执行图3实施例的方法,其执行方式和有益效果类似,在这里不再赘述。

图9是本申请实施例提供的一种检测模块72的结构示意图,如图9所示,在图7实施例的基础上,检测模块72包括:

第三检测子模块724,用于在所述多个拍摄设备拍摄的图像中检测目标生物体的关键点,确定各图像中所述目标生物体的关键点的分布区域;

第四检测子模块725,用于在所述多个拍摄设备拍摄的图像中检测目标生物体的躯体和头部,确定各图像中所述目标生物体的头部和躯体所在的区域位置,

位置纠正子模块726,用于针对每个图像,基于所述图像中目标生物体的头部和躯体所在的区域位置,对所述目标生物体上关键点在所述图像上的分布区域进行纠正,获得第一区域位置。

本实施例提供的装置能够用于执行图5实施例的方法,其执行方式和有益效果类似,在这里不再赘述。

本申请实施例还提供一种计算机设备,包括:一个或多个处理器;

存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一实施例所述的方法。

本申请实施例还提供在一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一实施例所述的方法。

本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)等等。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。

尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

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