[ICCV '21] In this repository you find the code to our paper Keypoint Communities

Overview

Keypoint Communities

PWC PWC

In this repository you will find the code to our ICCV '21 paper:

Keypoint Communities
Duncan Zauss, Sven Kreiss, Alexandre Alahi, 2021.

We present a fast bottom-up method that jointly detects over 100 keypoints on humans or objects, also referred to as human/object pose estimation. We model all keypoints belonging to a human or an object -the pose- as a graph and leverage insights from community detection to quantify the independence of keypoints. We use a graph centrality measure to assign training weights to different parts of a pose. Our proposed measure quantifies how tightly a keypoint is connected to its neighborhood. Our experiments show that our method outperforms all previous methods for human pose estimation with fine-grained keypoint annotations on the face, the hands and the feet with a total of 133 keypoints. We also show that our method generalizes to car poses.

Qualitative results

example image with overlaid wholebody pose predictions

Image credit: Photo by Toby Bradbury which is licensed under CC-BY-2.0.

drawing

Webcam demo. You can try it out yourself with the following command:

python -m openpifpaf.video --checkpoint=shufflenetv2k16-wholebody --show --long-edge=320

example image with overlaid wholebody pose predictions

Image credit: Photo by Lokomotive74 which is licensed under CC-BY-4.0.
Created with:

python -m openpifpaf.predict docs/soccer.jpeg --checkpoint=shufflenetv2k30-wholebody --line-width=2 --show

example image with overlaid wholebody pose predictions

Image credit: "Learning to surf" by fotologic which is licensed under [CC-BY-2.0].
Created with:

python3 -m openpifpaf.predict docs/000000081988.jpg --checkpoint=shufflenetv2k30-wholebody --line-width=2 --show

Installation

This project is based on OpenPifPaf. Create a virtual environment with python 3.7, 3.8 or 3.9, clone this repo and then install the required packages:

git clone https://github.com/DuncanZauss/Keypoint_Communities.git
cd Keypoint_Communities
pip install -r requirements.txt

Obtain keypoint weights

To compute the keypoint weights with our method, download the preprocessed annotations of the MS COCO WholeBody dataset and/or the ApolloCar3D dataset with the following commands:

cd Keypoint_Communities/src
wget https://github.com/DuncanZauss/Keypoint_Communities/releases/download/v0.1.0/person_keypoints_train2017_wholebody_pifpaf_style.json
wget https://github.com/DuncanZauss/Keypoint_Communities/releases/download/v0.1.0/apollo_keypoints_66_train.json

To compute the average euclidean distance in the datasets for every edge run:

python Compute_edge_weights.py

To compute training weights with centrality measures as proposed in our paper run the following command:

python Compute_training_weights.py

You will find the computed weights in the respective csv file and a visualization of the computed weights in the respective docs folder.

Visualization of the weights for the WholeBody, where we take all shortest paths into account (left) and where we only take the shortest paths with a radius of three into account (right).

Visualization of the weights for the car pose, where we only take the shortest paths with a radius of three into account.

Training

For training you will need to download the MS COCO dataset and the WholeBody keypoint annotations as explained here. To train an OpenPifPaf model with our keypoint weighting scheme, you can use the following command:

python -m openpifpaf.train --dataset=wholebody --lr=0.0001 --momentum=0.95 --b-scale=10.0 --clip-grad-value=10 --epochs=350 --lr-decay 330 340 --lr-decay-epochs=10 --lr-warm-up-start-epoch=250 --batch-size=16 --weight-decay=1e-5 --wholebody-upsample=2 --wholebody-extended-scale --wholebody-orientation-invariant=0.1 --checkpoint=shufflenetv2k30 --head-consolidation=create --wholebody-val-annotations=
   
   
    
    /person_keypoints_val2017_wholebody_pifpaf_style.json --wholebody-train-annotations=
    
    
     
     /person_keypoints_train2017_wholebody_pifpaf_style.json --wholebody-apply-local-centrality-weights

    
    
   
   

Evaluation

To evaluate a trained model you first need to download the annotation file from this link and than you can use the following command to evaluate a model:

python -m openpifpaf.eval --dataset=wholebody --checkpoint=shufflenetv2k30-wholebody --force-complete-pose --seed-threshold=0.2 --force-complete-caf-th=0.001  --wholebody-val-annotations=
   
   
    
    /coco_wholebody_val_v1.0.json

   
   

The shufflenetv2k30-wholebody is our pretrained model, which was trained with the command from the Training section and will automatically be downloaded via torchhub. If you wish to evaluate your own model you can replace it with a local path to your model.

Related projects

Citation

If you find our research useful please cite us:

@misc{zauss2021keypoint,
      title={Keypoint Communities}, 
      author={Duncan Zauss and Sven Kreiss and Alexandre Alahi},
      year={2021},
      eprint={2110.00988},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

License

The code in this repository is licensed under the MIT license. For more information please refer to the LICENSE file. This project is largely based on OpenPifPaf. OpenPifPaf is licensed under the GNU AGPLv3 license, for more information please refer to OpenPifPaf's license.

Comments
  • Weird prediction results on custom 24 kps car dataset

    Weird prediction results on custom 24 kps car dataset

    I have a dataset with 91 trannning & 9 validation images where 24 car kps are annotated and annotations are transformed to coco format as apollo where keypoints array is of size 24*3.

    I trained the shufflenetv2k16 24kps model. Trainning seems correct as shown below

    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 1, 'batch': 0, 'n_batches': 18, 'time': 0.471, 'data_time': 4.657, 'lr': 2e-05, 'loss': 3540.623, 'head_losses': [3.702, 310.73, 0.799, 205.145, 3015.488, 4.761]}
    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 1, 'batch': 11, 'n_batches': 18, 'time': 0.434, 'data_time': 0.0, 'lr': 2e-05, 'loss': 3779.676, 'head_losses': [8.102, 372.573, 0.679, 149.955, 3243.949, 4.419]}
    INFO:openpifpaf.network.trainer:applying ema
    INFO:openpifpaf.network.trainer:{'type': 'train-epoch', 'epoch': 2, 'loss': 3874.88336, 'head_losses': [2.99886, 334.91886, 0.84728, 231.23997, 3298.75681, 6.1216], 'time': 14.2, 'n_clipped_grad': 0, 'max_norm': 0.0}
    INFO:openpifpaf.network.trainer:restoring params from before ema
    
    ...
    
    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 100, 'batch': 0, 'n_batches': 18, 'time': 0.625, 'data_time': 2.206, 'lr': 2e-05, 'loss': 2648.88, 'head_losses': [-40.191, 469.212, 0.059, 123.052, 2095.671, 1.078]}
    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 100, 'batch': 11, 'n_batches': 18, 'time': 0.427, 'data_time': 0.0, 'lr': 2e-05, 'loss': 2616.817, 'head_losses': [-36.641, 429.025, 0.159, 120.99, 2102.774, 0.509]}
    INFO:openpifpaf.network.trainer:applying ema
    INFO:openpifpaf.network.trainer:{'type': 'train-epoch', 'epoch': 101, 'loss': 3276.90862, 'head_losses': [-45.2643, 351.73443, 0.60137, 196.80784, 2769.34305, 3.68621], 'time': 14.2, 'n_clipped_grad': 0, 'max_norm': 0.0}
    INFO:openpifpaf.network.trainer:restoring params from before ema
    
    ...
    
    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 199, 'batch': 0, 'n_batches': 18, 'time': 0.46, 'data_time': 4.563, 'lr': 2e-06, 'loss': 3563.018, 'head_losses': [-61.656, 281.741, 0.614, 203.755, 3135.36, 3.203]}
    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 199, 'batch': 11, 'n_batches': 18, 'time': 0.435, 'data_time': 0.0, 'lr': 2e-06, 'loss': 3455.956, 'head_losses': [-54.041, 327.122, 0.471, 192.066, 2987.241, 3.097]}
    INFO:openpifpaf.network.trainer:applying ema
    INFO:openpifpaf.network.trainer:{'type': 'train-epoch', 'epoch': 200, 'loss': 3159.92377, 'head_losses': [-52.87015, 321.86455, 0.44325, 169.9907, 2718.06543, 2.42999], 'time': 20.8, 'n_clipped_grad': 0, 'max_norm': 0.0}
    INFO:openpifpaf.network.trainer:model written: outputs/shufflenetv2k16-211021-024942-apollo.pkl.epoch200
    
    ...
    
    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 299, 'batch': 0, 'n_batches': 18, 'time': 0.614, 'data_time': 6.553, 'lr': 2e-07, 'loss': 3374.045, 'head_losses': [-54.347, 392.751, 0.522, 170.645, 2860.723, 3.751]}
    INFO:openpifpaf.network.trainer:{'type': 'train', 'epoch': 299, 'batch': 11, 'n_batches': 18, 'time': 0.443, 'data_time': 0.0, 'lr': 2e-07, 'loss': 2769.724, 'head_losses': [-43.393, 481.309, 0.127, 131.402, 2198.701, 1.578]}
    INFO:openpifpaf.network.trainer:applying ema
    INFO:openpifpaf.network.trainer:{'type': 'train-epoch', 'epoch': 300, 'loss': 3054.62056, 'head_losses': [-52.68392, 345.90691, 0.38009, 155.51899, 2603.45154, 2.04698], 'time': 17.1, 'n_clipped_grad': 0, 'max_norm': 0.0}
    INFO:openpifpaf.network.trainer:model written: outputs/shufflenetv2k16-211021-024942-apollo.pkl.epoch300
    

    However, all predictions are empty array.

    image

    The prediction codes are shown below

    import os
    import numpy as np
    from PIL import Image
    import cv2
    import openpifpaf
    
    if __name__ == "__main__":
    
       src_img_folder = './images/train'
       dst_img_folder = './res/train'
       weights = './outputs/shufflenetv2k16-211021-024942-apollo.pkl.epoch200' 
     
       predictor = openpifpaf.Predictor(checkpoint=weights)
    
       img_names = os.listdir(src_img_folder)
       img_names = sorted(img_names)
    
       for name_idx,name_ in enumerate(img_names):
    
           I = Image.open(os.path.join(src_img_folder,name_)).convert('RGB')
    
           predictions, gt_anns, image_meta = predictor.pil_image(I)
    
           print(f"========== predictions: {predictions} ===============")
           print(f"========== image_meta: {image_meta} ==============")
    
    opened by KleinXin 9
  • Questions regarding the application of this paper/code.

    Questions regarding the application of this paper/code.

    Hello Thank you for the open-source code and great work! I had the following questions -

    1)Can we apply this code to a use-case as follows- A static camera is observing 2-3 moving robots in its FOV,and if I retrain the network with the images of the robot,with its corresponding ground-truth keypoints,the network can still predict the 2d keypoints of the moving robot right?

    2)For this does the robot have to be at a particular distance from the camera,so that the keypoint estimation is accurate enough?Meaning is the network's accuracy dependent on "the distance the object is from the camera"?

    3)Also can the network be used in a case where the camera observing the scene is moving as well as the object whose pose is to be estimated is also moving?Will the network's accuracy be effected in this case?

    Any suggestions/replies are greatly appreciated! Thank you

    opened by poornimajd 2
  • Running with multi-gpu or choosing a single gpu for inference

    Running with multi-gpu or choosing a single gpu for inference

    I can't seem to get this to run in a multi-gpu enviroment. I've tried setting the export CUDA_VISIBLE_DEVICES=0 in my bash enviroment but that didn't seem to do the trick. Any help is appreciated!

    opened by pablovela5620 2
  • Prediction result for soccer.jpeg is not as good as the shown image

    Prediction result for soccer.jpeg is not as good as the shown image

    Screenshot from 2021-11-09 23-33-13 I use the same command 'python -m openpifpaf.predict docs/soccer.jpeg --checkpoint=shufflenetv2k30-wholebody --line-width=2 --show ' to run the prediction but the hands of the front person are not aligned as your shown image. Did you use a different weight? Or is there any other problems?

    opened by Kairobo 1
  • Issues running webcam/videos

    Issues running webcam/videos

    Getting the following errors when trying to use on webcam or video source

    (kc) [email protected]:~/0Dev/Keypoint_Communities$ python -m openpifpaf.video --source ../immersed-ganerated/data/iterim/test_vid3.webm --checkpoint=shufflenetv2k30-wholebody --line-width=2 --showINFO:__main__:neural network device: cuda (CUDA available: True, count: 1)
    INFO:openpifpaf.decoder.factory:No specific decoder requested. Using the first one from:
      --decoder=cifcaf:0
      --decoder=posesimilarity:0
    Use any of the above arguments to select one or multiple decoders and to suppress this message.
    INFO:openpifpaf.predictor:neural network device: cuda (CUDA available: True, count: 1)
    INFO:openpifpaf.show.animation_frame:video output = None
    Traceback (most recent call last):
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/runpy.py", line 194, in _run_module_as_main
        return _run_code(code, main_globals, None,
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/runpy.py", line 87, in _run_code
        exec(code, run_globals)
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/openpifpaf/video.py", line 158, in <module>
        main()
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/openpifpaf/video.py", line 129, in main
        for (ax, ax_second), (preds, _, meta) in \
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/openpifpaf/predictor.py", line 112, in dataset
        yield from self.dataloader(dataloader)
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/openpifpaf/predictor.py", line 149, in dataloader
        yield from self.enumerated_dataloader(enumerate(dataloader))
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/openpifpaf/predictor.py", line 115, in enumerated_dataloader
        for batch_i, item in enumerated_dataloader:
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 521, in __next__
        data = self._next_data()
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 1203, in _next_data
        return self._process_data(data)
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 1229, in _process_data
        data.reraise()
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/torch/_utils.py", line 425, in reraise
        raise self.exc_type(msg)
    AttributeError: Caught AttributeError in DataLoader worker process 0.
    Original Traceback (most recent call last):
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/torch/utils/data/_utils/worker.py", line 287, in _worker_loop
        data = fetcher.fetch(index)
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 28, in fetch
        data.append(next(self.dataset_iter))
      File "/home/pablo/miniconda3/envs/kc/lib/python3.8/site-packages/openpifpaf/stream.py", line 119, in __iter__
        capture = cv2.VideoCapture(self.source)
    AttributeError: 'NoneType' object has no attribute 'VideoCapture'
    

    I have no problem running the demo on images as shown in the readme, its only with videos

    opened by pablovela5620 1
  • Common model for human and car keypoint

    Common model for human and car keypoint

    HI, thanks for sharing! Can you please elaborate more, in your second demo video we can see you detected human and vehicle key points in each frame? Was it two different models of a single model? If it is a single model please let me know where to get it. Thank you in advance.

    opened by capslocknanda 1
  • can't run the demo

    can't run the demo

    Hi there, I can't run the webcam and the demo with image source either. Not sure what's happening.

    Working Environment 
    OS: macOS 12.1 21C52 x86_64 
    Host: iMac19,1
    Kernel: 21.2.0
    CPU: Intel i5-8500 (6) @ 3.00GHz
    GPU: Radeon Pro 570X
    

    I used miniconda to install this repo. Not sure whether it needs cuda support

    opened by yktangac 4
  • PytorchStreamReader failed reading zip archive: failed finding central directory

    PytorchStreamReader failed reading zip archive: failed finding central directory

    When i run the demo, i meet the error like this:

    INFO:__main__:neural network device: cuda (CUDA available: True, count: 2)
    Traceback (most recent call last):
      File "/root/miniconda3/envs/key_com/lib/python3.8/runpy.py", line 192, in _run_module_as_main
        return _run_code(code, main_globals, None,
      File "/root/miniconda3/envs/key_com/lib/python3.8/runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/openpifpaf/predict.py", line 128, in <module>
        main()
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/openpifpaf/predict.py", line 103, in main
        predictor = Predictor(
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/openpifpaf/predictor.py", line 29, in __init__
        self.model_cpu, _ = network.Factory().factory(head_metas=head_metas)
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/openpifpaf/network/factory.py", line 302, in factory
        net_cpu, epoch = self.from_checkpoint()
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/openpifpaf/network/factory.py", line 366, in from_checkpoint
        checkpoint = torch.hub.load_state_dict_from_url(
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/torch/hub.py", line 590, in load_state_dict_from_url
        return torch.load(cached_file, map_location=map_location)
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/torch/serialization.py", line 600, in load
        with _open_zipfile_reader(opened_file) as opened_zipfile:
      File "/root/miniconda3/envs/key_com/lib/python3.8/site-packages/torch/serialization.py", line 242, in __init__
        super(_open_zipfile_reader, self).__init__(torch._C.PyTorchFileReader(name_or_buffer))
    RuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory
    

    My torch version is 1.10.0.

    opened by sulei1998 2
  • Problems during operation

    Problems during operation

    Hello author, I'm trying to re-implement your code, but in the process, I'm encountering problems. First I need to state that I successfully installed the environment and ran the steps: python Compute_edge_weights.py Secondly, After running this command (python Compute_training_weights.py) the following error is reported:

    Traceback (most recent call last): File "/home/hcb/Keypoint_Communities/src/Compute_training_weights.py", line 314, in create_weights_wholebody() File "/home/hcb/Keypoint_Communities/src/Compute_training_weights.py", line 192, in create_weights_wholebody draw_skeletons_wb(WHOLEBODY_STANDING_POSE, inverse_normalize(w_harm_cl_euclid, kps=kps), File "/home/hcb/Keypoint_Communities/src/Compute_training_weights.py", line 60, in draw_skeletons_wb from openpifpaf.annotation import Annotation # pylint: disable=import-outside-toplevel File "/home/hcb/anaconda3/envs/keypoint/lib/python3.8/site-packages/openpifpaf/init.py", line 11, in cpp_extension.register_ops() File "/home/hcb/anaconda3/envs/keypoint/lib/python3.8/site-packages/openpifpaf/cpp_extension.py", line 26, in register_ops torch.ops.load_library(ext_specs.origin) File "/home/hcb/anaconda3/envs/keypoint/lib/python3.8/site-packages/torch/_ops.py", line 104, in load_library ctypes.CDLL(path) File "/home/hcb/anaconda3/envs/keypoint/lib/python3.8/ctypes/init.py", line 373, in init self._handle = _dlopen(self._name, mode) OSError: /home/hcb/anaconda3/envs/keypoint/lib/python3.8/site-packages/openpifpaf/_cpp.so: undefined symbol: ZN5torch6detail10class_baseC2ERKSsS3_SsRKSt9type_infoS6 directory

    (I only changed the path, no other code was touched. The code can generate a folder named docs_wb, but it is empty.My directory is shown in the figure)

    cheers

    opened by hechengbo-H 2
  • Error while installing openpifpaf

    Error while installing openpifpaf

    While running the requirements.txt I got stuck on an issue regarding openpifpaf==0.13.0. It seems like the version cannot be found. Do you have a way to bypass that ?

    opened by samymdihi 4
Owner
Duncan Zauss
Duncan Zauss
StyleTransfer - Open source style transfer project, based on VGG19

StyleTransfer - Open source style transfer project, based on VGG19

Patrick martins de lima 9 Dec 13, 2021
A framework for annotating 3D meshes using the predictions of a 2D semantic segmentation model.

Semantic Meshes A framework for annotating 3D meshes using the predictions of a 2D semantic segmentation model. Paper If you find this framework usefu

Florian 40 Dec 09, 2022
This project is based on our SIGGRAPH 2021 paper, ROSEFusion: Random Optimization for Online DenSE Reconstruction under Fast Camera Motion .

ROSEFusion 🌹 This project is based on our SIGGRAPH 2021 paper, ROSEFusion: Random Optimization for Online DenSE Reconstruction under Fast Camera Moti

219 Dec 27, 2022
ImVoxelNet: Image to Voxels Projection for Monocular and Multi-View General-Purpose 3D Object Detection

ImVoxelNet: Image to Voxels Projection for Monocular and Multi-View General-Purpose 3D Object Detection This repository contains implementation of the

Visual Understanding Lab @ Samsung AI Center Moscow 190 Dec 30, 2022
YOLOPのPythonでのONNX推論サンプル

YOLOP-ONNX-Video-Inference-Sample YOLOPのPythonでのONNX推論サンプルです。 ONNXモデルは、hustvl/YOLOP/weights を使用しています。 Requirement OpenCV 3.4.2 or later onnxruntime 1.

KazuhitoTakahashi 8 Sep 05, 2022
Inference code for "StylePeople: A Generative Model of Fullbody Human Avatars" paper. This code is for the part of the paper describing video-based avatars.

NeuralTextures This is repository with inference code for paper "StylePeople: A Generative Model of Fullbody Human Avatars" (CVPR21). This code is for

Visual Understanding Lab @ Samsung AI Center Moscow 18 Oct 06, 2022
f-BRS: Rethinking Backpropagating Refinement for Interactive Segmentation

f-BRS: Rethinking Backpropagating Refinement for Interactive Segmentation [Paper] [PyTorch] [MXNet] [Video] This repository provides code for training

Visual Understanding Lab @ Samsung AI Center Moscow 516 Dec 21, 2022
Code for KDD'20 "An Efficient Neighborhood-based Interaction Model for Recommendation on Heterogeneous Graph"

Heterogeneous INteract and aggreGatE (GraphHINGE) This is a pytorch implementation of GraphHINGE model. This is the experiment code in the following w

Jinjiarui 69 Nov 24, 2022
Pytorch domain adaptation package

DomainAdaptation This package is created to tackle the problem of domain shifts when dealing with two domains of different feature distributions. In d

Institute of Computational Perception 7 Oct 22, 2022
QAHOI: Query-Based Anchors for Human-Object Interaction Detection (paper)

QAHOI QAHOI: Query-Based Anchors for Human-Object Interaction Detection (paper) Requirements PyTorch = 1.5.1 torchvision = 0.6.1 pip install -r requ

38 Dec 29, 2022
Validated, scalable, community developed variant calling, RNA-seq and small RNA analysis

Validated, scalable, community developed variant calling, RNA-seq and small RNA analysis. You write a high level configuration file specifying your in

Blue Collar Bioinformatics 917 Jan 03, 2023
PyTorch code for the paper "FIERY: Future Instance Segmentation in Bird's-Eye view from Surround Monocular Cameras"

FIERY This is the PyTorch implementation for inference and training of the future prediction bird's-eye view network as described in: FIERY: Future In

Wayve 406 Dec 24, 2022
Testability-Aware Low Power Controller Design with Evolutionary Learning, ITC2021

Testability-Aware Low Power Controller Design with Evolutionary Learning This repo contains the source code of Testability-Aware Low Power Controller

Lee Man 1 Dec 26, 2021
A toolkit for Lagrangian-based constrained optimization in Pytorch

Cooper About Cooper is a toolkit for Lagrangian-based constrained optimization in Pytorch. This library aims to encourage and facilitate the study of

Cooper 34 Jan 01, 2023
(ICCV 2021 Oral) Re-distributing Biased Pseudo Labels for Semi-supervised Semantic Segmentation: A Baseline Investigation.

DARS Code release for the paper "Re-distributing Biased Pseudo Labels for Semi-supervised Semantic Segmentation: A Baseline Investigation", ICCV 2021

CVMI Lab 58 Jan 01, 2023
Official PyTorch code for the paper: "Point-Based Modeling of Human Clothing" (ICCV 2021)

Point-Based Modeling of Human Clothing Paper | Project page | Video This is an official PyTorch code repository of the paper "Point-Based Modeling of

Visual Understanding Lab @ Samsung AI Center Moscow 64 Nov 22, 2022
Pun Detection and Location

Pun Detection and Location “The Boating Store Had Its Best Sail Ever”: Pronunciation-attentive Contextualized Pun Recognition Yichao Zhou, Jyun-yu Jia

lawson 3 May 13, 2022
A trusty face recognition research platform developed by Tencent Youtu Lab

Introduction TFace: A trusty face recognition research platform developed by Tencent Youtu Lab. It provides a high-performance distributed training fr

Tencent 956 Jan 01, 2023
Numerical Methods with Python, Numpy and Matplotlib

Numerical Bric-a-Brac Collections of numerical techniques with Python and standard computational packages (Numpy, SciPy, Numba, Matplotlib ...). Diffe

Vincent Bonnet 10 Dec 20, 2021
Enhancing Column Generation by a Machine-Learning-BasedPricing Heuristic for Graph Coloring

Enhancing Column Generation by a Machine-Learning-BasedPricing Heuristic for Graph Coloring (to appear at AAAI 2022) We propose a machine-learning-bas

YunzhuangS 2 May 02, 2022