基于自动识别的自动打靶机器人系统

2018-01-04 02:55
单片机与嵌入式系统应用 2017年12期
关键词:靶面标靶光斑

(兰州交通大学 电子与信息工程学院,兰州 730070)

基于自动识别的自动打靶机器人系统

李虎,张健

(兰州交通大学 电子与信息工程学院,兰州 730070)

开发了一种基于图像识别的自动打靶机器人系统。该系统利用OV7670摄像头获取靶面图像,经过图像处理及靶面识别后得到射击成绩。本系统完成了对图像的采集、识别、判靶算法的研究,综合运用图像灰度化、二值化、阀值分割等图像预处理方法,采用局部特征识别的算法进行靶面检测,应用灰度特征识别光斑区域,以STM32F407单片机进行实时处理、控制触摸屏显示环数。

图像处理;阀值分割;OV7670摄像头;STM32F407

引 言

移动激光打靶系统具有广泛的应用前景和现实的军事意义,能够提高军事训练水平,降低军事训练成本,保障训练人员安全。研究者采用基于图像处理的激光打靶系统硬件要求较低,只需普通高清摄像机采集靶位图像,通过软件控件识别靶位和激光光斑,硬件成本低,安装维护方便,并且采用图像处理算法可以使激光打靶系统能够在复杂光线环境下稳定运行[2]。激光打靶系统根据打靶对象又可分为基于固定靶位和基于移动靶位两类[3]。目前的激光打靶系统大多是针对固定靶位打靶,针对移动靶位的激光打靶系统应用较少,特别是基于图像处理的移动激光打靶系统还处在研究与发展中。对移动靶位的目标跟踪成为系统需要解决的关键技术之一,而激光光斑是在运动的靶位背景下进行识别,也需要进一步研究改进[4]。

本文设计了一种基于图像识别的自动打靶机器人系统,采用OV7670摄像头来获取靶面图像,利用图像处理技术获取准确的射击信息,得出激光模拟打靶的成绩,且具有安全、体积小、实用性高的优点,能够满足模拟射击训练的需求。

1 系统总体设计方案

自动打靶机器人系统是集数字图像处理技术与嵌入式应用技术于一体的模拟打靶系统。它用激光束代替真实的子弹模拟实弹射击训练,图像接收端利用OV7670摄像头获取带有激光光斑的靶面图像,并经过图像处理技术与靶面识别算法,包括图像的灰度化、二值化、标靶识别、中心判定、光斑识别等,最终获取激光模拟打靶的成绩并通过触摸屏显示,实现自动报靶的功能,满足系统对实时性、准确性、可靠性的高要求。

本系统基于STM32F407单片机实现控制小车转动,摄像头图像采集等功能。系统总体框图如图1所示。

图1 系统总体框图

2 硬件系统总体设计

2.1 STM32F407

STM32F407的内核带有ARM Cortex-M4 32位 MCU+FPU,主频高达168 MHz(可获得210 DMIPS 的处理能力),具有1 MB FLASH、(192+4) KB SRAM、多达 140 个具有中断功能的 I/O 端口、15 个通信接口、多达17个定时器[5]。与STM32F1/F2等ARM Cortex-M3产品相比,STM32F4 最大的优势,就是新增了硬件 FPU 单元以及 DSP 指令[6],适用于需要浮点运算或 DSP 处理的应用,使用该控制器能够很好地完成系统的各项功能。

2.2 图像传感器OV7670

图像传感器OV7670体积小、工作电压低,可提供单片 VGA 摄像头和影像处理器的所有功能[7]。OV7670并行摄像头控制引脚多,接线复杂,但采集到的图像无需解码就能显示,符合本设计对系统的实时性要求。

2.3 触摸屏显示模块

3.2寸TFT彩色液晶触摸屏是一款广泛应用于单片机系统、电子设计大赛项目、手持机等设备上的彩色TFT液晶显示屏[8],具有3.2英寸显示面积,同时兼有240×320的分辨率。在有限的平面内显示更多信息,采用16位标准8080总线接口方式,色彩支持26万色,可使图像更加细腻,可以和任意高速系统接口。适配CPU:AVR、PIC、STM32系列、LPC2XXX、MSP430、51单片机、DSP、FPGA、X86、8088、Z80等[9]。

3 软件系统总体设计

硬件是保障自动打靶系统的基础,而软件部分则是系统的核心,软件部分中功能模块和关键技术设计与实现对整个系统的性能有着极大的影响。本系统在基于Keil4的开发平台下,采用C语言编程实现系统的主要功能。系统软件的总体结构图如图2所示。

图2 系统软件的总体结构图

3.1 小车控制程序

图3 小车控制流程图

在软件设计中用C语言编程方式,采用PWM控制直流电机转动很小的角度,编程过程中采用主函数调用模块函数实现对应功能,其中控制小车流程图如图3所示。

3.2 TFT显示程序

TFT显示程序采用C语言的编程方式,将TFT类化,提高了程序的集成度和可用性,对TFT显示程序的显示采用了独立编程的思想进行编程。TFT显示流程图如图4所示。

3.3 图像处理程序

图像处理程序是整个软件系统中最重要的部分,经过图像预处理及靶面识别,最终得到打靶的环值。图像处理流程图如图5所示。

图4 TFT显示流程图

图5 图像处理流程图

4 靶面图像处理系统的设计

通过摄像头采集得到靶面图像,经过预处理和识别判靶处理,计算得到环值。图像预处理是为了改善图像质量而进行的各种图像滤波和灰度、二值化等所作的标准化处理环节[10],图像识别处理则是为了得到图像中我们所需要的信息,因此预处理信息的好坏会直接影响图像识别的准确度[11]。图像识别判靶算法是整个自动打靶系统的核心部分,为了使系统能够快速、准确、自动地显示出打靶成绩,就需要设计一套良好可行且灵活快速的靶面图像识别算法,毕竟,一个算法的好坏直接影响到结果的执行效率。

识别与判靶的前提是先获取靶环中心坐标、各圆环半径、光斑斑点中心坐标,再经过计算光斑中心到靶环中心的距离,并与摄取到的靶面图像中靶环各环半径相比较得到环值,实现判靶。靶面图像处理系统设计过程图如图6所示。

图6 靶面图像处理系统设计过程图

4.1 图像采集与预处理

采用并行摄像头OV7670图像传感器采集图像数据,如图7所示。经过灰度、二值化预处理后,如图8所示。

图7 采集图

图8 预处理后的图

4.2 标靶与光斑识别

特征提取是图像目标识别中的关键技术,对于识别的最终效果有着决定性的影响[12]。本文采用局部特征识别的算法,在小车转动过程中扫描图像中的三条白线,当同时扫描到三条等间隔的白线时,即发现了目标标靶。标靶识别图如图9所示,图像处理中一个重要的环节是标靶环线的识别,经过二值化后的靶纸图像中的环线具有几个像素宽度,靶面识别后,横向扫描靶环的多条环线,对其求平均值,以确定标靶的中心。经过多次测试,寻求规律,对标靶中心加以修正即可准确地得到靶中心坐标。

光斑中心识别是图像处理过程中关键步骤之一,它的准确程度直接决定了环数精度。本文就利用这个灰度特征识别光斑区域,光斑识别图如图10所示。

图9 标靶识别

图10 光斑识别图

想要计算出打靶成绩,即判定环值,就需要先知道光斑的中心点位置。系统中采用阀值法,即通过提取光斑区域的像素值来计算光斑中心位置。当求取光斑中心位置后,也就相当于得出了打靶的位置。求出光斑中心到靶环中心的距离,再与各环所处的值的范围比较,便可得出打靶环数。环值计算公式如下:

式中,rp为光斑点到靶心的距离,d为相邻靶环半径的差值。

5 实物展示与分析

5.1 实物展示

十环图和六环图如图11和12所示。

图11 十环图

图12 六环图

5.2 理论分析

进行200次试验,分析环值结果如表1所列。

表1 分析环值结果

在整个试验过程中,由于外界环境的影响,图像二值化的效果不明显,使得靶面中心点的识别有5~7个像素点的偏差,导致判靶环数的误差在1环左右,通过多次试验,对靶面中心加以修正,减少误差,达到本设计的要求。小车底盘直流电机的驱动能力有限,无法实现小角度的慢速转动,在小车的转动中会出现一些误差,但相对完成效果较好。

结 语

[1] 罗杰, 张之明. 基于图像处理技术自动报靶系统综述[J]. 激光杂志, 2016, 37(7):1-6.

[2] Lin Y C, Miaou S G, Lin Y C, et al.An automatic scoring system for air pistol shooting competition based on image recognition of target sheets[C]//IEEE International Conference on Consumer Electronics-TaiwanIEEE,2015:140-141.

[3] 张晓锟, 林嘉宇. 一种基于图像处理技术的自动报靶系统设计[J]. 微处理机, 2010, 31(3):101-104.

[4] 蔡勇智. 基于图像识别的无弹射击自动报靶研究[J]. 科技信息, 2013(20):127-128.

[5] 任志敏. 基于STM32F407的图像采集系统设计[J]. 山西电子技术, 2016(3):61-63.

[6] 杨宇, 贾永兴, 荣传振,等. 基于STM32F407的图像采集与传输系统的设计与实现[J]. 微型机与应用, 2015, 34(8):26-28.

[7] 李慧敏, 樊记明, 杨笑,等. 基于STM32和OV7670的图像采集与显示系统设计[J]. 传感器与微系统, 2016, 35(9):114-117.

[8] 张勇强, 阳泳, 余建坤. 基于STM32的图像采集与显示系统的设计与实现[J]. 电子世界, 2016(2):34-36.

[9] 胡凯, 沈新锋, 张瑞东. 基于点识别的自动报靶系统[J]. 电气自动化, 2015, 37(4):87-89.

[10] 陈广庆, 孙建, 王吉岱,等. 基于激光靶的野外自动报靶系统设计[J]. 电子技术应用, 2015, 41(5):32-34.

[11] Xu L, Gan E, Zheng S. An automatic laser gun shoot system based on image identification technology[J]. Icic Express Letters Part B Applications An International Journal of Research&Surveys, 2015(6).

[12] 洪佳敏, 曾培峰. 嵌入式自动报靶系统的设计与实现[J]. 计算机应用与软件, 2015, 32(1):234-238.

李虎(硕士研究生),主要研究方向为信号处理、嵌入式系统;张健(硕士研究生),主要研究方向为无线传感器网络。

参考文献

[1] 王志贺,马国旗,纪亿.浅谈WiFi技术[J].魅力中国,2011(16):213.

[2] Espressif Systems.ESP8266 SDK编程手册V1.3.0,2015.

[3] 曾磊,张海峰,候维岩.基于WiFi的无线测控系统设计与实现[J].电测与仪表,2011,48(7).

[4] 梁永恩,万世明.基于S3C6410的智能家居控制系统的设计[J].计算机与数字工程,2014(6):1104-1107.

[5] 石志国,王志良,丁大伟.物联网技术与应用[M].北京:清华大学出版社,2012:22.

[6] 李朝青.单片机原理及接口技术[M].北京:北京航空航天大学出版社,2006.

[7] 曾金,雷建云.基于Arduino的果园基地环境Web监测系统设计[J].物联网,2016,6(8):60-61.

焦再峰,主要从事电光源产品检验工作。

AutomaticTargetShootingRobotDesignBasedonAutomaticRecognition

LiHu,ZhangJian

(College of Electronic and Information,Lanzhou Jiaotong University,Lanzhou 730070,China)

In the paper,a kind of automatic shooting robot system based on image recognition is proposed.The system uses the OV7670 camera to obtain the target image and get the shooting results after image processing and target surface recognition.This system not only completes the research of image collection,identification and judgment of target algorithm,but also comprehensively uses the image pre-processing techniques like image grizzled processing,image binary and threshold segmentation,etc.Besides,it adopts the local feature recognition algorithm to detect the target image and gray-scale feature to identify the flare area.The MCU STM32F407 is used for real-time processing and controlling the touch screen to display the number of rings.

image processing;threshold segmentation;OV7670 camera;STM32F407

TN911.73

A

杨迪娜

2017-09-04)

2017-08-31)

猜你喜欢
靶面标靶光斑
光斑
船舶高压水射流除锈过程有限元仿真分析
有趣的光斑
有趣的光斑
倾斜螺纹孔射流传热特性的数值研究
基于凸包算法和抗差最小二乘法的激光扫描仪圆形标靶中心定位
实验研究类螺纹孔旋流冲击射流的冷却特性
多弹丸时空散布参数测试方法仿真研究
大光斑1064nmQ开关Nd:YAG激光治疗黄褐斑的临床研究
球形标靶的固定式扫描大点云自动定向方法