Comments (3)
The error was on my end. When computing the initial arclength I used the sample at the current timestep, but when integrated the speed I used timestep+1. The current speed of the vehicle was 8.77 and with a sampling time of 0.5 seconds this gives an error 4.39 m which matches well the error I reported. After the fix I get an error of 0.11 m which is reasonable.
from nuscenes-devkit.
The provided arclength parameterization seems correct. When running the folowing code I get the expected result:
def plot_curve_parameter_VS_distance_travelled(lane):
"""
If the parameterization is the arclength parameterization, then the result
is the line y=x.
"""
pose = arcline_path_utils.pose_at_length(lane[0],1e-6)
position = np.array(pose[:2])
ts = np.linspace(1e-6,166,1000)
distances = []
for t in ts:
next_pose = arcline_path_utils.pose_at_length(lane[0],t)
next_position = np.array(next_pose[:2])
distances.append(np.linalg.norm(next_position-position))
position = next_position
cum_distances = np.cumsum(distances)
_,ax = plt.subplots()
ax.set_aspect('equal')
ax.plot(ts,cum_distances)
print(ts[-5:])
print(cum_distances[-5:])
from nuscenes-devkit.
The method arcline_path_utils.project_pose_to_lane
seems correct, I get the expected result when running:
def check_project_pose_to_lane(lane,current_pose,final_pose):
resolution_meters=0.01
my_current_arclength = find_arclength_of_normal_proj(current_pose[:2],lane)
_,current_arclength = arcline_path_utils.project_pose_to_lane(current_pose
,lane
,resolution_meters)
_,final_arclength = arcline_path_utils.project_pose_to_lane(final_pose
,lane
,resolution_meters)
my_final_arclength = find_arclength_of_normal_proj(final_pose[:2],lane)
print(np.abs(current_arclength-my_current_arclength))
print(np.abs(final_arclength-my_final_arclength))
def find_arclength_of_normal_proj(position,lane):
N = 10000
positions = np.full((N,2),np.nan)
ts = np.linspace(1e-6,166,N)
for i, t in enumerate(ts):
positions[i] = arcline_path_utils.pose_at_length(lane[0],t)[:2]
idx = np.argmin(np.linalg.norm(positions - position,axis=1))
return ts[idx]
from nuscenes-devkit.
Related Issues (20)
- Memory Requirement - Reg HOT 3
- Coordinate system of radar point cloud and velocity information? HOT 1
- About coordinate and box_velocity HOT 4
- About sample['anns'] HOT 3
- about render_egoposes_on_map HOT 4
- translation matrix for camera sensors is with respect to the center of the rear axle? HOT 2
- How the point cloud semantically segmented file is encoded? HOT 1
- Problem with NuScenes format to KITTI format HOT 1
- Conert radar to lidar problems HOT 3
- Is 1000hz imu data available? HOT 1
- How to create and split NuScenes subsets into trainval and test like v1.0 HOT 4
- The number of points is inconsistent with the number of labels HOT 4
- Is there C++ version to read the data HOT 1
- Rotation problem of point cloud object detection HOT 2
- Alignment of multi-frame radar dynamic object data HOT 4
- When v1.1.13 will be released in PyPI ? HOT 2
- pip install failed HOT 5
- nuScenes-lidar Annotation file HOT 1
- Navigation. How can I get waypoints from (x1,y1) to (x2 y2) in nuscenes map HOT 5
- Cannot download anything HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nuscenes-devkit.