Intlab Wagon

Freight wagon number recognition SDK
(for 1520 mm track gauge)

What is Intlab Wagon for?

24/7 real-time optical recognition of numbers on the side or chassis of wagons, railway platform, and tank cars, with a single consolidated recognition result for each wagon.

Intlab Wagon is a software development kit (SDK) for third-party integration of optical detection and recognition of eight-digit wagon numbers (used in the CIS and other countries with 1520 mm track guage). The engine supports 24/7 recognition of numbers on all types of locomotives, freight wagons, platforms, and tank cars in a broad range of external conditions. The engine can recognize numbers in individual images as well as video steams from analog or digital sources. The engine provides the best quality recognition when used with a video stream, since the results received from individual frames taken from different cameras are analyzed and combined using complex algorithms to form a single result for each car. Since the wagon number appears on both sides and on the chassis, the best recognition results are obtained using 2 to 4 cameras.

Basic specifications

        up to

Recognition accuracy


Single-frame recognition time


Maximum rolling stock speed


Minimum character height

Results from individual frames are merged and a single result is issued for each wagon

Supported wagon types


Windows 7, 10
Windows Server
C# (.Net)
Many others

Specifications, system requirements, and the API

  • Specifications
  • System requirements
  • API

Typical probability of accurate recognition results from a video stream

Number quality Reading from one side Reading from two sides 
for clean numbers compliant with CIS railway standarts at least 92% at least 97%
dirty, low-contrast, damaged, or non-standard numbers at least 75% at least 92%


Supported character height characters as small as 10 pixels are supported, though a height of at least 16 pixels is recommended for best accuracy
Rolling stock speed up to 80 km/h *
Supported wagon types all types of wagons and locomotives with a one-lined eight-digit number compliant with the Ministry of Railways standard:
all types of locomotives, high-sided open wagons (high-sided gondolas), hoppers, tank wagons (tank cars), covered wagons (boxcars), flat wagons (flat cars), motor coach (motorcar), dumper car, refrigerator wagon (refrigerator car)
Places where numbers can be read side and chassis of wagons
Number of cameras
1 — 4,
Recommended: at least 2; or 4 if flat wagons (flat cars) are present
Width of camera's monitored area 5 — 10 meters
Camera's angle from the horizontal <= 20°
Camera's angle from the vertical <= 30°
Camera's angle of view  <= 5°
Camera's installed height 3 — 3.5 meters for reading side numbers, 1.5 meters for reading chassis numbers
Camera's distance to wagon

1.5 — 10 meters (depending on the focal length of the camera lens); the optimal distance is 5 — 7 meters

Minimum light level

depends on the video camera used, 50 lux is typical
Supported video signals individual images or live streams from an analog or digital camera
Average time spent processing each frame with the recommended resolution no more than 40 milliseconds
Correction of perspective and radial lens distortion +
Syntactic control and verification of wagon numbers using the Russian Railways checksum +
Determination of the wagon's direction of motion from the video +
Consolidated recognition results based on the series of video frames captured as the wagon moves through the monitored area   +
Intelligent evaluation of the consolidated recognition results to determine whether a wagon number was really found and correctly recognized +
Licensing system

1 license for each instance of a primary / secondary recognition object, USB dongle

Supported programming languages SDK can be used in applications in C / C ++, C #, VB.Net, Java and any other programming languages that support calling C functions.
Package contents SDK distribution package, documentation, examples in C / C++, C#, USB license dongle

Supported operating systems

Windows 7,8,10 (32/64 bit), Windows Server 2008, 2012 (32/64 bit), Linux Ubuntu (64 bit)

Recommended computer configuration
  • Core i3 (4th generation desktop CPU or higher) to perform recognition simultaneously on 1-2 video streams of rolling stock moving up to 10 km/h.
  • Core i5 (4th generation desktop CPU or higher) to perform recognition simultaneously on 2-4 video streams of rolling stock moving up to 10 km/h.
  • Core i7 (4th generation desktop CPU or higher, 4 cores) to perform recognition simultaneously on 1-4 video streams of rolling stock for speeds above 10 km/h.
  • Core i7 (4th generation desktop CPU or higher, 8 cores) to perform recognition simultaneously on 5-8 video streams of rolling stock for speeds above 10 km/h.
  • RAM: 4 Gb or greater.

Engine input

  • images loaded from a file or passed in a memory buffer in BMP, JPEG, or RAW format
  • real-time video stream passed in a memory buffer in BMP, JPEG, or RAW format, event indicating when wagon first appears in the monitored area, event indicating when the wagon has left the monitored area
Engine settings Frame resolution, rectangular recognition zone within the frame (region of interest - ROI), minimum and maximum size of characters in numbers, average character height, average aspect ratio, parameters for camera tilt correction (optional), parameters for radial distortion correction (optional)
Engine output When the engine receives an event indicating that the wagon has left the frame or stopped, the following results are returned:
  • the set of the best recognition hypotheses for each separate frame, where each hypothesis contains a string representation of the number, a recognition confidence score (hypothesis weight), the timestamp and image of the frame with the highest confidence score for this hypothesis, the location of the number within the frame, and the timestamps of the first and last frames where the wagon number was detected;
  • the final result, obtained by combining the results from each frame, contains a string representation of the number with the recognition confidence score (hypothesis weight), recognition confidence score for each character, direction of wagon motion, and a link to the recognition data from the best camera;

Key advantages

The recognition engine works smoothly on a video stream (up to 50 fps) of rolling stock moving even at high speed, performing recognition using up to 4 cameras on a single railway track, while also maintaining the highest possible recognition quality.
High recognition accuracy
High recognition accuracy
Our superior recognition accuracy, which is confirmed by internal and third-party testing, is achieved thanks to the high recognition speed (which ensures that frames are not skipped), most advanced recognition algorithms, smart unification of per-frame results, and the ability to use up to 4 cameras from both sides of a wagon to recognize numbers on the wagon sides and chassis.
Support for non-standard numbers
Support for non-standard numbers
We realize that the numbers on many wagons do not comply with requirements on neatness and uniformity. Nearly every passing train includes low-contrast, stenciled, and damaged numbers and numbers in a non-standard location or written in a non-standard way. Over years of installations, our recognition engine has proven its ability to perform well in such circumstances.
Intelligent evaluation of recognition confidence
Intelligent evaluation of recognition confidence
Unlike ordinary recognition engines, Intlab Wagon uses statistics gathered over the course of the wagon's motion through the monitored area to intelligently evaluate the consolidated recognition result's confidence to determine whether it really contains a wagon number rather than some advertisement or official marking similar to a wagon number, and to ensure the number was recognized correctly.
In more than 12 years of actively working on wagon number recognition, we have amassed a wealth of experience and an extensive test set (more than 50,000 wagons) containing every variety of wagon from a large number of OAO Russian Railways sites and large business enterprises. This gives us confidence that our product will work very well in any, even unfavorable, circumstances. When installed as recommended and correctly configured, it has the best performance on the market. Since 2009, our clients' software and hardware solutions have represented a substantial share of the optical wagon number recognition systems delivered to OAO Russian Railways sites.
Inhouse development
Inhouse development
Our engineers developed all of our recognition libraries from scratch, putting us in the best position to answer customers' questions, since there are no third-party dependencies.
Hardware independence
Hardware independence
Our video analytics engines are not tied to any specialized equipment or cameras. You can use any hardware that meets the technical requirements.
Fast and simple development
Fast and simple development
We strive to provide the most flexible, functional, convenient, and coherent APIs for all of our product lineups. We provide developer support and consultations during integration of our products into client solutions. We care about our clients and strive as much as possible to maintain backwards compatibility and support older versions of the API.
Friendly and effective support
Friendly and effective support
A qualified expert developer will quickly answer even your most difficult question.
Personal approach / Custom modifications
Personal approach / Custom modifications
We are always open to collaboration and take customers' wishes into consideration in the development of future versions. Our flexible, modular recognition engine also makes it possible to rapidly solve non-standard tasks (number recognition on a company's rolling stock with a proprietary numbering system, etc.)
Superb qualifications
Superb qualifications
12+ years of real-world experience conducting research, and developing and perfecting software in the area of OCR and computer vision.
Continuous improvement
Continuous improvement
During the product's more than 12 years of existence, we have worked continuously to improve the technical characteristics of the recognition engine. Having a lineup of number recognition products lets us continuously grow our expertise while simultaneously advancing and improving the recognition kernel in the entire product lineup.