0% found this document useful (0 votes)
17 views17 pages

Understanding Autoencoders and CNNs

Uploaded by

Mudit Jain
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views17 pages

Understanding Autoencoders and CNNs

Uploaded by

Mudit Jain
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Autoencoders

An autoencoder is a type of neural network used for unsupervised learning. Its goal is to learn efficient
representations of input data by compressing it into a lower-dimensional form (encoding) and then
reconstructing it (decoding). Think of it as a "data compression algorithm" that learns to copy its input
to its output with minimal loss.

Autoencoders consists of two components:

• Encoder: This compresses the input into a compact representation and capture the most
relevant features.

• Decoder: It reconstructs the input data from this compressed form to make it as similar as
possible to the original input.

For example if the input is a noisy image of handwritten digits the autoencoder can learn to remove
noise by compressing the image into a smaller feature set and reconstructing a cleaner version of the
original image.

The architecture of an autoencoder consists of three main components: the Encoder, the Bottleneck
(Latent Space) and the Decoder.

1. Encoder
• What it does: Takes input data (like an image) and compresses it into a smaller, simplified
version.
o Example: Think of squashing a 1000-word essay into a 100-word summary.
• Structure:
o Input Layer: Receives raw data (e.g., pixels of an image).
o Hidden Layers: Gradually reduce the data size by extracting only the most important
features (e.g., edges in an image).
o Output (Latent Space): A tiny, compressed version of the input.
2. Bottleneck (Latent Space)
• What it is: The smallest layer in the network.
• Why it matters:
o Forces the autoencoder to learn only the core patterns of the data.
o Example: If you compress a photo of a cat, the bottleneck stores info like "pointy ears"
or "whiskers," not every pixel.
3. Decoder
• What it does: Takes the compressed data and reconstructs it back to the original size.
o Example: Expanding the 100-word summary back into a full essay.
• Structure:
o Hidden Layers: Gradually expand the compressed data.
o Output Layer: Produces a version of the input (e.g., a reconstructed image).
Loss Function(In Autoencoder)
• Purpose: Measures how well the autoencoder rebuilt the input.
• Types:
o Mean Squared Error (MSE): Used for numbers (e.g., grayscale images).
o Binary Cross-Entropy: Used for yes/no data (e.g., black-and-white images).
• The autoencoder learns by minimizing this loss (i.e., making the output as close as possible
to the input).
In Short
• Encoder → Bottleneck → Decoder work together to compress and rebuild data.
• The loss function guides the network to focus on what’s important.
• Constraints (small layers, noise, etc.) ensure the autoencoder learns meaningful patterns, not
just copy-paste.

Difference between Deep Learning and Machine Learning


2. Key Differences
Aspect Machine Learning (ML) Deep Learning (DL)
Data Needs Works well with small to medium Requires massive datasets (e.g.,
datasets. millions of images).
Feature Needs manual feature Automatically learns features from raw
Engineering extraction (e.g., selecting relevant data (no manual effort).
variables).
Hardware Runs on standard CPUs. Needs GPUs/TPUs for heavy
computations (due to complex layers).
Interpretability Models like decision trees or linear Acts like a "black box" (hard to explain
regression are easy to interpret. why decisions are made).
Use Cases Structured data (e.g., spreadsheets, Unstructured data (e.g., images, audio,
CSV files). text).
Training Time Faster training (minutes/hours). Slower training (hours/days/weeks).
Model Simple algorithms (e.g., SVM, Complex architectures (e.g., ResNet,
Complexity random forest). GPT-3).

CNN
What is a CNN?

A Convolutional Neural Network (CNN) is a special type of artificial neural network designed for
processing images and grid-like data. CNNs are widely used in image recognition, object detection,
medical image analysis, and video processing.

Think of a CNN as a super-powered camera filter that can detect patterns like edges, shapes, and
textures in an image. Just like how our eyes see objects by recognizing patterns (such as shapes of
letters, colours, and textures), CNNs learn to recognize patterns in images.

How CNNs Work (Step-by-Step)

CNNs work by processing an image through multiple layers. Each layer extracts different levels of
features from the image.

1. Input Image

• The CNN receives an image as input, typically resized to a standard size (e.g., 28×28 pixels for
handwritten digits or 224×224 pixels for large datasets like ImageNet).

