Artificial Intelligence for Water Quality Monitoring
Authors: Gunda Naga Siva , Gautam Siddharth , Mitra Sushanta 
Published: February 2020

Emerging trends in Artificial Intelligence (AI) have provided a path to make better predictions in a variety of fields, including the detection of medical diseases, weather patterns, water, food quality patterns, remote sensing etc. Deep learning, a branch of AI that uses deep convolutional neural networks (CNN) modeled after the human brain, have been prominently used for accurate identification of facial features, text, and voice. This technique is used predominantly to classify a set of objects, that may not necessarily have a fixed set of features, making it very difficult to detect programmatically. As an example, researchers have started implementing deep learning techniques to identify non-uniform cancer cells from the high-resolution microscopic images of tissue samples. Similarly, most of the current screening/diagnostic devices are color-based indicators. By looking at the amount of color appearance on sensor zones of such devices, one can identify the level of certain contaminants, diseases or infections. Typically, look-up tables will be provided to classify the level of sensing parameters based on color intensity. This is a task that would be extremely time consuming and challenging to do physically, given that a complete database mapping color to concentration would have to be created and a minor difference may or may not indicate a significant concentration change. Deep learning will be very helpful for accurate identification of color and its intensity on such diagnostic devices. In the present work, we have developed an AI-based mobile application platform, that can capture the sensor image using an inbuilt smartphone camera, identify the presence of sensing parameter and classify the level of sensing parameter based on color intensity identified in the training sets on the captured image using deep CNN algorithm.
As a test case, we have implemented the developed AI-based mobile application platform for water quality monitoring for bacterial contamination. We used a low-cost rapid test kit i.e., Mobile Water Kit (MWK), developed by Gunda et al. [Anal. Methods, 2014, 6, 6236-6246 and Analyst, 2016, 141, 2920-2929] for monitoring the quality of water for bacterial contamination. MWK detects indicator bacteria (E. coli) in water samples within an hour, based on the appearance of pinkish red color on the surface of the sensing area. The color intensity represents the level of bacteria in water samples. Using the AI-based mobile app, we capture the image of the MWK sensing area (after testing water samples) and classify them into E. coli present images (i.e. E. coli images) and E. coli absent images (non-E.
coli images). Deep learning works very well when there is an abundance of training data and there are certain factors that will make it difficult to programmatically distinguish between types. Using traditional computer vision techniques, one would scan the colors of each concentration. However, determining the color intensity for each concentration level is very difficult (especially because these are different shades of pinkish red for MWK). Using deep learning, this is made easy as the system determines these color intensities through training sets that have been provided statistically.
In this present work, we have collected training data from MWK by testing the water samples with known concentrations of E. coli bacteria and then manually segregated the captured images based on whether the sample contains E. coli or not. Then we wrote a labeling script to label these images based on their type. We then used Google Tensorflow (a deep learning Artificial Intelligence open source tool) to distinguish between E. coli and non-E. coli images. Subsequently, we used the labeling script to classify whether an MWK tested image contains E. coli or not. As of now, we can classify the images with approximately 99% accuracy. We will also able to predict concentration levels using this method.