AI Image Classifier
AI Image Classifier names what is in a picture and shows the five most likely classes with confidence scores. It runs EfficientNet-Lite0 in your browser via WebAssembly, so the image is never uploaded. The first run downloads about 4.3 MB of model weights; results are then near-instant.
Use AI Image Classifier
Classification Results
Top 5Upload an image to see classification results
Read Content
What it does
Load an image and the page names what it thinks is in it, listing the five most likely classes with a confidence score for each. The work happens in your browser using a small neural network compiled to WebAssembly, so the picture is never uploaded.
It is a general-purpose classifier, not a search engine and not a detector. It answers "what is this a picture of" with labels such as golden retriever, espresso or castle. It does not draw boxes around objects, does not read text, and does not identify brands or people.
The model behind the results
| Item | Detail |
|---|---|
| Runtime | MediaPipe Tasks Vision 0.10.15, WebAssembly |
| Model | EfficientNet-Lite0, float32 |
| Weights size | About 4.3 MB, downloaded on first use |
| Training set | ImageNet, roughly a thousand everyday classes |
| Output | Top five classes with scores |
EfficientNet-Lite0 is a deliberate compromise: small enough to download and run on a laptop without a GPU, strong enough to be useful on clear photographs. The thousand classes cover animals, vehicles, foods, furniture, instruments, tools, buildings and common scenes. They do not cover specific product models, fictional characters, software interfaces or anything niche.
Reading the scores
Each score is the model's share of confidence across its classes, shown as a percentage to one decimal place. The five values are normalised, so they compete with each other rather than standing alone.
A 92 percent result is a strong signal. A 31 percent top result means the model found nothing convincing and distributed its guess thinly — often because the picture contains several objects, an unusual angle, or something outside its vocabulary. The top label can still be right in that case, but the percentage is telling you not to rely on it.
Two habits help. First, look at the gap between the first and second result; a large gap is more meaningful than a high first score alone. Second, treat the label as a description of the dominant visual pattern, not as a fact about the scene. A close-up of a dog's face may be labelled by breed, by species, or by the sofa behind it, depending on what fills the frame.
First run and the model download
The first classification triggers three downloads: the MediaPipe JavaScript bundle, the WebAssembly runtime, and the model weights. The panel reports each stage, ending with the model name and size. On a normal connection this takes a few seconds; on a slow one it can take noticeably longer.
Pressing Load AI Model before choosing an image performs the same warm-up. Once it succeeds the button changes to a disabled "Model Ready" state, and later images classify almost instantly because everything is cached in the page.
If the downloads are blocked — a corporate proxy, an offline machine, a strict content blocker — the button turns red and the status line reports the failure. The page cannot fall back to a server-side classifier, because there is not one.
Converting an image
- Click the upload area and choose a file. The picker accepts any image type; drag-and-drop onto the panel is not wired up.
- The preview appears and classification starts automatically — there is no separate Analyse button.
- Watch the loading strip while the model initialises, then the results list fills in.
- Read the five labels with their bars. Colours distinguish the top three; the order is by score.
The preview is capped at 300 pixels high, which makes it easy to confirm you chose the right file, but the classifier uses the original image data rather than the shrunken preview. Replacing the file clears the previous results and classifies the new one.
What it handles well
- Single, centred subjects with a plain background: a mug, a bicycle, a cat, a piece of fruit.
- Common animals, vehicles and household objects photographed in good light.
- Recognisable foods, instruments, tools and landmarks from the training set.
- Quick triage: deciding whether a batch of photos contains dogs, cars or documents before sorting by hand.
Where it falls short
The vocabulary is the limit. Ask about a specific laptop model and you will get notebook or computer at best. Ask about a logo, a plant species, a skin condition or a machine part and the model will pick the nearest visual category, which may be wrong and confidently so.
Busy scenes are another weakness. A street with people, cars, signs and buildings gives the model too many candidates, and the top five can look arbitrary. Text-heavy images are a poor fit: the model sees a page, a screen or a book, not the words. Screenshots of software often land on generic labels such as web site or desktop computer.
Unusual orientations hurt too. A rotated photo, an extreme close-up, or a subject cropped at the frame edge all reduce accuracy. So does heavy filtering, very low light, or a strong colour cast.
Getting better answers
- Crop to one subject. The classifier looks at the whole frame, so background clutter competes with the thing you care about.
- Fill the frame. A small object in a large scene is easy to miss; a close crop gives the model more signal.
- Use an ordinary angle. Front-on, well-lit photographs resemble the training data more closely than dramatic perspectives.
- Try a second crop. If the first result is weak, crop differently and classify again; the change in labels is informative.
- Do not fight a low score. If every result is under about 20 percent, the image is probably outside the model's vocabulary.
Privacy
The image never leaves the browser. It is decoded with the local image APIs, passed to the WebAssembly model as a bitmap, and discarded when classification finishes. There is no upload endpoint and no history. The page does make network requests for the library and the model files, so the CDN sees that someone loaded the classifier, but not what was classified.
Limits
One image at a time, five labels only, no bounding boxes, no segmentation, no OCR, no face recognition, no custom training, no batch upload, no result export and no history. The model is fixed and cannot be swapped. Very large images are decoded in memory, which can be slow on low-end devices. The page requires a modern browser with WebAssembly and ES modules, and it needs network access on first load.
Common mistakes
- Expecting brand or product identification. The classes are generic objects and scenes.
- Treating a percentage as accuracy. It is the model's internal confidence, not a guarantee.
- Classifying a screenshot of text. The model has no OCR; it will describe the screen.
- Judging a multi-object photo by the top label. Run a crop on each subject instead.
- Assuming an offline page works. The first load needs the CDN and the model weights.
- Reading the preview as input. The thumbnail is small; the classifier uses the full image.
Frequently Asked Questions
FAQ
Comments (0)
Describe the issue you encountered so we can investigate and improve the tool.