• The image is represented as a grid of numbers (pixels).

2. Convolutional Layer

• This is the most important layer of a CNN.

• The CNN applies small filters (kernels) to the image to detect patterns like edges, curves,
and textures.
• These filters slide over the image and create feature maps—smaller representations of the
image that highlight important patterns.

3. Activation Function

• After detecting patterns, the CNN uses an activation function (e.g., ReLU or sigmoid) to
introduce non-linearity.

• This helps the CNN learn complex patterns instead of just detecting simple lines or edges.

4. Pooling Layer

• The pooling layer reduces the size of the feature maps to make computations faster and
prevent overfitting.

• Max pooling is the most common type—it keeps only the most important values (e.g.,
highest pixel intensity).

• Pooling helps retain important features while reducing unnecessary details.

5. Fully Connected Layer

• The extracted features are then passed to fully connected layers, where every neuron is
connected to every other neuron.

• These layers process high-level features and make predictions.

• The final output might be a classification (e.g., "cat" or "dog").

6. Output Layer

• The final layer provides the CNN’s prediction, such as classifying an image into different
categories.

How CNNs Learn? (Training Process)

CNNs learn by being trained on labeled images (supervised learning). The training process includes:

1. Data Preparation – Images are resized, normalized, and labeled.

2. Loss Function – Measures how far the CNN’s predictions are from the actual labels.

3. Optimizer (e.g., Adam, SGD) – Adjusts the CNN’s weights to minimize errors.

4. Backpropagation – Updates the CNN’s weights using gradients to improve accuracy.

Once trained, the CNN is tested on unseen images to evaluate its performance.

Popular CNN Architectures

There are different CNN models designed for specific tasks. Here are some well-known architectures:

1. LeNet (1990s) – First CNN, designed for handwritten digit recognition (MNIST dataset).

2. AlexNet (2012) – Won the ImageNet competition and popularized deep CNNs.

3. VGG (VGG-16, VGG-19) – Uses small 3×3 filters and deep layers for better accuracy.

4. ResNet – Uses skip connections to train very deep networks without performance loss.
5. GoogleNet (Inception) – Uses Inception modules to learn multiple features at different
scales.

Applications of CNNs

CNNs are widely used in various real-world applications:

1. Image Classification – Categorizing images (e.g., identifying dogs vs. cats).

2. Object Detection – Detecting and localizing objects in an image.

3. Medical Imaging – Identifying diseases from X-rays, MRIs, and CT scans.

4. Video Analysis – Tracking objects in videos (e.g., self-driving cars, surveillance).

5. Facial Recognition – Used in security systems and smartphone unlocking.

Advantages of CNNs

High Accuracy – Achieves top performance in image-related tasks.

Efficient – Reduces the number of parameters compared to traditional neural networks.

Robust – Can handle variations in lighting, scale, and angles.

Automated Feature Extraction – No need for manual feature selection.

Disadvantages of CNNs

Computationally Expensive – Requires powerful hardware (e.g., GPUs).

Needs a Lot of Data – Performs best when trained on millions of images.

Difficult to Interpret – Hard to understand why CNNs make certain predictions.


YOLO
YOLO (You Only Look Once) is a powerful object detection algorithm that can quickly detect multiple
objects in an image or video. Unlike traditional methods that scan an image multiple times, YOLO looks
at the image only once, making it fast and efficient.

Imagine you are in a room filled with different objects (chairs, tables, laptops, etc.). Instead of scanning
each object one by one, YOLO takes a quick glance and instantly recognizes everything at once!

Traditional object detection methods (like R-CNN, Faster R-CNN) analyze an image multiple times,
making them slow. YOLO, on the other hand, is much faster because it:
Looks at the image once and detects all objects at the same time.
Works in real-time, making it ideal for applications like self-driving cars, security cameras, and
robotics.
Balances speed and accuracy, making it widely used in practical applications.

How Does YOLO Work?

YOLO follows a three-step process to detect objects in an image:

1. Divide the Image into a Grid

• The input image is divided into a grid of small squares (e.g., a 7×7 grid).

• Each square is responsible for detecting objects within its region.

2. Predict Bounding Boxes and Class Scores

