Download as pdf or txt
Download as pdf or txt
You are on page 1of 32

ARTIFICIAL INTELLIGENCE

MACHINE LEARNING

SUPERANNOTATE

(Version 1.1.0)

Created By: Mr. Ashutosh Vats

1
Artificial Intelligence

Artificial intelligence is a field of computer science which makes a computer system


that can mimic human intelligence. It is comprised of two words "Artificial" and
"intelligence", which means "a human-made thinking power." Hence we can define
it as,

Artificial intelligence is a technology using which we can create


intelligent systems that can simulate human intelligence.

The Artificial intelligence system does not require to be pre-programmed, instead of


that, they use such algorithms which can work with their own intelligence. AI is being
used in multiple places such as Siri, Google?s AlphaGo, AI in Chess playing, etc.

Artificial intelligence (AI) makes it possible for machines to learn from experience,
adjust to new inputs and perform human-like tasks. Most AI examples that you
hear about today – from chess-playing computers to self-driving cars,playing ludo.

Artificial intelligence is a technology that enables a machine to simulate human


behavior. Machine learning is a subset of AI which allows a machine to automatically
learn from past data without programming explicitly. The goal of AI is to make a
smart computer system like humans to solve complex problems.

“[AI] is going to change the world more than anything in the history of mankind.
More than electricity.”— AI oracle and venture capitalist Dr. Kai-Fu Lee, 2018

Machine Learning

Machine learning (ML) is a type of artificial intelligence (AI) that allows software
applications to become more accurate at predicting outcomes without being

2
explicitly programmed to do so. Machine learning algorithms use historical data as
input to predict new output values.
For example, an algorithm would be trained with pictures of dogs and other things,
all labeled by humans, and the machine would learn ways to identify pictures of dogs
on its own. Supervised machine learning is the most common type used today.

Difference between Artificial intelligence and Machine learning

Artificial intelligence and machine learning are the part of computer science that are
correlated with each other. These two technologies are the most trending
technologies which are used for creating intelligent systems.

Although these are two related technologies and sometimes people use them as a
synonym for each other, but still both are the two different terms in various cases.

On a broad level, we can differentiate both AI and ML as:

AI is a bigger concept to create intelligent machines that can


simulate human thinking capability and behavior, whereas, machine
learning is an application or subset of AI that allows machines to
learn from data without being programmed explicitly.

AI Used in different Sectors:


 Transportation: Although it could take a decade or more to perfect them,
autonomous cars will one day ferry us from place to place.
 Manufacturing: AI powered robots work alongside humans to perform a
limited range of tasks like assembly and stacking, and predictive analysis sensors
keep equipment running smoothly.
 Healthcare: In the comparatively AI-nascent field of healthcare, diseases are
more quickly and accurately diagnosed, drug discovery is sped up and streamlined,
virtual nursing assistants monitor patients and big data analysis helps to create a
more personalized patient experience.
 Education: Textbooks are digitized with the help of AI, early-stage virtual
tutors assist human instructors and facial analysis gauges the emotions of students
to help determine who’s struggling or bored and better tailor the experience to their
individual needs.
 Media: Journalism is harnessing AI, too, and will continue to benefit from it.
Bloomberg uses Cyborg technology to help make quick sense of complex financial
reports. The Associated Press employs the natural language abilities of Automated
Insights to produce 3,700 earning reports stories per year — nearly four times more
than in the recent past.
 Customer Service: Last but hardly least, Google is working on an AI assistant
that can place human-like calls to make appointments at, say, your neighborhood
hair salon. In addition to words, the system understands context and nuance.

3
1. Self-Driving And Parking Vehicles

Self-driving and parking cars use deep learning, a subset of AI, to recognize the space
around a vehicle. Technology company Nvidia uses AI to give cars “the power to see,
think, and learn, so they can navigate a nearly infinite range of possible driving
scenarios,” Nvidia explains on its website. The company’s AI-powered technology is
already in use in cars made by Toyota, Mercedes-Benz, Audi, Volvo, and Tesla, and is
sure to revolutionize how people drive—and enable vehicles to drive themselves.

2. Digital Assistants

Apple’s Siri, Google Now, Amazon’s Alexa, and Microsoft’s Cortana are digital
assistants that help users perform various tasks, from checking their schedules and
searching for something on the web, to sending commands to another app. AI is an
important part of how these apps work because they learn from every single user
interaction. This allows them to better recognize speech patterns and serve users
results that are tailored to their preferences. Microsoft says that Cortana is
“continually learns about its user” and that it will eventually anticipate user needs.

3. Vehicle Recognition Identification

Did you know that many of the traffic cameras around your city use AI to read
license plates? Companies such as PlateSmart, IntelliVision, and Sighthound, among
others, use computer vision—a form of AI that can see and understand images—
along with deep learning to turn conventional surveillance into vehicle monitoring;
this is a very important part of integrated traffic systems and also a big help to
authorities as well, as surveillance videos are now searchable for specific plate
numbers. That’ll make you think twice about blowing through that red light.

4. Robots

The Roomba 980 model vacuum (the one that cleans your floor on its own) uses AI
to scan a living area’s size, look for objects that might be in the way, and remember
the best route for cleaning the carpet. The vacuum bot can also identify how much
cleaning it needs to do based on the size of the room, repeating a cleaning cycle
three times in smaller rooms or cleaning twice in a medium-sized room.

5. AI is a critical part of what makes Google Maps so helpful. With it, we're able to
map roads over 10 times faster than we could five years ago, and we can bring maps
filled with useful information to virtually every corner of the world.

The Four Types of Artificial Intelligence


Reactive Machines
A reactive machine follows the most basic of AI principles and, as its name implies, is
capable of only using its intelligence to perceive and react to the world in front of it.

4
A reactive machine cannot store a memory and as a result cannot rely on past
experiences to inform decision making in real-time.

Perceiving the world directly means that reactive machines are designed to complete
only a limited number of specialized duties. Intentionally narrowing a reactive
machine’s worldview is not any sort of cost-cutting measure, however, and instead
means that this type of AI will be more trustworthy and reliable — it will react the
same way to the same stimuli every time.

A famous example of a reactive machine is Deep Blue, which was designed by IBM in
the 1990’s as a chess-playing supercomputer and defeated international
grandmaster Gary Kasparov in a game. Deep Blue was only capable of identifying the
pieces on a chess board and knowing how each moves based on the rules of chess,
acknowledging each piece’s present position, and determining what the most logical
move would be at that moment. The computer was not pursuing future potential
moves by its opponent or trying to put its own pieces in better position. Every turn
was viewed as its own reality, separate from any other movement that was made
beforehand.

Another example of a game-playing reactive machine is Google’s AlphaGo. AlphaGo


is also incapable of evaluating future moves but relies on its own neural network to
evaluate developments of the present game, giving it an edge over Deep Blue in a
more complex game. AlphaGo also bested world-class competitors of the game,
defeating champion Go player Lee Sedol in 2016.

Though limited in scope and not easily altered, reactive machine artificial intelligence
can attain a level of complexity, and offers reliability when created to fulfill
repeatable tasks.

Limited Memory

Limited memory artificial intelligence has the ability to store previous data and
predictions when gathering information and weighing potential decisions —
essentially looking into the past for clues on what may come next. Limited memory
artificial intelligence is more complex and presents greater possibilities than reactive
machines.

Limited memory AI is created when a team continuously trains a model in how to


analyze and utilize new data or an AI environment is built so models can be
automatically trained and renewed. When utilizing limited memory AI in machine
learning, six steps must be followed: Training data must be created, the machine
learning model must be created, the model must be able to make predictions, the
model must be able to receive human or environmental feedback, that feedback
must be stored as data, and these these steps must be reiterated as a cycle.

5
There are three major machine learning models that utilize limited memory artificial
intelligence:

 Reinforcement learning, which learns to make better predictions through


repeated trial-and-error.
 Long Short Term Memory (LSTM), which utilizes past data to help predict the
next item in a sequence. LTSMs view more recent information as most
important when making predictions and discounts data from further in the
past, though still utilizing it to form conclusions
 Evolutionary Generative Adversarial Networks (E-GAN), which evolves over
time, growing to explore slightly modified paths based off of previous
experiences with every new decision. This model is constantly in pursuit of a
better path and utilizes simulations and statistics, or chance, to predict
outcomes throughout its evolutionary mutation cycle.

Theory of Mind
Theory of Mind is just that — theoretical. We have not yet achieved the
technological and scientific capabilities necessary to reach this next level of artificial
intelligence.

The concept is based on the psychological premise of understanding that other living
things have thoughts and emotions that affect the behavior of one’s self. In terms of
AI machines, this would mean that AI could comprehend how humans, animals and
other machines feel and make decisions through self-reflection and determination,
and then will utilize that information to make decisions of their own. Essentially,
machines would have to be able to grasp and process the concept of “mind,” the
fluctuations of emotions in decision making and a litany of other psychological
concepts in real time, creating a two-way relationship between people and artificial
intelligence.

Self-awareness
Once Theory of Mind can be established in artificial intelligence, sometime well into
the future, the final step will be for AI to become self-aware. This kind of artificial
intelligence possesses human-level consciousness and understands its own existence
in the world, as well as the presence and emotional state of others. It would be able
to understand what others may need based on not just what they communicate to
them but how they communicate it.

Self-awareness in artificial intelligence relies both on human researchers


understanding the premise of consciousness and then learning how to replicate that
so it can be built into machines.

Artificial intelligence generally falls under two broad categories:

 Narrow AI: Sometimes referred to as "Weak AI," this kind of


artificial intelligence operates within a limited context and is a simulation
of human intelligence. Narrow AI is often focused on performing a single

6
task extremely well and while these machines may seem intelligent, they are
operating under far more constraints and limitations than even the most
basic human intelligence.
A few examples of Narrow AI include:

 Google search
 Image recognition software
 Siri, Alexa and other personal assistants
 Self-driving cars
 IBM's Watson

 Artificial General Intelligence (AGI): AGI, sometimes referred to as "Strong


AI," is the kind of artificial intelligence we see in the movies, like the robots,
Terminator,Ra-One. AGI is a machine with general intelligence and, much
like a human being, it can apply that intelligence to solve any problem.

"Artificial intelligence is a set of algorithms and intelligence to try to mimic human


intelligence. Machine learning is one of them, and deep learning is one of those
machine learning techniques."

AI Based Movies in Hollywood and Bollywood:

7
A Brief History of Artificial Intelligence

While the roots are long and deep, the history of artificial intelligence as we think
of it today spans less than a century. The following is a quick look at some of the
most important events in AI.
1940s
 (1943) Warren McCullough and Walter Pitts publish "A Logical Calculus of
Ideas Immanent in Nervous Activity." The paper proposed the first
mathematical model for building a neural network.
1950s
 (1950) Alan Turing publishes "Computing Machinery and Intelligence,
proposing what is now known as the Turing Test, a method for determining
if a machine is intelligent.
 (1956) The phrase artificial intelligence is coined at the "Dartmouth Summer
Research Project on Artificial Intelligence." Led by John McCarthy, the
conference, which defined the scope and goals of AI, is widely considered to
be the birth of artificial intelligence as we know it today.
1960s
 (1963) John McCarthy starts the AI Lab at Stanford.
1970s
 (1972) The logic programming language PROLOG is created.
1980s
 (1980) Digital Equipment Corporations develops R1 (also known as
XCON), the first successful commercial expert system. Designed to configure
orders for new computer systems, R1 kicks off an investment boom in expert
systems that will last for much of the decade, effectively ending the first "AI
Winter."
1990s
 (1991) U.S. forces deploy DART, an automated logistics planning and
scheduling tool, during the Gulf War.

8
 (1997) IBM's Deep Blue beats world chess champion Gary Kasparov
2000s
 (2005) STANLEY, a self-driving car, wins the DARPA Grand Challenge.
 (2005) The U.S. military begins investing in autonomous robots like Boston
Dynamics' "Big Dog" and iRobot's "PackBot."
 (2008) Google makes breakthroughs in speech recognition and introduces the
feature in its iPhone app.
2010-2014
 (2011) IBM's Watson trounces the competition on Jeopardy!.
 (2011) Apple releases Siri, an AI-powered virtual assistant through its iOS
operating system.
 (2014) Google makes the first self-driving car to pass a state driving test.
 (2014) Amazon's Alexa, a virtual home is released
2015-2021
 (2016) Google DeepMind's AlphaGo defeats world champion Go player Lee
Sedol. The complexity of the ancient Chinese game was seen as a major
hurdle to clear in AI.
 (2016) The first "robot citizen", a humanoid robot named Sophia, is created
by Hanson Robotics and is capable of facial recognition, verbal
communication and facial expression.
 (2018) Google releases natural language processing engine BERT, reducing
barriers in translation and understanding by machine learning applications.

What is data annotation?

Data annotation is the task of labeling or identifying data in various formats like text,
images, and videos.
Essentially, it comes down to labeling the area or region of interest—this type of
annotation is found specifically in images and videos. On the other hand, annotating
text data largely encompasses adding relevant information, such as metadata, and
assigning them to a certain class.

Types of data annotations

Image annotation
Image annotation is the task of annotating an image with labels. It ensures that a
machine learning algorithm recognizes an annotated area as a distinct object or class
in a given image.
Bounding box
The bounding box involves drawing a rectangle around a certain object in a given
image. The edges of bounding boxes ought to touch the outermost pixels of the
labeled object.

9
3D cuboids
The 3D cuboid annotation is similar to bounding box annotation, but in addition to
drawing a 2D box around the object, the user has to take into account the depth factor
as well. It can be used to annotate objects such on flat planes that need to be
navigated, such as cars or planes, or objects that require robotic grasping.

Polygons
Polygon tool
You can pick the tool and simply start drawing a line made of individual points around
the object in the image. The line doesn't need not be perfect, as once the starting and
ending points are connected around the object, V7 will automatically create anchor
points that can be adjusted for the desired accuracy.

10
Keypoint tool
Keypoint annotation is another method to annotate an object by a series or collection
of points.
This type of method is very useful in hand gesture detection, facial landmark detection,
and motion tracking. Keypoints can be used alone, or in combination to form a point
map that defines the pose of an object.

Polyline tool
Polyline tool allows the user to create a sequence of joined lines.
You can use this too by clicking around the object of interest to create a point. Each
point will create a line by joining the current point with the previous one. It can be
used to annotate roads, lane marking, traffic signs, etc.

11
SuperAnnotate

Website: https://www.superannotate.com/
Download: https://www.superannotate.com/download

