杨益宽 王俊伟 孙钰樟
摘 要 以OpenMV作为图像处理模块,搭配两个云台舵机设计了一个物体识别与跟踪实验系统。介绍了实验所采用的装置和具体实现过程,对舵机采用了增量式PID算法进行控制。该实验系统实现了对物体的识别与跟踪功能。
关键词 OpenMV 机器视觉 PID算法 舵机 识别 动态追踪
中图分类号 TP216 文献标识码 A 文章编号 1000-3932(2023)04-0569-04
机器视觉是人工智能正在发展的一个分支,随着人工智能的兴起,机器视觉的前景极好[1]。随着科技的发展,各行业自动化、智能化程度不断加深,未来几年全球机器视觉市场将持续增长。全球机器视觉产业正处于一个逐步与人工智能完美协调融合完成工业生产向智能化转型的新时期。
国外从20世纪50年代开始研究二维图像的统计模式识别。1965年,ROBERTS L R通过计算机程序从数字图像中提取出诸如立方体、楔形体及棱柱体等多面体的三维结构,并对物体形状和物体的空间关系进行描述,其研究工作开创了以理解三维场景为目的的三维机器视觉研究。该方向的研究在20世纪90年代进入高速发展期,提出了多种新概念、新方法和新理论[2]。至2006年,随着深度学习概念的提出,机器可以通过训练自主建立识别逻辑,图像识别准确率大幅提升,机器视觉发展进入一个新的阶段。
我国机器视觉的研究起步较晚,直至20世纪90年代才成立了少数视觉公司。通过搭建简单的机器视觉初级应用系统,并不断地培训和引导中国客户对机器视觉技术和产品的理解,让更多的产业人员了解到机器视觉给自动化产业带来的独特价值和广阔的应用前景[3]。其中烟草行业和特种印刷行业成为了早期机器视觉的受益者,为推动机器视觉在其他行业的发展做出了重要贡献,拉开了中国机器视觉行业的历史帷幕。OpenMV设计小巧、编程简单,可以将其应用到很多创意产品上完成与各种机器视觉相关的任务。
OpenMV是一款图像处理模块,具有小巧、低功耗、低成本及编程简单等特点,并搭载了Python脚本,因此在处理复杂的机器视觉算法方面有很大的优势。同时,也可以很轻松地触发外部终端拍摄或者执行算法,能够很好地应用到很多创意产品上,完成各种机器视觉相关任务。在此,笔者利用其对物体的识别功能,寻找目标物体最大色块区域,通过串口发送被跟踪物体的位置信息,实现与舵机云台的信息互换,完成了对目标物体的识别与跟踪。
1 实验介绍
实验系统的目的是要实现对物体的识别与跟踪,系统分为两个部分:一部分是以OpenMV为主体的图像处理模块,用来实现对物体的识别功能,并将识别到的位置信息实时传递;另一部分是系统的跟踪模块,由两个二自由云台舵机组成,用来实现系统对物体的跟踪功能。云台舵机接收OpenMV发出的位置信息,与OpenMV进行数据交换。
实验设计的整体逻辑为OpenMV对物体进行初步的识别,筛选出被跟踪的物体,对其进行锁定,其次使用云台舵机的跟踪功能,通过与OpenMV进行数据交换,得到被跟踪物体的实时位置,达到对物体跟踪的目的,具体流程如图1所示。
2 实验设计
图像识别由OpenMV完成。首先初始化摄像头,寻找目标物体,对最大色块进行识别,判断是否为目标物体,框出目标物体。物体跟踪由两个9G ST90S舵机实现,两舵机分别记为X轴舵机与Y轴舵机,它们可以与OpenMV进行信息交互,采用增量式PID算法控制。
在本次实验中对绿色小球进行识别与跟踪,在这个过程中对物体的识别依靠对小球颜色的识别,故需要将OpenMV中的绿色阈值进行调整,目的在于定义绿色,使得OpenMV了解什么是绿色,如图2所示。在阈值编辑器中,根据源图像的基础,通过对Lab阈值[4]的调整,使得在二进制图像中只有被跟踪的小球的影像,便可以得出最佳的颜色跟踪阈值。
将得到的绿色阈值数据赋值给green_threshold,并在OpenMV IDE中的函数库调用image.find_blobs()函数对该色域进行识别。程序效果如图3所示。
在OpenMV对物体识别的过程中,倘若在OpenMV传输的图像中存在小面积的绿色区域,便干扰了对物体的识别,如图4所示。
由于在识别的过程中存在绿色色域可能会对识别造成干扰,故需要对所有可能存在的色域进行筛选,再找出最大的绿色色块,这样就有效避免了云台在跟踪时小面积色块对系统的影响。在程序里笔者定义了一个find_max(blobs)函数,用于确认在识别图像时,系统选择的是最大色块。程序运行效果如图5所示。
对小球跟踪时,两个舵机分别控制X轴与Y轴,对舵机的控制采用增量式PID算法,增量式PID算法相较于传统PID算法的优势为控制量是计算机每一次计算的增量,发生故障后对系统的影响范围小[5]。
3 功能实现
运行实验系统可以实现对绿色小球的动态追踪,当绿色小球出现在OpenMV的识别范围内时,系统将会过滤小面积绿色区域的干扰,在帧缓存查看器中把绿色小球框出,并在中心区域用十字标出,判断小球的位置。在移动小球位置后,OpenMV再进行拍照,对小球的位置进行反馈,云台得到小球的位置后,通过对舵机旋转的控制,从而锁定绿色小球,以实现对物体的跟踪。
4 结束语
实验基于OpenMV視觉技术,通过Lab阈值调整与增量式PID控制算法,不仅完成了对小球的识别,还可以对其进行实时跟踪,并将信息显示出来。整套系统小巧便捷,很大程度上方便了使用者。相对于传统的跟踪系统,该系统可进行更好地识别和实时跟踪,并具有摄像、监控等功能,打破了传统系统在空间中的局限性。该系统可实时显示图像,预测大致运动方向,可轻松地将其应用到很多创意产品中,满足不同用户的需求。
參 考 文 献
[1] 袁云佳.人工智能的发展与应用综述[J].科技风,2020(17):25-26.
[2] 宋春华,彭泫知.机器视觉研究与发展综述[J].装备制造技术,2019(6):213-216.
[3] 朱云,凌志刚,张雨强.机器视觉技术研究进展及展望[J].图学学报,2020,41(6):871-890.
[4] 邹秋霞,杨林楠,彭琳,等.基于Lab空间和-Means聚类的叶片分割算法研究[J].农机化研究,2015,37(9):222-226.
[5] 梅真,赵熙临.基于增量式PID智能车调速系统的设计[J].湖北工业大学学报,2015,30(2):72-76.
[6] 王祎晨.增量式PID和位置式PID算法的整定比较与研究[J].工业控制计算机,2018,31(5):123-124.
(收稿日期:2022-07-06,修回日期:2023-06-08)
Experimental Research on Object Recognition and Tracking Based on OpenMV Vision Technology
YANG Yi-kuan, WANG Jun-wei, SUN Yu-zhang
(College of Mechanical and Electrical Engineering, Hetao University)
Abstract Taking OpenMV as an image processing module and matched with two PTZ servos to realize object recognition and tracking functions was implemented and devices adopted in the experiment and its concrete realization process were described. The incremental PID algorithm was employed for the servo control.
Key words OpenMV, machine vision, PID algorithm, servo, recognition, dynamic tracking