AI Image Classifier
Classify images with AI directly in your browser. Drop a photo and get top predictions with confidence scores using MobileNetV2, no server needed.
This AI image classifier runs a neural network entirely in your browser to identify what is in a photo. Upload or drag an image and the tool returns its top 5 predictions with confidence scores, all without sending any data to a server. It uses MobileNetV2 via Transformers.js and ONNX Runtime with WebAssembly - no GPU, no API key, and no backend required.
About AI Image Classifier
How Does Browser-Based Image Classification Work?
Traditional image classification requires sending photos to a cloud API - Google Vision, AWS Rekognition, or Azure Computer Vision all work this way. This tool takes a different approach: the entire neural network runs locally in your browser using WebAssembly (WASM), a binary instruction format that executes at near-native speed. The practical difference is that your images never leave your device.
| Step | What Happens |
|---|---|
| 1. Model loading | On first use, ~13 MB of MobileNetV2 weights download via Transformers.js and cache in your browser storage |
| 2. Image preprocessing | Your image is resized to 224 x 224 pixels and normalised to the model's expected RGB input format |
| 3. Inference | ONNX Runtime processes the image through 53 convolutional layers via WebAssembly |
| 4. Classification | The output is a softmax probability distribution over 1,000 ImageNet categories |
| 5. Results | Top 5 predictions are shown ranked by confidence percentage with visual bars |
After the initial model download, subsequent classifications typically complete in under a second on modern hardware. The model stays cached in your browser's storage, so repeat visits skip the download entirely.
About MobileNetV2
MobileNetV2 was introduced by Sandler, Howard, Zhu, Zhmoginov, and Chen at Google in their 2018 CVPR paper "MobileNetV2: Inverted Residuals and Linear Bottlenecks." The architecture was specifically designed for mobile and edge devices - small enough to run on a phone but accurate enough for practical classification tasks. Its key innovation is the inverted residual block: instead of compressing data through a bottleneck like traditional residual networks, MobileNetV2 expands the data in a middle layer using lightweight depthwise separable convolutions, then compresses it back down. This keeps the model small while preserving classification quality.
The model was trained on ImageNet-1K (ILSVRC), a benchmark dataset of 1,281,167 training images across 1,000 categories compiled by researchers at Stanford and Princeton (Deng et al., CVPR 2009). ImageNet covers a wide range of everyday objects, animals, vehicles, food, plants, and scenes.
| Property | MobileNetV2 1.0 |
|---|---|
| Parameters | ~3.5 million |
| Model size (ONNX quantised) | ~13 MB |
| Input size | 224 x 224 pixels, RGB |
| Output categories | 1,000 (ImageNet-1K classes) |
| Top-1 accuracy on ImageNet | 71.8% |
| Top-5 accuracy on ImageNet | 91.0% |
| Computational cost | ~300 million multiply-adds |
| Architecture | 19 inverted residual bottleneck layers |
| Inference engine | ONNX Runtime via WebAssembly |
How Does MobileNetV2 Compare to Other Models?
MobileNetV2 sits at a specific point on the accuracy-vs-size trade-off curve. Larger models like EfficientNet-B0 (5.3M parameters) achieve higher accuracy (~77% top-1) but require more memory and processing time. Smaller variants like MobileNetV3-Small (2.5M parameters) run faster but sacrifice a few percentage points of accuracy. For browser-based inference where download size and execution speed both matter, MobileNetV2 at 3.5M parameters hits a practical sweet spot.
| Model | Parameters | Top-1 Accuracy | Best For |
|---|---|---|---|
| MobileNetV2 1.0 | ~3.5M | 71.8% | Browser/mobile inference - good balance of speed and accuracy |
| MobileNetV3-Large | ~5.4M | 75.2% | Mobile apps needing slightly better accuracy |
| MobileNetV3-Small | ~2.5M | 67.5% | Very constrained devices where speed is critical |
| EfficientNet-B0 | ~5.3M | 77.1% | Server-side or native apps with more resources |
| ResNet-50 | ~25.6M | 76.1% | Server-side inference, research benchmarks |
Top-1 accuracy means the model's single best guess is correct. Top-5 means the correct answer appears somewhere in the model's five highest-confidence predictions. MobileNetV2's 91.0% top-5 accuracy means it almost always includes the right answer in its results, even when the top guess is wrong.
Understanding Confidence Scores
The confidence percentage next to each prediction represents the model's estimated probability that the image belongs to that category. These probabilities come from a softmax function applied to the network's raw output, which forces all 1,000 category scores to sum to 100%. A high score on the top prediction generally means the model found strong visual evidence for that category. A spread of low scores across multiple predictions usually means the image is ambiguous or unlike anything in the training data.
| Confidence Range | What It Means | Typical Scenario |
|---|---|---|
| 90-100% | Very confident, likely correct | Clear photo of a common object (dog, car, flower) |
| 70-90% | Fairly confident | Good photo, but some ambiguity between similar categories |
| 40-70% | Uncertain | Unusual angle, partial view, or uncommon variant |
| Below 40% | Low confidence, may be wrong | Image does not match training data well, abstract content |
Worked example: If you upload a clear photo of a golden retriever, the model might return "golden retriever" at 87%, "Labrador retriever" at 5%, "cocker spaniel" at 2%, and two other dog breeds at 1% each. The high top score and the fact that all five predictions are dog breeds tells you the model is confident this is a dog - it is just slightly uncertain about the exact breed. By contrast, if the top score is only 15% with unrelated categories, the model is essentially guessing.
What Can the Model Recognise?
MobileNetV2 is trained on ImageNet-1K, which covers 1,000 specific categories. These are heavily weighted toward objects, animals, and scenes that appear frequently in photographs. The model knows 120 dog breeds, dozens of bird species, most common vehicles, many food items, household objects, and outdoor scenes. It does not recognise text, abstract concepts, specific people, logos, or highly specialised technical items outside its training set.
| Strong Categories | Limited Categories |
|---|---|
| Dog breeds (120+ breeds recognised individually) | Abstract art, diagrams, screenshots |
| Vehicles (cars, trucks, boats, planes, bicycles) | Text in images, documents, handwriting |
| Food items (pizza, banana, ice cream, broccoli) | Specific people or faces (not trained for this) |
| Everyday objects (chairs, bottles, phones, clocks) | Logos, brand identification |
| Nature (flowers, landscapes, insects, mushrooms) | Medical or scientific imagery |
| Musical instruments (guitar, piano, violin, drum) | Images with multiple dominant subjects |
Privacy: Why Local Inference Matters
Cloud-based image classification APIs like Google Vision or AWS Rekognition require uploading your images to external servers. This raises privacy concerns, especially for sensitive photos - personal documents, medical images, location-revealing shots, or proprietary product photos. With browser-based inference via WebAssembly, the image never leaves your device. There is no network request carrying image data, no server-side logging, and no third-party data retention policy to worry about. The ONNX Runtime WebAssembly backend processes everything in your browser's sandboxed environment.
| Approach | Data Privacy | Speed | Accuracy | Cost |
|---|---|---|---|---|
| Cloud API (Google Vision, AWS) | Images sent to external servers | Fast (powerful GPUs) | Very high (large models) | Pay per request |
| Browser WASM (this tool) | Fully local, nothing uploaded | Moderate (CPU only) | Good (71.8% top-1) | Free, no API key |
| On-device native app | Fully local | Fast (hardware optimised) | High | App development cost |
This makes browser-based classification suitable for use cases where cloud upload is not an option - internal company tools, healthcare triage, or any situation where data sovereignty matters. The trade-off is lower accuracy compared to massive cloud models, but for quick categorisation and prototyping the results are practical.
Practical Uses
| Use Case | How It Helps |
|---|---|
| Developer prototyping | Test image classification UX before committing to a cloud API and its costs |
| Auto-tagging photos | Quick categorisation for personal or small photo libraries |
| Machine learning education | See neural network predictions with confidence scores without writing any code |
| Accessibility exploration | Check what an automated system would describe an image as, useful for alt-text ideas |
| Content moderation research | Understand how classification models categorise visual content before building production pipelines |
| Offline capability | After the first model download, classification works without any internet connection |
Tips for Better Results
| Tip | Why |
|---|---|
| Use clear, well-lit photos | The model was trained on clean images; dark or blurry photos reduce accuracy |
| Center the subject | MobileNetV2 expects the main subject roughly centered in the 224x224 frame |
| Avoid heavy cropping | Very tight crops may remove surrounding context the model relies on |
| Try different angles | If confidence is low, a different angle of the same object may score higher |
| Stick to single subjects | Images with one clear subject produce more meaningful results than busy scenes |
| Check top-5, not just top-1 | The correct label often appears in positions 2-5 when the top guess is wrong |
Technical Details: Transformers.js and ONNX Runtime
This tool uses Transformers.js by Hugging Face, which provides a JavaScript API for running machine learning models in the browser. Under the hood, Transformers.js loads an ONNX-format version of MobileNetV2 (specifically the Xenova/mobilenet_v2_1.0_224 checkpoint) and executes it through ONNX Runtime's WebAssembly backend. The model weights are quantised to reduce the download from the original ~14 MB float32 weights to roughly 13 MB, with negligible impact on classification accuracy.
The CDN import is pinned to Transformers.js version 3.8.1 to ensure consistent behaviour. After the initial download, the model files are stored in your browser's Cache Storage API, so subsequent visits load almost instantly. Transformers.js v3 also supports a WebGPU backend for GPU-accelerated inference on compatible browsers, though this tool uses the WASM backend for maximum compatibility across devices and operating systems. The WebAssembly approach works on Chrome, Firefox, Safari, and Edge on both desktop and mobile.
For estimating how much memory different AI architectures need, the AI model size calculator breaks down VRAM requirements by model type and precision. The AI token counter handles the text side of AI, counting tokens and estimating API costs across providers. For detecting AI-generated text rather than images, the AI text classifier analyses writing patterns to estimate whether content was human-written or machine-generated.
Sources
Frequently Asked Questions
How does the AI image classifier work?
The tool loads a MobileNetV2 neural network directly in your browser using Transformers.js. When you upload an image, the model analyzes it locally on your device and returns its top 5 predictions with confidence percentages. No data is sent to any server.
What kinds of images can it classify?
MobileNetV2 is trained on ImageNet, which covers about 1,000 common categories including animals, vehicles, household objects, food, plants, and more. It works best with clear photos containing a single prominent subject. Abstract art, text-heavy images, or very niche subjects may produce less accurate results.
Why does the first classification take longer?
On your first use, the browser needs to download the MobileNetV2 model, which is roughly 13 MB. After that initial download the model is cached in your browser, so subsequent visits and classifications are much faster.
Is my image sent to a server?
No. Everything runs locally in your browser using WebAssembly. Your images never leave your device, making this tool completely private.
How accurate are the predictions?
MobileNetV2 is a lightweight model optimized for speed. It handles common everyday objects well, but it is less accurate than larger models. If the confidence score for the top prediction is low, the model may be uncertain about the image content. Try a clearer or closer photo for better results.
Related Tools
Link to this tool
Copy this HTML to link to this tool from your website or blog.
<a href="https://toolboxkit.io/tools/ai-image-classifier/" title="AI Image Classifier - Free Online Tool">Try AI Image Classifier on ToolboxKit.io</a>