基于视频图像的轨迹生成方法、装置、电子设备和介质与流程

文档序号:25525765发布日期:2021-06-18 20:15阅读:139来源:国知局
基于视频图像的轨迹生成方法、装置、电子设备和介质与流程

本公开的实施例涉及计算机技术领域,具体涉及基于视频图像的轨迹生成方法、装置、电子设备和介质。



背景技术:

随着智能科技的快速发展,人们的购物方式发生了巨大的变化。与此同时,基于无人货柜的售货模式迅速发展起来。动态柜作为无人货柜的一种,通常是通过静态物品识别方法。即,通过识别无人售货柜开门前后,柜子内的物品变化。以此确定用户实际拿取的物品,进而生成物品的拿取信息。然而,当采用上述方法时,通常会存在以下技术问题:

第一,采用静态物品识别方法,为了保证能够精确地确定柜中物品的变化情况,往往需要无人货柜中留存有足够的空间,以保证无人货柜中的摄像机可以清楚地拍摄到无人货柜中的所有物品,此种方式使得无人货柜的空间利用率较低;

第二,由于光线等问题,导致视频的清晰度可能发生变化,进而,导致通过检测模型对视频中的图像进行检测,以生成的物品位置不够精准,从而,无法准确地确定用户所拿取的物品,使得生成的物品拿取信息往往出现错误,影响用户的购物体验,可能会降低无人货柜的用户流量。



技术实现要素:

本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。

本公开的一些实施例提出了基于视频图像的轨迹生成方法、装置、电子设备和介质,来解决以上背景技术部分提到的技术问题中的一项或多项。

第一方面,本公开的一些实施例提供了一种基于视频图像的轨迹生成的方法,该方法包括:对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合,其中,上述物品检测信息集合中的物品检测信息包括:物品类别标识、帧索引值、第一顶点坐标和第二顶点坐标;基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集;从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列;对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集;基于上述融合轨迹集,生成物品拿取信息组集;将上述物品拿取信息组集发送至目标终端以供显示。

在一些实施例中,所述对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,包括:

基于所述第一候选物品检测信息包括的候选检测框第一顶点坐标、候选检测框第二顶点坐标和所述至少一个第二候选物品检测信息中各个第二候选物品检测信息包括的候选检测框第一顶点坐标、候选检测框第二顶点坐标,通过以下公式,对所述第一候选物品检测信息包括的候选检测框第一顶点坐标和候选检测框第二顶点坐标,进行校正处理,以生成已矫正第一顶点坐标和已矫正第二顶点坐标:

其中,表示所述已矫正第一顶点坐标中的横坐标,表示所述已矫正第一顶点坐标中的纵坐标,表示所述已矫正第二顶点坐标中的横坐标,表示所述已矫正第二顶点坐标中的纵坐标,表示序号,表示所述至少一个第二候选物品检测信息中的第二候选物品检测信息个数,表示所述第一候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标,表示所述第一候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标,表示所述第一候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标,表示所述第一候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标,表示至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标,表示至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标,表示至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标,表示至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标,表示至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标,表示至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标,表示至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标,表示至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标。

第二方面,本公开的一些实施例提供了一种基于视频图像的轨迹生成装置,装置包括:检测单元,被配置成对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合,其中,上述物品检测信息集合中的物品检测信息包括:物品类别标识、帧索引值、第一顶点坐标和第二顶点坐标;第一生成单元,被配置成基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集;筛选单元,被配置成从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列;融合单元,被配置成对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。第二生成单元,被配置成基于上述融合轨迹集,生成物品拿取信息组集;显示单元,被配置成将上述物品拿取信息组集发送至目标终端以供显示。

第三方面,本公开的一些实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述第一方面任一实现方式所描述的方法。

第四方面,本公开的一些实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现上述第一方面任一实现方式所描述的方法。

本公开的上述各个实施例中具有如下有益效果:通过本公开的一些实施例的基于视频图像的轨迹生成方法,提高了无人货柜的空间利用率。具体来说,造成无人货柜的空间利用率较低的原因在于:采用静态物品识别方法,为了保证能够精确地确定柜中物品的变化情况,往往需要无人货柜中留存有足够的空间,以保证无人货柜中的摄像机可以清楚地拍摄到无人货柜中的所有物品。基于此,本公开的一些实施例的基于视频图像的轨迹生成方法,首先,对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合。实际情况中,生成物品的移动轨迹,往往需要先从图像中识别出物品。通过对每一帧图像进行物品实体检测,从而实现了对图像中物品的识别。其次,基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集。实际情况中,用户可能会在一次开关门的时间区间内,从无人货柜中取出多件物品。通过生成候选轨迹集。从而,确定了物品检测信息集合中每个物品检测信息对应物品的移动轨迹。进一步,从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列。实际情况中,可能存在用户拿取又放回的情况。此种情况下的物品轨迹一般较短。通过轨迹筛选条件,从而实现了对较短物品轨迹的剔除。此外,对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。实际情况中,预处理轨迹序列可能存在对应的物品相同的预处理轨迹,因此需要将此类轨迹进行合并。通过对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,从而,实现了对同类物品对应的预处理轨迹的合并。最后,基于上述融合轨迹集,生成物品拿取信息组集。通过融合轨迹,以此实现了确定用户实际拿取的物品。最后,将用户所拿取的物品对应的信息发送至目标终端以供显示。此种方式,通过物品移动轨迹,以此确定用户实际拿取的物品。不需要无人货柜中留存有足够的空间,来保证无人货柜中的摄像机可以清楚地拍摄到无人货柜中的所有物品。从而,使得无人货柜能够存放更多的物品。大大提高了无人货柜的空间利用率。

附图说明

结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。

图1是本公开的一些实施例的基于视频图像的轨迹生成方法的一个应用场景示意图;

图2是根据本公开的基于视频图像的轨迹生成方法的一些实施例的流程图;

图3是本公开的基于视频图像的轨迹生成方法的候选轨迹的示意图;

图4是本公开的基于视频图像的轨迹生成方法的物品检测框的示意图;

图5是根据本公开的基于视频图像的轨迹生成方法的另一些实施例的流程图;

图6是根据本公开的基于视频图像的轨迹生成装置的一些实施例的结构示意图;

图7是适于用来实现本公开的一些实施例的电子设备的结构示意图。

具体实施方式

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

另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。

需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。

需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。

本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。

下面将参考附图并结合实施例来详细说明本公开。

图1是本公开的一些实施例的基于视频图像的轨迹生成方法的一个应用场景的示意图。

在图1的应用场景中,首先,计算设备101可以对预获取的视频102中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合103。其中,上述物品检测信息集合103中的物品检测信息包括:物品类别标识、帧索引值、第一顶点坐标和第二顶点坐标。然后,计算设备101可以基于上述物品检测信息集合103中的物品检测信息,生成候选轨迹集104。其次,计算设备101可以从上述候选轨迹集104中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列105。进而,计算设备101可以对上述预处理轨迹序列105中的预处理轨迹进行轨迹融合处理,得到融合轨迹集106。而后,计算设备101可以基于上述融合轨迹集106,生成物品拿取信息组集107。最后,计算设备101可以将上述物品拿取信息组集107发送至目标终端108以供显示。

需要说明的是,上述计算设备101可以是硬件,也可以是软件。当计算设备为硬件时,可以实现成多个服务器或终端设备组成的分布式集群,也可以实现成单个服务器或单个终端设备。当计算设备体现为软件时,可以安装在上述所列举的硬件设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。

应该理解,图1中的计算设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的计算设备。

继续参考图2,示出了根据本公开的基于视频图像的轨迹生成方法的一些实施例的流程200。该基于视频图像的轨迹生成方法,包括以下步骤:

步骤201,对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合。

在一些实施例中,基于视频图像的轨迹生成方法的执行主体(如图1所示的计算设备101)可以对上述预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合。其中,上述预获取的视频可以是记录了无人货柜的舱门从开启到关闭,这一段时间内,用户拿取无人货柜中物品的视频。上述执行主体可以通过对上述图像进行物品实体检测,从而,确定上述图像中的物品,以生成物品检测信息,得到物品检测信息集合。上述执行主体可以通过目标检测模型对上述图像进行物品实体检测。上述目标检测模型可以是预先训练的神经网络模型。上述目标检测模型可以是但不限于以下任意一项:r-cnn(regionswithconvolutionalneuralnetworkfeatures,区域卷积神经网络特征)模型和yolo(youonlylookonce,你只需要看一次)模型。上述物品检测信息可以包括物品类别标识、帧索引值、第一顶点坐标和第二顶点坐标。上述物品类别标识可以用于表征物品的唯一标识信息。上述物品类别标识可以是物品的类别名称。上述帧索引值可以表征物品检测信息对应的图像在上述预获取的视频中的位置。上述第一顶点坐标和上述第二顶点坐标可以是图像坐标系下的坐标。上述第一顶点坐标可以是物品检测信息对应的物品检测框的左上角的顶点坐标。上述第二顶点坐标可以是物品检测信息对应的物品检测框的右下角的顶点坐标。

作为示例,上述预获取的视频可以是包含10帧图像的视频。物品检测信息可以是[番茄,1,(20,50),(40,10)]。其中,“1”可以表示上述物品检测信息对应的图像是上述预获取的视频中的第1帧图像,对应的索引值为“1”。

作为又一示例,上述物品检测信息集合可以是:{[番茄,1,(20,50),(40,10)],[黄瓜,1,(35,15),(50,5)],[番茄,2,(40,15),(45,5)],[黄瓜,2,(50,30),(65,20)],[番茄,3,(20,40),(40,0)],[黄瓜,3,(60,40),(75,30)],[青椒,3,(5,35),(7,10)],[青椒,4,(10,35,),(12,10)],[番茄,5,(20,35),(22,10)]}。

步骤202,基于物品检测信息集合中的物品检测信息,生成候选轨迹集。

在一些实施例中,上述执行主体可以基于物品检测信息集合中的物品检测信息,生成候选轨迹集。其中,上述执行主体可以通过以下步骤,生成候选轨迹:

第一步,从上述物品检测信息集合中筛选出符合同类条件的物品检测信息作为同类物品检测信息,得到同类物品检测信息组集。

其中,上述同类条件可以是物品检测信息包括的物品类别标识相同。作为示例,上述物品检测信息集合可以是:{[番茄,1,(20,50),(40,10)],[黄瓜,1,(35,15),(50,5)],[番茄,2,(40,15),(45,5)],[黄瓜,2,(50,30),(65,20)],[番茄,3,(20,40),(40,0)],[黄瓜,3,(60,40),(75,30)],[青椒,3,(5,35),(7,10)],[青椒,4,(10,35,),(12,10)],[番茄,5,(20,35),(22,10)]}。上述同类物品检测信息组集可以是:{([番茄,1,(20,50),(40,10)],[番茄,2,(40,15),(45,5)],[番茄,3,(20,40),(40,0)],[番茄,5,(20,35),(22,10)]),([黄瓜,1,(35,15),(50,5)],[黄瓜,2,(50,30),(65,20)],[黄瓜,3,(60,40),(75,30)]),([青椒,3,(5,35),(7,10)],[青椒,4,(10,35,),(12,10)])}。

第二步,对于上述同类物品检测信息组集中的每个同类物品检测信息组,将上述同类物品检测信息组中的同类物品检测信息按照上述同类物品检测信息包括的帧索引值从小到大的顺序进行排列,以生成同类物品检测信息序列。

作为示例,同类物品检测信息序列可以是:([番茄,1,(20,50),(40,10)],[番茄,2,(40,15),(45,5)],[番茄,3,(20,40),(40,0)],[番茄,5,(20,35),(22,10)])。

第三步,对于所生成的同类物品检测信息序列集中的每个同类物品检测信息序列,在上述同类物品检测信息序列中的目标位置进行切分,以生成候选物品检测信息序列集合。

