Peter Tummeltshammer, Martin Delvai

Slides:



Advertisements
Similar presentations
Distinctive Image Features from Scale-Invariant Keypoints
Advertisements

Commercial FPGAs: Altera Stratix Family Dr. Philip Brisk Department of Computer Science and Engineering University of California, Riverside CS 223.
Wavelets Fast Multiresolution Image Querying Jacobs et.al. SIGGRAPH95.
Analysis and Digital Implementation of the Talk Box Effect Yuan Chen Advisor: Professor Paul Cuff.
Digital Kommunikationselektronik TNE027 Lecture 5 1 Fourier Transforms Discrete Fourier Transform (DFT) Algorithms Fast Fourier Transform (FFT) Algorithms.
Computational Biology, Part 23 Biological Imaging II Robert F. Murphy Copyright  1996, 1999, All rights reserved.
Final Project Part II MATLAB Session ES 156 Signals and Systems 2007 SEAS Prepared by Frank Tompkins.
Face Recognition Method of OpenCV
Facial feature localization Presented by: Harvest Jang Spring 2002.
Image Indexing and Retrieval using Moment Invariants Imran Ahmad School of Computer Science University of Windsor – Canada.
ICIP 2000, Vancouver, Canada IVML, ECE, NTUA Face Detection: Is it only for Face Recognition?  A few years earlier  Face Detection Face Recognition 
School of Computing Science Simon Fraser University
Characterization Presentation Neural Network Implementation On FPGA Supervisor: Chen Koren Maria Nemets Maxim Zavodchik
 Image Search Engine Results now  Focus on GIS image registration  The Technique and its advantages  Internal working  Sample Results  Applicable.
