Sonar scene authoring from natural language

Studio is an agent that builds a sonar scene from an English description and runs the ApertureLab simulator on a GPU. A 20 m scene at 200 scatterers per square meter goes from sentence to image in 50 s. Authoring a scene by hand requires knowing what a plausible seafloor looks like, which objects belong on it, and which imaging geometry will see them. Studio places that knowledge in the agent, so a scene can be specified in conversation.

Preview

Terrain preview before simulation

A full simulation takes minutes of GPU time, and a heightmap preview takes tens of seconds. Studio renders the terrain first, marks the band that the sonar will image, and reports when a requested feature falls outside that band. The scene is corrected in conversation before the simulation runs.

The agent reads the same scene definition as the simulator and runs the same validator that blocks an invalid run in the desktop app. A validation failure is reported as a failure; the agent does not substitute a different scene.

The Studio interface: a conversation on the left where the agent describes boulders and trawl grooves it has placed, and a heightmap preview on the right with a dashed line marking the along-track band the sonar will image
In the preview step, the dashed line marks the imaged along-track band. Here the agent has found that only part of the boulder outcrop falls inside the band, and offers to move it before anything is simulated.

Products

Output products

Once the scene is accepted, the job runs on the GPU and returns the full product set: the dynamic-range-compressed image for viewing, the complex SLC for processing, and the raw HDF5. The pipeline, formats, and imagery are those of a local run of the same scene file.

Studio showing a finished synthetic aperture sonar image of a rippled seafloor with objects, alongside a product list offering full-resolution PNG, display JPEG, port image and HDF5 downloads
A finished run whose scene was specified in conversation. The image is a point-scatterer simulation on a HISAS 1030 geometry, 40 m along track by 200 m in range.
50 s
wall clock end to end for a 20 m scene at 200 scatterers per square meter, from sentence to image
20 tools
create, patch and validate a scene; paint zones; preview the heightmap; queue and watch a run; list, render and build 3D models; answer questions from the reference docs

Sandbox

Restrictions enforced by the tool surface

An agent that can run a simulator runs code on a workstation, so Studio restricts what the agent can do. It has no shell and no ability to read, write, or edit files. It talks to exactly one in-process tool server, and it loads none of the operator's own settings, hooks, or extensions.

The documentation tool shows how the restriction works. Studio answers questions about sonar theory and the scene schema by reading the project's reference documentation and nothing else. The lookup resolves the path first and then checks that the result is still inside the public reference directory, so no phrasing of a question reaches anything else in the repository.

These restrictions are properties of the tool surface given to the model; none of them depends on instructions in the prompt.

A request, however it is phrased, reaches only the capabilities that the tool server exposes.

Next: the labels that come with every image, or the physics underneath.