Ab1

29
1. 1 ABSTRACT Human error is still one of the most frequent causes of catastrophes andecological disasters. The main reason is that the monitoring systems concern only thestate of the processes whereas human contribution to the overall performance of thesystem is left unsupervised. Since the control instruments are automated to a largeextent, a human – operator becomes a passive observer of the supervised system,which results in weariness and vigilance drop. This, he may not notice importantchanges of indications causing financial or ecological consequences and a threat tohuman life. It therefore is crucial to assure that the operator’s conscious brain isinvolved in an active system supervising over the whole work time period. It ispossible to measure indirectly the level of the operator’s conscious brain involvementusing eye motility analysis. Although there are capable sensors available on themarket, a complex solution enabling transformation, analysis and reasoning based onmeasured signals still does not exist. In large control rooms, wiring the operator to thecentral system is a serious limitation of his mobility and disables his operation.Utilization of wireless technology becomes essential. Blue Eyes is intended to be the complex solution for monitoring andrecording the operator’s conscious brain involvement as well as his Physiologicalcondition. This required designing a Personal Area Network linking all the Operatorsand the supervising system. As the operator using his sight and hearing senses thestate of the controlled system, the supervising system will look after his physiologicalcondition. AIM 1) To design smarter devices 2) To create devices with emotional

Transcript of Ab1

Page 1: Ab1

1. 1 ABSTRACT Human error is still one of the most frequent causes of

catastrophes andecological disasters. The main reason is that the

monitoring systems concern only thestate of the processes whereas

human contribution to the overall performance of thesystem is left

unsupervised. Since the control instruments are automated to a

largeextent, a human – operator becomes a passive observer of the

supervised system,which results in weariness and vigilance drop. This, he

may not notice importantchanges of indications causing financial or

ecological consequences and a threat tohuman life. It therefore is crucial to

assure that the operator’s conscious brain isinvolved in an active system

supervising over the whole work time period. It ispossible to measure

indirectly the level of the operator’s conscious brain involvementusing eye

motility analysis. Although there are capable sensors available on

themarket, a complex solution enabling transformation, analysis and

reasoning based onmeasured signals still does not exist. In large control

rooms, wiring the operator to thecentral system is a serious limitation of his

mobility and disables his operation.Utilization of wireless technology

becomes essential. Blue Eyes is intended to be the complex solution for

monitoring andrecording the operator’s conscious brain involvement as

well as his Physiologicalcondition. This required designing a Personal Area

Network linking all the Operatorsand the supervising system. As the

operator using his sight and hearing senses thestate of the controlled

system, the supervising system will look after his physiologicalcondition.

AIM 1) To design smarter devices 2) To create devices with emotional

intelligence 3) To create computational devices with perceptual abilities

2. 2 The idea of giving computers personality or, more accurately,

emotionalintelligence" may seem creepy, but technologists say such

machines would offerimportant advantages. De-spite their lightning speed

and awesome powers of computation,todays PCs are essentially deaf,

dumb, and blind. They cant see you, they cant hearyou, and they certainly

dont care a whit how you feel. Every computer user knows thefrustration of

nonsensical error messages, buggy software, and abrupt system

Page 2: Ab1

crashes.We might berate the computer as if it were an unruly child, but, of

course, themachine cant respond. "Its ironic that people feel like dummies

in front of theircomputers, when in fact the computer is the dummy," says

Rosalind Picard, acomputer science professor at the MIT Media Lab in

Cambridge. A computer endowed with emotional intelligence, on the other

hand,could recognize when its operator is feeling angry or frustrated and

try to respond inan appropriate fashion. Such a computer might slow down

or replay a tutorial programfor a confused student, or recognize when a

designer is burned out and suggest he takea break. It could even play a

recording of Beethovens "Moonlight Sonata" if it sensedanxiety or serve up

a rousing Springsteen anthem if it detected lethargy. The

possibleapplications of "emotion technology" extend far beyond the

desktop. A car equippedwith an affective computing system could

recognize when a driver is feeling drowsyand ad-vise her to pull over, or it

might sense when a stressed-out motorist is about toexplode and warn him

to slow down and cool off. These machines have got their own personality

and this personalitydepends upon the moods of the user. INTRODUCTION

BlueEyes system provides technical means for monitoring and

recordingthe operator’s basic physiological parameters. The most

important parameter issaccadic activity , which enables the system to

monitor the status of the operator’s 1

3. 3visual attention along with head acceleration, which accompanies large

displacementof the visual axis (saccades larger than 15 degrees). Complex

industrial environmentcan create a danger of exposing the operator to toxic

substances, which can affect hiscardiac, circulatory and pulmonary

systems. Thus, on the grounds ofplethysmographic signal taken from the

forehead skin surface, the system computesheart beat rate and blood

oxygenation. [Saccades are rapid eye jumps to new locations within a

visualenvironment assigned predominantly by the conscious attention

process.] The BlueEyes system checks above parameters against

abnormal (e.g. alow level of blood oxygenation or a high pulse rate) or

undesirable (e.g. a longerperiod of lowered visual attention) values and

Page 3: Ab1

triggers user-defined alarms whennecessary. Quite often in an emergency

situation operator speak to themselvesexpressing their surprise or stating

verbally the problem. Therefore, the operator’svoice, physiological

parameters and an overall view of the operating room arerecorded. This

helps to reconstruct the course of operators’ work and provides data

forlong-term analysis. BlueEyes consists of a mobile measuring device and

a centralanalytical system. The mobile device is integrated with Bluetooth

module providingwireless interface between sensors worn by the operator

and the central unit. ID cardsassigned to each of the operators and

adequate user profiles on the central unit sideprovide necessary data

personalization so different people can use a single mobiledevice (called

hereafter DAU – Data Acquisition Unit). The overall system diagram

isshown in Figure 1. The tasks of the mobile Data Acquisition Unit are to

maintainBluetooth connections, to get information from the sensor and

sending it over thewireless connection, to deliver the alarm messages sent

from the Central System Unitto the operator and handle personalized ID

cards. Central System Unit maintains theother side of the Bluetooth

connection, buffers incoming sensor data, performs on-linedata analysis,

records the conclusions for further exploration and providesvisualization

interface.

4. 4 The task of the mobile Data Acquisition Unit are to maintain

Bluetoothconnection, to get information from the sensor and sending it over

the wirelessconnection ,to deliver the alarm messages sent from the

Central System Unit to theoperator and handle personalized ID cards.

Central System Unit maintains the otherside of the Bluetooth connection,

buffers incoming sensor data, performs on-line dataanalysis, records the

conclusion for further exploration and provides

visualizationinterface.PERFORMANCE REQUIREMENTS The portable

nature of the mobile unit results in a number ofperformance requirements.

As the device is intended to run on batteries, low powerconsumption is the

most important constraint. Moreover, it is necessary to assureproper timing

while receiving and transmitting sensor signals. To make the

Page 4: Ab1

operationcomfortable the device should be lightweight and electrically safe.

Finally the use ofstandard and inexpensive IC’s will keep the price of the

device at relatively low level. The priority of the central unit is to provide

real-time buffering andincoming sensor signals and semi-real-time

processing of the data, which requiresspeed-optimizes filtering and

reasoning algorithms. Moreover, the design shouldassure the possibility of

distributing the processing among two or more central unitnodes (e.g. to

offload the database system related tasks to a dedicated server).

5. 5DESIGN METHODOLOGIES In creating the BlueEyes system a

waterfall software developmentmodel was used since it is suitable for

unrepeatable and explorative projects. Duringthe course of the

development UML standard notations were used. They

facilitatecommunication between team members, all the ideas are clearly

expressed by meansof various diagrams, which is a sound base for further

development. The results of the functional design phase were documented

on usecase diagrams. During the low-level design stage the whole systems

was divided intofive main modules. Each of them has an independent, well-

defined functionalinterface providing precise description of the services

offered to the other modules.All the interfaces are documented on UML

class, interaction and state diagrams. Atthis point each of the modules can

be assigned to a team member, implemented andtested in parallel. The

last stage of the project is the integrated system testing.INNOVATIVE

IDEAS The unique feature of our system relies on the possibility

ofmonitoring the operator’s higher brain functions involved in the

acquisition of theinformation from the visual environment. The wireless link

between the sensors wornby the operator and the supervising system

offers new approach to system overallreliability and safety. This gives a

possibility to design a supervising module whoserole is to assure the

proper quality of the system performance. The new possibilitiescan cover

such areas as industry, transportation (by air, by road and by sea),

militarycommand centers or operating theaters (anesthesiologists).

Page 5: Ab1

IMPLEMANTATION OF BLUE EYES TECHNOLOGYFUNCTIONAL

DESIGN

System AdministratorsOperator is a person whose physiological

parameters are supervised. The operatorwears the DAU. The only

functions offered to that user are authorization in the systemand receiving

alarm alerts. Such limited functionality assures the device does notdisturb

the work of the operator (Fig. 2).Figure 2: Mobile Device UserAuthorization

– the function is used when the operator’s duty starts. After insertinghis

personal ID card into the mobile device and entering proper PIN code the

devicewill start listening for incoming Bluetooth connections. Once the

connection has beenestablished and authorization process has succeeded

(the PIN code is correct) centralsystem starts monitoring the operator’s

physiological parameters. The authorizationprocess shall be repeated after

reinserting the ID card. It is not, however, required onreestablishing

Bluetooth connection.Receiving alerts – the function supplies the operator

with the information about themost important alerts regarding his or his co-

workers’ condition and mobile devicestate (e.g. connection lost, battery

low). Alarms are signaled by using a beeper, Supervisors Operators

6. 6 During the functional design phase we used UML standarduse case

notation, which shows the functions the system offers to particularusers.

BlueEyes has three groups of users:

7. 7earphone providing central system sound feedback and a small

alphanumeric LCDdisplay, which shows more detailed

information.Supervisor is a person responsible for analyzing operators’

condition andperformance. The supervisor receives tools for inspecting

present values of theparameters (On-line browsing) as well as browsing

the results of long-term analysis(Off-line browsing). During the on-line

browsing it is possible to watch a list of currentlyworking operators and the

status of their mobile devices. Selecting one of theoperators enables the

supervisor to check the operator’s current physiologicalcondition (e.g. a pie

chart showing active brain involvement) and a history of alarmsregarding

the operator. All new incoming alerts are displayed immediately so that

Page 6: Ab1

thesupervisor is able to react fast. However, the presence of the human

supervisor is notnecessary since the system is equipped with reasoning

algorithms and can triggeruser-defined actions (e.g. to inform the

operator’s co-workers).

8. 8 During off-line browsing it is possible to reconstruct the course of

theoperator’s duty with all the physiological parameters, audio and video

data. Acomprehensive data analysis can be performed enabling the

supervisor to drawconclusions on operator’s overall performance and

competency (e.g. for workingnight shifts).System Administrator is a user

that maintains the system. The administrator deliverstools for adding new

operators to the database, defining alarm conditions, configuring logging

tools and creating new analyzer modules. While registering new operators

the administrator enters appropriate data (anda photo if available) to the

system database and programs his personal ID card. Defining alarm

conditions – the function enables setting up user-definedalarm conditions

by writing condition-action rules (e.g. low saccadic activity during alonger

period of time → inform operator’s co-workers, wake him up using the

beeperor playing appropriate sound and log the event in the database).

Designing new analyzer modules-based on earlier recorded data

theadministrator can create new analyzer module that can recognize other

behaviors thanthose which are built-in the system. The new modules are

created using decision treeinduction algorithm. The administrator names

the new behavior to be recognized and

9. 9points the data associated with it. The results received from the new

modules can beused in alarm conditions. Monitoring setup enables the

administrator to choose the parameters tomonitor as well as the algorithms

of the desired accuracy to compute parametervalues. Logger setup

provides tools for selecting the parameters to berecorded. For audio data

sampling frequency can be chosen. As regards the videosignal, a delay

between storing consecutive frames can be set (e.g. one picture inevery

two seconds).Database maintenance – here the administrator can remove

old or “uninteresting” datafrom the database. The “uninteresting” data is

Page 7: Ab1

suggested by the built-in reasoningsystem.DATA ACQUISITION UNIT

(DAU) This section deals with the hardware part of the BlueEyes system

with regard tothe physiological data sensor, the DAU hardware

components and the microcontrollersoftware.PHYSIOLOGICAL DATA

SENSOR To provide the Data Acquisition Unit with necessary

physiological data an off-shelf eye movement sensor – Jazz Multisensor is

used. It supplies raw digital dataregarding eye position, the level of blood

oxygenation, acceleration along horizontaland vertical axes and ambient

light intensity. Eye movement is measured using directinfrared

oculographic transducers. (The eye movement is sampled at 1 kHz, the

otherparameters at 250 Hz. The sensor sends approximately 5.2 kB of

data per second.)

10. 10HARDWARE SPECIFICATION Microcontrollers (e.g. Atmel 8952

microcontroller)can be used as the core of the Data Acquisition Unit since it

is a well-established industrial standard and provides necessary

functionalities(i.e. high speed serial port)at a low price. The Bluetooth

module supports synchronous voice data transmission .The codec reduces

the microcontroller’s tasks and lessens the amount of data being sent over

the UART. The Bluetooth module performs voice data compression, which

results in smaller bandwidth utilization and better sound quality.

11. 11 .Communication between the Bluetooth module and the

microcontroller is carried onusing standard UART interface. The speed of

the UART is set to 115200 bps in orderto assure that the entire sensor data

is delivered in time to the central system. The alphanumeric LCD display

gives more information of incomingevents and helps the operator enter PIN

code. The LED indicators shows the result ofbuilt-in-self-test, power level

and the state of wireless connection. The simple keyboard is used to react

to incoming events and to enterPIN code while performing authorization

procedure. The ID card interface helpsconnect the operator’s personal

identification card to the DAU. After inserting thecard authorization

procedure starts. The operator’s unique identifier enables thesupervising

Page 8: Ab1

system to distinguish different operators.MICROCONTROLLER

SOFTWARE SPECIFICATION

12. 12 DAU software is written in assembler code, which assures the

highest programefficiency and the lowest resource utilization. The DAU

communicates with theBluetooth module using Host Controller Interface

(HCI) commands In the No ID card state a self-test is performed to check if

the device isworking correctly. After the self-test passes the sensor and

Bluetooth module are resetand some initialization commands are

issued(i.e. HCI_Reset,HCI_Ericsson_Set_UART_Baud_Rate etc.). Once

the initialization has beensuccessfully completed the device starts to check

periodically for ID card presence by

13. 13attempting to perform an I2C start condition. When the attempt

succeeds and theoperator’s identifier is read correctly the device enters

User authorization state. In the User authorization state the operator is

prompted to enter hissecret PIN code. If the code matches the code read

from the inserted ID card thedevice proceeds waiting for incoming

Bluetooth connections. On entering Waiting for connection state the DAU

puts the Bluetoothmodule in Inquiry and Page Scan mode. After the first

connection request appears, theDAU accepts it and enters Connection

authentication state. In the Connection authentication state the DAU issues

AuthenticationRequested HCI command. On Link Controller’s

Link_Key_Request the DAU sendsLink_Key_Negative_Reply in order to

force the Bluetooth module to generate the linkkey based on the supplied

system access PIN code. After a successful authenticationthe DAU enters

the Data Processing state, otherwise it terminates the connection

andenters the Waiting for connection state. The main DAU operation takes

place in the Data Processing state. Inthe state five main kinds of events

are handled. Since the sensor data has to bedelivered on time to the

central system, data fetching is performed in high-priorityinterrupt handler

procedure. Every 4ms the Jazz sensor raises the interrupt signalingthe

data is ready for reading. The following data frame is used: Figure 6: Jazz

Sensor frame format The preamble is used to synchronize the beginning of

Page 9: Ab1

the frame, EyeXrepresents the horizontal position of the eye, EyeY –

vertical, AccX and AccY – the

14. 14acceleration vectors along X and Y axes, PulsoOxy, Batt and Light –

bloodoxygenation, voltage level and light intensity respectively. The figure

below showsthe sensor communication timing. Figure 7: Jazz Sensor data

fetching waveform The received data is stored in an internal buffer; after

the whole frameis completed the DAU encapsulates the data in an ACL

frame and sends it over theBluetooth link. (The fetching phase takes up

approx. 192∝s (24 frames x 8∝s) and thesending phase takes at 115200

bps approx. 2,8 ms, so the timing fits well in the 4mswindow.) In every

state removing the ID card causes the device to enter the No IDcard state,

terminating all the established connections. The second groups of events

handled in the Data Processing state aresystem messages and alerts.

They are sent from the central system using the Bluetoothlink. Since the

communication also uses microcontrollers interrupt system the eventsare

delivered instantly. The remaining time of the microcontroller is utilized

performing LCDdisplay, checking the state of the buttons, ID card presence

and battery voltage level.Depending on which button is pressed

appropriate actions are launched. In every stateremoving the ID card

causes the device to enter the No ID card state terminating allthe

established connections. In the DAU there are two independent data

sources-Jazz sensor andBluetooth Host Controller. Since they are both

handled using the interrupt system it isnecessary to decide which of the

sources should have higher priority. Giving thesensor data the highest

priority may result in losing some of the data sent by theBluetooth

module,as the transmission of the sensor data takes twice as much time

asreceiving one byte from UART. Missing one single byte sent from the

Bluetoothcauses the loss of control over the transmission. On the other

hand, giving the

15. 15Bluetooth the highest priority will make the DAU stop receiving the

sensor data untilthe Host Controller finishes its transmission. Central

system alerts are the only signalsthat can appear during sensor data

Page 10: Ab1

fetching after all the unimportant Bluetooth eventshave been masked out.

The best solution would be to make the central unitsynchronize the alerts

to be sent with the Bluetooth data reception. As the deliveredoperating

system is not a real-time system, the full synchronization is not possible.

As the Bluetooth module communicates asynchronously with

themicrocontroller there was a need of implementing a cyclic serial port

buffer, featuringUART CTS/RTS flow control and a producer-consumer

synchronization mechanism.CENTRAL SYSTEM UNIT (CSU) CSU

software is located on the delivered Computer/System; in case oflarger

resource demands the processing can be distributed among a number of

nodes.In this section we describe the four main CSU modules (see Fig. 1):

ConnectionManager, Data Analysis, Data Logger and Visualization. The

modules exchange datausing specially designed single-producer multi

consumer buffered thread-safe queues.Any number of consumer modules

can register to receive the data supplied by aproducer. Every single

consumer can register at any number of producers, receivingtherefore

different types of data. Naturally, every consumer may be a producer

forother consumers. This approach enables high system scalability – new

data processingmodules (i.e. filters, data analyzers and loggers) can be

easily added by simplyregistering as a consumer.CONNECTION

MANAGER Connection Manager’s main task is to perform low-level

Bluetoothcommunication using Host.

16. 16 Figure 8: Connection Manager Components Controller Interface

commands. It is designed to cooperate with allavailable Bluetooth devices

in order to support roaming. Additionally, ConnectionManager authorizes

operators, manages their sessions, demultiplexes and buffers

rawphysiological data. Figure 11 shows Connection Manager Architecture.

Transport Layer Manager hides the details regarding actual

Bluetoothphysical transport interface (which can be either RS232 or UART

or USB standard)and provides uniform HCI command interface. Bluetooth

Connection Manager is responsible for establishing andmaintaining

connections using all available Bluetooth devices. It periodically

Page 11: Ab1

inquiresnew devices in an operating range and checks whether they are

registered in thesystem database. Only with those devices the Connection

Manager will communicate.After establishing a connection an

authentication procedure occurs. The authenticationprocess is performed

using system PIN code fetched from the database. Once theconnection

has been authenticated the mobile unit sends a data frame containing

theoperator’s identifier. Finally, the Connection Manager adds a SCO link

(voiceconnection) and runs a new dedicated Operator Manager, which will

manage the newoperator’s session. Additionally, the Connection Manager

maps the operator’sidentifiers into the Bluetooth connections, so that when

the operators roam around the

17. 17covered area a connection with an appropriate Bluetooth device is

established and thedata stream is redirected accordingly. The data of each

supervised operator is buffered separately in thededicated Operator

Manager. At the startup it communicates with the Operator DataManager in

order to get more detailed personal data. The most important

OperatorManager’s task is to buffer the incoming raw data and to split it

into separate datastreams related to each of the measured parameters.

The raw data is sent to a LoggerModule, the split data streams are

available for the other system modules throughproducer-consumer queues.

Furthermore, the Operator Manager provides an interfacefor sending alert

messages to the related operator. Operator Data Manager provides an

interface to the operator databaseenabling the other modules to read or

write personal data and system accessinformation.DATA ANALYSIS

MODULE The module performs the analysis of the raw sensor data in

order toobtain information about the operator’s physiological condition. The

separatelyrunning Data Analysis Module supervises each of the working

operators. The moduleconsists of a number of smaller analyzers extracting

different types of information.Each of the analyzers registers at the

appropriate Operator Manager or anotheranalyzer as a data consumer

and, acting as a producer, provides the results of theanalysis. An analyzer

can be either a simple signal filter (e.g. Finite Input Response(FIR) filter) or

Page 12: Ab1

a generic data extractor (e.g. signal variance, saccade detector) or

acustom detector module. As it is not able to predict all the supervisors’

needs, thecustom modules are created by applying a supervised machine

learning algorithm to aset of earlier recorded examples containing the

characteristic features to berecognized. In the prototype we used an

improved C4.5 decision tree inductionalgorithm. The computed features

can be e.g. the operator’s position (standing,walking and lying) or whether

his eyes are closed or opened.

On-line analyzer flow. Continuously calculate eye movement velocity using

three point central difference algorithms. If the velocity excess pre

calculated v0 (both axes are considered separately) there is a possibility of

saccade occurrence. Check the following conditions (if any of them is

satisfied do not detect a saccade): • the last saccade detection was less

than 130 ms ago (physiological constraint – the saccades will not occur

more frequently) • the movement is nonlinear (physiological constraint) •

compare the signal with accelerometer (rapid head movement may force

eye activity of comparable speed) • if the accelerometer signal is

enormously uneven consider ignoring the signal due to possible sensor

device movements. If none of the above conditions is satisfied – signal the

saccade occurrence. The visual attention level analyzer uses as input the

results producedby the saccade detector. Low saccadic activity (large

delays between subsequent User adjustment step. The phase takes up 5

s. After buffering approx. 5 s of the signal differentiate it using three point

central difference algorithm, which will give eye velocity time series. Sort

the velocities by absolute value and calculate upper 15% of the border

velocity along both X – v0x and Y – v0y axes . As a result v0x and v0y are

cut-off velocities. 18. 18 As built-in analyzer modules we implemented a

saccade detector,visual attention level, blood oxygenation and pulse rate

analyzers. The saccade detector registers as an eye movement and

accelerometersignal variance data consumer and uses the data to signal

saccade occurrence. Sincesaccades are the fastest eye movements the

Page 13: Ab1

algorithm calculates eye movementvelocity and checks physiological

Constraints. The algorithm has two main steps:

19. 19saccades) suggests lowered visual attention level (e.g. caused by

thoughtfulness).Thus, we propose a simple algorithm that calculates the

visual attention level (Lva):Lva = 100/ts10, where ts10 denotes the time (in

seconds) occupied by the last tensaccades. Scientific research has proven

[1] that during normal visual informationintake the time between

consecutive saccades should vary from 180 up to 350 ms.this gives Lva at

28 up to 58 units. The values of Lva lower than 25 for a longer periodof

time should cause a warning condition. The following figure shows the

situationwhere the visual attention lowers for a few seconds. Figure 9:

Saccade occurrence and Visual attention level

20. 20 The Pulse rate analyzer registers for the oxyhemoglobin

anddeoxyhemoglobin level data streams. Since both signals contain a

strong sinusoidalcomponent related to heartbeat, the pulse rate can be

calculated measuring the timedelay between subsequent extremes of one

of the signals. We decided not to processonly one of the data streams –

the algorithm is designed to choose dynamically one ofthem on the

grounds of the signal level. Unfortunately, the both signals are noised

sothey must be filtered before further processing. We considered a number

of differentalgorithms and decided to implement average value based

smoothing. More detaileddiscussion is presented in section 3.3.5 Tradeoffs

and Optimization. The algorithmconsists in calculating an average signal

value in a window of 100 samples. In everystep the window is advanced 5

samples in order to reduce CPU load. This approachlowers the sampling

rate from 250 Hz down to 50 Hz. However, since the Visualheartbeat

frequency is at most 4 Hz the Nyquist condition remains satisfied.

Thefigures show the signal before (Fig. 10a) and after filtering (Fig 10b).

Figure: 10(a) Figure: 10(b) After filtering the signal the pulse calculation

algorithm is applied. Thealgorithm chooses the point to be the next

maximum if it satisfies three conditions:points on the left and on the right

have lower values, the previous extreme was aminimum, and the time

Page 14: Ab1

between the maximums is not too short (physiologicalconstraint). The new

pulse value is calculated based on the distance between the newand the

previous maximum detected. The algorithm gets the last 5 calculated

pulsevalues and discards 2 extreme values to average the rest. Finally, it

does the same withthe minimums of the signal to obtain the second pulse

rate value, which gives the finalresult after averaging.

21. 21 Additionally, we implemented a simple module that calculates

averageblood oxygenation level. Despite its simplicity the parameter is an

important measureof the operator’s physiological condition. The other

signal features that are not recognized by the built-inanalyzers can be

extracted using custom modules created by Decision Tree

Inductionmodule. The custom module processes the generated decision

tree, registers forneeded data streams and produces the desired output

signal. Decision Tree Induction module generates the decision trees, which

arebinary trees with an attribute test in each node. The decision tree input

data is anobject described by means of a set of attribute-value pairs. The

algorithm is not able toprocess time series directly. The attributes therefore

are average signal value, signalvariance and the strongest sinusoidal

components. As an output the decision treereturns the category the object

belongs to. In the Decision Tree Induction module wemainly use C 4.5

algorithm [2], but also propose our own modifications. Thealgorithm is a

supervised learning from examples i.e. it considers both attributes

thatdescribe the case and a correct answer. The main idea is to use a

divide-and-conquerapproach to split the initial set of examples into subsets

using a simple rule (i-thattribute less than a value). Each division is based

on entropy calculation – thedistribution with the lowest entropy is chosen.

Additionally, we propose manymodifications concerning some steps of the

algorithm and further exploration of thesystem. For each case to be

classified C 4.5 traverses the tree until reaching theleaf where appropriate

category id is stored. To increase the hit ratio our system usesmore

advanced procedure. For single analysis we develop a group of k trees

(where kis a parameter), which we call a decision forest. Initial example set

Page 15: Ab1

S is dividedrandomly into k+1 subsets S0 ... Sk. S0 is left to test the whole

decision forest. Eachtree is induced using various modifications of the

algorithm to provide results’independence. Each i-th tree is taught using

SS0Si set (S without S0 and Si sets) andtested with Si that estimates a

single tree error ratio. Furthermore we extract all

22. 22wrongly classified examples and calculate correlation matrix

between each pair of thetrees. In an exploring phase we use unequal

voting rule – each tree has a vote ofstrength of its reliability. Additionally, if

two trees give the same answer their vote isweakened by the correlation

ratio. Alarm Dispatcher Module is a very important part of the Data

Analysismodule. It registers for the results of the data analysis, checks

them with regard to theuser-defined alarm conditions and launches

appropriate actions when needed. Themodule is a producer of the alarm

messages, so that they are accessible in the loggerand visualization

modules.DATA LOGGER MODULE The module provides support for

storing the monitored data in order toenable the supervisor to reconstruct

and analyze the course of the operator’s duty. Themodule registers as a

consumer of the data to be stored in the database. Each workingoperator’s

data is recorded by a separate instance of the Data Logger. Apart from

theraw or processed physiological data, alerts and operator’s voice are

stored. The rawdata is supplied by the related Operator Manager module,

whereas the Data Analysismodule delivers the processed data. The voice

data is delivered by a Voice DataAcquisition module. The module registers

as an operator’s voice data consumer andoptionally processes the sound

to be stored (i.e. reduces noise or removes thefragments when the

operator does not speak). The Logger’s task is to add appropriatetime

stamps to enable the system to reconstruct the voice. Additionally, there is

a dedicated video data logger, which records thedata supplied by the Video

Data Acquisition module (in the prototype we use JPEGcompression). The

module is designed to handle one or more cameras using Video

forWindows standard. The Data Logger is able to use any ODBC-compliant

Page 16: Ab1

databasesystem. In the prototype we used MS SQL Server, which is a part

of the Project Kit.VISUALIZATION MODULE

23. 23 The module provides user interface for the supervisors. It enables

themto watch each of the working operator’s physiological condition along

with a previewof selected video source and his related sound stream. All

the incoming alarmmessages are instantly signaled to the supervisor.

Moreover, the visualization modulecan be set in the off-line mode, where

all the data is fetched from the database.Watching all the recorded

physiological parameters, alarms, video and audio data thesupervisor is

able to reconstruct the course of the selected operator’s duty.TOOLS

USED TO DEVELOP BLUE EYES In creating the hardware part of the

DAU a development board wasbuilt, which enabled to mount, connect and

test various peripheral devices cooperatingwith the microcontroller. During

the implementation of the DAU there was a need fora piece of software to

establish and test Bluetooth connections. Hence created a toolcalled Blue

Dentist. The tool provides support for controlling thecurrently connected

Bluetooth device. Its functions are: Local device management(resetting,

reading local BD_ADDR, putting in Inquiry/Page and Inquiry/Page

scanmodes, reading the list of locally supported features and setting UART

speed) andconnection management (receiving and displaying Inquiry scan

results, establishingACL links, adding SCO connections, performing link

authorization procedure,sending test data packets and disconnecting).

24. 24 Fig: Blue Dentist To test the possibilities and performance of the

remaining parts of theProject Kit (computer, camera and database

software) Blue Capture(Fig. 12) was created. The tool supports capturing

video data from various sources(USB web-cam, industrial camera) and

storing the data in the MS SQL Serverdatabase. Additionally, the

application performs sound recording. After filtering andremoving

insignificant fragments (i.e. silence) the audio data is stored in the

database.Finally, the program plays the recorded audiovisual stream. They

used the software tomeasure database system performance and to

optimize some of the SQL queries (e.g.we replaced correlated SQL queries

Page 17: Ab1

with cursor operations). Figure 12: BlueCapture Also a simple tool for

recording Jazz Multisensory measurements wasintroduced. The program

reads the data using a parallel port and writes it to a file. Toprogram the

operator’s personal ID card we use a standard parallel port, as

theEEPROMs and the port are both TTL-compliant. A simple dialog-based

applicationhelps to accomplish the task. APPLICATIONS OF BLUE EYE

TECHNOLOGY

25. 25MANUAL AND GAZE INPUT CASCADED (MAGIC) POINTINGThis

work explores a new direction in utilizing eye gaze for computer input.

Gazetracking has long been considered as an alternative or potentially

superior pointingmethod for computer input. We believe that many

fundamental limitations exist withtraditional gaze pointing. In particular, it is

unnatural to overload a perceptual channelsuch as vision with a motor

control task. We therefore propose an alternativeapproach, dubbed MAGIC

(Manual And Gaze Input Cascaded) pointing. With suchan approach,

pointing appears to the user to be a manual task, used for finemanipulation

and selection. However, a large portion of the cursormovement is

eliminated by warping the cursor to the eye gaze area, whichencompasses

the target. Two specific MAGIC pointing techniques, oneconservative and

one liberal, were designed, analyzed, and implementedwith an eye tracker

developed. They were then tested in a pilot study.This early stage

exploration showed that the MAGIC pointing techniquesmight offer many

advantages, including reduced physical effort and fatigueas compared to

traditional manual pointing, greater accuracy and naturalnessthan

traditional gaze pointing, and possibly faster speed than manualpointing.

The pros and cons of the two techniques are discussed in light ofboth

performance data and subjective reports.IMPLEMENTATIONThe MAGIC

pointing program takes data from both themanual input device (of any type,

such as a mouse) and the eye trackingsystem running either on the same

machine or on another machineconnected via serial port. Raw data from

an eye tracker can not be directlyused for gaze-based interaction, due to

noise from image processing, eyemovement jitters, and samples taken

Page 18: Ab1

during saccade (ballistic eyemovement) periods. We experimented with

various filtering techniques andfound the most effective filter in our case is

similar to that described. Thegoal of filter design in general is to make the

best compromise betweenpreserving signal bandwidth and eliminating

unwanted noise. In the case of

26. 26eye tracking, as Jacob argued, eye information relevant to

interaction lies inthe fixations. The key is to select fixation points with

minimal delay.Samples collected during a saccade are unwanted and

should be avoided. Indesigning our algorithm for picking points of fixation,

we considered ourtracking system speed (30 Hz), and that the MAGIC

pointing techniquesutilize gaze information only once for each new target,

probablyimmediately after a saccade. Our filtering algorithm was designed

to pick afixation with minimum delay by means of selecting two adjacent

points overtwo samples.ARTIFICIAL INTELLIGENT SPEECH

RECOGNITIONIt is important to consider the environment in which

thespeech recognition system has to work. The grammar used by the

speakerand accepted by the system, noise level, noise type, position of

themicrophone, and speed and manner of the user’s speech are some

factorsthat may affect the quality of speech recognition .When you dial

thetelephone number of a big company, you are likely to hear the

sonorousvoice of a cultured lady who responds to your call with great

courtesysaying “Welcome to company X. Please give me the extension

number youwant”. You pronounce the extension number, your name, and

the name ofperson you want to contact. If the called person accepts the

call, theconnection is given quickly. This is artificial intelligence where an

automaticcall-handling system is used without employing any telephone

operator.THE TECHNOLOGYArtificial intelligence (AI) involves two basic

ideas. First,it involves studying the thought processes of human beings.

Second, it dealswith representing those processes via machines (like

computers, robots, etc).AI is behavior of a machine, which, if performed by

a human being, wouldbe called intelligent. It makes machines smarter and

Page 19: Ab1

more useful, and is lessexpensive than natural intelligence. Natural

language processing (NLP)

27. 27refers to artificial intelligence methods of communicating with a

computerin a natural language like English. The main objective of a NLP

program isto understand input and initiate action. The input words are

scanned andmatched against internally stored known words. Identification

of a key wordcauses some action to be taken. In this way, one can

communicate with thecomputer in one’s language. No special commands

or computer languageare required. There is no need to enter programs in a

special languageforcreating software.SPEECH RECOGNITIONThe user

speaks to the computer through a microphone,which, in used; a simple

system may contain a minimum of three filters. Themore the number of

filters used, the higher the probability of accuraterecognition. Presently,

switched capacitor digital filters are used becausethese can be custom-

built in integrated circuit form. These are smaller and cheaperthan active

filters using operational amplifiers. The filter output isthen fed to the ADC to

translate the analogue signal into digital word. TheADC samples the filter

outputs many times a second. Each samplerepresents different amplitude

of the signal .Evenly spaced vertical linesrepresent the amplitude of the

audio filter output at the instant of sampling.Each value is then converted to

a binary number proportional to theamplitude of the sample. A central

processor unit (CPU) controls the inputcircuits that are fed by the ADCS. A

large RAM (random access memory)stores all the digital values in a buffer

area. This digital information,representing the spoken word, is now

accessed by the CPU to process itfurther. The normal speech has a

frequency range of 200 Hz to 7 kHz.Recognizing a telephone call is more

difficult as it has bandwidth limitationof 300 Hz to3.3 kHz.As explained

earlier, the spoken words are processedby the filters and ADCs. The binary

representation of each of these wordsbecomes a template or standard,

against which the future words arecompared. These templates are stored

in the memory. Once the storing

Page 20: Ab1

28. 28process is completed, the system can go into its active mode and is

capableof identifying spoken words. As each word is spoken, it is

converted intobinary equivalent and stored in RAM. The computer then

starts searchingand compares the binary input pattern with the templates. t

is to be notedthat even if the same speaker talks the same text, there are

always slightvariations in amplitude or loudness of the signal, pitch,

frequencydifference, time gap, etc. Due to this reason, there is never a

perfect matchbetween the template and binary input word. The pattern

matching processtherefore uses statistical techniques and is designed to

look for the best fit.The values of binary input words are subtractedfrom the

corresponding values in the templates. If both the values are same,the

difference is zero and there is perfect match. If not, the

subtractionproduces some difference or error. The smaller the error, the

better thematch. When the best match occurs, the word is identified and

displayed onthe screen or used in some other manner. The search process

takes aconsiderable amount of time, as the CPU has to make many

comparisonsbefore recognition occurs. This necessitates use of very high-

speedprocessors. A large RAM is also required as even though a spoken

word maylast only a few hundred milliseconds, but the same is translated

into manythousands of digital words. It is important to note that alignment

of wordsand templates are to be matched correctly in time, before

computing thesimilarity score. This process, termed as dynamic time

warping, recognizesthat different speakers pronounce the same words at

different speeds as wellas elongate different parts of the same word. This

is important for thespeaker-independent recognizers.SIMPLE USER

INTERST TRACKER (SUITOR) Computers would have been much more

powerful,had they gained perceptual and sensory abilities of the living

beings on theearth. What needs to be developed is an intimate relationship

between thecomputer and the humans. And the Simple User Interest

Tracker (SUITOR)

29. 29is a revolutionary approach in this direction. By observing the

Webpage a netizen isbrowsing, the SUITOR can help by fetching more

Page 21: Ab1

information at his desktop. Bysimply noticing where the user’s eyes focus

on the computer screen, the SUITOR canbe more precise in determining

his topic of interest. It can even deliver relevantinformation to a handheld

device. The success lies in how much the suitor can beintimate to the user.

IBMs BlueEyes research project began with a simplequestion, according to

Myron Flickner, a manager in Almadens USERgroup: Can we exploit

nonverbal cues to create more effective userinterfaces? One such cue is

gaze—the direction in which a person islooking. Flickner and his

colleagues have created some new techniques fortracking a persons eyes

and have incorporated this gaze-tracking technologyinto two prototypes.

One, called SUITOR (Simple User Interest Tracker),fills a scrolling ticker

on a computer screen with information related to theusers current task.

SUITOR knows where you are looking, whatapplications you are running,

and what Web pages you may be browsing. "IfIm reading a Web page

about IBM, for instance," says Paul Maglio, theAlmaden cognitive scientist

who invented SUITOR, "the system presentsthe latest stock price or

business news stories that could affect IBM. If I readthe headline off the

ticker, it pops up the story in a browser window. If I startto read the story, it

adds related stories to the ticker. Thats the whole idea ofan attentive

system—one that attends to what you are doing, typing, reading,so that it

can attend to your information needs." CONCLUSION The BlueEyes

system is developed because of the need for areal-time monitoring system

for a human operator. The approach is innovative since ithelps supervise

the operator not the process, as it is in presently available solutions.We

hope the system in its commercial release will help avoid potential

threatsresulting from human errors, such as weariness, oversight,

tiredness or temporalindisposition. However, the prototype developed is a

good estimation of thepossibilities of the final product. The use of a

miniature CMOS camera integrated intothe eye movement sensor will

enable the system to calculate the point of gaze and

30. 30observe what the operator is actually looking at. Introducing voice

recognitionalgorithm will facilitate the communication between the operator

Page 22: Ab1

and the centralsystem and simplify authorization process. Despite

considering in the report only the operators working in controlrooms, our

solution may well be applied to everyday life situations. Assuming

theoperator is a driver and the supervised process is car driving it is

possible to build asimpler embedded on-line system, which will only

monitor conscious braininvolvement and warn when necessary. As in this

case the logging module isredundant, and the Bluetooth technology is

becoming more and more popular, thecommercial implementation of such

a system would be relatively inexpensive. The final thing is to explain the

name of our system.BlueEyes emphasizes the foundations of the project –

Bluetoothtechnology and the movements of the eyes. Bluetooth provides

reliable wirelesscommunication whereas the eye movements enable us to

obtain a lot of interestingand important information.

31. 31 REFERENCES1. Carpenter R. H. S., Movements of the eyes, 2nd

edition, Pion Limited, 1988,London.2. Bluetooth specification, version 1.0B,

Bluetooth SIG, 1999.3. ROK 101 007 Bluetooth Module, Ericsson

Microelectronics,2000.4. AT89C52 8-bit Microcontroller Datasheet,

Atmel.5. Intel Signal Processing Library –Reference Manual.