Commit 0a64493c authored by A. Unique TensorFlower's avatar A. Unique TensorFlower
Browse files

Internal change

PiperOrigin-RevId: 461655578
parent 6241d245
# Waste Identification ML - ( Mask RCNN with TF Lite ) # Waste Identification ML - ( Mask RCNN with TF Lite )
This projects aims to develop a TensorFlow Lite model based Mask RCNN instance Develop an instance segmentation model for server side and on-device inference.
segmentation model for on-device inference.
## Background ## Background
The sustainability team at Google wants to build a computer vision based ML This projects aims to accelerate innovation in the waste management industry by
model for waste identification. An ML model which detects the trash objects in providing open source ML models for waste identification. Specifically, the
the images and can identify their material type and packaging type. This project uses Computer Vision to identify the material and packaging type of
projects aims to accelerate innovation in the waste management industry by trash in images. The goal is to help reduce barriers for technology adoption,
providing no-cist open sourced ML models. This would help reduce barriers for and provide efficiency, traceability & transparency, which in-turn can help
technology adoption, and provide much needed efficientcy, traceability & increase recycling rates.
transparency, which inturn can help increase recycling rates.
## Code Structure ## Code Structure
This is an implementation of Mask RCNN based on Python 3 and Tensorflow 2.x. The This is an implementation of Mask RCNN based on Python 3 and Tensorflow 2.x. The
...@@ -26,8 +24,9 @@ object in the image. The repository includes : ...@@ -26,8 +24,9 @@ object in the image. The repository includes :
* Evaluation metric of the validation dataset. * Evaluation metric of the validation dataset.
* Example of training on your own custom dataset. * Example of training on your own custom dataset.
The code is designed in such a way so that it can be extend. If you use in your The code is designed in such a way so that it can be extended. If you use it in
research or industrial solutions then please consider citing this repository. your research or industrial solutions, then please consider citing this
repository.
## Pre-requisites ## Pre-requisites
...@@ -64,23 +63,23 @@ research or industrial solutions then please consider citing this repository. ...@@ -64,23 +63,23 @@ research or industrial solutions then please consider citing this repository.
accordingly. accordingly.
- CAREFULLY choose a TPU type which can be turned ON and OFF after usage. - CAREFULLY choose a TPU type which can be turned ON and OFF after usage.
Preferred one is below - `bash ctpu up --name waste-identification --zone The preferred one is below - `bash ctpu up --name waste-identification --zone
us-central1-a --tpu-size=v3-8 --tf-version nightly --project us-central1-a --tpu-size=v3-8 --tf-version nightly --project
waste-identification-ml` After the execution of the above command you will waste-identification-ml` After the execution of the above command, you will
see 2 virtual devices with name "waste-identification" each in TPU and see 2 virtual devices with name "waste-identification" each in TPU and
COMPUTE ENGINE section. COMPUTE ENGINE section.
### ***Get into the virtual machine*** ### ***Get into the virtual machine***
The virtual machine which is a TPU host can be seen in the COMPUTE ENGINE The virtual machine, which is a TPU host, can be seen in the COMPUTE ENGINE
section of GCP. We will use this virtual machine to start the training process. section of GCP. We will use this virtual machine to start the training process.
This machine will use another virtual instance of TPU that is found in the TPU This machine will use another virtual instance of TPU that is found in the TPU
section of the GCP. To get inside the TPU host virtual machine : section of the GCP. To get inside the TPU host virtual machine :
- Go the COMPUTE ENGINE section in the GCP - Go to the COMPUTE ENGINE section in the GCP
- Find your instance there - Find your instance there
- Under the "Connect" tab of your instance you will see "SSH" - Under the "Connect" tab of your instance, you will see "SSH",
- click on SSH and it will open another window which will take you inside the - Click on SSH and it will open another window which will take you inside the
virtual machine. virtual machine.
- Use the following commands inside the virtual machine window : - Use the following commands inside the virtual machine window :
...@@ -88,13 +87,4 @@ section of the GCP. To get inside the TPU host virtual machine : ...@@ -88,13 +87,4 @@ section of the GCP. To get inside the TPU host virtual machine :
$ git clone https://github.com/tensorflow/models.git $ git clone https://github.com/tensorflow/models.git
$ cd models $ cd models
$ pip3 install -r official/requirements.txt $ pip3 install -r official/requirements.txt
``` ``
## Roadmap
- Provide ML model pre-trained weights with Docker to run for detection of
Material type.
- Deploy a model tp detect the packaging type of the objects.
- Deploy a model to detect the brands of the object.
...@@ -17,12 +17,12 @@ Mask RCNN is a state-of-art deep learning model for instance image segmentation, ...@@ -17,12 +17,12 @@ Mask RCNN is a state-of-art deep learning model for instance image segmentation,
| Model categories | Model backbone | Model type | GCP bucket path | | Model categories | Model backbone | Model type | GCP bucket path |
| ------ | ------ | ----- | ------ | | ------ | ------ | ----- | ------ |
| Material Model | Resnet | saved model | [click here](gs://official_release/version_1/material_model/saved_model/) | | Material Model | Resnet | saved model | gs://official_release/version_1/material_model/saved_model/ |
| | | TFLite | [click here](gs://official_release/version_1/material_model/tflite_model/) | | | | TFLite | gs://official_release/version_1/material_model/tflite_model/ |
| Material Form model | Resnet | saved model | [click here](gs://official_release/version_1/material_form_model/saved_model/) | | Material Form model | Resnet | saved model | gs://official_release/version_1/material_form_model/saved_model/ |
| | |TFLite | [click here](gs://official_release/version_1/material_form_model/tflite_model/) | | | |TFLite | gs://official_release/version_1/material_form_model/tflite_model/ |
|Plastic model | Resnet| saved model | [click here](gs://official_release/version_1/plastic_types_model/saved_model/) | |Plastic model | Resnet| saved model | gs://official_release/version_1/plastic_types_model/saved_model/ |
| | |TFLite | [click here](gs://official_release/version_1/plastic_types_model/tflite_model/) | | | |TFLite | gs://official_release/version_1/plastic_types_model/tflite_model/ |
## Installation & Download ## Installation & Download
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment