Skip to content

Note on Gamera 4 Package

Van Pham edited this page Aug 10, 2023 · 7 revisions

Background

Gamera-4 is a framework for building document analysis applications. Rodan uses Gamera for multiple document analyses, such as binarization jobs, connected components analysis, image conversion jobs, and staff finding jobs.

Before Summer 2022, Rodan used Gamera 3 from our own fork which only supported Python2 and has been deprecated. Since the migration in July 2022, we have moved to Gamera 4 for Python3, which contained several bugs and issues that were specific to our jobs.

We then decided to fix and install Gamera-4 from our own fork ddmal/gamera4-rodan. For more information on the differences between our fork and the official Gamera-4 repository, visit this page

Installation on Rodan

Rodan/python3-celery/Dockerfile specifies the Gamera image used (see here). For more information on how to build and manage the image and tags, refer to this page.

MusicStaves Toolkit

The MusicStaves Toolkit is one of Gamera's additional packages for document analysis problems that are too specific to be included in the core distribution. Rodan specifically uses MusicStaves for Heuristic Pitch Finding, Miyao Staff Finder and Roach-Tatem Remove Staff Lines jobs.

As of August 2023, there is no official support for Gamera-4 with the MusicStaves toolkit (i.e. MusicStaves is still in Python2). Since then we have made small fixes (mostly integers-floats-bytes type conversion) on gamera4-rodan/musicstaves in order to keep using the package with Gamera4 in Python3.

MusicStaves Toolkit is built and installed here.

Resource Types

Gamera introduces 2 resource types that are handled in Rodan: application/gamera-polygons+txt and application/gamera+xml.

Clone this wiki locally