A Low-Cost FPGA-based Embedded Fingerprint Verification and

0 downloads 0 Views 4MB Size Report
and Matching System. Fifth Workshop on Intelligent Solutions in Embedded Systems. “WISES 07”, June .... Traverse the Inter-Fingerprint. Compatibility Table.
Fifth Workshop on Intelligent Solutions in Embedded Systems “WISES 07”, June 21-22, Madrid

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System Maitane Barrenechea Jon Altuna Miguel San Miguel Signal Theory and Communications Group Department of Electronics University of Mondragon

Index

„Introduction „Software Architecture „Hardware Architecture „Conclusions

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

2

Index

„Introduction „Software Architecture „Hardware Architecture „Conclusions

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

3

Introduction

Biometrics

ƒ Uses some unique behavioural or physiological characteristics to identify a person. ƒ Behavioural characteristics: ƒ Signature ƒ Gait ƒ Typing pattern ƒ Physiological characteristics: ƒ Fingerprints ƒ Facial Patterns ƒ Hand Measurements ƒ Eye Retinas

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

4

Introduction

System Overview

ƒ Software ƒ Based on the packages from the National Institute of Standard and Technology’s (NIST) Fingerprint Image Software (NFIS2) .

MINDTCT

Fingerprint’s minutiae set

Template minutiae set

BOZORTH3

Match Score

ƒ Hardware - Spartan3 family FPGA - Leon2 32-bit Sparc Processor - Floating Point Unit (FPU) - Hardware co-processor

- Fujitsu MBF200 fingerprint sensor A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

5

Index

„Introduction „Software Architecture „Hardware Architecture „Conclusions

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

6

SW Architecture

Software Implementation on a Leon2 Platform

ƒ Custom version of the MINDTCT and BOZORTH3 packages (NIST2). ƒOnly those modules required for XYT formatted minutiae output set generation have been used. ƒ Input fingerprint image format modified Æ RAW ƒ Used fingerprint images fulfil the conditions set for an optimum performance ƒ500 dpi ƒ256 greyscale ƒ Bare-C Cross-Compiler ƒ GRMON debug monitor

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

7

SW Architecture

Minutiae Extraction Algorithm Input Fingerprint RAW Image

Low Contrast Map Direction Map

Image Maps Binarization

Low Flow Map High Curve Map Quality Map

Minutiae Detection Remove False Minutiae Assess Minutiae Quality Output Minutiae in XYT Format

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

8

SW Architecture

Image Maps

ƒ Low Contrast Map: Marks low contrast areas in the image. ƒ Direction Map: Represents the main ridge flow direction. ƒ Low Flow Map: Identifies image areas with a weak ridge structure.

ƒ High Curve Map: Flags high curvature areas in the image.

ƒ Quality Map: Assigns a quality level to each block in the image. z Poor quality z Fair quality z Good quality z Very good quality z Excellent quality

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

9

SW Architecture

Binarization & Minutiae Extraction

ƒ Binarization ƒ A pixel is assigned a binary value based on the ridge flow direction associated with the block the pixel is within. ƒ Minutiae Extraction ƒIdentify certain pixel patterns ƒRidge Ending ƒBifurcation

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

10

SW Architecture

False Minutiae Removal & Quality Assessment

ƒ Remove False Minutiae ƒAssess Minutia Quality ƒ Two factors are combined to produce a quality measure: ƒQuality Map ƒPixel Intensity Statistics

z Poor quality z Fair quality z Good quality z Very good quality z Excellent quality

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

11

SW Architecture

Matching Algorithm

ƒ Bozorth3 ƒ Rotation and translation invariant ƒ Matching Score > 40

Template Minutiae Set

Finger Match

Fingerprint Minutiae Set

Construct Intra-Fingerprint Minutia Comparison Tables Construct Inter-Fingerprint Compatibility Table Traverse the Inter-Fingerprint Compatibility Table Matching Score

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

12

Index

„Introduction „Software Architecture „Hardware Architecture „Conclusions

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

13

HW Architecture

Initial System Architecture

BOOT PROM I/F

BOOT ROM

SDRAM I/F

SDRAM

APB BUS

ƒInitial system architecture LEON-2 soft-processor ƒ GR-XC3S1500 board with the following embedded CACHE DATA INSTR. INTEGER UNIT AHB I/F modules: ƒLeon2 processor ƒ 50 MHz AHB CONTROLLER ƒ Cache system: AHB BUS 8 KB (data and instruction) AHB/APB ƒ Fingerprint Capture IPBRIDGE MEMORY ƒ Fujitsu MBF200 fingerprint sensor CONTROLLER UART FINGERPRINT CAPTURE IP

PC

FINGERPRINT SENSOR

GRXC-3S1500 A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

14

HW Architecture

Initial System Architecture

ƒWhy Leon2? ƒ High configurability ƒVHDL code availability (under LGPL license). ƒ High performance ƒ Best performance per clock cycle ƒ High usability ƒTkconfig graphical configuration tool

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

15

HW Architecture

Running the application on the initial system

ƒ The execution of the algorithm is successful in terms of the matching results. ƒ Yet the execution time is excessive. ƒ MINDTCT occupies 75% of the computation time. ƒ MINDTCT acceleration: ƒ Mainly floating-point operations ƒ Leon2 is a fixed-point processor ƒ Leon2 compatible FPUs: ƒ LTH ƒ Meiko IEEE-754 compliant ƒ GRFPU A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

FPU

16

HW Architecture

FPU tests

ƒ FPU insertion Great increase in the amount of logic ƒ Reduce clock frequency ƒ Reduce cache sizes ƒ Three different system configurations under test ƒ 31 MHz and 8KB cache memory. ƒ 37 MHz and 8KB cache memory. ƒ 40 MHz and 4KB cache memory.

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

17

HW Architecture

FPU tests

ƒ Stanford benchmark ƒ Measures the execution time in ms for ten small programs. A

B

C

D

Perm

34

50

33

34

Towers

50

83

67

50

Queens

33

50

33

33

Intmm

166

133

100

116

Mm

1000

84

50

67

Puzzle

317

450

350

350

Quick

50

50

33

33

Bubble

50

50

50

50

Tree

233

334

266

250

FFT

1067

83

67

50

A: 50 MHz / 8KB cache /No FPU. B: 31 MHz / 8KB cache / FPU. C: 37 MHz / 8KB cache / FPU. D: 40 MHz / 4KB cache / FPU.

91.6% - 95% execution time reduction

92.22% - 95.3% execution time reduction

ƒ Paranoia benchmark ƒ Test the compliance with the IEEE-754 floating-point standard A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

18

HW Architecture

Introducing the GRFPU in the design LEON-2 soft-processor

AHB CONTROLLER

INTEGER UNIT

DATA

INSTR.

FPU AHB BUS

AHB/APB BRIDGE

MEMORY CONTROLLER BOOT PROM I/F

BOOT ROM

SDRAM I/F

SDRAM

APB BUS

AHB I/F

CACHE

UART FINGERPRINT CAPTURE IP

PC

FINGERPRINT SENSOR

GRXC-3S1500 A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

19

HW Architecture

Introducing the GRFPU in the design

ƒ 94.14% execution time reduction (40MHz / 4KB cache). ƒ Program completion delay is yet excessive.

A: 50 MHz / 8KB cache /No FPU / No HW Co-processor. B: 31 MHz / 8KB cache / FPU / No HW Co-processor. C: 37 MHz / 8KB cache / FPU / No HW Co-processor. D: 40 MHz / 4KB cache / FPU / No HW Co-processor.

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

20

HW Architecture

HW speed enhancement

ƒ MINDTCT completion time excessive

Mainly due to DM.

LCM: Low Contrast Map. DM: Direction Map. LFM: Low Flow Map.

ƒ HW accelerator speeds up this process A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

21

HW Architecture

HW speed enhancement LEON-2 soft-processor

AHB CONTROLLER

INTEGER UNIT FPU

DATA

INSTR.

HW co-processor

AHB BUS

AHB/APB BRIDGE

MEMORY CONTROLLER BOOT PROM I/F

BOOT ROM

SDRAM I/F

SDRAM

APB BUS

AHB I/F

CACHE

UART FINGERPRINT CAPTURE IP

PC

FINGERPRINT SENSOR

GRXC-3S1500 A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

22

HW Architecture

HW speed enhancement

ƒ 97.89%

execution time reduction is estimated (40MHz / 4KB cache).

A: 50 MHz / 8KB cache /No FPU / No HW Co-processor. B: 31 MHz / 8KB cache / FPU / No HW Co-processor. C: 37 MHz / 8KB cache / FPU / No HW Co-processor. D: 40 MHz / 4KB cache / FPU / No HW Co-processor. E: 40 MHz / 4KB cache / FPU / HW Co-processor.

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

23

Index

„Introduction „Software Architecture „Hardware Architecture „Conclusions

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

24

Conclusions ƒ Implementation of a fingerprint minutiae extraction and

matching algorithm ƒ Spartan3 based low-cost system ƒ Embedded Leon2 soft-processor. ƒ Minutiae extraction process has been accelerated in a 94.14%. ƒ HW co-processor is estimated to speed-up the MINDTCT algorithm up to a 97.89%. ƒ Commercial systems use very high frequency clocks. ƒ Extrapolating results (400MHz) Æ Minutiae extraction performed in 0’3 s.

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

25

Thanks for your assistance

A Low-Cost FPGA-based Embedded Fingerprint Verification and Matching System

26

Suggest Documents