An Embedded QR Code Intelligent Recognition Platform Based on a Team Progress Algorithm

—In general conditions, QR codes often encounter uneven illumination, complex backgrounds, contamination and deformation because of the impact on the image acquisition process, making it difficult to identify them later and to compare them with the recognition results of OR code in team progress algorithms and genetic algorithms. A QR code recognition platform was established to achieve a powerful image and graphic display processing function and to save Visual C++ coding time by using a team genetic algorithm and the mixed programming of Matlab and Visual C++. The experimental results demonstrate the validity of the QR code decoding algorithm proposed in the article, and the experimental results also demonstrate the feasibility of the design scheme of the embedded QR code recognition system platform proposed in the article.

The recognition technology for QR two-dimension codes is a hot topic in the field of digital image processing. With the continuous development of the Internet of Things, QR two-dimension code has been gradually used in various industries and fields by means of its powerful information storage capacity, its easy and rapid reading advantages, and its safe and reliable coding techniques. Meanwhile, two-dimension code recognition and reading equipment are also being developed regarding the intelligence, miniaturization and network trends. Therefore, there is important and far-reaching significance in the research of QR code recognition systems based on embedded image acquisition and processing [1,2].

I. RECOGNITION OF QR CODE BASED ON TEAM PROGRESS
The team progress algorithm (TPA) is a double group search algorithm and an evolutionary algorithm based on artificial intelligence techniques [3]. The team progress algorithm may divide the team members into two groups, such as an elite group and general group, and imitate the learning and exploration process of the two groups. The team progress algorithm will establish their learning model and develop reasonable team member update rules. In the combined actions from the three factors: exploration, learning and member update rules, mutual competition among the members will eventually produce an optimal solution. The algorithm has many features such as strong robustness, implementation signal, and high success ratio of global optimization [3].

