,
(蘭州交通大學(xué) 電子與信息工程學(xué)院,蘭州 730070)
基于自動(dòng)識(shí)別的自動(dòng)打靶機(jī)器人系統(tǒng)
李虎,張健
(蘭州交通大學(xué) 電子與信息工程學(xué)院,蘭州 730070)
開(kāi)發(fā)了一種基于圖像識(shí)別的自動(dòng)打靶機(jī)器人系統(tǒng)。該系統(tǒng)利用OV7670攝像頭獲取靶面圖像,經(jīng)過(guò)圖像處理及靶面識(shí)別后得到射擊成績(jī)。本系統(tǒng)完成了對(duì)圖像的采集、識(shí)別、判靶算法的研究,綜合運(yùn)用圖像灰度化、二值化、閥值分割等圖像預(yù)處理方法,采用局部特征識(shí)別的算法進(jìn)行靶面檢測(cè),應(yīng)用灰度特征識(shí)別光斑區(qū)域,以STM32F407單片機(jī)進(jìn)行實(shí)時(shí)處理、控制觸摸屏顯示環(huán)數(shù)。
圖像處理;閥值分割;OV7670攝像頭;STM32F407
移動(dòng)激光打靶系統(tǒng)具有廣泛的應(yīng)用前景和現(xiàn)實(shí)的軍事意義,能夠提高軍事訓(xùn)練水平,降低軍事訓(xùn)練成本,保障訓(xùn)練人員安全。研究者采用基于圖像處理的激光打靶系統(tǒng)硬件要求較低,只需普通高清攝像機(jī)采集靶位圖像,通過(guò)軟件控件識(shí)別靶位和激光光斑,硬件成本低,安裝維護(hù)方便,并且采用圖像處理算法可以使激光打靶系統(tǒng)能夠在復(fù)雜光線環(huán)境下穩(wěn)定運(yùn)行[2]。激光打靶系統(tǒng)根據(jù)打靶對(duì)象又可分為基于固定靶位和基于移動(dòng)靶位兩類[3]。目前的激光打靶系統(tǒng)大多是針對(duì)固定靶位打靶,針對(duì)移動(dòng)靶位的激光打靶系統(tǒng)應(yīng)用較少,特別是基于圖像處理的移動(dòng)激光打靶系統(tǒng)還處在研究與發(fā)展中。對(duì)移動(dòng)靶位的目標(biāo)跟蹤成為系統(tǒng)需要解決的關(guān)鍵技術(shù)之一,而激光光斑是在運(yùn)動(dòng)的靶位背景下進(jìn)行識(shí)別,也需要進(jìn)一步研究改進(jìn)[4]。
本文設(shè)計(jì)了一種基于圖像識(shí)別的自動(dòng)打靶機(jī)器人系統(tǒng),采用OV7670攝像頭來(lái)獲取靶面圖像,利用圖像處理技術(shù)獲取準(zhǔn)確的射擊信息,得出激光模擬打靶的成績(jī),且具有安全、體積小、實(shí)用性高的優(yōu)點(diǎn),能夠滿足模擬射擊訓(xùn)練的需求。
自動(dòng)打靶機(jī)器人系統(tǒng)是集數(shù)字圖像處理技術(shù)與嵌入式應(yīng)用技術(shù)于一體的模擬打靶系統(tǒng)。它用激光束代替真實(shí)的子彈模擬實(shí)彈射擊訓(xùn)練,圖像接收端利用OV7670攝像頭獲取帶有激光光斑的靶面圖像,并經(jīng)過(guò)圖像處理技術(shù)與靶面識(shí)別算法,包括圖像的灰度化、二值化、標(biāo)靶識(shí)別、中心判定、光斑識(shí)別等,最終獲取激光模擬打靶的成績(jī)并通過(guò)觸摸屏顯示,實(shí)現(xiàn)自動(dòng)報(bào)靶的功能,滿足系統(tǒng)對(duì)實(shí)時(shí)性、準(zhǔn)確性、可靠性的高要求。
本系統(tǒng)基于STM32F407單片機(jī)實(shí)現(xiàn)控制小車轉(zhuǎn)動(dòng),攝像頭圖像采集等功能。系統(tǒng)總體框圖如圖1所示。
圖1 系統(tǒng)總體框圖
STM32F407的內(nèi)核帶有ARM Cortex-M4 32位 MCU+FPU,主頻高達(dá)168 MHz(可獲得210 DMIPS 的處理能力),具有1 MB FLASH、(192+4) KB SRAM、多達(dá) 140 個(gè)具有中斷功能的 I/O 端口、15 個(gè)通信接口、多達(dá)17個(gè)定時(shí)器[5]。與STM32F1/F2等ARM Cortex-M3產(chǎn)品相比,STM32F4 最大的優(yōu)勢(shì),就是新增了硬件 FPU 單元以及 DSP 指令[6],適用于需要浮點(diǎn)運(yùn)算或 DSP 處理的應(yīng)用,使用該控制器能夠很好地完成系統(tǒng)的各項(xiàng)功能。
圖像傳感器OV7670體積小、工作電壓低,可提供單片 VGA 攝像頭和影像處理器的所有功能[7]。OV7670并行攝像頭控制引腳多,接線復(fù)雜,但采集到的圖像無(wú)需解碼就能顯示,符合本設(shè)計(jì)對(duì)系統(tǒng)的實(shí)時(shí)性要求。
3.2寸TFT彩色液晶觸摸屏是一款廣泛應(yīng)用于單片機(jī)系統(tǒng)、電子設(shè)計(jì)大賽項(xiàng)目、手持機(jī)等設(shè)備上的彩色TFT液晶顯示屏[8],具有3.2英寸顯示面積,同時(shí)兼有240×320的分辨率。在有限的平面內(nèi)顯示更多信息,采用16位標(biāo)準(zhǔn)8080總線接口方式,色彩支持26萬(wàn)色,可使圖像更加細(xì)膩,可以和任意高速系統(tǒng)接口。適配CPU:AVR、PIC、STM32系列、LPC2XXX、MSP430、51單片機(jī)、DSP、FPGA、X86、8088、Z80等[9]。
硬件是保障自動(dòng)打靶系統(tǒng)的基礎(chǔ),而軟件部分則是系統(tǒng)的核心,軟件部分中功能模塊和關(guān)鍵技術(shù)設(shè)計(jì)與實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)的性能有著極大的影響。本系統(tǒng)在基于Keil4的開(kāi)發(fā)平臺(tái)下,采用C語(yǔ)言編程實(shí)現(xiàn)系統(tǒng)的主要功能。系統(tǒng)軟件的總體結(jié)構(gòu)圖如圖2所示。
圖2 系統(tǒng)軟件的總體結(jié)構(gòu)圖
圖3 小車控制流程圖
在軟件設(shè)計(jì)中用C語(yǔ)言編程方式,采用PWM控制直流電機(jī)轉(zhuǎn)動(dòng)很小的角度,編程過(guò)程中采用主函數(shù)調(diào)用模塊函數(shù)實(shí)現(xiàn)對(duì)應(yīng)功能,其中控制小車流程圖如圖3所示。
TFT顯示程序采用C語(yǔ)言的編程方式,將TFT類化,提高了程序的集成度和可用性,對(duì)TFT顯示程序的顯示采用了獨(dú)立編程的思想進(jìn)行編程。TFT顯示流程圖如圖4所示。
圖像處理程序是整個(gè)軟件系統(tǒng)中最重要的部分,經(jīng)過(guò)圖像預(yù)處理及靶面識(shí)別,最終得到打靶的環(huán)值。圖像處理流程圖如圖5所示。
圖4 TFT顯示流程圖
圖5 圖像處理流程圖
通過(guò)攝像頭采集得到靶面圖像,經(jīng)過(guò)預(yù)處理和識(shí)別判靶處理,計(jì)算得到環(huán)值。圖像預(yù)處理是為了改善圖像質(zhì)量而進(jìn)行的各種圖像濾波和灰度、二值化等所作的標(biāo)準(zhǔn)化處理環(huán)節(jié)[10],圖像識(shí)別處理則是為了得到圖像中我們所需要的信息,因此預(yù)處理信息的好壞會(huì)直接影響圖像識(shí)別的準(zhǔn)確度[11]。圖像識(shí)別判靶算法是整個(gè)自動(dòng)打靶系統(tǒng)的核心部分,為了使系統(tǒng)能夠快速、準(zhǔn)確、自動(dòng)地顯示出打靶成績(jī),就需要設(shè)計(jì)一套良好可行且靈活快速的靶面圖像識(shí)別算法,畢竟,一個(gè)算法的好壞直接影響到結(jié)果的執(zhí)行效率。
識(shí)別與判靶的前提是先獲取靶環(huán)中心坐標(biāo)、各圓環(huán)半徑、光斑斑點(diǎn)中心坐標(biāo),再經(jīng)過(guò)計(jì)算光斑中心到靶環(huán)中心的距離,并與攝取到的靶面圖像中靶環(huán)各環(huán)半徑相比較得到環(huán)值,實(shí)現(xiàn)判靶。靶面圖像處理系統(tǒng)設(shè)計(jì)過(guò)程圖如圖6所示。
圖6 靶面圖像處理系統(tǒng)設(shè)計(jì)過(guò)程圖
采用并行攝像頭OV7670圖像傳感器采集圖像數(shù)據(jù),如圖7所示。經(jīng)過(guò)灰度、二值化預(yù)處理后,如圖8所示。
圖7 采集圖
圖8 預(yù)處理后的圖
特征提取是圖像目標(biāo)識(shí)別中的關(guān)鍵技術(shù),對(duì)于識(shí)別的最終效果有著決定性的影響[12]。本文采用局部特征識(shí)別的算法,在小車轉(zhuǎn)動(dòng)過(guò)程中掃描圖像中的三條白線,當(dāng)同時(shí)掃描到三條等間隔的白線時(shí),即發(fā)現(xiàn)了目標(biāo)標(biāo)靶。標(biāo)靶識(shí)別圖如圖9所示,圖像處理中一個(gè)重要的環(huán)節(jié)是標(biāo)靶環(huán)線的識(shí)別,經(jīng)過(guò)二值化后的靶紙圖像中的環(huán)線具有幾個(gè)像素寬度,靶面識(shí)別后,橫向掃描靶環(huán)的多條環(huán)線,對(duì)其求平均值,以確定標(biāo)靶的中心。經(jīng)過(guò)多次測(cè)試,尋求規(guī)律,對(duì)標(biāo)靶中心加以修正即可準(zhǔn)確地得到靶中心坐標(biāo)。
光斑中心識(shí)別是圖像處理過(guò)程中關(guān)鍵步驟之一,它的準(zhǔn)確程度直接決定了環(huán)數(shù)精度。本文就利用這個(gè)灰度特征識(shí)別光斑區(qū)域,光斑識(shí)別圖如圖10所示。
圖9 標(biāo)靶識(shí)別
圖10 光斑識(shí)別圖
想要計(jì)算出打靶成績(jī),即判定環(huán)值,就需要先知道光斑的中心點(diǎn)位置。系統(tǒng)中采用閥值法,即通過(guò)提取光斑區(qū)域的像素值來(lái)計(jì)算光斑中心位置。當(dāng)求取光斑中心位置后,也就相當(dāng)于得出了打靶的位置。求出光斑中心到靶環(huán)中心的距離,再與各環(huán)所處的值的范圍比較,便可得出打靶環(huán)數(shù)。環(huán)值計(jì)算公式如下:
式中,rp為光斑點(diǎn)到靶心的距離,d為相鄰靶環(huán)半徑的差值。
十環(huán)圖和六環(huán)圖如圖11和12所示。
圖11 十環(huán)圖
圖12 六環(huán)圖
進(jìn)行200次試驗(yàn),分析環(huán)值結(jié)果如表1所列。
表1 分析環(huán)值結(jié)果
在整個(gè)試驗(yàn)過(guò)程中,由于外界環(huán)境的影響,圖像二值化的效果不明顯,使得靶面中心點(diǎn)的識(shí)別有5~7個(gè)像素點(diǎn)的偏差,導(dǎo)致判靶環(huán)數(shù)的誤差在1環(huán)左右,通過(guò)多次試驗(yàn),對(duì)靶面中心加以修正,減少誤差,達(dá)到本設(shè)計(jì)的要求。小車底盤直流電機(jī)的驅(qū)動(dòng)能力有限,無(wú)法實(shí)現(xiàn)小角度的慢速轉(zhuǎn)動(dòng),在小車的轉(zhuǎn)動(dòng)中會(huì)出現(xiàn)一些誤差,但相對(duì)完成效果較好。
[1] 羅杰, 張之明. 基于圖像處理技術(shù)自動(dòng)報(bào)靶系統(tǒng)綜述[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] 張曉錕, 林嘉宇. 一種基于圖像處理技術(shù)的自動(dòng)報(bào)靶系統(tǒng)設(shè)計(jì)[J]. 微處理機(jī), 2010, 31(3):101-104.
[4] 蔡勇智. 基于圖像識(shí)別的無(wú)彈射擊自動(dòng)報(bào)靶研究[J]. 科技信息, 2013(20):127-128.
[5] 任志敏. 基于STM32F407的圖像采集系統(tǒng)設(shè)計(jì)[J]. 山西電子技術(shù), 2016(3):61-63.
[6] 楊宇, 賈永興, 榮傳振,等. 基于STM32F407的圖像采集與傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 微型機(jī)與應(yīng)用, 2015, 34(8):26-28.
[7] 李慧敏, 樊記明, 楊笑,等. 基于STM32和OV7670的圖像采集與顯示系統(tǒng)設(shè)計(jì)[J]. 傳感器與微系統(tǒng), 2016, 35(9):114-117.
[8] 張勇強(qiáng), 陽(yáng)泳, 余建坤. 基于STM32的圖像采集與顯示系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子世界, 2016(2):34-36.
[9] 胡凱, 沈新鋒, 張瑞東. 基于點(diǎn)識(shí)別的自動(dòng)報(bào)靶系統(tǒng)[J]. 電氣自動(dòng)化, 2015, 37(4):87-89.
[10] 陳廣慶, 孫建, 王吉岱,等. 基于激光靶的野外自動(dòng)報(bào)靶系統(tǒng)設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用, 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] 洪佳敏, 曾培峰. 嵌入式自動(dòng)報(bào)靶系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2015, 32(1):234-238.
李虎(碩士研究生),主要研究方向?yàn)樾盘?hào)處理、嵌入式系統(tǒng);張健(碩士研究生),主要研究方向?yàn)闊o(wú)線傳感器網(wǎng)絡(luò)。
參考文獻(xiàn)
[1] 王志賀,馬國(guó)旗,紀(jì)億.淺談WiFi技術(shù)[J].魅力中國(guó),2011(16):213.
[2] Espressif Systems.ESP8266 SDK編程手冊(cè)V1.3.0,2015.
[3] 曾磊,張海峰,候維巖.基于WiFi的無(wú)線測(cè)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電測(cè)與儀表,2011,48(7).
[4] 梁永恩,萬(wàn)世明.基于S3C6410的智能家居控制系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)與數(shù)字工程,2014(6):1104-1107.
[5] 石志國(guó),王志良,丁大偉.物聯(lián)網(wǎng)技術(shù)與應(yīng)用[M].北京:清華大學(xué)出版社,2012:22.
[6] 李朝青.單片機(jī)原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2006.
[7] 曾金,雷建云.基于Arduino的果園基地環(huán)境Web監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].物聯(lián)網(wǎng),2016,6(8):60-61.
焦再峰,主要從事電光源產(chǎn)品檢驗(yàn)工作。
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)