You are on page 1of 19

IMAGE PROCESSING – USING MACHINE

LEARNING

Software Requirement Specification

ADITYA CHETTRI
Reg no:- 201600233

KRISHNA KUMAR

Reg no:-

B.Tech in Information Technology

Department of Information Technology Sikkim Manipal


Institute Of Technology,Majiitar,Sikkim
Contents
2 Overall Descriptions ........................................................................................................ 4
2.1 Product perspective ....................................................................................................... 4
2.1.1 System interfaces ................................................................................................... 5
2.1.2 Hardware interfaces ............................................................................................... 7
2.1.3 Software interfaces................................................................................................. 7
2.1.4 Memory constraints ............................................................................................... 8
2.1.5 Operations .............................................................................................................. 9
2.1.6 Site adaptation requirements .................................................................................. 9
2.2 Product functions ........................................................................................................ 10
2.3 User characteristics ..................................................................................................... 15
2.4 Constraints .................................................................................................................. 15
2.5 Assumptions and dependencies .................................................................................. 15
2.5.1 Assumptions ......................................................................................................... 15
2.5.2 Dependencies ....................................................................................................... 15
2.6 Apportioning of requirements ..................................................................................... 15
3 Specific requirements..................................................................................................... 16
3.1 Classes/Objects ........................................................................................................... 16
3.2 Performance requirements .......................................................................................... 16
3.3 Design constraints ....................................................................................................... 16
3.4 Software system attributes .......................................................................................... 17
3.4.1 Reliability ............................................................................................................. 17
3.4.2 Availability .......................................................................................................... 17
3.4.3 Security ................................................................................................................ 17
3.4.4 Maintainability ..................................................................................................... 17
4 Supporting information .................................................................................................. 18
4.1 References ................................................................................................................... 18

3
2 Overall Descriptions
This section will give an overview of the comparison of object recognition by using
machine learning. This will be explained in its context to show how the component
interacts with other components and introduce the basic functionality of it. It will also
describe how the object recognition will use the system and what functionalities are
available. At last, the constraints and assumptions for the component will be presented.

2.1 Product perspective


Over the years, in the Banking industry, there was no proper technology to identifying
unusual human behaviors or objects in real time to notify those activities by the alert or
notification. Up to now, every suspicious behavior and unusual objects are monitored
manually. The banking industry, however, has been developing and conducting many
experiments to increase their security and as a result, has installed multiple CCTV
surveillance systems to detect anomalies that pose a threat to a bank. Nowadays, most of
the banks worldwide are using facial recognition systems, biometric, motion detection
systems and human or object detection systems etc. to ensure their security, but there is
no proper system to identifying threats.

In our research, we are focusing on a live feed to identifying and detecting unusual
behaviors can be human or objects to prevent threat and notify by the alert as a response.
Kim and Grumman proposed a method to detect abnormalities in a video sequence based
on a space-time Markov random field model. This model dynamically adapts to abnormal
activities that consist of unpredictable variations. Some of the current methods for the
detection of abnormal behavioral patterns are based on unsupervised one-class learning
approaches. Template Matching Evaluating is only a subset of the possible
transformations was considered in the limited context of template matching under 2D
translation [1]. Template matching has various applications and is used in such fields as
face recognition and medical image processing. Systems have been developed and used
in the past to count the number of faces that walk across part of a bridge within a certain
amount of time. Other systems include automated calcified nodule detection within
digital chest X-rays. Recently, this method was implemented in geostatistical simulation

4
which could provide a fast algorithm [2]. Mostly up to now proposed system is just to
seek out the specific shape from a certain image, for an image with several edges, edge
detector rule would possibly take a longer time to make binary image [3]. We will be able
to reduce time when compared to that and to handle noisy images efficiency of the
system will be maintained when compared to previous research.

The automatic detection of abnormal objects can be used to alert security. Abnormal
object means that which can’t be seen inside ATM premises usually. The processes have
to be clearly defined to the system in order to process proactively.

Fig.1. High Level Workflow - Object

2.1.1 System interfaces


“Abnormal objects detection” is a desktop application and for the development
of concept comparison tool several algorithms needs to be used.
• Visual Studio
• MSSQL
• .Net Framework
5
Fig.2. System Interface (1) – Object

Fig.3. System Interface (2) – Object

6
2.1.2 Hardware interfaces

• PC with a Windows OS installed.

The user needs to have a PC with Windows OS is installed in order to install and work
with object detection application. To use the object detection application it requires
minimum 1 GHz RAM.

Fig.4. Hardware interfaces

2.1.3 Software interfaces


• Visual Studio

Studio is a powerful IDE that ensures quality code throughout the

entire application life cycle, from design to deployment. To implement the application of
abnormal object identification, Visual Studio will be used. It provides all the required
facilities and features to developers as well as a user friendly programming environment.

• MSSQL

MSSQL is a secure and reliable platform for protecting data and

7
for building compliance solutions. Conforming to regulatory legislation often impact
show data is stored and how it is accessed. MSSQL will provide all the required facilities
and features to implement the database of abnormal object identification application.
• EmguCV

EmguCV is a cross platform .Net wrapper to the OpenCV image

processing library. Allowing OpenCV functions to be called from .Net Compatible


languages. OpenCV features would be used to compare the images.

• draw.io

draw.io is an open platform to create and share diagrams. UML Features


would be used to draw the Static and Dynamic UML diagrams which require in system
designing. E.g.: Use Case Diagrams, Class Diagrams, and Functional Diagrams and etc.

• Microsoft Power Point

To design presentation slides we need Microsoft PowerPoint. We must


present project status Progress and whatever the project out comes, to project stake
holders (Project Supervisor and Lecturer in charge).

2.1.4 Memory constraints

Abnormal object detection is expected to use no more than 10 MB of RAM and 15


MB of external storage.

8
2.1.5 Operations
Windows and abnormal object detection application need to be installed correctly in
to the PC. User & system has to perform following set of actions to interact with
Comparison of knowledge in abnormal object detection component. The basic idea is
listed below:
 User should have to perform ATM process without carrying any
abnormal objects, if carrying any abnormal object system have to detect.
 In order detect anomaly object first system need to teach/feed the shapes
of abnormal object outline templates to the system.
 10s duration video clip -> process it frame wise.
 Then system will identify different shapes from image.
 And among them system will recognize the abnormal objects.
After understanding the scope and the project solution steps, the challenges and
objectives are identified as:
The first challenge is to recognize the abnormal object through image processing of
individual frames of the real time video from the CCTV camera. The key challenges
of this project is to recognize the abnormal object through the real time video capture
and simulate appropriate functionality. Overcoming various factors like frame rate,
frame size, resolution, background environment, physical characteristics of the
abnormal object. Find the most suitable algorithm to reflect abnormal object
identification and detection actions and coordinates efficiently. Select the appropriate
development methodology that is more suitable for this type of application, to reduce
the risk of errors within the system. Testing the system under three levels namely unit
testing, integration testing and system testing.

2.1.6 Site adaptation requirements

System should first connect to internet to retrieve video node from the ATM
premises CCTV.

9
2.2 Product functions

To detect abnormal objects fundamental principles of image processing have to follow. A


good majority of these applications will follow the preprocessing, classification,
interpretation.

1. Abnormal object detection and segmentation – In simple terms, segmenting the


required area of the abnormal object from using image-processing techniques
such as background subtraction, feature extraction, edge detection etc.
2. Motion Tracking – After segmenting the object from the it’s background, the pre-
processed image would be tracked by comparing simultaneous frames from a set
of simultaneously taken images from a CCTV to allow to identify either the
position the pointer should be in or the abnormal object.

In instances where the template may not provide a direct match, it may be useful
to implement the use of eigenspaces – templates that detail the matching object
under a number of different conditions, such as varying perspectives,
illuminations, color contrasts, or acceptable matching object “poses”. For
example, if the system was looking for an object, the eigenspaces may consist of
images (templates) of objects in different positions to the camera, in different
lighting conditions, or with different expressions [2].

3. Abnormal object identification – After tracking the motions of the pre-processed


object, the abnormal object would be identified according to the outline template.

10
Fig.5. Use case diagram - Object

11
Use Case Scenarios

Use Case Name Feature Extraction


Primary Actor System
Use Case Description A process of identifying the abnormal object which would
be used as an identifier for the actions to be simulated. This
process would be handled by image processing techniques
such as image pre-processing and feature extraction.
Precondition Receive frame from Live feed.

Use Case Name Object Motion Tracking


Primary Actor System
Use Case Description A process to track the motion of the extracted abnormal
object. This process is handled by motion tacking methods.
Precondition Receive frame from Live feed.

Use Case Name Edge Detection


Primary Actor System
Use Case Description A process of identifying the abnormal object which would
be used as an identifier for the actions to be simulated. This
process would be handled by image processing techniques
such as edge detection by using templates of outline of
abnormal object.
Precondition Receive frame from Live feed.

12
Fig.6. Functional architecture

By using these techniques, it is possible to use abnormal object to interact with


the computer to perform tasks or actions. Feature extraction:–by using edges.
Template matching is a simple techniques used in digital image processing to
detect parts of an image by comparison to a template image. “Template matching
is conceptually a simple process. We need to match a template to an image, where
the template is a sub-image that contains the shape we are trying to find.
Background subtraction:-The image taken would be of a fixed pixel size with a
constant background under well-lit conditions. It would be easier to identify the
abnormal object as a feature (the foreground) and remove the other parts of the
image (the background), therefore subtracting the unwanted background. From
the ideas gained from Cheung and Kamath (2006), the video node frame has been

13
derived for background subtraction according to the preference of feature
detection and extraction techniques.

Feature detection:-This method is performed to identify the abnormal object. This


method looks into calculating abstractions and making decision at individual
image points to identify whether it is a subset of an image feature at given point or
not. The results of these computations will be subsets of the image domains
mostly in the form of isolated points, continuous will be subsets of the image
domains mostly in the form of isolated points, continuous curves or connected
regions.

Image features are distinct image parts, in-order to recognize an object


corresponding features must be detected. The description of a feature is as
important as the extraction. There are four type of image features but the most
suited of the feature detection techniques for this system would be either the edge
detection or the blob detection methods. According to the research done by the
author on deciding which of the two techniques to be used for the proposed
system, edge detection was decided as the best choice as it requires less
computational power and is comparatively efficient than blob detection to detect
the abnormal object. Edge detection is a category of feature detection; therefore,
there are a number of methods used to perform edge detection. Edges:-Found
through sharp changes in brightness. Majority of algorithms use the first
derivative of the intensity. Different methods (One or two thresholds).

To improving the accuracy of the matching, Improvements can be done to the


matching method by using more than one template, these other templates can
have different scales and rotations. It is also possible to improve the accuracy of
the matching method by hybridizing the feature and template based approaches.
Naturally, this requires that the search and template images have features that are
apparent enough to support feature matching.

14
2.3 User characteristics

Anomaly object detection is the best solution for (banking industry) ATMs to have a top
of the class security system in place along with video surveillance. ATMs can be
susceptible to criminal activity if it’s not properly protected. Cameras on ATMs should
be effective enough to assist in criminal investigations of ATM transactions. By using the
detection of abnormal object system the banking industry can be protected from the
criminal activity. Important to be proactive, not reactive – to ensure safety of
stakeholders and assets.

2.4 Constraints
The Internet connection is a constraint for this function. Since the input is video to the
system over the Internet, and will use APIs. It is crucial that there is an Internet
connection for the application to function and c# shall be the implementation language.

2.5 Assumptions and dependencies


2.5.1 Assumptions

• We assume that the user has all necessary technologies to perform the object
detection application.
• We assume that the user has the required knowledge on the technology.

2.5.2 Dependencies

• System need to get update with the new versions of the software.

2.6 Apportioning of requirements

The section 1.5 of this document provides the overview of the proposed system and the
section 2 provides the detailed overall description on the system and requirements. The
section 3 contains detailed requirements that should be followed while design and
implementations.

In the first release of the object detection system is to implement the preliminary and
functional specifications described in the section 3. The methodology of implementing
the system may slightly different than the content described in this document during the
system design however the requirements specified will not be changed and the systems
release will tally with its purpose and objectives.

