Code Monkey home page Code Monkey logo

graphonomy's People

Contributors

engineering-course avatar gaoyiminggithub 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  avatar  avatar  avatar  avatar  avatar  avatar

graphonomy's Issues

Reproduce the deeplabv3 baseline in paper

Hi,
I try to reproduce your deeplabv3+ baseline on CIHP data, But I don't know your paper result about CIHP dataset is based on Graphonomy code or Google Deeplabv3 code.
I use the google official code to train model on CIHP data, but only get MIOU about 50%, much lower than your paper result 57.13.

My implement detail is following:

  1. Use the coco pretrain model provide by deeplabv3
  2. Then I train the model similar to your paper setting
python deeplab/train.py \
    --training_number_of_steps=180000 \
    --train_split="train" \
    --model_variant="xception_65" \
    --atrous_rates=6 \
    --atrous_rates=12 \
    --atrous_rates=18 \
    --output_stride=16 \
    --decoder_output_stride=4 \
    --train_crop_size="513,513" \
    --train_batch_size=16 \
    --base_learning_rate=0.007 \
    --fine_tune_batch_norm=True \
    --initialize_last_layer=False \
    --dataset="cihp" \
    --tf_initial_checkpoint=deeplab/pretrain/xception_65_coco_pretrained/x65-b2u1s2p-d48-2-3x256-sc-cr300k_init.ckpt \
    --train_logdir=datasets/cihp/train/xception_65_coco_pretrained_cihp_batch16 \
    --dataset_dir=deeplab/datasets/cihp/tfrecord/
  1. The google deeplab already include the random crop, scale and left right flip in their code
  2. But finally I only get MIOU 50%

So is there any big issue of my training precess.
I find my model can not distinguish left and right hand and leg, is there any problem about flip?

Result from google code
result

Result use your code (using data/pretrained_model/inference.pth model)
xxx

My model result is not very smooth and can not class left and right.
I'm new to semantic segment, Could you please give me some advice on this issue.
Thanks
Gordon.

How to train and evaluate on deeplabv3 baseline?

Dear author,
Thanks for your neat implementation.
I found the report deeplabv3 performance in this paper is relatively close to Graphonomy. Therefore I want to reproduce the deeplabv3 related experirments. Could you kindly give some tips on how to train and evaluate on deeplabv3 baselines using your repo.? Thank you.

how does the inference model trained?

    Awesome job !does the inference model use transfer? I want to change the body parts into the same labe to extract person contours,will the training effect be better? The inferrence model didn't work well for my some small and low definition images,(I just change scale list into 2). 
    There is only one person in my picture ,should i train ATR or LIP use deeplabv3 directly ,can you give some advice or train step ? Thankyou!

Universal weight is unavailable

Hi, thanks for your work. Would you please update the model weight of the universal model? It seems that the google link is invalid and the file was removed. Thanks!

Datasets license

Hello
Thanks for the awesome work

In the README, there are link to datasets that can be downloaded via google drive, what are the licenses for using these datasets ?
b.r

How to distinguish instances

How can we get the instances?
If there are two humans in the image, can we get a list of the areas that belong to each of them?

How to obtain the "Category_rev_ids" images?

Hi,
Thanks for your contribution!
I know that images in "Category_rev_ids" directory is obtained by flipping. But I also have to exchange the label of the body parts such as 'left-arm' and 'right-arm'? Am I right?

How to train on my own dataset

How to train this model to segment different part(48 classes) of the cars. I have data set and their mask. How to train this model on my custom dataset.

Why the speed is much slow than SSL

Hi, Gaoyiminggithub

I'm look for a good human semantic parser recently I found serval projects.

  • one is your one,
  • another is SSL

Because the LIP_SSL didn't annotated the neck part of human, but your code can handle this.
But why the speed of Graphonomy is much more slower than LIP_SSL, is there anyway I can speed up.

CUDA memory problem

hi, great work!
currently I try to use your inference model to predict my data. But when I use universal_trained.pth as the pretrained model with gpu memory 12GB, it always report error meaning not enough cuda memory. so I wonder how much memory does the model need? any ideas to optimize this? should I use small resized pictures or any other things I could do?
waiting for your reply, thanks!

ImageNet pretrained Aligned Xception model

Thanks for sharing the repo.

I notice that another repo mentions that there exist no ImageNet pre-trained Aligned Xception model, and the performance is worse than the ResNet-101.

In other words, I mean that the model below is not the Aligned Xception trained on ImageNet~

pretrain_dict = model_zoo.load_url('http://data.lip6.fr/cadene/pretrainedmodels/xception-b5690688.pth')

I am wondering whether you have trained the Aligned Xception model on the ImageNet. It would be great if you could share the models~

Besides, I am also wondering if the Imagnet pre-trained Aligned Xception model performs better than modified ResNet-101.

error will executing /inference.py Error PYTORCH_CUDA_ALLOC_CONF

Hi ,
Please help me to resolve the issue moment i run the program i get this error
new_node1 = torch.matmul(res_feature_after_view1, self.node_fea_for_res)
torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 1.41 GiB (GPU 0; 2.00 GiB total capacity; 330.44 MiB already allocated; 1.23 GiB free; 410.00 MiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

approach tried

  1. import os
    os.environ["PYTORCH_CUDA_ALLOC_CONF"] = "max_split_size_mb:2000" -> did'nt work
  2. os.environ["PYTORCH_CUDA_ALLOC_CONF"] = 'max_split_size_mb:2000' -> did'nt work
  3. torch.cuda.empty_cache() -> in the beginning of the file and several places within the loop
    for iii, sample_batched in enumerate(zip(testloader_list, testloader_flip_list)):

Issue with segmentation on images with 768X1024 resolution using Graphonomy

I am using the model for segmentation of human images. I am following the instructions
python exp/inference/inference.py --loadmodel data\pretrained_model\inference.pth --img_path ./img/00891_00_resize.jpg --output_path ./img/ --output_name 00891_00_parse.

The output is correct for images with resolution 192X256. However the output is not correct for images with resolution 768X1024. pls help me out.

192X256 INPUT
192X256 Output
768X1024 INPUT
768X1024 OUTPUT

why Inputs requires grad?

Dear author:
thanks for share the implementation code!
When i dive into your code, a trivial detail confused me. as stated below:

        net.train()
        for ii, sample_batched in enumerate(trainloader):

            inputs, labels = sample_batched['image'], sample_batched['label']
            # Forward-Backward of the mini-batch
            inputs, labels = Variable(inputs, requires_grad=True), Variable(labels)
            global_step += inputs.data.shape[0]

I dnk why the inputs requires gradient? Please correct me! thank you.

How to prepare the dataset?

In the ReadMe file, for dataset preparation, it is said that You need to download the human parsing dataset, prepare the images and store in /data/datasets/dataset_name/. We recommend to symlink the path to the dataets to /data/dataset/ as follows.

What are the steps to prepare this Pascal Dataset?

Access to download the updated CHIP and PASCAL models

Hi ,
Thank you for sharing your great work!

I saw that due to some bug (reset parameters) you retrained the CHIP and Pascal models and uploaded them to Google Drive.

  1. Unfortunately the link you updated is private so I get "Access Denied"
  2. Is the Universal model also influenced by this bug? if yes, will it be updated?
  3. is it possible to extract both Pascal and CHIP in one inference? is it recommended accuracy wise?

Many Thanks,
Yarin

Question about trained model

Thanks for sharing this repo.
I have downloaded the checkpoint 'inference.pth' in the Model section in README.
And when i load the model weight i find that the 'target_featuremap_2_graph.pre_fea' and 'target_featuremap_2_graph.weight', which are contained in the feature to graph projection module, are all 0, which i think is not so reasonable.
Am i having any misunderstanding or maybe I have downloaded a wrong model?

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.