📘 Index Table
Section No. Title Page No.
1 Introduction 1
1.1 Purpose 1
1.2 Document Conventions 2
1.3 Intended Audience and Reading Suggestions 3
1.4 Product Scope 4
1.5 References 4
2 Overall Description 5
2.1 Product Perspective 5
2.2 Product Functions 5
2.3 User Classes and Characteristics 6
2.4 Operating Environment 7
2.5 Design and Implementation Constraints 8
2.6 User Documentation 8
2.7 Assumptions and Dependencies 8
3 External Interface Requirements 9
3.1 User Interfaces 9
3.2 Hardware Interfaces 9
3.3 Software Interfaces 10
3.4 Communications Interfaces 10
4 System Features 11
4.1 System Feature 1 11
4.2 System Feature 2 (and so on) 12
5 Other Nonfunctional Requirements 13
5.1 Performance Requirements 13
5.2 Safety Requirements 14
5.3 Security Requirements 14
5.4 Software Quality Attributes 15
5.5 Business Rules 16
6 Other Requirements 17
Chapter 2
Software Requirements Specification
for
AI Resume Builder
Prepared by Madhura kale
AISSMS IOIT, Pune
Mentor-Dr. Sarika Zaware
1. Introduction
Sign language is an essential communication medium for individuals with hearing and
speech impairments, enabling them to express their thoughts, emotions, and needs
effectively. However, the general population's lack of understanding of sign language often
creates a communication barrier, leading to challenges in inclusion and accessibility. This
gap is especially evident in workplaces, educational institutions, and healthcare facilities,
where communication is critical. Traditional methods of bridging this gap, such as
interpreters or manual documentation, are often inefficient, time-consuming, and costly. As
the global population grows and inclusivity becomes a priority, adopting technology-driven
solutions that ensure seamless communication for all becomes increasingly necessary.
Observing the challenges of understanding and interpreting sign language manually, we
have developed an automated system called the "Sign Language Detection System." The
main objective of this project is to create an efficient, reliable, and user-friendly tool that
can recognize and translate sign language gestures into text or speech in real-time. This
system aims to reduce the dependency on manual methods by providing an affordable and
robust solution for sign language recognition. Leveraging advancements in artificial
intelligence, machine learning, and computer vision, the proposed system ensures high
accuracy and quick sign detection. It also offers excellent data security, robust storage, and
backup facilities, ensuring the solution's reliability and scalability. This project aims to
create a more inclusive and accessible society while reducing communication barriers for
the hearing and speech-impaired community.
1.1 Purpose
● The software is designed for the automation of Sign Language Detection and
Translation.
● It maintains two levels of users:
○ Administrator Level
○ User Level
● The software includes:
○ Capturing and analyzing sign language gestures.
○ Translating gestures into text or speech for seamless communication.
○ Providing a real-time interface for gesture recognition and interaction.
1.2 Document Conventions
● SLDS: Sign Language Detection System
● LM: Login Module
● RUM: Registered Users Module
● NUM: Normal Users Module
● AM: Administrator Module
● SM: Server Module
● DB: Database
● DDB: Distributed Database
● CV: Computer Vision
● ML: Machine Learning
● AI: Artificial Intelligence
1.3 Intended Audience
This document is intended for the development team, to design and implement the Sign
Language Detection System (SLDS), and for project managers, to oversee its progress. It is
also directed at marketing staff, to promote the system, and testers, to ensure its
accuracy and reliability. Additionally, documentation writers will use this document to
create user guides and manuals.
The document may also be reviewed by hardware manufacturers, to ensure compatibility
with sensors or cameras, and by providers of machine-learning models, to verify
alignment with system requirements. Shareholders and distributors involved in financing
and distributing the product may use it to understand the system’s objectives. This SRS
ensures each audience clearly understands the goals and technical requirements of the
system.
1.4 Additional information
Marketing staff have to become accustomed to the various
product features to effectively advertise the product.
• System features: Testers need an understanding of the system features to
develop meaningful test cases and give useful feedback to the developers. •
External Interface Requirements: The hardware developers need to know the
requirements of the device they need to build. The marketing staff also needs to
understand the external interface requirements to sell the product by describing
the user-friendly features of the Hospital Management System.
• Non-functional and Functional Requirements: The hardware developers.
2. Overall Description
Goals of the Proposed System:
1. Planned Approach to Operations:
The system will introduce an organized workflow to ensure smooth and efficient
handling of sign language detection tasks. Data, such as gesture recognition patterns
and user interactions, will be properly stored in databases, allowing quick retrieval
and analysis.
2. Accuracy:
The proposed system will achieve high accuracy in detecting and translating sign
language gestures into text or speech, ensuring minimal errors during
communication.
3. Reliability:
The system’s reliability will be ensured through robust algorithms, secure data
storage, and consistent performance in real-time scenarios.
4. No Redundancy:
The system will eliminate redundancy in gesture data storage and recognition
processes, ensuring efficient usage of storage and maintaining consistency across all
records.
5. Immediate Information Retrieval:
The system will provide instant retrieval of data, such as previously detected signs,
system logs, and user profiles, to enhance user experience and efficiency.
6. Immediate Information Storage:
The system will enable real-time storage of gestures and their interpretations,
ensuring seamless operation without delays.
7. Ease of Use:
The system will feature a user-friendly interface that allows users to operate it
effortlessly, making it accessible for developers, users, and administrators.
Background:
Sign language is a vital communication medium for individuals with hearing or speech
impairments. However, the lack of widespread knowledge about sign language creates
communication barriers in daily life.
1. Sign Language Detection System Provides:
○ Real-time detection and translation of gestures into text or speech.
○ A platform for seamless communication between sign language users and
non-signers.
○ A repository for storing and managing gesture data for future reference or
training purposes.
2. Operational Activities in the System:
○ Capturing and analyzing sign language gestures through cameras or sensors.
○ Processing and translating gestures into text or speech using machine
learning algorithms.
○ Managing user profiles and logs for administrators and users.
○ Storing gesture data and translations in a secure and structured database.
○ Generating reports on system performance and usage statistics.
3. Current Manual Workflow Limitations:
○ Manual Communication: Sign language users must rely on interpreters or
written communication, which is time-consuming and inaccessible in many
scenarios.
○ Lack of Documentation: There is no systematic storage or analysis of
gestures, leading to inefficiencies in communication and learning.
○ High Dependency: Users rely heavily on human intermediaries, limiting
independence in communication.
2.1 Product Perspective
The Sign Language Detection System (SLDS) is developed using advanced technologies,
including computer vision, machine learning, and natural language processing. It integrates
various tools for:
● Front-End: User interface for interaction and visualization.
● Back-End: Data processing and storage.
● Hardware Integration: Cameras or sensors for gesture capture and recognition.
● Machine Learning Models: Algorithms for detecting and translating gestures with
high accuracy.
1. FRONT END:
The front end is implemented using the following technologies:
JSP (Java Server Page):
● JSP is used to design the interface for the system.
● It allows the creation of dynamic web pages by combining HTML or XHTML with
embedded JSP actions and commands.
● Through JSP, input from users can be collected and processed efficiently.
HTML (HyperText Markup Language):
● HTML is utilized for structuring content on web pages.
● It provides the foundational syntax for creating text documents on the web.
CSS (Cascading Style Sheets):
● CSS is used for styling and formatting the appearance of HTML elements.
● It ensures consistency in design and provides an aesthetic layout for the application.
JavaScript:
● JavaScript is used to add interactivity to the web pages.
● It enables client-side scripting for user interactions, dynamic content updates, and
asynchronous communication.
2. BACK END:
The back end is implemented using the following components:
Python:
● The core logic for gesture detection and recognition is implemented in Python.
● Libraries like OpenCV, TensorFlow, and MediaPipe are used for image processing and
model training.
MySQL:
● MySQL is used as the database management system.
● It stores gesture data, user profiles, and system logs securely in relational tables.
Text-to-Speech Conversion (pyttsx3):
● Pyttsx3 is used for converting recognized text into speech.
● It ensures that the system provides audio output for translated gestures.
3. Modules:
1. Data Acquisition:
● Vision-based methods are used to capture hand gestures using a camera.
● MediaPipe library detects hand landmarks from frames.
● This method is robust against varying backgrounds and lighting conditions.
2. Data Pre-processing and Feature Extraction:
● Images are processed using OpenCV for noise reduction and conversion to grayscale.
● MediaPipe landmarks are extracted, reducing dependency on environmental factors.
3. Gesture Classification:
● A Convolutional Neural Network (CNN) is trained to classify gestures.
● Similar alphabets are grouped into 8 classes to improve accuracy.
● Achieved up to 97% accuracy, with potential for 99% in ideal conditions.
4. Text-to-Speech Translation:
● Recognized gestures are converted to text and then to speech using the pyttsx3
library.
4. System Functions:
Login Facility:
● Only authorized users can access the system.
● Roles like "Administrator" and "User" determine access levels.
Gesture Detection and Translation:
● Gestures are translated into text or speech in real time.
● Supports alphabets from A-Z and forms complete words through sequential
gestures.
Database Management:
● Stores gesture data, user profiles, and logs securely in MySQL.
● Facilitates quick retrieval and updates.
5. User Classes and Characteristics:
1. Administrator:
● Manages user accounts and oversees system functionality.
● Accesses system logs and usage statistics.
2. End User:
● Interacts with the system for gesture detection and translation.
● Limited access to system settings and data.
6. Hardware and Software Requirements:
Hardware:
● Camera/Webcam
● High-speed processor
Software:
● Operating System: Windows 10 or later
● Programming Language: Python 3.9
● Libraries: OpenCV, TensorFlow, MediaPipe, pyttsx3
● Database: MySQL
● IDE: PyCharm
3. External Interface Requirements
3.1 User Interfaces (GUI Design)
Input from the user will primarily be through hand gestures, keyboard input, and mouse
clicks. The user will navigate through the software by:
● Performing gestures: Gestures will be recognized in real-time to facilitate seamless
interaction.
● Clicking on icons: Icons will represent various functions such as training, profile
management, and system settings.
● Navigating links: Hyperlinks or buttons will provide easy access to different
modules and features.
The interface will:
● Provide visual feedback for recognized gestures to confirm actions.
● Include accessible controls for users who prefer non-gesture inputs, such as
keyboards or mice.
● Be designed with user-centric considerations, offering a clean and intuitive layout
that adapts to user preferences.
This design ensures a balance between gesture-based interaction and traditional input
methods, catering to diverse user needs.
The entire project mainly consists of 7 modules, which are:
1. Admin module
2. User module (deaf and dumb individuals)
3. Translator module
4. Training module
5. Gesture Recognition module
6. Text-to-Speech module
7. Reports and Analytics module
4.1.1 Description and Priority:
1. User Module (Deaf and Dumb Individuals)
This module is the primary interface for users who communicate using sign language.
● Users can use gestures to communicate.
● The system identifies gestures and converts them into text and audio.
● Provides a seamless user experience by eliminating the need for background
constraints or lighting conditions.
● Ensures privacy and customization for users.
2. Translator Module
This module bridges the communication gap between deaf/dumb individuals and the
general population.
● Translates sign language gestures into text and speech for others to understand.
● Provides reverse functionality by converting spoken or written language into signs
for the user.
3. Training Module
This module is responsible for improving the gesture recognition model.
● Allows users to train the system with additional gestures.
● Utilizes MediaPipe and CNN-based approaches to optimize gesture recognition
accuracy.
● Enhances the system’s ability to handle diverse hand orientations, skin tones, and
varying environments.
4. Gesture Recognition Module
This module handles real-time gesture detection and interpretation.
● Detects hand gestures using MediaPipe and OpenCV libraries.
● Process landmarks to generate skeleton-based representations of gestures.
● Leverages CNN for classification into one of the predefined gesture classes.
● Ensures high accuracy even in challenging environments, such as poor lighting or
cluttered backgrounds.
5. Text-to-Speech Module
This module converts recognized gestures into audio output.
● Uses Pyttsx3 library for speech synthesis.
● Provides real-time speech output corresponding to detected gestures.
● Ensures accessibility by supporting multiple languages and voice options.
6. Reports and Analytics Module
This module tracks system performance and user interaction data.
● Provides reports on gesture recognition accuracy.
● Tracks usage statistics to identify areas for improvement.
● Enables administrators to monitor system logs and performance metrics.
4.1.2 Actions
1. Admin Module:
● Manage user, translator, and system accounts.
● Monitor system performance, including gesture recognition accuracy.
● Generate analytics reports on user interaction and system usage.
● Update gesture database with newly trained gestures.
2. User Module (Deaf and Dumb Individuals):
● Perform gestures to communicate.
● View translations of gestures into text and audio.
● Train the system with custom gestures.
● Manage personal profiles, including preferred languages and accessibility settings.
3. Translator Module:
● Translate gestures into text/audio for general users.
● Provide real-time assistance during conversations.
● Manage vocabulary and phrases for specialized contexts (e.g., medical, legal).
4. Training Module:
● Upload training data (images/videos of gestures).
● Update the model with newly trained gestures.
● Validate system accuracy after training.
5. Gesture Recognition Module:
● Real-time detection and classification of hand gestures.
● Generate visual feedback for detected gestures.
● Handle gestures under diverse environmental conditions (lighting, background, etc.).
6. Text-to-Speech Module:
● Convert recognized gestures into audio in real time.
● Customize audio output settings (e.g., language, voice tone).
● Provide playback options for repeated communication.
7. Reports and Analytics Module:
● Generate system usage reports for administrators.
● Provide detailed analytics on gesture recognition accuracy and user feedback.
● Maintain logs of user interactions and system updates.
4.1.3 Functional Requirements
The software provides an intuitive graphical interface for users, enabling them to perform
tasks related to sign language detection and translation. Key functionalities include:
● Allowing users to capture and process real-time hand gestures through a webcam or
external device.
● Facilitating the translation of recognized sign language gestures into text or speech
output.
● Providing an option to train the model with custom signs for extended functionality.
● Displaying detailed logs of detected signs and their corresponding text/speech
outputs.
5. Other Non-functional Requirements
5.1 Performance Requirements
The performance of the software is optimized when the following actions are performed
regularly:
● System Calibration: Ensuring the camera and sensors are properly aligned and
functional.
● Model Updates: Periodically update the sign recognition model to enhance accuracy
and include new signs.
● System Resource Management: Maintaining sufficient computational resources,
such as GPU/CPU, for real-time detection.
5.2 Safety Requirements
To ensure the system minimizes errors and user inconvenience, the following safety
features are implemented:
● Confirmation prompts before saving new gesture data or overwriting existing data.
● Fail-safe mechanisms to handle input device failures, such as fallback notifications or
error logs.
● Real-time alerts for poor lighting or incorrect hand placement to assist users in
optimal operation.
5.3 Security Requirements
The software implements robust security measures, including:
● Secure access through unique user credentials for administrators and operators.
● Encrypted storage of custom training data to prevent unauthorized access or
tampering.
● Controlled access for model training, restricting changes to authorized personnel
only.
5.4 Software Quality Attributes
The system adheres to high-quality standards with the following attributes:
● Accuracy: Achieves high detection rates for various signs, ensuring reliable
translations.
● User-friendly Interface: Designed for users with varying levels of technical
expertise.
● Compatibility: Supports multiple devices, including laptops, desktop computers, and
mobile platforms.
● Scalability: Allows the addition of new gestures and functionalities without
compromising performance.
5.5 Project Documentation
This project involves developing a sign language detection system with the goal of
bridging communication gaps. The documentation includes:
● Automated real-time gesture recognition using computer vision and machine
learning techniques.
● Translation of detected signs into meaningful text or speech outputs.
● Detailed descriptions of tools, technologies, and methods used in developing the
system.
● Step-by-step processes from initial analysis to system testing and deployment.
The project emphasizes providing an efficient, user-friendly, and accurate solution for
recognizing and translating sign language gestures.
5.6 User Documentation
The system is designed with usability in mind, providing comprehensive user
documentation:
● Operators are given login credentials for secure access and personalized
configurations.
● A guide to setting up the system, including camera calibration and environmental
requirements (e.g., lighting).
● Instructions for training the system to recognize additional custom gestures.
● FAQs and troubleshooting tips for common issues like inaccurate detection or device
connectivity problems.
This software is developed using Python with frameworks like TensorFlow/Keras for
model implementation and OpenCV for real-time gesture capture, ensuring high
performance and scalability. The backend database is implemented using SQLite or similar
lightweight options, and the frontend is designed using Tkinter/Flask to deliver an
intuitive and responsive user interface.
6. Other Requirements
The Sign Language Detection System should have a degraded mode, enabling it to operate
independently if the central server fails. In this mode, the system will continue core
functions like gesture detection but with limited features. Error recognition mechanisms
will be integrated to handle anomalies, such as misinterpreted gestures or hardware issues.
When an error occurs, the system will notify the user and take corrective actions, like
prompting the user to repeat gestures. This ensures that critical functions continue
smoothly, preventing catastrophic failures, such as data loss or system crashes, and
maintaining stability through redundancy and real-time monitoring.
Appendix A: Terminology/Glossary/Definitions List
1. Sign Language Recognition (SLR): The process of using computer vision and
machine learning to identify and interpret hand gestures representing sign language.
2. Gesture: A specific movement or position of the hands and arms that conveys a
particular meaning in sign language.
3. Real-Time Processing: The system's ability to process and interpret gestures as they
are performed without noticeable delay.
4. Translation: Converting recognized gestures into text or speech for communication
purposes.
5. Custom Sign Training: The process of adding new gestures to the system’s database
for recognition.
6. Degraded Mode: A fallback mode where the system operates with limited
functionality, such as offline gesture recognition without access to cloud-based
resources.
7. Model Training: The process of teaching the machine learning model to recognize
specific gestures by providing labeled datasets.
8. Data Augmentation: Enhancing training data by artificially creating variations (e.g.,
changing lighting or angles) to improve model accuracy.
9. Bounding Box: A rectangular frame drawn around detected hands or gestures for
tracking and recognition.
10. Confidence Score: A numerical value indicating the system's certainty in recognizing
a gesture.
11. Classifier: A machine learning model component that categorizes input data (e.g.,
gestures) into predefined labels.
12. Latency: The time delay between the input gesture and its detection/translation
output.
13. User Profile: Individual settings or configurations for system usage, such as
preferred language or custom gestures.
14. Error Code: A predefined code representing specific system errors, helping users
identify and troubleshoot issues.
15. Hand Landmark Detection: Identifying key points on the hands (e.g., fingertips,
knuckles) for accurate gesture recognition.
16. Preprocessing: Preparing input data (e.g., resizing, normalizing images) for the
machine learning model.
17. Output Modes: The formats in which translations are presented, such as text
displayed on the screen or synthesized speech.
18. Offline Mode: The system’s capability to function without an active internet
connection, relying on locally stored resources.
19. Lighting Sensitivity: The system's dependency on adequate lighting for accurate
gesture recognition.
20. Gesture Library: A collection of predefined gestures the system can recognize and
interpret.