addon for blender to import mocap data from tools like easymocap, frankmocap and Vibe

Overview

b3d_mocap_import

addon for blender to import mocap data from tools like easymocap, frankmocap and Vibe

==================VIBE==================

To use VIBE you have to install it using

https://github.com/mkocabas/VIBE

if you are on windows, you can follow this repo

https://github.com/carlosedubarreto/vibe_win_install

explained in this tutorial

========================================

===============FRANKMOCAP===============

To use frankmocap you have to install it using

https://github.com/facebookresearch/frankmocap

if you are on windows, you can follow this repo

https://github.com/carlosedubarreto/frankmocap_win_install

explained in this tutorial

========================================


Version Beta 0.6 Tools for making the mocap data be centered and in the right orientation

Version Beta 0.51 Fix a problem using on other than Windows environment, thanks to k30n1 on GitHub

Version Beta 0.5

  • Better skeleton. Now you can do retargetting for:

    -- Vibe

    -- Frankmocap

    -- MediaPipe

  • Multiplier to fine tune the bones proportions

PS.: On my tests, the better mutliplier is between 0.7 and 1.2

Version Beta 0.4 Now we have MediaPipe inside of blender, you can make a pose estimation choosing a video file. PS.: You must first click on the install MediaPipe Button

Version Beta 0.3 Fix for non englsh languages.

Easymocap has some issues, but work most of the time,

Version Beta 0.2 Import of Frankmocap and VIBE

PS.: To use VIBE you must install a python package inside Blender.

