专利摘要:
The invention relates to a method for identifying a shape in an image. In a first step, the image is normalized to a binary matrix. A binary vector is then generated from the binary matrix. The binary vector is filtered with a hollow matrix to obtain a feature vector using a matrix-vector multiplication, the matrix-vector multiplication determining the values of the feature vector by applying program steps that are the result of the transformation of the vector. hollow matrix in program steps including conditions on the values of the binary vector. Finally, a probability density for a predetermined list of patterns is generated from the feature vector to identify the shape in the image.
公开号:BE1025504B1
申请号:E2015/5243
申请日:2015-04-15
公开日:2019-03-27
发明作者:Frédéric Collet;Jordi Hautot;Michel Dauw;Meulenaere Pierre De;Olivier Dupont;Günter Hensges
申请人:I.R.I.S.;
IPC主号:
专利说明:

Field of the invention
The present invention relates to a pattern recognition system. More specifically, the present invention relates to a pattern recognition system comprising a step of matrix multiplication.
Prior art of the invention
A pattern recognition system can be an optical character recognition (OCR) system. OCR systems are known. They convert the image of the text into machine readable code using a character recognition process. In an OCR system, images of what could be characters are isolated and a character recognition method is used to identify the character.
Known optical character recognition processes generally include:
• a normalization step which generates a normalized matrix from an input image;
• a feature extraction step; and • a classification step to identify the character.
In some OCR processes, the feature extraction step includes a matrix-vector multiplication between a matrix representing a filter and a vector representing the input image.
Several methods are known for matrix-vector multiplication. However, the known methods are slow because of the large number of calculation steps required.
BE2015 / 5243
W02007 / 095516 A3 concerns the problem of the acceleration of computations using sparse matrices. It discloses a system and method for decreasing the memory traffic required by operations using a sparse matrix, such as matrix-vector multiplication, because the memory bandwidth is a bottleneck in these operations and this system and this method relate to the storage of a hollow matrix and the access thereto on the memory of a microprocessor.
W02004 / 042601 A2 discloses another method for determining a multiplication process of a matrix consisting of at least approximate multiplication by a matrix with coefficients F. This method writes the matrix with coefficients F as the product of a matrix with quantized coefficients G and a matrix of correction factors H.
Summary of the invention
It is an object of this invention to provide a method for identifying a shape in an image which can be quickly calculated.
These objects are achieved according to the invention as described in the independent claims.
In an embodiment of the present invention, the method for identifying a shape in an input image comprises the steps of normalizing the image into a binary matrix, generating a binary vector from the binary matrix, filtering the vector binary with a hollow matrix using a matrix - vector multiplication to obtain a vector of characteristics, create with the vector of characteristics a probability density for a predetermined list of models,
BE2015 / 5243 select the model with the highest probability density as the best model, and classify the best model as the shape of the input image, in which the matrix-vector multiplication determines the values of the characteristic vector in applying program steps which are the result of the transformation of the hollow matrix in program steps comprising conditions on the values of the binary vector.
The transformation of the hollow matrix in program steps including conditions on the values of the binary vector makes it possible to reduce to a minimum the number of program steps, which increases the speed of execution of the program.
In an embodiment according to the invention, the conditions on the values of the binary vector are to check whether the values of the elements of the binary vector are different from zero.
This has the advantage that, if an element of the binary vector is zero, the steps corresponding to this one are not executed by the program, which increases the speed of execution of the program.
In one embodiment of the invention, the transformation of the hollow matrix in program steps further comprises conditions on the values of the elements of the hollow matrix. In one embodiment, the conditions on the values of the elements of the hollow matrix are to check whether the values of the elements of the hollow matrix are greater than a predetermined value.
These last two embodiments have the advantage of limiting the quantity of program steps and therefore of increasing the speed.
In an embodiment according to the invention, the image is an image of Asian character.
Identification of Asian characters can be particularly slow due to the large number of different characters.
BE2015 / 5243
The present invention, which increases the speed of execution of the program for character identification, is therefore particularly advantageous for identifying Asian characters.
In one embodiment of the present invention, the binary matrix is a 64x64 matrix.
It has been found that this matrix size provides an advantageous compromise between high identification accuracy and high calculation speed.
In an embodiment according to the invention, the hollow matrix is the result of a filtering based on a Gabor function.
In an embodiment of the present invention, the method for identifying a shape in an input image comprises the steps of normalizing the image into a binary matrix, generating a binary vector from the binary matrix, filtering the vector binary with a hollow matrix using matrix-vector multiplication to obtain a vector of characteristics, create with the vector of characteristics a probability density for a predetermined list of models, select the model with the highest probability density as the best model, and classify the best model as the shape of the input image, in which the vector-matrix multiplication is an approximate vector-matrix multiplication comprising only the elements of the binary vector which are not zero and comprising only the elements of the hollow matrix which are greater than a predetermined value.
The fact that only the elements of the hollow matrix greater than a predetermined value and only the elements of the binary vector which are not zero are included in the program makes it possible to reduce to a
BE2015 / 5243 minimum the number of program steps, which increases the speed of program execution.
Brief description of the drawings
For a better understanding of the present invention, reference will now be made, by way of example, to the accompanying drawings in which:
FIG. 1 shows a flow diagram of an optical character recognition process according to the invention.
FIG. 2 shows a schematic illustration of a normalization step in an optical character recognition process according to the invention.
FIG. 3 shows a flow diagram of a step for extracting characteristics in an optical character recognition process according to the invention.
Figure 4 shows a flowchart which describes how the elements of the hollow matrix are generated in an optical character recognition process according to the invention.
FIG. 5 a shows an illustration of a matrix multiplication between a hollow matrix and an image vector used in an optical character recognition process according to the invention.
FIG. 5 b shows an illustration of a threshold matrix used in an optical character recognition process according to the invention.
FIG. 6 shows a flow diagram of a classification step in an optical character recognition process according to the invention.
BE2015 / 5243
FIG. 7 shows a flow diagram of an embodiment of the first and of the second program in an optical character recognition process according to the invention.
FIG. 8 illustrates the generation of the steps of the second program by the first program.
FIG. 9 shows a flow diagram of an embodiment of the first and of the second program in an optical character recognition process according to the invention.
BE2015 / 5243
Description of the invention
The present invention will be described in relation to particular embodiments and with reference to certain drawings, but the invention is however not limited thereto. The drawings described are only schematic and are not limiting. In the drawings, the size of some of the elements may be exaggerated and not drawn to scale for illustrative purposes.
In addition, the terms first, second, third and the like in the description and in the claims are used to distinguish between similar elements and not necessarily to describe a sequential or chronological order. The terms are interchangeable under the appropriate circumstances and the embodiments of the invention can function in sequences other than those described or illustrated in this document.
In addition, the various embodiments, although qualified as preferred, should be interpreted as exemplary ways in which the invention can be implemented rather than as limiting the scope of the invention.
The term comprising, used in the claims, should not be interpreted as being limited to the means or steps listed below; it does not exclude other elements or stages. It must be interpreted as specifying the presence of the elements, whole numbers, stages or components mentioned to which reference is made, but does not exclude the presence or addition of one or more other elements, whole numbers, stages or components or groups. of these. Therefore, the scope of the expression a device comprising A and B should not be limited to devices comprising only the components A and B, on the contrary, as regards the present invention, the only listed components of the device are A and B, and the claim should also be interpreted to include equivalents of these components.
BE2015 / 5243
Binary numbers, vectors and matrices are supposed to be written here with 0 and 1 but it is clear to a person skilled in the art that they could be written as true and false, black and white or any other means to indicate a binary state.
In one embodiment of the present invention, binary images are processed. Binary images are digital images with only two possible colors for each pixel. These two colors, generally black and white, can be represented as true and false values or values 1 and 0. A representation with 1 and 0 is especially useful for performing mathematical image processing. Binary image processing often includes filtering steps in order, for example, to improve certain characteristics of the image, or to perform morphological operations on the image. Filters are generally described mathematically by matrices and the application of a filter on a binary image is described by the multiplication of the filter matrix and the binary image matrix. This type of operation can be used, for example in optical character recognition, as a step in image processing to extract the characteristics of the image in order to recognize an optical character.
Optical character recognition systems convert the image of text into machine readable code using a character recognition process. In an OCR system, images of what could be characters are isolated and a character recognition process is used to identify the character.
One embodiment of the present invention relates to optical character recognition starting from an input image representing a character. A further embodiment of the present invention relates to optical character recognition in
BE2015 / 5243 starting from an input image representing an Asian character. The input image is, in one embodiment of the invention, a two-color image. In a preferred embodiment of the present invention, the input image is a black and white image. In a further embodiment of the present invention, the input image is a two-dimensional shape, such as a logo, an image, a design, to be recognized by the recognition system. In a further embodiment of the present invention, the input image is a form, such as a sound sequence, a film sequence or a three-dimensional image, to be recognized by the recognition system.
An optical character recognition process 101 according to an embodiment of the invention shown in FIG. 1 comprises:
• a normalization step 103 which generates a normalized matrix 104 from an input image 102;
• a feature extraction step 105 which generates a feature vector 106 from the normalized matrix 104; and • a classification step 107 which calculates a best model 109 for the input image 102 from a series of possible models 108. The classification step also returns a probability density 110 of each model, which provides a measure of the accuracy of the classification step 107.
In the normalization step 103, the input image 102 is subdivided into pixels 201. Each pixel 201 of the input image 102 is represented by an element 202 of an intermediate matrix 203, as illustrated in the figure 2. The intermediate matrix 203 is, in one embodiment of the invention, a binary matrix.
BE2015 / 5243
The input image 102 is centered and its size is adjusted to a predetermined format to provide a normalized image 206 represented by a normalized matrix 104. Each element 207 of the normalized matrix 104 corresponds to a pixel 208 on the normalized image 206 In one embodiment of the present invention, centering the input image 102 and adjusting the input image 102 to a predetermined format is a combination of steps which may include updating scale, thresholding, smoothing, interpolation, filtering, ...
The normalized matrix 104 is a binary matrix which corresponds to a normalized two-color image 206. Each element of the normalized matrix 104 is characterized by its line x 204 and its column y 205, which corresponds to a location on the normalized image 206. In one embodiment of the present invention, the normalized matrix 104 is a 64x64 matrix. In one embodiment of the present invention, in the normalized image 206, the standard deviation of the distance from the center of the value representing the pixels of a given color is constant and equal to 16 pixels. In one embodiment of the present invention, the aspect ratio of aspect ratio of shape or character is preserved during the normalization step 103.
The feature extraction step 105 which generates the feature vector 106 from the normalized matrix 104 includes a matrix-vector multiplication 304. This can be explained in detail using FIG. 3. The normalized matrix 104 of dimensions AxB is transformed into an image vector 301 of length A * B. During this transformation, each element of the binary vector 301 is established equal to an element of the normalized matrix 104 so that all the elements of the normalized matrix 104 are copied only once in the binary vector 301. The binary vector 301 contains the standardized image information 206. The location of an item on line x 204 and the
BE2015 / 5243 column y 205 in the normalized matrix 104, that is to say which corresponds to a location in the normalized image 206, also corresponds to a specific value of the index j 302 which indicates the j em ® element of the binary vector 301. In an embodiment of the present invention, the binary vector 301 has 4096 elements and the index j can take all the integer values between 1 and 4096. This corresponds to a normalized matrix 104 of 64x64 ( 64 * 64 = 4096).
In an embodiment of the present invention, the vector-matrix multiplication 304 is approximate and the characteristic vector 106 is an approximation of the exact mathematical result of the matrix multiplication between a hollow matrix 303 and the binary vector 301. An index i 401 is used to specify the i em ® element of the feature vector 106. The hollow adjective indicates that the matrix is populated mainly with zeros in an embodiment of the present invention.
Figure 4 describes the generation, with a Gabor function 404, of an element 406 located at line i 401 and column j 302 of the hollow matrix 303. All the elements 406 of the hollow matrix 303 are generated in the same way way. The Gabor 404 function is a plane sine wave multiplied by a Gaussian function. The Gabor function 404 has parameters 402, which correspond to the index i, and variables x 204 and y 205, which correspond to the index j, as inputs.
The line index i 401 of the element 406 of the hollow matrix to be calculated specifies the values taken by the parameters 402 used in the Gabor function 404. In one embodiment of the present invention, the parameters 402 are represented by the symbols α ,, σ ,, λ ,, Cx and Cy:
• a, is an angle relative to the direction of the plane sine wave of the Gabor function 404;
BE2015 / 5243 • σ, is the standard deviation of the Gaussian function from the Gabor 404 function;
• λ, is the wavelength of the plane sine wave of the Gabor function 404;
• Οχ, is the center of the Gabor function 404 on the normalized image 206, in the vertical direction; and • Cy, is the center of the Gabor function 404 on the normalized image 206, in the horizontal direction.
The column index j 302 of the hollow matrix element 406 to be calculated specifies the values of the variables x 204 and y 205 used by the Gabor function 404.
The function of Gabor 404 is expressed by:
π Qj 2 f
exp i λι [cos (cq) (x - Cxj) + sin (<Xi) (y - Cy,)] (x - ex,) 2 + (y - Cy,) 2
2qî 2 the product of the Gabor function 404 calculated • from a given set of parameters 402 of the index i 401, • at a given location on line x 204 and column y 205 of the normalized image 206 which corresponds to the index j 302 is the element 406 of the line i 401 and of the column j 302 in the hollow matrix 303. The number of columns of the hollow matrix 303 is equal to the number of elements of the binary vector 301. In one embodiment of the present invention, the hollow matrix 303 is a 300x4096 matrix.
A matrix-vector multiplication 304 is performed to multiply the hollow matrix 303 and the binary vector 301, the hollow matrix 303 being the first factor of the multiplication and the binary vector 301
BE2015 / 5243 being the second factor of the multiplication as illustrated in FIG. 5. The vector resulting from the multiplication of the hollow matrix 303 and the binary vector 301 is the vector of characteristics 106. The number of elements of the vector of characteristics 106 is equal to the number of rows of the hollow matrix 303. In one embodiment of the present invention, the number of elements of the feature vector 106 is equal to 300. In one embodiment of the present invention, the vector of characteristics 106 contains specific information about the input image 102, this specific information concerning the image characteristics important for pattern recognition.
The matrix multiplication between the hollow matrix 303 and the binary vector 301 resulting in the characteristic vector 106 is shown in Figure 5a. The elements of the hollow matrix 303 are called Mij. i is the index which gives the line number and takes all the integer values between 1 and m. j is the index which gives the column number and takes all the integer values between 1 and n. Binary vector 301 has a column of n elements called vj. The feature vector 106 has a column of m elements called ri. The multiplication of the matrix is such that the elements ri of the vector of characteristics 106 are calculated as ri = Σρ = 1 Mij vj (Equation 1)
Certain terms can be overlooked in the sum of Equation 1. For example, the terms Mijvj where vj is equal to zero are also equal to 0. Furthermore, in the case where vj is equal to 1, and where the element Mij of the hollow matrix 303 is small, the term Mijvj can also be overlooked. To control small, a threshold matrix 501 with elements Tij, shown in Figure 5b, is used. In a mode
BE2015 / 5243 embodiment of the present invention, a term Mijvj can be neglected if Mij is less than Tij. In a further embodiment of the present invention, all the elements Tij of the threshold matrix 501 have the same value. Since the Gabor function 404 is a plane sine wave multiplied by a Gaussian function, many elements of the hollow matrix 303 are very small.
The classification step 107 of the OCR process 101 can be described with the aid of FIG. 6. In an embodiment of the present invention, the classification step 107 is a variation of the closest classifier method neighbors using the weighted Euclidean distance where the weights are different for each class. The classification step 107 uses the characteristic vector 106 and the models 108 as inputs. In one embodiment of the present invention, the models 108 correspond to characters, groups of characters or characters in a given font family. In one embodiment of the present invention, the models 108 correspond to Asian characters, groups of Asian characters or Asian characters in a given font family. In one embodiment of the present invention, the models 108 correspond to sound sequences, film sequences or three-dimensional shapes.
In an embodiment of the present invention, a model 108 is defined by a covariance matrix Σ and a vector of means μ. In one embodiment of the present invention, all of the non-diagonal elements of Σ are set to zero. In one embodiment of the present invention, the covariance matrices Σ are multiplied by a constant (different constant for each model) so that the traces of the covariance matrices Σ of all the models are equal. In one embodiment of the present invention, the matrix of
BE2015 / 5243 covariance is approximated. In an embodiment of the present invention, Σ is a matrix of 300x300 and μ a vector of 300 elements.
To select the model which best corresponds to the input image 102 corresponding to the vector of characteristics 106, a probability density 110 is calculated, for each model 108, as p (r) = (Γ-μ) ΐ Σ ( r-μ) where the symbol r represents the vector of characteristics 106.
The symbol | Σ | represents the determinant of the matrix Σ and the t in (r - μ) 1 indicates that the transposition of the vector (r - μ), k is equal to the number of elements of the vector of characteristics 106. In one embodiment of the present invention, k is equal to 300. The product (r μ) 1 Σ (r - μ) is a multiplication of matrix according to the usual mathematical conventions.
Once the probability density 601 of each model 108 is calculated in a calculation step 601, the best model 109 is selected in a selection step 602. The best model 109 is the model with the highest probability density 110. In one embodiment of the present invention, the classification step 107 renders the best model 109 and the probability density 110 of each model, to provide a measure of the accuracy of the classification step. In an alternative embodiment, the classification step 107 returns only the best model 109. In an alternative embodiment, the classification step 107 returns only the probability density of each model 110.
FIG. 7 illustrates a vector matrix multiplication process 304 according to an embodiment of the present invention. The hollow matrix 303 is used as an input into a first
BE2015 / 5243 program 701. When the hollow matrix 303 is used as input, the first program 701 generates a second program 702. The details of the first program 701 and the second program 702 are discussed below. The binary vector 301 is used as input in the second program 702. When the binary vector 301 is used as input, the second program 702 calculates a vector of characteristics 106 which is the result of the multiplication matrix - vector 304 between the hollow matrix 303 and the binary vector 301.
The first program 701 and the second program 702 are illustrated in FIG. 8. The first program 701 generates the steps of the second program 702 using the values of the elements of the hollow matrix 303 as input. The values of the elements of the binary vector 301 are unknown when the first program 701 generates the second program 702, they are therefore considered as parameters which can take the values 0 and 1.
The first program 701 comprises a step 801 which generates an initialization step 802 in the second program 702. In one embodiment of the present invention, the initialization step 802 sets the values of the elements of the characteristic vector 106 on zero.
The first program 701 comprises a loop 803 on the index j which corresponds to the elements vj of the binary vector 301. The index j can take integer values between 1 and n.
The loop 803 in the first program 701 comprises a step 804 in the first program 701 which generates conditional steps 805 in the second program 702. Each conditional step 805 corresponds to a value of the index j of the loop 603. Each conditional step 805 gives a condition on the value of the j em ® element vj of the binary vector 301. Each conditional step 805 indicates
BE2015 / 5243 in the second program 702 that a set of steps 806 must be executed in the second program 702 only if the value vj of the j em ® element of the binary vector 301 is equal to 1. Since the elements of the vector binary 301 can only take the values 1 and 0, the set of steps 806 will not be executed in the second program 702 if the value vj is equal to 0.
The loop 803 in the first program 701 comprises a loop 807 on the index i which corresponds to the elements ri of the vector of characteristics 106. The index i can take integer values between 1 and n.
The loop 807 in the first program 701 comprises a conditional step 808 in the first program 701. Each conditional step 808 corresponds to a value j of the index of the loop 803 and to a value i of the index of the loop 807. Each conditional step 808 gives a condition on the values of the element Mij of the hollow matrix 303 and of the element Tij of the threshold matrix 501. Each conditional step 808 indicates in the first program 701 that a step
809 can be executed in the first program 701 if the element Mij of the hollow matrix 303 is greater than the element Tij of the threshold matrix 501.
Step 809 in the first program 701 generates addition steps 810 in the second program 702. The addition step
810 in the second program 702 corresponding to a value j of the index of the loop 803 and a value i of the index of the loop 807 in the first program 701 is generated only if the element Mij of the hollow matrix 303 is greater than the element Tij of the threshold matrix 501. If the element Mij of the hollow matrix 303 is not greater than the element Tij of the threshold matrix 501, the addition step 810 does not appear not in the second program 702. The addition step 810 in the second program 702 corresponds to the indices i and j equal to ri plus ri plus Mij.
BE2015 / 5243
The second program 702 generated by the first program 701 as explained here performs an approximation of matrix 304 of the hollow matrix 303 and of the binary vector 301. In an alternative embodiment of the present invention, the threshold matrix 501 is equal to zero and the multiplication of matrix 304 is exact, not approximated.
The order in which the elements vj of the binary vector 301 are considered is not important. The second program 702 could start with any element vj and consider the elements vj one by one in any order, as long as all the elements are ultimately taken into account only once. In other words, the loop 803 in the first program 701 could consider the values of the index j in any order.
Furthermore, the order in which the elements Mij of a given line j of the hollow matrix line 303 are considered in a set of steps 806 which depend on vj is not important. The second program 702 could start with any element Mij and consider the elements one by one in any order (j being fixed, i being varied in the set of steps 806) as long as all the values of i are, ultimately taken into account and that all values of i are taken into account only once. In other words, the loop 807 in the first program 701 could consider the values of the index i in any order.
The second program 702 as generated by the first program 701 has several advantages which make it particularly fast. The advantages are:
- Only the elements Mij of the hollow matrix 303 greater than the threshold Tij are present in the second program 702. The conditions Mij greater than Tij 808 are controlled only in the first
BE2015 / 5243 program 701 and the elements Mij less than or equal to Tij do not generate steps in the second program 702. This absence is mathematically justified by the fact that for Mij very small, Mij vj is also very small (vj is equal to 0 or 1) and this term can be ignored in the sum of Equation (1). This first advantage reduces the number of steps present in the second program 702. This first advantage is particularly advantageous when the number of elements equal to 0 in the hollow matrix 303 is high.
- If an element vj of the binary vector 301 is equal to 0, the set of steps 806 which depend on vj is skipped during the execution of the second program 702, which saves execution time. It is therefore important that all the instructions corresponding to a given element vj of the binary vector 301 are grouped in a set of steps 806. This second advantage reduces the number of steps executed in the second program 702. This second advantage is particularly interesting when the number of elements equal to 0 in the binary vector 301 is high.
- In a conventional matrix multiplication, the matrix elements are stored at a distance from the program which performs the matrix multiplication and the program calls each element in turn, which takes time. In the present invention, the elements of the hollow matrix 303 are stored in the second program 702 itself.
The second program 702 takes explicitly into account all the elements vj of the binary vector 301 and all the elements ri of the resulting characteristic vector 106. This process is sometimes called loop unwinding. The second program 702, however, goes far beyond simple loop unwinding since
the two possible values of the elements of the binary vector 301 are replaced by conditional steps 805,
BE2015 / 5243
the number of conditional steps 805 is equal to the number of elements of the binary vector because each vj is taken into account only once in a conditional step 805,
only the elements of the hollow matrix 303 strictly greater than a threshold given by a threshold matrix 501 generate an addition step 810 in the second program 702.
If the elements of the threshold matrix 501 are different from zero, the generation of the second program 702 by the first program 701 introduces an approximation into the multiplication matrix - vector 304.
In one embodiment of the present invention, the OCR system is used in a mobile terminal as shown in Figure 9. The first program 701 can run on a computer device 901 requiring significant computing resources. In one embodiment of the present invention, the computing device can be a personal computer. The first program 701 uses the hollow matrix 303 as an input and generates the second program 702 as an output. The second program 702 is then used on the CPU 902 of the ROC mobile terminal 903, which typically has fewer computing resources than a personal computer. The input image 102 follows the normalization step 103 in the CPU 902 of the ROC mobile terminal 903 to generate the normalized matrix 104 representing the input image 102. The normalized matrix 104 is then transformed into binary vector 301 as described above. The second program 702 calculates the characteristic vector 106 which is the result of the matrix-vector multiplication 304 of the hollow matrix 303 and of the binary vector 301. Since the second program 702 as described by the present invention is particularly fast, the matrix-vector multiplication 304 can be performed very quickly by a CPU, which is a big advantage compared to standard matrix-vector multiplication processes.
BE2015 / 5243
References of the figures
Figure 1
102 Entrance image
103 Standardization
104 Standardized matrix
105 Feature extraction
106 Characteristic vector
107 Classification
108 Models
109 Best model
110 Probability density of each model
Figure 3
104 Standardized matrix
204 Line x
205 column y
301 Image Vector
302 Clue j
303 Hollow matrix
304 Multiplication matrix - vector
106 Characteristic vector
Figure 4
401 Index i
402 Settings
404 Gabor function
204 Line x
205 column y
406 Element (i, j) of the hollow matrix
BE2015 / 5243
302 Clue j
Figure 6
106 Characteristic vector
107 Classification
601 Calculation of the probability density of each model
602 Selection of the best model
108 Models
109 Best model
110 Probability density of each model
Figure 7
701 First program
702 Second program
106 Characteristic vector
303 Hollow matrix
301 Binary vector
Figure 8
301 Binary vector
303 Hollow matrix
701 First program
801 Generate the step "r1 = 0, ..., rm = 0"
803 Loop on j
804 Generate the step "if vj == 1"
807 Loop on i
808 Si Mij> Tij
809 Generate the step "ri = ri + Mij"
702 Second program
BE2015 / 5243
Figure 9
303 Hollow matrix
701 First program
702 Second program
301 Binary vector
302 Standard matrix
106 Characteristic vector
102 Entrance image
权利要求:
Claims (21)
[1]
CLAIMS:
1. A method for identifying a shape in an image, comprising the steps of normalizing the image into a binary matrix, generating a binary vector from the binary matrix, filtering the binary vector with a hollow matrix using matrix multiplication - vector to obtain a feature vector, create with the feature vector a probability density for a predetermined list of models, select the model with the highest probability density as the best model, and classify the best model as the form of the input image, in which the matrix-vector multiplication determines the values of the characteristic vector by applying program steps which are the result of the transformation of the hollow matrix in program steps comprising conditions on the values of the binary vector.
[2]
2. Method according to claim 1, in which the conditions on the values of the binary vector are to check whether the values of the elements of the binary vector are different from zero.
[3]
3. Method according to claim 1, in which the transformation of the hollow matrix in program steps further comprises conditions on the values of the elements of the hollow matrix.
[4]
4. Method according to claim 3, in which the conditions on the values of the elements of the hollow matrix are to check whether the values
BE2015 / 5243 elements of the hollow matrix are greater than a predetermined value.
[5]
5. The method of claim 4, wherein the image is an image of an Asian character.
[6]
6. The method of claim 5, wherein the binary matrix is a 64x64 matrix.
[7]
7. The method of claim 6, wherein the hollow matrix is the result of a filtering based on a Gabor function.
[8]
8. A computer program product capable of being loaded directly into a memory of a computer, comprising portions of software code for performing the steps of the method of claim 1 when said product is running on a computer.
[9]
9. A computer program product according to claim 8, stored on a medium usable by a computer.
[10]
10. A method for identifying a shape in an image, comprising the steps of normalizing the image into a binary matrix, generating a binary vector from the binary matrix, filtering the binary vector with a hollow matrix using matrix multiplication - vector to obtain a vector of characteristics, create with the vector of characteristics a probability density for a predetermined list of models,
BE2015 / 5243 select the model with the highest probability density as the best model, and classify the best model as the shape of the input image, in which the vector-matrix multiplication is an approximate vector-matrix multiplication including only the elements of the binary vector which are not zero and comprising only the elements of the hollow matrix which are greater than a predetermined value.
[11]
11. The method of claim 10, wherein the image is an image of an Asian character.
[12]
12. The method of claim 11, wherein the binary matrix is a 64x64 matrix.
[13]
13. The method of claim 12, wherein the hollow matrix is the result of a filtering based on a Gabor function.
[14]
14. A computer program product capable of being loaded directly into a memory of a computer, comprising portions of software code for performing the steps of the method of claim 10 when said product is running on a computer.
[15]
15. A computer program product according to claim 14, stored on a medium usable by a computer.
[16]
16. Method of matrix-approximate vector multiplication comprising the steps of:
BE2015 / 5243 unroll the matrix in program steps comprising at least one condition on the values of the elements of the vector, and apply the program steps on the vector to create the result of the multiplication matrix - vector.
[17]
17. Multiplication matrix - vector according to claim 16, in which the conditions on the values of the binary vector are to check whether the values of the elements of the binary vector are different from zero.
[18]
18. Multiplication matrix - vector according to claim 16, in which the program steps further comprise at least one condition on the values of the elements of the matrix.
[19]
19. Multiplication matrix - vector according to claim 18, in which the conditions on the values of the binary vector are to check whether the values of the elements of the binary vector are different from zero.
[20]
20. A computer program product capable of being loaded directly into a memory of a computer, comprising portions of software code for performing the steps of the method of claim 16 when said product is running on a computer.
[21]
21. A computer program product according to claim 20, stored on a medium usable by a computer.
类似技术:
公开号 | 公开日 | 专利标题
BE1025504B1|2019-03-27|Pattern recognition system
BE1024194B1|2017-12-12|Method for identifying a character in a digital image
BE1022562A9|2017-02-07|Optical character recognition method
FR2974433A1|2012-10-26|EVALUATION OF IMAGE QUALITY
BE1025502B1|2019-03-27|SYSTEM AND METHOD FOR FORM RECOGNITION USING GABOR FUNCTIONS
FR2974434A1|2012-10-26|PREDICTING THE AESTHETIC VALUE OF AN IMAGE
Yang et al.2016|Recapture image forensics based on Laplacian convolutional neural networks
US10776671B2|2020-09-15|Joint blur map estimation and blur desirability classification from an image
FR3016066A1|2015-07-03|WEIGHTING SYSTEM AND METHOD FOR COLLECTING IMAGE DESCRIPTORS
EP3570212A1|2019-11-20|Character recognition method
CA3043090C|2021-07-27|Character recognition process
EP2839410B1|2017-12-13|Method for recognizing a visual context of an image and corresponding device
FR3054699A3|2018-02-02|ENRICHED BAR CODE
EP2943935B1|2017-03-08|Estimation of the movement of an image
FR3072806B1|2019-09-27|METHOD FOR CALCULATING A GLOBAL DESCRIPTOR OF AN IMAGE
FR3087032A1|2020-04-10|METHODS OF LEARNING PARAMETERS OF A CONVOLVED NEURON ARRAY, DETECTING ELEMENTS OF INTEREST IN AN IMAGE, AND ASSOCIATION OF ELEMENTS OF INTEREST IN AN IMAGE
FR2875627A1|2006-03-24|METHOD FOR DETERMINING AN IMAGE DESCRIPTOR, IMAGE COMPARISON METHOD, IMAGE SEARCHING METHOD, AND ASSOCIATED DEVICES
BE1021013B1|2014-12-11|METHOD AND SYSTEM FOR IMPROVING THE QUALITY OF COLOR IMAGES
Gupta et al.2020|A Modified Blind Deconvolution Algorithm for Deblurring of Colored Images
BE1020588A5|2014-01-07|METHOD OF RECOGNIZING FORMS, COMPUTER PROGRAM PRODUCT, AND MOBILE TERMINAL.
Huang et al.2015|Efficient face image deblurring via robust face salient landmark detection
EP1684210B1|2009-08-26|Red-eye detection based on skin region detection
EP2856391B1|2019-03-27|Method for detecting drop shadows on an initial image
FR3087033A1|2020-04-10|METHODS OF LEARNING PARAMETERS OF A CONVOLVED NEURON ARRAY AND DETECTING VISIBLE ELEMENTS OF INTEREST
Ahmed et al.2021|Image Splicing Detection and Localisation using EfficientNet and Modified U-Net Architecture
同族专利:
公开号 | 公开日
WO2015158784A1|2015-10-22|
US20150302268A1|2015-10-22|
BE1025504A1|2019-03-20|
US9311558B2|2016-04-12|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
US20120063689A1|2010-09-15|2012-03-15|The Johns Hopkins University|Object recognition in an image|
US4544230A|1983-01-19|1985-10-01|Battelle Development Corporation|Method of evaluating a polynomial function using an array of optical modules|
US5206822A|1991-11-15|1993-04-27|Regents Of The University Of California|Method and apparatus for optimized processing of sparse matrices|
CN1459761B|2002-05-24|2010-04-21|清华大学|Character identification technique based on Gabor filter set|
GB0225953D0|2002-11-07|2002-12-11|Univ Bradford|Improvements in and relating to processing apparatus and method|
SG121783A1|2003-07-29|2006-05-26|Sony Corp|Techniques and systems for embedding and detectingwatermarks in digital data|
GB0524572D0|2005-12-01|2006-01-11|Univ London|Information retrieval|
US8775495B2|2006-02-13|2014-07-08|Indiana University Research And Technology|Compression system and method for accelerating sparse matrix computations|
US8364739B2|2009-09-30|2013-01-29|International Business Machines Corporation|Sparse matrix-vector multiplication on graphics processor units|US10649970B1|2013-03-14|2020-05-12|Invincea, Inc.|Methods and apparatus for detection of functionality|
US9940459B1|2014-05-19|2018-04-10|Invincea, Inc.|Methods and devices for detection of malware|
US9690938B1|2015-08-05|2017-06-27|Invincea, Inc.|Methods and apparatus for machine learning based malware detection|
EP3475822B1|2016-06-22|2020-07-22|Invincea, Inc.|Methods and apparatus for detecting whether a string of characters represents malicious activity using machine learning|
GB2555192B|2016-08-02|2021-11-24|Invincea Inc|Methods and apparatus for detecting and identifying malware by mapping feature data into a semantic space|
US10871964B2|2016-12-29|2020-12-22|Qualcomm Incorporated|Architecture for sparse neural network acceleration|
CN109242892B|2018-09-12|2019-11-12|北京字节跳动网络技术有限公司|Method and apparatus for determining the geometric transform relation between image|
CN111814810A|2020-08-11|2020-10-23|Oppo广东移动通信有限公司|Image recognition method and device, electronic equipment and storage medium|
法律状态:
2019-05-08| FG| Patent granted|Effective date: 20190327 |
优先权:
申请号 | 申请日 | 专利标题
US14/254,076|US9311558B2|2014-04-16|2014-04-16|Pattern recognition system|
US14/254,076|2014-04-16|
[返回顶部]