论文部分内容阅读
摘要:本文将介绍针对体育运动视频图像分析的高尔夫球体育运动图像采集分析系统软件,系统的硬件部分包括视频采集卡、工业计算机、工业摄像机、触摸屏和机架;软件部分实现的功能有视频捕获、对比播放、绘图分析、智能图像处理等;软件的进一步开发视频处理的功能,即视频分割,使用背景更新方法把选手的前景图像从背景中分离出来。
关键词:图像采集;视频分割;背景更新法
中图分类号:TP311.52文献标识码:A文章编号:1009-3044(2007)04-11127-03
1 引言
体育运动视频图像分析系统可以对人体的实际运动进行采集和分析,改进运动员的技术要领,并可以发现问题、找出差距。目前国内并没有很完善的运动视频分析软件,这样就使运动动作错误纠正显得困难,所以在体育运动训练中运动分析领域有着重要的应用价值[1]。
高尔夫球体育运动图像采集分析系统软件,其功能是可以采集运动员的动作视频,上传到计算机上,通过软件对视频进行处理。我们目前是以高尔夫运动为研究对象,对高尔夫球运动的视频进行处理和分析。
图1 高尔夫球体育运动图像采集分析系统结构图
2 高尔夫球体育运动图像采集分析系统硬件部分介绍
高尔夫球体育运动图像采集分析系统的硬件部分包括视频采集卡、工业计算机、工业摄像机、触摸屏和机架。
视频采集卡:高尔夫球体育运动图像采集分析系统采用的视频采集卡是大恒图像系列板卡的DH-CG300/QP300/CGMPEG型采集卡,通过此采集卡可以实现视频的捕捉。
工业摄像机:高尔夫球体育运动图像采集分析系统采用双镜头采集视频,摄像机采用的是三星 SCC-C4201P型号彩色一体化变焦摄像机,
触摸屏和机架:高尔夫球体育运动图像采集分析系统采用的触摸屏是GeneralTouch GT700,通过触摸屏可以使用户很方便地进行各项操作。
3 高尔夫球体育运动图像采集分析系统软件部分介绍
高尔夫球体育运动图像采集分析系统是采用Borland c++builder编程环境编写的软件,通过视频采集、分析系统完成对高尔夫球击球动作的采集和处理,以及与专业选手动作比较的功能。首先要通过摄像头采集选手的正面和侧面击球动作,然后存入计算机;进行动作分析时可以选择单窗来单独显示一个面的击球过程;也可以选择双窗来显示不同侧面的击球动作或者与专业选手动作进行比较。选择好显示窗口以后,要选择选手当时使用的不同球杆、执杆方式和录像的播放速度,并可以自定义选手的各个动作,这样不仅可以从连续的录像里进行动作比较,更可以细致到在静态画面里进行比较。在第静态画面里,还可以对图像进行必要的曲线绘制工作以方便进行动作的比较与纠正。
实现的功能功能有:视频捕获,对比播放,绘图分析,建立练习册,保存训练记录,智能图像处理等。
视频捕获:通过两个摄像头把运动员的正面和侧面的动作捕捉到,可以通过声控方式按钮捕获击球时发出的声音来启动视频的采集动作,并根据需要设置击球点之前和之后需要保存的图像长短来达到通过声控采集视频的功能;
对比播放:分别在屏幕的左右显示保存的运动员和专业选手的图像,来进行动作的比较以进行动作的比较与校正;
绘图分析:可以在画面上绘制出不同形状的曲线和贝式曲线等,可根据需要绘制出选手的动作轮廓曲线以及杆头的击球曲线;
建立练习册:使运动员的动作与专业选手的动作对比的更详细,可以每一桢每一桢图像的对比;并且可以设置不同的动作点,例如:后摆杆、置顶等这样就可以快速定位必要的动作点,通过练习册功能可以使选手更方便地与专业选手的动作进行比较与学习;
智能图像处理:通过此系列功能可以实现图像的放大、缩小以及图像镜像,轨迹校正,移动坐标,坐标镜像等功能。
主要界面如图2所示。
4 高尔夫球体育运动图像采集分析系统功能的完善
4.1 算法
在以上功能的基础上,我们增加了视频分割的功能,即把选手的前景图像从背景中分离出来。
我们采用一种比较简单的视频分割方法,即先把背景图像存储下来,然后将前景图像与背景图像作差。一般情况下,由于运动物体在灰度上与背景灰度存在着很明显的差异,这样作差过后的差值图像只是在运动物体处有较大的灰度值。选取适当的阈值T,差之图像的灰度值大于T,视为前景物体,灰度值小于T,视为背景点。
Surendra背景更新方法[2]:(1)将第1帧图像I0,作为背景B0;(2)选取阈值T,迭代次数m=1,最大迭代次数背景图像和差分二值图像在(x,y)的灰度值;Ii为输入的第i帧图像;α为迭代速度系数;(5)迭代次数m=m+1,返回③,当迭代次数m=MAX_STEPS时结束迭代。此时Bi=(x,y)可视为背景图像。
提取运动目标:前景的运动目标的灰度与背景的灰度值之间有很大的差异,而运动物体本身的灰度值不会有很大差异。这样,当前帧图像Ii,背景图像为B,背景差分二值图像为:
这样,在差分二值图像的灰度值为255的象素点可视为前景的运动目标点[3]。
4.2 编程实现
目前Borland公司的C++ Builder 是在窗口环境下开发系统软件或应用软件的最佳选择。Borland C++ Builder (简称BCB)是一种可视化的程序语言,所谓“可视化”,是指开发图形应用界面的方法,其方法就是在建立用户界面(User Interface)时,不必编写程序来描述输入或输出界面的外观和配置,只要使用工具箱的工具,在程序设计阶段便可实现,是属于一种“What you see is what you get”可视化的设计观念[4]。C++ Builder是以C语言为基础,再加入许多对象的观念以及Windows GUI有关的功能。
C++ Builder真正体现了使用简单、开发快速的特点[5]。所以,本系统继续采用C++ Builder作为软件开发工具。
初始程序流程图如图4。
图4
经过程序实际运行和处理发现采用普通的逐点处理方式进行程序处理速度非常慢,所我们引入了ScanLine函数。
ScanLine函数也就是ScanLine[row],它相当于一个unsigned char的数组,而每一列各点的资料,则依序以[r g b r g b….r g b]的方式储存,也因此我们能够像存取数组一样,对任一点的任一个颜色分量做修改,而达到影像处理的目的。ScanLine[row] 它一次读取一整列的影像数据,PixelFormat=pf24bit时,每一点将占3个byte,分别储存:红、绿、蓝三个颜色的值(0~255)。
ScanLine可用以表示bitmap一个橫列的资料,或者说是能一次存取一整列的影像资料。在使用上,或許比较不方便,但其存取的速度,则会变快很多。是我们程式设计上,一种加快处理资料的重要方法加入ScanLine函数的程序流程图如图5。
图5
5 结语和展望
本文介绍了自主开发的高尔夫球体育运动图像采集分析系统的软硬件部分,以及完成的功能。具体介绍了视频分割功能,软件使用背景更新方法使得运动前景图像从背景图像中分离出来。
运动视频分析的研究是一件很有挑战的工作。它是控制理论、信息理论、模式识别理论、图像处理、人工智能和计算机科学等学科的综合利用。虽然人眼可以轻易分辨出运动日标,但是计算机的运动物体分割技术,国际上还处于一个相当不成熟的阶段。对于光照条件变化,遮挡,目标物体非刚体,复杂背景,目标物体轮廓不清晰、前景背景色差小等问题,目前还没有算法可以很好的解决。
参考文献:
[1]刘勋.篮球对象分割和跟踪关键技术研究.北京工业大学在校研究成果.
[2]Robert Collins.Introduction to video surveillance [EB/OL]; 2002-04-08/2005-06-12; http://www.cirrus.it/pdf/01lecture.pdf.
[3]Wu Ze ju, Chen Jun dong, Liu Yun, et al. Video object segmentation of still background [J]. Journal of Qing dao University of Science and Technology, 2004,25(5):457460.
[4]余明兴,吴明哲等. Borland C++ Builder 6程序设计经典[M].北京:科学出版社,2004(1).
[5]胡波,张昆. C++ Builder 6 编程实例教程[M]. 北京:北京希望电子出版社,2002.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
关键词:图像采集;视频分割;背景更新法
中图分类号:TP311.52文献标识码:A文章编号:1009-3044(2007)04-11127-03
1 引言
体育运动视频图像分析系统可以对人体的实际运动进行采集和分析,改进运动员的技术要领,并可以发现问题、找出差距。目前国内并没有很完善的运动视频分析软件,这样就使运动动作错误纠正显得困难,所以在体育运动训练中运动分析领域有着重要的应用价值[1]。
高尔夫球体育运动图像采集分析系统软件,其功能是可以采集运动员的动作视频,上传到计算机上,通过软件对视频进行处理。我们目前是以高尔夫运动为研究对象,对高尔夫球运动的视频进行处理和分析。
图1 高尔夫球体育运动图像采集分析系统结构图
2 高尔夫球体育运动图像采集分析系统硬件部分介绍
高尔夫球体育运动图像采集分析系统的硬件部分包括视频采集卡、工业计算机、工业摄像机、触摸屏和机架。
视频采集卡:高尔夫球体育运动图像采集分析系统采用的视频采集卡是大恒图像系列板卡的DH-CG300/QP300/CGMPEG型采集卡,通过此采集卡可以实现视频的捕捉。
工业摄像机:高尔夫球体育运动图像采集分析系统采用双镜头采集视频,摄像机采用的是三星 SCC-C4201P型号彩色一体化变焦摄像机,
触摸屏和机架:高尔夫球体育运动图像采集分析系统采用的触摸屏是GeneralTouch GT700,通过触摸屏可以使用户很方便地进行各项操作。
3 高尔夫球体育运动图像采集分析系统软件部分介绍
高尔夫球体育运动图像采集分析系统是采用Borland c++builder编程环境编写的软件,通过视频采集、分析系统完成对高尔夫球击球动作的采集和处理,以及与专业选手动作比较的功能。首先要通过摄像头采集选手的正面和侧面击球动作,然后存入计算机;进行动作分析时可以选择单窗来单独显示一个面的击球过程;也可以选择双窗来显示不同侧面的击球动作或者与专业选手动作进行比较。选择好显示窗口以后,要选择选手当时使用的不同球杆、执杆方式和录像的播放速度,并可以自定义选手的各个动作,这样不仅可以从连续的录像里进行动作比较,更可以细致到在静态画面里进行比较。在第静态画面里,还可以对图像进行必要的曲线绘制工作以方便进行动作的比较与纠正。
实现的功能功能有:视频捕获,对比播放,绘图分析,建立练习册,保存训练记录,智能图像处理等。
视频捕获:通过两个摄像头把运动员的正面和侧面的动作捕捉到,可以通过声控方式按钮捕获击球时发出的声音来启动视频的采集动作,并根据需要设置击球点之前和之后需要保存的图像长短来达到通过声控采集视频的功能;
对比播放:分别在屏幕的左右显示保存的运动员和专业选手的图像,来进行动作的比较以进行动作的比较与校正;
绘图分析:可以在画面上绘制出不同形状的曲线和贝式曲线等,可根据需要绘制出选手的动作轮廓曲线以及杆头的击球曲线;
建立练习册:使运动员的动作与专业选手的动作对比的更详细,可以每一桢每一桢图像的对比;并且可以设置不同的动作点,例如:后摆杆、置顶等这样就可以快速定位必要的动作点,通过练习册功能可以使选手更方便地与专业选手的动作进行比较与学习;
智能图像处理:通过此系列功能可以实现图像的放大、缩小以及图像镜像,轨迹校正,移动坐标,坐标镜像等功能。
主要界面如图2所示。
4 高尔夫球体育运动图像采集分析系统功能的完善
4.1 算法
在以上功能的基础上,我们增加了视频分割的功能,即把选手的前景图像从背景中分离出来。
我们采用一种比较简单的视频分割方法,即先把背景图像存储下来,然后将前景图像与背景图像作差。一般情况下,由于运动物体在灰度上与背景灰度存在着很明显的差异,这样作差过后的差值图像只是在运动物体处有较大的灰度值。选取适当的阈值T,差之图像的灰度值大于T,视为前景物体,灰度值小于T,视为背景点。
Surendra背景更新方法[2]:(1)将第1帧图像I0,作为背景B0;(2)选取阈值T,迭代次数m=1,最大迭代次数背景图像和差分二值图像在(x,y)的灰度值;Ii为输入的第i帧图像;α为迭代速度系数;(5)迭代次数m=m+1,返回③,当迭代次数m=MAX_STEPS时结束迭代。此时Bi=(x,y)可视为背景图像。
提取运动目标:前景的运动目标的灰度与背景的灰度值之间有很大的差异,而运动物体本身的灰度值不会有很大差异。这样,当前帧图像Ii,背景图像为B,背景差分二值图像为:
这样,在差分二值图像的灰度值为255的象素点可视为前景的运动目标点[3]。
4.2 编程实现
目前Borland公司的C++ Builder 是在窗口环境下开发系统软件或应用软件的最佳选择。Borland C++ Builder (简称BCB)是一种可视化的程序语言,所谓“可视化”,是指开发图形应用界面的方法,其方法就是在建立用户界面(User Interface)时,不必编写程序来描述输入或输出界面的外观和配置,只要使用工具箱的工具,在程序设计阶段便可实现,是属于一种“What you see is what you get”可视化的设计观念[4]。C++ Builder是以C语言为基础,再加入许多对象的观念以及Windows GUI有关的功能。
C++ Builder真正体现了使用简单、开发快速的特点[5]。所以,本系统继续采用C++ Builder作为软件开发工具。
初始程序流程图如图4。
图4
经过程序实际运行和处理发现采用普通的逐点处理方式进行程序处理速度非常慢,所我们引入了ScanLine函数。
ScanLine函数也就是ScanLine[row],它相当于一个unsigned char的数组,而每一列各点的资料,则依序以[r g b r g b….r g b]的方式储存,也因此我们能够像存取数组一样,对任一点的任一个颜色分量做修改,而达到影像处理的目的。ScanLine[row] 它一次读取一整列的影像数据,PixelFormat=pf24bit时,每一点将占3个byte,分别储存:红、绿、蓝三个颜色的值(0~255)。
ScanLine可用以表示bitmap一个橫列的资料,或者说是能一次存取一整列的影像资料。在使用上,或許比较不方便,但其存取的速度,则会变快很多。是我们程式设计上,一种加快处理资料的重要方法加入ScanLine函数的程序流程图如图5。
图5
5 结语和展望
本文介绍了自主开发的高尔夫球体育运动图像采集分析系统的软硬件部分,以及完成的功能。具体介绍了视频分割功能,软件使用背景更新方法使得运动前景图像从背景图像中分离出来。
运动视频分析的研究是一件很有挑战的工作。它是控制理论、信息理论、模式识别理论、图像处理、人工智能和计算机科学等学科的综合利用。虽然人眼可以轻易分辨出运动日标,但是计算机的运动物体分割技术,国际上还处于一个相当不成熟的阶段。对于光照条件变化,遮挡,目标物体非刚体,复杂背景,目标物体轮廓不清晰、前景背景色差小等问题,目前还没有算法可以很好的解决。
参考文献:
[1]刘勋.篮球对象分割和跟踪关键技术研究.北京工业大学在校研究成果.
[2]Robert Collins.Introduction to video surveillance [EB/OL]; 2002-04-08/2005-06-12; http://www.cirrus.it/pdf/01lecture.pdf.
[3]Wu Ze ju, Chen Jun dong, Liu Yun, et al. Video object segmentation of still background [J]. Journal of Qing dao University of Science and Technology, 2004,25(5):457460.
[4]余明兴,吴明哲等. Borland C++ Builder 6程序设计经典[M].北京:科学出版社,2004(1).
[5]胡波,张昆. C++ Builder 6 编程实例教程[M]. 北京:北京希望电子出版社,2002.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。