郭 巍,吴 伟
(无锡职业技术学院电子与信息技术学院,江苏 无锡 214121)
基于机器视觉技术的射击训练系统
郭 巍,吴 伟
(无锡职业技术学院电子与信息技术学院,江苏 无锡 214121)
简述了机器视觉图像识别技术在射击训练中的应用,并从硬件、软件组成及工作流程等方面对其进行了系统介绍,系统完成后可降低射击训练成本,提高报靶速度、精度。
射击训练;机器视觉;图像识别
目前大学生和新兵的射击训练通常采用“瞄靶”和“实弹”训练相结合的方式。“瞄靶”训练一般是空膛瞄靶,训练效果不理想,还需要老兵在一旁用观瞄镜检查纠正,费时费力;而“实弹”训练的成本高、危险系数较大,人工报靶存在精度不高、安全隐患大及人力资源浪费等不足。
目前机器视觉技术在精密检测领域发展很快,是光学探测、图像检测、计算机处理等技术的综合应用。在工业生产中被广泛采用,实现对工件的平面或三维的尺寸测量、表面缺陷分析。
在射击训练中采用机器视觉技术可供用户反复训练射击动作,提供快速准确地报靶,同时也可降低射击训练成本。
射击训练的主要通过报靶来反映出射手训练的成绩或效果,本系统就是通过摄像的方式采集靶纸图像,然后利用图像处理技术分析弹孔或激光光斑的位置,最后把图像及射击成绩传送给计算机,转换后在计算机屏幕上显示出弹着点及射击成绩。
整个系统由图像获取模块、图像处理及分析模块、光纤传输模块、人机界面模块、触发模块等主要模块组成,其中图像获取、图像预处理及分析、光纤传输、人机界面及触发主要由硬件实现,系统核心部分为图像处理及分析,此部分主要由软件实现。
此部分主要通过相应的硬件实现靶点图像的获取、图像预处理及分析、数据的传输、射击成绩显示,主要包括IEEE1394摄像头,NICVS-1456嵌入式视觉系统,MOXAI MC-21-2-SC工业光电转换器,微型计算机,NICVS-1450I/O Terminal Block及AD F7021_0.5W无线模块等硬件,各硬件功能如下。
(1)IEEE1394摄像头,该设备由NICVS-1456嵌入式视觉系统启动,主要用于图像的采集。
(2)NICVS-1456嵌入式视觉系统,该设备为分布式机器视觉应用提供I/O功能和网络连接,在本系统中主要用于对采集的图像进行预处理和分析。
(3)MOXAI MC-21-2-SC工业光电转换器,该设备提供可靠稳定的工作的环境,提供10/ 100BaseT(X)~100BaseFX光电转换,在本系统中用于射击结果的远程数据传输。
(4)微型计算机,该设备主要提供友善的人机界面,直观显示射击结果。
(5)NICVS-1450I/O Terminal Block和AD F7021_0.5W无线模块,AD F7021_0.5W无线模块在本系统负责发送和接收射手的射击信号,此模块的接收端连接NI CVS-1450I/O Terminal B lock模块,当NI CVS-1450I/O Terminal Block模块接收到射击信号时,启动NICVS-1456模块进行图形的采集、预处理和分析。
此部分主要包含图像获取模块、图像处理模块、图像分析模块、人机界面模块,前三模块在NICVS-1456嵌入式视觉系统中实现,其开发环境为NILabVIEW 2009,并分别由NIVision 2009 Devlopment Moudule、LabView Real-Time module LabVIEW提供图像分析与处理的LabVIEWI
MAQV ision库函数和实时模块库函数;人机界面模块在微型计算机中实现,在本系统中采用C#开发。
(1)图像获取模块
图像获取是图像处理的基础和前提,其功能是在收到射手的触发信号后接收摄像机所拍摄下来的图像信号转换为单帧的图片。源代码及获取的图像如下:
图1 获取的图像Fig.1 Obtain the image
(2)图像处理模块
图像模块部分由图象预处理、有效区识别两部分组成。由于原始图像含有大量的环境、污渍、折痕等噪音数据,所以必须通过图像预处理功能来增强图像信号,便于后续的处理分析工作。
LabVIEWI MAQVision中的Filters滤波器函数,用于实现虚像平滑、去除噪声、高光或强化图像中的边沿,增强了图像中的有效信息。
由于预处理后的图像还含有枪靶背景数据,而弹着点必须落在有效区才能计算射击成绩,我们需要定义关注区,把有效区域从背景中分离出来
LabVIEWI MAQVision中的Processing函数可以将灰度图像转换成二值图像。用Particle Analysis函数检测图像中的各种形态的颗粒,用Morphology函数对图像做膨胀和腐蚀,进行微粒补孔、去除边框颗粒、去除小颗粒等操作,进一步改进二值图像的质量,最后用Fill Holes函数填充关注区,形成RO I模版。最后导入该模版,用Select Region of Interest函数生成仅含有有效区的图像数据,处理后的图像如下图所示。
图2 处理后的图像Fig.2 The image processed
(3)图像分析模块
生成仅含有关注数据的图像后,就可以对图像进行分析,对弹着点、靶心、靶环等元素的特征值进行定位和测量。
图像分析过程主要调用LabVIEWI MAQVi2 sion库函数,首先用Coordinate System函数对图像建立坐标系统,以便于定位图像中特征物体,从而进行测量;然后用L ocate Edges函数查找物体边沿,最后用Caliper函数测量圆心坐标,环线距靶心的距离,弹着点距靶心的距离等参数,从而确定射击的成绩。
(4)人机界面模块
人机界面模块主要用于在微型计算机上显示射击结果及射击记录进行统计分析,给射手提供有益的射击指导,开发工具采用C#+Sql Server 2005,该组合适合于小型系统的快速开发,同时也便于系统的维护,方便用户使用。
系统工作流程图如下所示,射手扣动扳机时,枪身上的激光发射器会射出的光束,在枪靶上形成模拟弹着点的光斑。同时扳机激活ADF7021无线传输模块,给枪靶前方的CVS-1456图像处理模块发送触发信号,启动摄像头捕获一帧带有光斑的枪靶图像。图像处理模块首先对这一帧图像进行预处理,通过滤波、降噪来增强图像质量。在获得一幅质量较好的图像后,立即寻找靶纸上的光斑,如果没有找到光斑就说明这一枪脱靶了。如果发现光斑就记录下光斑的坐标,然后我们还要判断该弹着点是否在有效区域。由于枪靶属于简单纹理,可以采用二值化进一步处理图像,就是通过对采集图像中小于某一灰度阈值的像素设为0,大于该灰度阈值的像素设为1,把有效区域和背景分离开来。这时如果背景上有光斑说明这一枪脱靶了,背景上没有发现光斑说明弹着点落在了有效区域,就需要进一步判断射手的成绩了。把增强质量后的图像的每一行、每一列数据在X和Y轴上投影,就能很容易的找出每一环环线的特征值,从而确定靶心的坐标和每一环到圆心的距离。最后计算出光斑到圆心的距离,就能确定该射手这次的射击成绩了。
图3 系统工作流程图Fig.3 System work flow chart
(1)报靶精度高。人工报靶误差较大,而且仅能报整数环数的射击成绩;机器视觉报靶的尺寸能够控制误差在±1mm以内。
(2)报靶速度快。人工报靶的时间约为5s;采用机器视觉系统后报靶时间在500m s以内。
(3)报靶稳定。人工报靶受报靶员情绪,疲劳度影响,难以长时间准确的报靶;机器视觉报靶效果稳定,报靶的准确率为100%,且可以长期在恶劣的环境下工作。
(4)抗干扰能力强。机器视觉系统可以过滤绝大部分的干扰。
(5)成本低。采用普通枪靶,可以重复使用。
[1] 张广军.机器视觉[M].北京:科学出版社,2005.
[2] 高守传.VisualC++实践与提高数字图像处理与工程应用篇[M].北京:中国铁道出版社,2006.
[3] 韩子鹏.弹箭外弹道学[M].北京:北京理工大学,2008.
[4] 徐晓东.LabVIEW8.5常用功能与编程实例精讲[M].北京:电子工业出版社,2009.
[5] NIVision Concepts Manual[S].National Instruments Corporation,2009.
Based on Machine Vision Technology Shooting Training System
GUO Wei,WU Wei
(School of Electronic and Information Technology,Wuxi Institute of Technology,Wuxi 214121,China)
The paper describes the machine vision image recognition technology in the application of shooting training,and introduces hardware,software and the working process of the system comprehensively,the system can reduce the costs of shooting training, improve the indication of shooting speed and accuracy after it was finished.
shooting training;machine vision;im age recognition
TP317
A
1671-7880(2010)03-0085-03
2010-04-15
郭 巍(1973— ),男,江苏南京人。