一种目标跟踪的方法以及装置与流程

文档序号:17355784发布日期:2019-04-09 21:39阅读:143来源:国知局
一种目标跟踪的方法以及装置与流程

本发明涉及目标跟踪领域,特别是涉及一种目标跟踪的方法以及装置。



背景技术:

传统的目标跟踪系统有超声波和微波跟踪、红外跟踪等,超声波和微波跟踪由于抗干扰性较差已经被抛弃,红外跟踪,虽然普遍被使用,但被跟踪目标需要携带红外定位装置,也很不方便。

近些年来,人工智能领域迅速发展,视觉追踪技术作为人工智能领域的一个重要方向,其实发展速度十分迅猛,通过视觉跟踪技术与电动云台以及智能系统等的组合,已经可以实现对目标的自动跟踪。

现有的自动跟踪目标系统,虽然可以自动跟踪目标,但在目标丢失后,无法继续跟踪目标,即使目标重新出现在摄像设备的视野中,也无法重新识别目标,导致无法继续跟踪目标。



技术实现要素:

鉴于上述问题,本发明提供一种目标跟踪的方法以及装置,解决了现有的自动跟踪目标系统在跟踪目标丢失后,即使目标重新出现在摄像设备的视野中,也不能重新识别目标,不能继续跟踪目标的问题。

为了解决上述技术问题,本发明实施例提供了一种目标跟踪的方法,所述方法应用于跟踪系统,所述跟踪系统包括:摄像设备、嵌入式平台开发者终端、电动云台以及客户端,所述嵌入式平台开发者终端外接摄像设备、电动云台以及客户端,所述方法包括:

所述嵌入式平台开发者终端获取由所述摄像设备采集的视频流,所述视频流包括多个拍摄目标,并将所述视频流发送至所述客户端;

所述客户端接收用户在所述视频流的多个拍摄目标中选定的跟踪目标,并将所述所需跟踪目标发送给所述嵌入式平台开发者终端;

所述嵌入式平台开发者终端调用opentld进程确定对所述跟踪目标的跟踪参数,并根据所述跟踪参数控制所述摄像设备变焦和/或调整所述电动云台角度,以对所述目标设备进行跟踪并将视频流发送给客户端,以及确定所述跟踪目标的目标特征信息;

所述嵌入式平台开发者终端在确定所述跟踪目标丢失后,识别所述视频流中的拍摄目标的特征信息是否与所述跟踪目标特征信息匹配,如果匹配,则继续调用所述opentld进程确定对跟踪目标的跟踪参数,并根据所述跟踪参数控制所述摄像设备变焦和/或调整所述电动云台角度,以对所述跟踪目标进行跟踪并将视频流发送给客户端。

可选地,所述嵌入式平台开发者终端在确定所述跟踪目标丢失后,识别所述视频流中是的拍摄目标的特征信息是否与所述目标特征信息匹配,包括:

在所述嵌入式平台开发者终端确定所述跟踪目标丢失后,所述嵌入式平台开发者终端将所述跟踪目标丢失后的视频流发送给所述客户端;

所述客户端接收用户在所述跟踪目标丢失后的视频流中圈定的区域,并将所述圈定的区域发送给所述嵌入式平台开发者终端;

所述嵌入式平台开发者终端根据所述圈定的区域,控制所述摄像设备采集所述圈定的区域的视频流,调用所述opentld进程识别所述圈定的区域的视频流;

当所述跟踪目标重新出现在所述圈定的区域后,所述opentld进程识别所述跟踪目标重新出后的视频流中的拍摄目标的特征信息是否与所述跟踪目标特征信息匹配。

可选地,所述嵌入式平台开发者终端在确定所述跟踪目标丢失后,识别所述视频流中的拍摄目标的特征信息是否与所述目标特征信息匹配,所述方法还包括:

如果所述视频流中的拍摄目标的特征信息与所述跟踪目标特征信息不匹配,所述嵌入式平台开发者终端停用所述opentld进程,结束对所述跟踪目标的跟踪。

可选地,所述嵌入式平台开发者终端调用所述opentld进程确定对跟踪目标的跟踪参数,包括:

所述跟踪参数包括第一跟踪参数以及第二跟踪参数;

所述opentld进程对跟踪目标进行运动参数学习,得到跟踪目标的第一跟踪参数,所述运动参数包括:位置、速度、加速度以及运动轨迹特征;

所述opentld进程对跟踪目标进行运动姿态检测,得到跟踪目标的第二跟踪参数,所述运动姿态包括各种运动外观姿态特征。

可选地,所述嵌入式平台开发者终端调用所述opentld进程确定所述跟踪目标的目标特征信息,包括:

所述opentld进程根据所述所需跟踪目标的视频流的每一帧图像,得到所述所需跟踪目标的静态外观特征,并根据所述静态外观特征以及所述运动姿态特征在所述嵌入式平台开发者终端内建立跟踪目标特征信息库。

可选地,所述电动云台包括:云台支架、云台控制器以及电机,所述云台支架与所述摄像设备之间采用硬链接,所述嵌入式平台开发者终端调用所述opentld进程确定对跟踪目标的跟踪参数,并根据所述跟踪参数控制所述摄像设备变焦和/或调整所述电动云台角度,包括:

