curobo package¶
cuRobo provides accelerated modules for robotics which can be used to build high-performance robotics applications. The library has several modules for numerical optimization, robot kinematics, geometry processing, collision checking, graph search planning. cuRobo provides high-level APIs for performing tasks like collision-free inverse kinematics, model predictive control, and motion planning.
High-level APIs:
Motion Generation / Planning:
curobo.wrap.reacher.motion_gen
.Inverse Kinematics:
curobo.wrap.reacher.ik_solver
.Model Predictive Control:
curobo.wrap.reacher.mpc
.Trajectory Optimization:
curobo.wrap.reacher.trajopt
.
cuRobo package is split into several modules:
curobo.opt
contains optimization solvers.curobo.cuda_robot_model
contains robot kinematics.curobo.curobolib
contains the cuda kernels and python bindings for them.curobo.geom
contains geometry processing, collision checking and frame transforms.curobo.graph
contains geometric planning with graph search methods.curobo.rollout
contains methods that map actions to costs. This class wraps instances ofcurobo.cuda_robot_model
andcurobo.geom
to compute costs given trajectory of actions.curobo.util
contains utility methods.curobo.wrap
adds the user-level api for task programming. Includes implementation of collision-free reacher and batched robot world collision checking.curobo.types
contains custom dataclasses for common data types in robotics, includingJointState
,CameraObservation
,Pose
.
Subpackages¶
- curobo.cuda_robot_model package
- Submodules
- curobo.cuda_robot_model.cuda_robot_generator module
- curobo.cuda_robot_model.cuda_robot_model module
- curobo.cuda_robot_model.kinematics_parser module
- curobo.cuda_robot_model.types module
- curobo.cuda_robot_model.urdf_kinematics_parser module
- curobo.cuda_robot_model.usd_kinematics_parser module
- curobo.cuda_robot_model.util module
- Submodules
- curobo.curobolib package
- Submodules
- curobo.curobolib.geom module
- curobo.curobolib.geom_cu module
- curobo.curobolib.kinematics module
- curobo.curobolib.kinematics_fused_cu module
- curobo.curobolib.lbfgs_step_cu module
- curobo.curobolib.line_search_cu module
- curobo.curobolib.ls module
- curobo.curobolib.opt module
- curobo.curobolib.tensor_step module
- curobo.curobolib.tensor_step_cu module
- curobo.curobolib.util_file module
- Submodules
- curobo.geom package
- Subpackages
- Submodules
- curobo.geom.cv module
- curobo.geom.sphere_fit module
- curobo.geom.transform module
transform_points
batch_transform_points
get_inv_transform
transform_point_inverse
matrix_to_quaternion
cuda_matrix_to_quaternion
quaternion_to_matrix
torch_quaternion_to_matrix
pose_to_matrix
pose_multiply
pose_inverse
TransformPoint
BatchTransformPoint
BatchTransformPose
TransformPose
PoseInverse
QuatToMatrix
MatrixToQuaternion
- curobo.geom.types module
- curobo.graph package
- curobo.opt package
- curobo.rollout package
- curobo.types package
- curobo.util package
- Submodules
- curobo.util.error_metrics module
- curobo.util.helpers module
- curobo.util.logger module
- curobo.util.metrics module
- curobo.util.sample_lib module
SampleConfig
BaseSampleLib
HaltonSampleLib
bspline
KnotSampleLib
RandomSampleLib
SineSampleLib
StompSampleLib
SampleLib
get_ranged_halton_samples
HaltonGenerator
bound_samples
gaussian_transform
generate_noise
generate_noise_np
generate_prime_numbers
generate_van_der_corput_sample
generate_van_der_corput_samples_batch
generate_halton_samples
generate_gaussian_halton_samples
generate_gaussian_sobol_samples
- curobo.util.state_filter module
- curobo.util.tensor_util module
- curobo.util.torch_utils module
find_first_idx
find_last_idx
is_cuda_graph_available
is_cuda_graph_reset_available
is_torch_compile_available
get_torch_compile_options
disable_torch_compile_global
set_torch_compile_global_options
get_torch_jit_decorator
is_lru_cache_avaiable
get_cache_fn_decorator
empty_decorator
round_away_from_zero
- curobo.util.trajectory module
InterpolateType
get_linear_traj
get_smooth_trajectory
get_spline_interpolated_trajectory
get_batch_interpolated_trajectory
get_cpu_linear_interpolation
get_cpu_kunz_stilman_interpolation
get_interpolated_trajectory
linear_smooth
calculate_dt_fixed
calculate_dt
calculate_dt_no_clamp
calculate_traj_steps
calculate_tsteps
- curobo.util.usd_helper module
set_prim_translate
set_prim_transform
get_prim_world_pose
get_transform
get_position_quat
set_geom_mesh_attrs
set_geom_cube_attrs
set_geom_cylinder_attrs
set_geom_sphere_attrs
set_cylinder_attrs
get_cylinder_attrs
get_capsule_attrs
get_cube_attrs
get_sphere_attrs
get_mesh_attrs
create_stage
UsdHelper
- curobo.util.warp module
- curobo.util.warp_interpolation module
- curobo.util.xrdf_utils module
- Submodules
- curobo.wrap package
Submodules¶
- curobo.util_file module
get_module_path
get_root_path
get_content_path
get_configs_path
get_assets_path
get_weights_path
join_path
load_yaml
write_yaml
get_robot_path
get_task_configs_path
get_robot_configs_path
get_world_configs_path
get_debug_path
get_cpp_path
add_cpp_path
copy_file_to_path
get_filename
get_path_of_dir
get_files_from_dir
file_exists
get_motion_gen_robot_list
get_robot_list
get_multi_arm_robot_list
merge_dict_a_into_b
is_platform_windows
is_platform_linux
is_file_xrdf