The World’s First Cloud-Based Multi-Camera Traffic System

Traffic video analytics for public safety has to produce a case, not a clip. Single-camera enforcement sees a moment. IREX coordinates cameras across an intersection, correlates vehicle movement with the traffic light and with pedestrians, and produces a case an authority can actually act on.

2.3M
Violations Detected in One Year, One City
Jan 2025
World’s First Cloud Multi-Camera Traffic System
Nationwide
First National Multi-Camera Enforcement, Mongolia
12–25 fps
Documented Enforcement Camera Range

Why Multi-Camera

A Violation Is a Sequence, Not a Frame

Whether a vehicle ran a red light depends on where it was when the signal changed, which lane it was in, and whether a pedestrian was in the crossing. That is several cameras and a signal feed, correlated. IREX coordinates them, tracks vehicles across all lanes on the approach, and ties movement to traffic-light status and pedestrian activity.

This was recognized as a world first: in January 2025 IREX shipped the first cloud-based multi-camera traffic management system. In production, one city deployment detected 2.3 million violations in a single year, and Mongolia runs the first nationwide multi-camera traffic-enforcement deployment, including Ulaanbaatar.

Enforcement is also where camera specifications stop being negotiable. IREX publishes installation specifications per violation type, built around defined camera roles, with field-of-view rules such as the stop line falling in the second third of the frame for entry LPR cameras, and pedestrian cameras covering the crossing plus 8 to 10 meters either side.

Coverage

Enforcement Scenarios

Red Light and Stop Line

Signal-correlated red-light running and stop-line infringement across every lane on the approach.

Opposite Lane, Overtaking, and Maneuvers

Driving in the opposite lane (wrong-way driving; the violation type was renamed Opposite lane in version 4.40), overtaking where it is prohibited (captured since 4.40), and forbidden maneuvers at junctions.

Right of Way

Failure to yield to pedestrians, and near misses where no contact occurs.

Illegal Parking

Parking violations and hard-shoulder breakdowns, against a permissible stop time you enter in seconds on the no-stop area.

Average Speed across a Section

Average speed between a start line and an end line on a road segment, against a speed limit and a tolerance you set.

Railway Crossings

Crossing violations, with its own camera installation specification.

Two-Wheelers

Dedicated motorbike detection with rider count and helmet detection, restricted-zone rules, and BikeLaneTrack for bike-lane monitoring.

See Two-Wheeler Analytics

Congestion and Parking

CarCount jam detection on a road segment you draw and parking-lot capacity alerts, alongside traffic and crowd heatmaps with average-speed statistics.

In Operation

One Approach, Several Cameras, One Case

From Detection to a Court-Ready Package

A violation assembles its own evidence: the plate read, the vehicle context, the signal state, the timestamps, the camera identities, and the clip. The wide shot is measured rather than guessed: since version 4.40 the full frame that precedes a line crossing is taken when the vehicle is three license-plate widths from the line, replacing a rule that derived the distance from the vehicle width and could leave a large vehicle outside its own evidence frame. Transit priority and yield-violation cases work the same way. The point is that nobody compiles the package by hand, because manual compilation is where enforcement programs stall.

A dark gray SUV crosses the stop bar with its brake lights off while the overhead signal shows red, its rear plate the sharpest element in the frame.
The red indication and the plate have to be unambiguous in the same picture. That is what the per-violation installation specification is for.

Violation Reports That Deliver Themselves

An enforcement program is only as good as the system that issues the citation, so the report is a push rather than a download. An export task is defined once in the settings, filtered by violation type, road object and tags, with vehicle lists named as exceptions, and it sends the violations that match to a URL you enter, as a JSON file: one descriptor per event carrying the road object with its address and coordinates, the violation name and type, the plate number and state, the vehicle color, make and type with their recognition scores, the observing cameras, and the snapshots inside the file itself. A task runs streaming, meaning every violation as it is detected, or daily, and a daily task can be confined to time windows set per day of the week and overridden on named dates, with a 24-hour report still available to pull by hand when something is urgent. Delivery is then settled by response code: a 200 completes it and the file is never sent again, a 400 stops it, and a 401 or a 500 is retried every 5 minutes for up to 30 minutes or until a 200 comes back, so a receiver that is briefly down does not cost an agency a case.

See the Export Format in the Docs
Diagram of the export path: an export task defined once in the settings, running streaming or daily inside time windows, sends one JSON file carrying the road object, the violation name, the plate and state, the vehicle attributes, the observing cameras and the snapshots to the URL you enter, above a table of what each response code settles: 200 complete, 400 stopped, 401 and 500 retried every 5 minutes for up to 30 minutes or until a 200.
Delivery is settled by the receiver’s response code, not by someone watching a queue.

Speed Measured across a Section, Not at a Point

The speed violation IREX documents is a section measurement. The road object is a linear road segment rather than a junction, and two traffic objects are drawn in CarTrack Pro on the cameras watching it: a Speed control: Start line and a Speed control: End line, either on one camera or on two. The violation rule carries the length of the segment between them, the speed limit, and a permissible tolerance you enter, and the platform divides that length by the interval between the two line-crossing timestamps to get the vehicle’s space mean speed. The violation type is Space mean speed above limit, the name operators see is the one you type when you create it, and because the whole section is what gets measured, braking for the camera and accelerating past it does not help. It is the same figure Mongolia’s nationwide deployment reports as average speed between junctions.

Diagram of a section speed measurement: a road segment with a Speed control: Start line and a Speed control: End line, each watched by a camera, the segment length D marked between them, the crossing timestamps T1 and T2 beneath them, and the speed V computed as D divided by T2 minus T1 and compared with the speed limit plus a permissible tolerance.
The measurement is anchored to two lines and the distance between them, so no single point on the road decides the speed.

