APP下载

大型追踪系统的多摄像头协同

2018-08-20曹凯悦阮秋琦

信号处理 2018年4期
关键词:摄像头消息协同

曹凯悦 阮秋琦

(1. 北京交通大学信息科学研究所,北京 100044; 2. 现代信息科学与网络技术北京市重点实验室,北京100044)

1 引言

无重叠视域的多摄像头目标追踪是计算机视觉领域的研究热点之一,在刑侦工作等公共安全领域有着广泛的应用。目前该项研究分为很多方向,如行人检测[1],目标跟踪[2- 4],行人再识别[5],以及实时高效的多摄像头协同。而实时高效的多摄像头协同是保障一系列行人检测等算法可以高效运行的基础。

多摄像头协同,即通过多个摄像头间信息的交互,融合多摄像头端信息,为每个摄像头分配最适合当前环境的任务,协同完成系统总目标。多摄像头结构主要分为集中,分布,混合,多层次结构。传统多摄像头结构多为集中式结构,利用C/S的软件架构方式,通过Socket进行数据上行下行传输,服务器端作为决策层对摄像头集中控制,实现摄像头端的协同[6],但该方法系统扩展性差,部署难度高,造成服务器端的大量运算,不能很好的满足监控系统实时性要求。在此基础上,业界发展出很多的多摄像头协同策略,通过分布式计算技术,将一个问题分解为许多小的部分,在不同部分间互享信息,协同解决问题。文献[7]提出一个基于MPC(Model Predictive Controller,模型预测控制器)的多传感器控制框架,结合特征的合作和竞争以得到最优的传感器协同。但是其面对复杂的监控任务,很难有普遍适用的转移函数,同时系统不能达到很好的稳定性。文献[8]提出了一种基于MDP(Markov Decision Process,马尔科夫决策过程)框架的决策理论方法来控制和协调多个主动摄像机以实现对运动目标的观察,但是随着传感器的增多,状态空间成倍增加,很难计算最佳的决策。文献[9]分析了在多摄像头协同中所需的摄像头选择以及摄像头间的目标交接技术,考虑几何,统计及博弈论的方法,并使用集中式和分布式的计算模型提供理论和实验的比较,总结出基于效用的博弈论更加鲁棒,计算量也更小,然而该方法是集中式的,当系统复杂时,扩展性较差。文献[10]研究了一类网络化多智能体的主从式预测编队控制问题,提出了一种主从式预测编队控制架构,主动补偿各通讯通道中的定常时滞,但不是所有智能体都可以进行数据交互,不能保证系统的实时交互。

多Agent是一种分布式人工智能技术。在文献[11]中,Agent技术被引入VSAM(Video Surveillance and Monitoring),将系统分为中央处理Agent和几个传感器Agent,图形界面Agent等,传感器Agent利用背景减除法进行运动目标检测,中央处理Agent进行数据融合,作为决策层。但其主要操作均在中央处理Agent完成,没有很好的发挥多Agent的分布式计算优势。文献[12]从智能体驱动层,感知层,控制层和通信系统出发设计智能体,实现复杂系统的信息共享,协同合作,但仍为主从结构的协同控制模式。

本文针对多摄像头协同的实时高效性需求,利用多Agent系统实现分布式人工智能,提出并设计了一种基于多Agent的多摄像头目标轨迹追踪方法。提出了一种多Agent代理多摄像头系统的BDI模型,使每个摄像头都成为可根据外界及自身信息自主决策当前状态改变的智能体,构造了完全分布式的多Agent通信形式以及状态控制过程。利用JADE(Java Agent Development Framework)[13]进行本文的基于多Agent的多摄像头系统的搭建,有效的实现了多个摄像头的协同合作,克服了多个摄像头之间信息无法进行及时交互,状态无法及时准确更新的困难,为系统实现实时的目标追踪提供了条件。

2 多Agent系统

2.1 多Agent系统

Agent即智能体,可以作为某一环境下的实体,在感知外界环境以及接收外界消息的同时,可以依据自身知识做出判断,从而对环境做出最合适的反应,或者向外界发送消息。多个Agent可以通过特定的通信机制形成一个多Agent系统。

多Agent系统起源于分布式人工智能,是由多个Agent组成的以求解问题为目的的分布式智能系统。系统中的每个Agent都是具有自治性、社会性、反应性、能动性等性质的独立的智能个体,同时具备一些人类的特性,如知识、信念、意图等[13]。Agent的知识模型用BDI(Belief、Desire、Intention)模型进行表示。

关于BDI模型详细介绍的文献有很多[14-16]。简单概括为,信念是对自身以及外界环境的知识。愿望代表Agent期望达到的或者期望保持的状态[16]。意图是当前最需要或者最适合完成的一个愿望,是当前Agent将要实现的目标。通过对BDI模型的设置,可以使得Agent更加智能化,目的性更加明确,进而更好的选择最合适的状态来匹配当前系统的状况。

多Agent系统在多摄像头监控中的应用,21世纪初就有学者进行相关研究,但对于其具体设计各有不同。例如,文献[17]中将目标跟踪的算法封装在追踪Agent中,自主决定什么时候转到下一个智能摄像头进行追踪等。

2.2 多Agent系统通信

FIPA(The Foundation for Intelligent Physical Agents)[13]对Agent平台应为系统提供的若干服务进行了定义,如图1为基于FIPA规范下Agent的管理参考模型。图1所示的消息传输服务,为不同Agent之间的通信提供了ACL(Agent Communication Language)[13]消息交互机制。

图1 Agent管理参考模型

在Agent通信中,每一条通讯消息都是继承自JADE下ACLMessage类的一个对象,包含一系列消息属性(FIPA定义),本文主要包含消息发送者、消息接收者、消息原语(如REQUEST表示发送方请求接收方执行某种操作)、消息的具体内容等。图2为两个本文用到的ACL消息示例。(a)为QUERY-IF类,用于查询目标,(b)为INFORM类,用于通知目标状态。

图2 ACL Message示例

一般利用一个Behaviour类处理发送给Agent的所有消息。但是大量的消息会影响Agent间的实时通信。因此,为了更好的对消息进行有效过滤,本文使用JADE提供的消息模板MessageTemplate类和接收方法,该接收方法将消息模板作为参数,并且只返回与消息模板匹配的消息。MessageTemplate类利用消息模板(MessageTemplate)可针对ACLMessage的每个属性设置过滤条件,从而进行消息过滤,属性模式包括通信行为、发送者等。

例如,建立一个模板MessageTemplate类,消息匹配规则为:消息原语是INFORM并且消息的发送者是coor,代码如图3所示。

图3 MessageTemplate模板消息示例

3 基于多Agent的多摄像头目标追踪系统设计

3.1 系统分析

多摄像头目标追踪系统,其目的是实现对某一感兴趣目标的持续追踪。在该过程中,难免会面临目标从当前摄像头消失并出现在其他摄像头的情况。因此,如何保证在目标交接过程中摄像头快速调整状态并完成目标的追踪是本文的重点。

本文利用Agent代理摄像头(camera-agent),自主感应外界环境变化、接收外界信息,通过结合自身的先验知识来调整成为适应当前目标状况的最佳状态,从而更好地完成对目标持续追踪任务。基于多Agent的多摄像头协同框架设计如图4,摄像头端作为独立的智能个体,借助多Agent技术的分布式计算,可以实现摄像头端的分布式处理。通过摄像头之间快速地信息交互,无需第三方主Agent媒介,及时得到目标状态变化,从而迅速调整状态,完成目标交接过程,从而实现持续追踪的目的。

图4 基于多Agent系统的多摄像头追踪系统结构

本文的多Agent系统在结构上主要利用了其自主性与协作性[13,18],包括单Agent层的自主反应以及多Agent层的信息交互等。在单Agent层:单个camera-agent可以对该区域目标进行独立的检测跟踪,根据目标状态可自主决策当前camera-agent所需进入的行为状态;多Agent层:多个camera-agent之间通过信息交互,融合外界环境信息,并结合自身知识,及时更新每个摄像头端的内部状态,对从当前camera-agent视域消失的目标联合搜寻,达到全局的目标追踪目的。

camera-agent为了适应目标状态的改变,须通过自身知识调节其内部状态,从而更好地完成目标追踪任务。其知识结构即BDI模型设计如下:

1)Belief:分为两个模块,第一个是关于camera的Belief,,即关于camera标识号,camera的位置,邻域,以及当前camera内的目标编号。第二个是关于目标的Belief,,即目标编号,目标特征,目标当前状态。目标特征可以是用来识别目标的特征,可以是多个特征的融合,比如HSV颜色直方图特征,ORB特征点等。目标状态主要为两种状态,即正在搜索中,以及正在camera-n中被跟踪。

2)Desire:由多Agent代理的多摄像头系统的最终目标是对目标进行持续追踪,即保持目标状态为在该系统中被跟踪。

Objectwithisinthestateof

3)Intention:camera-agent有两个基本的意向,即通知邻域camera-agent协作实现对指定目标的搜寻,以及对目标进行持续跟踪。该系统中Agent的Intention为该camera-agent当前的运行计划。对目标进行追踪,首先需要向邻域发送搜寻信号,然后执行搜寻计划,最后将搜寻结果发回camera-agent及coor-agent,具体设计如图5。

[track, [[send-to-neighbor],[search-object, [detect]], [send-to-neighbor]]]

图5 系统意图计划图

3.2 Agent内部状态

单Agent层视频采集部分采用海康威视系列板卡,获取原始的YUV422格式数据。预处理部分将采集到的YUV格式数据转化为RGB格式,并调整其尺寸,便于后续处理。Agent状态主要分为目标检测,目标跟踪,目标搜寻三种状态。三种状态下对应的算法具体设计如图6。

图6 单摄像头端的算法实现

目标检测部分,由于本文研究目的为针对行人的追踪,因此该部分动作为基于ViBe运动目标检测的DPM行人检测方法。利用ViBe运动目标检测部分分割出前景区域,并通过DPM特征进行行人识别,判断该前景区域是否为行人。

目标识别部分,即多摄像头在目标交接过程中涉及的跨摄像头行人关联,融合了基于HSV直方图以及感知哈希特征作为特征粗匹配阶段,而ORB特征点匹配作为精确匹配阶段,该部分作为目标搜寻状态下的动作行为。

目标跟踪部分,嵌入结合了卡尔曼滤波模块的CamShift算法实现对目标更好的跟踪。

由这些算法构成的Agent内部的目标检测、目标跟踪、目标搜寻三个模块,其状态转移如图7所示。在本文BDI模型的基础上,Agent通过结合外界环境信息与自身知识自主决策在当前的追踪过程中,自身需要达到的状态。将视频算法嵌入到接收消息的CyclicBehaviour中,可以实现视频处理和信息的实时交互。

图7 Agent内部状态转移图

Step1camera-agent进行正常监控,开启检测功能,若收到来自其他camera-agent的目标查询请求,转为目标搜寻状态;

Step2搜寻到目标,转为目标跟踪状态,并通知其他camera-agent;

Step3目标从当前摄像头的视域消失,当前camera-agent转为目标搜寻状态,并向其他camera-agent发送目标查询请求;

Step4目标在该camera-agent中搜寻成功,开启目标跟踪模式,转至Step2;若收到其他camera-agent的搜寻成功通知,则恢复目标检测状态,转至Step1。

3.3 多Agent协同过程

本系统通信过程中主要运用了两种消息原语形式,QUERY-IF和INFORM形式。如图8所示。

图8 追踪目标过程中Agent之间的通信过程

1. 目标在当前摄像头丢失,向邻域camera-agent发送QUERY-IF查询消息;向信息管理Agent(coor)发送目标状态更新通知;同时将自身的状态转为目标搜寻状态。

