计算机视觉目标跟踪系统
(1)问题的提出
图5.1 机器人足球竞赛活动
足球运动是一种大家非常喜爱的运动。让机器人踢足球是非常有创意和挑战的工作(图5.1),
目前国际上最具影响力的机器人足球赛事有FIRA国际机器人足球赛和Robo Cup国际机器人足球世界杯赛。2013年Robo Cup机器人世界杯足球赛在荷兰埃因霍温落幕。代表中国出战的北京信息科技大学队成为最大黑马,在中型组决赛中以3∶2击败东道主荷兰的埃因霍温科技大学队夺冠,在人工智能领域率先圆了中国足球的冠军梦。
足球机器人中涉及的关键技术是利用计算机视觉技术实现对足球的识别和实时跟踪。近年来,乒乓球机器人开始走向实用,它能快速发现更小的乒乓球并持续跟踪,引导机械臂完成击球动作。对足球、乒乓球的快速识别并持续跟踪,利用的是计算机视觉中的颜区块和形状的自动检测技术,在居家生活、工业生产等领域有着广泛应用。学习和掌握视频图像中的颜和特定形状的检测技术,可以应用在智能小车巡道、安防机器人捕捉活动目标等创客项目中。
(2)任务与目标
①了解图像处理与目标跟踪技术的基本原理、相关算法和应用框架;
②掌握运用人工智能开源硬件设计智能应用系统的方法,掌握Python语言的编程方法;
③应用计算机视觉开源硬件和Python编程,编写块及形状综合识别算法,实现对目标的跟踪功能;
④针对生活应用场景,进一步开展创意设计,设计具有实用价值的目标跟踪应用系统。
(3)知识准备
1)Lab颜空间模型参数的取值范围
Lab颜空间很接近人类视觉,应用较为广泛。OpenCV、OpenMV等很多计算机视觉算法库都是基于Lab空间进行颜模型参数的训练,设计查块的算法。
Lab颜空间模型参数中:L是亮度,取值范围是L∈(0,100);a为颜在红绿轴的分量,取值范围是(-128,127);b为颜在蓝黄轴的分量,取值范围是(-128,127)。OpenCV等算法库对Lab模型参数做了量化对齐处理,使其处于0~255,具体做法:L=L×2.55,a=a+128,b=b+128。
块搜索一般采用邻近算法,通过计算每个像素点与颜空间的欧氏距离,确定该像素点的
颜,然后对提取出的像素点进行腐蚀、膨胀、孔洞填充等形态学处理,最终得到块的连通区域。
在块搜索过程中,Lab模型的阈值参数设定最为关键,图像的所有像素都要与阈值进行比较,才能进行后续的区域分割。如果Lab模型的阈值参数不适合当前的视频采集环境,就很难完成对视频图像进行准确的块分割。
网页界面设计的网络系统有哪些Lab各分量的阈值设定一般根据先验知识,而在实际应用中,现场光照情况不尽相同,摄像头也会带来偏情况,顺光、逆光、温、噪声等情况都会影响颜跟踪效果,常常出现所给定的阈值并不适合现场应用的情况。针对实际应用中的这些情况,可以设计一个阈值现场计算算法,为每种颜选定一个小样本采集区域,然后计算样本区域中这种颜的平均值,作为后续颜追踪过程的阈值参数。一些计算机视觉应用系统会提供颜空间阈值设置工具来辅助Lab模型的阈值参数设定,方便了实际应用工作。
2)Lab模型参数的设置
OpenAIE IDE开发工具提供了有颜阈值选择器,可以帮助开发人员快速设定适合应用现场环境的使用Lab颜模型的各个阈值参数。
利用Lab阈值编辑器,可以根据视频采集现场的光照、背景光、环境噪声、摄像头工作状态等实际情况,如图5.2所示,进行针对性的Lab模型参数设置。
图5.2 现场采集的颜物体画面质量
以图5.2中的左边块Lab建模为例,利用阈值编辑器实际操作的过程如下:
①启动阈值编辑器。在OpenAIE IDE开发环境中,从顶部菜单的“工具”栏里依次进行操作:选择工具→机器视觉→阈值编辑器,就启动了Lab颜模型的阈值编辑器,如图5.3所示。
②选择建模源图像。启动Lab颜模型的阈值编辑器后,首先就需要指定建模图像来源,可以选择以往准备好的含待建模块的原始图像文件,从中确定模型参数,这种方法常用来建立一些新颜块的模型参数。为了更好地适应应用现场的环境,可以直接选择“帧缓冲区”方式,从现场捕捉的图像帧中提取块进行建模,如图5.4所示。