论文部分内容阅读
摘要:本文设计并实现了一种基于手势识别的电动车控制系统,能够通过不同的手势来控制小车的行进方向。该系统能够自动捕获用户的手势,并将其作为信号读入系统进行识别,将识别结果转化成命令通过无线模块传输至车载MCU,从而实现小车的手势控制。本系统设计简单,硬件成本低廉,具有一定的实际用途。
关键词:手势控制;图像处理;电动车导航;无线传输
中图分类号:TP242.6 文献标识码:A 文章编号:1007-9599 (2011) 23-0000-01
Smart Electric Vehicles Design Based on Gesture Control
Zhang He,Zhong Yan,An Rui,Chen Haoyu,Li Yuang,Jiang Menyang,Yang Yang
(Xi'an Technological University,North Institute of Information Engineering,Beijing 100144,China)
Abstract:This paper designed and implemented gesture recognition based control system for electric vehicles,through different gestures to control the car's direction of travel.The system can automatically capture the user's gestures,and read into the system as a signal identification,the recognition result into commands to the vehicle through the wireless transmission module MCU,in order to achieve the car's gesture control.This system design is simple,low cost hardware,have some practical use.
Keywords:Gesture control;Image processing;Electric vehicle navigation;Wireless transmission
一、引言
手势是人类最富有表现力的交互方法和最有力的沟通手段之一。在人类的交流当中,手势是经常使用的手段,也是人机交互领域研究的热点。基于手势控制的智能电动车,使用普通摄像头采集人手视频,经过对图像序列的处理,识别使用者的指令意图,并通过无线方式,控制小车的行动。本文提出一种利用图像采集的方法来远程控制小车,该设计能够通过摄像头来采集手势,以此控制智能小车。
二、设计原理
本设计方案以具有摄像头的PC为核心完成图像采集和处理,采集到手势后,将其识别并转化为小车控制指令,通过无线通信模块发送到小车端的单片机上,由单片机完成对智能小车的行进控制。基本结构图如图1所示。
图1.系统结构框图
(一)手势识别原理
本文定义了六种手势完成小车的控制,如图2所示的六种手势。通过识别手指的个数,完成手势的识别。
图2.手势种类图
手指检测的目的是从分割出的人手轮廓中提取出手指,并可实现手指统计的功能。手指提取的方法是通过图像形态学的腐蚀-膨胀的方法。形态学的图像处理方法是将形态,如骨架、边界等,作为工具从图像中提取有用处的图像分量的方法。它能完成图像的预处理或后处理,如过滤、细化和修剪等。一般来说,形态学的方法所处理的对象是二值图像,其基本的方法是进行像素值[0,1]的逻辑运算,与、或和非(求补),以及它们互相组合形成的其他逻辑运算。膨胀和腐蚀是形态学处理的基础,许多形态学算法都是以这两种运算为基础。
膨胀的目的是使图像变大,其数学上的定义为集合运算。A和B是两个集合,A被B膨胀定义为:
其中代表空集,B为结构元素。A被B膨胀后,A中所有的像素点都会以B为卷积模板,进行与操作。
腐蚀的数学定义与膨胀类似:
B对A进行腐蚀同样会用结构元素B与A中的做与操作,腐蚀处理的结果是使原来的二值图像减小一圈。在手指提取的过程中,首先使用腐蚀操作,将手指都去除掉,然后使用膨胀操作使剩余的手掌部分还原成原来的大小。接着用原始的图像减去还原出的手掌图像,就得到的所有的手指图像。最后使用联通量分析,手指可以被编号,并计算出其数量。同时,手掌的图像还可用于手心位置的确定。
(二)小车通信
手势识别之后,需要将识别出的手势指令发送给小车,实现控制功能。为了使通信过程简化,系统使用了两个无线透明传输模块,将模块与计算机端及小车端的串口连接,通过串口通信程序,即可实现透明传输功能。
(三)小车控制过程
小车的控制部分需要实现二个目标:第一,串口的接受与发送。第二,通过接受的信号控制小车前进、后退、左转和右转的基本运动。以AT89S52单片机为基础,通过不同手势输入转换成信号控制小车运动。
三、系统设计
系统设计分为硬件与软件设计两部分,在硬件设计部分,由于选用了透明串口无线传输模块。因此,只需如图4所示在PC端及小车端使用串口与该模块相连,通过发送串口指令,就可以完成通信。而在软件部分,PC端需实现手势的识别与串口指令的发送,在小车端需完成串口指令的接收及小车运动的控制。PC端的软件在VC2008下编写完成,使用了opcnCV图像处理开源库。采集到手势图像后,将手指轮廓的个数提出,转化为小车的控制指令后通过串口发出,用来控制小车的运动。在小车端软件在Keil环境下用C语言完成,下载到AT89S52单片机后,完成串口指令的接收及小车控制功能。使用了普通PWM波控制小车电机的旋转,完成其运动的控制。
四、结束语
本文实现了一种基于手势识别的小车控制方法,在PC端采集人手图像,通过图像处理算法将其手指轮廓识别,并转为为串口指令发送至小车端用于控制小车的运动。本方案使用了无线控制,采用了模块化设计,只需稍加修改就可以移植到各个领域上,而不仅仅局限于小车控制,具有较好的移植性。
参考文献:
[1]秦志强.C51单片机应用与C语言程序设计[M].电子工业出版社,2007
[2](美)布拉德斯基,(美)克勒.学习openCV[M].清华出版社,2009
[3]崔屹.图象处理与分析:数学形态学方法及应用[M].科学出版社,2002
[4]刘瑞祯,于仕琪.OpenCV教程(基础篇)[M].北京航空航天大学出版社,2007
*本项目受2011年北京市本科生科学研究与创业行动计划资助
关键词:手势控制;图像处理;电动车导航;无线传输
中图分类号:TP242.6 文献标识码:A 文章编号:1007-9599 (2011) 23-0000-01
Smart Electric Vehicles Design Based on Gesture Control
Zhang He,Zhong Yan,An Rui,Chen Haoyu,Li Yuang,Jiang Menyang,Yang Yang
(Xi'an Technological University,North Institute of Information Engineering,Beijing 100144,China)
Abstract:This paper designed and implemented gesture recognition based control system for electric vehicles,through different gestures to control the car's direction of travel.The system can automatically capture the user's gestures,and read into the system as a signal identification,the recognition result into commands to the vehicle through the wireless transmission module MCU,in order to achieve the car's gesture control.This system design is simple,low cost hardware,have some practical use.
Keywords:Gesture control;Image processing;Electric vehicle navigation;Wireless transmission
一、引言
手势是人类最富有表现力的交互方法和最有力的沟通手段之一。在人类的交流当中,手势是经常使用的手段,也是人机交互领域研究的热点。基于手势控制的智能电动车,使用普通摄像头采集人手视频,经过对图像序列的处理,识别使用者的指令意图,并通过无线方式,控制小车的行动。本文提出一种利用图像采集的方法来远程控制小车,该设计能够通过摄像头来采集手势,以此控制智能小车。
二、设计原理
本设计方案以具有摄像头的PC为核心完成图像采集和处理,采集到手势后,将其识别并转化为小车控制指令,通过无线通信模块发送到小车端的单片机上,由单片机完成对智能小车的行进控制。基本结构图如图1所示。
图1.系统结构框图
(一)手势识别原理
本文定义了六种手势完成小车的控制,如图2所示的六种手势。通过识别手指的个数,完成手势的识别。
图2.手势种类图
手指检测的目的是从分割出的人手轮廓中提取出手指,并可实现手指统计的功能。手指提取的方法是通过图像形态学的腐蚀-膨胀的方法。形态学的图像处理方法是将形态,如骨架、边界等,作为工具从图像中提取有用处的图像分量的方法。它能完成图像的预处理或后处理,如过滤、细化和修剪等。一般来说,形态学的方法所处理的对象是二值图像,其基本的方法是进行像素值[0,1]的逻辑运算,与、或和非(求补),以及它们互相组合形成的其他逻辑运算。膨胀和腐蚀是形态学处理的基础,许多形态学算法都是以这两种运算为基础。
膨胀的目的是使图像变大,其数学上的定义为集合运算。A和B是两个集合,A被B膨胀定义为:
其中代表空集,B为结构元素。A被B膨胀后,A中所有的像素点都会以B为卷积模板,进行与操作。
腐蚀的数学定义与膨胀类似:
B对A进行腐蚀同样会用结构元素B与A中的做与操作,腐蚀处理的结果是使原来的二值图像减小一圈。在手指提取的过程中,首先使用腐蚀操作,将手指都去除掉,然后使用膨胀操作使剩余的手掌部分还原成原来的大小。接着用原始的图像减去还原出的手掌图像,就得到的所有的手指图像。最后使用联通量分析,手指可以被编号,并计算出其数量。同时,手掌的图像还可用于手心位置的确定。
(二)小车通信
手势识别之后,需要将识别出的手势指令发送给小车,实现控制功能。为了使通信过程简化,系统使用了两个无线透明传输模块,将模块与计算机端及小车端的串口连接,通过串口通信程序,即可实现透明传输功能。
(三)小车控制过程
小车的控制部分需要实现二个目标:第一,串口的接受与发送。第二,通过接受的信号控制小车前进、后退、左转和右转的基本运动。以AT89S52单片机为基础,通过不同手势输入转换成信号控制小车运动。
三、系统设计
系统设计分为硬件与软件设计两部分,在硬件设计部分,由于选用了透明串口无线传输模块。因此,只需如图4所示在PC端及小车端使用串口与该模块相连,通过发送串口指令,就可以完成通信。而在软件部分,PC端需实现手势的识别与串口指令的发送,在小车端需完成串口指令的接收及小车运动的控制。PC端的软件在VC2008下编写完成,使用了opcnCV图像处理开源库。采集到手势图像后,将手指轮廓的个数提出,转化为小车的控制指令后通过串口发出,用来控制小车的运动。在小车端软件在Keil环境下用C语言完成,下载到AT89S52单片机后,完成串口指令的接收及小车控制功能。使用了普通PWM波控制小车电机的旋转,完成其运动的控制。
四、结束语
本文实现了一种基于手势识别的小车控制方法,在PC端采集人手图像,通过图像处理算法将其手指轮廓识别,并转为为串口指令发送至小车端用于控制小车的运动。本方案使用了无线控制,采用了模块化设计,只需稍加修改就可以移植到各个领域上,而不仅仅局限于小车控制,具有较好的移植性。
参考文献:
[1]秦志强.C51单片机应用与C语言程序设计[M].电子工业出版社,2007
[2](美)布拉德斯基,(美)克勒.学习openCV[M].清华出版社,2009
[3]崔屹.图象处理与分析:数学形态学方法及应用[M].科学出版社,2002
[4]刘瑞祯,于仕琪.OpenCV教程(基础篇)[M].北京航空航天大学出版社,2007
*本项目受2011年北京市本科生科学研究与创业行动计划资助