rar

智能人脸识别算法及其FPGA的实现.rar

  • 1星
  • 日期: 2014-03-05
  • 大小: 2MB
  • 所需积分:1分
  • 下载次数:28
  • favicon收藏
  • rep举报
  • 分享
  • free评论
标签: 人脸识别

人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部的一系列相关技术,通常也叫做人像识别、面部识别。

算法

算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。

FPGA

FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,但是功耗较低。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。

人脸自动识别技术是模式识别、图像处理等学科的一个最热门研究课题之一。随着社会的发展,各方面对快速有效的自动身份验证的要求日益迫切,而人脸识别技术作为各种生物识别技术中最重要的方法之一,已经越来越多的受到重视。对于具有实时,快捷,低误识率的高性能算法以及对算法硬件加速的研究也逐渐展开。 本文详细分析了智能人脸识别算法原理,发展概况和前景,包括人脸检测算法,人眼定位算法,预处理算法,PCA和ICA 算法,详细分析了项目情况,系统划分,软硬件平台的资源和使用。并在ISE软件平台上,用硬件描述语言(verilog HDL)对算法部分严格按照FPGA代码风格进行了RTL 硬件建模,并对C++算法进行了优化处理,通过仿真与软件算法结果进行比对,评估误差,最后在VirtexII Pro FPGA 上进行了综合实现。 主要研究内容如下: 首先,对硬件平台xilinx的VirtexII Pro FPGA 上的系统资源进行了描述和研究,对存储器sdram,RS-232 串口,JTAG 进行了研究和调试,对Coreconnect的OPB总线仲裁机理进行了两种算法的比较,RTL 设计,仿真和综合。利用ISE和VC++软件平台,对verilog和C++算法进行同步比较测试,使每步算法对应正确的结果。对软硬件平台的合理使用使得在项目中能尽可能多的充分利用硬件资源,制板时正确选型,以及加快设计和调试进度。其次,对人脸识别算法流程中的人脸检测,人眼定位,预处理,识别算法分别进行了比较研究,选取其中各自性能最好的一种算法对其原理进行了分析讨论。人脸检测采用adaboost 算法,因其速度和精度的综合性能表现优异。人眼定位采用小块合并算法,因为它具有快速,准确,弱时实的特点。预处理算法采用直方图均衡加平滑的算法,简单,高效。 识别算法采用PCA 加ICA 算法,它能最大的弱化姿态和光照对人脸识别的影响。 最后,使用Verilog HDL 硬件描述语言进行算法的RTL 建模,在C++算法的基础上,保证原来效果的前提下,根据FPGA 硬件特点对算法进行了优化。视频输入输出是人脸识别的前提,它提供FPGA 上算法需要处理的数据,预处理算法在C++算法的基础上进行了优化,最大的减少了运算量,提高了运算速度,16 位计算器模块使得在算法实现时可以根据系统要求,在FPGA的ip 核和自己设计的模块之间选择性能更好的一个来调用,FIFO的设计提供同步和异步时钟域的数据缓存。设计在ISE和VC++软件平台同时进行,随时对verilog和C++数据进行监测和比对。全部设计模块通过仿真,达到预定的性能要求,并在FPGA 上综合实现。

更多简介内容

推荐帖子

F28335的GPIO、定时器和SCI
1、GPIO 通用目的I/O模块(GPIO模块)内部配有复杂逻辑多路开关控制电路和复用寄存器,将数字I/O(GPIO)引脚、片上所有外设输入输出引脚、外部接口(XINTF)地址总线、数据总线、控制总线引脚在器件封装引脚上实现复用。 共88个GPIO,通过寄存器GPIOxMUX(x=A,B,C)进行设置。 GPIO分为3组,A端口对应引脚GPIO0~GPIO31(32位),B端口对应引
fish001 DSP 与 ARM 处理器
单片机在医疗器械设备中有哪些应用
     其实单片机在医疗器械设备中,应用非常广泛,常用的小型设备。或者一些大型得设备都使用的单片机,其中运用到了单片机的外设部分有ADC iic pwm 存储,串口,外部中断,低功耗模式,看门狗,定时器等应用。具体项目会有差异,具体情况具体分析。   最基础的应用就是人体血压测量用了,现在去医院体检用的都是这个;   单片机在当前的医疗器械领域广泛运用,常见的血压,血氧,血糖,体
火辣西米秀 微控制器 MCU
MSP430F5529 ADC参考
1.ADC12_A初始化参数 typedef struct ADC_MemMap {   union   {     uint16_t CTL0;     struct     {       uint16_t SC             :1;  /* ADC12 Start Conversion */       uint16_t ENC            :1;  /
fish001 微控制器 MCU
堆栈指针寄存器 SP 详解
  堆栈是一种具有“后进先出”(LIFO---Last In First Out)特殊访问属性的存储结构。堆栈一般使用RAM 物理资源作为存储体,再加上LIFO 访问接口实现。  堆栈的实现方法:                          在随机存储器区划出一块区域作为堆栈区,数据可以一个个顺序地存入(压入)到这个区域之中,这个过程称为‘压栈’(push )。通常用一个指针
Jacktang DSP 与 ARM 处理器
MSP430f149单片机的简单秒表
实现功能:按下一个按键,计时开始,再次按下该按键计时暂停,即由一个按键实现暂停看开始功能,设置另一个按键,按下该按键三秒以上,秒表清零。要求计时精度,10毫秒。   该实验用到了MSP430单片机的timerA的定时功能,显示设备而用到了LCD1602.   代码如下:   #include #include "Config.h" int
fish001 微控制器 MCU
【树莓派4B测评】+环境搭建,openssl库使用
【树莓派4B测评】+环境搭建,openssl库使用 昨天拿到了期盼已久的板子,今天开始测试,首先是环境搭建,网上各种教程都很详细了,我就轻描淡写一下自己的步骤: 首先官网下载固件:https://www.raspberrypi.org/downloads/raspberry-pi-os/,我这里选择完整版。 第二步使用Win32DiskImager.exe将IMG文件写入
29447945 开发板测评专版

评论

登录/注册

意见反馈

求资源

回顶部

datasheet推荐 换一换

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版 版权声明

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
$(function(){ var appid = $(".select li a").data("channel"); $(".select li a").click(function(){ var appid = $(this).data("channel"); $('.select dt').html($(this).html()); $('#channel').val(appid); }) })