GithubHelp home page GithubHelp logo

nctu_hw3's Introduction

NCTU_hw3

Instance segmentation using tiny dataset

Environments:
Python 3.6
PyTorch 1.5

File structure:
+- data
| - config.py: the setting of backbone of model and the path of dataset
| - dataloader.py: using to download training and testing data
+- models
| - backbone.py: the backbone(resnet101+FPN) of this model
| - box_utils.py: using to calculate IOU of bbox or mask
| - detection.py: using to calculate NMS
| - interpolate.py: class to interpolate
| - model.py: the whole predict model
| - multibox_loss.py: using to calculate the bbox loss, label loss, mask loss, and segmentation loss
| - output_utils.py: post processing for the output of model
+- utils
| - augmentation.py: function for data augmentation
| - functions.py: using to print processing bar
| - timer.py: using to print training time
train.py: using to train the model
predict.py: using to predict the mask of input images
make_submission.py: using to output .json file for submit
config.yaml: setting for training, predict, and make submission

Usage:
1.Data preparatoin:
Download the data from:https://drive.google.com/drive/folders/1fGg03EdBAxjFumGHHNhMrz2sMLLH04FK
The dataset structure is the same as below:
dataset
+- train_images
| - 2007_000033.jpg
| - 2007_000042.jpg
| - 2007_000061.jpg
| - ...
+- test_images
| - 2007_000629.jpg
| - 2007_001157.jpg
| - 2007_001239.jpg
| - ...
pascal_train.json
test.json

2.Training:
You can set up the related setting in config.yaml and run the following command to train:
$ python3 train.py --config=config.yaml

3.Prediction:
You can set up the related setting in config.yaml and run the following command to predict:
$ python3 predict.py --config=config.yaml

4.Make Submission:
You can set up the related setting in config.yaml and run the following command to make submission file:
$ python3 make_submission.py --config=config.yaml

Reference: https://github.com/dbolya/yolact

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.