IIR Filters and Equalizers R.C. Maher ECEN4002/5002 DSP Laboratory Spring 2002.
Smart Traveller with Visual Translator for OCR and Face Recognition LYU0203 FYP.
A Performance and Energy Comparison of FPGAs, GPUs, and Multicores for Sliding-Window Applications From J. Fowers, G. Brown, P. Cooke, and G. Stitt, University.
A Low-Power Low-Memory Real-Time ASR System. Outline Overview of Automatic Speech Recognition (ASR) systems Sub-vector clustering and parameter quantization.
Handwritten Character Recognition using Hidden Markov Models Quantifying the marginal benefit of exploiting correlations between adjacent characters and.
Face Recognition Using Neural Networks Presented By: Hadis Mohseni Leila Taghavi Atefeh Mirsafian.
Prepared by: Hind J. Zourob Heba M. Matter Supervisor: Dr. Hatem El-Aydi Faculty Of Engineering Communications & Control Engineering.
VEHICLE NUMBER PLATE RECOGNITION SYSTEM. Information and constraints Character recognition using moments. Character recognition using OCR. Signature.
- 1 - EE898-HW/SW co-design Hardware/Software Codesign “Finding right combination of HW/SW resulting in the most efficient product meeting the specification”
Floating Point vs. Fixed Point for FPGA 1. Applications Digital Signal Processing -Encoders/Decoders -Compression -Encryption Control -Automotive/Aerospace.
Interactive Time-Dependent Tone Mapping Using Programmable Graphics Hardware Nolan GoodnightGreg HumphreysCliff WoolleyRui Wang University of Virginia.
1 Chapter 5 Image Transforms. 2 Image Processing for Pattern Recognition Feature Extraction Acquisition Preprocessing Classification Post Processing Scaling.
Texture analysis Team 5 Alexandra Bulgaru Justyna Jastrzebska Ulrich Leischner Vjekoslav Levacic Güray Tonguç.
Prof. Amr Goneid Department of Computer Science & Engineering
Implementing a Speech Recognition System on a GPU using CUDA
NDA Confidential. Copyright ©2005, Nallatech.1 Implementation of Floating- Point VSIPL Functions on FPGA-Based Reconfigurable Computers Using High- Level.
HW/SW PARTITIONING OF FLOATING POINT SOFTWARE APPLICATIONS TO FIXED - POINTED COPROCESSOR CIRCUITS - Nalini Kumar Gaurav Chitroda Komal Kasat.
Dan Rosenbaum Nir Muchtar Yoav Yosipovich Faculty member : Prof. Daniel LehmannIndustry Representative : Music Genome.
Hardware/Software Partitioning of Floating-Point Software Applications to Fixed-Point Coprocessor Circuits Lance Saldanha, Roman Lysecky Department of.
Phase Congruency Detects Corners and Edges Peter Kovesi School of Computer Science & Software Engineering The University of Western Australia.
Tone Mapping on GPUs Cliff Woolley University of Virginia Slides courtesy Nolan Goodnight.
Face Recognition: An Introduction
RICE UNIVERSITY “Joint” architecture & algorithm designs for baseband signal processing Sridhar Rajagopal and Joseph R. Cavallaro Rice Center for Multimedia.
1 Terrorists Face recognition of suspicious and (in most cases) evil homo-sapiens.
1 Implementation in Hardware of Video Processing Algorithm Performed by: Yony Dekell & Tsion Bublil Supervisor : Mike Sumszyk SPRING 2008 High Speed Digital.
Digital imaging By : Alanoud Al Saleh. History: It started in 1960 by the National Aeronautics and Space Administration (NASA). The technology of digital.
3D Face Recognition Using Range Images
Supervisor: Nakhmani Arie Semester: Winter 2007 Target Recognition Harmatz Isca.
Image processing Honza Černocký, ÚPGM. 1D signal 2.
Reconfigurable acceleration of robust frequency-domain echo cancellation C. H. Ho 1, K.F.C.Yiu 2, J. Huo 3, S. Nordholm 3 and W. Luk 1 1.Department of.
Glossary of Technical Terms Correlation filter: a set of carefully designed correlation templates with regard to shift invariance as well as distortion-
1. TMS320C6X DSP Programming with Simulink – TI C6000 DSP Target i) TI C6000 DSP target enables simulink blocks to model or program signal processing algorithm.
3D Face Recognition Using Range Images Literature Survey Joonsoo Lee 3/10/05.
An FFT for Wireless Protocols Dr. J. Greg Nash Centar ( HAWAI'I INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES Mobile.
Image Enhancement in the Spatial Domain.
Content Based Coding of Face Images
Recognition of biological cells – development
Fixed-pointed FFT model
PRINCIPAL COMPONENT ANALYSIS (PCA)
Submitted by: Ala Berawi Sujod Makhlof Samah Hanani Supervisor:
Last update on June 15, 2010 Doug Young Suh
ECE533 – Image Processing Project Face Recognition Techniques
Centar ( Global Signal Processing Expo
Digital Image Processing using MATLAB
Matlab as a Development Environment for FPGA Design
Optimization for Fully Connected Neural Network for FPGA application
Kenneth Moreland Edward Angel Sandia National Labs U. of New Mexico
Combinational Circuits
Research Institute for Future Media Computing
Combinational Circuits
Introduction SYSC5603 (ELG6163) Digital Signal Processing Microprocessors, Software and Applications Miodrag Bolic.
Introduction SYSC5603 (ELG6163) Digital Signal Processing Microprocessors, Software and Applications Miodrag Bolic.
Speaker: Chris Chen Advisor: Prof. An-Yeu Wu Date: 2014/10/28
Wavelet Analysis Objectives: To Review Fourier Transform and Analysis
ENEE222 Elements of Discrete Signal Analysis Lab 9 1.
Measuring the Similarity of Rhythmic Patterns
Presentation transcript:

Peter Tummeltshammer, Martin Delvai HW-SW Codesign Lab Course Setup Peter Tummeltshammer, Martin Delvai http://ti.tuwien.ac.at/ecs/teaching/courses/hwswcode_lu

Overview Face recognition Implementation details Further Steps How does it work Lab course approach Implementation details Further Steps ECS Group Tummeltshammer & Delvai

Facial Recognition System Computer-driven application Identifies a person from a digital image Identification vs. Verification Identification: Comparing to a single image Verification: Comparing to a database Not to confuse with face detection Locate a face inside an image ECS Group Tummeltshammer & Delvai

Known FR-Algorithms 2D Face Recognition 3D-Face recognition Eigenfaces Correlation filters Hidden Markov Model Dynamic Link Matching 3D-Face recognition ECS Group Tummeltshammer & Delvai

Image Correlation 2D FFT / IFFT Point-wise multiplication Peak to Sidelobe Ratio (PSR) calculation ECS Group Tummeltshammer & Delvai

Input Images 32x32 pixels 8 bit greyscale No/only little background Consistent lightning High contrast ECS Group Tummeltshammer & Delvai

… … 2D FFT decomposition Can be decomposed into 1D FFTs 1. 1D 32-point FFT of all 32 lines 2. 1D 32-point FFT of all 32 columns Overall 64 32-point FFTs … … ECS Group Tummeltshammer & Delvai

2D FFT result Result: Complex 32x32 Matrix Problem for fixed-point precision: big numerical range real imag ECS Group Tummeltshammer & Delvai

2D FFT Decomposes image data into frequency domain Representation of facial feature transitions Constant component at (0,0) ECS Group Tummeltshammer & Delvai

Pointwise Multiplication Complex point-wise multiplication (a+bi) * (c+di)=ac+adi+bci-bd Four Multiplications for each pixel Overall 4096 Multiplications ECS Group Tummeltshammer & Delvai

2D inverse FFT (IFFT) Similar to 2D FFT (conjugated complex) 64 32-point 1D IFFTs Only real part necessary for PSR calculation ECS Group Tummeltshammer & Delvai

Peak to Sidelobe Ratio PSR is a measure for correlation 1. Find Peak 2. draw 5x5 and 21x21 rectangles (sidelobe region) 3. calculate µ and σ inside sidelobe region 21 5 32 32 ECS Group Tummeltshammer & Delvai

Peak to Signal Ratio High PSR = high correlation PSR > Θ -> Person identified Θ is application- and filter specific PSR=38 PSR=3 ECS Group Tummeltshammer & Delvai

Correlation in Face Recognition Offline Generation of reference filter One correlation filter for each person Out of N training images Filters are stored in frequency domain Online Offline ECS Group Tummeltshammer & Delvai

Verification Example PSR 1 ≤ Θ PSR 2 ≤ Θ … PSR N > Θ VerifyImage(image, filterdatabase) { fftimage = FFT(image); for (i=0; i<size(filterdatabase); i++) { multimage = fftimage * filterdatabase[i]; ifftimage = ifft(multimage); PSR = computePSR(ifftimage); if (PSR > Θ) { return i; } return -1; PSR 1 ≤ Θ PSR 2 ≤ Θ … PSR N > Θ ECS Group Tummeltshammer & Delvai

MACE Filter Design Minimum Average Correlation Energy Filter [Savvides et al.] High illumination invariance Generates sharp peaks in PSR analysis Filter generation performed offline For details: [Savvides et al.] or MATLAB ECS Group Tummeltshammer & Delvai

  Design Path MATLAB Model Algorithmic approach Floating point precision Provided by us C- Implementation Fixed point precision Provided by us HWSW-CD Partitioning Timing optimization Todo by you ECS Group Tummeltshammer & Delvai

MATLAB Model Available on HW-SW CD Homepage Optional (only if interested) Workspace (facerec.mat) Images (10 example images) Filter (single correlation Filter) Functions computePSR generateFilter ECS Group Tummeltshammer & Delvai

MATLAB Model Example command: computepsr(real(ifft2(fft2(double(Images(:,:,:,i))) .* filterN))); Computes PSR of filterN and Image i inside Vector “Images“ Ifft2 and fft2 are MATLAB functions that need double precision input Computepsr returns PSR of given matrix ECS Group Tummeltshammer & Delvai

C Implementation Available on HW-SW CD Homepage Mandatory download Calculates PSR for given image and filter Uses 16 bit fixed point representation ECS Group Tummeltshammer & Delvai

C Implementation Uses fixed point representation Challenges: Most arithmetic operations can cause an overflow Requires scaling Fixed scaling -> loss of precision Pro: dynamic scaling won‘t affect the PSR calculation due to division by standard deviation ECS Group Tummeltshammer & Delvai

C Filestructure Compile with make (gcc) /facerec frconsole.c fix_fft.c Makefile filter_2_4_9.txt image1.txt image2.txt image10.txt … Compile with make (gcc) Filter generated from images 2, 4 and 9 (same as MATLAB) Syntax: ./frconsole image1.txt filter_2_4_9.txt ./frconsole image2.txt filter_2_4_9.txt … ECS Group Tummeltshammer & Delvai

C Implementation FFT taken from web (http://www.jjj.de/) FFT scales automatically PW multiplication and PSR calculation scale dynamically Images and filter are scaled to 16 bit integer [-32768, 32767] ECS Group Tummeltshammer & Delvai

HW-SW CD Partitioning Implemented on ALTERA FPGA, using Softcore SPEAR 16 bit Instruction & Data Memory No FPU, no Multiplication Integration of custom HW-modules by memory mapping Concept presentation on 14.5.07 ECS Group Tummeltshammer & Delvai

HW-SW CD Partitioning Timing optimization by Analyzing code for repetative and time- consuming function calls Implementing HW-modules for these functions Implementing whole blocks (i.e. like 2D- FFT) in HW ECS Group Tummeltshammer & Delvai

Further Steps 1.: Download and understand C-Code 2.(optional): Download MATLAB design 3.: Compile C-code for SPEAR (SPEAR concept presentation: 14.5.07) 4.: Analyze time consumption 5.: Implement HW modules and partition design ECS Group Tummeltshammer & Delvai

Questions? ECS Group Tummeltshammer & Delvai

Organisatorisches Gruppenbildung Email in TI System Fragen zu C-Code: Mi 16.5.07 10:00 – 14:00 ECS Group Tummeltshammer & Delvai