Detecting & Reporting Water Contamination

H2OhNo is an innovative solution to combat water contamination in developing regions. To help detect if water is contaminated, users can hold up their own water sample. Then, H2OhNo helps predict if the water is affected by lead, copper, rust (iron), or sewage, depending on the discoloration in the sample. H2OhNo also includes a bot so that users can describe additional details about their water (ex: taste, smell) and see if the bot is triggered by any of these characteristics, suggesting contamination. Finally, H2OhNo includes a virtual mapping feature where contamination reports are plotted to help identify clusters of contamination reports in the same area.

Contamination Types:

  • Lead
  • Copper
  • Rust (Iron)
  • Sewage


  • ML model to determine type of contamination from image
  • Chatbot from Google Cloud's DialogFlow to enter descriptions of water, certain trigger words match with contamination types. Also, users can ask about specific contamination types and their health effects
  • Google Maps (Google Cloud) to pin contamination reports via location. If many pins with the same contamination point are plotted in the same area, it may suggest a bigger issue, such as a single contaminated water supply.
  • Data visualization with chart.js to track overall improvement in water accessibility
Share this project: