Comments (9)
If you are not familiar with python, the trickier part might be figuring out the decoding for the model's output. The current code for that is a bit dense and optimized:
Lines 168 to 178 in baff2c0
In some very early versions, there should be a more readable function for decoding landmarks in tracker.py though.
Edit: I found it:
Lines 105 to 111 in 0690bdd
Lines 641 to 660 in 0690bdd
from openseeface.
Those cameras look interesting, but OpenSeeFace is mainly concerned with inferring landmarks from RGB images and a putting together the final training dataset for the models was a lot of work. I'm unlikely to find the time or resources to put together anything remotely similar for depth cameras.
from openseeface.
@silverhikari theoretically you can take the onnx model and convert it to OpenVino so it run on the Oak-D.
I got a OAK-D Lite and will try to make it work with VSeeFace. If i dont forget i can inform you if my experiment works out.
@emilianavt the OAK-Ds have RGB cameras too, so technically you only need to convert the model (there is a python script for that) and interface the camera instead of calling the CNN yourself.
Using the Position data from depthcamera is more of a bonus (or in my case for handtracking instead of a leapmotion)
from openseeface.
I see, if they have RGB too, it should work!
from openseeface.
yep there is a 4k RGB camera (the middle one usually), but also the stereo cameras are accessible individually as black and white cams (480p iirc)
The more interesting thing is to run the NN on the cam though as it has a AI-Chip onboard and then just grabbing the output data, hence the conversion to OpenVINO
from openseeface.
btw, do you by any chance have a layout of the OSC / VMC protocol that VSeeFace uses (the message names so to speak)
im not very good with Japanese andd it seems not creating landmarks (if not specifically needed would be helping a lot)
from openseeface.
The VMC protocol only transmits blendshapes and bones. OpenSeeFace's face tracking data is transmitted using custom UDP packets. It's probably easiest to understand from the parser: https://github.com/emilianavt/OpenSeeFace/blob/master/Unity/OpenSee.cs#L137
There is also some English language documentation on the VMC protocol here: https://protocol.vmc.info/english.html
from openseeface.
from openseeface.
@TheMasterofBlubb How did you get on with converting the model to OpenVino and generating OpenSEeFace compatible packets?
from openseeface.
Related Issues (20)
- About generating landmark heatmap offset groud truth label HOT 3
- onnxruntime-gpu (CUDA/TensorRT) support HOT 1
- [FR] VMC support HOT 10
- Unable to fulfill dependencies HOT 13
- Packets on 369 of facetracker.py fail with VPN enabled HOT 2
- [SUGGESTION] officially support OpenSeeFace as a flatpak HOT 8
- Using the project for API HOT 2
- [Compatibility request] Unity Barracuda ML solution support for the .onnx models in project HOT 6
- Extracting face with quaternion points HOT 3
- error in converting onnx models to tensorflow HOT 5
- Worse performance of released pytorch models HOT 1
- NumPy 1.24 breaks pupil/gaze tracking HOT 2
- Detection model without onnxruntime HOT 2
- Documenting UDP protocol HOT 1
- [Question] Camera opened by dshowcapture has changed? HOT 1
- model loading error HOT 5
- randomly black out when ir tracking (lenovo 500) HOT 2
- Openseeface runs but vseeface cannot communicate with it. HOT 1
- The Lazy Eye HOT 1
- [Help Request] Opens exe, then it quickly closes? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openseeface.