15
3 Specific requirements

3.1 Classes/Objects

Fig.7. Class Diagram - Object

3.2 Performance requirements

For efficient performance of the system, the system should use machines running
Windows with a minimum speed of 1.80 GHZ.

• RAM

RAM is the memory available for PC to use when running programmers. Amount
of RAM determines how many programmers or applications can be open and
running at the same time. The more RAM the more applications can be used
consecutively without making the machine too sluggish. It is important to get the
best RAM in such case like Image processing or multi-tasking.

3.3 Design constraints


Database maintenance for the system- Our system is handling with the different
type of abnormal objects data. Hence we need to use MSSQL database.
Abnormal object detection tool will be constrained by the capacity of database.

16
Requirement of internet connectivity.
Designing of anomaly object identification and detection algorithms.

3.4 Software system attributes


3.4.1 Reliability

Reliability is the probability that an application will accurately perform its specified task
under stated environmental conditions. Simply, that is how much a user can depend on
the system. The propose application is developing to provide a reliable and efficient
service to the user. All the latest configurations and technology is used to provide the
service accurate and in less time.

3.4.2 Availability

The proposed system must be available to do proper validations.

3.4.3 Security

Security is very important feature for this kind of application because all the details
which are provided to system should be valid and accurate. There is a high security to
overcome threats and keep details in a secure manner.

3.4.4 Maintainability

Maintainability is defined as the probability of performing a successful repair action


within a given time. In other words, maintainability measures the ease and speed with
which a system can be restored to operational status after a failure occurs. Vision
problem Tester will be easy to maintain because application is developed according to the
object oriented approach and modularization. Application code will be well commented
and documented for any further development.

17
4 Supporting information

4.1 References

[1] S. Hsu, “A Video-Based Abnormal Human Behavior Detection for Psychiatric Patient
Monitoring.”

[2]B. Vidhyapeeth Rajasthan Neelam Sharma and A. Professor Banasthali Vidhyapeeth


Rajasthan, “An Overview of Various Template Matching Methodologies in Image
Processing,” Int. J. Comput. Appl., vol. 153, no. 10, pp. 975–8887, 2016.

[3] B. Vidhyapeeth Rajasthan Neelam Sharma and A. Professor Banasthali Vidhyapeeth


Rajasthan, “An Overview of Various Template Matching Methodologies in Image
Processing,” Int. J. Comput. Appl., vol. 153, no. 10, pp. 975–8887, 2016.

[4] A. Amin and M. H. Mondol, “Abnormal Behaviour Detection of Human by Video


Surveillance System,” no. December, 2014.

[5] N. Charara, I. Jarkass, M. Sokhn, E. Mugellini, and O. A. Khaled, “ADABeV :


Automatic Detection of Abnormal Behavior in Video-surveillance,” vol. 6, no. 8, pp.
172–178, 2012.

[6] S. Korman, D. Reichman, G. Tsur, and S. Avidan, “Fast-Match: Fast Affine


Template Matching,” Int. J. Comput. Vis., vol. 121, no. 1, pp. 111–125, 2017.

[7] M. Computing, “Video Surveillance Framework,” vol. 3, no. 5, pp. 673–680, 2014.

[8] B. Vidhyapeeth Rajasthan Neelam Sharma and A. Professor Banasthali Vidhyapeeth


Rajasthan, “An Overview of Various Template Matching Methodologies in Image
Processing,” Int. J. Comput. Appl., vol. 153, no. 10, pp. 975–8887, 2016.

18
[9] “https://www.linkedin.com/pulse/cctv-surveillance-human-factors-control-rooms-
oyewole-somorin/.”[Online].Available:https://www.linkedin.com/pulse/cctv-
surveillance-human-factors-control-rooms-oyewole-somorin/.

[10] J. H. Ratcliffe, “Video Surveillance of Public Places,” Probl. Guid. Police


Response Guid. Ser., vol. 6, no. 4, p. 6, 2006.

[11] M. Roads, “Information Bulletin A recommended code of practice for the use of
Closed Circuit Television ( CCTV ),” no. March, p. 8, 2008.

19

You might also like