Skip to content

JeffreyScheck/mBEST

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mBEST: minimal Bending Energy Skeleton pixel Traversals


mBEST is a robust, realtime perception algorithm for deformable linear object (DLO) detection. The algorithm takes as input a binary mask of the DLOs from an image and produces the ordered pixel sequences for each unique DLO. The algorithm is also able to optionally produce segmentation masks.

For the dataset provided in this repo, simple color filtering is used to achieve the binary masks. For those interested in using mBEST for more complex scenes, please use the DCNN model provided by FASTDLO to obtain the initial binary mask.


Fig. 1 mBEST Pipeline Overview


Instructions

All code has been developed and tested on Python 3.6 and Python 3.8. Please install the following dependencies.

numpy
numba
opencv-python
matplotlib
scikit-image
scikit-learn
Cython

Afterwards, compile functions using the shell script as shown below.

./install.sh

Once all installation steps have been finished, run mBEST through the provided python script as shown below. The simple background with complex DLO configurations dataset used in the manuscript is provided in the dataset directory along with ground truth.

python3 run.py dataset/images/img1.jpg

Below are some results comparing mBEST with FASTDLO and Ariadne+.


Fig. 2 mBEST and SOTA comparison


Citation

If our work has helped your research, please cite the following paper.

@misc{choi2023mbest,
      title={mBEST: Realtime Deformable Linear Object Detection Through Minimal Bending Energy Skeleton Pixel Traversals}, 
      author={Andrew Choi and Dezhong Tong and Brian Park and Demetri Terzopoulos and Jungseock Joo and Mohammad Khalid Jawed},
      year={2023},
      eprint={2302.09444},
      archivePrefix={arXiv},
      primaryClass={cs.RO}
}

About

Realtime detection of DLOs via minimal bending energy skeleton pixel traversals

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 84.6%
  • Cython 15.2%
  • Shell 0.2%