ohw19-project-computer_vision_club
Computer vision club project for ocean hackweek 2019
Welcome to the computer vision club at OHW 2019. Please join us in the slack channel #computervisionclub-2
Rule
RULE 1: have fun and don't freak out.
Important scripts
data_preparation.ipynb
computer_vision_club_script.ipynb
utility.py
robot_overlord.gif
Project title
Underwater Currency Counter- a Semi Supervised Annotation Tool: Kickass AI to count sand dollars
Discussion Participants
The Problem
Annotating imagery data by hand is time consuming, mundane and costly which is only exacerbated with larger datasets. What if you could use AI to help you with the brunt of the workload, leaving you with the simple task of going over its predictions and ensuring it is correct?
This project aims to use benthic habitat imagery data collected from ROVs to train a deep object recognition algorithm. With a learned model, its task will then be used to make predictions on non-annotated data. Predictions with high enough confidences will be retained as per the users discretion.
Workflow at a glance:
1.) Parsing/cleaning existing annotation data
2.) Extracting and organizing training data
3.) Preprocessing and augmenting training data
4.) Train object recognition/image classification network
5.) Apply trained model to new data, take good predictions and add to training data
Rendered version of the computer_vision_club_script notebook
Steps to follow to quickly dip your toes into this CVC project
Train your model
Step | Direction |
---|---|
1 | clone this project repo (e.g. git clone ) |
2 | clone Mask_RCNN repo into parent directory |
3 | download training weights from here |
4 | download Massimo's subset of the dataset here |
5 | upload training weight to pangeo or wherever you're working "mask_rcnn_coco.h5" |
6 | upload training dataset to pangeo or wherever you're working in a zipped file |
7 | run setup in the Mask_RCNN directory to install the repo's code (e.g. python setup.py install ) |
8 | edit model.py with a change of max_queue_size to 1 and multi_threading to False (if you do not have a GPU) |
9 | unzip data into a data directory (e.g. unzip sample.zip -d /path/to/directory ) |
10 | run the notebook computer_vision_club_script.ipynb ; make changes to your unique file paths |
11 | have fun and good luck |
Test your predictions
Step | Direction |
---|---|
1 | copy the file path of the last weight created into the load weights cell |
2 | run the last chapter of the computer vision club script notebook |
Proposed methods/tools
Tensorflow - for building and training the network
Keras - for building and training the network
OpenCv - image processing and augmentation
Scikit image - image processing and augmentation
Pandas - for data science
Numpy and/or Cupy - for data science
labelImg - for annotating data
Background reading/watching
Mask RCNN with Keras tutorial
YOLO TED Talk
Rare Puppers
Longterm project objective
Help our robot overlords achieve world domination