Avatarify Python - Avatars for Zoom, Skype and other video-conferencing apps.

Overview

Avatarify Python

Photorealistic avatars for video-conferencing.

Avatarify Python requires manually downloading and installing some dependencies, and is therefore best suited for users who have some experience with command line applications. Avatarify Desktop, which aims to be easier to install and use, is recommended for most users. If you still want to use Avatarify Python, proceed to the install instructions.

Based on First Order Motion Model.

Avatarify Python is not affiliated with Avatarify Inc.

News

  • 7 Mar 2021. Renamed project to Avatarify Python to distinguish it from other versions of Avatarify
  • 14 December 2020. Released Avatarify Desktop. Check it out here.
  • 11 July 2020. Added Docker support. Now you can run Avatarify from Docker on Linux. Thanks to mikaelhg and mintmaker for contribution!
  • 22 May 2020. Added Google Colab mode. Now you can run Avatarify on any computer without GPU!
  • 7 May 2020. Added remote GPU support for all platforms (based on mynameisfiber's solution). Demo. Deployment instructions.
  • 24 April 2020. Added Windows installation tutorial.
  • 17 April 2020. Created Slack community. Please join via invitation link.
  • 15 April 2020. Added StyleGAN-generated avatars. Just press Q and now you drive a person that never existed. Every time you push the button – new avatar is sampled.
  • 13 April 2020. Added Windows support (kudos to 9of9).
Comments
  • Dockerize the

    Dockerize the "Remote GPU" service

    This PR needs some testing before merging, so I'm creating it as a draft.

    Based on my previous contribution to AliaksandrSiarohin/first-order-model#55.

    Building

    docker build -t avatarify .
    

    Running

    docker run -it --rm --gpus=all -p 5557:5557 -p 5558:5558 avatarify
    
    opened by mikaelhg 47
  • Broken pipe

    Broken pipe

    ffmpeg version 4.1.4-1build2 Copyright (c) 2000-2019 the FFmpeg developers
      built with gcc 9 (Ubuntu 9.2.1-4ubuntu1)
      configuration: --prefix=/usr --extra-version=1build2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
      libavutil      56. 22.100 / 56. 22.100
      libavcodec     58. 35.100 / 58. 35.100
      libavformat    58. 20.100 / 58. 20.100
      libavdevice    58.  5.100 / 58.  5.100
      libavfilter     7. 40.101 /  7. 40.101
      libavresample   4.  0.  0 /  4.  0.  0
      libswscale      5.  3.100 /  5.  3.100
      libswresample   3.  3.100 /  3.  3.100
      libpostproc    55.  3.100 / 55.  3.100
    0: ./avatars/mona.jpg
    cam_fomm.py:26: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
      config = yaml.load(f)
    [mjpeg @ 0x561a4d0f8a00] Format mjpeg detected only with low score of 25, misdetection possible!
    Input #0, mjpeg, from 'pipe:0':                                                                                                                           
      Duration: N/A, bitrate: N/A
        Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 640x480 [SAR 1:1 DAR 4:3], 25 tbr, 1200k tbn, 25 tbc
    Stream mapping:
      Stream #0:0 -> #0:0 (mjpeg (native) -> rawvideo (native))
    [swscaler @ 0x561a4d153040] deprecated pixel format used, make sure you did set range correctly
    [video4linux2,v4l2 @ 0x561a4d0fe680] ioctl(VIDIOC_G_FMT): Invalid argument                                                                                
    Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument                                                                
    Error initializing output stream 0:0 --                                                                                                                   
    Conversion failed!                                                                                                                                        
    Traceback (most recent call last):
      File "cam_fomm.py", line 173, in <module>
        sys.stdout.buffer.write(buf)
    BrokenPipeError: [Errno 32] Broken pipe
    Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>
    BrokenPipeError: [Errno 32] Broken pipe
    
    opened by zuenko 42
  • Error when run

    Error when run "bash run.sh"

    Hi,

    I pull the last commit, executed again the install.sh and tryed run:

    bash run.sh

    But this error occours:

    (avatarify) [email protected]:~/Repository/others/avatarify$ bash run.sh 0: ./avatars/einstein.jpg 1: ./avatars/eminem.jpg 2: ./avatars/jobs.jpg 3: ./avatars/mona.jpg 4: ./avatars/obama.jpg 5: ./avatars/potter.jpg 6: ./avatars/ronaldo.png 7: ./avatars/schwarzenegger.png load checkpoints.. cam_fomm.py:34: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details. config = yaml.load(f) Traceback (most recent call last): File "cam_fomm.py", line 231, in stream = pyfakewebcam.FakeWebcam(f'/dev/video{opt.virt_cam}', frame.shape[1], frame.shape[0]) File "/home/eltonnunes/.conda/envs/avatarify/lib/python3.8/site-packages/pyfakewebcam/pyfakewebcam.py", line 54, in init fcntl.ioctl(self._video_device, _v4l2.VIDIOC_S_FMT, self._settings) OSError: [Errno 22] Invalid argument

    Anyone can help ?

    My OS: Linux Mint 19.3 Cinnamon

    opened by eltonnuness 27
  • When run_windows.bat is finished, the two windows do not pop up. (avatarify does not launch)

    When run_windows.bat is finished, the two windows do not pop up. (avatarify does not launch)

    Describe the bug

    To Reproduce

    Info (please complete the following information):

    • OS (e.g., Linux):
    • GPU model:
    • Any other relevant information:

    Screenshots

    Logs

    duplicate 
    opened by board808 19
  • Getting multiple cam windows opened while running run.sh

    Getting multiple cam windows opened while running run.sh

    I am on latest Ubuntu I have installed correctly and updated everything but when I run bash run.sh then it didn't. Run so I run with sudo bash run.sh but so it sometime shows me avatar list to select and sometimes it open webcam and when I press X and configure my face than multiple cam windows start opening and I can't understand what's the issue and how to fix it please help me out

    opened by shwetkanwal24 19
  • Error with run_windows.bat

    Error with run_windows.bat

    RuntimeError: CUDA error: no kernel image is available for execution on the device

    I have a Windows 10 machine with Nvidia GTX Titan card. Nvidia says it supports CUDA 3.5 which I think is the minimum required?

    Also I read in the notes that it should fall to the CPU if the GPU isn't supported? How would I configure that if the card is the problem?

    opened by virtualmonster 17
  • No module named 'sync_batchnorm'

    No module named 'sync_batchnorm'

    Windows 10 system.

    Traceback (most recent call last): File "cam_fomm.py", line 13, in from sync_batchnorm import DataParallelWithCallback ModuleNotFoundError: No module named 'sync_batchnorm'

    opened by newtonke 17
  • Add overlay drawing of landmarks

    Add overlay drawing of landmarks

    Seeing the landmarks of both the current frame and the avatar can make it easier to get a good pose. I also thought it was interesting to expose a little of the underlying techniques

    opened by JohanAR 16
  • How to find the IP address of Google Colab Notebook

    How to find the IP address of Google Colab Notebook

    Hi, I want to run avatarify on macOS, but I need to use google colab... How do I find the IP address of the notebook so I can connect to the server? I tried to put the !curl ipecho.net/plain command in the notebook and I received an IP, but when I use this IP, the terminal is stuck on Receiving from.

    This is the google colab command:

    google_colab_command

    and this is what I see in the terminal: terminal

    opened by tvtr04 16
  • DLL load failed: The specified module could not be found.

    DLL load failed: The specified module could not be found.

    Error when running run_windows.bat

    File "cam_fomm.py", line 11, in import cv2 ImportError: DLL load failed: The specified module could not be found.

    Tried to install different opencv libraries to no avail. Any ideas how to solve this?

    more info needed 
    opened by kratadata 16
  • ModuleNotFoundError: No module named 'yaml'

    ModuleNotFoundError: No module named 'yaml'

    (base) E:\avatarify>run_windows.bat --is-client --in-addr tcp://2.tcp.eu.ngrok.io:10176 --out-addr tcp://0.tcp.eu.ngrok.io:12257 Traceback (most recent call last): File "afy/cam_fomm.py", line 4, in import yaml ModuleNotFoundError: No module named 'yaml'

    opened by fazelukario 15
  • Corrupt vox-adv-cpk.pth.tar

    Corrupt vox-adv-cpk.pth.tar

    Describe the bug

    initially the tar file has a 3 textbook icon but whenever I download it now it shows a regular file icon and that is the problem. Even if you move it into the right directory it’s still gonna show file not found

    Info (please complete the following information):

    • OS (windows 10 home):
    • GPU model: GeForce 1660 ti,windows 10 home, 6gb graphics
    • Any other relevant information:

    Screenshots

    Logs

    opened by Denvercraig 3
  • TROUBLE RUNNING AVATARIFY ON COLAB SERVER FOR MAC

    TROUBLE RUNNING AVATARIFY ON COLAB SERVER FOR MAC

    Hello guys, I really need a bit of help running Avatarify on the Google Colab server since I use a Mac. I already have Miniconda and unpacked the repositories in the Avatarify Folder. I was following the steps for running on google collab, everything was going just about right until the "start the worker" section of the code. Can anyone advise on what to do. I have a screenshot of th result attached to thisScreen Shot 2022-12-29 at 11 04 52 AM

    cloud gpu 
    opened by oveentheproduza 0
  • Avatar folder missing after forced shutdown

    Avatar folder missing after forced shutdown

    Laptop shutdown due to overheating, now I open avatarify.... it’s working fine but I can’t find the avatar folder to add new model or remove existing ones. I’ve search every where but nothing. Pls help.

    opened by Twabor 1
  • Python avatarify

    Python avatarify

    I have a problem, after I give the git clone command and equip it using the cd avatarify python command, I try to compile with the other command and this error returns me "avatarify python failed solving environment",what i do?

    opened by Bitchlinux 0
  • Error any time I try to run windows.bat

    Error any time I try to run windows.bat

    option --use-feature: invalid choice: '2020-resolver' (choose from "fast-deps', 'truststor che')

    I tried installing from scratch as I always does that work fine but now when I try ruining the scripts.windows.bat it gives me this at the end process

    opened by mandontsmile 11
Releases(v0.2.0)
Owner
Ali Aliev
Computer graphics
Ali Aliev
One-line your code easily but still with the fun of doing so!

One-liner-iser One-line your code easily but still with the fun of doing so! Have YOU ever wanted to write one-line Python code, but don't have the sa

5 May 04, 2022
Benchmark spaces - Benchmarks of how well different two dimensional spaces work for clustering algorithms

benchmark_spaces Benchmarks of how well different two dimensional spaces work fo

Bram Cohen 6 May 07, 2022
Pytorch implementation of FlowNet 2.0: Evolution of Optical Flow Estimation with Deep Networks

flownet2-pytorch Pytorch implementation of FlowNet 2.0: Evolution of Optical Flow Estimation with Deep Networks. Multiple GPU training is supported, a

NVIDIA Corporation 2.8k Dec 27, 2022
Sequence-to-Sequence learning using PyTorch

Seq2Seq in PyTorch This is a complete suite for training sequence-to-sequence models in PyTorch. It consists of several models and code to both train

Elad Hoffer 514 Nov 17, 2022
Code for the paper "Relation of the Relations: A New Formalization of the Relation Extraction Problem"

This repo contains the code for the EMNLP 2020 paper "Relation of the Relations: A New Paradigm of the Relation Extraction Problem" (Jin et al., 2020)

YYY 27 Oct 26, 2022
ManiSkill-Learn is a framework for training agents on SAPIEN Open-Source Manipulation Skill Challenge (ManiSkill Challenge), a large-scale learning-from-demonstrations benchmark for object manipulation.

ManiSkill-Learn ManiSkill-Learn is a framework for training agents on SAPIEN Open-Source Manipulation Skill Challenge, a large-scale learning-from-dem

Hao Su's Lab, UCSD 48 Dec 30, 2022
Self-driving car env with PPO algorithm from stable baseline3

Self-driving car with RL stable baseline3 Most of the project develop from https://github.com/GerardMaggiolino/Gym-Medium-Post Please check it out! Th

Sornsiri.P 7 Dec 22, 2022
Deep GPs built on top of TensorFlow/Keras and GPflow

GPflux Documentation | Tutorials | API reference | Slack What does GPflux do? GPflux is a toolbox dedicated to Deep Gaussian processes (DGP), the hier

Secondmind Labs 107 Nov 02, 2022
Transformer Tracking (CVPR2021)

TransT - Transformer Tracking [CVPR2021] Official implementation of the TransT (CVPR2021) , including training code and trained models. We are revisin

chenxin 465 Jan 06, 2023
A TensorFlow 2.x implementation of Masked Autoencoders Are Scalable Vision Learners

Masked Autoencoders Are Scalable Vision Learners A TensorFlow implementation of Masked Autoencoders Are Scalable Vision Learners [1]. Our implementati

Aritra Roy Gosthipaty 59 Dec 10, 2022
Enhancing Knowledge Tracing via Adversarial Training

Enhancing Knowledge Tracing via Adversarial Training This repository contains source code for the paper "Enhancing Knowledge Tracing via Adversarial T

Xiaopeng Guo 14 Oct 24, 2022
[ICCV 2021] Counterfactual Attention Learning for Fine-Grained Visual Categorization and Re-identification

Counterfactual Attention Learning Created by Yongming Rao*, Guangyi Chen*, Jiwen Lu, Jie Zhou This repository contains PyTorch implementation for ICCV

Yongming Rao 90 Dec 31, 2022
Portfolio Optimization and Quantitative Strategic Asset Allocation in Python

Riskfolio-Lib Quantitative Strategic Asset Allocation, Easy for Everyone. Description Riskfolio-Lib is a library for making quantitative strategic ass

Riskfolio 1.7k Jan 07, 2023
Automated Melanoma Recognition in Dermoscopy Images via Very Deep Residual Networks

Introduction This repository contains the modified caffe library and network architectures for our paper "Automated Melanoma Recognition in Dermoscopy

Lequan Yu 47 Nov 24, 2022
Artstation-Artistic-face-HQ Dataset (AAHQ)

Artstation-Artistic-face-HQ Dataset (AAHQ) Artstation-Artistic-face-HQ (AAHQ) is a high-quality image dataset of artistic-face images. It is proposed

onion 105 Dec 16, 2022
Matlab Python Heuristic Battery Opt - SMOP conversion and manual conversion

SMOP is Small Matlab and Octave to Python compiler. SMOP translates matlab to py

Tom Xu 1 Jan 12, 2022
A real-time speech emotion recognition application using Scikit-learn and gradio

Speech-Emotion-Recognition-App A real-time speech emotion recognition application using Scikit-learn and gradio. Requirements librosa==0.6.3 numpy sou

Son Tran 6 Oct 04, 2022
Python package to add text to images, textures and different backgrounds

nider Python package for text images generation and watermarking Free software: MIT license Documentation: https://nider.readthedocs.io. nider is an a

Vladyslav Ovchynnykov 131 Dec 30, 2022
GPOEO is a micro-intrusive GPU online energy optimization framework for iterative applications

GPOEO GPOEO is a micro-intrusive GPU online energy optimization framework for iterative applications. We also implement ODPP [1] as a comparison. [1]

瑞雪轻飏 8 Sep 10, 2022
Facilitating Database Tuning with Hyper-ParameterOptimization: A Comprehensive Experimental Evaluation

A Comprehensive Experimental Evaluation for Database Configuration Tuning This is the source code to the paper "Facilitating Database Tuning with Hype

DAIR Lab 9 Oct 29, 2022