Coordinate transformation from Cartesian to Frenet Frame
Show older comments
Can anyone tell me how to convert from Cartesian to Frenet Frame for a vehicle driving on a curved road? In other words how do I convert from (x,y) -> (s,d) where is along the curve and d is perpendicular to the curve?
Is there a Matlab code someone can share?
For example if the vehicle is 1 m off centerline and driving along the arc of a circle at speed 1 m/s, then the coordinates at every 1 sec in Cartesian and Frenet frame are given by:
x = cos(theta) ... [with the appropriate scalings for radius and speed]
y = sin(theta) ... [with the appropriate scalings for radius and speed]
s = (0, 1, 2, ...)
d = (1, 1, 1, ...)
I have been looking into Matlab codes but the solutions I got are in the form of (T, N, B) - the tangent, normal and binormal. How do I convert them to distance along the centerline and perpendicular to the centerline?
Thanks.
1 Comment
M I
on 21 May 2021
i recently found this: https://github.com/fjp/frenet/blob/master/matlab/Cart2FRT.m
Accepted Answer
More Answers (0)
Categories
Find more on Motion Planning in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!