Classifiers#
The attributes of vehicles or license plates (LPs) are determined by classifiers. This section describes the available classifiers in the CARS API and their fields.
Vehicle classifiers#
This section describes the available vehicle classifiers in the CARS API and their fields.
«car_brand_model_v2»#
This classifier recognizes the vehicle brand and model. The response includes the brand and model names in Latin characters, along with the recognition accuracy score (Table 4).
The «car_brand_model_v2» classifier supports the recognition of over 160 brands and more than 1700 models.
The complete list of supported brands and models is provided in Appendix 4, Table 1.
Vehicle brand and model recognition in the system is based on the vehicle's body appearance. When using the «car_brand_model_v2» classifier, vehicles of different brands and models but with similar body appearances are classified into one brand and model (group), which is the most frequently encountered in Russia. For example, ZAZ Sens, ZAZ Lanos, ZAZ Chance, Daewoo Sens, Daewoo Lanos, Chevrolet Lanos, and ZAZ Lanos Furgon have similar appearances and are grouped together, and CARS API identifies these models as Chevrolet Lanos. Therefore, when an image of any of these vehicles is sent, the «Brand» and «Model» fields will display «Chevrolet» and «Lanos» respectively.
The complete list of related brand and model groupings is provided in Appendix 4, Table 2.
An example of an input image is shown in Figure 3.

Response example:
{
"brand": "Skoda",
"classifier": "car_brand_model_v2",
"execution_time": 84,
"model": "Kodiaq",
"score": 0.9844
}
Table 4. Description of the fields in the «car_brand_model_v2» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
brand | string | Vehicle brand | Skoda |
classifier | string | Name of classifier | car_brand_model_v2 |
execution_time | int | Execution time in milliseconds | 0…1000 |
model | string | Vehicle model | Kodiaq |
score | float | Assessment of accuracy recognition of vehicle brand and model | 0.0000…1.0000 |
«detailed_vehicle_color»#
The classifier recognizes the color type and color of the vehicle. The response includes the color type, the vehicle color name in English, and the confidence score for recognition (Table 5).
The classifier supports recognition of 12 colors and 4 types of color schemes. The model classifies the vehicle's color scheme into 4 categories: monochrome, multicolor, with stickers/decals/paintings, or with color graphics.
An example of an input image is shown in Figure 4.

Response example:
{
"classifier": "detailed_vehicle_color",
"execution_time": 20,
"color_type": "pics",
"color_type_score": 0.69997,
"colors": [
{
"vehicle_color": "white",
"vehicle_color_score": 0.9986
}
],
"execution_time": 87
}
Table 5. Description of the fields in the «detailed_vehicle_color» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | detailed_vehicle_color |
execution_time | int | Execution time in milliseconds | 0…1000 |
color_type | string | Vehicle color scheme type | mono - monochrome; |
multi - multicolor; | |||
colorgraph - with stickers/decals/paintings; | |||
pics - with color graphics | |||
color_type_score | float | Confidence score for the color scheme recognition | 0.0000…1.0000 |
colors | Array containing information about the vehicle color and the color recognition score | vehicle_color, vehicle_color_score | |
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 | Confidence score for the vehicle color recognition | 0.0000…1.0000 |
execution_time | int | Execution time in milliseconds | 0…1000 |
«vehicle_type»#
This classifier recognizes the type of vehicle. It returns the vehicle type and recognition accuracy score in the response (Table 7).
Vehicle classification is carried out according to GOST R 52051-2003 «Motor vehicles and trailers. Classification and definitions.» The description of each vehicle type is presented in Table 6.
Table 6. 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 | Motorized vehicles that require a special driving license | L1 – L7 | Motorcycles, tricycles, quad bikes, etc. |
B_light | Passenger vehicles used for transporting passengers, with no more than eight seats (excluding the driver) | M1 | Sedans, SUVs, minivans, microbuses, etc., including pickups with enclosed cargo beds. |
B_heavy | Passenger vehicles used for transporting goods | N1 | Pickups without an enclosed cargo bed, trucks weighing less than 3.5 tons, motorhomes. |
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 | Passenger vehicles that have more than eight seats (excluding the driver) with a maximum weight of up to 5 tons | M2 | Buses |
D_heavy | Passenger vehicles that have more than eight seats (excluding the driver) with a maximum weight of more than 5 tons | M3 | Buses and trolleybuses, excluding articulated ones |
D_long | D_heavy with one or more articulated sections | M3 | Articulated buses and trolleybuses |
E_light | Trucks with a maximum weight of more than 3.5 tons | N2, N3 | Trucks without trailers |
E_heavy | Trucks with a maximum weight of more than 3.5 tons and a trailer weight of more than 0.75 tons | Vehicle: N2, N3 | Articulated trucks with semi-trailers and road trains |
Trailer: O2 – O4 | |||
P_light | Trailers with a maximum weight of no more than 0.75 tons | O1, O2 | Trailers used by passenger vehicles |
P_heavy | Trailers with a maximum weight of more than 0.75 tons | O2 – O4 | Trailers used by cargo vehicles |
Other | Other vehicles | T, G, and without category | Agricultural machinery, off-road vehicles, trams, etc. |
An example of an input image is shown in Figure 5.

Response example:
{
"classifier": "vehicle_type",
"execution_time": 20,
"ts_type_ai": "E_light",
"ts_type_ai_score": 0.9997
}
Table 7. Description of the fields in the «vehicle_type» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_type |
execution_time | int | Execution time in milliseconds | 0…1000 |
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 |
«vehicle_position_v1»#
The classifier recognizes the position of a vehicle in the image by returning the coordinates of key points (leftFront: front left corner, leftRear: rear left corner, rightFront: front right corner, rightRear: rear right corner).
An example of an input image is shown in Figure 6.

Example response:
{
"classifier": "vehicle_position_v1",
"execution_time": 20,
"leftFront": {
"x": 13.9383,
"y": 291.3493
},
"leftRear": {
"x": 344.9959,
"y": 472.0356
},
"rightFront": {
"x": 174.0835,
"y": 260.4908
},
"rightRear": {
"x": 565.8995,
"y": 442.9853
}
}
Table 8. Description of the «vehicle_position_v1» classifier fields
Field | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_position_v1 |
execution_time | int | Execution time in milliseconds | 0…1000 |
leftFront | object | Coordinates of the front left corner | {x: float, y: float} |
leftRear | object | Coordinates of the rear left corner | {x: float, y: float} |
rightFront | object | Coordinates of the front right corner | {x: float, y: float} |
rightRear | object | Coordinates of the rear right corner | {x: float, y: float} |
«vehicle_orientation_v1»#
The classifier recognizes the orientation of a vehicle in an image, returning 8 possible values that represent the vehicle's orientation relative to the camera. These orientations cover all major angles: front, back, left, right, as well as their combinations.
An example of an input image is shown in Figure 7.

Example Response:
{
"classifier": "vehicle_orientation_v1",
"execution_time": 20,
"orientation": "front_right",
"orientation_score": 0.8609
}
Table 9. Description of the fields in the «vehicle_orientation_v1» classifier
Field | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_orientation_v1 |
execution_time | int | Execution time in milliseconds | 0…1000 |
orientation | string | Vehicle orientation | front, back, left, right, front_right, front_left, back_left, back_right |
orientation_score | float | Assessment of orientation recognition accuracy | 0.0000…1.0000 |
«detailed_vehicle_emergency» и «detailed_vehicle_emergency_v2»#
The classifier is used to determine the affiliation of a vehicle to emergency services and the presence of flashing lights. The classifier analyzes vehicle images, classifies the type of emergency service, and detects the presence of a flashing light.
An example of an input image is shown in Figure 8.

Response example:
{
"classifier": "detailed_vehicle_emergency_v2",
"execution_time": 20,
"emergency_type": "01",
"emergency_type_score": 0.6714,
"flashing_light": "without_flashing_light",
"flashing_light_score": 0.0896
}
Table 10. Description of the fields in the «detailed_vehicle_emergency_v2» classifier
Field | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | detailed_vehicle_emergency_v2 |
execution_time | int | Execution time in milliseconds | 0…1000 |
emergency_type | string | Type of emergency service | 01 – Fire department |
02 – Police | |||
03 – Ambulance | |||
04 — Emergency services | |||
05 — EMERCOM | |||
112 – Emergency | |||
not_emergency – Vehicles not belonging to emergency services (passenger, military vehicle etc.) | |||
emergency_type_score | float | Assessment of the emergency type recognition accuracy | 0.0000…1.0000 |
flashing_light | string | Presence of flashing lights | with_flashing_light / without_flashing_light |
flashing_light_score | float | Assessment of flashing light detection accuracy | 0.0000…1.0000 |
«public_transport_type»#
The classifier recognizes the type of public transport by returning the type of public transport in the response and an estimate of the recognition accuracy.
Taxis are considered public transport if their color schemes comply with GOST R 58287-2018 «Distinctive Signs and Information Support for Passenger Ground Transport Vehicles, Stop Points, and Bus Stations. General Technical Requirements». Carsharing is considered public transport if their color schemes comply with the order of the Moscow Department of Transport dated September 2, 2015, No. 61-02-283/5 «On Approval of the Requirements for the Color Scheme of Vehicles Used for Car Sharing Services».
An example of an input image is shown in Figure 9.

Response example:
{
"classifier": "public_transport_type",
"execution_time": 20,
"public_type": "taxi",
"public_type_score": 0.9999
}
Table 11. Description of the fields in the «public_transport_type» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | public_transport_type |
execution_time | int | Execution time in milliseconds | 0…1000 |
public_type | string | Public transport category | - route_transport, |
- taxi, | |||
- carshering, | |||
- other | |||
public_type_score | float | Assessment of accuracy recognition | 0.0000…1.0000 |
«special_transport_type»#
The classifier recognizes the type of special transport by returning the type of special transport in the response and an estimate of the recognition accuracy.
An example of an input image is shown in Figure 10.

Response example:
{
"classifier": "special_transport_type",
"execution_time": 20,
"special_type": "garbage_truck",
"special_type_score": 0.9999
}
Table 12. Description of the fields in the «special_transport_type» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | special_transport_type |
execution_time | int | Execution time in milliseconds | 0…1000 |
special_type | string | Special transport category | - forklift, |
- paver, | |||
- bulldozer, | |||
- grader, | |||
- roller, | |||
- truck_crane, | |||
- concrete_mixer, | |||
- tractor, | |||
- excavator, | |||
- sweeper, | |||
- garbage_truck, | |||
- sprinkler_truck, | |||
- dump_truck, | |||
- truck, | |||
- other_special, | |||
- other_non_special | |||
special_type_score | float | Assessment of accuracy recognition | 0.0000…1.0000 |
«vehicle_axles»#
The classifier detects the vehicle's axles: their coordinates and count. For each axle, the detection accuracy is determined, and the overall detection accuracy for all axles is provided.
An example of an input image is shown in Figure 11.

Response example:
{
"classifier": "vehicle_axles",
"execution_time": 20,
"aggregatedScore": 0.9006090760231018,
"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
}
Table 13. Description of the fields in the «vehicle_axles» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_axles |
execution_time | int | Execution time in milliseconds | 0…1000 |
aggregatedScore | float | Overall detection accuracy for all vehicle axles | 0…1 |
detections | array | Array containing coordinates and size of each axle detection on the image, as well as the detection accuracy for each axle | - |
height | int | Height of the axle's BBox (in pixels) | 0…1080 |
score | float | Detection accuracy for the axle | 0.0000…1.0000 |
width | int | Width of the axle's BBox (in pixels) | 0…1920 |
x | int | Horizontal coordinate of the top-left corner of the axle's BBox | 0…1920 |
y | int | Vertical coordinate of the top-left corner of the axle's BBox | 0…1080 |
numberOfWheelAxles | int | Number of detected axles | 1…n |
«vehicle_descriptor_v2»#
The classifier extracts the vehicle descriptor.
This descriptor is used for searching vehicles by image in the CARS Analytics interface. Image is encoded in Base64 format. Image-based search is especially useful when it is necessary to find records in the archive related to a specific vehicle.
More details on the process of vehicle search by image can be found in the «CARS Analytics. User Guide». The vehicle descriptor can be up to several thousand characters long.
An example of an input image is shown in Figure 12.

Response example:
{
"classifier": "vehicle_descriptor_v2",
"execution_time": 23,
"vehicle_descriptor": "AACAvQAAALwAAAA9..."
}
Table 14. Description of the fields in 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 | 0…1000 |
vehicle_descriptor | string | Vehicle descriptor | AACAvQ... |
«vehicle_tracks_reid_descriptor»#
The classifier is used to detect track breaks of the vehicle and allows continuing the existing track instead of creating a new one.
It extracts the vehicle descriptor, which is necessary for searching the vehicle by image in the CARS Analytics interface. Image is encoded in Base64 format. Image-based search helps find records in the archive related to a specific vehicle.
More information about the process of searching for a vehicle by image can be found in the «CARS Analytics. User Guide». The vehicle descriptor can be several thousand characters long.
The «vehicle_tracks_reid_descriptor» classifier works faster than «vehicle_descriptor_v2», but its accuracy is slightly lower.
An example of an input image is shown in Figure 13.

Response example:
{
"classifier": "vehicle_tracks_reid_descriptor",
"execution_time": 20,
"vehicle_descriptor": "AACAvQAAALwAAAA9..."
}
Table 15. Description of the fields in the «vehicle_tracks_reid_descriptor» classifierr
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | vehicle_tracks_reid_descriptor |
execution_time | int | Execution time in milliseconds | 0…1000 |
vehicle_descriptor | string | Vehicle descriptor | AACAvQ... |
License plate classifiers#
This section describes the available LP classifiers in the CARS API and their fields.
Operating logic of LP recognition networks#
The logic scheme of LP recognition networks is shown in Figure 14.

The description of the scheme is provided in Table 16.
Table 16. Description of the operating logic of LP recognition networks
Step | Description |
---|---|
0 | The CARS API receives a frame containing an 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, the «eu_cis_recognition_v4» classifier is launched. |
4 | If the country of affiliation is determined, the corresponding classifier from Table 17 is launched. |
Table 17. Correspondence of classifiers and countries of LP affiliation:
Classifier | Country of LP affiliation |
---|---|
rus_plate_recognition_v3 | Russian Federation, Abkhazia, South Ossetia, DPR and LPR. |
grz_country_recognition_v4, grz_all_countries | Russia, Abkhazia, South Ossetia, DPR, LPR, Belarus, Kazakhstan, Ukraine, Azerbaijan, Armenia, Georgia, Kyrgyzstan, Moldova, Tajikistan, Turkmenistan, Uzbekistan, Turkey, Austria, Andorra, Albania, Belgium, Bulgaria, Bosnia and Herzegovina, Vatican, Hungary, Germany, Greece, Denmark, Ireland, Spain, Italy, Cyprus, Kosovo, Latvia, Lithuania, Liechtenstein, Luxembourg, Malta, Monaco, Netherlands, Norway, Poland, Portugal, Transnistria, Romania, San Marino, North Macedonia, Serbia, Slovakia, Slovenia, Finland, France, Croatia, Montenegro, Czech Republic, Switzerland, Sweden, Estonia, Israel, Iran, Palestine, Pakistan, Qatar, Oman, Kuwait, Bahrain, Saudi Arabia, United Kingdom, Singapore, Hong Kong, Macau, Indonesia, Vietnam, Malaysia, Sri Lanka, Taiwan, Philippines, Thailand, UAE, India, China, Mongolia, Japan, South Korea, Brazil, Bangladesh, Canada, USA, Mexico |
uae_plate_recognition_v2 | UAE |
eu_cis_recognition_v3, eu_cis_recognition_v4 | CIS and EU countries. 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, Israel, Palestine, Guernsey, Iran, Italy, Liechtenstein, Lithuania, Luxembourg, Latvia, Monaco, Montenegro, North Macedonia, Malta, Netherlands, Norway, Poland, Transnistria, Portugal, Romania, Serbia, Sweden, Slovenia, Slovakia, San Marino, Turkey, Vatican, Kosovo |
emirate_recognition_v1 | UAE |
grz_uk_asia_recognition_v2 | India, Pakistan, Vietnam, Indonesia, Malaysia, Taiwan, Philippines, Sri Lanka, Macau, Singapore, Hong Kong, the United Kingdom |
chn_plate_recognition_v2 | China |
mng_recognition_v1 | Mongolia |
america_plate_recognition_v1 | USA, Canada, Mexico, Brazil |
persian_plate_recognition_v1 | Bahrain, Kuwait, Oman, Qatar, Saudi Arabia |
thailand_plate_recognition_v1 | Thailand |
«license_plate_ags_v1»#
The classifier evaluates the quality of the LP image. It is used to optimize selection of the best frame.
To filter LPs images by quality, you need to set upper and lower score threshold values. More information about the process of filtering LPs images by quality can be found in the «CARS Analytics. User Guide».
An example of an input image is shown in Figure 15.

