anatools.annotations.draw module¶
- box_2d(coordinates, bbox_img, width, outline)¶
Draws 2d boxes around objects given a list of coordinates.
- Parameters:
coordinates (list) – The list of coordinates.
bbox_img (array) – Image in form of a numpy array.
width (int) – Desired line thickness for box outline.
outline (list) – List of bgr color values for PIL color inputs.
- Returns:
Image in form of a numpy array with 2d boxes around objects.
- Return type:
array
- box_3d(coordinates, bbox_img, width, fill)¶
Draws 3d boxes around objects given a list of coordinates.
- Parameters:
coordinates (list) – The list of coordinates.
bbox_img (array) – Image in form of a numpy array.
width (int) – Desired line thickness for box outline.
fill (list) – List of bgr color values for PIL color inputs.
- Returns:
Image in form of a numpy array with 3d boxes around objects.
- Return type:
array
- check_lists(actual, expected, name_to_check)¶
Helper function that checks if one list is in another for validation on draw inputs.
- Parameters:
actual (list) – The list of actual values found in either annotation or metadata file.
expected (list) – The expected list that is provided from the user.
name_to_check (str) – Name of parameter to check (either object_id or object_type).
- Returns:
True if lists are matching, False otherwise.
- Return type:
bool
- draw(image_path, out_dir, draw_type='box_2d', object_ids=None, object_types=None, line_thickness=1)¶
This function handles the io and draws the right type of annotation on the image.
- Parameters:
image_path (str) – Path to of specific image file to draw the boxes for.
out_dir (str) – File path to directory where the image should be saved to.
draw_type (str) – Draw either a 2d bounding box, 3d bounding box, or segmentation on objects within an image. Must pass in either ‘box_2d’, ‘box_3d’, or ‘segmentation’ for values.
object_ids (list[int]) – List of object id’s to annotate. If not provided, all objects will get annotated. Choose either id or type filter.
object_types (list[str]) – Filter for the object types to annotate. If not provided, all object types will get annotated. Choose either id or type filter.
line_thickness (int) – Desired line thickness for box outline.
- segmentation(coordinates, draw_img, width, color)¶
Draws an outline around objects given a list of coordinates.
- Parameters:
coordinates (list) – The list of coordinates.
draw_img (array) – Image in form of a numpy array.
width (int) – Desired line thickness for box outline.
fill (list) – List of bgr color values for cv2 color inputs.
- Returns:
Image in form of a numpy array with objects outlined.
- Return type:
array