department of informatics

An automated GUI builder for DIA algorithms

Student: Michael Bärtschi

Supervisors: Rolf Ingold, Marcus Liwicki, Marcel Würsch



Research in the field of document image analysis (DIA) is very active and there exists
a lot of good algorithms which were designed and implemented by AI research groups
all over the world. However, most of the algorithms are not accessible to stakeholders
outside of the research groups. This is a huge drawback as the possibilities of welfare
gains for the various stakeholders are enormous.
The DIVA research group (Document, Image and Voice Analysis) of the Department
of Informatics of the University of Fribourg addresses this problem by developing a
REST-Server to make their DIA algorithms accessible over the internet (DIVAServices).
Although this is a great progress, end users still have to implement and maintain their
own application in order to communicate with the REST-Server.
Therefore, the purpose of the automatic generated prototypes is to showcase the
power of the provided DIA algorithms to stakeholders outside of the domain specific
scientific community.

Scope of the thesis

Against this background, the goal of this thesis is to build an automatic prototype
builder for the DIA algorithms offered by the REST-Server. More precisely, the
prototype builder will first parse the url structure of the REST-Server. Each url
represents a DIA algorithm and will be included as a navigation item on the website.
Calling such an url returns detailed information about the algorithm, such as input
options and output format. The prototype builder will then automatically render
the input options (uploading an image, edit color and size, mark regions of interest,
etc.) and display the output in an appropriate way.
Several aspects must be considered in order to make the highly dynamic and generic
prototype builder working. First, the format of the information delivered by the
REST-server must be standardized. Second, the architecture must be as modular
as possible in order to be able to parse and render the various input and output
options for the algorithms offered by the REST-Server. And third, the architecture
should enable the DIVA group to extend the functionality of the prototype builder
in an easy and fast way.
In order to implement the previously described prototype builder, the first part of
the thesis will contain an analysis of the various available technologies in order to
find the most suitable ones with respect to the requirements described above.


  • Node.js
  • CoffeeScript
  • Angular.js


  • Define a JSON structure able to communicate all necessary information
  • Query the RESTful server to get information about available algorithms
  • Create hierarchical modular template blocks for inputs
  • Create hierarchical modular template blocks for outputs
  • Implement a mockup builder for new algorithms