Response example:
{
"classifier": "license_plate_ags_v1",
"execution_time": 20,
"score": 0.9963796734809875,
}
Table 17. Description of the fields in the ««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 | 0…1000 |
score | float | Estimation of LPs image quality | 0.0000…1.0000 |
«rus_plate_recognition_v3»#
The classifier recognizes LP symbols and their features, evaluates the accuracy of their recognition, and provides an score accuracy of LP recognition.
Classifier «rus_plate_recognition_v3» is available for LP images from Russia, Abkhazia, South Ossetia, the DPR, and LPR. A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 16.

Response example:
{
"classifier": "rus_plate_recognition_v3",
"execution_time": 20,
"features": [
{
"score": 0.9998,
"type": "rus_spec_type",
"value": "regular"
},
{
"score": 0.9987,
"type": "rus_region_number",
"value": "94"
}
],
"regno_ai_score": 0.9959,
"symbol_scores": [
0.9998,
0.9996,
0.9994,
0.9991,
0.9996,
0.9996,
0.9994,
0.9994
],
"symbols": [
"K",
"2",
"1",
"2",
"K",
"K",
"9",
"4"
]
}
Table 18. Description of the fields in the ««rus_plate_recognition_v3» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | rus_plate_recognition_v3 |
execution_time | int | Execution time in milliseconds | 0…1000 |
score | float | Accuracy score for recognizing LP features | 0.0000…1.0000 |
type | string | Type of LP feature | - rus_spec_type – LP format |
value | string | LP feature | - regular |
- police | |||
- diplomatic | |||
- military | |||
- machines&moto | |||
- trailer | |||
- transit | |||
- taxi | |||
score | float | Accuracy score for recognizing the LP region | 0.0000…1.0000 |
type | string | LP region | - rus_region_number – vehicle registration region |
value | string | Array of recognized LP symbols | 0…9 |
regno_ai_score | float | Accuracy score for LP recognition | 0.0000…1.0000 |
symbol_scores | float | Accuracy score for recognizing each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
«grz_country_recognition_v4»#
The classifier recognizes the country of the LP and evaluates the accuracy of recognition.
The classifier separates boxes into «relevant» and «irrelevant» to keep only relevant plates. It determines whether the box belongs to the main car or a neighboring one. All plates on a single car are considered «relevant». A detailed list of possible values for the country parameter is provided in Appendix 3.
An example of an input image is shown in Figure 17.

Response example:
{
classifier: grz_country_recognition,
"execution_time": 20,
country: RUS,
country_score : 0.9718532562255859
}
Table 19. Description of the fields in the «grz_country_recognition_v4» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | «grz_country_recognition_v4» |
execution_time | int | Execution time in milliseconds | 0…1000 |
country | string | Country of the LP | RUS – Russian Federation (RF) |
country_score | float | Accuracy score for country recognition | 0.0000…1.0000 |
«grz_all_countries»#
The classifier recognizes the country of registration of the LP and their features, evaluates the accuracy of their recognition, and provides an score accuracy of LP recognition.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 18.

Response example:
{
"classifier": "grz_all_countries",
"execution_time": 20,
"features": [
{
"score": 0.9998,
"type": "rus_spec_type",
"value": "regular"
},
{
"score": 0.9987,
"type": "rus_region_number",
"value": "94"
}
],
"regno_ai_score": 0.9959,
"symbol_scores": [
0.9998,
0.9996,
0.9994,
0.9991,
0.9996,
0.9996,
0.9994,
0.9994
],
"symbols": [
"K",
"2",
"1",
"2",
"K",
"K",
"9",
"4"
]
}
Table 20. Description of the fields in the «grz_all_countries» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | grz_all_countries |
execution_time | int | Execution time in milliseconds | 0…1000 |
score | float | Accuracy score for recognizing LP features | 0.0000…1.0000 |
type | string | Type of LP feature | - rus_spec_type – LP format |
value | string | LP feature | - regular |
- police | |||
- diplomatic | |||
- military | |||
- machines&moto | |||
- trailer | |||
- transit | |||
- taxi | |||
score | float | Accuracy score for recognizing the LP region | 0.0000…1.0000 |
type | string | LP region | - rus_region_number – vehicle registration region |
value | string | Array of recognized LP symbols | 0…9 |
regno_ai_score | float | Accuracy score for LP recognition | 0.0000…1.0000 |
symbol_scores | float | Accuracy score for recognizing each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
«uae_plate_recognition_v2»#
The classifier recognizes the emirate of registration of the LP, the symbols of the LP and the evaluation of the accuracy of their recognition.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 19.