其中,上述目标位置可以是上述同类物品检测信息序列中两个相邻的同类物品检测信息包含的帧索引值的差距大于帧索引差距阈值的位置。

作为示例,上述同类物品检测信息序列可以是:([番茄,1,(20,50),(40,10)],[番茄,2,(40,15),(45,5)],[番茄,3,(20,40),(40,0)],[番茄,5,(20,35),(22,10)])。上述帧索引差距阈值可以是:2。在上述同类物品检测信息序列中两个相邻的同类物品检测信息包含的帧索引值的差距大于2的位置对上述上述同类物品检测信息序列进行切分,得到的候选物品检测信息序列集合可以是:{([番茄,1,(20,50),(40,10)],[番茄,2,(40,15),(45,5)],[番茄,3,(20,40),(40,0)]),([番茄,5,(20,35),(22,10)])}。

第四步,对于所生成的候选物品检测信息序列集合中的每个候选物品检测信息序列,将上述候选物品检测信息序列中的各个候选物品检测信息包括的第一顶点坐标连接而成的轨迹确定为候选轨迹。

作为示例,上述候选物品检测信息序列可以是:([番茄,1,(20,40),(40,10)],[番茄,2,(30,15),(45,5)],[番茄,3,(30,20),(40,0)],[番茄,4,(40,20),(50,0)])。得到的候选轨迹可以如图3所示。其中,上述候选轨迹301可以是由第一个候选物品检测信息包括的第一顶点302、第二个候选物品检测信息包括的第一顶点303、第三个候选物品检测信息包括的第一顶点304和第四个候选物品检测信息包括的第一顶点305连接而成。上述第一个候选物品检测信息包括的第一顶点302坐标可以是(15,50)。上述第二个候选物品检测信息包括的第一顶点303坐标可以是(35,20)。上述第三个候选物品检测信息包括的第一顶点304坐标可以是(55,30)。上述第四个候选物品检测信息包括的第一顶点305坐标可以是(75,20)。

在一些实施例的一些可选的实现方式中,上述执行主体基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集,可以包括以下步骤:

第一步,根据上述物品检测信息集合中的每个物品检测信息包括的第一顶点坐标和第二顶点坐标,确定物品检测框,得到物品检测框组。

其中,上述物品检测框组中的物品检测框可以与上述物品检测信息集合中的物品检测信息一一对应。上述物品检测框可以由上述第一顶点坐标、上述第二顶点坐标确定。上述物品检测框可以是用于框定目标图像中的物品的矩形框。上述目标图像可以是上述预获取的视频中的图像。

作为示例,上述物品检测框可以如图4所示。其中,图4中的物品检测框401可以由第一顶点坐标403和第二顶点坐标404生成。上述物品检测框401可以用于框定目标图像402。上述目标图像402可以是包含“苹果”的图像。

第二步,基于上述物品检测框组和上述物品检测信息集合,生成上述候选轨迹集,可以包括以下子步骤:

第一子步骤,向初始候选轨迹集中加入第一条初始候选轨迹。其中,上述初始候选轨迹集初始为空。

第二子步骤,将物品检测信息组中包含的帧索引值最小的物品检测信息包括的第一顶点添加至初始候选轨迹中。

第三子步骤,将物品检测信息组中包含的帧索引值最小的物品检测信息包括的第一顶点对应的物品检测框从物品检测框组中删除,得到更新后的物品检测框组。

第四子步骤,将更新后的物品检测框组确定为物品检测框组。

第五子步骤,选择物品检测框组中对应的物品检测信息中包含的帧索引值最小的物品检测框作为第一物品检测框。

第六子步骤,确定第一物品检测框与初始候选轨迹集中的每个初始候选轨迹的最末端的第一顶点对应的物品检测框的重叠度和帧索引值差距,得到重叠度组和帧索引值差距组。

其中,重叠度组中的重叠度和帧索引值差距组中的帧索引值差距一一对应。帧索引值差距可以是第一物品检测框对应的物品信息包括的帧索引值与初始候选轨迹集中的初始候选轨迹的最末端的第一顶点对应的帧索引值的差值的绝对值。重叠度可以是第一物品检测框与初始候选轨迹集中的初始候选轨迹的最末端的第一顶点对应的物品检测框交集区域面积所占并集区域面积的比值。执行主体可以通过以下公式,确定第一物品检测框与初始候选轨迹集中的初始候选轨迹的最末端的第一顶点对应的物品检测框的重叠度:

其中,表示重叠度。表示第一物品检测框对应的物品检测信息包括的第一顶点的坐标中的横坐标。表示第一物品检测框对应的物品检测信息包括的第一顶点的坐标中的纵坐标。表示第一物品检测框对应的物品检测信息包括的第二顶点的坐标中的横坐标。表示第一物品检测框对应的物品检测信息包括的第二顶点的坐标中的纵坐标。表示初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第一顶点的坐标中的横坐标。表示初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第一顶点的坐标中的纵坐标。表示初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第二顶点的坐标中的横坐标。表示初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第二顶点坐标中的纵坐标。表示最小值。表示最大值。

作为示例,第一物品检测框对应的物品检测信息包括的第一顶点坐标中的横坐标可以是20。第一物品检测框对应的物品检测信息包括的第一顶点坐标中的纵坐标可以是50。第一物品检测框对应的物品检测信息包括的第二顶点坐标中的横坐标可以是40。第一物品检测框对应的物品检测信息包括的第二顶点坐标中的纵坐标可以是10。初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第一顶点坐标中的横坐标可以是40。初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第一顶点坐标中的纵坐标可以是15。初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第二顶点坐标中的横坐标可以是45。初始候选轨迹的最末端的第一顶点对应的物品检测信息包括的第二顶点坐标中的纵坐标可以是5。那么重叠度可以是0。

第七子步骤,将第一物品检测框对应的物品检测信息包括的第一顶点添加至初始候选轨迹集中满足添加条件的初始候选轨迹最末端,得到更新后的初始候选轨迹集。

