Brevet FR3002354A1 — publié le 20140822

La présente invention concerne un procédé et un dispositif d'affectation aux pixels d'une image d'une première valeur ou d'une seconde valeur. L'affectation aux pixels d'une image d'une première valeur ou d'une seconde valeur respectivement représentatives du noir et du blanc est classiquement appelée la binarisation d'une image. Lorsqu'on numérise un document papier, on obtient généralement une image en couleur ou en niveaux de gris. Cependant, certaines utilisations préfèrent fonctionner avec une image binaire, c'est-à-dire une image qui ne contienne que deux couleurs : le noir pur et le blanc pur. C'est le cas par exemple de la reconnaissance de caractères (OCR). De plus, les images binaires peuvent se compresser très facilement afin d'occuper moins d'espace de stockage et peuvent ainsi être transmises avec une bande passante réseau plus faible. Il existe des méthodes de seuillage pour binariser une image. Ces méthodes consistent à comparer la valeur de chaque pixel à un seuil, puis à mettre la valeur du pixel à « blanc » si le pixel est plus clair que le seuil ou bien à mettre la valeur du pixel à « noir » si le pixel est plus foncé que le seuil. Le seuil peut être fixé arbitrairement pour toutes les images. Par exemple, pour des images usuelles dont les valeurs de pixels sont comprises entre 0 et 255, le seuil est fixé à 128. Le seuil peut être fixé globalement pour chaque image. Par exemple, le seuil peut être fixé à la moyenne des valeurs des pixels de l'image. Le seuil peut être fixé localement pour chaque pixel en fonction d'une analyse du voisinage du pixel. Bien souvent, ces différentes techniques ne sont pas adaptées lorsqu'un document contient du texte sur un fond coloré ou sombre. La présente invention a pour but de résoudre les inconvénients de l'art antérieur en proposant un procédé et un dispositif d'affectation aux pixels d'une image d'une première valeur ou d'une seconde valeur qui soient aptes à binariser des images contenant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair. A cette fin, selon un premier aspect, l'invention propose un procédé d'affectation aux pixels d'une image d'une première valeur ou d'une seconde valeur, caractérisé en ce que le procédé comporte les étapes, exécutées pour chaque pixel de l'image de : - détermination, à partir des valeurs des pixels voisins et de la valeur du pixel, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - détermination d'un seuil à partir du résultat de la détermination si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - affectation au pixel de la première valeur ou de la seconde valeur en fonction de la comparaison de la valeur du pixel au seuil déterminé. La présente invention concerne aussi un dispositif d'affectation aux pixels d'une image d'une première valeur ou d'une seconde valeur, caractérisé en ce que le dispositif comporte: - des moyens de détermination, pour chaque pixel de l'image, à partir des valeurs des pixels voisins et de la valeur du pixel, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - des moyens de détermination, pour chaque pixel de l'image, d'un seuil à partir du résultat de la détermination si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - des moyens d'affectation, pour chaque pixel de l'image, au pixel de la première valeur ou de la seconde valeur en fonction de la comparaison de la valeur du pixel au seuil déterminé. Ainsi, en rendant la détermination du seuil dépendante de la détermination, pixel par pixel, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, la présente invention améliore la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair. Lorsqu'une reconnaissance de caractères est effectuée sur l'image binarisée grâce à la présente invention, les résultats fournis par la reconnaissance de caractères sont grandement améliorés. Selon un mode particulier de l'invention, la détermination, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, est effectuée en calculant une asymétrie statistique sur les valeurs des pixels voisins et la valeur du pixel. Ainsi, la binarisation d'une image comportant du texte sur un fond coloré ou sombre ou clair est améliorée. Selon un mode particulier de l'invention, l'asymétrie statistique est calculée selon la formule suivante : y3 = ()3 où N est le nombre de pixels voisins plus un, a un écart type N cr déterminé sur les valeurs du pixel et des pixels voisins, et kt est la moyenne des valeurs du pixel et des pixels voisins et x, prenant la valeur du pixel et des pixels 10 voisins. Ainsi, la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair est améliorée. Selon un mode particulier de l'invention, le seuil est déterminé en outre en fonction de l'asymétrie statistique. 15 Ainsi, la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair est améliorée. Selon un mode particulier de l'invention, la détermination, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, est effectuée comparant la 20 valeur médiane m des valeurs des pixels voisins et du pixel avec la moyenne des valeurs des pixels voisins et du pixel. Ainsi, la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair est améliorée. Selon un mode particulier de l'invention, le seuil est déterminé en outre en 25 fonction de l'écart type déterminé sur les valeurs du pixel et des pixels voisins. Ainsi, la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair est améliorée. Selon un mode particulier de l'invention, le seuil est déterminé en outre en fonction de la moyenne des valeurs des pixels voisins et du pixel. 30 Ainsi, la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair est améliorée. Selon un mode particulier de l'invention, le seuil est déterminé selon la formule suivante : To sicï a-1 où aï et aï, sont des valeurs prédéterminées telles que aï est supérieur à a, to est un seuil global calculé sur l'ensemble de l'image, k est une constante, y est la moyenne des valeurs du pixel et des pixels voisins, a est l' écart type déterminé sur les valeurs du pixel et des pixels voisins et y' est l'asymétrie statistique. Ainsi, la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair est améliorée. Selon un mode particulier de l'invention, le seuil est déterminé selon la formule suivante : = u x (1 + k x (G R - 1)) si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus sombre que le fond, = M - (M - x (1 - k x R - 1)) si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond, où M est la valeur maximale que peut prendre un pixel, k et R sont des valeurs prédéterminées, y est la moyenne des valeurs du pixel et des pixels voisins, a est l'écart type déterminé sur les valeurs du pixel et des pixels voisins. Ainsi, la binarisation d'une image comportant du texte clair sur un fond coloré ou sombre ou du texte sombre sur un fond clair est améliorée. Selon un mode particulier de l'invention, l'affectation au pixel de la première valeur ou de la seconde valeur en fonction de la comparaison de la valeur du pixel au seuil déterminé est en outre dépendante de la détermination, à partir des valeurs des pixels voisins et de la valeur du pixel, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond. Ainsi, le texte apparaîtra toujours en noir sur un fond blanc. L'invention concerne aussi les programmes d'ordinateur stockés sur un support d'informations, lesdits programmes comportant des instructions permettant de mettre en oeuvre les procédés précédemment décrits, lorsqu'ils sont chargés et exécutés par un système informatique. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels : la Fig. 1 représente un exemple de réalisation d'un dispositif de binarisation d'une image composée de pixels ; la Fig. 2 représente un algorithme de binarisation d'une image composée de pixels. La Fig. 1 représente un exemple de réalisation d'un dispositif de binarisation d'une image composée de pixels. Le dispositif de binarisation 10 comprend : - un processeur, micro-processeur, microcontrôleur 100; - une mémoire volatile 103 ; - une mémoire non volatile 102; - éventuellement, un lecteur 104 de medium de stockage, tel qu'un lecteur de carte SD (Secure Digital Card en anglais ou Carte Numérique Sécurisée en français) ou un disque dur pour mémoriser les documents traités par la présente invention ; - une interface 105 avec un réseau de communication, comme par exemple un réseau de radiotéléphonie cellulaire ou Internet par laquelle des documents à traiter selon la présente invention sont reçus. - un bus de communication reliant le processeur 100 à la mémoire ROM 103, à la mémoire RAM 103, au lecteur de médium de stockage 104 et à l'interface 105. Le processeur 100 est capable d'exécuter des instructions chargées dans la mémoire volatile 103 à partir de la mémoire non volatile 102, d'une mémoire externe (non représentée), d'un support de stockage, tel qu'une carte SD ou autre, ou d'un réseau de communication. Lorsque le dispositif 10 est mis sous tension, le processeur 100 est capable de lire de la mémoire volatile 103 des instructions et de les exécuter. Ces instructions forment un programme d'ordinateur qui cause la mise en oeuvre, par le processeur 100, de tout ou partie du procédé décrit en relation avec la Fig. 2. Tout ou partie du procédé décrit en relation avec la Fig. 2 peut être implémenté sous forme logicielle par exécution d'un ensemble d'instructions par une machine programmable, tel qu'un DSP (Digital Signal Processor en anglais ou Unité de Traitement de Signal Numérique en français) ou un microcontrôleur ou être implémenté sous forme matérielle par une machine ou un composant dédié, tel qu'un FPGA (Field-Programmable Gate Array en anglais ou Matrice de Portes Programmable sur le Terrain en français) ou un ASIC (Application-Specific Integrated Circuit en anglais ou Circuit Intégré Spécifique à une Application en français). La Fig. 2 représente un algorithme de binarisation d'une image composée de pixels. Plus précisément, le présent algorithme est exécuté par le processeur 100 du dispositif 10. L'image est par exemple une image en niveau de gris dont les pixels varient entre la valeur nulle et 256. A l'étape E200, le processeur 100 sélectionne un premier pixel de l'image à binariser. A l'étape suivante E201, le processeur 100 calcule l'écart type a des valeurs du pixel sélectionné et de ses pixels voisins. Par exemple, le nombre N de pixels voisins plus un de la zone où il est déterminé si texte est plus clair que le fond où si le texte est plus sombre que le fond. N est égal à 15*15 ou 31*31 ou 63*63 selon la résolution de l'image. A l'étape suivante E202, le processeur 100 vérifie si le carré de l'écart type est supérieur ou égal à une valeur prédéterminée égale à 128 ou à une valeur prédéterminée comprise entre 100 et 175. Si le carré o-2 de l'écart type est supérieur ou égal à 128, le processeur 100 passe à l'étape E203. Si le carré o-2 de l'écart type est inférieur à 128, le processeur 100 passe à l'étape E204. Il est à remarquer ici que l'étape E202, dans une variante de réalisation, n'est pas exécutée. Selon cette variante, le processeur 100 passe de l'étape E200 à E203. A l'étape E203, le processeur 100 détermine si les pixels voisins du pixel sélectionné sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond. Il est à remarquer ici que le fond du texte représente la valeur des pixels au voisinage du texte. Par exemple, et selon le mode de réalisation préféré de l'invention, le processeur 100 calcule une asymétrie statistique des valeurs des pixels du voisinage. L'asymétrie statistique d'un ensemble de valeurs x, est définie par : y3 = E, (xi-)3 où N est le N cr nombre de pixels voisins et du pixel sélectionné, et kt est la moyenne des valeurs des pixels voisins et du pixel sélectionné. L'asymétrie statistique est négative si le pixel est représentatif d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond. Selon un autre mode de réalisation de l'invention, le processeur 100 calcule la différence m - y entre la médiane m des valeurs des pixels voisins et du pixel sélectionné et leur moyenne y. Cette différence est négative si le pixel est représentatif d'une zone où le texte est plus clair que le fond et positive si le pixel est représentatif d'une zone où le texte est plus sombre que le fond. En d'autres termes, ceci est équivalent à comparer la moyenne et la médiane. Le texte est plus sombre que le fond si la médiane est plus grande que la moyenne et 10 inversement. A l'étape suivante E204, le processeur 100 calcule pour le pixel sélectionné une valeur de seuil. Par exemple, le seuil -c est calculé selon la formule :T=y+kx a x y' où k est une constante arbitraire comprise entre 0,25 et 0,75. La constante k est par 15 exemple égale à 0,5. Par exemple, le seuil t est calculé selon la formule : rci sicï a-1 Dans lequel -cc, est une valeur prédéterminée, par exemple comprise entre 50 et 150 ou est égale à la valeur moyenne des pixels de l'image. aï_ est supérieur à 01, , et est par exemple supérieur de 20 à 40% au seuil al, ou 20 01, est à la valeur nulle et aï_ est égal à 128. Par exemple, le seuil est calculé avec une formule différente selon que l'analyse a déterminé que le voisinage est représentatif d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond. Par exemple, le seuil t est calculé selon la formule : 25 t = t x (1 + k x (c)- R - 1)) où k et R sont des constantes arbitraires, par exemple, k=0,5 et R=128 si le voisinage est représentatif d'une zone où le texte est plus sombre que le fond. Par exemple, le seuil t est calculé selon la formule : = M - (M - p.) X (1 - k x R - 1)) où M est la valeur maximale que peut prendre un pixel, par exemple 255, si le voisinage est représentatif d'une zone où le texte est plus clair que le fond. A l'étape E205, le seuillage du pixel sélectionné est déterminé en affectant la valeur binaire 1 ou 0 au pixel sélectionné. Si la valeur du pixel est inférieure au seuil déterminé, le pixel est mis à la valeur 1 correspondant au blanc. Si la valeur du pixel est supérieure au seuil déterminé, le pixel est mis à la valeur nulle correspondant au noir. En variante, la valeur du pixel est dépendante de l'étape de détermination E203 et dépend du fait que les pixels voisins du pixel sélectionné sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond. Si les pixels voisins du pixel sélectionné sont représentatifs d'une zone où le texte est plus clair que le fond, le pixel est mis à la valeur 1 correspondant au blanc si la valeur du pixel est inférieure au seuil déterminé. Si les pixels voisins du pixel sélectionné sont représentatifs d'une zone où le texte est plus sombre que le fond, le pixel est mis à la valeur nulle correspondant au noir si la valeur du pixel est inférieure au seuil déterminé. A l'étape suivante E206, le processeur 100 vérifie si tous les pixels ont été binarisés. Si tous les pixels de l'image ont été binarisés, le processeur 100 interrompt le présent algorithme. Si au moins un pixel de l'image n'a pas été binarisé, le processeur 100 passe à l'étape E207. A l'étape E207, le processeur 100 sélectionne un autre pixel de l'image et retourne à l'étape E201. Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits ici, mais englobe, bien au contraire, toute variante à la portée de l'homme du métier et particulièrement la combinaison de différents modes de réalisation de la présente invention. REVENDICATIONS1) Procédé d'affectation aux pixels d'une image d'une première valeur ou d'une seconde valeur, les pixels de l'image correspondant à du texte ou du fond, caractérisé en ce que le procédé comporte les étapes, exécutées pour chaque pixel de l'image de : - détermination (E203), à partir des valeurs des pixels voisins et de la valeur du pixel, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - détermination (E204) d'un seuil à partir du résultat de la détermination si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - affectation (E205) au pixel de la première valeur ou de la seconde valeur en fonction de la comparaison de la valeur du pixel au seuil déterminé. 2) Procédé selon la revendication 1, caractérisé en ce que la détermination, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, est effectuée en calculant une asymétrie statistique sur les valeurs des pixels voisins et la valeur du pixel. 3) Procédé selon la revendication 2, caractérisé en ce que l'asymétrie statistique est calculée selon la formule suivante : 3 3 y - -N E, ()3 où N est le nombre de pixels voisins plus un, a un écart type déterminé sur les valeurs du pixel et des pixels voisins, et y est la moyenne des valeurs du pixel et des pixels voisins et x, prenant la valeur du pixel et des pixels voisins. 4) Procédé selon la revendication 2 ou 3, caractérisé en ce que le seuil est déterminé en outre en fonction de l'asymétrie statistique. 5) Procédé selon la revendication 1, caractérisé en ce que la détermination, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, est effectuée encomparant la valeur médiane m des valeurs des pixels voisins et du pixel avec la moyenne des valeurs des pixels voisins et du pixel. 6) Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que le seuil est déterminé en outre en fonction de l'écart type déterminé sur les valeurs du pixel et des pixels voisins et de la moyenne des valeurs des pixels voisins et du pixel. 7) Procédé selon la revendication 6, caractérisé en ce que le seuil est déterminé selon la formule suivante : To Si 0" a-1 où aï et aï, sont des valeurs prédéterminées telles que aï est supérieur à ali, to est un seuil global calculé sur l'ensemble de l'image, k est une constante, kt est la moyenne des valeurs du pixel et des pixels voisins, a est l' écart type déterminé sur les valeurs du pixel et des pixels voisins et y' est l'asymétrie statistique. 8) Procédé selon la revendication 6, caractérisé en ce que le seuil est déterminé selon la formule suivante : T = kt x (1 + k x (G / R - 1)) si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus sombre que le fond, T = M - (M - p.) x (1 - k x (G I R - 1)) si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond, où M est la valeur maximale que peut prendre un pixel, k et R sont des valeurs prédéterminées, kt est la moyenne des valeurs du pixel et des pixels voisins, a est l'écart type déterminé sur les valeurs du pixel et des pixels voisins. 9) Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'affectation au pixel de la première valeur ou de la seconde valeur en fonction de la comparaison de la valeur du pixel au seuil déterminé est en outre dépendante de la détermination, à partir des valeurs des pixels voisins et de la valeurdu pixel, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond. 10) Dispositif d'affectation aux pixels d'une image d'une première valeur ou d'une seconde valeur, caractérisé en ce que le dispositif comporte: - des moyens de détermination, pour chaque pixel de l'image, à partir des valeurs des pixels voisins et de la valeur du pixel, si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - des moyens de détermination, pour chaque pixel de l'image, d'un seuil à partir du résultat de la détermination si les pixels au voisinage du pixel sont représentatifs d'une zone où le texte est plus clair que le fond ou d'une zone où le texte est plus sombre que le fond, - des moyens d'affectation, pour chaque pixel de l'image, au pixel de la première valeur ou de la seconde valeur en fonction de la comparaison de la valeur du pixel au seuil déterminé.