首页 > 电脑

configureKalmanFilter创建Kalman滤波器进行人体跟踪时,参数应该怎么设置?

更新时间2019-03-15 09:29:31

使用

kalmanFilter = configureKalmanFilter(MotionModel,InitialLocation,InitialEstimationError,MotionNoise,MeasurementNoise)创建Kalman滤波器进行人体跟踪时,InitialEstimationError、MotionNoise、MeasurementNoise的值该怎么设置,有没有通用的参数呢?当InitialLocation设置为跟踪矩形框的左上角坐标,宽,高为1*4的数组时,返回值是不是也是1*4的对应意义的值呢,还是只能设置为跟踪矩形框的左上角坐标?


在cnki上下篇kalman目标跟踪的硕士论文吧,很多的,当然期刊也可以,不过一般况下硕士论文讲的能详细点,然后找准一篇仔细研读,这样子基本上理论就没啥问题了,编程就用matlab,用C很麻烦,很多算法都没有得自己从头编,matlab集成了很多的算法的,只要找出来调用就行了。
这里给你说下kalman跟踪的思路吧:
0.如果你的视频是实际录得话,为防止检测到伪目标,首先要对输入的图像进行滤波,简单的有中值均值滤波。
1.对视频序列采用背景差分或帧间差分就可以得到运动区域了,这里重点就是背景建模,如果嫌麻烦也就别看什么单高斯或多高斯的了,直接找一个空帧(没有运动目标)当背景就OK了,差分后就有了运动区域,然后二值化方便以后的处理。然后视有没有阴影而进行阴影去除的工作。
2.上边这步也就是检测出了运动区域,按你的检测出来是要给边边画圈,这个在matlab上好好研究研究怎样提取目标边缘的点,在原位图图上把边缘的点改变成一个同像素值就行了,这样检测就完了。
3.跟踪,首先得找到目标的中心,因为目标不只是一个像素,必须有一个中心来表示它的坐标位置,这个方法自己想啦,什么取均值求外接矩形中心啊都可以的,然后每一帧都这么做就有一系列的中心坐标了。
4.Kalman,Kalman的作用还是以滤波为主,相当于把第三步的那些坐标都当成信号序列,用Kalman滤波,边检测边滤波,kalman主要记住那5个公式,知道它的递推过程就基本能编出来了,至于滤波器参数就在参考文献里找吧,编出来kalman部分的程序没多少行的,别怕。
5.如果是多目标跟踪的话就进行目标匹配的工作,相当于每帧都检测出两个目标,你要知道最新一帧中的每个分别对应的是前边帧的哪个目标。
上边这些给你一个大体的思路,你根据自己的任务选择做哪些工作,这个题目不难的,要有信心

上一篇:JAVA的主要应用领域是什么?

下一篇:计算机培训分哪几个阶段?