其中,添加条件可以是初始候选轨迹满足第一添加条件,且初始候选轨迹满足第二添加条件。上述第一添加条件可以为初始候选轨迹对应的重叠度是重叠度组中最大的重叠度。上述第二添加条件可以为初始候选轨迹对应的帧索引值差距小于预设的帧索引值差距阈值。帧索引值差距阈值可以是帧索引值差距的最大临界值。

作为示例,重叠度组可以是[0.5,0.3,0.2、0],帧索引值差距组可以是[5,6,7,8],帧索引值差距阈值可以是7,最后将选取的物品检测框对应的第一顶点添加至重叠度组中的重叠度为0.5对应的初始候选轨迹末端。

第八子步骤,响应于初始候选轨迹集的初始候选轨迹不满足添加条件,将第一物品检测框对应的物品检测信息包括的第一顶点确定为新的初始候选轨迹开端,并将新的初始候选轨迹添加至初始候选轨迹集中,得到更新后的初始候选轨迹集。

第九子步骤,将第一物品检测框从物品检测框组中删除,得到更新后的物品检测框组。

第十子步骤,响应于物品检测框组中物品检测框数量等于0,将更新后的初始候选轨迹集确定为候选轨迹集。

第十一子步骤,响应于物品检测框组中物品检测框数量大于0,将更新后的初始候选轨迹集确定为初始候选轨迹集,重复执行第四子步骤到第十子步骤。

步骤203,从候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列。

在一些实施例中,上述执行主体可以从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列。其中,上述轨迹筛选条件可以是:候选轨迹满足第一条件,且候选轨迹满足第二条件。其中,上述第一条件可以是:候选轨迹的长度大于1。上述第二条件可以是:候选轨迹的长度大于5,且候选轨迹中的各个第一顶点对应的物品检测框的平均面积大于100。上述候选轨迹的长度可以是从上述候选轨迹的第一个第一顶点到最后一个第一顶点之间的长度。

作为示例,上述候选轨迹集可以是[候选轨迹a,候选轨迹b,候选轨迹c,候选轨迹d,候选轨迹e],其中,各个候选轨迹的轨迹长度可以是:[2,3,1,10,7]。上述候选轨迹集中的各个候选轨迹包含的第一顶点对应的物品检测框平均面积可以是[150,300,400,250,80]。那么,上述预处理轨迹序列可以是[候选轨迹a,候选轨迹b,候选轨迹d]。

步骤204,对预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。

在一些实施例中,上述执行主体可以对预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。其中,上述融合轨迹可以是一个物品被用户拿取过程中的运动轨迹轨迹。上述执行主体可以按照上述预处理轨迹中的第一顶点对应的物品检测信息包括的帧索引值从小到大的顺序,将预处理轨迹中物品类别标识相同的的轨迹片段合并生成的轨迹确定为融合轨迹。上述轨迹片段可以是上述预处理轨迹中的部分连续轨迹。

作为示例,上述预处理轨迹序列可以是[预处理轨迹a,预处理轨迹b,预处理轨迹c]。上述预处理轨迹a中包括的第一顶点可以是[a1,a2,a3,a4],上述预处理轨迹a中包括的第一顶点对应物品检测信息中包括的帧索引值可以是[1,3,5,6]。上述预处理轨迹a中包括的物品检测框对应的物品类别可以是[番茄,番茄,青椒,黄瓜]。上述预处理轨迹b中包括的第一顶点可以是[b1,b2,b3],上述预处理轨迹b中包括的第一顶点对应物品检测信息中包括的帧索引值可以是[2,4,8]。上述预处理轨迹b中包括的第一顶点对应物品检测信息中包括的物品类别可以是[番茄,青椒,黄瓜]。上述预处理轨迹c中包括的第一顶点可以是[c1,c2,c3],上述预处理轨迹c中包括的第一顶点对应物品检测信息中包括的帧索引值可以是[7,9,10]。上述预处理轨迹c中包括的第一顶点对应物品检测信息中包括的物品类别可以是[青椒,黄瓜,黄瓜]。那么得到的融合轨迹集可以是{[a1,b1,a2],[b2,a3,c1],[a4,b3,c2,c3]}。其中a1、b1和a2对应的物品检测信息包括的物品类别标识同为番茄,b2、a3和c1对应的物品检测信息包括的物品类别标识同为青椒,a4、b3、c2和c3对应的物品检测信息包括的物品类别标识同为黄瓜。

在一些实施例的一些可选的实现方式中,上述执行主体可以对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。

其中,上述执行主体可以基于上述预处理轨迹序列和初始融合轨迹集,通过执行以下融合步骤,生成融合轨迹集,其中,上述初始融合轨迹集初始可以为空:

第一步,选择预处理轨迹序列中的第一个预处理轨迹作为第一候选融合轨迹。

第二步,将预处理轨迹序列中未选取的预处理轨迹确定为第二候选融合轨迹,得到第二候选融合轨迹组。

第三步,确定上述第一候选融合轨迹与上述第二候选融合轨迹组中各个第二候选融合轨迹的匹配信息,得到匹配信息集合。

其中,上述匹配信息集合中的匹配信息可以包括:重叠度组集合、第一短时方向信息和第二短时方向信息。其中,上述重叠度组集合中的重叠度组可以包括上述第一候选融合轨迹中的第一顶点对应的物品检测框与上述第二候选融合轨迹中包括的符合范围约束条件的第一顶点对应的物品检测框的重叠度。上述范围约束条件可以是上述第二候选融合轨迹中的第一顶点对应的物品检测信息包括的帧索引值在上述第一候选融合轨迹中的第一顶点对应的帧索引值范围内。

上述第一短时方向信息可以表征上述第一候选融合轨迹的轨迹方向。上述第二短时方向信息可以表征上述第二候选融合轨迹的轨迹方向。上述执行主体可以通过以下公式,确定上述第二短时方向信息或上述第一短时方向信息:

其中,表示上述第二短时方向信息或上述第一短时方向信息。表示候选融合轨迹开始时的第一顶点的坐标中包括的横坐标。表示候选融合轨迹开始时的第一顶点坐标中包括的纵坐标。表示候选融合轨迹结束时的第一顶点的坐标中包括的横坐标。表示候选融合轨迹结束时的第一顶点的坐标中包括的纵坐标。

作为示例,候选融合轨迹开始时的第一顶点的坐标中包括的横坐标可以是20。候选融合轨迹开始时的第一顶点坐标中包括的纵坐标可以是10。候选融合轨迹结束时的第一顶点的坐标中包括的横坐标可以是50。候选融合轨迹结束时的第一顶点的坐标中包括的纵坐标可以是40。

第四步,基于上述第一候选融合轨迹和目标候选融合轨迹,生成融合轨迹。

其中,上述目标候选融合轨迹可以为上述匹配信息集合中的满足预定条件的匹配信息对应的第二候选融合轨迹。上述预定条件可以是:匹配信息中的重叠度组集合包括的各个重叠度组内的各个重叠度均大于重叠度阈值,且上述匹配信息中的第一短时方向信息与第二短时方向信息相同。上述重叠度阈值可以表示上述重叠度的最小临界值。上述同类内部融合条件可以为:上述第一候选融合轨迹中的各个第一顶点对应的物品检测信息包括的物品类别标识,和目标候选融合轨迹中的各个第一顶点对应的物品检测信息包括的物品类别标识均相同。上述执行主体可以按照上述第一候选融合轨迹包括的各个第一顶点对应的物品检测信息包括的帧索引值,和上述目标候选融合轨迹包括的各个第一顶点对应的物品检测信息包括的帧索引值,按照目标顺序,将上述第一候选融合轨迹和上述目标候选融合轨迹进行拼接,以生成上述融合轨迹。上述目标顺序可以是由大到小的顺序。上述目标顺序也可以是由小到大的顺序。

可选地,上述第一候选融合轨迹可以包括:至少一个第一可融合部分轨迹。上述目标候选融合轨迹可以包括:至少一个第二可融合部分轨迹。上述融合轨迹可以包括:至少一个子融合轨迹。

可选地,上述执行主体可以基于上述第一候选融合轨迹和目标候选融合轨迹,生成融合轨迹。

其中,上述执行主体可以响应于上述第一候选融合轨迹和上述目标候选融合轨迹满足同类内部融合条件,按照上述第一候选融合轨迹和目标候选融合轨迹包括的各个检测框对应的帧索引值从大到小的顺序,对上述第一候选融合轨迹和目标候选融合轨迹进行拼接,以生成上述融合轨迹。上述同类内部融合条件可以为上述第一候选融合轨迹对应的检测信息内的物品类别标识和上述目标候选融合轨迹对应的检测信息内的物品类别标识相同。上述执行主体可以将上述第一候选融合轨迹中的第一顶点和上述目标融合轨迹中的第一顶点,按照上述第一候选融合轨迹中的第一顶点和上述目标融合轨迹中的第一顶点对应的物品检测信息包括的帧索引值从小到大的顺序进行连接生成的轨迹确定为融合轨迹。

作为示例,上述第一候选融合轨迹可以是:[第一顶点a,第一顶点b,第一顶点c,第一顶点d]。上述目标候选融合轨迹可以是:[第一顶点e,第一顶点f,第一顶点g]。上述第一候选融合轨迹中的各个第一顶点对应的物品检测信息包括的物品类别标识可以是:(番茄,番茄,番茄,番茄)。上述目标候选融合轨迹中的第一顶点对应的物品检测信息包括的物品类别标识可以是:(番茄,番茄,番茄)。上述第一候选融合轨迹中的第一顶点对应的物品检测信息包括的帧索引值可以是:(1,3,5,8)。上述目标候选融合轨迹中的第一顶点对应的物品检测信息包括的帧索引值可以是:(4,6,7)。上述匹配信息中的第一短时方向信息可以是:+1。上述匹配信息中的第二短时方向信息可以是:+1。那么,得到的融合轨迹可以是由以下第一顶点连接得到的轨迹:[第一顶点a,第一顶点b,第一顶点e,第一顶点c,第一顶点f,第一顶点g,第一顶点d]。

可选地,基于上述第一候选融合轨迹和目标候选融合轨迹,生成融合轨迹,可以包括以下子步骤:

第一子步骤,响应于上述第一候选融合轨迹和上述目标候选融合轨迹不满足上述同类内部融合条件,对于上述至少一个第一可融合部分轨迹中的每个第一可融合部分轨迹,响应于确定目标可融合部分轨迹和上述第一可融合部分轨迹满足跟踪有效条件,基于上述第一可融合部分轨迹和目标可融合部分轨迹,生成可融合部分信息。

其中,上述可融合部分信息可以包括:上述第一可融合部分轨迹和目标可融合部分轨迹。上述目标可融合部分轨迹是上述至少一个第二可融合部分轨迹中的第二可融合部分轨迹。上述第一可融合部分轨迹可以是上述第一可融合部分轨迹中的各个第一顶点对应的物品检测信息包括的物品类别标识相同的连续轨迹。上述第二可融合部分轨迹可以是上述第二可融合部分轨迹中的各个第一顶点对应的物品检测信息包括的物品类别标识相同的连续轨迹。上述跟踪有效条件可以为确定上述第一候选融合轨迹和上述目标候选融合轨迹中同时存在,上述第一可融合部分轨迹对应的物品,与上述第二可融合部分轨迹对应的物品,是同一个物品的第一可融合部分轨迹和第二可融合部分轨迹。上述执行主体可以通过目标跟踪算法,确定上述第一可融合部分轨迹对应的物品,与上述第二可融合部分轨迹对应的物品是同一个物品,并将上述第一可融合部分轨迹和上述第二可融合部分轨迹确定为可融合部分信息。上述目标跟踪算法可以是但不限于以下任意一项:均值漂移算法和基于粒子滤波器的目标跟踪算法。

