SlideShare a Scribd company logo
1 of 8
A Hygiene Monitoring System
Brian Cherin Rohan Jinturkar
brncherin@gmail.com rjinturkar@gmail.com
Bhargavi Lanka Daniel McKeon Nivedhitha Sivakumar
bhargavilanka29@gmail.com dftmckeon@gmail.com blueflute19@gmail.com
Alex Weiner*
alexweiner@alexweiner.com
New Jersey’s Governor’s School of Engineering and Technology
July 27, 2018
*Corresponding Author
Abstract—In the healthcare industry, patients are often ex-
posed to harmful pathogens due to a lack of compliance to hand
hygiene protocol. The vast majority of healthcare professionals
do not abide by hand hygiene standards established by the
World Health Organization, facilitating the spread of nosocomial
(hospital-acquired) infections. When representatives trained in
proper handwashing procedures monitored medical profession-
als, there was a significant increase in compliance with proper
protocol. Given this correlation between observance and adher-
ence, a Hygiene Monitoring System was developed to monitor
handwashing through the application of machine learning. The
embedded system captured, processed, and compared instances
of handwashing to the proper procedure. An implementation of
this system would encourage healthcare professionals to follow
the official protocol denoted by the World Health Organization
and dramatically reduce the likelihood of healthcare–associated
infections.
I. INTRODUCTION
Hands are the primary pathways of germ transmission, yet
healthcare professionals often overlook proper handwashing
protocol [1]. In one study, only 22% of hospital workers
complied with protocol [2]. Under surveillance, compliance
increased to 52.2%, demonstrating a trend between observation
and adherence. This issue has global ramifications: healthcare-
associated infections (HCAI) contribute to over 135,000 deaths
in developed nations each year [3]. The Hygiene Monitoring
System developed in this study monitors and identifies proper
hand hygiene in hospitals to increase adherence to protocol.
II. BACKGROUND
A. Correct Handwashing Procedure
The World Health Organization (WHO) defines handwash-
ing as proper when six motions are performed: the simple
press; the roof; the webs; the links; the thumbs; and the
mortar and pestle. Pictured in figure 1, these motions should
be performed for at least 40-60 seconds. The webs and thumbs
motions involve the right hand acting on the left and vice-
versa; for instance, one must scrub both the left and right
thumbs to abide by WHO guidelines [4].
Figure 1. Top left to right: simple press, roof, web; Bottom left to right: link,
thumbs, mortar & pestle
The WHO also recommends that healthcare workers fol-
low proper handwashing procedure after five key moments.
They are defined as 1) before touching a patient, 2) before
clean/aseptic procedures, 3) after body fluid exposure/risk, 4)
after touching a patient, and 5) after touching patient surround-
ings. The concept that healthcare workers must consistently
abide by WHO protocol is essential to the purpose of this
system [5].
B. Software
C was the computer programming language chosen for
this project. It was developed in 1972 by Dennis Ritchie
at Bell Labs, and is closely associated with the Unix op-
erating system. It is commonly considered a middle level
programming language, which does not refer to its difficulty
1
or programming power, but rather its ability to access the
system's more basic functions while still supplying higher
level constructs. Compared to other higher level programming
languages such as Python, C is more efficient in its processing
abilities, allowing for rapid analysis of adherence to protocol.
Linux is a family of open-source, free operating systems
that can be installed on a variety of electronic devices. This
system utilized Ubuntu Linux 12.04, which came pre-installed
on the NVIDIA Jetson TX2. The operating system supports
C programming as well as direct command line input in the
form of UNIX commands, also referred to running commands
in the terminal.
Bash is a command processor that allows the system to
read commands directly from a file. Various Bash scripts were
executed in order to install the libraries defined later in this
paper.
C. Hardware
The NVIDIA Jetson TX2 is an embedded system with
machine learning capabilities. Equipped with USB ports and
digital/analog pins, it is capable of connecting to a variety
of sensors and peripheral devices. The NVIDIA Jetson TX2
runs on C++ but has C functionality and works with the
Ubuntu operating system. The included Graphics Processing
Unit (GPU) supports the machine learning algorithms used in
this study. The system also supports a Camera Serial Interface
(CSI) which is an embedded camera system that captures high
definition images and videos [6].
A GPU, unlike a Central Processing Unit (CPU), has the
ability to execute or handle thousands of threads simultane-
ously. A GPU contains many more processing units (cores)
than a CPU, enabling it to process data very quickly. This
dramatically reduces computation time for running complex
algorithms, increasing efficiency. This practice of using GPUs
to perform computations is referred to as general-purpose
computing on graphics processing units [7].
D. Image Processing
This study involved conversions between multiple file
types. They are defined below for reference:
• MP4, or MPEG-4 Part 14, is a modern multimedia file
format for storing video and audio in a space and quality
efficient format with widespread compatibility.
• AVI, or Audio Video Interleave, is an older multimedia
file format for storing video and audio with less compat-
ibility than more modern formats.
• JPEG, named for its development by the Joint Photo-
graphic Experts Group, is a file format for storing images
in smaller sizes than other formats. It utilizes approxima-
tions while compressing pictures and thus cannot support
transparency.
• PNG, or Portable Network Graphics, is a file format
for storing images with greater quality than most image
formats as a result of utilizing lossless compression.
Unlike JPEG, it supports transparency but sacrifices a
smaller file size for greater quality.
The red, green, and blue (RGB) color model is a format for
producing a broad array of colors by adding varying amounts
of red, green, and blue pigment, ranging from the values 0
to 255 for each pigment. By describing colors in this format,
electronic systems can differentiate between shades. In this
project, RGB pixel values were extracted from images to
facilitate the identification of hand motions within each image.
The Gaussian Blur uses a Gaussian distribution to blur an
image. This method of blurring the image reduces image noise
and increases the accuracy of the Support Vector Machines
used in the system. In this system, two constants necessary
to execute the Gaussian blur, the radius and the sigma value,
were assigned to be 10 and 5, respectively.
ImageMagick is a photo and video editing library com-
patible with UNIX terminal commands. Its implementation
allowed for the elimination of complex algorithms. Through
the application of a Gaussian Blur, alteration of light contrast,
and cropping of images, this library aided in maintaining the
visual consistency of the images throughout this study [8].
FFmpeg is a library used to edit and manipulate information
stored in various video formats. FFmpeg commands available
within the UNIX terminal could separate a recorded video into
individual frames without compromising quality.
Lossless image compression is a format for image data
storage that utilizes additional space in order to preserve image
quality. This image formatting technique was utilized in place
of lossy compression, which would reduce quality in order to
reduce the amount of space the image uses in storage. The
lossless image compression provided by the PNG file format
was chosen because image quality was preferred over storage
preservation while training a machine learning model.
E. Relevant Machine Learning
Machine learning is a subset of artificial intelligence that
provides systems with the ability to learn and refine models
through experience, as opposed to relying on explicit coding.
This field intends to help systems learn automatically to
make better decisions in the future based on given data and
examples.
The K-Means segmentation algorithm, one processing tech-
nique common in machine learning, can be used to isolate the
hands from the background of the images. K-Means segments
an image into k groups based on the similarity of pixel color
values. If an image contains someone's hands in front of a
white background (i.e. a sink), K-Means with a clustering of
k=2 will classify the pixels into either the group of background
pixels or the group of hand pixels. Once the two regions have
been identified, the relevant pixels can be preserved, while the
unwanted background pixels can be removed before the image
data is sent to the Support Vector Machine [9].
Support Vector Machines (SVM) are learning algorithms
that analyze data for regression and classification purposes.
An SVM attempts to draw a line between two data sets, as
depicted in Figure 2, in order to classify those above the line
2
into one set, and those below the line into another. SVMlight
is an implementation of a Support Vector Machine in the
programming language C that provides various algorithms.
SVMlight
's pattern recognition function trained the system to
classify new datasets of hand motions against a standard and
check for a match.
Figure 2. Support Vector Machine Separation
SVMlight
uses kernel functions in order to classify data
in different forms. Kernels are methods of organizing data,
based on an equation. SVMlight
offers the option to create a
kernel in addition to four predefined types of kernels: Linear,
Polynomial, Radial Basis Function (RBF), and Sigmoid Tanh.
This system employed linear kernels [K(X, Y ) = XT
Y ],
which attempted to match images to known handwashing
motions based on a linear equation [10].
A trained model is generated by giving a machine learning
algorithm examples of categorized data in order to “teach” it
to categorize new information, which it does through kernels.
This trained model is what is used to match new images to
already known handwashing images. In SVMlight
, a model
is trained with raw data provided in specialized text files.
These data files are in a specific format with attributes called
features and values, which are paired together. When new data
is collected, it can be compared against a trained model to
determine if the data matches the data represented within the
model.
III. EXPERIMENTAL PROCEDURE
The primary subsets of the experimental process were data
collection, image processing, and machine learning.
A. Preface
The final implementation of the Hygiene Monitoring System
would consist of activation, recording, image processing, and
handwashing procedure verification. However, before imple-
menting the system, it was necessary to develop a trained
model by manually collecting data in a video format before
being split into images stored in a PNG format. This training
data was then prepared by applying a contrast, a Gaussian
Blur, and was resized. The data was then iterated through
with a C script to convert the images into raw data to feed
into the SVMlight
. When a recording is started, data would
be automatically collected, processed, and analyzed by the
system.
The terminal command nvgstcapture, pre-installed on the
Jetson TX2, begins the camera recording. This study utilized
the embedded CSI camera system with a resolution of 1920
pixels by 1080 pixels and a frame rate of 60 frames per second.
The above command produced JPEG files at an interval of
one picture per second for 40 seconds, for a total of 40
pictures. This differs from the collection of training data as
the tremendous amount of data stored in a video is only
necessary for training the model. Using ImageMagick, these
images designed for testing were cropped and modified with
a slight contrast and Gaussian Blur. Subsequently, a K-Means
algorithm was applied to the each image to remove extraneous
information by setting the values of all background pixels
to black. At the end of this process, the images contained
a slightly blurred pair of hands with a black background. The
pixel values of these images were then run through a script in
C (Appendix Reference to Code) to format the image data to
make them readable by the SVM. This formatting was done so
that the SVM could classify the testing data more accurately,
because the images would be as similar as possible to the data
the SVM used to learn. The formatted data was inputted into
SVMlight
to test the model.
The model was eventually tested by evaluating the accuracy
of the system in identifying a single motion. After performing
the first test, there was more test data created to test the ability
of the system to identify all of the motions correctly when
provided with an entirely proper test dataset. These various
tests were performed in order to gauge the efficacy of the
trained model in various expected circumstances.
B. Segmenting Training Data into Images
The collection of data was necessary in order to train the
model. Video was recorded of the subject performing the
six handwashing motions, centered in a well-lit environment
with a white background. The demonstration was performed
within two feet of the lens. The videos were recorded and
saved in an AVI video format. The data consisted of the
handwashing motions each recorded for approximately 55
seconds in the order of R over L web, L over R web, Link,
R Thumb, L Thumb, Simple Press, Roof, and Mortar Pestle,
where “R” represents the right hand, and “L” stands for the
left hand.
Afterward, the video was edited to remove transitions
between motions and rendered into an AVI format before
being split into individual images in a PNG format. Through
this process, the eight minutes and six seconds of video were
separated into 28,806 individual images using the FFmpeg
library in the UNIX terminal. The command
ffmpeg -i 5motions scoop.avi ./Frames/motions%05d.png
was run, where 5motions scoop.avi was the rendered video
3
of purely the hand motions and ./Frames/motions%05d.png
saved each individual frame of the video into a directory
named Frames.
C. Image Processing
1) Preprocessing of Training Images
ImageMagick was used to alter the images before using
them as training data. The command
mogrify -shave 300x75 -contrast -brightness-contrast
5 -gaussian-blur 10x5 “filename”
allowed for the cropping of 300 pixels off the sides
and 75 pixels off the top and bottom, the addition of minor
contrast, and the application of a Gaussian Blur. The cropping
removed any undesired details while the contrast intensified
the difference between the lighter and darker elements of the
image [10]. This command was added into a bash script that
iterated through each of the 28,806 PNG files in a specified
directory to crop and apply a contrast to each image.
A script was then written in C to first apply a K-Means
algorithm and then to transition each of the PNG files into
data files in a format readable by the SVMlight
library. The
K-Means algorithm categorized each pixel of the image into
either a background class or a hands class. Each pixel assigned
to the background class was then effectively removed from the
image by being set to black, while the pixels assigned to the
hands class were maintained to be sent to the SVM training
process.
The reformatting algorithm proceeded to break down each
image into a text file consisting of many rows representing the
pixels of each image. Each row consisted of attributes called
features and values in the format of feature:value, where the
feature was the index of every fifth pixel and the value was
a representation of the color of that pixel. An interval of five
pixels was chosen to significantly reduce the file size required
to store the data. The color value used to represent each feature
(pixel) was the sum of the red value multiplied by 100, the
green value multiplied by 10, and the blue value multiplied
by 1. In this way, three values of color (red, green, blue) were
consolidated into one large value to match to every fifth pixel.
Together, these rows of features and corresponding values were
combined into text files that would be interpretable by the
Support Vector Machines.
2) Testing Images’ Processing Pipeline
In order to accurately test data against the trained Support
Vector Machines, the images supplied to the machine learning
algorithms needed to appear in a similar format to those
used to train the model. Thus, the image adjustments and
background removal from the preprocessing steps were also
used in the image processing pipeline.
The images collected from the Jetson TX2’s camera were
also resized to match the training images. Each image was
then provided with a level of contrast, brightness, and a
Gaussian Blur after being resized using the ImageMagick
command
mogrify -resize 1320x930! -contrast -brightness-contrast
5 -gaussian-blur 10x5.
These images were then converted into the PNG format
with the ImageMagick command
magick convert filename.jpg filename.png
where filename.jpg is a JPEG file captured from the
CSI camera on the NVIDIA Jetson TX2 and filename.png
represents the output of the new file.
Next, to remove any bias that would be introduced by irrel-
evant pixel data, the background of each image was removed
to isolate the hands in the image. This was an essential step,
as isolating the hands generated a clearly-defined shape and
outline for each hand motion. This information, in the form
of the absence of the surrounding pixels, would be a signif-
icant factor in the machine learning process. The K-Means
clustering algorithm was used to remove the backgrounds.
This algorithm segments an image into k groups based on the
similarity of pixel color values. The algorithm treats the data
in this system as a three-dimensional system, with dimensions
of red, green, and blue color values. This allowed for the
distance between the color values of two given pixels to be
numerically calculated, thus providing a direct measure of the
pixels'similarity.
The general K-means algorithm proceeds as follows:
1) Select k initial centroids (the center of each group)
randomly within the bounds of the set of data.
2) For each data point, find the closest centroid to that
point by calculating distance values between each pixel
and the centroid pixels. Assign the point to the group
belonging to that centroid.
3) For each group, take the RGB values of each pixel and
add them separately, so that there is a total red value, a
total green value, and a total blue value for all the pixels
in that group.
4) Divide each value by the total number of pixels in that
group in order to get the average red, green, and blue
values.
5) Set the centroid pixel’s color value of that group equal
to those average RGB values.
6) Repeat steps 2, 3, 4, and 5, until the location of each
centroid does not change.
For the purposes of this system of SVMs, a value of k = 2
was established in order to segment the image into two parts:
the background and the hands. However, the initial results
from the K-Means algorithm appeared to be inaccurate and
inconsistent, resulting in unsuitable training data. This was
likely because of the random initialization of the centroids,
which may have resulted in color values that were too close
to each other to allow for effective separation of the image
into groups.
To accommodate for this, rather than beginning with random
centroids, a targeted centroid was selected as the average color
4
of the top-left corner of the image (an area assumed to be part
of the background), and a second centroid from the average
color of the center of the image (an area assumed to be the
hand). At the end of the algorithm, the group resulting from the
centroid from the top-left would contain all of the background
pixels, and the group resulting from the centroid from the
center would contain all of the relevant hand pixels. Once the
groups were determined, the pixels in the background group
were changed to black pixels. This effectively removed the
background pixels from the machine learning training process,
isolating the hands from the background of each image.
The final product of these image processing techniques was
an image of hands that retained their most distinguishing
characteristics surrounded by a black background. Figure 3
depicts the results of each image processing technique.
Figure 3. Left to right: example hands image, Gaussian blur applied, K-Means
applied to isolate hands
At this point, the algorithm written in the C programming
language used in the preprocessing step was again used to
convert the images into the text files readable by the SVMs.
The data was then compared to the trained model created via
the SVMlight
library within the Ubuntu 12.04 command-line.
(Appendix Reference to Code)
D. Machine Learning
Machine learning was used to analyze processed images and
create a trained model representing the data. The trained model
later served as a reference to categorize given hand motions
as correct or incorrect.
1) Using Data to Train a Model
A process that can identify a certain hand motion as proper
must be formatted to have features identical to those of the
trained model. Once the image data was formatted correctly,
the learn function of SVMlight
was used to create a model
(support vector machine) for each of the eight hand motion
variations. To do so, correct training examples of each hand
motion were fed into the machine learning algorithms of
SVMlight
. The models were created while retaining the greatest
amount of detail using a lossless compression format with
PNG image files and splitting the original video into 60 frames
per second.
The data was then converted into a format easily interpreted
by the SVMlight
library and its algorithms by using a C script
(Appendix Reference to Code). Once converted into a suitable
format, the data was used to train the model with the command
svm learn training data model,
where training data was a file containing rows of image
data to train on, as described previously, and model was the
output file name for the resultant trained model.
2) Comparing Collected Data to the Model
The final step in the implementation of the Hygiene
Monitoring System was to classify recorded data as correct or
incorrect. Classification occurred through the comparison of
collected data to the trained model, using SVMlight
command
svm classify collected data model results
where collected data was a file containing the data
recorded, which would be compared against the model file,
containing the trained model, and results was the output
of the results of the comparison. The output file contained
information that described how close the collected data
adhered to the model by reporting the percentage of the six
handwashing motions completed out of those represented
within the model to determine the person’s overall conformity
to the procedure. A value of 80-90% would demonstrate the
completion of a correct handwashing procedure. A value of
100% is not expected because several frames of a sample
test data set are expected to contain no hand motions, such
as the transition between two hand motions. However, if a
percentage significantly lower than 80-90% was returned, it
would be clear that incomplete handwashing was observed.
3) Testing the Model
Two tests were performed to evaluate the accuracy of
the Hygiene Monitoring System. The first test attempted to
compare data comprised of the link motion against the trained
model. This returned a percentage of compliance to proper
handwashing procedure, depending on the motions detected.
Then, the percentage returned was analyzed to determine if
the link motion was detected.
In the second test, new testing data was recorded and
processed in an identical format to the training model data in
order to perform more intensive testing. Thus, the new images
were processed with a Gaussian Blur, K-Means partitioning,
resizing to 1320 pixels by 930 pixels, and an application
of light contrast. This new data included the simple press,
webs, mortar and pestle, thumbs, and roof motions, omitting
the link motion due to data collection limitations. The result
was indicated by the percentage derived from the correctly
recognized images out of the total number of images tested for
each specific motion. Subsequently, the data was also analyzed
to report the overall percentage of accuracy for all motions,
or the number of correctly classified images out of the total
number of tested images.
IV. RESULTS
The performance of the Hygiene Monitoring System was
assessed with test data collected in a simulated environment
with the intent of verifying the functionality of the system in
a controlled setting.
This evaluation tested the system’s accuracy in correctly
categorizing images as distinct hand motions. Multiple sets
5
of test data were created and compared against the trained
models.
In order to test the ability of the model to detect a single
motion at a time, the first test example contained only the link
hand motion being performed. When this data was classified
through the support vector machine’s model, it yielded results
showing that it fulfilled 14% of the expected handwashing
procedure. Since the model expects eight distinct motions (six
unique techniques, but two are repeated for each hand), the
observed percentage of 14% is extremely close to the expected
value of 14.28%.
In the next test, the system attempted to classify a data
set containing images of a complete handwashing procedure.
However, due to data collection limitations, the link motion
was excluded from this set. The other hand motions and
associated data were unaffected. The images in the test data
set included two to five frames for each motion. This data
was then compared to the trained model through SVMlight
to identify the percentage compliance to the handwashing
procedure by the test subject. The number of frames that were
properly identified are indicated below in figure 4. 18 images
were correctly identified out of 24 tested, corresponding to an
aggregate of 75% accuracy in correctly identifying the hand
motions.
Figure 4. Results
V. CONCLUSIONS
The results produced indicate that the Hygiene Monitoring
System can correctly identify compliance to proper handwash-
ing procedure.
A. Significance
A successful implementation of the Hygiene Monitoring
System could dramatically reduce the rate of infection and
deaths related to healthcare negligence. On any given day,
about one in twenty-five hospital patients contract at least one
healthcare-associated infection [11]. Although handwashing
seems like an elementary process, multiple studies illustrate
the immense ramifications of a lack of regard for procedure.
This system encourages greater compliance, a major step
toward limiting the spread of disease and prioritizing patient
welfare.
B. Applications
In the future, the Hygiene Monitoring System can be im-
plemented in hospitals around the world. The system's ability
to monitor and identify correct handwashing practices will in-
crease transparency within the healthcare industry. Moreover,
the systems records could give insight into any liability issues
or legal matters, offering an objective viewpoint into the often
subjective and complex world of medical lawsuits.
The concept of the Hygiene Monitoring System also lends
itself to the food service industry. The spread of germs from
workers to food accounts for 89% of outbreaks correspond-
ing to food contamination [12]. The implementation of the
Hygiene Monitoring System in restaurants and food vendors
could advance the state of sanitation in todays world and
mitigate the spread of foodborne illness.
Furthermore, the system developed in this study demon-
strates a computer’s ability to differentiate between human
hand motions. This would prove useful in the interpretation
of sign language hand positions, as a system trained with
enough images could develop models representing various
words and phrases. Such a development would significantly
improve accessibility for hearing-impaired individuals and
those attempting to communicate with them.
C. Future Improvements
Certain improvements can be made to refine the reliability
of this Hygiene Monitoring System. Most significantly, the
collection and usage of more data will improve the training
models, increasing the probability that real world data will be
correctly classified by the system.
The K-Means algorithm could be improved to suit a wider
range of image cases. The current algorithm operates under
the condition that the hands are in the center of the image.
Such a change would
A stereographic camera (a camera that records from two
slightly different positions simultaneously in order to generate
a 3D representation of an image) would provide depth to the
data collected. By deriving SVM values from the physical
location of a hand rather than from the color values of pixels,
the system could be more reliable when testing data with hands
of varied skin tones, or with a background of a similar color
to the hands.
The Hygiene Monitoring System could be more user-
friendly. Currently, the system is activated by a keyboard
press, which is not appropriate for a real-life context such
as a hospital environment. In the future, the system will
ideally be activated by a motion sensor to detect when an
employee begins washing their hands. Further integration with
a hospital system would also be an ideal addition. Each
employee, before washing their hands, would check into the
system using an radio-frequency identification device (RFID)
tag, and once the employee washed their hands and the system
determined the level of compliance with the six hand motions,
the system would record the level of compliance in a database
of employee data.
6
The kernel currently being used in the SVM is linear, but
there are other, more complex kernels that the SVM could
use as well. The polynomial kernel separates the result of a
classification based on a defined, but arbitrary order. The RBF
kernel separates the result of a classification using normal
curves around the data points and sums them so that the
decision boundary can be defined by a type of geometric
condition (topology). The Sigmoid Tanh kernel separates the
result of a classification using a logistic function to define
curves depending on the logistic value being greater than the
value generated through the model based upon probability.
Working with any of these kernels in the SVM could increase
the system’s accuracy.
APPENDIX
ACKNOWLEDGMENT
The authors of this paper gratefully thank the following:
project mentor Alex Weiner for his extensive experience and
hands-on involvement; Residential Teaching Assistant Siddhi
Shah for her invaluable support and efforts in coordination
and communication; Research Coordinator Brian Lai and Head
Counselor Nicholas Ferraro for their guidance and feedback;
Program Director Ilene Rosen, Ed. D. and Associate Program
Director Jean Patrick Antoine, without whom this project
would not have been possible. Finally, the authors appreciate
the generosity of the sponsors of the New Jersey Governor's
School of Engineering and Technology: Rutgers University,
Rutgers School of Engineering, The State of New Jersey,
Lockheed Martin, Silver Line, Rubiks, other Corporate Spon-
sors, and NJ GSET Alumni.
REFERENCES
[1] “WHO Guidelines on Hand Hygiene in Health
Care”, Apps.who.int, 2018. [Online]. Available:
http://apps.who.int/iris/bitstream/handle/10665/44102/9789241597906
eng.pdf?sequence=1. [Accessed: 22- Jul- 2018].
[2] Sebille V, Chevret S, Valleron AJ. Modeling the spread of resistant
nosocomial pathogens in an intensive-care unit. Infection Control and
Hospital Epidemiology, 1997, 18:8492.
[3] Klevens R et al. Estimating health care-associated infections and deaths
in U.S. hospitals, 2002. Public Health Report, 2007, 122:160166.
[4] “How to Handwash?”, Who.int, 2018. [Online]. Available:
http://www.who.int/gpsc/tools/HAND WASHING.pdf. [Accessed:
22- Jul- 2018].
[5] “Your 5 Moments for Hand Hygiene”, Who.int, 2018. [Online]. Avail-
able: http://www.who.int/gpsc/tools/5momentsHandHygiene A3.pdf.
[Accessed: 22- Jul- 2018].
[6] “Jetson TX2 Module”, NVIDIA Developer, 2018. [Online]. Available:
https://developer.nvidia.com/embedded/buy/jetson-tx2. [Accessed: 22-
Jul- 2018].
[7] “GPU Programming—NVIDIA,” NVIDIA Developer, 2018. [online].
Available: http://www.nvidia.in/object/gpu-programming-in.html [Ac-
cessed 26 Jul. 2018].
[8] I. LLC, “Convert, Edit, Or Compose Bitmap Images @
ImageMagick”, Imagemagick.org, 2018. [Online]. Available:
https://www.imagemagick.org/script/index.php#features. [Accessed:
22- Jul- 2018].
[9] Ng, A. and Piech, C. “K Means”, 2013. [Online] Available at:
http://stanford.edu/ cpiech/cs221/handouts/kmeans.html [Accessed 26
Jul. 2018].
[10] “SVM-Light Support Vector Machine”, Svmlight.joachims.org, 2018.
[Online]. Available: http://svmlight.joachims.org/. [Accessed: 22- Jul-
2018].
7
[11] “Hand Hygiene in Healthcare Settings”, cdc.gov,2018.[Online]. Avail-
able: https://www.cdc.gov/handhygiene/index.html [Accessed 22 Jul.
2018].
[12] “Food Worker Handwashing and Restaurant
Factors”, Cdc.gov, 2018. [Online]. Available:
https://www.cdc.gov/nceh/ehs/ehsnet/plain language/food-worker-
handwashing-restaurant-factors.htm. [Accessed: 26- Jul- 2018].
8

