Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 28

1

CHAPTER 1
INTRODUCTION
1.1 PROBLEM DEFINITION
When the novel corona virus (Covid-19) pandemic emerges, the spread of the virus
has left public keep anxiety if they do not have any effective cure. The World Health
Organization (WHO) has declared Covid-19 as a pandemic due to the increase in the number
of cases reported around the world. To contain the pandemic, many countries have
implemented a lockdown where the government enforced that the citizens to stay at home
during this critical period. The public health bodies such as the Centres for Disease Control
and Prevention (CDC) had to make it clear that the most effective way to slow down the
spread of Covid-19 is by avoiding close contact with other people. To flatten the curve on the
Covid-19 pandemic, the citizens around the world are practicing physical distancing.To
implement social distancing, group activities and congregations such as travel, meetings,
gatherings, workshops, praying had been banned during the quarantine period. The people are
encouraged to use phone and email to manage and conduct events as much as possible to
minimize the person-to-person contact.

To further contain the spread of the virus, people are also informed to perform
hygiene measures such as frequently washing hands, wearing mask and avoiding close
contact with people who are ill. However, there is a difference between knowing what to do
to reduce the transmission of the virus and putting them into practice. The world has not yet
fully recovered from this pandemic and the vaccine that can effectively treat Covid-19 is yet
to be discovered. However, to reduce the impact of the pandemic on the country’s economy,
several governments have allowed a limited number of economic activities to be resumed
once the number of new cases of Covid-10 has dropped below a certain level. As these
countries cautiously restarting their economic activities, concerns have emerged regarding
workplace safety in the new post- Covid-19 environment. To reduce the possibility of
infection, it is advised that people should avoid any person-to-person contact such as shaking
hands and they should maintain a distance of at least 1 meter from each other.
2

1.2 EXISTING SYSTEM


CNN is a deep learning algorithm with multilayer perceptron neural networks which
contain several convolutional layers, sub-sampling layers, and fully connectedlayers. Later,
the weight in the whole layers in the networks are trained for each object classification based
on itsdataset. For object detection in image, the CNN model was one of the categories in deep
learning which aresupervised. Feature learning methods robust in detecting the object in
different scenarios. CNN has achieved great success in large scale image classification tasks
due to the recent high performance computing system and large dataset such as ImageNet.

The object detection and recognition have achieved great success due to its neural
network structure which is capable of constructing objects on its own with the help of
descriptors and can learn distinguished features that are not primarily given in the dataset.
But this has its own set of advantages and disadvantages as of speed and accuracy. The real-
time object detection algorithms which use the CNN model such as Region-Based
Convolutional Neural Networks (R-CNN)and You Only Look Once (YOLO) are developed
for the detection of multiple classes in various regions. YOLO (You Only Look Once) is a
prominent technique as to speed and accuracy in deep CNN based object detection. 

DISADVANTAGES OF EXISTING SYSTEM


The following are the disadvantages of existing system:

 The current state-of-the-art object detectors with deep learning had their pros and cons
in terms of accuracy andspeed.
 The object might have different spatial locations and aspect ratios within the image.
Hence, the real-time algorithms of object detection using the CNN model suchasR-
CNN, Resnet-50 development on detecting multi-classes in a different region in
images need to bedeveloped.
 Technical enhancement of efficient deep CNN-based object detection in terms of
detection rate and dealing with camera calibration mustexist on both speed and
accuracy indetection.
3

1.3 PROPOSED SYSTEM


As Deep learning has gained more attention in object detection was used for human
detectionpurposes. We aim to develop a social distancing detection tool that can detect the
distance between people to keepsafe. Evaluation of the classification results byanalyzing real-
time video streams from the cameraDeep CNN model was the object detection approach was
proposed that mitigated the computational complexity issues by formulating the detection
with a single regression problem. The proposed method was validated using a video showing
pedestrians walking on a street. The visualization results showed that the proposed method is
capable to determine the social distancing measures between people which can be further
developed for use in other environment such as office, restaurant, andschool.

Deep CNN is a deep learning algorithm with multilayer perception neural networks
which contain several convolutional layers, sub-sampling layers, and fully connectedlayers.
Later, the weight in the whole layers in the neural networks are trained for each object
classification based on itsdataset. For object detection in image, the CNN model was one of
the categories in deep learning which aresupervised. Feature learning methods robust in
detecting the object in different scenarios. CNN has achieved great success in large scale
image classification tasks due to the recent high performance computing system and large
dataset such asImageNet.

The objective is to prevent exponential growth in number of cases in novel corona


virus by controlling and regulating its widespread by limiting active spread using social
distancing approach need concerned care and strict following which manually identify and
validating population is highly difficult to overcome it limiting the spread of new cases
through social distancing and valid check is mandatory to prevent spreadPersonally and in-
dividually human validating system to control spread is laborious and huge time taking
process comparatively unbeatable of actively competitive in restriction of this pandemic
stage. The below is the architecture diagram of the proposed system.
4

Figure 1.3: ARCHITECTURE OF THE PROPOSED SYSTEM

1.3.1 ADVANTAGES OF PROPOSED SYSTEM


The following are the advantages of proposed system:

 Moreaccurate
 Lesstime
 It gives more efficiencyresults.
 Meant for Imagedata
 Heavy no Images / Large datasets
 Moretraining
 Usage of hiddenlayers
5

1.4SOFTWARE AND HARDWARE REQUIREMENTS:


SOFTWARE REQUIREMENTS:

 Operating System: Windows10


 Coding Language:Python

 IDE: Anaconda, Jupiternotebook

Libraries:
 Matplotlib
 NumPy
 Pandas
 Regex
 Requests
 Scikit-learn
 SciPy
 Sklearn.

HARDWARE REQUIREMENTS:

 Processor:i3
 RAM: 8GB
 Hard Disk:1TB

1.5 MODULE DESCRIPTION


The modules present in our project are:

 DATA COLLECTION (REVIEWS AND DATA SETS):The sample data has


been collected from our college placement department which consists of all the re-
cords of previous year’s students. The dataset collected consist of over 1000 in-
stances of reviews and ratings.

 DATA PRE-PROCESSING:Data pre-processing is a technique that is used to con-


vert raw data into a clean dataset. The data is gathered from different sources is in
6

raw format which is not feasible for the analysis. Pre- processing for this approach
takes 4 simple yet effective steps.
 Attribute Selection: Some of the attributes in the initial dataset that was not perti-
nent (relevant) to the experiment goal were ignored. The attributes name, roll no,
name, phone number are not used. The main attributes used for this study are tech-
nical skills, Communication, Aptitude, and CGPA.

 Cleaning The Missing Values:In some cases, the dataset contains missing values.
We need to be equipped to handle the problem when we come across them. Obvi-
ously, you couldremove the entire line of data but what if you're inadvertently re-
moving crucial information after all we might not need to try to do that. One in
every of the foremost common plan to handle the matter is to require a mean of all
the values of the same column and have it to replace the missing data. The library
used for the task is called SCIKIT Learn pre-processing. It contains a class called
Imputer which will help us take care of the missing data.
 Training The Test Data:Splitting the Dataset into Training set and Test Set Now
the next step is to split our dataset into two. Training set and a Test set. We will
train our machine learning models on our training set, i.e., our machine learning
models will try to understand any correlations in our training set and then we will
test the models on our test set to examine how accurately it will predict. A general
rule of the thumb is to assign 80% of the dataset to training set and therefore the re-
maining 20% to testset.
 Feature Scaling: The final step of data preprocessing is feature scaling. But what is
it? It is a method used to standardize the range of independent variables or features of
data. But why is it necessary? A lot of machine learning models are based on Eu-
clidean distance. If, for example, the values in one column (x) are much higher than
the value in another column (y), (x2-x1) squared will give a far greater value than (y2-
y1) squared. So clearly, one square distinction dominates over the other square dis-
tinction. In the machine learning equations, the square difference with the lower value
in comparison to the far greater value will almost be treated as if it does not exist. We
do not want that to happen. That is why it’s necessary to transform all our variables
into the same scale.

 BULID THE MODEL AFTERTRAINING


7

 PREDECTION OFDISTANCE

1.6 SYSTEM REQUIREMENT SPECIFICATION:


A System Requirements Specification (SRS) - a requirements specification for a soft-
ware system - is a complete description of the behaviour of a system to be developed. It in-
cludes a set of use cases that describe all the interactions the users will have with the soft-
ware. Use cases are also known as functional requirements. In addition to use cases, the SRS
also contains non-functional (or supplementary) requirements. Non-functional requirements
are requirements which impose constraints on the design or implementation (such as perform-
ance engineering requirements, quality standards, or design constraints).

FUNCTIONAL REQUIREMENTS:
In software engineering, a functional requirement defines a function of a software
system or its component. A function is described as a set of inputs, the behavior, and outputs
(see also software). Functional requirements may be calculations, technical details, data
manipulation and processing and other specific functionality that define what a system is
supposed to accomplish. Behavioral requirements describing all the cases where the system
uses the functional requirements are captured in use cases. Generally, functional requirements
are expressed in the form system shall do <requirement>. The plan for implementing
functional requirements is detailed in the system design.

In requirements engineering, functional requirements specify particular results of a


system. Functional requirements drive the application architecture of a system. A
requirements analyst generates use cases after gathering and validating a set of functional
requirements. The hierarchy of functional requirements is: user/stakeholder request ->
feature -> use case -> business rule. Functional requirements drive the application
architecture of a system. A requirements analyst generates use cases after gathering and
validating a set of functional requirements. Functional requirements maybe technical details,
data manipulation and other specific functionality of the project is to provide the information
to the user.

NON-FUNCTIONAL REQUIREMENTS:
8

In systems engineering and requirements engineering, a non-functional re-


quirement is a requirement that specifies criteria that can be used to judge the opera-
tion of a system, rather than specific behaviours.
The project non-functional requirements include the following.

 Updating Workstatus.
 Problemresolution.
 Error occurrence in thesystem.
 Customerrequests.

Availability: -
A system’s “availability” or “uptime” is the amount of time that is operational and
available for use. It’s related to is the server providing the service to the users in displaying
images. As our system will be used by thousands of users at any time our system must be
available always. If there are any cases of updating, they must be performed in a short inter-
val of time without interrupting the normal services made available to theusers.
Efficiency: -
Specifies how well the software utilizes scarce resources: CPU cycles, disk space,
memory, bandwidth etc. All of the above-mentioned resources can be effectively used by per-
forming most of the validations at client side and reducing the workload on server by using
JSP instead of CGI which is being implementednow.
Flexibility: -
If the organization intends to increase or extend the functionality of the software after
it is deployed, that should be planned from the beginning; it influences choices made
during the design, development, testing and deployment of the system. New modules can
be easily integrated to our system without disturbing the existing modules or modifying the
logical database schema of the existingapplications.
Portability: -
Portability specifies the ease with which the software can be installed on all necessary
platforms, and the platforms on which it is expected to run. By using appropriate server ver-
sions released for different platforms our project can be easily operated on any operating sys-
tem, hence can be said highly portable.
Scalability: -
Software that is scalable has the ability to handle a wide variety of system configura-
tion sizes. The non-functional requirements should specify the ways in which the system may
9

be expected to scale up (by increasing hardware capacity, adding machines etc.). Our system
can be easily expandable. Any additional requirements such as hardware or software which
increase the performance of the system can be easily added. An additional server would be
useful to speed up the application.
Integrity: -
Integrity requirements define the security attributes of the system, restricting access to
features or data to certain users and protecting the privacy of data entered into the software.
Certain features access must be disabled to normal users such as adding the details of files,
searching etc which is the sole responsibility of the server. Access can be disabled by provid-
ing appropriate logins to the users for onlyaccess.
Usability: -
Ease-of-use requirements address the factors that constitute the capacity of the soft-
ware to be understood, learned, and used by its intended users. Hyperlinks will be provided
for each and every service the system provides through which navigation will be easier. A
system that has high usability coefficient makes the work of the user easier.
Performance: -
The performance constraints specify the timing characteristics of the software.
10

CHAPTER 2
SYSTEM ANALYSIS
2.1 SCENARIO BASED MODELLING
Use-oriented techniques are widely used in software requirement analysis and design.
Use cases and usage scenarios facilitate system understanding and provide a common
language for communication. This paper presents a scenario-based modeling technique and
discusses its applications. In this model, scenarios are organized hierarchically and they
capture the system functionality at various abstraction levels including scenario groups,
scenarios, and sub-scenarios. Combining scenarios or sub-scenarios can form complex
scenarios. Data are also separately identified, organized, and attached to scenarios. This
scenario model can be used to cross check with the UML model. It can also direct systematic
scenario-based testing including test case generation, test coverage analysis with respect to
requirements, and functional regression testing.

UML DIAGRAMS
The unified modeling language allows the software engineer to express an analysis
model using the modeling notation that is governed by a set of syntactic semantic and
pragmatic rules. A UML system is represented using five different views that describe the
system from distinctly different perspective. Each view is defined by a set of diagrams, which
is as follows.

USER MODEL VIEW


 This view represents the system from the user’s perspective.

 The analysis representation describes a usage scenario from the end-user’s per-
spective.

STRUCTURAL MODEL VIEW


 In this model the data and functionality are arrived from inside the system.

 This model view models the static structures.

BEHAVIORAL MODEL VIEW


11

It represents the dynamic of behavioral as parts of the system, depicting the


interactions of collection between various structural elements described in the user model and
structural model view.

IMPLEMENTATION MODEL VIEW


In this the structural and behavioral as parts of the system are represented as they are
to be built.

ENVIRONMENTAL MODEL VIEW


In these the structural and behavioral aspects of the environment in which the system
is to be implemented are represented.
UML is specifically constructed through two different domains they are

 UML Analysis modeling, which focuses on the user model and structural model
views of the system?

 UML design modeling, which focuses on the behavioral modeling, implementation


modeling and environmental model views.
Use case Diagrams represent the functionality of the system from a user’s point of view. Use
cases are used during requirements elicitation and analysis to represent the functionality of
the system. Use cases focus on the behavior of the system from external point of view.
Actors are external entities that interact with the system. Examples of actors include users
like administrator, bank customer …etc., or another system like central database.
Class diagram: A class diagram show’s set of classes interfaces collaborations and their
relationships. Class diagram address the static design view of a system.
Use case diagram: It shows set of use cases and actors and their relationships.use case
diagram address the static design view of a system.
Sequence diagram: It is an interaction diagram that emphasizes the tine ordering messages.
Collaboration diagram: It emphasizes the structural organization of objects that sender
receive message.
Activity diagram: It is a special kind of State chart diagram that shows the flow from
activity-activity within a system. It addresses the dynamic view of system.
12

2.1.1 USE CASE DIAGRAM:


A use case diagram in the Unified Modeling Language (UML) is a type of behavioral
diagram defined by and created from a Use-case analysis. Its purpose is to present a graphical
overview of the functionality provided by a system in terms of actors, their goals (represented
as use cases), and any dependencies between those use cases. The main purpose of a use case
diagram is to show what system functions are performed for which actor. Roles of the actors
in the system can be depicted.

2.1.2 IDENTIFIED USECASES:


Interaction among actors is not shown on the use case diagram. If this interaction is
essential to a coherent description of the desired behaviour, perhaps the system or use case
boundaries should be re-examined. Alternatively, interaction among actors can be part of the
assumptions used in the use case. The different elements present in a use case diagram are as
follows:
Use cases
A use case describes a sequence of actions that provide something of measurable
value to an actor and is drawn as a horizontal ellipse.
Actors
An actor is a person, organization, or external system that plays a role in one or more
interactions with the system.
System boundary boxes (optional)
A rectangle is drawn around the use cases, called the system boundary box, to indicate the
scope of system. Anything within the box represents functionality that is in scope and
anything outside the box is not.
Four relationships among use cases are used often in practice.

Include
In one form of interaction, a given use case may include another. "Include is a
Directed Relationship between two use cases, implying that the behavior of the included use
case is inserted into the behavior of the including use case.
The first use case often depends on the outcome of the included use case. This is use-
ful for extracting truly common behaviours from multiple use cases into a single description.
13

The notation is a dashed arrow from the including to the included use case, with the label
"«include» “There are no parameters or return values. To specify the location in a flow of
events in which the base use case includes the behaviour of another, you simply write include
followed by the name of use case you want to include, as in the following flow for track or-
der.
Extend
In another form of interaction, a given use case (the extension) may extend another.
This relationship indicates that the behaviour of the extension use case may be inserted in the
extended use case under some conditions. The notation is a dashed arrow from the extension
to the extended use case, with the label "«extend»". Modelers use the «extend» relationship to
indicate use cases that are "optional" to the base use case.
Generalization
In the third form of relationship among use cases, a generalization/specialization rela-
tionship exists. A given use case may have common behaviours, requirements, constraints,
and assumptions with a more general use case. In this case, describe them once, and deal with
it in the same way, describing any differences in the specialized cases.
Associations
Associations between actors and use cases are indicated in use case diagrams by solid
lines. An association exists whenever an actor is involved with an interaction described by a
use case. Associations are modeled as lines connecting use cases and actors to one another,
with an optional arrowhead on one end of the line. The arrowhead is often used to indicating
the direction of the initial invocation of the relationship or to indicate the primary actor
within the use case.
14

figure 2.1.2 use case diagram for a deep learning-based social distance monitoring
framework for covid-19
DESCRIPTION:
In this project we are using system to perform all tasks. Hence, we use system as the
actor.Install open CV & CUDA package, upload real time videos, analyse distance between
individuals, Alert distance below threshold, indicate results in output frame, End video these
all will be the use cases of this project.The distance will be computed between the persons
detected in the captured footage and then compared to a fixed pixels' values. As the Euclidean
distance is calculated between all the detected boxes, we filter out or flag the people that are
closest to each other indicating that they are at risk of COVID- 19.So, we selected this project
to bring automation in Social DistanceMonitoring.

2.2 FLOW ORIENTED MODELLING


2.2.1 ACTIVITY DIAGRAM:
Activity diagrams are graphical representations of workflows of stepwise activities
and actions with support for choice, iteration and concurrency. In the Unified Modeling
Language, activity diagrams can be used to describe the business and operational step-by-step
workflows of components in a system. An activity diagram shows the overall flow of control.
Activity diagrams are constructed from a limited repertoire of shapes, connected with arrows.
The most important shape types:
15

 Rounded rectangles represent activities;


 Diamonds represent decisions;
 Bars represent the start (split) or end (join) of concurrent activities;
 Aback circle represents the start (initial state) of the workflow;
 An encircled black circle represents the end (final state).
Arrows run from the start towards the end and represent the order in which activities
happen.However, the join and split symbols in activity diagrams only resolve this for simple
cases; the meaning of the model is not clear when they are arbitrarily combined with
decisions.

Fig2.2.1: Activity diagram fora deep learning-based social distance monitoring framework
for covid-19
16

DESCRIPTION:
In the Unified Modeling Language, activity diagrams can be used to describe the
business and operational step-by-step workflows of components in a system. An activity
diagram shows the overall flow of control. There would be an initial and final state which
represents our task initialization and ending respectively. The states will be: Install open CV
& CUDA package, upload real time videos, analyze distance between individuals, Alert
distance below threshold, indicate results in output frame, End video.The distance will be
computed between the persons detected in the captured footage and then compared to a fixed
pixels' values.

2.3 BEHAVIOURAL MODELLING:


UML behavioral diagrams visualize, specify, construct, and document the dynamic
aspects of a system.Behavioral models describe the internal dynamic aspects of an
information system that supports the business processes in an organization. During analysis,
behavioral models describe what the internal logic of the processes is without specifying how
the processes are to be implemented. Later, in the design and implementation phases, the
detailed design of the operations contained in the object is fully specified. 

2.3.1 STATE CHART DIAGRAM:


Objects have behaviors and states. The state of an object depends on its current
activity or condition. A state chart diagram shows the possible states of the object and the
transitions that cause a change in state. A state diagram, also called a state machine diagram
or state chart diagram, is an illustration of the states an object can attain as well as the
transitions between those states in the Unified Modeling Language. A state diagram
resembles a flowchart in which the initial state is represented by a large black dot and
subsequent states are portrayed as boxes with rounded corners. There may be one or two
horizontal lines through a box, dividing it into stacked sections. In that case, the upper section
contains the name of the state, the middle section (if any) contains the state variables and the
lower section contains the actions performed in that state. If there are no horizontal lines
through a box, only the name of the state is written inside it. External straight lines, each with
an arrow at one end, connect various pairs of boxes. These lines define thetransitions between
states. The final stateis portrayed as alarge black dot with acircle aroundit.
The name of the diagram itself clarifies the purpose of the diagram and other details.
It describes different states of a component in a system. The states are specific to a
17

component/object of a system. AState chart diagram describes a state machine. Now to


clarify it state machine can be defined as a machine which defines different states of an object
and these states are controlled by external or internal events.
State chart diagram is one of the five UML diagrams used to model dynamic nature of
a system. They define different states of an object during its lifetime. And these states are
changed by events.State chart diagram describes the flow of control from one state to another
state. States are defined as a condition in which an object exists and it changes when some
event is triggered. So, the most important purpose of State chart diagram is to model life time
of an object from creation to termination. State chart diagrams are also used for forward and
reverse engineering of a system. But the main purpose is to model reactive system.
18

Fig2.3.1.1: state chart diagram fora deep learning-based social distance monitoring
framework for covid-19

DESCRIPTION:

State chart diagram is one of the five UML diagrams used to model dynamic nature of
a system. They define different states of an object during its lifetime. And these states are
changed by events. State chart diagram describes the flow of control from one state to another
state. Install open CV & CUDA package, upload real time videos, analyze distance between
individuals, Alert distance below threshold, indicate results in output frame, End video will
be the states.States are defined as a condition in which an object exists and it changes when
some event is triggered. So, the most important purpose of State chart diagram is to model
life time of an object from creation to termination.
19

Fig2.3.1.2: state chart diagram fora deep learning-based social distance monitoring
framework for covid-19

DESCRIPTION:
States are defined as a condition in which an object exists and it changes when some
event is triggered. So, the most important purpose of State chart diagram is to model life time
of an object from creation to termination. State chart diagrams are also used for forward and
reverse engineering of a system. But the main purpose is to model reactive system. There are
initial and final states for the admin state diagram. Evaluation of the classification results by-
analyzing real-time video streams from the camera. Deep CNN model was the object detec-
tion approach was proposed that mitigated the computational complexity issues by formulat-
ing the detection with a single regression problem
The proposed method was validated using a video showing pedestrians
walking on a street. The visualization results showed that the proposed method is capable
to determine the social distancing measures between people which can be further
developed for use in other environment such as office, restaurant, andschool. The states
will be Input sample images, preprocess the image for classification, creating the training
dataset.

2.3.2SEQUENCE DIAGRAM:
A sequence diagram in Unified Modeling Language (UML) is a kind of interaction
diagram that shows how processes operate with one another and in what order. It is a
construct of a Message Sequence Chart.
Sequence diagrams are sometimes called event diagrams, event scenarios, and timing
diagrams. A sequence diagram shows, as parallel vertical lines (lifelines), different processes
or objects that live simultaneously, and, as horizontal arrows, the messages exchanged
between them, in the order in which they occur. This allows the specification of simple
runtime scenarios in a graphical manner.
If the lifeline is that of an object, it demonstrates a role. In order to display
interaction, messages are used. These are horizontal arrows with the message name written
above them. Solid arrows with full heads are synchronous calls, solid arrows with stick heads
are asynchronous calls and dashed arrows with stick heads are return messages.
20

Activation boxes, or method-call boxes, are opaque rectangles drawn on top of


lifelines to represent those processes are being performed in response to the message
(Execution Specifications in UML).
Objects calling methods on themselves use messages and add new activation boxes on
top of any others to indicate a further level of processing. When an object is destroyed
(removed from memory), an X is drawn on top of the lifeline, and the dashed line ceases to
be drawn below it (this is not the case in the first example though). It should be the result of a
message, either from the object itself, or another.
A message sent from outside the diagram can be represented by a message originating
from a filled-in circle (found message in UML) or from a border of sequence diagram (gate in
UML).

Fig2.3.2: sequence diagram fora deep learning-based social distance monitoring framework
for covid-19

DESCRIPTION:

23Sequence diagrams are sometimes called event diagrams, event scenarios, and
timing diagrams. A sequence diagram shows, as parallel vertical lines (lifelines), different
processes or objects that live simultaneously, and, as horizontal arrows, the messages
exchanged between them, in the order in which they occur. The lifelines are system and the
interface.In order to display interaction, messages are used. These are horizontal arrows with
the message name written above them.Install open cv & CUDA package(),Upload real
time videos(),Analyze distance between Individual(),Alert distance
21

belowthreshold(),Indicate result in outputframe(),End video() are the messages that are


exchanged.

2.4CLASS BASED MODELLING:


Class-based Modelling, or more commonly class-orientation, refers to the style of
object-oriented programming in which inheritance is achieved by defining classes of objects;
as opposed to the objects themselves (compare Prototype-based programming). The most
popular and developed model of OOP is a class-based model, as opposed to an object-based
model. In this model, objects are entities that combine state (i.e., data), behavior (i.e.,
procedures, or methods) and identity (unique existence among all other objects). The
structure and behavior of an object are defined by a class, which is a definition, or blueprint,
of all objects of a specific type. An object must be explicitly created based on a class and an
object thus created is considered to be an instance of that class.
An object is similar to a structure, with the addition of method pointers, member
access control, and an implicit data member which locates instances of the class (i.e., actual
objects of that class) in the class hierarchy (essential for runtime inheritance features).Model,
objects are entities that combine state (i.e., data), behavior (i.e., procedures, or methods) and
identity (unique existence among all other objects). The structure and behavior of an object
are defined by a class, which is a definition, or blueprint, of all objects of a specific type. An
object must be explicitly created based on a class and an object thus created is considered to
be an instance of that class. An object is similar to a structure, with the addition of method
pointers, member access control, and an implicit data member which locates instances of the
class (i.e. actual objects of that class) in the class hierarchy (essential for runtime inheritance
features)In software engineering, a class diagram in the Unified Modeling Language (UML)
is a type of static structure diagram that describes the structure of a system by showing the
system's classes, their attributes, and the relationships between the classes.
The class diagram is the main building block in object-oriented modeling. It is used
both for general conceptual modeling of the semantics of the application, and for detailed
modeling translating the models into programming code. The classes in a class diagram
represent both the main objects and or interactions in the application and the objects to be
programmed. In the class diagram these classes are represented with boxes which contain the
two parts:

 The upper part holds the name of theclass.


22

 The middle part contains the attributes of theclass.


 The lower part contains the operations of theclass.

2.4.1CLASSES IDENTIFIED:
Class Name : System.
Attributes : Dataset

Operations :Install open cv & CUDA package(),Upload real time videos(),Analyze


distance between Individual(),Alert distance belowthreshold(),Indicate result in
outputframe(),End video()

system
+Dataset
+Install open cv & CUDA package()
+Upload real time videos()
+Analyze disatance between Individual()
+Alert distance belowthreshold()
+Indicate result in outputframe()
+End video()

Fig2.4.1: class diagram fora deep learning-based social distance monitoring framework for
covid-19
DESCRIPTION:
The class diagram is the main building block in object-oriented modeling. It is used
both for general conceptual modeling of the semantics of the application, and for detailed
modeling translating the models into programming code. The classes in a class diagram
represent both the main objects and or interactions in the application and the objects to be
programmed. Class Name is System.Attribute is Dataset and Operations are Install open cv
& CUDA package (), Upload real time videos (), Analyze distance between Individual (),
Alert distance belowthreshold (), Indicate result in output frame (), End video ()
respectively.

2.4.2 COLLABORATION DIAGRAM


23

A Sequence diagram is dynamic, and, more importantly, is time ordered. A


Collaboration diagram is very similar to a Sequence diagram in the purpose it achieves; in
other words, it shows the dynamic interaction of the objects in a system. A distinguishing
feature of a Collaboration diagram is that it shows the objects and their association with other
objects in the system apart from how they interact with each other. The association between
objects is not represented in a Sequence diagram.A Collaboration diagram is easily
represented by modelling objects in a system and representing the associations between the
objects as links. The interaction between the objects is denoted by arrows. To identify the
sequence of invocation of these objects, a number is placed next to each of these arrows.A
sophisticated modelling tool can easily convert a collaboration diagram into a sequence
diagram and the vice versa. Hence, the elements of a Collaboration diagram are essentially
the same as that of a Sequence diagram.

Fig2.4.2:Collaboration diagram a deep learning-based social distance monitoring framework


for covid-19
DESCRIPTION:

A Collaboration diagram is easily represented by modelling objects in a system and


representing the associations between the objects as links. The interaction between the
objects is denoted by arrows. To identify the sequence of invocation of these objects, a
number is placed next to each of these arrows.A sophisticated modelling tool can easily
convert a collaboration diagram into a sequence diagram and the vice versa.In order to
display interaction, link is used. Install open cv & CUDA package(), Upload real time
videos(),Analyze distance between Individual(),Alert distance belowthreshold(),Indicate
24

result in outputframe(),End video() are the messages that are exchanged.These are horizontal
arrows with either forward or reverse message name written above them.

2.5 COMPONENTDIAGRAM:
The portion of the software development process where the design is elaborated and
the individual data elements and operations are designed in detail. First, different views of a
“component” are introduced. Guidelines for the design of object-oriented and traditional
(conventional) program components are presented.
WHAT IS COMPONENT?
This section defines the term component and discusses the differences between object
oriented, traditional, and process related views of component level design. Object
Management Group OMG UML defines a component as “… a modular, deployable, and
replaceable part of a system that encapsulates implementation and exposes a set of
interfaces.”

Fig2.5:Collaboration diagram a deep learning-based social distance monitoring framework


for covid-19
DESCRIPTION:
A component contains a set of collaborating classes. Each class within a component
has been fully elaborated to include all attributes and operations that are relevant to
itsimplementation. As part of the design elaboration, all interfaces (messages) that enable the
classes to communicate and collaborate with other design classes must also be defined. To
accomplish this, the designer begins with the analysis model and elaborates analysis classes
(for components that relate to the problem domain) and infrastructure classes(Or components
that provide support services for the problem domain).Here system and data set will be the
components communication link is between the components.

2.6 DEPLOYMENTDIAGRAM:
25

Deployment diagrams are used to visualize the topology of the physical components
of a system where the software components are deployed. So, deployment diagrams are used
to describe the static deployment view of a system. Deployment diagrams consist of nodes
and their relationships The name Deployment itself describes the purpose of the diagram.
Deployment diagrams are used for describing the hardware components where software
components are deployed. Component diagrams and deployment diagrams are closely
related. Component diagrams are used to describe the components and deployment diagrams
shows how they are deployed in hardware is mainly designed to focus on software artifacts of
a system. But these two diagrams are special diagrams used to focus on software components
and hardware components. So, most of the UML diagrams are used to handle logical
components but deployment diagrams are made to focus on hardware topology of a system.
Deployment diagrams are used by the systemengineers. The purpose of deployment diagrams
can be described as:

 Visualize hardware topology of asystem.

 Describe the hardware components used to deploy softwarecomponents.

 Describe runtime processingnodes.

Deployment diagrams are useful for system engineers. An efficient deployment diagram is
very important because it controls the followingparameters
 Performance

 Scalability

 Maintainability

 Portability

So before drawing a deployment diagram the following artifacts should be identified:

 Nodes

 Relationships amongnodes

 The following deployment diagram is a sample to give an idea of the deploy-


ment view of order management system. Here we have shown nodes as:
 Monitor

 Modem
26

 Cachingserver

 Server

The application is assumed to be a web-based application which is deployed in a clustered


environment using server 1, server 2 and server 3. The user is connecting to the application
using internet. The control is flowing from the caching server to the clustered environment
So, the following deployment diagram has been drawn considering all the points men-
tioned above:

Fig2.6.1:Deployment diagram a deep learning-based social distance monitoring framework


for covid-19

DESCRIPTION:
A component contains a set of collaborating classes. Each class within a component
has been fully elaborated to include all attributes and operations that are relevant to
itsimplementation. Deployment diagram represents the deployment view of a system. It is
related to the component diagram. Because the components are deployed using the
deployment diagrams. A deployment diagram consists of nodes. Nodes are nothing but
physical hardware’s used to deploy theapplication. Here system and dataset will be the nodes.
27

REFERENCES
[1]. Centers for Disease Control (CDC). Implementation of Mitigation Strategies for
Communities with Local COVID-1[Online]. Available at:
https://www.who.int/emergencies/diseases/novel-coronavirus-2019 (Accessed 8
May2020).
[2]. Centers for Disease Control (CDC). Implementation of Mitigation Strategies for
Communities with Local COVID-19 Transmission [Online]. Available at
https://www.cdc.gov/coronavirus/2019-no/downloads/community-mitigation-strategy.pdf
(Accessed 8 May 2020).
[3]. Ministry of Health Malaysia (MOHM) Official Portal. COVID-19 (Guidelines)
[Online]. Available at
https://www.moh.gov.my/index.php/pages/view/2019-ncov-wuhanguidelines (Accessed 8
May2020).
[4]. D.T. Nguyen, W. Li, P.O. Ogbonna, “Human detection from images and videos: A
survey”, Pattern Recognition, 51:148-75,2016.
[5]. Kievsky, I. Subsieve, G.E. Hinton, “ImageNet classification with deep convolutional
neural networks”, In Advances in neural information processing systems, pp. 1097-
1105,2012.
28

[6]. J. Deng, W. Dong, R. Sucher, L.-J. Li, K. Li, L. Fei-Fei, “ImageNet: A Large-Scale
Hierarchical Image Database”, In Computer Vision and Pattern Recognition,2009.
[7]. K.Simonian, A. Zisserman, “Very deep convolutional networks for large-scale image
recognition”, arrive preprint arXiv:1409.1556,2014.
[8]. C.Szeged, V. Banjouke, S. Joffe, J. Sheens, Z. WJMA, “Rethinking the inception
architecture for computer vision”, In Proceedings of the IEEE conference on computer
vision and pattern recognition, pp. 2818- 2826,2016.
[9]. K. He, X. Zhang, S. Ren, J. Sun, “Deep residual learning for image recognition”, In
Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 770-
778, 2016.
[10]. R.Kirchick, J. Donahue, T. Darrell, J. Malik. "Rich feature hierarchies for accurate
object detection and semantic segmentation."In Proceedings of the IEEE conference on
computer vision and pattern recognition, pp. 580-587. 2014.- social-distancing-in-the-
workplace/ (Access on 4 May2020).
[11]. J. Redmon, A. Farhadi, “Yolov3: An incremental improvement”, arrive preprint
arXiv:1804.02767, 2018.

You might also like