所述嵌入式平台开发者终端向所述云台控制器发送所述跟踪参数;

所述云台控制器根据所述跟踪参数计算云台支架机械角度调节参数;

所述云台控制器根据所述机械角度调节参数,控制电机转动,调节所述云台支架的机械角度,所述云台支架带动所述摄像设备转动,实现对跟踪目标的跟踪。

本发明实施例还提供了一种目标跟踪的装置,所述装置应用于跟踪系统,所述跟踪系统包括:摄像设备、所述嵌入式平台开发者终端、电动云台以及客户端,所述嵌入式平台开发者终端外接摄像设备、电动云台以及客户端,所述嵌入式平台开发者终端包括opentld进程,所述装置包括:

获取发送模块,用于所述嵌入式平台开发者终端获取由所述摄像设备采集的视频流,所述视频流包括多个拍摄目标以及目标周围区域的图像,并将所述视频流发送至所述客户端,所述客户端接收所述视频流,在所述多个拍摄目标中选定跟踪目标,并将所述跟踪目标发送给调用控制模块;

调用控制模块,用于所述嵌入式平台开发者终端调用所述opentld进程确定对跟踪目标的跟踪参数,并根据所述跟踪参数控制所述摄像设备变焦和/或调整所述电动云台角度,以对所述跟踪目标进行跟踪并将视频流发送给客户端,以及确定所述跟踪目标的目标特征信息;

识别发送模块,用于在所述嵌入式平台开发者终端确定所述跟踪目标丢失后,识别所述视频流中的拍摄目标的特征信息是否与所述跟踪目标特征信息匹配,如果匹配,则继续调用所述opentld进程确定跟踪目标的跟踪参数,并根据所述跟踪参数控制所述摄像设备变焦和/或调整所述电动云台角度,以对所述跟踪目标进行跟踪并将视频流发送给客户端。

可选地,所述识别发送模块包括:

确定发送子模块,用于在所述嵌入式平台开发者终端确定所述跟踪目标丢失后,所述嵌入式平台开发者终端将所述跟踪目标丢失后的视频流发送给所述客户端,所述客户端接收用户在所述跟踪目标丢失后的视频流中圈定的区域,并将所述圈定的区域发送给所述嵌入式平台开发者终端;

控制调用子模块,用于所述嵌入式平台开发者终端根据所述圈定的区域,控制所述摄像设备采集所述圈定的区域的视频流,调用所述opentld进程识别所述圈定的区域的视频流;

识别子模块,用于当所述跟踪目标重新出现在所述圈定的区域后,所述opentld进程识别所述跟踪目标重新出后的视频流中的拍摄目标的特征信息是否与所述跟踪目标特征信息匹配。

可选地,所述调用控制模块包括:

调用学习子模块,用于所述opentld进程对跟踪目标进行运动参数学习,得到跟踪目标的第一跟踪参数,所述运动参数包括:位置、速度、加速度以及运动轨迹特征;

调用检测子模块,用于所述opentld进程对跟踪目标进行运动姿态检测,得到跟踪目标的第二跟踪参数,所述运动姿态包括各种运动外观姿态特征;

调用建立子模块,用于所述opentld进程根据所述所需跟踪目标的视频流的每一帧图像,得到所述所需跟踪目标的静态外观特征,并根据所述静态外观特征以及所述运动姿态在所述嵌入式平台开发者终端内建立跟踪目标特征信息库。

可选地,所述装置还包括:

识别停用模块,用于在确定所述跟踪目标丢失后,识别所述视频流中的拍摄目标的特征信息是否与所述跟踪目标特征信息匹配,如果不匹配,停用所述opentld进程,结束对所述跟踪目标的跟踪。

与现有技术相比,本发明提供的一种目标跟踪的方法以及装置,通过对跟踪目标的特征信息建立数据库,在目标丢失后,持续获取跟踪目标丢失后的视频流,当目标重新出现在摄像设备的视野中,重新识别目标,根据跟踪参数,控制电动云台的转动,以调节摄像设备的位置,简单有效的实现对丢失目标的重新跟踪。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的一种视联网的组网示意图;

图2是本发明的一种节点服务器的硬件结构示意图;

图3是本发明的一种接入交换机的硬件结构示意图;

图4是本发明的一种以太网协转网关的硬件结构示意图;

图5是本发明实施例的一种目标跟踪的方法的流程图;

图6是本发明实施例的一种目标跟踪的方法其中一步的具体流程图;

图7是本发明实施例的一种目标跟踪的方法其中一步的另一具体流程图;

图8是本发明实施例的调整电动云台角度的方法流程图;

图9是本发明实施例的一种目标跟踪的系统的示意图;

图10是本发明实施例的一种目标跟踪的装置的框图;

图11是本发明实施例的一种目标跟踪的装置的具体框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

视联网是网络发展的重要里程碑,是一个实时网络,能够实现高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面。

视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、vod点播、电视邮件、个性录制(pvr)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。

为使本领域技术人员更好地理解本发明实施例,以下对视联网进行介绍:

视联网所应用的部分技术如下所述:

网络技术(networktechnology)

