Jupyter Dock is a set of Jupyter Notebooks for performing molecular docking protocols interactively, as well as visualizing, converting file formats and analyzing the results.

Overview

Molecular Docking integrated in Jupyter Notebooks

DOI

Description | Citation | Installation | Examples | Limitations | License

logo

Table of content

Description

Jupyter Dock is a set of Jupyter Notebooks for performing molecular docking protocols interactively, as well as visualizing, converting file formats and analyzing the results.

See Jupyter Docks in action in my personal website: chem-workflows

These notebooks are Python 3 compatible. Each protocol and Jupyter notebook has its own test folder for testing and reproducibility evaluation.

For all notebooks, the demonstration includes the use of AutoDock Vina and Ledock. When available, some alternatives are mentioned in the protocol.

The notebooks includes whole protocols for:

1. Molecular Docking

For any new user, this is a good place to start. Jupyter Docks' main stages for molecular docking, as well as all functions, methods and codes are described here along with brief explanations, hints, and warnings.

2. Virtual Screening

Interested in docking multiple ligands into a single target site? This is what you require. This protocol covers all steps from ligand preparation to docking pose visualization in the target site of interest.

3. Blind Docking

Do you want to dock multiple ligands into whole target surface and/or its pockets? This protocol demonstrates the entire process of pocket search and their use as potential organic molecule binding sites. (Documentation in progress)

4. Reverse Docking / Target fishing)

Interested in docking one or a few molecules into a set of proteins to identify the most promising target(s)? This notebook covers all of the steps required to achieve such a goal in a condensed manner, making the process seem like a walk in the park. (Documentation in progress)

5. Scaffold-based Docking

Do you want to use a molecular substructure as an anchor point for your ligands? This procedure demonstrates an approximation for running molecular docking while constraining the position of a portion of the ligand. This is especially useful for investigating novel ligands with similar structure to known binders. (In construction)

6. Covalent Docking

Is your hypothesis that your ligand can bind to the target covalently? This protocol describes how to use freely available tools to investigate the covalent binding mode of ligands to protein targets. (In construction)

7. Docking Analysis

Have you completed your docking experiments with Jupyter Dock or another approach and want to conduct a rational analysis? You've come to the right place. This notebook summarizes the most common docking analysis techniques, including score comparisons, z-score calculation between softwares, pose clustering, molecular interactions mapping, and more. (In construction)

Question about usage or troubleshooting? Please leave a comment here

Requirements

Jupyter Dock is reliant on a variety of academic software. The Jupyter Dock.yaml file contains all the tools and dependencies, but the following are some of the most noticeable:

Installation

1. Installing all dependencies one by one:

1.1. Create a conda enviroment

conda create -n Jupyter_Dock python=3.8
conda activate Jupyter_Dock

1.2. Install de dependencies

  • PyMol
conda install -c schrodinger pymol
  • py3Dmol
conda install -c conda-forge py3dmol
  • AutoDock Vina
pip install vina
  • OpenBabel (Pybel)
conda install -c conda-forge openbabel
  • Meeko
pip install meeko
  • PDBFixer
conda install -c conda-forge pdbfixer
  • ProLif, RDKit and MDAnalysis

To achieve a successful installation, the current development of ProLif necessitates a number of dependencies and steps. The quickest way to get a fully functional ProLif is to follow the steps below:

conda install rdkit cython

Make sure your system has a working GCC before beginning the ProLif installation (needed to compile MDAnalysis).

pip install git+https://github.com/chemosim-lab/ProLIF.git 
  • Smina, Fpocket,LeDock, LePro and AutoDock Tools executables are provided in the bin folder of this repo.

It is highly likely that the AutoDock Tools binaries will need to be compiled on your machine before they can be used. In this case, you must download them from https://ccsb.scripps.edu/adfr/downloads/ and then follow the installation instructions.

To address this limitation, the notebooks include the use of Smina binary as an alternative to AutoDock Vina, which offers several advantages for protein and ligand preration and formats, among other things.

2. Available as GitHub repo:

2.1. Clone the repository and create the Jupyter_Dock environment from the Jupyter_Dock.yaml file.

$git clone https://github.com/AngelRuizMoreno/Jupyter_Dock.git
$cd Jupyter_Dock
$conda env create -f Jupyter_Dock.yml

After installing the prerequisites, you can activate the conda environment and run/modify the Jupyter Notebooks.

3. GoogleColab:

Not yet available.

Limitations

Jupyter Dock's initial goal was to provide a set of pythonic protocols for molecular docking. Nonetheless, there is a dearth of docking tools in Python for all of the steps and protocols (i.e. pocket search for blind docking). Furthermore, the majority of well-known and widely used molecular docking softwares have been developed as stand-alone executables or as components of software suites. As a result, Jupyter Dock evolved into a notebook, attempting to organize and compile the tools required for the rational implementation of molecular docking.

The following are the main drawbacks of this approach:

  • The AutoDock Tools binary files "prepare_rotein" and "prepare_lgand are still missing for MacOs.

  • There is no guarantee that these jupyter notebooks will run on Windows. The alternative for these users would be to run Jupyter Dock through the Windows Subsystem for Linux (WSL)

    Actually, I built Jupyter Dock in a Xiomi Mi Laptop Air using the WSL.

  • Ubuntu 18.4 (x86 64) was used to compile the binary files for fpocket, prepare protein, and prepare ligand. As a result, they can function differently in other operating systems and architectures.

Examples

Docking powered by AutoDock Tools and LeDock

3D visualization of Docking results powered by py3Dmol

2D interaction maps powered by ProLif

Pocket search powered by Fpocket

Citation

If you use these notebooks, please credit this repository and the required tools as follows:

  1. Jupyter Dock

    Ruiz-Moreno A.J. Jupyter Dock: Molecular Docking integrated in Jupyter Notebooks. https://doi.org/10.5281/zenodo.5514956

  2. Autodock Vina

    Eberhardt, J., Santos-Martins, D., Tillack, A.F., Forli, S. (2021). AutoDock Vina 1.2.0: New Docking Methods, Expanded Force Field, and Python Bindings. Journal of Chemical Information and Modeling.

    Trott, O., & Olson, A. J. (2010). AutoDock Vina: improving the speed and accuracy of docking with a new scoring function, efficient optimization, and multithreading. Journal of computational chemistry, 31(2), 455-461.

  3. LeDock

    Wang Z, Sun H, Yao X, Li D, Xu L, Li Y, et al. Comprehensive evaluation of ten docking programs on a diverse set of protein–ligand complexes: the prediction accuracy of sampling power and scoring power. Phys Chem Chem Phys. 2016;18: 12964–12975. https://doi.org/10.1039/C6CP01555G.

  4. AutoDock Tools

    Morris, G. M., Huey, R., Lindstrom, W., Sanner, M. F., Belew, R. K., Goodsell, D. S., & Olson, A. J. (2009). AutoDock4 and AutoDockTools4: Automated docking with selective receptor flexibility. Journal of computational chemistry, 30(16), 2785–2791. https://doi.org/10.1002/jcc.21256.

  5. Pymol API

    The PyMOL Molecular Graphics System, Version 1.2r3pre, Schrödinger, LLC.

  6. OpenBabel

    O'Boyle, N.M., Banck, M., James, C.A. et al. Open Babel: An open chemical toolbox. J Cheminform 3, 33 (2011). https://doi.org/10.1186/1758-2946-3-33.

  7. RDKit

    RDKit: Open-source cheminformatics; http://www.rdkit.org

  8. py3Dmol

    Keshavan Seshadri, Peng Liu, and David Ryan Koes. Journal of Chemical Education 2020 97 (10), 3872-3876. https://doi.org/10.1021/acs.jchemed.0c00579.

  9. PDBFixer

    P. Eastman, M. S. Friedrichs, J. D. Chodera, R. J. Radmer, C. M. Bruns, J. P. Ku, K. A. Beauchamp, T. J. Lane, L.-P. Wang, D. Shukla, T. Tye, M. Houston, T. Stich, C. Klein, M. R. Shirts, and V. S. Pande. 2013. OpenMM 4: A Reusable, Extensible, Hardware Independent Library for High Performance Molecular Simulation. Journal of Chemical Theory and Computation. ACS Publications. 9(1): 461-469.

  10. MDAnalysis

    R. J. Gowers, M. Linke, J. Barnoud, T. J. E. Reddy, M. N. Melo, S. L. Seyler, D. L. Dotson, J. Domanski, S. Buchoux, I. M. Kenney, and O. Beckstein. MDAnalysis: A Python package for the rapid analysis of molecular dynamics simulations. In S. Benthall and S. Rostrup, editors, Proceedings of the 15th Python in Science Conference, pages 98-105, Austin, TX, 2016. SciPy, doi:10.25080/majora-629e541a-00e.

    N. Michaud-Agrawal, E. J. Denning, T. B. Woolf, and O. Beckstein. MDAnalysis: A Toolkit for the Analysis of Molecular Dynamics Simulations. J. Comput. Chem. 32 (2011), 2319-2327, doi:10.1002/jcc.21787. PMCID:PMC3144279.

  11. ProLif

    chemosim-lab/ProLIF: v0.3.3 - 2021-06-11.https://doi.org/10.5281/zenodo.4386984.

  12. Fpocket

    Le Guilloux, V., Schmidtke, P. & Tuffery, P. Fpocket: An open source platform for ligand pocket detection. BMC Bioinformatics 10, 168 (2009). https://doi.org/10.1186/1471-2105-10-168.

  13. Smina

    Koes, D. R., Baumgartner, M. P., & Camacho, C. J. (2013). Lessons learned in empirical scoring with smina from the CSAR 2011 benchmarking exercise. Journal of chemical information and modeling, 53(8), 1893–1904. https://doi.org/10.1021/ci300604z

