论文部分内容阅读
随着计算机硬件和软件水平的不断提高,制造出高度智能化的机器人以代替人类的劳动正在成为现实。机器人的智能化程度主要取决于其对周围环境的感知能力。视觉传感器是机器人获取周围环境信息的主要工具之一,通过对视觉传感器获取信息的处理,模拟人类的视觉系统,实现对环境的感知是计算机视觉的主要任务。运动目标检测与跟踪作为计算机视觉领域的重要研究方向之一,在深空探测、智能交通,安全监控和智能机器人环境感知等领域都得到了广泛的应用。因此运动目标的检测跟踪的研究具有重要的理论意义和应用价值。本文主要研究在动态背景下的运动目标检测与跟踪算法,并以AS-RF移动机器人为实验平台,设计并实现了基于移动机器人的目标检测和跟踪系统。运动目标检测是后续目标跟踪的先决条件,根据摄像机是否运动可以分为静态背景的运动目标检测和动态背景的运动目标检测。静态背景的运动目标检测经过多年的发展已经逐渐趋于成熟。动态背景的运动目标检测则由于存在背景运动与目标运动两种相互独立的运动,其研究进展较慢。本文在分析Horn-Schunch(HS)光流算法运算量的基础上,提出一种结合金字塔Lucas-Kanade(LK)光流和HS光流的动态场景运动目标检测算法。该算法首先利用金字塔LK光流法计算出图像的稀疏光流,根据稀疏光流的运动方向和幅值大小去除运动目标和误匹配点的运动矢量,提取出背景的运动矢量作为HS光流计算的初始值,完整地检测出运动目标。目标跟踪是对选定或检测到的目标在图像序列中进行定位的问题。在众多跟踪算法中CamShift算法以计算量小,对光线变化、目标尺度缩放、旋转变化都有较好的鲁棒性而在工程领域的到广泛应用。然而传统CamShift跟踪算法容易受到相似背景的干扰,且不能跟踪运动速度较快的目标。本文在传统CamShift算法中引入了基于块的反向投影图,提出了双反向投影图CamShift跟踪算法。利用基于块的反向投影图对背景干扰进行滤除,同时提供目标位置的粗略估计。以双反向投影图CamShift跟踪算法为核心,以AS-RF移动机器人为实验平台设计并实现了一个机器人跟踪系统。实现了机器人对运动目标的自动检测与跟踪。系统由是机器人端程序和远程监控端程序两部分组成。并为实现图像的远程传输提出了一种利用OpenCV读写函数结合TCP网络协议的图像传输方案,实现了图像的远程传输。本文的算法实验和系统实现均采用面向对象语言C++编程,具体编程环境为VisualStudio6.0+OpenCV1.0。