BE1025134B1 - Method of identifying a character in a digital image - Google Patents
Method of identifying a character in a digital image Download PDFInfo
- Publication number
- BE1025134B1 BE1025134B1 BE20175263A BE201705263A BE1025134B1 BE 1025134 B1 BE1025134 B1 BE 1025134B1 BE 20175263 A BE20175263 A BE 20175263A BE 201705263 A BE201705263 A BE 201705263A BE 1025134 B1 BE1025134 B1 BE 1025134B1
- Authority
- BE
- Belgium
- Prior art keywords
- character
- segmentation
- characters
- graph
- ocr
- Prior art date
Links
Landscapes
- Character Input (AREA)
Abstract
L'invention concerne un procédé de combinaison d'une première reconnaissance de caractères optique (OCR) (12) et d'une seconde OCR (100). La première OCR (12) opère d'abord sur une image de chaîne de caractères (11). Sa sortie (13) (premiers caractères identifiés, positions des caractères et paramètres de vraisemblance des caractères) est utilisée pour générer un premier graphe (16). Des points de segmentation rapportés aux positions des premiers caractères identifiés (14) sont utilisés comme entrée par la seconde OCR (100) en effectuant une segmentation et une classification combinées sur l'image de chaîne de caractères (11). La sortie (17) (seconds caractères identifiés, positions des caractères et paramètres de vraisemblance des caractères) de la seconde OCR (100) est utilisée pour mettre à jour (20) le premier graphe (16) afin de générer un second graphe (21) qui combine la sortie (13) de la première OCR (12) avec la sortie (17) de la seconde OCR (100). Des modèles de décision sont ensuite utilisés pour modifier (22) les pondérations de trajets dans le second graphe (21) afin de générer un troisième graphe (23). Un meilleur trajet est déterminé (24) sur le troisième graphe (23) afin d'obtenir l'identification (25) des caractères présents dans l'image de chaîne de caractères (11).The invention relates to a method for combining a first optical character recognition (OCR) (12) and a second OCR (100). The first OCR (12) operates first on a string image (11). Its output (13) (first identified characters, character positions and character likelihood parameters) is used to generate a first graph (16). Segmentation points related to the positions of the first identified characters (14) are used as input by the second OCR (100) by performing combined segmentation and classification on the character string image (11). The output (17) (second identified characters, character positions and character likelihood parameters) of the second OCR (100) is used to update (20) the first graph (16) to generate a second graph (21). ) which combines the output (13) of the first OCR (12) with the output (17) of the second OCR (100). Decision models are then used to modify (22) the path weights in the second graph (21) to generate a third graph (23). A better path is determined (24) on the third graph (23) to obtain identification (25) of the characters present in the character string image (11).
Description
(30) Données de priorité :(30) Priority data:
(73) Titulaire(s) :(73) Holder (s):
I.R.I.S.IRIS.
1435, MONT-SAINT-GUIBERT1435, MONT-SAINT-GUIBERT
Belgique (72) Inventeur(s) :Belgium (72) Inventor (s):
COLLET Frédéric 1040 ETTERBEEKCOLLET Frédéric 1040 ETTERBEEK
BelgiqueBelgium
HAUTOT Jordi 4122 NEUPREHAUTOT Jordi 4122 NEUPRE
BelgiqueBelgium
DAUW MichelDAUW Michel
1831 MACHELEN1831 MACHELEN
BelgiqueBelgium
DE MUELENAERE Pierre 1490 COURT-SAINT-ETIENNE Belgique (54) Procédé d'identification d'un caractère dans une image numérique (57) L'invention concerne un procédé de combinaison d'une première reconnaissance de caractères optique (OCR) (12) et d'une seconde OCR (100). La première OCR (12) opère d'abord sur une image de chaîne de caractères (11). Sa sortie (13) (premiers caractères identifiés, positions des caractères et paramètres de vraisemblance des caractères) est utilisée pour générer un premier graphe (16). Des points de segmentation rapportés aux positions des premiers caractères identifiés (14) sont utilisés comme entrée par la seconde OCR (100) en effectuant une segmentation et une classification combinées sur l'image de chaîne de caractères (11). La sortie (17) (seconds caractères identifiés, positions des caractères et paramètres de vraisemblance des caractères) de la seconde OCR (100) est utilisée pour mettre à jour (20) le premier graphe (16) afin de générer un second graphe (21) qui combine la sortie (13) de la première OCR (12) avec la sortie (17) de la seconde OCR (100). Des modèles de décision sont ensuite utilisés pour modifier (22) les pondérations de trajets dans le second graphe (21) afin de générer un troisième graphe (23). Un meilleur trajet est déterminé (24) sur le troisième graphe (23) afin d'obtenir l'identification (25) des caractères présents dans l'image de chaîne de caractères (11).DE MUELENAERE Pierre 1490 COURT-SAINT-ETIENNE Belgium (54) Method for identifying a character in a digital image (57) The invention relates to a method for combining a first optical character recognition (OCR) (12) and a second OCR (100). The first OCR (12) operates first on a character string image (11). Its output (13) (first identified characters, positions of the characters and likelihood parameters of the characters) is used to generate a first graph (16). Segmentation points related to the positions of the first identified characters (14) are used as input by the second OCR (100) by performing combined segmentation and classification on the character string image (11). The output (17) (second characters identified, character positions and character likelihood parameters) of the second OCR (100) is used to update (20) the first graph (16) in order to generate a second graph (21 ) which combines the output (13) of the first OCR (12) with the output (17) of the second OCR (100). Decision models are then used to modify (22) the path weights in the second graph (21) in order to generate a third graph (23). A better path is determined (24) on the third graph (23) in order to obtain the identification (25) of the characters present in the character string image (11).
... image da chains as caramàres... image of chains as caramàres
PrsmlèrePrsmlère
OCROCR
Promtem candie,-sis caractères ” Γ.Promtem candie, -sis characters ”Γ.
..5..5
........
z100 u z 100 u
S&grneniaiien classification comfoinioaS & grneniaiien classification comfoinioa
Second caîiiiirfai •caractère avec s? position '' ____ eUa f.-rr»ab>lité Ξ1..............7.............Second caïiiiirfai • character with s? position '' ____ eUa f.-rr »ab> lité Ξ1 .............. 7 .............
Misa a Jour du grapheUpdate to Graph Day
Der.i.xlèmë~ „____JJ.rap.te____Der.i.xlèmë ~ „____ DD.rap.te ____
Addliior· ai --î; ™ -.:.7Addliior · ai - î; ™ -.:.7
TrorstèrneTrorstèrne
tewnjicabon clos caracferastewnjicabon clos caracferas
.. 17.. 17
BREVET D'INVENTION BELGEBELGIAN INVENTION PATENT
Le Ministre de l'Economie,The Minister of the Economy,
Vu la Convention de Paris du 20 mars 1883 pour la Protection de la propriété industrielle ;Having regard to the Paris Convention of March 20, 1883 for the Protection of Industrial Property;
Vu la loi du 28 mars 1984 sur les brevets d'invention, l'article 22, pour les demandes de brevet introduites avant le 22 septembre 2014 ;Considering the law of March 28, 1984 on patents for invention, article 22, for patent applications introduced before September 22, 2014;
Vu le Titre 1er “Brevets d’invention” du Livre XI du Code de droit économique, l'article XI.24, pour les demandes de brevet introduites à partir du 22 septembre 2014 ;Given Title 1 “Patents for invention” of Book XI of the Code of Economic Law, article XI.24, for patent applications introduced from September 22, 2014;
Vu l'arrêté royal du 2 décembre 1986 relatif à la demande, à la délivrance et au maintien en vigueur des brevets d'invention, l'article 28 ;Having regard to the Royal Decree of 2 December 1986 relating to the request, the issue and the maintenance in force of invention patents, article 28;
Vu la demande de brevet d'invention reçue par l'Office de la Propriété intellectuelle en date du 13/04/2017.Given the patent application received by the Intellectual Property Office on 04/13/2017.
Considérant que pour les demandes de brevet tombant dans le champ d'application du Titre 1er, du Livre XI du Code de Droit économique (ci-après CDE), conformément à l'article XI. 19, §4, alinéa 2, du CDE, si la demande de brevet a fait l'objet d'un rapport de recherche mentionnant un défaut d'unité d'invention au sens du §ler de l'article XI.19 précité et dans le cas où le demandeur n'effectue ni une limitation de sa demande ni un dépôt d'une demande divisionnaire conformément aux résultats du rapport de recherche, le brevet délivré sera limité aux revendications pour lesquelles le rapport de recherche a été établi.Whereas for patent applications falling within the scope of Title 1, Book XI of the Code of Economic Law (hereinafter CDE), in accordance with article XI. 19, §4, paragraph 2, of the CDE, if the patent application has been the subject of a search report mentioning a lack of unity of invention within the meaning of the §ler of article XI.19 cited above and in the event that the applicant does not limit or file a divisional application in accordance with the results of the search report, the granted patent will be limited to the claims for which the search report has been drawn up.
Arrête :Stopped :
Article premier. - Il est délivré àFirst article. - It is issued to
I.R.I.S., Parc-Scientifique de Louvain-la-Neuve, Rue du Bosquet 10, 1435 MONT-SAINT-GUIBERT Belgique;I.R.I.S., Parc-Scientifique de Louvain-la-Neuve, Rue du Bosquet 10, 1435 MONT-SAINT-GUIBERT Belgium;
représenté parrepresented by
GEVERS PATENTS, Holidaystraat 5, 1831, DIEGEM;GEVERS PATENTS, Holidaystraat 5, 1831, DIEGEM;
un brevet d'invention belge d'une durée de 20 ans, sous réserve du paiement des taxes annuelles visées à l’article XI.48, §1 du Code de droit économique, pour : Procédé d'identification d'un caractère dans une image numérique.a Belgian invention patent with a duration of 20 years, subject to the payment of the annual fees referred to in article XI.48, §1 of the Code of Economic Law, for: Method of identifying a character in a digital image.
INVENTEUR(S) :INVENTOR (S):
COLLET Frédéric, Rue Ernest Havaux 27, 1040, ETTERBEEK;COLLET Frédéric, Rue Ernest Havaux 27, 1040, ETTERBEEK;
HAUTOT Jordi, Rue Fine Pierre 14, 4122, NEUPRE;HAUTOT Jordi, Rue Fine Pierre 14, 4122, NEUPRE;
DAUW Michel, Calenbergstraat 26, 1831, MACHELEN;DAUW Michel, Calenbergstraat 26, 1831, MACHELEN;
DE MUELENAERE Pierre, Rue des Couteliers 24, 1490, COURT-SAINT-ETIENNE;DE MUELENAERE Pierre, Rue des Couteliers 24, 1490, COURT-SAINT-ETIENNE;
PRIORITE(S) :PRIORITY (S):
DIVISION :DIVISION:
divisé de la demande de base :divided from the basic request:
date de dépôt de la demande de base :filing date of the basic application:
Article 2. - Ce brevet est délivré sans examen préalable de la brevetabilité de l'invention, sans garantie du mérite de l'invention ou de l'exactitude de la description de celle-ci et aux risques et périls du (des) demandeur(s).Article 2. - This patent is granted without prior examination of the patentability of the invention, without guarantee of the merit of the invention or of the accuracy of the description thereof and at the risk and peril of the applicant (s) ( s).
Bruxelles, le 16/11/2018,Brussels, 11/16/2018,
Par délégation spéciale :By special delegation:
B E2017/5263B E2017 / 5263
La présente invention concerne des procédés et des programmes peur identifier des caractères dans une image numérique.The present invention relates to methods and programs for identifying characters in a digital image.
Technique d’arrière-planBackground technique
On connaît des procédés de reconnaissance optique de caractères (OCR) qui convertissent un texte présent dans une image en un code iisibie sur machine.There are known optical character recognition (OCR) methods which convert text present in an image into machine readable code.
Le brevet US n° 5 519 786 décrit un procédé de mise en œuvre d'un schéma de vote pondéré pour lire et reconnaître de manière précise des caractères dans une image balayée. Une pluralité de processeurs de reconnaissance optique de caractères balaye l’image et lisent les mêmes caractères d’image. Chaque processeur OCR délivre un caractère rapparié correspondant â chaque caractère lu. Pour une 15 lecture de caractère particulière, ies caractères rapportés par chaque processeur OCR sont groupés en un ensemble de candidats caractères.US Patent 5,519,786 describes a method of implementing a weighted voting scheme to accurately read and recognize characters in a scanned image. A plurality of optical character recognition processors scan the image and read the same image characters. Each OCR processor delivers a matched character corresponding to each character read. For a particular character reading, the characters reported by each OCR processor are grouped into a set of candidate characters.
vresee
En deuxième lieu, un préprocesseur doit quantifier les forces et les faiblesses des processeurs OCR pour générer les cellules de la matrice de confusion qui contiennent dos probabilités que le 30 caractère lu par un processeur OCR soit le caractère rapporté par le processeur OCR. Cette étape peut prendre du temps. En outre, si cetteSecond, a preprocessor must quantify the strengths and weaknesses of the OCR processors to generate the cells of the confusion matrix which contain the probability that the character read by an OCR processor is the character reported by the OCR processor. This step can take time. Furthermore, if this
B E2017/5263 étape n’est pas bien exécutée, par exempte du fait que l’ensemble de formation utilisé à cet effet ne convient pas à un type donné de caractère, une probabilité peut être faible pour un caractère qui est en fait bien reconnu et le procédé OCR peut fournir des résultats pires que tes processeurs OCR pris indépendamment.B E2017 / 5263 step is not well executed, for example because the training set used for this purpose is not suitable for a given type of character, a probability may be low for a character which is in fact well recognized and the OCR process can provide worse results than your independent OCR processors.
d’identitication meilleurs et/ou plus rapides. Cet objectif est atteint selon l’invention par un procédé de sélection de candidats caractères dans un procédé d’identification de caractères d’une image numérique, le procédé comprenant tes étapes consistant à :better and / or faster identification. This objective is achieved according to the invention by a process for selecting character candidates in a process for identifying characters in a digital image, the process comprising your steps consisting in:
a) appliquer un premier processus d’identification de caractères pour déterminer des premiers candidats caractères et une liste de points de segmentation des premiers candidats caractères,a) apply a first character identification process to determine the first character candidates and a list of segmentation points for the first character candidates,
b) générer une liste de largeurs de caractères correspondant à un point de segmentation d’entre te liste de points de segmentation, : îrtA V5Î SX»’ e partie de limage numérique correspondant au point de segmentation et à une largeur de caractère d'entre la liste de largeurs de caractères,b) generate a list of character widths corresponding to a segmentation point of the list of segmentation points, the list of character widths,
d) appliquer un procédé de classification de caractères sur la partie de l’image numérique pour obtenir une hypothèse ID d’un caractère éventuellement présent dans la partie de l’image numérique et un paramètre de vraisemblance qui se rapporte à la vraisemblance qued) apply a character classification process on the part of the digital image to obtain an hypothesis ID of a character possibly present in the part of the digital image and a likelihood parameter which relates to the likelihood that
e) sélectionner l’hypothèse ID comme second candidat caractère dans l’image numérique si le paramètre de vraisemblancee) select the hypothesis ID as the second character candidate in the digital image if the likelihood parameter
remplit un premier critère prédéterminé.fulfills a first predetermined criterion.
B E2017/5263B E2017 / 5263
Dans te procédé selon l’invention, tes points de segmentation déterminés à partir du premier processus d’identification de caractères (première OCR) sont utilisés comme entrée pour un processus combiné de segmentation et de classification (qui comprend 5 les étapes b, c, d et e), qui est une seconde OCR. En conséquence, la seconde OCR est à même d’effectuer une meilleure segmentation que si elle l’opérait seule sans l’entrée de te première OCR. Cela permet à te seconde OCR d’utiliser des points de segmentation qu’elle n’aurait pas déterminés seule et donc de reconnaître certains caractères, par 10 exempte des caractères asiatiques, qu’elle n’aurait pas reconnus seule.In the method according to the invention, your segmentation points determined from the first character identification process (first OCR) are used as input for a combined segmentation and classification process (which includes steps b, c, d and e), which is a second OCR. As a result, the second OCR is able to perform better segmentation than if it operated alone without the entry of the first OCR. This allows the second OCR to use segmentation points that it would not have determined alone and therefore to recognize certain characters, for example 10 Asian characters, that it would not have recognized alone.
En outre, ia seconde OCR travaille plus rapidement avec cette entrée de la première OCR, car son estimation initiale de la largeur du caractère suivant est meilleure que sans cette entrée.In addition, the second OCR works faster with this entry from the first OCR, because its initial estimate of the width of the next character is better than without this entry.
□ans des modes de réalisation de l’invention, te procédé 15 comprend en outre une étape f) de mise à jour de la liste de points de segmentation avec un autre point de segmentation déterminé sur la base de la partie de l’image numérique correspondant au second caractère candidat sélectionné. On s’attend à ce que cet autre point de segmentation soit utile pour le caractère suivant te caractère qui a juste 20 été identifié.□ In the embodiments of the invention, the method 15 further comprises a step f) of updating the list of segmentation points with another segmentation point determined on the basis of the part of the digital image. corresponding to the second candidate character selected. This other segmentation point is expected to be useful for the next character you just identified.
Dans un mode de réalisation de l’invention, l’étape f) comprend :In one embodiment of the invention, step f) comprises:
te contrôle du fait que l’autre point de segmentation est ou non déjà dans la liste de points de segmentation et l’addition de l'autre point de segmentation à la liste de points de segmentation si l’autre point de segmentation n’est pas déjà présent dans te liste de points de segmentation.checks whether the other segment point is already in the segment point list and whether the other segment point is added to the segment point list if the other segment point is not not already present in the list of segmentation points.
Dans un mode de réalisation de l’invention, à l’étape b), la liste de largeurs de caractères est générée sur la base d’au moins te liste 30 de points de segmentation des premiers candidats caractères. La liste de largeurs de caractères peut donc être générée rapidement et de manièreIn one embodiment of the invention, in step b), the list of character widths is generated on the basis of at least the list of segmentation points of the first character candidates. The list of character widths can therefore be generated quickly and easily.
B E2017/5263 fiable, car sa détermination est basée sur des données provenant de la première OCR.B E2017 / 5263 reliable, since its determination is based on data from the first OCR.
De manière avantageuse, les étapes b, c, d el e sont effectuées pour chaque point de segmentation de la liste de points de 5 segmentation.Advantageously, steps b, c, d el e are performed for each segmentation point in the list of segmentation points.
Dans un mode de réalisation de l’invention, les étapes a, d et e sont répétées pour une autre largeur de caractères de la liste de largeurs de caractères si te paramètre de vraisemblance ne satisfait pas au premier critère prédéterminé. Si te paramètre de vraisemblance ne 10 satisfait pas au premier critère prédéterminé, il indique que l’hypothèse ID peut ne pas être correcte. II vaut donc mieux considérer une autre partie de l’Image numérique démarrant au même point de segmentation et qui couvre en conséquence au moins en partie tes mêmes composants connectés.In one embodiment of the invention, steps a, d and e are repeated for another character width from the list of character widths if the likelihood parameter does not meet the first predetermined criterion. If the likelihood parameter does not meet the first predetermined criterion, it indicates that the hypothesis ID may not be correct. It is therefore better to consider another part of the digital image starting at the same segmentation point and which therefore covers at least in part your same connected components.
Dans un mode de réalisation de l’invention, les étapes c, dIn one embodiment of the invention, steps c, d
candidats caractères et de leurs points de segmentation et mettre à jour la structure de données avec te second candidat caractère sélectionné et un point de segmentation suivant calculé à partir de la largeur de caractère du second candidat caractère sélectionné et du point de segmentation utilisé pour déterminer te partie de l’image numérique correspondant au second candidat caractère sélectionné.character candidates and their segmentation points and update the data structure with the second selected character candidate and a next segmentation point calculated from the character width of the second selected character candidate and the segmentation point used to determine te part of the digital image corresponding to the second character candidate selected.
B E2017/5263B E2017 / 5263
Un premier but de le structure de données est de combiner les résultats du procédé de classification de caractères avec tes résultats du premier processus d’identification de caractères.A first goal of the data structure is to combine the results of the character classification process with your results of the first character identification process.
Dans un mode de réalisation de l’invention, l’étape a) comprend la détermination de premiers paramètres de vraisemblance des premiers candidats caractères fournissant une indication de la chance que te caractère candidat soit correct, la structure de données comprend tes premiers paramètres de vraisemblance des premiers candidats caractères et le procédé comprend en outre tes étapes consistant à ;In an embodiment of the invention, step a) comprises the determination of first likelihood parameters of the first candidate characters providing an indication of the chance that the candidate character is correct, the data structure includes your first likelihood parameters first character candidates and the method further comprises the steps of;
changer l'échelle des premiers paramètres de vraisemblance des premiers candidats caractères et/ou des paramètres de vraisemblance des seconds candidats caractères pour les rendre comparables Tun à l’autre et mettre à jour ia structure de données avec tes paramètres de vraisemblance des seconds candidats caractères.change the scale of the first likelihood parameters of the first character candidates and / or the likelihood parameters of the second character candidates to make them comparable to each other and update the data structure with your likelihood parameters of the second character candidates .
es candidats caractèrescharacter candidates
Avantageusement, le procédé comprend l’étape d’application d’un procédé de modélisation de décision sur ia structure de données mise à jour. Les modèles de décision améliorent la précision du procédé.Advantageously, the method comprises the step of applying a decision modeling method to the updated data structure. Decision models improve the accuracy of the process.
Dans un mode de réalisation de l’invention, le procédé comprend en outre les étapes consistant à :In one embodiment of the invention, the method further comprises the steps consisting in:
déterminer un meilleur trajet dans te structure de données mise à jour etdetermine a better route in the updated data structure and
B E2017/5263 de unB E2017 / 5263 of a
De préférence, l’étape d’application d’un procédé de modélisation de décision comprend le fait d’avantager les candidate caractères qui ont les premiers paramètres de vraisemblance premiers candidate caractères et les seconds paramètres vraisemblance de seconds candidats caractères satisfaisant à troisième critère prédéterminé.Preferably, the step of applying a decision modeling method comprises favoring the candidate characters which have the first likelihood parameters first character candidates and the second likelihood parameters of second character candidates satisfying the third predetermined criterion .
Dans un mode de réalisation de l’invention, le premier procédé d’identification de caractères fournit des premiers candidate caractères pour des caractères d’un premier type, dans lequel le procédé de classification de caractères fournit des seconds candidats caractères pour des caractères d'un second type, et le procédé de modélisation de décision comprend le fait d’avantager ies candidats caractères du premier type si les candidate caractères sont fournis par le premier processus d’identification de caractères et le fait de favoriser les candidats caractères du second type si les candidats caractères sontIn one embodiment of the invention, the first character identification method provides first character candidates for characters of a first type, in which the character classification method provides second character candidates for characters of a second type, and the decision modeling method comprises the advantage of the character candidates of the first type if the character candidates are provided by the first character identification process and the fact of favoring the character candidates of the second type if the character candidates are
B E2017/5263 positions de premiers candidats caractères par segmentation et classification combinées ou par une étape indépendante effectuée de préférence entre les étapes a) et b) et éventuellement entre les étapes b) et c).B E2017 / 5263 positions of first candidate characters by combined segmentation and classification or by an independent step preferably carried out between steps a) and b) and possibly between steps b) and c).
Un autre objectif de ia présente invention est de fournir un procédé d’identification de caractères dans une image numérique.Another object of the present invention is to provide a method of identifying characters in a digital image.
Cet objectif est atteint selon l’invention par un procédé comprenant :This objective is achieved according to the invention by a process comprising:
a) l’application d’un premier procédé d’identification de caractères pour déterminer des premiers candidats caractères et des premiers points de segmentation correspondant aux premiers candidats caractères,a) the application of a first character identification method to determine first character candidates and first segmentation points corresponding to the first character candidates,
b) te génération d’un premier graphe sur te base des premiers candidats caractères et des premiers points de segmentation, dans lequel tes premiers points de segmentation sont représentés par des sommets et les premiers candidats caractères par des bords,b) the generation of a first graph based on the first character candidates and the first segmentation points, in which your first segmentation points are represented by vertices and the first character candidates by edges,
c) l'application d’un second procédé d’identification de caractères sur au moins une partie de l'image numérique pour générer au moins un second candidat caractère,c) the application of a second character identification process on at least part of the digital image to generate at least one second character candidate,
d) la mise à jour du graphe par addition du au moins un second candidat caractère au premier graphe etd) updating the graph by adding the at least one second character candidate to the first graph and
e) la sélection dans le graphe mis à jour de candidats caractères comme caractères de l'image numérique.e) selecting from the updated graph of candidate characters as characters of the digital image.
Dans ce procédé, le graphe, lorsqu’il est généré, comprend comme sommets les points de segmentation provenant de ia premièreIn this process, the graph, when it is generated, includes as vertices the segmentation points from the first
OCR et comme bords tes ID provenant de la première OCR. Le graphe est ensuite mis à jour avec de nouveaux sommets et de nouveaux bords provenant de la seconde OCR. Au cours de te sélection de candidats caractères (étape e), tous tes bords sont considérés et aucun d’entre eux n’est a prion mis au rebut Ii ny a aucune nécessité de tester les OCR l'un vis-à-vis de Vautre pour déterminer leurs faiblesses, car toutes les IDOCR and as edges your ID from the first OCR. The graph is then updated with new vertices and new edges from the second OCR. During the selection of character candidates (step e), all of your edges are considered and none of them is prion discarded. There is no need to test the OCRs against one another. Other to determine their weaknesses, because all IDs
B E2017/5263 provenant de toutes tes OCR sent considérés même si une règle de décision favorisant certains bords selon certaines conditions pourrait être introduite dans le graphe. H n’y a aucune nécessité d’une structure comme la matrice de confusion non plus.B E2017 / 5263 from all your OCRs are considered even if a decision rule favoring certain edges under certain conditions could be introduced in the graph. There is no need for a structure like the confusion matrix either.
De préférence, le second procédé d’identification de caractères génère au moins un second point de segmentation et ie au moins un second point de segmentation est ajouté au graphe à l’étape d).Preferably, the second character identification method generates at least one second segmentation point and ie at least one second segmentation point is added to the graph in step d).
Dans un mode de réalisation de l’invention, le premier procédé d’identification de caractères fournit des premiers paramètres de vraisemblance fournissant une vraisemblance que tes premiers candidats caractères sont corrects, le second procédé d’identification de caractères fournit des seconds paramètres de vraisemblance fournissant une vraisemblance que le au moins un second candidat caractère est correct, et le procédé comprend en outre tes étapes consistant à :In an embodiment of the invention, the first character identification method provides first likelihood parameters providing a likelihood that your first character candidates are correct, the second character identification method provides second likelihood parameters providing a likelihood that the at least one second character candidate is correct, and the method further comprises the steps of:
changer l’échelle des premiers paramètres de vraisemblance et/ou des seconds paramètres de vraisemblance pour les rendre comparables l'un à l’autre, ajouter tes premiers paramètres de vraisemblance dans le premier graphe et ajouter les seconds paramètres de vraisemblance dans te graphe mis à jour.change the scale of the first likelihood parameters and / or second likelihood parameters to make them comparable to each other, add your first likelihood parameters in the first graph and add the second likelihood parameters in the set graph up to date.
Avantageusement, le procédé comprend l’étape d’application d’un procédé de modélisation de décision sur le graphe mis à jour.Advantageously, the method comprises the step of applying a decision modeling method to the updated graph.
Dans un mode de réalisation de l’invention, le procédé de modélisation de décision comprend une règle qui favorise les candidats caractères qui ont te premier paramètre de vraisemblance et ies seconds paramètres de vraisemblance répondant à un troisième critère prédéterminé.In one embodiment of the invention, the decision modeling method comprises a rule which favors the candidate characters which have the first likelihood parameter and the second likelihood parameters meeting a third predetermined criterion.
B E2017/5263 ou d'un second type et te procédé de modélisation de décision comprend une règle qui favorise les candidats caractères correspondant au premier type de caractères si ces candidats caractères ont été déterminés par ie premier procédé d’identification de caractères et favorise les candidats caractères correspondant au second type de caractères si ces candidats caractères ont été déterminés par le second procédé d'identification de caractères.B E2017 / 5263 or of a second type and the decision modeling method includes a rule which favors the character candidates corresponding to the first type of characters if these character candidates have been determined by the first character identification method and favors the character candidates corresponding to the second type of characters if these character candidates have been determined by the second character identification method.
de segmentation provenant du premier procédé d’identification caractères. Avec ce procédé, ie second procédé d’identification de caractères est â même d'effectuer une meilleure segmentation que s’il transitoire lisible sur ordinateur stockant un programme amena ordinateur à exécuter un procédé pour identifier des caractères danssegmentation from the first character identification process. With this method, the second character identification method is capable of performing better segmentation than if it transient readable on computer storing a program leads computer to execute a method to identify characters in
b)b)
c) nor un d® une correspondant au point de segmentation fourni par la position d'un premier candidat caractère initiai et à une largeur de caractère provenant de te liste de larqeurs de caractères.c) nor one of a corresponding to the segmentation point provided by the position of a first candidate initial character and to a character width coming from the list of character widths.
B E2017/5263B E2017 / 5263
d) appliquer un procédé de classification de caractères sur la partie de l’image numérique pour obtenir une hypothèse ID d’un caractère éventuellement présent dans la partie de l’image numérique et un paramètre de vraisemblance qui se rapporte à la vraisemblance que l’hypothèse ID est correcte etd) apply a character classification process on the part of the digital image to obtain an hypothesis ID of a character possibly present in the part of the digital image and a likelihood parameter which relates to the likelihood that the hypothesis ID is correct and
e) sélectionner l’hypothèse iD comme caractère dans l’image numérique si le paramètre de vraisemblance répond à un premier critère prédéterminé.e) select the iD hypothesis as the character in the digital image if the likelihood parameter meets a first predetermined criterion.
Le procédé selon l’invention est de préférence conçu peur tourner sur un ordinateur.The method according to the invention is preferably designed to run on a computer.
Brève description des dessinsBrief description of the drawings
L’invention sera mieux comprise au moyen de te description suivante et des figures ci-annexées.The invention will be better understood by means of the following description and the attached figures.
La Fig. 1 illustre un schéma fonctionnel d’un procédé OGR selon l’invention.Fig. 1 illustrates a functional diagram of an OGR process according to the invention.
essiessi
BE2017/5263 revendications. Les dessins décrits sont seulement schématiques et ne sont pas limitatifs. Dans les dessins, ia taille de certains des éléments peut être exagérée et non à l’échelle à des fins illustratives. Les dimensions et ies dimensions relatives ne correspondent donc pas 5 nécessairement aux réductions réelles pour mettre en pratique l’invention.BE2017 / 5263 claims. The drawings described are only schematic and are not limiting. In the drawings, the size of some of the items may be exaggerated and not to scale for illustrative purposes. The dimensions and the relative dimensions therefore do not necessarily correspond to the actual reductions in order to practice the invention.
En outre, tes termes premier, deuxième, troisième, etc.In addition, your terms first, second, third, etc.
dans la description et les revendications sont utilisés pour distinguer entre des éléments similaires et pas nécessairement pour décrire un ordre séquentiel ou chronologique. Les termes sont interchangeables dans des circonstances appropriées et les modes de réalisation de l’tevemion peuvent opérer dans d’autres séquences que celles décrites ou illustrées ici.in the description and the claims are used to distinguish between similar elements and not necessarily to describe a sequential or chronological order. The terms are interchangeable under appropriate circumstances and the embodiments of the event can operate in sequences other than those described or illustrated here.
n outre, les termes dessus, dessous, sur, sous et similaires dans ia description et ies revendications sont utilisés à des fins descriptives et pas nécessairement pour décrire des positions relatives. Les termes ainsi utilisés sont interchangeables dans des circonstances appropriées et les modes de réalisation de l’invention décrits ici peuvent opérer dans d’autres orientations que celles décrites ou illustrées ici.In addition, the terms above, below, over, under and the like in the description and claims are used for descriptive purposes and not necessarily to describe relative positions. The terms thus used are interchangeable under appropriate circumstances and the embodiments of the invention described here can operate in other orientations than those described or illustrated here.
)Π) Π
lesquels l'invention peut être mise en œuvre plutôt que de limiter la portée de l’invention.which the invention can be implemented rather than limiting the scope of the invention.
Le terme « comprenant » utilisé dans tes revendications ne doit pas être interprété comme étant limité aux éléments ou aux étapes énumérés ensuite ; il n’exclut pas d’autres éléments ou d’autres étapes. II doit être interprété comme spécifiant la présence des caractéristiques, nombres entiers, étapes eu composants mentionnés auxquels on se réfère, mais n’empêche pas la présence ou l’addition d’une ou plusieurs autres caractéristiques, nombres entiers, étapes ou composants ou de leurs groupes. Par suite, la portée de l’expression « un dispositifThe term "comprising" used in your claims should not be interpreted as being limited to the elements or steps listed below; it does not exclude other elements or other steps. It must be interpreted as specifying the presence of the characteristics, whole numbers, stages or components mentioned to which we refer, but does not prevent the presence or addition of one or more other characteristics, whole numbers, stages or components or their groups. As a result, the scope of the expression "a device
BE2017/5263 comprenant A et B » ne doit pas être limitée à des dispositifs constitués uniquement des composants A et B plutôt par rapport à la présente invention, les seuls composants énumérés du dispositif sent A et B et, en outre, la revendication doit être Interprétée comme incluant des équivalents de ces composants.BE2017 / 5263 comprising A and B "should not be limited to devices consisting only of components A and B rather in relation to the present invention, the only listed components of the device are A and B and, in addition, the claim should be Interpreted as including equivalents of these components.
Le terme « caractère », tel qu’on l’utilise ici, se réfère à un symbole ou à un signe utilisé en écriture comme un graphème, un logogramme, une lettre alphabétique, une ligature typographique, un chiffre numérique ou un signe de ponctuation.The term "character", as used here, refers to a symbol or sign used in writing such as a grapheme, a logogram, an alphabetical letter, a typographic ligature, a numeric number or a punctuation mark .
Les expressions « Identification, identifiant et ID », tels qu’on les utilise lai, se réfèrent à un ou plusieurs caractères reconnus en code lisible sur machine pour obtenir une chaîne explorable deThe expressions "Identification, identifier and ID", as they are used lai, refer to one or more characters recognized in machine readable code to obtain an explorable string of
Le terme « position », tel qu’on l'utilise ici en se référant à une position particulière, se réfère à des données qui permettent de localiser le caractère. Par exemple, la position peut être fournie par ies coordonnées des pixels d’une boîte de délimitation qui entoure ie caractère.The term "position", as used herein when referring to a particular position, refers to data that helps locate the character. For example, the position can be provided by the coordinates of the pixels of a bounding box which surrounds the character.
caractère peut,character can,
pixel noir le plus à gauche d’une boîte de délimitation du caractère ou par le pixel noir le plus à gauche du caractère.the leftmost black pixel of a character bounding box or the leftmost black pixel of the character.
L’expression « partie de segmentation », telle qu'on l'utilise ici, se réfère à une partie d’une image d’une chaîne de caractères qui subit des processus pour déterminer si elle représente un caractère, un groupe de caractères, un motif, etc. Le point le plus à gauche d'une partie de segmentation est de préférence un point de segmentation.The expression "segmentation part", as used herein, refers to a part of an image of a character string which undergoes processes to determine whether it represents a character, a group of characters, a pattern, etc. The leftmost point of a segmentation part is preferably a segmentation point.
Le terme « classification », tel qu’on l'utilise ici, se réfère à ia génération d'au moins une hypothèse sur l’identification d’un ouThe term "classification", as used herein, refers to the generation of at least one hypothesis on the identification of one or more
B E2017/5263 plusieurs caractères. Chaque hypothèse d’identification ou hypothèse ID est associée à un paramètre de vraisemblance.B E2017 / 5263 several characters. Each identification hypothesis or ID hypothesis is associated with a likelihood parameter.
L’expression « reconnaissance optique de caractères (OCR) », telle qu’on l'utilise ici, se réfère à une conversion 5 quelconque en un texte présent dans une image en code lisible sur d’une image en noir et blanc est censée se référer à un groupe de pixels noirs qui sont connectés l’un à l’autre gardes pixels noirs.The term "optical character recognition (OCR)", as used herein, refers to any conversion to text present in an image in readable code over a black and white image is intended refer to a group of black pixels which are connected to each other by black pixel guards.
B E2017/5263B E2017 / 5263
La Fig. 1 représente un schéma synoptique d’un procédéFig. 1 shows a block diagram of a process
OCR 10 selon l’invention.OCR 10 according to the invention.
érence des segmentation 14 des caractères de limage et de pondérations 18 des caractères, les pondérations étant des paramètres de vraisemblance. Les premiers candidats caractères 13 avec les points de segmentation 14 des caractères dans l’image peuvent être une dénommés premiers points de segmentation 14. la pluralité de points de segmentation 14 peut être considérée comme une liste de points deerence of the segmentation 14 of the image characters and of the weights 18 of the characters, the weights being parameters of likelihood. The first character candidates 13 with the segmentation points 14 of the characters in the image can be referred to as first segmentation points 14. the plurality of segmentation points 14 can be considered as a list of
La première OCR peut ou non ulihser des modèles de des premiers points de segmentation provenant des points de segmentation de candidats caractères 14. Si nécessaire, la génération 15 du premier graphe convertit les pondérations 18 en premiers paramètres de vraisemblance pour faire en sorte qu'ils correspondent à une autreThe first OCR may or may not use models of the first segmentation points originating from the segmentation points of candidate characters 14. If necessary, the generation 15 of the first graph converts the weights 18 into first likelihood parameters so that they correspond to another
B E2017/5263 termine premiers points de segmentation sont représentés sous la forme de sommets, les premiers candidats caractères étant représentés comme des bords et les premiers paramètres de vraisemblance des premiers candidats caractères sont représentés sous la forme de valeurs de bord correspondants.B E2017 / 5263 ends first segmentation points are represented in the form of vertices, the first character candidates being represented as edges and the first likelihood parameters of the first character candidates are represented in the form of corresponding edge values.
Un graphe démarre typiquement avec un premier sommet qui correspond à un point de segmentation initial qui est ie point de segmentation le plus à la gauche de l'image de la chaîne de caractèresA graph typically starts with a first vertex which corresponds to an initial segmentation point which is the leftmost segmentation point of the image of the character string
11. Le premier sommet est relié à un autre sommet qui correspond à un autre point de segmentation par un bord correspondant au caractère identifié entre le point initial et les autres points de segmentation. Le graphe continue par un sommet pour chaque point de segmentation et un bord pour chaque caractère entre les points de segmentation. Les paramètres de vraisemblance des caractères sont représentés par des de bord au niveau des bords correspondants. Le graphe se par un sommet correspondant â un point sur la droite du premier e dans l’image de la chaîne de caractères 11. Ce point sur la 5re de l image de la chaîne de caractères 11 n’est de preference pas un point de segmentation.11. The first vertex is connected to another vertex which corresponds to another segmentation point by an edge corresponding to the character identified between the initial point and the other segmentation points. The graph continues with a vertex for each segment point and an edge for each character between the segment points. The character likelihood parameters are represented by edge marks at the corresponding edges. The graph is by a vertex corresponding to a point on the right of the first e in the image of the character string 11. This point on the 5th of the image of the character string 11 is preferably not a point of segmentation.
D'aubes types de structures de données qu’un graphe peuvent être utilisés pour ordonner ies sorties de l’OCR sans sortir ce la portée de l'invention.Vane types of data structures that a graph can be used to order the outputs of the OCR without departing from the scope of the invention.
La Fig. 2 illustre une image d'une chaîne de caractères 11. Dans cet exemple 201, ia première OCR 12 a été identifiée par un b partant d’un point de segmentation 202 avec un paramètre de vraisemblance de 80 % et par un t partant d'un point de segmentation 203 avec un paramètre de vraisemblance de 95 %.Fig. 2 illustrates an image of a character string 11. In this example 201, the first OCR 12 has been identified by a b starting from a segmentation point 202 with a likelihood parameter of 80% and by a t starting from a segmentation point 203 with a likelihood parameter of 95%.
La Fig, 3 illustre le premier graphe 301 généré à l’étape 15 à partir de la sortie 13 de la première OCR 12. Le sommet 302 correspond au point de segmentation 202. Le bord 304 correspond à la lettre b et le paramètre associé de 8Q % 305 est également Indus dans le caracre droite du dernier caraoFig. 3 illustrates the first graph 301 generated in step 15 from the output 13 of the first OCR 12. The vertex 302 corresponds to the segmentation point 202. The edge 304 corresponds to the letter b and the associated parameter of 8Q% 305 is also Indus in the right caracre of the last carao
B E2017/5263B E2017 / 5263
“i π s V premier graphe 301. Le sommet 303 correspond au point de segmentation 203. Le bord 306 correspond à ia lettre t et le paramètre associé de 95 % 307 est également indus dans Ie premier graphe 301.“I π s V first graph 301. The vertex 303 corresponds to the segmentation point 203. The edge 306 corresponds to the letter t and the associated parameter of 95% 307 is also included in the first graph 301.
En se référant à présent à la Fig. 1 , te premier point de segmentation 14 et l’image de la chaîne de caractères 11 sont utilisés comme entrée peur la segmentation et la classification combinées 100. Dans un mode de réalisation de l'invention, dans lequel tes positions sont délivrées par la première OCR 12 au lieu des premiers points de segmentation 14, les premiers points de segmentation 14 sont déterminés à une autre étape du procédé 10, par exemple, au cours de la segmentation et de la classification combinées 100. Par exemple,, si ia première OCR 12 délivre les boîtes de limitation des premiers caractères, les points de segmentation peuvent être déterminés comme les points du pixel noir le plus à gauche dans chaque boîte de délimitation.Referring now to FIG. 1, the first segmentation point 14 and the image of the character string 11 are used as input for the combined segmentation and classification 100. In an embodiment of the invention, in which your positions are delivered by the first OCR 12 instead of the first segmentation points 14, the first segmentation points 14 are determined at another step of method 10, for example, during combined segmentation and classification 100. For example, if the first OCR 12 delivers the limitation boxes for the first characters, the segmentation points can be determined as the points of the leftmost black pixel in each bounding box.
La segmentation et la olassificatlon combinées 100 constituent une seconde OCR et seront décrites par la suite en se référant à la Fig. 4. La segmentation et la classification combinées 100 génèrent de préférence au moins une fois pour chaque caractère dans l’image de la chaîne de caractères 11 au moins un second candidatThe combined segmentation and olassificatlon 100 constitute a second OCR and will be described later with reference to FIG. 4. The combined segmentation and classification 100 preferably generates at least once for each character in the image of the character string 11 at least one second candidate
second point de segmentation. La probabilité du second candidat caractère est un second paramètre de vraisemblance.second segmentation point. The probability of the second character candidate is a second likelihood parameter.
Dans un mode de réalisation de l’invention, il peut y avoir un ou plusieurs seconds candidats caractères ayant chacun sa position correspondante et de préférence chacun ayant sa probabilité déterminée par la segmentation et te classification combinées 100 pour chaque caractère de l’image de la chaîne de caractères 11.In one embodiment of the invention, there may be one or more second candidate characters each having its corresponding position and preferably each having its probability determined by the combined segmentation and classification 100 for each character of the image of the character string 11.
B E2017/5263B E2017 / 5263
Le second candidat caractère, sa position et sa probabilité sont, chaque fois qu’lis sont générés, utilisés comme entrée pour une mise à jour 20 du graphe qui met à jour le premier graphe 16. la fin de la segmentation et de la classification combinées 100, la sortie globale des mises à jour 20 du graphe est un second graphe 21 qui combine la sortie de la première OCR 12 et ia sortie de la segmentation et de la classification combinées 100. Si nécessaire, la mise à jour 20 du graphe convertit les probabilités en seconds paramètres de vraisemblance ayant la même échelle que les premiers paramètres de vraisemblance pour les rendre comparables. La mise à jour 20 du graphe ajoute un nouveau bord pour chaque seconde ID. La mise à jour 20 du graphe ajoute un nouveau sommet à l’extrémité de chaque nouveau bord qui ne se termine pas sur un sommet déjà présent dans Ie graphe.The second character candidate, its position and its probability are, each time they are generated, used as input for an update 20 of the graph which updates the first graph 16. the end of the combined segmentation and classification 100, the global output of the updates 20 of the graph is a second graph 21 which combines the output of the first OCR 12 and the output of the combined segmentation and classification 100. If necessary, the update 20 of the graph converts the probabilities in second likelihood parameters having the same scale as the first likelihood parameters to make them comparable. Update 20 of the graph adds a new edge for each second ID. Update 20 of the graph adds a new vertex at the end of each new edge which does not end on a vertex already present in the graph.
Le second graphe 21 comprend un bord pour chacune des premières ID et pour chacune des secondes ID associés avec leur paramétre de vraisemblance respectif, et un sommet pour chacun des premiers points de segmentation et pour chacun des seconds points de segmentation. Un exemple du second graphe est illustré dans la Fig. 7 etThe second graph 21 includes an edge for each of the first IDs and for each of the second IDs associated with their respective likelihood parameter, and a vertex for each of the first segmentation points and for each of the second segmentation points. An example of the second graph is illustrated in FIG. 7 and
la première OCR ou à partir de lathe first OCR or from the
combinées 100.combined 100.
Le second graphe 21 est ensuite utilisé comme entrée dans une étape facultative d’addition de modèles de décision 22, qui génère un troisième graphe de décision 23. L’étape 22 peut ajouter les modèles de décision au graphe par l’utilisation d’un algorithme à base de transducteur d’état fini pondéré (WFST). Cette étape 22 est en fait une application d’un procédé de modélisation de décision. L'addition de modèles de décision 22 modifie les paramètres de vraisemblance des bords, c’est-à-dire les caractères ou le groupe de bords, c’est-à-dire des groupes de caractères afin de favoriser ceux qui sont a priori les plusThe second graph 21 is then used as input to an optional step of adding decision models 22, which generates a third decision graph 23. Step 22 can add the decision models to the graph by using a weighted finite state transducer (WFST) algorithm. This step 22 is in fact an application of a decision modeling method. The addition of decision models 22 modifies the parameters of likelihood of the edges, that is to say the characters or the group of edges, that is to say groups of characters in order to favor those which are a priori most
B E2017/5263 probables, par exempte en raison du contexte. Les modèles de décision modifient ies pondérations des trajets. Les modèles de décision sont de préférence apparentés à ia décision contextuelle. Les modèles de décision améliorent fortement la précision d'identification.B E2017 / 5263 likely, eg due to context. The decision models modify the path weights. The decision models are preferably related to the contextual decision. Decision models greatly improve identification accuracy.
Les modèles de décision peuvent Impliquer des bigrammes, des métriques typographiques, des listes de mots comme des dictionnaires, des n~grammes de caractères, des règles de ponctuation et des règles d’espacement.Decision models can involve bigrams, typographic metrics, lists of words such as dictionaries, n grams of characters, punctuation rules, and spacing rules.
Un premier type de modèle de décision est un modèle linguistique. Si te mot « ornate » est présent dans l’image de la chaîne de caractères à identifier, la première ou la seconde OCR peut par exemple trouver le mot « ornate » et te mot « ornate » comme ID avec des paramètres de vraisemblance similaires du fait que les lettres rn prises conjointement ressemblent à la lettre m. Un modèle linguistique utilisant un dictionnaire est capable de détecter que le mot « ornate » n’existe pas, tandis que le mot « ornate » existe.A first type of decision model is a linguistic model. If the word "ornate" is present in the image of the character string to be identified, the first or second OCR can for example find the word "ornate" and the word "ornate" as ID with similar likelihood parameters of the makes the letters rn taken together look like the letter m. A linguistic model using a dictionary is able to detect that the word "ornate" does not exist, while the word "ornate" exists.
Dans un mode de réalisation de la présente Invention, le modèle linguistique utilise un modèle de n~grammes. Si te mot « TRESMEUR » est présent dans l’image de la chaîne de caractères 11, « i RE5MEUR » et le mot f< TRESMbUR » comme ID avec des paramètres de vraisemblance similaires du fait que les lettres « S » peuvent ressembler à la lettre « 5 » dans un texte imprimé. Un modèle linguistique utilisant un modèle de bi-gramme (n-gramme avec n~2) préférerait « TRESMEUR » si « ES » et « SM » avaient de meilleures probabilités d’occurrence que « E5 » et « SM s.In one embodiment of the present invention, the linguistic model uses a model of n ~ grams. If the word "TRESMEUR" is present in the image of the character string 11, "i RE5MEUR" and the word f <TRESMbUR "as ID with similar parameters of likelihood since the letters" S "can resemble the letter "5" in printed text. A linguistic model using a bi-gram model (n-gram with n ~ 2) would prefer "TREASURE" if "ES" and "SM" had better probabilities of occurrence than "E5" and "SM s.
Un autre type de modèle utilisé dans un mode de réalisation de te présente invention est un modèle typographique. Si le mot « Loguivy » est présent dans l’image de la chaîne de caractères 11, te première ou te seconde OCR peut par exemple trouver le mot « Loguivy » et le mot « Loguivv » comme ID avec des paramètres deAnother type of template used in an embodiment of the present invention is a typographic template. If the word "Loguivy" is present in the image of the character string 11, the first or second OCR can for example find the word "Loguivy" and the word "Loguivv" as ID with parameters of
B E2017/5263 vraisemblance similaires du fait que les lettres « y » peuvent ressembler à la lettre « v » dans un texte Imprimé. Un modèle typographique utilisant des métriques de police préférerait « Loguivy » du fait que la position du fond du caractère final correspond plus vraisemblablement à la position inférieure d’un « y » (dans son modèle) que d’un « v ».B E2017 / 5263 similar likelihood in that the letters “y” may resemble the letter “v” in Printed text. A typographic model using font metrics would prefer "Loguivy" because the position of the background of the final character is more likely to correspond to the lower position of a "y" (in its model) than a "v".
Dans un mode de réalisation de la présente invention, le modèle typographique considère la position du caractère dans l’image pour vérifier si les tailles et les positions sont attendues ou non.In one embodiment of the present invention, the typographic model considers the position of the character in the image to verify whether the sizes and the positions are expected or not.
Dans un modèle de décision Impliquant des règles de ponctuation et d’espacement, certaines combinaisons de ponctuation et/ou d’espaces sont défavorisées.In a decision model involving punctuation and spacing rules, certain combinations of punctuation and / or spaces are disadvantaged.
Dans un mode de réalisation de l’invention, un modèle de décision est ajouté à l'étape 22 qui favorise les ID qui ont te premier paramètre de vraisemblance et le second paramètre de vraisemblance répondant à un critère prédéterminé. En fait, on s’attend à ce que, si une même ID est decouverte par la première OCR 12 et la segmentation et te classification combinées 100, DD soit plus crédible. En conséquence, si pour une ID, a la fois te premier paramètre de vraisemblance et Ie second paramètre de vraisemblance se situent au-dessus d’un seuil, par exemple, de $10 %, î'ID peut être favorisée.In one embodiment of the invention, a decision model is added in step 22 which favors the IDs which have the first likelihood parameter and the second likelihood parameter meeting a predetermined criterion. In fact, it is expected that if the same ID is discovered by the first OCR 12 and the segmentation and classification combined 100, DD will be more credible. Therefore, if for an ID, both the first likelihood parameter and the second likelihood parameter are above a threshold, for example, $ 10%, the ID can be favored.
l’invention, un modèle de décision est ajouté a l'étape 22, qui équivaut à un vote OCR du fait qu’il favorise la première OCR dans certains cas et la seconde OCR dans d’autres cas. Par exemple, si la première OCR est connue pour être 25 extrêmement précise pour un premier type de caractères, tels que des caractères katakana, tandis que la segmentation et ia classification combinées 100 sont connues pour être extrêmement précises pour un second type de caractères, comme kanji, un modèle de décision peut être ajouté qui favorise tes ID correspondant au premier type de 30 caractères (katakana) si ces ID ont été déterminées par te première OCR et favorise les ID correspondant au second type de caractères (kanji) sithe invention, a decision model is added in step 22, which is equivalent to an OCR vote because it favors the first OCR in some cases and the second OCR in other cases. For example, if the first OCR is known to be extremely precise for a first type of characters, such as katakana characters, while the combined segmentation and classification 100 are known to be extremely precise for a second type of characters, such as kanji, a decision model can be added which favors your IDs corresponding to the first type of 30 characters (katakana) if these IDs have been determined by the first OCR and favors IDs corresponding to the second type of characters (kanji) if
B E2017/5263B E2017 / 5263
ceux-ci ont été déterminés par ia segmentation et ia classification combinées 100.these were determined by the combined segmentation and classification 100.
détermination du meilleur trajet 24 détermine, entre tes trajets possibles définis par tes bords joints par des sommets dans ie troisième pondération du trajet pour trouver la un schéma fonctionnel pour combinées 100 selon un modedetermination of the best path 24 determines, between your possible paths defined by your edges joined by vertices in the third weighting of the path to find the a functional diagram for combined 100 according to a mode
Ce schéma fonctionnai compre comprema des ceints de segmentation de quiThis functional scheme includes some segmentation girdles which
Au cours de cette étape 101, les données caractères 13 pourraientDuring this step 101, the character data 13 could
La segmentation et la classification combinées 100 commencent à effectuer une deration sur tes points de segmentation de l'empilement avec un indice de point de segmentation i qui est réglé égalThe combined segmentation and classification 100 begins to derate on your stacking segmentation points with a segmentation point index i which is set equal
B E2017/5263 à une première valeur, par exemple 1. Un point de segmentation correspondant 121 provenant de l’empilement 102 est considéré. La première fois qu’un point de segmentation 121 est considéré dans la segmentation et la classification combinées 100, le point de 6 segmentation 121 est de préférence l’un des premiers points de segmentation 14 qui a été déterminé par la première OCR. Le point de segmentation 121 est de préférence retiré de l’empilement 102 de sorte que l'empilement 102 ne contienne que les points de segmentation qui doivent encore être considérés. Le point de segmentation 121 est de 10 préférence placé dans une liste de points de segmentation déjà traités.B E2017 / 5263 to a first value, for example 1. A corresponding segmentation point 121 coming from stack 102 is considered. The first time a segmentation point 121 is considered in the combined segmentation and classification 100, the segmentation point 121 is preferably one of the first segmentation points 14 which has been determined by the first OCR. The segmentation point 121 is preferably removed from the stack 102 so that the stack 102 contains only the segmentation points which must still be considered. The segmentation point 121 is preferably placed in a list of segmentation points already processed.
Ensuite, la segmentation et ia classification combinées 100 déterminent à l’étape 130 une liste de largeurs 131. De préférence, cette détermination 130 n’utilise pas comme entrée une liste de largeurs déterminées pour un autre point de segmentation. Dans un mode de 15 réalisation de l’invention, la liste 131 de largeurs est générée à l’étape 130 comme décrit dans la demande de brevet US n<: 14/254 096 qui est incorporée à la présente demande par référence, dans laquelle les premiers points de segmentation 14 sont utilisés comme entrée. L’image de ia chaîne de caractères 11 et/ou les premiers candidats caractères 20 peuvent également être utilisés comme entrées. Dans un mode de réalisation de l'invention, la détermination 130 utilise une base de données 132 stockant des largeurs de caractères de référence, stockant une largeur moyenne et éventuellement stockant d’autres statistiques de caractères. La détermination 130 est de preference basée sur cette 25 largeur moyenne fournie par la base de données 132 et la ou les tailles du ou des composants connectés autour du point de segmentation i, la ou les tailles étant fournies par l’image 11 de la chaîne de caractères. La détermination 130 est basée mieux encore sur cette largeur moyenne fournie par la base de données 132 et la ou les tailles du ou des 30 composants connectés suivant te point de segmentation i, la ou les tailles étant fournies par l’image 11 de te chaîne de caractères.Then, the combined segmentation and classification 100 determine in step 130 a list of widths 131. Preferably, this determination 130 does not use as input a list of widths determined for another segmentation point. In one embodiment of the invention, the list 131 of widths is generated in step 130 as described in US patent application n <: 14/ 254,096 which is incorporated in the present application by reference, in which the first segmentation points 14 are used as input. The image of the character string 11 and / or the first character candidates 20 can also be used as inputs. In one embodiment of the invention, the determination 130 uses a database 132 storing reference character widths, storing an average width and possibly storing other character statistics. The determination 130 is preferably based on this average width provided by the database 132 and the size or sizes of the component or components connected around the segmentation point i, the size or sizes being provided by the image 11 of the chain of characters. The determination 130 is based even better on this average width provided by the database 132 and the size (s) of the component (s) connected according to the segmentation point i, the size (s) being provided by the image 11 of the chain of characters.
B E2017/5263B E2017 / 5263
5: 5 :
U.' VU. ' V
Ensuite, te segmentation et ia classification combinées 100 commencent à effectuer une itération sur les largeurs de la liste de largeurs 131, un indice de largeur j étant réglé égal à une première valeur, par exemple 1. Une largeur 124 provenant de la liste de largeurs 131 est considérée. La combinaison du point de segmentation i et de la largeur j fournit une partie de segmentation 125 qui est une partie de l’image de ia chaîne de caractères 11. Une classification de caractères 126 est effectuée sur ia partie de segmentation 125. La classification de caractères 126 est de préférence une classification de caractères uniques. La classification de caractères 126 peut comprendre une classification de caractères conçue pour un premier type de caractères, par exemple des caractères asiatiques, et une ctessiFioatlc-n de caractères conçue pour un second type de caractères, par exemple des caractères latins. Une telle classification de caractères est décrite dans la demande de brevet US ns 14/299 205 qui est incorporée à la présente demande par référence.Then, the combined segmentation and classification 100 begin to iterate over the widths of the width list 131, a width index j being set equal to a first value, for example 1. A width 124 from the width list 131 is considered. The combination of the segmentation point i and the width j provides a segmentation part 125 which is a part of the image of the character string 11. A classification of characters 126 is performed on the segmentation part 125. The classification of characters 126 is preferably a classification of unique characters. Character classification 126 may include a character classification designed for a first type of characters, for example Asian characters, and a character classification designed for a second type of characters, for example Latin characters. Such a classification of characters is described in US Patent Application No. 14/299 205 s which is incorporated herein by reference.
La classification de caractères 126 fournit une hypothèse ID 127a avec une vraisemblance d'erreur Perr 127b. L’hypothèse ID 127a est une hypothèse sur le caractère éventuellement présent sur te partie de segmentation 125. La vraisemblance de l’erreur Paï 127b est un paramètre de vraisemblance, La vraisemblance de l’erreur Pefr 127b est un pourcentage qui diminue avec te probabilité que la classification 126 aCharacter classification 126 provides hypothesis ID 127a with a likelihood of error P err 127b. The hypothesis ID 127a is a hypothesis on the character possibly present on the segmentation part 125. The likelihood of the error P aï 127b is a likelihood parameter, The likelihood of the error P efr 127b is a percentage which decreases with the probability that classification 126 has
B E2017/5263 correctement identifié la teneur de la partie de segmentation 125. La probabilité que la classification 126 a correctement identifié la teneur de ia partie de segmentation 125 est égale à 1-Pefr. Perr et la probabilité égale à 1~Pe(T peuvent tous deux être dénommés « second paramètre de vraisemblance », car ils fournissent tous deux une indication de la probabilité que l’hypothèse d’identification 127a est correcte pour la classification de caractères 126.B E2017 / 5263 correctly identified the content of the segmentation part 125. The probability that classification 126 has correctly identified the content of the segmentation part 125 is equal to 1-P efr . P err and the probability equal to 1 ~ P e (T can both be called "second likelihood parameter", because they both provide an indication of the probability that the identification assumption 127a is correct for character classification 126.
La segmentation-classification combinée 100 vérifie ensuite, à l’étape 128, si la vraisemblance de l’erreur Perr répond à un premier critère prédéterminé qui est que Pf::- est plus petite qu'un seuil pour avoir une vraisemblance élevée d’erreur Therf. Therf est de préférence choisie proche de 100 %, par exempte égale à 99,9 %. Ainsi, te premier critère prédéterminé écarte les hypothèses qui sont réellement invraisemblables. Si le premier critère prédéterminé n’est pas satisfait, l’indice j est incrémenté et l’on considère une largeur suivante provenant de ia liste de largeurs 131.The combined segmentation-classification 100 then checks, in step 128, whether the likelihood of the error P err meets a first predetermined criterion which is that P f :: - is less than a threshold to have a high likelihood Th erf error. Th erf is preferably chosen to be close to 100%, for example equal to 99.9%. Thus, the first predetermined criterion rejects the hypotheses which are really implausible. If the first predetermined criterion is not satisfied, the index j is incremented and a next width from the list of widths 131 is considered.
Si le premier critère prédéterminé est satisfait, il indique que l’hypothèse ID pourrait avoir une chance d’être correcte. Si le premier critère prédéterminé est satisfait, une mise à jour 110 de l’empilement est effectuée. Cette mise à jour 110 de l’empilement est décrite ci-dessous en se réfèrent à la Fig. 5.If the first predetermined criterion is satisfied, it indicates that the hypothesis ID could have a chance of being correct. If the first predetermined criterion is satisfied, an update 110 of the stack is carried out. This update 110 of the stack is described below with reference to FIG. 5.
Si le premier critère prédéterminé est satisfait, une mise à jour 150 de te liste moyenne est effectuée et la largeur moyenne mise à jour remplace la largeur moyenne dans la base de données 132. Dans un mode de réalisation de l’invention, la mise à jour 150 de la largeur moyenne est effectuée comme décrit dans la demande de brevet US rr 14/254 096 qui est incorporée à la présente demande par référence.If the first predetermined criterion is satisfied, an update 150 of the average list is carried out and the updated average width replaces the average width in the database 132. In one embodiment of the invention, the updating day 150 of the average width is carried out as described in the patent application US rr 14/254,096 which is incorporated into the present application by reference.
Dans un mode de réalisation de l’invention, la mise à jour 150 de la largeur moyenne est suivie par ia détermination 130 de la liste de largeurs qui génère ia liste de largeurs 131 à utiliser pour le mêmeIn one embodiment of the invention, the updating 150 of the average width is followed by the determination 130 of the list of widths which generates the list of widths 131 to be used for the same
B E2017/5263 point de segmentation I dans la prochaine itération sur ies largeurs par la segmentation et la classification combinées 100.B E2017 / 5263 segmentation point I in the next iteration over widths by combined segmentation and classification 100.
Si le premier critère prédéterminé est satisfait, le second candidat caractère, sa position et sa probabilité 17’ sont ajoutés dans le graphe au cours de la mise à jour correspondante 20 du graphe (Fig. 1). Le second candidat caractère, sa position et sa probabilité 17 ne peuvent être mis à jour en tant que tels par la segmentation et la classification combinées 100, mais juste ajoutés au graphe. Le second candidat caractère est égal à l’hypothèse ID 127a. En d'autres termes, l'hypothèseIf the first predetermined criterion is satisfied, the second character candidate, its position and its probability 17 ’are added to the graph during the corresponding update of the graph (Fig. 1). The second character candidate, its position and its probability 17 cannot be updated as such by the combined segmentation and classification 100, but just added to the graph. The second character candidate is equal to hypothesis ID 127a. In other words, the assumption
D est choisie comme second candidat caractère. La position du second candidat caractère est fournie par la partie de segmentation où le second candidat caractère a été identifié, c'est-à-dire, par le point de segmentation i et la largeur j qui ont été considérés. La probabilité du second candidat caractère est égale à i“Pen-, avec la valeur de Psn· de 127b.D is chosen as the second character candidate. The position of the second character candidate is provided by the segmentation part where the second character candidate has been identified, that is, by the segmentation point i and the width j which have been considered. The probability of the second character candidate is equal to i “P in -, with the value of P sn · of 127b.
prédéterminé 128.predetermined 128.
La classification de caractères 126 peut fournir une pluralité d’hypothèses ID 127a chacune avec leur vraisemblance respective d’erreur Ps„ 127b, toutes correspondant à la même partie de segmentation 125. Dans un tel cas, les contrôles 128 et 140 sont effectués sur l’hypothèse ID avec la P8rf la plus basse, c’est-à-dire l’hypothèse ID dont on attend le plus qu’elle soit correcte. Le « second candidat caractère avec la position et la probabilité » 17 des figures comprend alors la pluralité d'hypothèses ID, avec chacune leur position et leur probabilité respectives, Elles sont toutes incluses dans le grapheCharacter classification 126 can provide a plurality of hypotheses ID 127a each with their respective likelihood of error P s „127b, all corresponding to the same segmentation part 125. In such a case, checks 128 and 140 are performed on the ID hypothesis with the lowest P 8rf , that is to say the ID hypothesis which is most expected to be correct. The "second character candidate with position and probability" 17 of the figures then includes the plurality of hypotheses ID, each with their respective position and probability. They are all included in the graph
B E2017/5263 directement avant de se déplacer vers une nouvelle partie de segmentation 125.B E2017 / 5263 directly before moving to a new segmentation segment 125.
Dans la segmentation et la classification combinées 100, une partie de segmentation quelconque 125 est considérée seulement une fois.In the combined segmentation and classification 100, any segmentation part 125 is considered only once.
Le premier critère prédéterminé fournit un paramètre réglable pour déterminer le seuil de probabilité à partir duquel les hypothèses ID 127a sont ajoutées dans ie graphe. Une Therr très élevée fournit un second graphe très grand 21 qui donne une précision élevée, mais pourrait ralentir ie procédé OCR 10. Une Thsn· inférieure fournit un second graphe plus petit 21, qui pourrait donner une moindre précision, mais accélère le procédé OCR 10,The first predetermined criterion provides an adjustable parameter for determining the probability threshold from which the hypotheses ID 127a are added in the graph. A very high Th err provides a second very large graph 21 which gives high precision, but could slow down the OCR process 10. A lower Th sn · provides a second smaller graph 21, which could give less precision, but speeds up the process OCR 10,
Dans un mode de réalisation de l’invention, différents <A .‘-S.In one embodiment of the invention, different <A .‘- S.
srsr
B E2017/5263B E2017 / 5263
Si l’empilement 102 contient encore au moins un point de segmentation, l’indice I de points de segmentation est incréments et un point de segmentation suivant 121 est considéré.If the stack 102 still contains at least one segmentation point, the index I of segmentation points is increments and a next segmentation point 121 is considered.
Si l'empilement 102 ne contient pas de point de segmentation, la segmentation-classification combinée 100 effectue de préférence une étape de fin d’empilement 142. L'étape de fin d'empilement 142 comprend une vérification que la fin de l’image de la chaîne de caractères 11 a été atteinte, par exemple en vérifiant que HD du caractère situé le plus à droite dans le second graphe 21 comprend le 10 pixel noir le plus à droite de l’image de ia chaîne de caractères 11.If the stack 102 does not contain a segmentation point, the combined segmentation-classification 100 preferably performs an end of stacking step 142. The end of stacking step 142 includes verification that the end of the image of the character string 11 has been reached, for example by checking that HD of the rightmost character in the second graph 21 includes the 10 rightmost black pixel of the image of the character string 11.
Si la fin de l’image de la chaîne de caractères 11 n'a pas été atteinte, un caractère vide avec une probabilité égale à 0 est Inséré dans le graphe en partant du sommet correspondant au point de segmentation le plus à droite qui a été considéré, un point de 15 segmentation correspondant à la fin de ce caractère vide est placé dans l’empilement 102 et la segmentation et la classification combinées 100 reprennent avec ce point de segmentation.If the end of the image of the character string 11 has not been reached, an empty character with a probability equal to 0 is inserted into the graph starting from the vertex corresponding to the rightmost segmentation point which has been considered, a segmentation point corresponding to the end of this empty character is placed in the stack 102 and the combined segmentation and classification 100 resume with this segmentation point.
Si la fin de l’image de la chaîne de caractères 11 a été atteinte, un caractère vide avec une probabilité égaie à G peut être ajouté 20 au second graphe 21 entre chaque sommet qui n’est pas connecté à un sommet suivant (chaque point de segmentation pour lequel aucun second candidat caractère 17 n’a été sélectionné) et le sommet suivant.If the end of the image of the character string 11 has been reached, an empty character with a probability equal to G can be added 20 to the second graph 21 between each vertex which is not connected to a next vertex (each point segmentation for which no second candidate character 17 has been selected) and the next vertex.
La Fig. 5 montre la mise à jour 110 de l’empilement selon un mode de réalisation de l’invention. Lorsqu’elle est effectuée, la mise à 25 jour 110 de l’empilement prend comme entrées ia partie de segmentation 125 considérée à ce stade dans la segmentation et classification combinées 100 et l’image de la chaîne de caractères 11. La mise à jour 110 de l’empilement comprend une détermination 111 d’un autre point de segmentation. Cet autre point de segmentation 112 est censé 30 correspondre au début d’un caractère à la droite du caractère qui a juste été identifié dans la partie de segmentation 125 par la classification deFig. 5 shows the update 110 of the stack according to an embodiment of the invention. When it is carried out, the updating of the stack 110 takes as inputs the segmentation part 125 considered at this stage in the combined segmentation and classification 100 and the image of the character string 11. The updating 110 of the stack comprises a determination 111 of another segmentation point. This other segmentation point 112 is supposed to correspond to the start of a character to the right of the character which has just been identified in the segmentation part 125 by the classification of
B E2017/5263 caractères 126. L'autre point de segmentation 112 est de préférence déterminé comme Ie pixel noir le plus à gauche à la droite de la partie de segmentation 125. L'espace entre caractères peut avoir une valeur prédéterminée ou être calculé au cours de la segmentation et de la classification combinées 100.B E2017 / 5263 characters 126. The other segmentation point 112 is preferably determined as the leftmost black pixel to the right of the segmentation part 125. The space between characters can have a predetermined value or be calculated at course of combined segmentation and classification 100.
En variante, l’autre peint de segmentation 112 peut être calculé, par exempte, au cours de la classification de caractères 126 et fournit la mise à jour 110 de l’empilementAlternatively, the other segmentation paint 112 can be calculated, for example, during character classification 126 and provides the update 110 of the stack
Dans un mode de réalisation de l’invention, la détermination 111 d’un autre point de segmentation utilise des informations venant de la base de données 132.In one embodiment of the invention, the determination 111 of another segmentation point uses information coming from the database 132.
La mise à jour 110 de l’empilement vérifie ensuite â l’étape 113 si l’autre point de segmentation 112 est couramment présent dans l'empilement 102 ou dans la liste de points de segmentation déjà traitée. Sinon, l’autre point de segmentation 112 est placé dans l’empilement 102.The update 110 of the stack then checks in step 113 whether the other segmentation point 112 is currently present in the stack 102 or in the list of segmentation points already processed. Otherwise, the other segmentation point 112 is placed in the stack 102.
Comme un caractère est censé démarrer un bit après le caractère précédent, cette mise à jour 110 de l’empilement génère des points de segmentation qui sont des points de départ probables pour un caractère suivant. La vérification à l’étape 113 évite qu’un point de segmentation n'apparaisse deux fois dans l’empilement 102.Since a character is supposed to start a bit after the previous character, this update 110 of the stack generates segmentation points which are probable starting points for a next character. The verification in step 113 prevents a segmentation point from appearing twice in the stack 102.
La Fig. 6 illustre un exemple très simple de la segmentation et de la classification combinées 100 selon l’invention. La Fig. 7 illustre le second graphe 21 à la fin de te segmentation et de la classification combinées 100 illustrée sur la Fig. 6.Fig. 6 illustrates a very simple example of the combined segmentation and classification 100 according to the invention. Fig. 7 illustrates the second graph 21 at the end of the combined segmentation and classification 100 illustrated in FIG. 6.
La Fig. 6a montre une image d'une chaîne de caractères 11 avec Ie mot lot et dans lequel les lettres I et o sont si proches qu’il est difficile de déterminer s’il s’agit de I et de o ou de b. La première OCR 12 a fourni les ID b et t avec leur position et leur probabilité (P~80 % pour b et P~S5 % peur t). A partir de leur position, les points de segmentation 601 et 602 peuvent être déterminés (Fig. 6a). Le graphe qui est leFig. 6a shows an image of a character string 11 with the word batch and in which the letters I and o are so close that it is difficult to determine whether it is I and o or b. The first OCR 12 provided the IDs b and t with their position and their probability (P ~ 80% for b and P ~ S5% for t). From their position, the segmentation points 601 and 602 can be determined (Fig. 6a). The graph which is the
B E2017/5263 premier graphe à ce stade comprend les sommets 711, 712 et 713 et les bords 701 et 702 (Fig. 7).B E2017 / 5263 first graph at this stage includes the vertices 711, 712 and 713 and the edges 701 and 702 (Fig. 7).
L'empilement contient les points de segmentation 601 etThe stack contains the segmentation points 601 and
602. Pour te point de segmentation 601. la détermination 130 de la liste de largeurs détermine des largeurs possibles comprenant une largeur602. For the segmentation point 601. the determination 130 of the list of widths determines possible widths including a width
603. La largeur 603 est placée dans la liste 131 de largeurs.603. The width 603 is placed in the list 131 of widths.
La Fig. 6b montre te largeur 603 qui est considérée comme te première conjointement avec le point de segmentation 601 dans la classification 126. La classification 126 trouve que la partie de segmentation fournie par le point de segmentation 601 et la largeur 603 représenta un b avec une probabilité de 70 %. Comme PS!·, (30 %) est inférieure à Thgfr (99,9 %), un bord correspondant 793 est ajouté au graphe 21 au cours d'une mise à jour 20 du graphe. La mise à jour 110 de l'empilement détermine l’autre point de segmentation (étape 111 ). On découvre à l'étape 102 que cet autre peint de segmentation qui correspond au point 602 est déjà dans l’empilement 102. En conséquence, cet autre point de segmentation n’est pas ajouté à l’empilement 102. La mise à jour 15G de la largeur moyenne est effectuée, qui met à jour la base de données 132. La détermination 130Fig. 6b shows the width 603 which is considered the first in conjunction with the segmentation point 601 in classification 126. The classification 126 finds that the segmentation portion provided by the segmentation point 601 and the width 603 represented a b with a probability of 70%. Like P S! ·, (30%) is less than Th gfr (99.9%), a corresponding edge 793 is added to the graph 21 during an update 20 of the graph. The update 110 of the stack determines the other segmentation point (step 111). We discover in step 102 that this other segmentation point which corresponds to point 602 is already in the stack 102. Consequently, this other segmentation point is not added to the stack 102. The update 15G of the average width is performed, which updates the database 132. The determination 130
pasnot
inférieure à Ti0rf (20 %), une autre largeur 604 de te liste 131 est testée.less than Ti 0rf (20%), another width 604 of the list 131 is tested.
La Fig. 6c montre la largeur 604 qui est considérée conjointement avec te point de segmentation 601 dans la classification 126. La classification 125 trouve que la partie de segmentation fournie par te point de segmentation 601 et la largeur 604 représente un I avec une probabilité de 85 %. Comme Pgrr (15 %) est Inférieure à Thsn· (99,9 %), un bord correspondant 704 est ajouté au graphe 21 au cours d'une mise à jour 25 du graphe et un sommet 714, qui correspond à un point de segmentation 605 à la fin du I, est ajouté au graphe 21.Fig. 6c shows the width 604 which is considered together with the segment point 601 in the classification 126. The classification 125 finds that the segmentation part provided by the segment point 601 and the width 604 represents an I with a probability of 85%. As P grr (15%) is Less than Th sn · (99.9%), a corresponding edge 704 is added to graph 21 during an update of the graph and a vertex 714, which corresponds to a point segmentation 605 at the end of I, is added to graph 21.
B E2017/5263B E2017 / 5263
Un autre point de segmentation 605 est ensuite déterminé à l’étape 111 de la mise à jour 110 de l’empilement Comme le point 605 n’est pas dans l'empilement (étape 113), il est ajouté à l’empilement La mise à jour 150 de la largeur moyenne et ia détermination 130 de la liste de largeurs sont également réalisées.Another segmentation point 605 is then determined in step 111 of updating 110 of the stack. Since point 605 is not in the stack (step 113), it is added to the stack. update 150 of the average width and the determination 130 of the list of widths are also carried out.
Comme Pefr (15 %) est inférieure à ΤΙ3!Τ(20%), il y a une vérification (étape 141) pour vérifier s’il y a un point de segmentation quelconque laissé dans l'empilement 102. Les points de segmentation 602 et 605 étant encore dans l’empilement 102, le point de segmentation suivant 602 est considéré.As P efr (15%) is less than ΤΙ 3! Τ (20%), there is a check (step 141) to check if there is any segmentation point left in stack 102. The points of segmentation 602 and 605 still being in the stack 102, the next segmentation point 602 is considered.
La Fig. 6d montre le point de segmentation 602 considéré conjointement avec la largeur 606 dans ia classification 126, La classification 126 trouve que la partie de segmentation fournie par le point de segmentation 602 et la largeur 606 représente un t avec une probabilité de 99.5 %. Comme Perr (0,5 %) est inférieure à Thefr (99,9 %), un bord correspondant 705 est ajouté au graphe 21 au cours d'une mise à jour 20 du graphe. La mise à jour 110 de l’empilement n’est pas réalisée du mise à jour de largeurs vérification (étape 141) pour vérifier s’il y a un point de segmentation quelconque laissé dans l’empilement 102. La segmentation 605 étant encore dans l’empilement 162, ce point de segmentation 605 est considéré.Fig. 6d shows the segmentation point 602 considered together with the width 606 in the classification 126, The classification 126 finds that the segmentation part provided by the segmentation point 602 and the width 606 represents a t with a probability of 99.5%. As P err (0.5%) is less than Th efr (99.9%), a corresponding edge 705 is added to the graph 21 during an update 20 of the graph. The updating 110 of the stack is not carried out by updating the checking widths (step 141) to check whether there is any segmentation point left in the stack 102. The segmentation 605 still being in the stack 162, this segmentation point 605 is considered.
La Fig. 6e montre te point de segmentation 605 considéré conjointement avec une largeur 607 dans la classification 126. La classification 126 trouve que la partie de segmentation fournie par le point de segmentation 605 et la largeur 607 représente un o avec une probabilité de 85 %. Comme Perr (15 %) est inférieure à Therf (99,9 %), un bord correspondant 706 est ajouté au graphe 21 au cours d’une mise à de ia caractères a ete atteinte. La me sont effectuéesFig. 6th shows the segmentation point 605 considered together with a width 607 in the classification 126. The classification 126 finds that the segmentation part provided by the segmentation point 605 and the width 607 represents an o with a probability of 85%. As P err (15%) is less than Th erf (99.9%), a corresponding edge 706 is added to graph 21 during the updating of characters has been reached. The are done to me
B E2017/5263 jour 20 du graphe. La mise à jour 110 de l'empilement détermine l’autre point de segmentation (étape 111). On constate à l’étape 112 que cet autre point de segmentation qui correspond au point 602 se trouve dans la liste de points de segmentation qui ont déjà été traités. En conséquence, cet autre point de segmentation n’est pas ajouté à l’empilement 102. La mise à jour 150 de la largeur moyenne et la détermination 130 de la liste de largeurs sont également effectuées.B E2017 / 5263 day 20 of the graph. Update 110 of the stack determines the other segmentation point (step 111). It can be seen in step 112 that this other segmentation point which corresponds to point 602 is found in the list of segmentation points which have already been processed. Consequently, this other segmentation point is not added to the stack 102. The updating 150 of the average width and the determination 130 of the list of widths are also carried out.
Comme PeiT(15%) est inférieure à ΤΙΘ!Τ (20 %), il y a une vérification (étape 141) pour vérifier s’il y a un point de segmentation quelconque laissé dans l'empilement 102. Comme l’empilement 102 est vide, la segmentation et la classification combinées 100 se déplacent aux étapes 142 de fin d’empilement.As P eiT (15%) is less than ΤΙ Θ! Τ (20%), there is a check (step 141) to check if there is any segmentation point left in stack 102. As stack 102 is empty, the combined segmentation and classification 100 move to the steps 142 of end of stack.
Les étapes de fin d’empilement vérifient que le pixel le plus à droite de l’image de la chaîne de caractères 11 est en fait une partie du t. Tous les sommets du graphe 21 sont raccordés à un sommet suivantThe end of stacking steps verify that the rightmost pixel of the image of the character string 11 is in fact a part of the t. All the vertices of graph 21 are connected to a next vertex
Indiquées dans le graphe.Indicated in the graph.
Un modèle deA model of
exemple àexample at
lot » par ia chaîne de caractères « bt ».lot "by the character string" bt ".
La présente invention comprend une combinaison d’une première OCR 12 et d’une seconde OCR, qui est la segmentation et la classification combinées 100, à divers stades: à l’entrée des premiers points de segmentation 14 de l’empilement 102 de la seconde OCR 100, à la mise à jour 20 du graphe généré par la première OCR 12 qui génère le second graphe 21 et dans tes modèles de décision 22.The present invention comprises a combination of a first OCR 12 and a second OCR, which is the combined segmentation and classification 100, at various stages: at the entry of the first segmentation points 14 of the stack 102 of the second OCR 100, upon updating 20 of the graph generated by the first OCR 12 which generates the second graph 21 and in your decision models 22.
L’invention ne nécessite pas d'avoir un aperçu de la manière dont la première OCR 12 est effectuée. Elle nécessite seulement d’obtenir de la première OCR 12 la séquence d'ID deThe invention does not require an overview of how the first OCR 12 is performed. It only requires obtaining from the first OCR 12 the sequence of ID of
B E2017/5263 caractères, leur position dans l'image de la chaîne de caractères et, si possible, leurs paramètres de vraisemblance, qui sont les sorties usuelles de n'importe quelle OCR. En conséquence, l'invention est capable de combiner presque n'importe quelle OCR commerciale avec la seconde OCR.B E2017 / 5263 characters, their position in the image of the character string and, if possible, their likelihood parameters, which are the usual outputs of any OCR. As a result, the invention is able to combine almost any commercial OCR with the second OCR.
En outre, l'invention prend la meilleure des deux OCR de que ia sortie de h première OCR 12 et meilleure que la sortie de seconde OCR 100.In addition, the invention takes the better of the two OCRs than the output of the first OCR 12 and better than the output of the second OCR 100.
segmentatie ns b·:segmentation ns b ·:
S’P« des points de:If points ":
cours de points de •mirée• mirrored points course
Selon un mode de réalisation de l'invention, au moins uneAccording to one embodiment of the invention, at least one
B E2017/5263B E2017 / 5263
En d’autres termes, l'invention concerne un procédé et un programme de combinaison d’une première reconnaissance optique de caractères (OCR) 12 et d’une seconde OCR 100. La première OCR 12 opère d’abord sur une image d'une chaîne de caractères 11. Sa sortie 5 13 (premiers caractères identifiés, positions des caractères et paramètres de vraisemblance des caractères) est utilisée pour générer un premier graphe 16. Des points de segmentation en rapport avec les positions des premiers caractères identifiés 14 sont utilisés comme entrée par la seconde OCR 100 en effectuant une segmentation et une classification 10 combinées sur l’image de chaîne de caractères 11. La sortie 17 (seconds caractères identifiés, positions des caractères et paramètres de vraisemblance des caractères) de la seconde OCR 100 est utilisée pour mettre à jour 20 le premier graphe 16, générer un second graphe 21 qui combine la sortie 13 de la première OCR 12 avec la sortie 17 de la 15 seconde OCR 100. Des modèles de décision sont ensuite utilisés pour modifier les pondérations 22 des trajets dans le deuxième graphe 21 afin de générer un troisième graphe 23. Un meilleur trajet 24 est déterminé sur le troisième graphe 23 pour obtenir l’identification 25 des caractères présents dans l’image de ka chaîne de caractères 11.In other words, the invention relates to a method and a program for combining a first optical character recognition (OCR) 12 and a second OCR 100. The first OCR 12 operates first on an image of a character string 11. Its output 5 13 (first identified characters, positions of the characters and parameters of likelihood of the characters) is used to generate a first graph 16. Segment points related to the positions of the first identified characters 14 are used as input by the second OCR 100 by performing a combined segmentation and classification 10 on the character string image 11. The output 17 (identified second characters, positions of the characters and character likelihood parameters) of the second OCR 100 is used to update the first graph 16, generate a second graph 21 which combines the output 13 of the first OCR 12 with the output 17 d e the second OCR 100. Decision models are then used to modify the weightings 22 of the paths in the second graph 21 in order to generate a third graph 23. A better path 24 is determined on the third graph 23 to obtain the identification 25 of the characters present in the image of character string 11.
B E2017/5263B E2017 / 5263
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
BE20175263A BE1025134B1 (en) | 2017-04-13 | 2017-04-13 | Method of identifying a character in a digital image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
BE20175263A BE1025134B1 (en) | 2017-04-13 | 2017-04-13 | Method of identifying a character in a digital image |
Publications (2)
Publication Number | Publication Date |
---|---|
BE1025134A1 BE1025134A1 (en) | 2018-11-09 |
BE1025134B1 true BE1025134B1 (en) | 2018-11-16 |
Family
ID=64050002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BE20175263A BE1025134B1 (en) | 2017-04-13 | 2017-04-13 | Method of identifying a character in a digital image |
Country Status (1)
Country | Link |
---|---|
BE (1) | BE1025134B1 (en) |
-
2017
- 2017-04-13 BE BE20175263A patent/BE1025134B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
BE1025134A1 (en) | 2018-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BE1024194A9 (en) | Method for identifying a character in a digital image | |
BE1022562B1 (en) | Optical character recognition method | |
US10936897B2 (en) | Method and system for information extraction from document images using conversational interface and database querying | |
EP1836651B1 (en) | Method for searching, recognizing and locating a term in ink, and a corresponding device and computer program | |
US8965126B2 (en) | Character recognition device, character recognition method, character recognition system, and character recognition program | |
US7499588B2 (en) | Low resolution OCR for camera acquired documents | |
EP3772036A1 (en) | Detection of near-duplicate image | |
BE1025006B1 (en) | COMPUTER-IMPLEMENTED PROCESS AND OPTICAL CHARACTER RECOGNITION SYSTEM | |
FR2963695A1 (en) | POLICE WEIGHT LEARNING FOR TEST SAMPLES IN MANUSCRIPTED KEYWORD REPORTING | |
BE1025503B1 (en) | LINE SEGMENTATION METHOD | |
BE1026039B1 (en) | IMAGE PROCESSING METHOD AND IMAGE PROCESSING SYSTEM | |
KR20140105853A (en) | Program for reading characters, and character reader as well as method for reading characters | |
Zhang et al. | Reconstruction of distorted underwater images using robust registration | |
CN111723852A (en) | Robust training method for target detection network | |
BE1025502A1 (en) | SYSTEM AND METHOD FOR FORM RECOGNITION USING GABOR FUNCTIONS | |
US20220398399A1 (en) | Optical character recognition systems and methods for personal data extraction | |
BE1025134B1 (en) | Method of identifying a character in a digital image | |
HoangVan et al. | Developing an OCR Model for Extracting Information from Invoices with Korean Language | |
Kim et al. | Semantic-preserving augmentation for robust image-text retrieval | |
Banerjee et al. | Quote examiner: verifying quoted images using web-based text similarity | |
BE1023388A1 (en) | Method and system for correcting an image from a hand scanner | |
Zhang et al. | Using visual cropping to enhance fine-detail question answering of blip-family models | |
FR2880708A1 (en) | Term e.g. typed character, searching method for digital handwritten document, involves converting handwritten data into intermediate data, in intermediate format, in form of segmentation graph, and searching terms on intermediate data | |
EP3502904A1 (en) | Method for improving the execution time of a computer application | |
WO2024052557A1 (en) | Method for the automated processing of a document to allow it to be used by people with disabilities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Patent granted |
Effective date: 20181116 |
|
MM | Lapsed because of non-payment of the annual fee |
Effective date: 20190430 |