基于FPGA的手势识别的多功能机械臂

FPGA技术江湖 2024-04-20 07:29

大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。

01

设计概述 

Design Introduction

1.1
设计背景

随着信息技术的发展,人机交互技术逐渐由以键盘、鼠标等基于图形用户界面的方式,转变为以模拟和类似人类感知传输的信息类型。其中,手势识别因其具有的自然、直接、有效的交互特点,越来越受到研究人员的关注。传统的手势识别,需要借助配置有传感器的手套来确定具体的手势形态,成本高且操作不便,不具有推广性。基于机器视觉的手势识别技术,突破硬件局限,从模式识别算法层面革新人机交互方式,更适应未来人机交互发展趋势。机械臂作为现代工业领域自动化智能加工中最常见的执行终端,通过各个关节的协调运动与机械末端的配合,可进行多自由度模拟仿真。通过对舵机进行控 制设计,使机械臂能够完成抓取分拣、连续动作,从而使其具有比人手更好的动 作组合灵活性和指令完成准确性。

1.2
作品概述

本作品基于机器视觉,聚焦手势识别,利用摄像头获取单目图像信息,基于 PYNQ 实现手势分割、手势建模、手势形状特征提取,对八种不同手势图像进行识别,以舵机控制的机械臂模块作为响应终端,借助手势变化来控制机械臂执行两种功能:一是按指令分拣物体,二是“井字游戏”人机大战。

1.3 
应用领域


本作品将手势识别作为人机交互方式,以机械臂作为响应终端,设计了两种基于上述交互方式和响应终端的展示功能。按指令分拣物体,本质上是对机械臂进行开环控制,延长人手作用范围,对于操控大型机械进行物体分拣的工业自动化领域或物流行业,都有极好的应用前景。“井字游戏”人机大战,仅仅是将手势识别结合机械臂控制、简单的人工智能技术进行组合开发的例子,“手势识别 +”的探索永无止境,在娱乐领域、医疗领域、教育领域、智能家居领域都有着广泛的应用前景。 

02

系统组成及功能说明

System Construction & Function Description

2.1
系统组成




本系统以 Xilinx ZYNQ SoC 作为主控制芯片,分为处理器模块、摄像头模块、显示器模块、舵机驱动模块、通讯传输模块。通过摄像头模块捕捉手势图像信息,在处理器模块中完成手势分割、手势建模、手势形状特征提取、手势识别,手势识别的过程及结果通过显示器展示,通过处理器内部不同功能的逻辑运算,将对应的动作指令通过相应的 PWM 信号输出给各个舵机,驱动六自由度机械臂完成要求动作,从而实现对应的组合功能。





2.2
手势识别核心算法




本作品所采用的是静态手势识别算法,算法核心主要由手势特征分析、手势特征建模及手势识别三部分组成,整体框架如上图所示。首先通过图像采集设备来获取手势图像,通过手势建模将获取的手势图像用数学模型描述出来,最后根据得到的手势识别所需要的模型参量判别出具体的手势形态。





2.2.1
图像预处理





图像预处理,由四个主要步骤组成,分别为定义识别区域、颜色空间转换、 膨胀处理、高斯滤波。定义识别区域,主要用来减小识别区域面积,从而提高识 别效率。颜色空间转换,通过将摄像头捕捉到的 RGB 颜色空间下的图像信息转 化为 HSV 颜色空间下的图像信息,便利后续对背景和手部进行颜色分割。膨胀 操作,使得识别区域高亮区域增长,消除手部内的噪声点。高斯滤波,通过加权 求和的方式,消除图像内的高斯噪声点。


2.2.2 
手势分析





利用道格拉斯-普克(Douglas-Pucker)算法,将手部轮廓拟合为多边形曲线, 同时计算面积,以得到轮廓内手部面积最大的手部轮廓。在此基础上,分别计算 出轮廓总面积(areacnt)、轮廓中手的面积(areahull)、以及手的面积占轮廓总面 积的百分比(arearatio)。与此同时,得到最大轮廓面积中的凸缺陷(即凹陷)数 (defects),并通过计算凸缺陷中起始点、终点、离起始点终点连线最远处的点构 成的三角形的高(d)和顶角(angle)值,来去除因噪声而得到的凸缺陷点,得 到消除噪声点后的凸缺陷数(l)。

2.2.3
手势识别




