Está en la página 1de 41

1

| Krokoz

ECTtracker v15.4.x
User Guide

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page2

About ECTtracker
ECTtracker (EyeComTec Tracker) is an eye-tracking software which identifies visible actions
performed by the user. It is mainly used to monitor the state of the users eyes (open or closed) but can also
track the eyebrows or mouth. This software can be used in conjunction with different video capturing
applications for web cameras or other devices connected to a PC (e.g. ECTcamera, Skype, Media Player
Classic). ECTtracker compares different states of the user's eyes with assigned key codes, which can be
further transmitted to any receiving application (ECTmorse, ECTkeyboard and many others). Software is
extremely flexible and adjustable, as well as portable, and can be personalized for use for any specific user
and the performance of a computer. In fact, ECTtracker is an alternative to smart computer vision
realization.
Unlike many others similar in functionality programs, ECTtracker analyzes images using a special
Matrix of Samples, which is unique for any specific user and environment (camera position, illumination,
etc.). The program can be used by fully paralyzed patients and those who suffer from some form of impaired
mobility. ECTtracker provides assured tracking of visible activity, even for those patients with physical
damages of their face, injuries, burns and other post-operative/accidental states.
The software is fully customizable. The user can set an image recognition structure, matching levels
between images and samples, video processing speed (in frames per second), idle time for cases when
there's no image, and there are also emulated key codes to be transmitted into third-party receiving
applications. The software contains more than 45 different parameters, which can be used to change
appearance and functionality of ECTtracker. Some parameters allow the user to lower computing
requirements, providing stable work even on computers with low performance levels.
ECTtracker has convenient interface and reach functionality for proper and precise setting and
debugging. Initial setting procedure is simple due to its auto-calibration feature. Furthermore, ECTtracker
supports various localizations, allowing patients to use the software in their own language.
ECTtracker is a highly practical and convenient application due to its ability to adapt to the physical
condition of the user, different environments and computer system resources. A flexible setting process and
an unlimited amount of user accounts makes it possible to use the application in any case.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page3

(fig. 1. Main interface of the program)

You can see the standard interface of ECTtracker on the image above. The numbers show various
elements of the interface:
1 main window of ECTtracker, which shows the processed part of an image, coordinate tracking net and
statistic fields;
2 grab-form, or so-called "target window" which allows the application to capture part of the image for
analysis. In this example, grab-form is located above the active window of ECTcamera the application for
video streaming;
3 the Matrix of Samples the special table of the ECTtracker application, which contains small
snapshots showing the users eyes in different states (both eyes open, closed, or only one eye is open).
During its operation the software compares samples and the current image identifying the users state of
eyes.
4 debug window with graphic indicators. By changing the color of the stripe, the software clearly shows
which sample corresponds with the acquired image. This window is used during the initial setting of
ECTtracker and during determination of tracking quality;
5 program log, which contains information about all the important actions and events. The log contains the
date and time of tracking start and stop, structure selection and other data. All the information can be
exported to a text file;
6 the ECTtracker settings window, which contains all the parameters with a short description for each.
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page4

(Fig. 1. The main interface of the program; with an alternative placement of elements)

(Fig. 1b. The main interface of the program; Main window, ECTcamera, Matrix of Samples, Debug Lines, Event Log)

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page5

Advantages of using of ECTtracker


ECTtracker has a number of significant advantages over other software solutions with similar
functionality:
adaptation of the program to specific needs and the physical condition of each individual user.
ECTtracker can work with both fully paralyzed patients and patients with various disorders of
motor activity;
perfect trainability. The program allows you to work in any environment: camera position, lighting,
and user position. ECTtracker tracks eye state by comparing it with saved samples, providing high
quality of tracking and stable work;
unlimited amount of configurations. The program makes it possible to save configurations into
separate files and switch between them quickly when needed. The small size of such files allows
ease of storing them on any portable device and share using e-mail;
portability and small size of the program allows running it from any external media device.
ECTtracker does not require installation and does not make changes to the registry of the operating
system;
rich customizability and average technical requirements. ECTtracker provides stable work, even on
computers with low performance, due to high configurability of tracking algorithms and graphical
user interface;
localizations. The program supports various languages of interface, which provides high level of
comfort and allows users to work using their own language;
simple and intuitive interface allows users to quickly familiarize with the program and change all
settings easily.
The main feature of ECTtracker is the adaptation to the physical abilities of the user. The program
can be used by both fully paralyzed patients and those who suffer from uncontrollable muscular activity
(tremors, tics, etc.). In case of contrast marker usage, ECTtracker provides excellent quality, even for those
patients with physical damages to the face: wounds, burns, singed eyelashes, postoperative eye conditions,
and so on. The program has the ability to change the matching level between analyzed images and samples,
as well as offering a wide selection of structures and other parameters which allow the user to adjust
ECTtracker for their specific needs and provides optimal tracking results.
The favorable difference of ECTtracker in comparison with similar software is its perfect
trainability, which allows users in any state to work with the program. The tracking algorithm of
ECTtracker works independently to the position of the user, lighting or technical parameters of the
computer. Nowadays most algorithms are made to be universal and normally their analysis is based on
finding light and dark areas of the image, while ECTtracker allows creating a base of samples for tracking,
which are unique for any user and environment (lighting or camera position). Such high level of trainability
provides high quality of tracking in almost any case. ECTtracker keeps working, where other solutions fail
(unable to identify human face or track eyes). As a result, the user can work with a virtual keyboard more
confidently and faster, becoming less stressed at the same time. Furthermore, ECTtracker allows the user to
enter symbols not only by eye blinking, but with any clearly visible movement or gesture. This feature can
be used by patients suffering from most known types of physical disabilities.
All changes of settings performed by user can be saved as separate configuration files, making it
possible to change such files "on the fly", allowing different users to work on the same machine.
Recognition structures and personal settings are adjusted for specific needs of each user. The program
allows creation of an unlimited amount of settings profiles, while small sizes of files allows ease of sending
them through email or share in other ways.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page6

Portability and the small size of the program allows ease of running ECTtracker from any external
media device. ECTtracker does not require installation and does not make changes to the registry of the
operating system.
Information fields of the main window of the program, an additional debugging window and a
detailed event log are handy features for fine-tuning. Simultaneously, all debugging elements can be
disabled during normal operation of the program. The ability to reduce the amount of processed frames per
second can reduce the load on the processor and other system resources of the computer. This allows
adjusting ECTtracker for comfortable and smooth operation, even on computers with low performance.
A simple and user-friendly interface allows performing initial configurations quickly and begin
working immediately with ECTtracker. All the basic functionality of the main menu is duplicated with "hot
keys" for quick access. In addition, ECTtracker supports different localizations, allowing users to work with
the program in their native language.
Configuration of ECTtracker does not take long. In case of change in light conditions or body
position, the user can quickly create new samples for tracking by using the auto-calibration feature. There is
no need to delete old samples, because the program allows an unlimited amount of settings profiles and
several Matrix of Samples.
All these features provide extreme flexibility in configuration and operation of ECTtracker.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page7

ECTtracker Getting Started (First Run)


In order to provide a proper analysis of the image by program, it is necessary to first calibrate it and
fill the Matrix of Samples. It is also necessary to change several parameters depending on the physical
characteristics of the patient and performance of the computer. This is especially important during the first
start of the application.
The initial setting procedure of ECTtracker and further work with the program includes the following
stages:
1. Starting the program, loading user settings if necessary.
2. Selection of recognition structure.
3. Image source setting and grab-form positioning (the user manual will describe the setting and use of
ECTtracker in conjunction with ECTcamera).
4. Automatic or manual calibration of ECTtracker (filling the Matrix of Samples).
5. Setting any receiving programs, assigning key codes and actions, as well as some additional parameters.

Starting the program and selection of recognition structure


To begin working with the program you need to launch the eye-tracking application by opening the
ECTtracker.exe file.
If you need to use a previously saved settings profile then you should select "Profile" "Load
Settings" menu item after starting the program and choosing the desired cfg-file in the window of the
program (see fig. 2). All changes are applied after selecting a new configuration file.

