Skip to content

NTU Fall 2019 Deep Learning for Computer Vision Final Project (Challenge) - Amur Tiger Re-Identification

Notifications You must be signed in to change notification settings

itsmystyle/DLCV2019Fall-Tiger-Re-Identification

Repository files navigation

DLCV 2019 Fall, Final Project Challenge#1

Tiger ReId

illustration

Introduction

Tiger re-identification aims to find all image in the database containing the same tiger as the query one.

The original challenge website is provided here.

Dataset

One can download the dataset here.

The dataset arrangment is listed as follow:

  • imgs/ : All tiger images (* .jpg).
  • train.csv : Image names and corresponding ids for training.
  • query.csv : Image names and corresponding ids of query images.
  • gallery.csv : Image names and corresponding ids of gallery images.

All the csv files are in the format:

id img_name
2 XXXXX.jpg
3 YYYYY.jpg
1 ZZZZZ.jpg
2 WWWWW.jpg

Note that you are not allowed to use query.csv and gallery.csv to train your model. Those can only be used to calculate Rank1 to evaluate your performance.

Submission Rules

Deadline

2020/1/13 (Mon.) 23:59 GMT+8 (Late submission will not be accepted.)

Academic Honesty

  • Taking any unfair advantages over other class members (or letting anyone do so) is strictly prohibited. Violating university policy would result in an F grade for this course (NOT negotiable).
  • If you refer to some parts of the public code, you are required to specify the references in your report (e.g. URL to GitHub repositories).
  • You are encouraged to discuss homework assignments with your fellow class members, but you must complete the assignment by yourself. TAs will compare the similarity of everyone’s submission. Any form of cheating or plagiarism will not be tolerated and will also result in an F grade for students with such misconduct.

Submission Format

Aside from your own Python scripts and model files, you should make sure that your submission includes at least the following files in the root directory of this repository:

  1. final_poster.pdf
    The poster used in your final presentation. You need to make sure all the experimental results are in this poster.

  2. final.sh You need to provide a linux shell script to reproduce your results.

We will execute the shell script in following manner:

CUDA_VISIBLE_DEVICES=GPU_NUMBER bash final.sh $1 $2 $3 $4
  • $1 is the image folder (e.g. imgs/)of testing images.
  • $2 is the path to query.csv (e.g. query.csv). Please note that when TA's run your code, the ground truth id will not be available in the query.csv
  • $3 is the path to support.csv (e.g. gallery.csv). Please note that when TA's run your code, the ground truth id will not be available in the query.csv
  • $4 is the path to the csv file to save your predicted nearest neighbor for each quesry image.(e.g. results.csv)

The predicted csv file (e.g. results.csv) should be in the following format:

img_name
XXXXX.jpg
YYYYY.jpg
ZZZZZ.jpg
WWWWW.jpg

where the ith row is the top1 retrieval corresponds to the ith row in query.csv.

⚠️ IMPORTANT NOTE ⚠️

  • For the sake of conformity, please use the -python3 command to call your .py files in all your shell scripts. Do not use python or other aliases, otherwise your commands may fail in our autograding scripts.
  • You must not use commands such as rm, sudo, CUDA_VISIBLE_DEVICES, cp, mv, mkdir, cd, pip or other commands to change the Linux environment.
  • We will execute you code on Linux system, so please make sure you code can be executed on Linux system before submitting your homework.
  • DO NOT hard code any path in your file or script except for the path of your trained model.
  • The execution time of your testing code should not exceed an allowed maximum of 10 minutes.
  • Use the wget command in your script to download you model files. Do not use the curl command.
  • Do not delete your trained model before the TAs disclose your homework score and before you make sure that your score is correct.
  • If you use matplotlib in your code, please add matplotlib.use(“Agg”) in you code or we will not be able to execute your code.
  • Do not use imshow() or show() in your code or your code will crash.
  • Use os.path.join to deal with path issues as often as possible.
  • Please do not upload your training information generated by tensorboard to github.

Packages

The final project should be done using python3.6 and you can use all the python3.6 standard libraries. For a list of third-party packages allowed to be used in this assignment, please refer to the requirments.txt for more details. You can run the following command to install all the packages listed in the requirements.txt:

pip3 install -r requirements.txt

Note that using packages with different versions will very likely lead to compatibility issues, so make sure that you install the correct version if one is specified above. E-mail or ask the TAs first if you want to import other packages.

Evaluation & Grading

We use Rank1 to evaluate the model performance. We provide the script to evaluate the performance of your algorithm (evaluate.py). One can use the following command to calculate Rank1:

python3 evaluate.py --query $1 --gallery $2 --pred $3
  • $1 : the path to query.csv (e.g. query.csv/).
  • $2 : the path to gallery.csv (e.g. gallery.csv).
  • $3 : the path to the predicted csv file. (e.g. results.csv) The baseline score is 60%.

To get the baseline points (5%), the rank1 of your algorithm should be higher than this score. We will use the rank1 score to rank your team among the classes.

About

NTU Fall 2019 Deep Learning for Computer Vision Final Project (Challenge) - Amur Tiger Re-Identification

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •