Достопримечательности MediaPipe до BVHPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Достопримечательности MediaPipe до BVH

Сообщение Anonymous »

Я делаю проект о передаче изображения, взятого с камеры в анимацию. Я хочу перенести движения позы тела, которые я обнаружил с помощью MediaPipe в среду блендера как анимация. Я сделаю этот перевод в формате BVH. Но как я рассчитаю вращение вращения желаемых соединений в формате файла BVH? С MediaPipe я могу видеть только координаты x, y, z. Может ли кто -нибудь, у кого есть информация по этой теме, п о м о щ ь ? < / P > < b r / > < c o d e > h i e r a r c h y < b r / > R O O T h i p < b r / > { < b r / > O F F S E T 0 . 0 0 0 0 0 0 2 . 0 9 3 3 8 9 0 . 0 0 0 0 0 0 < b r / > C H A N N E L S 6 X p o s i t i o n Y p o s i t i o n Z p o s i t i o n Z r o t a t i o n Y r o t a t i o n X r o t a t i o n < b r / > J O I N T s p i n e 1 < b r / > { < b r / > O F F S E T 0 . 0 0 0 0 0 0 0 . 2 2 1 8 1 2 0 . 0 5 5 6 5 1 < b r / > C H A N N E L S 6 X p o s i t i o n Y p o s i t i o n Z p o s i t i o n Z r o t a t i o n Y r o t a t i o n X r o t a t i o n < b r / > J O I N T s p i n e 2 < b r / > { < b r / > O F F S E T 0 . 0 0 0 0 0 0 0 . 2 5 9 1 6 6 0 . 0 1 0 8 5 9 < b r / > C H A N N E L S 3 Z r o t a t i o n X r o t a t i o n Y r otation
JOINT spine3
{
OFFSET 0.000000 0.259166 0.006787
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT shoulder.L
{
OFFSET 0.144217 0.158309 0.020963
CHANNELS 6 Xposition Yposition Zposition Zrotation Yrotation Xrotation
JOINT upperarm.L
{
OFFSET 0.233226 -0.001289 0.020344
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT lowerarm.L
{
OFFSET 0.569278 0.000000 0.028651
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT hand.L
{
OFFSET 0.530662 0.000000 -0.028651
CHANNELS 3 Zrotation Xrotation Yrotation
End Site
{
OFFSET 0.183393 0.000000 0.000000
}
}
}
}
}
JOINT neck
{
OFFSET 0.000000 0.259166 -0.017645
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT head
{
OFFSET 0.000000 0.206271 -0.095711
CHANNELS 3 Zrotation Xrotation Yrotation
End Site
{
OFFSET 0.000000 0.475892 -0.060541
}
}
}
JOINT shoulder.R
{
OFFSET -0.144217 0.158309 0.020963
CHANNELS 6 Xposition Yposition Zposition Zrotation Yrotation Xrotation
JOINT upperarm.R
{
OFFSET -0.233226 -0.001289 0.020344
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT lowerarm.R
{
OFFSET -0.569278 0.000000 0.028651
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT hand.R
{
OFFSET -0.530662 0.000000 -0.028651
CHANNELS 3 Zrotation Xrotation Yrotation
End Site
{
OFFSET -0.183393 0.000000 0.000000
}
}
}
}
}
}
}
}
JOINT thigh.L
{
OFFSET 0.206315 -0.157451 0.040530
CHANNELS 6 Xposition Yposition Zposition Zrotation Yrotation Xrotation
JOINT shin.L
{
OFFSET 0.000000 -0.928808 -0.019702
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT foot.L
{
OFFSET 0.000000 -0.805280 0.036120
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT toe.L
{
OFFSET 0.037360 -0.175911 -0.243095
CHANNELS 3 Zrotation Xrotation Yrotation
End Site
{
OFFSET 0.031738 0.000000 -0.206517
}
}
}
}
}
JOINT thigh.R
{
OFFSET -0.206315 -0.157451 0.040530
CHANNELS 6 Xposition Yposition Zposition Zrotation Yrotation Xrotation
JOINT shin.R
{
OFFSET 0.000000 -0.928808 -0.019702
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT foot.R
{
OFFSET 0.000000 -0.805280 0.036120
CHANNELS 3 Zrotation Xrotation Yrotation
JOINT toe.R
{
OFFSET -0.037360 -0.175911 -0.243095
CHANNELS 3 Zrotation Xrotation Yrotation
End Site
{
OFFSET -0.031738 0.000000 -0.206517
}
}
}
}
}
}
< /code>
#код, который я использую для расчета вращения < /p>

Код: Выделить всё

  spine1_rotation = (hip_x + spine1_x , hip_y + spine1_y, hip_z + spine1_z)
spine2_rotation = (spine1_x + spine2_x, spine1_y + spine2_y, spine1_z + spine2_z)
spine3_rotation = (spine2_x + spine3_x, spine2_y + spine3_y, spine2_z + spine3_z)

shoulder_L_rotation = (spine3_x + shoulder_L.x , spine3_y + shoulder_L.y, spine3_z + shoulder_L.z)
upperarm_L_rotation = (shoulder_L.x + upperarm_L.x, shoulder_L.y + upperarm_L.y, shoulder_L.z + upperarm_L.z)
lowerarm_L_rotation = (upperarm_L.x + lowerarm_L.x , upperarm_L.y + lowerarm_L.y, upperarm_L.z + lowerarm_L.z)
hand_L_rotation = (lowerarm_L.x + hand_L.x , lowerarm_L.y + hand_L.y, lowerarm_L.z + hand_L.z)

При расчете вращения суставов, как видно в формате файла BVH, я добавил координаты взаимосвязанных соединений, и скелет никоим образом не двигался.

Подробнее здесь: https://stackoverflow.com/questions/784 ... rks-to-bvh
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • OpenGL Ray Tracer и BVH в вычислительном шейдере
    Anonymous » » в форуме C++
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • BVH Анимация Скиннинг
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Overpass запрашивает достопримечательности по городам
    Гость » » в форуме Python
    0 Ответы
    23 Просмотры
    Последнее сообщение Гость
  • Карты Google для Flutter не отображают достопримечательности
    Anonymous » » в форуме Android
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Как динамически выделять крикетные стадионы на карте и отображать близлежащие достопримечательности с помощью JavaScript
    Anonymous » » в форуме CSS
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»