next up previous contents
Next: Button Functionality Up: Macro Tool Previous: Macro Tool   Contents

Introduction

This macro facility is potentially very powerful, as it allows the interactive construction and storage of complex vision algorithms making full use of the flexibility of the Tina environment and algorithmic tools. These were written to support and evaluate a range of algorithm variants which can be configured and replayed using the macro facility. Macros avoid the need to write software for specific sequences of algorithm during the process of evaluation and provide a compact decription of exactly what was done in order to process data. This allows key analyses to be repeated at a later date, subject to modification of software or the need for additional results. It provides a natural way for the programmer to divide software intended for the libraries (and therefore provided on buttons) with experiment specific configurations (which can be in a macro).

Macros are particularly useful in conjuction with the Seqence Tool, as they allow functions written for operation on a single image to be applied to a sequence of images (see loop below). Macro's are editable using a simple text editor and can even be constructed from combinations of other macros.

The generated macro files are in the same, human readable, format as the tinatool replay facility and stored with the extension ``.cls" which can be edited directly if neccesary (the syntax used is immediately obvious). The macro facility can thus be regarded as an interactive language which permits the simple exchange of ideas across different computer platforms (via email if necessary) without the need for recompilation of the standard tool.

The macro syntax is deliberately simplistic. For example, it does not support logical functions, as all good algorithms are expected to be based on soft statistical decisions already built into the algorithm (see Programmers Guide). In addition, complex data interactions (such as zoom functions within a Tv) are not stored. Macros are strictly intended for configuation of the tool, variable initialisation and button presses.

The text file identified for execution is provided by the Macro File string variable. Unfortunately, the use of absolute screen co-ordinates for the represenation of user-interface position means that macros are not (and never could be) directly portable between machines running non-identical window managers or screens. This includes differences due to font sizes. Although such macros will execute (and the software should not crash), problems may be found with the sizing of windows and button placement. Therefore, if a macro is intended for demonstration purposes it is generally best to construct the macro on the machine which is intended to be used on the day.


next up previous contents
Next: Button Functionality Up: Macro Tool Previous: Macro Tool   Contents
root 2017-11-19