一直都想参加下数学建模,通过几个月培训学到一些好的数学思想和方法,今年终于有时间有机会有队友一起参加了研究生数模,but,为啥今年说不培训直接参加国赛,泪目~_~~,然后比赛前也基本没看,直接硬刚。比赛完总结下是个好习惯,下面写了一点分析,比较注重实现,有些地方我也不能讲很清楚,看过的请权当参考。
问题1:对一个不包含动态背景、摄像头稳定拍摄时间大约5秒的监控视频,构造提取前景目标(如人、车、动物等)的数学模型,并对该模型设计有效的求解方法,从而实现类似图1的应用效果。(附件2提供了一些符合此类特征的监控视频)
图1 左图:原视频帧;右图:分离出的前景目标
分析:第一问最简单,摄像头稳定,静态背景下,直接使用帧间差法即可解决,基于帧差法改进的一些方法效果也不错,试过使用VIBE算法(改进背景更新策略)检测效果都很好,但是这个题目测试视频有个坑,那个电梯运动的视频,严格来说不算静态背景视频,电梯部分后面通过算法微调才勉强去除,这部分用到了基于LBP(二值相似性模式)的MultiLayer算法,算法论文在这里:Multi-Layer Background Subtraction Based on Color and Texture ,供参考。下图是office视频和smoke视频(带电梯运动那个)的提取结果(图从论文中截出来的,有点模糊)
office | smoke |
图2 原始视频帧与分离出的前景目标
问题2:对包含动态背景信息的监控视频(如图2所示),设计有效的前景目标提取方案。(附件2中提供了一些符合此类特征的典型监控视频)
图3 几种典型的动态视频背景,:树叶摇动,水波动,喷泉变化,窗帘晃动
分析:这个问题直观地就是通过运动幅度来来建模,经常使用高斯分布来表示,这部分使用了基于改进BSP的LBSP方法,效果很不错。算法的论文放在这里:Improving Background Subtraction using Local Binary Similarity Patterns,下图是waterSurface视频(海面波动)的提取结果
图4 原始视频帧与分离出的前景目标
问题3:在监控视频中,当监控摄像头发生晃动或偏移时,视频也会发生短暂的抖动现象(该类视频变换在短时间内可近似视为一种线性仿射变换,如旋转、平移、尺度变化等)。对这种类型的视频,如何有效地提取前景目标?(附件2中提供了一些符合此类特征的典型监控视频,其它一些典型视频可从http://wordpress-jodoin.dmi.usherb.ca/dataset2014/下载)
分析:这个问题开始我们想的是用Faster-RNN之类的网络识别目标,然后再跟踪目标分割出来,但是好像有点麻烦,短时间内不好做,后面仔细看了题目,他们其实有提示,仿射变换?是啊,摄像头抖动就相当于短时间内的仿射变换,这种仿射变换怎么计算出来呢?我们可以通过提取图像的特征点(实测matlab的MinEigen方法误差点最少,它的核心是Harris角点检测),计算出两幅图像之间的对应特征点,自然就可以得到它们之间的仿射变换了,花了一个晚上加一个上午把程序弄好(还做了伪补全图像),效果还很不错,能够得到稳定的视频,但是这种方法有局限性。下图是people2的提取结果
图5 原始视频帧与分离出的前景目标
问题4:在附件3中提供了8组视频(avi文件与mat文件内容相同)。请利用你们所构造的建模方法,从每组视频中选出包含显著前景目标的视频帧标号,并将其在建模论文正文中独立成段表示。务须注明前景目标是出现于哪一个视频(如Campus视频)的哪些帧(如241-250,421-432帧)。
分析:这个没啥说的,拿前面的算法跑一遍就行了,我们做的顺序是124356,5,6最后只写了想法。
问题5:如何通过从不同角度同时拍摄的近似同一地点的多个监控视频中(如图3所示)有效检测和提取视频前景目标?请充分考虑并利用多个角度视频的前景之间(或背景之间)相关性信息(一些典型视频可从http://cvlab.epfl.ch/research/surv/multi-people-tracking下载)
图6 在室内同一时间从不同角度拍摄同一地点获得的视频帧
分析:这个题目的意思感觉不是太清晰,但是最好的方法应该是pom了,只是他们没有开放源代码,项目主页在这里:https://cvlab.epfl.ch/software/pom/,可以研究下。
昨天与一等奖大神讨论了下,其实这题是有简单的方法的,和第三题类似,想法很简单,先试试能不能搞出来,搞出来了再放过程和结果。这一问的论文可以看看这里 ,对极几何那部分。
问题6:利用所获取前景目标信息,能否自动判断监控视频中有无人群短时聚集、人群惊慌逃散、群体规律性变化(如跳舞、列队排练等)、物体爆炸、建筑物倒塌等异常事件?可考虑的特征信息包括前景目标奔跑的线性变化形态特征、前景规律性变化的周期性特征等。尝试对更多的异常事件类型,设计相应的事件检测方案。(请从网络下载包含各种事件的监控视频进行算法验证)
分析:没有完成,应该基于前面的算法,利用聚类方法和运动轨迹进行分析,主要在判别策略上。
/*end of all*/