Mobile AI 2021 Monocular Depth Estimation Challenge

Organized by Radu - Current server time: Jan. 25, 2021, 11:24 a.m. UTC


Jan. 1, 2021, 11:59 p.m. UTC


March 1, 2021, 11:59 p.m. UTC


Competition Ends
March 8, 2021, 11:59 p.m. UTC


Mobile AI Workshop @ CVPR 2021


Monocular Depth Estimation Challenge





Important dates


  • 01.15.2021 Release of train data (input and output) and validation data (inputs only)
  • 01.15.2021 Submission validation server online
  • [TBA] Runtime validation server online
  • 03.01.2021 Final test data release (inputs only)
  • 03.08.2021 Test output results submission deadline
  • 03.09.2021 Fact sheets and code/executable submission deadline
  • 03.11.2021 Preliminary test results release to the participants
  • 03.28.2021 Paper submission deadline for entries from the challenge
  • 06.15.2021 Mobile AI workshop and challenges, results and award ceremony (CVPR 2021, Online)


Challenge overview


The 1st edition of MAI: Mobile AI workshop will be held on June, 2021 in conjunction with CVPR 2021.

While depth estimation is needed in many camera-related tasks such as image segmentation, bokeh effect rendering or object classification, the majority of current solutions are too computationally expensive and thus cannot demonstrate high FPS on mobile devices. To address this problem, we propose a monocular depth estimation challenge, where the target is to obtain an output depth image with the highest fidelity to the ground truth and at the same time the model should be very efficient as measured by inference time on the mobile platform.

The top ranked participants will be awarded and invited to follow the CVPR submission guide for workshops to describe their solution and to submit to the associated MAI workshop at CVPR 2021.

More details are found on the data section of the competition.



Competition Details


To learn more about the competition, to participate in the challenge, and to access the dataset with low and high resolution image pairs everybody is invited to register.

The training data is already made available to the registered participants.



