Skip to content

This repository is for AIPM project. Our project is Gender Detection With Computer Vision

Notifications You must be signed in to change notification settings

Hussain06061997/Gender-Detection-With-Computer-Vision

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Project Overview

A. DEFINING THE PROJECT

Project Summary

In the current state of the world a lot of emphasis has been placed on convenience and comfort. For example, being able to do shopping just from sitting in your house is one of the best forms of convenience. The same thing goes for any company or body which needs to differentiate between male and female. Thus having a system which can differentiate a person’s gender just by using their image as the only input is truly remarkable. It will be more convenient and effective as the world is moving forward to becoming more ‘online’ heavy. Since a human can easily identify the gender of another human based on their image, it will be much more difficult for a machine to do the same. This is because machines lack the power of human intuition. In rare cases, it can still be difficult even for a human to determine the gender of another person if they can only rely on their image.

Customer: Mckinsey & Company

Project name: Gender Detection Using Computer Vision

Team Members:

  1. Muhamed Hussain Bin Hithayatullah

  2. Muhammad Naim Syahmi Bin Roslan

  3. Ramanan Gobalakrishnan

  4. Rheshwan Raj A/L Ravichandran

Objectives:

  1. To differentiate between male and female using only images

  2. To make screenings between male and female more easier

  3. Do not require to meet in person to confirm gender

B. PLANNING THE PROJECT

i) Project Management Lifecycle

Work Breakdown Structure :

Figure 1: Work Breakdown Structure

Figure 2: Work Breakdown Structure

Gantt Chart :

Figure 3: Gantt Chart

Figure 4: Gantt Chart

ii) Risk Identification Chart

Control Element What is likely to go wrong? How and when will I know? What will I do about it?
Quality Inaccurately predicting gender After uploading the picture in our system and the result will be shown Increasing the size of the dataset used to train the model
Cost Equipment to run the system might be over expensive. When the cost is higher than predicted at the start of the project Either to increase the amount of the budget or change the project to be computationally cheaper
Time Will take more time to collect different type of images of both gender. Training process will be delayed due to not collecting enough data. Increase staff to speed up the data collection process of the images.

iii) Responsibility Assignment Matrices (RAM):

Figure 5: Responsibility Assignment Matrices (RAM)

Name Role
Muhamed Hussain Bin Hithayatullah Project Manager
Ramanan Gobalakrishnan Financial Anayst
Rheshwan Raj A/L Ravichandran Data Analyst
Muhammad Naim Syahmi Bin Roslan Technical Manager

iv) Project Planning Summary:

Modules/Components Budget (RM) Schedule Responsibility
Gender Database 2,180,000.00 30 November 2020 - 1 January 2021 Collect Data, Label Data
Gender Detection 18,869,100.00 3 January 2021 - 30 January 2021 Train model, Test model

C. IMPLEMENTING THE PROJECT PLAN

Deliverables:
  - Successfully differentiate between gender
  - Image recognition model
  - A front end website

Tasks and Estimated Costs

Task Estimated Costs Notes
Hardware RM 12 000.00 Laptops
Office needs RM 490 000.00 WIFI/supplies
Design RM 6 100.00 Survey/conceptual/preliminary/ final design
Software RM 20 000.00 Database/license
Necessary needs RM 30 000.00 Additional supplies
Total RM 558 100.00 estimated

Milestone Chart:

Milestone Scheduled Completion Actual Completion
Analysis on problem 21st October 2020-21st October 2020 21st October 2020
Getting resources/data 26th October 2020-1st November 2020 28th October 2020
Planning/WBS/budget management 1st November 2020-11th November 2020 10th November 2020
Implementation 11th November 2020-26th November 2020 28th November 2020
Project result/performance evaluation 26th November 2020-28th November 2020 30th November 2020
Report 28th November 2020-13th December 2020 3rd December 2020
Project submission 15th December 2020-30th January 2021 27th January 2021

D. EXECUTING THE PROJECT

Project Design and coding

The first phase of our project involves preparing the dataset for training. We prepare our dataset by loading the images into a Jupyter Notebook file and resizing it using Python. The primary reason for resizing the images is to make easier and faster for the model to train on the image data, because the smaller the size of an image, the shorter the length of training.

Figure 1: The code for data preparation in jupyter notebook

After we finished preparing the data, we stored the images into a .pickle file so that it can be used in a different notebook file that is dedicated to training the model.

Figure 2: The code for storing the prepared dataset into a .pickle file

After we have finished preparing the data, we used the TensorFlow library to build a model for the image recognition module. Figure 1 below shows the code for building the Convolutional Neural Network (CNN) model using the Tensorflow Keras library.

Figure 3: The code for building and training the model

The model is then saved into the working directory as a .model file. This .model file will then be used by another program to serve as a backend for our web application

Figure 4: The code for saving the model into a .model file

Our project is mainly developed using Flask. Flask is a python web development framework. Since our model is written and trained in python. We used Flask as a backend to integrate the model with our web application. This will enable the user to interact with our model via a web application. Figure 1 below shows the python Flask program that serves as the backend for our web application.

Figure 5: The Flask Program for the project

We also designed a website that serves as the frontend of our application. The website is written in HTML with the CSS Bootstrap Framework. And a few Flask functions are integrated into the HTML to allow for the website to update its content if it receives a response from the model

Figure 6: The HTML file for the website and the Flask function

Figure 7: The web application (before uploading an image)

Figure 8: The web application (after uploading an image and received a response from the model

E. COMPLETING THE PROJECT

Sign Off FormView
Lessons Learned ReportView
Final Project ReportView
Close ContractView

F. PROJECT PRESENTATION

Our Video Presentation

About

This repository is for AIPM project. Our project is Gender Detection With Computer Vision

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •