Giter Site home page Giter Site logo

cloths_segmentation's Introduction

Code for binary segmentation of various cloths

Installation

pip install -U cloths_segmentation

Example inference

Jupyter notebook with the example: Open In Colab

WebApp

https://clothssegmentation.herokuapp.com/

Data Preparation

Download the dataset from https://www.kaggle.com/c/imaterialist-fashion-2019-FGVC6

Process the data using script

The script will create process the data and store images to folder images and binary masks to folder labels.

Training

Define the config.

Example at cloths_segmentation/configs

You can enable / disable datasets that are used for training and validation.

Define the environmental variable IMAGE_PATH that points to the folder with images.

Example:

export IMAGE_PATH=<path to the the folder with images>

Define the environmental variable LABEL_PATH that points to the folder with masks.

Example:

export MASK_PATH=<path to the folder with masks>

Training

python -m cloths_segmentation.train -c <path to config>

Inference

python -m torch.distributed.launch --nproc_per_node=<num_gpu> cloths_segmentation/inference.py \
                                   -i <path to images> \
                                   -c <path to config> \
                                   -w <path to weights> \
                                   -o <output-path> \
                                   --fp16

cloths_segmentation's People

Contributors

ternaus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

cloths_segmentation's Issues

Issues with starting Training

I have set up all the required data and the paths but still get this error all the configs

Traceback (most recent call last):
File "/usr/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/electron/cloths_segmentation/cloths_segmentation/train.py", line 189, in
main()
File "/home/electron/cloths_segmentation/cloths_segmentation/train.py", line 175, in main
pipeline = SegmentPeople(hparams)
File "/home/electron/cloths_segmentation/cloths_segmentation/train.py", line 46, in init
state_dict = state_dict_from_disk(
File "/home/electron/.local/lib/python3.9/site-packages/iglovikov_helper_functions/dl/pytorch/utils.py", line 32, in state_dict_from_disk
checkpoint = torch.load(file_path, map_location=lambda storage, loc: storage)
File "/home/electron/.local/lib/python3.9/site-packages/torch/serialization.py", line 594, in load
with _open_file_like(f, 'rb') as opened_file:
File "/home/electron/.local/lib/python3.9/site-packages/torch/serialization.py", line 230, in _open_file_like
return _open_file(name_or_buffer, mode)
File "/home/electron/.local/lib/python3.9/site-packages/torch/serialization.py", line 211, in init
super(_open_file, self).init(open(name, mode))
FileNotFoundError: [Errno 2] No such file or directory: '2020-10-29/epoch=4.ckpt'

Segment only one cloth per time

Hello, thank you for this great work.
I just want to know if is it possible to use this model to get only one cloth per time, like getting only pants from a full body photo

load

could you give some samples that load a model from a local directory instead of download from url? Thanks a lot

timm

whihc version

----> 1 from timm.models import ByoModelCfg, ByoBlockCfg, ByobNet
2
3 from ._base import EncoderMixin
4 import torch.nn as nn
5

ImportError: cannot import name 'ByoModelCfg'

post processing

thank you for this amazing repo. the model works really well.
I have one query, are you using some sort of heuristics/post-processing for the demo. The model output and the web demo output do not match in many images (web app work very well actually compared to the pre-trained model).

ImportError: cannot import name 'ByoModelCfg'

from cloths_segmentation.pre_trained_models import create_model

----> 1 from timm.models import ByoModelCfg, ByoBlockCfg, ByobNet
2
3 from ._base import EncoderMixin
4 import torch.nn as nn
5

ImportError: cannot import name 'ByoModelCfg'

Save model

Hello
Your model is incredible, but I have a problem, I always have to train my own model because I didn't see any save model in your train script. How do you save the model?
Thanks so much

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.