Vous êtes sur la page 1sur 20

CHAPTER ONE

GENERAL INTRODUCTION

1.1 INTRODUCTION

The problem of image recognition has been one of the most prominent areas of machine
vision for about a decade. Current systems have advanced to be fairly accurate in recognition
under constrained scenarios, but extrinsic imaging parameters such as pose, illumination, and
facial expression still cause much difficulty in correct recognition. Recently, component-
based approaches have shown promising results in various object detection and recognition
tasks such as face detection, person detection, and image matching. The component-based
face detector described in localizes a set of facial components using a two level hierarchy of
classifiers. On top of this detector, we built a component-based face identification system in
which the gray values of the extracted components were combined and then classified by a
set of Support Vector Machines, one for each person in the database. I experiments, we have
shown that the component-based system consistently outperforms holistic image recognition
systems in which classification was based on the whole face pattern (Henry, 2011).
Image recognition and matching systems are part of facial image processing applications and
their significance as a research area are increasing recently. They use biometric information
of humans and are applicable easily instead of fingerprint, iris, signature etc., because these
types of biometrics are not much suitable for non-collaborative people. Image recognition
systems are usually applied and preferred for people and security cameras in metropolitan
life. These systems can be used for crime prevention, video surveillance, person verification,
and similar security activities (Kailash, 2012).
Image matching is one of the key areas under research. It has number of applications
and uses. Many methods and algorithms are put forward like, 3D facial recognition etc.
Image matching comes under Biometric identification like iris, retina, finger prints etc. The
features of the face are called biometric identifiers. The biometric identifiers are not easily
forged, misplaced or shared hence access through biometric identifier gives us a better secure
way to provide service and security. We will develop an intelligent application which may
provide security and identity (Yuille, 2013). We propose image matching using opencv in c#
to compare image of different face to see if it will match with the recorded one in database.
This system will develop image matching using webcam through opencv to compare images
and fetch the appropriate record in the data base.

1
1.2 STATEMENT OF THE PROBLEM

The problem of image recognition has been one of the most prominent areas of machine
vision for about a decade. Current systems have advanced to be fairly accurate in recognition
under constrained scenarios, but extrinsic imaging parameters such as pose, illumination, and
facial expression still cause much difficulty in correct recognition.

1.3 AIM AND OBJECTIVES OF THE STUDY


The aim of this project work is to create an image matching application to detect and fetch
record of staff in an organization which serves as a means of security. With the objectives as
follows:
1. To develop a feasible and effective image matching application.
2. To provide effective and practical tool for authentication and tamper-proofing of
images taken by webcam.
3. We pay particular attention to the implementation details of the scheme in the
context of image matching.

1.4 SIGNIFICANCE OF THE STUDY


The main importance of this study is to locate a object (or multiple objects) over a sequence
of images. It also helps to provide de-facto standard API for computer vision applications.
We can solve many real time problems using image processing applications.

1.5 SCOPE AND LIMITATIONS OF THE STUDY


This project focus mainly on image processing using open CV. Also it focus on image
filtering, image transformation, object tracking, feature detection. This project do not go
beyond this.

1.6 ORGANISATION OF THE REPORT


This is the overall organizational structure of the work as presented in this project.

Chapter one of this project deals with the introduction to the general work in the project. It
also entails the statement of the problem, aims and objectives of this project, the significance
of the study, the scope and limitation of the study and organization of the report.

Chapter two deals with the review related journals and books, historical background
of PEP supermarket, Ilorin, as well as computerization current state of the art.

2
Chapter three covers the methods used for data collection, description of the current
procedure, problems of existing system, description of the proposed system and the basic
advantages of the proposed web based application.

Chapter four entails design, implementation and documentation of the system. The
design involves the system design, output design form, input design form, database structure
and the procedure of the system. The implementation involves the implementation techniques
used in details, choice of programming language used and the hardware and software support.
The documentation of the system involves the operation of the system and the maintenance of
the system.

Chapter five deals with the summary, conclusion, recommendation and references.

3
CHAPTER TWO

LITERATURE REVIEW

2.1 REVIEW OF RELATED WORK

Naveenkumar (2015), developed “OpenCV for Computer Vision Applications” The


aim of image processing is to help the computer to understand the content of an image.
OpenCV is a library of programming functions mainly used for image processing. It provides
de-facto standard API for computer vision applications. We can solve many real time
problems using image processing applications. In this paper, sample real time image
processing applications of OpenCV are discussed along with steps (Naveenkumar, 2015)

Maurıcio & Denise (2011), implemented” High Level Computer Vision using
OpenCV” This paper presents some more advanced topicsin image processing and computer
vision, such as Principal Components Analysis, Matching Techniques, Machine Learning
Techniques, Tracking and Optical Flow and Parallel Computer Vision using CUDA. These
concepts will be presented using the openCV library, which is a free computer vision library
for C/C++ programmers available for Windows, Linux MacOS and Android platforms. These
topics will be covered considering notonly theoretical aspects but practical examples will be
presented in order to understand how and when to use each of them. (Maurıcio and Denise,
2011)

Steve, De Wolf & Eva van (2013), developed “Image matching on a mobile device”
In order to match images, features or region have to be detected for each image. After all, if
two images have a lot of those features or regions in common, they will most likely be
similar. Such a feature or region can be defined as an interesting part of the image. Parts
which are describing for the image, e.g. blobs or corners. These corners and blobs can be
found with feature or region detection algorithms. (Steve, De Wolf and Eva van, 2013)

Doo Kim , Jin Tae, Young Moon & Chang-Heon (2014), developed “Performance
Analysis of ORB Image Matching Based on Android” In recent years, there has been rapid
development of the technologies used in smart devices. Hence, research into these
technologies is required in order to expand our understanding of these devices. One of the
main features of smart devices is the mobile camera. Many studies have been conducted
about how to utilizing service using camera. A key component of camera applications is
image processing software. In this paper, we analyze the performance of algorithms used for

4
image processing and seek to improve the performance of the ORB algorithm for image
processing in mobiles. Through this study, we find an optimum threshold value for image
detection in mobile applications using the ORB algorithm. (Doo Kim , Jin Tae, Young
Moon and Chang-Heon, 2014)

Ling & Yan (2010), implemented “A method of stereo vision matching based on
OpenCV” Stereo vision is an important branch of the research area in computer vision.
Among the techniques of stereo vision, binocular stereo vision which is based on processing
two images remains a research hotspot. Binocular stereo vision directly simulates the manner
of human eyes observing one scene from two different viewpoints. By using the principle of
triangulation, the disparities of a number of 3D points mapped to pixels in two images are
computed. Then the visual information of depth is also recovered. The object surface shape
can be acquired using these disparities. In this paper, a pair of common web cameras is used
to collect images. Based on OpenCV, the calibration algorithm of stereo vision is achieved.
Stereo rectify and stereo matching algorithm are also rapidly and efficiently implemented.
Finally, the depth information of object is obtained. (Ling and Yan, 2010)

2.2 REVIEW OF GENERAL TEXT


Computer vision is a field in Artificial Intelligence (AI) in which the acquiring, processing,
analyzing and understanding of images are the core tasks. There is a wide variety of
applications of the computer vision domain, e.g. navigation of an autonomous car, face
recognition and image matching. This project will focus on image matching, in particular the
development of a mobile application which allows the user to take a picture and find the most
similar image on his or her mobile device using openCV. In order to achieve this, images
representing the same object need to be identified even if they are viewed from different
viewpoints or if they are partially occluded. Building such an application on a mobile device
might require a different approach due to memory and speed constraints. Image matching is
one of the key areas under research. It has number of applications and uses. Many methods
and algorithms are put forward like, 3D facial recognition etc. Image matching comes under
Biometric identification like iris, retina, finger prints etc. The features of the face are called
biometric identifiers. The biometric identifiers are not easily forged, misplaced or shared
hence access through biometric identifier gives us a better secure way to provide service and
security.

5
2.3 OVERVIEW OF IMAGE MATCHING USING OPENCV
The openCV model (openCV model) originates from the field of natural language processing
and is used to represent a text as an unordered collection of words. By representing
documents as vectors of word frequencies from this unordered collection of words,
documents can be evaluated on similarity. This same model can be applied to the domain of
computer vision by representing images as collections of visual words.
In order to match images, features or region have to be detected for each image. After
all, if two images have a lot of those features or regions in common, they will most likely be
similar. Such a feature or region can be defined as an interesting part of the image. Parts
which are describing for the image, e.g. blobs or corners. These corners and blobs can be
found with feature or region detection algorithms.

Figure 1: The result of blob (left) and corner (right) detection algorithms.

Source: Sivic & Zisserman, (2009) “Image matching on a mobile device”


Two images describing the same scene from different viewpoints should be evaluated as very
similar. Since they describe the same objects and therefore the same regions. In order to
achieve this, regions have to be detected in a viewpoint invariant manner, meaning that a
region has to be detected regardless of the viewing angle. Furthermore, the same regions have
to be detected in both images despite changes in illumination, scale or in case of partial
occlusion. Three methods to detect regions with these properties are Maximally Stable
Extremal Regions (MSER), Harris Corner Detection and Features from Accelerated Segment
Test.

6
CHAPTER THREE

RESEARCH METHODOLOGY AND ANALYSIS OF THE SYSTEM

3.1 RESEARCH METHODOLOGY

Method of data collection refers to the practices and techniques in research used to gather,
process, and manipulate information that can then be used to test ideas and theories about
social life. Types of methodologies include interview, textbooks and internet research. The
main type of method employed in this system is observation on the ways in which message is
been sent and not known may be it delivered or not. The method is achieved through the
following steps:

i. Feasible and effective image matching application is proposed.

ii. Provision of an effective and practical tool for authentication and tamper-
proofing of images taken by webcam was developed.

iii. Webcam is used to capture human face.

iv. OpenCV DLL is used for saving, retrieving and matching of image stored in the
database.

v. The proposed system was developed to suit organization need with the help of the
following programming languages.

1. C#
2. PHP
3. MySQL
4. Wamp version 5.0(server-side)
3.2 ANALYSIS OF THE EXISTING SYSTEM

Image recognition in an organisation or company with so much workers is done in a manual


way, where every workers needs to be recognised through face to face recognition. This
method is very difficult for a very big organisation where there is much workers, to
recognise every workers working under the umbrella will be overwhelming. Another thing
that happens in this manual method is that some workers will be paid twice as their salary

7
because there is no face detector. We are proposed to develop a face detector and image
matching application that will make the work of such organisation easier.

3.3 PROBLEMS OF THE EXISTING SYSTEM

The problem of image recognition has been one of the most prominent areas of
machine vision for about a decade. Current systems have advanced to be fairly accurate in
recognition under constrained scenarios, but extrinsic imaging parameters such as pose,
illumination, and facial expression still cause much difficulty in correct recognition.
i. Lack of good staff recognition
ii. Inability to know present staff in an organization
iii. Double payment for staff

3.4 ANALYSIS OF THE PROPOSED SYSTEM

The purpose of implementing this system is to match Images of different dimensions with
processing in which the input is an image captured from a webcam. OpenCV is a library of
programming functions which will be used for the image processing. It was started as a
research project by Intel. OpenCV contains various tools to solve computer vision problems.
Face authentication is commonly offered as an alternative to passwords for logging into the
system. We can write an efficient authentication application using openCV. This application
needs web camera to capture the face. The captured image is verified with the images stored
in the database of faces. The face recognition involves two phases: Face Detection, where an
input image is searched to find a face, then the image is processed to crop and extracts the
person’s face. OpenCV has face detector called “Haar Cascade classifier”. Given an input
image, which is from the camera, the face detector examines the image location and classifies
it as face or not face. Face Recognition is another phase, where the detected face image is
compared with images in the database of faces. The openCV framework contains the inbuilt
face detector that can work 90-95% on the clear images. It is slightly difficult to detect a face
if a person wearing glasses or an image is blurring.

3.5 ADVANTAGES OF THE NEW SYSTEM OVER THE EXISTING SYSTEM


The advantages of the proposed system over the existing system are as follows:
i. It is easy to use.
ii. It doesn’t consume much time.

8
iii. It is very fast to use.
iv. It doesn’t get bored due to excessive work.

9
CHAPTER FOUR
IMPLEMENTATION OF THE PROPOSED SYSTEM
4.1 DESIGN OF THE SYSTEM

For a design to have good feedbacks, the need for database at the back end of the
design is a requirement that must be in place. Design is the development phase for any
engineered product or system. it is a creative process of making an interactive design to
develop an effective system through proper evaluation and optimization of the design.
Design is the process of applying various techniques and principles for the purpose of
defining a process or a system in sufficient detail to permit its physical realization.
Software design sits at the technical kernel of the software engineering process which
is applied regardless of the development paradigm that is used to satisfy users need. System
design goes through two phases of development: Logical and Physical Design and the
conceptual design of the database.
The logical design of a system describes the content in the physical database while
the physical database itself is the entire database design of a system.
The conceptual view is an intermediary between the logical and the physical
database.

4.1.1 OUTPUT DESIGN

A quality output meets the requirements of the end user and presents the information

clearly. It is used to determine how the information is to be displaced for immediate need and

also the hard copy of the output in the design which serves as the direct source information to

the end user. Efficient and intelligent output design improves the system’s relationship to

help end user in decision-making. Below are the sampled output diagram:

Figure 4.1: Welcome Page


10
Figure 4.2: Staff Record: This is where staff details are displayed

Figure 4.3: About: This is the about (developer) output page

11
Figure 4.4: Admin Page: This is the admin page, a click on any of the icon will

channel the admin to another page

4.1.2 INPUT DESIGN

Input design focuses on controlling the amount of input required, controlling the errors,

avoiding delay, avoiding extra steps and keeping the process simple. The inputs manage

information that is needed for the development of the online tutor. it provides ease of use

with retaining the privacy.

Diagram of the inputs design is as follows

Login

Tools Name Properties

Textbox1 Username Empty

Textbox2 Password Empty

Command Button Login Login

12
Figure 4.5: Login Page: This is where users input their username and password

Add Staff

Tools Name Properties

Textbox1 Fullname Empty

Textbox2 Phone no Empty

Combo Button gender Select

Combo Button State Select

Combo Button Department Select

Combo Button Level Select

Textbox3 Address Empty

Imagebox Image Empty

Command Button Capture Image Capture Image

Command Button Submit Submit

Command Button Clear Clear

13
Figure 4.5: Add Staff: This is where staff record are entered.

Figure 4.6: Capture Staff Image: This is where staff image is captured

14
Figure 4.7: Verify Staff: This is where staff image is Matched.

4.1.3 DATABASE DESIGN

Database Design is the collection or related data in an organized mechanism that has

the capability of storing information. End-user can retrieve stored information in an effective

and efficient manner which has the means of protecting them.

In an Automated Security Lock System, data are handled using WAMP server as the

server-side for the design. The database design is structure using Mysql and PHP linking

codes.

Below is the database design of the system:

login table

S/NO FIELDNAME DATA TYPE LENGHT DESCRIPTION

1 Id Integer 20 It stores Id

2 Username Var_Char 20 It stores

username

15
3 password Var_Char 20 It stores

password

4 Full name Var_Char 20 It stores

Full_name

5 Phone no Var_Char 20 It stores

Phone_no

6 gender Var_Char 20 It stores Gender

7 State Var_Char 20 It stores State

8 Department Var_Char 20 It stores

Department

9 Level Var_Char 20 It stores Level

10 Address Var_Char 20 It stores

Address

11 Image Var_Char 20 It stores Image

Figure 4.8: Username and Password Table Structure: This is where username and password

are stored and retrieved.

