基于Nios II的自动指纹识别系统设计
发布时间:2008/5/27 0:00:00 访问次数:482
    
    摘要:介绍基于nios ii处理器的嵌入式自动指纹识别系统的实现方法;具体说明自动指纹识别系统的基本原理、系统总体结构、硬件结构设计、用户自定义指令的设计,以及指纹识别算法的处理流程和实现方法。
    
    关键词:嵌入式 指纹识别 nios ii 定制指令
    
    引 言
    
    指纹识别作为生物特征识别的一种,在身份识别上有着其他手段不可比拟的优越性:人的指纹具有唯一性和稳定性的特点;随着指纹传感器性能的提高和价格的降低,指纹的采集相对容易;指纹的识别算法已经较为成熟。由于指纹识别的诸多优点,指纹识别技术已经逐渐走入民用市场,并应用到许多嵌入式设备中。
    
    目前的嵌入式处理器种类繁多。altera公司的nios ii处理器是用于可编程逻辑器件的可配置的软核处理器,与altera的低成本的cyclone fpga组合,具有很高的性能价格比。本系统采用nios ii和cyclone ep1c20嵌入式系统开发板,以及veridicom公司的fps200指纹传感器芯片,实现了一个嵌入式自动指纹识别系统。
    
    1 总体设计及系统架构
    
    本系统有两大功能:指纹登记和指纹比对。指纹登记主要包括指纹采集、指纹图像预处理、特征点提取、特征模板存储和输出显示;指纹比对的前三步与指纹登记相同,但在特征点提取后,是将生成的特征模板与存储在指纹特征模板库中的特征模板进行特征匹配,最后输出显示匹配结果。自动指纹识别系统的基本原理框图如图1所示。
    
    本系统在结构上分为三层:系统硬件平台、操作系统和指纹识别算法。系统层次结构如图2所示。
    
    
    
    图1自动指纹识别的基本原理框图
    
    
    
    图2系统层次
    
    最底层——系统硬件平台,是系统的物理基础,提供软件的运行平台和通信接口。系统的硬件平台在altera的nios ii cyclone嵌入式系统开发板上实现,指纹传感器采用美国veridicom公司的fps200。fps200可输出大小为256×300像素、分辨率为500 dpi的灰度图像。
    
    第二层是操作系统,采用μc/osii。μc/osii是一个基于抢占式的实时多任务内核,可固化、可剪裁、具有高稳定性和可靠性。这一层提供任务调度以及接口驱动,同时,通过硬件中断来实现系统对外界的通信请求的实时响应,如对指纹采集的控制、对串口通信的控制等。这种方式可以提高系统的运行效率。
    
    最上层是指纹识别核心算法的实现。该算法高效地对采集到的指纹进行处理和匹配。采用c语言在nios ii的集成开发环境(ide)中实现。
    
    2 系统硬件的设计与实现
    
    2.1 nios ii嵌入式软核处理器简介
    nios ii嵌入式处理器是altera公司于2004年6月推出的第二代用于可编程逻辑器件的可配置的软核处理器,性能超过200 dmips。nios ii是基于哈佛结构的risc通用嵌入式处理器软核,能与用户逻辑相结合,编程至altera的fpga中。处理器具有32位指令集,32位数据通道和可配置的指令以及数据缓冲。它特别为可编程逻辑进行了优化设计,也为可编程单芯片系统(sopc)设计了一套综合解决方案。nios ii处理器系列包括三种内核:一种是高性能的内核(nios ii/f);一种是低成本内核(nios ii/e);一种是性能/成本折中的标准内核(nios ii/s),是前两种的平衡。本系统采用标准内核。
    
    nios ii 处理器支持256 个具有固定或可变时钟周期操作的定制指令;允许nios ii设计人员利用扩展cpu指令集,通过提升那些对时间敏感的应用软件的运行速度,来提高系统性能。
    
    2.2 硬件平台结构
    
    系统的硬件平台结构如图3所示。
    
    
    摘要:介绍基于nios ii处理器的嵌入式自动指纹识别系统的实现方法;具体说明自动指纹识别系统的基本原理、系统总体结构、硬件结构设计、用户自定义指令的设计,以及指纹识别算法的处理流程和实现方法。
    
    关键词:嵌入式 指纹识别 nios ii 定制指令
    
    引 言
    
    指纹识别作为生物特征识别的一种,在身份识别上有着其他手段不可比拟的优越性:人的指纹具有唯一性和稳定性的特点;随着指纹传感器性能的提高和价格的降低,指纹的采集相对容易;指纹的识别算法已经较为成熟。由于指纹识别的诸多优点,指纹识别技术已经逐渐走入民用市场,并应用到许多嵌入式设备中。
    
    目前的嵌入式处理器种类繁多。altera公司的nios ii处理器是用于可编程逻辑器件的可配置的软核处理器,与altera的低成本的cyclone fpga组合,具有很高的性能价格比。本系统采用nios ii和cyclone ep1c20嵌入式系统开发板,以及veridicom公司的fps200指纹传感器芯片,实现了一个嵌入式自动指纹识别系统。
    
    1 总体设计及系统架构
    
    本系统有两大功能:指纹登记和指纹比对。指纹登记主要包括指纹采集、指纹图像预处理、特征点提取、特征模板存储和输出显示;指纹比对的前三步与指纹登记相同,但在特征点提取后,是将生成的特征模板与存储在指纹特征模板库中的特征模板进行特征匹配,最后输出显示匹配结果。自动指纹识别系统的基本原理框图如图1所示。
    
    本系统在结构上分为三层:系统硬件平台、操作系统和指纹识别算法。系统层次结构如图2所示。
    
    
    
    图1自动指纹识别的基本原理框图
    
    
    
    图2系统层次
    
    最底层——系统硬件平台,是系统的物理基础,提供软件的运行平台和通信接口。系统的硬件平台在altera的nios ii cyclone嵌入式系统开发板上实现,指纹传感器采用美国veridicom公司的fps200。fps200可输出大小为256×300像素、分辨率为500 dpi的灰度图像。
    
    第二层是操作系统,采用μc/osii。μc/osii是一个基于抢占式的实时多任务内核,可固化、可剪裁、具有高稳定性和可靠性。这一层提供任务调度以及接口驱动,同时,通过硬件中断来实现系统对外界的通信请求的实时响应,如对指纹采集的控制、对串口通信的控制等。这种方式可以提高系统的运行效率。
    
    最上层是指纹识别核心算法的实现。该算法高效地对采集到的指纹进行处理和匹配。采用c语言在nios ii的集成开发环境(ide)中实现。
    
    2 系统硬件的设计与实现
    
    2.1 nios ii嵌入式软核处理器简介
    nios ii嵌入式处理器是altera公司于2004年6月推出的第二代用于可编程逻辑器件的可配置的软核处理器,性能超过200 dmips。nios ii是基于哈佛结构的risc通用嵌入式处理器软核,能与用户逻辑相结合,编程至altera的fpga中。处理器具有32位指令集,32位数据通道和可配置的指令以及数据缓冲。它特别为可编程逻辑进行了优化设计,也为可编程单芯片系统(sopc)设计了一套综合解决方案。nios ii处理器系列包括三种内核:一种是高性能的内核(nios ii/f);一种是低成本内核(nios ii/e);一种是性能/成本折中的标准内核(nios ii/s),是前两种的平衡。本系统采用标准内核。
    
    nios ii 处理器支持256 个具有固定或可变时钟周期操作的定制指令;允许nios ii设计人员利用扩展cpu指令集,通过提升那些对时间敏感的应用软件的运行速度,来提高系统性能。
    
    2.2 硬件平台结构
    
    系统的硬件平台结构如图3所示。
    
上一篇:采用FPGA实现脉动阵列