Computer Vision Based PPI Tool

Executive Summary

The Poverty Probability Index (PPI) is a poverty measurement tool for organizations and businesses with a mission to serve the poor. A PPI survey consists of 10 questions about a household’s characteristics using which asset ownership is scored to compute the likelihood that the household is living below the poverty line.

Leveraging Cloud Vision, a field officer would simply have to take a series of photos with their smartphone camera inside and outside of the house and then the Cloud Vision would be able to deduce based on the images the response to the 10 questions by detecting whether the objects mentioned in the survey are present in the household or not.



  • Python

  • Android Application Development using Kotlin

  • Some knowledge of Google MLKit

  • Knowledge of machine learning and computer vision is beneficial


Design and Technical Overview

The project has 2 main parts:

  • The android application which is used to upload data to Cloud Vision using the AutoML API. Cloud Vision then classifies the uploaded image and returns its category. If possible, based on the results from Cloud Vision, the app can automatically fill the needed entries in the PPI Survey form.

  • The augmentation part: The second part is the data augmentation part. This part is needed because photos household items like washing machines, TVs, etc, in the household environment itself are less found. So images are scraped from google and are augmented using various techniques to increase the size of the dataset which in turns help increase the accuracy of the model trained in using Cloud Vision.


Source Code:


Preview link to the application -

Latest link:

Older version:

Using the above link, the app can be tested on a browser itself without installing it on a physical device.


16-May202223-May30-May06-Jun13-Jun20-Jun27-Jun04-Jul11-Jul18-Jul25-Jul01-Aug08-Aug15-Aug22-Aug29-Aug05-Sep12-SepWe are here
Vision PPI

Feature 1

Feature 2

Feature 3

Feature 4

Community Bonding

Coding Phase

Final Submissions

Work on getting the android client working

Review all existing prs

Send prs for getting the app work

Enhancing the augmentation scripts and techniques

Start collecting, pre-processing data

Continue expanding the dataset, training models and improving accuracy

Do work needed for integrating the AutoML API

Test models via the app

Enhance the UI/UX of the android app

Add new features to the app


Submit for final evaluations

Understand how the AutoML backend works for classifying images

Add functionality for auto-filling the survey

Community Bonding

Coding Phase

Final Submissions

Start collecting, pre-processing data

Test models via the app

Add new features to the app

Publishing The Changes


Enhance the UI/ UX of the android app

Publishing The Changes

Mid Term Evaluation

Integrating new ML model

Adding the PPI Fragments

Fixing the API Endpoint Issues

Understanding about Login System working

Updating the color schemes