Skip to content
This repository contains python software pertaining to automated AO image mosaicing, as presented in Biomedical Optics Express 2018.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Fast auto-montager using ORB

This repo contains an implementation of the method described in this paper. Please cite the paper if you use the code.

author = {Benjamin Davidson and Angelos Kalitzeos and Joseph Carroll and Alfredo Dubra and Sebastien Ourselin and Michel Michaelides and Christos Bergeles},
journal = {Biomed. Opt. Express},
keywords = {Image processing; Image quality; Ophthalmic imaging; Optical imaging; Scanning laser ophthalmoscopy; Wavefront aberrations},
number = {9},
pages = {4317--4328},
publisher = {OSA},
title = {Fast adaptive optics scanning light ophthalmoscope retinal montaging},
volume = {9},
month = {Sep},
year = {2018},
url = {},
doi = {10.1364/BOE.9.004317},

Getting Started

To install and use requires:

  • Python 3
  • pip


  1. Download the git repository to a folder of your choice, /path/to/code/autoMontager

  2. Install Python package using pip. Ubuntu: pip install /path/to/code/autoMontager; Windowspython -m pip install /path/to/code/ConeDetector


  • Run the tool from the command line after installing via


  • Super fast!
  • Will output photoshop .jsx scripts which should be run from photoshop
  • Will put multiple FOV images into a single montage, after appropriately resizing

To Use

  • Enter movie numbers, movie nominal positions, and movie fovs into an .xlsx (excell) file as in the provided template
  • Run the tool from the command line
  • Use the GUI to enter the required info and run
  • Go to photoshop and run the script generated by the tool


  • Output disjoint montage pieces to same document
  • Replace numpy interpolation with OpenCV for visualisations without Photoshop
  • Use multiprocessing for even faster montaging.
You can’t perform that action at this time.