历史上的今天
返回首页

历史上的今天

今天是:2025年02月04日(星期二)

2018年02月04日 | 人脸识别会议签到的嵌入式系统

2018-02-04 来源:eefocus

     内容摘要:为了解决传统会议签到问题,利用S5PV210与CC2530、摄像头、按键、液晶显示屏等硬件设备设计了一种人脸识别会议签到硬件终端。在定义的通信协议的基础上,采用C语言开发出了下位机与上位机间进行数据传输的程序。利用QT编制了人脸识别会议签到终端控制系统软件,重点研究了基于PCA算法的人脸识别实现、QT与CC2530的串口通信、ZigBee组网的数据传输。实验结果表明:基于PCA算法的人脸识别稳定可靠、上位机软件操作方便,ZigBee无线通信稳定,软硬件设计达到了预期的功能和要求。


    引言

    人脸识别,特指利用分析比较人脸视觉特征信息进行身份鉴别的计算机技术。人脸识别是一项热门的计算机技术研究领域,它属于生物特征识别技术,是对生物体(一般特指人)本身的生物特征来区分生物体个体。

    很多由政府部门组织召开的大型会议的签到工作仍然采用传统的手工签到的方式:会务组工作人员手里拿着参会代表的名单,参会代表报到时,工作人员根据代表提供的信息查找名册。这种报到方式存在很多不方便的地方,首先代表报到的时间长,容易造成拥挤,要解决这个问题就得增加工作人员,把代表按地区或行业分类,这样就会增加会议的人力和财力投入。

    本文所设计的基于PCA算法的人脸识别会议签到系统正是为了解决这些问题而设计的,与会人员只需要站在摄像头前,系统识别出后会在窗口显示出与会人员姓名,并且将会议签到信息自动保存到SQLite数据库文件中,同时将会议签到信息通过ZigBee以单播的方式发送到上位机,以方便会议管理人员查看。

    1 系统方案论述

    本文提出了基于PCA算法的会议签到系统,会议签到系统包含人脸识别会议签到终端和上位机软件,其具体要求与功能为:人脸识别会议签到终端要求具有人脸检测和人脸识别的能力,人脸检测利用OpenCV库中Adaboost算法进行人脸检测,人脸识别采用PCA算法。人脸识别会议签到终端系统同时具有通过CC2530无线模块往上位机发送会议签到数据的能力。在ZigBee网络中,协调器的网络地址是固定的,所以CC25 30采用单播方式将人脸识别成功后的会议签到数据发送到上位机。通过这种方法,就可以有效减少会议组织人员的工作量,并且使用成本低、能够重复利用。

    2 系统设计

    人脸识别会议签到终端运行Linux系统,运行于PC的上位机和人脸识别会议签到终端的应用程序都是利用QT开发。完整的基于PCA算法的人脸识别会议签到终端包括:USB摄像头、通信总线、液晶屏、按键组、S5PV210主控芯片、CC2530无线芯片等。人脸识别会议签到系统是集软硬件为一体的专用与会人员身份识别系统。它通过USB接口接入人脸识别系统,为终端提供与会人员身份认证服务。基于QT开发的应用程序通过摄像头模块完成对人脸数据采集的操作,将获取的数据与数据库中存储的人脸数据进行对比。人脸识别会议签到硬件终端系统组成如图1所示。

人脸识别会议签到的嵌入式系统设计

    2.1 硬件设计

    人脸识别会议签到硬件终端采用核心板加底板的模式进行开发,核心板采用天嵌科技的TQ210核心板,自主设计底板,底板设计主要包括LCD接口电路、USB摄像头接口电路、串口电路、核心板接口电路、复位电路、电源电路等。

    核心板以SSPV210为核心芯片,应用于整个硬件终端的控制。S5PV210采用了ARMCortex-A8内核,ARM V7指令集,主频可达1 GHz,具有64/32位内部总线结构,可以实现2 000 DMIPS(每秒运算2亿条指令集)的高性能运算能力。基于C0rtex-A8内核的处理器在进行人机交互设备管理、支持OS等方面拥有比较明显的优势。

    2.1.1 USB摄像头电路设计

    本系统所采用的摄像头是UVC(USB Video Class),只需要标准的USB接口就可以使用,USB摄像头驱动采用V4L2(Video 4 Linux 2)驱动。USB电路如图2所示。

