BANKNOTE MANAGEMENT METHOD AND SYSTEM
20200320817 ยท 2020-10-08
Inventors
- Yongquan Liu (Liaoning, CN)
- Weisheng Liu (Liaoning, CN)
- Weizhong Sun (Liaoning, CN)
- Nannan Zhao (Liaoning, CN)
- Fuyan Wang (Liaoning, CN)
- Bin Jin (Liaoning, CN)
- Yunjiang Liu (Liaoning, CN)
- Bingfeng Lu (Liaoning, CN)
- Yanshen Cui (Liaoning, CN)
- Di Jin (Liaoning, CN)
- Rengang Jiao (Liaoning, CN)
- Lan Ge (Liaoning, CN)
Cpc classification
G07D7/2008
PHYSICS
G07D7/2016
PHYSICS
G07D7/00
PHYSICS
International classification
Abstract
Provided in the present invention is a banknote management method. The method comprises: acquiring, identifying, and processing banknote features by a banknote information processing apparatus, so as to obtain banknote feature information; transmitting the banknote feature information, service information, and information about the banknote information processing apparatus together to a main control server; and the main control server processing the received information and classifying banknotes. Also provided is a banknote management system for the banknote management method. The method of the present invention can enhance robustness of identification while maintaining an operation speed, thus ensuring accuracy and practicability in actual applications.
Claims
1. A banknote management method, comprising the following steps of: receiving, by a master server, banknote feature information, service information, and information of a banknote information processing apparatus, the banknote feature information being obtained through collecting, identifying and processing a banknote feature by the banknote information processing apparatus; and integrating, by the master server, the banknote feature information, the service information and the information of the banknote information processing apparatus received, and classifying banknotes.
2. The banknote management method according to claim 1, wherein the identifying the banknote feature by the banknote information processing apparatus comprises: extracting a grayscale image of a region where the banknote feature is located, and performing edge detection on the grayscale image; rotating the image; positioning single numbers in the image, performing binarization processing on the image through adaptive binarization to obtain a binarized image; then projecting the binarized image; and finally segmenting the numbers by setting a moving window and using a manner of moving window registration to obtain an image of each number; performing lasso on characters contained in the image of each number, and performing normalization on the image of each number, the normalization comprising size normalization and brightness normalization; and identifying the image of the normalized number using a neural network to obtain the banknote feature, the banknote feature comprising a prefix number.
3. The banknote management method according to claim 2, wherein the edge detection comprises: setting a greyscale threshold, and performing linear search from upper and lower directions according to the threshold, to acquire edges; and obtaining an edge linear formula of the image through a least squares method, and obtaining a horizontal length, a vertical length and a slope of the banknote image meanwhile.
4. The banknote management method according to claim 3, wherein the rotating the image comprises: obtaining a rotation matrix on the basis of the horizontal length, the vertical length and the slope, and getting a pixel coordinate after rotating according to the rotation matrix.
5. The banknote management method according to claim 2, the performing binarization processing on the image through adaptation binarization comprises: obtaining a histogram of the image, setting a threshold Th, and when a sum of points of a greyscale value in the histogram from 0 to Th is greater than or equal to a preset value, using the Th at the moment as an adaptation binarization threshold to perform binarization on the image and obtain the binarized image.
6. The banknote management method according to claim 2, wherein the moving window registration comprises: designing a moving window for registration, the window moving horizontally on a vertical projection map, and a position corresponding to a minimum sum of blank points in the window being an optimum position for left-right direction segmentation of the prefix number.
7. The banknote management method according to claim 2, wherein the performing lasso on characters contained in the image of each number comprises: separately performing binarization on the image of each number, performing region growing on the binarized image of each number acquired, and then selecting one or two regions with an area greater than a certain preset area threshold from the regions obtained after the region growing, a rectangle where the selected region is located being a rectangle of the image of each number after lasso.
8. The banknote management method according to claim 7, wherein the separately performing binarization on the image of each number comprises: extracting a histogram of the image of each number, acquiring a binarization threshold by a histogram 2-mode method, and then performing binarization on the image of each number according to the binarization threshold.
9. The banknote management method according to claim 2, wherein the brightness normalization comprises: acquiring a histogram of the image of each number, calculating an average foreground grayscale value and an average background grayscale value of the number, comparing a pixel greyscale value before the brightness normalization with the average foreground grayscale value and the average background grayscale value respectively, and setting the pixel greyscale value before the normalization as a corresponding specific greyscale value according to the comparison result.
10. The banknote management method according to claim 2, between the rotating the image and the positioning single numbers in the image, further comprising any step of an orientation judging step, a newness rate judging step, a damage identifying step and a handwriting identifying step: the orientation judging step comprising: determining a banknote size through the rotated image, and determining a nominal value according to the size; segmenting a target banknote image into n blocks, calculating an average brightness value in each block, comparing the average brightness value with a pre-stored template, judging the template as a corresponding orientation when a difference between the two values is minimum; the newness rate judging step comprising: extracting an image with a preset number of dpi firstly, taking all regions of the image as feature regions of the histogram, scanning pixel points in the regions, placing the pixel points in an array, recording the histogram of each pixel point, counting a certain proportion brightest pixel points according to the histograms, and obtaining an average grayscale value of the brightest pixel points as a basis for judging the newness rate; the damage identifying step comprising: acquiring a transmitted image by respectively arranging a light source and a sensor on both sides of the banknote; detecting the rotated transmitted image point by point, and when two pixel points adjacent to one point are both less than a preset threshold, judging that the pixel point is a damaged point; the handwriting identifying step comprising: in a fixed region, scanning pixel points in the region, placing the pixel points in an array, recording a histogram of each pixel point, counting a preset number of brightest pixel points according to the histograms, obtaining an average grayscale value, obtaining a threshold according to the average grayscale value, and determining pixel points with a greyscale value smaller than the threshold as handwriting points.
11. The banknote management method according to claim 2, wherein a convolutional neural network of secondary classification is used as the neural network; all numbers and letters related to the prefix number are classified by primary classification, and categories of partial pixel categories in the primary classification are classified again by secondary classification.
12. The banknote management method according to claim 1, wherein the banknote feature is collected by one or more of image, infrared, fluorescence, magnetism and thickness measuring.
13. The banknote management method according to claim 1, wherein the classifying the banknotes comprises: feeding the banknotes into different banknote warehouses according to classified categories.
14. The banknote management method according to claim 1, wherein: the banknote feature information comprises one or more of a currency, a nominal value, an orientation, authenticity, a newness rate, defacement, and a prefix number; the service information comprises one or more of record information of collection, payment, deposit or withdrawal, service time period information, operator information, transaction card number information, identity information of at least one of a handler and an agent, two-dimensional code information, and a package number.
15. The banknote management method according to claim 1, wherein the banknote information processing apparatus comprises one or more of a banknote sorter, a banknote counter, and a banknote detector; and the information of the banknote information processing apparatus comprises one or more of a manufacturer, a device number, and a financial institution located.
16. The banknote management method according to claim 1, wherein the banknote information processing apparatus comprises a self-service financial device; and the information of the banknote information processing apparatus comprises one or more of a banknote configuration record, a banknote case number, a manufacturer, a device number, and a financial institution located.
17. The banknote management method according to claim 15, further comprising: collecting, identifying and processing banknote information in corresponding services, and transmitting the banknote information to a host of a banking outlet or a host of a cash center by a plurality of the banknote information processing apparatuses, and then transmitting the banknote information to the master server by the host of the banking outlet or the host of the cash center.
18. A banknote management system, wherein the banknote management system comprises a banknote information processing terminal and a master server terminal; the banknote information processing terminal comprises a banknote conveying module, a detecting module, and an information processing module; the banknote conveying module is configured to convey banknotes to the detecting module; the detecting module collects and identifies banknote feature; the information processing module processes the banknote feature collected and identified by the detecting module and output the banknote feature as banknote feature information, and transmit the banknote feature information; and the master server terminal is configured to receive the banknote feature information, service information and information of the banknote information processing terminal, process the three types of information received, and classify the banknotes.
19. The banknote management system according to claim 18, wherein the detecting module comprises an image preprocessing module, a processor module, and a CIS image sensor module; the image preprocessing module further comprises an edge detecting module and a rotating module; the processor module further comprises a number positioning module, a lasso module, a normalization module, and an identification module; the number positioning module performs binarization processing on the image through adaptive binarization to obtain a binarized image; then projects the binarized image; and finally segments the numbers by setting a moving window and using a manner of moving window registration to obtain an image of each number, and transmits the image of each number to the lasso module; and the normalization module is configured to perform normalization on the image processed by the lasso module, preferably, the normalization comprising size normalization and brightness normalization.
20. The banknote management system according to claim 19, wherein the number positioning module further comprises a window module, the window module designs a moving window for registration according to an interval between the prefix numbers, and moves the window horizontally on a vertical projection map, and calculates a sum of blank points in the window; and the window module can also compare the sum of blank points in different windows.
21. The banknote management system according to claim 19, wherein the lasso module separately performs binarization on the image of each number, performs region growing on the binarized image of each number acquired, and then selects one or two regions with an area greater than a certain preset area threshold from the regions obtained after the region growing, a rectangle where the selected region is located being a rectangle of the image of each number after lasso.
22. The banknote management system according to claim 19, wherein the detecting module further comprises a compensation module configured to compensate an image acquired by the CIS image sensor module, the compensation module prestores collected brightness data in pure white or pure blank, and obtain a compensation factor with reference to a greyscale reference value of a pixel point that can be set; and stores the compensation factor to the processor module, and establishes a lookup table.
23. The banknote management system according to claim 18, wherein the classifying the banknotes by the master server terminal specifically comprises: after classifying the banknotes, feeding the banknotes into different banknote warehouses according to the classified categories.
24. The banknote management system according to claim 18, wherein the banknote feature information comprises one or more of a currency, a nominal value, an orientation, authenticity, a newness rate, defacement, and a prefix number; and/or, the service information comprises one or more of record information of collection, payment, deposit or withdrawal, service time period information, operator information, transaction card number information, identity information of at least one of a handler and an agent, two-dimensional code information, and a package number; and/or, the banknote information processing terminal comprises one of a banknote sorter, a banknote counter, a banknote detector, and a self-service financial device; and preferably, the self-service financial device comprises one of an automated teller machine, a cash deposit machine, a cash recycling system, a self-service information kiosk, and a self-service payment machine.
25. A banknote information processing terminal, comprising a banknote conveying module, a detecting module, and an information processing module; wherein the banknote conveying module is configured to convey banknotes to the detecting module; the detecting module collects and identifies banknote feature; the information processing module processes the banknote feature collected and identified by the detecting module and output the banknote feature as banknote feature information, and transmit the banknote feature information to a master server terminal, the master server terminal being configured to receive the banknote feature information, service information and information of the banknote information processing terminal, process the three types of information received, and classify the banknotes.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0099]
[0100]
[0101]
[0102]
[0103]
[0104]
DETAILED DESCRIPTION
[0105] To make the technical problems to be solved, technical solutions, and advantages of the present invention clearer, the following detailed description will be made with reference to the drawings and specific embodiments. Those skilled in the art should know that the following specific embodiments or specific modes of execution are a series of optimized settings listed by the present invention to further explain the specific summary of the invention, and these settings can be used in combination with each other or in association with each other, unless it is explicitly proposed in the present invention that some or one specific embodiment or mode of execution cannot be set or used in association with other embodiments or modes of execution. At the same time, the following specific embodiments or modes of execution are only used as optimize settings, and are not to be understood as limiting the scope of protection of the present invention.
[0106] In addition, it should be understood by those skilled in the art that the specific values listed in the specific modes of execution and the embodiments for parameter setting are used as optional modes of execution for illustration purposes and should not be construed as limiting the scope of protection of the present invention. However, the algorithms involved and the settings of parameters thereof are only used for distance interpretation, and the formal transformation of the following parameters and the conventional mathematical derivation of the following algorithms should be regarded as falling within the scope of protection of the present invention.
First Embodiment
[0107] The embodiment provides a banknote management method, specifically including the following steps.
[0108] (1) Six banknote information processing apparatuses respectively collect, identify and process banknote features of banknotes in corresponding services thereof to obtain the banknote feature information, wherein, as a preferred implementation manner of the embodiment, the banknote information processing apparatus collects the banknote features by ways of image, infrared, fluorescence, magnetism and thickness. The banknote feature information includes a currency, a nominal value, an orientation, authenticity, a newness rate, defacement, and a prefix number. As a specific implementation manner of the embodiment, the banknote information processing apparatus is a banknote sorter; and the information of the banknote information processing apparatus is a manufacturer, a device number, and a financial institution located.
[0109] It should be noted that the number of the banknote information processing apparatus is not unique, which includes but is not limited to six, and is at least one.
[0110] As an alternative implementation manner of the embodiment, the banknote information processing apparatus may also be one or more of a banknote counter or a banknote detector; and the information of the banknote information processing apparatus may also omit one or more of the manufacturer, the device number, and the financial institution located.
[0111] As another alternative implementation manner of the embodiment, the banknote information processing apparatus may also be a self-service financial device; in particular, the banknote information processing apparatus may be any one of an automated teller machine, a cash deposit machine, a cash recycling system, a self-service information kiosk, and a self-service payment machine. The information of the banknote information processing apparatus may be one or more of a banknote configuration record, a banknote case number, a manufacturer, a device number, and a financial institution located.
[0112] (2) The banknote feature information in step (1) is transmitted to a host of a banking outlet, and then transmitted to a master server by the host of the banking outlet; moreover, the service information and the information of the banknote information processing apparatus are transmitted to the master server. As a preferred implementation manner of the embodiment, the service information includes record information of collection, payment, deposit or withdrawal, service time period information, operator information, transaction card number information, identity information of a handler and an agent, two-dimensional code information, and a package number.
[0113] It should be noted that the manner in which the banknote feature information is transmitted to the master server is not unique, and those skilled in the art can change transmission paths of the banknote feature information, the service information and the information of the banknote information processing apparatus according to the actual situations, for example, directly transmit the banknote feature information, the information of the banknote information processing apparatus and the service information in step (1) to the master server.
[0114] In addition, those skilled in the art may omit or replace some of the service information described in the embodiment according to actual needs, i.e., omit or replace one or more of the record information of collection, payment, deposit or withdrawal, the service time period information, the operator information, the transaction card number information, the identity information of the handler and the agent, the two-dimensional code information, and the package number.
[0115] (3) The master server integrates the banknote feature information, the service information and the information of the banknote information processing apparatus received, and classifies banknotes. As a preferred implementation manner of the embodiment, the classifying the banknotes specifically includes: after classifying the banknotes, feeding the banknotes into different banknote warehouses according to the classified categories.
[0116] As a preferred implementation manner of the embodiment, the following description will take a method of identifying a prefix number as an example to describe the method of identifying a banknote feature, which, as shown in
[0117] In step a, a grayscale image of a region where a prefix number is located is extracted, and edge detection is performed on the grayscale image. The edge detection can be realized by conventional canny detection, sobel detection and other methods, and then combined with linear fitting to obtain an edge linear formula, but an empirical threshold for edge detection needs to be set experimentally to ensure the computing speed of the method.
[0118] In a specific mode of execution, the edge detection in the step a further includes: setting a greyscale threshold, and performing linear search from upper and lower directions according to the threshold, to acquire edges, wherein a linear scanning manner is adopted in the edge detection to obtain a linear pixel coordinate of the edge; and obtaining an edge linear formula of the image through a least squares method, and obtaining a horizontal length, a vertical length and a slope of the banknote image meanwhile.
[0119] In a specific mode of execution, as shown in
[0120] Specifically, because the edge brightness of the banknote image is very different from a background black, it is very easy to find a threshold to distinguish the banknote from the background, so a linear search method is used here to detect the banknote edges from upper and lower directions. In the upper and lower directions, we search along a straight line X={x.sub.i}, (1=1, 2, . . . , n) to get an upper edge Y.sub.1={y.sub.1i} and a lower edge Y.sub.2={y.sub.2i} of the banknote.
[0121] Slopes k1, k2, and intercepts b1, b2 are obtained using a least squares method. A slope K, and an intercept B of a midline of the upper and lower edges are obtained. It is known that the midline will certainty pass through a midpoint (x.sub.0, y.sub.0), following a straight line y=K.Math.x+B.
[0122] we can obtain the following relational expressions:
[0123] A least squares method is used to obtain k.sub.1 and b.sub.1:
[0124] Similarly, we can calculate k.sub.2 and b.sub.2:
[0125] Therefore, the midline y=K.Math.x+B of the upper edge and the lower edge of the banknote:
[0126] Since the midline y=K.Math.x+B of the upper edge and the lower edge of the banknote will certainty pass through the midpoint (x.sub.0, y.sub.0) of the banknote, therefore, we search along the straight line y=K.Math.x+B to obtain a left end point (x.sub.1, y.sub.1) and a right end point, and finally the midpoint of the banknote image can be obtained as follows:
[0127] After getting the midpoint of the banknote, we need to find a horizontal length L and a vertical length W of the banknote, so that we a length-width model of the banknote can be established in next section.
[0128] Then we take Y={y.sub.i}, (i=1, 2, . . . , m) near a straight line y=y.sub.0 to perform linear search to obtain a left edge X.sub.1={x.sub.1i} and a right edge X.sub.2={x.sub.2i} of the banknote; therefore there are:
[0129] In step b, the image is rotated; i.e., coordinate points on the image of the banknote after the edge detection are corrected and mapped so as to straighten the image, thereby facilitating the segmentation and identification of the image of the number, wherein the rotating method can be implemented by using coordinate point transformation or correcting according to the detected edge formula to obtain a transformation formula, or by polar coordinate rotation, etc.
[0130] In a specific mode of execution, the rotating in the step b further includes: obtaining a rotation matrix on the basis of the horizontal length, the vertical length and the slope, and getting a pixel coordinate after rotating according to the rotation matrix. The rotation matrix can be obtained by polar coordinate conversion, i.e., a polar coordinate conversion matrix, for example, an inclination angle of the banknote can be obtained by the edge linear formula obtained, and a polar coordinate conversion matrix of each pixel can be calculated according to the angle and a length of the edge; the conversion matrix can also be calculated by common coordinate conversion, such as setting a central point of the banknote as an origin of coordinates according to the inclination angle and the length of the edge, and calculating a conversion matrix of each coordinate point in a new coordinate system, etc.; of course, other matrix transformation methods can also be used to correct the rotation of the banknote image.
[0131] In a specific mode of execution, as shown in
[0132] as
[0133] therefore
[0134] while
[0135] then
[0136] so that
[0137] Similarly:
[0138] so that
[0139] As AB AB is the actual length Length of the banknote, and BF is the actual width Wide; therefore, there is
[0140] The whole rotating process of any point in the banknote image is to find a point A(x.sub.s,y.sub.s) corresponding to the actual banknote for any given point A(x.sub.s,y.sub.s) in the banknote image, rotate the point A by an angle of to obtain a point B(x.sub.d,y.sub.d), and finally find a point B(x.sub.d, y.sub.d) on the rotated banknote image corresponding to the point B.
[0141] With reference to
[0142] If the center of the banknote image before rotation is (x.sub.0, y.sub.0), and the center of the banknote image after rotation is (x.sub.c, y.sub.c), then we can obtain:
[0143] In step c, single numbers in the image are positioned, which specifically includes: performing binarization processing on the image through adaptive binarization to obtain a binarized image; then projecting the binarized image, wherein conventional image projection is completed by only one vertical projection and one horizontal projection, a specific projection direction and number of times can be adjusted according to the specific identification environment and accuracy requirements, for example, projection with inclination angle direction can be used, or a plurality of multiple projections can be used; and finally segmenting the numbers by setting a moving window and using a manner of moving window registration to obtain an image of each number, wherein, the effect on the banknote with smudginess on the image of the prefix number and adhesion between characters is poor due to common problems such as banknote damage and smudginess, and particularly, adhesion among three or more characters is almost inseparable; therefore, after the image projection, the present disclosure adds the manner of moving window registration to accurately determine positions of the characters.
[0144] In a specific mode of execution, the performing binarization processing on the image through adaptation binarization in the step c specifically includes:
[0145] obtaining a histogram of the image, setting a threshold Th, and when a sum of points of a greyscale value in the histogram from 0 to Th is greater than or equal to a preset value, using the Th at the moment as an adaptation binarization threshold to perform binarization on the image and obtain the binarized image. The projecting the binarized image includes three times of projection performed in different directions. Preferably, the setting the moving window specifically includes: the window moving horizontally on a vertical projection map, and a position corresponding to a minimum sum of blank points in the window being an optimum position for left-right direction segmentation of the prefix number.
[0146] In a specific mode of execution, an overall adaptation binarization method may be used for binarization of the image. First, a histogram of the image is obtained. a region with black brightness is a prefix number region, and a region with white brightness is a background region. A sum of points N of a greyscale value in the histogram from 0 to Th is found on the histogram. When N>=2200 (empirical value), the corresponding threshold Th is the adaptation binarization threshold. The biggest advantage of this method is that the calculation time is short, which can meet the real-time requirements of the rapid banknote counting of the sorter and has good self-adaptability.
[0147] In a specific mode of execution, the binarized image is projected, and the up, down, left and right positions of each number can be determined by combining three projections. Horizontal projection is carried out for the first time to determine a line where the number is located, vertical projection is carried out for the second time to determine the left and right positions of each number, and horizontal projection is carried out for each small map for the third time to determine the up and down positions of each number.
[0148] In a specific mode of execution, the above-mentioned three projection methods can achieve excellent effects for single number segmentation of most banknotes, but have poor effects for banknotes with smudginess on the image of the prefix number and adhesion between characters, and particularly, adhesion among three or more characters is almost inseparable. In order to overcome this difficulty, window moving registration may be used in a specific mode of execution. Because the size and resolution of the prefix number collected by the sorter are fixed, the size of each character is fixed, and the interval between each character is also fixed, the window can be designed according to the interval of the prefix numbers on the banknote, as shown in
[0149] In step d, lasso is performed on characters contained in the image of each number, and normalization is performed on the image of each number, wherein the normalization includes size normalization and brightness normalization. A lasso operation on the characters refers to positioning the characters which are segmented with approximate positions in detail again to further reduce the data volume to be processed for subsequent image identification, which greatly ensures the overall operating speed of the system.
[0150] The three projection methods preliminarily position single numbers only, and cannot lasso multiple dirty single numbers. The above-mentioned binarization method binarizes the entire image, and the calculated threshold is not suitable for the binarization of single characters. For example, the first four characters are red and the last six characters are black in RMB 100 banknote of 2005 version, which will result in uneven brightness of each character in the grayscale image collected. In a specific mode of execution, each small map can also be binarized separately.
[0151] In a specific mode of execution, an adaptation binarization method based on histogram 2-mode method is used in the binarization. The histogram 2-mode method is an iteration method to find a threshold, which has the features of adaptation, quickness and accuracy. To be specific, one preferred mode of execution can be adopted to achieve the method.
[0152] First, an initialization threshold T.sup.0 is set, and then a threshold of binary segmentation is obtained after K iterations. K is a positive integer greater than 0, and an average background grayscale value g.sub.b.sup.k and an average foreground grayscale value g.sub.f.sup.k of the k.sup.th iteration here are respectively:
[0153] Then, a threshold of the k.sup.th iteration is:
[0154] T.sup.k=(g.sub.b.sup.k+.sub.f.sup.k)/2
[0155] Conditions for exiting the iteration: exit the iteration when the iteration times are enough (for example, 50 times), or the threshold results calculated by two iterations are the same, i.e., the thresholds of the k.sup.th and (k1).sup.th iterations are the same.
[0156] After binarization, an eight-neighborhood region growing algorithm needs to be performed on each small map in order to remove noise points with too small area. Finally, one or two regions with an area greater than a certain region of an empirical value are selected from the regions obtained after the region growing performed on each small map, wherein a rectangle where the selected region is located is a rectangle of the image of each number after lasso. In conclusion, the lasso method includes the steps of binarization, region growing and region selection, and has the advantages of strong anti-interference and fast calculation speed.
[0157] After binarization, it is necessary to further perform normalization on the image. In a specific mode of execution, the normalization above may adopt a following manner: the normalization here is for next neural network identification. In view of the requirements of calculation speed and accuracy, the size of the image during size normalization cannot be too large or too small. Too large image results in too many subsequent neural network nodes and slow calculation speed, and too small map causes too much information loss. Several normalization sizes such as 28*28, 18*18, 14*14 and 12*12 are tested, and 14*14 is selected finally. A bilinear interpolation algorithm is used as a scaling algorithm of normalization.
[0158] In a specific mode of execution, the normalization in the step d further specifically includes: performing size normalization using a bilinear interpolation algorithm; the brightness normalization includes: acquiring a histogram of the image of each number, calculating an average foreground grayscale value and an average background grayscale value of the number, comparing a pixel greyscale value before the brightness normalization with the average foreground grayscale value and the average background grayscale value respectively, and setting the pixel greyscale value before the normalization as a corresponding specific greyscale value according to the comparison result.
[0159] In another specific mode of execution, brightness normalization is required to reduce training templates. Firstly, an average foreground grayscale value G.sub.b and an average background grayscale value G.sub.f of a number are calculated on the histogram of each small map. Set V0.sub.ij is a greyscale value of each pixel before the normalization, and V1.sub.ij is a greyscale value of each pixel after the normalization, then a calculating method is as follows:
[0160] In step e, the image of the normalized number is identified by a neural network to obtain the prefix number.
[0161] In a specific mode of execution, the foregoing neural network can be achieved using a convolutional neural network (CNN) algorithm.
[0162] The convolutional neural network (CNN) is essentially a kind of mapping from input to output, which can learn a mapping relationship between a large number of inputs and outputs without precise mathematical expressions between any input and output, and as long as the convolutional network is trained in a known pattern, the network has the ability to map between input and output pairs. In the CNN, a small part of the image (locally sensed region) is an input of a lowest layer of a hierarchical structure, and information is then transmitted to different layers in turn, and each layer obtains the most significant features of the observed data through a digital filter. The method can obtain the remarkable features of the observed data which is invariant in translation, scaling and rotation. The locally sensed region of the image allows neurons or processing units to access the most basic features, and the main features on the image of the prefix number are edges and corner points, so it is very suitable to use the CNN method for identification.
[0163] In a specific mode of execution, a convolutional neural network of secondary classification is used as the neural network. All numbers and letters related to the prefix number are classified by primary classification, and categories of partial categories in the primary classification are classified again by secondary classification. It should be noted here that a number of categories of the primary classification can be set according the classification needs. setting habits, such 10 categories, 23 categories, 38 categories, etc., but is not limited here, and similarly, the secondary classification refers. the secondary classification performed again for some categories that are prone to miscalculation, and have approximate features or low accuracy on the basis of the primary classification, so that the prefix numbers can be further distinguished and identified with a higher identification rate, while the specific number of input categories and the number of output categories of the secondary classification can be set in details according to the category settings of the primary classification well as the classification needs and setting habits.
[0164] In the following, the structure and training mode of a specific convolutional neural network (CNN) applicable to the technical solution of the present disclosure are illustrated with a preferred mode of execution.
[0165] I. Structure of CNN Neural Network
[0166] Because it is necessary to mixedly identify numbers and letters, while some numbers and letters are very similar and indistinguishable, the RMB does not have a letter V, and a letter 0 is printed exactly the same as a number 0, so we use a secondary classification method for identifying the prefix numbers. All the numbers and letters are classified into 23 categories by primary classification:
[0167] First category: A and 4
[0168] Second category: B and 8
[0169] Third category: C, G and Q
[0170] Fourth category: O, D and Q
[0171] Fifth category: E, L and F
[0172] Sixth category: H
[0173] Seventh category: K
[0174] Eighth category: M
[0175] Ninth category: N
[0176] Tenth category: P
[0177] Eleventh category: R
[0178] Twelfth category: S and 5
[0179] Thirteenth category: T and J (J is RMB of 2005 version and all versions)
[0180] Fourteenth category: U
[0181] Fifteenth category: W
[0182] Sixteenth category: X
[0183] Seventeenth category
[0184] Eighteenth category: Z and 2
[0185] Nineteenth category: 1
[0186] Twentieth category: 3
[0187] Twenty-first category: 7
[0188] Twenty-second category: 9
[0189] Twenty-third category: J (J is new version RMB of 2015).
[0190] The secondary classification refers to classification on A and 4, B and 8, C, 6 and G, 0, D and Q, E, L and F, S and 5, T and J, as well as Z and 2.
[0191] The above secondary CNN classification method relates to nine neural network models, which are respectively denoted as CNN_23, CNN_A4, CNN_B8, CNN_CG6, CNN_ODQ, CNN_ELF, CNN_S5, CNN_JT, and CNN_Z2.
[0192] Taking the CNN neural network of primary classification for example,
[0193] C1 layer is a convolutional layer, which has the advantages of enhancing original signal features and reducing noises by convolution operation, and consists of six Feature Maps. Each neuron in the feature map is connected to 3*3 neighborhoods in the input. The size of the feature map is 14*14. C1 has 156 trainable parameters (each filter has 5*5=25 unit parameters and one bias parameter, and there are a total of six filters with a total of (3*3+1)*6=60 parameters), and a total of 60*(12*12)=8640 connections.
[0194] Both S2 and S4 layers are downsampling layers which perform subsampling on the images using image local correlation principle, and can reserve useful information while reducing data processing volume.
[0195] C3 layer is also a convolutional layer. It also convolves the S2 layer through 33 convolution kernels, and then a feature map obtained has 44 neurons only. For simplicity of calculation, only six different convolution kernels are designed, so there are six feature maps. It should be noted here that each feature map in C3 is connected to S2 and is not completely connected. Why not connect each feature map in S2 to each feature map in C3? There are two reasons. The first reason is that an incomplete connection mechanism keeps connections in a reasonable scope. The second reason, which is also the most important reason is that it destroys the symmetry of the network. Because different feature maps have different inputs, they are forced to extract different features. The composition of this incomplete connection result is not unique. For example, the first two feature maps of C3 take three adjacent feature map subsets in S2 as inputs, the next two feature maps take four adjacent feature map subsets in S2 as inputs, the next one takes three non-adjacent feature map subsets as inputs, and the last one takes all feature maps in S2 as inputs.
[0196] The last group from S layer to C layer is not downsampling, but simple tension the S layer, becoming a one-dimensional vector. The output number of the network is the classification number of the neural network and forms a complete connection structure with the last layer. The CNN_23 here has 23 categories, so there are 23 outputs.
[0197] II. The Neural Network can be Trained Through the Following Manner.
[0198] Provided that a first layer is a convolutional layer, a (1+1).sup.th layer is a downsampling layer, then a calculation formula of a j.sup.th feature map of the first layer is as follows:
[0199] where * sign indicates convolution, which means that a convolution kernel k performs convolution operation on all the associated features maps of a (1-1).sup.th layer, then sums, adds an offset parameter b, and takes a sigmoid function
to obtain the final excitation.
[0200] A residual calculation formula of the j.sup.th feature map of the first layer is as follows:
.sub.j.sup.l=.sub.j.sup.l+1(f(u.sub.j.sup.l).*up(.sub.j.sup.l+1))
[0201] where, the first layer is the convolutional layer, the (1+1).sup.th layer is the downsampling layer, and the downsampling layer is in one-to-one correspondence with the convolutional layer, where up(x) is to extend the size of the (1+1).sup.th layer the same as that of the first layer.
[0202] A partial derivative formula of error to b is:
[0203] A partial derivative formula of error to k is:
[0204] About 100,000 RMB prefix numbers are randomly selected as training samples, wherein the training times are more than 1,000, and the approximation accuracy is less than 0.004.
[0205] In a specific mode of execution, the method further includes an orientation judging step between the step b and the step c: determining a banknote size through the rotated image, and determining a nominal value according to the size; and segmenting a target banknote image into n blocks, calculating an average brightness value in each block, comparing the average brightness value with a pre-stored template, judging the template as a corresponding orientation when a difference between the two values is minimum. The pre-stored template segments images of different orientations of banknotes of different nominal values into n blocks, and calculates an average brightness value in each block as a template.
[0206] Specifically, an orientation value of the banknote can be determined by banknote size detection+template matching. Firstly, a nominal value of the banknote is determined by the banknote size. Then, the orientation of the banknote is determined, 16*8 identical rectangular blocks are segmented inside the banknote image, and an average brightness value in each rectangular block is calculated, and the data of the 16*8 average brightness values are placed in a memory as template data. Similarly, an average brightness value of a target banknote is obtained, and compared with the template data to find the one with minimum difference. Then, the orientation of the banknote can be determined.
[0207] Moreover, in a specific mode of execution, a judgment on a newness rate of the banknote can be added. Firstly, an image of 25 dpi is extracted, all regions of the image of 25 dpi are taken as feature regions of the histogram, pixel points in the regions are scanned and placed in an array, the histogram of each pixel point is recorded, 50% brightest pixel points are counted according to the histograms, and an average grayscale value of the brightest pixel points is obtained and used as a basis for judging the newness rate.
[0208] In a specific mode of execution, the method further includes a damage identifying step between the step b and the step c: acquiring a transmitted image by respectively arranging a light source and a sensor on both sides of the banknote; detecting the rotated transmitted image point by point, and when two pixel points adjacent to one point are both less than a preset threshold, judging that the point is a damaged point.
[0209] In the specific embodiment, a transmittance manner of distributing a light-emitting source and a sensor on both sides of the banknote is adopted during banknote damage identifying. When the light-emitting source encounters the banknote, only a small part of the light can penetrate the banknote and hit the sensor, while the light that does not encounter the banknote completely hits the sensor. Therefore, the background is white and the banknote is also a grayscale map. The damage includes broken corners and holes. Both the broken corners and the holes are detected using a damage identifying technology. The difference is that the detection regions are different. Four corners of the banknote are detected for the broken corners, and a middle region of the banknote is detected for the holes.
[0210] In yet another specific mode of execution, for the broken corners of the banknote, the rotated and transmitted banknote image can be segmented into four regions, i.e., upper left, lower left, upper right and lower right. Then, the four regions are detected point by point. If two adjacent pixel points are both less than a threshold, then the point is judged as a damaged point. If the two adjacent points do not meet the condition of being less than the threshold, it indicates that a corner corresponding to the intersection point does not have a damaged feature.
[0211] For the hole detection on the banknote, after searching for the broken corners of the banknote, the broken corners are already filled with black. If the banknote has broken corner and hole features, then the pixel point is white. In the searching process of the banknote, a pixel value of the point determined as the broken corner is changed to a black pixel value, so that filling is realized. Therefore, the whole banknote is searched with the four sides of the banknote as boundaries. If it is found that the banknote has the damage feature, it indicates that the banknote has holes; otherwise, the banknote has no holes. When every pixel point smaller than the threshold is searched, the area of the hole will be increased by 1. The area of the hole will be finally obtained when the searching is ended.
[0212] In another specific mode of execution, a following manner can be used for handwriting detection: in a fixed region, scanning pixel points in the region, placing the pixel points in an array, recording a histogram of each pixel point, counting 20 brightest pixel points according to the histograms, obtaining an average grayscale value, obtaining a threshold according to the average grayscale value. The pixel point smaller than the threshold is judged as handwriting plus 1.
Second Embodiment
[0213] The embodiment provides a banknote management system, wherein the banknote management system includes a banknote information processing terminal and a master server terminal;
[0214] the banknote information processing terminal includes a banknote conveying module, a detecting module, and an information processing module;
[0215] the banknote conveying module is configured to convey banknotes to the detecting module;
[0216] the detecting module collects and identifies banknote feature;
[0217] the information processing module processes the banknote feature collected and identified by the detecting module and output the banknote feature as banknote feature information, and transmit the banknote feature information; and in the embodiment, as a specific implementation manner, the banknote feature information specifically includes a currency, a nominal value, an orientation, authenticity, a newness rate, defacement, and a prefix number;
[0218] the master server terminal is configured to receive the banknote feature information, service information and information of the banknote information processing terminal, process the three types of information received, and classify the banknotes. In the embodiment, as a preferred implementation manner, the classifying the banknotes by the master server terminal specifically includes: after classifying the banknotes, feeding the banknotes into different banknote warehouses according to the classified categories.
[0219] In the embodiment, as a specific implementation manner, the service information includes record information of collection, payment, deposit or withdrawal, service time period information, operator information, transaction card number information, identity information of a handler and an agent, two-dimensional code information, and a package number.
[0220] As a preferred implementation manner of the embodiment, the master server terminal processes the information received, specifically including the processing like summarization, storage, consolidation, query, tracking and export.
[0221] It should be noted that the banknote information processing terminal described in the embodiment can be used alone. In the embodiment, the banknote information processing terminal is a banknote sorter. As an alternative technical solution of the embodiment, the banknote information processing terminal may also be replaced by one of a banknote counter, a banknote detector, and a self-service financial device; wherein, the self-service financial device may be any one of an automated teller machine, a cash deposit machine, a cash recycling system (CRS), a self-service information kiosk, and a self-service payment machine.
[0222] It should be noted that the design manner of the detecting module is not unique. In the embodiment, a specific implementation manner is provided. The detecting module can also be applied to a system for identifying a prefix number of a DSP platform, and can be embedded or connected to a conventional banknote detector, banknote counter, ATM and other equipment on the market for use. Specifically, the detecting module includes an image preprocessing module, a processor module, and a CIS image sensor module;
[0223] the image preprocessing module further includes an edge detecting module and a rotating module;
[0224] the processor module further includes a number positioning module, a lasso module, a normalization module, and an identification module
[0225] the number positioning module performs binarization processing on the image through adaptive binarization to obtain a binarized image;
[0226] then projects the binarized image; and finally segments the numbers by setting a moving window and using a manner of moving window registration to obtain an image of each number, and transmits the image of each number to the lasso module; and
[0227] the normalization module is configured to perform normalization on the image processed by the lasso module. In the embodiment, the normalization includes size normalization and brightness normalization.
[0228] In a specific mode of execution, the number positioning module further includes a window module, the window module designs a moving window for registration according to an interval between the prefix numbers, and moves the window horizontally on a vertical projection map, and calculates a sum of blank points in the window; and the window module can also compare the sum of blank points in different windows. The method in the first embodiment can be used as the specific method of positioning.
[0229] In another specific mode of execution, the lasso module separately performs binarization on the image of each number, performs region growing on the binarized image of each number acquired, and then selects one or two regions with an area greater than a certain preset area threshold from the regions obtained after the region growing, a rectangle where the selected region is located being a rectangle of the image of each number after lasso. A region growing algorithm, such as eight neighborhoods, can be used in the region growing.
[0230] In a specific mode of execution, it is necessary to compensate the banknote image since the status of the newness rate and damage conditions of the banknotes are different in the conventional banknote image acquisition. Therefore, a compensation module may be set in the detecting module to compensate an image acquired by the CIS image sensor module; the compensation module prestores collected brightness data in pure white or pure blank, and obtain a compensation factor with reference to a greyscale reference value of a pixel point that can be set; and stores the compensation factor to the processor module, and establishes a lookup table.
[0231] Specifically, a piece of white paper is pressed on the CIS image sensor to collect bright level data and store the data in a CISVL[i] array, and collect dark level data and store the data in CISDK[i]. A compensation factor is obtained by a formula CVLMAX/(CISVL[i]CISDK[i]), where CVLMAX is a greyscale reference value of a pixel point that can be set, and a greyscale value of the white paper is set as 200 and according to experience.
[0232] The compensation factor calculated by a DSP chip is transmitted to a random memory of an FPGA (processing module) to form a look-up table. After that, a FPGA chip multiplies the collected pixel point data by the compensation factor of a corresponding pixel point in the look-up table to directly obtain the compensated data, and then transmit the data to the DSP.
[0233] In a specific mode of execution, the identification module identifies the prefix number using a trained neural network.
[0234] In a specific mode of execution, a convolutional neural network of secondary classification is used as the neural network; All numbers and letters related to the prefix number are classified by primary classification, and categories of partial categories in the primary classification are classified again by secondary classification. It should be noted here that a number of categories of the primary classification can be set according the classification needs. setting habits, such 10 categories, 23 categories, 38 categories, etc., but is not limited here, and similarly, the secondary classification refers. the secondary classification performed again for some categories that are prone to miscalculation, and have approximate features or low accuracy on the basis of the primary classification, so that the prefix numbers can be further distinguished and identified with a higher identification rate, while the specific number of input categories and the number of output categories of the secondary classification can be set in details according to the category settings of the primary classification well as the classification needs and setting habits.
[0235] In a more specific mode of execution, a neural network structure in the first embodiment above can be used to achieve the structure of the convolutional neural network.
[0236] In a more specific mode of execution, the processor module above may further include at least one of the following modules: an orientation judging module configured to judge an orientation of the banknote; a newness rate judging module configured to judge a newness rate of the banknote; a damage identifying module configured to identify a damaged position in the banknote; and a handwriting identification module configured to identify handwritings on the banknote. The methods exemplified in the first embodiment can be adopted as the methods for implementing the functions of these modules.
[0237] In a specific mode of execution, a chip system such as FPGA (Capital Microelectronics M7 chip with a specific model of M7A12N5L144C7) may be used as the processor module. A main frequency of the chip is (125 M for FPGA and 333 M for ARM), resources occupied are 85% for logic, and 98% for EMB, and the identification time is 7 ms. The accuracy is over 99.6%.
[0238] Obviously, the above-mentioned embodiments are merely examples for clarity of illustration and are not intended to limit the modes of execution. It will be apparent to those of ordinary skills in the art that other changes or variations may be made on the basis of the above description. It is not necessary or possible to exhaust all the modes of execution here. Obvious changes or variations derived therefrom are still within the scope of protection of the present invention.