All Projects → andriyadi → Maix-LogoClassifier

andriyadi / Maix-LogoClassifier

Licence: MIT license
A simple logo classifier developed using Maixduino framework and PlatfomIO, to run on K210 MCU on Sipeed's Maix dev board.

Programming Languages

python
139335 projects - #7 most used programming language
C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Maix-LogoClassifier

Node Image Classification
A simple example on Image Classification in Node.js with TensorFlow.js
Stars: ✭ 23 (-8%)
Mutual labels:  image-classification, mobilenet
cifar-tensorflow
No description or website provided.
Stars: ✭ 18 (-28%)
Mutual labels:  image-classification, mobilenet
Mmclassification
OpenMMLab Image Classification Toolbox and Benchmark
Stars: ✭ 532 (+2028%)
Mutual labels:  image-classification, mobilenet
Bsconv
Reference implementation for Blueprint Separable Convolutions (CVPR 2020)
Stars: ✭ 84 (+236%)
Mutual labels:  image-classification, mobilenet
Tf Mobilenet V2
Mobilenet V2(Inverted Residual) Implementation & Trained Weights Using Tensorflow
Stars: ✭ 85 (+240%)
Mutual labels:  image-classification, mobilenet
Pytorch Cifar100
Practice on cifar100(ResNet, DenseNet, VGG, GoogleNet, InceptionV3, InceptionV4, Inception-ResNetv2, Xception, Resnet In Resnet, ResNext,ShuffleNet, ShuffleNetv2, MobileNet, MobileNetv2, SqueezeNet, NasNet, Residual Attention Network, SENet, WideResNet)
Stars: ✭ 2,423 (+9592%)
Mutual labels:  image-classification, mobilenet
Efficientnet
Implementation of EfficientNet model. Keras and TensorFlow Keras.
Stars: ✭ 1,920 (+7580%)
Mutual labels:  image-classification, mobilenet
libmaix
A library and SDK for embeded AI model inference with hardware acceleration
Stars: ✭ 40 (+60%)
Mutual labels:  aiot, maix
MixNet-PyTorch
Concise, Modular, Human-friendly PyTorch implementation of MixNet with Pre-trained Weights.
Stars: ✭ 16 (-36%)
Mutual labels:  image-classification
Alturos.ImageAnnotation
A collaborative tool for labeling image data for yolo
Stars: ✭ 47 (+88%)
Mutual labels:  image-classification
imannotate
Image annotation tool to make Machine Learning or others stuffs
Stars: ✭ 44 (+76%)
Mutual labels:  image-classification
Core2-for-AWS-IoT-EduKit
Accompanying code for use with AWS IoT EduKit content. Works with PlatformIO and ESP-IDF v4.2.
Stars: ✭ 107 (+328%)
Mutual labels:  platformio
Paper-Notes
Paper notes in deep learning/machine learning and computer vision
Stars: ✭ 37 (+48%)
Mutual labels:  image-classification
XMC-for-Arduino
Integration of Infineon's XMC microcontrollers into the Arduino IDE.
Stars: ✭ 85 (+240%)
Mutual labels:  platformio
Tensorflow-Dog-Breed-Classifier
Tensorflow Image classifier that can predict the breed of a dog from it photo. Trained on image dataset of 5 different breed of dogs (rottweiler, bulldog, pug, german shepherds, labrador). Interestingly the classifier was able to predict the breed of the dogs even from images of their toys.
Stars: ✭ 14 (-44%)
Mutual labels:  image-classification
metric-transfer.pytorch
Deep Metric Transfer for Label Propagation with Limited Annotated Data
Stars: ✭ 49 (+96%)
Mutual labels:  image-classification
canairio firmware
CanAirIO is a citizen science initiative. We are developing a mobile application that is able to set a PM2.5 or CO2 sensors, and other related sensors, as a fixed station using WiFi or mobile station with an smartphone by using a Bluetooth connection.
Stars: ✭ 84 (+236%)
Mutual labels:  platformio
MobileNet-SSD-windows
No description or website provided.
Stars: ✭ 91 (+264%)
Mutual labels:  mobilenet
MXNet-MobileNetV3
A Gluon implement of MobileNetV3
Stars: ✭ 28 (+12%)
Mutual labels:  mobilenet
platform-lattice ice40
Lattice iCE40: development platform for PlatformIO
Stars: ✭ 34 (+36%)
Mutual labels:  platformio

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
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].