03 - a low-cost fpga-based embedded fingerprint verification and matching system - barrenechea

26
A Low A Low - - Cost FPGA Cost FPGA - - based based Embedded Fingerprint Verification Embedded Fingerprint Verification and Matching System and Matching System Fifth Workshop on Intelligent Solutions in Embedded Systems “WISES 07”, June 21-22, Madrid Maitane Barrenechea Jon Altuna Miguel San Miguel Signal Theory and Communications Group Department of Electronics University of Mondragon

Upload: hudha-ahmed

Post on 28-Jul-2015

44 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

A LowA Low--Cost FPGACost FPGA--based based Embedded Fingerprint Verification Embedded Fingerprint Verification

and Matching Systemand Matching System

Fifth Workshop on Intelligent Solutions in Embedded Systems“WISES 07”, June 21-22, Madrid

Maitane BarrenecheaJon Altuna

Miguel San Miguel

Signal Theory and Communications GroupDepartment of ElectronicsUniversity of Mondragon

Page 2: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Index

IntroductionSoftware ArchitectureHardware ArchitectureConclusions

Page 3: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Index

IntroductionSoftware ArchitectureHardware ArchitectureConclusions

Page 4: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

BiometricsIntroduction

Uses some unique behavioural or physiological characteristics to identify a person.

Behavioural characteristics:SignatureGaitTyping pattern

Physiological characteristics:FingerprintsFacial PatternsHand MeasurementsEye Retinas

Page 5: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

System OverviewIntroduction

BOZORTH3 Match ScoreFingerprint’s minutiae set

Template minutiae set

SoftwareBased on the packages from the National Institute of Standard and Technology’s

(NIST) Fingerprint Image Software (NFIS2) .

Hardware- Spartan3 family FPGA

- Leon2 32-bit Sparc Processor- Floating Point Unit (FPU)- Hardware co-processor

- Fujitsu MBF200 fingerprint sensor

MINDTCT

Page 6: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Index

IntroductionSoftware ArchitectureHardware ArchitectureConclusions

Page 7: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Software Implementation on a Leon2 PlatformSW Architecture

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 RAWUsed fingerprint images fulfil the conditions set for

an optimum performance500 dpi256 greyscale

Bare-C Cross-CompilerGRMON debug monitor

Page 8: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Minutiae Extraction AlgorithmSW Architecture

Input Fingerprint RAW Image

Image Maps

Binarization

Minutiae Detection

Remove False Minutiae

Assess Minutiae Quality

Output Minutiae in XYT Format

Low Contrast Map

Direction Map

Low Flow Map

High Curve Map

Quality Map

Page 9: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Image MapsSW Architecture

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.

Poor qualityFair qualityGood qualityVery good qualityExcellent quality

Page 10: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Binarization & Minutiae ExtractionSW Architecture

BinarizationA pixel is assigned a binary value based on the ridge

flow direction associated with the block the pixel is within.

Minutiae ExtractionIdentify certain pixel patterns

Ridge EndingBifurcation

Page 11: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

False Minutiae Removal & Quality Assessment SW Architecture

Remove False MinutiaeAssess Minutia Quality

Two factors are combined to produce a quality measure:

Quality MapPixel Intensity

Statistics

Poor qualityFair qualityGood qualityVery good qualityExcellent quality

Page 12: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Matching Algorithm SW Architecture

Bozorth3Rotation and translation invariantMatching Score > 40

Template Minutiae Set

Construct Intra-Fingerprint Minutia Comparison Tables

Construct Inter-Fingerprint Compatibility Table

Traverse the Inter-Fingerprint Compatibility Table

Matching Score

Fingerprint Minutiae Set

Finger Match

Page 13: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Index

IntroductionSoftware ArchitectureHardware ArchitectureConclusions

Page 14: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Initial System Architecture HW Architecture

Initial system architectureGR-XC3S1500 board with the following embedded

modules:Leon2 processor

50 MHzCache system: 8 KB (data and instruction)

Fingerprint Capture IPFujitsu MBF200 fingerprint sensor

FINGERPRINT SENSOR

PC

AHB CONTROLLER

MEMORY CONTROLLER

AHB/APBBRIDGE

UART

FINGERPRINT CAPTURE IP

BOOTROM

SDRAM

BOOT PROMI/F

SDRAM I/F

AHB I/F

LEON-2 soft-processor

DATA INSTR.

CACHEINTEGER UNIT

AHB BUS

APB

BUS

GRXC-3S1500

Page 15: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Initial System Architecture HW Architecture

Why Leon2?High configurability

VHDL code availability (under LGPL license).High performance

Best performance per clock cycleHigh usability

Tkconfig graphical configuration tool

Page 16: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Running the application on the initial systemHW Architecture

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 operationsLeon2 is a fixed-point processor

FPU

Leon2 compatible FPUs:LTHMeikoGRFPU

IEEE-754 compliant

Page 17: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

FPU tests HW Architecture

FPU insertion Great increase in the amount of logicReduce clock frequencyReduce cache sizes

Three different system configurations under test31 MHz and 8KB cache memory.37 MHz and 8KB cache memory.40 MHz and 4KB cache memory.

Page 18: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

FPU tests HW Architecture

Stanford benchmarkMeasures the execution time in ms for ten small programs.

A B C DPerm 34 50 33 34

Towers 50 83 67 50

Queens 33 50 33 33

Intmm 166 133 100 116

Mm 1000 84 50 67Puzzle 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.

Paranoia benchmarkTest the compliance with the IEEE-754 floating-point standard

91.6% - 95% execution time reduction

92.22% - 95.3% execution time reduction

Page 19: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Introducing the GRFPU in the design HW Architecture

FINGERPRINT SENSOR

PC

AHB CONTROLLER

MEMORY CONTROLLER

AHB/APBBRIDGE

UART

FINGERPRINT CAPTURE IP

BOOTROM

SDRAM

BOOT PROMI/F

SDRAM I/F

AHB I/F

LEON-2 soft-processor

DATA INSTR.

CACHEINTEGER UNIT

AHB BUS

APB

BUS

GRXC-3S1500

FPU

Page 20: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Introducing the GRFPU in the design HW Architecture

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.

Page 21: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

HW speed enhancement HW Architecture

MINDTCT completion time excessive Mainly due to DM.

HW accelerator speeds up this process

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

Page 22: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

HW speed enhancementHW Architecture

GRXC-3S1500

FINGERPRINT SENSOR

PC

AHB CONTROLLER

MEMORY CONTROLLER

AHB/APBBRIDGE

UART

FINGERPRINT CAPTURE IP

BOOTROM

SDRAM

BOOT PROMI/F

SDRAM I/F

AHB I/F

LEON-2 soft-processor

DATA INSTR.

CACHEINTEGER UNIT

AHB BUS

APB

BUS

GRXC-3S1500

FPU HW co-processor

Page 23: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

HW speed enhancementHW Architecture

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.

Page 24: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Index

IntroductionSoftware ArchitectureHardware ArchitectureConclusions

Page 25: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Conclusions

Implementation of a fingerprint minutiae extraction and matching algorithm

Spartan3 based low-cost systemEmbedded 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.

Page 26: 03 - A Low-Cost FPGA-Based Embedded Fingerprint Verification and Matching System - Barrenechea

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

Thanks for your assistance