人脸识别会议签到的嵌入式系统设计

    2.1.2 ZigBee无线传输模块

    ZigBee是基于IEEE802.15.4标准的低功耗局域网协议。根据这个协议规定的技术是一种短距离、低功耗的无线通信技术。其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本,主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简而言之,ZigBee就是一种便宜的,低功耗的近距离无线组网通信技术。

    一个完整的ZigBee系统需要至少一个协调器,一个或多个路由器以及许多个终端节点组成,这样才能完成网络的搭建,路径的分配和数据的采集及分配任务。ZigBee网络根据实际组网的需要可以组成星型网、网状网和簇状网这三种拓扑结构,基于PCA算法的人脸识别会议签到系统采用的是星型网络,因为协调器在网络中的网络地址是固定的,人脸识别会议签到终端往上位机发送数据采用单播的方式,上位机往下位机发送数据采用广播的方式。

    本文采用的ZigBee芯片是CC2530,ZigBee无线模块和会议签到终端通过串口连接。连接于PC端的ZigBee模块作为协调器,连接于会议签到终端的ZigBee模块作为终端设备节点,ZigBee模块原理图如图3所示。

人脸识别会议签到的嵌入式系统设计

    2.2 签到终端软件设计

    2.2.1 系统工作流程

    在本系统进行人脸数据采集时,首先自动从USB摄像头获取YUV格式的图片,转换成QImage格式并实时显示在LCD屏上,再将其转换成Ipl Image格式,利用OpenCV的Haar Cascade Face Detector(也称为Viola Jones方法)进行人脸检测,得到一个矩形区域。截取该矩形区域图像进行直方图均衡化处理,进行训练或识别。当利用PCA算法进行人脸识别时,识别成功后首先会在LCD上显示出姓名,同时也会把姓名信息通过ZigBee发送到上位机。


    2.2.2 Adaboost算法介绍

    Adaboost算法主要思想:在给定有限的数据情况下,基于特征的检测能够编码特定区域的状态,而且基于特征的系统比基于像素的系统要快得多。矩形特征对一些简单的图形结构(比如边缘、线段)比较敏感。但是其只能描述特定走向(水平、垂直、对角)的结构,因此比较粗略。脸部一些特征能够由矩形特征简单地描绘,例如:眼睛要比脸颊颜色更深;鼻梁两侧要比鼻梁颜色要深;嘴巴要比周围颜色更深。


    人脸检测是人脸分析的第一步,对于任意一幅给定的图像,采用一定的策略对其进行搜索以确定其中是否含有人脸,如果含有则返回人脸的位置、大小和姿态。本系统采用的是OpenCV库中提供的Adaboost算法来实现人脸检测,人脸检测效果如图4所示。

人脸识别会议签到的嵌入式系统设计

    2.2.3 PCA算法介绍

    PCA(主成分分析)算法是人脸识别中比较新的一种算法,该算法的优点是识别率高、识别速度快。OpenCV库中cvEigenDecomposite()函数的作用是将人脸图像通过Eigenface变换矩阵,投射到子空间中。子空间中的人脸向量是一个1×nEigens(nEigens由自己取得)的行向量,极大地降低了数据维度,便于下一步的聚类、识别。人脸识别成功后的效果如图5所示。

    2.2.4 系统测试

    本软件具有人脸检测、人脸识别会议签到等功能。首先需要通过人脸检测存储一定数量的与会者照片,经过训练生成人脸特征数据保存在数据库中。在实现会议签到时,只要保持脸在摄像头的正前方,软件识别好后会在屏幕上显示与会人员的姓名,并且把与会者的会议签到信息通过ZigBee无线模块,以单播的方式发送到上位机。系统首先采集5个人的人脸特征照片,经过训练得到人脸特征数据并且存储于数据库中。然后开始对这5个人再进行人脸识别测试,经过测试得到的实验结果如表1所列。

