宇视科技 智能分析技术及安防领域应用实现

2016-12-15 01:01:03 来源:安防知识网 作者:吴参毅
技术/方案频道文章B

[摘要] 在视频监控领域,或者说安防领域,智能分析,或者更进一步说人工智能,起着越来越重要的作用。随着行业发展和技术发展,人工智能逐渐的变为安防领域核心角色。

  在视频监控领域,或者说安防领域,智能分析,或者更进一步说人工智能,起着越来越重要的作用。随着行业发展和技术发展,人工智能逐渐的变为安防领域核心角色。

文/吴参毅 浙江宇视科技有限公司首席算法架构师

  智能分析历史

  视频监控智能分析主要指的是从视频监控图片或视频中进行对象检测、识别、以及行为分析,进行事件检测。如图1所示。其中需要检测的对象只要为行人和车辆,人的各种静态属性和动态属性检测识别、各种机动车辆和非机动车辆的静态属性和动态属性的检测识别。其中人的静态属性包括:人脸检测与识别,人脸面部表情检测与识别,人头发式检测与识别,人体衣服颜色与款式检测与识别,行人背包检测与识别,行人轨迹检测与轨迹分析。车辆检测包括机动车牌识别、车辆颜色检测、车型检测、驾乘人员检测与行为识别、车辆轨迹检测与轨迹行为识别。

  在视频监控中,除了主要检测的人和车对象外,针对某些专门领域,还会需要检测各种别的物体,比如烟火检测、移动物体闯入禁区检测、人群聚集检测,等等。

  在上个世纪视频监控发展初期,其主要目的是进行视频图像编码后保存到数字硬盘,以备事后查阅。但是视频监控的本质要求是对客户感兴趣的事件进行事前预测、事中干预、事后快速查阅。由此可见,根据其本质要求,视频监控的核心任务,除了数字视频编码录像之外,还有就是更高准确而又快速的对各种事件进行检测和分析。

图1 视频监控智能分析框图

图2传统分类器和基于深度学习分类器对比[2]

  在上世纪中使用的视频图像分析技术主要是各种图像处理技术、传统的计算机视觉技术和机器学习技术。或者说基于图片和视频的对象检测与识别,一直就是计算机视觉学科的一个传统课题。对视频监控场景的图像处理也一直是图像处理技术的传统课题。

  由于技术的飞速发展带动了计算机视觉和机器学习等学科的快速迭代,尤其是海量数据的出现,IPC处理芯片性能的不断提高,以及基于NVIDIA高速GPU分布式高性能计算平台的出现,对一些传统的计算机视觉任务以及机器学习任务,出现了性能更高,效果更好的新算法,这不仅提高了传统视频监控智能分析任务的性能和效率,同时也改变着传统视频监控智能分析业务应用的架构模式。

  不论是传统的方法,还是先进的基于深度学习的方法,都是首先从视频图像中得到具有充分表达力的特征(feature),然后对训练样本集合中的所有样本提取特征,选择一个适合的分类器,把样本特征变换到一个可以轻松分开的空间实现分类或者识别。如图2所示。

  智能分析技术热点

  视频监控领域内的主要任务能够快速而又准确的对图像视频内容结构化,对各种客户定义监控事件能够快速反应。该任务所使用的计算机视觉和机器学习算法中只要是完成在图像视频中进行对象的检测和识别任务的算法,当前效果最好的是深度卷积神经网络。

  自从2012年Geoffrey Hinton团队中的Alex Krizhevsky在ImageNet2012基于图片的多种类对象分类和检测挑战赛中,使用百万级的海量训练样本,利用NVIDIA的GPU加速训练卷积神经网络模型AlexNet,得到的模型的分类和检测错误率远远低于传统手工设计特征加分类器的思路。这一消息的发布,证明了基于海量训练样本,使用GPU加速训练,学习得到的多层次特征的表达能力(如图3和图4所示)远远高于以往任何人工设计特征的表达力。这如同打开了一个潘多拉盒子,极大的激发了机器学习和计算机视觉等领域在后续四年间的发展方向。

图3 深度学习等于多层表征学习[2]