(fig. 2. Loading configuration file for ECTtracker)

After doing so (only if it is necessary, because the type of recognition structure is already predefined
in the selected configuration file) you have to select the recognition structure for one eye only or for both
eyes. Selection can be done through choosing "Samples" - "Open Structure" menu items. Recognition
structures differ in positions of key points, which are used during comparison of saved samples and current
frames from the video source. Different structures are shown in figure 3. We have to also mention that
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.
Page8

different structures allow us to identify user selection - not only by eye state, but by using other actions.
Such actions include eyebrows or lips movements, finger moving away from the source image and bringing
it back in to the image after a short while - in other words, they include any clearly different states of one
object. Here, and after in this manual, we focus primarily on the tracking of the eyes, since in most cases
this organ remains capable of performing visible actions.

(fig. 3. Different recognition structures)

The main principle for structure selection is to put the maximum amount of key points above any
fragment of the image with a maximum amount of visually distinguishable changes. The key points of the
structure, located above the static area of the frame, increase total load on the system and negatively affect
tracking quality.

Selecting image source and setting up grab-form


Before tracking, you will have to predefine the image source in ECTtracker. If the program is used
with software which acquires video from a web camera or any other device, this software will have to be
started first. If the program works with already recorded video, it is necessary to open the media player
window first. This user manual describes ECTtracker and ECTcamera software working in conjunction.
ECTcamera is an application, intended to use with a web camera on a laptop or any removable camera
which can be connected to a personal computer.
To provide the correct display of the video fragment from the ECTcamera window, it is necessary
to place the target window (grab-form) in the correct way. During the launch of ECTtracker you can see a
separate black rectangle - a target window (also called a grab-form), which is intended for video capturing
and transmitting frames into the program. To set up video capturing it is necessary to move the target
window above the source application showing the video (see fig. 4). Please note that in the video window of
ECTtracker the key points of the structure have to cover the maximum possible changeable area of the
displayed image.

(Fig. 4. Capturing video fragment using target window)

After structure selection and correct setting of the grab-form above the captured image, a table with
samples for program operation and correct image tracking must be either created or loaded. If a table has
been previously created, it can be loaded by using:
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page9

a) "Samples" "Load Matrix of Samples" menu items, in case the Matrix of Samples was saved
as one file;
b) "Samples" "Import Matrix of Samples" menu items, in case all samples were exported as
separate files.
If there is no Matrix of Samples created, this has to be created in manual mode or by using the
automatic calibration feature.

Automatic calibration
Automatic calibration involves script, which shows auxiliary images with various eye states (both
eyes open, only right eye open, only left eye open, both eyes closed). You will have to follow such images
and close one or both eyes in accordance with the image on the screen. Different examples of such images
are shown in figure 5 below.

(fig. 5. Auxiliary images for automatic calibration)

In accordance with the selected script, images are going to be shown in different parts of the screen.
Imagine that the screen is divided into 9 different regions, and each corresponds to one possible gaze-point
of the user (see fig. 6). The program will create different samples for each position and eye state. Such a
method is necessary for the program to work correctly, regardless of which part of the screen you are
looking at.

(fig. 6. Various positions of auxiliary icons)

Parameter 48 of the ECTtracker settings panel allows a file to be selected with an auto-calibration
script. Functionality of scripts can be determined by the name of the file because it contains a special symbol
encoding. The number before S is the quantity of eye states that are going to be displayed during the autocalibration. The number before P is the quantity of different positions of the icon on the screen. And the
number before M is the quantity of rows in the Matrix of Samples
1st example: if you select Eye_2S5P2M.dat script, you will see icons with open and closed eyes. The icon is
going to be shown in 5 different screen positions (center, upper left corner, upper right corner, lower left
corner and lower right corner). Calibration will fill 2 rows of the Matrix of Samples.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page10

2nd example: if you select Eye_4S5P4M.dat script, you will see icons with four possible states of eyes (both
eyes open, right eye open, left eye open, both eyes closed). The icon is going to be shown in 5 different
screen positions. Calibration will fill 4 rows of the Matrix of Samples.
Thus, it is possible to select the type of auto-calibration that fits the needs of the user, for example, if
the user can move only one eye, it can be useful to load the script that provides two sample types - one open
eye and one closed eye (in such case you have to put the grab-form only above one working eye). If the user
can blink with both eyes, then it can be useful to load the script for 4 eye states.
To start the calibration process, select "Samples" "Autocalibration" menu item or press the F6
button. You will see images with a countdown timer sequentially. There is a sound at the end of each time,
after which the program saves the sample and goes to the next image. The calibration procedure allows
creating the Matrix of Samples in fully automatic mode.
Some results of auto-calibration may not have good quality due to:
significant image shift after head movement, if the user is able to move their head;
indistinct pictures due to eye movement, blinking, head rotation, etc.;
graphic artifacts and shadows in case of insufficient lighting from the camera.
In such cases you can erase the Matrix of Samples using "Samples" "Erase Matrix of Samples"
menu item, and re-calibrate, providing proper conditions for the process.

Manual Calibration
You can select samples for the Matrix of Samples in manual mode. Using this feature you can
replace samples of bad quality received during auto-calibration, without re-calibration. When possible, it is
recommended to select all samples in the manual mode.
The Matrix of Samples of ECTtracker can be filled using two ways:
1. Create samples with a closed eye (usually 2 samples are enough when the program set up correctly),
add them into the first row of the Matrix of Samples. Create a sample with an open eye (one sample
is enough) and add it to the second row of the Matrix of Samples. Then specify key codes and action
codes (press or release) by filling in parameters 60 and 61 of the settings panel. By default,
parameter 60 has "32 1" value, which means "press space button" and parameter 61 has "32 2" which
means "release space button". You can find more information about key codes and actions in the
"Settings and additional parameters of ECTtracker" section of this manual.
2. Create a sample for a closed eye and add it to the second row of the Matrix of Samples. Set the key
code and action code by filling in parameter 61 (by default it has "32 1" value, which means "press
space button"). Specify a value for parameter 59 (by default it has "32 2" value, which means
"release space button"). Parameter 59 predefines the key code and action code in case ECTtracker
is not able to find at least one corresponding sample. Therefore, the program can work using only
one sample with an open eye! This feature simplifies the operation of ECTtracker and speeds up the
initial settings process.
To begin creating the Matrix of Samples, the tracking process has to be running. The tracking can be
launched by clicking on the "Start" menu item or by pressing the F11 button. Calibration should be done
using the mouse. To select a potential sample, right-click on the video screen. Doing this will freeze it at the
current frame. Note that the created sample is always centered around the point of the click (see fig. 7).
Another right-click on the image inside ECTtracker window will update the current frame. Left click will
cancel the selection and enable the video capturing process again.
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page11

(fig. 7. Selection of the image for the Matrix of Samples filling)

6. After selecting a good sample, you must then add it to the Matrix. To do so, click with any button on a
desired cell of the Matrix of Samples. The sample is going to appear in the Matrix. In case the selected
cell already contains a sample, it will be replaced without any additional confirmation. The appearance
of Matrix of Samples window is show in figure 8.

(fig. 8. Full Matrix of Samples. To the right - operation of the program with one sample and parameter 59)

Important information! Proper Matrix of Samples is necessary for correct image tracking.
Accuracy of the current state of the eye depends on the initial setting process. With proper calibration, the
user will be able to work longer with the matrix of letters, making a low amount of mistakes and typing
lengthier messages with less fatigue.
Guidelines for creating the Matrix of Samples:
click on the center of the pupil during the sample selection. This is very important because
further tracking stabilization is based on doing this correctly;
the first row of the Matrix of Samples is created for samples with open eye, whereas the second
is created for samples with closed eyes. In any other case it is necessary to correct the transmitted
key codes (parameters 59-64);
it is recommended to use no more than 2 samples of images with open eyes. One sample is more
than enough for closed eyes (see fig. 7);
If it is possible, the user has to look at the camera. ECTkeyboards virtual keyboard window
should be positioned on the screen closest to the physical location of the web camera;
The size of main window of ECTkeyboard and the distance between the user and the display
have to be selected in such a way that the pupil moves as little as possible during working with
the program. If the user is located too far from the display, it is possible to change font size
without changing size of elements in the Matrix;
It is recommended to use only ECTcameras functionality to change scale or position of the
image;
light source has to be placed in such a way that it avoids excessive shadows on the users face.
You can dim all of the light that produces shadows on the analyzed region and place an
additional source of light next to the display (e.g. LED-torch).
You can find more detailed recommendations, full description, diagrams and illustrations in the
"Hints and additional recommendations for ECTtracker users" chapter.
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page12

Completing the configuration


To complete the initial setting process of ECTtracker, you also have to select the following
parameters in the settings panel of the program (you can open this using "Profile" "Show Settings" menu
item or by pressing F2 hot key):
a) Parameter 10 has to contain the next value: ECTkeyboard, which is the name of the main
window of Symbol Matrix. ECTtracker will transmit key codes into that program.
b) Parameter 1 is the matching level of the sample and analyzed image. It is recommended to
decrease this value if the ECTtracker program is not able to find any corresponding sample
during operation. If the program finds more than one sample it is recommended to increase the
value. Depending on the camera, lighting levels and other parameters, the optimal value of the
wlim stays in the range from 18 to 35. The default value is 25.
c) Parameter 5 is the maximum shift of the sample relative to the analyzed image. ECTtracker
searches for matching images, not only in the initial position of the image, but also in the area
around the image. This parameter is necessary to provide correct operation of the program in case
of insignificant movements, inclination and rotation of the head, when the user retains partial
motor activity (or suffer from uncontrolled movements such as tremors or ticks). The default
value is 3.
d) Parameter 4 is the frames per second rate, shown in the video window of ECTtracker. The higher
this value is, the more often the image is updated. As a result, the quality of tracking increases, as
well as requirements to computer resources. The parameter can stay in the range of 1 to 60 and
the default value is 20.
e) Parameters 24 and 25 are the width and height of the target window (grab-form). The default
value is 140 and 160, respectively. If the user makes insignificant movements, the analyzed
image can disappear from the grab-form view. Usually this happens when the zoom function is
significant increased. In this case it is recommended to increase these parameters to keep all
possible movements within the limits of grab-form.
f) Parameters 59-64 are key codes and action codes. These fields indicate key codes, which are sent
to any receiving software when an image of the ECTtracker window corresponds with one of
the saved samples. They also indicate performed actions (press key, release key, press and
release key).
When configuration of all desired parameters are completed, the recognition structure has been
chosen, the analyzed area of the video using the target window has been selected and the Matrix of Samples
has been created, ECTtracker can be started. To start the operation of the program, select the "Start" item
of the main menu or press the F11 button.
A comparison of analyzed images and samples from the Matrix is performed for each frame
coordinates the centers of samples exceeding the predetermined matching level (wlim parameter) which are
shown in the list of the recognized samples in main program window. Information about samples with the
maximum matching level is shown in the information field of ECTtracker.
The program determines the most appropriate sample for the current image. Corresponding samples
are highlighted in red in the Matrix of Samples. Depending on the row of the sample, the program selects a
predefined key code and action, which are then sent to the receiving software. In the case where no samples
correspond with the current image, the program performs the action, predefined in parameter 9 of the
settings panel. If parameter 9 has a C value (search samples from the center part), ECTtracker moves the
search point to the center of the analyzed image and resumes the search process in a short while. If this
parameter has an F value (search samples starting from last coordinates, where a match was found), the
program will search sample in the limits of the last match zone. The amount of frames to skip when no
corresponding samples are found can be specified in parameter 6 of the settings panel.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page13

ECTtracker main menu and features


All items of the ECTtracker main menu are conveniently grouped: start and stop of image tracking;
load and save user settings; load and save samples (including auto-calibration feature); show or hide
additional items of the main window of the program; select localization; and exit ECTtracker. You can see
the appearance and interface of the program menu in figure 9.

(fig. 9. Main window of the program)

Let's look closer at the menu items.


"About" (F1) button. This menu item contains information about ECTtracker such as version, date
of release, a short description and information about the developers (see fig. 10 below).

(fig. 10. ECTtracker information window)

"Start"/"Stop" (F11) button. During the first startup of the program, the settings profile will need to
be selected and adjusted, if necessary, as well as created or loaded from any file from the Matrix of Samples
for tracking. Therefore the image tracking function is turned off by default. In order to use this, the "Start"
item in main menu of ECTtracker will need to be selected. In the case where the tracking process is already
running and the program settings need to be adjusted, other samples need to be selected or tracking needs to
be paused, the "Stop" item of the main menu can be utilized. Parameters can also be adjusted while tracking
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page14

is performed because it will stop automatically in case changes are made followed by the "Set Current"
menu item selection (set current settings).

"Profile" submenu
By using the "Profile" submenu (see fig.11) the ECTtracker settings panel, the load and save user
settings, apply new settings after adjustments, and reset settings to their initial state is shown.

(fig. 11. Submenu for profiles)

"Show Settings" (F2) button. By using this menu item or hot key, you can hide or show the settings
panel of the program (see fig.12) which contains all the parameters of the program. The settings panel of
ECTtracker is shown by default.
The matching level of the sample and analyzed image, color and quantity of the structure points,
target window size, idle time after loss of image, and the title of the receiving application that will be
controlled by ECTtracker, as well as key codes and actions, visibility of additional windows, and many other
parameters can all be changed. There are more than 45 available and changeable settings. You can find more
information about program settings in the "Settings and additional parameters of ECTtracker" section of
this manual.

(fig. 12. Settings panel of the program)

"Set Current" (set current settings). This menu item allows you to apply all the parameters, adjusted
through the settings panel. All parameters updated will be applied only after this menu item has been
selected. This feature is very convenient for the settings profile creation process, when there is no need to
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page15

apply changes immediately, as well as fast settings adjustment of ECTtracker. "Set Current" can be found
in the main menu of the program, as well as in the additional menu of the settings panel.
"Load Settings". By using this menu item you can load any previously created settings profile. Such
features allow an unlimited amount of settings profiles, providing the ability to switch between them "on the
fly," including complicated parameters, that require time when adjusted manually (e.g. maximum shift of the
eyes, capturing and processing speed, etc.). This feature also provides ease when working with portable
versions of the program. Some settings may greatly affect the processor load, therefore we recommend using
different profiles on computers with different hardware configuration.
"Save Settings". This menu item allows you to save all the parameters of ECTtracker to a separate
configuration file. When this menu item is selected a new window of operation system appears, allowing the
location and name of a new file (user profile) to be selected. This file will be saved to a user-selected folder
and will have the .cfg extension. Configuration files are small in size, which makes it really easy to keep
and sort them, as well as copy to any portable device, send through e-mail, and so on.
"Reset to Default". You can go back to factory settings of ECTtracker in automatic mode. We
recommend performing such an action in situations when you set parameters that cause the program to not
work correctly. It may also happen when a particular configuration requires a high amount of computing
resources and the current computer is not able to provide them, resulting in unstable operation of
ECTtracker. In any case, when something goes wrong and you are unable to identify the source of the
problem, it may be worth saving the present configuration to a file (for further reference if needed) and reset
the settings to default.

"Samples" submenu
By using the "Samples" submenu (see fig.13you can start auto-calibration and select the desired
recognition structure. This menu also works with the Matrix of Samples; save samples as separate files
divided into folders, or as one united file; load previously saved samples; and can erase all the information
from the Matrix.

(fig. 12. Matrix of Samples submenu)

"Autocalibration" (F6) button. By using this menu item you can start automatic calibration process
for the creation of the Matrix of Samples.
"Open Structure". When this item is selected a new widow of operation system appears, allowing
you to select one of the available recognition structures. Structure is selected based on the current motor
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page16

ability of the user: able to blink one or both eyes, move lips, move thumbs, and so forth. By selecting
different recognition structures you can determine the best structure for each particular case.
Other items of this submenu are intended to work with the Matrix of Samples. The current version of
ECTtracker makes it possible to save the Matrix as one united graphical file (see fig.14) or each sample
can be exported to a separate file, grouping them into folders (see fig.15). In both cases all the images are
saved in .bmp to provide maximum clarity.

(fig. 14. The Matrix of Samples as one untied file)

(fig. 15. Samples divided into folders)

Saving the Matrix as one file can be very useful when it is necessary to work with several user
profiles. These files can be stored in external portable devices, sent through e-mail and printed when
necessary. Furthermore, if such a file is opened without ECTtracker, it gives complete information about
all saved samples.
Storing samples in separate files has some advantages and makes it possible to change the Matrix of
Samples without ECTtracker or any third-party graphical editors. In order to change position of any sample
in the Matrix, you can just change its name or move it to another folder. Thus, you can switch two samples
without any need to create them again. You can also copy or delete any samples using the file manager of
the operating system. All changes will appear in ECTtracker after importing the updated Matrix of
Samples.
Storing the Matrix of Samples in separate files and folders can be useful in other cases, for example
to facilitate the remote control and assistance. In such a case, the new Matrix of Samples can be created
using the auto-calibration feature, allowing the remote assistant to edit it simply by moving files between
folders (on a network shared drive). That makes it very easy to adjust Matrixes to a particular users needs.
In order to save the Matrix of Samples as one united graphic file, you will need to select "Save The
Matrix of Samples" menu item in the "Samples" submenu. To load the Matrix, the "Load The Matrix of
Samples" menu item has to be utilized. To save all the samples as separate files grouped into folders, or to
load them in future, the "Export The Matrix of Samples" and "Import The Matrix of Samples" menu
items can be used, respectively.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page17

In order to remove all the information from the Matrix of Samples (erase all samples), the "Erase
The Matrix of Samples" menu item should be selected.

"Debug" submenu
"Debug" submenu (see fig.16) allows you to make visible or invisible various elements of the main
window of ECTtracker video area; structure of the image; statistical information; and coordinates of
matching samples. Visible elements of the program are marked with a tick.

(fig. 16. Debugging options submenu)

This feature allows you to make a correct initial setting of the program and will be helpful in
adjusting some parameters. Furthermore, hiding some elements during normal operation of ECTtracker
allows the use of computing resources to be lowered. All the debugging elements are shown in figure 17.

(fig. 17. Debugging elements in the main window of ECTtracker)

"Video". This menu item allows you to show or hide the video captured by ECTtracker via the
grab-form. When the video window is disabled the structure will not be shown. This feature is useful for
computers with low-end technical characteristics, allowing computing resources to be used in extremely
economic way. Despite that the video and structure are not displayed in the window, tracking is still
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page18

operational and statistical data in the main window of ECTtracker and "Debug Lines" window are
updated, as well as all key codes which are sent to the selected receiving software.
"Statistics". The main window of the program contains various useful statistical information - row
and column number of the sample from the Matrix of Samples, mostly similar to the current frame;
matching levels of other samples; coordinates of the best matching sample; speed of visualization; and video
processing. By hiding these statistics through the corresponding item of the menu you will obtain
insignificant reduction in the use of resources and may save some screen space while using ECTtracker on
computers with low-resolution display.
"Structure". Structure visibility in the main window over the captured image allows you to see in
real time if the correct area of the image is recognized by the program, the quality of ECTtrackers
recognition, and the presence of focus on the selected area. When the program is set in the correct way and
follows the eye, you may hide the structure from the image, lowering the required computing resources.
"Recognized". This menu item allows you to show or hide additional parts of the main window,
which contains a numeric table of samples, coordinates and levels of maximum matching between samples,
and the current frame in the video window. Disabling this list will give the same result as with items that
lower the use of resources, and will help to save some screen space.
In the case where there is no area with a list in the main window of the program after the
"Recognized" item has been selected, you will need to put the pointer to the lower border of the window
until it changes. Simply push the left mouse button and pull the border up (see fig.18).

(fig. 18. Recognized field opening)

"Localization" submenu
ECTtracker gives you the possibility to use your own language by loading separate localization
files. Currently, the menu items and the settings description of the program are available in Chinese
(Simplified), German, Spanish, French and Russian. The default language is English.
Localization through separate files is convenient, because it doesn't require a full program update to
integrate the new translation. Language files are low in memory size and are located in the languages
subfolder.
There is a separate "Localization" submenu in ECTtracker for language selection (see fig.19).
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.
Page19

(fig. 19. Localization submenu of the program)

"Set Language File". This item of the menu allows the localization language of the program to be
selected. You will see a standard file explorer window, where you may select any desired file containing one
of the available languages.
"Set English". By selecting this menu item of ECTtracker, you will change the language to English
without any additional confirmation windows or manual selection. It is the default language of ECTtracker.
You can also show or hide additional windows of ECTtracker by using menu items or hot keys: the
Matrix of Samples; Event Log; and Debug Lines. When an additional window is enabled, it is marked with a
check in the menu. All windows are enabled (visible) by default.
"The Matrix of Samples" (F4) button. This menu item allows you to hide or show the Matrix of
Samples. This window can be switched off during normal operation of the program to save working space
on the screen. This window has to be enabled during the initial setup of the program.
"Event Log" (F3) button. This additional window of the program contains the list of all important
events which take place in ECTtracker: tracking start and stop; profile loading or saving; and settings
changing. The appearance of the event log is shown in figure 20.

(fig. 20. Program event log)

The header of the event log indicates the amount of rows in the current log and the total size of the
log in bytes. This information can be shown or hidden through a separate "Settings" "Display Statistics"
menu item. The event log menu also provides other functions:
"Clear" deletes all records about program work from the log;
"Save" saves the log as a text file;
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page20

"Close" closes the log window.


"Debug Lines" (F5) button. The additional window of the program which shows in real time the
level of matching between the current frame in the main window and the samples from the Matrix of
Samples (see fig.21).

(fig. 21. "Debug lines" window)

The number of debug lines always corresponds with the row in the Matrix of Samples. When
tracking process is started in ECTtracker, lines are painted from the left to the right side and color changes
from dark blue when there is no coincidence, to green when matching takes place (intensity of green
represents the level of similarity). The debug lines window intends to provide fast evaluation of tracking
accuracy and allows the proper value of the wlim parameter, as well as the appropriate structure, to be
selected. Other settings in accordance with needs of each specific user and computer's performance can also
be corrected.
"Exit" (F10) button. This menu item stops the process of tracking if it is running, after which it
subsequently closes all open windows of the ECTtracker application and stops the application itself. Before
exiting, all changed settings (window positions and sizes, visualization parameters and other information)
are automatically saved in order to be loaded on the next start of ECTtracker.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page21

ECTtracker Settings and advanced parameters


All the adjustable parameters of ECTtracker are available through the settings panel of the program.
This can be opened by selecting the F2 hot key or "Profile Show Settings" menu item.

All settings are grouped by categories:


1-14 basic program settings (see fig.21). This group includes matching levels between samples and
analyzed images; structure file name; frame per second level of the captured video; maximum image
shift for 1 frame; receiving software window name; localization of ECTtracker; quantity; length;
and color of structure elements;
20-27 parameters of the Matrix of Samples and target window (see fig.22). This group includes
height and width of samples; size of the Matrix; and width, height and position of target window;
33-40, 43 visibility of additional windows and debugging elements of the program (see fig.23):
Matrix of Samples; debugging lines and statistic windows; and the settings panel and structure above
the image in the video window of ECTtracker;
45-54 auto run and calibration parameters (see fig.24). This group includes: automatic calibration
script name; threshold of brightness change during auto-calibration; name of the Matrix of Samples
by default; and other parameters;
59-64 key codes and action codes to be sent to the receiving application.

All the settings are grouped into 3 columns. From left to right: number, parameter value (VALUES),
short description (LABELS).

(fig. 22. Settings panel. Parameters 1-14)

1. Wlim 10..100% - match limit between samples and analyzed frame. Wlim this is the limit of the
coincidence level of the samples and analyzed images. The parameter can stay in the range of 10 to 100.
We recommend using values from 18 to 25 (depending on the lighting, mobility of the user, camera
settings and other parameters). By default, Wlim is equal to 25. The higher this value is, the more
accurate the coincidence of the sample and recognized image fragment under the structure has to be.
Wlim can be increased only in the case of proper lighting and high resolution of your camera. This value
can be also increased in case a program finds several corresponding samples for one image (it can be
seen on debugging lines, when two or more lines are filled with a green color). Vice versa, when the
level of tracking is low and there are no corresponding samples, the Wlim value will need to be
decreased. Proper value has to be selected in such way to provide only one green debugging line during
each moment of time.
2. (S/P) Send/Post message to another application. The ECTtracker application supports two types of
message transmissions to the receiving software SendMessage and PostMessage. S value means
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page22

SendMessage, where ECTtracker sends messages to the receiving software and waits for the answer. P
value means PostMessage, where ECTtracker sends messages to the receiving software without any
confirmation. Post Method is selected by default in the application.
3. Name of file with Structure. The program can work with one of several recognition structures to
analyze images and compare their points with a predefined Matrix of Samples. This field shows the file
name containing the current structure. If this field is empty, the program will use the default integrated
structure (see fig.23). Appearance of other structures is shown in figure 24.

(fig. 23. Integrated recognition structure)

(fig. 24. Loadable recognition structures)

4. Frames per second (1..60). This is the speed of video processing and capturing for tracking purposes.
ECTtracker grabs the image from the source which is located under target window (ECTcamera
application or any other software capable of capturing video from camera devices, such as a media
player, Skype or similar). A fragment of the image is shown in the main window of ECTtracker and
compared with Matrix of Samples using key points of the structure, is followed by information updates
in the main and debugging windows. Based on this information, ECTtracker determines the key codes
for the receiving software. After finishing this stage, the program goes to the next image and the process
repeats. Despite the resource-intensive process, the program can handle up to several tens of frames per
second. The default value of this parameter is 20 frames per second. The parameter can stay in the range
from 1 to 60 frames per second. It is recommended to decrease this parameter below 6 frames per second
for low-end performance computers. We have to also mention that this parameter is directly related to
the speed of video capturing, for example, if your video feed has 20 frames per second, there's no need
to set a higher value for this parameter. This will not result in better quality, but will increase load on the
computer resources (processor) during operation.
5. The maximum shift of an eye per 1 frame. If the user has not lost mobility or suffers from
uncontrolled muscle activity (tweak, tremor), it can result in unstable images from the camera.
Inclinations of the head and other various movements can result in changes of face positioning, thus the
program needs to correct the location of the structure in a way that it can still follow the eyes. This is
why coordinates of corresponding samples can also change. The faster and more notable the movements,
the higher the shift value needs to be selected. To avoid the sudden loss of target, we recommend
increasing the maximum shift value, even for close-ups. Maximum Shift lays in the range from 0 to 100
pixels. Shift is equal to 3 pixels by default. This value can be also increased in case the program loses
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page23

focus on the eye, and can be decreased on low-end performance computers. Initially this software was
created for completely paralyzed patients, which is why we strictly recommend to minimize any possible
movements in the analyzed area. In order to minimize head movements a chair with a high backrest or
an armchair with headrest can be used. This allows almost complete immobility to be obtained during
operation with ECTtracker.
6. Number of frames before search if object is lost. This is the idle time when the target is lost. In the
case where the analyzed image does not correspond with any sample from the Matrix, ECTtracker will
wait for a predefined amount of frames. After that, the program will move the search point to the center
of the image (if parameter 9 has a C value) or to the place of the last successful match (if parameter 9
has an F value). The structure is hidden during idle time, allowing the lost target to be seen. The
parameter value by default is 20 and is equal to an analyzed video frame rate. In other words, when
ECTtracker loses focus, it will resume search of corresponding samples in 1 second. You can select any
desired value in the range from 1 to 1000 frames.
7. Previous location of an object influences %. Coefficient of last goal proximity. During comparison of
the current image and samples, the program may take into account the distance to matching samples and
choose the nearest. The parameter value lays in the range from 1 to 100, changing the coefficient of the
last goal proximity from 1% to 100%. The default value is 0. With such a value, ECTtracker selects
corresponding samples irrespectively to their position.
8. Flip video horizontally (Mirror). This parameter can be equal to 1 or 0. When the 0 value is selected,
ECTtrackers main window will show video in the same way as the target application. When the
parameter is equal to 1, the video in the ECTtracker window is flipped horizontally. The default value
is 0.
9. (C/F) Center/Factual alignment search area. Alignment of search area to the center or to the last
successful coordinates. When the C value is selected, then in the case of sample loss, ECTtracker
will start the search from the center of the analyzed frame. This mode implies total immobility of the
user (in case of paralysis, as well as in case of uncontrolled head movements with return to an original
position). When the sample goes out of the tracking area, ECTtracker will return the search area to the
center of the image. This feature avoids situations when the software switches to another similar object
or searches for the object in the area of loss, while it is already in the center of the image. When the F
value is selected for parameter 9, the software searches the sample in the area of loss and does not go
back to the center of the image. This mode was invented to use the head (or any other marker) as a
mouse cursor. In such cases a huge analysis area has to be selected and samples for the eye or marker
will need to be created. After doing so, you will be able to control the cursor with head movements.
Parameters 51-54 are responsible for this mode. In case the sample goes beyond the limit of the analyzed
area, ECTtracker will try to find it near to that area, without moving to the center of the image. This
feature allows the program to perform a fast search of the lost object that has left the area and has come
back after a short while. We recommend you use central alignment mode (the default value is C).
10. Title of Application-Receiver. During operation ECTtracker emulates key strokes based on
corresponding samples. These key strokes are transmitted into the receiving software, which will use the
received codes and perform specific actions. In this field of the settings panel the title of the receiving
software can be specified. By default the program has the next value: ECTkeyboard by
www.eyecomtec.com which is the title of the main window of ECTkeyboard a matrix of letters
(virtual keyboard) from the EyeComTec program complex.
11. Name of file with Localization. Name of the file which contains the interface language of the program.
In this field you will have to specify the full path to the file and its name.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page24

12. Amount (Max) allowed points of structure. Maximum allowed amount of recognition structure points
of ECTtracker. A higher amount can provide higher tracking quality, whereas a lower amount will
decrease load on your computer. The default value of this parameter is 100.
13. Length of single point of structure (0..255). Starting from ECTtracker version 15.3.5, we invented a
new feature allowing comparison of a video window with samples through averages of short lines of
points. This parameter allows the user to select an area with 1 pixel in height (horizontal line) with the
center in the key point of the structure. For example, when the parameter is equal to 2, the program will
analyze not only the key point of the structure but by 2 more dots to the left and 2 more dots to the right
of it. The match of the image and samples will be determined based on average value, so there is no need
to increase the amount of key points to obtain higher quality. You can simply put them on the vertical
line, which goes through the center of the structure and add area for analysis to the right and to the left of
it by using this parameter. The default value of this parameter is 0, resulting in analysis based only on
key points of the structure.
14. Color of points of structure (RRGGBB). Color of points of structure in HTML (RRGGBB).
Depending on lighting, eye color and skin color, key points of the structure may look unclear. You can
select the most contrasting color by using this parameter, avoiding invisibility of key points on the
image. This feature allows you to perform initial calibration much easier. The default value of this
parameter is FF0000, which corresponds to a red color.

(fig. 25. Settings panel. Parameters 20-27)

20. Sample Size Width in pixels. The height and width of the sample in the Matrix have to be selected in
a way that will contain the biggest part of the structure key points to provide correct tracking, whilst
avoiding excessive size to stay in the limits of the grab-form during user movement. Width can stay in
the range from 10 pixels and up to the current width of the target window. The default value during the
first start of the program is 120 pixels.
21. Sample Size Height in pixels. This follows the same rules as it does for width. Length can stay in the
range from 10 pixels and up to the current length of the target window of ECTtracker. The default
sample height value is 60 pixels. Key points of the structure have to be placed on the most frequently
changeable fragment.
22. The Matrix of Samples count of columns. This parameter determines the amount of columns and the
default value of this parameter is 5. This means you can create not more than 5 samples with the same
state (e.g. images with open eye of the user).
23. The Matrix of Samples count of rows. This parameter determines the amount of rows and the default
is 5. Each row of the Matrix must contain samples with a similar state. For example, the first row should
have all the images with one open eye, and the second row only with a closed eye. This rule was
invented to correctly assign emulated key codes and actions resulting in correct operation of the
receiving software.
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page25

24. Target Width in pixels. Grab-form (target window) width in pixels. The default value of this
parameter is 140. The higher the selected value, the higher the width of target and image capturing area.
Increasing the grab-form size may be necessary if the user is able to move and higher parameters for
sample sizes in the Matrix can be specified. Thus, in case of small target usage, the object can go beyond
the limits of the target, resulting in loss of focus by ECTtracker. You can decrease the target window
size in case of computers with low performance. Detailed instructions about the correct size of the grabform and samples can be found in the "Additional recommendations for work with ECTtracker"
chapter.
25. Target Height in pixels. Grab-form (target window) vertical size in pixels. This specifies the height of
the target, allowing you to increase the capturing area of the grab-form. As long as the target window has
to capture a small area on the analyzed video to identify eye state, we do not recommend using
extremely high values. The default value of this parameter is 160.
26. Target Left. Position of the target, left indent. This parameter saves information about the horizontal
position of the target window. The value determines the distance between the left border of the screen
and the left border of the target window in pixels.
27. Target Top. Position of the target, top indent. This parameter saves information about the vertical
position of the target window. The value determines the distance between the upper border of the screen
and the upper border of the target window in pixels.

(fig. 26. Settings panel. Parameters 33-40, 43)

Parameters 33-40 and 43 are responsible for the visibility of various elements of ECTtracker and
can have 0 and 1 values. 0 - element is hidden; 1 - element is visible.
33. Debug Display Structure. This parameter is responsible for visibility of the structure above the image
in the video window of the program. The structure is visible by default during first startup of the
program, allowing you to observe movements of the search zone in real time and identify cases when the
program loses all samples.
34. Show Structure Editor. In the currently released version of ECTtracker this editor is not available.
35. Show The Matrix of Samples. This parameter controls visibility of the window with the Matrix of
Samples. This window is visible by default, allowing you to view the current set of samples. The most
appropriate sample is also highlighted with green border during normal operation of the program. This
feature allows you to identify the best samples and change them if necessary, or perform additional
calibration to update the Matrix of Samples.
36. Debug Display Statistics. This parameter controls the visibility of the statistic part in the window of
ECTtracker and it is visible by default. At the same time the main window of the program shows
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page26

coordinates of the most appropriate sample, as well as its position in the Matrix of Samples, the
matching level and the speed of video processing in frames per second.
37. Show Debug Lines. This parameter controls the visibility of debugging lines and it is visible by default.
At the same time, the debugging window is open and shows in real time which group of samples is the
most consistent with the analyzed image from the video window of ECTtracker.
38. Debug Display Video Output. This parameter controls the video in the main window of ECTtracker.
This parameter is equal to 1 by default and analyzed video is displayed. We recommend you disable this
parameter only in the case when ECTtracker works on computers with extremely low configuration,
because absence of video can slightly speed up the program.
39. Show About. This parameter controls the visibility of the "About" window. This parameter is equal to 0
by default, and the window with information about the program is hidden during startup and operation of
ECTtracker.
40. Show Settings. This parameter controls the visibility of the settings window. This parameter is equal to
1 by default, and the settings panel is visible. If you set 0 value, the settings panel will be hidden
during each startup of the program. It can be necessary and useful in the case where ECTtracker works
on computers with low resolution and there is lack of free space on the screen. Also, once the program is
configured and functions well, the Settings window may be hidden, because there will be no reason to
change the settings.
43. Show Event Log. This parameter controls the visibility of the event log. This parameter is equal to 1 by
default, and the event log is visible.

(fig. 27. Settings panel. Parameters 45-54)

45. (1/0) on/off Auto-run tracking on program start. Automatically begin tracking when ECTtracker
has started. This parameter can have 2 values: 0 which is where automatic start disabled; and 1 where
automatic start is enabled. This option is disabled by default because you may need to apply some
changes after startup of the program, including changing parameters, selecting structures, loading
samples from saved file, or auto-calibrating in case there is no Matrix of Samples available. In the case
where all settings are correct and the Matrix of Samples is loaded automatically every time, you may
enable automatic tracking by changing the parameter value to 1. This parameter can be very useful for
completely paralyzed patients. By putting the program shortcut into an auto-run folder of the operation
system, you can also set up ECTtracker and the tracking process to start automatically and
immediately after the computer has loaded. In this case you will be able to use the computer immediately
without pressing any physical keys for operation.
46. Time frame in seconds between writing operation status to file. The program has an event log which
triggers various important events, including auto-tracking start and stop, structure selection and many
others. By using this parameter, you are able to select the time gap between "status" event savings to the
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page27

program log. The default value is 10 seconds. You can set any desired value between 1 and 1000
seconds. This parameter gives the remote assistant another opportunity to check the stability of the
running program. If the program freezes or showes any window which can't be closed by the user (due to
full paralysis), the log stops saving "status" events. The log file stops increasing in size which can be a
signal that the program is not working correctly. In conjunction with other programs (e.g.
HandyFileMonitor an application which checks constant increase in the size of a specific file and
notifies the user if there is no change in a while), the user can perform automatic restart of the monitored
program. Fortunately, ECTtracker operates very stably and we use this feature in extremely rare cases.
47. Brightness delta during auto-calibration. The brightness threshold change during auto-calibration.
This parameter can lay in the range from 1 to 200 and corrects brightness changes during autocalibration. The default value of this parameter is 0.
48. Name of file containing script for auto-calibration. Name of the file, which contains auto-calibration
script.
49. Time Frame. Time gap, during which the program compares frames to emulate single key strokes. The
average video speed is around 24 frames per second. If each corresponding frame generates key code to
be sent from ECTtracker, the receiving software could receive too many key codes. This is why the
program sends key codes only for samples which match most frequently with analyzed images during
this defined time gap.
50. Name of file containing default Matrix of Samples. In order to avoid manual selection every time
ECTtracker starts, samples will be loaded automatically from that file. It can be useful in cases where
the user constantly works with only one set of samples and there is no need to select another set.
Parameters 51-54 allow you to control the cursor by moving your head (in case if parameter 9 has an
F value). By moving the sample along the horizontal axis (X) and vertical axis (Y), ECTtracker can
generate actions and send them to the receiving software.
51. (+dX). This parameter allows emulating key strokes and sends it to the receiving software when the
sample's coordinates is increased by the X axis.
52. (+dY). This parameter allows emulating key strokes and sends it to the receiving software when the
sample's coordinates is increased by the Y axis.
53. (-dX). This parameter allows emulating key strokes and sends it to the receiving software when the
sample's coordinates is decreased by the X axis.
54. (-dY). This parameter allows emulating key strokes and sends it to the receiving software when the
sample's coordinates is decreased by the Y axis.

(fig. 28. Settings panel. Parameters 59-64)

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page28

Parameters from 59 to 64 allow the emulated key codes and actions sent to the receiving software to
be changed. Key codes and actions can be set in accordance with the matching samples in video window of
the program. The program emulates key strokes in the following way:
Codes, transmitted by ECTtracker, contain two numbers divided with spaces. The first number is a
key code. Each key from your keyboard has its own number, for example the space button is 32, enter is 13.
You can check other codes by searching "key codes".

The second number in the ECTtracker code determines the necessary state of the key (also called
action): either pressed or released. It can appear as the following values:
0 no action performed (deactivate key);
1 press and hold the key;
2 release the key;
3 press and release the key.
59. Key Code and Action Code to emulate in case of no matching Sample found. The key code and
action code which are sent to the receiving software in case none of the samples from the Matrix
correspond to the current images in the window of ECTtracker. This function was implemented from
version 15.3.5 and it depends on ECTtracker having only one sample in the Matrix. The default value is
32 2 (release space button). Let's look at one example. A sample was created with a closed eye and it is
added into the second row of the Matrix of Samples, followed by tracking start. When the user closes
their eye, the program registers a match between the image and the sample and sends the key code and
action code to hold the space button (32 1). When the user opens their eye, ECTtracker can't find
matching samples and sends code to release space button (32 2). Thus, we only need one sample in the
Matrix to emulate key strokes. We recommend you increase the wlim value (parameter 1) for this mode,
making it above 30 in order to obtain a high level of tracking quality.
60. Key Code and Action Code for Sample # 1. The key code and action code to be sent to the receiving
application in case of matching between the current frame and the sample from row 0. The default value
is 32 2 (release space button).
61. Key Code and Action Code for Sample # 2. The key code and action code to be sent to the receiving
application in case of matching between the current frame and the sample from row 1. The default value
is 32 1 (hold space button).
62. Key Code and Action Code for Sample # 3. The key code and action code to be sent to the receiving
application in case of matching between the current frame and the sample from row 2. The default value
is 32 1 (hold space button).
63. Key Code and Action Code for Sample # 4. The key code and action code to be sent to the receiving
application in case of matching between the current frame and the sample from row 3. The default value
is 82 3 (press "R" button once).
Key Code and Action Code for Sample # 5. The key code and action code to be sent to the receiving
application in case of matching between the current frame and the sample from row 4. The default value is
76 3 (press "L" button once).

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page29

