Git Product home page Git Product logo

mbest's Introduction

mBEST: minimal Bending Energy Skeleton pixel Traversals



mBEST Pipeline Overview

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 as well as segmentation masks for each unique DLO.

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.

Below is a video example showcasing the realtime capabilities of mBEST against the SOTA method RT-DLO. Additional video examples showcasing more complicated cases involving numerous DLOs can be seen here.


mBEST Realtime Video Example


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 labels in the form of numpy arrays.

python3 run.py dataset/S3/images/img0.jpg

Below are some results comparing mBEST with Ariadne+, FASTDLO, and RT-DLO.


Fig. 2 mBEST and SOTA comparison


Citation

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

@ARTICLE{choi2023mbest,
  author={Choi, Andrew and Tong, Dezhong and Park, Brian and Terzopoulos, Demetri and Joo, Jungseock and Jawed, Mohammad Khalid},
  journal={IEEE Robotics and Automation Letters}, 
  title={mBEST: Realtime Deformable Linear Object Detection Through Minimal Bending Energy Skeleton Pixel Traversals}, 
  year={2023},
  volume={8},
  number={8},
  pages={4863-4870},
  doi={10.1109/LRA.2023.3290419}
}

mbest's People

Contributors

quantumope avatar structurescomp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

mbest's Issues

KeyError at "inter_indices[inter_index_dict[ind]] = False" in mBEST.py line 87

Hi guys,

I tried your Code and everything worked fine, until i tried some special own picture. The upcoming error is written in the title.
Some other Pictures of me do work fine, even if nothing gets detected, but this is because of the totally different type of wires i guess. But some Pictures also manages it to find a Rabbit-hole for "Pictures with bad/short wires" and crashes the Code at line 87.

This is more a FYI than a Question, but if you may know a solution i would take it :)

Update: this error leads in particular for streaming to a crash

THX!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.