Home

Awesome

Running Satellite Imagery Demo

This documentation is a step by step guide to runninng the satellite imagery object detection demo from Xview. We're not going to train the model here, this is just an off the shelf inference with their vanilla baseline model.

xview demo

Image Credits : https://challenge.xviewdataset.org/data-download

Step 1. Check Validation System Specifications

This demo is validated on a Dell PowerEdge C4130 system having the following specs:

H/W Specs:
S/W Specs:

Step 2. Ensure Prerequisites

Although you might not need an extensive system as the validation system, at the very least you need to have a base installation of Unix OS such as RHEL Centos or Ubuntu and a working docker already installed to run this demo. This also requires atleast 50GB (after uncompressing dataset & keeping the original tar as well) of disk space to run.

If you don't have docker installed, the following links explains how to install docker.

For Centos

https://docs.docker.com/install/linux/docker-ce/centos/

For Ubunutu

https://docs.docker.com/install/linux/docker-ce/ubuntu/

Step 3. Getting the dataset

https://challenge.xviewdataset.org/signup

alt text

alt text

If for some reason if you can't find it, go to the following link below:

https://challenge.xviewdataset.org/data-download
https://arxiv.org/abs/1802.07856

Step 4. Organizing the dataset folder

dataset:
    * train_images.tgz
    * train_labels.tgz
    * val_images.tgz
wget https://raw.githubusercontent.com/dellemc-hpc-ai/satellite_imagery_demo/master/organize.sh 
bash organize.sh

You must see the folder structure output that looks like this:

dataset:
    * 1038.tif  
    * 1075.tif 
    * 108.tif 
    * sample_train_images/
        *(102.tif, 1036.tif, 1037.tif, 1042.tif) -- Images that are extracted and not needed are deleted.
    * train_labels.tgz
    * xView_train.geojson
    * val_images.tgz

Step 5. Run the Container

git clone https://github.com/dellemc-hpc-ai/satellite_imagery_demo.git
cd satellite_imagery_demo
vim run_satellite.sh
# lets say your usename is doe and your dataset folder is in your desktop. 
# Here is how you'd change it. 

# docker run --rm  \
#         -p 8888:8888 \
#         -v /home/doe/Desktop/dataset:/home/jovyan/xview/dataset \
#         --name "satellite-imaging" \
#         dellemchpcai/satellite_demo:latest

# Now go ahead, change the dataset path
docker run --rm  \
        -p 8888:8888 \
        -v /path/to/your/dataset:/home/jovyan/xview/dataset \
        --name "satellite-imaging" \
        dellemchpcai/satellite_demo:latest

Step 6. Run the demo - (shift + enter through the cells of jupyter notebook)

bash run_satellite.sh

alt text The output must look like this after executing the script run_satellite.sh

http://127.0.0.1:8888/?token=319b9b8c59d5c65aeac45f8b4116e217b901186013d01226

Conclusion