The document describes the Blue Eyes system, which monitors operators' physiological parameters and visual attention to detect issues. The system includes a mobile data acquisition unit (DAU) worn by the operator and a central system. The DAU collects data from sensors via Bluetooth and sends it to the central system for analysis. The central system analyzes the data, records conclusions, and triggers alarms if abnormal readings are detected. The system is designed to help supervise operators and assure proper performance in industrial environments.
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Blue eyes seminar report
1. Blue eyes seminar report — Document Transcript
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 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
2. 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 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
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
3. 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). IMPLEMANTATION
OF BLUE EYES TECHNOLOGYFUNCTIONAL DESIGN
6. 6 During the functional design phase we used UML standarduse case notation, which
shows the functions the system offers to Operators particularusers. BlueEyes has
three groups of users: System AdministratorsOperator is a person whose Supervisors
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,
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 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).
4. 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 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
5. 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 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 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
6. 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 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 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
7. 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 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.
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 algorithm
calculates eye movementvelocity and checks physiological Constraints. The algorithm
has two main steps: 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 On-line analyzer flow. Continuously v0y are cut-off velocities. 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
8. level analyzer uses as input the results producedby the saccade detector. Low saccadic
activity (large delays between subsequent
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 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
9. 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 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 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
10. 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 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 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
11. 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 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
12. 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
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 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
13. 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 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.