The Read Underneath

Every Case Here Rests on a Plate Read

Multi-camera enforcement is the workflow. License plate recognition is what it is built on, and three things it does are the reason these violation types work at all.

  1. The Vehicle Is Read, Not Just the Plate

    The same pass returns the vehicle class, the body color and the make alongside the plate characters. Class is what a restriction is actually written in: light, medium and heavy-duty trucks became separate categories in release 4.36 precisely so weight-restricted and lane-restricted zones could be enforced, and two-wheelers became their own class in 4.36, with rider counting and helmet detection on the same read.

  2. Plate Number Templates Say What Belongs There

    Some rules are about which vehicles belong in a lane rather than what a vehicle did. Release 4.38 added plate number templates: a violation rule on a road segment names the vehicle lists and the plate patterns permitted there, so a transit corridor can be policed consistently and anything else in that lane arrives as an exception with evidence attached. The failure-to-yield-to-transit rules shipped on the same mechanism.

  3. Compliance Checks Ride on the Same Frame

    A camera watching an approach can answer a paperwork question as well as a behavior one. Inside a check area drawn on that camera, each plate is matched against DMV registration or another authorized dataset your agency supplies, and a lapsed registration raises a Registration expired event in the same violation list as the red-light and stop-line cases.

CarCount

Jams and Full Parking Lots, by Threshold

Not every traffic question is an enforcement question. CarCount answers two operational ones: is this road segment jammed, and is this parking lot over capacity. It counts vehicles inside a region of interest you draw and raises an event when a threshold you set is crossed. It does not identify or classify them, and we would rather be precise about that here than have it come up in a pilot.

Find Jam
A Jam event fires when more than a set number of vehicles, anywhere from 5 to 40, stay inside the region for longer than a set time, 60 to 300 seconds. The module recounts every 5 to 60 seconds, and the duration threshold has to be at least three times the recount interval. That interval is also why an event card can sit slightly ahead of the playback timeline.
Parking Lot Full
A parking rule compares the vehicles inside a drawn area against the number of slots you enter, and raises an event when the lot is over capacity. You write the rule name yourself, and the name you choose is what operators see in their event list, so it is worth choosing a plain one.
What Comes Out
Threshold events, not counts. Jam and Parking full events reach an alarm monitor for a real-time response and stay searchable afterwards under Additional events. CarCount reports no vehicles-per-hour figure, no per-lane or directional tally, and no vehicle classes: make, model, color, and type come from CarTrack Pro instead.
Camera Mount
Fixed cameras only, with no PTZ, mobile phone uploads, or drones, because the thresholds are measured inside a region drawn on a frame that does not move. 1280 × 720 to 2592 × 1944 at 10 to 30 fps, a 3 to 15 m mount, and more than 25 pixels per meter inside the region. A small-object mode brings the minimum vehicle outline down to 16 × 16 px.

FAQ

Will the evidence stand up to challenge?

That is what the per-violation installation specifications exist for: defined camera roles, positions, angles, resolutions, and field-of-view rules, verified in a site survey before deployment. The platform then assembles the plate photo, vehicle context, signal state, timestamps, camera identities, and video clip into one package automatically.

Can we use existing traffic cameras?

Sometimes. General analytics run on the standard platform baseline, but enforcement has stricter optics requirements. Technical specifications for these deployments run 1920 × 1080 up to 2560 × 1920 at 12 to 25 fps, H.264 or H.265 at 1 to 6 Mbps with constant bit rate preferred, ONVIF Profile S or G, PoE, IP66, and a −30 °C to +40 °C range. Cameras outside that may need replacing or supplementing.

Can you report how many vehicles passed, by type?

Not from CarCount, and it matters that we say so plainly. CarCount counts vehicles inside a region you draw and raises an event when a jam or a parking threshold is crossed. It reports no throughput figure, no per-lane or directional count, and no vehicle classes. Vehicle make, model, color, and type come from the plate and vehicle read this page is built on, and the wider object taxonomy from ObjectTrack Pro. If a program needs classified counts as a report rather than as a search, raise it before the pilot rather than after it.

What does the average-speed measurement need on site?

Two lines and the distance between them. The start and end lines are traffic objects drawn in CarTrack Pro on the cameras watching that stretch of road, and both can sit on one camera or on two, with the cameras bound to the road segment under the Average speed camera type. The crossing timestamps come back as attributes of the line-crossing events those cameras detect; the segment length, the speed limit and the permissible tolerance are entered on the violation rule, and the space mean speed is computed from them. What the site has to provide is the same enforcement-grade optics every other violation type needs, which is what the per-violation installation specification covers.

Does jam detection work on a PTZ camera?

No. CarCount is documented as fixed cameras only, with no PTZ, mobile phone uploads, or drones, because its thresholds are measured inside a region drawn on a frame that does not move. It wants 1280 × 720 to 2592 × 1944 at 10 to 30 fps, a mount 3 to 15 m above ground, and more than 25 pixels per meter inside that region. A small-object mode takes the minimum vehicle outline down to 16 × 16 px for traffic further from the camera.

Does it handle motorcycles?

Yes. All vehicle types are supported including two-wheelers, with dedicated motorbike detection, rider counting and helmet detection, and BikeLaneTrack covers bike-lane monitoring.

Does this run on its own or does someone have to watch it?

It runs on its own and alerts a person. Detections are signals for a human to verify: no response runs autonomously, and the verification and decision are logged against the same Case ID as the detection.

Start with One Intersection

One approach, instrumented properly, tells you more about a citywide program than a hundred cameras guessed at.