This is the implementation of our work Deep Extreme Cut (DEXTR), for object segmentation from extreme points.

Overview

Deep Extreme Cut (DEXTR)

Visit our project page for accessing the paper, and the pre-computed results.

DEXTR

This is the implementation of our work Deep Extreme Cut (DEXTR), for object segmentation from extreme points.

This code was ported to PyTorch 0.4.0! For the previous version of the code with Pytorch 0.3.1, please checkout this branch.

NEW: Keras with Tensorflow backend implementation also available: DEXTR-KerasTensorflow!

Abstract

This paper explores the use of extreme points in an object (left-most, right-most, top, bottom pixels) as input to obtain precise object segmentation for images and videos. We do so by adding an extra channel to the image in the input of a convolutional neural network (CNN), which contains a Gaussian centered in each of the extreme points. The CNN learns to transform this information into a segmentation of an object that matches those extreme points. We demonstrate the usefulness of this approach for guided segmentation (grabcut-style), interactive segmentation, video object segmentation, and dense segmentation annotation. We show that we obtain the most precise results to date, also with less user input, in an extensive and varied selection of benchmarks and datasets.

Installation

The code was tested with Miniconda and Python 3.6. After installing the Miniconda environment:

  1. Clone the repo:

    git clone https://github.com/scaelles/DEXTR-PyTorch
    cd DEXTR-PyTorch
  2. Install dependencies:

    conda install pytorch torchvision -c pytorch
    conda install matplotlib opencv pillow scikit-learn scikit-image
  3. Download the model by running the script inside models/:

    cd models/
    chmod +x download_dextr_model.sh
    ./download_dextr_model.sh
    cd ..

    The default model is trained on PASCAL VOC Segmentation train + SBD (10582 images). To download models trained on PASCAL VOC Segmentation train or COCO, please visit our project page, or keep scrolling till the end of this README.

  4. To try the demo version of DEXTR, please run:

    python demo.py

If installed correctly, the result should look like this:

To train and evaluate DEXTR on PASCAL (or PASCAL + SBD), please follow these additional steps:

  1. Install tensorboard (integrated with PyTorch).

    pip install tensorboard tensorboardx
  2. Download the pre-trained PSPNet model for semantic segmentation, taken from this repository.

    cd models/
    chmod +x download_pretrained_psp_model.sh
    ./download_pretrained_psp_model.sh
    cd ..
  3. Set the paths in mypath.py, so that they point to the location of PASCAL/SBD dataset.

  4. Run python train_pascal.py, after changing the default parameters, if necessary (eg. gpu_id).

Enjoy!!

Pre-trained models

You can use the following DEXTR models under MIT license as pre-trained on:

  • PASCAL + SBD, trained on PASCAL VOC Segmentation train + SBD (10582 images). Achieves mIoU of 91.5% on PASCAL VOC Segmentation val.
  • PASCAL, trained on PASCAL VOC Segmentation train (1464 images). Achieves mIoU of 90.5% on PASCAL VOC Segmentation val.
  • COCO, trained on COCO train 2014 (82783 images). Achieves mIoU of 87.8% on PASCAL VOC Segmentation val.

Citation

If you use this code, please consider citing the following papers:

@Inproceedings{Man+18,
  Title          = {Deep Extreme Cut: From Extreme Points to Object Segmentation},
  Author         = {K.K. Maninis and S. Caelles and J. Pont-Tuset and L. {Van Gool}},
  Booktitle      = {Computer Vision and Pattern Recognition (CVPR)},
  Year           = {2018}
}

@InProceedings{Pap+17,
  Title          = {Extreme clicking for efficient object annotation},
  Author         = {D.P. Papadopoulos and J. Uijlings and F. Keller and V. Ferrari},
  Booktitle      = {ICCV},
  Year           = {2017}
}

We thank the authors of pytorch-deeplab-resnet for making their PyTorch re-implementation of DeepLab-v2 available!

If you encounter any problems please contact us at {kmaninis, scaelles}@vision.ee.ethz.ch.

Comments
  • helpers.py leads to an error

    helpers.py leads to an error

    I am on python 3 Line 159:

    if inds[0].shape[0] == 0:

    leads to error

    IndexError: index 0 is out of bounds for axis 0 with size 0

    inds[0] is a one dimensional array with 4 integers type np.Int64. So inds[0].shape[0] trows out error

    opened by shirishr 6
  • Can't reproduce results running demo.py

    Can't reproduce results running demo.py

    Hi,

    Thank you for this work! I am using PyTorch, Python 2.7, Ubuntu 14.04 ~~Keras, TF 1.4~ implementation of DEXTR. I haven't succeed to reproduce the results you show in the GIF.

    Here's what I got running the demo:

    • Pascal dextr_pascal
    • Pascal+SBD dextr_pascal-sdb
    • COCO dextr_coco

    Any idea?

    opened by howard-mahe 6
  • How can I train DEXTR Multiple GPU and Big Batch Size

    How can I train DEXTR Multiple GPU and Big Batch Size

    Hi,

    How can I trained DEXTR with multiple GPU either with same batch size (5) or bigger batch size (16 or 32)? What are changes I will do in the code to train on Multiple GPU?

    best. -Humayun

    opened by Humayun-CF 5
  • How to train with Online Hard Example Mining?

    How to train with Online Hard Example Mining?

    Thanks for your great work. This is not an issue/bug, I just want to make clear what you did with the hard sample. I think it will be useful for other researchers as well. In the paper, you mentioned

    We split the training dataset into two equal splits. ..We first select the objects that lead to poor performance (IoU<0.8) when applying the network trained on the first split... Using the network trained further on the hard examples... Since the increased performance is partially due to the increased amount of training data (first split + hard examples of the second split), we need to disentangle the two sources of performance gain.

    Assume we have 1000 images in the first split and 50 hard examples, so we will merge them to generate 1050 images and train with initial checkpoint from the trained model. So, if the learning rate of the first split is [0.01 0.001 0.0001] to obtained the trained model for the first split (without hard sample) and early stop at 0.001. What should a learning rate in the second phase (first split+hard sample)? Does it start again from [0.01 0.001 0.0001] or the last learning rate 0.001?

    opened by John1231983 5
  • Question about Loss

    Question about Loss

    Hi, thanks for your great work. I have some confusion about the class-balance cross-entropy loss at https://github.com/scaelles/DEXTR-PyTorch/blob/master/layers/loss.py#L26 . I notice that the output_gt_zero will differ the effects of postive prediction and negative prediction, I do not know why. In my thought, the loss_val should be equal to log(sigmoid(output)) when label==1, while log(1-sigmoid(output)) when label==0. However, this does not match with your code, can you please explain it or give me some paper references. Thank you.

    opened by mt-cly 3
  • Performance of DEXTR with 2 or 3 points

    Performance of DEXTR with 2 or 3 points

    Hi,

    DEXTR is an amazing tool. Out of curiosity, have you tried training DEXTR with only 2 or 3 extreme points? I am interested in using this tool to segment long and thin objects like tree trunks, springs, road lanes ...

    Thanks

    opened by SebastienLinker 3
  • Cannot reproduce the same result as provided Dextr_pascal-sbd model

    Cannot reproduce the same result as provided Dextr_pascal-sbd model

    Thanks for your great work!

    When I reproduce your results of Dextr_pascal-sbd, I cannot get the same performance (IoU=91.5).

    Firstly, I just evaluate with your provided model "dextr_pascal-sbd.pth" and I can get the IoU of 91.5. However, when I try to train the model by myself, I only get the IoU of 86.2, with a gap of 5.3. I have barely changed your codes.

    Here is my setup:

    • python 3.6.6
    • pytorch 0.4.0
    • gpu Titan X

    Could you please give me some suggestions :)

    opened by Valentine233 3
  • I have a some question about pascal voc train

    I have a some question about pascal voc train

    Thanks for your jobs!

    I have a some question about train method I train pascal voc dataset model with basic setting. and evaluate model with eval_all.py.

    but there are some gap in the performance.

    • my model 87.2
    • your model 90.5
    • 3.3 gap

    there are some more training technic?

    • i train just 100 epoch.
    • more train epoch needs?

    thanks!

    opened by dypark86 3
  • BrokenPipeError: [Errno 32] Broken pipe

    BrokenPipeError: [Errno 32] Broken pipe

    Hi,

    I am using windows 10 and when i tried to ran train_pascal, the following error occured. Could you please tell me if there any solution for this?

    Output:

    runfile('C:/Users/jakaria/DEXTR-PyTorch/train_pascal.py', wdir='C:/Users/jakaria/DEXTR-PyTorch') Reloaded modules: dataloaders.pascal, dataloaders.helpers, dataloaders.combine_dbs, networks.deeplab_resnet, layers, dataloaders.custom_transforms, layers.loss, dataloaders.sbd, dataloaders, networks, mypath Using GPU: 0 Constructing ResNet model... Dilations: (2, 4) Number of classes: 1 Number of Input Channels: 4 Initializing classifier: PSP Skipping Conv layer with size: torch.Size([512, 2048, 1, 1]) and target size: torch.Size([1, 2048, 3, 3]) Initializing from pretrained Deeplab-v2 model Preprocessing of PASCAL VOC dataset, this will take long, but it will be done only once. Preprocessing finished Number of images: 1464 Number of objects: 3507 Preprocessing of PASCAL VOC dataset, this will take long, but it will be done only once. Preprocessing finished Number of images: 1449 Number of objects: 3427 Training Network Traceback (most recent call last):

    File "", line 1, in runfile('C:/Users/jakaria/DEXTR-PyTorch/train_pascal.py', wdir='C:/Users/jakaria/DEXTR-PyTorch')

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\spyder\utils\site\sitecustomize.py", line 705, in runfile execfile(filename, namespace)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile exec(compile(f.read(), filename, 'exec'), namespace)

    File "C:/Users/jakaria/DEXTR-PyTorch/train_pascal.py", line 139, in for ii, sample_batched in enumerate(trainloader):

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\torch\utils\data\dataloader.py", line 417, in iter return DataLoaderIter(self)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\torch\utils\data\dataloader.py", line 234, in init w.start()

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\process.py", line 105, in start self._popen = self._Popen(self)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\context.py", line 212, in _Popen return _default_context.get_context().Process._Popen(process_obj)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\context.py", line 313, in _Popen return Popen(process_obj)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\popen_spawn_win32.py", line 66, in init reduction.dump(process_obj, to_child)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\reduction.py", line 59, in dump ForkingPickler(file, protocol).dump(obj)

    BrokenPipeError: [Errno 32] Broken pipe

    runfile('C:/Users/jakaria/DEXTR-PyTorch/train_pascal.py', wdir='C:/Users/jakaria/DEXTR-PyTorch') Reloaded modules: dataloaders.pascal, dataloaders.helpers, dataloaders.combine_dbs, networks.deeplab_resnet, layers, dataloaders.custom_transforms, layers.loss, dataloaders.sbd, dataloaders, networks, mypath Using GPU: 0 Constructing ResNet model... Dilations: (2, 4) Number of classes: 1 Number of Input Channels: 4 Initializing classifier: PSP Skipping Conv layer with size: torch.Size([512, 2048, 1, 1]) and target size: torch.Size([1, 2048, 3, 3]) Initializing from pretrained Deeplab-v2 model Number of images: 1464 Number of objects: 3507 Number of images: 1449 Number of objects: 3427 Training Network Traceback (most recent call last):

    File "", line 1, in runfile('C:/Users/jakaria/DEXTR-PyTorch/train_pascal.py', wdir='C:/Users/jakaria/DEXTR-PyTorch')

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\spyder\utils\site\sitecustomize.py", line 705, in runfile execfile(filename, namespace)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile exec(compile(f.read(), filename, 'exec'), namespace)

    File "C:/Users/jakaria/DEXTR-PyTorch/train_pascal.py", line 139, in for ii, sample_batched in enumerate(trainloader):

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\torch\utils\data\dataloader.py", line 417, in iter return DataLoaderIter(self)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\site-packages\torch\utils\data\dataloader.py", line 234, in init w.start()

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\process.py", line 105, in start self._popen = self._Popen(self)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\context.py", line 212, in _Popen return _default_context.get_context().Process._Popen(process_obj)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\context.py", line 313, in _Popen return Popen(process_obj)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\popen_spawn_win32.py", line 66, in init reduction.dump(process_obj, to_child)

    File "C:\Users\jakaria\AppData\Local\conda\conda\envs\tensorflow\lib\multiprocessing\reduction.py", line 59, in dump ForkingPickler(file, protocol).dump(obj)

    BrokenPipeError: [Errno 32] Broken pipe

    opened by Jakaria08 3
  • train_pascal.py doesn't work

    train_pascal.py doesn't work

    Hi, I tried to run "train_pascal.py" but failed to do so. I found something confusing. In your code,

    if resume_epoch == 0:
        print("Initializing from pretrained Deeplab-v2 model")
    else:
    ...
    

    It seems there is nothing done here if we start from the beginning. I am curious how you convert the first conv layer from RGB 3 channels to 4 channels.

    opened by ascust 3
  • List out of range

    List out of range

    Hello, thanks for your work)

    https://github.com/scaelles/DEXTR-PyTorch/blob/352ccc76067156ebcf7267b07e0a5e43d32e83d5/dataloaders/custom_transforms.py#L34

    It should be rot = self.rots[random.randint(0, len(self.rots)-1)] and the same issue for scales on the next line

    opened by ahmadalideeb 2
  • demo.py blocks at line 49

    demo.py blocks at line 49

    Hi, Thank you for your work! I am using PyTorch and I've installed the required libraries in a conda environment in Python 3.6, but I haven't succeeded to reproduce the results you have shown in the GIF. If I run the model in a Jupyter notebook the problem seems to be that the matplotlib library has problems with interactions, but when I try to launch the demo.py from the terminal with the following command : python demo.py the problem still remains. The image is not shown and I cannot click on the points (so the code enters a loop at line 49 : extreme_points_ori = np.array(plt.ginput(4, timeout=0)).astype(np.int) ).

    The installed libraries in my environment are :

    _libgcc_mutex 0.1 main
    _openmp_mutex 4.5 1_gnu
    anyio 2.2.0 py36h06a4308_1
    argon2-cffi 20.1.0 py36h27cfd23_1
    async_generator 1.10 py36h28b3542_0
    attrs 21.2.0 pyhd3eb1b0_0
    babel 2.9.1 pyhd3eb1b0_0
    bleach 4.0.0 pyhd3eb1b0_0
    brotlipy 0.7.0 py36h27cfd23_1003
    bzip2 1.0.8 h7b6447c_0
    ca-certificates 2021.9.30 h06a4308_1
    cairo 1.16.0 hf32fb01_1
    certifi 2020.12.5 py36h06a4308_0
    cffi 1.14.6 py36h400218f_0
    charset-normalizer 2.0.4 pyhd3eb1b0_0
    cloudpickle 2.0.0 pyhd3eb1b0_0
    contextvars 2.4 py_0
    cryptography 3.4.7 py36hd23ed53_0
    cudatoolkit 10.0.130 0
    cycler 0.10.0 py36_0
    cytoolz 0.11.0 py36h7b6447c_0
    dask-core 1.1.4 py36_1
    dataclasses 0.8 pyh4f3eec9_6
    dbus 1.13.18 hb2f20db_0
    decorator 5.1.0 pyhd3eb1b0_0
    defusedxml 0.7.1 pyhd3eb1b0_0
    entrypoints 0.3 py36_0
    expat 2.4.1 h2531618_2
    ffmpeg 4.0 hcdf2ecd_0
    fontconfig 2.13.1 h6c09931_0
    freeglut 3.0.0 hf484d3e_5
    freetype 2.10.4 h5ab3b9f_0
    glib 2.69.1 h5202010_0
    graphite2 1.3.14 h23475e2_0
    gst-plugins-base 1.14.0 h8213a91_2
    gstreamer 1.14.0 h28cd5cc_2
    harfbuzz 1.8.8 hffaf4a1_0
    hdf5 1.10.2 hc401514_3 conda-forge icu 58.2 he6710b0_3
    idna 3.2 pyhd3eb1b0_0
    imageio 2.9.0 pyhd3eb1b0_0
    immutables 0.16 py36h7f8727e_0
    importlib-metadata 4.8.1 py36h06a4308_0
    importlib_metadata 4.8.1 hd3eb1b0_0
    intel-openmp 2021.3.0 h06a4308_3350
    ipykernel 5.3.4 py36h5ca1d4c_0
    ipympl 0.7.0 pyhd3eb1b0_0
    ipython 5.8.0 py36_1 conda-forge ipython_genutils 0.2.0 pyhd3eb1b0_1
    ipywidgets 7.6.5 pyhd3eb1b0_1
    jasper 2.0.14 hd8c5072_2
    jinja2 3.0.1 pyhd3eb1b0_0
    joblib 1.0.1 pyhd3eb1b0_0
    jpeg 9d h7f8727e_0
    json5 0.9.6 pyhd3eb1b0_0
    jsonschema 3.2.0 pyhd3eb1b0_2
    jupyter_client 7.0.1 pyhd3eb1b0_0
    jupyter_core 4.8.1 py36h06a4308_0
    jupyter_server 1.4.1 py36h06a4308_0
    jupyterlab 3.1.7 pyhd3eb1b0_0
    jupyterlab_pygments 0.1.2 py_0
    jupyterlab_server 2.8.2 pyhd3eb1b0_0
    jupyterlab_widgets 1.0.0 pyhd3eb1b0_1
    kiwisolver 1.3.1 py36h2531618_0
    lcms2 2.12 h3be6417_0
    ld_impl_linux-64 2.35.1 h7274673_9
    libblas 3.9.0 11_linux64_openblas conda-forge libcblas 3.9.0 11_linux64_openblas conda-forge libffi 3.3 he6710b0_2
    libgcc-ng 9.3.0 h5101ec6_17
    libgfortran 3.0.0 1 conda-forge libgfortran-ng 9.3.0 ha5ec8a7_17
    libgfortran5 9.3.0 ha5ec8a7_17
    libglu 9.0.0 hf484d3e_1
    libgomp 9.3.0 h5101ec6_17
    liblapack 3.9.0 11_linux64_openblas conda-forge libopenblas 0.3.17 pthreads_h8fe5266_1 conda-forge libopencv 3.4.2 hb342d67_1
    libopus 1.3.1 h7b6447c_0
    libpng 1.6.37 hbc83047_0
    libsodium 1.0.18 h7b6447c_0
    libstdcxx-ng 9.3.0 hd4cf53a_17
    libtiff 4.2.0 h85742a9_0
    libuuid 1.0.3 h7f8727e_2
    libvpx 1.7.0 h439df22_0
    libwebp-base 1.2.0 h27cfd23_0
    libxcb 1.14 h7b6447c_0
    libxml2 2.9.12 h03d6c58_0
    lz4-c 1.9.3 h295c915_1
    markupsafe 2.0.1 py36h27cfd23_0
    matplotlib 3.3.4 py36h06a4308_0
    matplotlib-base 3.3.4 py36h62a2d02_0
    mistune 0.8.4 py36h7b6447c_0
    mkl 2021.3.0 h06a4308_520
    nbclassic 0.2.6 pyhd3eb1b0_0
    nbclient 0.5.3 pyhd3eb1b0_0
    nbconvert 6.0.7 py36_0
    nbformat 5.1.3 pyhd3eb1b0_0
    ncurses 6.2 he6710b0_1
    nest-asyncio 1.5.1 pyhd3eb1b0_0
    networkx 2.2 py36_1
    ninja 1.10.2 hff7bd54_1
    notebook 6.4.3 py36h06a4308_0
    numpy 1.19.5 py36hfc0c790_2 conda-forge olefile 0.46 py36_0
    opencv 3.4.2 py36h6fd60c2_1
    openssl 1.1.1l h7f8727e_0
    packaging 21.0 pyhd3eb1b0_0
    pandoc 2.12 h06a4308_0
    pandocfilters 1.4.3 py36h06a4308_1
    pcre 8.45 h295c915_0
    pexpect 4.8.0 pyhd3eb1b0_3
    pickleshare 0.7.5 pyhd3eb1b0_1003
    pillow 8.2.0 py36he98fc37_0
    pip 21.0.1 py36h06a4308_0
    pixman 0.40.0 h7f8727e_1
    prometheus_client 0.11.0 pyhd3eb1b0_0
    prompt_toolkit 1.0.15 py_1 conda-forge ptyprocess 0.7.0 pyhd3eb1b0_2
    py-opencv 3.4.2 py36hb342d67_1
    pycparser 2.20 py_2
    pygments 2.10.0 pyhd3eb1b0_0
    pyopenssl 20.0.1 pyhd3eb1b0_1
    pyparsing 2.4.7 pyhd3eb1b0_0
    pyqt 5.9.2 py36h05f1152_2
    pyrsistent 0.17.3 py36h7b6447c_0
    pysocks 1.7.1 py36h06a4308_0
    python 3.6.13 h12debd9_1
    python-dateutil 2.8.2 pyhd3eb1b0_0
    python_abi 3.6 2_cp36m conda-forge pytorch 1.2.0 py3.6_cuda10.0.130_cudnn7.6.2_0 pytorch pytz 2021.3 pyhd3eb1b0_0
    pywavelets 1.1.1 py36h7b6447c_2
    pyzmq 22.2.1 py36h295c915_1
    qt 5.9.7 h5867ecd_1
    readline 8.1 h27cfd23_0
    requests 2.26.0 pyhd3eb1b0_0
    scikit-image 0.17.2 py36h284efc9_4 conda-forge scikit-learn 0.24.2 py36ha9443f7_0
    scipy 1.5.3 py36h9e8f40b_0 conda-forge send2trash 1.8.0 pyhd3eb1b0_1
    setuptools 58.0.4 py36h06a4308_0
    simplegeneric 0.8.1 py36_2
    sip 4.19.8 py36hf484d3e_0
    six 1.16.0 pyhd3eb1b0_0
    sniffio 1.2.0 py36h06a4308_1
    sqlite 3.36.0 hc218d9a_0
    terminado 0.9.4 py36h06a4308_0
    testpath 0.5.0 pyhd3eb1b0_0
    threadpoolctl 2.2.0 pyh0d69192_0
    tifffile 2020.10.1 py36hdd07704_2
    tk 8.6.11 h1ccaba5_0
    toolz 0.11.1 pyhd3eb1b0_0
    torchvision 0.4.0 py36_cu100 pytorch tornado 6.1 py36h27cfd23_0
    traitlets 4.3.3 py36h06a4308_0
    typing-extensions 3.10.0.2 hd3eb1b0_0
    typing_extensions 3.10.0.2 pyh06a4308_0
    urllib3 1.26.7 pyhd3eb1b0_0
    wcwidth 0.2.5 pyhd3eb1b0_0
    webencodings 0.5.1 py36_1
    wheel 0.37.0 pyhd3eb1b0_1
    widgetsnbextension 3.5.1 py36_0
    xz 5.2.5 h7b6447c_0
    zeromq 4.3.4 h2531618_0
    zipp 3.6.0 pyhd3eb1b0_0
    zlib 1.2.11 h7b6447c_3
    zstd 1.4.9 haebb681_0

    Can you please help me? Bests, Matteo

    opened by lombardata 0
  • Issue fix: run_id paths should be sorted by number

    Issue fix: run_id paths should be sorted by number

    If the paths are sorted by string as default, then run_10 will be sorted bewtween run_1 and run_2, but not after run_9. This may cause problem for creating new run_id.

    opened by LihaoWang1991 0
