Design of optical fingerprint recognition system based on ARM

Publisher:RadiantGazeLatest update time:2014-02-28 Source: 21ICKeywords:ARM Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

With the increasing application of electronic information technology, many occasions require the identification or identity record of specific user groups, such as access control systems, attendance systems, security authentication systems, etc. Various technologies are used in various systems, such as retinal recognition, facial recognition, fingerprint recognition, RFID radio frequency identification applications, etc. Among them, biometric recognition has been recognized and accepted by more and more people for its convenience and high security, especially fingerprint recognition technology, which has now developed into one of the most widely used biometric technologies. Therefore, the study of fingerprint recognition system based on embedded architecture has practical significance and broad application prospects.

1 Overall system structure

The system uses an optical fingerprint sensor (with built-in optical GC0307 CMOS image acquisition chip from GalaxyCore) and STMicroelectronics' 32-bit high-performance microcontroller STM32F205RE with ARM Cortex M3 core to form the functional main body. It uses image acquisition and processing algorithms such as Sobel edge detection operator, Gabor filtering, and image binarization to recognize fingerprint images, and builds a small-volume embedded fingerprint recognition module with the characteristics of building block embedding, low power consumption, simple and easy-to-use program interface, easy secondary development, high recognition accuracy, and high cost performance.

2 System Hardware Circuit Design

The entire system design constitutes an integrated optical fingerprint recognition module. The module design adopts the optical dark background imaging principle and adds a unique liveness detection chip to solve the dry finger effect while solving the problems of residual fingerprint misidentification and rubber fake fingerprints.

Figure 1 shows the schematic diagram of the application circuit of the optical GC0307 CMOS image acquisition chip of GalaxyCore Microelectronics Co., Ltd. This CMOS image acquisition chip is a built-in component of a high-precision, low-power, micro-volume, high-performance camera. It combines a CMOS image sensor that realizes high-quality VGA images with a highly integrated image processor, an embedded power supply, and a high-quality lens group. It outputs JPEG images or image video streams, supports 8/10-bit digital transmission of JPEG images and YCbCr interfaces, and provides a complete imaging solution.

 

 

The CMOS image acquisition core function output serial data pin, clock signal pin, reset pin, serial bus pin, etc. are all connected to the GPIO port of STM32F205RE, and the image information collected by the CMOS chip is read through the GPIO port simulation timing. Since the operating frequency of the GPIO port of STM32F205RE can reach 120 MHz, the timing can be simulated very accurately and efficiently. The measured 640×480 original image can be collected at a speed of 10 frames/s to the main processor STM32F205RE for image processing.

3 System software function design

The fingerprint image acquisition process of this system is shown in Figure 2. The system software design part adopts a four-point rotation algorithm for distortion correction.

 

 

The transformation from (x, y) to (u, v) can be obtained by formula (1) and formula (2), where A ~ H are determined by the optical path and can be finally determined by specific measurement data. The original data can be obtained through actual measurement. Figure 3 shows the difference between the original image and the image before and after distortion correction. It can be seen from the transformation that the image after distortion correction can reach a resolution of 500 DPI through transformation, which lays the foundation for obtaining high-quality image processing data in the future.

 

 

Then it is sent to the algorithm for processing. Since the image processing algorithm of the embedded system must have a small amount of calculation and occupy a small RAM memory space in order to run in a single-chip system with limited computing performance, this system replaces the point direction with the small block direction to reduce RAM occupancy.

In terms of image enhancement, the image can be divided into small blocks with length and width L, and then the mean square error of each block can be calculated according to the following formula:

 

 

According to the experimental data measurement and analysis, when Aver>36, it can be considered that there is an image in the area, otherwise it is considered to be the background. The mean square error is used to distinguish the foreground and background, and the image contrast can also be judged based on this. By enhancing the image according to the difference in contrast, images with different exposure brightness can be uniformly enhanced. The original image was processed by the algorithm, and the effects before and after the extraction were compared. The specific effect is shown in Figure 4.

 

In the software algorithm, the improved Sobel operator based on the original Sobel operator is used to solve the problem of obtaining the image direction field in fingerprint processing.

The original Sobel operator is as follows:

 

 

The improved Sobel operator is:

 

 

The improved Sobel operator can increase the accuracy of the directional field, and the measured pass rate is increased from 93.3% using the standard Sobel operator to 95.8%. Figure 5 shows the change.

 

 

As shown in Figure 5, the improved Sobel operator can significantly segment the area of ​​the correct image based on the original Sobel operator, and can extract the correct direction from almost the entire image area. The system performs Gabor filtering on the image and binarizes the image data. Fingerprint images are texture images. Texture images use Gabor filters, using the point direction of each point to enhance along the direction and weaken along the normal direction. The Gabor filter can well splice broken lines and filter out environmental noise. Finally, the image after Gabor filtering is binarized using a double window mean threshold:

Threshold 1: Meaning operator matrix: 7×7 identity matrix.

Threshold 2: Meaning operator matrix: 3×3 identity matrix.

The specific operation expressions are as follows:

 

 

