ECSE UNIT-5 Notes
ECSE UNIT-5 Notes
ECSE UNIT-5 Notes
Robotics | Introduction
Drones
ARTIFICIAL INTELLIGENCE
Core Concepts in AI
Artificial Intelligence (AI) operates on a core set of concepts and technologies
that enable machines to perform tasks that typically require human intelligence.
Here are some foundational concepts:
1. Machine Learning (ML): This is the backbone of AI, where algorithms learn
from data without being explicitly programmed. It involves training an
algorithm on a data set, allowing it to improve over time and make predictions
or decisions based on new data.
2. Neural Networks: Inspired by the human brain, these are networks of
algorithms that mimic the way neurons interact, allowing computers to
recognize patterns and solve common problems in the fields of AI, machine
learning, and deep learning.
3. Deep Learning: A subset of ML, deep learning uses complex neural networks
with many layers (hence “deep”) to analyze various factors of data. This is
instrumental in tasks like image and speech recognition.
4. Natural Language Processing (NLP): NLP involves programming
computers to process and analyze large amounts of natural language data,
enabling interactions between computers and humans using natural language.
5. Robotics: While often associated with AI, robotics merges AI concepts with
physical components to create machines capable of performing a variety of
tasks, from assembly lines to complex surgeries.
6. Cognitive Computing: This AI approach mimics human brain processes to
solve complex problems, often using pattern recognition, NLP, and data
mining.
7. Expert Systems: These are AI systems that emulate the decision-making
ability of a human expert, applying reasoning capabilities to reach
conclusions.
Each of these concepts helps to build systems that can automate, enhance, and
sometimes outperform human capabilities in specific tasks.
How Does AI Work?
Artificial intelligence (AI) enables machines to learn from data and recognize
patterns in it, to perform tasks more efficiently and effectively. AI works in five
steps:
Input: Data is collected from various sources. This data is then sorted into
categories.
Processing: The AI sorts and deciphers the data using patterns it has been
programmed to learn until it recognizes similar patterns in the data.
Outcomes: The AI can then use those patterns to predict outcomes.
Adjustments: If the data sets are considered a “fail,” AI learns from that
mistake, and the process is repeated again under different conditions.
Assessments: In this way, AI is constantly learning and improving.
Mythology and Philosophy: Ancient myths like Pygmalion and the Jewish
Golem hinted at the concept of creating artificial beings. Philosophers such
as Aristotle explored logic and reasoning.
Mechanical Automatons: Early machines like the Antikythera mechanism
(2nd century BCE) and automata by inventors like Al-Jazari (13th century)
showcased mechanical intelligence.
Key Milestones
Future Trends
There are many different components in Game Development that can either be
handled by a single developer who is individually creating a game (and who is a
genius!!!) or normally by a team of multiple people. So if you want to get started
with Game Development, it’s best to first understand the various components in
this field so that you can identify the ones that most interest you.
1. Story: Everything has a story and that is equally true for video games!!! Your
story can have a linear structure which is relatively easy, or it can even have
a non-linear structure with various plot changes according to character actions.
The main point is that there should be an interesting story to hook your players!!!
2. Characters: Do you know any story without characters? No! That’s because,
after the story, the characters are a fundamental part of any video game. You have
to decide the looks and personalities of the characters, how fast they should
move, what should be manners and characteristics etc.
3. Audio: It is the backbone of video games!!! That means it should support the
game and yet not be too obvious! You have to decide the various sounds in the
game world like player sounds, background music, etc. that together create a
lifelike and believable video game.
4. Art: It can be said that video games are basically just responsive art!!! So art is
very important as it decides the feel of the game. Normally art in video games can
include various things like the game texture, game lighting, 3D modeling of
characters and objects, particle systems to create fire, fog, snow, etc.
5. Lighting: All the lighting in video games is obviously artificial and very
important for mood setting. Less lighting can be used in association with horror
or thriller games while increased lighting can denote more adventure or fun
games. Also, lighting can be an important factor in stealth challenges with darker
areas providing cover to characters.
6. Levels: All good video games have various levels that increase the difficulty as
time goes on. Levels can be denoted in games by multiple floors, different
buildings, or even different countries (Depending on the game you are playing!)
and each level can have many potential paths that eventually lead to the next
level. And designing games with many possible path combinations for different
levels is a big factor in Game Development.
What is Natural Language Processing?
Natural language processing (NLP) is a field of computer science and a subfield
of artificial intelligence that aims to make computers understand human language.
NLP uses computational linguistics, which is the study of how language works,
and various models based on statistics, machine learning, and deep learning.
These technologies allow computers to analyze and process text or voice data,
and to grasp their full meaning, including the speaker’s or writer’s intentions and
emotions.
NLP powers many applications that use language, such as text translation, voice
recognition, text summarization, and chatbots. You may have used some of these
applications yourself, such as voice-operated GPS systems, digital assistants,
speech-to-text software, and customer service bots. NLP also helps businesses
improve their efficiency, productivity, and performance by simplifying complex
tasks that involve language.
NLP Techniques
NLP encompasses a wide array of techniques that aimed at enabling computers to
process and understand human language. These tasks can be categorized into
several broad areas, each addressing different aspects of language processing.
Here are some of the key NLP techniques:
1. Text Processing and Preprocessing In NLP
Tokenization: Dividing text into smaller units, such as words or sentences.
Stemming and Lemmatization: Reducing words to their base or root forms.
Stopword Removal: Removing common words (like “and”, “the”, “is”) that
may not carry significant meaning.
Text Normalization: Standardizing text, including case normalization,
removing punctuation, and correcting spelling errors.
2. Syntax and Parsing In NLP
Part-of-Speech (POS) Tagging: Assigning parts of speech to each word in a
sentence (e.g., noun, verb, adjective).
Dependency Parsing: Analyzing the grammatical structure of a sentence to
identify relationships between words.
Constituency Parsing: Breaking down a sentence into its constituent parts or
phrases (e.g., noun phrases, verb phrases).
3. Semantic Analysis
Named Entity Recognition (NER): Identifying and classifying entities in
text, such as names of people, organizations, locations, dates, etc.
Word Sense Disambiguation (WSD): Determining which meaning of a word
is used in a given context.
Coreference Resolution: Identifying when different words refer to the same
entity in a text (e.g., “he” refers to “John”).
4. Information Extraction
Entity Extraction: Identifying specific entities and their relationships within
the text.
Relation Extraction: Identifying and categorizing the relationships between
entities in a text.
5. Text Classification in NLP
Sentiment Analysis: Determining the sentiment or emotional tone expressed
in a text (e.g., positive, negative, neutral).
Topic Modeling: Identifying topics or themes within a large collection of
documents.
Spam Detection: Classifying text as spam or not spam.
6. Language Generation
Machine Translation: Translating text from one language to another.
Text Summarization: Producing a concise summary of a larger text.
Text Generation: Automatically generating coherent and contextually
relevant text.
7. Speech Processing
Speech Recognition: Converting spoken language into text.
Text-to-Speech (TTS) Synthesis: Converting written text into spoken
language.
8. Question Answering
Retrieval-Based QA: Finding and returning the most relevant text passage in
response to a query.
Generative QA: Generating an answer based on the information available in a
text corpus.
9. Dialogue Systems
Chatbots and Virtual Assistants: Enabling systems to engage in
conversations with users, providing responses and performing tasks based on
user input.
10. Sentiment and Emotion Analysis in NLP
Emotion Detection: Identifying and categorizing emotions expressed in text.
Opinion Mining: Analyzing opinions or reviews to understand public
sentiment toward products, services, or topics.
Video Processing:
Key Concepts:
1. Frame Processing:
o Videos are essentially sequences of images (frames) displayed in
rapid succession.
o Each frame is processed individually or in conjunction with adjacent
frames for various tasks.
2. Temporal and Spatial Dimensions:
o Spatial: Information within each frame, including pixels, colors,
edges, and objects.
o Temporal: The relationship between frames, such as motion and
changes over time.
3. Color Spaces:
o Videos are represented in different color spaces (e.g., RGB, YUV,
HSV) depending on the task.
o YUV is commonly used in video compression.
4. Resolution and Frame Rate:
o Resolution affects the video quality (e.g., 1080p, 4K).
o Frame rate determines smoothness (e.g., 30 FPS, 60 FPS).
1. Compression:
o Reduces video file sizes while preserving quality (e.g., codecs like
H.264, H.265).
o Key techniques include motion compensation, frame prediction, and
spatial/temporal redundancy reduction.
2. Enhancement:
o Improves video quality using techniques like noise reduction,
sharpening, and brightness/contrast adjustments.
o Super-resolution techniques upscale videos to higher resolutions.
3. Motion Detection and Tracking:
o Identifies and tracks moving objects across frames.
o Applications include surveillance, sports analysis, and autonomous
vehicles.
4. Object Detection and Recognition:
o Locates and identifies objects in video frames using machine learning
models (e.g., YOLO, SSD, or Faster R-CNN).
o Used in facial recognition, augmented reality, and video indexing.
5. Stabilization:
o Removes unwanted camera movements to produce smooth footage.
o Common in drone or handheld video recording.
6. Augmented Reality (AR):
o Overlays virtual objects onto real-world video in real-time.
o Requires accurate pose estimation and object tracking.
7. Video Editing:
o Includes operations like trimming, merging, adding effects, and
transitions.
o Often involves timeline-based manipulation.
8. Video Analytics:
o Extracts meaningful insights, such as detecting anomalies or
summarizing events.
Techniques and Algorithms:
1. Filtering:
o Spatial filters (blur, sharpen, edge detection) and temporal filters
(motion smoothing).
2. Feature Extraction:
o Keypoints, edges, and textures are identified for further analysis.
3. Optical Flow:
o Estimates motion between frames by tracking pixel movement.
4. Deep Learning:
o Neural networks (e.g., CNNs, RNNs, or Transformers) are used for
tasks like video classification, captioning, and segmentation.
5. Keyframe Extraction:
o Identifies frames that represent significant changes or events in the
video.
6. Encoding and Decoding:
o Converts raw video data into compressed formats for storage or
streaming.
The term cloud refers to a network or the internet. It is a technology that uses
remote servers on the internet to store, manage, and access data online rather than
local drives. The data can be anything such as files, images, documents, audio,
video, and more.
There are the following operations that we can do using cloud computing:
o Developing new applications and services
o Storage, back up, and recovery of data
o Hosting blogs and websites
o Delivery of software on demand
o Analysis of data
o Streaming videos and audios
Small as well as large IT companies, follow the traditional methods to provide the
IT infrastructure. That means for any IT company, we need a Server Room that
is the basic need of IT companies.
In that server room, there should be a database server, mail server, networking,
firewalls, routers, modem, switches, QPS (Query Per Second means how much
queries or load will be handled by the server), configurable system, high net speed,
and the maintenance engineers.
1) Agility
The availability of servers is high and more reliable because the chances of
infrastructure failure are minimum.
3) High Scalability
4) Multi-Sharing
With the help of cloud computing, multiple users and applications can work
more efficiently with cost reductions by sharing common infrastructure.
Advertisement
Cloud computing enables the users to access systems using a web browser
regardless of their location or what device they use e.g. PC, mobile phone, etc. As
infrastructure is off-site (typically provided by a third-party) and accessed via
the Internet, users can connect from anywhere.
6) Maintenance
Advertisement
7) Low Cost
By using cloud computing, the cost will be reduced because to take the services of
cloud computing, IT company need not to set its own infrastructure and pay-as-
per usage of resources.