图4 深度神经网络多层特征获取方式[2]

  如图3所示,深度卷积神经网络具有分层的特征学习能力,通过在海量样本集合上训练,可以得到底层特征(Low-Level Features)、中层特征(Mid-Level Features)、高层特征(High-Level Features),表征能力很强,远远高于各种手工设计特征(Handcrafted Features)。这样的训练模式不同于传统的模式识别结构。传统模式识别架构中,首先选定一种手工设计特征描述符,比如SIFT,SURF等特征,然后在正负样本集合中进行特征提取,使用提取的特征集合训练分类器。但是基于深度学习架构的分类是一种端到端(End-to-End)的学习模式,即不仅仅是分类器(Classifier)通过训练得到,分层表征(Hierarchical representations)也是通过训练得到。最终得到的神经网络模型参数和分类器参数取决于海量样本。学习得到的底层特征一般是一些边,中层特征一般是一些曲线或者斑点,高层特征一般是一些图案。到底每一个具体层每个神经元参数最终学习得到的值完全取决于训练样本集。

  如图4所示,一个包含字符“0”的图片通过多层非线性卷积滤波:滤波块(Filter Bank)+非线性计算(non-linearity),然后通过汇聚操作(又成为池化,Pooling)减短特征维数,最后得到一维化的输出特征。

  深度学习架构另一个令人疑惑的地方就是,不同于传统的研究方法,研究者们总能通过数学模型推导出结果,即可以从理论上证明其有效性。而深度学习仅仅是通过把模拟人类大脑皮层的神经元(如图5所示)工作机理的把一个个的神经元(如图6所示)排成阵列,然后把多个阵列排成多层,最后把每排间的神经元进行部分连接或者全部连接。

图5 大脑皮层神经元

图6 神经元

  如图3所示,神经元具有一个轴突(axon)分支,同时有一个收集来自其他神经元输入的树突树(dendritic tree)。轴突通常在突触(synapses)和树突树进行通信。有一个轴丘(axon hillock),每当足够的电荷流出突触,以使得细胞膜去极化后,就会生成峰值,轴突上的激励峰值会注入电荷到突触后的神经元。

  到底每一个神经元阵列含有多少个神经元(即特征层多宽),到底排多少层(即多深),完全由实验效果确定,至少到目前为止理论界并没有发现令人信服的数学公式推导。这也是深度神经网络得到一部分学术研究者鄙视的原因。但是其相比传统方法的效果提升的幅度之大,达到以往传统研究方法的每次提升幅度的十几倍甚至几十倍。这极大的激发了实战派投入深度学习的怀抱,在各个领域探索更加有效的深度神经网络结构。所以在短短的四年时间里,全球的视频图像研究者不断提出各种改进版的神经网络结构,并在各种领域内实验验证其更加有效性。

  所以,深度神经网络,深度学习,对视频监控应用来说,仍是当下的研究热点,应用热点。视频监控智能分析算法正经历这深刻的变革。

  智能分析与大数据融合

  在视频监控领域,或者说安防领域,智能分析,或者更进一步说人工智能,起着越来越重要的作用。随着行业发展和技术发展,人工智能逐渐的变为安防领域核心角色。人工智能领域的引领者,美国纽约大学数据科学中心和Courant数学科学研究所的Yann Le Cun教授,同时也Facebook AI Research的领导者,这样定义一个人工智能系统(AI System)是学习代理(Learning Agent)+不可改变目标(Immutable Objective),如图7和图8所示。同时一个人工智能系统也是:预测(Predicting)+规划(Planning)=推理(Reasoning)

图7 人工智能系统

图8 人工智能系统(展开)

  图7表示的是一个人工智能系统,图8表示的是一个对代理人(agent)展开了的人工智能系统。两个图均对代理人部分进行转门说明。代理人通过观察(Observations)从世界(world)获得感知(percept/perception)。代理把行动(actions)输出(output)到世界上。代理人试图把长期期望代价(long-term expected cost)最小化。人工智能系统中,智能(intelligence)的本质是预测能力(the ability to predict)。代理人首先进行规划(plan),然后仿真世界(simulate the world),并对感知进行预测(predicted percepts),预测感知传送给行动者(Actor),同时世界仿真器也把推断的世界状态(inferred world state)传给行动者,行动者对行为作出建议(action proposals),同时该建议又输入给世界仿真器,世界仿真器根据真实世界状态以及行动者的行为建议对下一个时刻可能感知进行预测。状态评价函数critic对行动者的状态进行评价,输出代价预测值。

  从人工智能系统框图来看,其核心就是通过观察真实世界,然后对真实世界进行仿真。机器需要学习、了解真实世界如何运转的,要获取足够程度的常识。人工智能系统需要通过观察和行动学习大量的背景知识,需要感知世界的状态,以便进行准确的预测和规划。人工智能系统需要更新和记住对世界状态的估计值,尤其是需要注意一些重要事件,并记住相关联的事件。人工智能系统需要规划和推理,需要预测哪些行为序列对世界带来怎样的状态。所以感知+预测模型+记忆+推理和规划就等于智能和常识:Intelligence & Common Sense = Perception + Predictive Model + Memory + Reasoning & Planning[2]。

  所以鉴于神经网络的强大的学习能力,缺乏对真实世界的足够感知,人工智能系统无法对真实世界形成常识。我们知道,在视频监控领域中的图像视频采集相机,一天24小时的全天候的在采集数据,同时现在的摄像机的分布规模已经足够大,对一个平安城市级别的视频监控来说,每天都会产生海量数据,最后形成的大数据,已经具备对人工智能系统足够感知的条件。这是视频监控的特点,更是视频监控的优势。将来在采集视频大数据的基础上,进行快速而又准确的结构化后,可以构建各种人工智能系统。所以未来必一个趋势将是视频大数据的分析与挖掘。

  安防企业智能分析技术实现

  传统的智能分析算法都是基于CPU或者DSP之类的通用编程平台,所以安防企业大都自己实现各种基于视频图像的对象检测识别与跟踪算法。进入深度学习和人工智能时代后,算法性能更卓越的一个代价就是计算成本的大量上升,单纯的使用软件实现智能算法,尤其是在终端设备上,变得不再现实。所以给安防行业提供芯片的各个厂家会把各种计算机视觉算子和机器学习算子以加速引擎的方式嵌入到芯片中。尤其是最近时期,由于卷积网络的目前只能在NVIDIA的GPU的计算单元阵列上实现,所以目前的服务器形态智能分析大在GPU上实现。

  在安防行业,一般都是上游芯片企业提供智能加速引擎和GPU计算单元阵列,安防企业利用自身优势,提供海量训练数据,结合自身行业特点以及自身企业优势,训练得到独具特色和优势的神经网络结构,达到差异化和竞争优势。

  比如2016年10月份宇视科技与NVIDIA联合发布了新一代大容量分布式云结构化智能化分析服务器(代号“昆仑”),在4U的高度上支持了80颗NVIDIA Jetson TX1处理器,为业界最高密度,最强性能。一台昆仑可以并发处理640张/秒的人脸识别、160路的人员计数、80路人车物的结构化分析。同时2016年10月份宇视科技发布了基于Movidius+NVIDIA双芯片深度学习人脸识别相机、深度学习智能交通抓拍相机、深度学习USB智能棒。

  通过和代表人工智能行业最高端厂商合作,基于安防行业独有的的海量数据,紧紧跟踪学术界深度学习算法的最新发展,宇视科技训练出了业界一流的各种神经网络模型。不论是在硬件设备上、还是海量数据上和算法结构模型上,都达到了业界最高水平。

  智能分析路线图

  安防行业从简单的智能分析到机器视觉技术及深度学习,到最后的人工智能有没有清晰的技术路线?其实安防行业作为一个专门的行业,并不是一个独立的行业。安防行业中的智能分析技术仅仅跟随着计算机视觉、数据科学、机器学习(深度学习作为机器学习的一个分支)的发展而不断进步。

  最近一段时期,深度学习正经历着飞速发展,有人产生了疑问,深度学习会不会取代其他所有机器学习算法或者特征工程方法呢?肯定不是的,正如百度首席科学家,同时也是深度学习先驱之一的吴恩达就曾指出[3], 尽管人工智能已经有很大范围的影响了,但它在产业内的应用方式还极其有限。几乎所有人工智能最近的进步都是通过一种类型——即输入数据(A)然后快速生成简单的回应(B),比如:

图9 机器学习能做什么[3]

  可想而知,在安防行业的整个智能分析应用中,并不是所有的业务都可以抽象成如图9所示的A→B的关系。所以还需要很多种经典的机器学习算法和计算机视觉算法,比如随机森林,SVM,图像分割、图像掩码、图像形态学等等。
 

  参考

  [1]http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks

  [2] Yan Le Cun “Unsupervised Learning: The Next Frontier In AI”

  https://drive.google.com/open?id=0BxKBnD5y2M8NcmtIYVdtNkxTM2c

  [3] https://hbr.org/2016/11/what-artificial-intelligence-CAN-and-cant-do-right-now
 

0 0
[责任编辑:water]

《安防知识网》一个服务号 二个订阅号 微信服务全面升级

不得转载声明: 凡文章来源标明“安防知识网”的文章著作权均为本站所有,禁止转载,除非取得了著作权人的书面同意且注明出处。违者本网保留追究相关法律责任的权利。

专栏推荐

阅读推荐

视频监控准备好迎接超高清了吗? 2016-12-12 14:37  来源:安防知识网|0
旷视科技助力无锡老旧小区视频监控升级改造 2016-12-14 15:39  来源:安防知识网|0