The Project Settings are accessed using the Settings tab of your Project. The Settings tab is only visible to Project Admins and Team Managers.

Copy Project

To copy a Project:

  1. Click the Copy project button in the Options section of the Project’s Settings.
  2. Select the parts of the Project to copied into the new Project. The Ontology has to be copied and is therefore always selected. All components of the current Project are selected by default.

You can copy any combination of the following assets:

  • Datasets: all datasets are copied. New annotation tasks will be created for all videos and image sequences if their labels are not copied over.
  • Labels: copy the labels in specified data units. All labels are copied by default. Change the dropdown to Selected Labels ,as seen in the image below, to only include specific labels in your new Project. Click the +Advanced settings button to select the state of the data units labels should be copied for.
  • Models: this will copy all the models in your Project along with their training logs.
  • Collaborators: copy all Project users with their respective roles. Project admins are copied regardless of whether this is selected.
  1. Click the Make a copy button to copy the Project with the specified components.

Upload Annotation Instructions

  1. Navigate to the Settings tab of your Project.

  2. Click the Add instructions button to upload instructions for your annotators in PDF format.

To ensure the best possible results, provide as much detail as possible about what you would like annotated and how precise bounding boxes should be drawn. For example, instead of saying ‘person’, consider defining what should constitute a person for your annotators - only a full person? A torso? Or should any part of a person in a frame be labeled as a ‘person’? The more specific your annotator instructions, the higher the chances that your annotators perform well.

Once uploaded, annotation instructions are be accessible within the Label Editor, and the Workflow tab of your Project.

Project Tags

Tags are created and managed on the Organization level. Once created they can be added to individual Projects.

You can add tags to a Project if you are part of an Organization.

Project tags allow you to:

  • Flexibly categorize and group your Projects.
  • Filter your Projects.

You can add tags to your Projects in:

To add or remove Project tags:

  1. Navigate to the Options tab and click the Project tags drop-down. All available tags in your Organization are shown.
  2. Click on a tag to add it to a Project.

Remove a tag from your Project by clicking the same tag again, or clicking the x button next to its name.

Filtering Projects by tags

You can filter your Projects based on the tags they contain.

  1. Click the Projects on the left side navigation
  2. Click the ‘Filter by tags’ drop-down and select one or more Project tags. Only Projects with the selected tags are now displayed.

Edit Project Ontology

You can view or switch the Ontology attached to your Project.

Changing the Ontology can render existing labels invalid and lead to data inconsistency.
  • Click the Switch ontology button to switch the Ontology linked to your Project. The resulting pop-up allows you to choose an existing Ontology from a list, or create a new Ontology for this Project.

  • Click the View ontology button to view the details of the Ontology that is attached to the current Project.


Change Datasets Attached to a Project

The Datasets section allows you to attach or detach any number of Datasets to your Project by clicking Manage. You must create a new Dataset in the Datasets section for it to become available in a Project’s settings.


Manage Project Collaborators

To manage Project collaborators, select the Team pane in your project Settings. Collaborators can be added individually or as groups of users.

Here you can invite collaborators to the Project, and configure their roles.

To add collaborators to a Project:

  1. Click the + Invite collaborators button. A dialog appears.
  1. Select a user role for the collaborator you want to add by selecting an option from the list.

  2. Type the email address of the user you want to add and select the user from the list.

  3. Click the Add button to add the user with the specified role.

To add collaborators as a group:

To add collaborators as a group, your Organization needs to have user groups. Navigate to our documentation on creating user groups for more information.
  1. In the Groups section, click on Manage. The Manage groups dialog appears.
  1. Click the Select group drop-down and pick a group you want to add to the Project.
  2. Click the Select Role drop-down to assign a role to the group of collaborators.
  3. Click Add to add the group to the Project.
To delete a group from the Project, click the Delete button next to the group name.

To change collaborator roles:

Only Project admins can modify collaborator roles. Admin roles cannot be changed, not even by other admins.

You can assign the following roles to collaborators:

  • Annotator: annotators are responsible for labeling. This is the default role for all collaborators.
  • Reviewer: for reviewing labeled tasks.
  • Annotator & reviewer: a combination of annotator and reviewer.
  • Team manager: a team manager can assign tasks to other users, and add collaborators to the project.
  • Admin: gives this collaborator full administrative control over this Project. This is an irreversible action.

Custom Editor Layout

Contact support to gain access to custom editor layouts.

You can customize the default Label Editor layout by uploading a JSON file that defines your preferred arrangement. These JSON files can be added in the Project settings and are applied to all tasks in a Project.

Custom editor layouts depend on a file’s client_metadata or their DICOM tags. This means that custom editor layouts only work for files that contain client_metadata or DICOM tags. Watch the video tutorials below to learn how it fits together.

To upload an editor layout:

  1. Navigate to the Project settings.
  2. Click on Layouts.
  3. Click Upload JSON.
  4. Select the JSON file containing the layout you want the Label Editor to have.

JSON file requirements:

The JSON file must follow the JSON schema defined here. The following fields are required:

Complete example

1

Add client metadata to files

Editor layouts are based on DICOM tags for DICOM files or on client_metadata for all other use cases. We provide templates for common mammography layouts based on DICOM tags here.

This example uses client_metadata. The following SDK script can be used to add client metadata to specific data units in a Dataset.

from encord import EncordUserClient
from encord.client import DatasetAccessSettings

# Instantiate Encord client by substituting the path to your private key
user_client = EncordUserClient.create_with_ssh_private_key(
                ssh_private_key_path="<private_key_path>",
            )


# Specify a Dataset to read or write metadata to
dataset = user_client.get_dataset("<dataset_hash>")

# Fetch the Dataset's metadata
dataset.set_access_settings(DatasetAccessSettings(fetch_client_metadata=True))

# Add your file names and client metadata here
layouts = {
  'Image1.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': '1'},
  'Image2.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '1'},
  'Image3.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "2"},
  'Image4.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '2'},
  'Image5.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': '1'},
  'Image6.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '1'},
  'Image7.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "2"},
  'Image8.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '2'},
  'Image9.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "1"},
  'Image10.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '1'},
  'Image11.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "2"},
  'Image12.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '2'},
}

for dr in dataset.data_rows:
  dr.client_metadata = layouts[dr['data_title']]
  print (dr.title)
  print (dr.client_metadata)
  dr.save()
2

Create a JSON file

Create a JSON for specifying the editor layout that suits your needs.

In the JSON file below:

  • The grid arrangement is configured to display two files side by side in the Label Editor.

  • The gridContent section specifies that tasks in either position (0 or 1) can have client metadata values for encord-EditorGridPosition set to either A or B.

  • The topLevelGridFilter is defined as encord-LayoutGroup, meaning tasks with matching encord-LayoutGroup metadata values are displayed together in the Label Editor, ensuring they appear side by side when they share the same encord-LayoutGroup values.

    {
      "grid": [
        [0],
        [1]
      ],
      "gridContent": {
        "0": {
          "client_metadata_query": {
            "or_conditions": [
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "A"
              },
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "B"
              }
            ]
          }
        },
        "1": {
          "client_metadata_query": {
            "or_conditions": [
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "A"
              },
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "B"
              }
            ]
          }
        }
      },
      "topLevelGridFilter": {
        "client_metadata": {
          "key": "encord-LayoutGroup",
          "operator": "="
        }
      },
      "$schema": "https://raw.githubusercontent.com/encord-team/Annotate/main/editor-layouts/editor_layout_schema.json"
    }
    
3

Create a JSON file

Upload the JSON file to your Project in Encord.

  1. Navigate to the Project settings.
  2. Click on Layouts.
  3. Click Upload JSON.
  4. Select the JSON file containing the layout you want the Label Editor to have.
4

Create a JSON file

Open any task in the task queue of your Project.

The JSON file in this example results in the following Label Editor layout.

We provide an end-to-end walkthroughs for how to set up ustom editor layouts using :


Delete Project

You can delete your Project by going to the Danger zone tab of the Project settings.

To delete a Project, click the red Delete project button.

Deleting your Project does not delete the Datasets attached to the Project, but it does delete the Project’s labels and Ontology.