Git Product home page Git Product logo

maix-logoclassifier's Introduction

Maix-LogoClassifier

A simple logo classifier developed using Maixduino framework and PlatfomIO, to run on K210 MCU on Sipeed's Maix dev board. I trained my own ML model, using transfer learning from MobileNet v1.

Demo video

Click the thumbnail

Demo video thumbnail

Prerequisites

  • PlatformIO
  • platform-kendryte210. Should be installed automatically
  • Kendryte nncase for NeuralNet optimization, download from here. Unzip anywhere.
  • If you're like me, I'll use VSCode and install PlatformIO extension. Maixduino is available for Arduino IDE, but real programmer knows what they should use.

Train your model

  • Install Tensorflow, Keras, and other stuffs. RTFM.
  • As the trained model leverages MobileNet, apparently we need to adjust it to be compatible with K210. Replace mobilenet.py file on site-packages/keras_applications (don't forget to backup) with the one in this repo. site-packages folder may exist on several places depends on your environment. If you use virtualenv, it should be under you_virtualenv_dir/lib/python3.x
  • Take a look at training/mbnet_keras.py file. Adjust the constants, and run it.
  • Convert the generated h5 model file by running training/convert.sh script with the h5 model file as parameter. Eg. ./convert.sh logoclassifier.h5
  • Copy the generated kmodel file to src
  • Adjust the labels on src/names.cpp file

(More complete steps will be coming soon)

Credit

  • Some code and steps are inspired by this useful tutorial. Thanks for your support @AIWintermuteAI
  • MobileNet class is adapted from MBNet_1000 class from Maixduino example

maix-logoclassifier's People

Contributors

andriyadi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.