Chapter 2. Hardware and software used in license plate recognition

|
Chapter 2. Hardware and software used in license plate recognitionBog'liq m12 2.1 Information about the algorithms and methods used in vehicle number recognition
Currently, automatic license plate recognition systems are in demand in a wide variety of areas. For example, they are used in the work of motor transport enterprises, service stations, car parking lots, etc. Such systems make it possible to control the presence of cars in the service area, determine the time for servicing customer cars, the number of free parking spaces, and record the time of stay car in a specific zone, organize automatic entry and exit of cars, etc. In addition, the ability to automatically recognize vehicle license plates is an important aspect of monitoring and ensuring road safety due to the constantly increasing number of vehicles on the roads.
Automatic license plate recognition systems mean a software or hardware-software complex that implements automatic license plate recognition algorithms for recording events related to the movement of cars, i.e. to automate data entry and subsequent processing [5].
Automatic license plate recognition is based on the following procedures [7]:
1) localization;
2) normalization;
3) segmentation;
4) recognition;
5) syntactic analysis.
The first procedure is designed to detect and localize the area with the vehicle registration number on the image. Next, the found area is cut out from the original image and examined separately. Normalization consists of bringing the size and orientation of the image with the number obtained in the previous step to the required form. Here geometric transformations, noise reduction, brightness changes and contrast. The segmentation procedure ensures that the image is divided into familiar locations, i.e. highlighting areas of individual characters. The recognition procedure is designed to generate a string of license plate characters. The last procedure (parsing procedure) is performed to determine the elements of the string containing the number characters. These elements may vary according to the standards of the vehicle registration countries. For example, in the Russian Federation, the standard defined by GOST R 50577-93 is used (as amended by orders of the Federal Agency for Technical Regulation and Metrology)1.
Various algorithms are used to localize the license plate area in the image. For the most part, they are based on binarization, contour extraction, and morphological image processing. In this case, it is assumed that the original color image is converted into a halftone form. Image binarization consists of dividing all the pixels of a halftone image by brightness into two classes - object and background. Automatic license plate recognition systems can use both global and local image binarization methods. However, adaptive approaches are more preferable due to the ability to compensate for the influence of noise on various parts of the image, for example, the distribution of shadows due to illumination inhomogeneity. Along with binarization, edge detection can also be used [1]. To eliminate small details and breaks, morphological image processing methods are often used. As a result of these procedures, connected sequences of binary image points contours are formed. At the final stage of the localization procedure, it is determined which of the resulting contours is the boundary of the license plate area.
Thus, we can propose the following algorithm for localizing the license plate area in the image:
1) convert the original color image containing the license plate into a grayscale form;
2) perform image processing with gradient operators, for example, Sobel or Prewitt, the result of which is an image whose value of each pixel is equal to the gradient module at the corresponding point of the original image;
3) perform adaptive binarization of the image obtained in the previous step;
4) perform a morphological closure operation with a rectangle as a structuring element;
5) determine the contours in the image;
6) identify areas limited by contours;
7) select the area whose parameters correspond to the license plate number.
An alternative approach for localizing the license plate area in an image is based on the Viola–Jones method, developed and presented in 2001 by P. Viola and M. Jones [8]. The Viola-Jones method is one of the most famous methods for searching for objects in an image in real time. This approach allows you to find the number area in complex and atypical conditions. The Viola-Jones method is based on the use of a set of Haar characteristics. The Haar sign consists of adjacent rectangular areas that are positioned in the image, then the pixel intensities in the areas are summed, then the difference between the sums is calculated. The region detection stage of the Viola–Jones method uses a window of a certain size that moves across the image. The Haar sign is calculated for each area of the image over which the window passes. The presence or absence of an object in the window is determined by the difference between the value of the feature and the trained threshold. High accuracy of detection of specified objects in the image is ensured by the cascade classifier.
Approaches based on contour analysis can find numbers of different sizes and at different angles. However, they have several disadvantages:
1) the image of a car may contain many rectangular objects, similar in outline to a license plate;
2) relatively high computational complexity - even on a small image, the detection time can reach several seconds;
3) they are based on the analysis of number boundaries, which is not always possible in real conditions. For example, images of dusty cars may not have clearly defined boundaries.
The approach based on the Viola-Jones method seems to be more effective for localizing the number. The corresponding procedure actually analyzes the desired area for the presence in it of relations, points or gradients characteristic of the number, identified at the training stage using positive and negative examples. At the same time, using some known relationships, you can further improve the search efficiency. For example, the initial value of the scanning window can be set based on the dimensions of the license plate 520x115 mm according to GOST R 50577-93. The disadvantage of this approach is the relatively low degree of invariance to affine and projection distortions of objects in images.
After localizing the image area with the license plate, it is necessary to generate an image containing only the license plate and perform its normalization. In the simplest case, normalization consists of rotating the corresponding rectangular area so that its orientation coincides with the orientation of the axes of the image coordinate system. But, as a rule, you often have to trim the license plate horizontally and vertically. You can also perform filtering to reduce noise or enhance contrast.
As a rule, the selected area with a number is relatively small in size and contains the boundaries of the number, horizontal stripes outlining the bumper and radiator grille. Therefore, to determine the angle of rotation of the number frame, you can apply an algorithm based on the Hough transform for lines. The algorithm is as follows:
1) lines are determined whose length is more than half the width of the number area;
2) a straight line is formed from the average values of all points of the resulting lines;
3) the angle between the resulting straight line and the horizon line is calculated. The next stage of normalization is to find the boundaries of the frame of the no-license plate number plate. For this purpose, intensity histograms are used horizontally and vertically, respectively. To construct histograms, it is necessary to sum the values of all pixels of a binary image in rows or columns, then select the maximum and filter out all values less than 20% of the maximum.
The next procedure, as mentioned above, consists of identifying familiar places in the image (segmentation). The simplest approach for character segmentation is to use a predefined template [4]. The template can be represented as an image of dark rectangles corresponding to the symbols on a light background, as shown in Pic. 1. The main requirement for effective segmentation here is the correct determination of the license plate frame at the normalization stage, and any deviation from the actual will contribute to the deterioration of the segmentation of license plate symbols dimensions
Pic. 2.1.1 Template for the arrangement of symbols on the vehicle license plate
The next approach is based on constructing a horizontal projection of average intensity [2]. The essence of this approach is that the average intensity in each column of the number image is calculated and the columns in which the average intensity differs significantly from the threshold value are determined (Pic. 2.1.2).
Pic. 2.1.2 Histogram of brightness distribution of license plate pixels
Another method is based on contour analysis [6]. After obtaining contours that represent connected sequences of the binary image points, those that are the boundaries of the car number symbol areas are determined. This is achieved by filtering contours that satisfy certain requirements for the relationship of geometric characteristics [2]. An example of the operation of the corresponding algorithm is shown in Pic. 2.1.3.
Pic. 2.1.3 Result of license plate character segmentation
The method based on the use of templates is very simple to implement and does not require complex operations associated with image analysis to search for characters, but for its operation it is necessary to accurately select the boundaries of the license plate frame, which is not always feasible in real conditions. Histogram analysis of an image is highly sensitive to noise and defects in the image, especially in the spaces between characters. As a result, histograms may not reveal clear peaks in the spaces between symbols. In this method, difficulties may also arise when selecting regional symbols, since under them there are symbols of country affiliation. Segmentation based on contour analysis is less demanding on implementation conditions, since it uses generalized geometric features.
To recognize characters, it is necessary to reduce each of them to a predetermined standard form. Typically, this comes down to scaling and binarizing the characters to achieve the best contrast between the characters and the background. After pre-processing, various recognition methods can be applied to the corresponding selected familiar places. Template matching methods, methods based on moment analysis, and support vector machines are often used.
The advantages of template methods are ease of implementation and resistance to defects in the image of characters. The main disadvantage of template methods is the inability to recognize characters that are subject to affine and projection distortions and differ from the templates embedded in the system.
The advantage of using image moments to extract character features is that it is highly resistant to changes in image scale and other geometric transformations. The disadvantage of using them is their high sensitivity to noise and defects in the image, as a result of which characters may be incorrectly classified.
The advantage of the SVM method is that to build a classifier for character recognition, a relatively small training sample size is sufficient. In addition, it has a low error rate. The disadvantage of this method is that the classification process does not take into account the entire data set, but only the part closest to the boundary separating the classes. The support vector machine seems to be the most effective for recognizing license plate characters.
The drawn conclusions on the effectiveness of the implementation of each of the procedures were confirmed as a result of experiments with the developed software. The experiments were carried out on a dual-core personal computer with Intel Core 5i processors, clock frequency 1.6 GHz, 4 GB RAM, running the Windows operating system. The software is developed in C# language using the Emgu computer vision library. The results of the experiments are given in table. 1–4. In table Pic.s 2–3 show the results of the analysis of images of license plates obtained by rotating the image plane relative to the camera (Pic. 2.1.2).
Таble 1. Recognition time depending on the distance to the object
Distance to object, m
|
Localization time, s
|
Recognition time, s
|
Total processing time, s
|
1
|
0,67
|
0,26
|
0,93
|
2
|
0,69
|
0,28
|
0,97
|
3
|
0,84
|
0,29
|
1,13
|
4
|
0,94
|
0,29
|
1,23
|
5
|
0,81
|
0,32
|
1,13
|
6
|
0,89
|
0,31
|
1,20
|
7
|
0,85
|
0,29
|
1,14
|
8
|
0,91
|
0,29
|
1,20
|
9
|
0,79
|
0,31
|
1,10
|
10
|
0,85
|
0,31
|
1,16
|
Таble 2. License plate recognition when turning in plane
Angle of rotation
|
–25
|
–20
|
–15
|
–10
|
0
|
10
|
15
|
20
|
25
|
Percentage of correct recognition
|
50
|
82
|
95
|
100
|
100
|
98
|
96
|
79
|
37
|
Таble 3. License plate recognition when rotated vertically in space
Angle of rotation
|
–70
|
–60
|
–40
|
–20
|
0
|
20
|
40
|
60
|
70
|
Percentage of correct recognition
|
53
|
87
|
98
|
98
|
100
|
97
|
98
|
90
|
52
|
Таble 4. License plate recognition when rotating horizontally in space
Angle of rotation
|
–40
|
–30
|
–20
|
–10
|
0
|
10
|
20
|
30
|
40
|
Percentage of correct recognition
|
63
|
95
|
98
|
100
|
100
|
100
|
99
|
92
|
57
|
Pic. 2.1.4 Rotations of the image plane on the plane (left), in space vertically (center), in space horizontally (right).
Thus, an effective automatic license plate recognition system can be built based on the Viola–Jones method for localizing the license plate area in the image, Hough methods and pixel brightness histogram analysis for normalization, contour analysis for segmentation and the SVM method for character recognition.
The developed algorithms made it possible to ensure the recognition of license plates that comply with GOST R 50577-93 (group 1, type 1) with an accuracy of at least 85% at various rotation angles.
The problem of automated online recognition of text information is an urgent task associated with a wide class of practical applications. One of these tasks is license plate recognition. Creating an automatic system that registers license plates allows you to:
• automate control of entry and movement of vehicles at facilities with limited access and closed areas;
• monitor entry and exit to parking lots, automatically calculate the cost of services provided, and control free space;
• automate control of the departure of paid or unpaid vehicles at service stations and car factories, control the load of the service area;
Pic. 2.1.5 General structure of a typical license plate recognition system
• monitor the entry, exit and time spent of vehicles on the territory of the warehouse and terminal, prevent possible thefts;
• on highways, ensure control of traffic flows and carry out automatic tracing of stolen vehicles and those with a record of offenses;
• automate the collection of statistics for municipal services.
Today, there are already several systems for automatic recognition of license plates in the world. All of them are far from perfect and are constantly being modified. However, the general structure and solutions to this problem have already been formed (Pic.2.1.5).
The image capturing device is a video camera. There are a number of restrictions imposed on the installation of a video camera. The optical resolution of the camera is selected so that the number plate occupies horizontally from 25 to 33% of the frame. The maximum permissible vehicle speed at which recognition is possible depends on the angle of the camera to the road surface. The work declares: “The typical camera tilt angle should be 40° so that the car in front does not block the next one,” which also imposes a number of restrictions. The vertical size of the number plate decreases in proportion to the cosine value o f the camera tilt angle.
Pic 2.1.6 Steps involved in License Plate Detection, Registration and Segmentation.
|Consequently, it is necessary to increase the optical resolution, which leads to a reduction in the width of the field of view. Some license plates can be installed with an inclination towards the road surface. At a large angle of inclination, recognizing such license plates is very problematic. Horizontal installation of the video camera is considered optimal, i.e. at the level where the number plate is located. This installation is used in systems for automatic entry into closed areas, parking, etc.
Another important parameter is the minimum permissible contrast of the license plate image. In some systems, an additional module is installed, consisting of infrared illumination and a corresponding filter [2]. This approach allows you to increase the contrast of the license plate in relation to the rest of the image. This technology is based on the fact that the license plate has a special reflective coating, in which the reflected light propagates in the opposite direction to the propagation of the incident light (i.e., the angle between the incident and reflected beam is 0°), due to whereby the camera will perceive mainly infrared light and light reflected from the license plate (Pic. 2). The picture in this case will be monochrome without details, with the exception of the license plate.
Preprocessing of the resulting image includes the following steps.
1. Image correction – equalization, limitation of extreme brightness values, modification of the brightness distribution histogram.
2. Elimination of the image blurring effect that occurs due to the fact that the vehicle speed is greater than the registration speed (shift compensation).
3. Elimination of redundant information – use of infrared (IR) illumination, binarization, splitting the image into separate color regions.
4. Using a software motion detector to localize the car in the image.
Pic. 2.1.7 Image preprocessing: a) original image, b) using IR illumination, c) binarized image
The disadvantage of preprocessing with binarization is that the selected binarization threshold does not provide the required quality for any type of image. Factors such as lighting or even the color of the vehicle affect the quality of the image binarization. The use of adaptive binarization methods, however, makes it possible to solve this problem more qualitatively.
One of the approaches used to localize the license plate is the method of detecting image boundaries using algorithms such as the algorithm of Sobel, Kenny, Robinson, etc. [3]. The edge detection algorithm must detect both horizontal and vertical edges. The resulting image, after highlighting the edges, should contain a large number of lines in the area of the license plate plate, since it contains symbols. This is the main property that is used to highlight the license plate area in the image.
To localize the license plate area, a window is created approximately equal to the size of the license plate plate in the image. This window is used to estimate the number of edges in all areas of the image that have the greatest contrast. The window is superimposed on the resulting image in the most contrasting areas. If the number of edges is in the specified range, then this area is marked as an area that may contain a license plate. The required number of faces is determined experimentally.
But. The result of this window is a list of possible candidate areas that may contain a license plate plate. Main
The disadvantage of this approach is that the candidate selection process is slow, since the values of all pixels in the selected window must be summed repeatedly. Another disadvantage is the recruitment of a large number of license plate candidates.
An alternative approach for license plate detection is the Hough transform, which is used to detect areas of various shapes in an image, such as a circle, ellipse, straight line, etc. [4]
The input of the Hough transform is a binary image with vertical and horizontal selected edges. At the output of the transformation, we obtain a set of straight lines that limit the proposed license plate, that is, a list of possible candidates for the location of the license plate plate.
The Hough transform algorithm for straight line detection is as follows.
1. Selecting the starting pixel A(x,y).
2. Selecting the final pixel B(x,y).
3. Counting binary image points along line AB. rectangle describing the car number
4. If the number of counted pixels is greater than the specified threshold value, then the AB line is present in the image and is marked.
5. Return to step 1 and select two more pixels until the last image point is reached.
Horizontal and vertical pairs of lines are compared. Horizontal and vertical pairs of lines that make up a rectangle with a ratio of sides approximately equal to the ratio of the sides of the number plate are marked as an area possibly containing a number.
One of the disadvantages of the Hough transform is the fact that the vertical lines on the license plate are much shorter than the horizontal ones and, therefore, can be noisier.
Once the license plate has been localized, the character detection operation is performed. To eliminate redundant information, a binarization algorithm is used. The threshold is selected in the algorithm based on the brightness histogram of the image, which is a one-dimensional array H, each cell of which contains the number of image points with intensity value I.
According to observations, a license plate has the following property: the average area of all symbols is about 23% of the area of the entire license plate, which is rectangular in shape. For different numbers, deviations from this value do not exceed 5%. In this case, the binarization threshold T can be determined by the following expression j=0 T-1H[ j] 0, 23S, where S is the area b of the rectangle describing the car number. The result of this algorithm is presented in Pic. 2.1.7.
Pic. 2.1.7 Binary image
Pic. 2.1.8 Horizontal projection (average intensity distribution) of the number plate
The next step is to search for individual characters. For this purpose, we use a method based on constructing an average intensity projection (Pic. 2.1.8). The essence of this approach comes down to the following:
the average intensity in each column is calculated, and in places where there is no symbol, the average intensity will differ significantly. Then, performing the same operation on lines, a set of individual characters is obtained that can already be recognized.
After performing this operation, we can receive both symbols and various interference that need to be eliminated. This is achieved by checking a number of conditions that the symbol must satisfy as a geometric object.
First, the dimensions of the rectangle describing the candidate region are calculated. Checking the condition 0.9≤a/b≤3.5 is met, where a and b are the width and height of the object, respectively. Objects that do not satisfy this relationship are discarded from consideration.
Secondly, the fulfillment of conditions is checked; those that do not satisfy this relationship are discarded from consideration.
Secondly, the fulfillment of the condition 0.4 b/h 0.9 is checked. where h is the height of the rectangle, describing the car number. This relationship imposes a limit on the minimum and maximum height of characters in relation to the height of the number.
Finally, the third condition aims to remove small areas of no interest. Among the objects that satisfy the above-described
Under certain conditions, an object with the maximum area of the describing rectangle Smax=a*b is selected. Then, among the remaining areas, those are selected
which satisfy the condition S/Smax 0.1, where S is the area of the rectangle of the candidate object.
Checking these simple conditions allows you to eliminate all unnecessary objects, selecting only eight digits of the number (Pic. 5).
Pic. 2.1.9 Highlighted characters
Since the license plate contains a limited set of characters in a fixed font, in this case it is advisable to use a font recognition algorithm. The principle of operation is based on direct comparison of the symbol image with the standard. The degree of dissimilarity is calculated as the number of mismatched pixels. To ensure acceptable accuracy of the template method, preliminary image processing is required: normalization of the size, slope and thickness of the stroke. The standard for each class is usually obtained by averaging the symbol images of the training set.
This method is easy to implement, works quickly, is resistant to random image defects, but has a relatively low accuracy. Widely used in modern character recognition systems. To recognize characters, we use one of the modifications of the font algorithm – the zone method [6]. This method is based on comparing the zone representation of a symbol image with a reference set of zone representations of symbols. Therefore, the recognition algorithm consists of three main procedures: training, loading a set of reference zone descriptions, and recognition.
At the training stage, a complete reference set of binary images of symbols, images of all valid symbols, was used. In this case, for each reference image in the set the following actions were performed.
• Determine the minimum rectangle containing all black pixels.
• Uniform division of the frame into NхM rectangular zones.
• Counting the number of pixels belonging to each zone.
Formation of a zone description vector consisting of the number of black pixels for each zone, normalized by dividing by the total number of black elements of the entire image.
The number of pixels belonging to each zone is counted by voting black pixels. In this case, each pixel is considered as a square of size 1х1, the position of the zone boundaries is calculated with subpixel accuracy, and each black pixel votes in favor of those zones with which it intersects, with a weight equal to the intersection area.
As a result of the training stage, for each symbol, a zone description file, a symbol name in ASCII code, and a zone description vector of size NхM with elements of float type are generated. The zone description vector is written line by line, from left to right, top to bottom.
When loading reference data, the reference file is read and a corresponding list of reference vectors of zone descriptions is generated.
When analyzing each symbol, the following operations are performed:
1. formation of a zone description vector;
2. formation of a distance vector;
3. symbol classification based on the distance vector.
The formation of the zone description vector is carried out as described earlier for reference images.
T he formation of a distance vector involves sequential calculation of Euclidean distances between the vector of the zone description of the tested symbol and the vectors of zone descriptions of each standard in the list. Classification of a symbol is carried out by analyzing the distance vector and selecting the “nearest neighbor” among the standard zone descriptions.
Pic. 2.1.10 Reference image of the symbol “8”
Taking into account the structure of the strokes of the characters, for the size of the character images of the order of 10х15 pixels, the optimal number of zones will be NхM, where N=5 and M=5. With this choice of zone resolution, the used method of normalizing the zone description vector makes it possible to ensure the stability of this recognition method to changes in the thickness of symbol strokes due to instability of the brightness characteristics of the image.
In Pic. Pic. 2.1.10 shows the reference image of the symbol “8”, the division into zones and the pixel weights of each zone.
The sequence of algorithms described above was used to create a program for searching and recognizing license plates. The program was developed in the Delphi 7 environment and tested on 200 images, the probability of recognizing a license plate was 85%.
2.2 Operating principles of the device and modular used in recognition of car number plates based on artificial intelligence
In fact, illegal parking causes economic losses and increases traffic on the streets. At the same time, an orderly arrangement of cars, which is understandable for every participant of the movement, can, on the contrary, bring good income and bring convenience to people in using the parking lot.
Benefits of license plate recognition:
Parking management system works in automatic mode. Using reliable security guards, eliminating the human factor in the decision to pass the security guard, as well as the impossibility of reaching the object through communication;
Traffic control. The ability to control and manage the movement of vehicles at single entrance, multi-storey parking lots and intersections. As a result, the capacity of the object increases significantly and emergency situations are excluded;
Magnetic cards are another option. They can record information about the number of parking hours, enter personal information about the customer using a unique code, and also give discounts for regular customers. Maps are the most popular and the main operating tool of many hotels for managing gated parking near secure facilities, various businesses or office centers. Its work process has the ability to provide convenient, quality service for guests.
Before purchasing equipment for parking lot automation, you should answer a few basic questions:
Location and number of entrances and exits;
Availability of ramps, their variety and location;
Optimal placement of the maximum number of parking spaces, taking into account the requirements of traffic rules for transport interchange schemes;
Defining the target audience. Which customers frequent the parking lot, temporary or permanent;
How cash transactions are carried out - manually or using automatic means;
What technical carriers of customer data are used (appropriate data readers are selected);
How parking spaces and time are accounted for;
Is the license plate identification system installed;
Will a security and locking system be installed?
Vehicle number recognition complexes are universal and can be used both in surface parking lots and multi-story high-rise and underground structures. Their main purpose is to ensure the safety of vehicles, drivers, passengers and workers. The second main function is to automate the accounting and payment process as much as possible, preferably without involving the human factor. In addition, toll parking automation systems must perform the following functions: the parking lot project serves to occupy a small space for many cars, to keep it in a safe position, and people who park their cars in it can do all their work in peace. One of the most important parts of the project is the robotic devices that make them up. Each of them has its own role and position.
The following devices and modules were used in the project:
Arduino/Raspberry PI/Computer
Tape camera
Wi-Fi module
LCD screen/ your computer monitor
RGB diode
servo motor.
Before starting, it is necessary to understand why such modules are needed at all. After all, Arduino seems to be a microcontroller to which any sensor can be adapted. But in fact, everything is not so simple, only due to the software part and other features of the system, there are special Arduino modules to expand the functionality, which allow the microprocessor to be adapted to any needs of the user. This is the main function that explains the need for modules, in addition to this there are other reasons to choose Arduino:
A set of standardized sensors with the same characteristics makes it possible to write universal solutions for different situations. So, if you want to implement a project, you don't need to independently learn a programming language and create a unique electrical circuit. In most cases, the ready-made system or some of its parts can be freely used, the engineer only needs to combine them correctly, which significantly saves time in the implementation of ideas.
Ease of working with Arduino. The standardization described above allows you to make sure that the sensor or special module you buy does not need to be connected using additional rings or adapters. Although sometimes it is necessary to independently solder the platform for Arduino, in most cases you can buy ready-made for certain modules and needs. In addition, there are universal boards that fully reveal the possibilities of the modular system[53].
Sensors. Various systems or controllers that allow reading, sending and processing information. Although the latter sometimes belong to the second class of modules, since they are closely related to input / output devices, it is better to classify them as sensors, especially since they perform two functions at the same time. All these devices are aimed at extending the hardware functionality of the system, for example, allowing the Arduino to read the distance to an object or the air humidity, which is necessary for many systems[54].
Modules that expand the computing power of the project. These are various memory cards, additional buffers for operations and auxiliary multi-threaded processors. These include specific variations of the microcontroller, the characteristics of which vary from version to version. They are specifically aimed at improving the capabilities of the software part of the system, for example, additional memory cards allow you to store additional data in different codecs for playing certain audio tracks. Especially needed when designing complex systems with neural networks or robotics using Arduino.
Technical characteristics and functionality depend directly on the module purchased by the user, so it is not possible to distinguish the specific characteristics of the products. Their only common feature is a special pinout for connecting to Arduino platforms, without which communication between the microcontroller and the device will be impossible or very difficult. Otherwise, all features are highly variable and device-to-device.
|
| |