Owner
Sergi Caelles
Computer Vision researcher with special interest in applying deep learning to segmentation and detection tasks.
Sergi Caelles
Code for You Only Cut Once: Boosting Data Augmentation with a Single Cut

You Only Cut Once (YOCO) YOCO is a simple method/strategy of performing augmenta

null 88 Dec 28, 2022
(CVPR 2021) Back-tracing Representative Points for Voting-based 3D Object Detection in Point Clouds

BRNet Introduction This is a release of the code of our paper Back-tracing Representative Points for Voting-based 3D Object Detection in Point Clouds,

null 86 Oct 5, 2022
CenterPoint 3D Object Detection and Tracking using center points in the bird-eye view.

CenterPoint 3D Object Detection and Tracking using center points in the bird-eye view. Center-based 3D Object Detection and Tracking, Tianwei Yin, Xin

Tianwei Yin 134 Dec 23, 2022
[CVPR 2022 Oral] EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monocular Object Pose Estimation

EPro-PnP EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monocular Object Pose Estimation In CVPR 2022 (Oral). [paper] Hanshen

 同济大学智能汽车研究所综合感知研究组 ( Comprehensive Perception Research Group under Institute of Intelligent Vehicles, School of Automotive Studies, Tongji University) 842 Jan 4, 2023