• Each grid cell predicts bounding boxes (rectangles around objects) and confidence scores
(how sure YOLO is about each detection).

• YOLO also predicts class labels (e.g., "dog", "car", "person").

3. Apply Non-Maximum Suppression (NMS)

• Sometimes, YOLO predicts multiple boxes for the same object.

• NMS removes duplicate or unnecessary boxes, keeping only the most accurate one.

Example: Detecting Objects in an Image

Let’s say we have an image of a street with cars, pedestrians, and traffic lights. YOLO will:
Divide the image into a grid.
Predict bounding boxes for objects inside each grid cell.
Assign class labels (e.g., "car", "person", "traffic light").
Eliminate duplicate boxes using Non-Maximum Suppression.

The final output will show each detected object with a labeled box around it!

Versions of YOLO

YOLO has been continuously improved over the years:


1. YOLOv1 (2016) – Introduced the basic idea of "You Only Look Once."

2. YOLOv2 (2017) – Improved accuracy and speed.

3. YOLOv3 (2018) – Used deeper networks and multi-scale detection.

4. YOLOv4 (2020) – Faster and more accurate for real-world applications.

5. YOLOv5 (2021) – Easier to use, lightweight, and more efficient.

6. YOLOv6, YOLOv7, YOLOv8 (Latest) – Further speed and accuracy improvements.

Applications of YOLO

YOLO is widely used in various fields:

Self-Driving Cars – Detects pedestrians, vehicles, and road signs in real-time.


Surveillance and Security – Identifies suspicious activities in CCTV footage.
Medical Imaging – Detects tumors, diseases, or abnormalities in X-rays and MRIs.
Retail & Inventory Management – Recognizes items in stores for automated checkout.
Sports Analysis – Tracks players, balls, and movements in sports matches.

Advantages of YOLO

Super Fast – Works in real-time (great for live applications).


Single Pass Detection – Looks at the image only once, unlike older methods.
Accurate and Efficient – Balances speed with good accuracy.
Works on Videos – Can detect objects in moving footage.

Disadvantages of YOLO

Struggles with Small Objects – Might miss tiny objects in an image.


Not as Precise as Some Other Methods – Faster R-CNN might be more accurate in some cases.
Needs a Lot of Training Data – Requires large datasets for good performance.
Object Detection
Object Detection is a computer vision technique that helps a computer identify and locate objects in
an image or video. It not only tells what objects are present but also where they are by drawing
bounding boxes around them.
Example:
Imagine you have a photo of a street with cars, people, and traffic lights. Object detection will:
Recognize different objects (e.g., "Car", "Person", "Traffic Light")
Draw boxes around each object to show their position
It’s like how humans look at an image and instantly recognize things around them!

How is Object Detection Different from Image Classification?


Many people confuse object detection with image classification. Here’s the difference:
• Image Classification: Says what is in the image but not where (e.g., "There is a cat").
• Object Detection: Says what is in the image and where (e.g., "There is a cat at this position").

Example:
• Image Classification: "This image contains a dog."
• Object Detection: "There is a dog in the center of the image, and a cat in the corner."

How Does Object Detection Work?


Object detection works in three key steps:
1. Feature Extraction
• The computer looks at the image and identifies patterns like edges, colors, and textures.
• It extracts these features to understand what objects might be present.
2. Region Proposal
• The algorithm searches for areas that might contain objects.
• It proposes possible locations where objects could be detected.
3. Object Classification & Localization
• The algorithm classifies objects in the proposed regions (e.g., "This is a car").
• It draws bounding boxes around the objects to show their position.

Popular Object Detection Techniques


There are two main types of object detection methods:
1. Traditional Methods (Before Deep Learning)
Before deep learning, object detection used handcrafted features and machine learning models like:
Haar Cascades (Used in early face detection)
Histogram of Oriented Gradients (HOG)
Selective Search (Used in early R-CNN models)
These methods were slow and not very accurate.
2. Deep Learning-Based Methods (Modern Approach)
Deep learning has revolutionized object detection. Now, Convolutional Neural Networks (CNNs) are
used to detect objects efficiently.
Popular Deep Learning Object Detection Models:

R-CNN (Region-based CNN) – First deep learning object detector, but slow.
Fast R-CNN & Faster R-CNN – Faster and more efficient versions of R-CNN.
YOLO (You Only Look Once) – Extremely fast, used for real-time detection.
SSD (Single Shot Detector) – Balances speed and accuracy.

Example: Self-driving cars use YOLO or Faster R-CNN to detect pedestrians, traffic lights, and
obstacles in real-time.

YOLO vs. Faster R-CNN vs. SSD: Which One is Best?


Model Speed Accuracy Best Used For
YOLO Super High, but sometimes misses Real-time applications (self-driving
Fast small objects cars, CCTV)

Faster R- Slower Very High High-precision tasks (medical imaging)


CNN
SSD Fast Good but less accurate than Mobile applications (smartphones,
Faster R-CNN embedded devices)

Applications of Object Detection


Object detection is used in many industries:

Self-Driving Cars – Detects vehicles, pedestrians, road signs.


Security & Surveillance – Identifies intruders in CCTV footage.
Medical Diagnosis – Detects tumors in X-rays and MRIs.
Retail (Amazon Go Stores) – Recognizes products for automated checkout.
Wildlife Conservation – Detects and tracks animals in forests.
Face Recognition – Used in mobile phones and security systems.

Example:
In security cameras, object detection can recognize people, suspicious objects, and abandoned bags,
improving safety.

Advantages of Object Detection


Fast and Accurate – Detects objects in real-time with high accuracy.
Versatile – Can detect multiple objects at once.
Automation – Reduces the need for manual monitoring.
Challenges of Object Detection

Difficult with Overlapping Objects – Objects can block each other.


Small Object Detection – Hard to detect very tiny objects.
Computationally Expensive – Needs powerful GPUs for real-time applications.

Sliding Window Protocol in Machine Learning


The Sliding Window Protocol is a technique primarily used in computer networks for efficient data
transmission. However, in machine learning and deep learning, the concept of a "sliding window" is
often used in time series forecasting, sequence modeling, and natural language processing (NLP).

1. What is a Sliding Window?

A sliding window is a moving subset of a sequence (such as time-series data, text, or images) that
helps in analyzing local patterns and dependencies within the data. Instead of looking at the entire
dataset at once, the model only looks at a fixed-size window that moves step by step over the
dataset.

Example:
Consider daily temperature data for a year. Instead of analyzing the full 365 days at once, a 7-day
sliding window can be used to predict the next day's temperature based on the past week’s data.

2. Applications of Sliding Window in Machine Learning

a) Time Series Forecasting

In time series analysis, the sliding window approach is used to train models on sequential data.
Example: Predicting stock prices, weather forecasting, or electricity demand based on past
observations.

How it works:

• If we have a temperature dataset for 30 days, a sliding window of 5 days would use the last
5 days to predict the 6th day.

• The window moves forward by one step to train the model on the next set of 5 days.

b) Natural Language Processing (NLP)


In NLP, sliding windows help models understand word context in text data.
Example: In sentiment analysis, a sliding window technique can extract relevant words to
analyze emotions.

How it works:

• Consider the sentence: "The movie was amazing and I loved the acting."

• A sliding window of 3 words would generate:


1⃣ "The movie was"
2⃣ "movie was amazing"
3⃣ "was amazing and" …

• This helps models like RNNs and Transformers learn context effectively.

c) Image Processing (Computer Vision)

In image recognition, sliding windows are used for object detection.


Example: Detecting faces in an image.

How it works:

• A small window (patch) moves across the image.

• Each window is classified as "face" or "not face".

• This is how early face detection algorithms like Haar Cascades worked.

Modern object detection methods like YOLO (You Only Look Once) and Faster R-CNN have
replaced sliding window approaches for better efficiency.

3. Types of Sliding Window Approaches

There are two main types of sliding window techniques:

a) Fixed-Size Sliding Window

• The window moves at a fixed step size.

• Suitable for regularly spaced data like temperature readings.

Example: Predicting next-day sales using past 7 days’ data.

b) Variable-Size Sliding Window (Adaptive)

• The window size can change based on data patterns.

• Useful for irregular time series data (e.g., stock market fluctuations).

Example: Detecting anomalies in network traffic using different time scales.

4. Advantages & Disadvantages of Sliding Window


Advantages:
Helps capture short-term dependencies in sequences.
Reduces memory usage compared to processing the full dataset at once.
Works well for real-time applications like streaming data.

Disadvantages:
Choosing the right window size can be tricky.
Small windows may miss important patterns, while large windows can include too much noise.

RCNN (Region-based Convolutional Neural Network)


R-CNN was introduced by Ross Girshick in 2014 and revolutionized object detection by combining
traditional region proposal methods with deep learning (CNNs). Before R-CNN, object detection was
slow and inefficient, but this new approach significantly improved accuracy and efficiency.

Why Was R-CNN Needed?

Before R-CNN, traditional Convolutional Neural Networks (CNNs) struggled with detecting multiple
objects in images.

1. Sliding Window Approach: Earlier, object detection used sliding windows—moving small
boxes across the image and checking for objects. But this method was slow and inefficient.

2. Computational Cost: Running a CNN on every possible window in an image is extremely


slow.

3. Variable Object Sizes: Objects in images can have different sizes and shapes, making fixed-
sized windows inefficient.

To solve these issues, R-CNN introduced a more effective way to detect objects using region
proposals.

How Does R-CNN Work?

R-CNN follows a four-step process:

1. Region Proposal Generation (Selective Search)


• Instead of scanning the entire image with a sliding window, R-CNN first finds important
regions (potential object locations) using a technique called Selective Search.

• Selective Search divides the image into different smaller regions and then merges similar
ones based on color, texture, and size.

• It generates around 2,000 region proposals, reducing the number of areas the model needs
to process.

2. Feature Extraction (CNN)

• Each of these 2,000 regions is resized to a fixed size (e.g., 227×227 pixels for AlexNet).

• These regions are then passed through a pre-trained CNN (like AlexNet or VGG16) to extract
important features from them.

• The CNN removes unnecessary details and converts each region into a feature vector
(1,4096 size) that represents the object.

3. Classification (SVM)

• The extracted feature vectors are passed to a Support Vector Machine (SVM).

• The SVM classifies each region as a specific object (like a car, dog, or person) or background
(no object).

4. Bounding Box Refinement

• The predicted bounding boxes are not always perfect, so a bounding box regressor is used
to adjust their position and size for better accuracy.

• The model removes duplicate detections using a technique called Non-Maximum


Suppression (NMS).

o It keeps the best bounding box for each object and removes overlapping ones.

Challenges of R-CNN

While R-CNN improved object detection, it still had some limitations:

1. Slow Speed: Processing 2,000 region proposals per image is time-consuming. Testing a
single image took ~50 seconds.

2. High Memory Usage: It required a lot of memory to store feature maps for all proposals.

3. Multiple Training Steps: The CNN, SVM, and bounding box regressor had to be trained
separately, making it complex and inefficient.

4. Not Real-Time: Due to its slow processing speed, R-CNN was not suitable for real-time
applications like self-driving cars.

Evolution of R-CNN: Faster & Better Models

To overcome these challenges, researchers developed improved versions of R-CNN:


1. Fast R-CNN (2015)

• Instead of processing each region separately, Fast R-CNN processes the entire image once
to create a feature map and extracts regions from that.

• It replaces the SVM classifier with a Softmax layer for better efficiency.

• Faster training and inference, but still relies on Selective Search, which is slow.

2. Faster R-CNN (2015)

• Introduced a Region Proposal Network (RPN), which generates region proposals inside the
CNN itself, eliminating Selective Search.

• This made it 10× faster than Fast R-CNN and suitable for real-time applications.

3. Mask R-CNN (2017)

• Extended Faster R-CNN to include instance segmentation, allowing it to detect objects and
segment them pixel by pixel.

• Used RoIAlign to improve feature extraction.

4. Cascade R-CNN (2018)

• Introduced a multi-stage detection system that refines the predictions at each stage for
higher accuracy.

• Improved precision and recall for detecting difficult objects.

Applications of R-CNN

R-CNN and its advanced versions are used in various fields, such as:

1. Autonomous Vehicles: Helps self-driving cars detect pedestrians, vehicles, and road signs.

2. Surveillance & Security: Identifies people and objects in security footage.

3. Medical Imaging: Detects tumors and abnormalities in medical scans.

4. Augmented Reality (AR): Recognizes objects in real-time to enhance AR experiences.