A. TPA's basic model s
In general conditions, the maximization problem of multivariable unrestraint may be expressed as: ) (x f , and the upper and lower limits of the search space variable are, respectively, i i b a , . The arithmetic continuously updates the members in the general and elite groups about the learning and exploration process to help the members reach an evaluation value under the expected goal in f(x). For a minimum problem, the evaluation value of the function should take the minimum value, in contrast to the maximum problem [4].
First, randomly generate N+M members and divide into the elite group e x and general group p x according to the order of the evaluation value, and then update the members according to the team update rules.

B. Algorithm implementation process
That a function value may correspond to the many variable points is a basic feature of the n-dimensional multiple extreme value optimization problem. The variable can easily fall into the vicinity of the local extreme value point when looking for the very excellent value point of the function, which this is a more difficult problem to solve. However, TPA only invokes once the function has the evaluation value and, at most, updates one member. In addition, TPA arithmetic establishes the learned behavior; TPA has a feature for the whole automation search, local search and randomly oriented search to avoid falling into the local extreme value point due to repetitive computation [5]. This is a feature in which a TPA algorithm is superior to other algorithms of the intelligent group. The complete TPA algorithm procedure may be expressed as shown in Figure 1.

C. Image recognition for QR code
A TPA model may be established according to the features of an OR code. It is supposed that the version number of QR code is n (the scope of n value is from 1 to 40), and four modules are gradually increased on each side with a progressive increase of the version number to calculate the distance between detected figures at two distances according to the structural feature of the QR code. A location diagram that consists of dark color and light color modules is distributed at the middle of the de- Their effect is to confirm the density and version of the symbol and to provide a reference position that can determine the module coordinate [6].
It is assumed that each module contains m!m pixels and is a square with the length of side of Figure 2 is a recognition mode of an OR code that has respectively the version number with 1 and 4, and the QR code symbol to be recognized may express as a two dimension point range.
is a gray value relative to the origin point coordinate module. Also, for the OR code with a rotation angle of ! , the barcode may be first corrected as: First, carry out the input image binaryzation processing and synchronize the format with the template. Because the noise and signal of the binary image have the same strength (non-zero, that is, one), it is helpful to carry out the recognition. It is supposed that the computational formula of the matching coefficient is as follows: • is an operative symbol of the dot product. We calculate the matching coefficient by the number of the same point. In this way, the matching problem of QR re- . The problems involved in the TPA algorithm have some differences between the five dimension space parameter optimization and the genetic algorithm. In addition, the team progress algorithm may directly carry out the optimization solution to the objective function without a need for the fitness function. The team progress algorithm may only invoke the objective function once and, at most, achieve a member update when carrying out the iteration every time. However, the number of times and number of groups for the objective function invoked by the genetic algorithm at the time of the iteration every time will be same.
For the problem of the maximum of searches matching in practical situation, it is considered that the recognition is successful at the time of ! >0.85 [8].
Select the parameter scope according to the features of the recognition model and OR code, as shown in Table . Where, due to human factors, it is guaranteed that the main part of the image is QR code and QR code may be fully accommodated. It is defined that the width of the image containing QR is w and the height is h.

D. Experimental result
Use the above TPA algorithm to recognize the OR code and respectively collect the image of the QR code under three types of complex environments and then repeatedly carry out the test at the computer platform with CPU Intel Core2, basic frequency 2.1GHz, RAM 2GB, and a Windows XP operation system. QR codes with three pictures are respectively impacted by (a) QR code with a defiled corner, (b) QR code with a blurry location detection figure, or (c) an image of QR code under strong light, as shown  After carrying out the filtering process and binaryzation, use the TPA algorithm to recognize and detect the location in the image, and then carry out the recognition and decoding operations. Repeatedly carry out the recognition operation for each image 30 times and then obtain the experimental results, as shown in Table II. Where, N expresses as time of the succeeds and min C and max C , respectively, express as the minimum and maximum number of calculations.
To contrast the recognition effect of the algorithm, the genetic algorithm and TPA algorithm are simultaneously used in the recognition category of the (b) and (c) drawings in Figure 3. Alter the parameter settings to obtain the results shown in Table III.
The test demonstrates that the use of a TPA algorithm may rapidly locate the QR code, carry out the rapid convergence, and reduce the operation times. In addition, the use of a TPA algorithm may expand the use scope of the QR code. However, the genetic algorithm requires operation and processing for at least 8,000 times or longer to carry out the recognition. The genetic algorithm has a lower image recognition rate of QR code with a larger interference. With the increase of the version number of QR codes and a decrease in the number of pixels, the success rate of the genetic algorithm will be greatly decreased, but a TPA algorithm may carry out the classification of the image. A TPA algorithm may update the team members by means of repeated searches for the optimal value and has a better matching and extraction effect on the recognition of the template of QR code with a high version. In addition, the TPA algorithm may also extract the detection figure and calibration module of the image [7].

A. System Flow
The decoding process that may collect QR code from the input equipment to output the information is virtually an inverse process of the coding. Figure 4 is a coding flow diagram for QR code. In addition, the recognition process also needs to carry out the partitioning of QR code, and each graphics field will build an independent sampling area, as shown in Figure 5.
If the recognition of QR code is used in the differently embedded systems (Windows/Android OS), after completion of the code design of the image processing and decoding, the code will be transplanted into the hardware platform to achieve recognition of the OR code according to the different operating system.

B. Implementation of Mixed Programming Technology
This project will achieve a high-efficiency QR code recognition system platform in combination with Matlab and Visual C++ technology.
The mixed programming of Matlab and Visual C++ offset the defects of Visual C++ in terms of complex programming and a long development period. The mixed programming of Matlab and Visual C++ may also determine the advantages of Matlab in terms of data processing, matrix calculation and signal processing, especially the powerful advantage of digital image processing. The combination of both will improve software development efficiency to ensure developed software has higher performance, more reliable confidentiality and a greater range of application.
Before carrying out the mixed programming, first set the environment variables and then prepare the digital image processing algorithm in Matlab and save it in the form of an M function file. After that, make use of the compiler built into Matlab to generate COM components. In the Visual C++ environment, carry out initialization of the COM library after getting the image data and then save the obtained image data in the safety array for the invocation of COM components. Finally, output the data after completion of the processing according to original algorithm flow. The detailed technological process is shown in Figure 6.
Meanwhile, use the Matcom compiler to translate the Matlab source code into C++ code with the same features. Matcom is the first compiling development software platform from Matlab to use C++ provided by the Mathworks Company. However, in general conditions, the time for the mixed programming of Matlab and Visual C++ is shorter than the run time of Matcom, and the operational efficiency is higher.

C. System Test
In combination with the TPA image processing algorithm, carry out the filtering, smoothing, binaryzation, edge detection, and rotation calibration to the original image (Figure (a)) of the QR code populated in Figure 7 at the Android Platform, so as to successively obtain Figure  ( The mixed programming technique of Matlab and Visual C++ in this article has been widely used in the edge extraction of the image of QR code to carry out edge detection on the image by using a canny operator built into the Matlab function library. After testing, it was proved that the technology may improve procedural operating efficiency, extend compatibility of the different platforms, and have a great effect on further research and development.

III. CONCLUSION
This article analyzes the application of an artificial intelligence algorithm in the recognition of QR code and the use of an artificial intelligence algorithm to forward the improvement and establish the recognition model of  QR code to solve problems frequently encountered in the recognition of QR code [9].
This article focuses on researching the basic model of the team progress algorithm and the algorithm implementation process in the recognition of QR code. This article also compares the recognition results of the QR code of the team progress algorithm and genetic algorithm. The results show that the use of a team progress algorithm may rapidly determine where QR code is located and has higher stability and portability. The team progress algorithm and BP neural network algorithm have been improved to introduce the momentum factor and adaptive learning rate to BP neural network algorithm and to carry out training and recognition of QR code images. Finally, this article applies a team progress algorithm to the mixed programming of Matlab and Visual C++ to present their respective advantages in two development platforms and achieve high efficiency and expandability of a QR code recognition system.