Skip to content

Object 6D pose estimation: Yolact masking + ICP Point Cloud Registration

License

Notifications You must be signed in to change notification settings

LeoBoticsHub/object_pose_estimation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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:

About

Object 6D pose estimation: Yolact masking + ICP Point Cloud Registration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages