How do you make a computer look at a photo and tell you whether it contains a dog, a cat, or a parked car, and then describe what those objects are doing? This is the core challenge of image analysis and classification — a foundational skill for the AI-102 exam because nearly every real-world Azure AI vision solution starts with this exact capability.
Jump to a section
A simple way to picture Computer Vision: Image Analysis and Classification
A personal shopper's job is to examine a customer's photograph and decide exactly what's in it, then sort it into the right department.
Your friend hands you a blurry photo of their new living room and says, "I need a grey sofa that matches this rug, and I need five throw pillows." The photo is your input image. Your job is to analyse every pixel of that photo to identify the rug's exact grey colour, count the windows for natural light, and notice the existing furniture so you don't recommend something that clashes. That detailed analysis is computer vision image analysis.
Once you've identified everything, you then classify. You walk into the department store and sort the sofa into the "grey modern section" and the pillows into the "accent pillow category." Each item gets a label and a category. That labelling and sorting is image classification — assigning each visual object to a pre-defined bucket.
The whole process fails if you mistake a blue-grey rug for a warm beige one, or if you classify velvet pillows as linen. In the same way, a computer vision model needs precise analysis before it can accurately classify. Without the analysis step, the classification step is just guessing.
Computer vision is the branch of artificial intelligence that trains computers to interpret and understand the visual world. Instead of a human manually reviewing every photo or video frame, a computer vision system can automatically detect objects, read text, recognise faces, and even estimate depth and movement. For the AI-102 exam, you focus specifically on image analysis (extracting detailed information from a single image) and image classification (assigning that image to one or more pre-defined categories).
To understand how this works, you first need to know what an image really is to a computer. A digital image is just a grid of tiny squares called pixels. Each pixel has a colour value. For example, a 200x200 pixel image has 40,000 separate pixels. The computer sees these as a massive grid of numbers — not a picture of a cat. The challenge is turning that grid of numbers into a meaningful label like "cat" or "dog."
Machine learning models specially trained for vision tasks use a technique called deep learning. Deep learning models are built from layers of artificial neurons loosely inspired by the human brain. A common architecture for image tasks is the Convolutional Neural Network (CNN). Think of a CNN as a series of filters: the first layer detects simple patterns like edges and colours. The next layer detects slightly more complex shapes like circles or lines. Deeper layers detect full objects like eyes, noses, or wheels. The final layer combines those detections to make a classification decision.
Now consider image analysis versus image classification. Image analysis (often called image understanding) is about extracting rich metadata from an image. For example, you upload a photo of a restaurant, and the service returns a list of detected objects: table, chairs, menu, person, plate, food. It might also extract text from the menu (optical character recognition, or OCR), detect whether the people are happy or sad (sentiment), and estimate the room's lighting conditions. Analysis produces a dense description.
Image classification is narrower. You train a model to assign one or more labels to an entire image. For instance, you have 10,000 photos of different animals, each labelled as "mammal" or "bird." The model learns the visual patterns that separate the two classes. Once trained, you give it a new photo of a penguin, and it outputs the label "bird" with a confidence score of, say, 95%. The confidence score tells you how sure the model is. If the score is low (e.g., 40%), the model is uncertain — this is a signal to reject or flag the result.
In Azure AI services, these capabilities are available through the Azure AI Vision service. You do not need to build your own CNN from scratch. Instead, you call pre-built REST APIs or use the SDK to submit an image URL or binary data. The service handles the complex deep learning inference and returns JSON results. Key operations include:
Analyse Image: returns tags, objects, brands, faces, celebrities, landmarks, and descriptions.
Read OCR: extracts printed and handwritten text from images.
Detect Objects: returns bounding boxes (rectangular coordinates) around every detected object.
Classify Image: assigns one or more categories from a fixed taxonomy (e.g., "animal_dog" or "indoor_living_room").
The pre-built models are trained on massive datasets like ImageNet, which contains millions of labelled images across thousands of categories. This means you can immediately use the service for common tasks without any custom training. However, if your images are specialised — say, X-ray scans or vintage car parts — you may need to train a custom model using Azure Custom Vision or a Custom Neural Network.
Why does this matter? Image analysis and classification replace manual human inspection. A human can look at a photo and know it is a cat, but a human cannot review 10,000 photos per second. Computer vision scales that ability. Businesses use it for inventory management (photos of shelves to count stock), content moderation (flagging explicit images), medical imaging (detecting tumours in X-rays), and autonomous vehicles (identifying pedestrians and traffic signs).
On the AI-102 exam, you will be asked to differentiate between these operations, choose the correct API endpoint, interpret JSON results, and handle error codes. You also need to understand how to optimise image input (e.g., resizing to within 4MB, using supported file types like JPEG, PNG, or BMP) and how to manage rate limits and pricing tiers.
Create an Azure AI Vision Resource
Go to the Azure Portal, click 'Create a resource', search for 'Azure AI Vision', choose a region (e.g., West Europe), select a pricing tier (F0 for testing, S0 for production), and create the resource. This gives you an endpoint URL and an API key — the credentials you will use in every API call.
Prepare Your Image
Ensure the image is in a supported format (JPEG, PNG, GIF, BMP, or WEBP) and under 4MB. If the image is larger, resize it. If the format is unsupported (e.g., TIFF), convert it first. You can host the image online (use a blob storage URL) or send the raw binary data directly in the request body.
Make an API Call to Analyse Image
Send an HTTP POST request to the Analyse Image endpoint (e.g., https://{region}.api.cognitive.microsoft.com/vision/v3.2/analyze). Include the API key in the header. Set the 'visualFeatures' parameter to request the specific analysis you need, such as Tags, Objects, Description, or Adult. The service processes the image using its deep learning model and returns a JSON result.
Parse the JSON Response
Read the returned JSON to extract the data your application needs. For example, if you requested Tags, you will see a 'tags' array with each tag having a 'name' and 'confidence' score. Loop through the array, filter by your confidence threshold, and store the relevant tags in your database or trigger the next step in your workflow.
Handle Errors and Rate Limits
Check the HTTP status code. If you receive 429 (Too Many Requests), implement a retry logic by pausing for a few seconds before trying again. If you receive 401 or 403, double-check your API key and endpoint. Log all errors so you can monitor and adjust your request rate or credentials as needed.
Monitor and Improve Accuracy
Use Azure Monitor to track the number of requests, success rates, and average response times. If you notice misclassifications (e.g., blouses labelled as shirts), collect a sample of mislabelled images and use them to train a custom model in Azure Custom Vision. Then replace the pre-built call with a call to your custom model endpoint.
Imagine you work for a large online fashion retailer called TrendLoop. Your company receives 50,000 new product photos every day from suppliers. Each photo shows a clothing item on a white background. Your boss wants to categorise every item into departments, detect the colour, and extract any text on the labels (like size or care instructions). Doing this manually would require a team of 50 people working full time. Instead, you build an automated solution using Azure AI Vision.
Step 1: Set up an Azure subscription and create an Azure AI Vision resource in the Azure Portal. You configure it in the region closest to your data centre (e.g., West Europe). You note the endpoint URL and the API key — both are required to authenticate every request.
Step 2: Write a script that takes each product photo from a shared blob storage container, resizes it so it does not exceed 4MB, and sends it to the Analyse Image API. You use the visual features parameter set to 'Tags', 'Objects', 'Description', and 'Read'. The service returns a JSON object. For example, for a photo of a red dress:
Tags: ["dress", "red", "fashion", "sleeveless", "evening wear"]
Objects: [{"rectangle": {"x": 10, "y": 20, "w": 180, "h": 250}, "object": "dress"}]
Description: "a red evening dress on a mannequin"
Read: [{"text": "100% Silk", "confidence": 0.98}]
Step 3: Parse the JSON to extract the top tag (e.g., "dress") and map it to your inventory database category "Dresses." Store the colour value and the extracted text into separate fields. This is now an automated pipeline: photos go in, categorised product data comes out.
Step 4: Handle errors and edge cases. If a photo arrives with poor lighting, the analysis might return low-confidence tags. You set a threshold: only accept tags with confidence >= 80%. Lower confidence items are flagged for manual review. You also handle HTTP error codes, like 429 (too many requests), by implementing retry logic with exponential back-off.
Step 5: Monitor performance. After one week, you review the metrics in Azure Monitor. You find that 93% of items are classified correctly, but the model confuses "blouses" and "shirts" 7% of the time. You decide to train a custom model using Azure Custom Vision with 200 labelled examples of each category. This improves accuracy to 98%.
As an IT professional, you never train the deep learning model from scratch. You configure pre-built services, manage authentication, handle data ingestion, and design fallback logic. You also decide when to use the pre-built model versus when to invest in custom training. The exam tests your ability to make these exact decisions.
The AI-102 exam tests your practical knowledge of Azure AI Vision for image analysis and classification. You will not be asked to write deep learning code from scratch. Instead, expect scenario-based multiple-choice questions, drag-and-drop ordering, and case study analysis. Here is what to focus on:
The Analyse Image API is the workhorse for image analysis. The exam loves to ask: which visual features parameter do you use for a given scenario? You must memorise the options: Tags, Objects, Brands, Faces, Description, Categories, Color, ImageType, Adult. For example, if the scenario says "extract tags and detect if the image is suitable for children," you should select Tags and Adult.
The Read API (OCR) is a separate operation from Analyse Image. A common trap: a scenario asks for "extracting text from a photo of a restaurant menu." Some people choose Analyse Image with Text feature — but that feature was deprecated. The correct answer is the Read API. Make sure you know that Read is for text extraction, and it has a different endpoint (vision/read).
Object detection returns bounding box coordinates. The exam may ask you to interpret these: (x, y) is the top-left corner of the bounding box, and (w, h) are width and height. A question might present a JSON output and ask how to draw a rectangle around a detected object. You need to know x, y, w, h.
Confidence score thresholds: always treat them as a filtering mechanism. A question might say: "The model returns a cat with 65% confidence. Should we accept it?" The answer is: it depends on the business requirement. If the threshold is 70%, reject. If 50%, accept. They want you to understand that confidence scores are not absolute truth.
Pricing tiers: you need to know the difference between Free (F0) and Standard (S0) tiers. The Free tier is limited to 20 transactions per minute, 5K transactions per month. The Standard tier has higher limits and adds more features. A typical exam question: "You need to analyse 1,000 images per hour. Which tier should you use?" Answer: Standard.
Pre-built vs. custom models: the exam tests when to use each. Use pre-built for common objects (cars, food, animals), scenery, landmarks, and celebrities. Use custom when you need niche categories that do not exist in the pre-built model, such as specific medical conditions or proprietary product types. The service for custom models is Azure Custom Vision.
Supported image formats: JPEG, PNG, GIF, BMP, WEBP. Maximum file size per image is 4MB. Minimum image size is 50x50 pixels. A common trap: a scenario says "the image is a 5MB TIFF file." You must know to convert it to a supported format or reduce its size before sending.
Authentication: you must use either a subscription key or Microsoft Entra ID. The exam expects you to know how to set this up in code, usually via a client class with the key passed in the header.
Error handling: watch out for 401 (Unauthorized), 403 (Forbidden), 404 (Not Found), 429 (Rate limit exceeded). You should know that 429 requires a retry after a certain time.
The exam also includes questions about responsible AI: bias, fairness, and transparency. For image analysis, a scenario might ask: "The model performs poorly on images of people with darker skin tones. What should you do?" The answer involves gathering more diverse training data and testing for fairness using Azure Fairlearn.
Image analysis extracts detailed metadata from an image, while image classification assigns a single label or category to the entire image.
Azure AI Vision offers pre-built models for common tasks — you only need custom training for specialised domains not covered by the pre-built model.
Confidence scores are predictions, not guarantees; always set a threshold that matches your business tolerance for errors and flag low-confidence results for manual review.
Only JPEG, PNG, GIF, BMP, and WEBP are supported image formats; maximum file size is 4MB.
The Read API is the correct endpoint for text extraction (OCR); the Analyse Image API's text feature was deprecated.
The Free tier (F0) is limited to 20 transactions per minute and 5,000 transactions per month; use Standard (S0) for production workloads.
Object detection returns bounding box coordinates (x, y, w, h) — the top-left corner and dimensions of the detected object.
Always use either a subscription key or Microsoft Entra ID to authenticate requests to Azure AI Vision.
These come up on the exam all the time. Here's how to tell them apart.
Image Analysis
Returns multiple pieces of metadata: tags, objects, brands, faces, description.
Used to describe what is in an image in detail.
Endpoint: POST /vision/v3.2/analyze with visualFeatures parameter.
Image Classification
Returns a single label or category for the entire image.
Used to assign a pre-defined category to an image.
Endpoint: POST /vision/v3.2/classify (requires a custom trained model).
Analyse Image API (with Text feature)
The 'Text' visual feature is deprecated in the Analyse Image API.
Returns limited text information from an image.
Suitable for simple text detection like street signs.
Read API (OCR)
The dedicated API for OCR text extraction.
Returns structured text with lines, words, and bounding boxes.
Suitable for dense documents, handwriting, and multiple languages.
Pre-built Model
Trained on millions of images covering thousands of common categories.
No training required — use immediately via API.
Best for general-purpose scenarios: animals, scenery, people, food.
Custom Model (Custom Vision)
Uses your own labelled images to train a model for specialised categories.
Requires uploading images and training a model in Custom Vision portal.
Best for niche domains: specific medical conditions, proprietary inventory items.
Free Tier (F0)
20 transactions per minute, 5,000 transactions per month.
No SLA — not for production use.
Access to a limited set of features.
Standard Tier (S0)
Higher transactions per minute and unlimited monthly transactions (pay per transaction).
SLA available — suitable for production workloads.
Full feature access, including advanced analysis options.
Mistake
Image analysis and image classification are the same thing — you just upload an image and get a label.
Correct
Image analysis returns detailed metadata (tags, objects, text, faces, colours), while image classification returns a single label or category for the entire image. Analysis is descriptive; classification is categorical.
Both sound similar because they both involve processing images. Beginners assume 'analysis' is just a fancy word for 'classification', but Azure AI services separate them into different API calls with different endpoints and response schemas.
Mistake
You need to train a deep learning model from scratch before you can use Azure AI Vision.
Correct
Azure AI Vision offers pre-built models for common tasks like object detection, OCR, and landmark recognition. You only need custom training if your domain is not covered by the pre-built model.
This misconception comes from hearing about machine learning and assuming every solution requires building your own model. In reality, Microsoft has already trained large models that cover thousands of categories, so you can start with zero training.
Mistake
Confidence scores are percentages and are always accurate — if the score is 95%, you should always trust the result.
Correct
Confidence scores are predictions, not guarantees. A 95% score means the model is 95% confident, but it can still be wrong. You should set a threshold that matches your business tolerance for errors.
People naturally trust numbers like percentages because they look like grades. They do not realise that a model can be confidently wrong, especially on images unlike those it was trained on. This is why thresholds and manual review are essential.
Mistake
You can send any image file type and any file size to Azure AI Vision.
Correct
Only specific formats are supported: JPEG, PNG, GIF, BMP, WEBP. The maximum file size is 4MB. Larger or unsupported files must be converted or resized before sending.
Beginners assume APIs accept all common file types automatically. They are frustrated when they get a 400 error for a TIFF file. The exam exploits this by presenting unsupported file types in scenario questions.
Mistake
The Read API and Analyse Image API both do text extraction, so you can use either one.
Correct
Only the Read API is designed for text extraction (OCR). The Analyse Image API’s text feature (visual feature 'Text') was deprecated. Always use Read for extracting printed or handwritten text.
Confusion arises because Analyse Image used to support text extraction back in earlier API versions. The deprecation is not well known, and old documentation still shows it. The exam deliberately tests this distinction.
Reveal each answer, then mark whether you got it right. Score 60%+ to unlock the next chapter.
Image analysis returns detailed metadata like tags, objects, text, and faces from an image. Image classification assigns a single label (or a set of labels) to the entire image, such as 'cat' or 'dog'. The Analyse Image API does analysis; the Classify Image API does classification.
Use the Read API (endpoint: /vision/v3.2/read). Send your image, receive an operation ID, and call the Get Read Result endpoint until the status is 'succeeded'. The response contains the extracted text lines and words.
Yes. You can test the APIs using the Azure Portal's 'Try it out' feature in the Azure AI Vision section, or use tools like Postman to send requests. However, for production, you will need to write code (e.g., Python, C#) to automate the process.
A confidence score is a number between 0 and 1 (or 0% and 100%) that indicates how sure the model is about a prediction. You set a threshold — for example, only accept tags with confidence >= 0.80 — to filter out uncertain results and reduce errors.
It supports JPEG, PNG, GIF, BMP, and WEBP. The maximum file size is 4MB. Unsupported formats like TIFF or raw files must be converted before submission.
The free tier allows 20 requests per minute. If you exceed this, you get a 429 (Too Many Requests) error. Use exponential back-off in your code: wait 1 second on the first retry, then 2 seconds, then 4, etc. Upgrading to the Standard tier increases the limit dramatically.
You've finished Computer Vision: Image Analysis and Classification. Continue through the AI-102 study guide to build a complete picture of the exam.
Done with this chapter?