Provided Resources


  • Scripts: With the dataset the organizers will provide scripts to facilitate the reproducibility of the images and performance evaluation results after the validation server is online. More information is provided on the data page.
  • Contact: You can use the forum on the data description page (highly recommended!) or directly contact the challenge organizers by email (Andrey Ignatov (andrey [at], Samarth Shukla (Samarth.Shukla [at], David Plowman (david.plowman [at], and Radu Timofte (Radu.Timofte [at] if you have doubts or any question.

Mobile AI Workshop @ CVPR 2021


Monocular Depth Estimation Challenge


 Performance Evaluation


In this challenge, each submission is validated based on the following two metrics:

1. The quality of the reconstructed results.
2. The runtime of the model on the actual target mobile platform.


The evaluation of the reconstructed results consists from the comparison of the estimated depth images with the ground truth ones. The description of the runtime evaluation can be found in the corresponding tab.

For Fidelity, we use the standard root mean squared error (RMSE), scale invariant RMSE (si-RMSE), average log10 error (log10) and absolute relative difference (rel). For each dataset, we report the average results over all the processed images belonging to it.


For submitting the results, you need to follow these steps:

  1. process the input images and keep the same name for the output image results as produced by your method (example: for an input file with name "083.png" the output file should be "083.png") 
    Note that the output images should be saved with lossless compression.

  2. create a ZIP archive containing all the image results named as above and a readme.txt Note that the archive should not include folders, all the images/files should be in the root of the archive.

  3. export a TFLite model of your solution and add it to the abovementioned ZIP archive; this model will be used for performance evaluation on the target platform.

  4. the readme.txt file should contain the following lines filled in with the runtime per image (in seconds) of the solution, 1 or 0 accordingly if employs CPU or GPU at runtime, and 1 or 0 if employs extra data for training the models or not.

    runtime per image [s] : 10.43
    CPU[1] / GPU[0] : 1
    Extra Data [1] / No Extra Data [0] : 1
    Other description : Solution based on A+ of Timofte et al. ACCV 2014. We have a Matlab/C++ implementation, and report single core CPU runtime. The method was trained on Train 91 of Yang et al. and BSDS 200 of the Berkeley segmentation dataset. 

    The last part of the file can have any description you want about the code producing the provided results (dependencies, link, scripts, etc.)
    The provided information is very important both during the validation period when different teams can compare their results / solutions but also for establishing the final ranking of the teams and their methods.

Mobile AI Workshop @ CVPR 2021


Monocular Depth Estimation Challenge



Converting Your Model to TFLite Format

In this challenge, each submission is validated based on the following two metrics:

1. The quality of the reconstructed results.
2. The runtime of the model on the actual target mobile platform.

To run your model on a mobile device, it has first to be converted to TensorFlow Lite (TFLite) format. Please find the conversion instructions for TensorFlow, Keras and PyTorch models below:


- TensorFlow & Keras

It is fairly easy to get a TFLite model when using these two libraries. The following code will show you how to convert a simple U-Net model to the target TFLite format with TensorFlow and Keras libs:



- PyTorch

PyTorch model can be generally converted to TFLite format using the following pipeline:

PyTorch -> ONNX -> TensorFlow -> TensorFlow Lite

However, we do not recommend using PyTorch for exporting your model to TFLite because of the following issues:

  1. Right now, not all PyTorch ops are supported by the converter. You might get a model showing high fidelity scores but that cannot be converted to TFLite.
  2. There are a number of issues related to ONNX-TensorFlow converter that might lead to a corrupted model.
  3. Compared to PyTorch, TensorFlow (and TFLite) is using NHWC tensor format instead of the NCHW one. ONNX-TensorFlow is trying to modify the tensors accordingly, but for some ops this conversion might not work.
  4. There are tens of different specific issues related to TensorFlow -> TFLite model conversion. If you are trying to convert PyTorch model to TFLite, the number of possible problems increases by at least 10 times. While we can provide you with some assistance in TF -> TFLite conversion, here will not be able to help you as in this case everything depends on the ONNX-TensorFlow lib: if there is an issues with some op, then no one will be able to fix it.

Despite the above mentioned issues, we will accept and evaluate your model if it was originally trained with PyTorch and you managed to convert it to TFLite. Additionally, you can find an instruction on how to convert a simple PyTorch U-Net model to TFLite below:




Testing Your Model on a Real Mobile Device

After you obtained a TFLite model, you can check its runtime using the following two options:

a. Run it remotely on the target evaluation platform  (the instructions will be announced soon).
b. Run it on your own smartphone.

We strongly encourage you to do all main testing on your own device since:

1)  If it is not working on your smartphone, then it will also not work on the target platform.
2)  It is much more convenient and efficient to debug / profile the model locally.
3)  You have an unlimited number of runs on your own device.

To run the resulting TFLite model on your smartphone, you can use AI Benchmark application allowing you to execute the model on mobile CPU, GPU, DSP and NPU:

1. Download AI Benchmark from the Google Play / website and run its standard tests.
2. After the end of the tests, enter the PRO Mode and select the Custom Model tab there.
3. Rename the exported TFLite model to model.tflite and put it into the Download folder of your device.
4. Select your mode type, the desired acceleration / inference options and run the model.

That's it - you should see the runtime, initialization time and RAM consumption of your model. Now you can try to play with different TF ops, layers and resolutions to improve all these parameters and get a very fast and efficient network!



An Important Hint


Each time you try a new model architecture - try to initialize it with random weights, then convert it to TFLite and run on your own device using AI Benchmark. While this will take you only a few minutes, you will be sure that the model you are developing can be successfully converted and executed on a mobile device, and besides that you will get its estimated runtime compared to your previous entry.



Model Optimization Instructions


The runtime of your final model will be evaluated on the Raspberry Pi 4 platform with 8Gb of RAM. Since it features four Cortex-A72 cores, it doesn't have any specific deployment requirements, and the runtime of your model on the Raspberry board will be almost linearly proportional to the runtime on your own smartphone when selecting the CPU inference option in AI Benchmark. This also means that almost all model optimization can be done locally - the faster is the inference time on your smartphone, the faster will be the speed of the model on the Raspberry Pi 4!

Mobile AI Workshop @ CVPR 2021


Monocular Depth Estimation Challenge



These are the official rules (terms and conditions) that guvern how the Mobile 2021 challenge on Monocular Depth Estimation will operate. This challenge will be simply reffered to as the "challenge" or the "contest" throughout the remaining part of these rules and may be named as "MAI" or "Depth" benchmark, challenge, or contest, elsewhere (our webpage, our documentation, other publications).

In these rules, "we", "our", and "us" refer to the organizers (Andrey Ignatov (andrey [at], Samarth Shukla (Samarth.Shukla [at], David Plowman (david.plowman [at], and Radu Timofte (Radu.Timofte [at] of MAI challenge and "you" and "yourself" refer to an eligible contest participant.

Note that these official rules can change during the contest until the start of the final phase. If at any point during the contest the registered participant considers that can not anymore meet the eligibility criteria or does not agree with the changes in the official terms and conditions then it is the responsability of the participant to send an email to the organizers such that to be removed from all the records. Once the contest is over no change is possible in the status of the registered participants and their entries.


1. Contest description

This is a skill-based contest and chance plays no part in the determination of the winner (s).

The goal of the contest is to learn a mapper from an input image to an output depth image and the challenge is called Monocular Depth Estimation.

Focus of the contest: it will be made available a new dataset adapted for the specific needs of the challenge. The images have a large diversity of contents. We will refer to this dataset, its partition, and related materials as Depth Estimation Dataset. The dataset is divided into training, validation and testing data. We focus on quality of the results, the aim is to achieve depth images with the best fidelity to the reference ground truth depth image. The participants will not have access to the ground truth from the test data. The ranking of the participants is according to the performance of their methods on the test data and on the mobile platform. The participants will provide descriptions of their methods, details on (run)time complexity, platform and (extra) data used for modeling. The winners will be determined according to their entries, the reproducibility of the results and uploaded codes or executables, and the above mentioned criteria as judged by the organizers.


2. Tentative contest schedule

The registered participants will be notified by email if any changes are made to the schedule. The schedule is available on the Mobile AI workshop web page and on the Overview of the Codalab competition.


3. Eligibility

You are eligible to register and compete in this contest only if you meet all the following requirements:

  • you are an individual or a team of people willing to contribute to the open tasks, who accepts to follow the rules of this contest
  • you are not a MAI challenge organizer or an employee of MAI challenge organizers
  • you are not involved in any part of the administration and execution of this contest
  • you are not a first-degree relative, partner, household member of an employee or of an organizer of MAI challenge or of a person involved in any part of the administration and execution of this contest

This contest is void wherever it is prohibited by law.

Entries submitted but not qualified to enter the contest, it is considered voluntary and for any entry you submit MAI reserves the right to evaluate it for scientific purposes, however under no circumstances will such entries qualify for sponsored prizes. If you are an employee, affiliated with or representant of any of the MAI challenge sponsors then you are allowed to enter in the contest and get ranked, however, if you will rank among the winners with eligible entries you will receive only a diploma award and none of the sponsored money, products or travel grants.

NOTE: industry and research labs are allowed to submit entries and to compete in both validation phase and final test phase. However, in order to get officially ranked on the final test leaderboard and to be eligible for awards the reproducibility of the results is a must and, therefore, the participants need to make available and submit their codes or executables. All the top entries will be checked for reproducibility and marked accordingly.

We will have 3 categories of entries in the final test ranking:
1) checked with publicly released codes 
2) checked with publicly released executable
3) unchecked (with or without released codes or executables)


4. Entry

In order to be eligible for judging, an entry must meet all the following requirements:

Entry contents: the participants are required to submit image results and code or executables. To be eligible for prizes, the top ranking participants should publicly release their code or executables under a license of their choice, taken among popular OSI-approved licenses ( and make their code or executables online accessible for a period of not less than one year following the end of the challenge (applies only for top three ranked participants of the competition). To enter the final ranking the participants will need to fill out a survey (fact sheet) briefly describing their method. All the participants are also invited (not mandatory) to submit a paper for peer-reviewing and publication at the MAI Workshop and Challenges (to be held online on June, 2021). To be eligible for prizes, the participants score must improve the baseline performance provided by the challenge organizers.

Use of data provided: all data provided by MAI are freely available to the participants from the website of the challenge under license terms provided with the data. The data are available only for open research and educational purposes, within the scope of the challenge. MAI and the organizers make no warranties regarding the database, including but not limited to warranties of non-infringement or fitness for a particular purpose. The copyright of the images remains in property of their respective owners. By downloading and making use of the data, you accept full responsibility for using the data. You shall defend and indemnify MAI and the organizers, including their employees, Trustees, officers and agents, against any and all claims arising from your use of the data. You agree not to redistribute the data without this notice.

  • Test data: The organizers will use the test data for the final evaluation and ranking of the entries. The ground truth test data will not be made available to the participants during the contest.
  • Training and validation data: The organizers will make available to the participants a training dataset with ground truth images and a validation dataset without ground truth images. At the start of the final phase the test data without ground truth images will be made available to the registered participants.
  • Post-challenge analyses: the organizers may also perform additional post-challenge analyses using extra-data, but without effect on the challenge ranking.
  • Submission: the entries will be online submitted via the CodaLab web platform. During development phase, while the validation server is online, the participants will receive immediate feedback on validation data. The final perceptual evaluation will be computed on the test data submissions, the final scores will be released after the challenge is over.
  • Original work, permissions: In addition, by submitting your entry into this contest you confirm that, to the best of your knowledge: - your entry is your own original work; and - your entry only includes material that you own, or that you have permission to use.


5. Potential use of entry

Other than what is set forth below, we are not claiming any ownership rights to your entry. However, by submitting your entry, you:

Are granting us an irrevocable, worldwide right and license, in exchange for your opportunity to participate in the contest and potential prize awards, for the duration of the protection of the copyrights to:

  1. Use, review, assess, test and analyze the submission, the results produced by your code or executables or other material submitted by you in this challenge in connection with this contest or any future work done by the organizers; and
  2. Feature your entry and all its content in connection with the promotion of this contest or related in all media (now known or later developed);

Agree to sign any necessary documentation that may be required for us and our designees to make use of the rights you granted above;

Understand and acknowledge that us and other entrants may have developed or commissioned materials similar or identical to your submission and you waive any claims you may have resulting from any similarities to your entry;

Understand that we cannot control the incoming information you will disclose to our representatives or our co-sponsor’s representatives in the course of entering, or what our representatives will remember about your entry. You also understand that we will not restrict work assignments of representatives or our co-sponsor’s representatives who have had access to your entry. By entering this contest, you agree that use of information in our representatives’ or our co-sponsor’s representatives unaided memories in the development or deployment of our products or services does not create liability for us under this agreement or copyright or trade secret law;

Understand that you will not receive any compensation or credit for use of your entry, other than what is described in these official rules.

If you do not want to grant us these rights to your entry, please do not enter this contest.


6. Submission of entries

The participants will follow the instructions on the CodaLab website to submit entries

The participants will be registered as mutually exclusive teams. Each team is allowed to submit only one single final entry. We are not responsible for entries that we do not receive for any reason, or for entries that we receive but do not work properly.

The participants must follow the instructions and the rules. We will automatically disqualify incomplete or invalid entries.


7. Judging the entries

The board of MAI will select a panel of judges to judge the entries; all judges will be forbidden to enter the contest and will be experts in causality, statistics, machine learning, computer vision, or a related field, or experts in challenge organization. A list of the judges will be made available upon request. The judges will review all eligible entries received and select (three) winners for each or for both of the competition tracks based upon the prediction score on test data. The judges will verify that the winners complied with the rules, including that they documented their method by filling out a fact sheet.

The decisions of these judges are final and binding. The distribution of prizes according to the decisions made by the judges will be made within three (3) months after completion of the last round of the contest. If we do not receive a sufficient number of entries meeting the entry requirements, we may, at our discretion based on the above criteria, not award any or all of the contest prizes below. In the event of a tie between any eligible entries, the tie will be broken by giving preference to the earliest submission, using the time stamp of the submission platform.


8. Prizes and Awards

The financial sponsors of this contest are listed on Mobile AI 2021 workshop web page . There will be economic incentive prizes and travel grants for the winners (based on availability) to boost contest participation; these prizes will not require participants to enter into an IP agreement with any of the sponsors, to disclose algorithms, or to deliver source code to them. The participants affiliated with the industry sponsors agree to not receive any sponsored money, product or travel grant in the case they will be among the winners.

Incentive Prizes for each track competitions (tentative, the prizes depend on attracted funds from the sponsors)

  • 1st place: ?00$ + ?smartphone + ?award certificate [TBA]
  • 2nd place: ?00$ + ?smartphone + ?award certificate [TBA]
  • 3rd place: ?00$ + ?smartphone + ?award certificate [TBA]


9. Other Sponsored Events

Publishing papers is optional and will not be a condition to entering the challenge or winning prizes. The top ranking participants are invited to submit a paper following CVPR2021 author rules, for peer-reviewing to MAI workshop.

The results of the challenge will be published together with MAI 2021 workshop papers in the 2021 CVPR Workshops proceedings.

The top ranked participants and participants contributing interesting and novel methods to the challenge will be invited to be co-authors of the challenge report paper which will be published in the 2021 CVPR Workshops proceedings. A detailed description of the ranked solution as well as the reproducibility of the results are a must to be an eligible co-author.


10. Notifications

If there is any change to data, schedule, instructions of participation, or these rules, the registered participants will be notified on the competition page and/or at the email they provided with the registration.

Within seven days following the determination of winners we will send a notification to the potential winners. If the notification that we send is returned as undeliverable, or you are otherwise unreachable for any reason, we may award the prize to an alternate winner, unless forbidden by applicable law.

The prize such as money, product, or travel grant will be delivered to the registered team leader given that the team is not affiliated with any of the sponsors. It is up to the team to share the prize. If this person becomes unavailable for any reason, the prize will be delivered to be the authorized account holder of the e-mail address used to make the winning entry.

If you are a potential winner, we may require you to sign a declaration of eligibility, use, indemnity and liability/publicity release and applicable tax forms. If you are a potential winner and are a minor in your place of residence, and we require that your parent or legal guardian will be designated as the winner, and we may require that they sign a declaration of eligibility, use, indemnity and liability/publicity release on your behalf. If you, (or your parent/legal guardian if applicable), do not sign and return these required forms within the time period listed on the winner notification message, we may disqualify you (or the designated parent/legal guardian) and select an alternate selected winner.


11. Multi-submission policy

Following the previous NTIRE and AIM challenges, we accept multiple submissions from a single team if they are significantly different. However, solutions with minor differences can be rejected by the organizers. For example, if solution A and B are submitted where B is an ensemble method of A, we do not consider them to be essentially different.

If you are preparing multiple submissions, please contact the organizers in advance for clarification.

The terms and conditions are inspired by and use verbatim text from the `Terms and conditions' of ChaLearn Looking at People Challenges and of the NTIRE 2017, 2018, 2019, 2020 and 2021 challenges and of the AIM 2019 and 2020 challenges .

Mobile AI Workshop @ CVPR 2021





The Mobile AI challenge on Depth Estimation is organized jointly with the Mobile AI 2021 workshop. The results of the challenge will be published at Mobile AI 2021 workshop and in the CVPR 2021 Workshops proceedings.


Andrey Ignatov (andrey [at], Samarth Shukla (Samarth.Shukla [at], David Plowman (david.plowman [at], and Radu Timofte (Radu.Timofte [at] are the contact persons and direct managers of the Mobile AI challenge.


More information about Mobile AI workshop and challenge organizers is available here:


Start: Jan. 1, 2021, 11:59 p.m.


Start: March 1, 2021, 11:59 p.m.

Competition Ends

March 8, 2021, 11:59 p.m.

You must be logged in to participate in competitions.

Sign In