# Dataset Description

## 🗂️ Files Provided

```plaintext
/scripts
    /ENV_SETUP
         /setup_env.bat #RUN THIS to install the correct environment
         /install_packages.bat #ignore
         /create_env.bat #ignore
    /yolo_params.yaml #set data paths here, YOU MUST SET THEM
    /train.py #sample training script you can use to train your model on the synthetic data
    /predict.py #create the predictions for your submission
    /convert_preds_to_csv.py #convert your predictions to the csv submission file; IMPORTANT make sure this is in the same folder as your predictions folder and testImages folder
    /sample_submission.csv #shows you what a submission should look like
    /visualize.py #visualize the training data with bounding boxes
/testImages
    /images #ONLY use these real-world images provided, do not add more, do not add them to the val folder

```


---

## 📊 Data Format
Data generated on FalconCloud will have this format:

### 1. **Images**  
- Format: `.jpg` , `.png`
- Dimensions: All synthetic images created on FalconCloud will be `1920x1080px`.  

### 2. **Labels (YOLO Format)**  
Each image has a corresponding `.txt` file with annotations:  
class_id x_center y_center width height

- Values are **normalized** (0-1) relative to image dimensions  
- Example (`0001.txt`):  
0 0.45 0.50 0.20 0.15 # building


### 3. **Class ID**  
- Only **class 0**: building (vehicle annotations will be present but not scored)

---

## 🎯 What You're Predicting
Predict **bounding boxes** for real-world test images in YOLO format:  
- csv file of all predictions with 2 major entries being, "image_id", "prediction_string"  
- Each line: `image_id", " object_class confidence x_center y_center width height"`  
- **Confidence scores** must be between 0 and 1

---

## 📖 Acronyms
| Term | Definition |  
|------|------------|  
| **YOLO** | You Only Look Once (object detection architecture) |  
| **mAP@50** | Mean Average Precision at 50% IoU |  
| **IoU** | Intersection over Union (box overlap metric) |  

---

## ❓ Frequently Asked Questions

**Q: Can I use external data?**  
A: Only if it's created using Falcon.  

**Q: What image sizes and formats should I expect?**  
A: Synthetic images are 1980x1080px in .png format. Real test images have a variety of sizes. 

**Q: How should I improve model performance and results beyond a certain point?** 
A: Explore hyperparameter tuning & training techniques to boost your model’s performance👉 [Here](https://falcon.duality.ai/secure/documentation/model-and-data-improvements?utm_source=kaggle&utm_medium=kaggle_competition&utm_campaign=competition_5) 
  
---
LICENSE CC RIGHTS
https://creativecommons.org/licenses/by-nc-nd/4.0/legalcode

# Citation 

```shell
@article{HAN2022102966,
  title = {A context-scale-aware detector and a new benchmark for remote sensing small weak object detection in unmanned aerial vehicle images},
  journal = {Int. J. Appl. Earth Obs. Geoinformation},
  volume = {112},
  pages = {102966},
  year = {2022},
  issn = {1569-8432},
  doi = {https://doi.org/10.1016/j.jag.2022.102966},
  author = {Wei Han and Jun Li and Sheng Wang and Yi Wang and Jining Yan and Runyu Fan and Xiaohan Zhang and Lizhe Wang},
}

@article{small-weak-object-detection-survey,
  author    = {Wei Han and Jia chen and Lizhe Wang and Ruyi Feng and Fengpeng Li and Lin Wu and Tian Tian and Jining Yan},
  title     = {A survey on methods of small weak object detection in optical high-resolution remote sensing images},
  journal   = {{IEEE} Geosci. Remote. Sens. Mag.},
  pages     = {8--34},
  year      = {2021},
  volume = {9},
  issue = {4}
}

@article{hard_example_mining,
  author    = {Wei Han and Runyu Fan and Lizhe Wang and Ruyi Feng and Fengpeng Li and Ze Deng and Xiaodao Chen},
  title     = {Improving Training Instance Quality in Aerial Image Object Detection with A Sampling-balance based Multi-stage Network},
  journal   = {{IEEE} Trans. Geosci. Remote. Sens.},
  pages     = {1--15},
  year      = {2020}
}

```
