Most safety questions can be answered on your cameras today, with nothing to label and nothing to train. The objects that are specific to your plant cannot. We built one engine that covers both, and you can start on either side of it.
Three deployments that run on your existing cameras with no dataset of yours. A new hazard is a sentence, not a training run.
Factories cordon off areas every day: a press under maintenance, a wet floor, a robot cell. The cordon is obvious to a person and invisible to a robot. Simvera reads whatever the crew put down, returns the enclosed floor as a zone, and measures how far every person is from it.
Camera frame
Zone + person distance





// zone_output_03_nogo_caution_tape.json { "zone_id": "hazard_zone_1", "visibility_rating": 95, "large_bounding_box": [330, 70, 890, 940], "boundary": ["yellow caution tape", "metal stanchion posts", …], "floor": ["smooth grey factory floor", …], "persons": [{ "id": 1, "distance_m": 0.03, "status": "UNSAFE" }] }
Most incidents happen where nothing was cordoned. A spill nobody reported, a cable across a walkway, a load overhead. Simvera treats every frame as a safety walk: it lists what is in the scene, judges what could hurt someone, and checks who is standing next to it.
Hazard grounded
Exposure check



// pipeline_results_04_spill_slip_day.json { "hazard_id": "HAZ-01", "hazard_type": "Environmental", "danger_probability": 85, "justification": "Uncontained fluid spill covers the walking surface. Worker is crossing its edge with no PPE…", "target_phrase": "spill, puddle, fluid, liquid", "target_box": [220, 0, 1000, 1000] }
Nobody can train a detector for every object that can end up on a road. Simvera does not try. It segments the drivable surface first, then flags anything on it that is not a vehicle: rockfall, dropped cargo, potholes, animals, a stray cone. The class list is a text file.






// POST /v1/segment → one entry per obstruction { "label": "boulder", "score": 0.87, "bbox": [148, 402, 352, 548], "road_overlap": 0.94, "mask": "<png, base64>" }
A general vocabulary has never seen your tooling, your fixtures, or the part that comes off your line. For those we render the object in simulation and train a detector you keep, sized for edge hardware.
A cone marks a hazard on the floor, and a robot has to know where it is in metres, not pixels. No public dataset shows cones under plant lighting from a ceiling camera. This one was rendered, trained and put live on a real feed, and it is the same path any object of yours takes.



// cam-04 · one entry per detection { "class": "traffic_cone", "score": 0.94, "bbox": [764, 617, 889, 823], "world_xy": [3.731, -7.416], "unit": "m, floor plane" }
Three forces are pushing cameras to get smarter, on factory floors and on the road. Each one runs into the same bottleneck. The data to train these systems is slow, expensive, and hand-labeled. That bottleneck is where Simvera sits.