The document describes a currency detector project that uses image processing in Matlab to analyze images of currency notes and detect fake notes. It works by loading images of real and suspect notes, splitting them into red, green, and blue color channels, and comparing the channels using metrics like mean square error and peak signal-to-noise ratio. It also checks security features of notes like watermarks, security threads, and hidden images. If the comparison scores and security features match closely to a real note, it is deemed original. Otherwise, it is classified as counterfeit. The currency detector has applications in automated machines that handle cash transactions frequently.
2. Introduction
A currency detector is a device that determines whether
currencies or coins are genuine or fake. These devices are used in
many automated machines where large amount of currencies are
involved, like in retail kiosks, self checkout machines, gaming
machines, transportation parking machines, automatic fare
collection machines, and vending machines.
In India, the Reserve Bank is only one which has the sole
authority to issue bank notes. Reserve Bank, like other central
banks the world over, changes the design of bank notes from
time to time.
3. Abstract
Fake currency is imitation currency produced without the legal sanction of the
state or government. So, for a proper method of detection of fake currencies,
several other methods are used. The various parameters of a currency that are
to be analysed are:
1. See through Register
The small floral design printed both on the front (hollow) and back (filled up)
of the note in the middle of the vertical band next to the Watermark has an
accurate back to back registration. The design will appear as floral design when
seen against the light.
2. Water marking
The Mahatma Gandhi Series of banknotes contain the Mahatma Gandhi
watermark with a light and shade effect and multi-directional lines in the
watermark window.
4. 3. Optically Variable Ink
This is a new feature included in the Rs.1000 and Rs.500 notes with revised color scheme
introduced in November 2000. The numeral 1000 and 500 on the obverse of Rs.1000 and Rs.500
notes respectively is printed in optically variable ink viz., a color-shifting ink. The colour of the
numeral 1000/500 appears green when the note is held flat but would change to blue when the
note is held at an angle.
4. Fluorescence
Number panels of the notes are printed in fluorescent ink. The notes also have optical fibres.
Both can be seen when the notes are exposed to ultra-violet lamp.
5. SecurityThread
The Rs.500 and Rs.100 notes have a security thread with similar visible features and inscription
‘Bharat’ (in Hindi), and ‘RBI’. When held against the light, the security thread on Rs.1000, Rs.500
and Rs.100 can be seen as one continuous line. The Rs.5, Rs.10, Rs.20 and Rs.50 notes contain a
readable, fully embedded windowed security thread with the inscription ‘Bharat’ (in Hindi), and
‘RBI’. The security thread appears to the left of the Mahatma's portrait.
6. Intaglio Printing
The portrait of Mahatma Gandhi, the Reserve Bank seal, guarantee and promise clause, Ashoka
Pillar Emblem on the left, RBI Governor's signature are printed in intaglio i.e. in raised prints,
which can be felt by touch, in Rs.20, Rs.50, Rs.100, Rs.500 and Rs.1000 notes.
5. 7. Latent image
On the obverse side of Rs.1000, Rs.500, Rs.100, Rs.50 and Rs.20 notes, a vertical band on the
right side of the Mahatma Gandhi’s portrait contains a latent image showing the respective
denominational value in numeral. The latent image is visible only when the note is held
horizontally at eye level.
8. Micro lettering
This feature appears between the vertical band and Mahatma Gandhi portrait. It always
contains the word ‘RBI’ in Rs.5 and Rs.10. The notes of Rs.20 and above also contain the
denominational value of the notes in micro letters. This feature can be seen well under a
magnifying glass.
9. Identification Mark
Each note has an unique mark of it. A special feature in intaglio has been introduced on the
left of the watermark window on all notes except Rs.10/- note. This feature is in different
shapes for various denominations (Rs. 20-Vertical Rectangle, Rs.50- Square, Rs.100-Triangle,
Rs.500-Circle, and Rs.1000- Diamond) and helps the visually impaired to identify the
denomination.
Hence, the project provides a platform to detect fake currencies using Matlab, by analysing
the above parameters.
6. Concept
The concept of currency detector is based upon image processing. It is a tool
in Matlab which is useful for processing of images. When working with images
in Matlab, there are many things to be kept in mind such as loading an image,
using the right format, saving the data as different data types, how to display
an image, conversion between different image formats, etc. Most of these
commands can be found out in the image processing toolbox in Matlab.
The various features of image processing that are used in the currency
detector are:
Image formats supported in Matlab : The image format supported by
Matlab are BMP , HDF , JPEG , PCX , TIFF and XWB.
7. • Working formats in Matlab:
i) Intensity Image (gray scale image)
This is the equivalent to a "gray scale image" and this is the image we will mostly work
with in this course. It represents an image as a matrix where every element has a value
corresponding to how bright/dark the pixel at the corresponding position should be
colored.
ii) Binary Image
This image format also stores an image as a matrix but can only color a pixel black or
white (and nothing in between). It assigns a 0 for black and a 1 for white.
iii) Indexed Image
This is a practical way of representing coloured images. An indexed image stores an
image as two matrices. The first matrix has the same size as the image and one number
for each pixel. The second matrix is called the color map and its size may be different
from the image. The numbers in the first matrix is an instruction of what number to
use in the colour map matrix.
8. iv) RGB Image
This is another format for coloured images. It represents an image with three matrices
of sizes matching the image format. Each matrix corresponds to one of the colours
red, green or blue and gives an instruction of how much of each of these colours a
certain pixel should use.
v) Multiframe Image
This is used when a sequence of images have to be studied. This is very common in
biological and medical imaging where a sequence of slices of a cell has o be studied.
For these cases, the multiframe format is a convenient way of working with a
sequence of images.
•Reading and writing the images: When a work is to be done on an image, it is usually
in the form of a file (for example, a JPEG-file). So, to read the file and process it, the
command ‘imread()’ is used. Once the processing of the image is done, one may want to
write it back to a JPEG-file. This is done by the command ‘imwrite(,)’. These commands
require the Image processing tool box.
9. Working
The working of the currency detector is based on Matlab. There are various
toolboxes and functions available in Matlab. The function that is the backbone
of the project is image processing, with the help of which the currencies
would be checked for various parameters and hence be detected for fake
currencies.
Once, the image of the real i.e. reference currency is loaded, Matlab converts
it into rgb format i.e., it splits every pixel of the currency into three
components red, blue and green. As Matlab works on matrices, so the red
,blue and green components are in the form of matrix. These three
components of a pixel are denoted by r1, g1, b1 for red, green and blue
respectively, which correspond to image i.e. original currency note. Now, the
image of the currency that is to be tested is loaded. This image is again splitted
into the red , green and blue components, named as r2, b2, g2 for red, green
and blue respectively and stored for further matrix calculations.
10. Once the images are changed into rgb formats, a new image is constructed with
components r1, g2, b1 or r2, g1, b1 or b2, g1, b1. But r1, g2, b1 combination is most
preferred because human eye is sensitive to green component and most of our images
contains maximum green component so that our output image will be much easier to
identify.
Now the newly constructed image is compared with image1. After comparison,
certain parameters are calculated. Firstly, the threshold value of equivalence is
calculated by calculating the standard deviation. If equivalence is above 40% then we
can consider it as original note. We consider 40% value because note may be damaged.
In addition to these, the 10 parameters mentioned earlier are also checked. The other
parameters that are to be measured are the Mean Square Error (MSE), Peak Signal to
Noise Ratio (PSNR in dB), and structural Content (SC).
Hence with the calculation of these parameters and by checking the resultant values as
per the threshold, the currency can be detected as original or fake.
11. Applications
A currency detector is used to detect fake currencies and hence is used in
places where currency transactions are done on a regular basis. These devices
are used in many automated machines. The day to day application of currency
detector is found in places like:
Retail kiosks
Self checkout machines
Gaming machines
Transportation parking machines
Automatic fare collection machines
Vending machines