Relations
Relationships define how objects interact or connect with each other in a scene. They help perception models understand spatial dependencies, object hierarchies, and physical connections—enabling autonomous systems to predict behavior, plan paths, and reason about complex scenarios like a rider on a motorcycle or a trailer attached to a truck.


Enter relation name in the Title
Choose a parent (leading) class from the dropdown. For example, Bicycle
Choose a child (following) class from the dropdown. For example, Rider
Relationship Types and Use Cases
Use Case 1: One-Way Relations
Tip: When one object (child) depends on or is attached to another object (parent).
Examples: Car atop a trailer. rider sitting on a two-wheeler, stroller being pushed by a pedestrian, trailer connected to a truck cabin
A. Select the Child to Create a Relation
Consider a relationship between Rider (child) and TwoWheeler (parent)
How it works:
Select the Rider annotation (the dependent object).
Click the relationship tab and choose the relationship type.
The selected annotation becomes the child and appears on the left side in all visual locations.
Select the TwoWheeler annotation to complete the relationship.
B. Select the Parent to Create a Relation
Consider a relationship between Rider (child) and TwoWheeler (parent)
How it works:
Select the TwoWheeler annotation (the supporting object).
Click the relationship tab and choose the relationship type.
The selected annotation becomes the parent and appears on the right side in all visual locations.
Select the Rider annotation to complete the relationship.
Use Case 2: Class Has Multiple Relations
When to use: When a class can form relationships with multiple different parent classes.
Example : A Rider can sit on either a TwoWheeler or a Bicycle
Consider the relationship:
between Rider (child) and TwoWheeler (parent)
between Rider (child) and Bicycle (parent)
How it works:
Select the Rider annotation (child).
The tool prompts you to choose which relationship type since Rider can relate to two different parents.
Select the appropriate relationship (e.g., "sits on TwoWheeler" or "sits on Bicycle").
Note: If you select the parent first (TwoWheeler or Bicycle), no prompt appears, the relationship is automatically determined.
Use Case 3: Cyclic Relations
A. Class Category is Both Child and Parent
Tip: When objects of the same class can connect to each other.
Example: A pedestrian holding hands with another pedestrian, or a vehicle towing another vehicle.
Consider the relationship between Vehicle (child) and Vehicle (parent)
How it works:
Select a Vehicle annotation.
The tool prompts you to choose the direction of the relationship:
Outgoing: Selected annotation becomes the parent (the one towing)
Incoming: Selected annotation becomes the child (the one being towed)
Select the direction, then select the second vehicle to complete the relationship.
B. A Class Category is a Parent in One Relationship and Child in Another
Tip: When an object connects to objects on both sides, forming a chain.
Example: A bi-articulated bus where the center segment is attached to both the front and rear segments.
Consider the relationship:
between BusCenter (child) and BusFront (parent)
between BusRear (child) and BusCenter (parent)
How it works:
Select the BusCenter annotation.
The tool prompts you to choose which relationship to create:
BusCenter attached to BusFront (BusCenter is the child)
BusRear attached to BusCenter (BusCenter is the parent)
Select the appropriate relationship and then select the corresponding annotation (BusFront or BusRear).
Repeat to create the second relationship if needed.
The BusCenter annotation now appears in both child and parent roles across different relationships.
Visual Guide: Sphere Size Indicators
Across all relationship types:
Small sphere = Child (dependent/attached object)
Big sphere = Parent (supporting/base object)
This consistent visual language helps annotators quickly identify relationship hierarchies in the point cloud.
Last updated