16
Figure 4.9: Image Matched Table Structure: This is where staff image matched

are stored and retrieved.

4.2 SYSTEM IMPLEMENTATION

This system is a system used to report on design and implementation of a

Computerized Immunization Information System. This project is done using C# (Clients-

Side) and MYSQL, Wamp Server(Server-side) as back end.

4.2.1 CHOICE OF PROGRAMMING LANGUAGE

The choice of programming language used in the development of the software are

listed below:

5. C#

6. PHP

7. MySQL

8. Wamp version 5.0(server-side)

4.2.2 HARDWARE SUPPORT

The requirement for the implementation of this proposed system are the following

1. Computer system must have at least 1.7 MhZ speed for the processor.

2. 125-512 RAM

3. At least 100GB and above hard disc or hard drive

17
4. At least Pentium III and above board configuration.

4.2.3 SOFTWARE SUPPORT

The software support for this proposed system include training of staffs and users in

order to allow different users to accessed the proposed system.

But to achieve the aims and objectives of the study, there must be a Strong AVG

antivirus to protect against virus attack e.t.c.

4.2.4 IMPLEMENTATION TECHNIQUES USED IN DETAILED

The implementation techniques used in the detailed record of the project is with the used of

parallel approach techniques which allows the existing and the proposed system to work

together concurrently.

4.3 SYSTEM DOCUMENTATION

4.3.1 PROGRAM DOCUMENTATION

Program documentation includes:

1. Installing Wamp server to allows easy communication of the proposed system.

2. Installing C# application

3. Open C# and implement the program

4. Open wamp server local host to implement the database

5. Locate the project by Browsing through the projects using the Local Host

4.3.2 OPERATING THE SYSTEM

Before this project work can be use, it reqiures the user to be oriented by the

programmer, therefore will enable the user to be familiar with the modules contains in the

program and the function of each modules are expected to be explained in details by the

programmer. Before the running of the program, it has to be install on a PC and launched by

the user, then continue all orientated modules.

18
4.3.3 MAINTAINING THE SYSTEM

Maintenance is any activities carried out after the implementation of the new system

to make sure that the system is correctly and constant running. This can be any of the

following types of maintenance.

(a) Corrective maintenance: This is done to correct and defect that discover in the

course of using the new system to keep the system in tune with day to day function.

(b) Adaptive maintenance: This is done to make sure that the system is not obsolete

and adapt to any new systems of technology.

(c) Preventive Maintenance: This is a kind of maintenance adopted for continuous

improvement in new system without waiting for the failure to occur or for the user to

change. This is adopted to prevent the occurrence of failure.

19
CHAPTER FIVE

SUMMARY AND CONCLUSION

5.1 SUMMARY

The results of this opencv showed that the optimum blob number for image processing is 20,
and the optimum threshold value is 3.5. From the results of this study, a developer who is
implementing a mobile application based on Android can set the optimum threshold for an
image processing library. But, the best way for image processing this is not the only.
Therefore, we need to study other factors for improving the performance of image
processing. In the future work, we will study another best value for improving speed and find
factor for improving accuracy of image processing.

5.2 CONCLUSION

In conclusion, image processing is a form of signal processing in which the input is an image
such as a photograph or video frame, the output is an image or set of characteristics related to
image. OpenCV is a library of programming functions mainly used for image processing. It is
freely available on the open source Berkely Software Distribution license. It was started as a
research project by Intel. OpenCV contains various tools to solve computer vision problems.
It contains low level image processing functions and high level algorithms for face detection,
feature matching and tracking

5.3 RECOMMENDATIONS
Efforts have been made to design and develop software that support image
processing using opencv. But there are still areas that may be considered as a further
and important area to improve on, and my suggestion go thus.
i. Online Payment Integration: The payment of staff should be put into
consideration because we are not able to touch the part in this project.
ii. Staff Alerting System: There should be an alert for staff whenever there is
available board meeting, this part need to be considered because we are unable to touch
the part in this project.

20

Vous aimerez peut-être aussi