Hints and tricks - Additional recommendations for effective work


with ECTtracker
Position of display, web-camera and program windows
The most important factor that provides correct ECTtracker operation is the positioning of the
camera in a way that state of the eyes can be identified and tracked clearly. To do this, the patient has to look
at camera (if possible) so that the pupil can be captured almost completely. The exact center of the pupil has
to be in the center of all the images from the Matrix of Samples, where the eye is open. Completion of this
condition gives more than enough to provide guaranteed recognition of eye state in the majority of cases.
Proper position of all windows of the EyeComTec program complex is also very important. The user
works with ECTkeyboard's matrix of letters almost all the time, focusing their attention on this window.
Therefore it may be more expedient to put ECTkeyboard windows as close as possible to the position of
web-camera. This is vital in case of high resolution of display, because the difference between view position
and windows position can be significant. On figure 1 you can see the recommended software window
positioning when a web-camera is located above the display. Figure 2 shows the correct positioning for
cases when the web-camera is located under the display. Figure 3 shows the positioning for those who use a
laptop.

(fig. 1. In cases where the web-camera is located above the display, ECTkeyboard window
has to be placed in the upper part of your desktop)

(fig. 2. In cases where the web-camera is located under the display, ECTkeyboard window
has to be placed in the lower part of your desktop close to the web-camera)

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page30