第二子步骤,基于所生成的至少一个可融合部分信息中的每个可融合部分信息,生成子融合轨迹,得到至少一条子融合轨迹。

其中,上述至少一条子融合轨迹中的每条子融合轨迹可以是同一个物品的轨迹。对于上述至少一个可融合部分信息中每个可融合部分信息,上述执行主体可以将上述可融合部分信息包括的第一可融合部分轨迹中的第一顶点,和上述可融合部分信息包括的第二可融合部分轨迹中的第一顶点,按照上述第一顶点对应的物品检测信息包括的帧索引值从小到大的顺序进行连接生成的轨迹确定为子融合轨迹。

第五步,将上述融合轨迹添加至初始融合轨迹集中,得到更新后的初始融合轨迹集。

第六步,将循环计数值增加1。

其中,上述循环计数值的初始值可以为0。

第七步,响应于确定上述融合循环计数值等于上述预处理轨迹序列中的预处理轨迹数量,将上述更新后的初始融合轨迹集确定为上述融合轨迹集。

第八步,响应于确定上述融合循环计数值小于上述预处理轨迹序列中预处理轨迹的数量,将上述第一个预处理轨迹移动至上述预处理轨迹序列中最后一位,再次执行上述融合步骤中的第一步到第七步。

步骤205,基于融合轨迹集,生成物品拿取信息组集。

在一些实施例中,上述执行主体可以基于融合轨迹集,生成物品拿取信息组集。其中,上述物品拿取信息组集中的物品拿取信息组可以为用户拿取的多个物品中各个物品对应的物品信息。物品拿取信息组集中的物品拿取信息可以包括:物品类别标识和物品拿取状态标识。

物品类别标识可以是可以是物品的类别名称。物品拿取状态标识可以是1。上述物品拿取状态标识也可以是0。当物品拿取状态标识为1时,可以表示物品被用户拿取。当物品拿取状态标识为0时,可以表示物品未被用户拿取。对于融合轨迹集中的每个融合轨迹,上述执行主体可以通过以下步骤生成物品拿取信息组:

第一步,响应于上述融合轨迹为一条轨迹,首先,上述执行主体可以根据上述融合轨迹中包括的各个第一顶点中每两个相邻的第一顶点,确定方向信息,得到方向信息集合。其次,响应于确定上述方向信息集合中的各个方向信息表征的方向相同,将上述融合轨迹对应的物品拿取信息组中的各个物品拿取信息包括的物品拿取状态标识确定为1。响应于确定上述方向信息集合中存在目标方向信息表征的方向与除去上述目标方向信息的方向信息集合中的方向信息表征的方向不同,将上述融合轨迹对应的物品拿取信息组中的各个物品拿取信息包括的物品拿取状态标识确定为0。接着,上述执行主体可以将上述融合轨迹中包括的各个第一顶点对应的物品检测信息包括物品类别标识,确定为上述融合轨迹对应的物品拿取信息组中各个物品拿取信息包括的物品类别标识。

第二步,响应于上述融合轨迹中包含至少一条子融合轨迹,对于上述至少一条子融合轨迹中的每条子融合轨迹,上述执行主体,首先可以根据上述子融合轨迹中包括的各个第一顶点中每两个相邻的第一顶点,确定方向信息,得到方向信息集合。其次,响应于确定上述方向信息集合中的各个方向信息表征的方向相同,将上述子融合轨迹对应的物品拿取信息组中的各个物品拿取信息包括的物品拿取状态标识确定为1。响应于确定上述方向信息集合中存在目标方向信息表征的方向与除去上述目标方向信息的方向信息集合中的方向信息表征的方向不同,将上述子融合轨迹对应的物品拿取信息组中的各个物品拿取信息包括的物品拿取状态标识确定为0。接着,上述执行主体可以将上述子融合轨迹中包括的各个第一顶点对应的物品检测信息包括物品类别标识,确定为上述子融合轨迹对应的物品拿取信息组中的物品拿取信息包括的物品类别标识。

作为示例,上述物品拿取信息组集可以是{([苹果,1]),([苹果,1],[黄瓜,0]),([苹果,1]),([苹果,0],[黄瓜,1],[青椒,1])}。

步骤206,将物品拿取信息组集发送至目标终端以供显示。

在一些实施例中,上述执行主体可以通过有线连接或无线连接的方式,将物品拿取信息组集发送至目标终端以供显示。

本公开的上述各个实施例中具有如下有益效果:通过本公开的一些实施例的基于视频图像的轨迹生成方法,提高了无人货柜的空间利用率。具体来说,造成无人货柜的空间利用率较低的原因在于:采用静态物品识别方法,为了保证能够精确地确定柜中物品的变化情况,往往需要无人货柜中留存有足够的空间,以保证无人货柜中的摄像机可以清楚地拍摄到无人货柜中的所有物品。基于此,本公开的一些实施例的基于视频图像的轨迹生成方法,首先,对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合。实际情况中,生成物品的移动轨迹,往往需要先从图像中识别出物品。通过对每一帧图像进行物品实体检测,从而实现了对图像中物品的识别。其次,基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集。实际情况中,用户可能会在一次开关门的时间区间内,从无人货柜中取出多件物品。通过生成候选轨迹集。从而,确定了物品检测信息集合中每个物品检测信息对应物品的移动轨迹。进一步,从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列。实际情况中,可能存在用户拿取又放回的情况。此种情况下的物品轨迹一般较短。通过轨迹筛选条件,从而实现了对较短物品轨迹的剔除。此外,对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。实际情况中,预处理轨迹序列可能存在对应的物品相同的预处理轨迹,因此需要将此类轨迹进行合并。通过对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,从而,实现了对同类物品对应的预处理轨迹的合并。最后,基于上述融合轨迹集,生成物品拿取信息组集。通过融合轨迹,以此实现了确定用户实际拿取的物品。最后,将用户所拿取的物品对应的信息发送至目标终端以供显示。此种方式,通过物品移动轨迹,以此确定用户实际拿取的物品。不需要无人货柜中留存有足够的空间,来保证无人货柜中的摄像机可以清楚地拍摄到无人货柜中的所有物品。从而,使得无人货柜能够存放更多的物品。大大提高了无人货柜的空间利用率。

