Classifiers#
Attributes of vehicles or LPs are recognized by classifiers. This section describes the classifiers available in the CARS API and their fields.
Vehicle classifiers#
The section describes the vehicle classifiers and their fields available in the CARS API.
«car_brand_model_v2»#
These classifiers recognize brand and model of the vehicle. Return the name of the brand and model of the vehicle in Latin characters and assessment of recognition accuracy (Table 4).
For the classifier «car_brand_model_v2», recognition of more than 160 brands and 1700 models is supported. See Appendix 4, Table 1 for a full list of brand and model names.
See Appendix 4, Table 2 for a full list of brand and model names.
The recognition of the brand and model of the vehicle in the system is performed by the appearance of the vehicle body. When using the classifier "car_brand_model_v2" vehicles of different brands and models, but having a similar body type, the system refers to the same brand and model – the most common in the Russian Federation. For example, ZAZ Sens, ZAZ Lanos, ZAZ Chance, Daewoo Sens, Daewoo Lanos, Chevrolet Lanos, ZAZ Lanos Furgon have a similar appearance, and the CARS API defines these models as Chevrolet Lanos. That is, when sending an image of any of these vehicles, "Chevrolet" and "Lanos" will be displayed in the "Brand" and "Model" fields, respectively. A complete list of groupings of related brands and models is presented in Appendix 4, Table 3.
Table 4. Fields description of car_brand_model_v2 classifiers
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | car_brand_model_v2 |
execution_time | int | Execution time in milliseconds | - |
brand | string | Vehicle brand | Scoda |
model | string | Vehicle model | Kodiaq |
score | float | Assessment of accuracy recognition of vehicle brand and model | 0.0000…1.0000 |
An example of an input image (Figure 3).
Response example:
{
"brand": "Skoda",
"classifier": "car_brand_model_v2",
"model": "Kodiaq",
"score": 1
}
«vehicle_color»#
The classifier recognizes the color of the vehicle. Returns in the response name of the and assessment of accuracy recognition (Table 5). Supported recognition of 16 colors.
Table 5. Fields description of the vehicle_color classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_color |
vehicle_color | string | Vehicle color | Beige, black, blue, brown, cherry, golden, gray, green, light_blue, orange, pink, red, silver, violet, white, yellow. |
vehicle_color_score | float | Assessment of accuracy recognition of the vehicle color | 0.0000…1.0000 |
An example of an input image (Figure 4).
Response example:
{
"classifier": "vehicle_color",
"vehicle_color": "white",
"vehicle_color_score": 0.9919
}
«detailed_vehicle_color»#
The classifier recognizes the color type and color of the vehicle. It returns in the response the color type, the vehicle color name and the recognition accuracy score (Table 6). Recognition of 4 color types and 12 colors is supported.
Table 5. Fields description of the detailed_vehicle_color classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | detailed_vehicle_color |
color_type | string | Vehicle coloring type TC | mono - single color, multi - multicolor, colorgraph - with stickers/paintings, pics - with color graphics |
color_type_score | float | Evaluating the accuracy of vehicle color type recognition | 0.0000…1.0000 |
colors | Array containing information about the color of the vehicle and an estimate of color recognition accuracy | - | |
vehicle_color | string | Vehicle color | red, orange, yellow, green, light_blue, blue, purple_or_pink, black, white, brown, grey_or_silver, beige |
vehicle_color_score | float | Assessment of accuracy recognition of the vehicle color | 0.0000…1.0000 |
execution_time | int | Execution time in milliseconds | - |
The classifier is able to recognize up to two vehicle colors (main and additional), in case the vehicle coloring type is not
mono
and the recognition accuracy score of the additional vehicle color is higher than 0.5.
An example of an input image (Figure 5).
Response example:
{
"classifier": "detailed_vehicle_color",
"color_type": "mono",
"color_type_score": 0.9896,
"colors": [
{
"vehicle_color": "white",
"vehicle_color_score": 0.9986
}
],
"execution_time": 87
}
«vehicle_type»#
The classifier recognizes the vehicle type. Returns in the response the type of vehicle and assessment of accuracy recognition (Table 7).
The classification of the vehicle occurs in accordance with GOST R 52051-2003. A description of each type of vehicle is given in Table 6.
Table 6. Description of supported vehicle types
Vehicle type | Description | Standard type | Example |
---|---|---|---|
A_light | Vehicles that do not require a special driving license | - | Bicycles, mopeds, gyroscooters, scooters, electric scooters, etc. |
А_heavy | Motor vehicles requiring a special license to drive | L1 – L7 | Motorcycles, tricycles, ATVs, etc. |
B_light | Passenger vehicles used for the carriage of passengers and having, in addition to the driver's seat, no more than eight seats | M1 | Sedans, SUVs, minivans, minibuses, etc., including pickups with shell |
B_heavy | Passenger vehicles used for the transport of goods | N1 | Pickups without a shell, trucks weighing less than 3.5. t, campers |
C_light | Trucks with a maximum weight of 3.5 to 12 tons | N2 | Trucks except semi-trailers trucks |
C_heavy | Trucks with a maximum weight of 3.5 to 12 tons | N3 | Trucks except semi-trailers trucks |
D_light | Vehicles for the carriage of passengers, having, in addition to the driver's seat, more than eight seats, the maximum mass of which does not exceed 5 tons | M2 | Buses |
D_heavy | Vehicles for the carriage of passengers, having, in addition to the driver's seat, more than eight seats, the maximum mass more 5 tons | M3 | Buses and trolleybuses, except articulated vehicles |
D_long | Articulated D_heavy vehicles | M3 | Articulated buses and trolleybuses |
E_light | Semi-trailers trucks without trailers with a maximum weight more than 3.5 tons | N2, N3 | Semi-trailers trucks without trailers |
E_heavy | Semi-trailers trucks with trailer weighing more than 0.75 tons | Vehicle: N2, N3 | Semi-trailers trucks and road trains |
Trailer: O2 – O4 | |||
P_light | Trailers with a maximum mass not exceeding 0.75 tons | O1, O2 | Trailers used by passenger vehicles |
P_heavy | Trailers with a maximum mass of more than 0.75 tons | O2 – O4 | Trailers used by trucks |
Other | Other vehicles | Т, G, without type | Agricultural vehicles, off-road vehicles, trams, etc. |
Table 7. Fields description of the vehicle_type classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_type |
ts_type_ai | string | Vehicle type | А_light, А_heavy, В_light, B_heavy, С_light, С_heavy, D_light, D_heavy, D_long, E_light, E_heavy, P_light, P_heavy, Other |
ts_type_ai_score | float | Assessment of the accuracy of determining the vehicle type | 0.0000…1.0000 |
An example of an input image (Figure 6).
Response example:
{
"classifier": "vehicle_type",
"ts_type_ai": "E_light",
"ts_type_ai_score": 0.9997
}
«vehicle_emergency_type» and «vehicle_emergency_type_v3»#
The classifier recognizes the type of emergency service. Returns in response the emergency number and assessment of accuracy recognition (Table 8).
The classifier supports recognition emergency vehicle types, the color schemes of which correspond to GOST R 50574-2019.
Table 8. Fields description of the vehicle_emergency_type_v3 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_emergency_type_v3 |
execution_time | int | Execution time in milliseconds | - |
ts_type_ai | string | Emergency transport category | 01 – Fire department |
02 – Police | |||
03 – Ambulance | |||
112 – Emergency | |||
not_emergency – passenger, military vehicle etc. | |||
ts_type_ai_score | float | Assessment of accuracy recognition | 0.0000…1.0000 |
An example of an input image (Figure 7).
Response example:
{
"classifier": "vehicle_emergency_type_v3",
"ts_type_ai": "01",
"ts_type_ai_score": 1
}
«public_transport_type»#
The classifier recognizes the type of public transport.
Returns in response the type of public transport and recognition accuracy score (Table 9).
Taxi is related to public transport only if its color schemes correspond to GOST R 58287-2018. Carsharing is related to public transport only if its color schemes correspond to the order of the Moscow Department of Transport N 61-02-283/5.
Table 9. Fields description of the public_transport_type classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | public_transport_type |
ts_type_ai | string | Public transport category | - route_transport |
- taxi | |||
- carshering | |||
- other | |||
ts_type_ai_score | float | Assessment of accuracy recognition | 0.0000…1.0000 |
An example of an input image (Figure 8).
Response example:
{
"classifier": "public_transport_type",
"public_type": "taxi",
"public_type_score": 0.9999
}
«special_transport_type»#
The classifier recognizes the type of special transport.
Returns in response the type of special transport and recognition accuracy score (Table 10).
Table 10. Fields description of the special_transport_type classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | special_transport_type |
ts_type_ai | string | Special transport category | - forklift |
- sweeper | |||
- paver | |||
- concrete_mixer | |||
- bulldozer | |||
- grader | |||
- truck | |||
- roller | |||
- garbage_truck | |||
- sprinkler_truck | |||
- other_special | |||
- dump_truck | |||
- tractor | |||
- excavator | |||
- other_non_special | |||
ts_type_ai_score | float | Assessment of accuracy recognition | 0.0000…1.0000 |
An example of an input image (Figure 9).
Response example:
{
"classifier": "special_transport_type",
"special_type": "garbage_truck",
"special_type_score": 0.9999
}
«vehicle_axles»#
The classifier recognizes the vehicle axles: their coordinates and amount. The recognition accuracy is also determined for each axle and aggregated for all detections (Table 11).
Table 11. Fields description of the vehicle_axles classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_axles |
aggregatedScore | float | General detection accuracy estimation | 0…1 |
detections | array | An array containing the coordinates and size of the detections of each axle in the image, as well as an estimate of the accuracy of the axle’s detection | - |
height | int | Axle BBox height (in px) | 0…1080 |
score | float | Axle detection accuracy estimation | 0.0000…1.0000 |
width | int | Axle BBox width (in px) | 0…1920 |
x | int | Horizontal coordinate of the upper left corner of the BBox | 0…1920 |
y | int | Vertical coordinate of the upper left corner of the BBox | 0…1080 |
numberOfWheelAxles | int | Number of detected axles | 1…n |
An example of an input image (Figure 10).
Response example:
{
"results": [
{
"aggregatedScore": 0.8943796157836914,
"classifier": "vehicle_axles",
"detections": [
{
"height": 119.57168579101563,
"score": 0.917134165763855,
"width": 109.78546142578125,
"x": 180.5765380859375,
"y": 385.35791015625
},
{
"height": 93.49630737304688,
"score": 0.8918288946151733,
"width": 66.70538330078125,
"x": 565.5817260742188,
"y": 359.1695861816406
},
{
"height": 91.6329345703125,
"score": 0.8791476488113403,
"width": 84.33480834960938,
"x": 477.0045471191406,
"y": 372.5871276855469
}
],
"numberOfWheelAxles": 3
}
]
}
«vehicle_descriptor_v2»#
Classifier retrieves vehicles descriptor.
The descriptor is a composite vector of vehicle photo image features. Image is encoded in Base64 format. The descriptor is needed for comparison and search of the vehicle. The classifier fields are described in the Table 12.
A description of the process of searching for a vehicle by image is given in «CARS Analytics. User Manual».
Table 12. Fields description of the vehicle_descriptor_v2 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_descriptor_v2 |
execution_time | int | Execution time in milliseconds | - |
vehicle_descriptor | string | Vehicle descriptor | AACAvQ... |
The descriptor can be up to several thousand characters long.
An example of an input image (Figure 11).
Response example:
{
"classifier": "vehicle_descriptor_v2",
"execution_time": 23,
"vehicle_descriptor": "AACAvQAAALwAAAA9..."
}
«vehicle_tracks_reid_descriptor»#
The classifier is required to detect a break in the vehicle track and allows you to continue running the old track instead of creating a new one.
Classifiers retrieves vehicles descriptor. The descriptor is a composite vector of vehicle photo image features. Image is encoded in Base64 format. The descriptor is needed for comparison and search of the vehicle. The classifier fields are described in the Table 13.
A description of the process of searching for a vehicle by image is given in «CARS Analytics. User Manual».
The «vehicle_tracks_reid_descriptor» classifier is faster than «vehicle_descriptor_v2», but is inferior in accuracy.
Table 13. Fields description of the vehicle_tracks_reid_descriptor classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_tracks_reid_descriptor |
execution_time | int | Execution time in milliseconds | - |
vehicle_descriptor | string | Vehicle descriptor | AACAvQ... |
The descriptor can be up to several thousand characters long.
An example of an input image (Figure 12).
Response example:
{
"classifier": "vehicle_tracks_reid_descriptor",
"execution_time": 22,
"vehicle_descriptor": "AACAvQAAALwAAAA9..."
}
License plate classifiers#
The section describes the LPs classifiers and their fields available in the CARS API.
Operating logic of LP recognition networks#
Schematic of the operating logic of LP recognition networks (Figure 13).
A description of the scheme is shown in Table 19.
Table 19. Description of the operating logic of LP recognition networks
Step | Description |
---|---|
0 | The CARS API receives a frame containing a LP number |
1 | The LP country recognition classifier «grz_all_countries» is launched |
2 | The country of affiliation of the LP is determined |
3 | If the country of affiliation is NOT defined, then the classifier «eu_cis_recognition_v2» is launched |
4 | If the country of affiliation is determined, then the corresponding classifier from Table 20 is launched |
Table 20. Correspondence of classifiers and countries of LP affiliation:
Classifier | Country of LP affiliation |
---|---|
rus_plate_recognition_v2 | Russian Federation |
rus_plate_recognition_v3 | Russia, Abkhazia, South Ossetia, DPR and LPR |
eu_cis_recognition_v2 | CIS and EU (Ukraine, Kazakhstan, Belarus, Georgia, Moldova, Armenia, Azerbaijan, Tajikistan, Turkmenistan, Kyrgyzstan, Uzbekistan, Andorra, Albania, Austria, Bosnia and Herzegovina, Belgium, Bulgaria, Switzerland, Cyprus, Czech Republic, Germany, Denmark, Estonia, Spain, Finland, France, Greece, Croatia, Hungary, Ireland, Iran, Israel, Italy, Liechtenstein, Lithuania, Luxembourg, Latvia, Monaco, Montenegro, North Macedonia, Malta, Netherlands, Norway, Poland, Transnistria, Portugal, Romania, Serbia, Sweden, Slovenia, Slovakia, San Marino, Turkey, Vatican City, Kosovo) |
grz_country_recognition_v4, grz_all_countries | Russia, Abkhazia, DPR, LPR, South Ossetia, Belarus, Kazakhstan, Ukraine, Azerbaijan, Armenia, Georgia, Kyrgyzstan, Moldova, Tajikistan, Turkmenistan, Uzbekistan, Turkey, Andorra, Albania, Austria, Bosnia and Herzegovina, Belgium, Bulgaria, Switzerland, Cyprus, Czech Republic, Germany, Denmark, Estonia, Spain, Finland, France, Greece, Croatia, Hungary, Ireland, Italy, Liechtenstein, Lithuania, Luxembourg, Latvia, Monaco, Montenegro, North Macedonia, Netherlands, Norway, Poland, Portugal, Romania, Serbia, Sweden, Slovenia, Slovakia, Malta, San Marino, Vatican City, Transnistria, Iran, Kosovo, Israel, Palestine, United Kingdom, Singapore, Hong Kong, Macau, India, Sri Lanka, Thailand, Vietnam, Malaysia, Indonesia, Philippines, Taiwan, Pakistan, China, Mongolia, UAE, Bahrain, Saudi Arabia, Oman, Qatar, Kuwait, Iran, Bangladesh, Japan, South Korea, Canada, USA, Mexico, Brazil |
emirate_recognition_v1 | UAE |
grz_uk_asia_recognition_v1 | India, Pakistan, Vietnam, Indonesia, Malaysia, Taiwan, Philippines, Sri Lanka, Macau, Singapore, Hong Kong and the UK |
chn_plate_recognition_v2 | China |
mng_recognition_v1 | Mongolia |
america_plate_recognition_v1 | USA, Canada, Mexico and Brazil |
«license_plate_ags_v1»#
The classifier «license_plate_ags_v1» evaluates the quality of the LP image. It is used to optimize selection of the best frame. Classifier fields are described in Table 13.
To filter LPs images by quality, you need to set upper and lower score threshold values. See more details in «CARS Analytics. User Manual», Table 42. Description of camera parameters with source type RTSP Stream and Video file.
Table 13. Fields description of license_plate_ags_v1 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | license_plate_ags_v1 |
execution_time | int | Execution time in milliseconds | - |
score | float | Estimation of LPs image quality | 0.0000…1.0000 |
An example of an input image (Figure 14).
Response example:
{
"classifier": "license_plate_ags_v1",
"score": 0.9963796734809875,
}
«rus_plate_recognition_v2» and «rus_plate_recognition_v3»#
Classifiers recognizes LP symbols, evaluate the recognition accuracy of each symbol and evaluate the recognition accuracy for the whole LP. Only available for Russian LPs images.
Classifier «rus_plate_recognition_v2» is available only for images of Russian license plates.
Classifier «rus_plate_recognition_v3» is available for images of license plates of Russia, Abkhazia, South Ossetia, DPR and LPR.
Classifier recognizes LP features:
- LP type;
- region of registration.
Classifier estimates the accuracy of recognizing these parameters (Table 13).
Classifiers support recognition of the LP symbols given in Appendix 3.
Table 13. Fields description of rus_plate_recognition_v2 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | rus_plate_recognition_v2 |
features | array | List of LP features | - |
score | float | Assessment of the recognition accuracy of each feature | 0.0000…1.0000 |
type | string | Type of feature | - rus_spec_type – LP form |
- rus_region_number – Digits of LP region of registration | |||
value | string | The value of LP feature | - regular |
- police | |||
- diplomatic | |||
- military | |||
- machines&moto | |||
- trailer | |||
- transit | |||
- taxi | |||
regno_ai_score | float | Assessment of the recognition accuracy of the license plate | 0.0000…1.0000 |
symbol_scores | float | Assessment of the recognition accuracy of each symbol on LP | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
Полный список возможных значений поля symbols для классификатора
rus_plate_recognition_v2
представлен в файле rus_plate_recognition_v1.conf, для классификатораrus_plate_recognition_v3
в файле rus_plate_recognition_v2.conf, расположенных в директории поставки /data.Full list of possible values of the symbols field for the
rus_plate_recognition_v2
classifier is presented in the filerus_plate_recognition_v1.conf
, for therus_plate_recognition_v3
classifier in the filerus_plate_recognition_v2.conf
located in the/data
distribution directory.
An example of an input image (Figure 15).
Response example:
{
"classifier": " rus_plate_recognition_v2",
"features": [
{
"score": 0.9963796734809875,
"type": "rus_spec_type",
"value": "regular"
},
{
"score": 0.9785565137863159,
"type": "rus_region_number",
"value": "163"
}
],
"regno_ai_score": 0.9357050657272339,
"symbol_scores": [
0.992807149887085,
0.9970425963401794,
0.9916096329689026,
0.9913685917854309,
0.98829585313797,
0.9942867159843445,
0.9931392073631287,
0.998256504535675,
0.9870374202728271
],
"symbols": [
"У",
"0",
"8",
"2",
"Н",
"Н",
"1",
"6",
"3"
]
}
«grz_country_recognition» and «grz_country_recognition_v4»#
The classifiers recognizes the country of registration of the LP and assessment of accuracy recognition (Table 14).
Table 14. Fields description of the grz_country_recognition_v4 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | grz_country_recognition_v4 |
country | string | Recognition result | - RUS – Russian Federation (RF) |
- RUS_SPEC – RF special transport (police, diplomatic LP, military LP) | |||
- RUS_SQUARE – RF square LP (288x205 or 245x185 mm) | |||
- UKR – Ukraine | |||
- BEL – Republic of Belarus | |||
- KZH – Republic of Kazakhstan | |||
- etc | |||
country_score | float | Assessment of accuracy recognition of the country | 0.0000…1.0000 |
See full list of possible value for country field in Appendix 3.
An example of an input image (Figure 16).
Response example:
{
"classifier": "grz_country_recognition_v4",
"country": "RUS",
"country_score": 1,
"execution_time": 141
}
«grz_all_countries»#
The classifier recognizes the country of registration of the LP, symbols of the LP and assessment of accuracy recognition of each symbols.
The list of LP’s features:
- Type of special LP format (military, civilian, square or diplomatic);
- Region of LP’s registration.
The classifier supports recognition of the LP’s countries and symbols given in Appendix 3.
The description of this classifier’s data is given in Table 15.
Table 15. Fields description of the grz_all_countries classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier. | grz_all_countries |
country_score | float | Assessment of accuracy recognition. | 0.0000…1.0000 |
country | string | Recognition result. | - RUS – Russian Federation (RF) |
- RUS_SPEC – RF special transport (police, diplomatic LP, military LP) | |||
- RUS_SQUARE – RF square LP (288x205 or 245x185 mm) | |||
- UKR – Ukraine | |||
- BEL – Republic of Belarus | |||
- KZH – Republic of Kazakhstan | |||
- etc | |||
scores | float | An array displaying the assessment of the recognition accuracy of each license plate symbol | 0.0000…1.0000 |
features | array | List of LP features | - |
score | float | Assessment of the recognition accuracy of each features | 0.0000…1.0000 |
type | string | Feature type | - rus_spec_type – LP form |
- rus_region_number – Digits of LP region of registration | |||
value | string | Value of feature | - regular |
- police | |||
- diplomatic | |||
- military | |||
- machines&moto | |||
- trailer | |||
- transit | |||
- taxi | |||
symbols | string | Array of recognized LP. Recognizable symbols include series, registration number and registration region code. | 0…9; A, B, C, E… |
length_scores | float | An array displaying the number of license plates. There are 11 elements in the array: | 0.0000…1.0000 |
- The first element of the array corresponds to the license plate with 0 characters. | |||
- The eleventh element – 10 characters. | |||
Each element contains a number that shows the probability of the presence in the license plate of exactly this number of characters. If 10 array elements have the highest value, then the system has identified 9 characters in the license plate. The sum of the values of all 11 elements is 1. | |||
regno_ai_score | float | Assessment of the recognition accuracy of the license plate | 0.0000…1.0000 |
Full list of possible values for symbols field is given in eu_plate_recognition.conf file included in the /data directory of the CARS Installer distribution.
An example of an input image (Figure 17).
Response example:
{
"classifier": "grz_all_countries",
"country": "BEL",
"country_score": 1,
"regno_ai": {
"length_scores": [
0,
0,
0,
0,
0,
0,
0,
0.9996,
0.0003,
0,
0
],
"scores": [
0.9993,
0.9998,
0.9997,
0.9999,
0.9996,
1,
0.693
],
"symbols": [
"8",
"3",
"6",
"7",
"Р",
"А",
"9"
]
},
"regno_ai_score": 0.8915
}
«emirate_recognition_v1»#
The classifier returns the LP’s emirate, the accuracy of determining the emirate, the symbols of the LP and the evaluation of the accuracy of character recognition.
The classifier fields are described in Table 16.
The classifier supports recognition of the UAE LP types given in Appendix 3.
Table 16. Fields description of the emirate_recognition_v1 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | emirate_recognition_v1 |
features | array | List of LP features | emirate_name |
score | float | Assessment of the accuracy of determining the emirate | 0.0000…1.0000 |
type | string | Feature type | emirate_name |
value | string | Recognition result | DUBAI, ABU_DHABI, SHARJAH, KHAIMAN, QUWAIN, AJMAN, FUJAIRAH |
regno_ai_score | float | General assessment of the accuracy of LP recognition | 0.0000…1.0000 |
symbol_scores | float | Evaluation of the accuracy of recognition of each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols. Symbols for recognition include: | 0…9; A, B, C, E… |
- series; | |||
- LP symbols; | |||
- region of registration code/name |
An example of an input image (Figure 18).
Response example:
{
"results": [
{
"classifier": "emirate_recognition_v1",
"features": [
{
"score": 0.999993085861206,
"type": "emirate_name",
"value": "SHARJAH"
}
],
"regno_ai_score": 0.9982012510299683,
"symbol_scores": [
0.9989792108535767,
0.9998021721839905,
0.999907374382019,
0.9999147653579712,
0.9996598958969116,
0.9999368190765381
],
"symbols": [
"2",
"1",
"4",
"5",
"6",
"7"
]
}
]
}
«eu_cis_recognition_v2»#
The classifier recognizes LP symbols of the CIS and the European Union countries, evaluates the accuracy of recognition of each symbol and the entire LP.
The classifier fields are described in Table 18.
The classifier supports recognition of the CIS and EU LP types given in Appendix 3.
Table 18. Fields description of the eu_cis_recognition_v2 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | eu_cis_recognition_v2 |
length_scores | float | An array displaying the number of license plates. There are 11 elements in the array: | 0.0000…1.0000 |
- The first element of the array corresponds to the license plate with 0 characters. | |||
- The eleventh element – 10 characters. | |||
Each element contains a number that shows the probability of the presence in the license plate of exactly this number of characters. If 10 array elements have the highest value, then the system has identified 9 characters in the license plate. The sum of the values of all 11 elements is 1 | |||
scores | float | An array displaying the assessment of the recognition accuracy of each license plate symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP. Recognizable symbols include series, registration number and registration region code | 0…9, A…Z |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
Full list of possible values for symbols field is given in eu_cis_recognition_v2.conf file included in the /data directory of the CARS Installer distribution.
An example of an input image (Figure 19).
Response example:
{
"results": [
{
"classifier": "eu_cis_recognition_v2",
"regno_ai": {
"length_scores": [
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
1.0,
0.0,
0.0,
0.0,
0.0
],
"scores": [
0.9990543723106384,
0.9992122650146484,
0.9995478987693787,
0.9989604949951172,
0.9978286623954773,
0.9989246726036072
],
"symbols": [
"S",
"5",
"7",
"8",
"I",
"L"
]
},
"regno_ai_score": 0.99354487657547
}
]
}
«grz_uk_asia_recognition_v1»#
The classifier recognizes LP symbols of Asian countries, evaluates the recognition accuracy of each symbol and LP in general.
The classifier fields are described in Table 19.
The classifier supports recognition of the India, Pakistan, Vietnam, Indonesia, Malaysia, Taiwan, Philippines, Sri Lanka, Macau, Singapore, Hong Kong and the United Kingdom LP types given in Appendix 3.
Table 19. Fields description of the grz_uk_asia_recognition_v1 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | grz_uk_asia_recognition_v1 |
execution_time | int | Execution time in milliseconds | - |
length_scores | float | An array displaying the number of license plates. There are 11 elements in the array: | 0.0000…1.0000 |
- The first element of the array corresponds to the license plate with 0 characters. | |||
- The eleventh element – 10 characters. | |||
Each element contains a number that shows the probability of the presence in the license plate of exactly this number of characters. If 10 array elements have the highest value, then the system has identified 9 characters in the license plate. The sum of the values of all 11 elements is 1 | |||
scores | float | An array displaying the assessment of the recognition accuracy of each license plate symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP. Recognizable symbols include series, registration number and registration region code | 0…9; A-Z |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
Full list of possible values for symbols field is given in grz_uk_asia_recognition_v1.conf file included in the /data directory of the CARS Installer distribution.
An example of an input image (Figure 20).
Response example:
{
"classifier": "grz_uk_asia_recognition_v1",
"execution_time": 55,
"regno_ai": {
"length_scores": [
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0
],
"scores": [
0.9997,
0.9975,
0.9977,
0.9949,
0.9984,
0.9985,
0.9986,
0.9878
],
"symbols": [
"В",
"1",
"6",
"5",
"4",
"S",
"S",
"Т"
]
},
"regno_ai_score": 0.9734
}
«chn_plate_recognition_v2»#
The classifier recognizes LP symbols of the China, evaluates the recognition accuracy of each symbol and LP in general.
The classifiers fields are described in Table 20 and Table 21.
The classifier supports recognition of the China LP types given in Appendix 3.
Table 21. Fields description of the chn_plate_recognition_v2 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | chn_plate_recognition_v2 |
execution_time | int | Execution time in milliseconds | - |
features | array | List of LP features | - |
score | float | Assessment of the recognition accuracy of each feature | 0.0000…1.0000 |
type | string | Type of feature | - spec_type – LP form |
value | string | The value of LP feature | - regular |
- large&moto – motorcycles, trucks, buses; | |||
- electric – electric cars; | |||
- cross-boarder – numbers for crossing the border with Macau and Hong Kong; | |||
- trailer; | |||
- temporary – transit; | |||
- police; | |||
- training. | |||
regno_ai_score | float | Assessment of the recognition accuracy of the license plate | 0.0000…1.0000 |
symbol_scores | float | Assessment of the recognition accuracy of each symbol on LP | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
An example of an input image (Figure 21).
Response example:
{
"classifier": "chn_plate_recognition_v2",
"execution_time": 24,
"features": [
{
"score": 0.8894,
"type": "spec_type",
"value": "regular"
}
],
"regno_ai_score": 0.4884,
"symbol_scores": [
0.8965,
0.9137,
0.901,
0.901,
0.9018,
0.9009,
0.904
],
"symbols": [
"吉",
"Н",
"А",
"У",
"4",
"5",
"7"
]
}
«mng_recognition_v1»#
The classifier recognizes LP symbols of the Mongolia, evaluates the recognition accuracy of each symbol and LP in general.
The classifier fields are described in Table 21.
The classifier supports recognition of the Mongolia LP types given in Appendix 3.
Table 21. Fields description of the mng_recognition_v1 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | mng_recognition_v1 |
execution_time | int | Execution time in milliseconds | - |
length_scores | float | An array displaying the number of license plates. There are 11 elements in the array: | 0.0000…1.0000 |
- The first element of the array corresponds to the license plate with 0 characters. | |||
- The eleventh element – 10 characters. | |||
Each element contains a number that shows the probability of the presence in the license plate of exactly this number of characters. If 10 array elements have the highest value, then the system has identified 9 characters in the license plate. The sum of the values of all 11 elements is 1 | |||
scores | float | An array displaying the assessment of the recognition accuracy of each license plate symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP. Recognizable symbols include series, registration number and registration region code | - |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
An example of an input image (Figure 22).
Response example:
{
"classifier": "mng_recognition_v1",
"execution_time": 206,
"regno_ai": {
"length_scores": [
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0
],
"scores": [
0.9869,
0.9909,
0.9974,
0.9981,
0.9529,
0.9952
],
"symbols": [
"1",
"2",
"3",
"4",
"Д",
"К"
]
},
"regno_ai_score": 0.9231
}
«america_plate_recognition_v1»#
The classifier recognizes LP symbols of the USA, Canada, Mexico and Brazil, evaluates the recognition accuracy of each symbol and LP in general.
The classifier fields are described in Table 22.
Table 21. Fields description of the america_plate_recognition_v1 classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | america_plate_recognition_v1 |
execution_time | int | Execution time in milliseconds | - |
length_scores | float | An array displaying the number of license plates. There are 11 elements in the array: | 0.0000…1.0000 |
- The first element of the array corresponds to the license plate with 0 characters. | |||
- The eleventh element – 10 characters. | |||
Each element contains a number that shows the probability of the presence in the license plate of exactly this number of characters. If 10 array elements have the highest value, then the system has identified 9 characters in the license plate. The sum of the values of all 11 elements is 1 | |||
scores | float | An array displaying the assessment of the recognition accuracy of each license plate symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP. Recognizable symbols include series, registration number and registration region code | - |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
Full list of possible values for symbols field is given in america_plate_recognition_v1.conf file included in the /data directory of the CARS Installer distribution.
An example of an input image (Figure 23).
Response example:
{
"classifier": "america_plate_recognition_v1",
"execution_time": 190,
"regno_ai": {
"length_scores": [
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0
],
"scores": [
0.9971,
0.9943,
0.9947,
0.9997,
0.999,
0.9989,
0.9992
],
"symbols": [
"К",
"N",
"М",
"1",
"9",
"5",
"4"
]
},
"regno_ai_score": 0.983
}
Classifier accuracy#
The accuracy of the classifiers was measured for several datasets. All data were obtained from various sources obtained under different conditions.
The accuracy values for recognition of vehicle and LP attributes by classifiers are given in Table 19.
Table 19. Data on the accuracy of classifiers
Classifier | Number of images | Accuracy (%) |
---|---|---|
Car_brand_model_v2 (brand) | 213 000 | 98.65 |
Car_brand_model_v2 (model) | 213 000 | 96.77 |
Vehicle_color | 13 323 | 96.39 |
Vehicle_type | 10 413 | 99.34 |
Vehicle_emergency_type | 18 016 | 82.00 |
Public_transport_type | 12 683 | 98.40 |
Special_transport_type | 24 844 | 97.95 |
LP attributes classifiers | 10 000 | 99.70 |