Authors: Prof. Deepika P. Patil, Girija Varma, Shweta Poojary, Shraddha Sawant, Aditya Sharma
Certificate: View Certificate
The use of technology has grown tremendously within the few years it has made it easier to have access to advanced printing equipment in the industry which resulted in color printing of currencies to produce counterfeit notes across the country. To eliminate such unethical activities of printing counterfeit currency it is mandatory to make a system that detects the fake currency, In systems such as a money exchanger for example ATMs and vending machines, counterfeit currency notes must be detected beforehand exchanging process takes place. In the past, there have been similar systems developed based on methods such as image processing techniques that are done on the Matlab platform and other such platforms these methods possess some limitations including being less efficient and time-consuming. Our system is designed to eliminate all of the above problems through the use of deep learning techniques by detecting the features of currencies and determining whether its fake with a great accuracy rate. our proposed system verifies the Indian currency notes using Deep learning, deep learning helps in extracting meaningful information from the dataset fed into the machine using a set of methods to perform the classification of images. Our project makes use of the deep learning framework TensorFlow and its high-level API Keras which simplifies the creation of the model making it easier to achieve a less time-consuming and accurate model.
Detection of currencies has been important in different places for retailing, banking, and money exchange. Counterfeit notes are quite hard to differentiate if an individual is not aware of the different features available on the notes, to make it easier to tell the difference between real and fake notes we can use machines to help with the recognition .with use of different image processing and recognition techniques we can detect notes easily in real-time. For a few years, the recognition of the currency is done using image processing and since then many new ways to detect currencies have been developed .image processing uses the security features of the note to determine the way to recognize the images. However, this technique involves some drawbacks as the detection efficiency is less and image processing requires feature extraction which is a challenging task along with possible low accuracy levels that are achieved. The systems developed using image processing technique which uses Matlab may be expensive due to which it will be difficult to implement and made available for local use in different places and this system ends up not being useful for everyday use. To overcome these drawbacks we are using deep learning which is effective and has higher accuracy levels due to its multilayer neural networks. Deep learning systems can provide low-cost real-time applications. Our system is designed to check the authenticity of the currency the proposed system has been trained 10 rupee notes,20 rupee notes and 50 rupee notes of both kinds real and fake. The model can be made more accurate by training on actual fake notes, here we have taken images of fake childrens banknotes.
The traditional techniques used for image classification are part of the field of artificial intelligence (AI) formally called machine learning. Machine learning includes a feature extraction module that helps extract different characteristics which include edges, textures, etc., and a classification module that classify primarily based totally at the features extracted. The main limitation of machine learning is while separating, it can only extract a certain set of features on images and is unable to extract differentiating features from the training set of data. This disadvantage is rectified by using deep learning techniques. . Deep learning is a neural network consisting of multiple layers The traditional techniques can learn multiple images as a dataset. Deep learning is to estimate the weights of each layer through a back propagation algorithm. The processing effect of different layers is different. Although the process is much more complicated, it has been successfully applied to computer vision and image processing, supervised learning (SL,) and unsupervised learning (UL) are all associated closely.
B. Deep Neural Network (DNN)
A Deep Neural Network (DNN) is a hierarchical classifier, consisting of a convolutional layer and a max-pooling layer. Deep Neural Network is more complicated than a simple neural network. Deep Neural Network algorithms are used for the recognition of sounds and voice commands, it can make predictions, possess some thinking ability, and do analysis which is quite similar to the functions of a human brain. There are different DNN types specifically known as ANN-Artificial neural network, CNN-Convolution neural network, and RNN- Recurrent neural network ,they are used for different functions. The input of each layer is the output of the previous layer, the pixels of the input image are mapped to the fully connected layer .DNN uses a large number of data sets to extract deeper layers which makes it a good extractor. DNN follows unsupervised learning which makes it effective when there are large data sets that are being trained DNN has complex relationships between the different layers, especially the input and output layers.
C. Convolution Neural Network (CNN)
A convolutional neural network is a class of deep learning and has a network architecture consisting of tens and hundreds of layers to extract the features from an image. It learns directly from the data that is fed into the machine eliminating the need for manual feature extraction. Being the subset of DNN, CNNs are particularly useful for finding patterns in images which helps in recognizing the objects, faces, and scenes in the given image. They can be quite effective for classifying non-image data such as audio, time series, and signal data . A convolutional neural network can have tens or hundreds of layers that each learns to detect different features of an image .
II. LITERATURE SURVEY
In this paper the author states various convolution neural network-based currency detection techniques, it describes dif- ferent methods of identifying currencies, the most efficient working method is the preprocessing of the images that the author has used in their proposed system. The concept of trans- fer learning is used in this paper, the most popular method of the deep neural network at The time Alex net is being adopted in this system . Another literature approach uses the feature extractions of the Indian currency to detect the currencies it uses image processing using MATLAB. the Implementation of the system requires the acquisition of the images via a simple camera which is then used to extract the security features which are identification marks, a latent image which is the vertical band on the currencies, micro lettering, and flurocence . This paper mentions a deep learning-based method for the identification of denominations of Indian Currency Rupee notes. A classification framework is implemented using the concept of transfer learning. Here a large convolution neural network pre-trained on millions of natural images is employed for the classification of images from new classes. A pre-trained MobileNet model is trained for a few epochs upon a portion of the dataset to achieve an agreeable accuracy upon validation subset . The purpose is to design a tool that can be used to detect the authenticity and nominal value of banknotes. This tool uses a TCS3200-DB color sensor to detect the color of banknotes, and ultraviolet sensors to detect the authenticity of money. Then the microcontroller is converted into RGB data and issued in the form of sound. The type of research used is the type of qualitative research with experimental methods and using Black Box testing techniques. The result of this study is the system can recognize authenticity and nominal money. So that makes it easier for users, especially blind people in buying and selling transactions in order not to change money . In this paper, using the image processing techniques the recognition of fake Indian currency notes is done. For the image processing technique image acquisition is done and then the pre-processing to the image is applied. In pre-processing crop, smooth and adjust then convert the image into grey colour after conversion apply the image segmentation then extract features and reduce, finally comparing image .
A. Data Collection
We collected data through the mobile camera, the collected data is the Indian currency of 10 rupees,20 rupees,50 rupees, and 100 rupees. The currencies collected were of both kinds fake and real. For each class, there were approximately 50 images of each currency collected from the front and back of the currency which were taken through the camera. The total number of images collected throught the mobile camera were around 327. There are a few things that should be kept in check while collected, the images taken should be clear, they should be placed in good lighting, and should be positioned in such a way that they should be crystal clear and at a good distance. The acquired images were captured from different viewpoints to get good training results when used in real- time. This model is designed to detect the front side and backside of the currency when it is placed in front of the camera. The currencies have various sets of security features that when trained will be useful to recognize the difference between different images. The images are captured from a 16MP camera and each of the images is of size 2Mb, with around 4500*2700 dimensions.
B. Data Resizing and Augmentation
After collecting the images from the camera the images are formed into groups of 8 which are 10,20,50 accordingly, these images are of dimensions 4K*2.5K which quite difficult to train and will consume a lot of time and CPU power training. Resizing of I get to 2K*1K dimensions which carry out training faster as we will be feeding the training model thousands of images at once. The resize ng of the images is done using the python programming language by importing the CV2 Opencv(Open Source Computer Vision Library) is a python library for computer vision. Data augmentation is done in Jupyter notebook using python language by importing machine learning and deep learning libraries, Tensorflow and Keras. Resized images are then augmented for the production of images in different angles and shapes. Data augmentation is done to achieve multiple samples of an image which will be flipped rotated at different angles so that the training is improved, accurate, and faster.We need to import the library from keras pre- processing known as ”ImageDataGenerator” to apply the rescaling factor to generate multiple images and a large number of images are produced by the end of this process. By producing thousands of images the robustness of the system can be improved and training of the images will develop more accurate results once trained.
C. Training the Dataset
Classification is a systematic arrangement of groups and categories based on their features. Image classification came into existence for decreasing the gap between computer vision and human vision by training the computer with the data. The image classification is achieved by differentiating the image into the prescribed category based on the content of the vision . Before training the model the data is trained before it can be classified in a different set of defined classes. Training of the data is done using the Tensorflow image classification which will train the data to be recognized in various classes of images in this model we have classified the images into 8 classes of Indian currencies. Each class contains thousands of images. Our system mainly focuses on the image classification aspect of deep learning primarily used to recognize currencies done using the Keras library. The classes have to be defined in the tool and data is fed into the classes, the data that was generated by augmenting is now used here. after gathering the data it has to be trained, including different parameters such as learning rate, epochs, and batch size. Training is done by Tensorflow. The augmentation and training of the images were done using a computer with specifications of Intel(R) Core(TM) i5-8250U CPU @1.60GHz. During the training of the data certain parameters are set to carry out the training. While training we define the batch size which is the number of training samples that are passed to the network at once, next step is to select the batch size number of epochs and learning rate we opted for the Batch size of 16 and the learning rate of 0.001. The learning rate is a configurable hyperparameter used in the training of neural networks that has a small positive value, often in the range between 0.0 and 1.0.The learning rate(it is the speed at which the learning is aquired) can be affected by the factors such as the complexity of the task, interference from environmental conditions, interference from previously learned material, the meaningfulness of the material etc. . we are training the model for 50 epochs which are the iterations over the entire dataset provided for the training. After the training the model a keras.h5 model is created which is used as the model for counterfeit currency detection.
D. WebPage for Currency Detection
The model created for the detection of currency using the deep learning method can be used for many applications for banking systems, and money exchanging systems and can be deployed as n application. For the webpage frameworks such as python and flask, a web framework is written in python it is used to build reliable web applications in a simple way, development of the routing page is done using Visual studio with html as the frontend and flask serving as the backend to predict the results.Keras.h5 model is integrated with the web page to carry out the recognition of the currencies. For our system there is a GUI accessible for counterfeit currency detection on a web page,it can be accessed on a computer or a mobile phone. It has a real-time video feed that allows you to capture the image of the currency by placing it in front of the camera the user can then capture the image and it is stored in a file on the computer or laptop where the system is present. The image can then be uploaded and by clicking the predict button the user can check the authenticity of the currency being fake or real along with the accuracy of the prediction after predicting the confidence score of the given image will be displayed on the screen.
We trained the model from the acquired datasets which consisted of approximately 1000 images of each denomination, these images were trained and a different set of testing images were kept aside for the testing purpose in the ratio of 80:20. During testing the images we concluded that the best results were shown when the images were positioned up close to the camera and acquired a confidence score of around 80%. The accuracy of the system upon training the model multiple times shows the progression in improving the results and its accuracy percentage but it has to be kept in consideration that after a certain number of times there is the possibility of the model providing a bad prediction ratio at a certain loss value.
An open-source web-based tool from google to train our currency detection model.
V. FUTURE WORK
In future developments, we will add the real data sets for fake currencies and make larger data sets to ensure the accu- racy rate of the system is as high as possible. Image dataset of four banknote denominations is prepared that is resized and augmented for further training of real-bank note images acquired in different viewpoints and lighting conditions via smartphone camera. In the future, the data set can be inclusive of all Indian denominations to fulfill users requirements. To achieve higher levels of accuracy pre-trained model can be used in the future which will be based on transfer learning to extract deeper features of the currencies to make it more efficient.
This system is cost-effective as we are using an open- source machine learning platform called TensorFlow and
This system mainly focuses on the image classification aspect of deep learning primarily used to recognize currencies using Tensorflow and Keras library. This proposed system is a counterfeit currency recognition system that has a GUI for the users to interact with to capture the images of the currency and predict if the currency is real or not. The detection of the currency is done within seconds and the recognition is done easily. The system possesses an overall good accuracy level in terms of detecting the currency from real to fake.
 M. Hasanuzzaman, X. Yang and Y. Tian, ”Robust and Effec- tive Component-Based Banknote Recognition for the Blind,” in IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applica- tions and Reviews), vol. 42, no. 6, pp. 1021-1030, Nov. 2012, doi: 10.1109/TSMCC.2011.2178120.  Automatic Recognition of Fake Indian Currency Note Sonali R. Da- rade1, Prof. G.R.Gidveer2 International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395 -0056 Volume: 03 Issue: 12 —Dec -2016  Image classification using Deep learning Manoj krishna1, Neelima2, Harshali3, Venu Gopala Rao.  International Journal of Engineering and Advanced Technology (IJEAT) ISSN: 2249 8958, Volume-9 Issue-1S5, December, 2019 Real Time Fake Currency Note Detection using Deep Learning M. Laavanya, V.  Vijayaraghavan  Deep Learning with MATLAB matlab expo2018.  Introducing Deep Learning with the MATLAB Deep Learning E-Book provided by the mathworks.  H. Lee, R. Grosse, R. Ranganath, and A.Y. Ng. Convolutional deep belief networks for scalable unsupervised learning of hierarchical repre- sentations. In Proceedings of the 26th Annual International Conference on Machine Learning, ACM,2009  Indian Banknote Recognition using Convolution Neural Network: Inde- pendent Scholar 2C-126, Vasundhara Ghaziabad, Uttar Pradesh  Maas, A. L., Hannun, A. Y., & Ng, A. Y. (2013). Rectifier nonlinearities improve neural network acoustic models. In Proc. ICML (Vol. 30, No. 1, p. 3).  Convolutional neural network.https://www.mathworks.com/solutions/deep- learning/convolutional-neural-network.htmlhowitworks. Accessed 2 Feb 2020 https://www.mathworks.com/discovery/convolutional-neural- network-matlab.htmlhowitworks  Tele Gouri Sanjay et.al; International Journal of Advance Research, Ideas and Innovations in Technology 2018,ISSN: 2454-132X Impact factor: 4.295(Volume 4, Issue 2) Detection of Fake Indian Currency Gouri Sanjay, Akshay Prakash Kathalkar, Sneha Mahakalkar,Bharat Sahoo, Vaishnavi Dhamane.  Saha, S.: A comprehensive guide to convolutional neural networks the ELI5 way, 15 December 2018.  JOURNAL OF INFORMATION TECHNOLOGY AND ITS UTI- LIZATION, VOLUME 1, ISSUE 1, JUNY-2018: 22-25 ISSN 1234- 5678 22 IMPLEMENTATION OF AUTHENTICITY AND NOMI- NAL MONEY DETECTION SYSTEMS FOR MICROCONTROLLER- BASED BLINDNESS Aprizal Sistem Informasi, STMIK Dipanegara Makassar, Indonesia email@example.com  International Journal of Innovative Technology and Exploring Engineer- ing (IJITEE) ISSN: 2278-3075, Volume-8 Issue-5 March, 2019 Recog- nition of Fake Currency Note using Convolutional Neural Networks Navya Krishna G, Sai Pooja G, Naga Sri Ram B, Yamini Radha V, Rajarajeswari P.  What Is Learning Rate In Machine Learning? sonalsart.com  Xu, L., Ren, J.S., Liu, C., Jia, J.L.: Deep convolutional neural network for image deconvolution. In: Advances in Neural Information Processing Systems, vol. 2, pp. 17901798 (2014)  https://medium.com/@lvarruda/how-to-get-top-2-position-on-kaggles- mnist-digit-recognizer-48185d80a2d4.
Copyright © 2022 Prof. Deepika P. Patil, Girija Varma, Shweta Poojary, Shraddha Sawant, Aditya Sharma. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.