进一步参考图5,其示出了根据本公开的基于视频图像的轨迹生成方法的另一些实施例的流程500。该基于视频图像的轨迹生成方法的流程500,包括以下步骤:

步骤501,将图像输入至物品实体检测模型,以生成第一候选物品信息。

在一些实施例中,基于视频图像的轨迹生成方法的执行主体(如图1所示的计算设备101)可以将图像输入至物品实体检测模型,以生成第一候选物品信息。其中,上述物品实体检测模型可以是但不限于以下任意一项:yolov2(youonlylookonceversion2,改进的yolo)模型和fastr-cnn(fastregionswithconvolutionalneuralnetworkfeatures,快速的区域卷积神经网络特征)模型。第一候选物品检测信息可以包括:候选物品类别标识、候选帧索引值、候选检测框第一顶点坐标和候选检测框第二顶点坐标。第二候选物品检测信息可以包括:候选物品类别标识、候选帧索引值、候选检测框第一顶点坐标和候选检测框第二顶点坐标。上述候选物品类别标识可以是物品的候选类别名称。上述候选帧索引值可以是第一候选物品检测信息对应的图像在上述预获取的视频中的索引值。上述候选检测框第一顶点坐标和候选检测框第二顶点坐标可以是图像坐标系下的坐标。上述候选检测框第一顶点坐标可以是候选物品检测框的左上角的顶点坐标。上述候选检测框第二顶点坐标可以是候选物品检测框的右下角的顶点坐标。

作为示例,上述第一候选物品检测信息可以是:{[番茄,1,(20,50),(50,10)],[黄瓜,1,(35,15),(50,5)]}。

步骤502,将图像输入至至少一个校验模型,以生成至少一个第二候选物品检测信息。

在一些实施例中,基于视频图像的轨迹生成方法的执行主体(如图1所示的计算设备101)可以将上述图像输入至至少一个校验模型,以生成至少一个第二候选物品检测信息。其中,上述至少一个校验模型中的校验模型可以是包括但不限于以下至少一项:ssd(singleshotmultiboxdetector,单阶段多框检测)模型、yolov3(youonlylookonceversion3,改进的yolov2)模型和fasterr-cnn(fasterregionswithconvolutionalneuralnetworkfeatures,区域卷积神经网络特征)模型。

作为示例,上述至少一个第二候选物品检测信息可以是:{[番茄,1,(20,50),(45,15)],[番茄,1,(25,55),(50,10)],[番茄,1,(22,48),(38,15)],[番茄,1,(19,52),(39,13)]}。

步骤503,基于第一候选物品检测信息包括的候选检测框第一顶点坐标、候选检测框第二顶点坐标和至少一个第二候选物品检测信息中各个第二候选物品检测信息包括的候选检测框第一顶点坐标、候选检测框第二顶点坐标,对第一候选物品检测信息包括的候选检测框第一顶点坐标和候选检测框第二顶点坐标,进行校正处理,以生成已矫正第一顶点坐标和已矫正第二顶点坐标。

在一些实施例中,基于视频图像的轨迹生成方法的执行主体(如图1所示的计算设备101)可以基于上述第一候选物品检测信息包括的候选检测框第一顶点坐标、候选检测框第二顶点坐标和上述至少一个第二候选物品检测信息中各个第二候选物品检测信息包括的候选检测框第一顶点坐标、候选检测框第二顶点坐标,通过以下公式,对上述第一候选物品检测信息包括的候选检测框第一顶点坐标和候选检测框第二顶点坐标,进行校正处理,以生成已矫正第一顶点坐标和已矫正第二顶点坐标:

其中,表示上述已矫正第一顶点坐标中的横坐标。表示上述已矫正第一顶点坐标中的纵坐标。表示上述已矫正第二顶点坐标中的横坐标。表示上述已矫正第二顶点坐标中的纵坐标。表示序号。表示上述至少一个第二候选物品检测信息中的第二候选物品检测信息的数量。表示上述第一候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标。表示上述第一候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标。表示上述第一候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标。表示上述第一候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标。表示上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标。表示上述至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标。表示上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标。表示上述至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标。表示上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标。表示上述至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标。表示上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标。表示上述至少一个第二候选物品检测信息中第个第二候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标。

作为示例,上述第一候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标可以是20。上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第一顶点坐标中的横坐标可以是[20,25,22,19]。上述第一候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标可以是50。上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第一顶点坐标中的纵坐标可以是[50,55,48,52]。上述第一候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标可以是50。上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第二顶点坐标中的横坐标可以是[45,50,38,39]。上述第一候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标可以是10。上述至少一个第二候选物品检测信息中的第二候选物品检测信息包括的候选检测框第二顶点坐标中的纵坐标可以是[15,10,15,13]。那么矫正后的第一顶点坐标中的横坐标可以是20,矫正后的第一顶点坐标中的纵坐标可以是51,矫正后的第二顶点坐标中的横坐标可以是50.4,矫正后的第二顶点坐标中的纵坐标可以是10。