12
# SuperAnnotate Desktop
## Overview
SuperAnnotate Desktop is the fastest image annotation automation software that
allows computer vision engineers to train data fast with top-notch quality and
accuracy. It is based on SuperAnnotate’s [web
platform](https://app.superannotate.com/login), and is available on Windows,
MacOs, and Linux. Download SuperAnnotate Desktop
[here](https://superannotate.com/download/).
## Quickstart
SuperAnnotate Desktop is available on Windows, MacOs, and Linux. Click
[here](https://superannotate.com/download/) to download.
## What can I do with SuperAnnotate Desktop?
You can create high-quality training datasets and annotations for computer vision
tasks.
## What problem does it solve?
SuperAnnotate Desktop accelerates data training by at least three times, without
compromising the annotation quality.
## Who is it for?
SuperAnnotate Desktop is ideal for individual researchers and small annotation
teams that aim to perform simple computer vision tasks. Use SuperAnnotate’s [web
platform](https://app.superannotate.com/) to complete complex tasks, manage
large teams, and view project analytics.
## How can I upgrade?
SuperAnnotate’s [web platform](https://app.superannotate.com/) allows you to
create high-quality annotations for top-performing computer vision models
regardless of team and project size. It also allows you to set up projects and
distribute tasks automatically, use neural networks to automate the annotation
process, and integrate your computer vision pipeline using Python SDK. [Contact
us](https://www.superannotate.com/contacts) to upgrade.

13
Description: download the superannotate from
https://www.superannotate.com/download after downloading enter the details like
first name,last name, company name, email etc for registration.

Use Different Types of Tools in Superannotate:


1. Bounding Box:Shortcut Key (x)

2. Polygon Tool: Shortcut Key (Z)

14
3. Cuboid Tool: Shortcut Key (Q)

Point Tool: Shortcut Key (P)

# Project
##Create project

15
1. Go to the homepage, and select **New project**.

2. Enter a project name, choose the folder where you want to store your project’s
data
3. Import your images. You can either drag and drop your images, or choose them
from your files.
4. When you’re done, select **Create**.

## Open project
![Openaproject](images/IMG3.png)
You can work on existing projects in SuperAnnotate. Go to the homepage, click
**Open project** in the bottom left corner, and select the project from your
computer.
## Export project
To export a project:

1. Go to the homepage and click on the corresponding download icon.


2. Choose if you want to include images or annotations or both in your download.
Note that you cannot download your project if you don’t check at least one box.
3. When you’re done, select **Export**.
4. Choose the folder name and destination.
5. Select **Export**.

Your JSON files and images will be saved in the same ZIP folder.
## Remove project

16
To remove a project from the list, go to the homepage, hover over the project you
want to remove, and select **X**.

:information_source: Removing a project from the list **does not** delete it from
your computer. To open a project that you removed from the list, click **Open
project** and select your project from your computer.

# Editor

## Annotations
### Annotate
Use these tools to annotate your projects. Choose the tool depending on the shape
of the object you want to annotate.
* Points
* Polyline
* Polygon

17
* Bounding box
* Ellipse
* Cuboid

:information_source: Use the ruler as a guide while annotating, and zoom in on the
object for better annotation results.

:information_source: SuperAnnotate automatically saves your progress.


### Adjust annotation
Press **Esc** to delete the last point you added to your polygon and polyline.
### Delete annotation
**Method 1:** Select the annotation and press the backspace key or **Del**
(Windows).
**Method 2:** Find the annotation in the right panel and click on the corresponding
**X** button.
To delete all the annotations from the image you’re working on, select **Revert**
(trash icon) in the bottom panel or press **Ctrl+Shift+R** and confirm your action.

:information_source: Select :question: to get access to keyboard shortcuts.

# Classes
## Create a class

**Method 1:**
1. Select **Add a class** in the right panel.
2. Enter a name and choose a color.
3. Add an attribute group (optional).
To add an attribute group:
1. Select **New attribute group**.
2. Enter an attribute group name.
3. Enter an attribute and select **+**. You can add multiple attribute groups and
attributes.
5. Check **Allow multiple selection** if the attributes can exist within an object
simultaneously. When you do that, you’ll be able to assign multiple attributes to an
object. For example, if your annotated object is a black and orange car, choose both
black and orange from the attribute group. Do not check **Allow multiple
selection** if the attributes can’t exist simultaneously.

18
For example, a dog can’t be small and medium at the same time.
**Method 2:**
1. Right-click on the instance.
2. Open the drop-down menu and select **Create new class**.
3. Enter a name and choose a color.
## Assign class
Use one of these methods to assign a class to an instance:

**Method 1:** Right-click on an instance and choose a class from the drop-down
menu.

**Method 2:** Select an instance, find it in the right panel, and choose a class from
the drop-down menu.

**Method 3:** Select the **Eyedropper** tool, click on an object to sample its class.
The **Eyedropper** tool will change into the **Bucket** tool. Next, select your
unassigned object(s). The **Eyedropper** tool facilitates the class assignment of
multiple objects.

19
Alternatively, you can assign a class to your object before annotating it. Follow these
steps:
1. Select the class selection tool in the left panel.
2. Choose a class.
3. Annotate your object using any tool you want.

Your instance will be immediately assigned to the class you’ve chosen.


## Change class
You can change a class in two ways:
**Method 1:** Right-click on your object and choose a class from the drop-down
menu.
**Method 2:** Select your object, find it in the right panel, select the ellipsis button,
and move your object to a different existing class.

# Objects
## Copy objects
You can copy instances as well as their assigned classes and attributes in one image
or to other images:
1. Select the instance, and click **Copy** in the top panel, or press **Ctrl+C**.
2. Click **Paste** in the top panel or press **Ctrl+V**.

## Group objects
In some cases, you might need to use more than one tool to annotate a single object.
To let the system know that several instances belong together, you need to group
them.
1. Select an instance, and press and hold the **Ctrl** key.

20
2. While holding the Ctrl key, click on the instances you want to select.
3. Select **Group** in the top panel.
If you think you’ve made a mistake, select **Ungroup** or press **Ctrl+Shift+G**
and start over.
## Show/Hide objects
Select the eye button in the top panel or press **R** to show or hide the instances.

# Images
## Upload images
To upload an image, select **Upload** in the bottom panel, and choose **Image**.
Next, select images from your computer and click **Open**.

## Delete images
To delete an image, hover over the information icon in the image panel and select
the trash icon.
## Set image status
An image can have one of the following statuses:
* Not started
* In progress
* Complete

To set an image as **Complete**, select **Complete** at the bottom of the right


panel. Note that you should classify all the instances to be able to set an image as
**Complete**.

To see the status of an image, go to the image panel and hover over the icon on the

21
right.

## Add tags
1. Select **Tags** in the left panel.
2. Enter a tag in the text box.
3. Click the **+** button.
4. Select **Save**.

## Adjust settings
Adjust the settings of your image by dragging the slider to the left or to the right:

* Brightness
* Fill (instance transparency)
* Contrast

## Show labels
Select **Show/Hide labels** in the top panel to see the following labels on your
image:

22
* Classes
* Attributes
* Points
* Groups
You can also expand an instance in the right panel to see its attributes and point
labels.

Short Cut Keys:

23
Some Superannotate Examples:

24
25
26
27
28
29
30
31
For SuperAnnotate Videos:
https://www.youtube.com/channel/UCmwDrqxvNiTmnNOKl-m0GjA

32

You might also like