mit-acl / mader

Trajectory Planner in Multi-Agent and Dynamic Environments
BSD 3-Clause "New" or "Revised" License
480 stars 78 forks source link

[Question] Are there any references to the basis transformations are calculated? #18

Closed GPrathap closed 1 year ago

GPrathap commented 1 year ago

Hi there,

I checked https://github.com/mit-acl/minvo but could not find how these basis transformations were obtained

BSPLINE to MINVO POSITION https://github.com/mit-acl/mader/blob/5e9fdf1583ce4e9fcd9b138cf50fa9c059249c97/mader/include/mader_types.hpp#L192

BSPLINE to BEZIER POSITION https://github.com/mit-acl/mader/blob/5e9fdf1583ce4e9fcd9b138cf50fa9c059249c97/mader/include/mader_types.hpp#L192

if you can provide any hint, it would be great.

Thanks,

jtorde commented 1 year ago

Hi @GPrathap,

Those transformations were obtained using Eq. 5 of the MINVO paper: https://arxiv.org/pdf/2010.10726.pdf

To derive them, you can use the functions getA_MV.m, getA_Be.m, getA_BS.m, and computeMatrixForClampedUniformBSpline.m of the MINVO repository

For example, to obtain this transformation, you can use this matlab code:

computeMatrixForClampedUniformBSpline(3,0,[0,1])*inv(getA_MV(3,[0,1]))

I hope this helps!

GPrathap commented 1 year ago

Hi @jtorde ,

Yep, thank you for your prompt response! I will look into it