1. 研究目的与意义(文献综述)
视觉跟踪技术是计算机视觉领域(人工智能分支)的一个重要课题,有着重要的研究意义;且在军事制导、视频监控、机器人视觉导航、人机交互、以及医疗诊断等许多方面有着广泛的应用前景。随着研究人员不断地深入研究,视觉目标跟踪在近十几年里有了突破性的进展,使得视觉跟踪算法不仅仅局限于传统的机器学习方法,更是结合了近些年人工智能热潮—深度学习(神经网络)和相关滤波器等方法,并取得了鲁棒(robust)、精确、稳定的结果。
视觉目标(单目标)跟踪任务即根据所跟踪的视频序列给定初始帧(第一帧)的目标状态(位置、尺度),预测后续帧中该目标状态。
基本流程:输入初始帧(第一帧)并初始化目标框(第一个图中的红框(从左往右)),在下一帧中产生众多候选框(产生有可能的目标框),提取这些候选框的特征(特征提取),然后对这些候选框评分(计算候选框的置信分数),最后在这些评分中找一个得分最高的候选框作为预测的目标(max{置信分数}),或者对多个预测值进行融合(ensemble)得到更优的预测目标。
2. 研究的基本内容与方案
本课题旨在利用身边的简易摄像头(如笔记本电脑,智能手机等电子设备),选择目标跟踪算法,设计软件进行篮球投篮入框的跟踪与计数。
传统的的运动目标检测主要有三种方法:背景图像差分法,时态差分法和光流法。然而这几种算法均不能很好地解决目标存在旋转或部分遮挡等复杂情况下的跟踪难题。通过网上资料的查阅,我了解了Intel公司开发的开源OpenCV计算机视觉库,可以用于实现运动目标跟踪,利用OpenCV计算视觉库的灵活性和优越性并基于OpenCV设计改进的运动目标检测与跟踪算法---CAMSHIFT算法来实现运动目标的跟踪,并在VC 编译环境下,利用USB摄像头作为视频采集器,编写运动目标检测算法正确地检测视频图像中的运动目标。
OpenCV(open source computer vision library)诞生于Intel 研究中心,是近年来推出的开源、免费的计算机视觉库,利用其所包含的函数可以很方便地实现数字图像和视频处理。同时利用面向对象的VC 6.0编程工具,采用C/C 语言编写,可以在Linux/Windows/Mac等操作系统上运行,大大提高了计算机的运行速度。OpenCV 还提供了Python、Ruby、MATLAB以及其他语言的接口 。它包含的函数有500多个,覆盖了计算机视觉的许多应用领域。
OpenCV主要用于对图像进行一些高级处理,比如说特征检测与跟踪、运动分析、目标分割与识别以及3D重建等。
与其他计算机视觉工具相比,OpenCV的优越性如表1所示:
表1 图像处理、计算机视觉工具比较(IPL,OpenCV,IPP,VisDSK与Matlab)
开发工具 | 开发单位 | 应用领域 | 免费情况 | 源码公开与否 | 备注 |
IPL | Intel | 图像处理 | Free | 不公开 | 已被并入到IPP |
OpenCV | Intel | 图像处理、计算机视觉 | Free | 公开 | 基于Intel芯片代码优化 |
IPP | Intel | 集成开发环境库 | Not Free | 不公开 | 基于Intel芯片代码优化 |
VisDSK | Microsoft | 图像处理 | Free | 公开 | 无优化 |
Matlab | MathWorks | 多学科、多种工作平台 | Not Free | 不公开 | 速度慢,不易编译成可执行文件 |
作为一种开源数据库,OpenCV具有如下一些特征:
a) 采用C/C 编写,开放源码;
b) 统一的结构和功能定义;
c) 独立于操作系统、硬件、图像管理器;
d) 强大的图像和矩阵运算能力;
e) 支持Windows和Linux操作系统;
f) 具有底层和高层的应用开发包。
3. 研究计划与安排
1)2020/1/19—2020/2/28:确定选题,查阅文献,外文翻译和撰写开题报告;(2)2020/3/1—2020/4/30:系统架构、程序设计与开发、系统测试与完善;(3)2020/5/1—2020/5/25:撰写及修改毕业论文;(4)2020/5/26—2020/6/5:准备答辩。
4. 参考文献(12篇以上)
android开发详解. 明日科技 著,吉林大学出版社,2018.
机器学习. 周志华 著, 清华大学出版社, 2016.
深度学习. ian goodfellow 著, 人民邮电出版社, 2017.
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。