Skip to content

Latest commit

 

History

History
55 lines (34 loc) · 2.5 KB

README.md

File metadata and controls

55 lines (34 loc) · 2.5 KB

object_pose_estimation

Library to perform 6D object pose estimation: Yolact masking + ICP Point Cloud Registration

Dependencies

The library contains python modules which are dependent on the following 3rd-party libraries:

setuptools, numpy, open3d, opencv-python, matplotlib

Additionally, it is necessary to install our camera_utils, ai_utils, and camera_calibration

Installation

To install the object_pose_estimation package on your system, clone the GitHub repository in a folder of your choice, open the cloned repository path in a terminal and run the following command

python3 -m pip install .

Instead if you want to install the package in "editable" or "develop" mode (to prevent the uninstall/install of the package at every pkg modification) you have can run the following command:

python3 -m pip install -e .

Usage

A PoseEstimator object provides different functions to capture object point clouds from RGBD cameras and retrieve object 6D pose using ICP registration techniques (given a model of the desired object).

  • get_yolact_pcd use Yolact algorithm to isolate the desired object point cloud from images taken by multiple cameras.
  • global_registration gets a rough alignment between the observed point cloud and the model of the desired object.
  • local_registration refines the alignment between the observed point cloud and the model using ICP (Iterative Closest Point)
  • locate_object applies the full pipeline for object pose estimation (get_yolact_pcd + global_registration + local_registration)

Some example scripts can be found inside the example folder.

A PCD_Obj_Combined object provides different functions to capture object point clouds from RGBD cameras, retrieves the pcd combined of the masked object and the centroid of the fitted plane of the upper surface of the objects (in general boxes).

  • get_yolact_pcd use Yolact algorithm to isolate the desired object point cloud from images taken by multiple cameras.
  • compute_centroid gets the 3D position of the centroid of the desired object.

Some example scripts can be found inside the example folder (i.e. test_pcd_combined.py).

License

Distributed under the GPLv3 License. See LICENSE for more information.

Authors

The package is provided by: