diabolo op• Data kinds: table × table → rgb
• Call: import fullseye as fs; fs.ledger.diabolo_render(cam: 'dict', params: 'dict', *, center=None, axis=None, phase: 'float' = 0.0, omega: 'float' = 0.0, exposure: 'float' = 0.0, n_sub: 'int' = 8, sticks=None, ss: 'int' = 4, noise: 'float' = 0.0, blur_sigma: 'float' = 0.0, seed: 'int' = 0, background=None) -> 'np.ndarray' (to call the implementation directly, import diabolo; diabolo.diabolo_render(cam: 'dict', params: 'dict', *, center=None, axis=None, phase: 'float' = 0.0, omega: 'float' = 0.0, exposure: 'float' = 0.0, n_sub: 'int' = 8, sticks=None, ss: 'int' = 4, noise: 'float' = 0.0, blur_sigma: 'float' = 0.0, seed: 'int' = 0, background=None) -> 'np.ndarray'; from the registry, opsdrive.get("diabolo_render"))
Renders 1 frame of the diabolo by ray tracing (RGB float (H, W, 3), [0, 1]).
Shape = 2 cups (conical shells, outer surface red, inner surface yellow) + bottom plate (dark grey) + axle. Markers at n_slots positions on the inner surface of the near cup (reflective = white, dummy = grey). center defaults to the camera's look-at point, axis defaults to the direction facing the camera. phase = rotation angle measured from body-frame e1; omega [rad/s] and exposure [s] give the rotational blur of the markers (exposure centre = frame time, averaged over n_sub points). Passing sticks = (2, 3) also draws the sticks, the string (2 strands reaching to the axle) and blue marks at the stick tips. ss × ss supersampling only over the diabolo's bounding rectangle (edge coverage comes out correctly). noise = σ of per-pixel Gaussian noise (reproducible via seed), blur_sigma = optical blur [px].
Raises ValueError: shape of cam / params, zero axis, ss / n_sub < 1, negative noise, blur or exposure.
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• poc_diabolo_model_and_vision — py -3.11 examples/poc_diabolo_model_and_vision.py
rgb as input)spin_from_marker_sequence · carla_depth_decode · carla_transform_matrix · carla_pose_to_world · carla_camera_pose · carla_xy_yaw · carla_scene_load · town_chain
diabolo)diabolo_params · diabolo_spheroid · spheroid_closest · diabolo_dynamics_step · diabolo_simulate · diabolo_state_sequence · diabolo_throw_catch_truth · string_tension_static
*Provenance: diabolo.py — DRIVE operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.