1 Introduction

Each year, there are approximately 100 million cases of dengue fever or dengue hemorrhagic fever worldwide [3]. Dengue is also the most common arthropod-borne infection worldwide with 50–100 million cases annually [16]. This mosquito born viral disease spread in developing countries due to substandard housing, inadequate waste and water management, immigration, airborne travel, and deteriorating disease prevention programs [4].

Disease prevention and control measures have been established for early detection and monitoring of outbreaks. Unfortunately, the lack of organized resources and capital in some countries has resulted in a number of increasing dengue viral outbreak cases [12]. Cost effective measures to accurately identify dengue can be combined with rigorous efforts to adequately treat patients and reduce the number of mosquito breeding sites. Accurate diagnosis of infection and effective preventive and measures can reduce the number of outbreaks by as much as 30% [11].

We address the challenge of rapid and affordable detection of dengue disease in countries with limited resources through a combination of low cost hardware and innovative medical advances. Medical advances in dengue detection allow for dengue to be accurately tested using an advanced medical bioassay patch developed by researchers at Harvard University Department of Chemistry [6].

Our approach leverages optical sensors on a cellular phone to analyze the patch results with a color identification algorithm that uses reference shades to classify the level of dengue infection. The results of the test are displayed to the healthcare provider. Additionally, the information can be transmitted to the Center for Disease Control for further analysis. An architectural diagram that shows the relationship between the medical patch, camera phone, and CDC is shown in Fig. 1.

Fig. 1
figure 1

Architectural overview of mobile dengue detection for 1) dengue template 2) embedded system platform 3) central server at Center for Disease Control

Our proposed system can have a significant impact on how dengue is treated in countries with limited resources. The main contributions of our system are:

  • a dengue testing algorithm that uses a $0.20 USD medical patch and a cellular telephone camera that displays the results to medical personnel and

  • the transmission of data to the CDC or other prevention and control agencies for surveillance and additional testing purposes.

The overall goal of mobile dengue detection is to improve the quality of life in developing countries through accurate disease diagnosis and surveillance. The transmission of data to the CDC will enable particular strands of dengue to be diagnosed and epidemic outbreaks can be more rapidly detected.

In this paper, we describe related work in dengue detection. Then, we describe the dengue disease in detail. Our approach for mobile dengue detection using the mobile phone and a lightweight image processing algorithm is then explained. Lastly, we summarize with an analysis of our process and conclusion normal text area, with a line of about 5 cm set immediately above them.

2 Related work

There is a wide and diverse body of related research that investigates computational approaches to detect, model, and prevent the spread of contagious diseases and explores lightweight approaches to image processing on resource constrained embedded systems . We restrict our attention only on the most directly related research and developmental results in the detection of dengue in countries with limited resources and image processing on mobile systems.

2.1 Dengue testing

Researchers are developing many approaches that explore the newfound capabilities of detecting diseases. Martinez developed a chromatography paper with a hydrophobic, UV-sensitive polymer pattern to detect biomarkers in small samples as low as 5 μl. The hydrophobic pattern directs the flow of the sample along the hydrophilic paper to regions within the overlay that has enzymatic detecting reagents. The paper detects glucose and protein biomarkers and has small pores that prevent the contamination of foreign substances such as sediment or dirt [610]. The techniques described in this paper use Harvard paper bioassays prototype as input to detect dengue on the mobile camera platform. Martinez analyzed the accuracy of a camera phone in detection of urine samples offline [7]. This paper uses the limited resources on the camera phone to allow the health care provider to diagnosis the patient with the resources available or offline.

Recently, Ozcan et al. developed a novel blood analysis tool to detect HIV and Malaria with the Lensless Ultra-wide-field Cell monitoring Array platform based on Shadow imaging (LUCAS) and a cellular phone [14]. Researchers introduced a small blood sample to three individual stacked trays placed on top of the CMOS sensor of a cell phone. The light from a Light Emitting Diode (LED) exposes distinctive signatures of blood cells by filtering the wavelength of light that passes through the trays. After light filtering, images of the shadows cast from blood cells are then uploaded to the LUCAS processing platform server and processed using template matching algorithms to identify certain signatures of diseased blood cells. Previous approaches involve a tedious process of using expensive microscopes to analyze blood cells and examining each tray one by one to detect anomalies.

LUCAS provides a novel approach to viral detection through microscopy. However further research has found that polymerase chain reaction (PRC) assays are far more effective for detecting specific types of dengue viral strands. This is evident through the ability to construct specialized primer sequences, based upon the genomic sequence of specific types of dengue viral strands. These primers anneal to their respective viral genome sequence to isolate a specific dengue type [5]. LUCAS can reveal dengue viral strands on the cell surface in addition to sometimes inside the cell, however is not able to classify the viral strand types as efficiently as our dengue patch. This enables our patch to distinctly diagnose the level of dengue infection.

Dengue fever rapid test devices, also known as one-step dengue tests, are typically PCR or immuno-chromatographic based assays for the rapid, qualitative and differential detection of dengue IgG and IgM antibodies to dengue fever virus in human blood [15]. A medical kit developed in India adopts a version of PCR bioassay methodology to detect common strands of Dengue. This novel invention is called Erba Den-GO [15]. Transasia Bio-Medical developed this kit to detect strands of dengue in India. Erba Den-GO is a simple testing kit that uses PCR based assays, which is a process where the viral strands in the DNA are separated by synthesis of oligonucleotide primers (genomic sequences designed to anneal to their respective viral genomes), amplified and then analyzed to detect dengue viral strands. The box includes a small hand held testing device with a small reservoir in the center. In this reservoir, the user mixes approximately 10 micro-liters of blood with a few drops of a chemical compound used to isolate the viral strands. After about 15 min, the patch reveals lines to reflect the stage of dengue.

Rapid detection kits are a good solution for detecting dengue, however kits such as these are priced between $200 (Dengue Fever Rapid DipStick Test) to $700 (Dengue Fever IgG/IgM Card Test Kit). The above methodologies offer a good approach to dengue detection. However, our solution provides a methodology to detect dengue that is more affordable to third world countries. In addition to performing diagnosis on the cell phone, the paper based patch that can cheaply be manufactured in bulk. The current cost estimate for the patch is 20 cents.

2.2 Mobile image processing

Another area of research that has been gaining attention is image processing on mobile devices. Researchers at Carnegie Mellon have spearheaded a project called CMUcam. The objective of this project is to provide a framework for image processing with a small CMOS color camera module, coupled with a high speed embedded ARM processor. The embedded device is a fully programmable open source library tailored for general image processing tasks [13].

This device provides high speed processing, but lacks networking capability. The cost of this device is roughly $100.00, which is comparable to the cost of a cell phone. CMUcam provides a good foundation for robotics and artificial intelligence frameworks [13]. However, the solution may not be viable in a developing country due to the need for an additional computer to program the interface. In contrast, our simple algorithm is capable of performing analysis of the patch without an additional processor.

Our assumption is that medical personnel in the developing country have at least a cell phone device with an integrated CMOS camera. The algorithm that we use to analyze the patch does not require heavy processing power. Our algorithm is also simple enough to run on cell phone devices with limited processing capability.

Our research presents an easy method to detect Dengue using the processing power of a cell phone and a small medical patch that turns different color shades. Our solution involves a bio-assay based test, and a lightweight image processing algorithm to diagnose the level of disease. Alternative solutions typically involve traditional tests using bio-assays, in addition to using microscopy to detect the viruses. Further detail regarding traditional dengue detection methods are defined in later sections.

3 Dengue

Dengue and dengue hemorrhagic fever are viral diseases transmitted by mosquitoes that have the potential to cause significant illness, particularly if undetected. The mosquito has a predilection for urban areas, particularly in developing nations where breeding regulations may be lacking. The incidence of dengue infections is increasing. It is estimated that there are 100 million infections annually. Five million of these infections are serious enough to require hospitalization [3]. No vaccine is currently available for the disease. Treatment consists of early identification of the disease combined with intensive surveillance and fluid support as necessary. Significant morbidity occurs when the disease is not detected in a timely fashion to allow for resuscitation efforts to proceed.

Traditionally, the diagnosis of dengue infection is a clinical determination by a medical professional. However, during the early infection period, symptoms are not severe. Therefore, patients in early stages of dengue fever can appear to have a less serious illness and may not be given appropriate treatment.

To overcome this limitation, a number of groups have attempted to develop accurate dengue tests to detect the presence of dengue antibodies or electrolyte abnormalities indicating the presence of a serious disease [2]. However, many of these tests are unavailable to developing nations due to their high cost or the requirement for complicated electronics and machinery. To overcome this limitation, researchers are developing a novel, low-cost patch to detect the presence of infection and associated abnormalities [1, 6]. This paper-based sensor utilizes colorimetric detection schemes to note the presence of abnormalities in the patient’s blood.

Each device is predicted to cost less than 20 cents without need for a sophisticated or expensive reader. Similar to the glucose sensor tests, a droplet of blood is introduced into the sensor. The analytes in the blood diffuses into the various wells of the device where they react with the chemical reagents. The level of color change in each well corresponds to the level of analyte in the blood. A qualitative analysis is available simply by noting the presence of color change. However, our system uses a simple, accurate, and inexpensive method for quantifying the level of analytes in the blood by comparing the results to a printed reference range. Our system allows for accurate disease diagnosis and treatment in a timely fashion.

4 Diagnostic support for disease outbreaks

The goal of diagnostic support is to determine cases of dengue disease in order to identify and verify potential areas of disease outbreak before it becomes an epidemic. A quick diagnosis of the disease and rapid communication of geographic location can improve disease outbreak detection. Below we compare traditional diagnostic support techniques with our mobile diagnostic support method and highlight the usefulness of rapid disease detection in preventing the spread of contagious diseases.

4.1 Conventional diagnostic support

The workflow in Fig. 2 describes the conventional methodology for treatment of a patient suspected of having the dengue virus. The process involves an initial clinical assessment where the physician admits the patient for initial testing. A sample blood specimen is then taken for testing and a PCR based assay test is administered to extract the viral components of dengue from the patient’s serum sample. The test would be administered multiple times. Each test isolates a different viral strand to gauge the level of infection. This process can take as long as 5 days to identify the level of infection. Following this process, the patient is immediately admitted to the hospital where further tests and viral antibodies are administered to fight the virus.

Fig. 2
figure 2

Workflow diagram of how dengue is traditionally treated

The apparent problem with this methodology is there is no concise way to diagnosis of the level of infection quickly to prescribe the necessary treatment. With each day that passes, the level of viral infection can grow worse. A more accurate and timely system is needed to save lives. This is the goal of the dengue detection patch in conjunction with a mobile phone application. Once developed, the patch will be highly affordable. We assume that the healthcare provider has access to a mobile device with a camera. Our dengue detection system rapidly and economically diagnoses dengue. Our system can provide valuable information to healthcare providers by transmitting valuable information on the location and the quantity of detections rapidly to the Center for Disease Control (CDC).

4.2 Mobile diagnostic support

The new system is described in Fig. 3. An ill patient suspected to have dengue infection is identified and a small blood sample is taken from the patient. The sample is applied to the patch, as shown in Fig. 4. The analytes in the patient’s blood are allowed to diffuse into the different chambers of the patch. Reaction occurs with the reagents in each well and the device is inspected after half an hour. Gross abnormalities in the patient’s blood sample can be detected by the unaided eye. However, more subtle changes in these parameters, which can still portend serious illnesses, can only be determined by quantification using the image processing system described in this paper.

Fig. 3
figure 3

Workflow diagram of how dengue is treated in accurate detection mobile health system

Fig. 4
figure 4

Dengue medical patch mockup

The next step is for the medical practitioner to take a photo of the device (with the color-coded reference ranges printed next to the wells, as shown in Fig. 4). This image is then processed and the color levels in each of the wells are compared to the reference ranges, yielding a quantitative result of the analyte levels. Based upon the results, the patient can be triaged and given appropriate treatment. Proper treatment may include fluids, additional interventions, and admission to the hospital for more intensive care and follow-up.

The benefit of this system is that infection and other serious illness can be detected sooner, allowing for more rapid diagnosis and treatment. It should be noted that patch development is in progress [10]. The patch displayed in Fig. 4 is the prototype image used for development of the cell phone algorithm. The image processing algorithm that we are using was developed using Matlab and later implemented on a cellular phone. The resolution of the image in Fig. 4 used for testing was 240 × 320. As the image scaled picture clarity was reduced, so until we receive the actual patch, we are unable to perform in depth analysis of the patch detection errors. However, the photo suffices as a sufficient basis for algorithm development.

5 Mobile system platform

The HTC Mogul 6800 Windows Mobile Smartphone device is one of the HTC Company’s flagship smart phones (Fig. 5). The mobile device is small, lightweight and uses the Qualcomm 400 MHz MSM750 ARM Processor. The device has 64 MB of RAM, and 512 MB of flash memory. The device operates under the Windows Mobile 6.1 Operating System, and contains a 2.0 Megapixel CMOS camera embedded in the device. The image of the device is shown below. The software used to program the Dengue Windows Mobile application is C#.

Fig. 5
figure 5

HTC Mogul 6800 cellular platform with embedded optical sensor

6 Light-weight image processing algorithm

In the past decade, cell phones have transformed from simple mobile communication devices to mid-ranged scalable computing devices. The processing power of cellular phones has increased dramatically enabling many technological innovations. The cellular phone has increased processing capability, memory, and external sensors (camera, accelerometer, gyroscope, etc.).

In this paper, we discuss the algorithms implemented on the cell phone. In addition, we analyze several object identification algorithms in the challenges section that are constrained by limited memory and low processing power.

6.1 Greedy scanning

The first step of our algorithm is to isolate the patch from background noise. To localize the patch, a greedy scan is applied beginning with a vertical scan of every ten pixels across the X axis, then a horizontal scan across the Y axis in the image. The scan starts from the outside moving inward until the highest average pixel value is obtained in each respective scan direction. Once the two columns (from the X axis) and rows (from the Y axis) are obtained for that respective scan area, the first two high gradient edge points encountered are stored. Figure 6 shows the horizontal and vertical scan directions. The gradient points are identified by the following algorithm:

Fig. 6
figure 6

Direction of scan lines to define localized area of patch where highest average pixel value is encountered

X axis scan

Gradient points obtained by a scan begin outward starting at the top position. Then the scan moves inward and downward on the patch. The scan stops at the first largest gradient encountered in each scan direction.

Y axis scan

Gradient points obtained by a scan beginning outward starting at the left position. Then, the scan moves inward to the right. The scan stops at the first largest gradient encountered in each scan direction.

These points are obtained as the average pixel value and are calculated for each scan line. The two points are then used to form a line segment that cuts through the patch. The figure below marks the direction of the scan lines as they cut through the patch area. The red lines from Fig. 6 correspond to the index where the greatest average pixel value was seen from respective scan directions. Given this information, we now have a localized area where the patch resides. Our implementation has the two following assumptions.

  • There exists stronger edge approximation accuracy when the patch orientation is a few degrees within the ranges of 0, 90, 180, or 270.

  • The mobile phone camera is parallel to the patch to avoid skewed areas.

For example a patch oriented around a 45° angle will reduce the algorithms ability to accurately identify edge regions. In most cases, the patch’s edges will be unidentifiable because the edge points will form a V shape instead of a straight line. The distorted shape would invalidate the algorithm’s ability to predict an approximate line segment.

6.2 Approximating patch edges

Now that the scan lines have identified a local area of the patch, the edges must be identified in order to approximate the location of the corner points. To approximate the edges we trace the line segment formed between the gradient points as shown below.

Figure 7 gives a visual picture of the algorithm used to estimate the edge regions of the patch. The blue oval represents the gradient points selected for each scan area containing the highest average pixel value. The edge detection stencil scan extends outward, depicted by the green arrow towards the outer edges of the patch. The next section describes the edge region approximation algorithm in more detail.

Fig. 7
figure 7

Shows gradient points marked from each respective scan and stencil scan to define the edge. The blue circle represents a strong gradient point, Gi (x,y), that forms a line segment cutting through patch. The green arrow represents the stencil scan direction to the approximate edge of the patch

6.3 Edge region approximation

The below algorithm is the weighted neighboring stencil equation that we developed. A stencil is used to find the sharp gradient point that represents the location where the image section stops being white and sharply changes to black.

$$ {S_y} = [(L({x_{{i - 2}}},{y_j}) + 2 * L({x_{{i - 1}}},{y_j})) - (2 * L({x_{{i + 1}}},{y_j}) + L({x_{{i + 2}}},{y_j}))]/4 $$
(1)
$$ {S_x} = [(L({x_i},{y_{{j - 2}}}) + 2 * L({x_i},{y_{{j - 1}}})) - (2 * L({x_i},{y_{{j + 1}}}) + L({x_i},{y_{{j + 2}}}))]/4 $$
(2)

Sx is the stencil equation used for scans across the X axis (Eq. 1). Sy is used for scans across the Y axis (Eq. 2). In Eq. 3, the scan begins at a starting point, L(xi, yj). The starting point lies along the line segment between gradient points, G1G2, defined by the blue oval for each respective line scan. The gradient points extend perpendicular to the segment in the direction of the associated green arrow until a sharp gradient is found. Each initial starting point L along G1G2 comes from the line equation:

$$ L({x_i},{y_j}) = (1 - t){G_1} + t{G_2},t = [0..1] $$
(3)

If an edge is not found, the next intermediary point along the line segment is evaluated. We chose to use a weighted four point stencil to assign higher weights to adjacent pixel points.

Figure 7 shows the direction of the stencil scan, and Fig. 8 above shows the resultant edge points marked to outline the approximated edges of the patch. Figure 9 shows pesudo code of the stensil scan algorithm. Following the line segment scan, a trend line algorithm such as the Least Squares Fitting can be used to construct a trend line for each side. Only three sides are necessary to identify the patch. Those sides are the ones that form perfect straight lines. The side tracing the well area will contain points that do not construct a perfect line and reveal the orientation of the patch.

Fig. 8
figure 8

Shows edge point traces of outward stencil scan

Fig. 9
figure 9

Pseudo-code for algorithm to obtain highest average pixel rows/columns and gradient points

Once a line equation is constructed for each of the three sides, the two corner points connecting each side to form the square can be identified by finding the intersection points from the segments.

6.4 Patch orientation

Our approach assumes the side with the highest margin of error given the trend line to be where the wells reside. Another enhancement that provides further accuracy is to split the square into four quadrants. Then, the top two highest average pixel values are the top half of the patch. The two quadrants with the lowest values are mostly black and contain the wells.

7 Well identification and detection

Given that the patch is square, we know the length of the sides by measuring the distance between the two approximated coordinate points. This distance measurement is then used as a scaling factor for our reference point measurements. To identify the location of each well, we manually measured the distance between each well and our chosen reference point. A scaling factor of how many pixels corresponded to one unit of measure. We chose our reference point to be the top left of corner of the patch opposite of the wells was created. Given the reference point measurements, our length scale measurements, and our scaling factor we have all the information we need to process the patch on the mobile phone very quickly.

7.1 Patch angle transformation and well identification

Given an acceptable patch orientation within range of the accepted degree values mentioned above, we applied the Jacobian Transform to identify the wells given any slight offset of the patch from the normal and a measurement. We found the offset from the normal angle by taking the arctan of the two corner points.

$$ \theta = \arctan ({y_2} - {y_1}/{x_2} - {x_1}) $$

Once the offset is found the Jacobian Theorem can be applied. For our equation, we used the following theorem to identify the well location given our reference point.

$$ \begin{array}{*{20}{c}} {B = {{\cos }^2}\theta - {{\sin }^2}\theta } \hfill \\ {1/B\left[ {\begin{array}{*{20}{c}} {\cos \theta } & { - \sin \theta } \\ { - \sin \theta } & {\cos \theta } \\ \end{array} } \right]\left[ {\begin{array}{*{20}{c}} {x \prime } \\ {y \prime } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}{c}} x \\ y \\ \end{array} } \right]} \hfill \\ \end{array} $$

(x′, y′) represents the original pixel distance from the reference point to a desired well.(x, y) represents the new x, y coordinates given the angle offset θ. Given this equation, we can plug in our reference measurements for each well and find the exact location in the image.

7.2 Well color detection

Our implementation assumes a certain amount of infrastructure available. Below is a list of our assumptions:

  • The CMOS optical sensor is fairly sensitive enough to produce a good quality image

  • There are no variations in illumination.

  • The image is a taken at an angle parallel to the patch.

After locating a well, its color can be contrasted with corresponding reference template colors by comparing their luminosity. Luminosity analysis analyzes the intensity of the pixels while maintaining the original colors (Fig. 10a). Figure 10b shows the image after the luminosity analysis. After luminosity, the colors are further segmented into red green and blue yellow planes. Then, the colors are clustered so that colors that are the closest to each other are grouped together. A range metric is also used to reduce noise by ensuring that there is a minimum distance between colors in a cluster. Figure 11 shows the pseudo code for well color detection.

Fig. 10
figure 10

Image partitioning and template color segmentation and matching. a Image partitioning by square template matching. b Luminosity analysis by pixel intensity. c Maximum color size by cluster

Fig. 11
figure 11

Pseudo-code for image partitioning and template color segmentation and matching

Some reference colors are error colors that appear in the well but are not the valid test result. If the maximum cluster color is an error color, then the algorithm searches for the next maximum cluster size. The result of the maximum cluster color is shown in Fig. 10c.

8 Image processing challenges

One of the biggest challenges encountered during this project involved patch localization algorithms. Due to having a very restricted execution environment in terms of memory and processing power, this section describes the challenges faced with analyzing images on the camera.

8.1 Grayscale versus binary

Processing an image given an intensity scan, also known as gray scaling is a common technique in image processing. Intensity scans work well to transform the dimensions of a color image into a single dimension of gray shades. The intensity then can be used by edge detection algorithms such as Sobel to find the gradient of images.

What we found during experimentation was that although gray scaling works well to normalize images, this technique alone does not get rid of background noise. To create a simplified image with virtually no background noise, a binary image must be constructed. The binary image that we constructed classifies the inner area of the patch area as pure white, and removes virtually all background noise. A binary image simplifies the images color scheme, and makes it easier to identify the patch. Please see Figs. 8 and 12 for reference.

Fig. 12
figure 12

Gradient image of patch with weak edge definition from an intensity scan (gray scale)

8.2 Sobel edge detection

The first approach was to use grayscale image techniques to identify the patch using intensity scans, followed by edge detection algorithms to isolate the edge regions of the patch. The algorithm used was the Sobel Algorithm defined below.

$$ {G_X} = \left[ {\matrix{ 1 & 0 & { - 1} \cr 2 & 0 & { - 2} \cr 1 & 0 & { - 1} \cr }<!end array> } \right] * A\quad {G_y} = \left[ {\matrix{ 1 & 2 & 1 \cr 0 & 0 & 0 \cr { - 1} & { - 2} & { - 1} \cr }<!end array> } \right] * A $$
$$ G(x,y) = \sqrt {{{G_x} + {G_y}}} $$

The goal was to utilize the edge map produced from the gradient edges to identify and isolate the outer corner region of the patch. However, we found that in certain instances edges were not clearly defined to have an influence on our bounding box localization algorithm.

For example, the image shown in Fig. 12 is a result of the Sobel algorithm using a 3 × 3 convolution kernel in both the X and Y direction. Gx and Gy produced the gradient image G. The variable A corresponds to a 3 × 3 sub-section of the image to be masked

When the subject’s skin color resembles the color of the outer edges of the patch, the edges were less defined. In addition, if a picture was taken of the patch at certain angles, the edges were also less defined.

9 Web service

Wireless health applications often leverage the networking capabilities of cellular phones. In our system, we have developed a web interface that enables the end user to geographically view the latest Dengue outbreak information in real time. Additionally, the private web interface allows physicians and patients to view the latest test results. When the cell phone diagnoses a patient, the analysis results are uploaded to a central database. The goal is to use web services for a medical mobile health infrastructure at the point of testing.

The ultimate goal of our system is twofold. First, the web service facilitates the collection of Dengue outbreak information to decrease the chance of widespread Dengue infection. Secondly, the system creates a life saving social network of physicians, patients, and epidemiologists that cohesively work together to save people’s lives. In addition to the immediate dissemination of Dengue outbreak information, the webpage leverages the Google maps application to identify and highlight recently affected regions. In this section, we discuss in detail the features of the website and its application.

9.1 Social networks

Social networking has become a widely popular medium to create and build relationships. Research has shown that social networks can describe relationships on many levels, play a critical role in determining various options for solving problems, and determine the value that one may gain from the relationship. We leverage social networking concepts to build a website user profile that models the connections made between the following entities. These entities represent what the key elements necessary to facilitate patient diagnosis, treatment, and patient monitoring.

  • Patient

  • Physician

  • Epidemiologist

9.1.1 Patient

The Patient’s profile is comprised of basic information for representing a person using the Dengue patch for purposes of diagnosis. General information under this profile includes the patient’s name, sex, weight, age, and home address. The patient can view their diagnosis upload history or view the Dengue mobile application. On the Dengue mobile application, test results are anonymous and only reveal the presence of an infection in the region (Fig. 13). In a developing country, the patients likely will not have access to a cellular phone. While kiosks have been proposed in developing countries, the patient functionality is a feature that more likely to be used in more industrialized countries.

Fig. 13
figure 13

Screenshot of the Personal Diagnosis History webpage. This webpage enables the user to view their latest dengue diagnosis history and optionally recommended treatments from a physician

9.1.2 Physician

The Physician’s profile is used to display information about the physician, such as his/her name, medical practice, specialty, and location of practice. The Physician’s profile has the careGiverOf relationship that allows the physician to seamlessly interact with the Patient, identifies the physician as the caregiver, and allows the physician to upload information on the Patient. For each test result, a physician has the ability to create a dialogue with the patient for recommended treatment under the patient’s profile.

9.1.3 Epidemiologist

The Epidemiologist’s profile was created to allow the analysis of the frequency and distribution of dengue in a population or region. Epidemiologists identify disease outbreaks and recommend public health policy. These recommendations may include approaches to maintain an outbreak. The information stored under this profile is reports and alerts from analysis of data on the dengue outbreak webpage. Also, a forum for epidemiologists will be present for analyst to discuss patterns in detections.

9.2 Dengue outbreak webpage

An important aspect of our application is to perform a complete diagnosis on the cellular phone. The real-time tracking of outbreak information enables individuals and organizations, such as the Center for Disease Control (CDC), to act accordingly to prevent further outbreak occurrences. We provide real-time tracking of outbreaks following the user’s decision to upload information to the web service. The Dengue Tracker website in Fig. 14 was developed with two major goals in mind.

Fig. 14
figure 14

Screenshot of the dengue tracker webpage. Users are able to query the number of dengue outbreak cases within a 3 month window and view a news feed of latest dengue news

The first goal is to enable real-time tracking of Dengue outbreaks. The second goal is to facilitate monitoring and record keeping of test results. The purpose of the Dengue Outbreak Tracker webpage is to display the latest Dengue outbreak information in real-time to interested parties. The dengue website consists of the following features:

Search for outbreaks

The Google Maps API in the web service allows data retrieval based upon unique location facts. The search bar widget enables querying of the latest Dengue outbreak information according to a particular location of interest. The resultant information returned from the query will be the total number of individuals diagnosed as infected with the Dengue virus within a 3 month timeframe. Additionally, a search widget enables querying of the latest Dengue outbreaks within a radius of a given location.

Dengue outbreak tracker

The Dengue Google Maps Application, shown in Fig. 15, displays graphically the impact factor of the outbreak in a region of interest. The impact factor is represented by a marker containing information about the total number of reported infections in the area. The information only relays the sum and does not provide information on individuals on a case by case basis. Additionally, a headline news feed column gives periodic updates of the latest reported news regarding Dengue outbreaks.

Fig. 15
figure 15

Diagram of the average time variation between end-to-end process completion of web server versus phone local processing time

Real-time data dissemination

An important property of the Dengue system is that it can perform a complete diagnosis on the cellular phone. The real-time tracking of diagnoses enables individuals and organizations, such as the Center for Disease Control (CDC), to act accordingly to prevent further outbreak occurrences. We provide real-time tracking of outbreaks following the user’s decision to upload information to the web service. During the diagnosis, the Dengue mobile application retrieves the GPS location where the test was administered. We assume that the reported GPS location corresponds to or is in close proximity to the location of the actual infection. Once the data is uploaded, analysis is performed on the data to identify the location where the infection occurred and track statistics for monitoring outbreaks. Following the data upload, the Patient will be able to view their test results. Also, the Physician will have the ability to write personal recommendations on behalf of the patient.

10 Results and analysis

Our image partitioning and color segmentation and matching algorithm allows a camera phone to diagnose dengue in a patient. Diagnosis is done by matching the color results to reference colors for a respected well on the medical patch. We discuss the methodology used to create the metrics used for the processing delays and power consumption of images of the following resolutions (VGA, 1MP, 2MP).

10.1 Image processing delay

To gain an estimate of the average processing time for images of various resolutions, we ran the algorithm ten times for images of various resolutions, then recorded the average processing time for both experiments. In Fig. 15, the average time of both resources (smart-phone and web service) spend performing actual image processing is shown. From the chart it is clear the laptop performs orders of magnitude faster than the smart-phone in terms of processing speed, which makes the laptop processor a golden resource to the smart-phone. However, although processing capability varies greatly between devices, there are more important factors to consider before deciding to offload processes to an external resource. Smart-phones are often equipped with proximity accelerometer, CMOS light, and GPS sensors. However what still remains conventional is battery lifetime. If these sensor devices are used simultaneously, the battery life of the phone is decreased more rapidly. In addition, overhead incurred to invoke the web service is also a detail to consider, which we will discuss in Section 10.2. The intent is to obtain minimal power consumption by leveraging an adjacent web service infrastructure for processing if the resource results in a smaller resource footprint on the smart-phone device.

10.2 Power consumption

Physicians have preference of several resolutions and the ability to use a web service as an extra resource for processing thus minimizing the power consumption on the smart-phone device. We took the average runtime to process an image under a certain resolution. Images of VGA and 1MP quality show a minimal power savings difference if processed via the web service versus locally. Thus, if the user prefers high quality the tradeoff is time (which the user has the ability to manipulate). For example, if the user has preference for faster image processing time, then they can offload processing to the web service. However, if the user is using an image of lower quality resolution, the benefits of a web service are negligible and the transmission overhead consumes more energy. Our experiments show that under WIFI wireless operating conditions, images above 1 MP gain greater time and energy savings by using the web service. Images of 1 MP resolution have generally equal power consumption assuming ideal wireless network conditions (Fig. 16).

Fig. 16
figure 16

Diagram of the average power consumption on phone given images of various resolutions

10.3 Implications

There are several important implications on how this would affect dengue diagnosis in developing countries. Due to the portable nature of the cell phone diagnosis can be done at the patient’s home. Mobile diagnosis aids in the treatment of patients in rural areas. Subsequently, patients will be provided with the recommended treatment for dengue to prevent death. The mobile diagnosis will have the largest impact on children who are the most susceptible to the serious side effects of dengue.

The transmission of positive test results to the CDC can also aid in the control and prevention of dengue. The cellular communication also contains information on the corresponding tower of the transmission. This location information can be used to determine areas that are susceptible to epidemics. If various agencies have accurate information on the number, location, and type of dengue outbreaks, they can work on improving the waste and water management in those particular regions. These prevention and control techniques can mitigate the further spread of the disease and improve the quality of people’s lives in the developing country. Additionally, affected travelers will be aware of their condition and be advised not to travel to aid in recovery and prevent propagation of the disease.

When a new technology is introduced into the healthcare arena, it is important to note its limitations as well as its capabilities. The portable nature of the cell phone and medical patch can also raise difficulties in maintaining the equipment. In developing countries with high crime, cellular phones may be susceptible to thieves. The cellular phone is a valuable resource in developing countries and could be used for other purposes. However, a key factor that should be considered that contributes to the effectiveness of our solution is the wavelength sensitivity of the CMOS optical sensor. The sensor’s level of sensitivity does play a role in the quality of an image.

Additionally, the cost of the cellular service was not put into the cost analysis. The assumption that the cellular network is functioning in the remote region also may not be a valid assumption for some developing countries. The cost of using the cellular service and the availability of the service can vary greatly depending on the country’s resources.

11 Future directions

To further enhance the capabilities of our application, we are continuing research on better image processing algorithms to effectively identify the patch given background noise. The active contouring algorithm is very effective at identifying objects within images. However, the algorithm involves many complex sets of operations to bind an object of interest. Further research will involve taking into account general concepts of how the algorithm works to create a hybrid version given that the only object of interest is our patch in an image.

Lastly, an area of special interest resides in the security and authenticity of data from the cellular phone. Ensuring the integrity of a patient’s medical record is a very important consideration in addition to ensuring that a patient’s medical data remains safe if the patient’s cell phone is stolen or lost. Researchers at the Wireless Health Institute at UCLA have developed a medical device called a Gateway, which serves as a secure data warehouse for medical data, in addition to a communication controller device for medical information uploads to a third party. This device is small enough to clip on the belt or reside in their pocket of a patient. This device can ensure data integrity by facilitating the upload of dengue outbreak information to the CDC, and encrypting a patient’s medical information before uploads to ensure integrity.

12 Conclusions

In conclusion, we have presented a novel approach for detecting dengue using the processing power of mobile phones. This approach provides a method for detecting dengue that is highly cost effective. Using light weight image processing algorithms, the cell phone is used to analyze the patch and accurately determine the disease state with limited processing capabilities and memory. Our system requires no off board processing and provides the user with simple and timely feedback. Additionally, a web service displays spatial information of outbreaks and facilitates the monitoring and diagnosis of outbreaks. We envision that our patch and similar real-time mobile diagnosis systems will be affordable and available in large quantities at local retailers. The availability and affordability of these systems will allow testing to be performed quickly and efficiently when a patient experiences symptoms of an infectious disease.