Skip to content

OpenCV based toolbox for underwater video and image processing

License

Notifications You must be signed in to change notification settings

MecatronicaUSB/uwimageproc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

uwimageproc

Underwater Image Processing Toolbox

An open-source toolbox for underwater video and image processing that could be employed in applications such as: SLAM, seafloor mosaics, Structure-from-Motion, 3D reconstruction of underwater structures such as: shipwrecks, seabed, coral colonies and reefs, etc.

uwimageproc is a free and open source software licensed under the GNU GPLv3.0 License, unless otherwise specified in particular modules or libraries (see LICENSE and README.md).

Table of Contents

Modules list

  • videostrip Automatic frame extraction for 2D mosaic and 3D reconstruction
  • bgdehaze BG Haze removal for UW images
  • aclahe Automatic Contrast-Limited AHE (CLAHE)
  • histretch Percentile based histogram stretch w/channel selection
  • Automatic 2D mosaic generation > migrated to mosaic
  • 3D sparse and dense reconstruction > migrated to uw-slam

Each module contains information describing its usage, with (usually) some useful README file. Code documentation is expected to be provided in Doxygen-compatible format. The current release contains C/C++, Python and/or Matlab implementations.

Requirements

The current release has been developed and tested in Ubuntu 16.04 LTS 64 bits

For further installation instructions, please refer to Installation OpenCV and CUDA.

Getting Started

This repository provides an (increasing) collection of compatible, yet independent, underwater oriented modules for image and video. To start using this toolbox, proceed to the standard clone procedure:

cd <some_directory>
git clone https://github.com/MecatronicaUSB/uwimageproc.git

Then enter the desired module and compile it:

cd <module_directory>
mkdir build
cd build
cmake ..
make

Software Details

  • Implementation done in C++, Python and/or Matlab/Octave.

Contributing

Summary of contributing guidelines (based on those of OpenCV project):

  • One pull request per issue;
  • Choose the right base branch;
  • Include tests and documentation;
  • Use small datasets for testing purposes;
  • Follow always the same coding style guide. If possible, apply code formating with any IDE.

Feel free to fork, clone or join the dev team. For further information please contact J. Cappelletto ([email protected]) with the subject: uwimageproc.

License

Copyright (c) 2017-2018 Grupo de Investigación y Desarrollo en Mecatrónica ([email protected]). Released under the GNU GPLv3.0 License.