srv/bimos

Name: bimos

Owner: Systems, Robotics & Vision, University of the Balearic Islands

Description: Binary descriptor-based Image Mosaicing

Forked from: emiliofidalgo/bimos

Created: 2016-10-07 10:14:18.0

Updated: 2016-10-10 07:29:26.0

Pushed: 2016-10-10 07:28:46.0

Homepage:

Size: 1743

Language: C++

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

BIMOS

BIMOS (Binary descriptor-based Image Mosaicing) is an open source image mosaicing algorithm which can produce seamless mosaics on different scenarios and camera configurations in a reasonable amount of time. It is based on a multi-threaded mosaicing architecture that permits decoupling the strategic steps involved in the process, speeding up the time required to estimate the final topology. In order to find the existent relations between the images, BIMOS employs OBIndex, a binary BoW scheme that is built online, allowing the use of binary descriptors to accelerate the image description process.

The algorithm can generate mosaics from sequences where consecutive frames present enough overlap between them. BIMOS assumes that either the scene is planar or the distance from the camera to the scene is high enough so as to neglect the depth changes. It is also assumed that the camera is more or less perpendicular to the scene and at a more or less constant distance. Note that BIMOS is not a solution for generating rotational panoramas.

BIMOS is released as a ROS package, and relies on OpenCV, Ceres Solver, OBIndex and Boost libraries. Note that BIMOS is research code. The authors are not responsible for any errors it may contain. Use it at your own risk!

Related publications

BIMOS was presented at ICRA conference. If you use BIMOS, we will be grateful if you cite:

Fast Image Mosaicing using Incremental Bags of Binary Words
Emilio Garcia-Fidalgo, Alberto Ortiz, Francisco Bonnin-Pascual and Joan P. Company
IEEE International Conference on Robotics and Automation (ICRA)
Stockholm (Sweden), 2016

Conditions of use

BIMOS is distributed under the terms of the GPL3 License.

Installation

This installation process has been tested and verified using Ubuntu 14.04.1 LTS and ROS Indigo, but other configurations should also work.

  1. First of all, follow the instructions to install OBIndex in your workspace.

  2. Install BIMOS dependencies:

    do apt-get install libceres-dev   
    do apt-get install libsuitesparse-dev   
    
  3. Clone the repository into your workspace:

     ~/your_workspace/src   
    t clone https://github.com/emiliofidalgo/bimos.git`   
    
  4. Compile the package using catkin_make:

     ..   
    tkin_make -DCMAKE_BUILD_TYPE=Release   
    
  5. Launch BIMOS:

    slaunch bimos bimos.launch   
    
Usage
GUI

We composed a simple rqt-based GUI to interact with BIMOS. To load the interface, open a new terminal and execute:

$ rqt   

Next, go to 'Perspectives - Import…' and open the file resources/bimos.perspective stored in the root package directory. You should see a window like this:

BIMOS Interface

The three different parts that the interface presents are:

  1. The commands that can be send to interact with BIMOS.

  2. A graph viewer to see the topology while it is estimated. This component is for debugging purposes and can introduce performance issues when building large mosaics. For more information, see the pub_debug_info option.

  3. A dynamic_reconfigure component to set the different mosaicing options. The options are detailed in the following section.

Options

Before generating a mosaic, some BIMOS options should be set according to the conditions of your dataset.

Creating a mosaic

Valldemossa

Known limitations
Contact

If you have problems or questions using BIMOS, please contact the author (emilio.garcia@uib.es). Feature requests and contributions are totally welcome.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.