具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提出了一种基于多目标的轨迹识别方法、装置、介质和计算设备。
在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
示例性方法
下面参考图1,图1为本发明一实施例提供的基于多目标的轨迹识别方法的流程示意图。需要注意的是,本发明的实施方式可以应用于适用的任何场景。
图1所示的本发明一实施例提供的基于多目标的轨迹识别方法的流程,包括:
步骤S101,对输入的操作视频进行目标识别,得到所述操作视频中每帧图像包含的多个目标的目标位置信息;
步骤S102,基于所述目标位置信息确定各个目标对应的运动信息;
步骤S103,基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度;
步骤S104,基于所述各个目标对应的离散程度从所述各个目标对应的运动信息中获取最终的运动信息;
步骤S105,基于所述最终的运动信息,确定出各个目标对应的移动轨迹信息。
本申请中提出的基于多目标的轨迹识别方法所针对的是基于人工智能所构建的目标轨迹识别模型,包括但不限于多目标识别、多类型目标识别等各个适用不同应用场景的目标轨迹识别模型。
本发明能够从输入的操作视频中识别出每帧图像中包含的多个目标的目标位置信息,并从目标位置信息中得到各个目标对应的运动信息,进而基于运动信息计算得到各个目标的离散程度,基于得到的离散程度从各个目标对应的运动信息中选取出符合要求的运动信息,并得到选取出的各个目标对应的移动轨迹信息,从而可以从操作视频中识别出其中包含的多个目标的移动轨迹,提升了识别到的目标轨迹的全面性。
下面结合附图说明如何提升识别到的目标轨迹的全面性:
本发明实施例中,操作视频可以为从图像采集设备(如摄像机、内窥镜等)采集到的视频等影像数据中得到,操作视频可以预先进行存储,当需要对操作视频中的目标进行识别时,可以对操作视频进行读取,读取的方式可以为:对输入的视频路径进行加载,如果视频路径的字符串是“rtsp”、“http”或其他网络协议模型的开头,则可以确定操作视频路径为网络视频流格式,可以将该视频流进行加载获取到操作视频;如果路径字符串格式是本地摄像头的型号或摄像头序号,则按本地视频设备处理方式将设备摄入的操作视频进行加载;如果路径字符串以磁盘路径(例如:“F:/”、“C:/”、“/”等)开始,特定后缀(例如:“mp4”、“avi”、“mkv”等)结束,则按本地视频格式进行处理,并将本地的操作视频进行加载。以及,输入的操作视频中可以包含多种类型的目标,例如环境类型的目标、器具类型的目标、人物类型的目标以及车辆类型的目标等,对此,本发明实施例不做限定。
本发明实施例中,操作视频的每帧图像中都可以不存在需要识别的目标,也可以存在需要识别的目标,且每帧图像中可以包括一个需要识别的目标,也可以包含多个需要识别的目标,多个需要识别的目标可以为相同类别的目标,也可以为不同类别的目标,识别到的每个目标都可以对应一个目标位置信息,目标位置信息中可以包含识别到的一个目标的标识、目标类型、目标在当前帧图像中所处的位置信息等,可以通过包围框的方式指示识别到的目标在当前帧图像中所处的具体位置,包围框的形式可以为矩形包围框、圆形包围框、椭圆形包围框或多边形包围框等,包围框在当前帧图像中对应的坐标可以确定为目标在当前帧图像中所处的位置信息。
以及,可以基于得到的各个目标的目标位置信息计算得到各个目标的运动信息,任意一个目标的运动信息可以包含该目标的移动距离和移动速度等,移动距离可以为从前一帧图像中该目标所处位置处移动至当前帧图像中该目标所处位置处的距离,移动速度可以通过移动速度与相邻两帧图像之间的时间计算得到。
本发明实施例中,一般物体的运动曲线通常是较为平滑的,因此目标在操作视频的每帧图像中的移动轨迹也应是平滑的,如果目标的目标位置信息在操作视频的每帧图像中的分布较为离散,可以认为该目标的目标位置信息不够准确,可能是识别到的噪声,从而需要将噪声从识别到的各个目标对应的运动中剔除,从而得到不包含噪声的最终的运动信息。判断目标的目标位置信息是否较为离散的方式可以为通过计算各个目标对应的离散程度来确定,各个目标对应的离散程度可以通过各个目标对应的运动信息计算得到。
作为一种可选的实施方式,所述运动信息中包括但不限于运动质点和运动参数,所述运动参数中包括但不限于运动距离和运动速度,基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度的方式可以包括以下步骤:
获取各个目标的运动信息中运动质点的原始数量和非空数量;
基于所述原始数量和所述非空数量计算得到各个目标对应的置信度;
基于各个目标的运动信息中的运动距离和运动速度,计算得到各个目标对应的方差;
基于所述各目标对应的置信度和方差,计算得到各个目标对应的离散程度。
其中,实施这种实施方式,可以获取到运动信息中的运动质点和运动参数,运动参数中可以包含运动距离和运动速度,基于各个目标对应的运动距离和运动速度可以计算得到各个目标对应的方差,以及可以根据各个目标的运动信息中运动质点的原始数量和非空数量,计算得到各个目标对应的置信度,进而可以基于置信度和方差计算得到各个目标对应的离散程度,以使得到的各个目标对应的离散程度更加精确。
本发明实施例中,运动信息中可以包括但不限于运动质点和运动参数,运动质点可以为目标的包围框上的任意一点,也可以为包围框标识的区域内的任意一点,可以根据运动质点的在操作视频中的每帧图像中所处的位置计算得到运动质点对应的目标的运动参数,运动参数可以包括但不限于运动距离和运动速度。
以及,操作视频中的同一个目标可能只会在一部分帧图像中出现,目标对应的运动信息中可能会存储有操作视频中每帧图像中对该目标识别的运动信息,当某一帧图像中不存在该目标时,存储的这一帧图像的该目标的运动信息可以认为是空的运动信息,因此,可以获取到各个目标的运动信息中运动质点的原始数量和非空数量,原始数量可以为目标对应的运动信息中存储的每帧图像中的目标的运动信息的数量,非空数量可以为运动信息不为空的目标的运动质点的数量,进而可以基于得到的原始数量和非空数量计算得到各个目标对应的置信度M,置信度M的计算方式具体可以为:
其中,l为当前目标对应的运动质点的非空数量,MaxLen为当前目标对应的运动质点的原始数量;
之后,可以根据获取到的各个目标的运动信息中的运动距离和运动速度计算得到各个目标对应的方差,首先可以基于各个目标对应的运动信息中的运动距离计算得到各个目标对应的距离方差var1,并且可以基于各个目标对应的运动信息中的运动速度计算得到各个目标对应的速度方差var2,以及可以基于得到的各个目标对应的距离方差var1和速度方差var2计算得到各个目标对应的方差var,各个目标对应的方差var具体计算方式可以为:
最终可以将各个目标对应的置信度M与方差var相乘,可以得到各个目标对应的离散程度,此时,可以预先设置离散程度的阈值,如果一个目标对应的离散程度大于预设的阈值,可以认为该目标的运动质点在操作视频中的运动过于分散,很大可能是错误识别到的目标,因此可以将离散程度大于预设的阈值的目标的运动信息从识别到的所有目标的运动信息中剔除,从而使得得到的最终的运动信息对应的目标为识别到的较为可靠的目标,可见,基于较为可靠的目标对应的运动信息中确定出的目标对应的移动轨迹信息也较为可靠。其中,目标对应的移动轨迹信息可以为在操作视频中根据目标的运动信息对该目标进行标识,得到的该目标的移动轨迹信息。
请参阅图2,图2为本发明另一实施例提供的基于多目标的轨迹识别方法的流程示意图,图2所示的本发明另一实施例提供的基于多目标的轨迹识别方法的流程包括:
步骤S201,对输入的操作视频进行目标识别,得到所述操作视频中每帧图像包含的多个目标的目标位置信息;
本发明实施例中,所述目标位置信息中包含目标对应的包围框信息,所述包围框信息为用于指示所述目标对应的当前帧图像中所在位置的包围框的信息,其中,目标位置信息中可以包含目标对应的包围框信息,可以通过得到的包围框信息从操作视频中的目标对应的当前帧图像中确定出目标的所在位置,提高了目标位置获取的准确性。
步骤S202,获取各个目标对应的类别标签;
步骤S203,根据所述各个目标的目标位置信息确定各个目标对应的运动质点;
步骤S204,根据所述操作视频中任意相邻两帧图像中包含的各个目标对应的运动质点,计算得到各个目标对应的运动参数,所述运动参数中包括但不限于运动距离和运动速度;
步骤S205,基于所述类别标签、所述运动质点以及所述运动参数构建各个目标对应的运动信息。
实施上述的步骤S202~步骤S205,可以根据各个目标的位置信息确定出各个目标对应的运动质点,并基于运动质点计算得到各个目标对应的运动参数,以及可以将各个目标对应的类别标签以及得到的运动质点和运动参数共同构建出各个目标对应的运动信息,保证了运动信息中包含的信息的全面性。
本发明实施例中,每个目标都可以对应一种类别,目标的类别可以为环境类别、器具类别、病灶类别以及器官类别等,对此,本发明实施例不做限定。每种目标的类别都可以对应不同的类别标签,可以通过类别标签区分各个目标对应的具体类别。
以及,可以根据操作视频中任意相邻两帧图像中包含的各个目标对应的运动质点,计算得到各个目标对应的运动参数,例如操作视频的第一帧图像中识别到的第一目标对应的运动质点可以与操作视频的第二帧图像中识别到的第二目标对应的运动质点进行计算,得到第二目标对应的运动参数,第一目标可以与第二目标为相同的目标,只是分别在第一帧图像和第二帧图像中被识别;以及,第二目标对应的运动参数的计算方式可以为:根据第一目标对应的运动质点的位置信息与第二目标对应的运动质点的为位置信息进行计算,得到从第一目标对应的运动质点移动至第二目标对应的运动质点的运动距离和运动速度等运动参数;由于第一帧图像中识别到的第一目标之前没有可以计算的目标的运动信息,因此,可以将第一帧图像中识别到的第一目标对应的运动质点的运动距离和运动速度都确定为0,从而可以将得到的目标的类别标签、运动质点以及运动参数同时确定为该目标对应的运动信息。
本发明实施例中,步骤S203根据所述各个目标的目标位置信息确定各个目标对应的运动质点的具体实现方式可以包括但不限于以下几种方式:
(1)从所述各个目标对应的包围框信息中获取包围框坐标;
对所述包围框坐标进行计算,得到各个包围框的中心点;
将所述各个包围框的中心点分别确定为各个目标对应的运动质点。
其中,实施这种实施方式,可以基于获取到的把包围框信息进行计算,将包围框的中心点分别确定为各个目标对应的运动质点,以使运动质点的确定具有统一性。
举例来说,如果包围框的形状为矩形时,包围框在对应的目标所在帧图像中的起始点坐标可以为(x,y),包围框的宽可以为w,包围框的高可以为h,包围框的中心点的坐标可以为
因此,该目标对应的运动质点可以确定为包围框的中心点,即目标对应的运动质点的坐标也可以为
如果包围框的形状为圆形时,包围框的包围框坐标可以包含包围框的圆心坐标以及包围框的半径r,此时,包围框的中心点即为包围框的圆心,因此该目标对应的运动质点也为包围框的圆心。
(2)基于所述各个目标对应的包围框信息,将所述包围框信息中与预设方位对应的顶点确定为各个目标对应的运动质点。
其中,实施这种实施方式,可以将包围框中与预设方位对应的定点确定为各个目标的运动质点,简化了运动质点的确定过程,提升了运动质点的确定效率。
举例来说,包围框可以为矩形包围框、多边形包围框等,如果包围框为矩形包围框,预设方位可以为矩形包围框的左上角顶点、左下角顶点、右上角顶点或右下角顶点等;如果包围框为多边形包围框,预设方位可以为多边形包围框上的任意一个顶点。
(3)从所述各个目标对应的包围框信息中获取包围框坐标;
基于所述包围框坐标计算得到各个包围框的中心点以及每帧图像中的纵向中心线;
当包围框的中心点位于所述包围框所处图像中的纵向中心线左侧时,将所述包围框的右上角顶点确定为所述包围框指示的目标对应的运动质点;以及
当包围框的中心点位于所述包围框所处图像中的纵向中心线右侧时,将所述包围框的左上角顶点确定为所述包围框指示的目标对应的运动质点。
其中,实施这种实施方式,可以根据包围框在每帧图像中的所在位置确定不同的包围框顶点为运动质点,避免了确定的包围框定点不处于每帧图像的范围内,提高了运动质点确定的可靠性。
本发明实施例中,如果包围框的形状为矩形时,包围框在对应的目标所在帧图像中的起始点坐标可以为(x,y),包围框的宽可以为w,包围框的高可以为h,包围框的中心点的坐标可以为
通常来说,如果目标出现在操作视频的左侧,可以认为目标是从左侧出现的,因此需要将当包围框的右上角顶点确定为目标的运动质点;如果目标出现在操作视频的右侧,可以认为目标是从右侧出现的,因此需要将包围框的左上角顶点确定为目标的运动质点;因此,可以先确定操作视频中目标所在的当前帧图像的纵向中心线,进而判断包围框的中心点位于纵向中心线的左侧还是右侧,当确定包围框的中心点位于纵向中心线的左侧时,就可以将包围框的右上角顶点确定为目标对应的运动质点;当确定包围框的中心点位于纵向中心线的右侧时,就可以将包围框的左上角顶点确定为目标对应的运动质点。
请一并参阅图3,图3为根据本发明的一种实施方式确定每个目标对应的运动质点的示意图,其中,B可以为操作视频中的任意一帧图像,M可以为第一个目标对应的第一包围框,N可以为第二个目标对应的第二包围框,L可以为任意一帧图像B的纵向中心线,从图3中可见,第一包围框全部位置纵向中心线L的左侧,因此可以将第一包围框的右上角顶点m确定为第一个目标对应的运动质点;第二包围框全部位置纵向中心线L的右侧,因此可以将第二包围框的左上角顶点n确定为第二个目标对应的运动质点。
(4)从所述各个目标对应的包围框信息中获取包围框坐标;
对所述包围框坐标进行计算,得到各个包围框的中心点坐标和顶点坐标;
基于任一包围框的中心点坐标和所述任一包围框对应的前一包围框的中心点坐标,计算得到所述任一包围框和所述前一包围框的中心点运动差异;
基于所述任一包围框的顶点坐标和所述前一包围框的顶点坐标,计算得到所述任一包围框和所述前一包围框的顶点运动差异;
当所述中心点运动差异最小时,将所述任一包围框的中心点确定为所述任一包围框对应的目标的运动质点;
当所述顶点运动差异最小时,将所述任一包围框中最小的所述顶点运动差异对应的顶点确定为所述任一包围框对应的目标的运动质点。
其中,实施这种实施方式,可以获取当前帧图像中目标的当前包围框与前一帧图像中该目标的前一包围框,当前包围框的顶点与前一包围框的顶点可以是一一对应的,以及当前包围框的中心点与前一包围框的中心点也可以是一一对应的,因此可以计算当前包围框的任意顶点与前一包围框中该任意顶点对应的前一顶点之间的运动差异,还可以计算当前包围框的中心点与前一包围框中该任意顶点对应的中心点之间的运动差异,从运动差异中选取当前包围框中运动差异最小的当前顶点作为运动质点,从而使得在目标运动速度较快的情况下也能够保证运动质点选取的准确性。
本发明实施例中,包围框可以为矩形包围框,可以根据包围框坐标计算得到包围框的每个顶点的顶点坐标,还可以根据包围框坐标计算得到包围框的中心点坐标,可以获取到相邻两帧图像中同一目标对应的两个包围框的中心点坐标和顶点坐标,即任一包围框和任一包围框对应的前一包围框可以为相邻两帧图像中指示同一个目标的两个不同帧图像中的包围框,中心点运动差异可以为任一包围框的中心点坐标和任一包围框对应的前一包围框的中心点坐标之间的距离,顶点运动差异也可以为任一包围框的顶点坐标和前一包围框的顶点坐标之间的距离。
请一并参阅图4,图4为根据本发明的另一种实施方式确定每个目标对应的运动质点的示意图;其中,B可以为操作视频中的任意一帧图像,M2可以为任一帧图像中指示目标所在位置的任一包围框,M1可以为前一帧图像中指示同一目标所在位置的前一包围框,前一包围框与任一包围框对应,p1、q1、r1和s1为包围框M1的四个顶点,m1为包围框M1的中心点,p2、q2、r2和s2为包围框M2的四个顶点,m2为包围框M2的中心点,线段p1p2为顶点p1与顶点p2之间的顶点运动差异,线段q1q2为顶点q1与顶点q2之间的顶点运动差异,线段r1r2为顶点r1与顶点r2之间的顶点运动差异,线段s1s2为顶点s1与顶点s2之间的顶点运动差异,线段m1m2为中心点m1与中心点m2之间的中心点运动差异,从图4中可以看出,线段r1r2对应的顶点运动差异最小,因此,可以将顶点r2确定为包围框M2指示的目标对应的运动质点。
(5)从所述各个目标对应的包围框信息中获取包围框的顶点坐标;
获取任一包围框对应的前一包围框的运动质点;
基于所述任一包围框的顶点坐标与所述前一包围框的运动质点,计算得到所述任一包围框和所述前一包围框的质点运动差异;
将所述任一包围框中最小的顶点运动差异对应的顶点确定为所述任一包围框对应的目标的运动质点。
其中,实施这种实施方式,可以将当前帧图像中目标的包围框的顶点与前一帧图像中该目标对应的运动质点进行计算,得到包围框各个顶点与该运动质点之间的运动差异,并且可以将运动差异最小的顶点确定为当前帧图像中的包围框指示的目标对应的运动质点,保证了运动质点移动的稳定性。
请一并参阅图5,图5为根据本发明的又一种实施方式确定每个目标对应的运动质点的示意图;其中,B可以为操作视频中的任意一帧图像,N2可以为任一帧图像中指示目标所在位置的任一包围框,N1可以为前一帧图像中指示同一目标所在位置的前一包围框,前一包围框与任一包围框对应,z1、z2、z3和z4为包围框N2的四个顶点,y为包围框N1指示的目标对应的运动质点,线段z1y为顶点z1与运动质点y之间的质点运动差异,线段z2y为顶点z2与运动质点y之间的质点运动差异,线段z3y为顶点z3与运动质点y之间的质点运动差异,线段z4y为顶点z4与运动质点y之间的质点运动差异,从图5中可以看出,线段z3y对应的质点运动差异最小,因此,可以将顶点z3确定为包围框N2指示的目标对应的运动质点。
步骤S206,获取所述操作视频的每秒传输帧数;
步骤S207,基于所述每秒传输帧数以及所述各个目标对应的运动信息,对所述各个目标对应的运动信息中的运动参数进行更新,得到更新后的各个目标对应的运动信息;
步骤S208,基于所述更新后的各个目标对应的运动信息,计算得到各个目标对应的离散程度。
实施上述的步骤S206~步骤S208,可以根据操作视频的每秒传输帧数和各个目标对应的运动信息对运动信息中的运动参数进行更新,并基于更新后的各个目标对应的运动信息计算得到各个目标对应的离散程度,提高了运动信息的准确性,同时也提高了离散程度计算的准确性。
本发明实施例中,操作视频的每秒传输帧数(Frame Per Second,FPS)可以表示一秒操作视频播放的图像帧数,可以基于获取到的操作视频的FPS计算得到操作视频播放一帧图像的时长。由于识别到的操作视频中的同一目标可能不是持续出现,因此,部分目标的运动信息中对于运动参数的计算可能不够准确,需要获取到同一目标在操作视频中实际出现的帧图像出的序号,并且可以获取该目标当前被识别到的帧图像与前一次被识别到的帧图像之间的间隔的帧数,基于获取到的帧数与操作视频播放一帧图像的时长重新对当前识别到的目标的运动参数进行计算,并根据计算得到的新的运动参数对目标原始对应的运动信息中的运动参数进行更新,得到更新后更加准确的运动信息。
步骤S209,将大于预设阈值的离散程度对应的运动信息进行删除,得到删除后的运动信息,并将所述删除后的运动信息确定为最终的运动信息。
实施上述的步骤S209,可以将不符合预设阈值的离散程度对应的运动信息删除,以使得到的最终的运动信息的离散程度都是符合预设阈值的,保证了得到的最终的运动信息都为较为合理的运动信息,提升了最终的运动信息的准确性。
步骤S210,基于所述最终的运动信息,确定出各个目标对应的移动轨迹信息。
本发明可以从操作视频中识别出其中包含的多个目标的移动轨迹,提升了识别到的目标轨迹的全面性。此外,本发明还可以使得到的各个目标对应的离散程度更加精确。此外,本发明还可以提高目标位置获取的准确性。此外,本发明还可以保证运动信息中包含的信息的全面性。此外,本发明还可以使运动质点的确定具有统一性。此外,本发明还可以简化运动质点的确定过程,并提升了运动质点的确定效率。此外,本发明还可以提高运动质点确定的可靠性。此外,本发明还可以使得在目标运动速度较快的情况下也能够保证运动质点选取的准确性。此外,本发明还可以保证运动质点移动的稳定性。此外,本发明还可以提高运动信息的准确性,同时也提高了离散程度计算的准确性。此外,本发明还可以提升最终的运动信息的准确性。
示例性装置
在介绍了本发明示例性实施方式的方法之后,接下来,参考图6对本发明示例性实施方式的一种基于多目标的轨迹识别装置进行说明,该装置包括:
识别单元601,用于对输入的操作视频进行目标识别,得到所述操作视频中每帧图像包含的多个目标的目标位置信息;
确定单元602,用于基于识别单元601得到的所述目标位置信息确定各个目标对应的运动信息;
计算单元603,用于基于确定单元602确定的所述各个目标对应的运动信息,计算得到各个目标对应的离散程度;
获取单元604,用于基于计算单元603得到的所述各个目标对应的离散程度从所述各个目标对应的运动信息中选取最终的运动信息;
所述确定单元602,还用于基于获取单元604获取的所述最终的运动信息,确定出各个目标对应的移动轨迹信息。
作为一种可选的实施方式,获取单元604基于所述各个目标对应的离散程度从所述各个目标对应的运动信息中获取最终的运动信息的方式具体为:
将大于预设阈值的离散程度对应的运动信息进行删除,得到删除后的运动信息,并将所述删除后的运动信息确定为最终的运动信息。
其中,实施这种实施方式,可以将不符合预设阈值的离散程度对应的运动信息删除,以使得到的最终的运动信息的离散程度都是符合预设阈值的,保证了得到的最终的运动信息都为较为合理的运动信息,提升了最终的运动信息的准确性。
作为一种可选的实施方式,所述运动信息中包括但不限于运动质点和运动参数,所述运动参数中包括但不限于运动距离和运动速度,计算单元603基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度的方式具体为:
获取各个目标的运动信息中运动质点的原始数量和非空数量;
基于所述原始数量和所述非空数量计算得到各个目标对应的置信度;
基于各个目标的运动信息中的运动距离和运动速度,计算得到各个目标对应的方差;
基于所述各目标对应的置信度和方差,计算得到各个目标对应的离散程度。
其中,实施这种实施方式,可以获取到运动信息中的运动质点和运动参数,运动参数中可以包含运动距离和运动速度,基于各个目标对应的运动距离和运动速度可以计算得到各个目标对应的方差,以及可以根据各个目标的运动信息中运动质点的原始数量和非空数量,计算得到各个目标对应的置信度,进而可以基于置信度和方差计算得到各个目标对应的离散程度,以使得到的各个目标对应的离散程度更加精确。
作为一种可选的实施方式,确定单元602基于所述目标位置信息确定各个目标对应的运动信息的方式具体为:
获取各个目标对应的类别标签;
根据所述各个目标的目标位置信息确定各个目标对应的运动质点;
根据所述操作视频中任意相邻两帧图像中包含的各个目标对应的运动质点,计算得到各个目标对应的运动参数,所述运动参数中包括但不限于运动距离和运动速度;
基于所述类别标签、所述运动质点以及所述运动参数构建各个目标对应的运动信息。
其中,实施这种实施方式,可以根据各个目标的位置信息确定出各个目标对应的运动质点,并基于运动质点计算得到各个目标对应的运动参数,以及可以将各个目标对应的类别标签以及得到的运动质点和运动参数共同构建出各个目标对应的运动信息,保证了运动信息中包含的信息的全面性。
作为一种可选的实施方式,所述装置的确定单元602还包括:
基于所述类别标签、所述运动质点以及所述运动参数构建各个目标对应的运动信息之后,获取所述操作视频的每秒传输帧数;
基于所述每秒传输帧数以及所述各个目标对应的运动信息,对所述各个目标对应的运动信息中的运动参数进行更新,得到更新后的各个目标对应的运动信息;
以及,基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度的方式具体为:
基于所述更新后的各个目标对应的运动信息,计算得到各个目标对应的离散程度。
其中,实施这种实施方式,可以根据操作视频的每秒传输帧数和各个目标对应的运动信息对运动信息中的运动参数进行更新,并基于更新后的各个目标对应的运动信息计算得到各个目标对应的离散程度,提高了运动信息的准确性,同时也提高了离散程度计算的准确性。
作为一种可选的实施方式,所述目标位置信息中包含目标对应的包围框信息,所述包围框信息为用于指示所述目标对应的当前帧图像中所在位置的包围框的信息。
其中,实施这种实施方式,目标位置信息中可以包含目标对应的包围框信息,可以通过得到的包围框信息从操作视频中的目标对应的当前帧图像中确定出目标的所在位置,提高了目标位置获取的准确性。
作为一种可选的实施方式,确定单元602根据所述各个目标的目标位置信息确定各个目标对应的运动质点的方式具体为:
从所述各个目标对应的包围框信息中获取包围框坐标;
对所述包围框坐标进行计算,得到各个包围框的中心点;
将所述各个包围框的中心点分别确定为各个目标对应的运动质点。
其中,实施这种实施方式,可以基于获取到的把包围框信息进行计算,将包围框的中心点分别确定为各个目标对应的运动质点,以使运动质点的确定具有统一性。
作为一种可选的实施方式,确定单元602根据所述各个目标的目标位置信息确定各个目标对应的运动质点的方式具体为:
基于所述各个目标对应的包围框信息,将所述包围框信息中与预设方位对应的顶点确定为各个目标对应的运动质点。
其中,实施这种实施方式,可以将包围框中与预设方位对应的定点确定为各个目标的运动质点,简化了运动质点的确定过程,提升了运动质点的确定效率。
作为一种可选的实施方式,确定单元602根据所述各个目标的目标位置信息确定各个目标对应的运动质点的方式具体为:
从所述各个目标对应的包围框信息中获取包围框坐标;
基于所述包围框坐标计算得到各个包围框的中心点以及每帧图像中的纵向中心线;
当包围框的中心点位于所述包围框所处图像中的纵向中心线左侧时,将所述包围框的右上角顶点确定为所述包围框指示的目标对应的运动质点;以及
当包围框的中心点位于所述包围框所处图像中的纵向中心线右侧时,将所述包围框的左上角顶点确定为所述包围框指示的目标对应的运动质点。
其中,实施这种实施方式,可以根据包围框在每帧图像中的所在位置确定不同的包围框顶点为运动质点,避免了确定的包围框定点不处于每帧图像的范围内,提高了运动质点确定的可靠性。
作为一种可选的实施方式,确定单元602根据所述各个目标的目标位置信息确定各个目标对应的运动质点的方式具体为:
从所述各个目标对应的包围框信息中获取包围框坐标;
对所述包围框坐标进行计算,得到各个包围框的中心点坐标和顶点坐标;
基于任一包围框的中心点坐标和所述任一包围框对应的前一包围框的中心点坐标,计算得到所述任一包围框和所述前一包围框的中心点运动差异;
基于所述任一包围框的顶点坐标和所述前一包围框的顶点坐标,计算得到所述任一包围框和所述前一包围框的顶点运动差异;
当所述中心点运动差异最小时,将所述任一包围框的中心点确定为所述任一包围框对应的目标的运动质点;
当所述顶点运动差异最小时,将所述任一包围框中最小的所述顶点运动差异对应的顶点确定为所述任一包围框对应的目标的运动质点。
其中,实施这种实施方式,可以获取当前帧图像中目标的当前包围框与前一帧图像中该目标的前一包围框,当前包围框的顶点与前一包围框的顶点可以是一一对应的,以及当前包围框的中心点与前一包围框的中心点也可以是一一对应的,因此可以计算当前包围框的任意顶点与前一包围框中该任意顶点对应的前一顶点之间的运动差异,还可以计算当前包围框的中心点与前一包围框中该任意顶点对应的中心点之间的运动差异,从运动差异中选取当前包围框中运动差异最小的当前顶点作为运动质点,从而使得在目标运动速度较快的情况下也能够保证运动质点选取的准确性。
作为一种可选的实施方式,确定单元602根据所述各个目标的目标位置信息确定各个目标对应的运动质点的方式具体为:
从所述各个目标对应的包围框信息中获取包围框的顶点坐标;
获取任一包围框对应的前一包围框的运动质点;
基于所述任一包围框的顶点坐标与所述前一包围框的运动质点,计算得到所述任一包围框和所述前一包围框的质点运动差异;
将所述任一包围框中最小的顶点运动差异对应的顶点确定为所述任一包围框对应的目标的运动质点。
其中,实施这种实施方式,可以将当前帧图像中目标的包围框的顶点与前一帧图像中该目标对应的运动质点进行计算,得到包围框各个顶点与该运动质点之间的运动差异,并且可以将运动差异最小的顶点确定为当前帧图像中的包围框指示的目标对应的运动质点,保证了运动质点移动的稳定性。
示例性介质
在介绍了本发明示例性实施方式的方法和装置之后,接下来,参考图7对本发明示例性实施方式的计算机可读存储介质进行说明,请参考图7,其示出的计算机可读存储介质为光盘70,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会实现上述方法实施方式中所记载的各步骤,例如,对输入的操作视频进行目标识别,得到所述操作视频中每帧图像包含的多个目标的目标位置信息;基于所述目标位置信息确定各个目标对应的运动信息;基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度;基于所述各个目标对应的离散程度从所述各个目标对应的运动信息中获取最终的运动信息;基于所述最终的运动信息,确定出各个目标对应的移动轨迹信息;各步骤的具体实现方式在此不再重复说明。
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
示例性计算设备
在介绍了本发明示例性实施方式的方法、介质和装置之后,接下来,参考图8对本发明示例性实施方式的用于基于多目标的轨迹识别的计算设备。
图8示出了适于用来实现本发明实施方式的示例性计算设备80的框图,该计算设备80可以是计算机系统或服务器。图8显示的计算设备80仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,计算设备80的组件可以包括但不限于:一个或者多个处理器或者处理单元801,系统存储器802,连接不同系统组件(包括系统存储器802和处理单元801)的总线803。
计算设备80典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算设备80访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器802可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)8021和/或高速缓存存储器8022。计算设备80可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,ROM8023可以用于读写不可移动的、非易失性磁介质(图8中未显示,通常称为“硬盘驱动器”)。尽管未在图8中示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线803相连。系统存储器802中可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块8024的程序/实用工具8025,可以存储在例如系统存储器802中,且这样的程序模块8024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块8024通常执行本发明所描述的实施例中的功能和/或方法。
计算设备80也可以与一个或多个外部设备804(如键盘、指向设备、显示器等)通信。这种通信可以通过输入/输出(I/O)接口605进行。并且,计算设备80还可以通过网络适配器806与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图8所示,网络适配器806通过总线803与计算设备80的其它模块(如处理单元801等)通信。应当明白,尽管图8中未示出,可以结合计算设备80使用其它硬件和/或软件模块。
处理单元801通过运行存储在系统存储器802中的程序,从而执行各种功能应用以及数据处理,例如,对输入的操作视频进行目标识别,得到所述操作视频中每帧图像包含的多个目标的目标位置信息;基于所述目标位置信息确定各个目标对应的运动信息;基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度;基于所述各个目标对应的离散程度从所述各个目标对应的运动信息中获取最终的运动信息;基于所述最终的运动信息,确定出各个目标对应的移动轨迹信息。各步骤的具体实现方式在此不再重复说明。应当注意,尽管在上文详细描述中提及了基于多目标的轨迹识别装置的若干单元/模块或子单元/子模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
1.一种基于多目标的轨迹识别方法,包括:
对输入的操作视频进行目标识别,得到所述操作视频中每帧图像包含的多个目标的目标位置信息;
基于所述目标位置信息确定各个目标对应的运动信息;
基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度;
基于所述各个目标对应的离散程度从所述各个目标对应的运动信息中获取最终的运动信息;
基于所述最终的运动信息,确定出各个目标对应的移动轨迹信息。
2.如方案1所述的基于多目标的轨迹识别方法,基于所述各个目标对应的离散程度从所述各个目标对应的运动信息中获取最终的运动信息的方式具体为:
将大于预设阈值的离散程度对应的运动信息进行删除,得到删除后的运动信息,并将所述删除后的运动信息确定为最终的运动信息。
3.如方案2所述的基于多目标的轨迹识别方法,所述运动信息中包括但不限于运动质点和运动参数,所述运动参数中包括但不限于运动距离和运动速度,基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度,包括:
获取各个目标的运动信息中运动质点的原始数量和非空数量;
基于所述原始数量和所述非空数量计算得到各个目标对应的置信度;
基于各个目标的运动信息中的运动距离和运动速度,计算得到各个目标对应的方差;
基于所述各目标对应的置信度和方差,计算得到各个目标对应的离散程度。
4.如方案1~3任一项所述的基于多目标的轨迹识别方法,其中,基于所述目标位置信息确定各个目标对应的运动信息,包括:
获取各个目标对应的类别标签;
根据所述各个目标的目标位置信息确定各个目标对应的运动质点;
根据所述操作视频中任意相邻两帧图像中包含的各个目标对应的运动质点,计算得到各个目标对应的运动参数,所述运动参数中包括但不限于运动距离和运动速度;
基于所述类别标签、所述运动质点以及所述运动参数构建各个目标对应的运动信息。
5.如方案4所述的基于多目标的轨迹识别方法,其中,基于所述类别标签、所述运动质点以及所述运动参数构建各个目标对应的运动信息之后,所述方法还包括:
获取所述操作视频的每秒传输帧数;
基于所述每秒传输帧数以及所述各个目标对应的运动信息,对所述各个目标对应的运动信息中的运动参数进行更新,得到更新后的各个目标对应的运动信息;
以及,基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度的方式具体为:
基于所述更新后的各个目标对应的运动信息,计算得到各个目标对应的离散程度。
6.如方案5所述的基于多目标的轨迹识别方法,所述目标位置信息中包含目标对应的包围框信息,所述包围框信息为用于指示所述目标对应的当前帧图像中所在位置的包围框的信息。
7.如方案6所述的基于多目标的轨迹识别方法,根据所述各个目标的目标位置信息确定各个目标对应的运动质点,包括:
从所述各个目标对应的包围框信息中获取包围框坐标;
对所述包围框坐标进行计算,得到各个包围框的中心点;
将所述各个包围框的中心点分别确定为各个目标对应的运动质点。
8.如方案6所述的基于多目标的轨迹识别方法,根据所述各个目标的目标位置信息确定各个目标对应的运动质点,包括:
基于所述各个目标对应的包围框信息,将所述包围框信息中与预设方位对应的顶点确定为各个目标对应的运动质点。
9.如方案6所述的基于多目标的轨迹识别方法,根据所述各个目标的目标位置信息确定各个目标对应的运动质点,包括:
从所述各个目标对应的包围框信息中获取包围框坐标;
基于所述包围框坐标计算得到各个包围框的中心点以及每帧图像中的纵向中心线;
当包围框的中心点位于所述包围框所处图像中的纵向中心线左侧时,将所述包围框的右上角顶点确定为所述包围框指示的目标对应的运动质点;以及
当包围框的中心点位于所述包围框所处图像中的纵向中心线右侧时,将所述包围框的左上角顶点确定为所述包围框指示的目标对应的运动质点。
10.如方案6所述的基于多目标的轨迹识别方法,根据所述各个目标的目标位置信息确定各个目标对应的运动质点,包括:
从所述各个目标对应的包围框信息中获取包围框坐标;
对所述包围框坐标进行计算,得到各个包围框的中心点坐标和顶点坐标;
基于任一包围框的中心点坐标和所述任一包围框对应的前一包围框的中心点坐标,计算得到所述任一包围框和所述前一包围框的中心点运动差异;
基于所述任一包围框的顶点坐标和所述前一包围框的顶点坐标,计算得到所述任一包围框和所述前一包围框的顶点运动差异;
当所述中心点运动差异最小时,将所述任一包围框的中心点确定为所述任一包围框对应的目标的运动质点;
当所述顶点运动差异最小时,将所述任一包围框中最小的所述顶点运动差异对应的顶点确定为所述任一包围框对应的目标的运动质点。
11.如方案6所述的基于多目标的轨迹识别方法,根据所述各个目标的目标位置信息确定各个目标对应的运动质点,包括:
从所述各个目标对应的包围框信息中获取包围框的顶点坐标;
获取任一包围框对应的前一包围框的运动质点;
基于所述任一包围框的顶点坐标与所述前一包围框的运动质点,计算得到所述任一包围框和所述前一包围框的质点运动差异;
将所述任一包围框中最小的顶点运动差异对应的顶点确定为所述任一包围框对应的目标的运动质点。
12.一种基于多目标的轨迹识别装置,包括:
识别单元,用于对输入的操作视频进行目标识别,得到所述操作视频中每帧图像包含的多个目标的目标位置信息;
确定单元,用于基于所述目标位置信息确定各个目标对应的运动信息;
计算单元,用于基于所述各个目标对应的运动信息,计算得到各个目标对应的离散程度;
获取单元,用于基于所述各个目标对应的离散程度从所述各个目标对应的运动信息中选取最终的运动信息;
所述确定单元,还用于基于所述最终的运动信息,确定出各个目标对应的移动轨迹信息。
13.一种存储有程序的存储介质,其中,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如方案1~11中的任一项所述的方法。
14.一种计算设备,包括如方案13所述的存储介质。