Inspiration

Finding water bodies and burnt areas in satellite images is a challenging task in computer vision. It is important to humanity for the following reasons:

  • Global Water Resource Management
  • Monitor Water Quantity throughout the year.
  • Disaster Management - Forest Fires, Droughts, Floods
  • Finding Water Bodies in Proximity during Forest Fire

What it does

The system finds water bodies and burnt areas from AWiFS (Advanced Wide Field Sensor) satellite images and ranks them based on similarity measures.

How I built it

Using various techniques in images processing and remote satellite sensing algorithms. Devised an algorithm called Dynamic Semantics Segmentation.

Languages : Python, C++

  • MongoDB for efficient storage of Satellite Images and Feature Vectors. Further Advantages include Parallel processing and using frameworks like MapReduce. DATASET: Images captured from AWiFS sensors. DATA ANALYTICS:
  • Image Processing
  • CLAHE (Contrast Limited Adaptive Histogram Equalization)

Challenges I ran into

  • The state of art machine learning and deep learning methods rely heavily on annotated data (supervised learning).
  • Annotating satellite images is super difficult :(
  • Satellite images are prone to occlusions like clouds
  • Difficult to mask orthorectified tiles

Accomplishments that I'm proud of

Developed an algorithm empirically that successfully removes occlusions like clouds and precisely segments water bodies and burnt areas.

What I learned

  • Segmentation algorithms for satellite imagery, their limitations and challenges faced by state of the art methods.
  • Optimization using sparse feature vectors.
  • Multiprocessing in python

What's next for Hawk Eye

Learning methods and objective functions that will enable an unsupervised/weakly supervised learning approach.

Share this project:

Updates