Response example:
{
"classifier": "uae_plate_recognition_v2",
"execution_time": 43,
"features": [
{
"score": 0.848,
"type": "emirate_name",
"value": "SHARJAH"
}
],
"regno_ai_score": 0.5661,
"symbol_scores": [
0.9044,
0.9116,
0.9182,
0.9042,
0.9087,
0.9101
],
"symbols": [
"2",
"1",
"4",
"5",
"6",
"7"
]
}
Table 21. Description of the fields in the «uae_plate_recognition_v2» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | uae_plate_recognition_v2 |
execution_time | int | Execution time in milliseconds | 0…1000 |
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 | Accuracy score for recognizing 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 |
«eu_cis_recognition_v3» и «eu_cis_recognition_v4»#
The classifiers recognize LP symbols from CIS countries and the European Union, as well as individual country plates within the EU, and evaluate the accuracy of their recognition.
The «eu_cis_recognition_v4» classifier is capable of recognizing more types of LP.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 20.

Response example:
{
"classifier": "eu_cis_recognition_v4",
"execution_time": 20,
"regno_ai": {
"length_scores": [
0.0,
0.0,
0.0,
0.0,
0.0,
1.0,
0.0,
0.0,
0.0,
0.0,
0.0
],
"scores": [
0.9137,
0.9112,
0.9082,
0.9054,
0.9043
],
"symbols": [
"K",
"U",
"H",
"L",
"1"
]
},
"regno_ai_score": 0.6191
}
Table 22. Description of the fields in the «eu_cis_recognition_v4» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | eu_cis_recognition_v4 |
length_scores | float | An array of 11 elements showing the probability of the number of characters in the LP: - The 1st element corresponds to 0 characters, the 11th to 10 characters. The sum of all elements equals 1. The highest value indicates the number of characters in the LP. | 0.0000…1.0000 |
scores | float | An array displaying the assessment of the recognition accuracy of each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
«grz_uk_asia_recognition_v2»#
The classifier recognizes LP symbols of Asian and British countries, individual numbers of Asian countries, and also evaluates the accuracy of their recognition.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 21.

Response example:
{
"classifier": "grz_uk_asia_recognition_v2",
"execution_time": 55,
"regno_ai": {
"length_scores": [
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
1.0
],
"scores": [
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0
1.0
1.0
],
"symbols": [
"G",
"J",
"0",
"8",
"C",
"G",
"2",
"5",
"3",
"1",
]
},
"regno_ai_score": 1.0
}
Table 23. Description of the fields in the «grz_uk_asia_recognition_v2» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | grz_uk_asia_recognition_v2 |
execution_time | int | Execution time in milliseconds | 0…1000 |
length_scores | float | An array of 11 elements showing the probability of the number of characters in the LP: - The 1st element corresponds to 0 characters, the 11th to 10 characters. The sum of all elements equals 1. The highest value indicates the number of characters in the LP. | 0.0000…1.0000 |
scores | float | An array displaying the assessment of the recognition accuracy of each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
«chn_plate_recognition_v2»#
The classifier recognizes LP symbols of the China, evaluates the accuracy of recognition of each symbol and the entire LP.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 22.