License

These notebooks are under MIT, see the LICENSE file for details.

Comments
  • Notebook

    Notebook "5.-Docking_Analysis.ipynb" is empty

    Hi Angel,

    First, I'd like to thank you for the wonderful work of setting this up. I'm a newcomer to the field of molecular docking, and I'm currently supervising a student in a molecular docking project. It'll make both our lives much easier!

    The notebook for docking analysis is empty. Is it on purpose? Could you kindly provide a copy of a working notebook for docking analysis?

    Best,

    Marcos


    Marcos Verissimo Alves Departamento de Fisica - ICEx - Universidade Federal Fluminense Volta Redonda, RJ - Brazil

    opened by mverissi 3
  • Adding molecular dynamic simulation

    Adding molecular dynamic simulation

    Dear, Angel Ruiz Moreno

    Thank you for your nice tutorial notebook. It really helped me a lot

    If you are okay with it, can you add molecular dynamic simulation tutorial in this repository?

    It will help many researchers

    Thank you again.

    Sincerely,

    Ingoo Lee

    opened by dlsrnsi 2
  • Can't prepare-receptor and prepare-ligand

    Can't prepare-receptor and prepare-ligand

    When I run prepare-receptor in notebook 1 i got error: image

    So I open this file and see this path: ## Set some environment variables. ADS_ROOT="/mnt/d/Projects/Jupyter_Dock_devel/bin/ADFRsuite" export ADS_ROOT

    I don't know what is it mean. Can you help me to fix it?

    opened by anngdinh 1
  • cannot create Jupyter_Dock.yml environment

    cannot create Jupyter_Dock.yml environment

    Hello! and thank you for very nice work. I am facing issue in creating the environment from the Jupyter_Dock.yml file as here :

    ResolvePackageNotFound: 
      - pyqt5-sip==4.19.18=py37hcd2ae1e_7
      - python-utils==2.5.6=py37h06a4308_0
      - mpeg_encode==1=h14c3975_1
      - - argon2-cffi==20.1.0=py37h27cfd23_1
      - libopus==1.3.1=h7f98852_1
      - curl==7.78.0=h1ccaba5_0
      - xorg-libx11==1.6.9=h516909a_0
      - _openmp_mutex==4.5=1_llvm
      - pytables==3.6.1=py37h71ec239_0
      - icu==68.1=h58526e2_0
      - reportlab==3.5.68=py37h69800bb_0
      - cairo==1.16.0=h6cf1ce9_1008
      - glib-tools==2.68.4=h9c3ff4c_0
      - importlib-metadata==3.10.0=py37h06a4308_0
      - xorg-renderproto==0.11.1=h14c3975_1002
      - xorg-kbproto==1.0.7=h14c3975_1002
      - mysql-common==8.0.25=ha770c72_0
      - lz4-c==1.9.3=h295c915_1
      - cffi==1.14.6=py37hc58025e_0
      - _libgcc_mutex==0.1=conda_forge
      - ipython==7.26.0=py37hb070fc8_0
      - mistune==0.8.4=py37h14c3975_1001
      - pandocfilters==1.4.3=py37h06a4308_1
      - gsd==2.1.1=py37h03ebfcd_0
      - notebook==6.4.3=py37h06a4308_0
      - xz==5.2.5=h7b6447c_0
      - zeromq==4.3.4=h2531618_0
      - pixman==0.40.0=h36c2ea0_0
      - dbus==1.13.18=hb2f20db_0
      - libglu==9.0.0=hf484d3e_1
      - llvm-openmp==12.0.1=h4bd325d_1
      - jpeg==9d=h36c2ea0_0
      - expat==2.4.1=h2531618_2
      - numpy==1.19.1=py37hbc911f0_0
      - krb5==1.19.2=hac12032_0
      - libnetcdf==4.7.3=hb80b6cc_0
      - ncurses==6.2=he6710b0_1
      - lcms2==2.12=h3be6417_0
      - pytest==6.2.4=py37h06a4308_2
      - certifi==2021.5.30=py37h89c1867_0
      - scipy==1.5.0=py37h0b6359f_0
      - cftime==1.5.0=py37h6323ea4_0
      - libssh2==1.9.0=h1ba5d50_1
      - intel-openmp==2021.3.0=h06a4308_3350
      - nspr==4.30=h9c3ff4c_0
      - h5py==2.10.0=py37h7918eee_0
      - pyqt==5.12.3=py37h89c1867_7
      - pillow==8.3.1=py37h2c7a002_0
      - autodock-vina==1.1.2=h9ee0642_3
      - cython==0.29.24=py37h295c915_0
      - pip==21.0.1=py37h06a4308_0
      - lxml==4.6.3=py37h77fd288_0
      - xorg-libice==1.0.10=h516909a_0
      - tornado==6.1=py37h27cfd23_0
      - mengine==1=h14c3975_1
      - xorg-xproto==7.0.31=h27cfd23_1007
      - markupsafe==2.0.1=py37h27cfd23_0
      - xorg-xextproto==7.3.0=h14c3975_1002
      - libxkbcommon==1.0.3=he3ba5ed_0
      - numpy-base==1.19.1=py37hfa32c7d_0
      - libxcb==1.14=h7b6447c_0
      - sqlalchemy==1.4.23=py37h5e8e339_0
      - typed-ast==1.4.3=py37h7f8727e_1
      - libstdcxx-ng==11.1.0=h56837e0_8
      - mkl_fft==1.3.0=py37h54f3939_0
      - gettext==0.19.8.1=h0b5b191_1005
      - prody==1.10.8=py37h04863e7_0
      - zstd==1.4.9=haebb681_0
      - pysocks==1.7.1=py37_1
      - xorg-libxext==1.3.4=h516909a_0
      - psutil==5.8.0=py37h27cfd23_1
      - libogg==1.3.4=h7f98852_1
      - libcurl==7.78.0=h0b77cf5_0
      - gstreamer==1.18.5=h76c114f_0
      - pycairo==1.20.1=py37hfff247e_0
      - libllvm11==11.1.0=hf817b99_2
      - libsodium==1.0.18=h7b6447c_0
      - xorg-libsm==1.2.3=h84519dc_1000
      - libclang==11.1.0=default_ha53f305_1
      - mtz2ccp4_px==1.0=h9ac9557_3
      - brotlipy==0.7.0=py37h27cfd23_1003
      - cryptography==3.4.7=py37hd23ed53_0
      - libglib==2.68.4=h3e27bee_0
      - libuuid==2.32.1=h14c3975_1000
      - libev==4.33=h7b6447c_0
      - lzo==2.10=h7b6447c_2
      - pandas==1.0.3=py37h0da4684_1
      - greenlet==1.1.1=py37hcd2ae1e_0
      - numexpr==2.7.3=py37hb2eb853_0
      - libiconv==1.16=h516909a_0
      - libffi==3.3=h58526e2_2
      - hdf4==4.2.13=h3ca952b_2
      - pyrsistent==0.17.3=py37h7b6447c_0
      - nss==3.69=hb5efdd6_0
      - jedi==0.18.0=py37h06a4308_1
      - biopython==1.76=py37h516909a_0
      - libholoplaycore==0.1.0_rc4=1
      - libxml2==2.9.12=h72842e0_0
      - xorg-libxrender==0.9.10=h516909a_1002
      - blosc==1.21.0=h8c45485_0
      - pyqt-impl==5.12.3=py37he336c9b_7
      - libpng==1.6.37=hbc83047_0
      - openjpeg==2.4.0=h3ad879b_0
      - regex==2021.8.3=py37h7f8727e_0
      - libtiff==4.2.0=h85742a9_0
      - mysql-libs==8.0.25=h935591d_0
      - bzip2==1.0.8=h7b6447c_0
      - sqlite==3.36.0=hc218d9a_0
      - pyzmq==22.2.1=py37h295c915_1
      - readline==8.1=h27cfd23_0
      - libgcc-ng==11.1.0=hc902ee8_8
      - matplotlib-base==3.4.3=py37h1058ff1_0
      - statsmodels==0.12.2=py37h27cfd23_0
      - scikit-learn==0.24.2=py37ha9443f7_0
      - nbconvert==6.1.0=py37h06a4308_0
      - boost==1.74.0=py37h6dcda5c_3
      - jupyter_core==4.7.1=py37h06a4308_0
      - libxslt==1.1.33=h15afd5d_2
      - sip==4.19.8=py37hf484d3e_0
      - zlib==1.2.11=h7b6447c_3
      - freetype==2.10.4=h5ab3b9f_0
      - c-ares==1.17.1=h27cfd23_0
      - matplotlib==3.4.3=py37h89c1867_0
      - tk==8.6.10=hbc83047_0
      - libwebp-base==1.2.0=h27cfd23_0
      - mdtraj==1.9.3=py37h1c801a5_1
      - libedit==3.1.20210714=h7f8727e_0
      - rdkit==2021.03.5=py37h13c2175_0
      - pymol==2.4.0=py37h913975d_0
      - msgpack-python==1.0.2=py37hff7bd54_1
      - alsa-lib==1.2.3=h516909a_0
      - gst-plugins-base==1.18.5=hf529b03_0
      - hdf5==1.10.4=hb1b8bf9_0
      - apbs==1.5=h14c3975_3
      - ld_impl_linux-64==2.35.1=h7274673_9
      - boost-cpp==1.74.0=hc6e9bd1_3
      - libgfortran4==7.5.0=ha8ba4b0_17
      - openbabel==3.1.1=py37h6aa62a1_1
      - pcre==8.45=h295c915_0
      - et_xmlfile==1.1.0=py37h06a4308_0
      - glib==2.68.4=h9c3ff4c_0
      - pluggy==0.13.1=py37h06a4308_0
      - fontconfig==2.13.1=hba837de_1005
      - mkl==2020.2=256
      - libvorbis==1.3.7=h9c3ff4c_0
      - libpq==13.3=hd57d9b9_0
      - pyqtchart==5.12=py37he336c9b_7
      - pyqtwebengine==5.12.1=py37he336c9b_7
      - setuptools==52.0.0=py37h06a4308_0
      - libopenblas==0.3.13=h4367d64_0
      - kiwisolver==1.3.1=py37h2531618_0
      - libnghttp2==1.41.0=hf8bcb03_2
      - netcdf4==1.5.3=py37hbf33ddf_0
      - ca-certificates==2021.5.30=ha878542_0
      - terminado==0.9.4=py37h06a4308_0
      - libevent==2.1.10=hcdb4288_3
      - libgfortran-ng==7.5.0=ha8ba4b0_17
      - python==3.7.10=hffdb5ce_100_cpython
      - mkl-service==2.3.0=py37he8ac12f_0
      - mkl_random==1.1.1=py37h0573a6f_0
      - qt==5.12.9=hda022c4_4
      - openssl==1.1.1l=h7f98852_0
    

    and the rest of all the libraries needed. am using macOS Big sur 11.5.2

    Is there anyway to workaround this? thanks

    opened by MubasherMohammed 1
  • Updated the version of mdanalysis

    Updated the version of mdanalysis

    Pip subprocess error: Could not find a version that satisfies the requirement mdanalysis==2.0.0.dev0 (from versions: 0.7.6, 0.8.0rc2, 0.8.0rc4, 0.8.0, 0.8.1rc1, 0.8.1, 0.9.0.dev0, 0.9.0, 0.9.1, 0.9.2, 0.10.0, 0.11.0, 0.12.1, 0.13.0, 0.14.0, 0.15.0, 0.16.0, 0.16.1, 0.16.2, 0.17.0, 0.18.0, 0.19.0, 0.19.1, 0.19.2, 0.20.0, 0.20.1, 1.0.0, 1.0.1, 1.1.0, 1.1.1, 2.0.0b0, 2.0.0, 2.1.0)

    Replaced "mdanalysis==2.0.0.dev0" with "mdanalysis==2.0.0".

    opened by Hokiee 0
  • missing file for the example of Covalent_Docking

    missing file for the example of Covalent_Docking

    I try to run the script of 6.- Covalent_Docking.ipynb, but I got the following error: image

    the file S_atom.sdf doesn't exist in the dir of test/Covalent_Docking/

    Thx!

    opened by shenwanxiang 0
  • Prolif Issues

    Prolif Issues

    Dear AngelRuizMoreno, Excited to see docking in jupyter notebook. Thanks for the wonderful tutorial notebooks. Had issues when running prolif error as follows: module 'prolif' has no attribute 'Molecule'

    unable to resolve this If possible can you help it out

    regards Aparna

    opened by vemaparna 0
Releases(v0.2.5)
  • v0.2.5(Sep 18, 2021)

    Molecular Docking integrated in Jupyter Notebooks

    Extended documentation added. Implementation of most of the protocols

    Minor bugs identified

    Some improvements identified

    Source code(tar.gz)
    Source code(zip)
Owner
Angel J. Ruiz Moreno
Angel J. Ruiz Moreno
Residual Pathway Priors for Soft Equivariance Constraints

Residual Pathway Priors for Soft Equivariance Constraints This repo contains the implementation and the experiments for the paper Residual Pathway Pri

Marc Finzi 13 Oct 12, 2022
🐦 Opytimizer is a Python library consisting of meta-heuristic optimization techniques.

Opytimizer: A Nature-Inspired Python Optimizer Welcome to Opytimizer. Did you ever reach a bottleneck in your computational experiments? Are you tired

Gustavo Rosa 546 Dec 31, 2022
Few-shot NLP benchmark for unified, rigorous eval

FLEX FLEX is a benchmark and framework for unified, rigorous few-shot NLP evaluation. FLEX enables: First-class NLP support Support for meta-training

AI2 85 Dec 03, 2022
DilatedNet in Keras for image segmentation

Keras implementation of DilatedNet for semantic segmentation A native Keras implementation of semantic segmentation according to Multi-Scale Context A

303 Mar 15, 2022
Generative code template for PixelBeasts 10k NFT project.

generator-template Generative code template for combining transparent png attributes into 10,000 unique images. Used for the PixelBeasts 10k NFT proje

Yohei Nakajima 9 Aug 24, 2022
ICCV2021 Paper: AutoShape: Real-Time Shape-Aware Monocular 3D Object Detection

ICCV2021 Paper: AutoShape: Real-Time Shape-Aware Monocular 3D Object Detection

Zongdai 107 Dec 20, 2022
Pytorch port of Google Research's LEAF Audio paper

leaf-audio-pytorch Pytorch port of Google Research's LEAF Audio paper published at ICLR 2021. This port is not completely finished, but the Leaf() fro

Dennis Fedorishin 80 Oct 31, 2022
Official repository for Few-shot Image Generation via Cross-domain Correspondence (CVPR '21)

Few-shot Image Generation via Cross-domain Correspondence Utkarsh Ojha, Yijun Li, Jingwan Lu, Alexei A. Efros, Yong Jae Lee, Eli Shechtman, Richard Zh

Utkarsh Ojha 251 Dec 11, 2022
AugLiChem - The augmentation library for chemical systems.

AugLiChem Welcome to AugLiChem! The augmentation library for chemical systems. This package supports augmentation for both crystaline and molecular sy

BaratiLab 17 Jan 08, 2023
Code for "AutoMTL: A Programming Framework for Automated Multi-Task Learning"

AutoMTL: A Programming Framework for Automated Multi-Task Learning This is the website for our paper "AutoMTL: A Programming Framework for Automated M

Ivy Zhang 40 Dec 04, 2022
Code for HodgeNet: Learning Spectral Geometry on Triangle Meshes, in SIGGRAPH 2021.

HodgeNet | Webpage | Paper | Video HodgeNet: Learning Spectral Geometry on Triangle Meshes Dmitriy Smirnov, Justin Solomon SIGGRAPH 2021 Set-up To ins

Dima Smirnov 61 Nov 27, 2022
Encode and decode text application

Text Encoder and Decoder Encode and decode text in many ways using this application! Encode in: ASCII85 Base85 Base64 Base32 Base16 Url MD5 Hash SHA-1

Alice 1 Feb 12, 2022
PyTorch implementation for 3D human pose estimation

Towards 3D Human Pose Estimation in the Wild: a Weakly-supervised Approach This repository is the PyTorch implementation for the network presented in:

Xingyi Zhou 579 Dec 22, 2022
BASH - Biomechanical Animated Skinned Human

We developed a method animating a statistical 3D human model for biomechanical analysis to increase accessibility for non-experts, like patients, athletes, or designers.

Machine Learning and Data Analytics Lab FAU 66 Nov 19, 2022
Fast image augmentation library and an easy-to-use wrapper around other libraries

Albumentations Albumentations is a Python library for image augmentation. Image augmentation is used in deep learning and computer vision tasks to inc

11.4k Jan 09, 2023
Code for the paper Task Agnostic Morphology Evolution.

Task-Agnostic Morphology Optimization This repository contains code for the paper Task-Agnostic Morphology Evolution by Donald (Joey) Hejna, Pieter Ab

Joey Hejna 18 Aug 04, 2022
Implementation of Bottleneck Transformer in Pytorch

Bottleneck Transformer - Pytorch Implementation of Bottleneck Transformer, SotA visual recognition model with convolution + attention that outperforms

Phil Wang 621 Jan 06, 2023
CFNet: Cascade and Fused Cost Volume for Robust Stereo Matching(CVPR2021)

CFNet(CVPR 2021) This is the implementation of the paper CFNet: Cascade and Fused Cost Volume for Robust Stereo Matching, CVPR 2021, Zhelun Shen, Yuch

106 Dec 28, 2022
TVNet: Temporal Voting Network for Action Localization

TVNet: Temporal Voting Network for Action Localization This repo holds the codes of paper: "TVNet: Temporal Voting Network for Action Localization". P

hywang 5 Jul 26, 2022
Source code for The Power of Many: A Physarum Swarm Steiner Tree Algorithm

Physarum-Swarm-Steiner-Algo Source code for The Power of Many: A Physarum Steiner Tree Algorithm Code implements ideas from the following papers: Sher

Sheryl Hsu 2 Mar 28, 2022