# Steps to Label

{% stepper %}
{% step %}

#### 1. Scene Setup & Orientation

* Setup point cloud visibility and density from Tool Settings (tool Footer).
* Fit the entire point cloud in the viewing window using Fit to Screen (tool Header).
* Jump to the centre (near the Ego vehicle) by using Jump to Origin (tool Header).
* Toggle to Fullscreen if desired (tool Header).
  {% endstep %}

{% step %}

#### 2. Navigation in point cloud

* Choose one of the two Navigation Controls to navigate in the point cloud based on your preference. (tool Header)
  {% endstep %}

{% step %}

#### 3. Object Identification

The tool provides multiple features & interactions that aid in object identification:

* Expand and collapse the image Panel whenever needed to cross-check the object/scene-related details.
* Use the help of the raycaster while navigating through the point cloud to see the respective coordinate highlighted in Camera Image(s).
* On hovering on the Cameras, a red cone (Frustum) will appear in the point cloud emerging from the Ego vehicle to indicate the direction the camera is facing.
* Enable the Merge Point Clouds across the frames to identify and mark stationary objects.

Learn more: <https://docs.imerit-prod.io/annotation-tool/key-features/merged-point-cloud>
{% endstep %}

{% step %}

#### 4. Object Visibility

For better object visibility during drawing/marking use the following features:

* Isolate areas of the point cloud where the object is present by marking a boundary to hide surrounding/background points.
  * Reference: <https://docs.imerit-prod.io/annotation-tool/tool-layout#isolate>
* Hide points from bottom (ground) to top (ceiling) and vice-versa using the Ground & Ceiling Mover.
  * Reference: <https://docs.imerit-prod.io/annotation-tool/tool-layout#ground-and-ceiling-mover>
    {% endstep %}

{% step %}

#### 5. Object Labelling

* Switch to a desired view to start marking an object in the top view using BEV Mode or 3 dimensionally using 3D Mode.
  * BEV Mode: <https://docs.imerit-prod.io/annotation-tool/tool-layout#bev-3d-mode>
  * 3D Mode: <https://docs.imerit-prod.io/annotation-tool/tool-layout#id-2d-3d-mode>
* Identify the object either on the point cloud or on the camera sensors.
  * Pull up the Camera Sensors using the hotkey `Shift + Q` or double-clicking the camera sensor in the reference images.
* Click the '+' icon on the Class the object belongs to from the Class List.
  * Class List: <https://docs.imerit-prod.io/annotation-tool/tool-layout#id-3.-class-list>
* All the Drawing Tools linked to the Class will appear. Select the appropriate one from the Available Drawing Tools.
  * Drawing Tools: <https://docs.imerit-prod.io/annotation-tool/drawing-tools>
    {% endstep %}

{% step %}

#### 6. Annotation Detail Input

After marking the annotation, mark the annotation details in the popup that appears. Enter the Instance, Attribute Details and Relationship if any.

**Attributes and Relationships**

Once an annotation is created, the user needs to input the following:

**a. Time-varying & Constant Attributes**

* Enter all the mandatory attributes (constant and time-varying).
  * constant: <https://docs.imerit-prod.io/project-setup/create-recipe/3.-attributes#id-1.-attribute-type>
  * time-varying: <https://docs.imerit-prod.io/project-setup/create-recipe/3.-attributes#id-1.-attribute-type>

![Attributes image](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXfF9LOoDhqOt5U6opjwdg7l61mSC7aMSSO02wJhkS7VG8cApGzmguaX85TEcG27HZMgr19-LCnsHieGDyHzh95783FnOZPZbpL54TQSSY8Kwks8XrVW5kq3ZRGneAtcko7jvNrDejbyMnGNf5BzaHIugOA%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=6c8dcc8b\&sv=2)

**b. Relationship**

* This tab is enabled if a relation has been defined in the recipe generator.
  * Recipe relations: <https://docs.imerit-prod.io/project-setup/create-recipe/4.-associations#b.-create-relations>

Steps:

1. Select the Relation type from the dropdown.
2. Select the Instance it has a relationship with (multiple instances can be added).
3. The relationship between the two can be applied across all frames or only the current frame.
4. The view icon allows the user to see the list of frames the relationship exists on.
5. Once the relationship is saved, the visual representation of the link is displayed over the point cloud with a line connecting the two instances.

