It was incredibly difficult to find the material, which included remarkable images of marine litter. There was no dataset with sea plastic images on the epipelagic layer of the sea. So I decided to create one. I bought a GoPro Hero 9, a wet suit and snorkeling gear and headed to different shapes in California along with 2 plastic bags and 2 plastic bottles.
The places I visited were Lake Tahoe, Bodega Bay, San Francisco Bay. Here I shot videos of plastic in 4K format and later scattered them into images from the screen. [All plastics used were sanitized and were removed from the environment after I finished capturing the videost] The original dataset was over 100,000 images, which I then carefully walked through one at a time and selected the best images and labeled them using the supervise.ly file. The final set of data, along with images captured from the Internet, was a staggering 4,000 images.
I tried to improve by imitating real-world scenarios like occlusion and brightness by burying objects in the sand or placing them opposite the sun.
The images were resized to 416×416 and converted to the format required by Darknet and YOLOv5 PyTorch.
Since the final data set contained only 4,000 images, I thought the best way to grow the data is to add it. So I used turning, rotating, and brightness to replicate ocean environments.
I also used black and white to prevent the model from becoming more common in colors and cuts to simulate simulation.
Building a neural network was a simple task. I had two goals in choosing the model: The model had to be somewhat accurate and the model had to be fast. Fast enough for use on buoys and UAVs. I tried many models like Faster R-CNN, EfficientDet, SSD, etc., but I stuck to two models: YOLOv4-Tiny and YOLOv5-S.
Interested in running out of code for YOLOv5? Let me know in the comments below or contact me.
Good to know / Tuning hyperparameters:
- I used to Adaptive Learning Speed called ADAM to set a declining learning rate.
- Used package named W&B (Weights and prestressing) and constantly followed the loss.
- I used a softmax as a top layer and only used one category be called trash_plastic.
- I used paperspace.com and Google Colab pro NVIDIA v100 graphics cards train the model.
- Used transfer instruction on practiced weights Underwater scenes and Deep Sea Garbage – JAMSTEC JEDI Data Set.
Are you interested in our code? Find it here: https://github.com/gautamtata/DeepPlastic
After a lot of experimentation with training methods, data extensions, and fine-tuned hyperparameters, we finally got to the point where the results were good enough to be used in real-world deployment.
The best model YOLOv5-S: Accuracy: 96%, Average-Average Accuracy: 85%, F1 Score: 0.89, Reasoning Speed: 2.1 milliseconds / img
We are currently getting our paper published. We are trying to get the model into the hands of other researchers to test and develop innovative ways to synthesize more data.
If you are interested, want to participate or want to chat, you can reach me here: email@example.com.
READ MORE arxiv prepositions: https://arxiv.org/abs/2105.01882