The rapid development of modern society, many occasions need identification, traditional identification technology can not meet the social requirements. Human body features are non-replicable, so people began to study biometric technology, and fingerprint is unique, life-invariant, difficult to forge and other characteristics, high security, and thus has been widely used. In some confidential departments, such as banks, hotels, computer rooms and so on generally equipped with access control system , access control system is to protect people's lives, work and property security, access to important channels of management and control system, based on fingerprint identification technology Access control system is a high-tech security facilities, improve the security of the system. As an embedded system processor with high performance, low power consumption and low cost, ARM has been widely used in the field of industrial control, imaging and security products. This paper introduces the principle and processing method of fingerprint recognition based on embedded ARM9 architecture, as well as the software and hardware design method of fingerprint recognition access control system.
1 fingerprint recognition principle and processing method
Fingerprint identification technology through the analysis of local characteristics of fingerprints, extracting detailed feature points, so as to reliably confirm the identity of individuals. Fingerprint identification technology mainly involves four functions: reading fingerprint image, extracting features, preserving data and matching. Firstly, the "feature point" is found on the fingerprint image, and then the fingerprint characteristic data of the fingerprint of the user is established based on the characteristics of the characteristic point (a unidirectional conversion, which can be converted from the fingerprint image to the characteristic data, but not from the feature data to the fingerprint image). Since two different fingerprints do not produce the same characteristic data, the pattern matching is obtained by the characteristic data of the fingerprint image collected and the fingerprint characteristic data stored in the database, so that the similarity degree is calculated, and finally the matching result of two fingerprints is found, and the user identity is identified according to the matching result.
1.1 Acquisition of fingerprint image
Optical image has a long history, it can be traced back to the 70 's, based on the principle of total reflection of light. Now generally using optical fingerprint sensor to capture fingerprints, fingerprint has a clear image, low power consumption, high stability characteristics. This system uses the tfs-d0303 optical fingerprint sensor.
1.2 Algorithm realization of fingerprint recognition
The validity of fingerprint recognition algorithm directly affects the accuracy of fingerprint recognition and the security and stability of the access control system, which plays a decisive role in the security and reliability of the whole access control. The processing process of fingerprint recognition algorithm mainly includes image processing, texture refinement, feature extraction and feature matching (see Figure 1).
Figure 1 Fingerprint identification flowchart
Preprocessing is an indispensable step in fingerprint recognition. The aim is to remove the noise from the image acquisition and eliminate the influence of the low-quality image, so that the feature extraction and classification can be identified correctly in the subsequent links. The pretreatment process mainly includes image segmentation, smoothing, image enhancement, binary and refinement, and each step can improve the quality of the image, which is beneficial to the later work.
The effect of ambient temperature or the drying of fingers may cause the fingerprint image to produce a line discontinuity. For the fingerprint line is not continuous fingerprint image, generally through smoothing filter processing, which is also to blur the image, so that the fracture of the line boundary blurred after the connection. In this algorithm, the low-pass filter is used to smooth the direction information of each block fingerprint image and correct the inaccurate calculation results.
The specific method is to calculate the projection components of θ (x, y) on the x and Y axes first:
Low-pass filtering is expressed as:
, H (U, v) is a two-dimensional lowpass filter, the WLXWL is a 5x5 filter size, and W is the size of the image sub-block (this algorithm takes w=10 pixels).
After grain refinement, the alignment of the binary image is refined into a connected segment with a width of only one pixel. The original fingerprint image, the enhanced two-valued image, and the refined two-valued image are displayed. The characteristic point information of fingerprint is extracted from the refined two-valued image. Find the fork or end point from the refined two-valued image, and start looking for the grain trajectory from these points. Through these points, the shape of the grain is calculated. The shape data, the type of point, and the location of the point are recorded as the feature points of the fingerprint image.
Feature matching is determined based on the maximum matching point support number of two image feature points. Suppose there are two images of a and B, in order to calculate the distance and direction of each feature point of the same Datum feature point in the B image, according to this distance and direction, and then the Datum point in a map as the Origin point, a point in a graph is calculated by the reference of each characteristic point of a graph. Then determine if it is also a feature point of the graph, and if so, the matching support number plus 1. According to the order of the feature points in a graph, the maximum number of two images is the maximum supported matching points.
If the maximum matching support point is greater than the specified value, the two images are considered to match. Otherwise, it does not match.
2 System Hardware Design
The ARM microprocessor based on RISC architecture has been widely used in many fields because of its small size, low power consumption and fast execution speed. The system uses Samsung's embedded microprocessor S3c2440al, a high-performance, low-power, powerful embedded application processor product that uses the Intel X-scale microarchitecture Framework, which integrates many common peripheral interfaces and is powerful. The S3c2440al frequency is 400MHz, the maximum 533mhz;tfs-d0303 fingerprint sensor is composed of 256x300 capacitance sensor array, its resolution is up to 500dpi, the operating voltage range is 3.3~5v, the sensor internal 8-bit ADC, and has 2 sets of sample-and-hold circuits. The entire hardware system is shown in block Diagram 2.
Figure 2 system hardware structure diagram
The system memory interface uses 128MB SDRAM memory, supports 16, 64, 128, 256MB DRAM technology, 4 SDRAM zones, and each zone supports 64M memory. Clock permitting (a cke pin is used to set the entire SDRAM interface to self-refresh), supports up to 6 static memory devices (SRAM, Flash, ROM) and supports 2 PCMCI/CF slots.
The clock uses a 3.6864MHz oscillator with a nuclear PLL and peripheral PLL to produce a variety of operating frequencies, and a 32.768kHz oscillator drives the real-time clock, Power Manager, and interrupt controller. The power controller controls how fast/running, idle, and sleep work. The LCD controller supports both passive (DSTN) and active (TFT) LCD displays, with a maximum resolution of 800x600x16,2 dedicated DMA channels, allowing the LCD controller to support single-or double-layer displays. A real-time clock (RTC) that generates periodic interrupts to wake the application processor from sleep. Serial port communication USB slave module, compliant with USB specification, supports v1.1 version, supports up to 16 endpoints providing 48MHz internal clock.
3 System Software Design
The software design of this system mainly has the following several processes: power-up system initialization, fingerprint identification , control electric lock open. The precision of the system mostly depends on the algorithm of fingerprint recognition . The program initializes the low-power mode of the backward person, waiting for a variety of specific operations. When there is fingerprint acquisition, it enters the fingerprint data acquisition and processing module, after processing, and then re-return to the low-power wait mode, waiting for other operations. Similarly, when the reading card data or the clock setting response, it enters the corresponding operation module to handle.
3.1 Initialization of the S3c2440al
System initialization is a system initialization code (3) in its program memory for a nested system. After the initialization code is executed, other applications are executed correctly, and initialization is done automatically after the system reset. The initialization of the system must include the following initialization code, a set interrupt vector table, initialization register, initialize the stack pointer register, initialize the port, change the processor's operating mode. The system can be interrupted in user mode. In the initialization of the fingerprint sensor, the control register should be initialized as required.
Figure 3 Initializing the flowchart
3.2 Fingerprint capture
Fingerprint capture can work in the interrupt mode, and can also work in query mode. This system uses the query work mode. The program flow is roughly as follows, first initialize each register, first to the corresponding register to write control words, set the parameters of the acquisition fingerprint, when the fingerprint is automatically collected into the data register, the fingerprint data into the specified storage space.
3.3 Communication with the computer
RS232 serial port is used for communication between S3c2440al and host computer, when the image is too large, the image can be stored on the upper computer. The S3c2440al UART can operate in interrupt mode or DMA mode. This system chooses the interrupt mode, also may use the query way. The program can control the port baud rate, data width (5, 6, 7, 8 bits), stop bits (1 to 2 bits), polarity control and other communication protocol settings.
4 concluding remarks
This paper introduces the hardware and software design of the fingerprint identification Access system based on ARM . ARM Architecture has a rich interface, in access control, monitoring and other areas are playing an increasingly important role in the development of an integrated, portable specific embedded systems more and more in the field of engineering applications. In this paper, the fingerprint recognition access control system has the advantages of portability, easy installation and low cost, and has good development prospect.
Design scheme of fingerprint identification access system based on ARM