Response example:
{
"classifier": "chn_plate_recognition_v2",
"execution_time": 24,
"features": [
{
"score": 0.8903,
"type": "spec_type",
"value": "regular"
}
],
"regno_ai_score": 0.4932,
"symbol_scores": [
0.8961,
0.9147,
0.9064,
0.9024,
0.9049,
0.901,
0.9023
],
"symbols": [
"吉",
"H",
"A",
"Y",
"4",
"5",
"7"
]
}
Table 24. Description of the fields in 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 | 0…1000 |
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 LP | 0.0000…1.0000 |
symbol_scores | float | Accuracy score for recognizing each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E…; O, 皖, 沪, 津… |
«mng_recognition_v1»#
The classifier recognizes LP symbols of the Mongolia, evaluates the accuracy of recognition of each symbol and the entire LP.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 23.

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
}
Table 25. Description of the fields in 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 | 0…1000 |
length_scores | float | An array of 11 elements showing the probability of the number of characters in the LP: - The 1st element corresponds to 0 characters, the 11th to 10 characters. The sum of all elements equals 1. The highest value indicates the number of characters in the LP. | 0.0000…1.0000 |
scores | float | An array displaying the assessment of the recognition accuracy of each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
«america_plate_recognition_v1»#
The classifier recognizes LP symbols of the USA, Canada, Mexico and Brazil, evaluates the accuracy of recognition of each symbol and the entire LP.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 24.

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
}
Table 26. Description of the fields in 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 | 0…1000 |
length_scores | float | An array of 11 elements showing the probability of the number of characters in the LP: - The 1st element corresponds to 0 characters, the 11th to 10 characters. The sum of all elements equals 1. The highest value indicates the number of characters in the LP. | 0.0000…1.0000 |
scores | float | An array displaying the assessment of the recognition accuracy of each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
«persian_plate_recognition_v1»#
The classifier recognizes LP symbols of of Bahrain, Kuwait, Oman, Oman, Qatar, Saudi Arabia, evaluates the accuracy of recognition of each symbol and the entire LP.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 25.

Response example:
{
"classifier": "persian_plate_recognition_v1",
"execution_time": 49,
"regno_ai": {
"length_scores": [
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0
],
"scores": [
0.9047,
0.9088,
0.9063,
0.9099,
0.9062
],
"symbols": [
"1",
"2",
"3",
"4",
"5"
]
},
"regno_ai_score": 0.6144
}
Table 27. Description of the fields in the «persian_plate_recognition_v1» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | persian_plate_recognition_v1 |
execution_time | int | Execution time in milliseconds | 0…1000 |
length_scores | float | An array of 11 elements showing the probability of the number of characters in the LP: - The 1st element corresponds to 0 characters, the 11th to 10 characters. The sum of all elements equals 1. The highest value indicates the number of characters in the LP. | 0.0000…1.0000 |
scores | float | An array displaying the assessment of the recognition accuracy of each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; A, B, C, E… |
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
«thailand_plate_recognition_v1»#
The classifier recognizes the region of registration of the LP, the symbols of the LP, individual numbers of Thailand, evaluates the accuracy of recognition of each symbol and the entire LP.
A detailed list of supported LPs is provided in Appendix 3.
An example of an input image is shown in Figure 26.

Response example:
{
"classifier": "thailand_plate_recognition_v1",
"execution_time": 20,
"features": [
{
"score": 0.9891,
"type": "region",
"value": "Ratchaburi"
},
{
"score": 0.9899,
"type": "spec_type",
"value": "private"
}
],
"regno_ai_score": 0.991,
"symbol_scores": [
0.9992,
0.9937,
0.9995,
0.9997,
0.9993,
0.9996
],
"symbols": [
"ก",
"ก",
"7",
"7",
"4",
"2"
]
}
Table 28. Description of the fields in the «thailand_plate_recognition_v1» classifier
Field name | Type | Description | Possible values |
---|---|---|---|
classifier | string | Name of classifier | thailand_plate_recognition_v1 |
execution_time | int | Execution time in milliseconds | 0…1000 |
score | float | Assessment of the accuracy of determining the region | 0.0000…1.0000 |
type | string | Feature type | region |
value | string | Recognition result | Bangkok, Chai Nat, Sing Buri, Ratchaburi…etc. |
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 |
- bus&truck – trucks and buses; | |||
- private – private individuals; | |||
- business – commercial vehicles; | |||
- taxi | |||
- temporary – dealer vehicles; | |||
- non-regular – individual; | |||
- moto – motorcycles | |||
regno_ai_score | float | Assessment of the recognition accuracy of the LP | 0.0000…1.0000 |
symbol_scores | float | Accuracy score for recognizing each LP symbol | 0.0000…1.0000 |
symbols | string | Array of recognized LP symbols | 0…9; ก, ข, ค, ฆ… |
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 29.
Table 29. 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 |