More Related Content

What's hot

3.introduction onwards deepa
3.introduction onwards deepa3.introduction onwards deepa
3.introduction onwards deepa
Safalsha Babu
 

What's hot (19)

International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...
A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...
A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...
 
C1 mala1 akila
C1 mala1 akilaC1 mala1 akila
C1 mala1 akila
 
A review on image processing
A review on image processingA review on image processing
A review on image processing
 
Mtech Second progresspresentation ON VIDEO SUMMARIZATION
Mtech Second progresspresentation ON VIDEO SUMMARIZATIONMtech Second progresspresentation ON VIDEO SUMMARIZATION
Mtech Second progresspresentation ON VIDEO SUMMARIZATION
 
3.introduction onwards deepa
3.introduction onwards deepa3.introduction onwards deepa
3.introduction onwards deepa
 
Lossless compression of Medical Videos using HEVC
Lossless compression of Medical Videos using HEVCLossless compression of Medical Videos using HEVC
Lossless compression of Medical Videos using HEVC
 
L0956974
L0956974L0956974
L0956974
 
Image Authentication Using Digital Watermarking
Image Authentication Using Digital WatermarkingImage Authentication Using Digital Watermarking
Image Authentication Using Digital Watermarking
 
IRJET- Automated Student’s Attendance Management using Convolutional Neural N...
IRJET- Automated Student’s Attendance Management using Convolutional Neural N...IRJET- Automated Student’s Attendance Management using Convolutional Neural N...
IRJET- Automated Student’s Attendance Management using Convolutional Neural N...
 