由手势分析后得到的模型参量通过上述手势识别流程图后,输出“0”“1” “2”“3”“4”“5”“ok”“best of luck”八种手势识别结果,以便后续对结果进行使用。


2.3
“井字游戏”人机大战算法设计


2.3.1
游戏规则及数字化设置

游戏规则
游戏对战的双方执不同棋子,轮流在 3×3 的九宫格中落子,但凡在横排、 竖排、对角线上出现三子相同的情况,则执该子的一方胜。

数字化设置
现在对九宫格的九个位置编码为九个二维坐标(x,y)(x=1,2,3;y=1, 2,3),并赋值为 1,效果如下图所示。




一方执“0”,一方执“2”,落在哪个坐标位置上,就把那个坐标位置对应的 值改为“0”或“2”。每次落子后,分别对每排、每列、每对角线上的三个值求和(和可取 0,1,2,3,4,5,6),如果出现“0”则执“0”的一方胜,如果出 现“6”则执“2”的一方胜。

2.3.2
机器端落子优先级设计

假设人执“0”子,机器执“1”子
(1)中间、边上、角上三种位置的获胜方式分别为
所以优先落中间,其次落角上,最后落边上。


(2)情况优先级

第一优先级:如果出现“1”,立即将(0,0,1)中的“1”置 2,拦截人胜利。
第二优先级:如果出现“5”,立即将(1,2,2)中的“1”置 2,机器取得游戏胜利。
第三优先级:如果出现“4”,且不是“死路”的情况,则将(1,1,2)中任 意一个“1”置 2。

2.3.3
算法流程图



2.4
模块介绍


2.4.1
处理器模块



本作品采用基于 ZYNQ-7020 芯片的 PYNQ-Z2 开发板进行系统开发。ZYNQ 分为 PS(Processing System)和 PL(Programmable Logic)两部分,在 PS 上运 行 Linux 操作系统,在 Linux 操作系统上运行 Python,通过调用 PYNQ 中的库Overlay,对连接到 PS 端的接口进行解析,进而控制 FPGA 逻辑资源,加速系统 数据处理。




对于本作品中所设计的基于机器视觉的手势识别算法和“井字游戏”人机大 战算法,直接利用硬件语言进行编写在逻辑上十分复杂,故采用 Python 进行编程实现,利用 FPGA 对图像处理部分进行硬件加速,不仅提高了图像处理速度, 还更好地扩展了图像应用。





2.4.2
摄像头(图像采集)模块





本作品的手势指令输入由摄像头采集完成。采用奥尼 C11 款的高清摄像头对手势进行画面捕捉,通过 USB 完成图像输入。相比于传统的传感器手套对手势姿态的采集,摄像头减轻了硬件端的负担,使得整个系统可推广性更好。





2.4.3
机械臂(舵机)模块

本作品使用的机械臂,是 Learm 公司开发的一款六自由度机械臂,能通过上 位机对其进行动作设计,通过 PWM 控制舵机运转,从而完成抓取和连续复杂动作两种不同的模式功能。舵机(机械臂)模块与处理器的模块采用 UART 串行通信,采用下述通信协议进行指令交互。





2.4.4
显示器(图像输出)模块




采用显示屏作为图像输出端,展示手势识别图像处理过程及结果,不仅利于 过程中的算法调试与验证,并且具有更好地视觉效果。

2.5 
功能说明

2.5.1
 手势识别

本作品可以对常用的八种手势进行识别处理,分别为“0”“1”、“2”、“3”、 “4”、“5”、“Best of luck”、“ok”。启动系统后,在摄像头端摆出相应手势,及完 成手势输入,显示器会显示出对应的识别结果。显示器画面,有矩形框定位识别区域,在该矩形框中会有多边形框出手部轮廓,右上方会显示识别结果。当识别区域没有放入手进行识别时,显示器画面静止。


2.5.2
 机械臂驱动

机械臂动作设计及存储机制

机械臂内部封装有存储“动作组”的部件,用来存储动作指令。用户如果要 进行动作设计,在机械臂通电的情况下,通过 USB 通信与电脑端上位机进行连接,在上位机中设置传输给六个舵机的 PWM 值,形成一个包含这个动作指令的 “动作组”,下载进存储部件以便后续调用。


机械臂驱动机制

通过 UART(串口通信)的方式来调用“动作组”,进而驱动机械臂完成相 应动作。这里需要注意的是,必须将处理器模块与机械臂模块进行“共地”操作, 否则二者无法完成通信,机械臂不能按指令动作。


2.5.3
功能 1:按指令分拣物体

预设四个不同的区域,分别编号为“1”“2”“3”“4”,作为一组一维位置坐 标。设计机械臂在四个不同区域内抓取、放开动作,共八个动作组。手势输入“ok”, 告诉系统下一个输入的是初始坐标。待控制板上亮起指示灯后,通过人眼观测物 体初始位置坐标,通过手势输入该坐标(可输入“1”、“2”、“3”、“4”)。待控制板上亮起指示灯后,手势输入“5”,告诉系统下一个输入的是初始坐标。待控制板上亮起指示灯后,通过手势输入目标位置坐标(可输入“1”、“2”、“3”、“4”)。用户端操作结束,发送指令给机械臂完成分拣全过程。机械臂依次完成抓取、移动、放下,即完成一次按指令分拣。


2.5.4
功能 2:“井字游戏”人机大战

游戏规则参看“2.3‘井字游戏’人机大战算法设计”。手势输入“ok”,告诉 系统接下来输入人落子的坐标区域(x,y)。待控制板上亮起指示灯后,手势输 入“5”,告诉系统接下来输入横向坐标(可输入“1”、“2”、“3”),待控制板上 亮起指示灯后,输入纵向坐标(可输入“1”、“2”、“3”)。用户端操作结束,可 以发送指令给机械臂完成人落子的操作,机械臂完成在棋盘上的人落子操作后, 继续完成机器落子操作。依次进行下去,直至出现有一方胜利。亮红灯表示“人 赢”,亮绿灯表示“机器赢”,亮白灯表示“平局”。

03

作品成效总结与分析

Summary and Analysis of the Effect of the Works

3.1
系统测试性能指标


3.1.1
手势识别



本作品算法下的手势识别功能,在 FPGA 加速下能较好地平衡识别次数和识 别时间的冲突。根据测试结果,本作品取 60 作为整个作品的手势识别循环次数。


3.1.2
机械臂驱动

机械臂能通过用户端“动作组”的设计,进行抓取、移动等连续复杂动作, 具有很好的灵活性。作为机电设计的响应终端,能很好地完成多种功能的指令要求。


3.1.3
 按指令分拣物体


“按指令分拣物体”能很好地完成初始坐标输入、目标位置输入,同时能在 较短的时间内快速完成抓取与投递。

3.1.4
“井字游戏”人机大战


“井字游戏”算法能很好地遍历所有可能结果,所以人和机器对战只会出现 “平局”、“机器赢”两种结果。并且,较为稳定、准确的机器识别以及人工智能 算法,能够使整个游戏流畅进行。“手势识别”结合“机械臂”具有很强的视觉观赏性,与此同时,游戏的模式使整个功能更具有趣味性。

3.2 
成效得失对比分析


本作品整体而言,不仅将手势识别功能实现,还在此基础上结合机械臂运动特点进行了多功能开发,总体完成度较高,视觉效果较好,兼具灵活性、趣味性及可拓展性。开发本作品采用的手势识别算法,为了得到较高的识别精度,必须要以延长识别时间、增加单次识别次数作为牺牲,使得在应用开发时增加较多的时间负担,不能够凸显人机交互的便利性。从手势识别算法及对识别结果的处理技术层面出发,整个作品还有较大提升空间。


3.3 
创新特色总结展望

本作品使用最新的基于机器视觉的手势识别技术作为人机交互方式,革新人 机交互的使用体验,具有极佳的技术前瞻性。使用机械臂作为执行终端,贴近目前工业设计的最新潮流。在设计功能时,基于数学建模,设计出更具有人机互动性质的小游戏,体现人工智能的灵活与智慧。
机电一体化开发,充分发挥基于 Python 编程的代码灵活的特点,以实现复 杂算法,利用 FPGA 硬件加速的优势,提高视觉处理速度。
在本作品的基础上,优化识别算法,加快识别速度,提高识别精度,“手势 识别+”将在未来发挥出自身更强的优势,在教育领域、娱乐领域、工业领域、 医疗领域、智能家居领域都具有越来越广阔的应用前景。

- THE END -

🍁


往期精选 

 
 

【免费】FPGA工程师人才招聘平台