视联网的网络技术创新改良了传统以太网(ethernet),以面对网络上潜在的巨大视频流量。不同于单纯的网络分组包交换(packetswitching)或网络电路交换(circuitswitching),视联网技术采用packetswitching满足streaming需求。视联网技术具备分组交换的灵活、简单和低价,同时具备电路交换的品质和安全保证,实现了全网交换式虚拟电路,以及数据格式的无缝连接。

交换技术(switchingtechnology)

视联网采用以太网的异步和包交换两个优点,在全兼容的前提下消除了以太网缺陷,具备全网端到端无缝连接,直通用户终端,直接承载ip数据包。用户数据在全网范围内不需任何格式转换。视联网是以太网的更高级形态,是一个实时交换平台,能够实现目前互联网无法实现的全网大规模高清视频实时传输,将众多网络视频应用推向高清化、统一化。

服务器技术(servertechnology)

视联网和统一视频平台上的服务器技术不同于传统意义上的服务器,它的流媒体传输是建立在面向连接的基础上,其数据处理能力与流量、通讯时间无关,单个网络层就能够包含信令及数据传输。对于语音和视频业务来说,视联网和统一视频平台流媒体处理的复杂度比数据处理简单许多,效率比传统服务器大大提高了百倍以上。

储存器技术(storagetechnology)

统一视频平台的超高速储存器技术为了适应超大容量和超大流量的媒体内容而采用了最先进的实时操作系统,将服务器指令中的节目信息映射到具体的硬盘空间,媒体内容不再经过服务器,瞬间直接送达到用户终端,用户等待一般时间小于0.2秒。最优化的扇区分布大大减少了硬盘磁头寻道的机械运动,资源消耗仅占同等级ip互联网的20%,但产生大于传统硬盘阵列3倍的并发流量,综合效率提升10倍以上。

网络安全技术(networksecuritytechnology)

视联网的结构性设计通过每次服务单独许可制、设备与用户数据完全隔离等方式从结构上彻底根除了困扰互联网的网络安全问题,一般不需要杀毒程序、防火墙,杜绝了黑客与病毒的攻击,为用户提供结构性的无忧安全网络。

服务创新技术(serviceinnovationtechnology)

统一视频平台将业务与传输融合在一起,不论是单个用户、私网用户还是一个网络的总合,都不过是一次自动连接。用户终端、机顶盒或pc直接连到统一视频平台,获得丰富多彩的各种形态的多媒体视频服务。统一视频平台采用“菜谱式”配表模式来替代传统的复杂应用编程,可以使用非常少的代码即可实现复杂的应用,实现“无限量”的新业务创新。

视联网的组网如下所述:

视联网是一种集中控制的网络结构,该网络可以是树型网、星型网、环状网等等类型,但在此基础上网络中需要有集中控制节点来控制整个网络。

如图1所示,视联网分为接入网和城域网两部分。

接入网部分的设备主要可以分为3类:节点服务器,接入交换机,终端(包括各种机顶盒、编码板、存储器等)。节点服务器与接入交换机相连,接入交换机可以与多个终端相连,并可以连接以太网。

其中,节点服务器是接入网中起集中控制功能的节点,可控制接入交换机和终端。节点服务器可直接与接入交换机相连,也可以直接与终端相连。

类似的,城域网部分的设备也可以分为3类:城域服务器,节点交换机,节点服务器。城域服务器与节点交换机相连,节点交换机可以与多个节点服务器相连。

其中,节点服务器即为接入网部分的节点服务器,即节点服务器既属于接入网部分,又属于城域网部分。

城域服务器是城域网中起集中控制功能的节点,可控制节点交换机和节点服务器。城域服务器可直接连接节点交换机,也可直接连接节点服务器。

由此可见,整个视联网络是一种分层集中控制的网络结构,而节点服务器和城域服务器下控制的网络可以是树型、星型、环状等各种结构。

形象地称,接入网部分可以组成统一视频平台(虚线圈中部分),多个统一视频平台可以组成视联网;每个统一视频平台可以通过城域以及广域视联网互联互通。

视联网设备分类

1.1本发明实施例的视联网中的设备主要可以分为3类:服务器,交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。视联网整体上可以分为城域网(或者国家网、全球网等)和接入网。

1.2其中接入网部分的设备主要可以分为3类:节点服务器,接入交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。

各接入网设备的具体硬件结构为:

节点服务器:

如图2所示,主要包括网络接口模块201、交换引擎模块202、cpu模块203、磁盘阵列模块204;

其中,网络接口模块201,cpu模块203、磁盘阵列模块204进来的包均进入交换引擎模块202;交换引擎模块202对进来的包进行查地址表205的操作,从而获得包的导向信息;并根据包的导向信息把该包存入对应的包缓存器206的队列;如果包缓存器206的队列接近满,则丢弃;交换引擎模202轮询所有包缓存器队列,如果满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。磁盘阵列模块204主要实现对硬盘的控制,包括对硬盘的初始化、读写等操作;cpu模块203主要负责与接入交换机、终端(图中未示出)之间的协议处理,对地址表205(包括下行协议包地址表、上行协议包地址表、数据包地址表)的配置,以及,对磁盘阵列模块204的配置。

接入交换机:

如图3所示,主要包括网络接口模块(下行网络接口模块301、上行网络接口模块302)、交换引擎模块303和cpu模块304;

其中,下行网络接口模块301进来的包(上行数据)进入包检测模块305;包检测模块305检测包的目地地址(da)、源地址(sa)、数据包类型及包长度是否符合要求,如果符合,则分配相应的流标识符(stream-id),并进入交换引擎模块303,否则丢弃;上行网络接口模块302进来的包(下行数据)进入交换引擎模块303;cpu模块204进来的数据包进入交换引擎模块303;交换引擎模块303对进来的包进行查地址表306的操作,从而获得包的导向信息;如果进入交换引擎模块303的包是下行网络接口往上行网络接口去的,则结合流标识符(stream-id)把该包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃;如果进入交换引擎模块303的包不是下行网络接口往上行网络接口去的,则根据包的导向信息,把该数据包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃。

交换引擎模块303轮询所有包缓存器队列,在本发明实施例中分两种情形:

如果该队列是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零;3)获得码率控制模块产生的令牌;

如果该队列不是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。

码率控制模块208是由cpu模块204来配置的,在可编程的间隔内对所有下行网络接口往上行网络接口去的包缓存器队列产生令牌,用以控制上行转发的码率。

cpu模块304主要负责与节点服务器之间的协议处理,对地址表306的配置,以及,对码率控制模块308的配置。

以太网协转网关:

如图4所示,主要包括网络接口模块(下行网络接口模块401、上行网络接口模块402)、交换引擎模块403、cpu模块404、包检测模块405、码率控制模块408、地址表406、包缓存器407和mac添加模块409、mac删除模块410。

其中,下行网络接口模块401进来的数据包进入包检测模块405;包检测模块405检测数据包的以太网macda、以太网macsa、以太网lengthorframetype、视联网目地地址da、视联网源地址sa、视联网数据包类型及包长度是否符合要求,如果符合则分配相应的流标识符(stream-id);然后,由mac删除模块410减去macda、macsa、lengthorframetype(2byte),并进入相应的接收缓存,否则丢弃;

下行网络接口模块401检测该端口的发送缓存,如果有包则根据包的视联网目地地址da获知对应的终端的以太网macda,添加终端的以太网macda、以太网协转网关的macsa、以太网lengthorframetype,并发送。

以太网协转网关中其他模块的功能与接入交换机类似。

终端:

主要包括网络接口模块、业务处理模块和cpu模块;例如,机顶盒主要包括网络接口模块、视音频编解码引擎模块、cpu模块;编码板主要包括网络接口模块、视音频编码引擎模块、cpu模块;存储器主要包括网络接口模块、cpu模块和磁盘阵列模块。

1.3城域网部分的设备主要可以分为2类:节点服务器,节点交换机,城域服务器。其中,节点交换机主要包括网络接口模块、交换引擎模块和cpu模块;城域服务器主要包括网络接口模块、交换引擎模块和cpu模块构成。

2、视联网数据包定义

2.1接入网数据包定义

接入网的数据包主要包括以下几部分:目的地址(da)、源地址(sa)、保留字节、payload(pdu)、crc。

如下表所示,接入网的数据包主要包括以下几部分:

其中:

目的地址(da)由8个字节(byte)组成,第一个字节表示数据包的类型(例如各种协议包、组播数据包、单播数据包等),最多有256种可能,第二字节到第六字节为城域网地址,第七、第八字节为接入网地址;

源地址(sa)也是由8个字节(byte)组成,定义与目的地址(da)相同;

保留字节由2个字节组成;

payload部分根据不同的数据报的类型有不同的长度,如果是各种协议包的话是64个字节,如果是单组播数据包话是32+1024=1056个字节,当然并不仅仅限于以上2种;

crc有4个字节组成,其计算方法遵循标准的以太网crc算法。

基于视联网的上述特性,提出了本发明实施例的核心构思之一,遵循视联网的协议,可以视嵌入式平台开发者终端、摄像设备、电动云台以及客户端为视联网中的终端,客户端发送信令,终端之间通过视联网服务器进行数据的传输,而视联网因为其自身的特性,可以使得音视频流的传输延时较因特网有极大的缩短,同时还提高了音视频的品质,更加有利于对活动目标的跟踪,同样对跟踪目标丢失后重新确认识别,再进行跟踪也提供了更高的音视频品质和更快的速度。

图5示出了本发明实施例的一种目标跟踪的方法的流程图。该方法应用于跟踪系统,该系统包括:摄像设备、嵌入式平台开发者终端、电动云台以及客户端,嵌入式平台开发者终端外接摄像设备、电动云台以及客户端,目标跟踪的具体方法包括如下步骤:

步骤101:嵌入式平台开发者终端获取由摄像设备采集的视频流,该视频流包括多个拍摄目标,并将该视频流发送至客户端。

参照图9,本发明实施例中,嵌入式平台开发者终端s30是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统,它一般包括嵌入式微处理器、外围硬件设备、嵌入式操作系统以及应用程序等四个部分,用于实现对其他设备的控制、监视或管理等功能,该终端连接着摄像设备s20,电动云台s10以及pc客户端s50,pc客户端s50是供用户查看、选取视频流画面以及发送控制指令,需要对某个活动目标进行跟踪时,首先需要摄像设备s20对跟踪目标进行拍摄,得到跟踪目标的影像视频流,该视频流中包括跟踪目标以及跟踪目标周围环境的影像,由于摄像设备s20拍摄的范围比较大,拍摄的影像中有可能包括很多的活动目标,嵌入式平台开发者终端s30会主动获取摄像设备s20拍摄的包括跟踪目标在内的多个活动目标的视频流,并将视频流发送给pc客户端s50,可以理解的是,一切可以实现上述功能的设备都落入本发明的保护范围内,在本发明实施例对获取跟踪目标视频流的具体方式以及用户查看、选取视频流画面以及发送控制指令的具体方式不做具体限定。

步骤102:客户端接收用户在视频流的多个拍摄目标中选定的跟踪目标,并将所需跟踪目标发送给嵌入式平台开发者终端。

参照图9,本发明实施例中,用户通过pc客户端s50查看包括跟踪目标在内的多个活动目标的视频流,在多个活动目标中选取所需跟踪的目标,所需跟踪目标的数量可以为一个或者多个,再将选取的所需跟踪目标发送给嵌入式平台开发者终端s30,本发明实施例对选取跟踪目标的具体方式以及跟踪目标的数量不做具体限定。

步骤103:嵌入式平台开发者终端调用opentld进程确定对跟踪目标的跟踪参数,并根据跟踪参数控制摄像设备变焦和/或调整电动云台角度,以对跟踪目标进行跟踪并将视频流发送给客户端,以及确定跟踪目标的目标特征信息。

参照图9,嵌入式平台开发者终端s30内装有opentld程序,opentld是一种视觉跟踪算法,能对锁定的目标进行不断的学习,以获取目标最新的外观特征,同时对图像序列中的运动目标进行检测、提取、识别和跟踪,获得运动目标的运动参数,如位置、速度、加速度、运动轨迹等,从而进行下一步的处理与分析,嵌入式平台开发者终端s30调用opentld进程,可以得到跟踪目标的跟踪参数以及目标特征信息,嵌入式平台开发者终端s30可以根据跟踪目标的跟踪参数,控制摄像设备s20变焦,以实现得到的视频流中的跟踪目标的最佳影响效果,同时将跟踪参数发送给电动云台s10,由电动云台s10控制摄像设备s20对跟踪目标进行跟踪。

可选地,参照图6,步骤103具体还可以包括如下步骤:

步骤103a:opentld进程对跟踪目标进行运动参数学习,得到跟踪目标的第一跟踪参数,运动参数包括:位置、速度、加速度以及运动轨迹特征。

本发明实施例中,在对跟踪目标进行跟踪的同时,opentld根据跟踪目标的走、跑、跳等运动以及与周围环境的相对位置关系,获得跟踪目标的运动参数,运动参数包括跟踪目标的位置、速度、加速度、运动轨迹等特征,运动参数包括在跟踪目标的跟踪参数中。

步骤103b:opentld进程对跟踪目标进行运动姿态检测,得到跟踪目标的第二跟踪参数,运动姿态包括各种运动外观姿态特征。

本发明实施例中,在对跟踪目标进行跟踪的同时,opentld检测跟踪目标在运动时的走、跑、跳、蹲、打滚等运动外观姿态,获得跟踪目标的运动外观姿态特征,外观姿态包括在跟踪目标的跟踪参数中。

步骤103c:opentld进程根据所需跟踪目标的视频流的每一帧图像,得到所需跟踪目标的静态外观特征,并根据静态外观特征以及运动姿态特征在嵌入式平台开发者终端内建立跟踪目标特征信息库。

本发明实施例中,opentld还需要获得所需跟踪目标的静态外观特征,静态外观特征包括跟踪目标的毛发、眼睛、鼻子、体型轮廓等可以明确区别于其它与所需跟踪目标相似的目标的特征类型,opentld根据所需跟踪目标的视频流的每一帧图像,进行外观分析,得到所需跟踪目标的静态外观特征,并综合静态外观特征以及运动姿态特征,在嵌入式平台开发者终端s30内建立跟踪目标特征信息库。

步骤104:嵌入式平台开发者终端在确定跟踪目标丢失后,识别视频流中的拍摄目标的特征信息是否与跟踪目标特征信息匹配,如果匹配,则继续调用opentld进程确定对跟踪目标的跟踪参数,并根据所述跟踪参数控制摄像设备变焦和/或调整电动云台角度,以对跟踪目标进行跟踪并将视频流发送给客户端。

参照图9,本发明实施例中,当所需跟踪目标被遮挡物遮挡或者其它原因导致跟踪目标不在摄像设备的拍摄范围内时,嵌入式平台开发者终端s30确定跟踪目标丢失,此时摄像设备s20会停留在跟踪目标丢失前最后的位置,继续采集该位置的影像视频流,opentld依然对跟踪目标丢失后的视频流进行识别,判断有无与目标特征信息库匹配的活动目标出现在视频流中,当跟踪目标重新出现在摄像设备s20的拍摄范围内,opentld识别到在视频流中有与目标特征信息库匹配的活动目标出现。当然,嵌入式平台开发者终端s30也可以根据跟踪目标丢失前的运动轨迹进行分析,确定跟踪目标可能继续出现的区域,然后控制摄像设备s20扫描该区域,从而监控其该跟踪目标是否继续出现。

需要说明的是,opentld识别到在视频流中有与目标特征信息库匹配的活动目标出现可以为:首先判断在视频流中出现的活动目标的静态外观特征是否与特征库中的静态外观特征相符,例如活动目标毛发的形状、颜色,头部占整个身体的比例,眼睛的大小,外观的形状,体态轮廓是否合适,如原跟踪目标有尾巴,出现的活动目标没有尾巴,原跟踪目标四肢健全,出现的活动目标四肢不健全等各种静态外观特征与特征库存储的特征相匹配,之后再对活动目标的运动外观姿态与特征库中的运动外观姿态进行匹配,活动目标的运动外观姿态是指活动目标在进行动态运动过程的姿态,例如活动目标在走的时候四肢的姿态,跑的时候四肢的摆动幅度,频率等各种运动外观姿态与特征库存储的相匹配,上述两者都匹配上则判断视频流中出现的活动目标为丢失的跟踪目标,之后opentld再根据跟踪目标与周围环境的相对位置关系,获得跟踪目标的位置信息,根据大量的视频流影像,走、跑等运动,计算出跟踪目标的速度、加速度以及运动轨迹等,将上述跟踪参数反馈给嵌入式平台开发者终端s30,嵌入式平台开发者终端s30根据跟踪参数控制摄像设备s20变焦和/或调整电动云台s10角度,实现对跟踪目标重新跟踪,在对跟踪目标进行跟踪时,随着跟踪目标位置的变化,嵌入式平台开发者终端s30不断将跟踪参数发送给电动云台s10,电动云台s10根据跟踪参数调整云台角度,使得摄像设备s20追随跟踪目标的移动而转动,保证跟踪目标始终在摄像设备s20合适的拍摄范围内,在对跟踪目标进行跟踪的同时,嵌入式平台开发者终端s10将视频流发送给pc客户端s50,以供用户查看、控制,当用户在看到视频中的跟踪目标不够清晰时,用户可以控制摄像设备s20变焦,使得跟踪目标的影像变得清晰。

可选地,参照图7,步骤104具体还可以包括如下步骤:

步骤104a:在嵌入式平台开发者终端确定跟踪目标丢失后,嵌入式平台开发者终端将跟踪目标丢失后的视频流发送给客户端。

步骤104b:客户端接收用户在跟踪目标丢失后的视频流中圈定的区域,并将圈定的区域发送给嵌入式平台开发者终端。

步骤104c:嵌入式平台开发者终端根据圈定的区域,控制摄像设备采集圈定的区域的视频流,调用opentld进程识别圈定的区域的视频流。

步骤104d:当跟踪目标重新出现在圈定的区域后,opentld进程识别跟踪目标重新出后的视频流中的拍摄目标的特征信息是否与跟踪目标特征信息匹配。

参照图9,本发明实施例中,当所需跟踪目标被遮挡物遮挡或者其它原因导致跟踪目标不在摄像设备s20的拍摄范围内时,嵌入式平台开发者终端s30确定跟踪目标丢失,此时摄像设备s20会停留在跟踪目标丢失前最后的位置,继续采集该位置的影像视频流,嵌入式平台开发者终端s30将采集的跟踪目标丢失后的视频流发送给pc客户端s50,用户调用跟踪目标丢失前的视频画面和丢失后的视频画面,根据上述画面,选取一些用户认为跟踪目标会出现的区域,该区域的范围包括跟踪目标丢失前活动过的区域,以及丢失后可能会活动的区域,将上述区域发送给嵌入式平台开发者终端s30,终端s30根据用户选定的区域,控制摄像设备s20在上述区域内进行影像采集,opentld依然对跟踪目标丢失后的视频流进行识别,判断有无与目标特征信息库匹配的活动目标出现在视频流中,当跟踪目标重新出现在摄像设备s20的拍摄范围内,opentld识别到在视频流中有与目标特征信息库匹配的活动目标出现,opentld确定对跟踪目标的跟踪参数,嵌入式平台开发者终端s30根据跟踪参数控制摄像设备s20变焦和/或调整电动云台s10角度,实现对跟踪目标重新跟踪,并将视频流发送给pc客户端s50,以供用户查看、控制,可以理解的是,在跟踪目标丢失后,用户也可以人工寻找跟踪目标,在找到跟踪目标后,人为调整摄像设备s20对准跟踪目标,进行影像视频流采集,本发明实施例对判断跟踪目标重新出现的具体方式不做具体限定。

可选地,图8示出了本发明实施例中调整电动云台角度的方法流程图。电动云台包括:云台支架、云台控制器以及电机,云台支架与摄像设备之间采用硬链接,嵌入式平台开发者终端根据跟踪参数调整电动云台角度的方法步骤如下:

步骤201:嵌入式平台开发者终端向云台控制器发送跟踪目标的跟踪参数。

步骤202:云台控制器根据跟踪参数计算云台支架机械角度调节参数。

步骤203:云台控制器根据机械角度调节参数,控制电机转动,调节云台支架的机械角度,云台支架带动摄像设备转动,实现对跟踪目标的跟踪。

参照图9,本发明实施中,电动云台s10包括:云台支架s101、云台控制器s102以及电机s104,电动云台s10需外接电源s103,云台支架s101与摄像设备s20之间采用硬链接,保证摄像设备s20在进行拍摄时稳定不抖动,云台控制器s102与嵌入式平台开发者终端s30可以通过无线模式进行数据传输,也可以采用通讯线进行数据传输,两者都有用于通讯的接口,云台控制器s102接收到跟踪参数,根据跟踪参数中跟踪目标的位置、速度、加速度等数据以及运动轨迹等特征,计算云台支架s101机械角度调节参数,再根据机械角度调节参数,控制电机s104转动,电机s104通过齿轮或者皮带等传动设备带动云台支架s101转动,可以理解的是云台支架s101的转动可以是左右方向转动,也可以是上下方向转动,由于云台支架s101与摄像设备s20之间采用硬链接,所以云台支架s101可以带动摄像设备s20转动,实现对跟踪目标的跟踪,本发明实施例对电动云台控制摄像设备,实现对跟踪目标的跟踪的具体方式不做具体限定。

举例说明,参照图9,一套可以对运动目标进行跟踪的系统,该系统内包括:嵌入式平台开发者终端s30、摄像设备s20、电动云台s10、网络服务器s40以及pc客户端s50,嵌入式平台开发者终端s30用于实现对其他设备的控制、监视或管理,其内部装有opentld程序,opentld是一种视觉跟踪算法,能对锁定的目标进行不断的学习,以获取目标最新的外观特征,同时对图像序列中的运动目标进行检测、提取、识别和跟踪,获得运动目标的运动参数,如位置、速度、加速度、运动轨迹等,从而进行下一步的处理与分析,嵌入式平台开发者终端s30通过通讯线连接摄像设备s20、电动云台s10以及pc客户端s50,如果上述设备都具有无线通信功能,则可以采用无线模式进行数据传输,通过无线通信基站或者网络服务器s40中的无线通信模块,与pc客户端s50进行通信。摄像设备s20是具有拍摄功能的器材,一般采用成像效果好,外型体积较小的摄像设备s20,方便电动云台s10对摄像设备s20的控制,电动云台s10用于安装摄像设备s20,在电机s104的带动下,可以做水平和垂直转动,使摄像设备s20能在大范围内对准并摄取所需要的跟踪目标,pc客户端s50可以让用户查看、选取视频流画面以及发送控制指令。

需要对某个活动目标进行跟踪时,首先需要摄像设备s20对跟踪目标进行拍摄,得到跟踪目标的影像视频流,该视频流中包括跟踪目标以及跟踪目标周围环境的影像,由于摄像设备s20拍摄的范围比较大,拍摄的影像中有可能包括很多的活动目标,嵌入式平台开发者终端s30会主动获取摄像设备s20拍摄的包括跟踪目标在内的多个活动目标的视频流,并将视频流发送给pc客户端s50。用户通过pc客户端s50查看包括跟踪目标在内的多个活动目标的视频流,如果发现视频流中的跟踪目标影像不够清晰,需向嵌入式平台开发者终端s30发送控制摄像设备s20调焦的指令,嵌入式平台开发者终端s30控制摄像设备s20进行调焦,以获得清晰的跟踪目标的影像视频流。

在用户通过pc客户端s50查看到清晰的包括跟踪目标在内的多个活动目标的视频流后,用户在多个活动目标中选取跟踪的目标,跟踪目标的数量可以为一个或者多个,再将选取的跟踪目标发送给嵌入式平台开发者终端s30,嵌入式平台开发者终端s30接收到选取的跟踪目标,调用opentld进程,opentld根据跟踪目标的走、跑、跳等运动以及与周围环境的相对位置关系,获得跟踪目标的运动参数,运动参数包括跟踪目标的位置、速度、加速度、运动轨迹等特征,检测跟踪目标在运动时的走、跑、跳、蹲、打滚等运动外观姿态,获得跟踪目标的运动外观姿态特征,根据上述信息,嵌入式平台开发者终端s30控制摄像设备s20变焦,使得视频流中的跟踪目标的成像效果达到最佳,同时将上述信息发送给电动云台s10,电动云台s10包括:云台支架s101、云台控制器s102以及电机s104,电动云台s10需外接电源s103,云台支架s101与摄像设备s20之间采用硬链接,保证摄像设备s20在进行拍摄时稳定不抖动,云台控制器s102与嵌入式平台开发者终端s30可以通过无线模式进行数据传输,也可以采用通讯线进行数据传输,两者都有用于通讯的接口,电动云台s10的云台控制器s102接收到上述信息,根据信息中跟踪目标的位置、速度、加速度等数据以及运动轨迹等特征,计算云台支架s101机械角度调节参数,再根据机械角度调节参数,控制电机s104转动,电机s104通过齿轮或者皮带等传动设备带动云台支架s101转动,由电动云台s10控制摄像设备s20对跟踪目标进行跟踪。在对跟踪目标进行跟踪的同时,opentld根据跟踪目标的视频流的每一帧图像,进行外观分析,获得跟踪目标的静态外观特征,静态外观特征包括跟踪目标的毛发、眼睛、鼻子、体型轮廓等可以明确区别于其它与所需跟踪目标相似的目标的特征类型,在综合静态外观特征以及运动姿态特征,在嵌入式平台开发者终端s30内建立跟踪目标特征信息库。

