Bringing ML to Mobile Apps - Let's build an app to perform Face Recognition using Flutter
Presented by: Don Ward
Flutter is Google’s cross-platform development framework for quickly crafting high-quality native apps on Web, iOS, Android, and ChromeOS in record time.
Flutter works with existing code, is used by developers and organizations around the world, and is free and open source. Notable apps written in Flutter include Abbey Road Studios first mobile app, Topline, the Hamilton Broadway Musical app, and Alibaba's Xianyu mobile app.
Firebase is Google's set of back-end services for mobile developers to quickly build out mobile apps for both Android and iOS. It is a set of 17 services that currently support 1.5 million mobile apps. The services range from Push Notifications, and Remote Configuration, all the way to supporting best in class Machine Learning models for use in mobile apps.
To illustrate how powerful the combination of Flutter and Firebase is, we will be building a cross-platform mobile app to perform face-recognition in real-time from the device's camera.
In this workshop we will develop this app using one codebase written in Flutter hooking into Firebase's APIs. Face recognition will be performed using a pre-built machine learning model built by Google and provided within Firebase. This machine learning model will run on the mobile device providing real-time detection with no network latency. The mobile app we will build can easily be extended to support many other types of Machine Learning models including custom models.
How will we do this?
In this hands-on workshop, we will start from scratch with no expectation of prior knowledge of Flutter.
Below is the schedule for the work-shop,
30 minutes - Intro to Flutter
30 minutes - Set up the Flutter development environment on attendees computers
30 minutes - Start coding the UI for the project step by step
15 minutes - Break
30 minutes - Finish off the UI for the project
30 minutes - Intro to Firebase
30 minutes - Setup Firebase for the project
30 minutes - Add the code to support Face Recognition from Firebase MLKit to the project
30 minutes - Celebrate! Wrap-up and questions
This entire workshop and all steps will be available beforehand as a GitHub repo. A example of how I plan on structuring the source code and the presentation can be found here -> https://github.com/donwardpeng/Flutter-DetTechWatch)
What will attendees walk away with?
The goal is for everyone to walk away with the understanding of how to build a mobile app that runs machine learning in real time (specifically face recognition). Additionally, at the end of the session, everyone should be have a working codebase for this app.