CSEqual (Computer Science Equality Photo Booth Application)
A photo booth web application to be used at social gatherings such as Hackathons. Provides the ability for client entertainment as well as the ability to collect age and gender data for future analysis. Created during Github's Local Hack Day 2017 in Kingston, Ontario.
The intention of this project was to a fun application that could also provide social change. Bridging the gender gap in the STEM fields, especially in STEM fields related to technology is currently a priority across the world. Having equal representation of male and female participants at events such as Hackathon's ensures fair access to education, increases diversity, improves creativity and allows the world to become more inclusive as a whole. By making a photo booth application that tracks gender and age without any external intervention, data is collected without any extra hassle. Photo booths are already common equipment at such events due to their social entertainment value, however using our web application it can provide much more than that.
How It Works
- IBM Watson Visual Recognition API : https://www.ibm.com/watson/services/visual-recognition/
- GitHub Pages : https://pages.github.com
- Node Js : https://nodejs.org/en/
How to use
- Clone this repository
- Launch the backend by executing "node CSEqualBackend.js". Ensure NodeJs is installed and any other prerequisites necessary.
- Navigate to http://localhost:3000/ to test out the app locally. See screenshots below for information on how to use the user interface.
- Host the backend on a cloud server.
- Currently the backend is hosted on a local machine which is not condusive to multiple front end units or for transferring the application between computers. Launching the backend on a server can be as simple as running "node CSEqualBackend.js" in an Amazon AWS or Microsoft Azure instance.
- Include more statistics in summary, including age, emotion (happy, sad, angry), and ethnicity.
- Provide an in-depth report with creative visuals for displaying trend information.
- Could make use of ElasticSearch and Kibana for displaying visuals such as graphs.
- Improve the user interface and appearance of the application.
- Purchase domain for Front End application.
- Ensure individuals are not double-counted.
- Can be done by using "compare" functionality of IBM Watson Visual Recognition API.
- Live camera view can be seen on the left hand side.
- Image can be captured by pressing "Take my Photo!" button.
- If satisfied with image start analysis and picture download by pressing "Download Photo and Run Analysis!".
- Instant results displayed in left hand bottom corner.
- Cumulative gender summary results seen in right hand bottom corner.
- Parv Mital
- Johan Cornelissen