Skip to content

SAM-DEV007/Satellite-Object-Detection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Satellite-Object-Detection

RS HR (Remote Sensing High Resolution) Object Detection

YOLO model architectures are used to predict the annotation of bounding box (rectangle) of the certain specific objects in the image. Here, only binary classification is used between two classes: Lake and River, for Bhuvan images (moved to v1).

NOTE: A third class "Vegetation" is removed, as its definition and marking in the annotation is completely pointless, and somewhat incorrect and would confuse the model more.

For the DIOR dataset, it consist of 20 classes of Remote Sensing data along with annotation.

The idea is to detect how good the model is to detect specific objects along with generalized objects with close bounding box links.

Installation

  • Python 3.x or greator.
  • Libraries: pip install -r requirements.txt

(For v1 model)

  • git clone https://github.com/ultralytics/yolov5 to clone the model architecture and utilities in Model_Data folder.

Dataset

  • The dataset is hand-picked using the Bhuvan portal.
  • The images are then manually annotated with the respective classes using CVAT.
  • Another dataset, DIOR is used that consists of more than 20,000 images with 800 x 800 px for detecting actual model accuracy.

NOTE: The Bhuvan dataset used is REALLY small. 10 different 1124 x 1124 px images are used, which are then tiled to ~100 images (training and validation combined). To prevent overfitting, the images are tiled only after splitting in train and validation.

Model

v1 Model

  • v1 Model is Yolov5 model initially used. It is a predecessor of Yolov8 model.

Current Model

Inference

v1 Model

Commands:

  • python .\Model\Dataset\dataset.yaml --weights .\Model\Model_Data\yolov5s.pt to train the model. The best weights will be saved in .\yolov5\runs\train\exp\weights\best.pt.
  • python .\Model\Model_Data\yolov5\detect.py --source .\Model\Model_Data\best.pt --conf 0.2 to run the inference on the images folder and detect the classes. For this model, the optimal confidence is 0.2.

Outputs:

Current Model

Commands:

  • detect.py to detect the images in Sample Images folder. Results folder will contain the detected image and generate a XML file of their annotation along with other metadata.
  • read_xml.py contains a sample code to read one of the XML file in the Results folder.

Outputs:

DIOR

Bhuvan

Overall Comparison

image

The Bhuvan dataset is always tiled.

Contribution

  1. Samyak Waghdhare
  2. Giridhar Bargaley
  3. Rudra Shrivastava

About

RS HR Object Detection

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published