To do that, you have to get your blender path and replace in the following command line (and execute in Windows CMD) if you have further problems, contact me on twitter(https://twitter.com/carlosedubarret)

The Commandline:

D:\Blender\blender-2.92.0-windows64\2.92\python\bin\python.exe D:\Blender\blender-2.92.0-windows64\2.92\python\lib\site-packages\pip install joblib

Version Beta 0.1 This version imports data from Easymocap only. (https://github.com/zju3dv/EasyMocap)

For contact you can reach me at:

https://twitter.com/carlosedubarret

If you find bugs, please report them here:

https://github.com/carlosedubarreto/b3d_mocap_import/issues

Comments
  • Frankmocap and VIBE

    Frankmocap and VIBE

    Hello Carlos,

    Thanks for the detailed info on each method! I ran Frankmocap but have no way to convert the output file(s) to fbx or bvh. Is that part completed? Seeing the VIBE method DID have fbx import to blender i ran this also but found that the hands did not capture. Did you find that or did i do something wrong on the VIBE installation? Hands captured fine on FRANK but not on VIBE

    opened by zeegan 43
  • Armature not recognized in blender, maybe I failed the installation.

    Armature not recognized in blender, maybe I failed the installation.

    Hello Carlos, thanks again for your patience, this is what happens when I import the data: 1 There's a strange piece of armature and some little points moving. What the hell? xD How can I fix this?

    Thank, thank you.

    bug 
    opened by Kyoin 19
  • Error when import pkl file in blender

    Error when import pkl file in blender

    so iam using blender 2.93 and addon 0.7222 when iam using sk import Frankmocap image then hit import image and i got this error image

    the cmd line code i use for frankmocap is : "python -m demo.demo_bodymocap --input_path 1.mp4 --out_dir ./mocap_output --save_pred_pkl" the pkl file can be find in the zip 1.zip

    opened by eragondr 15
  • Error when trying generating .pkl files from EasyMocap

    Error when trying generating .pkl files from EasyMocap

    Dear Carlos,

    I've tried to follow your guidelines on how to properly render out .pkl-files from EasyMocap, therefor i was replacing the 2 files like you've mentioned. After running a batch-file i got this error:

    Traceback (most recent call last): File "apps/demo/mv1p.py", line 113, in mv1pmf_smpl(dataset, args) File "apps/demo/mv1p.py", line 72, in mv1pmf_smpl weight_shape=weight_shape, weight_pose=weight_pose) File "/media/frankfurt/Walhalla/Ubuntu/dev/EasyMocap/easymocap/pipeline/basic.py", line 58, in smpl_from_keypoints3d2d params_init = body_model.init_params(nFrames=1) File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 576, in getattr type(self).name, name)) AttributeError: 'SMPLlayer' object has no attribute 'init_params'

    For rendering i'm using the following command: (which is quite likely wrong but maybe you can help me how to set the parameters correct) ... one more note: I'm running the out-of-the box-easymocap example and i'm aiming for body and hands as outputs (you already told me that you've implemented body and hands within your great Blender-addon)

    EasyMocap-run-command: python3 apps/demo/mv1p.py ${data} --out ${out}/smplx --vis_det --vis_repro --undis --sub_vis 1 7 13 19 --body bodyhandface --model smplx --gender male --vis_smpl

    Thank you so much!

    Edit: also tried this one with the same error: python3 apps/demo/mv1p.py ${data} --out ${out}/b3d --vis_det --vis_repro --undis --sub_vis 1 7 13 19 --body bodyhand --model smplh --gender male --vis_smpl

    opened by FrankSpalteholz 11
  • ModuleNotFoundError: cv2 when generating mocap in Blender 2.91

    ModuleNotFoundError: cv2 when generating mocap in Blender 2.91

    cv2 and mediapipe aren't installed in Blender (checked through blender python console), despite mediapipe appearing in pip list -u in console.

    Environment: Windows 10

    Error message follows

    location: :-1 Python: Traceback (most recent call last): File "C:**\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\Mocap_PE_data_import\load_mocap.py", line 1404, in execute import cv2 ModuleNotFoundError: No module named 'cv2'

    opened by Eydec 9
  • Need some help on getting Frankmocap Data onto Auto-Rig Pro default biped rig

    Need some help on getting Frankmocap Data onto Auto-Rig Pro default biped rig

    Dear Carlos,

    first of all i'd like to thank you for implementing a pipe between Blender and Frankmocap! But because i'm way more familiar with Maya and a fresh noob to Blender i'd like to ask for some guidance on how to get this to work. So here is my progress so far:

    1. Running Frankmocap on Linux and Windows -> exporting anim as .mkl sequence (Done)
    2. Using Blender 2.90.1 (installed Auto-Rig Pro) and also your Add-on (Done)
    3. Creating a default human biped-rig with ARP (Done)
    4. Trying to import mkl-sequence via Mocap-UI (your add-on) Fails

    When i browse to my folder with the mkl files and select the first one it got this error:

    Traceback (most recent call last): File "C:\Users\frank\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\b3d_mocap_import-main\load_mocap.py", line 729, in execute import joblib ModuleNotFoundError: No module named 'joblib'

    location: :-1

    It's obvisously due to a missing "joblib"-package and i've already tried the button "Install Joblib" in the UI but no luck. So again ... if you could give me small notes on how to get the data loaded to the rig i'd be super thankful. Also maybe i was missing some steps inbetween.

    Thank you very much!

    opened by FrankSpalteholz 8
  • Some problems with installing MOCAP PE Data Import

    Some problems with installing MOCAP PE Data Import

    Blender version 2.93 is installed in Windows, and the installation of Mocap_PE_data_import_ALPHA is completed. When loading data, this error occurs. Should I modify the source code of Blender 50

    opened by zhanghongyong123456 6
  • Problem importing SMPL generated by EasyMocap

    Problem importing SMPL generated by EasyMocap

    I have this error when i'm trying to import with your plugin (my results are in: '1_output\sample\smpl' folder), what is the problem?

    Python: Traceback (most recent call last):
      File "C:\Users\andrea\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\Mocap_PE_data_import\load_mocap.py", line 356, in execute
        #bpy.data.objects[armature].select_set(True)
      File "C:\Users\andrea\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\Mocap_PE_data_import\load_mocap.py", line 273, in load_smpl_params
        motions = load_motions(datapath)
      File "C:\Users\andrea\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\Mocap_PE_data_import\load_mocap.py", line 258, in load_motions
        infos = read_smpl(filename)
      File "C:\Users\andrea\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\Mocap_PE_data_import\load_mocap.py", line 230, in read_smpl
        data_pkl = read_pkl(filename+'.pkl')
      File "C:\Users\andrea\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\Mocap_PE_data_import\load_mocap.py", line 222, in read_pkl
        with open(path_pkl, 'rb') as pk:
    FileNotFoundError: [Errno 2] No such file or directory: 'C:\\MOCAP\\EasyMocap\\1_output\\sample\\smpl\\000000.pkl'
    
    location: <unknown location>:-1
    
    opened by hacker1122 6
  • SMPL-X import

    SMPL-X import

    Hi, Thank you for very useful content, I had a question about importing smplx models using the addon mentioned here: https://www.youtube.com/watch?v=-vvSjAyiK_g

    I tried to import the result of smplify-x to blender using the addon but encounter an error https://github.com/vchoutas/smplify-x

    I was wondering is there any way to import the smplx models? Thank you very much in advance! I look forward to hearing from you

    Best regards, Leila

    opened by leilaUEA 5
  • Install version 0.0.722 on Blender fails

    Install version 0.0.722 on Blender fails

    Hi Carlos,

    when i try to install the latest version in Blender i got this error:

    Traceback (most recent call last): File "C:\Program Files\Blender Foundation\Blender 2.90\2.90\scripts\modules\addon_utils.py", line 351, in enable mod = import(module_name) File "C:\Users\frank\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\b3d_mocap_import-main_init_.py", line 39, in from . load_mocap import Import_Data_easymocap, OT_TestOpenFilebrowser,Import_Data_frankmocap,Import_Data_vibe,Mediapipe_Pose_estimation,
    ImportError: cannot import name 'Audio2face_Export' from 'b3d_mocap_import-main.load_mocap' (C:\Users\frank\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\b3d_mocap_import-main\load_mocap.py)

    before i tried to install the new version i un-installed the older one (0.0.7) via the AddOn-UI in Blender.

    Maybe i was missing some other steps. Thanks again!

    opened by FrankSpalteholz 4
  • Can't import as NLA Strip from OMNIVERSE

    Can't import as NLA Strip from OMNIVERSE

    Hello I am using blender 3 (i tried also with 2.93), after i exported the model trough the addon and i made all the set up in omniverse, i exported as maya cache the result. If i import the model with the modifier everything works well but id i try to import as NLA Strip i get this result, do you know why? Thanks mocapImportasNLAStrip

    PS the models are from Human Generator Addon

    opened by pitanello 3
  • Vibe Colab with GUI link to Drive

    Vibe Colab with GUI link to Drive

    I hope admin won't mind.

    I would just like to share my version of VIBE Google Colab.

    In this version, you can upload your video and save the result on google drive.

    https://colab.research.google.com/drive/1AHiHkQ_SWOCFMnMx1WKGemNrPN8_2OH2?usp=sharing

    Also, I have fixed the bug that prevents the model from downloading to Google Colab. Users might be able to use the same procedure if they want to run this on their pc.

    opened by CGMikeG 1
  • TypeError: Converting py args to operator properties: : keyword

    TypeError: Converting py args to operator properties: : keyword "scale" unrecognized

    Hi I don't know how to solve the following problem Traceback (most recent call last): File "/home/dms/.config/blender/2.83/scripts/addons/b3d_mocap_import/load_mocap.py", line 1044, in execute create_dots('Point',49) File "/home/dms/.config/blender/2.83/scripts/addons/b3d_mocap_import/load_mocap.py", line 765, in create_dots bpy.ops.mesh.primitive_plane_add(enter_editmode=True, align='WORLD', location=(0, 0, 0), scale=(1, 1, 1)) File "/home/dms/blender-2.83.19-linux-x64/2.83/scripts/modules/bpy/ops.py", line 201, in call ret = op_call(self.idname_py(), None, kw) TypeError: Converting py args to operator properties: : keyword "scale" unrecognized

    location: :-1

    opened by daoboke 3
  • FrankMocap Development and Hands-On

    FrankMocap Development and Hands-On

    Hi Carlos!. I am trying to complete the Frankmocap import algorithm. Could you suggest me how to quickly test the results? Create a separate test environment (a venv with bpy) and export the resulting fbx or directly it is better to work on the addon that imports into blender, reopen blender and test the import of Frankmocap (this process seems soooo slow to me). Thank you and greetings.

    opened by italosalgado14 1
  • Use of Easymocap to obtain a output with file replacement

    Use of Easymocap to obtain a output with file replacement

    Hi!. Thanks for the code. And trying to get the Easymocap output to import it into Blender, but I have had problems with the output even though I have replaced the 2 files indicated in the Git: (env) [email protected]:~/Nexar/EasyMocapP$ python apps/demo/mv1p.py 0_input/sample --out 1_output/sample/smplx --vis_det --vis_repro --undis --sub_vis 1 7 13 19 --body bodyhandface --model smplx --gender male --vis_smpl --write_smpl_full

    Demo code for multiple views and one person:

    - Input : 0_input/sample => 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23
    - Output: 1_output/sample/smplx
    - Body  : smplx=>male, bodyhandface
    

    triangulation: 100%|██████████████████████████| 800/800 [05:54<00:00, 2.26it/s] dump: 100%|█████████████████████████████████| 800/800 [00:00<00:00, 2730.57it/s] loading: 100%|███████████████████████████████| 800/800 [00:05<00:00, 145.35it/s] Traceback (most recent call last): File "/home/laila/Nexar/EasyMocapP/apps/demo/mv1p.py", line 113, in mv1pmf_smpl(dataset, args) File "/home/laila/Nexar/EasyMocapP/apps/demo/mv1p.py", line 70, in mv1pmf_smpl params = smpl_from_keypoints3d2d(body_model, kp3ds, keypoints2d, bboxes, File "/home/laila/Nexar/EasyMocapP/easymocap/pipeline/basic.py", line 58, in smpl_from_keypoints3d2d params_init = body_model.init_params(nFrames=1) File "/home/laila/Nexar/EasyMocapP/env/lib/python3.9/site-packages/torch/nn/modules/module.py", line 947, in getattr raise AttributeError("'{}' object has no attribute '{}'".format( AttributeError: 'SMPLlayer' object has no attribute 'init_params' (env) [email protected]:~/Nexar/EasyMocapP$

    What error could be associated with this? I am using the June 18 version of Easymocap, when I got this error: https://github.com/carlosedubarreto/b3d_mocap_import/issues/14

    Thanks!

    opened by italosalgado14 2
  • when i start realtime mediapip get that error

    when i start realtime mediapip get that error

    hello carlos ...thank you for ur amazing work and i faced that issues when i start mocap on blender

    Python: Traceback (most recent call last): File "C:\Users\azida\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\b3d_mocap_import-alpha_realtime\load_mocap.py", line 3351, in modal msglen = int(msg[:HEADERSIZE]) ValueError: invalid literal for int() with base 10: b''

    location: :-1

    opened by azidan17 5
Releases(0.1)
Owner
Carlos Barreto
Carlos Barreto
dynamically create __slots__ objects with less code

slots_factory Factory functions and decorators for creating slot objects Slots are a python construct that allows users to create an object that doesn

Michael Green 2 Sep 07, 2021
Async-first dependency injection library based on python type hints

Dependency Depression Async-first dependency injection library based on python type hints Quickstart First let's create a class we would be injecting:

Doctor 8 Oct 10, 2022
The fundamentals of Python!

The fundamentals of Python Author: Mohamed NIANG, Staff ML Scientist Presentation This repository contains notebooks on the fundamentals of Python. Th

Mohamed NIANG 1 Mar 15, 2022
Markov Chain Composer

Markov Chain Composer Using Markov Chain to represent relationships between words in song lyrics and then generating new lyrics.. ahem interpretive po

Kylie 85 Dec 09, 2022
Null safe support for Python

Null Safe Python Null safe support for Python. Installation pip install nullsafe Quick Start Dummy Class class Dummy: pass Normal Python code: o =

Paaksing 13 Nov 17, 2022
Amazon SageMaker Delta Sharing Examples

This repository contains examples and related resources showing you how to preprocess, train, and serve your models using Amazon SageMaker with data fetched from Delta Lake.

Eitan Sela 5 May 02, 2022
Project in which we modelise an Among Us problem using graph theories.

Python-AmongUsProblem Project in which we modelise an Among Us problem using graph theories. The rules are as following: Total of 100 players 10 playe

Gabriel Shenouda 1 Feb 09, 2022
A Modern Fetch Tool for Linux!

Ufetch A Modern Fetch Tool for Linux! Programming Language: Python IDE: Visual Studio Code Developed by Avishek Dutta If you get any kind of problem,

Avishek Dutta 7 Dec 12, 2021
Translation patch for Hololive ERROR

Translation patch for Hololive ERROR How do I install the patch? Grab the Translation.zip file for the latest version from the releases page, and unzi

18 Jul 20, 2022
This module is for finding the execution time of a whole python program

exetime 3.8 This module is for finding the execution time of a whole program How to install $ pip install exetime Contents: General Information Instru

Saikat Das 4 Oct 18, 2021
Roman numeral conversion with python

Roman numeral conversion Discipline: Programming Languages Student: Paulo Henrique Diniz de Lima Alencar. Language: Python Description Responsible for

Paulo Alencar 1 Jul 11, 2022
Slientruss3d : Python for stable truss analysis tool

slientruss3d : Python for stable truss analysis tool Desciption slientruss3d is a python package which can solve the resistances, internal forces and

3 Dec 26, 2022
TrainingBike - Code, models and schematics I've used to interface my stationary training bike with PC.

TrainingBike Code, models and schematics I've used to interface my stationary training bike with PC. You can find more information about the project i

1 Jan 01, 2022
Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.

Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.

Taine Zhao 56 Dec 14, 2022
The only purpose of a byte-sized application is to help you create .desktop entry files for downloaded applications.

Turtle 🐢 The only purpose of a byte-sized application is to help you create .desktop entry files for downloaded applications. As of usual with elemen

TenderOwl 14 Dec 29, 2022
The ROS package for Airbotics.

airbotics The ROS package for Airbotics: Developed for ROS 1 and Python 3.8. The package has not been officially released on ROS yet so manual install

Airbotics 19 Dec 25, 2022
This is a modified variation of abhiTronix's vidgear. In this variation, it is possible to write the output file anywhere regardless the permissions.

Info In order to download this package: Windows 10: Press Windows+S, Type PowerShell (cmd in older versions) and hit enter, Type pip install vidgear_n

Ege Akman 3 Jan 30, 2022
PyDy, short for Python Dynamics, is a tool kit written in the Python

PyDy, short for Python Dynamics, is a tool kit written in the Python programming language that utilizes an array of scientific programs to enable the study of multibody dynamics. The goal is to have

PyDy 307 Jan 01, 2023
Mannaggia is a python application to praise or more likely to curse the saints

Mannaggia-py 👼 Remember Mannaggia? This is a Python remake of it, with new features. mannaggia is a python application to praise or more likely to cu

Christian Visintin 9 Aug 12, 2022
Similarity checking of sign languages

Similarity checking of sign languages This repository checks for similarity betw

Tonni Das Jui 1 May 13, 2022