All Projects → llSourcell → Image_classifier_template

llSourcell / Image_classifier_template

This is the code for "Image Classifier Example" by Siraj Raval on Youtube

Programming Languages

dart
5743 projects

Credits

Credits go to the FastAI team, Naveen Chanakya, and the Flutter team. I integrated a few different tutorials together to form a SaaS pipeline template. This is the code for this video on Youtube by Siraj Raval on building an image classification startup. There are 3 components here; A web API, a model training script, and a mobile app. The code in this repository is for the starter flutter app. Let's go through the 5 step process below. Pull Requests are always welcome!

Step 1: Find an Image Dataset

What is the image classification service you'd like to build? Once you decide, find a related dataset using these tools

Step 2: Transfer Learning

  • Run this notebook on your local machine or upload and run it to colab. Replace the bear dataset with your own image dataset. It's retraining a 'resnet34' image classification model. This is transfer learning.
  • Save the resulting model pkl file to google drive, save the download link.

Step 3: Signup for Firebase + Stripe

Step 4: Deploy the Web API

  • Fork this repository.
  • Follow the instructions in its README to deploy it to render
  • Once deployed, check that it works.
  • Then replace line 12 in 'server.py' of the web example with a link to your own classifier pkl file and re-deploy
  • Make any cosmetic changes to the front-end inteface that you'd like

Step 5: Build the Mobile App

  • Install Flutter here
  • Download this code
  • Open it in android studio as a new flutter project
  • it will ask you to 'get' all dependencies, say yes and it'll will all be installed automatically
  • Replace the default render link in 'main.dart' to the link to your deployed render app
  • Notice the 2 functions for signup and login. This is where your stripe and firebase authentication code will be placed
  • See this and this
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].