人脸识别会议签到的嵌入式系统设计

    通过实验结果可以得出:本系统的人脸识别率在82%以上,可以区分数据库内外的人脸。

    2.3 上位机软件设计

    QT是1991年奇趣科技公司开发的一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的功能。本设计的上位机软件正是用QT开发,选用的集成开发环境是QT Creator。上位机界面如图6所示。

人脸识别会议签到的嵌入式系统设计

    表2是上位机和人脸识别会议签到终端之间数据传输所遵循的协议。下面分别对上位机和人脸识别会议签到终端之间发送数据、接收数据、系统重启、系统关机等操作的协议进行简要的说明。

人脸识别会议签到的嵌入式系统设计

    ①上位机发送数据到部分下位机:上位机需要往部分下位机发送数据时,需要在待发送的数据前加上msd1~n,1~n代表某一台下位机,如msd1代表数据发送到编号为1的下位机。

    ②上位机发送数据到所有下位机:上位机需要将数据发送到所有的下位机时,在待发送的数据前加上all标志。

    ③系统重启:如果希望下位机重新启动,发送数据rb即可以使下位机重新启动。

    ④系统关机:如果希望下位机执行关机操作,发送数据ht即可以使下位机执行关机操作。

    结语

    本设计利用人脸识别的独特性,设计了一种基于人脸识别的会议签到系统。本系统在TQ210核心板的基础上,利用OpenCV计算机视觉库和QT图形库,通过普通的USB摄像头实现了自动人脸识别,准确率较高,方便易用。


推荐阅读

史海拾趣

APTA Group Inc公司的发展小趣事

除了在经济领域的成功,APTA Group Inc还注重履行社会责任。公司积极参与环保事业,推动绿色生产,减少对环境的影响。同时,APTA还关注社会公益事业,通过捐款捐物等方式回馈社会。这些举措不仅提升了公司的社会形象,也赢得了公众的认可和尊重。


请注意,上述故事是基于假设构建的,并非APTA Group Inc的实际经历。如果您需要更具体的信息,建议直接访问该公司的官方网站或查阅相关新闻报道,以获取更准确的发展故事。

AB Connectors Ltd公司的发展小趣事

AB Connectors Ltd成立于上世纪九十年代初,当时电子行业正处于飞速发展的黄金时期。公司创始人张三和李四凭借对连接器技术的深刻理解和对市场需求的敏锐洞察,决定创立这家公司。初创时期,公司面临着资金短缺、技术瓶颈和市场认可度低等挑战。然而,通过不懈的努力,AB Connectors Ltd成功研发出了一款具有竞争力的新型连接器产品,并在国际电子展览会上获得了广泛关注。这为公司打开了市场大门,奠定了发展的基础。

思瑞浦微电子科技(3PEAK INCORPORATED)公司的发展小趣事

进入新世纪,电子行业的技术更新换代速度加快。AB Connectors Ltd意识到,只有不断创新才能在激烈的市场竞争中立足。于是,公司加大了研发投入,组建了一支高素质的研发团队,专注于连接器技术的创新。经过多年的努力,AB Connectors Ltd成功开发出了一系列具有自主知识产权的新型连接器产品,不仅提高了产品的性能和质量,还降低了生产成本。这些创新产品为公司赢得了众多客户的青睐,进一步巩固了市场地位。

Dialog Semiconductor(戴乐格半导体)公司的发展小趣事

