What does the model detect?
This model detects ships in the sea from satellite imagery.

What is the use of this model?
This model empowers the government institutions for strict and finer maritime security surveillance. It helps to manage marine traffic at busy ports. The detection enables the concerned authorities to take quick decisions and reduce pirate threats.

Approach to creating a model in Vredefort

Step 1 – Dataset Collection
We collected satellite images of ships from the Google Earth website. In google earth, we kept a 2D view with a certain fixed height – 100m for big ships and 60 m for small ships. We selected the 50 busiest ports and collected 645 ship images. There is only one class – Ship.

Step 2 – Data Cleaning
After collecting the dataset, we uploaded it on Vredefort. Vredefort automatically cleans the data by removing the corrupt images and resizing them to a suitable resolution.

Step 3 – Data Annotation
The computer learns to detect objects from images through a process of labeling. Thus, we drew boxes around the concerned objects and labeled them as ship (only one object to detect).
We annotated 645 images using the inbuilt Vredefort tool.

Annotation Rules – (Keep them in mind for better detection)
    ⦁ Skip the object if it is in motion or blur.
    ⦁ Precisely draw the bounding box around the object.
    ⦁ Bounding boxes should not be too large.

[Optional] Step 4 – Tuning Parameters
If you register as a developer and developer mode is on, you can modify the number of epochs, batch size per GPU, neural network model, etc. In case of no user inputs, the settings will change to default.

Step 5 – Training
The training process takes place automatically with a single click.

Evaluation of the model
After training, we can evaluate the model.
In evaluation, there are two parts. The first is accuracy and the second is to play inference videos. Vredefort enables us to obtain total model accuracy and class-wise accuracy. In this case, only one class is present. We achieved 55% model accuracy.

A new video for inference
We recorded a video of a 2D view with fixed height using a SimpleScreenRecorder to check the inference. If the developer mode is on, it will ask to set confidence. You can set it as per your convenience. Here we set 0.1 [10%] confidence.

Model download and transfer learning from unpruned model
Vredefort provides one more feature to get the accuracy of the model. It allows you to download the model and dataset for further applications(like adding logic to your model). If you have downloaded model files, you can use the unpruned model (click here to know more about the unpruned model) for different datasets and save training time. You can generate alerts and write use-cases with that model.

Any challenges faced
Collecting the images was challenging due to security reasons at certain ports.

    ⦁ The model will work best on satellite imagery with 100m of height for big ships and 60m of height for small ships.
    ⦁ The model is trained on satellite imagery and hence will work best on those images or video feeds.
    ⦁ It will struggle to detect ships from other sources such as mobile camera videos.

More datasets can be collected to detect ships of different heights and from varied sources to improve the model accuracy.

Model Details
Model Name – Satellite Ships Detection
Dataset Images – 645
Number of Labels – 1
Label name and count – ship (1399)
Accuracy – 55%

Download Links

Dataset Download – Download here

Model Download Link – Download here

Inference Video Link – Download here