Submissions on Grand Challenge are made in form of Docker Containers.

Development¶

You can use the example submission as a starting point for developing your algorithm container. The provided example includes also the scripts that are necessary to build and export the docker image.

The example contains various helpers for obtaining input and output paths and to export images.

Manually managing output path¶

We encourage participants to use the starter kit as a template as it is already configured to correctly managed input and output paths. If you want to manage data writing with your own code, please make sure to create output the folder tree before writing your predictions:

from pathlib import Path
# Example output folder (Find it in the submission page!)
OUTPUT_FOLDER = Path("/output/images/stacked-neuron-images-with-reduced-noise/")
OUTPUT_FOLDER.mkdir(parents=True, exist_ok=True)

You can find the correct input and output paths directly in the submission page of each phase, by pressing the blue information buttons on the bottom of the page.

Writing TIFF Outputs with tifffile¶

The output of your model will be validated by the Grand Challenge systems before evaluation step. For a TIFF file to be valid, it must include specific metadata. In particular, if you are using tifffile, you have to make sure that the ResolutionUnit tag must is set.

You can do it easily by passing a resolution to the tifffile.imwrite function:

import tifffile

tifffile.imwrite(out_tiff_path, 
                 your_prediction,
                 resolution=(300,300))

Packaging¶

You can find detailed information on the process in the example submission.

Here follows a simple checklist:

  1. Check the Dockerfile to include all and only the resources you need (requirements, code, optionally models) and the correct entrypoint. The model can be either included in the container directly, or added separately from the platform interface. The second solutions allows you to re-use the same container with different models.
  2. Optionally change the image name in all the provided sh files if you plan to deploy multiple containers.
  3. Run do_test_run.sh to check that your container is running correctly.
  4. Run do_save.sh to generate a .tar.gz file of your container ready for submission

Submission¶

  1. Make sure your account has been verified
  2. Create an algorithm on the platform by selecting submit and selecting one preliminary phase. Then, select Manage your algorithms from the bottom of the page
  3. Upload a container by following the procedure
  4. Document your algorithm
  5. When your container is ready to run, create a submission on the preliminary phase
  6. If the submission succeeds, proceed to submit to the final phase when ready. Otherwise, you can re-upload a new container version by visiting your algorithm page.
  7. Repeat submission for the next task.

If you have any questions or issues with your algorithm, feel free to create a topic on the challenge forum or drop us an email through the Email organizers button on the challenge page.