Project Report Content
Project Report Content
Project Report Content
Chapter 1
Introduction
Road signs are important to ensure smooth traffic flow without bottle necks or
mishaps. Road symbols are the pictorial representations having different necessary
information required to be understood by driver. Road signs in front of thevehicle are
ignored by the drivers and this can lead to catastrophic accidents. The proposed system is a
traffic sign board detection system .An added advantage of the system is that the users can
help by updating the road signs which would be verified and then added into the system.It
is implemented in such a way that it acts as a boon to drivers to make easy decisions.The
objective of this work is to increase the traffic safety by providing a detection system and
improves traffic safety.
Chapter 2
Literature Survey
2.1 A Smart Driver Alert System for Vehicle Traffic using Image
Detection and Recognition Technique
Road signs are important to ensure smooth traffic flow without bottle necks or
mishaps. Road symbols are the pictorial representations having different necessary
information required to be understood by driver. Road signs in front of the vehicle are
ignored by the drivers and this can lead to catastrophic accidents. This paper presents
an overview of the traffic sign board detection and recognition and implements a
procedure to extract the road sign from a natural complex image, processes it and
alerts the driver using voice command It is implemented in such a way that it acts as a
boon to drivers to make easy decisions.
Very often we see that many road accidents take place. This can be due to
driver’s or rider’s ignorance of traffic signals and road signs. Many people die in
these road accides which is a great loss for the family. Android Based signboard
detection is one such approach where the driver gets information about upcoming
hurdle in advance. Also, whenever it detects a pedestrian movement the vehicle stops
and speed reduces in speed limited zones. This approach can help in avoiding
mishaps to a greater extent. At night it is difficult for driver to keep track of
signboards, answer of these issues and problem is the ‘android based signboard
detection system using image and voice alert system’.
Chapter 3
System Study
3.1 Existing System
There exists a number of traffic detection systems. Traffic sign detector is an
existing system.This app detects traffic signs and lights using camera and announces
what was detected.
It also keeps the detection history for further review.But the hurdles such as that
of the crashing of electric posts etc cannot be reported using this.And as a result the road
blocks remains unknown which increases the traffic problems.
In this system, the road signs are recognized and displayed.An added advantage is
the provision by which the users can update the road signs .Firebase storage is used to
store the images of the road signs captured by the user.The system also helps by
providing an option by which the users can alert about the hurdles on the road such as
any blocks etc.
Chapter 4
System Analysis and Design
4.1 Feasibility Study
A feasibility study is an evaluation and analysis of the potential of the proposed
project which is based on extensive investigation and research to give full comfort to the
decisions makers. Feasibility study is a test of system proposed according to its
workability, impact on organization, ability to meet user needs and effective use of
resources. Feasibility studies aim to objectively and rationally uncover the strengths and
weaknesses of an existing business or proposed venture, opportunities and threats as
presented by the environment, the resources required to carry through, and ultimately the
prospects for success. In its simplest terms, the two criteria to judge feasibility are cost
required and value to be attained. As such, a well-designed feasibility study should
provide a historical background of the business or project, description of the product or
service, accounting statements, details of the operations and management, marketing
research and policies, financial data, legal requirements and tax obligations. Generally,
feasibility studies precede technical development and project implementation. During the
study the problem definition is crystallized, as aspects of the problems to be included in
the system are determined. Feasibility study can estimate costs and benefits with greater
accuracy stage. A feasibility study evaluates the project's potential for success; therefore,
the perceived objectivity is an important factor in the credibility to be placed on the study
by potential investors and lending institutions. Four important test of feasibility study are
described below.
This determines whether the proposed system with legal requirements, e.g. a data
processing system must comply with the local Data Protection Acts.
and how it satisfies the requirements identified in the requirements analysis phase of
system development. The operational feasibility assessment focuses on the degree to
which the proposed development projects fits in with the existing business environment
and objectives with regard to development schedule, delivery date, corporate culture,
and existing business processes.
4.3.2 Java
Java is a general-purpose computer-programming language that is concurrent,
class-based, object-oriented, and specifically designed to have as few implementation
dependencies as possible. It is intended to let application developers "write once, run
anywhere" (WORA), meaning that compiled Java code can run on all platforms that
support Java without the need for recompilation. Java applications are typically compiled
to bytecode that can run on any Java virtual machine (JVM) regardless of computer
architecture. As of 2016, Java is one of the most popular programming languages in
use, particularly for client-server web applications, with a reported 9 million
developers. Java was originally developed by James Gosling at Sun Microsystems(which
has since been acquired by Oracle Corporation) and released in 1995 as a core component
of Sun Microsystems' Java platform. The language derives much of
its syntax from C and C++, but it has fewer low-level facilities than either of them.
The latest version is Java 10, released on March 20, 2018, which follows Java
9 after only six months in line with the new release schedule. Java 8 is still supported but
there will be no more security updates for Java 9. Versions earlier than Java 8 are
supported by companies on a commercial basis; e.g. by Oracle back to Java 6 as of
October 2017 (while they still "highly recommend that you uninstall" pre-Java 8 from at
least Windows computers).
4.3.3 Firebase
Firebase is a mobile and web application development platform developed by
Firebase, Inc. in 2011, then acquired by Google in 2014.
Firebase Auth is a service that can authenticate users using only client-side code.
It supports social login providers Facebook, GitHub, Twitter and Google (and Google Play
The database is also accessible through a REST API and bindings for
several JavaScript frameworks such as AngularJS, React, Ember.js and Backbone.js.
The REST API uses the Server-Sent Events protocol, which is an API for creating HTTP
connections for receiving push notifications from a server. Developers using the realtime
database can secure their data by using the company's server-side-enforced security
rules. Cloud Firestore which is Firebase's next generation of the Realtime Database was
released for beta use.
Firebase Storage provides secure file uploads and downloads for Firebase apps,
regardless of network quality. The developer can use it to store images, audio, video, or
other user-generated content. Firebase Storage is backed by Google Cloud Storage.
Chapter 5
Implementation
Chapter 6
Testing and Evaluation
6.1 Testing Criteria and Methods
Testing is the process of executing a program with the intent of finding any errors.
A good test of course has this high probability of finding a yet undiscovered error. A test
is vital to the success of the system. System test makes a logical assumption that if all
parts of the system are correct, then the goal will be successfully achieved. For any
software that is newly developed primarily importance is given to testing of the system. It
is the last opportunity of the developer to detect the possible errors in the software before
handing it over to the customer. Testing is the process by which the developer will
generate a set of test data, which gives the maximum probability of finding all types of
errors that can occur in the software. There are two fundamental properties for a testing
criterion: reliability and validity. A criterion is reliable if all the sets that satisfy the
criterion detect the same error. That is, it is insignificant which of the sets satisfying the
criterion is chosen; every set will detect exactly the same errors. A criterion is valid if for
any error in the program there is some set satisfying the criterion that will reveal the error.
A fundamental theorem of testing is that if a testing criterion is valid and reliable, if a set
satisfying the criterion succeeds, then the program contains no errors.
In integration, testing the modules developed will be joined one by one and its
working is verified for errors and correctness. The data passing between modules and web
pages are checked so that information is send to the customer.
Unit testing is the first step in the testing process and is usually conducted
by the programmer to ensure that a program operates as defined by the user. The
programmer generally creates their own test cases, inputs the data to the program and
verifies the results. Unit testing is essentially for verification of the code produced during
verifies the results. Unit testing is essentially for verification of the code produced during
the coding phase, and hence the goal is to test the internal logic of the modules.
Chapter 7
Conclusion and Future Work
Roadin has been developed with the main objective of increasing the traffic
safety.The different road signs can be detected using this system.Also an added
advantage is the provison of reporting blocks on the roads by which the users can reroute
their travel direction.This would save time as well as make it easier for the user.
This System can be improved by added features like giving a voice alert,or by
providing an option by which the accidents can be reported to the hospital
authorities.Also machine learning can be used in the server side .
Appendix A
Sample Code
ReportFragment.java
package com.example.roadin;
import android.content.pm.PackageManager;
import android.location.Location;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.Fragment;
import android.support.v4.content.ContextCompat;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.google.android.gms.location.FusedLocationProviderClient;
import com.google.android.gms.location.LocationServices;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.text.TextUtils;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import java.util.HashMap;
import java.util.Map;
import java.util.Locale;
/**
* A simple {@link Fragment} subclass.
*/
public class ReportFragment extends Fragment {
public ReportFragment() {
// Required empty public constructor
}
Button submit;
EditText desc1,desc2;
FirebaseDatabase mdatabase;
DatabaseReference ref;
//details details;
String pid;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_report, container, false);
}
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle
savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
// Construct a FusedLocationProviderClient.
mFusedLocationProviderClient =
LocationServices.getFusedLocationProviderClient(this.getActivity());
submit.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
getValues();
//Intent myIntent = new Intent(MainActivity.this,
// NewActivity.class);
//startActivity(myIntent);
}
});
/**
* Handles the result of the request for location permissions.
*/
@Override
public void onRequestPermissionsResult(int requestCode,
@NonNull String permissions[],
@NonNull int[] grantResults) {
mLocationPermissionGranted = false;
switch (requestCode) {
case PERMISSIONS_REQUEST_ACCESS_FINE_LOCATION: {
// If request is cancelled, the result arrays are empty.
if (grantResults.length >0
&& grantResults[0] == PackageManager.
PERMISSION_GRANTED) {
mLocationPermissionGranted = true;
}
}
}
}
Appendix B
Screenshots
1. “Android Based Signboard Detection using Image and Voice Alert System ”,
Sanchita Bilgaiyan, Sherin James, Sneha. S Bhonsle, Shruti Shahdeo, Keshavamurthy
2. “A Smart Driver Alert System for Vehicle Traffic using Image Detection and
Recognition Technique”, Harini S, Abhiram V, Rajath Hegde