Giter Club home page Giter Club logo

moetion's People

Contributors

0b10000 avatar adryzz avatar lenitrous avatar speykious avatar sr229 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

moetion's Issues

The result is different with Unity.Anagle Method?

var v1 = new Vector3(0, 1, 0);
var v2 = new Vector3(1, 0, 0);
var angle = v1.FindRotation(v2) * Mathf.Rad2Deg;
Debug.Log(angle);  // (28.65, -28.65, -14.32)

var a2 = Vector3.Angle(v1, v2);
Debug.Log(a2);  // 90

Is this result correct ?

Pose Solver in Unity

Hey guys,
I've been trying to implement Moetion logic on Unity but the logic doesn't seem to work.
I think you are using different orientation and different 3d rigs.
Unity uses left handed (Y axis up) and I'm using mixamo rigs,
please inform me about the used orientation and rig so I can translate the code for Unity.
thanks ^^

MediaPipeUnityPlugin Usage

It it possible to use this alongside the tracking data from Holistic in the MP Unity Plugin to drive a 3D avatar e.g. readyplayerme rig body + face blendshapes?

If so, any advice on how to go about this would be appreciated.

Convert Vector3s to Quaternions

Prior to discussion on Discord, we believe there are many benefits for using Quaternions - hence we'll be using Quaternions to represent it's values in the library.

The main objectives are the following:

  • Accept standard Vector3 output from MediaPipe (should be no behavioral changes)
  • Create a helper that changes these Vector3s into Quaternions
  • Structs and Classes should use Quaternions as much as possible as we already convert them internally in-Moetion.

Using Moetion pose output in Unity

Hello, I finally got around to attempting to convert your solver to work in Unity. However I am at a bit of a wall now and I do not know how to correctly apply the outputted Vector3 rotations to the 3D rig.

For example I have a solver script calculating the arms then adding these to a pose struct. I then attempt to apply the pose to the 3D models bones. See the example below where I give the NormalizedLandmarkList to my solve function and return the pose. I then attempt to apply the rotations by setting the bone euler rotations to them. From the result im getting this is clearly not correct so if you could provide any guidance that would be great thanks.

        var pose = _poseSolver.Solve(list);

        LeftHand.eulerAngles = pose.LeftArm.Hand;
        RightHand.eulerAngles = pose.RightArm.Hand;

        LeftLowerArm.eulerAngles = pose.LeftArm.Lower;
        RightLowerArm.eulerAngles = pose.RightArm.Lower;

        LeftUpperArm.eulerAngles = pose.LeftArm.Upper;
        RightUpperArm.eulerAngles = pose.RightArm.Upper;

Working with Quaternion now?

It seems this codebase not using quaternion now, even though README says

We use Quaternions to prevent gimbal-locking and prevent the edge cases we see from Euler Angle-based implementations

is this feature working in progress?

Convert to File-scope namespaces

Since we're moving to file-scoped namespaces for some of our projects, it would make sense to also change some of our code to that too.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.