All Projects → wenbowen123 → Iros20 6d Pose Tracking

wenbowen123 / Iros20 6d Pose Tracking

Licence: other
[IROS 2020] se(3)-TrackNet: Data-driven 6D Pose Tracking by Calibrating Image Residuals in Synthetic Domains

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Iros20 6d Pose Tracking

Ros robotics projects
Example codes of new book ROS Robotics Projects
Stars: ✭ 240 (+112.39%)
Mutual labels:  robotics, robot, tracking
Articulations Robot Demo
Stars: ✭ 145 (+28.32%)
Mutual labels:  robotics, robot, manipulation
Visual Pushing Grasping
Train robotic agents to learn to plan pushing and grasping actions for manipulation with deep reinforcement learning.
Stars: ✭ 516 (+356.64%)
Mutual labels:  robotics, manipulation, 3d
Robot Gui
A three.js based 3D robot interface.
Stars: ✭ 181 (+60.18%)
Mutual labels:  robotics, robot, 3d
icra20-hand-object-pose
[ICRA 2020] Robust, Occlusion-aware Pose Estimation for Objects Grasped by Adaptive Hands
Stars: ✭ 42 (-62.83%)
Mutual labels:  robot, manipulation, pose-estimation
Pytorch Dense Correspondence
Code for "Dense Object Nets: Learning Dense Visual Object Descriptors By and For Robotic Manipulation"
Stars: ✭ 445 (+293.81%)
Mutual labels:  robotics, manipulation, 3d
Pose Interpreter Networks
Real-Time Object Pose Estimation with Pose Interpreter Networks (IROS 2018)
Stars: ✭ 104 (-7.96%)
Mutual labels:  robotics, 3d, pose-estimation
Mabel
MABEL is a feature-packed, open-source, legged balancing robot based off of the Boston Dynamics Handle robot.
Stars: ✭ 72 (-36.28%)
Mutual labels:  robotics, robot
Votenet
Deep Hough Voting for 3D Object Detection in Point Clouds
Stars: ✭ 1,183 (+946.9%)
Mutual labels:  robotics, 3d
Stag
STag: A Stable Fiducial Marker System
Stars: ✭ 75 (-33.63%)
Mutual labels:  robotics, pose-estimation
Ros Openpose
CMU's OpenPose for ROS
Stars: ✭ 81 (-28.32%)
Mutual labels:  robotics, pose-estimation
Toronto 3d
A Large-scale Mobile LiDAR Dataset for Semantic Segmentation of Urban Roadways
Stars: ✭ 69 (-38.94%)
Mutual labels:  dataset, 3d
Icse Seip 2020 Replication Package
Replication package of the paper titled "How do you Architect your Robots? State of the Practice and Guidelines for ROS-based Systems" published at ICSE-SEIP 2020
Stars: ✭ 68 (-39.82%)
Mutual labels:  robotics, dataset
Gopigo3
The GoPiGo3 is a Raspberry Pi Robot!
Stars: ✭ 74 (-34.51%)
Mutual labels:  robotics, robot
Frustum Pointnets
Frustum PointNets for 3D Object Detection from RGB-D Data
Stars: ✭ 1,154 (+921.24%)
Mutual labels:  robotics, 3d
Ev3dev Lang Java
A project to learn Java and create software for Mindstorms Robots using hardware supported by EV3Dev & the LeJOS way.
Stars: ✭ 79 (-30.09%)
Mutual labels:  robotics, robot
Sophus
C++ implementation of Lie Groups using Eigen.
Stars: ✭ 1,048 (+827.43%)
Mutual labels:  robotics, 3d
Spatialmath Python
Create, manipulate and convert representations of position and orientation in 2D or 3D using Python
Stars: ✭ 78 (-30.97%)
Mutual labels:  robot, 3d
Icub Main
The iCub Main Software Repository
Stars: ✭ 86 (-23.89%)
Mutual labels:  robotics, robot
Robotics setup
Setup Ubuntu 18.04, 16.04 and 14.04 with machine learning and robotics software plus user configuration. Includes ceres tensorflow ros caffe vrep eigen cudnn and cuda plus many more.
Stars: ✭ 110 (-2.65%)
Mutual labels:  robotics, robot

iros20-6d-pose-tracking

This is the official implementation of our paper "se(3)-TrackNet: Data-driven 6D Pose Tracking by Calibrating Image Residuals in Synthetic Domains" accepted in International Conference on Intelligent Robots and Systems (IROS) 2020. [PDF]

Abstract: Tracking the 6D pose of objects in video sequences is important for robot manipulation. This task, however, introduces multiple challenges: (i) robot manipulation involves significant occlusions; (ii) data and annotations are troublesome and difficult to collect for 6D poses, which complicates machine learning solutions, and (iii) incremental error drift often accumulates in long term tracking to necessitate re-initialization of the object's pose. This work proposes a data-driven optimization approach for long-term, 6D pose tracking. It aims to identify the optimal relative pose given the current RGB-D observation and a synthetic image conditioned on the previous best estimate and the object's model. The key contribution in this context is a novel neural network architecture, which appropriately disentangles the feature encoding to help reduce domain shift, and an effective 3D orientation representation via Lie Algebra. Consequently, even when the network is trained only with synthetic data can work effectively over real images. Comprehensive experiments over benchmarks - existing ones as well as a new dataset with significant occlusions related to object manipulation - show that the proposed approach achieves consistently robust estimates and outperforms alternatives, even though they have been trained with real images. The approach is also the most computationally efficient among the alternatives and achieves a tracking frequency of 90.9Hz.

Applications: model-based RL, manipulation, AR/VR, human-robot-interaction, automatic 6D pose labeling.

Bibtex

@conference {wense3tracknet,
	title = {se(3)-TrackNet: Data-driven 6D Pose Tracking by Calibrating Image Residuals in Synthetic Domains},
	booktitle = {IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
	year = {2020},
	month = {10/2020},
	address = {Las Vegas, NV},
	url = {http://arxiv.org/abs/2007.13866},
	author = {Wen, B. and Mitash, C. and Ren, B. and Bekris, K. E.}
}

Supplementary Video:

Click to watch

Results on YCB

About YCBInEOAT Dataset

Due to the lack of suitable dataset about RGBD-based 6D pose tracking in robotic manipulation, a novel dataset is developed in this work. It has these key attributes:

  • Real manipulation tasks

  • 3 kinds of end-effectors

  • 5 YCB objects

  • 9 videos for evaluation, 7449 RGBD in total

  • Ground-truth poses annotated for each frame

  • Forward-kinematics recorded

  • Camera extrinsic parameters calibrated

Link to download this dataset is provided below under 'Data Preparation'. Example manipulation sequence:

Current benchmark:

More details are in the paper and supplementary video.

Dependency

Create your anaconda environment by conda env create -f environment.yml

Then source activate bowen

Data Download

  1. YCB_Video dataset
  2. data_organized (15G). It is the reorganized YCB_Video data for convenience. Then extract it under your YCB_Video dataset directory, e.g. YCB_Video_Dataset/data_organized/0048/
  3. YCBInEOAT dataset (22G)
  4. Our pretrained weights on YCB_Video and pretrained weights on YCBInEOAT
  5. Our generated synthetic YCB_Video training data (~15G for each object) and synthetic YCBInEOAT trainnig data (~15G for each object)
  1. se(3)-TrackNet's output pose estimations of YCB_Video and se(3)-TrackNet's output pose estimations of YCBInEOAT

Prediction on YCB_Video and YCBInEOAT

Please refer to predict.py and predict.sh

Benchmarking

Please refer to eval_ycb.py and eval_ycbineoat.py

Training

  1. Edit the config.yml. Make sure the paths are correct. Other settings need not be changed in most cases.
  2. Then python train.py
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].