human_body_prior icon indicating copy to clipboard operation
human_body_prior copied to clipboard

smpl的姿势参数

Open liuhaorandezhanghao opened this issue 3 years ago • 9 comments

在看smpl的原论文时也有同样的困惑:我们用3+3*23=72个参数来表示每一帧的pose,这里面是用了轴角式的表达,那对于任意一个关节点我们只有三个参数,但是对于轴角式表达应该有四个参数,旋转轴和旋转向量,我查了一些资料,《视觉slam十四讲中》这样描述旋转向量(我们认为任意一个旋转都可以用一个旋转和一个旋转角来表示,于是我们使用一个向量,方向与旋转轴一致,长度等于旋转角,这种向量叫做旋转向量,(或者轴角/axis-angle),只需要一个三维向量就可以描述旋转)。 那smpl的某一个关节点的这三个参数是代表了一个向量对吧,这个向量的方向就是旋转轴,那向量的模就是旋转角度吗?我看这个参数基本在-1到1之间,这样计算得到的旋转角度很小啊,结果是不对的。还原不到预定的姿势。

liuhaorandezhanghao avatar Aug 27 '21 07:08 liuhaorandezhanghao

马普所的大佬们看不懂中文呀~

Arthur151 avatar Sep 17 '21 09:09 Arthur151

在看smpl的原论文时也有同样的困惑:我们用3+3*23=72个参数来表示每一帧的pose,这里面是用了轴角式的表达,那对于任意一个关节点我们只有三个参数,但是对于轴角式表达应该有四个参数,旋转轴和旋转向量,我查了一些资料,《视觉slam十四讲中》这样描述旋转向量(我们认为任意一个旋转都可以用一个旋转和一个旋转角来表示,于是我们使用一个向量,方向与旋转轴一致,长度等于旋转角,这种向量叫做旋转向量,(或者轴角/axis-angle),只需要一个三维向量就可以描述旋转)。 那smpl的某一个关节点的这三个参数是代表了一个向量对吧,这个向量的方向就是旋转轴,那向量的模就是旋转角度吗?我看这个参数基本在-1到1之间,这样计算得到的旋转角度很小啊,结果是不对的。还原不到预定的姿势。

下次用英文提问比较好,我并不是MPI的学生,但勉强回答一下。你想的是对的,smpl中的三维向量是3D旋转轴和旋转角(单位 弧度, unit:rad)的乘积,这个叫做axis-angle的exponential map表示。

huajian1069 avatar Dec 08 '21 01:12 huajian1069

I also have one confusion.I found root orient parameters is different between AMASS and moshed data(such as H3.6M moshed data).How can I change this root orient?(e.g. like normalize different datasets' root orient )

amituofo1996 avatar Mar 07 '22 13:03 amituofo1996

I also have one confusion.I found root orient parameters is different between AMASS and moshed data(such as H3.6M moshed data).How can I change this root orient?(e.g. like normalize different datasets' root orient )

Do you mean the root orientation of amass is z-axis upward and negative y-axis forward, but the MoSn dataset is different?

huajian1069 avatar Mar 07 '22 13:03 huajian1069

I also have one confusion.I found root orient parameters is different between AMASS and moshed data(such as H3.6M moshed data).How can I change this root orient?(e.g. like normalize different datasets' root orient )

Do you mean the root orientation of amass is z-axis upward and negative y-axis forward, but the MoSn dataset is different?

yes, i also have a problem about definition about root orientation, why root orientation will be like this [0.05,0.06,3.20],rather pose parameters will be like [0.2,0.3,0.5], I see in SMPL_siggraph_2015 all pose parameters already be unit norm, why root orientation is so different

amituofo1996 avatar Mar 08 '22 00:03 amituofo1996

I also have one confusion.I found root orient parameters is different between AMASS and moshed data(such as H3.6M moshed data).How can I change this root orient?(e.g. like normalize different datasets' root orient )

Do you mean the root orientation of amass is z-axis upward and negative y-axis forward, but the MoSn dataset is different?

yes, i found 3dpw is z-axis upward and x-axis forward ,rather amass is different,I guess through making transformation rotation matrix can be OK! Thanks a lot! You really help me.

amituofo1996 avatar Mar 08 '22 11:03 amituofo1996

I also have one confusion.I found root orient parameters is different between AMASS and moshed data(such as H3.6M moshed data).How can I change this root orient?(e.g. like normalize different datasets' root orient )

Do you mean the root orientation of amass is z-axis upward and negative y-axis forward, but the MoSn dataset is different?

yes, i also have a problem about definition about root orientation, why root orientation will be like this [0.05,0.06,3.20],rather pose parameters will be like [0.2,0.3,0.5], I see in SMPL_siggraph_2015 all pose parameters already be unit norm, why root orientation is so different

pose parameters and root orientation are not necessary to be normalised. Because the 3D vector represents the product between axis direction in 3D space(which has unit norm) and the angle( which is a scalar between -pi to pi).

huajian1069 avatar Mar 08 '22 11:03 huajian1069

How can I obtain the pose parameters θ if I only have the coordinates of each skeleton points? Thanks

zjqhaohaoxuex1 avatar Apr 06 '23 02:04 zjqhaohaoxuex1

How can I obtain the pose parameters θ if I only have the coordinates of each skeleton point? Thanks

You may need to do IK first.

ChambinLee avatar Sep 13 '23 03:09 ChambinLee