Google released several efficient pre-trained computer vision models for mobile phones in the Tensorflow Github repository.

Developers can choose from several models that differ in the amount of parameters, computations for processing one image, and accuracy. The smallest model has 14 million "multiply and add operations" (MACs). Their largest model has 569 MACs. The more computations a model has to perform to predict the class of an image, the more battery power the phone uses. Developers can trade accuracy for battery power for their specific application. The performance and footprint of the models are published on Google's blog.

Processing images on the smartphone itself is faster than uploading images to an online processing service (like the Cloud API). Is also means that no data has to leave the smartphone, ensuring the privacy of the user. The models are open source, developers can either download them directly or tweak them to meet their specific needs.

Although the released models use less computations to make a prediction, the accuracy of many of the models is comparable to the performance of other neural networks. Why MobileNets can be more efficient was published earlier this year in a scientific paper.

​

The accuracy of the models is determined with the LSVRC dataset: a large image recognition dataset. MobileNet predicts five labels for an image: top-1 accuracy indicates how often the first predicted label is indeed the label of the image. The top-5 accuracy indicates how often the label of the image is in the top-5 of the predictions of the network.

Developers who want to start using these models should go to the Tensorflow Mobile page. More information about the Tensorflow-Slim image classification library is available on Github.