FR 2794560 A1 20001208 FR 9906880 A 19990601 La présente invention concerne les procédés d'aide à la vision. L'utilisateur de l'invention est notamment et non exclusivement un amblyope. L'invention permet une aide à la vision de près. Elle s'applique notamment à l'aide à la lecture pour malvoyant. Les dispositifs d'aide à la lecture connus peuvent être classés en deux familles : les télé agrandisseurs et les machines à lire. Un télé agrandisseur ou vidéo agrandisseur comporte une caméra analogique et un écran. Le zoom optique de la caméra permet d'afficher sur l'écran une partie d'un document sous un format supérieur à celui de l'original. Cette visualisation agrandie peut permettre à un malvoyant de lire la partie affichée sur l'écran. Un tel dispositif nécessite de déplacer le document à lire ou à visualiser sous le capteur d'acquisition d'image, pour poursuivre la lecture le long de la ligne imprimée ou manuscrite, puis le long de la ligne suivante. La recherche du début de la ligne suivante est difficile et demande une attention soutenue et un geste précis, notamment lorsque l'agrandissement est fort. Ce dispositif présente l'inconvénient de fatiguer l'utilisateur. Une machine à lire permet d'éviter le déplacement physique du texte à lire. Elle comporte un scanner pour l'acquisition de texte qui est asssocié à une synthèse vocale restituant le texte à lire. La restitution peut également s'effectuer sur un périphérique pour non voyant comme une cellule braille. La machine traite du texte affiché sur un support plan, généralement une feuille de dimensions standard. Elle ne permet pas la lecture de livres, ni celle d'indications portées sur des objets de surface quelconque. L'invention propose une autre aide à la lecture assurant une restitution agrandie et corrigée d'un document original en supprimant la manipulation du document. Son but est de réduire la fatigue de l'utilisateur. L'invention propose un procédé d'assistance à la lecture, utilisant un écran de visualisation et un capteur d'image haute résolution caractérisé en ce qu'il consiste à acquérir une image numérisée haute résolution d'une image réelle affichée sur un support, - former une image synthétique correspondant à une découpe de l'image numérisée en blocs de texte et/ou graphique, - réaliser un traitement de l'image numérisée corrigeant les éventuels défauts de l'image et les éventuels défauts dus à la forme du support de l'image réelle, - afficher sur l'écran l'image numérisée et/ou l'image synthétique, - en cas de sélection par un utilisateur d'un bloc de texte de l'image synthétique: - augmenter la taille des caractères du texte du bloc sélectionné, - et/ou gérer le retour ligne et le défilement automatique pour la lecture, - en cas de sélection par un utilisateur d'un bloc graphique - agrandir la zone graphique du bloc sélectionné, - et/ou permettre à l'utilisateur de se déplacer dans la zone graphique du bloc s électionné. L'invention analyse la structure de l'image réelle affichée sur son support, elle assure une découpe automatique de l'image en blocs et classifie chaque bloc en un bloc de texte ou un bloc graphique. Le procédé réalise de préférence un traitement de l'image numérisée corrigeant les éventuels défauts de l'image et les éventuels défauts dus à la forme du support de l'image réelle. Il permet par exemple de lire des pages reliées en livre ou des indications portées sur des emballages, L'invention permet une utilisation efficace d'un outil de reconnaissance de caractères sur un bloc de texte. L'outil est de préférence un logiciel d'OCR (abréviation de l'expression anglo-saxonne Optical Character Recognition signifiant reconnaissance de caractères) vendu dans le commerce. Un tel outil ne fonctionne pas correctement s'il est appliqué directement sur l'image numérisée, même si celle-ci présente une haute définition, il demande une intervention importante de l'utilisateur l'invention permet d'éviter cette intervention de l'utilisateur. L'invention présente l'avantage d'aider à la lecture d'un texte par agrandissement et remise en forme automatique d'un bloc de texte sélectionné. Le procédé peut également comporter une étape optionnelle de synthèse vocale pour réaliser une lecture automatique d'un bloc de texte sélectionné. Le procédé selon l'invention présente aussi l'avantage de permettre la connexion à un système bureautique dont l'affichage n'est généralement pas adapté à une exploitation par un utilisateur malvoyant. La mise en #uvre du procédé de l'invention permet à l'utilisateur malvoyant de lire mais également de valider un choix ou de saisir des données sur un tel système bureautique. La présentation d'un bloc de texte ou graphique classifié par le procédé peut être modifiée pour en faciliter la perception par l'utilisateur malvoyant, ainsi à titre d'exemples non limitatifs, la couleur peut être adaptée aux défauts de vision de l'utilisateur, les contours peuvent être renforcés, le contraste peut être amélioré. D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description détaillée suivante présentée à titre d'illustration non limitative et faite en référence aux figures annexées suivantes dans les quelles une même référence correspond à un même élément de la description : - la figure 1 illustre les étapes principales du procédé selon l'invention ; - la figure 2 représente des histogrammes d'une image numérisée, la figure 2.a est un histogramme d'origine, la figure 2.b est un histogramme lissé et la figure 2.c est un histogramme lissé d'une image avec une courbure - la figure 3 représente un ruban et son profil , - la figure 4 illustre la fusion de deux blocs ; - la figure 5 représente des recollements dans une page; - la figure 6 représente trois cas de recollement, 6.a, 6.b et 6.c, avec des entêtes de page -, - la figure 7 représente en Ta une découpe en blocs sur une page et en 7.b son arbre associé ; - la figure 8 représente des points voisins du filtrage spécial. La figure 1 représente les étapes principales du procédé selon l'invention. La première étape principale du procédé consiste à acquérir une image numérisée haute définition d'un objet comme par exemple une ou plusieurs pages d'un livre, une page d'une revue, une image pouvant comporter du texte sur un support non plan. Pour réaliser cette étape, on utilise de préférence un scanner haute définition. La résolution est d'au moins 150 ppp (pixel par pouce) pour la découpe en blocs et de plus de 300 ppp, avec de préférence une valeur supérieure à 600 ppp pour les autres traitements. L'utilisation d'une même résolution élevée pour tous les traitements est possible. L'utilisation d'une résolution réduite pour la découpe en bloc présente l'avantage de réduire le temps global de calcul lors de l'exécution du procédé sans dégrader les performances. Le procédé peut aussi utiliser un capteur matriciel comme un appareil photographique numérique ou une caméra numérique, situé à une distance inférieure à un mètre du support de l'image réelle, L'image numérisée est acquise une seule fois à partir de l'image réelle, quelle que soit la zone de l'image explorée ultérieurement par l'utilisateur. Après numérisation le support de l'image réelle n'est plus nécessaire, il n'est pas manipulé lors des lectures. Cette première étape principale peut être réalisée de manière anticipée. On peut appliquer les étapes suivantes du procédé sur une image déjà numérisée avec une définition suffisante. L'image est par exemple numérisée en niveaux de gris. De préférence, le procédé réalise une détection de l'inclinaison de l'image et effectue un redressement de l'image. Une seconde étape principale du procédé consiste à réaliser une image synthétique. A partir d'une image numérisée, par exemple en niveaux de gris, le procédé réalise une image binaire par seuillage, avec recherche automatique du seuil puis une découpe en blocs complétée par une classification des blocs trouvés afin de permettre la séparation des zones contenant du texte des zones d'image contenant des informations graphiques, ou assimilées à des informations graphiques. Dans cette classification, les titres sont assimilés à des zones graphiques, les libellés d'un schéma sont considérés globalement avec le schéma comme une zone graphique. Une zone de texte correspond à une partie de colonne ne contenant que du texte. L'image synthétique correspond à l'ensemble des blocs classifiés. Dans une troisième étape principale du procédé, l'image numérisée subit un traitement numérique visant à corriger les éventuels défauts de l'image et notamment des défauts dus à la forme du support de l'image réelle originale. De préférence, une rebinarisation de l'image numérisée de la première étape principale est effectuée à l'aide de l'image synthétique : un nouveau seuillage automatique est effectué de façon indépendante sur chaque bloc texte. Si un mode spécial livre est activé, la troisième étape principale effectue un filtrage spécial de préférence sur les zones d'ombres dues au support. Le mode spécial livre est de préférence activé à la demande de l'utilisateur ; cela permet de n'effectuer les traitements de ce mode que sur un document pour lesquels ils sont vraiment utiles En particulier l'activation à la demande permet de traiter une photocopie d'une page de livre épais comportant effectivement une ombre due à la courbure du livre près de la reliure, alors que la photocopie elle-même est un document plan. Dans une variante, le procédé peut comporter des capteurs de planéité du document à lire, et activer le mode spécial livre en fonction des mesures de ces capteurs. Dans une quatrième étape, l'image synthétique est par exemple représentée sur un écran de visualisation par les contours des différents blocs. Chaque contour peut être rempli par une surface de couleur uniforme, ou par un graphisme particulier permettant à l'utilisateur malvoyant de percevoir facilement sur l'écran de visualisation où se situent les différents blocs sur l'image réelle, et leur classification (texte ou graphique). Le procédé d'aide à la lecture utilise un support de visualisation, de préférence un écran de visualisation. L'écran de visualisation est connecté à des moyens pour sélectionner des zones affichées sur l'écran. Dans une cinquième étape du procédé, ces moyens de sélection permettent à l'utilisateur de déplacer un curseur (visible ou invisible) sur l'écran et de désigner la zone de l'écran correspondant à la position du curseur. Ces moyens de sélection peuvent notamment comporter une souris de micro-ordinateur, un écran tactile, une boule roulante avec bouton de validation. Lorsque l'utilisateur désigne un bloc de texte, une sixième étape du procédé s'exécute, elle présente à l'utilisateur le résultat de la mise en #uvre d'un logiciel de reconnaissance de caractères. Le procédé peut effectuer cette mise en #uvre sur la désignation du bloc mais le procédé l'effectue de préférence en tâche de fond dès la réalisation de la troisième étape sur un bloc de texte. Le logiciel est de préférence un logiciel OCR du commerce. Les étapes précédentes du procédé selon l'invention permettent de fournir en entrée du logiciel OCR des données adaptées à un fonctionnement performant - et notamment lorsque le support de l'image réelle originale n'est pas plan. Le logiciel OCR ainsi alimenté fonctionne automatiquement et fournit un texte ne nécessitant pas de corrections fastidieuses pour l'utilisateur. L'utilisateur malvoyant peut exploiter directement le texte obtenu en sortie du logiciel de reconnaissance de caractères. Cette exploitation dans la sixième étape consiste par exemple en une présentation du texte sur l'écran de visualisation à l'aide d'une police à gros caractères dont la taille est adaptée à la déficience visuelle de l'utilisateur. De préférence, le défilement du texte à la ligne suivante est géré automatiquement ce qui permet de limiter la fatigue de l'utilisateur à la stricte lecture des mots. En option, le procédé peut comporter une étape de synthèse vocale supprimant l'effort de lecture, L'utilisateur peut, à la demande, revenir à la présentation de l'image synthétique. Lorsque l'utilisateur désigne un bloc classifié comme un bloc graphique, un zoom sur la partie de l'image numérisée correspondant à ce bloc est réalisé dans une septième étape du procédé. Le zoom permet de présenter sur l'écran de visualisation un grossissement de bonne définition de l'image originale. De préférence, ce zoom est complété par un curseur manipulé par l'utilisateur pour se déplacer dans le bloc graphique désigné. Un exemple de réalisation des étapes principales du procédé est décrit ci-dessous. Il comprend quatre grandes parties. e Une recherche du seuil optimal pour convertir l'image numérisée d'origine de la page en une image binaire à l'aide de la technique du seuillage global. ,@ Un traitement de découpe en bloc de l'image de la page et classifications des blocs trouvés : les différentes zones de la page sont détectées et séparées en blocs, puis classées suivant qu'il s'agit d'un bloc texte ou d'un bloc graphique. e Un nouveau seuillage des zones de l'image numérisée d'origine qui correspondent aux blocs de texte trouvés par la découpe en blocs. Ce seuillage est plus adapté pour l'OCR que le seuillage global, et si une zone à l'intérieur d'un bloc de type texte est perturbée à cause de la courbure du support, un filtrage spécial adapté au problème de la courbure est appliqué sur cette dernière, e Un filtrage spécial adapté au problème de la courbure, afin de compenser les zones sombres dues à celle-ci, lorsque le document a été scanné alors qu'il n'était pas parfaitement en contact avec la vitre du scanner. C'est notamment le cas pour les livres, au niveau de la tranche. Ces procédures s'effectuent soit sur des images numérisées en niveaux de gris ; soit sur des images binaires. Dans l'exemple ci-dessous, les valeurs numériques préférées correspondent à une réalisation particulièrement bien adaptée au traitement d'une page contenant du texte avec une police de caractères entre 8 et 12, avec une résolution de scanner de 150 ppp pour la découpe en blocs et de 600 ppp pour les autres traitements. Le procédé peut être optimisé pour une autre plage de police etlou une autre résolution en adaptant les valeurs prédéterminées. L'image numérique initiale est filtrée par un filtre médian sur une matrice de quelques pixels, de préférence une matrice 3x3. En supprimant des pixels de bruit, cette étape permet de limiter l'influence du bruit. En préliminaire, la méthode classique de seuillage par seuil global d'une image en niveaux de gris est rappelée ci-dessous. Si f est une image en niveaux de gris, b est l'image binaire à extraire de f et T est le niveau de seuillage, alors l'image binaire b est calculée comme suit : Pour tout point P de coordonnées (x,y), si le niveau de grisf (x,y) du point P est supérieur au niveau de seuillage T, le point P est blanc dans l'image binaire, soit b(x,y) 1 ; si par contre le niveau de grisf (x, y) du point P est inférieur au niveau de seuillage T, le point P est noir dans l'image binaire, soit b(x,y) 0. Dans l'étape de recherche automatique du seuil, le procédé détermine une valeur adéquate de seuil T pour extraire une image binaire de l'image numérisée en niveaux de gris par la méthode classique de seuillage par seuil global. L'histogramme d'origine de l'image numérisée est représenté par exemple sur la figure 2.a avec les niveaux de gris en abscisse et le nombre de pixels de l'image numérisée correspondant à chaque niveau de gris en ordonnée. Dans cet exemple les niveaux de gris sont compris entre 0 pour le noir et 255 pour le blanc. Une simple recherche de maximum global sur l'histogramme pour déterminer le seuil T conduirait généralement à un pic 28 dans la zone des pixels sombres qui correspond aux caractères imprimés en noir. Et le seuillage avec un tel seuil conduirait à supprimer toute l'information en fournissant une image binaire blanche. Sur l'exemple présenté sur la figure 2.a, le seuil adéquat Test aux environs du niveau 160. De préférence le procédé effectue d'abord une sous-étape consistant à lisser l'histogramme. Il remplace chaque valeur à l'indice n de l'histogramme par la valeur moyenne calculés sur les 11 indices autour de l'indice n. Si h est l'histoqramme d'origine et 1 l'histogramme lissé, alors Cette sous-étape permet de supprimer des éventuelles irrégularités provenant de la conversion d'une image en couleur en niveaux de gris. L'histogramme lissé 1 correspondant à l'histogramme de la figure 2.a est représenté sur la figure 2.b. On y remarque un pic 30 dans les faibles niveaux de gris représentant une quantité de pixels très sombres, ce pic correspond aux pixels de l'image formant des caractères de texte. Une zone 31 assez stable de l'histogramme lissé correspond à des pixels sombres représentant des zones graphiques. Un pic 32 dans les niveaux de gris moyens, environ 140 sur l'exemple de la figure 2.b, correspond à un fond moyennement clair. Ce pic 32 correspond par exemple à une zone graphique de l'image. Un pic 33 plus important dans les niveaux de gris plus élevés d'environ 190 sur la figure 2.b, c'est-à-dire représentant des pixels plus clairs, correspond à la surface du fond clair prédominant sur l'image numérisée. Enfin un petit pic 34 représentant des pixels très clairs, dans des niveaux de gris d'environ 240 sur la figure 2.b, correspond à une zone blanche sur l'image numérisée. Pour déterminer le seuil adéquat T, le procédé exploite l'histogramme lissé, En partant des niveaux de gris élevés sur l'histogramme lissé, c'est-à-dire de la partie de l'histogramme correspondant aux pixels les plus clairs, le procédé explore les niveaux de gris décroissants jusqu'à trouver sur la courbe un point dont le nombre de pixels sur l'axe des ordonnées n, est supérieur à un nombre de pixels no dépendant de la résolution de scan et correspondant de préférence à un nombre moyen de pixels par niveau de gris. Une estimation du nombre moyen no est par exemple le nombre total de pixels de l'image numérique divisé par le nombre total de niveaux. Sur l'exemple de la figure 2.b réalisé avec un scanner de résolution 300 ppp sur une page de format A4, la hauteur de la page correspond environ à 1700 pixels, la largeur à 1500 pixels, la numérisation étant effectuée avec environ 250 niveaux de gris, la valeur de no est d'environ 40000. Ce premier test permet d'éliminer les éventuels petits pics vers le haut de l'histogramme, correspondant à des fonds plus clairs mais peu présents sur l'image comme par exemple le pic 34 de la figure 2.b. Le procédé cherche ensuite le maximum en continuant à descendre les niveaux de gris tant que la pente sur la courbe de l'histogramme lissé est négative, il recule jusqu'à obtenir une pente nulle. Le procédé a alors trouvé un maximum local correspondant à un nombre de pixels mi, représenté sur la figure 2.b. A partir du maximum local mi, le procédé préfère reculer sur la courbe de l'histogramme tant que le nombre de pixels est supérieur par exemple au tiers de la valeur ni,, représenté par ni, / 3 sur la figure 2.b. Ensuite il cherche le pied, du côté des faibles niveaux de gris, du gros pic 33 supportant le maximum local ml en calculant la pente et en continuant à descendre la courbe suivant les niveaux de gris décroissants, jusqu'à que la pente soit faible, sa valeur est par exemple inférieure à l'unité à 10 % près. Le procédé détermine alors la valeur du seuil désiré T, égal au niveau de gris atteint dans la recherche par exploration décroissante. La valeur de niveau de gris sur l'exemple de la figure 2.b est d'environ 160 sur l'axe des abscisses. Le traitement ci-dessus permet au procédé de fournir un seuil dont la valeur n'est pas sensible à la présence éventuelle de maxima locaux rapprochés du maximal local ml détecté. Le procédé est robuste. Si pendant la recherche, le procédé atteint un niveau de gris faible, inférieur à une valeur prédéterminée de seuil minimal, il considère que le seuil T n'est pas trouvé. La valeur prédéterminée de seuil minimal est de quelques pourcent du nombre total de niveaux de gris, de préférence entre 3 et 5 %. Pour une numérisation en 256 niveaux de gris, la valeur est située entre 8 et 12, et de préférence égale à 10. Si le seuil n'est pas trouvé, le procédé fournit alors un seuil T de valeur prédéterminée Tp. La valeur Tp correspond de préférence à un niveau de gris moyen. Elle est par exemple égale à 125 sur l'échelle niveaux de 0 à 255. Si le mode spécial livre est activé, la valeur de seuil prédéterminée est T., . Cette dernière valeur est de préférence entre 50 et 60 sur l'échelle de 0 à 255. La valeur de Tpi permet au procédé lors de la binarisation d'éliminer la bosse due à la zone d'ombre de la courbure d'un livre, en limitant la perte d'information sur les zones graphiques. T., est de préférence égal à 52. La figure 2.c représente un exemple d'histogramme lissé d'une image avec courbure due au livre, la bosse due à la courbure y est représentée par le pic35, les zones graphiques y sont représentées par la zone 31. Après la détermination automatique d'un seuil, le procédé effectue une binarisation par seuil global de l'image numérisée d'origine. Lors de la recherche automatique de seuil, le procédé estime le seuil Tjuste avant le pic le plus élevé dans la zone des pixels clairs. Ce seuil automatique T permet au procédé d'extraire une image binaire en éliminant le fond le plus clair qu'il considère comme blanc et en gardant le reste de l'information qu'il considère comme noire. Le fond clair est éliminé par le procédé même s'il n'est pas blanc, et notamment s'il est légèrement grisâtre après la numérisation. La prise en compte par le procédé d'une valeur prédéterminée Tp respectivement Tpi de seuil minimal permet d'obtenir une image binaire de bonne qualité lorsqu'il y a des zones graphiques de surface importante sur l'image sans courbure, respectivement avec courbure du support. Sur l'image binaire, les photos et dessins sont des blocs quasiment entièrement noirs. Dans le cas où le mode spécial livre est activé, une contrainte supplémentaire est imposée par le procédé à la valeur de seuil automatique. Dans ce cas, le procédé continue la recherche du seuil si la valeur est trop élevée ; c'est-à-dire à une valeur supérieure à un niveau de gris moyen, par exemple 125. Le procédé cherche, dans le sens des niveaux de gris décroissants, un niveau T,,,, correspondant à un maximum local suivi d'un niveau Tj,, correspondant à un minimum local, avec une contrainte sur les valeurs relatives de ces deux niveaux T,,,,-,, et T,,,,,,. La contrainte est de préférence la suivante: le niveau de gris du maximum est au moins deux fois plus élevé que celui du minimum. Le procédé permet la détection d'un pic correspondant à la zone sombre due à la courbure du livre. La contrainte permet d'éviter des perturbations dues à d'éventuels petits extréma négligeables. Le procédé détermine une valeur de seuil dans l'intervalle entre les deux niveaux T,,,,,, et T,,,,. Par exemple il calcule la valeur située aux 2/5' de l'intervalle : T T.i,, + (T,,,#,, - T.j.) La valeur choisie est inférieure au niveau T,,,,, avec lequel l'image binaire obtenue par seuillage serait dégradée et comporterait des pixels noirs sur quasiment toute la zone d'ombre due à la courbure. La valeur choisie est supérieure au niveau T,,,, avec lequel le seuillage ferait disparaître en blanc presque entièrement la zone d'ombre, ce qui présenterait l'inconvénient de faire également disparaître l'information de texte dans cette zone. Si une zone graphique est présente sur la page, le pic du maximum risque d'être relativement inexistant. Si les seuils T,,,,., et T,,,,,. ne sont pas trouvés, la valeur du seuil automatique est fixée par le procédé à une valeur prédéterminée T., qui permet de réduire les phénomènes de bordure et de courbure tout en gardant le texte et les images. Cette valeur vaut par exemple 52. Après la détermination du seuil automatique dans le cas du mode spécial livre, le procédé, comme dans le cas normal, effectue une binarisation par seuil global de l'image numérisée d'origine. La méthode spécial livre permet de conserver du texte présent sur la zone d'ombre due à la courbure du support dans l'image d'origine. La recherche automatique permet au procédé de réaliser une seuillage automatique efficace sur des histogrammes qui varient, le procédé est robuste, il fournit une aide à la lecture de documents divers. Il permet une aide à la lecture qui n'est pas limitée à un format précis de texte imprimé. Après la recherche automatique de seuil, le procédé effectue une découpe en blocs. Cette découpe en bloc, aussi appelée segmentation, s'applique sur une image binaire, de préférence celle obtenue à l'aide du seuil automatique. Cette segmentation a lieu en plusieurs sous-étapes. Une détermination des blocs dans des rubans est suivie d'un recollement des blocs rubans comportant une sous-étape de classification. L'image binaire est d'abord découpée en rubans horizontaux réguliers, chacun d'une hauteur prédéterminée, valant environ l'espace entre deux paragraphes de texte. Cette hauteur correspond à quelques dizaines de pixels, elle vaut de préférence 60 pixels, ce qui correspond pour la définition de 150 ppp à environ une hauteur de 1 centimètre. En projetant chaque ruban dans le sens de la verticale, le procédé détermine une courbe indiquant le profil du ruban. La figure 3 représente un ruban 40 et le profil 41 dans le sens vertical. Le ruban correspond à une bande horizontale de l'image binaire d'axe des abscisses horizontal qui et par exemple parallèle à la ligne supérieure de pixels de l'image binaire. La construction du profil, 41 sur la figure 3, consiste à associer à chaque point de l'axe des abscisses 42, une ordonnée égale à la somme des valeurs des pixels du ruban de l'image binaire ayant cette abscisse. Sur une zone de texte ou de graphique, où il y a des points noirs, le niveau du profil est plus bas, par exemple la partie 43 sur la figure 3, que sur une zone blanche entre deux zones foncées, par exemple la zone 44 de la figure 3. Le procédé recherche sur le profil les zones suffisamment larges de hauts et de bas niveaux, et les changements trouvés correspondent à des changements de colonnes sur le ruban en question. Pour cela le procédé utilise différents seuils de la manière suivante: e une zone blanche est retenue par le procédé si elle est plus large qu'une largeur prédéfinie correspondant à un premier seuil Lbl,,, . La valeur du seuil est supérieure à l'espacement moyen attendu entre deux mots. La valeur est par exemple de quelques dizaines de pixels et de préférence d'une vingtaine de pixels. Ce seuil permet d'éviter de pertuber la recherche des sauts de colonnes par les espaces blancs entre deux mots. e une zone noire est retenue par le procédé si elle est plus large qu'une largeur donnée définissant un deuxième seuil L,,,i, . Ce seuil est de préférence de quelques pixels pour une résolution de 150 ppp. Ce seuil permet d'éviter des zones de bruit et des points solitaires. e enfin un troisième seuil, Tb, détermine la proportion de points blancs existant sur une colonne de pixels extraite du ruban pour qu'au moment de la projection, le procédé considère cette colonne en majorité comme blanche ou comme noire. Par exemple la zone 45 de la figure 3 est une colonne noire et la zone 43 est une colonne blanche. Si le mode spécial livre est activé, alors Tb est légèrement relevé car l'image binarisée dans ce mode avec un seuil bas est moins bruitée et il y a moins de pixels parasites sur les rubans. Cette augmentation du seuil permet de réduire les pertes d'information. Ainsi, pour chaque ruban extrait de l'image, le procédé effectue les sous-étapes suivantes suivantes -. e le ruban est projeté verticalement afin d'obtenir la courbe du profil, e à l'aide du troisième seuil Tb, le procédé repère les colonnes du ruban qui sont considérées comme blanches et celles qui contiennent de l'information (texte ou graphique), e avec les deux premiers seuils, Lbl,,, et le procédé répertorie les zones blanches suffisamment larges qui sont considérées comme des vraies colonnes de séparation entre 2 entités. Ce procédé permet de repérer les colonnes blanches servant de séparation entre les différentes entités de la page, en supposant que la couleur du fond de cette dernière est effectivement blanche. Ces colonnes blanches, supposées être suffisamment larges, sont distinguées des autres espaces blancs comme des espaces entre les mots. Une fois que toute la page a été traitée, une liste de blocs est déterminée. Ces blocs ont tous la même hauteur, égale à celle d'un ruban, et ils indiquent où sont les zones contenant de l'information sur les différents rubans. Ce sont des blocs noirs. Ensuite le procédé recolle les différents morceaux de rubans afin d'obtenir des vraies colonnes : en effet une colonne de texte par exemple est à ce stade segmentée en tranches superposées. Le recollement s'effectue en comparant les différents blocs trouvés. Il s'effectue en plusieurs sous- étapes, qui permettent au procédé de tenir compte de la structure du document. Lorsque le procédé fusionne deux blocs, il fournit un bloc dont les dimensions correspondent aux limites les plus extérieures des deux blocs. La figure 4 illustre la fusion, rattachement ou rassemblement d'un premier bloc 46 et d'un second bloc 47 disjoint qui conduit au bloc 48 de surface rectangulaire minimale contenant les premier et second blocs 46, 47. Sur la figure 4, l'écart entre le contour du bloc fusion 48 et les limites des deux autres blocs n'est pas significatif. Dans une étape préliminaire au recollement, le procédé parcourt la liste préalablement déterminée et élimine les blocs considérés comme petits. Le critère de sélection est la largeur du bloc, qui est inférieure à un seuil c6 prédéterminé. Ce seuil c6 est de préférence égal à une vingtaine de pixels pour la résolution de 150 ppp. Les blocs éliminés correspondent à de l'information parasite comme par exemple des bouts de caractères, notamment venant des gros titres, des tous petits mots, comme par exemple un numéro de page ou un sigle isolé, des morceaux de bordures ou de cadres de tableaux ... Cette étape préliminaire conserve de préférence les blocs les plus larges, elle permet l'élimination de blocs dont la largeur est considérée comme faible, elle permet de réduire les perturbations lors des étapes ultérieures de recollement des blocs noirs des rubans. La liste de blocs à recoller en sortie de cette étape préliminaire est plus restreinte que celle en entrée. L'étape préliminaire est suivie par une étape 1 du recollement. Dans cette étape 1 du recollement, chaque bloc est caractérisé par quatre coordonnées indiquant les limites extérieures , ce sont par exemple les abscisses des cotés gauche Xglllh, et droit X & Oit, et les ordonnées des côtés supérieur Yt,,,t et inférieur Yb,,. Des constantes El, & -,, c3 sont des paramètres prédéfinis. Les valeurs de el et -2 dépendent de préférence de la résolution utilisée au moment de l'acquisition de l'image par le scanner. Pour une résolution de 150 ppp, ci et c2 ont une valeur de quelques pixels, ils sont de préférence égaux à deux pixels. Dans cette étape 1 du recollement, un bloc Q est recollé en dessous d'un bloc P, si les deux blocs P et Q vérifient simultanément les trois conditions suivantes : les deux blocs sont proches dans le sens vertical QY,.. - py#- 1 --, la projection horizontale d'un des deux blocs inclut l'autre Q - p > -E et C, VÎ-I. x8-1. 2 ou QX'. - Px,,, +c, et > -E, " la largeur du bloc le moins large des deux représente un pourcentage -3 de la largeur du bloc le plus large, le pourcentage est par exemple supérieur à 90 %, et de préférence d'environ 98 %, cette condition permet de limiter le recollement à deux blocs dont les valeurs de largeurs sont proches min(Qx,.. P,.. > En sortie de cette étape la liste des blocs est réduite, deux blocs recollés ne forment plus qu'un seul bloc issu de leur fusion. L'étape 1 deu recollement permet de détecter l'angle d'inclinaison de la page lors de la numérisation. Une étape Il du recollement suit l'étape précédente, elle permet de poursuivre le recollement. Elle s'applique sur la liste des blocs obtenue en sortie de l'étape précédente. Contrairement à l'étape précédente, le procédé exploite l'abscisse du centre de gravité de chaque bloc, et non plus seulement ses limites extérieures. Dans cette étape Il du recollement, un bloc Q est rassemblé en dessous d'un bloc P, si les deux blocs P et Q vérifient simultanément les trois conditions suivantes, en utilisant des notations de l'étape 1 du recollement -. Des constantes ul, u3, u4 sont des paramètres prédéfinis, les valeurs de p, et u4 dépendent de préférence de la résolution utilisée au moment de l'acquisition de l'image par le scanner. Pour une résolution de 150 ppp, p, et u4 ont des valeurs de quelques dizaines de pixels, de préférence ui et u4 valent respectivement une vingtaine de pixels et une trentaine de pixels. e les deux blocs sont proches dans le sens vertical Qy.,. - py#,_ 1 'u, 0 l'abscisse du centre de gravité d'un des blocs n'est pas très éloignée de celle de l'autre : QX,#, +0 Xg-F. p Xw#î1 + p vg.#W u4 2 2 la largeur du bloc le moins large des deux représente une fraction p3 de la largeur du bloc le plus large, la valeur de la fraction est par exemple supérieure à deux tiers, et de préférence d'environ trois-quarts, cette condition permet de limiter le recollement à deux blocs dont les valeurs de largeurs sont proches avec des exigences moins strictes que la troisième condition de l'éjape 1 du recollement - Ov 'p1# P, min #0_ A > P3 max(Qx Ces conditions permettent de rassembler des blocs légèrement décalés dans le sens horizontal . Une fois toute la liste des blocs traitée en entier, le procédé vérifie que des blocs entièrement recouverts par d'autres ne restent pas dans la liste. Le cas échéant, ils sont éliminés. S'il y a recouvrement entier, le bloc recouvert est éliminé de la liste et les blocs du rassemblement sont recollés. Si le recouvrement est partiel, le rassemblement est annulé, il n'y a pas de recollement. Ce procédé permet d'éviter d'obtenir après le recollement un gros bloc recouvrant partiellement ou entièrement d'autres blocs. Une étape 111 du recollement rattache ensuite les blocs dit étroits qui correspondent par exemple à une fin de paragraphe - soit B un tel bloc. Sa hauteur correspond exactement à celle d'un ruban et il est moins large que le bloc C juste au-dessus (ou au-dessous). Dans cette étape, le procédé projette le bloc B dans le sens horizontal et analyse le profil ainsi obtenu, l'axe des abscisses du profil est une verticale. Le procédé recherche s'il existe une zone blanche qui fasse de préférence au moins le tiers de la hauteur de B - il considère alors que le bloc B est effectivement étroit dans le sens vertical et il le rassemble au bloc du dessus si la zone blanche est en bas ou bien au bloc du dessus si la zone blanche est en haut. Ce rattachement est confirmé lorsque les deux blocs rattachés respectent les conditions suivantes : e les deux premières conditions sont les conditions 1 et 2 utilisées à l'étape 1 du recollement, mais avec des paramètres i7j et 172 moins stricts que el et & ,, de préférence il, vaut une vingtaine de pixels et 17.? vaut tois ou quatre pixels. 0 la troisième condition précise l'épaisseur du bloc C auquel se rattache le bloc étroit , le bloc C a de préférence au moins deux rubans de haut. Lorsque ces conditions ne sont pas respectées, le procédé annule ce rattachement. Une fois toute la liste des blocs traitée en entier, le procédé vérifie que des blocs entièrement recouverts par d'autres ne restent pas dans la liste. Le cas échéant, ils sont éliminés. S'il y a recouvrement entier à l'issue du rattachement, le bloc recouvert est éliminé de la liste et les blocs du rattachement sont recollés - si le recouvrement est partiel, le rattachement est annulé, il n'y a pas de recollement. Ce procédé permet d'éviter d'obtenir après le recollement un gros bloc recouvrant partiellement ou entièrement d'autres blocs. Ce procédé permet d'éviter un mauvais recollement dans lequel une zone de l'image appartient à deux blocs différents. Un maintien du nombre de blocs est préféré à un mauvais recollement. Un exemple est représenté sur la figure 5. Il comporte trois gros blocs, 51, 52, 53 et trois petits blocs 54, 55 et 56 à éventuellement fusionner avec d'autres. Le bloc 56 se rattache sans problème au bloc 52, il semble n'en faire que le prolongement en formant le bloc 57 en pointillés du bas, Par contre la fusion du bloc 54 avec le bloc 52 conduit au bloc 58 en pointillés du haut, qui englobe le bloc 55, lequel est alors éliminé, et qui recouvre en partie le bloc 53, ce qui est gênant car alors une zone est répertoriée dans deux blocs et de plus, une zone de graphique est ajoutée à du texte. Le procédé ne valide pas la fusion de bloc 54, ou du bloc 55 dans le bloc 51. Dans une étape IV du recollement, le procédé regroupe les blocs dits fins. De tels blocs ne font qu'un seul ruban de haut. Le procédé parcourt toute la liste : si un bloc BI ne fait qu'un ruban de haut, le procédé examine son voisin de droite B2. Si ce voisin ne fait aussi qu'un ruban de haut, il est recollé au bloc BI et le recollement a exactement à la même hauteur que B2. Le procédé recommence ensuite avec le bloc nouvellement formé pour continuer le recollement horizontal, si cela est possible. Sinon le procédé regarde le bloc suivant de la liste. Une étape V du recollement suit, elle est comparable à l'étape 111 du recollement, le procédé y traite également les blocs dits étroits mais cette fois-ci, le procédé ne comporte pas la condition supplémentaire sur l'épaisseur du bloc auquel se rattache le bloc étroit. Le procédé distingue l'étape 111 du recollement de l'étape V, cela permet de rassembler des zones divisées en plusieurs petits blocs ne faisant qu'un ruban de haut lors de l'étape IV intermédiaire avant de poursuivre les tentatives de recollement. Une étape VI du recollement est une option du procédé, elle permet d'enlever les éventuels blocs qui correspondent aux entêtes et pieds de page de l'image d'origine. L'option est de préférence levée par l'utilisateur. Pour la recherche des entêtes, le procédé recherche les blocs les plus hauts placés sur la page. Il prend l'ordonnée y,, .. du côté haut du premier bloc, et recherche, parmi les blocs Qo qui ont la même ordonnée, la hauteur H,,,,,., du bloc le plus haut. Formellement, si 0 représente l'ensemble des blocs, B, le i-ème bloc de n, et H,,,b,,,, la hauteur d'un ruban élémentaire Yo B'Yi.. no k,Ie1squeB,#,, y.eiB, C= ni H,,,,,,, max ky,. - BI'y,^ >BI no Soit alors iio H.#,, / Hmb#, la hauteur en nombre de rubans. Le procédé réalise ensuite les trois tests suivants : 0 si 110 > 2, le procédé ne fait rien, il considère qu'un bloc important monte jusqu'en haut de la page. 0 si Il() = 2, le procédé élimine l'ensemble Ç20 des blocs qui ont la même ordonnée ainsi que ceux de l'ensemble ni des blocs dont le point haut est dans la zone horizontale des blocs de l'ensemble Ç20, n, est défini comme suit -. Yi Yo + H,,,,ban ni #, telsqiteB, Ei Q,B,,y,# el(B,,y, - B,),A#) Hri4ban 0 si 110 le procédé élimine l'ensemble des blocs de ÇIO ainsi que ceux de n2, défini comme suit -, y, min #,.Y,-.,B, r= ÇI \ ÇIO n, #,,teIsqueB, c: ÇI,B,.,,.# Y2et(B,, Y,,. - B,r,# Pour les pieds de page, le mécanisme est sensiblement le même, le procédé examine les blocs les plus bas placés, et travaille avec les ordonnées du côté inférieur des blocs. Le procédé trie alors de préférence la liste des blocs suivant l'ordonnée du côté inférieur des blocs, cela permet de faciliter et d'accélérer les recherches dans la liste. Quelques exemples sont présentés sur les figures 6a, 6b et 6c. Chacune des ces figures représente le haut d'une page, sur lequel les blocs les plus hauts sont schématisés. Dans l'exemple de la figure 6a, un bloc 61 et un bloc 62 ont chacun une hauteur d'un ruban, le procédé élimine les deux blocs. Dans l'exemple de la figure 6b, la hauteur d'un bloc 63 correspond à celle de deux rubans, l'ordonnée de son côté inférieur est égale à celle d'un bloc 64 - le procédé élimine les deux blocs. Dans l'exemple de la figure 6c, la hauteur d'un bloc 65 n'est que d'un ruban, il est à côté d'un bloc 66 dont la hauteur est supérieure à celle de deux rubans le procédé n'élimine aucun bloc, La situation pour les pieds de page est semblable mais dans l'autre sens. Dans des étapes VII et VIII du recollement, le procédé ne traite que les blocs d'un certain type, la détermination du type est préalablement effectuée par la classification décrite plus loin. Dans l'étape VII du recollement, le procédé ne recolle que des blocs graphiques. Dans cette étape, le procédé assure un recollement horizontal (voir étape IV du recollement) restreint aux blocs de type graphique dont la hauteur est limitée, par exemple à 1 ou deux rubans de haut, Le recollement est effectué lorsque les deux blocs ont la même ordonnée pour le côté inférieur. Cette étape est particulièrement adaptée aux gros titres, qui sont habituellement séparés en plusieurs petits blocs. Cette étape VII privilégie la direction horizontale. Dans l'étape VIII du recollement, le procédé ne recolle que des blocs graphiques. Le procédé prend un bloc graphique P, le fusionne avec le bloc graphique 0 le plus proche placé juste au dessous et forme un gros bloc B, puis il examine si un éventuel bloc R est recouvert par B. Si R est un bloc texte alors le procédé annule la fusion. Si R est un bloc graphique, on intègre R à B et on recommence les tests de recouvrements jusqu'à ce que plus aucun bloc ne soit recouvert par B. Si aucun bloc texte n'a été rencontré, la fusion est validée en un recollement. La recherche s'effectue de préférence avec une table contenant la liste des voisins les plus proches de chaque bloc, la liste est remise à jour, de préférence partiellement, après chaque validation, elle permet de tenir compte de la suppression de blocs lors du recollement. Le procédé est itéré avec le nouveau bloc B, puis avec tous les blocs graphiques suivants non encore traités. Cette étape VIII du recollement permet de regrouper tous les blocs qui sont directement voisins, pour ne former qu'un seul gros bloc graphique. Cette étape ne recolle pas de blocs de type texte ce qui permet d'éviter le regroupement de deux colonnes côte à côte de texte, qui pénaliserait les performances de l'étape ultérieure de reconnaissance de caractères. Cette étape VIII de recollement privilégie la direction verticale. Dans une étape IX du recollement, le procédé examine le nombre de blocs restants et il rassemble tous les blocs en un seul bloc graphique si leur nombre est supérieur à un nombre de blocs maximal, Le nombre maximal est prédéterminé, il est de préférence choisit en fonction de la taille de l'écran de visualisation et des capacités visuelles de l'utilisateur du procédé d'aide à la lecture : il permet de limiter le nombre de blocs présentés à l'utilisateur. Le nombre maximal vaut par exemple entre quinze et vingt cinq ; de préférence vingt. Jusqu'à la fin de l'étape IX du recollement, la liste des blocs est ordonnée par le procédé suivant les coordonnées du coin supérieur gauche - le classement suit l'ordre classique de lecture, de gauche à droite et de haut en bas. Dans une étape X du recollement le procédé ordonne à nouveau la liste des blocs, il parcourt toute la liste pour former un arbre représentant la structure de la page. Cette structure correspond à l'ordre de lecture par le procédé des blocs de la page. Le procédé parcourt tous les blocs dans l'ordre de la liste précédente, il insère dans l'arbre chaque bloc B de numéro n dans l'ancien classement de la façon suivante : Le procédé teste si le bloc B est en dessous d'un autre bloc C. Les critères pour que B soit considéré être en dessous sont : le côté supérieur de B est au-dessous du côté inférieur de C, en projetant les deux blocs suivant le sens vertical, la partie commune entre la projection de B et celle de C représente au moins un pourcentage significatif de la largeur de C. Ce pourcentage est d'au moins 314, par exemple 80 %. Cela permet de s'assurer que la majorité de B est au dessous de C. Si ces critères sont satisfaits, le procédé forme une branche entre ces deux blocs La liste des blocs est classée avant la création de l'arbre suivant le coin supérieur gauche, le procédé insère ensuite les blocs les uns après les autres en respectant cet ordre. Lors de l'insertion, le procédé privilégie les blocs les plus récemment insérés dans l'arbre. Par exemple, si le procédé insère le bloc B ayant pour numéro n, il tente de le placer sous le bloc 11-1, si ce n'est pas possible il tente sous le bloc n-2, puis sous le bloc n-3, _ jusqu'au bloc 0, bloc fictif représentant la racine. En parcourant les blocs dans l'ordre de la liste précédente, les blocs 1,.... n-1 sont déjà dans l'arbre. Le procédé permet ainsi l'insertion d'un bloc B sous une colonne composée par exemple de trois blocs empilés de haut en bas CI, C.?, et C_?, en le rattachant au bloc le plus bas C3. La figure Ta représente un exemple d'une découpe en blocs d'une page, leur numérotation de 71 à 77 ne reflète pas la structure logique de la page. La figure 7.b représente un arbre à l'envers associé à la découpe de la figure Ta dans lequel chaque branche Bl à B3 correspond à une tête de colonne, une branche présente des feuilles lorsqu'en descendant la page une colonne se divise. L'ordre des feuilles 74 à 77 d'une branche B2 correspond à l'ordre de lecture dans la branche. Cette structure permet au procédé de lire par exemple un article sur deux colonnes en lisant intégralement la première colonne avant de commencer la deuxième. Le procédé se poursuit par une étape XI du recollement. Dans cette étape les blocs sont tous agrandis- Pour les blocs graphiques et les côtés gauche et droits des blocs textes, ces agrandissements sont arbitraires, fixé à quelques pixels. Pour les côtés supérieur et inférieur des blocs textes, l'agrandissement est un peu plus élaboré. Le procédé recherche si des mots n'ont pas malencontreusement été coupés en deux dans le sens horizontal, et si oui il agrandit jusqu'à inclure complètement le haut (ou le bas) des mots coupés. Cette recherche se fait en projetant horizontalement la zone autour du changement de bloc pour savoir précisément où se trouve une ligne blanche séparant correctement deux lignes de texte. Cette étape permet de limiter les problèmes aux bords des blocs. Dans la sous-étape de classification, le procédé estime le pourcentage r de pixels noirs N,, par rapport au nombre de pixel total, ce dernier étant égal à la somme des nombres de pixels noirs et de pixels blancs ATbt,,,, Le pourcentage r vérifie la relation suivante r N.r, - Almanc + Nnair Ce rapport r est comparé par le procédé à un seuil ro prédéterminé. Le procédé effectue le test suivant : e si r > r., le bloc est considéré comme étant une zone graphique. si r:g r. le bloc est considéré comme étant une zone texte. e test permet au procédé de différencier une zone graphique d'une zone de texte. La valeur du seuil prédéterminé est de préférence d'environ 25 à 30 %. Une telle valeur permet au procédé de classifier les gros titres en blocs graphiques, et non en blocs de texte, ce qui lui permet d'éviter d'effectuer une reconnaissance de caractères sur des polices de grosse taille, supérieure par exemple à 14, laquelle n'est pas toujours aussi bonne que pour des textes en polices de taille plus petite. Avec la découpe en blocs, cette classification présente l'avantage de séparer les zones de texte des zones graphiques et de limiter les blocs de texte à des zones sur lesquelles la reconnaissance de caractère est performante. L'étape suivante de rebinarisation consiste à extraire une image binaire pour chaque bloc obtenu par la décou pe-cl a ssifi cation. Afin d'obtenir une meilleure image binaire pour effectuer la reconnaissance de caractères, le procédé n'utilise pas directement l'image binaire générée pour la découpe en blocs. En effet, le seuil y a volontairement été choisi très bas pour limiter au maximum l'influence du bruit, notamment lorsque le mode spécial livre est activé. L'image est alors généralement parfois trop dégradée pour donner de bons résultats après la reconnaissance de caractères. Pour résoudre ce problème, le procédé de l'invention effectue, après la découpe en blocs, une binarisation par zones de l'image numérisée d'origine en niveaux de gris. Cette binarisation n'est pas globale sur l'image, elle s'effectue de façon indépendante sur chaque bloc. Seuls les blocs textes sont concernés par cette procédure. La binarisation, dite rebinarisation, se fait par seuillage, comme dans le cas de l'image entière. Le calcul du seuil se fait sur chaque bloc de texte de la même façon que pour la recherche automatique du seuil dans le cas normal (Cest-à-dire lorsque le mode spécial livre est désactivé) pour l'image entière. Si le mode spécial livre a été demandé, le procédé élimine les zones sombres dues à la courbure. Dans ce cas, une fois que les blocs texte ont été rebinarisés, le procédé recherche sur toute l'image binaire, blocs texte et graphique, les zones qui ont été entièrement converties en noir, à cause de cette courbure. Pour chaque bloc texte ou graphique, le procédé projette verticalement l'ensemble du bloc, calcule un histogramme de projection, comme lors de la recherche des blocs rubans pendant la découpe en blocs, et il procède à une détection d'un domaine entièrement noir de cet histogramme. Si le procédé détecte une telle zone, il isole la partie correspondante du bloc et applique un algorithme de filtrage spécial (décrit ci-dessous) sur cette zone. Après ce filtrage de la zone détectée, le procédé remplace la zone perturbée, à cause de la courbure de l'image dans l'image binaire du bloc, par le résultat du filtrage spécial, De préférence, la zone où le procédé applique le filtre est agrandie. Cela permet de limiter les effets de bords. Dans l'étape de filtrage spécial, ou filtrage adapté pour la correction de la courbure d'un livre, le procédé extrait une image binaire d'une image scannée en niveaux de gris. Le noir correspond au niveau de gris minimal, le blanc correspond au niveau maximal. Le procédé suppose que le texte est plus noir que le fond. Cela permet de limiter les traitements et le temps d'exécution du procédé. En option, le procédé détecte les zones en inverse vidéo et il les réinverse. La première sous-étape du filtrage spécial consiste à appliquer un filtre de lissage surf, l'image numérisée d'origine en niveaux de gris qui est obtenue en sortie de la première étape principale du procédé. Le filtre est un simple filtre de lissage moyennant, avec un masque de dimension W par exemple égal à 5 pixels. Si f est l'image numérisée d'origine, l'image filtrée g est calculée comme suit pour chaque point de l'image dont les coordonnées sont par exemple une abscisse x et une ordonnée y 9(x, y) = 1 1: lf(X+i,y+j) 52 En utilisant une convolution, g *h avec L'effet de ce filtrage est de ne garder que les principales variations de niveaux de gris et d'éliminer du bruit existant sur la page, par exemple si la couleur du fond du papier n'est pas uniforme, si le verso de la page apparaît par transparence, ou d'éliminer du bruit ajouté lors de la numérisation par le scanner, par exemple si le papier n'est pas parfaitement plat, si la vitre n'est pas propre. L'algorithme principal de ce procédé compare la valeur en niveaux de gris du pixel en cours de traitement avec les pixels voisins et détermine si ce pixel est entouré de zones noires. La comparaison ne se fait pas directement avec les valeurs des pixels voisins de l'image filtrée g, mais avec des valeurs moyennes calculées sur un petit voisinage autour de chaque pixel de l'image filtrée g. Cette sous-étape permet de limiter l'influence du bruit introduit par exemple lors de la numérisation et correspondant à l'écart de niveau de gris sur des pixels voisins qui devraient avoir un niveau identique. Dans une seconde sous-étape du filtrage spécial, le procédé calcule les moyennes sur un voisinage local pour chaque point de l'image filtrée g, ce qui équivaut à appliquer un filtre de lissage moyennant avec un masque de taille V par exemple égale à 3. Le niveau de gris moyen d'un point de coordonnées x et y en abscisse et en ordonnée est estimé par la valeur de la fonction M en ce point (X,Y) où - Ensuite dans une troisième sous-étape du filtrage spécial, le procédé recherche pour chaque pixel P de l'image filtrée g, un nombre minimal N,de points voisins dont la valeur moyenne sur un voisinage local, estimée par la fonction M, est supérieure d'au moins un seuil T au niveau de gris du pixel P en question. Si ce nombre minimal N, est atteint, le procédé binarise ce point en noir, sinon le point est binarisé en blanc. Les points voisins sont cherchés de préférence sur un carré centré sur P et de demi-côté de taille V. Un exemple est représenté sur la figure 8. De préférence, les points voisins sont au nombre N, égal à quatre. Le procédé effectue de préférence la recherche dans deux directions privilégiées adjacentes passant par le point P. Le procédé définit par exemple huit points voisins autour du point P de coordonnées (x,y), nommés Pi, i allant de 1 à 8, de coordonnées respectives (x,,y, , placés par exemple aux quatre coins du carré centré sur P et de demi côté de taille V et au milieu de chacun des côtés du carré. Les points sont numérotés successivement sur le périmètre du carré. Le procédé définit 4 directions privilégiées joignant des points deux par deux, formant par exemple des angles multiples de 45 degrés : P# P,, P, P2 P, et P3 P7 . Puis le procédé effectue une batterie de 8 tests, chaque test, i allant de 1 à 8, compare la valeur moyenne sur un voisinage autour du point voisin Pi avec la valeur de P Le résultat du test du point voisin Pi est par exemple égal à la variable booléenne Lffl suivante : Lffl [M(x,,y,) - g(x,y) > TI Le procédé combine ensuite les tests Lffl, il convertit le point P en un point noir sur l'image binaire finale si les tests Lffl sont vrais pour 4 points (au moins) décrivant simultanément une direction horizontale ou verticale (premier crochet ci-dessous), et une direction en diagonale (deuxième crochet), c'est-à-dire si l'expression suivante est vraie : I(L(O)I\L(4 V (L(2)1\L(6 A (L (1) /\ L (5 V (L (3) /\ L (7 0 ù représente l'opérateur booléen et et V représente l'opérateur ou . En élargissant la taille V du masque et donc en élargissant en même temps l'écartement entre le point en cours de traitement et les voisins, la taille des caractères prise en compte par le procédé est augmentée. Prendre une taille plus grande, 5 au lieu de 3 par exemple, favorise les caractères dont la police est de taille plus grande, par exemple de taille 15 ou plus. Dans la mesure où l'essentiel du texte est presque toujours dans des tailles de polices allant de 8 à 12, il est préférable de paramétrer le procédé avec un masque de taille V égale à 3. En appliquant ce traitement sur toute la page, le procédé atteint des temps d'exécution prohibitifs pour l'utilisateur qui peuvent dépasser 30 secondes avec un ordinateur récent du commerce. En appelant ni la hauteur et n la largeur de l'image, dans la version actuelle, le calcul de la première convolution demande, en ne tenant pas compte des problèmes aux bords de l'image, 26-nin appels mémoire, 25-nin additions et nin divisions. Pour la deuxième convolution, il convient de remplacer 26 par 10, car le masque est plus petit. Pour la boucle principale, le calcul de M nécessite nin appels mémoire, mii additions et nin comparaisons. Enfin, les tests finaux nécessitent dans le pire des cas 7-nin opérations logiques élémentaires (OR et AND). De préférence, les deux convolutions sont calculées par le procédé en tenant compte du fait que la somme calculée au point Por,y) pour estimer la moyenne est en partie commune avec celle calculée au point précédentP(x - 1,y), le procédé calcule l'une par rapport à l'autre, ce qui limite le nombre d'additions et d'appels mémoire et conduit à un calcul plus efficace et à une amélioration du temps de traitement. Le filtrage spécial n'est pas appliqué sur la page entière mais seulement sur les zones effectivement impactées par la courbure du support. où il est réellement indispensable. De préférence, il n'est appliqué que sur les zones de texte. Sur les zones texte, le filtrage spécial érode les caractères mais il permet de récupérer de l'information utile, et notamment l'application d'un OCR sur les caractères obtenus après filtrage fournit du texte exploitable par l'utilisateur. Sur des zones non perturbées par la courbure du support, l'absence de filtrage spécial permet d'éviter toute perte d'information. Le traitement de filtrage spécial permet d'extraire une image binaire d'une image scannée en niveaux de gris. Il est adapté pour éliminer dans du texte les zones sombres dues à la courbure du livre lorsqu'on scanne un livre, ou de manière plus générale, un document dont la page n'était pas parfaitement en contact avec la surface du scanner au moment de l'acquisition. REVENDICATIONS 1. Procédé d'assistance à la lecture pour malvoyant utilisant un support de visualisation et un capteur d'image haute résolution, le procédé est caractérisé en ce qu'il consiste à acquérir une image numérisée haute résolution d'une image réelle située sur un support, former une image synthétique correspondant à un découpage de l'image en blocs de texte ettou graphique, afficher sur le support de visualisation l'image numérisée et/ou l'image synthétique, réaliser un traitement de l'image numérisée corrigeant les éventuels défauts de l'image et les éventuels défauts dus à la forme du support de l'image réelle, en cas de sélection par un utilisateur d'un bloc de texte de l'image synthétique: augmenter la taille des caractères du bloc de texte sélectionné, et/ou gérer le retour à la ligne et le défilement automatique du texte, en cas de sélection par un utilisateur d'un bloc graphique agrandir la zone graphique du bloc sélectionné et/ou permettre à l'utilisateur de se déplacer dans la zone graphique du bloc sélectionné. 2. Procédé selon la revendication 1, caractérisé en ce qu'en cas de sélection d'un bloc de texte, celui-ci est transmis à une synthèse vocale. 3. Procédé selon la revendication 1, caractérisé en ce que le procédé de réalisation de l'image synthétique consiste à former une première image binaire par seuillage de l'image numérisée, à déterminer des blocs rubans, à recoller et classifier les blocs en blocs de texte et/ou blocs graphiques. 4. Procédé selon la revendication 1, caractérisé en ce que le traitement de l'image numérisée consiste à former une seconde image binaire par seuillage indépendant de l'image numérisée sur chaque bloc de texte. 5. Procédé selon la revendication 4, caractérisé en ce que le traitement de l'image numérisée consiste à effectuer un filtrage spécial sur des zones de la seconde image binaire. 6. Procédé selon la revendication 5, caractérisé en ce que le traitement de l'image numérisée consiste à effectuer un filtrage spécial sur les blocs de texte de la seconde image binaire. 7. Procédé selon l'une des revendications 3 et 4, caractérisé en ce que le seuillage est automatique. 8. Procédé selon la revendication 1, caractérisé en ce qu'il applique un OCR sur l'image binaire d'une zone de texte. 9. Procédé selon l'une des revendications précédentes, caractérisé en ce que le traitement de correction des événtuels défauts dus à la forme du support de l'image réelle est activé par l'utilisateur.