(fig. 3. In cases where if you use a laptop, ECTkeyboard window has to be placed in the upper part of your desktop)

In figure 3 you can see the ECTtracker windows in two situations: when the user is looking at the matrix of
letters located in the upper part of the desktop (left screenshot); and in the lower part of the desktop (right
screenshot). In both cases the web-camera is fixed on the upper side of the display. As you can see, in the
second example the user looks down and the upper eyelid is slightly closed. Tracking quality is also
significantly decreased by lowered lashes. All these factors will result in unstable image recognition by the
program, thus ECTtracker will more often recognize this user's eye as closed.

(fig. 3. Direction of user's glance is changing depending on the location of the matrix of letter on desktop)

The less the range of motion of the pupil during work with the matrix of letters, the more accurately
ECTtracker will analyze images. Pupil movement can be reduced using 2 ways (see fig. 4):
decreasing the size of the matrix of letters of ECTkeyboard (left image). This can be useful for
displays with low resolution and size;
increasing the distance between the user and the display (right image). This is recommended for
displays with high resolution.

(fig. 4. Decreasing the range of motion of the pupil during work with the matrix of letters)

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page31

Proper calibration and initial setting of ECTtracker


Quality of image recognition of ECTtracker depends not only on external conditions (correct
position of display, web-camera, light intensity and position of the light source), but on correct filling of the
Matrix of samples by the user. There are several important rules for proper calibration of ECTtracker,
which are recommended to use during the initial setting of the program:
1. You have to click exactly to the center of the pupil when adding a new sample. Point of click is
considered as the exact center of the sample and is used for tracking stabilization;
2. Eyeline of the patient has to be directed to the camera in all the cases when possible. The distance
between the patient and the display and the size of the matrix of letters have to be selected in a way
that the pupil makes minimum movements during the text typing process;
3. During the process of automatic or manual calibration you need to ensure that the eyes are not open
too wide (wider than during work with the matrix of letters). During continuous work eye muscles
become fatigued and the eyelids start to close, resulting in the possibility of a lower quality of
samples recognition;
4. It is recommended to create not more than 2 samples for an open eye of the user and not more than
one sample for a closed eye. (see fig. 5);

(fig. 5. Correct filling of ECTtracker's Matrix of Samples)

5. During work with the matrix of letters you have to select a value for the wlim parameter, which
provides the correct recognition of only one sample at any selected moment of time. You can see the
schematic information about the quality of recognition in the Debug Lines window below (see fig.
6);

(fig. 6. Samples recognition quality)

6. The size of the sample should not significantly exceed the size of the recognition structure in use (see
fig. 7). In fact, the zone of recognition is limited by the position of structure key points, and
increasing the sample size will not increase the detection zone or improve its quality.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page32

(fig. 7. Size of the sample and real recognition zone, i.e. structure)

7. The main rule for structure selection is this: you have to put as many points of the structure as
possible above the area of the image with maximum visually distinguishable changes. Key points of
the structure which are located above the static area of the image will adversely affect the quality of
recognition, as well as lead to an increase in the computational load on the system, for example if
your patient has retained the mobility of only one of their eyes, you have to use the structure for one
eye and locate it above the changing area of the image. Please note that the exact center of the
sample has to correspond with the exact center of the pupil.

Improving recognition quality by changing grab-form size


The main window of ECTtracker shows you the image, captured by the grab-form ("target window"
which is located above the video source). This image contains an analyzed sample. You can see the
schematic drawing of the grab-form, the sample and the object to be tracked (eye) in figure 8.

(Fig. 8. ECTtracker positioning scheme)

If an EyeComTec complex user retained partial mobility, head movements may occur during
operation with the program. ECTtracker follows such movements by moving the zone of tracking and
analysis. As a result, in some cases the analyzed zone can go beyond the borders of grab-form. On figure 9
you can see samples of correct recognition (upper row) and samples of analyzed object loss (lower row).

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page33

(Fig. 9. Correct and wrong positioning)

In cases when the analyzed zone partially leaves the grab-form, higher values of wlim parameter may
result in no sample recognition (simply because the program can't find any corresponding sample in the
limits of the grab-form). Lower values of wlim parameter may result in recognition of similar zones inside
the grab-form: thus, recognition structure may move above the wrong object, for example the eyebrows. In
this case the program will identify the user's eye as permanently closed.

To avoid the above situations we recommend you increase the size of "target window" to keep all
possible movements of the eye in the frame. This approach will not allow ECTtracker to lose the tracked
object. The grab-form width can be changed by using parameter 24 of the settings panel of the program - the
height can be changed by using parameter 25 of the settings panel of the program (see fig. 10).

(Fig. 10. Setting size of grab-form)

Recommendations about the source of light positioning


Correct lighting is essential for normal operation of ECTtracker because it allows to obtain more
stable sample recognition. In the vast majority of cases the source of light is located above the user during
work, giving most of the light, while the rest comes from the display (see fig. 11).

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page34

(Fig. 11. Working in normal conditions of the room)

When the source of light is located above the user, all colors are significantly smoothed, eye zone is
shaded, contrast lowers and recognition quality decreases, because colors of pixels differ less. At the same
time, by working with a contrast image the software can recognize samples even if the user makes head
movements. Figure 12 shows you the ECTtracker window in a situation with an upper source of light (left
screenshot) and another situation when the majority of the light comes from the display (right screenshot).

(Fig. 12. Light position and angle can significantly change image contrast)

Thus, in order to provide a higher contrast of the image and improve the quality of tracking, the user
has to decrease or turn off the light from all sources located above the user. You can also increase the
brightness of the display, creating additional direct lighting (see fig. 13).

(Fig. 13. Using the display as direct source of light)

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page35

In case the display brightness is not enough to create lighting of a proper level, a small LED-light as
additional source of light can be used. The best way to do so is to fix the LED-light in the upper or lower
part of the display, directing it in a way that avoids dazzling and creates additional lighting (see fig. 14).

(Fig. 14. Using additional source of light)

Using contrast marker


Sometimes obtaining the correct level of recognition and tracking can become more difficult due to
physical damages of the patient's face. Such damages may include different injuries, burns, burnt eyelashes,
postoperative state of the eye and many others.
In such situations ECTtrackers calibration can be performed by using the marker of contrast color
(bright red, green) or any other paint (e.g. brilliant green). A small dot is applied to the center of the eyelid,
followed by clicking on that dot during calibration of the program and creation of the sample with a closed
eye (see fig. 15).

(Fig. 15. Using contrast marker)

Thus, ECTtracker receives an additional element with high contrast, which allows it to identify the
sample with closed eye of the user more clearly.

Proper scaling of the image


To improve recognition quality during work with EyeComTec program complex, additional scaling
of the image (increasing or decreasing) may need to be used. We recommend you perform this scaling only
Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.
Page36

with ECTcamera functionality. The user can change scale by using the Scale submenu or the corresponding
hot keys (see fig. 16).

(Fig. 16. Changing image scale using ECTcamera)

Low scale results in inadequate ECTtracker focus on the users eye. Too high scaling makes the
image more grainy, also resulting in lower quality of recognition. To obtain an optimal level of recognition,
the user has to select values in the range from 150% to 250% depending on the type of camera, its settings
and video resolution.
Please note that after scaling, the changing area of the image has to correspond with the selected
recognition structure most accurately.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page37

Updates
The latest version of ECTtracker can be downloaded directly from our site:
https://eyecomtec.com/ECTtracker.zip

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page38

Licensing agreement
General Terms
This license agreement establishes substantive provisions, as well as describes the permitted and prohibited
ways of use of the software developed by EyeComTec. The licensee has the right to use software products
of EyeComTec only under the conditions described in this License Agreement.
All software and all related intellectual assets (copyrights, algorithms, source code and technical
documentation) are fully owned by the EyeComTec (LAZgroup SA) company. EyeComTec can provide
free exclusive and non-transferable license to any entities which are involved into charity or non-profit
activities. In order to use the software for commercial purposes, such companies have to contact us directly
and purchase a license. Any commercial use (with pecuniary interest) of the software developed by
EyeComTec without license is strictly prohibited.
During the determination of the conditions and restrictions of use, the copyright holder provided all the
information on a limited warranty basis as well as the rejection of any liability. This project is voluntary, and
the parent company is not liable for any issued support packs or updates in front of those users who use
software products of EyeComTec free of charge.
All the users are obligated to observe and follow the requirements of this License Agreement.

Restrictions on use
The end user is not allowed to use or permit the use of EyeComTec software products in any manner that
may affect their functionality, including modification of the program binary source code and participation in
any operation that is aimed at reverse engineering (decompilation) of software for personal or professional
gain.
Additionally, the end user of the software under no circumstances has the right to change copyright
information or use the names of software products in an inappropriate manner in order to obtain financial or
material benefits. The user has no right to change, make copies, sell, sublicense, advertise or distribute
EyeComTec software products in any manner, which is not allowed by this license agreement. As a
charitable gesture from the company, all users are allowed to share EyeComTec software products
installation packages among themselves and with other people.
Upon receipt of the license the user does not receive any right to own copies of the software, and the
copyright holder may prohibit subsequent sales.
All licensees have no right to re-pack the software and distribute it by including the software in various
installation packages that contain malicious programs or advertisement of any form.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page39

Registration of users
User registration is the easiest and safest way to provide feedback between the development company and its
consumers: patients and medical centers. During startup of the non-registered program, the user will see a
web-browser window with the present registration page.

Registration Form for Private non-commercial client (people with physical needs to use our
products)*
Registration Form for Medical organizations (commercial and charitable non-profit: hospitals,
rehabilitation centers, doctors)**
Registration Form for Commercial non-medical clients (involved in manufacturing, assembly,
control, production lines)**

* Registration is voluntary for private non-commercial customers, but nevertheless desirable.


** Registration is mandatory for legal entities and commercial clients.
Collection of such statistical data is extremely important for EyeComTec because it allows detailed
information about the needs of specific users to be obtained, and it also improves the software in accordance
with user needs. Program complex is developed continuously and many features of the current version were
created due to feedback from users.
Registration opens the opportunity to participate in a loyalty program for commercial entities. The loyalty
program starts immediately after registration is complete. Participation in the loyalty program gives users
access to current and extended versions of the software on more favorable terms, as well as providing
significant discounts.
Additionally the database of contacts allows EyeComTec to inform patients promptly about new and
unpublished software products and updates of the EyeComTec program complex. Furthermore, users are
able to receive information on the functionality of basic and advanced versions in a timely manner.

Differentiation of commercial and noncommercial license


1. Noncommercial License
1.A. Noncommercial license for clients with physical needs.
(this type of license does not apply to customers who are undergoing paid rehabilitation courses)
EyeComTec software products are provided free of charge to all users who are experiencing physical need
and are in use of such category of programs. This group of people includes all those who suffer from various
forms of paralysis or other muscular activity restrictions. All software products are free for non-commercial
use, for example when the patient uses our software for text typing, they are not obligated to purchase a
commercial license.
1.B. Noncommercial license for charitable organizations.
Charity companies and rehabilitation centers can use all EyeComTec software products free of charge if
they provide their services to patients on a free basis.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page40

2. Paid commercial License


2.A. Commercial license for paid clinics and rehabilitation centers.
Commercial licenses for program products of EyeComTec is necessary in any case of paid services
provision by medical companies or rehabilitation centers. Such a commercial license is required for each
separate copy of the program in use. Only one copy of each licensed program may run at the same period of
time.
All assistants and third-party specialists who provide paid services to their patients and involve EyeComTec
software products in their work are also obligated to purchase a commercial license.
In any case when the user is on paid treatment, involved in rehabilitation program in commercial institution,
or uses paid services of any third-party medical specialist, they are prohibited to use personal noncommercial license ECT software. The user is strictly prohibited to use any EyeComTec software products
to communicate directly with any paid healthcare specialist or representative of a commercial establishment.
In such cases, the rehabilitation facility or attending specialist are obligated to use and provide to the patient
their own commercially licensed copy of the software.
This restriction extends over the entire period of treatment or rehabilitation of the patient.
2.B. Commercial license for software integrators and resellers.
All companies and experienced specialists who provide paid services for the installation and integration of
EyeComTec software products to third parties, as well as maintenance and technical support for such
programs, are obligated to purchase a commercial license. Selling of software products to customers with
physical needs is strictly prohibited (see section 2.1, paragraph A).
2.C. Commercial license for extended program versions, which are intended to use in non-medical
environments.
The EyeComTec Company develops extended versions of their programs (in particular, ECTtracker) which
are successfully used in factories, shops, automated assembly lines and quality control systems. Such
program versions are distributed on individual licenses and are not intended for public distribution. In order
to get full information about features of programs, full quotation including price of purchase and support, as
well as cost of specialists training, please contact the EyeComTec Company.
Furthermore, our company develops various additional applications which can significantly enhance the
functionality of our programs. When such applications are in use with extended versions of our programs
they can be used for additional automation of analyzing and controlling manufacturing processes.
Specialists from the EyeComTec Company are ready to create individual systems which are most suitable to
your needs. The system will be created on software modules which were created, taking into account all the
distinctive features of the processes.

Copyright 2000 - 2015 EyeComTec.Com LAZgroup SA All rights reserved.

Page41

También podría gustarte