When the value of each point g(x,y)>p(x,y), then g(x,y)=1 is assigned, otherwise it is assigned 0, so as to obtain the final result of binarization. The comparison of the extracted image and the actual measurement effect is shown in Figure 6.

 

 

Figure 7 is the final image binarized according to the coarse and fine texture of the image, and feature points are extracted based on endpoints and intersections.

 

 

After the above steps, effective feature information can be extracted from the original image. The feature information describes the position, direction and other information of the feature point, and finally forms a feature template with a size not exceeding 512 bytes. The fingerprint comparison is to construct a rod pair set formed by two points based on the feature template, and the information contained in the rod pair, such as the rod length, end point direction and the angle between the rods, is already a relative quantity and has nothing to do with the position. Under ideal conditions, for the same fingerprint, every quantity (length, angle) of the rod pair that can be found in the two images collected is mathematically completely equal. This is used as the basic mathematical model to construct the entire comparison algorithm.

4 Conclusion

The design of the optical fingerprint recognition system based on ARM in this paper has been tested in real objects. The module takes 500 to 800 ms to input the user's fingerprint image, and the rejection rate is less than or equal to 1%. It takes an average of 4.2 ms to compare a fingerprint, and supports 1:1 fingerprint verification and 1:N fingerprint search. In the hardware design, the communication terminal is introduced, and the system supports 3.3V TTL serial port communication. The module can register users, delete specific users, delete all users, reset the module, obtain the total number of users, obtain user permissions, 1:1 comparison, 1:N comparison, set the serial port baud rate, read images and extract feature values, obtain images, etc. 30 conventional or extended function commands can be used through the serial port to meet most fingerprint applications and can be well used in the embedded field, thus proving the feasibility of this solution.

Keywords:ARM Reference address:Design of optical fingerprint recognition system based on ARM

Previous article:Design of matrix keyboard based on ARM and its linux driver implementation
Next article:Design of digital human heart rate detector

Recommended ReadingLatest update time:2024-11-17 16:47

In-depth analysis of the design of a dental chair control system based on ARM embedded technology
1 Introduction At present, the market for high-end dental chair equipment is basically dominated by foreign companies. Generally, they are expensive and the technology is not transferable. As people pay more and more attention to oral health, it is particularly necessary to develop a high-end integrated oral diagnosis
[Microcontroller]
In-depth analysis of the design of a dental chair control system based on ARM embedded technology
ARM Novice: The Difference Between JLINK and JTAG
To debug ARM, you must follow ARM's debug interface protocol, and JTAG is one of them. When simulating, IAR, KEIL, ADS, etc. all have a public debug interface, and RDI is one of them. So how do we complete the conversion from RDI to ARM debug protocol (JTAG)? There are two ways: 1. Write a service program on the com
[Microcontroller]
Design of matrix keyboard based on ARM and its linux driver implementation
1. Introduction ARM microprocessors have been widely used in industrial control, consumer electronics, communication systems and other fields. Matrix keyboard is a commonly used keyboard form, which designs the keys into M rows and N columns, so that a total of M+N signal lines are required, but M×N keys can be driven
[Power Management]
Design of matrix keyboard based on ARM and its linux driver implementation
Cross-compile Python-2.7.13 to ARM (aarch32) platform
environment Host: ubuntu14.04 64bit Development board: qemu + vexpress-a9 (reference: http://www.cnblogs.com/pengdonglin137/p/6442583.html) Toolchain: arm-none-linux-gnueabi-gcc (gcc version 4.8.3 20140320) Python version: Python-2.7.13 Go to top reference http://www.41443.com/HTML/Python/20151105/414154.html
[Microcontroller]
ARM instruction set version and ARM version
We often see different expressions such as ARM7, ARM9, ARM11, and armv6k. And in GCC compilation, we often use -march, -mcpu, etc. What do they mean? Sam himself is not very clear, but he has a vague idea. Let's study it carefully today. ARM (Advanced RISC Machines) is a well-known company in the microprocessor indu
[Microcontroller]
Summary of common pseudo-operations in ARM assembly
In the process of analyzing the startup code in the 2410 project, in addition to some commonly used assembly such as ldr, str, bic, etc., there are some unfamiliar symbols that confuse us. After checking the information on the Internet, we found that they are some pseudo operations of ARM. In order to avoid major read
[Microcontroller]
Implementation of network remote monitoring of embedded Boa server based on ARM9 processor
As high-tech technology is gradually integrated into traditional agricultural and sideline industries, greenhouse cultivation has become a way to produce off-season crops. This paper introduces the design of a greenhouse monitoring and control system based on the S3C2410 processor, and designs a network remote monitor
[Microcontroller]
Implementation of network remote monitoring of embedded Boa server based on ARM9 processor
Research on embedded video monitoring system based on S3C2410
1 System Hardware Structure This system adopts modular structural design concept, and divides the equipment into main control module and various functional modules. There is a unified or specific interface form between the main control module and each functional module. Users can choose different functi
[Security Electronics]
Research on embedded video monitoring system based on S3C2410
Latest Power Management Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号