Supervise.ly [Image annotation and data management]

Iterate from image annotation to accurate neural networks 10x faster

Supervise.ly is a powerful platform for computer vision development, where individual researchers and large teams can annotate and experiment with datasets and neural networks.

Prerequisites:-

  1. Create a free account on supervise.ly and AWS cloud.
  2. Collect dataset for annotations and tagging the objects which we want to be segmented.

Here we start our journey of using a complete cycle from annotation to the neural network training using transfer learning on the Mask-RCNN model ( pre-trained on coco weights).

Step1:-

Create a team and then your own workspace for the project.

Now we a workspace named mask-rcnn-ws.

Step2:-

Upload your custom dataset(images). [ Drag and Drop on the dashboard ]

Step3:-

Annotate the uploaded dataset(images).

Step4:-

Augmentation on the dataset to increase the count of images in the dataset using DTL.

[
{
"dst": "$data",
"src": [
"fish/*"
],
"action": "data",
"settings": {
"classes_mapping": "default"
}
},
{
"dst": "$flip_vert",
"src": [
"$data"
],
"action": "flip",
"settings": {
"axis": "vertical"
}
},
{
"dst": "Console Dataset_Aug",
"src": [
"$data",
"$resized_result",
"$resized_result2",
"$noise_result",
"$flip_vert"
],
"action": "supervisely",
"settings": {}
},
{
"action": "resize",
"src": [
"$data"
],
"dst": "$resized_result",
"settings": {
"width": 800,
"height": -1,
"aspect_ratio": {
"keep": true
}
}
},
{
"action": "noise",
"src": [
"$data"
],
"dst": "$noise_result",
"settings": {
"mean": 10,
"std": 60
}
},
{
"action": "resize",
"src": [
"$data"
],
"dst": "$resized_result2",
"settings": {
"width": 300,
"height": -1,
"aspect_ratio": {
"keep": true
}
}
}
]

Step4:-

After augmentation on the dataset. Create a train set using instance segmentation(Mask-R-CNN).

Step5:-

Add a pre-trained model (e.g. Mask-R-CNN is a conceptually simple, flexible, and general framework for object instance segmentation. Our approach efficiently detects objects in an image while simultaneously generating a high-quality segmentation mask for each instance.
Pretrained on COCO ) for Transfer Learning.

Step6:-

Initialize worker node for supervise.ly

Step7:-

Start training the pre-trained model(Mask-R-CNN) on the training dataset(obtained after instance segmentation).

Step8:-

We require testing data for testing our newly created model. upload testing data on supervise.ly ( simple drag and drop)

Step9:-

After training, supervise.ly automatically saves the model named training.
So we can do testing on this newly trained model.

Step10:-

And as your testing and training finishes, then terminate your running instances as it will costs you accordingly.

This way we can use supervise.ly, for the entire computer vision lifecycle and various real use-cases.

P.S.
Any questions or suggestions are welcome.

I'm a computer science undergraduate and my primary area of work is under Linux, CloudComputing, DevOps culture, and various open-source tools and technologies