Faster R-CNN
Faster R-CNN is an advanced deep learning model used for object detection. It helps in identifying
and locating objects in images or videos. It is an improvement over previous models like R-CNN and
Fast R-CNN, making the detection process much faster and more accurate.

1. What is Object Detection?

Object detection is the process of:

1. Finding objects in an image (Where is the object?)

2. Classifying objects (What is the object?)

3. Drawing a box around the object (Bounding Box)

For example, in a traffic camera image, object detection can:

• Find cars, pedestrians, traffic lights

• Classify them as "Car", "Person", "Traffic Light"

• Draw a box around each detected object

2. Why was Faster R-CNN developed?

Before Faster R-CNN, older models like R-CNN and Fast R-CNN were slow because they used a CPU-
based algorithm called Selective Search to find objects in an image.

Faster R-CNN solved this problem by introducing Region Proposal Networks (RPNs), which use deep
learning (CNNs) to find objects much faster and improve accuracy.

3. Faster R-CNN Architecture (How It Works?)

Faster R-CNN has two main parts:

1. Region Proposal Network (RPN)

o Finds possible objects in the image

2. Fast R-CNN Detector

o Classifies the objects and refines their positions

Before discussing these, let’s first understand the CNN Backbone, which is the base of the model.

3.1 CNN Backbone (Feature Extraction)

The first step in Faster R-CNN is to extract important features from the image using a Convolutional
Neural Network (CNN).
This CNN is called the Backbone and can be a model like ResNet or VGG.
• Lower layers detect simple patterns (edges, textures)

• Higher layers detect complex features (shapes, objects)

The extracted feature map is then used by both RPN and Fast R-CNN.

3.2 Region Proposal Network (RPN)

Instead of using Selective Search (which is slow), Faster R-CNN introduces RPN to generate possible
object locations.

How does RPN work?

1. Sliding Window:

o A small CNN moves over the feature map like a sliding window.

2. Anchor Boxes:

o At each position, multiple boxes of different sizes (called anchors) are placed to
detect objects of different shapes.

3. Objectness Score:

o Each anchor is given a score (Is this an object or background?).

4. Bounding Box Refinement:

o If an anchor contains an object, its position is refined using bounding box regression.

5. Non-Maximum Suppression (NMS):

o If multiple anchors detect the same object, NMS keeps only the best one.

Result: RPN quickly finds potential objects and sends them to the next step.

3.3 Fast R-CNN Detector (Object Classification & Refinement)

After RPN finds possible objects, the Fast R-CNN Detector processes them.

1. Region of Interest (RoI) Pooling

o Converts variable-sized regions into fixed-size feature maps.

2. Feature Extraction

o The RoI-pooled regions are sent through CNN to extract important features.

3. Fully Connected Layers

o The extracted features are processed using fully connected layers for:

▪ Classification: Predicting the object class (Car, Person, etc.)

▪ Bounding Box Regression: Refining the object’s location.

4. Final Output
o The model outputs class labels and accurate bounding boxes.

Result: The detected objects are labeled with improved accuracy.

4. Training Faster R-CNN

Faster R-CNN uses end-to-end training, meaning it trains the entire model together.

1. Loss Function

o It calculates how well the model performs and helps adjust its weights.

o Two losses:

▪ Classification Loss: Measures how well the model classifies objects.

▪ Regression Loss: Measures how well the bounding boxes fit the objects.

2. Training Process

o The model is trained using a large dataset (e.g., COCO, PASCAL VOC).

o Uses backpropagation and Stochastic Gradient Descent (SGD) to update weights.

5. Faster R-CNN vs. Older Models

Model Object Proposal Method Speed Accuracy

R-CNN Selective Search (CPU) Slow Low

Fast R-CNN Selective Search (CPU) Faster than R-CNN Medium

Faster R-CNN RPN (Deep Learning, GPU) Fastest High

Faster R-CNN is 10x faster and more accurate than Fast R-CNN!

6. Applications of Faster R-CNN

Faster R-CNN is used in many fields, including:

Self-Driving Cars → Detects pedestrians, vehicles, traffic signs


Healthcare → Detects tumors in medical scans
Security & Surveillance → Identifies people in CCTV
footage
Retail → Automates inventory tracking
Robotics → Helps robots recognize objects

You might also like