Software Requirements Specification Version 1.1 Project Title: Team ID: Project Guide: College: Team Members: Offline Writer Recognition using Neural Networks EGURU10698 M.V. Raghnunadh National Institute of Technology, Warangal Dinesh Gurumurthy dineshgurumurthy@gmail.com 1. Introduction The purpose of this section is provide a an overview of the OWR(Offline writer Recognition ) Software version 1.1. 1.1. Purpose This document is the software Requirements Specifications for OWR 1.1. This describes the functions and performance requirements of the software. This project makes use of powerful image processing techniques and neural networks (radial Basis and Back Propagation). 1.2. Document Conventions Throughout this document, the following conventions have been used: - Font: - Times New Roman Size 16 for Main Headings Size 14 for Sub Headings Size 12 for rest of the document 1.3. Intended Audience and Reading Suggestions This software is mainly intended for use in forensic department and banks. In forensic it is required to authorize the handwriting from the database of writers. Here it is required to perform one to many searches. In banks instead of signature, we can use handwriting for recognition. It is very easy to forge signature but handwriting is characteristic to a person.
1.4. Scope of the Development Project There is a lot of scope for further development in this project. Because of the features and algorithm used for neural networks I claim that this software can be used for database up to 50 writers with accuracy more than 80 %. The accuracy depends on the number of features used and type of the features used. Here we have used both statistical and geometrical features at character level. A better accuracy can be obtained if we can use more features both character and word level. Further more, neural network algorithms used here are not of incremental learning type, so if you want to add a new user, you will have to train the whole system again. Here we have applied these methods only to English language; the methods and features may differ for other Indian languages. 1.5. Definitions, Acronyms, and Abbreviations: Neural Networks: An Artificial Neural Network (ANN) is an information processing paradigm that is inspired by the way biological nervous systems, such as the brain, process information. Off-line Writer Recognition: The identification of a person on the basis of scanned images of handwriting. Off-line recognition involves analysis of the spatio-luminance of an image. On-line Writer Recognition: On-line recognition refers to methods and technique dealing with the automatic processing of a message as it is written using a digitizer or an instrumented stylus that captures information about the pen tip, generally its position, velocity, or acceleration as a function of time. 1.6. References For complete list of references please refer to the attached report. 1. Catalin I. Tomai, Bin Zhang and Sargur N. Srihari Discriminatory Power of Handwritten Words for Writer Recognition Proceedings of the 17th International Conference on Pattern Recognition (ICPR 04) 2. Marius Bulacu, and Lambert Schomaker Text-Independent Writer Identification and Verification Using Textural and Allographic Features IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 4, APRIL 2007
3. R. Plamondon and S.N. Srihari, Online and Offline Handwriting Recognition: A Comprehensive Survey, IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 22, no. 1, Jan. 2000. 1.7. Overview of Document Till now, we have given brief introduction to OWR 1.1. The rest of the document aims to give some details in to system, and some constraints of it. 2. Overall Description 2.1. Product Perspective OWR is first of its kind and surely first open source attempt to recognize the writer based on his writing. The aim of the project would to develop a system which can be used successfully at large organizations such as banks and even in forensic department. 2.2. Product Functions The major function of OWR is to recognize a writer from the pool of writer. Person authentication is very important at many organizations; this project may be used in such places. Person identification is also very important in forensic department. 2.3. User Classes and Characteristics Large Organizations: Once completely developed, the system can be used in forensic department and in banks.
Academic Organizations: University and Students are expected to contribute to a large class of users of this system to get the understanding of major components used in the program like image processing techniques and neural networks. 2.4. Operating Environment The program has been developed using only some basic c++ header files. If the playing of wav files is removed, the program can be run even on windows by compiling with a gcc compatible complier (example Dev-cpp). The program doesn t have any gui, user is asked to bare with it as development of gui is underway. 2.5. Design and Implementation Constraints The system has been successfully tested for 10 writers. A database of 16 writers has been collected. Due to lack to time, the system has been not tested on Languages other than English. 2.6. User Documentation To assist the user in using program a lot of instructions have been given for each menu, which would be sufficient for general use. There is an attached report for knowing various methods and algorithms used in program; you may refer to it for further details. 2.7. Assumptions and Dependencies The images are assumed to be in bmp format, this is generally so for a scanned image. The writer recognition is based on the character level features rather than on word level features. Small 2.8. Overview of Data Requirements Every new writer has to register himself by writing some words. We are selected some words, which contain more of the varying character which show inter writer variability. For collecting database, words are chosen such that they contain more number of highly varying letters (inter writer variations). 2.9. General Constraints, Assumptions, Dependencies, Guidelines The system has to be trained before usage. Once system is trained, before exiting you are required to save the system, so the system loaded for further use.
2.10. User View of Product Use Generally there would be one in charge who operating the system and tell whether a particular person is authenticated or not. Not all of the users need to know to use the system. 3.0. External Interface Requirements User Interfaces When the program is run, the screen looks as below. From there on, you will have to select options to proceed further. Each option takes you to the corresponding menu, where you will be given further instructions how to proceed, by taking appropriate inputs from the user. 3.2. Hardware Interfaces A good scanner is required so that the written samples can be scanned and given as input the system. 3.3. Software Interfaces Some image processing software such as gimp may be used to convert the images which are not bmp format to bmp images so that they become readable by the program. 3.4. Communications Interfaces
4. System Features There are two major things which are used in the program. Image Processing Neural Networks. Given, below is the some details regarding each of them. Image Processing: The system makes use of extensive image processing techniques in spatial domain. Here we do not details in each of the image processing techniques but some of their outputs. Input character After Zooming proportionally four times After thersholding at value of 200 Thinnning Operation
Boundary detection using a variation of Laplacian operation Neural Networks: Neural networks are used for writer identification. Two types of neural networks algorithms are used. Back Propagation algorithm Radial Basis algorithm For details of the algorithms please refer to the attached report. 5. Other Nonfunctional Requirements... 5.1. Performance Requirements The size of character inputs for writer recognition is assumed to be less than 100x100, which is generally the case. This assumption is not of much concern for the users. If large images are used, the system gets only a little slower. 5.2. Safety Requirements Once the system is closed, the trained network is lost, as it makes use of pointers. So, please save the system before closing it. 5.3. Security Requirements 5.4. Software Quality Attributes 5.5. Business Rules 5.6. Special User Requirements 5.6.2. Data Migration
5.6.3. Data retention For system that is trained, the only data that is required to be retained is the weights of the neural network. They can be saved by using save option. Any system is defined by those weights. 5.6.4. User Training Before the system is ready for use, the database of writers has to be collected and system has to be trained, so that it can be used for writer identification. 5.6.5. Installation The program doesn t require any special installation, the program has to be complied and you can directly run the executable. 6. Other Requirements