FPGA人才招聘,企业HR,看过来!

系统设计精选 | 基于FPGA的实时图像边缘检测系统设计(附代码)

基于原语的千兆以太网RGMII接口设计

时序分析理论和timequest使用_中文电子版

求职面试 | FPGA或IC面试题最新汇总篇

资料汇总|FPGA软件安装包、书籍、源码、技术文档…(2024.01.06更新)

FPGA就业班,05.04开班,新增课程内容不加价,高薪就业,线上线下同步!

FPGA技术江湖广发江湖帖

无广告纯净模式,给技术交流一片净土,从初学小白到行业精英业界大佬等,从军工领域到民用企业等,从通信、图像处理到人工智能等各个方向应有尽有,QQ微信双选,FPGA技术江湖打造最纯净最专业的技术交流学习平台。


FPGA技术江湖微信交流群

加群主微信,备注姓名+学校/公司+专业/岗位进群


FPGA技术江湖QQ交流群

备注姓名+学校/公司+专业/岗位进群

FPGA技术江湖 任何技术的学习就好比一个江湖,对于每一位侠客都需要不断的历练,从初入江湖的小白到归隐山林的隐世高人,需要不断的自我感悟自己修炼,让我们一起仗剑闯FPGA乃至更大的江湖。
评论 (0)
  •  亥姆霍兹线圈的制造材料选择需兼顾导电性、绝缘性、机械强度及磁场性能,具体分类如下:一、‌导线材料1、‌高纯度铜线:‌作为线圈绕制的核心材料,铜因其you异的导电性(电阻率低)和热稳定性成为shou选。漆包铜线通过表面绝缘漆层实现匝间绝缘,避免短路‌。2、‌其他导电材料‌ 铝线等材料可用于特定场景(如轻量化需求),但导电性和抗氧化性较铜略逊二、‌磁源材料‌1、‌永磁体‌如钕铁硼(NdFeB)或铁氧体,适用于无需外部电源的静态磁场生成,但磁场强度有限。2、‌电磁铁‌通过电流控制磁场强度,
    锦正茂科技 2025-04-14 10:22 32浏览
  • 在当今汽车电子化和智能化快速发展的时代,车规级电子元器件的质量直接关系到汽车安全性能。三星作为全球领先的电子元器件制造商,其车规电容备受青睐。然而,选择一个靠谱的三星车规电容代理商至关重要。本文以行业领军企业北京贞光科技有限公司为例,深入剖析如何选择优质代理商。选择靠谱代理商的关键标准1. 授权资质与行业地位选择三星车规电容代理商首先要验证其授权资质及行业地位。北京贞光科技作为中国电子元器件行业的领军者,长期走在行业前沿,拥有完备的授权资质。公司专注于市场分销和整体布局,在电子元器件领域建立了卓
    贞光科技 2025-04-14 16:18 66浏览
  • 软瓦格化 RISC-V 处理器集群可加速设计并降低风险作者:John Min John Min是Arteris的客户成功副总裁。他拥有丰富的架构专业知识,能够成功管理可定制和标准处理器在功耗、尺寸和性能方面的设计权衡。他的背景包括利用 ARC、MIPS、x86 和定制媒体处理器来设计 CPU SoC,尤其擅长基于微处理器的 SoC。RISC-V 指令集架构 (ISA) 以其强大的功能、灵活性、低采用成本和开源基础而闻名,正在经历各个细分市场的快速增长。这种多功能 ISA 支持汽车、航空航天、国防
    ArterisIP 2025-04-14 10:52 49浏览
  • 时源芯微 专业EMC解决方案提供商  为EMC创造可能(适用于高频时钟电路,提升EMC性能与信号稳定性)一、设计目标抑制电源噪声:阻断高频干扰(如DC-DC开关噪声)传入晶振电源。降低时钟抖动:确保晶振输出信号纯净,减少相位噪声。通过EMC测试:减少晶振谐波辐射(如30MHz~1GHz频段)。二、滤波电路架构典型拓扑:电源输入 → 磁珠(FB) → 大电容(C1) + 高频电容(C2) → 晶振VDD1. 磁珠(Ferrite Bead)选型阻抗特性:在目标频段(如100MHz~1GH
    时源芯微 2025-04-14 14:53 49浏览
  • 在制造业或任何高度依赖产品质量的行业里,QA(质量保证)经理和QC(质量控制)经理,几乎是最容易被外界混淆的一对角色。两者的分工虽清晰,但职责和目标往往高度交叉。因此,当我们谈到“谁更有可能升任质量总监”时,这并不是一个简单的职位比较问题,而更像是对两种思维方式、职业路径和管理视角的深度考察。QC经理,问题终结者QC经理的世界,是充满数据、样本和判定标准的世界。他们是产品出厂前的最后一道防线,手里握着的是批次报告、不合格品记录、纠正措施流程……QC经理更像是一位“问题终结者”,目标是把不合格扼杀
    优思学院 2025-04-14 12:09 44浏览
  • 你知道精益管理中的“看板”真正的意思吗?在很多人眼中,它不过是车间墙上的一块卡片、一张单子,甚至只是个用来控制物料的工具。但如果你读过大野耐一的《丰田生产方式》,你就会发现,看板的意义远不止于此。它其实是丰田精益思想的核心之一,是让工厂动起来的“神经系统”。这篇文章,我们就带你一起从这本书出发,重新认识“看板”的深层含义。一、使“看板”和台车结合使用  所谓“看板”就是指纸卡片。“看板”的重要作用之一,就是连接生产现场上道工序和下道工序的信息工具。  “看板”是“准时化”生产的重要手段,它总是要
    优思学院 2025-04-14 15:02 54浏览
  •   电磁干扰测试系统:电子设备电磁兼容性保障利器   北京华盛恒辉电磁干扰测试系统作为评估电子设备在电磁环境中电磁兼容性(EMC)的关键工具,主要用于检测与分析设备在电磁干扰环境下的性能表现,确保其符合相关标准,能够在实际应用中稳定运行。   应用案例   目前,已有多个电磁干扰测试系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁干扰测试系统。这些成功案例为电磁干扰测试系统的推广和应用提供了有力支持。   系统组成   电磁干扰测试系统一般由以下核心部分构成:  
    华盛恒辉l58ll334744 2025-04-14 10:40 31浏览
  •   高空 SAR 目标智能成像系统软件:多领域应用的前沿利器   高空 SAR(合成孔径雷达)目标智能成像系统软件,专门针对卫星、无人机等高空平台搭载的 SAR传感器数据,融合人工智能与图像处理技术,打造出的高效目标检测、识别及成像系统。此软件借助智能算法,显著提升 SAR图像分辨率、目标特征提取能力以及实时处理效率,为军事侦察、灾害监测、资源勘探等领域,提供关键技术支撑。   应用案例系统软件供应可以来这里,这个首肌开始是幺伍扒,中间是幺幺叁叁,最后一个是泗柒泗泗,按照数字顺序组合
    华盛恒辉l58ll334744 2025-04-14 16:09 67浏览
  • 一、磁场发生设备‌电磁铁‌:由铁芯和线圈组成,通过调节电流大小可产生3T以下的磁场,广泛应用于工业及实验室场景(如电磁起重机)。‌亥姆霍兹线圈‌:由一对平行共轴线圈组成,可在线圈间产生均匀磁场(几高斯至几百高斯),适用于物理实验中的磁场效应研究。‌螺线管‌:通过螺旋线圈产生长圆柱形均匀磁场,电流与磁场呈线性关系,常用于磁性材料研究及电子束聚焦。‌超导磁体‌:采用超导材料线圈,在低温下可产生3-20T的强磁场,用于核磁共振研究等高精度科研领域。‌多极电磁铁‌:支持四极、六极、八极等多极磁场,适用于
    锦正茂科技 2025-04-14 13:29 43浏览
  • 亥姆霍兹线圈的应用领域‌物理学研究‌:在原子物理中,用于研究塞曼效应;在磁学研究中,用于测试磁性材料的磁滞回线等特性;还可用于研究电子荷质比等实验‌。‌工程与技术领域‌:用于电子设备校准和测试,提供标准磁场环境;在大型加速器中用于磁场校准;用于电磁干扰模拟实验,测试电子设备在不同磁场干扰下的性能‌。‌生物医学领域‌:研究生物磁场效应,如探索磁场对生物细胞的影响;在生物医学工程基础研究中,提供可控磁场环境‌。‌其他应用‌:作为磁场发生装置产生标准磁场;用于地球磁场的抵消与补偿、地磁环境模拟;还可用
    锦正茂科技 2025-04-14 10:41 41浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