Comparing bundles against reference data
When you review large amounts of pipe inspection footage, the most valuable moments are not where the AI and the inspector agree — they are where one side spotted something the other missed, or where both found the same defect but recorded it differently.
The bundle compare feature loads an external reference file from a manual inspection and overlays it onto the Vidsy analysis results. You can immediately see the discrepancies and focus your review time there.
What you need
- A bundle that has been analyzed in Vidsy.ai.
- A reference file from a manual inspection in one of these formats:
- CAMI JSON — the JSON export format used by CAMI inspection software.
- BEFDSS XML — the Belgian standard sewer inspection format (
NBN EN 13508-2).
Running a compare
- Open the bundle in the recording view.
- Click the bundle menu (⋮) next to the bundle name.
- Choose Compare with reference.
- Select the reference file from disk.
Vidsy reads the file, matches each inspection entry to the corresponding recording in the bundle by video filename, and overlays the comparison result on the events list and dashboard.
The compare result is temporary. It is shown for the current session but does not overwrite the stored analysis results. If you close the bundle and reopen it, the compare overlay is gone.
Understanding the results
Each event in the events list is color-coded to show its compare status.
| Color | Status | What it means | What to do |
|---|---|---|---|
| 🟢 Green | OK | AI and inspector found the same thing, same values | No action needed — you can skip these. |
| 🟠 Orange | Different values | Both found the same event but recorded it differently (e.g. different severity or dimension) | Review and decide which reading is correct. |
| (default) | Vidsy only | The AI detected something the inspector did not record | Verify whether this is a real finding the inspector missed, or a false positive. |
| 🔴 Red | Reference only | The inspector recorded something the AI did not detect | Important to review — these are potential missed detections. |
| ⬜ Grey | Unknown | The reference entry could not be mapped to a known Vidsy event type | The inspection code has no equivalent in the current model configuration. Note it for model improvement. |
Hover over any colored event to see a tooltip with the full comparison detail — which fields matched, which differed, and what the reference value was.
Events in the dashboard
Reference-only and unknown events from the compare are also surfaced in the Dashboard as you scrub through a recording. They appear as dimmed italic rows below the normal dashboard entries, so you can see them in context without them competing with live AI detections.
How recordings are matched
Vidsy matches reference entries to recordings by video filename.
- CAMI JSON: the reference entry's video filename (including extension) must match the recording's filename exactly.
- BEFDSS XML: the reference entry's
ABSfield (the inspection identifier) must match the recording's filename with the extension removed.
If a recording in the bundle has no matching entry in the reference file, it is listed in an error dialog and left uncompared. The rest of the bundle is still compared normally.
Reference formats
CAMI JSON
The JSON format from CAMI inspection software. Each entry (called a "streng" in CAMI) represents one pipe segment. Observations are matched to Vidsy detections by timestamp — the CAMI observation time must fall inside the Vidsy detection interval.
Running defects (water, sand, roots, deformation, and similar continuous conditions) are matched by start and end times within a tolerance window.
BEFDSS XML
The Belgian sewer inspection standard format (BEFDSS_02_01_DP, profile NBN EN 13508-2). Each DIRECT_OPTICAL_PIPELINE_INSPECTION block represents one recording. Observation timing is read from the VIDEO_REF timecode (HH:MM:SS) in each observation.
Running defects in BEFDSS are identified by CONTINUOUS_DEFECT markers and paired by their index code. Start and end times are matched with the same tolerance as CAMI JSON running events.
Structural markers (BCD, BCE, BDB) are automatically excluded from the compare — these are positioning records, not detections.