![Relationship UI 1](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXesi5FTa8Oid9ZxYYPfsUkeTqnOxmlSOMrCCbfGm5tSEKWOxB0QVNi8_GWeU_rnT3gUycq43XRzE11R1skrHWQ95NJvzZykMB0T8Hh8o1nSpdI08LTtCFMa6gspGg7PKKBZEEOLbC7ICL3u8RvYEAN71Bw%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=a6059fba\&sv=2)

![Relationship UI 2](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXfaiA0rL1LnggBrc9_yACFoBdvLuZqYYYsCttf-npgaadc9t5h6Yyl1d2f2_AoURxnDg76PXoIhtEgumXl4KKDydDreJOM5lI1ZsYosfnzg8SAVTzOV5vLcH2yUEIsFxS7VhDL19CzIHTLoxxXHE03qfnk4%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=44226d7c\&sv=2)

![Relationship UI 3](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXnFGAIKWWNC-KIYMQuWrz8SYLMUWE3ebP6xjv6s6SqH8JM3zzy8ypPbeSyJp3JFnBU-dmml57_fVOPmYmZBb1a0UM9b9xKMocTthly5nS_n06XqFzK0b1tZlvAUTyjE5OF3xsapwFw-OUhiU698gC_4It6tQ%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=93ccbdff\&sv=2)

Learn more about the Relationship feature: <https://docs.imerit-prod.io/annotation-tool/key-features/relationship>

**Instance ID**

An Instance ID is an identifier assigned to each labelled object across the batch of frames.

* This instance ID can be used to track an object over multiple frames.
* Instance ID can be viewed in the status box that appears on hover or selection of an annotation on the class list.
  * Status box: <https://docs.imerit-prod.io/annotation-tool/tool-layout#status>
  * Class list: <https://docs.imerit-prod.io/annotation-tool/tool-layout#id-3.-class-list>
* Instances can be created, modified or merged.
  * Creating instance: <https://docs.imerit-prod.io/annotation-tool/steps-to-label#creating-instance>
  * Modifying instance: <https://docs.imerit-prod.io/annotation-tool/steps-to-label#changing-instance-id-for-an-annotation-across-frames>
  * Merging instance: <https://docs.imerit-prod.io/annotation-tool/steps-to-label#merging-instance-id>

![Instance UI 1](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXfxR2LzhVWo-mhwAxVFlu75y0Tp5yiRmQneS9RQQFbtJ4dXmAZsx5wHV-5jPdq75bgVOmeGeoSnNlJX8GoivqXJ-xPhBiEZ8CNoZOBTFfYMI3k9rluyXld5evhf97gD5ubtJuQ1QgLqrSjii6kxtuGp2Xus%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=f6206bea\&sv=2)

![Instance UI 2](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXcCQNlz_uC92TRov9d1bfR8KLbBrQ3puPIka-xPeEbWDTsDOaIiflCzZWQS6jKkhatXpSMoMOGfLC51R_e5EATSGwWXjlyMp0uGlsOlBEgsCru-FfQrv5ojJDZ-IQCCUSUWHa1QFRQRq8xpB1fmYsVgmUE%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=8d35eafd\&sv=2)

**Creating Instance**

After creating an object, the user is asked to create a new instance or select "+ Create New".

* There will always be one unique instance per Frame and Sensor.

Example: Only one object will have the ID car\_1 which is present in Frame 1. This car could be present in 3 Cameras and the point cloud of Frame 1. Hence each of the 4 Sensors (3 Camera, 1 LiDAR) will have an annotation with ID car\_1.

![Creating instance example](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXe3Kksf8V3bNrdWXUOoiuVUlaBnlsjmw0dGqF639Aj0gX2VAOVf3CvzS-Fi0ubvUSoph64MeAaU6BVL09x7COaVMilwli63_myHWEc2_4gmfSNf1BHGW3-Ownn3QKlqV0fny0wJ2p0BrgOTlOmJRFubWt8%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=5ad7da99\&sv=2)

The Instance Dropdown allows:

* Creating New Instances.
* Listing all created instances that are missing in that Sensor (e.g., car\_48).

**Changing Instance ID (for an annotation across frames)**

1. Select the object.
2. Open the annotation details pop-up.
3. Select "+ Create new". The tool will allocate a new unique ID to it.
4. Save the new Instance ID. This replaces the old Instance ID in all frames for that annotation.

**Merging Instance ID**

If the user realises that two instances are the same object (e.g., car\_2 on Frame 10 is actually car\_1), merging is required.

Steps:

1. Select the annotation you want to merge into another instance (e.g., car\_2 on Frame 10).
2. Right-click and select Annotation Details.
3. Open the instance ID dropdown. This dropdown lists annotation IDs missing from the current frame and the option to create a new one.
4. Select the appropriate existing ID to merge with (e.g., select car\_1).
5. Save and the old instance gets changed to the new selected one (car\_1 becomes car\_2 in Frame 10).

Note: Merging instances is only possible when both instances have no overlapping Keyframes.
{% endstep %}

{% step %}

#### 7. Dimension Setting/ Modification

* On selecting an annotation, the multiview mode will be enabled on the right-side. Hover on the multiview to enable the annotation to modify it from the top, side, and front views aiding accurate dimension modification.
* Learn how to modify annotations using Shortcuts.
  * Shortcuts: <https://docs.imerit-prod.io/annotation-tool/tool-shortcuts#drawing-tools-and-modification>
* Learn how to use Drawing Tools.
  * Drawing Tools: <https://docs.imerit-prod.io/annotation-tool/drawing-tools>
    {% endstep %}

{% step %}

#### 8. Interpolation (for a moving Obj.)

If the annotation created is for a moving object, use keyframe interpolation to mark the object across all the sequential frames without having to create it in every frame.

* Keyframe interpolation: <https://docs.imerit-prod.io/annotation-tool/key-features/keyframe-interpolation>
  {% endstep %}

{% step %}

#### 9. Object Tracking

* Use this feature when an object is required to be labeled in both point cloud and image sensors while sharing a unique instance ID.
* The projection of the created cuboid in the point cloud is visible on the appropriate camera images.
* Double-click on that image to enlarge it.
* Create a rectangle on that object in the image.
  * Create rectangle: <https://docs.imerit-prod.io/annotation-tool/drawing-tools/rectangle#create-rectangle>
* Annotation detail input opens up. Choose the instance ID the same as its parent annotation created in the point cloud. Fill in the remaining details and Save.
* The 2D instance of the same object appears under the 3D instance created on the point cloud (sharing the same ID). Example: Truck\_1 is a cuboid annotation created in the point cloud and the instance of the same object created in Image will appear as Truck\_1 #2 (with a 2D icon on the left of the label).

![Object tracking example](https://docs.imerit-prod.io/~gitbook/image?url=https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocsz%2FAD_4nXeU2ahp0amk3G9qy4aUUTPzrCLvl0sGlQCKsWOZ7mmh4JMHK0RxnNoQgEY_9_EmALtPF0z4_mfPXfI9w6Maxt24u0-Js5_Sun7IVUoIH7ETSyzeNsMyn-GA-Nze0Bvq5uCmcXWXlKbGvNQDfeakSGLHS55s%3Fkey%3DlGhAQLv5xC3Ciuwf6zBTGQ\&width=768\&dpr=4\&quality=100\&sign=b3b85455\&sv=2)
{% endstep %}

{% step %}

#### 10. Cross-Checking

* Use the outlier feature to locate points that have not been labelled.
  * Outlier: <https://docs.imerit-prod.io/annotation-tool/key-features/outlier>
* Use object clipping on the class row to identify if any extra points have been labelled for an object or if required points have not been labelled for an object.
  * Class row / object clipping: <https://docs.imerit-prod.io/annotation-tool/tool-layout#class-row>
* Conduct auditing and mark issues that are observed in the Audit Tool.
  * Audit Tool / how to raise issues: <https://docs.imerit-prod.io/audit-tool#how-to-raise-issues>
* View the overall submissions of batches using the Visualization Tool.
  * Batches: <https://docs.imerit-prod.io/project-setup/pre-process-data#batch>
  * Visualization Tool: <https://docs.imerit-prod.io/visualization-tool>
* Pull up the camera sensor with `Shift + Q`, locate the object, press `Esc` to land in the point cloud in the same perspective as the camera sensor.
  {% endstep %}
  {% endstepper %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.imerit.net/3d-multi-sensor-fusion/labeling/3d-multi-sensor-fusion-labeling-editor/steps-to-label.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