An overview Survey on Various Video compressions and its importance
An overview Survey on Various Video compressions and its importanceAn overview Survey on Various Video compressions and its importance
An overview Survey on Various Video compressions and its importance
 
B tech vi sem cse dip lecture 1
B tech vi sem cse dip  lecture 1B tech vi sem cse dip  lecture 1
B tech vi sem cse dip lecture 1
 
Technical file
Technical fileTechnical file
Technical file
 
Technical file
Technical fileTechnical file
Technical file
 
DISTRIBUTED SYSTEM FOR 3D REMOTE MONITORING USING KINECT DEPTH CAMERAS
DISTRIBUTED SYSTEM FOR 3D REMOTE MONITORING USING KINECT DEPTH CAMERASDISTRIBUTED SYSTEM FOR 3D REMOTE MONITORING USING KINECT DEPTH CAMERAS
DISTRIBUTED SYSTEM FOR 3D REMOTE MONITORING USING KINECT DEPTH CAMERAS
 
IRJET- ROI based Automated Meter Reading System using Python
IRJET-  	  ROI based Automated Meter Reading System using PythonIRJET-  	  ROI based Automated Meter Reading System using Python
IRJET- ROI based Automated Meter Reading System using Python
 
Indoor 3 d video monitoring using multiple kinect depth cameras
Indoor 3 d video monitoring using multiple kinect depth camerasIndoor 3 d video monitoring using multiple kinect depth cameras
Indoor 3 d video monitoring using multiple kinect depth cameras
 
PERCEPTUALLY LOSSLESS COMPRESSION WITH ERROR CONCEALMENT FOR PERISCOPE AND SO...
PERCEPTUALLY LOSSLESS COMPRESSION WITH ERROR CONCEALMENT FOR PERISCOPE AND SO...PERCEPTUALLY LOSSLESS COMPRESSION WITH ERROR CONCEALMENT FOR PERISCOPE AND SO...
PERCEPTUALLY LOSSLESS COMPRESSION WITH ERROR CONCEALMENT FOR PERISCOPE AND SO...
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 

Similar to A Hygiene Monitoring System

Implementation of embedded arm9 platform using qt and open cv for human upper...
Implementation of embedded arm9 platform using qt and open cv for human upper...Implementation of embedded arm9 platform using qt and open cv for human upper...
Implementation of embedded arm9 platform using qt and open cv for human upper...
Krunal Patel
 
Towards a distributed framework to analyze multimodal data.pdf
Towards a distributed framework to analyze multimodal data.pdfTowards a distributed framework to analyze multimodal data.pdf
Towards a distributed framework to analyze multimodal data.pdf
CarlosRodrigues517978
 
Clo architecture for video surveillance service based on p2 p and cloud compu...
Clo architecture for video surveillance service based on p2 p and cloud compu...Clo architecture for video surveillance service based on p2 p and cloud compu...
Clo architecture for video surveillance service based on p2 p and cloud compu...
manish bhandare
 

Similar to A Hygiene Monitoring System (20)

Detection of medical instruments project- PART 1
Detection of medical instruments project- PART 1Detection of medical instruments project- PART 1
Detection of medical instruments project- PART 1
 
Cloud Computing and PSo
Cloud Computing and PSoCloud Computing and PSo
Cloud Computing and PSo
 
SIGN LANGUAGE INTERFACE SYSTEM FOR HEARING IMPAIRED PEOPLE
SIGN LANGUAGE INTERFACE SYSTEM FOR HEARING IMPAIRED PEOPLESIGN LANGUAGE INTERFACE SYSTEM FOR HEARING IMPAIRED PEOPLE
SIGN LANGUAGE INTERFACE SYSTEM FOR HEARING IMPAIRED PEOPLE
 
Gesture Recognition System using Computer Vision
Gesture Recognition System using Computer VisionGesture Recognition System using Computer Vision
Gesture Recognition System using Computer Vision
 
Implementation of embedded arm9 platform using qt and open cv for human upper...
Implementation of embedded arm9 platform using qt and open cv for human upper...Implementation of embedded arm9 platform using qt and open cv for human upper...
Implementation of embedded arm9 platform using qt and open cv for human upper...
 
F0704024031
F0704024031F0704024031
F0704024031
 
IRJET- An Optimized Approach for Deaf and Dumb People using Air Writing
IRJET- An Optimized Approach for Deaf and Dumb People using Air WritingIRJET- An Optimized Approach for Deaf and Dumb People using Air Writing
IRJET- An Optimized Approach for Deaf and Dumb People using Air Writing
 
An Approach Towards Lossless Compression Through Artificial Neural Network Te...
An Approach Towards Lossless Compression Through Artificial Neural Network Te...An Approach Towards Lossless Compression Through Artificial Neural Network Te...
An Approach Towards Lossless Compression Through Artificial Neural Network Te...
 
IRJET- Analysing Wound Area Measurement using Android App
IRJET- Analysing Wound Area Measurement using Android AppIRJET- Analysing Wound Area Measurement using Android App
IRJET- Analysing Wound Area Measurement using Android App
 
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
 
Towards a distributed framework to analyze multimodal data.pdf
Towards a distributed framework to analyze multimodal data.pdfTowards a distributed framework to analyze multimodal data.pdf
Towards a distributed framework to analyze multimodal data.pdf
 
Background differencing algorithm for moving object detection using system ge...
Background differencing algorithm for moving object detection using system ge...Background differencing algorithm for moving object detection using system ge...
Background differencing algorithm for moving object detection using system ge...
 
Detection of medical instruments project- PART 2
Detection of medical instruments project- PART 2Detection of medical instruments project- PART 2
Detection of medical instruments project- PART 2
 
Linux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerLinux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop Computer
 
Linux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerLinux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop Computer
 
Clo architecture for video surveillance service based on p2 p and cloud compu...
Clo architecture for video surveillance service based on p2 p and cloud compu...Clo architecture for video surveillance service based on p2 p and cloud compu...
Clo architecture for video surveillance service based on p2 p and cloud compu...
 
Face detection on_embedded_systems
Face detection on_embedded_systemsFace detection on_embedded_systems
Face detection on_embedded_systems
 
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDSFACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
 
IRJET- A Vision based Hand Gesture Recognition System using Convolutional...
IRJET-  	  A Vision based Hand Gesture Recognition System using Convolutional...IRJET-  	  A Vision based Hand Gesture Recognition System using Convolutional...
IRJET- A Vision based Hand Gesture Recognition System using Convolutional...
 
An Stepped Forward Security System for Multimedia Content Material for Cloud ...
An Stepped Forward Security System for Multimedia Content Material for Cloud ...An Stepped Forward Security System for Multimedia Content Material for Cloud ...
An Stepped Forward Security System for Multimedia Content Material for Cloud ...
 

Recently uploaded

Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
amitlee9823
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
amitlee9823
 
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
amitlee9823
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
amitlee9823
 
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
amitlee9823
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
amitlee9823
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
amitlee9823
 
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
amitlee9823
 

Recently uploaded (20)

Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
 
Anomaly detection and data imputation within time series
Anomaly detection and data imputation within time seriesAnomaly detection and data imputation within time series
Anomaly detection and data imputation within time series
 
Discover Why Less is More in B2B Research
Discover Why Less is More in B2B ResearchDiscover Why Less is More in B2B Research
Discover Why Less is More in B2B Research
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
 
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
 
BDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort Service
BDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort ServiceBDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort Service
BDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort Service
 
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
 
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightCheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
 
Capstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics ProgramCapstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics Program
 
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysis
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
 
hybrid Seed Production In Chilli & Capsicum.pptx
hybrid Seed Production In Chilli & Capsicum.pptxhybrid Seed Production In Chilli & Capsicum.pptx
hybrid Seed Production In Chilli & Capsicum.pptx
 
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
 
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
 

A Hygiene Monitoring System

  • 1. A Hygiene Monitoring System Brian Cherin Rohan Jinturkar brncherin@gmail.com rjinturkar@gmail.com Bhargavi Lanka Daniel McKeon Nivedhitha Sivakumar bhargavilanka29@gmail.com dftmckeon@gmail.com blueflute19@gmail.com Alex Weiner* alexweiner@alexweiner.com New Jersey’s Governor’s School of Engineering and Technology July 27, 2018 *Corresponding Author Abstract—In the healthcare industry, patients are often ex- posed to harmful pathogens due to a lack of compliance to hand hygiene protocol. The vast majority of healthcare professionals do not abide by hand hygiene standards established by the World Health Organization, facilitating the spread of nosocomial (hospital-acquired) infections. When representatives trained in proper handwashing procedures monitored medical profession- als, there was a significant increase in compliance with proper protocol. Given this correlation between observance and adher- ence, a Hygiene Monitoring System was developed to monitor handwashing through the application of machine learning. The embedded system captured, processed, and compared instances of handwashing to the proper procedure. An implementation of this system would encourage healthcare professionals to follow the official protocol denoted by the World Health Organization and dramatically reduce the likelihood of healthcare–associated infections. I. INTRODUCTION Hands are the primary pathways of germ transmission, yet healthcare professionals often overlook proper handwashing protocol [1]. In one study, only 22% of hospital workers complied with protocol [2]. Under surveillance, compliance increased to 52.2%, demonstrating a trend between observation and adherence. This issue has global ramifications: healthcare- associated infections (HCAI) contribute to over 135,000 deaths in developed nations each year [3]. The Hygiene Monitoring System developed in this study monitors and identifies proper hand hygiene in hospitals to increase adherence to protocol. II. BACKGROUND A. Correct Handwashing Procedure The World Health Organization (WHO) defines handwash- ing as proper when six motions are performed: the simple press; the roof; the webs; the links; the thumbs; and the mortar and pestle. Pictured in figure 1, these motions should be performed for at least 40-60 seconds. The webs and thumbs motions involve the right hand acting on the left and vice- versa; for instance, one must scrub both the left and right thumbs to abide by WHO guidelines [4]. Figure 1. Top left to right: simple press, roof, web; Bottom left to right: link, thumbs, mortar & pestle The WHO also recommends that healthcare workers fol- low proper handwashing procedure after five key moments. They are defined as 1) before touching a patient, 2) before clean/aseptic procedures, 3) after body fluid exposure/risk, 4) after touching a patient, and 5) after touching patient surround- ings. The concept that healthcare workers must consistently abide by WHO protocol is essential to the purpose of this system [5]. B. Software C was the computer programming language chosen for this project. It was developed in 1972 by Dennis Ritchie at Bell Labs, and is closely associated with the Unix op- erating system. It is commonly considered a middle level programming language, which does not refer to its difficulty 1
  • 2. or programming power, but rather its ability to access the system's more basic functions while still supplying higher level constructs. Compared to other higher level programming languages such as Python, C is more efficient in its processing abilities, allowing for rapid analysis of adherence to protocol. Linux is a family of open-source, free operating systems that can be installed on a variety of electronic devices. This system utilized Ubuntu Linux 12.04, which came pre-installed on the NVIDIA Jetson TX2. The operating system supports C programming as well as direct command line input in the form of UNIX commands, also referred to running commands in the terminal. Bash is a command processor that allows the system to read commands directly from a file. Various Bash scripts were executed in order to install the libraries defined later in this paper. C. Hardware The NVIDIA Jetson TX2 is an embedded system with machine learning capabilities. Equipped with USB ports and digital/analog pins, it is capable of connecting to a variety of sensors and peripheral devices. The NVIDIA Jetson TX2 runs on C++ but has C functionality and works with the Ubuntu operating system. The included Graphics Processing Unit (GPU) supports the machine learning algorithms used in this study. The system also supports a Camera Serial Interface (CSI) which is an embedded camera system that captures high definition images and videos [6]. A GPU, unlike a Central Processing Unit (CPU), has the ability to execute or handle thousands of threads simultane- ously. A GPU contains many more processing units (cores) than a CPU, enabling it to process data very quickly. This dramatically reduces computation time for running complex algorithms, increasing efficiency. This practice of using GPUs to perform computations is referred to as general-purpose computing on graphics processing units [7]. D. Image Processing This study involved conversions between multiple file types. They are defined below for reference: • MP4, or MPEG-4 Part 14, is a modern multimedia file format for storing video and audio in a space and quality efficient format with widespread compatibility. • AVI, or Audio Video Interleave, is an older multimedia file format for storing video and audio with less compat- ibility than more modern formats. • JPEG, named for its development by the Joint Photo- graphic Experts Group, is a file format for storing images in smaller sizes than other formats. It utilizes approxima- tions while compressing pictures and thus cannot support transparency. • PNG, or Portable Network Graphics, is a file format for storing images with greater quality than most image formats as a result of utilizing lossless compression. Unlike JPEG, it supports transparency but sacrifices a smaller file size for greater quality. The red, green, and blue (RGB) color model is a format for producing a broad array of colors by adding varying amounts of red, green, and blue pigment, ranging from the values 0 to 255 for each pigment. By describing colors in this format, electronic systems can differentiate between shades. In this project, RGB pixel values were extracted from images to facilitate the identification of hand motions within each image. The Gaussian Blur uses a Gaussian distribution to blur an image. This method of blurring the image reduces image noise and increases the accuracy of the Support Vector Machines used in the system. In this system, two constants necessary to execute the Gaussian blur, the radius and the sigma value, were assigned to be 10 and 5, respectively. ImageMagick is a photo and video editing library com- patible with UNIX terminal commands. Its implementation allowed for the elimination of complex algorithms. Through the application of a Gaussian Blur, alteration of light contrast, and cropping of images, this library aided in maintaining the visual consistency of the images throughout this study [8]. FFmpeg is a library used to edit and manipulate information stored in various video formats. FFmpeg commands available within the UNIX terminal could separate a recorded video into individual frames without compromising quality. Lossless image compression is a format for image data storage that utilizes additional space in order to preserve image quality. This image formatting technique was utilized in place of lossy compression, which would reduce quality in order to reduce the amount of space the image uses in storage. The lossless image compression provided by the PNG file format was chosen because image quality was preferred over storage preservation while training a machine learning model. E. Relevant Machine Learning Machine learning is a subset of artificial intelligence that provides systems with the ability to learn and refine models through experience, as opposed to relying on explicit coding. This field intends to help systems learn automatically to make better decisions in the future based on given data and examples. The K-Means segmentation algorithm, one processing tech- nique common in machine learning, can be used to isolate the hands from the background of the images. K-Means segments an image into k groups based on the similarity of pixel color values. If an image contains someone's hands in front of a white background (i.e. a sink), K-Means with a clustering of k=2 will classify the pixels into either the group of background pixels or the group of hand pixels. Once the two regions have been identified, the relevant pixels can be preserved, while the unwanted background pixels can be removed before the image data is sent to the Support Vector Machine [9]. Support Vector Machines (SVM) are learning algorithms that analyze data for regression and classification purposes. An SVM attempts to draw a line between two data sets, as depicted in Figure 2, in order to classify those above the line 2
  • 3. into one set, and those below the line into another. SVMlight is an implementation of a Support Vector Machine in the programming language C that provides various algorithms. SVMlight 's pattern recognition function trained the system to classify new datasets of hand motions against a standard and check for a match. Figure 2. Support Vector Machine Separation SVMlight uses kernel functions in order to classify data in different forms. Kernels are methods of organizing data, based on an equation. SVMlight offers the option to create a kernel in addition to four predefined types of kernels: Linear, Polynomial, Radial Basis Function (RBF), and Sigmoid Tanh. This system employed linear kernels [K(X, Y ) = XT Y ], which attempted to match images to known handwashing motions based on a linear equation [10]. A trained model is generated by giving a machine learning algorithm examples of categorized data in order to “teach” it to categorize new information, which it does through kernels. This trained model is what is used to match new images to already known handwashing images. In SVMlight , a model is trained with raw data provided in specialized text files. These data files are in a specific format with attributes called features and values, which are paired together. When new data is collected, it can be compared against a trained model to determine if the data matches the data represented within the model. III. EXPERIMENTAL PROCEDURE The primary subsets of the experimental process were data collection, image processing, and machine learning. A. Preface The final implementation of the Hygiene Monitoring System would consist of activation, recording, image processing, and handwashing procedure verification. However, before imple- menting the system, it was necessary to develop a trained model by manually collecting data in a video format before being split into images stored in a PNG format. This training data was then prepared by applying a contrast, a Gaussian Blur, and was resized. The data was then iterated through with a C script to convert the images into raw data to feed into the SVMlight . When a recording is started, data would be automatically collected, processed, and analyzed by the system. The terminal command nvgstcapture, pre-installed on the Jetson TX2, begins the camera recording. This study utilized the embedded CSI camera system with a resolution of 1920 pixels by 1080 pixels and a frame rate of 60 frames per second. The above command produced JPEG files at an interval of one picture per second for 40 seconds, for a total of 40 pictures. This differs from the collection of training data as the tremendous amount of data stored in a video is only necessary for training the model. Using ImageMagick, these images designed for testing were cropped and modified with a slight contrast and Gaussian Blur. Subsequently, a K-Means algorithm was applied to the each image to remove extraneous information by setting the values of all background pixels to black. At the end of this process, the images contained a slightly blurred pair of hands with a black background. The pixel values of these images were then run through a script in C (Appendix Reference to Code) to format the image data to make them readable by the SVM. This formatting was done so that the SVM could classify the testing data more accurately, because the images would be as similar as possible to the data the SVM used to learn. The formatted data was inputted into SVMlight to test the model. The model was eventually tested by evaluating the accuracy of the system in identifying a single motion. After performing the first test, there was more test data created to test the ability of the system to identify all of the motions correctly when provided with an entirely proper test dataset. These various tests were performed in order to gauge the efficacy of the trained model in various expected circumstances. B. Segmenting Training Data into Images The collection of data was necessary in order to train the model. Video was recorded of the subject performing the six handwashing motions, centered in a well-lit environment with a white background. The demonstration was performed within two feet of the lens. The videos were recorded and saved in an AVI video format. The data consisted of the handwashing motions each recorded for approximately 55 seconds in the order of R over L web, L over R web, Link, R Thumb, L Thumb, Simple Press, Roof, and Mortar Pestle, where “R” represents the right hand, and “L” stands for the left hand. Afterward, the video was edited to remove transitions between motions and rendered into an AVI format before being split into individual images in a PNG format. Through this process, the eight minutes and six seconds of video were separated into 28,806 individual images using the FFmpeg library in the UNIX terminal. The command ffmpeg -i 5motions scoop.avi ./Frames/motions%05d.png was run, where 5motions scoop.avi was the rendered video 3
  • 4. of purely the hand motions and ./Frames/motions%05d.png saved each individual frame of the video into a directory named Frames. C. Image Processing 1) Preprocessing of Training Images ImageMagick was used to alter the images before using them as training data. The command mogrify -shave 300x75 -contrast -brightness-contrast 5 -gaussian-blur 10x5 “filename” allowed for the cropping of 300 pixels off the sides and 75 pixels off the top and bottom, the addition of minor contrast, and the application of a Gaussian Blur. The cropping removed any undesired details while the contrast intensified the difference between the lighter and darker elements of the image [10]. This command was added into a bash script that iterated through each of the 28,806 PNG files in a specified directory to crop and apply a contrast to each image. A script was then written in C to first apply a K-Means algorithm and then to transition each of the PNG files into data files in a format readable by the SVMlight library. The K-Means algorithm categorized each pixel of the image into either a background class or a hands class. Each pixel assigned to the background class was then effectively removed from the image by being set to black, while the pixels assigned to the hands class were maintained to be sent to the SVM training process. The reformatting algorithm proceeded to break down each image into a text file consisting of many rows representing the pixels of each image. Each row consisted of attributes called features and values in the format of feature:value, where the feature was the index of every fifth pixel and the value was a representation of the color of that pixel. An interval of five pixels was chosen to significantly reduce the file size required to store the data. The color value used to represent each feature (pixel) was the sum of the red value multiplied by 100, the green value multiplied by 10, and the blue value multiplied by 1. In this way, three values of color (red, green, blue) were consolidated into one large value to match to every fifth pixel. Together, these rows of features and corresponding values were combined into text files that would be interpretable by the Support Vector Machines. 2) Testing Images’ Processing Pipeline In order to accurately test data against the trained Support Vector Machines, the images supplied to the machine learning algorithms needed to appear in a similar format to those used to train the model. Thus, the image adjustments and background removal from the preprocessing steps were also used in the image processing pipeline. The images collected from the Jetson TX2’s camera were also resized to match the training images. Each image was then provided with a level of contrast, brightness, and a Gaussian Blur after being resized using the ImageMagick command mogrify -resize 1320x930! -contrast -brightness-contrast 5 -gaussian-blur 10x5. These images were then converted into the PNG format with the ImageMagick command magick convert filename.jpg filename.png where filename.jpg is a JPEG file captured from the CSI camera on the NVIDIA Jetson TX2 and filename.png represents the output of the new file. Next, to remove any bias that would be introduced by irrel- evant pixel data, the background of each image was removed to isolate the hands in the image. This was an essential step, as isolating the hands generated a clearly-defined shape and outline for each hand motion. This information, in the form of the absence of the surrounding pixels, would be a signif- icant factor in the machine learning process. The K-Means clustering algorithm was used to remove the backgrounds. This algorithm segments an image into k groups based on the similarity of pixel color values. The algorithm treats the data in this system as a three-dimensional system, with dimensions of red, green, and blue color values. This allowed for the distance between the color values of two given pixels to be numerically calculated, thus providing a direct measure of the pixels'similarity. The general K-means algorithm proceeds as follows: 1) Select k initial centroids (the center of each group) randomly within the bounds of the set of data. 2) For each data point, find the closest centroid to that point by calculating distance values between each pixel and the centroid pixels. Assign the point to the group belonging to that centroid. 3) For each group, take the RGB values of each pixel and add them separately, so that there is a total red value, a total green value, and a total blue value for all the pixels in that group. 4) Divide each value by the total number of pixels in that group in order to get the average red, green, and blue values. 5) Set the centroid pixel’s color value of that group equal to those average RGB values. 6) Repeat steps 2, 3, 4, and 5, until the location of each centroid does not change. For the purposes of this system of SVMs, a value of k = 2 was established in order to segment the image into two parts: the background and the hands. However, the initial results from the K-Means algorithm appeared to be inaccurate and inconsistent, resulting in unsuitable training data. This was likely because of the random initialization of the centroids, which may have resulted in color values that were too close to each other to allow for effective separation of the image into groups. To accommodate for this, rather than beginning with random centroids, a targeted centroid was selected as the average color 4
  • 5. of the top-left corner of the image (an area assumed to be part of the background), and a second centroid from the average color of the center of the image (an area assumed to be the hand). At the end of the algorithm, the group resulting from the centroid from the top-left would contain all of the background pixels, and the group resulting from the centroid from the center would contain all of the relevant hand pixels. Once the groups were determined, the pixels in the background group were changed to black pixels. This effectively removed the background pixels from the machine learning training process, isolating the hands from the background of each image. The final product of these image processing techniques was an image of hands that retained their most distinguishing characteristics surrounded by a black background. Figure 3 depicts the results of each image processing technique. Figure 3. Left to right: example hands image, Gaussian blur applied, K-Means applied to isolate hands At this point, the algorithm written in the C programming language used in the preprocessing step was again used to convert the images into the text files readable by the SVMs. The data was then compared to the trained model created via the SVMlight library within the Ubuntu 12.04 command-line. (Appendix Reference to Code) D. Machine Learning Machine learning was used to analyze processed images and create a trained model representing the data. The trained model later served as a reference to categorize given hand motions as correct or incorrect. 1) Using Data to Train a Model A process that can identify a certain hand motion as proper must be formatted to have features identical to those of the trained model. Once the image data was formatted correctly, the learn function of SVMlight was used to create a model (support vector machine) for each of the eight hand motion variations. To do so, correct training examples of each hand motion were fed into the machine learning algorithms of SVMlight . The models were created while retaining the greatest amount of detail using a lossless compression format with PNG image files and splitting the original video into 60 frames per second. The data was then converted into a format easily interpreted by the SVMlight library and its algorithms by using a C script (Appendix Reference to Code). Once converted into a suitable format, the data was used to train the model with the command svm learn training data model, where training data was a file containing rows of image data to train on, as described previously, and model was the output file name for the resultant trained model. 2) Comparing Collected Data to the Model The final step in the implementation of the Hygiene Monitoring System was to classify recorded data as correct or incorrect. Classification occurred through the comparison of collected data to the trained model, using SVMlight command svm classify collected data model results where collected data was a file containing the data recorded, which would be compared against the model file, containing the trained model, and results was the output of the results of the comparison. The output file contained information that described how close the collected data adhered to the model by reporting the percentage of the six handwashing motions completed out of those represented within the model to determine the person’s overall conformity to the procedure. A value of 80-90% would demonstrate the completion of a correct handwashing procedure. A value of 100% is not expected because several frames of a sample test data set are expected to contain no hand motions, such as the transition between two hand motions. However, if a percentage significantly lower than 80-90% was returned, it would be clear that incomplete handwashing was observed. 3) Testing the Model Two tests were performed to evaluate the accuracy of the Hygiene Monitoring System. The first test attempted to compare data comprised of the link motion against the trained model. This returned a percentage of compliance to proper handwashing procedure, depending on the motions detected. Then, the percentage returned was analyzed to determine if the link motion was detected. In the second test, new testing data was recorded and processed in an identical format to the training model data in order to perform more intensive testing. Thus, the new images were processed with a Gaussian Blur, K-Means partitioning, resizing to 1320 pixels by 930 pixels, and an application of light contrast. This new data included the simple press, webs, mortar and pestle, thumbs, and roof motions, omitting the link motion due to data collection limitations. The result was indicated by the percentage derived from the correctly recognized images out of the total number of images tested for each specific motion. Subsequently, the data was also analyzed to report the overall percentage of accuracy for all motions, or the number of correctly classified images out of the total number of tested images. IV. RESULTS The performance of the Hygiene Monitoring System was assessed with test data collected in a simulated environment with the intent of verifying the functionality of the system in a controlled setting. This evaluation tested the system’s accuracy in correctly categorizing images as distinct hand motions. Multiple sets 5
  • 6. of test data were created and compared against the trained models. In order to test the ability of the model to detect a single motion at a time, the first test example contained only the link hand motion being performed. When this data was classified through the support vector machine’s model, it yielded results showing that it fulfilled 14% of the expected handwashing procedure. Since the model expects eight distinct motions (six unique techniques, but two are repeated for each hand), the observed percentage of 14% is extremely close to the expected value of 14.28%. In the next test, the system attempted to classify a data set containing images of a complete handwashing procedure. However, due to data collection limitations, the link motion was excluded from this set. The other hand motions and associated data were unaffected. The images in the test data set included two to five frames for each motion. This data was then compared to the trained model through SVMlight to identify the percentage compliance to the handwashing procedure by the test subject. The number of frames that were properly identified are indicated below in figure 4. 18 images were correctly identified out of 24 tested, corresponding to an aggregate of 75% accuracy in correctly identifying the hand motions. Figure 4. Results V. CONCLUSIONS The results produced indicate that the Hygiene Monitoring System can correctly identify compliance to proper handwash- ing procedure. A. Significance A successful implementation of the Hygiene Monitoring System could dramatically reduce the rate of infection and deaths related to healthcare negligence. On any given day, about one in twenty-five hospital patients contract at least one healthcare-associated infection [11]. Although handwashing seems like an elementary process, multiple studies illustrate the immense ramifications of a lack of regard for procedure. This system encourages greater compliance, a major step toward limiting the spread of disease and prioritizing patient welfare. B. Applications In the future, the Hygiene Monitoring System can be im- plemented in hospitals around the world. The system's ability to monitor and identify correct handwashing practices will in- crease transparency within the healthcare industry. Moreover, the systems records could give insight into any liability issues or legal matters, offering an objective viewpoint into the often subjective and complex world of medical lawsuits. The concept of the Hygiene Monitoring System also lends itself to the food service industry. The spread of germs from workers to food accounts for 89% of outbreaks correspond- ing to food contamination [12]. The implementation of the Hygiene Monitoring System in restaurants and food vendors could advance the state of sanitation in todays world and mitigate the spread of foodborne illness. Furthermore, the system developed in this study demon- strates a computer’s ability to differentiate between human hand motions. This would prove useful in the interpretation of sign language hand positions, as a system trained with enough images could develop models representing various words and phrases. Such a development would significantly improve accessibility for hearing-impaired individuals and those attempting to communicate with them. C. Future Improvements Certain improvements can be made to refine the reliability of this Hygiene Monitoring System. Most significantly, the collection and usage of more data will improve the training models, increasing the probability that real world data will be correctly classified by the system. The K-Means algorithm could be improved to suit a wider range of image cases. The current algorithm operates under the condition that the hands are in the center of the image. Such a change would A stereographic camera (a camera that records from two slightly different positions simultaneously in order to generate a 3D representation of an image) would provide depth to the data collected. By deriving SVM values from the physical location of a hand rather than from the color values of pixels, the system could be more reliable when testing data with hands of varied skin tones, or with a background of a similar color to the hands. The Hygiene Monitoring System could be more user- friendly. Currently, the system is activated by a keyboard press, which is not appropriate for a real-life context such as a hospital environment. In the future, the system will ideally be activated by a motion sensor to detect when an employee begins washing their hands. Further integration with a hospital system would also be an ideal addition. Each employee, before washing their hands, would check into the system using an radio-frequency identification device (RFID) tag, and once the employee washed their hands and the system determined the level of compliance with the six hand motions, the system would record the level of compliance in a database of employee data. 6
  • 7. The kernel currently being used in the SVM is linear, but there are other, more complex kernels that the SVM could use as well. The polynomial kernel separates the result of a classification based on a defined, but arbitrary order. The RBF kernel separates the result of a classification using normal curves around the data points and sums them so that the decision boundary can be defined by a type of geometric condition (topology). The Sigmoid Tanh kernel separates the result of a classification using a logistic function to define curves depending on the logistic value being greater than the value generated through the model based upon probability. Working with any of these kernels in the SVM could increase the system’s accuracy. APPENDIX ACKNOWLEDGMENT The authors of this paper gratefully thank the following: project mentor Alex Weiner for his extensive experience and hands-on involvement; Residential Teaching Assistant Siddhi Shah for her invaluable support and efforts in coordination and communication; Research Coordinator Brian Lai and Head Counselor Nicholas Ferraro for their guidance and feedback; Program Director Ilene Rosen, Ed. D. and Associate Program Director Jean Patrick Antoine, without whom this project would not have been possible. Finally, the authors appreciate the generosity of the sponsors of the New Jersey Governor's School of Engineering and Technology: Rutgers University, Rutgers School of Engineering, The State of New Jersey, Lockheed Martin, Silver Line, Rubiks, other Corporate Spon- sors, and NJ GSET Alumni. REFERENCES [1] “WHO Guidelines on Hand Hygiene in Health Care”, Apps.who.int, 2018. [Online]. Available: http://apps.who.int/iris/bitstream/handle/10665/44102/9789241597906 eng.pdf?sequence=1. [Accessed: 22- Jul- 2018]. [2] Sebille V, Chevret S, Valleron AJ. Modeling the spread of resistant nosocomial pathogens in an intensive-care unit. Infection Control and Hospital Epidemiology, 1997, 18:8492. [3] Klevens R et al. Estimating health care-associated infections and deaths in U.S. hospitals, 2002. Public Health Report, 2007, 122:160166. [4] “How to Handwash?”, Who.int, 2018. [Online]. Available: http://www.who.int/gpsc/tools/HAND WASHING.pdf. [Accessed: 22- Jul- 2018]. [5] “Your 5 Moments for Hand Hygiene”, Who.int, 2018. [Online]. Avail- able: http://www.who.int/gpsc/tools/5momentsHandHygiene A3.pdf. [Accessed: 22- Jul- 2018]. [6] “Jetson TX2 Module”, NVIDIA Developer, 2018. [Online]. Available: https://developer.nvidia.com/embedded/buy/jetson-tx2. [Accessed: 22- Jul- 2018]. [7] “GPU Programming—NVIDIA,” NVIDIA Developer, 2018. [online]. Available: http://www.nvidia.in/object/gpu-programming-in.html [Ac- cessed 26 Jul. 2018]. [8] I. LLC, “Convert, Edit, Or Compose Bitmap Images @ ImageMagick”, Imagemagick.org, 2018. [Online]. Available: https://www.imagemagick.org/script/index.php#features. [Accessed: 22- Jul- 2018]. [9] Ng, A. and Piech, C. “K Means”, 2013. [Online] Available at: http://stanford.edu/ cpiech/cs221/handouts/kmeans.html [Accessed 26 Jul. 2018]. [10] “SVM-Light Support Vector Machine”, Svmlight.joachims.org, 2018. [Online]. Available: http://svmlight.joachims.org/. [Accessed: 22- Jul- 2018]. 7
  • 8. [11] “Hand Hygiene in Healthcare Settings”, cdc.gov,2018.[Online]. Avail- able: https://www.cdc.gov/handhygiene/index.html [Accessed 22 Jul. 2018]. [12] “Food Worker Handwashing and Restaurant Factors”, Cdc.gov, 2018. [Online]. Available: https://www.cdc.gov/nceh/ehs/ehsnet/plain language/food-worker- handwashing-restaurant-factors.htm. [Accessed: 26- Jul- 2018]. 8