2. 目标在当前摄像头搜寻成功,向其他camera-agent发送INFORM消息,通知其停止目标搜寻,恢复正常监控状态;向信息管理Agent(coor)发送目标状态更新通知;将自身状态转为目标跟踪状态。

4 JADE平台系统搭建

4.1 系统实现

图9为该系统实验环境的搭建,安装三个无重叠视域的摄像头。用三个Agent分别代理三个摄像头,每个Agent均继承了JADE下的Agent类, setup()方法启动Agent并对其进行初始化。在Behaviour类中对Agent的具体行为进行实现,并将事件处理添加在该类下的action()方法中。如图10,为JADE运行的图形界面,camera1,camera2,camera3分别为三个摄像头,coor为信息管理Main Agent,sniffer为监视器,可以在Agent传递消息时实时地捕获消息,从而获得整个追踪过程中的详细通信情况。

图10 本实验多Agent界面

针对上一节中的系统细节设计,本文利用Java语言结合JADE开源框架实现多Agent系统框架的开发,同时,利用C语言结合OpenCV开源视觉库实现该系统的底层视频算法,并通过JNI技术嵌入单Agent模块作为其Agent的行为动作。图11列列举了Agent接收消息部分主要代码。

图11 接收消息部分代码

4.2 实验结果

如图12为实验环境下待追踪目标的行走轨迹。当待追踪目标首先出现在Camera3视域时,Camera3开启对该目标的实时跟踪,通知其他camera-agent停止对该目标的搜寻,同时将目标状态以INFORM消息的形式上传到信息管理 Agent(coor-agent),在Main端创建目标轨迹。当目标走出Camera3视域,Camera3会向邻域发送QUERY-IF消息对其进行搜寻,同时将目标状态以INFORM消息的形式上传到管理Agent(coor-agent),管理端更新目标轨迹。同理,进入Camera2,Camera1,Camera2,Camera3。图13为实验过程中部分截图。可以看到,在多个摄像头可以实现对系统感兴趣目标的持续追踪,同时不会受到外来目标的干扰。

图12 实验环境中目标行走路径

实验过程中Sniffer-Agent捕捉的多个Agent间详细的通信过程如图14,可以看到整个目标追踪过程中信息的交互情况。

图13 实验室搭建的三个摄像头系统追踪过程图片

最终的目标追踪结果以表格形式进行表达,time表示帧数,camera为目标经过的摄像头,in/out为进入或者离开当前摄像头,值为1时对应进入摄像头状态,如图15。可见,多个摄像头通过多Agent可以实现很好的信息交互,协同追踪。

4.3 结果分析

本文的基于多Agent的多摄像头协同系统,旨在为目标追踪提供一个实时高效的多摄像头协同。表1比较了该系统与文献[18]中的多Agent系统的结构,以及通信等方面的不同之处。本文为完全分布式的通信结构,多Agent间的通信无需通过主Agent端的处理进行传递。camera-agent作为视频处理层,决策层,可以直接通信。本方法缩短了多个摄像头端通信所需的时间消耗,同时将视频处理以及决策的任务下发到摄像头端,可以更好的发挥基于多Agent系统的分布式计算的优势。

图14 Sniffer Agent捕获的消息传递过程

图15 目标追踪路径

MAS结构视频处理层决策层通信方式MAS[18]集中式Camera CoorCoor间接通信本文分布式CameraCamera直接通信

针对本实验室采集的视频进行测试,实验结果如上节所示。将本文系统与文献[18]中的多Agent系统的摄像头端的通信延迟以及对目标的追踪率进行比较,如表2。可以看出,本文系统的多个摄像头交互可以缩短上一个摄像头消失到摄像头开启搜寻模式过程所需的时间,缩小通信的延迟。因此,本文可以实现更加快速的通信,保证摄像头状态的及时更新,有效提高了目标追踪的准确率。

表2 算法准确率对比

5 结论

在本文中,我们设计了一种基于多Agent的多摄像头的目标轨迹追踪框架,针对该系统提出其适应目标追踪任务的BDI模型,使其成为可根据外界环境及自身知识进行自主决策的智能体,构造了完全分布式的多Agent通信形式,以及自主决策控制过程。通过构造多Agent的系统框架及每个Agent内部结构,多个摄像头之间可以实现快速高效的信息交互及协同控制。利用JADE平台,开发了一套三个摄像头的简单追踪系统,可以对单目标进行持续的跟踪。该方法缩短了系统通信的延迟,使得摄像头状态及时更新,提高了目标追踪率。因此,本文的将多Agent系统应用在多摄像头目标追踪中的方法是可行且高效的。

本文的优化方向包括目标检测、目标跟踪、跨摄像头行人关联等计算机视觉类算法的优化以及多摄像头协同方向的改进。计算机视觉算法方向,包括对算法实时性及准确率的不断提升,如识别模块添加更有辨识度的人脸特征、跟踪模块添加角点特征等。多摄像头协同方向,考虑在本文研究基础上添加对摄像头时空模型的自动学习模块,包括进出口分布模型、路径关系、转移时间概率等,通过实际环境下采集的数据无监督学习到摄像头的知识模型,以便更好地进行目标搜寻。

[1] 汤义, 黄建军, 赖勉力. 模板自适应的积分通道特征行人检测算法[J].信号处理, 2016, 32(9):1009-1014.

Tang Yi, Huang Jianjun, Lai Mianli. Template Adaptively Integral Channel Feature Algorithm for Pedestrian Detection[J]. Journal of Signal Processing, 2016, 32(9):1009-1014. (in Chinese)

[2] Valmadre J, Bertinetto L, Henriques J, et al. End-to-End Representation Learning for Correlation Filter Based Tracking[C]∥IEEE Conference on Computer Vision and Pattern Recognition.IEEE Computer Society,2017:5000-5008.

[3] 封万里, 岑翼刚, 王艳红,等. 特征在线更新与加权的压缩跟踪算法[J]. 信号处理, 2017, 33(4):533-539.

Feng Wanli, Cen Yigang, Wang Yanhong, et al. Compressive Tracking Based on Online Feature Updating and Weighting[J]. Journal of Signal Processing, 2017,33(4):533-539. (in Chinese)

[4] 冯星辰, 阮秋琦. 行人跟踪的多特征融合算法研究[J]. 信号处理, 2016, 32(11):1308-1317.

Feng Xingchen, Ruan Qiuqi. The Research for Pedestrian Tracking Algorithm with Multi-feature Fusion[J]. Journal of Signal Processing, 2016,32(11):1308-1317. (in Chinese)

[5] Rahbi M S A, Edirisinghe E, Fatima S. Multi-agent based framework for person re-identification in video surveillance[C]∥Future Technologies Conference. IEEE, 2017:1349-1352.

[6] 熊江江, 朱民耀. 多摄像头协同跟踪机制的研究与实现[J]. 电视技术, 2011, 35(7):98-100.

Xiong Jiangjiang,Zhu Minyao. Research and Realization of Collaborative Tracking Mechanism with Multi-Camera[J]. Video Application&Project, 2011, 35(7):98-100. (in Chinese)

[7] Singh V K, Atrey P K, Kankanhalli M S. Coopetitive multi-camera surveillance using model predictive control[J]. Machine Vision & Applications, 2008, 19(5- 6):375-393.

[8] Natarajan P, Low K H, Kankanhalli M. Decision-theoretic approach to maximizing fairness in multi-target observation in multi-camera surveillance[C]∥International Conference on Autonomous Agents and Multi-Agent Systems. International Foundation for Autonomous Agents and Multiagent Systems, 2014:1521-1522.

[9] Li Y, Bhanu B. A Comparison of Techniques for Camera Selection and Hand-Off in a Video Network[C]∥ACM/IEEE International Conference on Distributed Smart Cameras. IEEE, 2009:1- 8.

[10] 张天勇, 刘国平. 网络化多智能体主从式预测编队控制[J]. 控制与决策, 2017, 32(10):1864-1870.

Zhang Tianyong, Liu Guoping. Slave Predictive Formation Control of Networked Multi-agents[J]. Control and Decision,2017,32(10) :1864-1870. (in Chinese)

[11] Abreu B, Botelho L, Cavallaro A, et al. Video-based multi-agent traffic surveillance system[C]∥Intelligent Vehicles Symposium. IEEE, 2000:457- 462.

[12] 陈善星. 实时视觉伺服跟踪及多智能体协同控制[D]. 广州:华南理工大学, 2016.

Chen Shanxing. Real-time Visual Servo Tracking and Multi-agent Coordination Control[D]. Guangzhou: South China University of Technology, 2016.(in Chinese)

[13] 王婵. 多摄像机无重叠视野域的目标跟踪[D]. 北京:北京交通大学, 2014.

Wang Chan. object Tracking with Multiple Non-overlapping Cameras[D]. Beijing: Beijing Jiaotong University, 2014. (in Chinese)

[14] 康小强, 石纯一. 基于BDI的多Agent交互[J]. 计算机学报, 1999, 22(11):1166-1171.

Kang Xiaoqiang, Shi Chunyi. Multi-agent Interaction Based on BDI[J]. Chinese Journal of Computers, 1999, 22(11):1166-1171. (in Chinese)

[15] 赵国荣. Agent的信念、愿望、意图模型[J]. 科技信息, 2008(35):186-187.

Zhao Guorong. Belief-desire-intention Model of Agent[J]. Science & Technology Information, 2008(35):186-187. (in Chinese)

[16] 张哲. 基于BDI模型的多Agent交互[D]. 广州:中山大学, 2010.

Zhang Zhe. The communication of MultipIe Agents based on BDl modeI[D]. Guangzhou: Sun Yat-sen University, 2010. (in Chinese)

[17] Bramberger M, Quaritsch M, Winkler T, et al. Integrating multi-camera tracking into a dynamic task allocation system for smart cameras[J]. Int’l Conf.advanced Video & Signal Based Surveillance.Italy:IEEE,2005:474- 479.

[18] 张丹. 基于Agent和最优搜索理论的多摄像机协同跟踪[D]. 北京:北京交通大学, 2016.

Zhang Dan. Cooperative Tracking with Multiple Cameras Based on Agent and Optimal Search Theory[D]. Beijing:Beijing Jiaotong University, 2016. (in Chinese)

[19] Chalmers S, Gray P M D. Bdi agents and constraint logic[J]. AISB Journal, 2001, 1(1):21- 40.

[20] Somhorst M. Multi-camera video surveillance system[D]. Netherlands: The University of Technology Delft, 2012.

[21] Marcenaro L, Oberti F, Foresti G L, et al. Distributed architectures and logical-task decomposition in multimedia surveillance systems[J]. Proceedings of the IEEE, 2001, 89(10):1419-1440.

[22] Matsuyama T, Ukita N. Real-time multitarget tracking by a cooperative distributed vision system[J]. Proceedings of the IEEE, 2002, 90(7):1136-1150.

[23] Hwang C L, Shih C Y. A Distributed Active-Vision Network-Space Approach for the Navigation of a Car-Like Wheeled Robot[J]. IEEE Transactions on Industrial Electronics, 2009, 56(3):846- 855.

[24] Bustamante A L, Molina J M, Patricio M A. A practical approach for active camera coordination based on a fusion-driven multi-agent system[J]. International Journal of Systems Science, 2014, 45(4):741-755.

猜你喜欢

摄像头消息协同
浙江首试公路非现场执法新型摄像头
家校社协同育人 共赢美好未来
摄像头连接器可提供360°视角图像
蜀道难:车与路的协同进化
一张图看5G消息
“四化”协同才有出路
三医联动 协同创新
奔驰360°摄像头系统介绍
消息
消息