基于FPGA的高速乒乓球识别追踪系统

2017 DDC中国区选拔赛作品 | 嵌入式视觉

超人I77   项目发起人  2017-06-20

本项目致力于基于FPGA的高速乒乓球识别追踪系统的研制、该装置在FPGA平台上进行图像处理、满足高速图像实时处理系统对计算性能的要求、适用于在自然环境下对高速移动的乒乓球的的识别追踪。

参与者

路阳  参与者

中国矿业大学 学生

aod321  参与者

中国矿业大学 学生

dengke0  参与者

中国矿业大学 学生

项目详情

项目创意灵感
近年来,随着计算机视觉的发展,高速视觉得到越来越多的应用与发展,如对跳水运动员的动作分析,球类运动的目标跟踪,导弹、卫星等高速飞行物体的轨迹分析等。相比较而言,常规的视觉系统一般以CCD摄像机作为图像传感器,采样速率(NTSC为30帧,PAL为25帧)不是很快,即使有优化和快速算法也不会超过30帧,只能适用于运动速度缓慢的目标。因此对高速视觉系统软硬件方面的研究成为一个重要的研究课题。
设计特色创新
本项目的特色和创新性在于如下几个方面:
1)项目利用FPGA并行处理特点,实现高速视频流处理,实现图像的实时处理、提高了处理效率并且实现更好的处理效果。
2)该项目利用FPGA作为硬件平台,可高速实时地完成图像处理任务、实现对高速运动的乒乓球的识别、追踪。
3)本项目可扩展性强,可满足在不同场合下,视频图像中特定目标的检测、定位、跟踪及识别需求,具有一定的鲁棒性和实际应用价值。
4)本项目设计的装置既可以为一种实用的高速图像跟踪系统,也能够实现模块化,供给其他部件或应用模块控制。
5)针对快速飞行乒乓球拖影图像的特点及实际技术需求,本项目采用 CS - BS - EF 方法,将传统颜色分割、背景减除、椭圆拟合方法综合运用、优势互补,实现对快速飞行的乒乓球拖影图像的连续识别和跟踪,能够快速得到球体的拖影范围并计算球心位置。
系统原理功能
针对高速实时处理图像系统对计算性能的要求,我们通过FPGA硬件实现图像处理,加快了运算速度,为高速运动的乒乓球的追踪提供了计算性能的保证。

本项目采用Basys3 FPGA开发板作为控制核心,此款开发板采用xilinx 7系列芯片。
片上主要分为摄像头、帧缓存、图像处理、VGA驱动、舵机驱动5个模块:

1、摄像头模块
本项目的摄像头模块采用OV系列的OV7670摄像头。这款摄像头时序、寄存器配置都比较简单,性能也足以满足目标识别、跟踪、分类的需要。
2、帧缓存模块
选用双口ram来实现帧缓存,以便为图像采集提供帧缓存,从而确保图像的采集和输出互不干扰。
3、图像处理模块
摄像头模块得到的是RGB数据,为了减少实际环境中光照对图像的RGB分量带来的影响,所以需要将RGB像素到HSV像素。同时处理降噪和像素坐标,为识别物体标注上色。
图像处理框图:
·检测颜色
·标注并上色
·计算标注区域的中心坐标

4、VGA驱动模块
产生VGA时序信号、数据信号,产生图像的行列计数值,以及帧缓存的读地址
5、舵机驱动模块
本系统为了实现跟踪、需要水平方向、竖直方向各一个舵机,以组成二自由度平台。平台采用的舵机是三线舵机,有电源、地以及pwm信号线三线,由FPGA驱动舵机运动。
完成情况概述
1、计算机平台中程序实现
在计算机中使用Python语言、结合OPEN CV 图像处理工具包、USB摄像头进行图像处理、在分别实现目标识别、目标跟踪、目标分类功能。
2、FPGA的硬件实现
在VIVADO HLS高层次设计下使用C语言、结合xilinx图像处理的IP核进行算法的编写与硬件实现。
制作周期分工
刘灿斌 FPGA平台的开发、硬件系统的搭建
许康康 学习图像处理、电路设计、外围电路的搭建
白路阳 图像处理算法的实现、计算机平台上算法的实现
徐登科 材料购买、FPGA平台的开发
展望项目未来
前期使用纯统计最大值的方法来捕获乒乓球的位置,该方法每一帧都是单独处理、都进行全局统计、容易受噪声影响;
拟改进为 基于MeanShift的目标跟踪算法 ,是捕获范围在上一帧的基础上进行移动、提高捕获追踪的精度和响应、并且可以捕获到运动轨迹。
收获感悟分享
这个项目完成效果并不佳、仍需要时间调试。
本次制作我们尝试用FPGA的高速运算能力来进行图像处理、充分发挥了FPGA的特性、以后进行图像处理、运用FPGA进行硬件加速处理仍是绝佳的选择。
项目采用平台: