Skip to main content
The Scene SDK (encord.beta.scene) is the recommended way to register point clouds and synchronized sensor streams in Encord. It lets you build Scenes from point cloud, image, camera, and frame-of-reference streams without writing raw Scene JSON. Use this guide for the workflow. Use the Scene SDK reference for method-level details.

Build and Upload a Scene

Build the Scene with SceneBuilder, then register it into Files & Folders with StorageFolder.upload_scene.
Build and Upload a Scene
upload_scene returns the new Scene item UUID. Add that item to a Dataset before creating an annotation Project.

Add Multi-frame Sensor Streams

Create stream builders once, then append events. Use the same timestamp for events that should appear together in the editor.
Multi-frame Scene Streams
Use integer timestamps for frame-indexed data. Use sensor timestamps when streams are sampled at different rates.

Coordinate Conventions

Set coordinate conventions in the SDK when your data uses known world and camera axes. For example, driving datasets often use a world convention such as forward, left, up and camera axes such as right, down, forward. Use SceneBuilder.set_world_convention and SceneBuilder.set_camera_convention with Direction values. The world and camera conventions must have matching handedness.

Read and Copy Registered Scenes

SceneReader fetches a registered Scene and returns signed URLs for its constituent files. It can also convert a registered Scene back into a DataUploadScene for migration or copying.
Read and Copy a Scene
Use find_stream and find_event when a missing stream or timestamp is acceptable. Use get_stream and get_event when missing data should fail fast.

Camera Distortion Models

The supported distortion models are defined in encord.beta.scene.intrinsics.
Camera Distortion Models
For most workflows, use intrinsics_pinhole or a dedicated distortion constructor. Use intrinsics_advanced only when you already have full calibration matrices and need to supply them directly.

Validation Checklist

Before handing Scenes to annotators:
  • Confirm every point cloud and image URI is accessible by the integration used for registration.
  • Keep stream names stable and descriptive, such as lidar, front, rear, or ego.
  • Use integer timestamps for frame-indexed data unless you need sensor-time alignment.
  • Open at least one registered Scene in the editor to verify orientation, calibration, and frame navigation.

Create and Register Scenes

Learn the Scene data model and registration choices.