步骤503中的公式以及相关内容作为本公开的一个发明点,由此解决了背景技术提及的技术问题二“由于光线等问题,导致视频的清晰度可能发生变化,进而,导致通过检测模型对视频中的图像进行检测,以生成的物品位置不够精准,从而,无法准确地确定用户所拿取的物品,使得生成的物品拿取信息往往出现错误,影响用户的购物体验,可能会降低无人货柜的用户流量”。导致无人货柜用户流量消耗极大的影响因素往往如下:由于光线等问题,导致视频的清晰度可能发生变化,使得通过检测模型对视频中的图像进行检测,以生成的物品位置不够精准。如果解决了上述影响因素,就能提高生成的物品拿取信息的准确度,增加无人货柜的用户流量,为了达到这一效果,首先,本公开将图像输入至物品实体检测模型,以生成第一候选物品信息。在实际情况中,由于物品实体检测模型(例如,cnn模型)的检测准确度无法提高到百分之百。因此,可能会导致生成的物品位置不够准确。因此,本公开引入了至少一个校验模型,通过多个校验模型,生成的多个物品位置,对物品实体检测模型生成的物品位置进行校正。从而提高了生成的物品位置的准确度。其次,考虑到不同校验模型的识别准确度不同。例如,某些校验模型可能出现过拟合的情况,某些校验模型可能出现欠拟合的情况。从而导致生成的物品位置准确度不尽相同。因此,通过将多个校验模型生成的物品位置中的坐标值进行取平均值处理,能够较好地避免通过校验模型,生成的物品位置不够精准的情况。最后,通过多个校验模型生成的物品位置对物品实体检测模型生成的物品位置进行校正。从而提高了最终生成的物品位置的准确度。进而,提高了无人货柜的用户流量。

步骤504,基于上述已矫正第一顶点坐标、上述已矫正第二顶点坐标和上述第一候选物品检测信息包括的候选物品类别标识、候选帧索引值,生成上述物品检测信息。

在一些实施例中,基于视频图像的轨迹生成方法的执行主体(如图1所示的计算设备101)可以基于上述已矫正第一顶点坐标、上述已矫正第二顶点坐标和上述第一候选物品检测信息包括的候选物品类别标识、候选帧索引值,生成上述物品检测信息。

作为示例,上述已矫正第一顶点坐标可以是(20,51)、上述已矫正第二顶点坐标可以是(50.4,10)。上述第一候选物品检测信息包括的候选物品类别标识可以是“番茄”。上述第一候选物品检测信息包括的候选帧索引值可以是“1”。上述物品检测信息可以是[番茄,1,(20,51),(50.4,10)]。

步骤505,基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集。

步骤506,从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列。

步骤507,对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。

步骤508,基于上述融合轨迹集,生成物品拿取信息组集。

步骤509,将上述物品拿取信息组集发送至目标终端以供显示。

在一些实施例中,步骤505-步骤509的具体实现方式及所带来的技术效果可以参考图2对应的那些实施例中的步骤202-步骤206,在此不再赘述。

首先,本公开将图像输入至物品实体检测模型,以生成第一候选物品信息。在实际情况中,由于物品实体检测模型(例如,cnn模型)的检测准确度无法提高到百分之百。因此,可能会导致生成的物品位置不够准确。因此,本公开引入了至少一个校验模型,通过多个校验模型,生成的多个物品位置,对物品实体检测模型生成的物品位置进行校正。从而提高了生成的物品位置的准确度。其次,考虑到不同校验模型的识别准确度不同。例如,某些校验模型可能出现过拟合的情况,某些校验模型可能出现欠拟合的情况。从而导致生成的物品位置准确度不尽相同。因此,通过将多个校验模型生成的物品位置中的坐标值进行取平均值处理,能够较好地避免通过校验模型,生成的物品位置不够精准的情况。最后,通过多个校验模型生成的物品位置对物品实体检测模型生成的物品位置进行校正。从而提高了最终生成的物品位置的准确度。进而,提高了无人货柜的用户流量。

进一步参考图6,作为对上述各图所示方法的实现,本公开提供了一种基于视频图像的轨迹生成装置的一些实施例,这些装置实施例与图2所示的那些方法实施例相对应,该装置具体可以应用于各种电子设备中。

如图6所示,一些实施例的基于视频图像的轨迹生成装置600包括:检测单元601、第一生成单元602、筛选单元603、融合单元604、第二生成单元605和显示单元606。其中,检测单元601,被配置成对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合,其中,上述物品检测信息集合中的物品检测信息包括:物品类别标识、帧索引值、第一顶点坐标和第二顶点坐标;第一生成单元602,被配置成基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集;筛选单元603,被配置成从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列;融合单元604,被配置成对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集。第二生成单元605,被配置成基于上述融合轨迹集,生成物品拿取信息组集;显示单元606,被配置成将上述物品拿取信息组集发送至目标终端以供显示。

可以理解的是,该装置600中记载的诸单元与参考图2描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作、特征以及产生的有益效果同样适用于装置600及其中包含的单元,在此不再赘述。

下面参考图7,其示出了适于用来实现本公开的一些实施例的电子设备(例如图1中的服务器或终端设备)700的结构示意图。图7示出的电子设备/终端设备/服务器仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。

如图7所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)701,其可以根据存储在只读存储器(rom)702中的程序或者从存储装置708加载到随机访问存储器(ram)703中的程序而执行各种适当的动作和处理。在ram703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、rom702以及ram703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。

通常,以下装置可以连接至i/o接口705:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置706;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置707;包括例如磁带、硬盘等的存储装置708;以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图7中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。

特别地,根据本公开的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置708被安装,或者从rom702被安装。在该计算机程序被处理装置701执行时,执行本公开的一些实施例的方法中限定的上述功能。

需要说明的是,本公开的一些实施例中记载的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。

在一些实施方式中,客户端、服务器可以利用诸如http(hypertexttransferprotocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,adhoc端对端网络),以及任何当前已知或未来研发的网络。上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合,其中,上述物品检测信息集合中的物品检测信息包括:物品类别标识、帧索引值、第一顶点坐标和第二顶点坐标;基于上述物品检测信息集合中的物品检测信息,生成候选轨迹集;从上述候选轨迹集中筛选出满足轨迹筛选条件的候选轨迹作为预处理轨迹,得到预处理轨迹序列;对上述预处理轨迹序列中的预处理轨迹进行轨迹融合处理,得到融合轨迹集;基于上述融合轨迹集,生成物品拿取信息组集;将上述物品拿取信息组集发送至目标终端以供显示。

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的一些实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括检测单元、第一生成单元、筛选单元、融合单元、第二生成单元和显示单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,检测单元还可以被描述为“对预获取的视频中的每一帧图像进行物品实体检测,以生成物品检测信息,得到物品检测信息集合的单元”。

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

以上描述仅为本公开的一些较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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