CAROL Help Page




The CAROL system is an algorithmic tool for comparing 2D electrophoresis gel images. It offers two methods for comparing a source image (which possibly contains unidentified spots) to a target image (which possibly resembles a well known master image):

The CAROL system is divided into two parts: The graphical user interface allows the user to interactively load files, specify search parameters, start matching requests and evaluate the matching results. The matching requests are served by a separate program which is located on the gelmatching server The communication between these parts is established via internet sockets.

In order to start a matching request the user first has to load a source image and a target image, whereby an image consists of a .gif image file and an addtional spot file. If CAROL is run as an applet (which means: out of an internet browser) it is possible to choose between a number of sample files (database files) or to load a gif-file at an http-URL. Run as an application (which means: as a program started manually on the local computer) it is also possible to load local image files (in .gif format), spot files and it is also possible to run a spot detection algorithm.

Once two files are loaded a matching algorithm can be performed. A global matching request is not yet possible, but will be implemented soon. In order to start a local matching a pattern which is to be searched for in the target image must be specified. This is done by selecting a query region (a rectangle) in which the eight most intensive spots are marked as pattern spots. It will soon be possible to change this default pattern by adding or deleting pattern spots which subsequently will be called query points . It will also be implemented soon to set one-to-one correspondence points (landmarks). To actually start the computation the "Local Matching" button has to be pressed.

The matching results are displayed as soon as the computation has finished. There will always be computed several possible matchings between which it is possible to switch using the "prev" and "next" buttons. The results of a local matching can be examined in two ways: First the location of a matching pattern in the whole target image can be looked at (global zoom). Second the pattern in the source image and one matching pattern in the target image can be zoomed on closely (local zoom) and a click on a spot in one picture hilights the matching spot in the other picture. When finished examining the results a click on the "back" button returns to the first screen where a new matching request can be prepared. The program can be quit by closing the program window or by selecting the "quit" menu item in the "Options" menu.


A file can be loaded either as a source or target file. A source file is loaded by selecting the "source" menu and it is displayed on the left side. A target file is loaded by selecting the "target" menu and it is displayed on the right side. The source and target menus have the same entries, however they concern either the source or the target image.

There are three possibilities to load a file: A database file can be loaded by simply clicking on the abbreviated name. The filename will be shown on the statusbar below the image. A gif-file at an http-URL can be loaded by choosing the "load gif-URL" menu item. Spots will be automatically detected by the built-in spotdetection algorithm. If CAROL is run as an applet there is no other way to load a file. But if CAROL is run as an application it is also possible to load a local file (which means a file on the local computer). There are two types of local files: gif files and spot files. The gif file is an image file containing the raw gel image data. The spot file is the actual input file for the matching algorithms. It consists of (x,y) coordinates and an intensity value for each spot. It is possible to create a spot file out of a gif file by running the spot detection algorithm (choose the menu item "detect spots"). To start the matching algorithms it is necessary to either have loaded a database file (this contains a gif file and a spot file) or separately a gife file and a spot file.

The spots will be displayed by little green crosses if the checkbox "Show spots" in the source or target menu is turned on. The spots' intensities are grouped into discrete intensities where 10 is the highest and 1 is the lowest intensity. The "intensity" menu in the source and target menus specify the minimum intensity which a spot must have so that it is shown (if the "Show spots" checkbox is on). This is useful to get an overview of the spots when an image contains many spots (usually small / not intensive spots are not as interesting as intensive spots). Furthermore the images can be zoomed by choosing the zoom value in the source or target menu. Scrolling is possible using the scrollbars attached to the images.

It is possible to get more information on a specific spot by clicking on that spot using the middle mouse button (If you don't have a third button try holding down the SHIFT-button while clicking with the left button). A window will then pop up which contains the (x,y)-coordinates of that spot, the intensity and the discrete intensity that is associated with that spot.


In order to start a matching request the user first has to load a source image and a target image. Once both images are loaded it will be possible to press the "global matching" button to start a global matching request (this is not implemented yet).

In order to prepare a local matching request it is necessary to define a query pattern in the source picture. Therefore just click on the source picture and drag the mouse to create a blue rectangle (query region). When the mouse button is released the program automatically marks the most intensive spots inside the query region with red crosses to resemble the search pattern. It is necessary to choose a query region that contains at least five spots. It will be implemented soon that the preselected pattern can be edited (set query points) and that landmarks can be set (set landmarks) by selecting one of these options in the "Query Settings" menu and afterwards clicking on the desired spots. The Query Settings menu can also be shown in an own window by simply tearing it off the menu bar.

The "Show pattern" checkbox in the Query Settings menu allows to toggle between showing the automatically selected pattern or not. In the target picture it is possible to restrict the search of a local pattern to a specified search region. This search region can be selected by clicking in the target picture and dragging the mouse to create a blue rectangle. Since it is possible that mouseclicks in the pictures have different meanings (e.g. selecting a query region, selection a query point) the current mode of the picture which specifies the meaning mouse clicks have is displayed in the status bar below each picture. These modes are toggled by the different items in the Query Settings menu. A click with the right mouse button in the source or target picture deletes the last chosen setting in that mode, e.g. it deletes the just specified query region or it deletes the last query point set.

A matching request can be started by clicking on the corresponding button on top of the source picture. If the buttons are disabled the matching requests have not yet fully be specified (e.g. not both pictures loaded). Right now it is not yet possible to start a global match since this is not implemented yet. The local matching button will be enabled if both a source and a target image have been loaded and a query region has been specified that contains an at least five spot pattern.


Once the computation of the local matching results have been completed (this may take some time) the window layought changes in order to allow evaluating the results instead of preparing a request. The algorithms compute several (usually 10) possible matchings. Between these can be switched by pressing the back and prev buttons. The rank (ordering of the matchings) and the quality (number of pattern spots matched) of the current matching are displayed on top of the target image.

A local matching result can be evaluated in two zoom modi: Global and local. In global zoom the position of the matching pattern in the whole target image is displayed by a blue rectangle. When the checkbox "show all" is turned on the positions of the matching patterns of all possible matchings are displayed so that an overview of the possible matching locations is given.

In local zoom those spots in the target which match the pattern spots in the source are marked red. A click on a red spot in one picture hilights that spot and its matching partner by displaying a big red X-cross on that spot and the matching spot in the other picture. If no spot matches that spot, only the spot which is clicked on will be hilighted. With "click" is always meant a mouse click with the left mouse button. A click on a spot with the middle mouse button brings up a window with information on that spot.

When finished evaluating matching results the "back" button can be pushed to return to the beginning where another matching request can be prepared. To quit the program simply close the program window or choose the menu item "quit" in the "Options" menu.


The menu bar contains five main menu items , namely "Source", "Target", "Query Settings", "Options" and "Help". The "Source" and the "Target" menus correspond to the source and the target picture, resprectively, and have each the following entries.:

  Database file
  Local file
  Load gif-URL
  o Show spots
  o Show grid
  Redraw canvas

The "Database file" entry allows the user to load a file by clicking on the abbreviated name. A database file already includes a .gif file and spot information. When selecting the "Load gif-URL" entry a gif-file at a specified http-URL will be loaded and spots will be automatically detected. If the program is run as an applet (which means out of an internet browser) these are the only possible ways to load a file. The "Local file" entry is enabled (which means clickable) only if the program is run as an application. The "Local file" submenu contains the entries "Load gif image", "Load spots" and "Detect spots" which allow the user to separately load a .gif file or a spot file or to create a new spot file out of a .gif file by running the built-in spotdetection algorithm. The zoom at which an image is displayed (100%, 150%, 200%, 250%) can be selected in the "Zoom" entry. The "Show spots" checkbox toggles between showing each detected spot by a little green cross, or not showing the spots. In order to get an overview of the spots it is sometimes necessary (if there are too many spots) to show only the most intensive ones. The intensities of the spots have been grouped into 10 discrete intensity values(where 1 is the lowest and 10 is the highest intensity) and using the "Intensity" entry one can select the discrete intensity value a spot must at least have to be shown. A value of about 7 should be fine. The "Show grid" checkbox (checkboxes are marked by 'o' ) toggles between showing a grid on the picture or not. A click on the "Redraw canvas" entry redraws the (either source or target) picture which is sometimes necessary due to displaying problems.

The "Query Settings" menu item has the following entries:

Query Settings: 
  o Set query points
  o Set landmarks
  o Set query region
  o Set search region
  o Show pattern
  Delete query spots
  Delete landmarks

The four checkboxes above the dashed line correspond to the modes the source and target canvas (this is the space where the source or target image is displayed) can be in. For example at the beginning the source canvas is in "query region mode" which means that clicking on the canvas and dragging the mouse defines a "query region". Equivalently when the target canvas is in "search region mode" clicking on the canvas and dragging the mouse defines a "search region". When toggling the "Set query points" checkbox on, the source canvas switches to "query points mode" which means that clicking on the canvas using the left mouse button defines a new query spot and using the right mouse button deletes the closest previously defined query spot. The "Set landmarks" checkbox switches both the source and the target canvas to "landmark mode". Since a landmark is a pair of one source spot and one target spot which denotes a known one-to-one correspondence between these two spots, one spot in each picture has to be defined by mouse clicks to form a landmark pair.

When a query region is selected, the automatically selected pattern is by default shown by red crosses. The checkbox "Show pattern" toggles between showing the pattern or not. The "Delete query spots" and "Delete landmarks" entries allow to delete all selected query spots or landmarks.

Options:                     Help:
  Set parameters               Help
  Quit program

The "Set parameters" entry in the "Options" menu allows the user to set some algorithm parameters like the standard pattern size or tolerance values. A selection of the "Quit program" entry (this is equivalent to destroying the program window ) quits the program. In case of an applet this help text is displayed in the browser by clicking on the "Help" entry.


There are eight algorithm parameters that can be set by the user. The parameter setting screen appears when the "Set parameters" menu item in the "Options" menu is selected. For each parameter a describing text, the allowed range, an input field and a "default" button is given. To change a parameter just enter the new value in the corresponding input field and when finished setting the parameters push the "finished" button on the bottom of the screen. When a value which is not in the allowed range is entered, simply the old parameter value is displayed which means that the wrong value is not accepted. A click on the "default" button sets the specific parameter to its default value. The "all defaults" button on the bottom of the screen sets all parameters to their default values.


When an error occurs during program execution a red error window pops up containing the error message. There are then three possibilities to close the window: If the button "done" is pushed, the error is simply ignored. If the button "new io" is pushed a new io connection to the server process is tried to be established; this can be useful since most errors are due to a wrong io connection. The "quit" button is used to shut down the whole program.

The CAROL system is divided into two parts, namely the server process accepting and processing matching requests and the graphical user interface. A properly working io connection between these two program parts is absolutely necessary for the program to work. The server process is running on the gelmatching server at Freie Universität Berlin, Institut für Informatik. If this server is not running (which might be possible during the development phase) there is no possibility to start the user interface. Similarly an io connection error could cause a deadlock in the user interface.

The io connection is established via internet sockets. Therefore machines behind a firewall are most likely not allowed to communicate with the gelmatching server which means that an execution of the CAROL system is not possible. Proxies might as well cause the same problems. If you are behind a firewall it is possible to configure the firewall so that the connection to the gelmatching server is allowed. For more information or in the case of errors or questions please write an email to {wenk,hoffmann,kriegel}