APP下载

基于图像识别的乒乓球选手头部运动及健康分析

2014-08-07季云峰

微型电脑应用 2014年3期
关键词:头部乒乓球颈椎

朱 玲,季云峰

基于图像识别的乒乓球选手头部运动及健康分析

朱 玲,季云峰

近年来由于生活和工作的不良习惯,颈椎病的发病率成上升趋势,严重影响着人们的正常工作和身心健康。乒乓球运动作为深受广大人民喜爱的一项运动,对颈椎病的预防和治疗有很大的疗效。介绍了一种基于图像识别的检测乒乓球选手头部运动的方法,以检测目标范围中的像素块为主要算法,为乒乓球运动有益颈椎健康提供了科学并准确的依据,增强其说服力,鼓励大家多多参加乒乓球运动。

乒乓球;OpenCV;头部扭动;像素块检测

0 引言

近年来颈椎病的发病率成上升趋势,发病情况与人们的职业因素有着密切的关系,且表现出低龄化趋势。这种职业因素的显现可能与社会竞争压力越来越大,人们每日活动时间缩短,伏案工作或学习的时间延长,加之保健意识薄弱,使颈部肌肉、韧带长期处于紧张状态有关。颈椎有病,轻者转动不灵活,重者会导致其他系统一些疾病,如动脉硬化、高血压、冠心病等,甚至可能出现瘫痪,严重影响着人们的正常工作与身心健康。所以,保护好你的颈椎可以提高生活质量,预防很多疾病。

乒乓球作为全国人民心目中的“国球”,又在奥运会项目中国又是闻名世界的“梦之队”,另一方面又因为其易上手性和娱乐性而广受人民群众的喜爱。据研究,打一场乒乓 ,两腿要移动 1000-2000 米,挥拍击球 1000 多次,这样就使全身各个肌肉群得到锻炼,心跳加快,呼吸加深,新城代谢旺盛,内脏器官的功能提高,体质逐渐增强。【1】而对于颈椎来说,乒乓球运动中脖子将会随着挥拍的工作左右摇晃,对于颈部肌肉群有很好的锻炼效果,加速了颈椎周围的血液循环,对颈椎病的预防和治疗有很大的疗效。当脖子左右扭动达到一定角度并重复此运动达到一定时间以后,可很好的缓解颈部肌肉群的疲劳,促进颈部周围血液循环,可有效的预防治疗颈椎病。【2】

本文提出了一种基于图像识别的检测乒乓球运动中选手的脖子扭动次数的方法,以 microsoft visual studio 2008 为开发平台,并以 opencv 为开发环境,以检测目标范围中的像素块为主要算法,为乒乓球运动有益颈椎健康提供了科学并准确的依据,增强其说服力,鼓励大家多多参加乒乓球运动。

1 检测方法描述:

1.1 OpenCV 简介

OpenCV(open source computer vision library)诞生于Intel 研究中心,是近年来推出的开源、免费的计算机视觉库,利用其所包含的函数可以很方便地实现数字图像和视频处理。同时利用面向对象的 VC++ 6.0 编程工具,用 C++语言进行程序编写,大大提高了计算机的运行速度。[3]

本文所做实验正是基于 OpenCV 上的图像识别,主要使用 函 数 包 括 cvSplit, cvThreshold , cvDilate, cvErode,cvFindContours 等,主要使用功能包含二值化,设 ROI区域,腐蚀和膨胀,查找像素块等,这些函数组合在一起,实现了本文对运动员脖子扭动次数进行检测的算法。

1.2 实验环境及实验装置:

本文所做的检测是在乒乓球运动之中的,所涉及到的实验装置有摄像机、图像采集卡、上位机、显示器。其中,摄像机位于人体头部的正上方,如图1所示:

图1

图像采集卡与摄像机连接,上位机与图像采集卡的输出端连接,图像采集卡将视频即时传入上位机中。上位机内部具有主控程序,该主控程序处理视频后得到人体头部的转动次数,显示器实时显示来自上位机的视频以及人体头部的转动次数。

1.3 检测方法核心思想

为满足实验检测要求,我们要求被检测的运动员穿上我们服装和帽子,其中服装和帽子上有我们事先做好的标记,如图2所示:

图2

如前言中提到的,当脖子左右扭动达到一定角度并重复此运动达到一定时间以后,可以有效的预防治疗颈椎病。故本文设计了一种方法即当脖子扭动到一定角度后帽檐可以挡住其中一个我们所标记的黑方块,从而在所拍视频中只能检测出2个黑色方块,如图3所示:

图3

在本文中,我们所设定的扭头角度为 45度,其中,这个角度是可以自行改变的,如图3,我们实验中按照 45 度角时帽檐挡住一个黑色方块,若要求角度大于 45度,只需将衣服上的黑色标记远离头部贴一些距离即可。同理,若要求角度小于 45度时,只需将衣服上的标记靠近头部贴一些距离即可。

故本文检测方法的核心思想就是检测摄像机拍下的视频中每一帧图片中我们所给的标记数目,当检测到的数目的个数从3到2或从2到3时记为扭头一次。

1.4 设置 ROI区域

为完成本文的实验目的,我们先需要将给定的黑色标记在程序中识别出来,这个标记最大的特征即是它的颜色,故本文是以检测图像颜色为主要手段进行,考虑到光照和环境的因素会对实验室结果造成一些误差,我们将设定一个 ROI(region of interest)区域,即感兴趣的区域,程序运行将只对该区域进行检测,通过在帽子正中间做个红色方块标记,在视频中可以通过找出这个红色标记的中心,并以此为圆心,一定的像素长度a作为半径做圆作为我们所需要的 ROI区域。其中,a的数值可以通过拍摄出的视频中每帧图片的大小来设置具体的数值,只要将我们所需要检测的另外 3个黑色方块标记包围起来即可,红色方块标记设计如图4所示:

图4

1.5 实验步骤和流程图

1.5.1 具体实验步骤

高速摄像机拍下视频后通过图像采集卡传送入上位机中,上位机在 microsoft visual studio 2008 中运行程序后,将视频中运动员扭头次数显示在显示屏上。拍摄到的视频数据,将被传送到上位机中的主控程序中,数据处理过程主要包括以下几个步骤:

S1:启动,系统初始化,判断是否有视频导入。

S2:有视频导入则开始进入主控程序,否则回到第 1步。

S3:进入主控程序中,先将导入的视频用循环的方法将每帧图片依次提取出来,放在我们所要调试的 debug 文件夹里。

S4:开始用循环的方法一帧一帧处理 S3 得到的图片:首先将该图片复制一张并对复制图片进行处理,先将该图片RGB空间中的像素点,变换到HSV 空间中,再设置阈值将属于红色范围的那些点进行聚类,可以得到我们要的红色标记的像素块,再将其中心坐标提取出来,并以此为圆心,a像素值为半径在原图上做圆设置为 ROI区域,a的取值大小根据摄像机拍出的视频来获得,只要保证 ROI区域将我们所做的 3块黑色标记块都包含进去即可,然后再将图片中ROI圆区域之外的区域都设置为黑色,即 RGB 值设为 0,再对 ROI区域图像进行处理。这样一方面减少了程序的工作量,另一方面也提高了程序的准确性。

S5:再将图片由 3 通道转化为单通道,并对 3 张单通道图片分别进行处理,先对其实现二值化,并设置阈值,将RGB 值在 60 以上的都设为黑色,60 以下的设为白色,再将其中2张单通道图片进行与处理,再与第3张单通道图片进行与处理,可得到一张将 3张图片与处理得到的单通道图片,并将其进行一定量的膨胀和腐蚀,可以去掉一些小的不相关的像素块,由此可以找出我们在衣服和帽子上作的标记,如示例图5:

图5

S6:利用 opencv 中的查找函数查找出图片中的白色的像素块,并将查找到像素块的数目存入函数中给定的变量s中。

S7:根据 S5 中得到的 s值,我们可知当运动员脖子没有扭动的时候 s值为 3,当运动员脖子扭动超过 45 度以上,由于帽沿将其中一个标记块给挡住了,故只能查找出2个白色像素块,所以 s值为 2,由此我们可以设定当 s的值从 2到 3 或者从 3 到 2 时,函数中计数器 num 即运动员脖子扭动次数的值加 1,计数器 num 的初值设为 0,并将 num 的值显示在显示屏上,如示例图6所示。

图6

S8:将处理完的每帧图片以 30ms的速度依次显示在显示屏上,即给人的视觉上是以视频的方式播放出来处理完的图片,从而完成即时输出高速摄像机拍到视频并将其处理后得到视频的任务,得到更加完整的结果。

S9:运动员打球结束,关掉高速摄像机后,上位机中停止了视频输入,此时输出视频到此结束,num 值即为运动员打球过程中脖子扭动次数,即时显示在显示屏上,程序结束。

1.5.2 程序流程图

如图7所示:

图7 程序流程图

2 实验结果及分析

为了验证方法的实用性和证明打乒乓球对颈椎的健康有益,本文随机抽取了 20名乒乓球选手进行实验研究,其中包括 10 名乒乓球爱好者和 10 名专业乒乓球运动员,年龄从 10 岁到 60 岁都涉及,男女皆有。本文要求他们穿上我们的服装,在实验环境进行检测,时间为5分钟,自由打球时间,有练习有比赛,检测结果如表1所示:

表1

如表1所示,通过检测我们可以得出结论:

a. 20 名运动员 5 分钟打乒乓球时间平均扭头次数为56.5 次,如果按照平均每次乒乓球选手打球一个小时来计算的话,每名选手打一次球头部要扭动 678 次;

b. 乒乓球运动员在规定时间的扭头次数上下浮动明显小于乒乓球爱好者,可说明经过专业训练的乒乓球选手在动作规范和身体协调性上差别不大,而业余的乒乓球爱好者可能会受自身的一些习惯和身体素质影响,但是总体来说,头部都会出现较高频率的扭动。

如引言中所说,一次运动中脖子扭动达到如此多的次数,对于颈部肌肉群有很好的锻炼效果,加速了颈椎周围的血液循环,很好的缓解颈部肌肉群的疲劳,可有效的预防治疗颈椎病。

经过调查 20名实验人员的身体状况,发现没有一个人得过颈椎方面的疾病,虽然取得样本不大,但是也在一定程度上反映出打乒乓球对于颈椎健康的有益之处。至此,本文完成了既定目标,为乒乓球运动有益颈椎健康提供了科学并准确的依据,增强其说服力,鼓励大家多多参加乒乓球运动。

[1]吴阳,杨忠华.乒乓球运动健康价值的探究分析[J].科技信息,(33):504,2009.

[2]祥子.头部扭扭,颈椎轻松[J].时代风采,(4):38,2008.

[3]秦小文,温志芳,乔维维.基于 OpenCV 的图像处理[J].电子测试,(7):39-41,2011.

[4]于仕琪,刘瑞祯.学习 OpenCV(中文版)[M].北京:清华大学出版社,2009.

[5]熊令,洪健.基于 OpenCV 的视频对象的运动检测[J].电子测试,(9):91-93,2009.

[6]陈磊.计算机视觉类库 OpenCV 在 VC 中的应用[J].软件时空,23(43):170-171,2007.

Table Tennis Players’ Head Movement and Health Analysis Based on Image Recognition

Zhu ling1,Ji Yunfeng2
(1.Shanghai Institute of Physical Education Chinese table tennis school, Shanghai 200438, China; 2. Optical electrical and computer engineering, University of Shanghai for Science and Technology Shanghai 200438, China)

In recent years, due to the bad habits of life and work, the incidence of cervical disease is tending to increase, which seriously affects people's normal work and health. As one of the most favorite sports, playing table tennis has a great effect on the prevention and treatment of cervical disease. The approach in this paper is based on image recognition which detects table tennis players’ heads movement and the main algorithm is to detect the target pixel blocks. The article provides a scientific and accurate basis for cervical health benefits of table tennis and encourages people to participate in table tennis sport.

Table Tennis; OpenCV; Head Twist; Pixel Block Detection

TP311

A

1007-757X(2014)02-0059-03

2014.02.28)

朱 玲(1983-),女,上海体育学院中国乒乓球学院,硕士,研究方向:体育教学训练学,上海,200438李云峰,上海理工大学光电信息与计算机工程学院,讲师,研究方向:光电信息理论与处理,上海,200438

猜你喜欢

头部乒乓球颈椎
颈椎为什么易发病
乒乓球悬浮术
养护颈椎,守住健康
火箭的头部为什么是圆钝形?
跳舞的乒乓球
乒乓球瘪了怎么办
拿什么拯救你,我的颈椎
靠拢的乒乓球
失眠可能与颈椎有关
自适应统计迭代重建算法在头部低剂量CT扫描中的应用