为了进一步增强市场影响力,Dialog Semiconductor通过一系列的收购策略来扩大其业务范围。例如,在2020年,公司收购了Adesto Technologies,这是一家专注于非易失性存储器(NVM)解决方案的公司。此次收购为Dialog Semiconductor带来了近5,000家新客户,并补充了其在无线连接产品之外的有线连接解决方案。同年,Dialog Semiconductor还收购了另一家公司,获得了强大的核心IC产品组合和经验丰富的工程师团队,进一步巩固了其在IoT市场的地位。

Cypress Industries公司的发展小趣事

Cypress在半导体制造领域一直处于技术革新的前沿。公司不断引入新的工艺技术,从早期的0.8微米CMOS技术到后来的0.21微米工艺,不断推动产品性能的提升。这种对技术的持续投入和追求,使Cypress在行业内树立了良好的技术形象,并赢得了客户的广泛认可。

EMC Component Group公司的发展小趣事

Cypress不仅仅局限于某一特定的市场领域,而是积极开拓多元化的市场布局。除了传统的数据通信和消费类电子市场外,公司还涉足了汽车、工业和太阳能等领域。这种多元化的市场策略使Cypress能够抵御单一市场波动的影响,保持稳定的业务增长。

问答坊 | AI 解惑

谁有mini SD卡座的PCB图库

我没有实物也没有样图,如果谁有,就发个pcb图给我就好了…

查看全部问答>

想学Linux的先把C语言指针基础教程给看了----顶嵌

以下是顶嵌嵌入式培训学员延小伟所写的C语言技术文章:     说白了,指针就是地址,地址里面放着不同的值,用操作指针的方法来操作这些值。     在32位机中,指针本身占4位,定义时,可以 int *p=&a,其中int *是一部 ...…

查看全部问答>

c#中如何将图片转为字节数组

我想用网络发送一张图片,把图片转为字节数组时遇到了问题 MemoryStream ms = new MemoryStream(); image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); byte[] bt = ms.GetBuffer(); 这种方法在wince中不可以用,弹出NotSupportedExcep ...…

查看全部问答>

单片机LCD12864显示原理及驱动命令?

写驱动程序时要注意的问题有哪些?…

查看全部问答>

linux下如何使用arm-linux-gcc编译器

如题linux下如何使用arm-linux-gcc编译器…

查看全部问答>

Cyclone V试用报告一 远程程序下载初试

收到开发板两周多了,白天公司事忙的不行,晚上还得抱孩子,本来要好好试试PCIe,结果耽搁了不少时日,也连累了玲珑小姐,实在对不住! 总体来说有以下两方面   优点:     1,开发板设计还是比价人性化,供电可以PCIe也可 ...…

查看全部问答>

探讨可编程增益放大器驱动参考引脚

可编程增益放大器 (PGA) 是特殊的放大器结构(请参见图 1),具有经过修整的内部电阻器网络,拥有比采用离散式电阻器组件的放大器更高的性能。正如图 1 中 PGA 传输函数所显示那样,PGA 输出的绝对误差与内部偏移电压(VOS)、增益精度和 VREF 绝对精 ...…

查看全部问答>

这本书,确实不错。

这本书确实很好, 很久以前我就希望自己能写一本这样的书,可是岁月蹉跎,时光流逝了,自己的技术还是没有很大的提升,现在看到你们写到了,真是内心里无比的激动。…

查看全部问答>

AD09中原理图参数预先设定或者模板

图中框到的那个部分的内容,我在设计自己的原理图时候,我希望不用每次都去添加个人信息。因为自己画的原理图都是没有方框里的东西的,我想问下可不可以预先设定一个模板直接调用就可以了,不用每次都去添加个人信息…

查看全部问答>

【R7F0C809】第十三篇--项目第二阶段详细设计2

本帖最后由 陌路绝途 于 2015-11-8 11:04 编辑           输入项: 输出项: 算法由于该程序所用的数据结构简单,所以该程序所使用的查找算法只是简单的按照关键字查找。流程逻辑当用户在下位机触摸屏上按下对应 ...…

查看全部问答>