Home

Roy Schestowitz

Using AART


Under Construction

Manual with screen-shots and pointers will go here. Currently I have just the skeleton.

For a demonstration of most functionality AART offers its users, see the demonstration page. This can be considered as a quick tutorial or application tour.

The following notes aim to explain with some background how the application is run and how to make the most out of it.

AART is rather slow at present as it is interpreted rather than run after a compilation phase. The UI is heavily based on Java and closure of the application might require several seconds for GC to take its toll. AART was custom-built for Linux, but it works perfectly well under Microsoft Windows although some of its functionalities are then disabled.

Running AART

Command-line

Assuming Linux is the platform adhered to, in order to start the application, MATLAB needs to be invoked although scripts exist which run it from command-line. The script

mbr

will run the application and set its run-time directory to be suitable. For editing, the script

mb

should be used. It will open the main source code files as well as the main GUI window for editing. This should only be used for development and extension purposes.

MATLAB

There is an M-file called

AART

and it needs to be called with no arguments to start the application.

Package Structure

Section 2 dealt with the intrinsic structure of AART and the more technical details. The page on Non-rigid Registration provides information about the dynamic strueture of the package (as it frequently changes), but the rest of this section elaborates on information that is worth mentioning and is merely immutable.

Imported data that has originated from the ISBE MATLAB repository has been put under /Repository and various other directories which include files written by others are labelled by surnames. The rest of the directories have names that should be self-explanatory and, again, the more technical pages as well as the help can explain which function do what.

Performing Experiments

Once AART has been run, the main window will be displayed. The layout of this window is not yet fixed, so a generic explanation follows which does not point at specific items, their location and some of their other properties.

AART is concerned with registration of data, It aligns data vector using a set of different methods and measures. For deformation of data -- that is -- the manipulation of data points is performed predominantly using the Clamped-plate Spline which was developed by Marsland and Twining. It provides a one-to-one mapping of data points which is immune to folding and tearing.

To control the deformation which is described above, a set of transformation options have been made available to the user. CPS splines include a single-point transformations and multi-point transformations. Transformation is which is also referred to as 'warp'. The number of knot-points which define the deformation curve (or plane) affects the flexibility of data manipulation and a clear trade-off between warp complexity and time holds. Therefore, simpler warps result in a higher number of iteration per time. Knot-points can be placed according to various different schemes and there is a distinction between placement methods for multi-point warps and these of single-point warps. Placement methods can accommodate for adaptation to a specific data pattern, but if no data-bias is required, general methods such as random placements are available as well.

Warps can be applies to initialise the data at a point which is considered to be a convergence point. An additional window of option can affect such initialisation to perturb it slightly so that it drifts away from convergence.

The objective function defines the means by which a solution is searched for and the way by which a good solution is estimated.Various objective functions are incorporated including hybrid combination of methods. The objective function of most value is the appearance-based objective function that uses appearance models. It is also the focus of the application that contends to prove the advantages of this method.

Data in AART is a flexible issue. Data can be loaded from files or it can be exported from existing sets that are put under ./Data. Most commonly, data is generated in real-time and different schemes exist for generating such data. At present, a bump which is a half ellipse is used and the controllers available in AART make the appearance of these more manageable.

Registration can be invoked by pressing the obvious button or selecting the relevant menu entry. Pausing and resuming registration processes is also possible if graphical representations are present. Viewing modes should be self-explanatory, but more details on these might be included in the future.

Movie Capture

One of the more useful features of AART is its ability to show the progression of registration off-line. This can be of great use when trying to analyse the performance of registration at all the different stages and not only the view of registration at the very end.

To save a video as an AVI file (compressed in Window$, not compressed in Linux), an output type must be selected with extra options set where appropriate. The number of frames can be adjusted as well to allow analysis to be performed adequately. Please note that movies will only be formed at the end of registration and frames that are captures should not be subjected to user interference. he problem is exacerbated when MATLAB of version earlier than 6.5 is used and frames should not be obscured by other windowed tasks.

Automation

To perform similar experiments autonomously and yet change the value of individual parameter at each stage, an extra capability has been added. It allows experiments to be performed without the user's need to repeatedly invoke them and at each stage, a parameter of choice will shift within a range.Results will be recorded as described below.

Logging

At the early stage of development and research, much manual work was needed to record results for future use and archiving. Consequently, time was consumed doing trivial tasks and automation became highly desirable.

Console-based on-screen logs have been available for a long time, but they adapted and became text based file logs which then turned into hyper-linked HTML files. By default, such logging facilities are switches on. Also, all figures of importance are saved and referred to from HTML files so that a complete documentation is automatically generated.

There are several steps that usually follow the process in order to make the process available on-line. This varies from time to time, but Unix public-html can be the destination of all generated log files. The index is intended to be independent, but division to separate logs is advised so that a series of long is not too heavy to load.

Model Viewing

It is possible to view the appearance model (a combined model) and the shape and intensity model crated from the data at each iteration or at the end. For practical interpretation, an understanding of the field is required and papers from Cootes and Taylor are a source of choice.

Smoothing

Smoothing is an extra option that affects the data generated. It is not an overly sophisticated feature, but it may be of use when analysing different sets of data with more or less sharp edges.

Model Weight

An understanding of appearance models is necessary to adjust the ratio between shape and intensity and different methods exist for setting this ratio automatically rather than it being a fixed real value.

Exit Options

For convenience, different ways exist for existing the application and dismissing experiments. Apart from the abort options, it is possible to close AART or the whole of MATLAB altogether. Also, it is possible to request for such actions to be invoked once registration is completed.

For more information, see the Non-rigid Registration page. It appears that better understanding of appearance models and image registration can aid the use of the application. explain which options to set in which order and what each of these means. give examples. explain about the process of plot and pixel generation. sign page with credits and support E-mail address.


This page was last modified on February 1st, 2004 Maintained by Roy Schestowitz