---
updatedAt: 2026-08-27T14:41:47.000Z
agentTools:
  projectIndex: https://documentation.picsellia.com/llms.txt
---

# Custom Shapes import from another version

We have seen that you can annotate a `DatasetVersion` by importing an *Annotation file* or using the integrated *Annotation tool*.

Picsellia also offers the possibility to **transfer **`Shape`** from one **`DatasetVersion`** to another**, as long as they are versions of the same `Dataset`.

For Computer Vision teams, this is what makes it possible to build a new `DatasetVersion` type (for instance a `Rectangle`-only version dedicated to a specific model) directly from the `Annotation` already produced in another version of the same `Dataset`, instead of re-annotating everything from scratch.

Only the `Shape` of `Asset` present in both `DatasetVersion` — meaning they are linked to the same `Data` in the `Datalake` — can be transferred.

`Shape` import also works if the `DatasetVersion` receiving the `Shape` is already annotated, so be careful not to create duplicate `Shape`. For each impacted `Asset`, the imported `Shape` are added to the `Annotation` related to your user if it already exists, otherwise a new `Annotation` containing the imported `Shape` is created for your user.

## 1. Import `Shape`

First, reach the `DatasetVersion` that will receive the `Shape` (the *Target* `DatasetVersion`) from the already annotated `DatasetVersion` (the *Source* `DatasetVersion`).

Then, go to *Settings > Import Shapes*.

<Image src="https://files.readme.io/2abfc704bbe9e2bf4fa2ca8fda30ad8f8dc725ae5d28e66080352f32c8beed65-image.png" align="center" caption="Access the Import Shapes feature" border={true} />

<Callout icon="🚧" theme="warn">
  The _Target_ `DatasetVersion` must already be set up with a _Version Type_ and `Labelmap`, detailed [here](https://documentation.picsellia.com/docs/dataset-set-up-the-dataset).
</Callout>

This is a 4-step wizard:

* **1. Source Dataset Version**: select which other `DatasetVersion` of the `Dataset` to import `Shape` from.
* **2. Target Label**: select the `Label` of the current (*Target*) `DatasetVersion` under which the imported `Shape` will land.
* **3. Source Shape**: select the `Label` of the *Source* `DatasetVersion` whose `Shape` should be imported as the *Target* `Label` chosen above.
* **4. Instructions**: review the resulting instruction lines before running the import.

<Image src="https://files.readme.io/98e040539154bf5e08b0f8adbabe0618e07f356d9427b508669c24984b8ab6c1-image.png" align="center" caption="Customized Shapes import" border={true} />

This **system is highly customizable**: you can transfer the `Shape` of a given `Label` from the *Source* under a differently-named `Label` in the *Target*, and repeat steps 2-3 to merge `Shape` from two or more different `Label` of the *Source* under a unique `Label` in the *Target*.

<Image src="https://files.readme.io/50052ea433c2cb014ec2ed640dc7a6c2a7508486b3c0d956c7c2cf224684eb3e-image.png" align="center" border={true} />

**Each transfer generates an instruction line**, letting you review and remove any of them (with the *x* icon) before confirming.

When the instructions suit your needs, click on *Import Shapes*.

The import completion can be tracked from the *Jobs* panel.