Dual Quaternion Skinning (DQS)
- - Encode rigid transformation \((q^i,t^i)\) into dual quaternion
-
- \(\displaystyle \hat q^i = q^i_0 + \frac{\epsilon}{2} q^i_t\,q^i_0 \) , \(\;\;q^i_t=(t^i_x,t^i_y,t^i_z,0)\)
- - Compute blending in the dual quaternion space (ScLERP)
-
- \(\displaystyle \hat q' = q'_0+\epsilon\, q'_\epsilon= \sum_i\,\omega_i\;\hat q^i\)
- - Extract components \((q,t)\) from \(\hat q'\)
-
- Compute \(\hat q''=\hat q'/\|q'_0\|=q''_0+\epsilon q''_\epsilon\)
-
- \(\Rightarrow q=q''_0\)
- \(\Rightarrow (t_x,t_y,t_z,0)=2\,q''_\epsilon\,q_0^\star\)
- - Apply finaly the transformation \((q,t)\) to position \(p_0\)
LBS
DQS
LBS
DQS