DECAF: Deep Extreme Classification with Label Features

DECAF DECAF: Deep Extreme Classification with Label Features @InProceedings{Mittal21, author = "Mittal, A. and Dahiya, K. and Agrawal, S. and Sain

null 46 Nov 6, 2022
Official code of our work, Unified Pre-training for Program Understanding and Generation [NAACL 2021].

PLBART Code pre-release of our work, Unified Pre-training for Program Understanding and Generation accepted at NAACL 2021. Note. A detailed documentat

Wasi Ahmad 138 Dec 30, 2022
This repo contains the official code of our work SAM-SLR which won the CVPR 2021 Challenge on Large Scale Signer Independent Isolated Sign Language Recognition.

Skeleton Aware Multi-modal Sign Language Recognition By Songyao Jiang, Bin Sun, Lichen Wang, Yue Bai, Kunpeng Li and Yun Fu. Smile Lab @ Northeastern

Isen (Songyao Jiang) 128 Dec 8, 2022
This is the repo for our work "Towards Persona-Based Empathetic Conversational Models" (EMNLP 2020)

Towards Persona-Based Empathetic Conversational Models (PEC) This is the repo for our work "Towards Persona-Based Empathetic Conversational Models" (E

Zhong Peixiang 35 Nov 17, 2022
Official code of our work, AVATAR: A Parallel Corpus for Java-Python Program Translation.

AVATAR Official code of our work, AVATAR: A Parallel Corpus for Java-Python Program Translation. AVATAR stands for jAVA-pyThon progrAm tRanslation. AV

Wasi Ahmad 26 Dec 3, 2022
This repository contains the source code of our work on designing efficient CNNs for computer vision

Efficient networks for Computer Vision This repo contains source code of our work on designing efficient networks for different computer vision tasks:

Sachin Mehta 386 Nov 26, 2022
This repository contains the entire code for our work "Two-Timescale End-to-End Learning for Channel Acquisition and Hybrid Precoding"

Two-Timescale-DNN Two-Timescale End-to-End Learning for Channel Acquisition and Hybrid Precoding This repository contains the entire code for our work

QiyuHu 3 Mar 7, 2022
PyTorch implementation of the Deep SLDA method from our CVPRW-2020 paper "Lifelong Machine Learning with Deep Streaming Linear Discriminant Analysis"

Lifelong Machine Learning with Deep Streaming Linear Discriminant Analysis This is a PyTorch implementation of the Deep Streaming Linear Discriminant

Tyler Hayes 41 Dec 25, 2022
Official PyTorch implementation of "Adversarial Reciprocal Points Learning for Open Set Recognition"

Adversarial Reciprocal Points Learning for Open Set Recognition Official PyTorch implementation of "Adversarial Reciprocal Points Learning for Open Se

Guangyao Chen 78 Dec 28, 2022
Official Pytorch Implementation of 'Learning Action Completeness from Points for Weakly-supervised Temporal Action Localization' (ICCV-21 Oral)

Learning-Action-Completeness-from-Points Official Pytorch Implementation of 'Learning Action Completeness from Points for Weakly-supervised Temporal A

Pilhyeon Lee 67 Jan 3, 2023
Official implementation of the ICCV 2021 paper: "The Power of Points for Modeling Humans in Clothing".

The Power of Points for Modeling Humans in Clothing (ICCV 2021) This repository contains the official PyTorch implementation of the ICCV 2021 paper: T

Qianli Ma 158 Nov 24, 2022
Pytorch implementation of the paper Progressive Growing of Points with Tree-structured Generators (BMVC 2021)

PGpoints Pytorch implementation of the paper Progressive Growing of Points with Tree-structured Generators (BMVC 2021) Hyeontae Son, Young Min Kim Pre

Hyeontae Son 9 Jun 6, 2022
The official implementation of NeurIPS 2021 paper: Finding Optimal Tangent Points for Reducing Distortions of Hard-label Attacks

The official implementation of NeurIPS 2021 paper: Finding Optimal Tangent Points for Reducing Distortions of Hard-label Attacks

machen 11 Nov 27, 2022
Tools to create pixel-wise object masks, bounding box labels (2D and 3D) and 3D object model (PLY triangle mesh) for object sequences filmed with an RGB-D camera.

Tools to create pixel-wise object masks, bounding box labels (2D and 3D) and 3D object model (PLY triangle mesh) for object sequences filmed with an RGB-D camera. This project prepares training and testing data for various deep learning projects such as 6D object pose estimation projects singleshotpose, as well as object detection and instance segmentation projects.

null 305 Dec 16, 2022