Known From

  • bbcbbc
  • cesces
  • blickblick

Quantify human motion.

Digitize humans and receive real-time measurements. Data you can count on.



Gather important angles of the human motion and define good or bad thresholds.

tacho meter


Measure the velocity of specific human body parts to analyze movements.

human body


Evaluate poses and movements and compare them to a target goal.

We have opened the doors.

It is was too complex to implement and utilize human pose estimation in applications.

Use case:

The VAY Fitness Coach is a fully virtual personal coach for the smartphone. Users get real-time feedback on their pose and automatic progress tracking during their workout sessions.

Read More
real time


Analyze human poses and create real-time response systems.



Humans move the freest without any markers or sensors attached.



A single camera suffices to estimate human poses with us.

Unlimited possibilities

Turn the human body into a game controller. Build a virtual physio trainer or teach your employees to move ergonomically. You choose.

Workplace Safety

Ensure workplace wellness with our solution.

Learn More


Create real-time feedback systems to guide your users.

Learn More

Interactive Entertainment

Remove markers and let your users interact with your AR applications.

Learn More


Teach your users to do physical exercises the right way.

Learn More

A plug-and-play solution.

Get started real quick with a few copy and pastes.

from vayai.vup.client import Client, IdTypes
client = Client('ssl://').connect()
# Configure your session
client.send_metadata(uid='your-user-name', # Your user name goes here.
               task_type=IdTypes.Movement, # The desired type of analysis to perform.
               id=12345)                   # Specify the id of your analysis task.
sessionId = client.read_message().sessionId
# Now you are good to go, send your images...
# and receive the results!
response = client.read_message()
# We offer the raw key points...
points = response.points
print(f'Nose: x={points.nose.x}, y={points.nose.y}, z={points.nose.z}')
# ... as well as detailed feedback.
feedback =