基于python的移动物体检测与跟踪算法_移动物体检测与跟踪算法的实现

这个界面是在

Linux

操作系统下利用

QT

库采用

C++

开发的。

如果在

MicroBlaze

上移植

Linux

成功的话,

可能会出现不能支持

QT

的情况,

那我们将舍弃用

QT

做出来的控制界面,

而将图像视频直接显示在

VGA

显示器上。

接下来我将介绍一下实现这个效果我们所采用的算法和程序的流程:

一、算法

1

、基于灰度图像的

检测算法

为了完成实时目标检测,

需要一系列的操作,

所以就需要对目标的特征进行提取,

包括

目标的形状和颜色分布。

由于人体是非刚性的,

外在的障碍物和自身的噪声可能给建立唯一

的模型带来困难。

为了减小这些影响我们把摄像头观察点放置在人群的正上方,

这样几乎不

会有重叠的现象而且每个目标占用图像的面积很小。

我们采用基于灰度直方图的方法简化目标模型,

由于系统只需识别出有物体的存在并进

行跟踪,

所以要求的精度不需要很高,

因此在该系统只识别人体的大体外形及所处的位置而

忽略身体的细节部分,

使算法更加简化。

为了突出目标本文采用相邻帧差法去除不变的部分

(比如背景、身体的一些部分)

,通过分析剩下的部分我们可以定位目标所在的位置。简单

的帧差法并不足以达到检测的精度,这里采用相差后图像的水平和垂直投影完成检测功能。

下面给出这个算法的过程:

(1)

相邻图像相差后得到

M*N

的图像

I

如图

1

所示。

非零的那些像素大部分是头部的

运动边缘,通过对差分图的分析就可以定位运动目标。

你可能感兴趣的:(基于python的移动物体检测与跟踪算法_移动物体检测与跟踪算法的实现)