在跟踪目标被遮挡物遮挡或者其它原因导致跟踪目标不在摄像设备s20的拍摄范围内后,嵌入式平台开发者终端s30确定跟踪目标丢失,此时摄像设备s20会停留在跟踪目标丢失前最后的位置,继续采集该位置的影像视频流,嵌入式平台开发者终端s10将采集的跟踪目标丢失后的视频流发送给pc客户端s50,用户调用跟踪目标丢失前的视频画面和丢失后的视频画面,根据上述画面,选取一些用户认为跟踪目标会出现的区域,该区域的范围包括跟踪目标丢失前活动过的区域,以及丢失后可能会活动的区域,将上述区域发送给嵌入式平台开发者终端s10,终端s10根据用户选定的区域,控制摄像设备s20在上述区域内进行影像采集,opentld依然对跟踪目标丢失后的视频流进行识别,判断有无与目标特征信息库匹配的活动目标出现在视频流中,当跟踪目标重新出现在摄像设备s20的拍摄范围内,opentld识别到在视频流中有与目标特征信息库匹配的活动目标出现,opentld确定对跟踪目标的跟踪参数,嵌入式平台开发者终端s30根据跟踪参数调整电动云台s10角度,实现对跟踪目标重新跟踪,并将视频流发送给pc客户端s50,以供用户查看、控制,可以理解的是,在跟踪目标丢失后,用户也可以人工寻找跟踪目标,在找到跟踪目标后,人为调整摄像设备s20对准跟踪目标,进行影像视频流采集,嵌入式平台开发者终端s10还保留有无人车或者无人机等无人设备的控制器接口,可以满足更大更远范围内的活动目标的跟踪。

可选地,参照图10所示的一种目标跟踪装置的框图,该装置应用于跟踪系统,跟踪系统包括:摄像设备、嵌入式平台开发者终端、电动云台以及客户端,嵌入式平台开发者终端外接摄像设备、电动云台以及客户端,所述装置包括:

获取发送模块310,用于嵌入式平台开发者终端获取由摄像设备采集的视频流,视频流包括多个拍摄目标以及目标周围区域的图像,并将视频流发送至客户端,客户端接收视频流,在多个拍摄目标中选定跟踪目标,并将跟踪目标发送给调用控制模块;

调用控制模块320,用于嵌入式平台开发者终端调用opentld进程确定对跟踪目标的跟踪参数,并根据跟踪参数控制摄像设备变焦和/或调整电动云台角度,以对跟踪目标进行跟踪并将视频流发送给客户端,以及确定跟踪目标的目标特征信息;

识别发送模块330,用于在嵌入式平台开发者终端确定跟踪目标丢失后,识别视频流中的拍摄目标的特征信息是否与跟踪目标特征信息匹配,如果匹配,则继续调用opentld进程确定跟踪目标的跟踪参数,并根据跟踪参数控制摄像设备变焦和/或调整电动云台角度,以对跟踪目标进行跟踪并将视频流发送给客户端。

可选地,参照图11,在图10的基础上,上述装置还可以包括:

调用控制模块320包括:

调用学习子模块3201,用于opentld进程对跟踪目标进行运动参数学习,得到跟踪目标的第一跟踪参数,运动参数包括:位置、速度、加速度以及运动轨迹特征;

调用检测子模块3202,用于opentld进程对跟踪目标进行运动姿态检测,得到跟踪目标的第二跟踪参数,运动姿态包括各种运动外观姿态特征;

调用建立子模块3203,用于opentld进程根据所需跟踪目标的视频流的每一帧图像,得到所需跟踪目标的静态外观特征,并根据静态外观特征以及运动姿态在嵌入式平台开发者终端内建立跟踪目标特征信息库。

识别发送模块330包括:

确定发送子模块3301,用于在嵌入式平台开发者终端确定跟踪目标丢失后,嵌入式平台开发者终端将跟踪目标丢失后的视频流发送给客户端,客户端接收用户在跟踪目标丢失后的视频流中圈定的区域,并将圈定的区域发送给嵌入式平台开发者终端。

控制调用子模块3302,用于嵌入式平台开发者终端根据圈定的区域,控制摄像设备采集圈定的区域的视频流,调用opentld进程识别圈定的区域的视频流。

识别子模块3303,用于当跟踪目标重新出现在圈定的区域后,opentld进程识别跟踪目标重新出后的视频流中的拍摄目标的特征信息是否与跟踪目标特征信息匹配。

识别停用模块340,用于在确定跟踪目标丢失后,识别视频流中的拍摄目标的特征信息是否与跟踪目标特征信息匹配,如果不匹配,停用opentld进程,结束对跟踪目标的跟踪。

通过上述实施例,本发明使得跟踪目标丢失后,重新出现时,对目标的自动识别以及自动跟踪,解决了现有技术在跟踪目标丢失又重新出现后,无法自动识别和跟踪的问题。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种目标跟踪的方法以及装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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