Coder Social home page Coder Social logo

mv-fp-simulator's Introduction

Multi Value Logic Based - Finger Print Unit

Multi Valued - Floating Point unit Simulator. We have implemented a Multi valued Finger Print Simulator with the above mentioned unit and a screenshot of our implementation @ runtime is shown below.

Multiple-valued logic (MVL)

Possibility to represent the information with more than two discrete levels. Representing data in a MVL system is more effective than the binary based representation, because the number of interconnections can be significantly reduced. The real advantage of higher-radix arithmetic is fewer arithmetic operations. Especially in bulk signal processing units, they may bring in highly sophisticated but less complicated expressions.

Why Finger Print Application?

Fingerprint identification is a popular biometric identification technology. It includes fingerprint verification and fingerprint recognition. Both of them have high computations based on complex formulas. They use minutiae, such as end points and bifurcation points, as features. To correctly extract minutiae from fingerprint images becomes an essential step in fingerprint identification. It involves lot of computation for all its operations, makes it an ideal candidate for Multi-valued logic application.

Finger Print Unit

  • Load Unit: Load FP details (Minutia array) for operation into one of the set of registers
  • Store Unit: Store the FP details (Minutia array) back in memory
  • Compare Unit: Compare the FP details in register sets and updates the status register with the matching point count. Most of the functional unit impelmentations are complex. Implementation details is out of scope for this report
  • Orientation Field Extractor: Finds angle formed by the ridges with horizontal axis
  • FP Area Locator: Separates fingerprint area from the background
  • Ridge Extractor: Extarcts Ridges and furrows with filters, as they run parallel to one another forming 2-D sine wave
  • Thinner: Thinning creates a 8-connected thinned ridges of one pixel width
  • Minutia Extractor: Spikes and breaks in the thinned ridge map leads to detection of spurious minutiae. Heuristics are applied to post-process the thinned ridge map. If the angle between the branch and the trunk is greater than 70ºand less than 110º, then the branch is removed. If the break in the ridges is less than 15 pixels and no other pixel passes through it, then the break is connected to avoid errors.

Instruction Processing Unit

Our system has an Instruction processing unit, which has a Instruction queue. This queue holds ‘users’ or ‘developers’ programs done for our coprocessor – which can be configured to be loaded when the system starts. Following section explains the details of the instruction set. IPU processes instructions from the queue one by one.

Instruction set:

  • Load R1 0000: Loads finger print details (minutia set) starting @ memory 0000 into R1 register
  • Store R1 1001: Store finger print details (minutia set) R1 register into memory starting @ 1001
  • Compare: Compare finger prints in R1 & R2 and updates the matching count in status register
  • Extract c:\images\sample.bmp – Extract the minutia details from bmp file (fully qualified path mentioned in the instruction) and result is available in R1 register

mv-fp-simulator's People

Contributors

arunk2 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.