0 Preface
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 uses a four-point correction 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. [page]
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.
Previous article:Design of multi-channel CAN bus interface circuit based on MCP2515
Next article:Design of robot servo controller circuit based on COMX and STM32
- Popular Resources
- Popular amplifiers
- Learn ARM development(16)
- Learn ARM development(17)
- Learn ARM development(18)
- Embedded system debugging simulation tool
- A small question that has been bothering me recently has finally been solved~~
- Learn ARM development (1)
- Learn ARM development (2)
- Learn ARM development (4)
- Learn ARM development (6)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- Let’s talk about the “Three Musketeers” of radar in autonomous driving
- Why software-defined vehicles transform cars from tools into living spaces
- How Lucid is overtaking Tesla with smaller motors
- Wi-Fi 8 specification is on the way: 2.4/5/6GHz triple-band operation
- Wi-Fi 8 specification is on the way: 2.4/5/6GHz triple-band operation
- Vietnam's chip packaging and testing business is growing, and supply-side fragmentation is splitting the market
- Vietnam's chip packaging and testing business is growing, and supply-side fragmentation is splitting the market
- Three steps to govern hybrid multicloud environments
- Three steps to govern hybrid multicloud environments
- Microchip Accelerates Real-Time Edge AI Deployment with NVIDIA Holoscan Platform
- AT32WB415 Review] 6. Using batteries to power the RTC
- The difference between SOP packaged voice chip and DIP packaged voice chip!
- A live broadcast + 2 notes, practice and understand the Linux secure boot steps of MPU
- EEWORLD University ---- VLSI Basics
- I took some photos of some antique instruments from my grandfather
- Qorvo Technical Video: UWB for Automotive Applications: An Engineering Primer
- CC2530/CC2540/CC2541 Common Registers
- [ESK32-360 Review] + OLED screen driver
- How to use MSP430 watchdog
- 0-10V LED Dimming Latest Solution (1)