This repository is a fork of the official GDRNPP repository TODO link
This repository is a fork of the official GDRNPP [repository](https://github.com/shanice-l/gdrnpp_bop2022)
TODO doc
### Preprocessing of FruitBin dataset
In order to train the GDRNPP model on a new dataset, it is necessary to have this dataset in BOP format. Several scripts were created to convert the Fruitbin dataset to BOP format.
The first step is to resize the bounding boxes. It is necessary to reduce them for correct operation. Here is the [script](https://gitlab.liris.cnrs.fr/gduret/gdrnpp_bop2022/-/blob/main/preprocessing/resize_bbox.py?ref_type=heads). The paths to the input and output folders are hardcoded and can be easily changed.
Then, a [script](https://gitlab.liris.cnrs.fr/gduret/gdrnpp_bop2022/-/blob/main/preprocessing/preprocess_fruitbin.py?ref_type=heads) was created that does the main part of preprocessing. It creates the necessary directories, copies the necessary files into them, and creates json files with ground truth in the required format. The command to run the script:
Due to the specifics of the fruitbin dataset, it turned out that using yolox did not give good results, so instead of the detections detected by yolox, a gt was used. To do this, a script was written that generates a .json file of gt in the required format. The command to run the script:
After creating the file, make sure that the path to it is correct in the main config file
The [generate_image_sets_file](https://gitlab.liris.cnrs.fr/gduret/gdrnpp_bop2022/-/blob/main/preprocessing/generate_image_sets_file.py?ref_type=heads) and [generate_test_targets_file](https://gitlab.liris.cnrs.fr/gduret/gdrnpp_bop2022/-/blob/main/preprocessing/generate_test_targets_file.py?ref_type=heads) scripts create two files required for testing:
The paths to the input and output directories are also hardcoded in the script. If necessary, the scenario for splitting data in the dataset can also be changed.
### Model evaluation
The ADD metric is used to evaluate the accuracy of different models trained on the fruitbin dataset. It is necessary to use the script that evaluates the accuracy of detecting the position of a single fruit, i.e. it has to be run separately for each fruit. The command: