Brevet FR2588399A1 — publié le 19870410

La présente invention concerne un procédé de conversion de motifs délimités tels qu'une forme de caractère, ce procédé étant applicable à un appareil de traitement de motifs graphiques traitant des motifs sous forme de données vectorielles. Un procédé pour convertir un motif de caractère sous forme de données vectorielles est excellent lorsque les motifs peuvent être convertis avec une forte compressibilité de données et avec un rapport d'agrandissement ou de réduction souhaité pour fournir des motifs avec une haute fidélité. Avec ce procédé, un format de données vectorielles représentant les coordonnées du contour d'un motif de caractère est utilisé, par exemple une succession de coordonnées de points successifs du contour, une succession de valeurs de déplacement à partir d'une coordonnée de point de départ, ou analogue. Un agrandissement ou une réduction classique d'un motif, présente toutefois un problème: par exemple, dans le cas o l'on veut agrandir le caractère "H" de la figure 2A, celui-ci est simplement agrandi en une figure similaire comme cela est représenté en figure 2B ou 2C. Indépendamment du problème ci-dessus, une demande considérable se présente actuellement pour l'édition de motifs graphiques sous diverses formes. Par exemple, on souhaite obtenir non seulement une simple fonction classique d'agrandissement ou de réduction, mais également un effet visuel tel qu'une synthèse d'un ou plusieurs contours produits en élargissant ou en rétrécissant un contour original sous forme de données vectorielles pour obtenir ce que l'on appelle une silhouette de caractère. Toutefois, un tel traitement de données graphiques ne peut pas être effectué en utilisant un ordinateur, ou bien il n'est pas possible d'obtenir un équilibre visuel des motifs. En conséquence, pour obtenir un tel traitement on s'est basé sur des processus complexes et laborieux incluant des processus photographiques. La présente invention a été réalisée dans le but de résoudre les problèmes ci-dessus de l'art antérieur et un objet de la présente invention est de prévoir un procédé pour convertir un motif graphique tel qu'un motif de caractère et un système de traitement pour cela, dans lesquels l'élargissement ou le rétrécisse- ment d'un motif graphique peut être effectué tout en maintenant un équilibre visuel de celui-ci, par l'intermédiaire d'une ou plu- sieurs conversions du motif si on le souhaite, ou bien par addition du motif converti à un motif original si on le souhaite. Un autre objet de la présente invention est de prévoir un procédé pour convertir un motif graphique en utilisant un appareil de traitement de motifs graphiques qui traite le contour d'un motif sous forme de données vectorielles, dans lequel le traitement d'élargissement ou de rétrécissement du contour peut être effectué tout en maintenant l'équilibre visuel du motif, en calculant des lignes parallèles pour former le contour des segments de lignes du motif et déterminer les coordonnées d'inter- section de ces lignes en utilisant les données vectorielles du motif. Ces objets, caractéristiques et avantages ainsi que d'autres de la présente invention seront exposés plus en détail dans la description suivante de mode de réalisation particulier faite en relation avec les figures jointes sur lesquelles: 1 a figure 1 est un schéma sous forme de blocs représen- tant un mode de réalisation du système de traitement de motifs graphiques selon la présente invention; les figures 2A à 2C sont des vues représentant des exemples d'agrandissement et de réduction d'un caractère selon l'art antérieur; la figure 3 représente un exemple de données vectoriel- les d'un contour de caractère graphique selon la présente invention; la figure 4 est un graphique illustrant une relation entre des données vectorielles et des segments de ligne parallèles au contour; la figure 5 représente la coordonnée d'un nouveau contour produit pendant le traitement d'élargissement; la figure 6 est un organigramme du processus de commande d'élargissement; et la figure 7 est un organigramme représentant le système copmplet de traitement de motifs graphiques. - Un mode de réalisation préféré de la présente invention va être décrit en relation avec les dessins joints. Il est clair que l'objet, les effets et la constitution de la présente invention peuvent être réalisés par un système constitué de plusieurs dispositifs ou par un dispositif unique. La figure 1 est un schéma sous forme de blocs représen- tant un mode de réalisation d'un système de traitement de motifs graphiques selon la présente invention. Sur la figure, la référence numérique 1 désigne un module de traitement vectoriel, 2 un module de mémoire de données vectorielles, 3 un module de générateur de motifs, et 4 un module de mémorisation temporaire de motifs. Les données vectorielles des données de caractères sont mémorisées dans le module de mémoire de données vectorielles 2. Dans ce mode de réalisation, bien que la description ait trait à des données de caractères, la présente invention n'est pas limitée à des données de caractères mais peut également s'appliquer à d'autres données. Par suite de la réception d'une commande pour initialiser le traitement à partir d'un signal externe, le module de traitement vectoriel 1 lit les données nécessaires au traitement à partir du module de mémoire de données vectorielles 2 et traite les données. Les données vectorielles traitées sont alors appliquées au module générateur de motifs 3. Le module de traitement vectoriel 1 comprend une unité centrale (CPU) non représentée, une mémoire morte (ROM) initialisant des programmes de commande représentés en figures6 et 7 et ainsi de suite. Le module générateur de motifs 3 fournit les données vectorielles des données numériques selon un motif vectoriel réel, et les mémorise dans le module de mémoire temporaire de motifs 4. Le motif mémorisé est lu et fourni en tant que sortie de données traitées. Bien que cela ne soit pas représenté en figure 1, il est clair qu'un module de commande est prévu qui comprend un affichage, un dispositif de pointage, ou diverses touches, respec- tivement, pour initialiser l'exécution d'un tel traitement d'élargissement. Le contour d'un motif de caractère est représenté en interpolant une succession de points de données vectorielles (coordonnées) indiqués par des cercles avec des segments de lignes droites ou courbes, comme cela est représenté en figure 3. La direction de chacun des vecteurs de données entre des coordonnées adjacentes est déterminée de sorte que le vecteur voit toujours l'intérieur du caractère (ou l'intérieur du contour) à sa droite. La description va maintenant concerner le cas o le motif de données vectorielles "P" représenté en figure 3 est élargi (ou rétréci). Par souci de simplicité de description, les vecteurs représentés par des flèches en figure 3 sont appelés lignes de contour. Le procédé d'élargissement de la ligne de contour de la quantité d et d'obtention d'une nouvelle ligne de contour représentée par les traits en pointillés en figure 4 va maintenant être décrit. Dans le processus d'élargissement représenté en figure 4, chacun des vecteurs (ligne de contour) est déplacé parallèlement à chaque vecteur concerné de la même distance d. En effectuant cela, il est possible d'obtenir un motif de caractère "P" déplacé de d tout en maintenant l'équilibre visuel. La figure 5 est un schéma destiné à expliquer le traitement d'élargissement d'un motif "P" comme dans la figure 4. La figure 6 est un organigramme du traitement d'élargissement dont le programme est mémorisé dans une ROM d'un module de commande non représenté, et les lignes calculées et les intersections de-motifs sont mémorisées dans une mémoire. Comme le représente la figure 5, des vecteurs V0 et V1 représentent deux vecteurs adjacents optionnels parmi une pluralité de vecteurs constituant le motif de contour représenté en figures 3 et 4. Les deux lignes droites de la partie du contour sont représentées par W0 et Wi. La ligne W0 passe par deux points (x0, yO) et (x1, y1), alors que la ligne W1 passe par deux points (x1, y1) et (x2, y2. L'intersection des lignes W0 et W1 est (x1, y1). Le traitement d'élargissement est réalisé en utilisant les données ci-dessus. A l'étape S1 représentée en figure 6, d'abord, après l'introduction de la quantité d de déplacement parallèle (élargissement ou rétrécissement), les données vectorielles sont décodées (conversion de coordonnées). Alors, à l'étape S3, les lignes parallèles W' et W' sont obtenues espacées de d des 0 1 lignes W0 et W1, respectivement. A l'étape S4, l'intersection entre les lignes W' et W' est obtenue. Ce processus est répété m 0 1 fois pour une boucle vectorielle (surface fermée) constituée de m vecteurs (étapes S3, S4, S6, et S5). Dans le cas de la figure 3, m = 10 pour le contour externe et m = 8 pour le contour interne. A l'étape S7, on détermine si tous les contours ont été traités ou non, c'est-à-dire dans le cas de la figure 3, par exemple, si les étapes S3 à S6 ont été exécutées pour le contour externe (m = 10) et pour le contour interne (m = 8). Si cela est achevé, les données de décodage de vecteurs de tous les contours pour le motif "P"' sont codées vectoriellement pour fournir les données vectorielles à l'étape S8. Ci-après, le traitement aux étapes S5 et S6 va être exposé plus en détail en relation avec la figure 5. Comme on le comprend à partir de la figure 5, la ligne W0 peut s'exprimer par: Y - YO = y0/Ax0 (x - xO) o Ay0 et Ax0 représentent des incréments de ligne WO, respective- ment pour les coordonnées x et y. Ay1 et Ax1 indiqués en figure 5 représentent la même chose. La ligne W'0 parallèle à la ligne WO s'exprime par: W': Y - (Yo + eo0) = Ayo/AXo. (x - xO)...(2) o e0 représente la quantité de déplacement de la ligne W0 à la ligne W'0 dans la direction Y, e0 étant exprimé par: i à2 2 e0 = d /Ax0 Ay02 A 0... (3) En combinant les équations (3) et (2), la ligne W'0 à obtenir est résolue sur la base des coordonnées ci-dessus, (x0o, yO) et (X1, y1), et de la quantité de déplacement parallèle d. Les équations pour résoudre la ligne W' concernant le vecteur suivant V1, suivant le vecteur V0 et parallèle à la ligne W1, sont données par: y (Y1 + e1) = y1/x1 ' (x - x0)... (4) / 2 2 e1 = d /Ax1 + Y/Ax1...(5) Une nouvelle intersection exprimée (x'1, y'1) produite quand on déplace les vecteurs V0 et V1 de la distance d peut être obtenue à partir d'une solution (x, y) des deux équations (2) et (4). Par souci de simplification, les pentes des lignes sont représentées par: a0 = yO/x a1 = AY1/Ax1 alors, x' = [(a0.x0 - a1.x1) - {(YO+e0) - (y1+ e1)}]/(a0-a1).(7) y'1 = a0 (x'1 - x0) + (y0 + e0)... (8) En utilisant des valeurs connues x0, y0, x1, y1, eo, e1, ao, et a1, l'intersection (x'1, y'1) peut être obtenue à partir des équations (7) et (8). Si un motif comprend m vecteurs, le calcul ci-dessus est répété m fois pour fournir une nouvelle ligne de contour déplacée de la même distance d d'une ligne de contour initiale. Si le motif comprend n lignes de contours, les m calculs ci-dessus sont répétés n fois (dans le cas de la figure 3, n = 2). Si Ax0 = 0 ou Ax1 = O dans l'équation (6) ou si a0 = a1 dans l'équation (7), le calcul ci-dessus est remplacé par un traitement exceptionnel. La quantité de déplacement parallèle d peut prendre une valeur d'élargissement ou une valeur de rétrécissement. Si d est positif, la quantité de déplacement e0 de l'équation (3) est telle que le contour de chaque donnée vectorielle est élargi, tandis que si d est négatif le contour est rétréci. La figure 7 est un organigramme représentant le système complet de traitement de motifs graphiques, qui est exécuté par l'unité de commande non représentée. Dans l'organigramme, après qu'un motif délimité soit formé et affiché à l'étape S10, un traitement d'édition (étape Sll), tel qu'une conversion de rotation ou d'inclinaison incluant, par exemple, le traitement d'élargissement de la figure 6, est exécuté. Comme on le notera à partir de la description précédente de la présente invention, un équilibre visuel est assuré pour les motifs soumis à une conversion de rotation, à une conversion d'inclinaison ou à touteautre conversion avant la conversion d'un motif selon la présente invention. En outre, un effet d'ombre peut être obtenu de sorte que, après avoir changé l'intérieur du motif soumis au traitement d'élargissement à un motif de points, le motif de points est déplacé d'une certaine distance pour le synthétiser en un autre motif de points obtenu de façon similaire. Les nouvelles données vectorielles présentant un équilibre visuel correct peuvent facilement être produites en convertissant les données de vecteurs initiales par un processus d'élargissement ou de rétrécissement. La présente invention n'est pas limitée à un caractère graphique, mais peut s'appliquer à un motif général de données vectorielles. La présente invention présente plusieurs applica- tions, par exemple, un système de traitement d'image capable de traiter des motifs, de traiter des formes, et analogue. Comme cela a été décrit en détail jusqu'à présent, le procédé de conversion de motifs graphiques utilisé avec un appareil de traitement de motifs traitant la ligne de contour d'un motif sous forme de données vectorielles a permis de calculer, selon les processus prédéterminés,des lignes parallèles à des segments de lignes de contours des données vectorielles et leurs coordonnées d'intersection, et l'élargissement ou le rétrécisse- ment parallèle du motif tout en maintenant l'équilibre visuel. REVENDICATIONS - 1. Procédé de conversion d'un motif incluant un moyen de mémoire (2) pour mémoriser des données représentatives du contour d'un motif, un moyen pour lire les données en provenance dudit moyen de mémoire, et un moyen (1) pour traiter les données lues à partir dudit moyen et représentatif du contour du motif, caractérisé en ce que le traitement par le moyen de traitement comprend les étapes suivantes: déplacer de façon parallèle chacun d'une pluralité de segments constituant le contour du motif de la même distance d; résoudre une intersection entre les segments dépla- cés; et répéter ces étapes pour tout le contour dudit motif. 2. Procédé de conversion d'un motif selon-la revendica- tion 1, caractérisé en ce que le moyen de mémoire mémorise le contour du motif sous forme d'une succession de coordonnées. 3. Procédé de conversion d'un motif selon la revendication 2, caractérisé en ce que ledit segment est une ligne parmi une pluralité de lignes reliant successivement chacune des coordonnées. 4. Système de traitement d'image comprenant: un moyen de mémoire (2) pour mémoriser une succession de données de coordonnées représentatives du contour d'un motif; un moyen de génération d'un signal d'instruction pour commander un traitement d'édition d'un motif mémorisé dans le moyen de mémoire; un moyen opérationnel pour fournir, en réponse au signal d'instruction produit par le moyen de génération, des lignes droites qui sont déplacées de façon de parallèle d'une distance constante d par rapport aux lignes droites correspondan- tes passant par deux coordonnées adjacentes mémorisées dans le moyen de mémoire; et des moyens de calcul (3) pour fournir une intersection entre deux lignes droites adjacentes obtenues par déplacement parallèle dudit moyen opérationnel; caractérisé en ce que le moyen opérationnel fournit lesdites lignes droites de sorte qu'un motif initial est élargi ou rétréci selon que d est positif ou négatif. 5. Système de traitement d'image selon la revendica- tion 4, caractérisé en ce que le moyen de génération est un module de calcul pour provoquer un élargissement ou un rétrécissement d'un motif initial. 6. Système de traitement d'image selon la revendica- tion 4, caractérisé en ce que le moyen opérationnel fournit la quantité, entermes de coordonnée y, de déplacement parallèle de ladite ligne droite, à partir d'une succession de données de coordonnées. 7. Système de traitement d'image comprenant: un moyen de mémoire pour mémoriser une succession de données decoordonnées représentatives du contour d'uneimage; un premier moyen d'édition pour effectuer un traitement tel qu'une conversion de rotation ou une conversion d'inclinaison de l'image mémorisée dans le moyen de mémoire; un moyen d'instruction pour ordonner de réaliser un traitement d'élargissement ou un traitement de rétrécissement de l'image éditée par le premier moyen d'édition; un second moyen d'édition pour effectuer en réponse à une instruction dudit moyen d'instruction un traitement d'élargis- sement ou un traitement de rétrécissement de l'image éditée par ledit premier moyen d'édition; caractérisé en ce que le second moyen d'édition comprend un premier moyen pour fournir une ligne droite qui est obtenue par déplacement parallèle d'une certaine distance de chaque ligne droite passant par deux coordonnées adjacentes représentatives de l'image et un second moyen pour fournir des intersections entre une pluralité de lignes droites fournies par le premier moyen; un moyen de sortie pour fournir une image après l'avoir soumise à un traitement d'élargissement ou un traitement de rétrécissement, cette image étant représentée par les intersections fournies par le second moyen et les lignes droites passant par lesdites intersections obtenues par ledit premier moyen. 8. Système de traitement d'image selon la revendica- tion 7, caractérisé en ce que le moyen de sortie comprend un moyen d'interpolation pour interpoler des lignes droites entre lesdites intersections. 9. Système de traitement d'image selon la revendica- tion 7, caractérisé en ce que le premier moyen réalise un traitement d'élargissement ou un traitement de rétrécissement d'une image initiale selon que ladite distance constante est positive ou négative. 10. Système de traitement d'image selon la revendica- tion 7, caractérisé en ce que le second moyen d'édition peut réaliser un traitement d'élargissement uniforme ou un traitement de rétrécissement uniforme d'une image initiale, indépendamment du fait que le premier moyen d'édition réalise une édition.