Skip to content

Instantly share code, notes, and snippets.

@gachiemchiep
Created January 22, 2021 07:32
Show Gist options
  • Save gachiemchiep/600afb8b0f09abdff934abe70bae82ee to your computer and use it in GitHub Desktop.
Save gachiemchiep/600afb8b0f09abdff934abe70bae82ee to your computer and use it in GitHub Desktop.
gpd setting
# Path to config file for robot hand geometry
hand_geometry_filename = 0
# Path to config file for volume and image geometry
image_geometry_filename = 0
# (OpenVINO) Path to directory that contains neural network parameters
model_file = /home/jil/opt/gpd/gpd/models/openvino/two_views_12_channels_curv_axis.xml
weights_file = /home/jil/opt/gpd/gpd/models/openvino/two_views_12_channels_curv_axis.bin
device = 0
# ==== Robot Hand Geometry ====
# finger_width: the width of the finger
# outer_diameter: the diameter of the robot hand (= maximum aperture + 2 * finger width)
# hand_depth: the finger length (measured from hand base to finger tip)
# hand_height: the height of the hand
# init_bite: the minimum amount of the object to be covered by the hand
finger_width = 0.005
hand_outer_diameter = 0.1
hand_depth = 0.06
hand_height = 0.02
init_bite = 0.01
# ==== Grasp Descriptor ====
# volume_width: the width of the cube inside the robot hand
# volume_depth: the depth of the cube inside the robot hand
# volume_height: the height of the cube inside the robot hand
# image_size: the size of the image (width and height; image is square)
# image_num_channels: the number of image channels
volume_width = 0.10
volume_depth = 0.06
volume_height = 0.02
image_size = 60
image_num_channels = 12
# Preprocessing of point cloud
# voxelize: if the cloud gets voxelized/downsampled
# remove_outliers: if statistical outliers are removed from the cloud (used to remove noise)
# workspace: the workspace of the robot (dimensions of a cube centered at origin of point cloud)
# camera_position: the position of the camera from which the cloud was taken
# sample_above_plane: only draws samples which do not belong to the table plane
voxelize = 1
remove_outliers = 1
workspace = -0.5 0.3 -0.2 0.1 0.25 0.6 # [minX, maxX, minY, maxY, minZ, maxZ] # in camera cordinates
camera_position = 0 0 1 #0 0 0
sample_above_plane = 1
# Grasp candidate generation
# num_samples: the number of samples to be drawn from the point cloud
# num_threads: the number of CPU threads to be used
# nn_radius: the radius for the neighborhood search
# num_orientations: the number of robot hand orientations to evaluate
# rotation_axes: the axes about which the point neighborhood gets rotated
num_samples = 100
num_threads = 4
nn_radius = 0.01
num_orientations = 8
num_finger_placements = 10
hand_axes = 0 1 2
deepen_hand = 2
# Filtering of candidates
# min_aperture: the minimum gripper width
# max_aperture: the maximum gripper width
# workspace_grasps: dimensions of a cube centered at origin of point cloud; should be smaller than <workspace>
min_aperture = 0.0
max_aperture = 0.09
workspace_grasps = -1 1 -1 1 0 1
# Filtering of grasps which are too low on (i.e. too close to) support surface (e.g., table or floor)
# filter_table_side_grasps: turn this filter on/off
# vertical_axis: the vertical axis in the point cloud frame
# angle_thresh: threshold to determine which grasps are considered to be side grasps
# table_height: the height of the support surface (along vertical axis)
# table_thresh: thresold below which grasps are considered to close too the support surface
filter_table_side_grasps = 1
vertical_axis = 1 0 0
angle_thresh = 0.1
table_height = 0.0
table_thresh = 0.05
# Filtering of candidates based on their approach direction
# filter_approach_direction: turn filtering on/off
# direction: the direction to compare against
# angle_thresh: angle in radians above which grasps are filtered
filter_approach_direction = 1
direction = 0 0 1
thresh_rad = 1
# Clustering of grasps
# min_inliers: minimum number of inliers per cluster; set to 0 to turn off clustering
min_inliers = 1
# Grasp selection
# num_selected: number of selected grasps (sorted by score)
min_score = 0.5
num_selected = 5
# Visualization
# plot_normals: plot the surface normals
# plot_samples: plot the samples
# plot_candidates: plot the grasp candidates
# plot_filtered_candidates: plot the grasp candidates which remain after filtering
# plot_valid_grasps: plot the candidates that are identified as valid grasps
# plot_clustered_grasps: plot the grasps that after clustering
# plot_selected_grasps: plot the selected grasps (final output)
plot_normals = 0
plot_samples = 0
plot_candidates = 0
plot_filtered_candidates = 0
plot_valid_grasps = 0
plot_clustered_grasps = 0
plot_selected_grasps = 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment