FR2737324A1 - Uniform alteration of scale of digital image - inserts interpolated data when enlarging image only when there is space to insert it smoothly into image data - Google Patents

Uniform alteration of scale of digital image - inserts interpolated data when enlarging image only when there is space to insert it smoothly into image data Download PDF

Info

Publication number
FR2737324A1
FR2737324A1 FR9509086A FR9509086A FR2737324A1 FR 2737324 A1 FR2737324 A1 FR 2737324A1 FR 9509086 A FR9509086 A FR 9509086A FR 9509086 A FR9509086 A FR 9509086A FR 2737324 A1 FR2737324 A1 FR 2737324A1
Authority
FR
France
Prior art keywords
data
sum
image data
original
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9509086A
Other languages
French (fr)
Other versions
FR2737324B1 (en
Inventor
Rong Fuh Shyu
Feng Ling Chang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Winbond Electronics Corp
Original Assignee
Winbond Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Winbond Electronics Corp filed Critical Winbond Electronics Corp
Priority to FR9509086A priority Critical patent/FR2737324B1/en
Priority to FR9609098A priority patent/FR2737325A1/en
Publication of FR2737324A1 publication Critical patent/FR2737324A1/en
Application granted granted Critical
Publication of FR2737324B1 publication Critical patent/FR2737324B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

The method of processing a digital image alters its scale commences with a preliminary linear interpolation operation (5). The linear interpolation is controlled to perform an interpolation between the nth and the (n+1)th items of image data to produce a residual interpolated image data value that is inserted between the original data points when certain conditions are met. The conditions are that the difference between the number of data points in the required image (M) and in the original image (N) leaves a remainder when divided by (N-1), and the data point n is the smallest number that satisfies the condition (n+1) * S is greater than or equal to (s) * N, where s varies between one and S.

Description

PROCEDE ET DISPOSITIF POUR CHANGER L'ECHELLE D'UNE IMAGE
NUMERIQUE DE FAÇON UNIFORME
L'invention concerne un procédé et un dispositif de traitement d'image et plus particulièrement un procédé et un dispositif permettant de changer l'échelle d'une image numérique de façon uniforme.
METHOD AND DEVICE FOR CHANGING THE SCALE OF AN IMAGE
DIGITAL UNIFORM
The invention relates to an image processing method and device and more particularly to a method and a device for uniformly changing the scale of a digital image.

L'aptitude de combiner des images numériques est essentielle dans les applications multimédia à calculateur. The ability to combine digital images is essential in multimedia computer applications.

Habituellement, on prétraite une image numérique avant qu'elle puisse être combinée avec une autre image numérique.Usually, a digital image is preprocessed before it can be combined with another digital image.

On accomplit habituellement le prétraitement en augmentant la taille de l'image numérique (ce que l'on désignera par la suite par agrandissement), ou en réduisant la taille de l'image numérique (ce que l'on désignera par la suite par réduction), en découpant une partie sélectionnée d'image numérique et en la décalant vers un autre emplacement, etc.The preprocessing is usually accomplished by increasing the size of the digital image (which will be referred to hereinafter by enlargement), or by reducing the size of the digital image (which will be designated hereinafter by reduction ), by cutting out a selected part of the digital image and shifting it to another location, etc.

L'agrandissement et la réduction des images numériques sont habituellement accomplis à l'aide d'un ordinateur programmé à cet effet. L'agrandissement est effectué par interpolation linéaire sur chaque couple de lignes de balayage de l'image numérique pour obtenir au moins une ligne de balayage interpolée qui est insérée entre les deux lignes et en effectuant une interpolation linéaire sur chaque couple de données de pixel dans chaque ligne de balayage, de façon à obtenir au moins une donnée de pixel interpolé qu'on insère entre les pixels du couple. On effectue la réduction en supprimant certaines des lignes de balayage d'une image numérique et en supprimant certaines des données de pixel de chacune des lignes de balayage retenues. The enlargement and reduction of digital images are usually accomplished using a computer programmed for this purpose. The enlargement is carried out by linear interpolation on each pair of scanning lines of the digital image to obtain at least one interpolated scanning line which is inserted between the two lines and by performing a linear interpolation on each pair of pixel data in each scan line, so as to obtain at least one interpolated pixel data item which is inserted between the pixels of the pair. Reduction is accomplished by deleting some of the scan lines from a digital image and deleting some of the pixel data from each of the selected scan lines.

Lors de l'agrandissement des images numériques, l'interpolation linéaire des données d'image d'origine par l'ordinateur est relativement lente. Pour cette raison, on a créé divers matériels dédiés, tels que ceux décrits dans la publication du brevet européen n" O 079 542 A2 et dans la publication du brevet britannique GB 2 226 471 A, pour permettre l'agrandissement en temps réel des images numériques. When enlarging digital images, linear interpolation of the original image data by the computer is relatively slow. For this reason, various dedicated materials have been created, such as those described in the publication of European patent No. 0 079 542 A2 and in the publication of British patent GB 2 226 471 A, to allow the enlargement in real time of the images. digital.

L'un des inconvénients des dispositifs à matériel dédié est qu'ils ne sont capables d'agrandir les images numériques que de façon limitée. Lorsqu'on agrandit une image numérique ayant (N) lignes de balayage, le nombre total de lignes de balayage à interpoler doit être un multiple de (N-l) de façon à permettre l'insertion d'un nombre égal de lignes de balayage interpolées dans chaque couple de lignes de balayage d'origine de l'image numérique d'origine, de façon à garantir l'uniformité. La même chose est vraie lorsqu'on agrandit une ligne de balayage ayant (N') données de pixel.En conséquence, un dispositif classique d'agrandissement est incapable d'agrandir uniformément une image numérique ayant (N) lignes de balayage (ou (N') données de pixel par ligne de balayage) si le nombre total de lignes de balayage interpolées (ou le nombre total de données de pixel interpolées par ligne de balayage) n'est pas un multiple de (N-l) (ou (N'-1)) respectivement. De plus, le dispositif classique d'agrandissement n'est capable que d'agrandir une image numérique à la fois dans les directions horizontale et verticale, et il est incapable de réduire une image numérique dans l'une ou l'autre des directions horizontale et verticale. One of the disadvantages of dedicated hardware devices is that they are only able to magnify digital images to a limited extent. When enlarging a digital image having (N) scan lines, the total number of scan lines to be interpolated must be a multiple of (Nl) so as to allow the insertion of an equal number of interpolated scan lines into each pair of original scan lines of the original digital image, so as to ensure uniformity. The same is true when enlarging a scan line having (N ') pixel data; therefore, a conventional magnifier is unable to uniformly enlarge a digital image having (N) scan lines (or ( N ') pixel data per scan line) if the total number of interpolated scan lines (or the total number of interpolated pixel data per scan line) is not a multiple of (Nl) (or (N' -1)) respectively. In addition, the conventional enlargement device is only capable of enlarging a digital image in both the horizontal and vertical directions, and it is unable to reduce a digital image in either of the horizontal directions. and vertical.

En conséquence, un but de l'invention est de fournir un procédé et un dispositif permettant de changer l'échelle d'une image numérique de façon uniforme. Consequently, an object of the invention is to provide a method and a device making it possible to change the scale of a digital image in a uniform manner.

Un but particulier de la présente invention est de fournir un procédé et un dispositif permettant d'agrandir de façon uniforme une image numérique dans au moins une des directions horizontale et verticale, même lorsque le nombre total de lignes de balayage interpolées ou le nombre de données de pixel interpolées par ligne de balayage n'est pas un multiple du nombre original de lignes de balayage moins 1, ou du nombre original de données de pixel par ligne de balayage moins 1. A particular object of the present invention is to provide a method and a device for uniformly enlarging a digital image in at least one of the horizontal and vertical directions, even when the total number of interpolated scanning lines or the number of data pixel interpolated per scan line is not a multiple of the original number of scan lines minus 1, or the original number of pixel data per scan line minus 1.

Un autre but recherché par l'invention est de fournir un procédé et un dispositif qui peuvent également réduire de façon uniforme une image numérique dans l'une quelconque des directions horizontale et verticale. Another object sought by the invention is to provide a method and a device which can also uniformly reduce a digital image in any of the horizontal and vertical directions.

Suivant un aspect de l'invention, un procédé de traitement d'une image numérique d'origine, pour obtenir une image numérique souhaitée à échelle modifiée de façon uniforme - l'image numérique d'origine ayant (N) données d'image successives et l'image numérique souhaitée ayant (M) données d'image désirées successives, (M) étant supérieur à (N) - comprend les étapes suivantes : on prévoit un interpolateur linéaire ; on commande l'interpolateur linéaire de façon à effectuer une interpolation linéaire de la (n)i*" et de la (n+l) données d'image d'origine de façon à produire une donnée d'image interpolée résiduelle qui est insérée entre les données d'origine lorsque la division de (M-N) par (N-l) laisse un reste (S) et lorsque (n) est un nombre minimum qui remplit la condition (n+l)*(S) 2 (s)*(N), où (s) varie de 1 à (S). According to one aspect of the invention, a method of processing an original digital image, to obtain a desired digital image on a uniformly modified scale - the original digital image having (N) successive image data. and the desired digital image having (M) successive desired image data, (M) being greater than (N) - comprises the following steps: a linear interpolator is provided; the linear interpolator is controlled so as to perform a linear interpolation of the (n) i * "and the (n + l) original image data so as to produce a residual interpolated image data which is inserted between the original data when the division of (MN) by (Nl) leaves a remainder (S) and when (n) is a minimum number which fulfills the condition (n + l) * (S) 2 (s) * (N), where (s) varies from 1 to (S).

Suivant un autre aspect de l'invention, un procédé pour traiter une image numérique d'origine de façon à obtenir une image numérique désirée à échelle modifiée de façon uniforme, dans laquelle l'image numérique d'origine a (N) données d'image successives et l'image numérique désirée a (M) données d'image successives, (M) étant inférieur à (N), comprend les étapes suivantes
(I-1) on mémorise les données d'image d'origine dans une mémoire
(I-2) on prévoit un générateur d'adresse qui commande la mémoire de façon à fournir en sortie une première donnée d'image d'origine
(I-3) on mémorise un nombre (U), qui est le reste de la division de (N) par (M), dans un registre de données
(I-4) on ajoute le nombre (U) au nombre mémorisé dans le registre de données pour obtenir une somme
(1-5) on compare la somme avec (M)
(1-6) on active le générateur d'adresse pour commander la mémoire de façon qu'elle fournisse en sortie une autre donnée d'image d'origine, décalée d'une donnée d'image d'origine immédiatement précédente fournie par la mémoire d'un nombre (V) égal au quotient de la division de (N) par le nombre (M) lorsque la somme est inférieure à (M), et par le nombre (V+1) lorsque la somme est au moins égale à (M)
(I-7) lorsque la somme est au moins égale à (M), on soustrait le nombre (M) de la somme et on mémorise la différence dans le registre de données ; et, lorsque la somme est inférieure à (M), on mémorise la somme dans le registre de données ; et
(I-8) on répète les étapes (I-4) à (I-7) jusqu'à ce que (M) données d'image d'origine aient été fournies à la sortie de la mémoire.
According to another aspect of the invention, a method for processing an original digital image so as to obtain a desired digital image on a uniformly modified scale, in which the original digital image has (N) data successive image and the desired digital image has (M) successive image data, (M) being less than (N), comprises the following steps
(I-1) the original image data is stored in a memory
(I-2) an address generator is provided which controls the memory so as to output a first original image data
(I-3) a number (U), which is the remainder of the division of (N) by (M), is stored in a data register
(I-4) we add the number (U) to the number stored in the data register to obtain a sum
(1-5) we compare the sum with (M)
(1-6) the address generator is activated to control the memory so that it outputs another original image data, offset from an immediately preceding original image data supplied by the memory of a number (V) equal to the quotient of the division of (N) by the number (M) when the sum is less than (M), and by the number (V + 1) when the sum is at least equal to (M)
(I-7) when the sum is at least equal to (M), the number (M) is subtracted from the sum and the difference is stored in the data register; and, when the sum is less than (M), the sum is stored in the data register; and
(I-8) repeating steps (I-4) to (I-7) until (M) original image data has been supplied to the memory output.

Suivant encore un autre aspect de l'invention, un dispositif de traitement d'une image numérique d'origine de façon à obtenir une image numérique souhaitée à échelle modifiée de façon uniforme, l'image numérique d'origine ayant (N) données d'image successives et l'image numérique désirée ayant (M) données d'image successives et le nombre (M) étant supérieur à (N), comprend : un interpolateur linéaire ; des moyens de contrôle, reliés à l'interpolateur linéaire, pour commander l'interpolateur linéaire de façon à réaliser une interpolation linéaire entre les (n)i'' et (n+l)i'D' données d'image d'origine de façon à produire une donnée d'image interpolée résiduelle insérée entre elles lorsque la division de (M-N) par (N-l) fournit un reste (S) et lorsque (n) est un nombre minimum qui remplit la condition (n+l)*(S) > (s)*(N), où (s) varie de 1 à (S). According to yet another aspect of the invention, a device for processing an original digital image so as to obtain a desired digital image on a uniformly modified scale, the original digital image having (N) data d successive image and the desired digital image having (M) successive image data and the number (M) being greater than (N), comprises: a linear interpolator; control means, connected to the linear interpolator, for controlling the linear interpolator so as to perform a linear interpolation between the (n) i '' and (n + l) i'D 'original image data so as to produce a residual interpolated image data inserted between them when the division of (MN) by (Nl) provides a remainder (S) and when (n) is a minimum number which fulfills the condition (n + l) * (S)> (s) * (N), where (s) varies from 1 to (S).

Suivant un autre aspect encore de l'invention, un dispositif pour traiter une image numérique d'origine de façon à obtenir une image numérique souhaitée à échelle modifiée de façon uniforme, l'image numérique d'origine ayant (N) données d'image successives d'origine alors que l'image numérique souhaitée a (M) données d'image successives et (M) étant inférieur à (N), comprend
une mémoire de stockage des données d'image d'origaine
un générateur d'adresse, relié à la mémoire, pour commander la mémoire de façon à fournir une première donnée parmi les données d'image d'origine ;
des moyens de génération d'un nombre (U) qui est le reste de la division de (N) par (M)
un registre de données
des moyens additionneurs reliés aux moyens de génération et au registre de données, prévus pour additionner (U) et le nombre stocké dans le registre de données de façon à obtenir une somme ; et
des moyens de calcul, reliés aux moyens additionneurs, au générateur d'adresse et au registre de données, destinés à comparer la somme avec le nombre (M) et à activer le générateur d'adresse de façon à commander la mémoire de façon qu'elle fournisse en sortie une autre donnée d'image d'origine qui est décalée de la donnée d'image d'origine immédiatement précédente apparue en sortie de la mémoire d'un nombre (V) égal au quotient de la division de (N) par (M) lorsque la somme est inférieure à (M) et d'un nombre (V+1) lorsque la somme est au moins égale au nombre (M) les moyens de calcul mémorisant la différence entre le nombre (M) et la somme dans le registre de données lorsque la somme est au moins égale à (M) et mémorisant la somme dans le registre de données lorsque la somme est inférieure à (M).
According to yet another aspect of the invention, a device for processing an original digital image so as to obtain a desired digital image on a uniformly modified scale, the original digital image having (N) image data successive original while the desired digital image has (M) successive image data and (M) being less than (N), comprises
a memory for storing the original image data
an address generator, connected to the memory, for controlling the memory so as to supply a first datum among the original image data;
means for generating a number (U) which is the remainder of the division of (N) by (M)
a data register
adding means connected to the generating means and to the data register, provided for adding (U) and the number stored in the data register so as to obtain a sum; and
calculation means, connected to the adding means, to the address generator and to the data register, intended to compare the sum with the number (M) and to activate the address generator so as to control the memory so that it supplies as output another original image data which is offset from the immediately preceding original image data which appeared in memory output by a number (V) equal to the quotient of the division of (N) by (M) when the sum is less than (M) and by a number (V + 1) when the sum is at least equal to the number (M) the calculation means memorizing the difference between the number (M) and the sum in the data register when the sum is at least equal to (M) and storing the sum in the data register when the sum is less than (M).

D'autres caractéristiques et avantages de l'invention apparaîtront mieux à la lecture de la description qui suit d'un mode avantageux de réalisation. La description se réfère aux dessins qui l'accompagnent, dans lesquels
la figure 1 est un synoptique de principe d'un mode de réalisation avantageux d'un dispositif de changement d'échelle suivant l'invention
la figure 2 est un synoptique simplifié d'un additionneur bilinéaire utilisable dans le mode de réalisation avantageux
la figure 3 est un synoptique simplifié d'un contrôleur de modification d'échelle utilisable dans le mode de réalisation avantageux
la figure 4 est un synoptique simplifié d'un répartiteur de résidu du contrôleur de changement d'échelle ;;
la figure 5 est un synoptique simplifié d'un générateur de série alpha du contrôleur de modification d'échelle
la figure 6 est un synoptique simplifié d'un générateur d'adresse du contrôleur de modification d'échelle ;
la figure 7 est un chronogramme montrant l'opération d'agrandissement par le mode avantageux de réalisation, lorsque N=5 et aN=2
la figure 8 est un chronogramme montrant l'opération d'agrandissement par le mode avantageux de réalisation lorsque N=5 et N=6 ; et
la figure 9 est un chronogramme montrant l'opération de réduction par le mode avantageux de réalisation lorsque
N=5 et N=2.
Other characteristics and advantages of the invention will appear better on reading the following description of an advantageous embodiment. The description refers to the accompanying drawings, in which
Figure 1 is a block diagram of an advantageous embodiment of a scale change device according to the invention
Figure 2 is a simplified block diagram of a bilinear adder usable in the advantageous embodiment
FIG. 3 is a simplified block diagram of a scale modification controller usable in the advantageous embodiment
Figure 4 is a simplified block diagram of a residue distributor of the scale change controller;
Figure 5 is a simplified block diagram of an alpha series generator of the scale modification controller
FIG. 6 is a simplified block diagram of an address generator of the scale modification controller;
FIG. 7 is a timing diagram showing the enlargement operation by the advantageous embodiment, when N = 5 and aN = 2
FIG. 8 is a timing diagram showing the enlargement operation by the advantageous embodiment when N = 5 and N = 6; and
FIG. 9 is a timing diagram showing the reduction operation by the advantageous embodiment when
N = 5 and N = 2.

Le mode avantageux de réalisation montré en figure 1, destiné à modifier de façon uniforme l'échelle d'une image numérique, comporte une unité de modification d'échelle verticale et une unité de modification d'échelle horizontale. L'unité de modification d'échelle verticale est capable d'agrandir et de réduire une image numérique dans la direction verticale. Elle comporte une mémoire de ligne 3, un tampon de ligne 4, un additionneur bilinéaire 5 et un contrôleur de modification d'échelle verticale 6. L'unité de modification d'échelle horizontale permet d'agrandir ou de réduire une image numérique dans la direction horizontale.
Elle comporte un registre de point 7, un tampon de point 8, un additionneur bilinéaire 9 et un contrôleur de modification d'échelle horizontale 10.
The advantageous embodiment shown in FIG. 1, intended to uniformly modify the scale of a digital image, comprises a vertical scale modification unit and a horizontal scale modification unit. The vertical scaling unit is capable of enlarging and reducing a digital image in the vertical direction. It comprises a line memory 3, a line buffer 4, a bilinear adder 5 and a vertical scale modification controller 6. The horizontal scale modification unit makes it possible to enlarge or reduce a digital image in the horizontal direction.
It includes a point register 7, a point buffer 8, a bilinear adder 9 and a horizontal scale modification controller 10.

Lors de la mise en oeuvre, on mémorise initialement une image numérique à traiter dans une mémoire d'image 2. During implementation, a digital image to be processed is initially stored in an image memory 2.

L'image numérique peut provenir d'un décodeur d'image ou d'un système de saisie d'image. Le contrôleur de modification d'échelle verticale 6 commande la mémoire d'image 2 de façon à fournir une ligne de balayage sélectionnée de l'image numérique à la mémoire de ligne 3. Le contrôleur de modification d'échelle verticale 6 commande de plus le tampon de ligne 4 de façon à mémoriser une ligne de balayage antérieure provenant de la mémoire de ligne 3. L'additionneur bilinéaire 5 reçoit les données de ligne de balayage à partir de la mémoire de ligne 3 et du tampon de ligne 4. I1 effectue une interpolation bilinéaire en appliquant une paire de coefficients de pondération a, 1-a provenant du contrôleur de modification d'échelle verticale 6.The digital image can come from an image decoder or an image capture system. The vertical scale modification controller 6 controls the image memory 2 so as to supply a selected scan line of the digital image to the line memory 3. The vertical scale modification controller 6 also controls the line buffer 4 so as to store an earlier scan line from line memory 3. Bilinear adder 5 receives scan line data from line memory 3 and line buffer 4. I1 performs a bilinear interpolation by applying a pair of weighting coefficients a, 1-a coming from the vertical scale modification controller 6.

La figure 2 est un synoptique de l'additionneur bilinéaire 5. Tel qu'il est représenté, une donnée de ligne de balayage provenant du tampon de ligne 4, qui correspond à une (n)'" ligne de balayage de l'image numérique dans la mémoire d'image 2, est multipliée par le coefficient l-a, alors que la donnée de ligne de balayage provenant de la mémoire de ligne 3, qui correspond à une (n+l)i'" ligne de balayage de l'image numérique dans la mémoire d'image 2, est multipliée par le coefficient a. Les produits résultants sont additionnés pour fournir une ligne de balayage interpolée lorsque le coefficient a est une fraction, c'est-àdire est compris entre O et 1. Le fonctionnement de l'additionneur bilinéaire 5 sera décrit davantage par la suite. FIG. 2 is a block diagram of the bilinear adder 5. As shown, a scan line data item coming from the line buffer 4, which corresponds to a (n) '"scan line of the digital image in the image memory 2, is multiplied by the coefficient la, while the scan line data coming from the line memory 3, which corresponds to a (n + l) i '"scan line of the image numeric in the image memory 2, is multiplied by the coefficient a. The resulting products are added to provide an interpolated scanning line when the coefficient a is a fraction, that is to say between 0 and 1. The operation of the bilinear adder 5 will be described later on.

La figure 3 montre un contrôleur de modification d'échelle verticale 6 qui comporte un jeu de registres programmables 30 comprenant un premier registre 30a pour mémoriser le nombre (N) de lignes de balayage d'origine de l'image numérique dans la mémoire d'image 2, un second registre 30b pour mémoriser le nombre (aN) de lignes de balayage à interpoler ou à supprimer et un troisième registre 30c pour mémoriser un fanion INC/DEC 38 destiné à indiquer si on doit effectuer un agrandissement ou une réduction de l'image numérique en direction verticale. Le contrôleur de modification d'échelle verticale 6 comporte également des premier, second et troisième circuits de calcul 31, 32 et 33 qui lisent le contenu des premier, second et troisième registres 30a, 30b et 30c.Le premier circuit de calcul 31 fournit en sortie le quotient T de la division de (N) par (N-l), alors que le second circuit de calcul 32 fournit le reste S de la division de (N) par (N-l). Le quotient T correspond au nombre minimum de lignes de balayage interpolées à insérer entre les deux lignes de chaque paire de lignes de balayage d'origine de l'image numérique stockée dans la mémoire d'image 2 et le reste S correspond au nombre total de lignes de balayage interpolées résiduelles à répartir uniformément parmi les lignes de balayage d'origine de l'image numérique stockée dans la mémoire d'image 2 lorsque l'image numérique est agrandie.Le troisième circuit de calcul 33 fournit le reste U de la division de (N) par (N-N). Le reste U correspond au nombre total de lignes de balayage résiduelles à supprimer dans l'image numérique stockée dans la mémoire d'image 2 lorsqu'on réduit l'image numérique. FIG. 3 shows a vertical scale modification controller 6 which comprises a set of programmable registers 30 comprising a first register 30a for storing the number (N) of original scan lines of the digital image in the memory of image 2, a second register 30b for memorizing the number (aN) of scanning lines to be interpolated or to be deleted and a third register 30c for memorizing an INC / DEC flag 38 intended to indicate whether an enlargement or reduction of the image is to be carried out digital image in vertical direction. The vertical scale modification controller 6 also comprises first, second and third calculation circuits 31, 32 and 33 which read the content of the first, second and third registers 30a, 30b and 30c. The first calculation circuit 31 provides output the quotient T of the division of (N) by (Nl), while the second calculation circuit 32 provides the remainder S of the division of (N) by (Nl). The quotient T corresponds to the minimum number of interpolated scanning lines to be inserted between the two lines of each pair of original scanning lines of the digital image stored in the image memory 2 and the remainder S corresponds to the total number of residual interpolated scan lines to be distributed uniformly among the original scan lines of the digital image stored in the image memory 2 when the digital image is enlarged. The third calculation circuit 33 provides the remainder U of the division from (N) by (NN). The remainder U corresponds to the total number of residual scanning lines to be deleted in the digital image stored in the image memory 2 when the digital image is reduced.

Un sélecteur à deux entrées 34 a une première entrée qui reçoit le reste U provenant du troisième circuit de calcul 33 et une seconde entrée qui reçoit le reste S provenant du second circuit de calcul 32. Le sélecteur 34 a également une entrée de commande qui reçoit le fanion
INC/DEC 38 provenant du troisième registre 30c. La sortie 42 du sélecteur 34 attaque un répartiteur de résidu 35. Le répartiteur de résidu 35 reçoit également le quotient T provenant du premier circuit de calcul 31. I1 a une entrée de commande qui reçoit le fanion INC/DEC 38 provenant du troisième registre 30c et une sortie de commande 39 reliée à un générateur de série de a 36 et à un générateur d'adresse 37.Le répartiteur de résidu 35 détermine si une étape d'interpolation résiduelle est à effectuer au cours de l'agrandissement de l'image numérique et si une ligne de balayage résiduelle doit être supprimée en cas de réduction de l'image numérique. Le générateur de série de a 36 reçoit le quotient T provenant du premier circuit de calcul 31 et le fanion INC/DEC 38 provenant du troisième registre 30c.
A two-input selector 34 has a first input which receives the remainder U from the third computing circuit 33 and a second input which receives the remainder S from the second computing circuit 32. The selector 34 also has a control input which receives the pennant
INC / DEC 38 from the third register 30c. The output 42 of the selector 34 drives a residue distributor 35. The residue distributor 35 also receives the quotient T coming from the first calculation circuit 31. I1 has a control input which receives the INC / DEC flag 38 coming from the third register 30c and a control output 39 connected to a series generator of a 36 and to an address generator 37. The residue distributor 35 determines whether a residual interpolation step is to be carried out during the enlargement of the image. digital and whether a residual scan line should be deleted when the digital image is reduced. The series generator of a 36 receives the quotient T coming from the first calculation circuit 31 and the flag INC / DEC 38 coming from the third register 30c.

Il génère les coefficients a, l-a pour l'additionneur bilinéaire 5 et un signal de commande de mémorisation pour le tampon de ligne 4 (figure 1). Le générateur d'adresse 37 reçoit également le quotient T provenant du premier circuit de calcul 31 et le fanion INC/DEC 38 provenant du troisième registre 30c, et il fournit une donnée d'adresse de ligne à la mémoire d'image 2.It generates the coefficients a, l-a for the bilinear adder 5 and a storage control signal for the line buffer 4 (FIG. 1). The address generator 37 also receives the quotient T coming from the first calculation circuit 31 and the INC / DEC flag 38 coming from the third register 30c, and it supplies line address data to the image memory 2.

La figure 4 montre que le répartiteur de résidu 35 comprend un circuit de calcul 40 qui fournit à sa sortie la différence entre (N) et (N) et un sélecteur à deux entrées 41 dont la première entrée reçoit la sortie du circuit de calcul 40 et la seconde entrée reçoit le nombre (N) provenant du premier registre 30a. I1 comporte une entrée de commande qui reçoit le fanion INC/DEC 38 provenant du troisième registre 30c. Un registre de données médian 56 reçoit la sortie 42 du sélecteur 34 (figure 3). Sa sortie est reliée à l'une des entrées d'un additionneur à deux entrées 43. L'autre entrée de l'additionneur 43 reçoit la sortie 42 du sélecteur 34.La sortie de l'additionneur 43 et la sortie du sélecteur 41 constituent les entrées d'un circuit de calcul 44 qui soustrait la seconde de la première et qui fournit un signal de validation sur sa sortie de commande 39 lorsque la sortie de l'additionneur 43 est supérieure ou égale à la sortie du sélecteur 41. Un sélecteur à deux entrées 45 a une première entrée qui reçoit la sortie de l'additionneur 43, une seconde entrée qui reçoit la différence entre les sorties de l'additionneur 43 et du sélecteur 41, provenant du circuit de calcul 44, une entrée de commande reliée à la sortie de commande du circuit de calcul 44 et une sortie qui est reliée au registre de données médian 56. FIG. 4 shows that the residue distributor 35 includes a calculating circuit 40 which supplies at its output the difference between (N) and (N) and a selector with two inputs 41 whose first input receives the output of the calculating circuit 40 and the second entry receives the number (N) from the first register 30a. I1 has a control input which receives the INC / DEC flag 38 from the third register 30c. A median data register 56 receives the output 42 of the selector 34 (FIG. 3). Its output is connected to one of the inputs of a two-input adder 43. The other input of the adder 43 receives the output 42 of the selector 34. The output of the adder 43 and the output of the selector 41 constitute the inputs of a calculation circuit 44 which subtracts the second from the first and which supplies a validation signal on its control output 39 when the output of the adder 43 is greater than or equal to the output of the selector 41. A selector with two inputs 45 has a first input which receives the output of the adder 43, a second input which receives the difference between the outputs of the adder 43 and of the selector 41, coming from the calculation circuit 44, a control input connected to the control output of the calculation circuit 44 and an output which is connected to the median data register 56.

Un circuit de modification d'horloge 46 reçoit l'horloge de ligne d'entrée d'origine et la modifie en fonction du signal sur la sortie de commande 39 et du quotient T provenant du premier circuit de calcul 31. A clock modification circuit 46 receives the original input line clock and modifies it as a function of the signal on the control output 39 and of the quotient T coming from the first calculation circuit 31.

Lorsque la sortie de commande 39 est à l'état logique haut, le circuit de modification d'horloge 46 fournit sur sa sortie une horloge divisée par (T+2) dont la durée est (T+2) fois celle de l'horloge de ligne d'entrée d'origine et, lorsque la sortie de commande 39 est à l'état logique bas, le circuit de modification d'horloge 46 fournit en sortie une horloge divisée par (T+1) dont la durée est (T+1) fois celle de l'horloge de ligne d'entrée d'origine. La sortie du circuit de modification d'horloge 46 et l'horloge de ligne d'entrée d'origine constituent les entrées d'un sélecteur 47. Le fanion INC/DEC 38 provenant du troisième registre 30c constitue l'entrée de commande du sélecteur 47. Le registre de données médian 56 a une broche de chargement LD qui reçoit un signal d'horloge mH1 provenant du sélecteur 47.When the control output 39 is in the high logic state, the clock modification circuit 46 provides on its output a clock divided by (T + 2) whose duration is (T + 2) times that of the clock original input line and, when the control output 39 is in the low logic state, the clock modification circuit 46 provides at output a clock divided by (T + 1) whose duration is (T +1) times that of the original input line clock. The output of the clock modification circuit 46 and the original input line clock constitute the inputs of a selector 47. The INC / DEC flag 38 coming from the third register 30c constitutes the control input of the selector 47. The middle data register 56 has a loading pin LD which receives a clock signal mH1 coming from the selector 47.

Le générateur de série de a (figure 5) comporte un générateur de coefficients 363 relié à la sortie de commande du circuit de calcul 44 et qui reçoit l'horloge de ligne d'entrée d'origine et le coefficient T provenant du premier circuit de calcul 31. Lorsque la sortie de commande 39 est à l'état logique haut, le générateur de coefficients 363 fournit successivement des coefficients a égaux à 1, 1/(T+2), 2/(T+2), . . . . . . (T+1)/(T+2) respectivement, au cours de (T+2) périodes de ligne successives ; lorsque la sortie de commande 39 est à l'état logique bas, le générateur de coefficients 363 fournit successivement des coefficients a égaux à 1, l/(T+l), 2/(T+1), (T)/(T+1) respectivement au cours de (T+1) périodes de ligne successives. Un sélecteur 364 a une première entrée qui est en permanence à 1, une seconde entrée qui reçoit la sortie du générateur de coefficients 363 et une entrée de commande qui reçoit le fanion INC/DEC 38. La sortie du sélecteur 364 constitue le coefficient a et est appliqué à l'une des entrées d'un circuit soustracteur 365. L'autre entrée du circuit soustracteur 365 est en permanence à 1. L'une des sorties du circuit soustracteur 365 est le coefficient l-a. The series generator of a (FIG. 5) comprises a coefficient generator 363 connected to the control output of the calculation circuit 44 and which receives the original input line clock and the coefficient T coming from the first circuit calculation 31. When the command output 39 is in the high logic state, the coefficient generator 363 successively supplies coefficients a equal to 1, 1 / (T + 2), 2 / (T + 2),. . . . . . (T + 1) / (T + 2) respectively, during (T + 2) successive line periods; when the control output 39 is in the low logic state, the coefficient generator 363 successively supplies coefficients a equal to 1, l / (T + l), 2 / (T + 1), (T) / (T +1) respectively during (T + 1) successive line periods. A selector 364 has a first input which is permanently at 1, a second input which receives the output of the coefficient generator 363 and a control input which receives the INC / DEC flag 38. The output of selector 364 constitutes the coefficient a and is applied to one of the inputs of a subtractor circuit 365. The other input of the subtractor circuit 365 is permanently at 1. One of the outputs of the subtractor circuit 365 is the coefficient la.

L'autre sortie du circuit soustracteur 365 est le circuit de commande de mémorisation du tampon de ligne 4 (figure 1). Le circuit soustracteur 365 génère le signal de commande de mémorisation lorsque le coefficient l-a est nul, c'est-àdire lorsque a = 1.The other output of the subtractor circuit 365 is the line buffer storage control circuit 4 (FIG. 1). The subtractor circuit 365 generates the storage control signal when the coefficient l-a is zero, that is to say when a = 1.

La figure 6 montre que le générateur d'adresse 37 comprend un circuit de calcul 371 qui fournit en sortie le quotient V de la division de (N) par ( N-N ) . Le quotient V correspond à un nombre de décalages entre deux lignes de balayage sélectionnées d'image numérique dans la mémoire d'image 2 lorsque l'image numérique est à réduire. Le quotient V et la sortie de commande 39 constituent les entrées de l'additionneur 372. La sortie de l'additionneur 372 constitue l'une des entrées d'un sélecteur 373. L'autre entrée du sélecteur 373 est fixée à 1. Le fanion INC/DEC 38 est utilisé comme entrée de commande du sélecteur 373. Le sélecteur 373 génère un nombre de décalages qui est appliqué à un additionneur 374. La sortie de l'additionneur 374 est reliée à un registre d'adresse 375.La sortie du registre d'adresse 375 constitue la donnée d'adresse de ligne et, à son tour, est reçue par l'additionneur 374. Le registre d'adresse 375 a une entrée "départ" destinée à prépositionner une adresse de ligne qui est celle de la première des lignes de balayage d'origine mémorisées dans la mémoire d'image 2. Le registre d'adresse 375 a également une broche de chargement LD pour commander le stockage d'une nouvelle adresse dans le registre. FIG. 6 shows that the address generator 37 includes a calculation circuit 371 which outputs the quotient V of the division of (N) by (N-N). The quotient V corresponds to a number of offsets between two selected scanning lines of digital image in the image memory 2 when the digital image is to be reduced. The quotient V and the control output 39 constitute the inputs of the adder 372. The output of the adder 372 constitutes one of the inputs of a selector 373. The other input of the selector 373 is fixed at 1. The INC / DEC flag 38 is used as control input for selector 373. Selector 373 generates a number of offsets which is applied to an adder 374. The output of adder 374 is connected to an address register 375. of the address register 375 constitutes the line address data and, in turn, is received by the adder 374. The address register 375 has an "outgoing" entry intended to preposition a line address which is that of the first of the original scan lines stored in the image memory 2. The address register 375 also has a loading pin LD for controlling the storage of a new address in the register.

Un circuit de verrouillage 376 (réseau de bascules) échantillonne le signal à la sortie de commande 39, à la cadence de l'horloge de ligne d'entrée d'origine. Un circuit de modification d'horloge 377 reçoit l'horloge de ligne d'entrée d'origine et la modifie en fonction de la sortie du circuit de verrouillage 376 et du quotient T provenant du premier circuit de calcul 31. Lorsque la sortie du circuit de verrouillage 376 est à l'état logique haut, le circuit de modification d'horloge 377 fournit une horloge divisée par (T+2) qui a une durée de (T+2) fois l'horloge de ligne d'entrée d'origine. Lorsque la sortie du circuit de verrouillage 376 est à l'état logique bas, le circuit de modification d'horloge 377 fournit en sortie une horloge divisée par (T+1) dont la durée est (T+1) fois celle de l'horloge de ligne d'entrée d'origine.Un sélecteur 378 reçoit l'horloge de ligne d'entrée d'origine et la sortie du circuit de modification d'horloge 377. I1 est commandé par le fanion INC/DEC 38 de façon à fournir en sortie l'une des entrées, sous forme d'une entrée d'horloge mH2 qui est reçue par le registre d'adresse 375 sur la broche de chargement
LD.
A latch circuit 376 (latch network) samples the signal at control output 39, at the rate of the original input line clock. A clock modification circuit 377 receives the original input line clock and modifies it as a function of the output of the latch circuit 376 and of the quotient T coming from the first calculation circuit 31. When the output of the circuit 376 is in logic high state, the clock modification circuit 377 provides a clock divided by (T + 2) which has a duration of (T + 2) times the input line clock of origin. When the output of the latch circuit 376 is in the low logic state, the clock modification circuit 377 provides as output a clock divided by (T + 1) whose duration is (T + 1) times that of the original input line clock. A selector 378 receives the original input line clock and the output of the clock modification circuit 377. I1 is controlled by the INC / DEC flag 38 so as to output one of the inputs, in the form of a clock input mH2 which is received by the address register 375 on the loading pin
LD.

Le fonctionnement de l'unité de changement d'échelle verticale est le suivant
A. Pour faciliter l'explication de l'opération d'agrandissement par le mode de réalisation avantageux, on donnera un exemple dans lequel une image numérique d'origine ayant cinq lignes de balayage d'origine est agrandie de façon à obtenir une image numérique souhaitée ayant sept lignes de balayage.
The operation of the vertical scale change unit is as follows
A. To facilitate the explanation of the enlargement operation by the advantageous embodiment, an example will be given in which an original digital image having five original scanning lines is enlarged so as to obtain a digital image desired having seven scan lines.

Le jeu de registres de programme 30 (figure 3) est programmé initialement en mémorisant le nombre "5" dans le premier registre 30a, le nombre "2" dans le second registre 30b et un "1" logique dans le troisième registre 30c. Le nombre "5" correspond au nombre (N) de lignes de balayage d'origine de l'image numérique d'origine dans la mémoire d'image 2. Le nombre "2" correspond au nombre total (N) de lignes de balayage à interpoler. Le "1" logique dans le troisième registre 30c indique qu'on doit agrandir l'image numérique d'origine.  The set of program registers 30 (FIG. 3) is initially programmed by storing the number "5" in the first register 30a, the number "2" in the second register 30b and a logic "1" in the third register 30c. The number "5" corresponds to the number (N) of original scan lines of the original digital image in the image memory 2. The number "2" corresponds to the total number (N) of scan lines to interpolate. The logic "1" in the third register 30c indicates that the original digital image must be enlarged.

Le premier circuit de calcul 31 fournit en sortie le quotient T de la division de (N) par (N-l). Puisque (N) est inférieur à (N-l), le quotient T est 0. Le second circuit de calcul 32 fournit en sortie le reste S de la division de (N) par (N-l). Dans l'exemple, le reste S est égal à 2. La sortie du troisième circuit de calcul 33 est inutilisée, puisque le sélecteur 34 fournit la sortie du second circuit de calcul 32 au répartiteur de résidu 35 lors d'une opération d'agrandissement. The first calculation circuit 31 supplies the quotient T as the division of (N) by (N-1). Since (N) is less than (N-1), the quotient T is 0. The second calculation circuit 32 provides as an output the remainder S of the division of (N) by (N-1). In the example, the remainder S is equal to 2. The output of the third calculation circuit 33 is unused, since the selector 34 supplies the output of the second calculation circuit 32 to the residue distributor 35 during an enlargement operation .

Le registre d'adresse 375 du générateur d'adresse 37 (figure 1 et figures 3 à 7) fixe initialement l'adresse de ligne d'une première ligne de balayage d'origine mémorisée dans la mémoire d'image 2 et commande la mémoire d'image 2 de façon à fournir la première ligne de balayage d'origine à la mémoire de ligne 3 au cours d'un signal d'horloge de ligne de départ. Au même instant, le reste S est mémorisé dans le registre de données médian 56 et l'additionneur 43 ajoute le reste S au contenu du registre de données médian 56. Puisque la sortie de l'additionneur 43, qui est égale à 4 dans le cas présent, est inférieure à (N), qui est égal à 5, la sortie de commande 39 du circuit de calcul 44 est à l'état logique bas.Le sélecteur 45 fournit la sortie de l'additionneur 43 au registre de données médian 56 et l'entrée d'horloge mHl fournie au registre de données médian 56 est l'horloge divisée par (T+1), qui est la même que l'horloge de ligne d'entrée d'origine puisque T est égal à 0. The address register 375 of the address generator 37 (FIG. 1 and FIGS. 3 to 7) initially fixes the line address of a first original scan line stored in the image memory 2 and controls the memory. frame 2 so as to provide the first original scan line to the line memory 3 during a start line clock signal. At the same time, the remainder S is stored in the middle data register 56 and the adder 43 adds the rest S to the content of the middle data register 56. Since the output of the adder 43, which is equal to 4 in the case, is less than (N), which is equal to 5, the control output 39 of the calculation circuit 44 is in the low logic state. The selector 45 provides the output of the adder 43 to the median data register 56 and the clock input mHl supplied to the middle data register 56 is the clock divided by (T + 1), which is the same as the original input line clock since T is equal to 0 .

Etant donné que la sortie de commande 39 est au niveau logique bas et que le quotient T est égal à 0, le générateur de coefficients 363 fournit le nombre "1" au sélecteur 364. Etant donné que le fanion INC/DEC 38 est un "1" logique, le sélecteur 364 choisit la sortie du générateur de coefficients 363 en tant que coefficient de pondération a. Puisque le coefficient est égal à 1, le coefficient 1-a est égal à O et le signal de commande de mémorisation généré commande le tampon de ligne 4 de façon à mémoriser la première des lignes de balayage d'origine, provenant de la mémoire de ligne 3. La sortie de l'additionneur bilinéaire 5 est alors la première des lignes de balayage d'origine. Since the command output 39 is at the low logic level and the quotient T is equal to 0, the coefficient generator 363 supplies the number "1" to the selector 364. Since the INC / DEC flag 38 is a " 1 "logic, the selector 364 chooses the output of the coefficient generator 363 as the weighting coefficient a. Since the coefficient is equal to 1, the coefficient 1-a is equal to O and the storage command signal generated controls the line buffer 4 so as to memorize the first of the original scanning lines, coming from the memory of line 3. The output of the bilinear adder 5 is then the first of the original scanning lines.

Le sélecteur 373 fournit un nombre de décalages égal à 1 à l'additionneur 374. L'additionneur 374 incrémente alors la sortie du registre d'adresse 375 d'une unité lorsque l'impulsion d'horloge suivante mH2 arrive et commande ainsi la mémoire d'image 2 de façon à fournir la seconde ligne de balayage d'origine à la mémoire de ligne 3. The selector 373 provides a number of shifts equal to 1 to the adder 374. The adder 374 then increments the output of the address register 375 by one unit when the next clock pulse mH2 arrives and thus controls the memory 2 to provide the second original scan line to line 3 memory.

Lorsque l'impulsion d'horloge suivante mH1 arrive, le registre de données médian 56 mémorise la sortie précédente de l'additionneur 43, qui est le nombre "4". A ce moment là, la sortie de l'additionneur 43, maintenant égale à 6, est supérieure à (N), qui est égal à 5, de sorte que la sortie de commande 39 du circuit de calcul 44 est au niveau logique haut. Le sélecteur 45 fournit la différence entre les sorties de l'additionneur 43 et du sélecteur 41 au registre de données médian 56 et l'entrée d'horloge mHl du registre de données médian 56 est maintenant l'horloge divisée par (T+2), dont la durée est deux fois la durée de l'horloge de ligne d'entrée d'origine. When the next clock pulse mH1 arrives, the middle data register 56 stores the previous output of the adder 43, which is the number "4". At this time, the output of the adder 43, now equal to 6, is greater than (N), which is equal to 5, so that the control output 39 of the calculation circuit 44 is at the high logic level. The selector 45 provides the difference between the outputs of the adder 43 and of the selector 41 to the middle data register 56 and the clock input mHl of the middle data register 56 is now the clock divided by (T + 2) , whose duration is twice the duration of the original input line clock.

Maintenant que la sortie de commande 39 est à l'état logique haut, le générateur de coefficients 363 fournit successivement deux sorties, 1 et , au cours d'une impulsion d'horloge mHl, c'est-à-dire deux périodes d'horloge de ligne d'entrée d'origine consécutives. Au cours de la première période d'horloge de ligne d'entrée d'origine, l'additionneur bilinéaire 55 fournit la seconde ligne de balayage d'origine ; en même temps, cette dernière est mémorisée dans le tampon de ligne 4 puisque le coefficient a est égal à 1. Au cours de la seconde période d'horloge de ligne d'entrée d'origine, le contenu du registre d'adresse 375 est incrémenté d'une unité à réception de l'impulsion suivante mH2 de façon à commander la mémoire d'image 2 et à fournir la troisième ligne de balayage d'origine à la mémoire de ligne 3.A ce moment, la sortie du générateur de coefficients 363 est égale à . Le coefficient a est égal à et le coefficient l-a est égal à 4. Aucun signal de commande de mémorisation n'est généré. La seconde ligne de balayage d'origine reste dans le tampon de ligne 4. La sortie de l'additionneur bilinéaire 5 est à ce moment là l'interpole linéaire entre la seconde et la troisième ligne de balayage d'origine. Now that the control output 39 is in the high logic state, the coefficient generator 363 successively supplies two outputs, 1 and, during a clock pulse mHl, that is to say two periods of consecutive original input line clock. During the first original input line clock period, the bilinear adder 55 provides the second original scan line; at the same time, the latter is stored in line buffer 4 since the coefficient a is equal to 1. During the second original input line clock period, the content of address register 375 is incremented by one on receipt of the next pulse mH2 so as to control the image memory 2 and to supply the third original scan line to the line memory 3. At this time, the output of the generator coefficients 363 equals. The coefficient a is equal to and the coefficient l-a is equal to 4. No storage command signal is generated. The second original scan line remains in the line buffer 4. The output of the bilinear adder 5 is at this time the linear interpolation between the second and the third original scan line.

Le contenu du registre de données médian 56 est mis à jour et passe à 1, qui est la différence entre la sortie de l'additionneur 43 et (N), lorsque l'impulsion d'horloge suivante mHl arrive. La sortie de l'additionneur 43 est égale à 3, qui est inférieur à (N), de sorte que la sortie de commande 39 est au niveau logique bas. Le sélecteur 45 fournit la sortie de l'additionneur 43 au registre de données médian 56. L'entrée d'horloge mHî fournie au registre de données médian 56 est l'horloge divisée par (T+1) et le coefficient a provenant du générateur de série de a est égal à 1. La sortie de l'additionneur bilinéaire 5 est constituée par la troisième ligne de balayage d'origine et, puisque le coefficient a est égal à 1, la troisième ligne de balayage d'origine est mémorisée dans le tampon de ligne 4. The content of the median data register 56 is updated and goes to 1, which is the difference between the output of the adder 43 and (N), when the next clock pulse mH1 arrives. The output of the adder 43 is equal to 3, which is less than (N), so that the control output 39 is at the low logic level. The selector 45 provides the output of the adder 43 to the median data register 56. The clock input mHî supplied to the median data register 56 is the clock divided by (T + 1) and the coefficient a from the generator of series of a is equal to 1. The output of the bilinear adder 5 is constituted by the third original scan line and, since the coefficient a is equal to 1, the third original scan line is stored in line buffer 4.

Les étapes ultérieures sont similaires aux précédentes jusqu'à ce que la cinquième ligne de balayage d'origine apparaisse en sortie de l'additionneur bilinéaire 5. The subsequent steps are similar to the previous ones until the fifth original scan line appears at the output of the bilinear adder 5.

La figure 7 est un chronogramme qui montre l'opération d'agrandissement suivant le mode avantageux de réalisation dans cet exemple, c'est-à-dire pour N=5 et aN=2.  FIG. 7 is a timing diagram which shows the enlargement operation according to the advantageous embodiment in this example, that is to say for N = 5 and aN = 2.

On a aussi montré que le contrôleur de modification d'échelle verticale commande l'additionneur bilinéaire 5 de façon à effectuer une interpolation bilinéaire de la (n)iêno ligne de balayage d'origine, qui est mémorisée dans le tampon de ligne 4 et de la (n+l)1êee ligne de balayage d'origine, qui est stockée dans la mémoire de ligne 3, de façon à produire une ligne de balayage interpolée résiduelle qui est insérée entre la (n)iêoee et la (n+i)ièle lignes de balayage d'origine, lorsque la division de (N) par (N-l) fournit un reste (S) et lorsque (n) est un nombre minimum qui remplit la condition (n+l)*(S) 2 (s)*(N), où (s) peut aller de 1 à (S). It has also been shown that the vertical scale modification controller controls the bilinear adder 5 so as to perform a bilinear interpolation of the (n) iêno original scan line, which is stored in the line buffer 4 and the (n + 1) 1st original scan line, which is stored in the line memory 3, so as to produce a residual interpolated scan line which is inserted between the (n) iêoee and the (n + i) ith original scan lines, when the division of (N) by (Nl) provides a remainder (S) and when (n) is a minimum number which fulfills the condition (n + l) * (S) 2 (s ) * (N), where (s) can range from 1 to (S).

Dans l'exemple précédent, le quotient (T) de la division de (N) par (N-l) est 0. Si le quotient T est différent de zéro, c'est-à-dire si (N) est supérieur ou égal à (N-l), le contrôleur de changement d'échelle verticale 6 commande l'additionneur bilinéaire 5 pour effectuer une interpolation bilinéaire entre les (n)iêle et (n+l)i~ lignes de balayage d'origine, afin de fournir un nombre supplémentaire T de lignes de balayage interpolées successives qui sont insérées entre les (n)'é" et (n+i)ièle lignes de balayage d'origine. In the previous example, the quotient (T) of the division of (N) by (Nl) is 0. If the quotient T is different from zero, that is to say if (N) is greater than or equal to (Nl), the vertical scale change controller 6 controls the bilinear adder 5 to perform a bilinear interpolation between the (n) island and (n + l) i ~ original scan lines, in order to provide a number additional T of successive interpolated scan lines which are inserted between the (n) 'é "and (n + i) th original scan lines.

La figure 8 montre, à titre d'exemple, un chronogramme d'une opération d'agrandissement effectuée à l'aide du mode de réalisation avantageux, lorsque N=5 et aN=6. Dans cet exemple, le quotient T est égal à 1 et le reste S est égal à 2. Une ligne de balayage interpolée additionnelle est insérée dans chaque intervalle entre les (n)iê-e et (n+l)i^ lignes de balayage d'origine. FIG. 8 shows, by way of example, a timing diagram of an enlargement operation carried out using the advantageous embodiment, when N = 5 and aN = 6. In this example, the quotient T is equal to 1 and the remainder S is equal to 2. An additional interpolated scan line is inserted in each interval between the (n) iê-e and (n + l) i ^ scan lines of origin.

B. Pour faciliter l'explication de l'opération de réduction par le mode de réalisation avantageux, on donnera un exemple avec une image numérique d'origine ayant cinq lignes de balayage d'origine qui est réduite de façon à obtenir une image numérique souhaitée ayant trois lignes de balayage. B. To facilitate the explanation of the reduction operation by the advantageous embodiment, an example will be given with an original digital image having five original scan lines which is reduced so as to obtain a desired digital image having three scan lines.

La figure 3 montre que le jeu de registres programmables 30 est programmé initialement en mémorisant le nombre "5" dans le premier registre 30a, le nombre "2" dans le second registre 30b et un "0" logique dans le troisième registre 30c. Le nombre "5" correspond au nombre (N) de lignes de balayage d'origine de l'image numérique d'origine dans la mémoire d'image 2. Le nombre "2" correspond au nombre total (aN) de lignes de balayage à supprimer. Le "O" logique dans le troisième registre 30c indique qu'on doit effectuer une réduction de l'image numérique d'origine. FIG. 3 shows that the set of programmable registers 30 is initially programmed by storing the number "5" in the first register 30a, the number "2" in the second register 30b and a logic "0" in the third register 30c. The number "5" corresponds to the number (N) of original scan lines of the original digital image in the image memory 2. The number "2" corresponds to the total number (aN) of scan lines to delete. The logic "O" in the third register 30c indicates that a reduction of the original digital image must be carried out.

Les sorties des premier et second circuits de calcul 31, 32 sont sans effet au cours de l'opération de réduction. The outputs of the first and second calculation circuits 31, 32 have no effect during the reduction operation.

Le troisième circuit de calcul 33 fournit sur sa sortie le reste U de la division de (N) par (N-N), (N-N) étant le nombre de lignes de balayage d'origine à conserver. Dans l'exemple, le reste U est égal à 2. Le sélecteur 34 admet la sortie du troisième circuit de calcul 33 au répartiteur de résidu 35.The third calculation circuit 33 provides on its output the remainder U of the division of (N) by (N-N), (N-N) being the number of original scan lines to be kept. In the example, the remainder U is equal to 2. The selector 34 admits the output of the third calculation circuit 33 to the residue distributor 35.

La figure 1, les figures 3 à 6 et la figure 9 montrent que le registre d'adresse 375 du générateur d'adresse 37 fournit initialement l'adresse de ligne de la première ligne de balayage d'origine mémorisée dans la mémoire d'image 2 et commande la mémoire d'image 2 de façon à fournir la première ligne de balayage d'origine à la mémoire de ligne 3 au cours d'un signal de ligne de départ. FIG. 1, FIGS. 3 to 6 and FIG. 9 show that the address register 375 of the address generator 37 initially supplies the line address of the first original scan line stored in the image memory 2 and controls the image memory 2 so as to supply the first original scan line to the line memory 3 during a start line signal.

Simultanément, le reste U est mémorisé dans le registre de données médian 56 et l'additionneur 43 ajoute le reste U au contenu du registre de données médian 56. Le circuit de calcul 44 soustrait le nombre (N-N) provenant du sélecteur 41 de la sortie de l'additionneur 43. Puisque la sortie de l'additionneur 43, qui est à ce moment là égale à 4, est supérieure au nombre (N-aN), qui est égal à 3, la sortie de commande 39 du circuit de calcul 44 est à l'état logique haut. Le sélecteur 45 applique la différence entre les sorties de l'additionneur 43 et du sélecteur 41 au registre de données médian 56. Le signal d'horloge de ligne d'origine est fourni au registre de données médian 56 par l'intermédiaire du sélecteur 47.Simultaneously, the remainder U is stored in the middle data register 56 and the adder 43 adds the rest U to the content of the middle data register 56. The calculation circuit 44 subtracts the number (NN) coming from the selector 41 from the output of the adder 43. Since the output of the adder 43, which is then equal to 4, is greater than the number (N-aN), which is equal to 3, the control output 39 of the calculation circuit 44 is in the high logic state. The selector 45 applies the difference between the outputs of the adder 43 and of the selector 41 to the median data register 56. The original line clock signal is supplied to the median data register 56 via the selector 47 .

Comme on le voit sur les figures 3 et 5, puisqu'un "0" logique est mémorisé dans le troisième registre 30c, le sélecteur 364 maintient le coefficient a à 1. Le coefficient l-a est donc égal à O et le signal de commande de mémorisation est toujours généré de façon à activer le tampon de ligne 4 qui mémorisera de façon continue une ligne de balayage d'origine provenant de la mémoire de ligne 3. De plus, la sortie de l'additionneur bilinéaire 5 est toujours la sortie de la mémoire de ligne 3. As seen in FIGS. 3 and 5, since a logic "0" is stored in the third register 30c, the selector 364 maintains the coefficient a at 1. The coefficient la is therefore equal to O and the control signal from storage is always generated so as to activate the line buffer 4 which will continuously store an original scan line coming from the line memory 3. In addition, the output of the bilinear adder 5 is always the output of the line memory 3.

Le circuit de calcul 371 (figure 6) fournit sur sa sortie le quotient V de la division de (N) par (N-N). Dans l'exemple, le quotient V est égal à 1. L'additionneur 372 génère la somme du quotient V et de l'état logique de la sortie de commande 39, qui est alors à l'état logique haut. The calculation circuit 371 (FIG. 6) supplies on its output the quotient V of the division of (N) by (N-N). In the example, the quotient V is equal to 1. The adder 372 generates the sum of the quotient V and the logic state of the control output 39, which is then in the high logic state.

Le sélecteur 373 choisit la sortie de l'additionneur 372, qui est égale à 2, et la transmet à l'additionneur 374. La sortie du registre d'adresse 375 est donc incrémentée de deux unités lorsque l'impulsion suivante mH2 arrive, ce qui commande la mémoire d'image 2 de façon que la troisième ligne de balayage d'origine soit fournie à la mémoire de ligne 3.The selector 373 chooses the output of the adder 372, which is equal to 2, and transmits it to the adder 374. The output of the address register 375 is therefore incremented by two units when the next pulse mH2 arrives, this which controls the image memory 2 so that the third original scan line is supplied to the line memory 3.

En se reportant de nouveau à la figure 4, on voit que le registre de données médian 56 mémorise le nombre "1", qui est la différence antérieure calculée par le circuit de calcul 44, lorsque l'impulsion d'horloge de ligne suivante arrive. A cet instant, la sortie de l'additionneur 43, qui est égale à 3, est égale à la sortie du sélecteur 41. La sortie de commande 39 du circuit de calcul 44 est au niveau logique haut et le sélecteur 45 fournit la différence entre les sorties de l'additionneur 43 et du sélecteur 41 au registre de données médian 56. Referring again to FIG. 4, it can be seen that the median data register 56 stores the number "1", which is the previous difference calculated by the calculation circuit 44, when the next line clock pulse arrives . At this instant, the output of the adder 43, which is equal to 3, is equal to the output of the selector 41. The control output 39 of the calculation circuit 44 is at the high logic level and the selector 45 provides the difference between the outputs of the adder 43 and of the selector 41 to the median data register 56.

En revenant à la figure 6, on voit que l'additionneur 362 génère une fois de plus la somme du quotient V et de l'état logique courant de la sortie de commande 39. La sortie de l'additionneur 372, qui est égale à 2, est transmise à l'additionneur 374 par l'intermédiaire du sélecteur 373. Donc la sortie du registre d'adresse 375 est de nouveau incrémentée de deux unités lorsque l'impulsion suivante mH2 arrive et commande la mémoire d'image 2 de façon que la cinquième ligne de balayage d'origine soit fournie à la mémoire de ligne 3. La figure 9 est un chronogramme qui montre l'opération de réduction par le mode avantageux de réalisation pour cet exemple, c'est-à-dire pour N=5 et aN=2.  Returning to FIG. 6, it can be seen that the adder 362 once again generates the sum of the quotient V and of the current logic state of the control output 39. The output of the adder 372, which is equal to 2, is transmitted to the adder 374 via the selector 373. Thus the output of the address register 375 is again incremented by two units when the next pulse mH2 arrives and controls the image memory 2 so the fifth original scan line is supplied to the line memory 3. FIG. 9 is a timing diagram which shows the reduction operation by the advantageous embodiment for this example, that is to say for N = 5 and aN = 2.

Ce qui précède montre que le générateur d'adresse 37 commande la mémoire d'image 2 pour ne fournir en sortie que des lignes de balayage d'origine sélectionnées. Les lignes de balayage d'origine qui n'apparaissent pas à la sortie de la mémoire d'image 2 sont rejetées. On notera que la ligne de balayage d'origine apparaissant en sortie de la mémoire d'image 2 est décalée d'une ligne de balayage d'origine précédente apparue en sortie de la mémoire 2 du nombre V lorsque la sortie de l'additionneur 43 est inférieure à la différence (N-N) et décalée du nombre (V+1) lorsque la sortie de l'additionneur 43 est au moins égale à la différence (N-N).  The above shows that the address generator 37 controls the image memory 2 so as to output only selected original scanning lines. The original scan lines which do not appear at the output of the image memory 2 are rejected. It will be noted that the original scanning line appearing at the output of the image memory 2 is offset from a previous original scanning line appearing at the output of the memory 2 by the number V when the output of the adder 43 is less than the difference (NN) and offset by the number (V + 1) when the output of the adder 43 is at least equal to the difference (NN).

La structure et le fonctionnement de l'unité de changement d'échelle horizontale est le suivant. The structure and operation of the horizontal scale change unit is as follows.

La sortie de l'additionneur bilinéaire 5 est reçue par le registre de point 7. Le contrôleur de changement d'échelle horizontale 10 commande le tampon de point 8 pour mémoriser une donnée de pixel antérieure provenant du registre de point 7. L'additionneur bilinéaire 9 reçoit les données de pixel provenant du registre de point 7 et du tampon de point 8 et il effectue une interpolation bilinéaire, avec une paire de coefficients de pondération a, l-a provenant du contrôleur de changement d'échelle horizontale 10. La structure de l'additionneur bilinéaire 9 est similaire à celle de l'additionneur bilinéaire 5 montrée en figure 2.Mais, dans l'additionneur bilinéaire 9, la donnée de pixel provenant du tampon de point 8, qui correspond à une (n' )iêoee donnée de pixel des données de ligne de balayage provenant de l'additionneur bilinéaire 5, est multipliée par le coefficient l-a. La donnée de pixel provenant du registre de point 7, qui correspond à une (n+i)iêae donnée de pixel des données de ligne de balayage provenant de l'additionneur bilinéaire 5, est multipliée par le coefficient a. Le registre de point 7 est donc équivalent à la mémoire de ligne 3 de l'unité de changement d'échelle verticale, alors que le tampon de point 8 est équivalent au tampon de ligne 4 de l'unité de changement d'échelle verticale. The output of the bilinear adder 5 is received by the point register 7. The horizontal scale change controller 10 controls the point buffer 8 to store an earlier pixel data item coming from the point register 7. The bilinear adder 9 receives the pixel data coming from the point register 7 and from the point buffer 8 and it performs a bilinear interpolation, with a pair of weighting coefficients a, the coming from the horizontal scale change controller 10. The structure of the the bilinear adder 9 is similar to that of the bilinear adder 5 shown in FIG. 2. But, in the bilinear adder 9, the pixel data coming from the point buffer 8, which corresponds to a (n ') iêoee given by pixel of the scan line data from the bilinear adder 5, is multiplied by the coefficient la. The pixel data coming from the point register 7, which corresponds to a (n + i) th pixel data of the scanning line data coming from the bilinear adder 5, is multiplied by the coefficient a. The point register 7 is therefore equivalent to the line memory 3 of the vertical scale change unit, while the point buffer 8 is equivalent to the line buffer 4 of the vertical scale change unit.

La structure du contrôleur de changement d'échelle horizontale 10 est similaire à celle du contrôleur de changement d'échelle verticale 6 montrée sur les figures 3 à 6. The structure of the horizontal scale change controller 10 is similar to that of the vertical scale change controller 6 shown in FIGS. 3 to 6.

Il existe des différences mineures entre les contrôleurs 6 et 10. Par exemple, le premier registre du jeu de registres programmables du contrôleur de changement d'échelle horizontale 10 est utilisé pour mémoriser le nombre (N') de données de pixel par ligne de balayage d'origine de l'image numérique dans la mémoire d'image 2. Le second registre est utilisé pour mémoriser le nombre (aN') de données de pixel à interpoler ou à supprimer par ligne de balayage. Le troisième registre mémorise un fanion INC/DEC qui est utilisé pour indiquer si on doit agrandir ou réduire l'image numérique en direction horizontale. L'entrée d'horloge du générateur d'adresse, le générateur de série de a et le répartiteur de résidu est constituée par l'horloge de pixel d'origine.La sortie d'adresse du registre d'adresse du contrôleur de changement d'échelle horizontale 10 est une adresse de point qui est utilisée pour commander la mémoire de ligne 3 et le tampon de ligne 4. Ainsi, lors d'un agrandissement dans la direction horizontale, toutes les données de pixel des (n)ième et (n+i)iêae lignes de balayage d'origine, ainsi que les lignes de balayage interpolées entre elles, s'il y en a, traversent l'additionneur bilinéaire 5. En cas de réduction dans les directions horizontale et verticale, seules les données de pixel sélectionnées appartenant aux lignes de balayage d'origine sélectionnées traversent l'additionneur bilinéaire 5.There are minor differences between controllers 6 and 10. For example, the first register in the programmable register set of the horizontal scaling controller 10 is used to store the number (N ') of pixel data per scan line. source of the digital image in the image memory 2. The second register is used to store the number (aN ′) of pixel data to be interpolated or to be deleted per scan line. The third register stores an INC / DEC flag which is used to indicate whether the digital image should be enlarged or reduced in the horizontal direction. The clock input of the address generator, the series generator of a and the residual distributor is constituted by the original pixel clock. The address output of the address register of the change controller d the horizontal scale 10 is a point address which is used to control the line memory 3 and the line buffer 4. Thus, when enlarged in the horizontal direction, all the pixel data of (n) th and ( n + i) the original scanning lines, as well as the interpolated scanning lines between them, if there are any, cross the bilinear adder 5. In the case of reduction in the horizontal and vertical directions, only the data of selected pixels belonging to the selected original scan lines pass through the bilinear adder 5.

Etant donné que le dispositif de l'invention est constitué par un matériel dédié, il est possible d'effectuer un agrandissement en temps réel d'images numériques. De plus, on peut effectuer un changement d'échelle uniforme d'une image numérique ayant (N) lignes de balayage (ou (N') données de pixel par ligne de balayage) même si le nombre total de lignes de balayage interpolées (ou le nombre de données de pixel interpolées dans chaque ligne de balayage) n'est pas un multiple de (N-l) (ou respectivement de (N'1)). De plus, le dispositif de changement d'échelle de l'invention est utilisable pour agrandir ou réduire une image numérique de façon sélective dans l'une quelconque des directions horizontale et verticale.  Given that the device of the invention consists of dedicated hardware, it is possible to carry out an enlargement in real time of digital images. In addition, a uniform scaling of a digital image with (N) scan lines (or (N ') pixel data per scan line) can be performed even if the total number of interpolated scan lines (or the number of pixel data interpolated in each scan line) is not a multiple of (Nl) (or respectively (N'1)). In addition, the scaling device of the invention can be used to selectively enlarge or reduce a digital image in any of the horizontal and vertical directions.

Claims (35)

REVENDICATIONS 1. Procédé de traitement d'une image numérique d'origine, pour obtenir une image numérique souhaitée à échelle modifiée de façon uniforme - l'image numérique d'origine ayant (N) données d'image successives et l'image numérique souhaitée ayant (M) données d'image désirées successives, (M) étant supérieur à (N) - caractérisé en ce qu'il comprend les étapes suivantes 1. Method for processing an original digital image, to obtain a desired digital image on a uniformly modified scale - the original digital image having (N) successive image data and the desired digital image having (M) successive desired image data, (M) being greater than (N) - characterized in that it comprises the following steps on prévoit un premier interpolateur linéaire (5) ; et a first linear interpolator (5) is provided; and on commande l'interpolateur linéaire (5) de façon à effectuer une interpolation linéaire de la (n)iêle et de la (n+1)i*-' données d'image d'origine de façon à produire une donnée d'image interpolée résiduelle qui est insérée entre les données d'origine lorsque la division de (M-N) par (N-l) laisse un reste (S) et lorsque (n) est un nombre minimum qui remplit la condition (n+l)*(S) > (s)*(N), où (s) varie de 1 à (S).  the linear interpolator (5) is controlled so as to perform a linear interpolation of the (n) island and the (n + 1) i * - 'original image data so as to produce an image data residual interpolated which is inserted between the original data when the division of (MN) by (Nl) leaves a remainder (S) and when (n) is a minimum number which fulfills the condition (n + l) * (S) > (s) * (N), where (s) varies from 1 to (S). 2. Procédé selon la revendication 1, caractérisé en ce qu'on commande le premier interpolateur linéaire (5) pour effectuer une interpolation linéaire entre la (n)iêae et la (n+i)iêle données d'image d'origine pour obtenir un nombre additionnel (T) de données d'image interpolées successives qui sont insérées lorsque (M-N) est supérieur à (N-l), le nombre (T) étant le quotient de la division de (M-N) par (N-i).  2. Method according to claim 1, characterized in that the first linear interpolator (5) is controlled to perform a linear interpolation between the (n) iêae and the (n + i) haile original image data to obtain an additional number (T) of successive interpolated image data which are inserted when (MN) is greater than (Nl), the number (T) being the quotient of the division of (MN) by (Ni). 3. Procédé selon la revendication 1 ou 2, caractérisé en ce que le premier interpolateur linéaire (5) est un additionneur bilinéaire. 3. Method according to claim 1 or 2, characterized in that the first linear interpolator (5) is a bilinear adder. 4. Procédé selon la revendication 1, caractérisé en ce que, au cours de la commande 4. Method according to claim 1, characterized in that, during the order (I-i) on mémorise le nombre (S) dans un registre de données (56) ; (I-i) the number (S) is stored in a data register (56); (I-2) on additionne le nombre (S) et le nombre mémorisé dans le registre de données (56) pour obtenir une somme (I-2) add the number (S) and the number stored in the data register (56) to obtain a sum (I-3) on compare la somme avec (N) (I-3) we compare the sum with (N) (I-4) si la somme est au moins égale à (N), on commande le premier interpolateur linéaire (5) pour obtenir la donnée d'image interpolée résiduelle qui est insérée entre la (n)iène et la (n+l)i' données d'image d'origine, on soustrait le nombre (N) de la somme et on mémorise la différence obtenue dans le registre de données (56) ; et, si la somme est inférieure à (N), on mémorise la somme dans le registre de données (56) ; et (I-4) if the sum is at least equal to (N), the first linear interpolator (5) is ordered to obtain the residual interpolated image data which is inserted between the (n) iene and the (n + l ) i 'original image data, the number (N) is subtracted from the sum and the difference obtained is stored in the data register (56); and, if the sum is less than (N), the sum is stored in the data register (56); and (1-5) on répète les étapes (1-2) à (I-4) en incrémentant (n) chaque fois de 1 jusqu'à ce que (n) soit égal à (N). (1-5) repeating steps (1-2) to (I-4) by incrementing (n) each time by 1 until (n) is equal to (N). 5. Procédé selon la revendication 1, caractérisé en ce que les données d'image d'origine sont des données de ligne de balayage. 5. Method according to claim 1, characterized in that the original image data are scan line data. 6. Procédé selon la revendication 5, caractérisé en ce que, chacune des données d'image d'origine comportant (N') données de pixel d'origine successives et chaque donnée d'image souhaitée ayant (M') données de pixel souhaitées successives, (M') étant supérieur à (N') 6. Method according to claim 5, characterized in that each of the original image data comprising (N ') successive original pixel data and each desired image data having (M') desired pixel data successive, (M ') being greater than (N') on prévoit un second interpolateur linéaire (9) ; et a second linear interpolator (9) is provided; and on commande le second interpolateur linéaire (9) pour effectuer une interpolation linéaire entre la (n' )i et la (n'+l)i-- données de pixel d'origine de chacune des données d'image d'origine de façon à produire une donnée de pixel interpolée résiduelle insérée entre les données d'origine lorsque la division de (M'-N') par (N'-l) donne un reste (S') et lorsque (n') est un nombre minimum qui remplit la condition (n'+l)*(S') 2 (s')*(N'), où (s') varie de 1 à (S'). the second linear interpolator (9) is controlled to perform a linear interpolation between the (n ') i and the (n' + l) i-- original pixel data of each of the original image data so producing residual interpolated pixel data inserted between the original data when the division of (M'-N ') by (N'-l) gives a remainder (S') and when (n ') is a minimum number which fulfills the condition (n '+ l) * (S') 2 (s ') * (N'), where (s ') varies from 1 to (S'). 7. Procédé selon la revendication 6, caractérisé en ce qu'on commande le second interpolateur linéaire (9) pour effectuer une interpolation linéaire entre la (n' )iêle et la (n'+l)i' données d'image d'origine pour obtenir un nombre additionnel (T') de données d'image interpolées successives qui sont insérées lorsque (M'-N') est supérieur à (N'-l), le nombre (T') étant le quotient de la division de (M'-N') par (N'-1). 7. Method according to claim 6, characterized in that the second linear interpolator (9) is controlled to perform a linear interpolation between the (n ') island and the (n' + l) i 'image data of' origin to obtain an additional number (T ') of successive interpolated image data which are inserted when (M'-N') is greater than (N'-l), the number (T ') being the quotient of the division of (M'-N ') by (N'-1). 8. Procédé selon la revendication 6, caractérisé en ce que le second interpolateur linéaire (9) est un additionneur bilinéaire. 8. Method according to claim 6, characterized in that the second linear interpolator (9) is a bilinear adder. 9. Procédé selon la revendication 6, caractérisé en ce que, au cours de l'étape de commande 9. Method according to claim 6, characterized in that, during the ordering step (II-1) on mémorise le nombre (S') dans un registre de données (56) (II-1) the number (S ') is stored in a data register (56) (II-2) on additionne le nombre (S') et le nombre mémorisé dans le registre de données (56) pour obtenir une somme (II-2) add the number (S ') and the number stored in the data register (56) to obtain a sum (11-3) on compare la somme avec (N') (11-3) we compare the sum with (N ') (II-4) si la somme est au moins égale à (N'), on commande le second interpolateur linéaire (9) pour obtenir la donnée d'image interpolée résiduelle qui est insérée entre la (n')'a"a et la (n+l)iême données d'image d'origine, on soustrait le nombre (N') de la somme et on mémorise la différence dans le registre de données (56) ; et, si la somme est inférieure à (N'), on mémorise la somme dans le registre de données (56) ; et (II-4) if the sum is at least equal to (N '), the second linear interpolator (9) is controlled to obtain the residual interpolated image data which is inserted between the (n') 'a "a and the (n + l) th same original image data, the number (N ') is subtracted from the sum and the difference is stored in the data register (56); and, if the sum is less than (N '), the sum is stored in the data register (56); and (II-5) on répète les étapes (II-2) à (II-4) en incrémentant (n') de 1 jusqu'à ce que (n') soit égal à (N'). (II-5) repeating steps (II-2) to (II-4) by incrementing (n ') by 1 until (n') is equal to (N '). 10. Procédé selon la revendication 5, caractérisé en ce que, chacune des données d'image d'origine ayant un nombre (N') données de pixel d'origine successives et chacune des données d'image désirée ayant (M') données de pixel souhaitées successives, (M') étant inférieur à (N'), de plus 10. Method according to claim 5, characterized in that each of the original image data having a number (N ') of successive original pixel data and each of the desired image data having (M') data of successive desired pixels, (M ') being less than (N'), moreover (III-1) on mémorise une des données d'image d'origine dans une mémoire (3) (III-1) one of the original image data is stored in a memory (3) (III-2) on prévoit un générateur d'adresse (37) qui commande la mémoire (3) pour fournir en sortie une première donnée de pixel d'origine  (III-2) an address generator (37) is provided which controls the memory (3) to output a first original pixel datum (III-3) on mémorise un nombre (U'), qui est le reste de la division de (N') par (M'), dans un registre de données (56) (III-3) a number (U '), which is the remainder of the division of (N') by (M '), is stored in a data register (56) (111-4) on ajoute le nombre (U') au nombre mémorisé dans le registre de données (56) pour obtenir une somme (111-4) the number (U ') is added to the number stored in the data register (56) to obtain a sum (III-5) on compare la somme à (M') (III-5) we compare the sum to (M ') (III-6) on active le générateur d'adresse (37) pour commander la mémoire (3) de façon qu'elle fournisse en sortie une autre donnée de pixel d'origine, cette autre donnée étant décalée d'une donnée de pixel d'origine immédiatement précédente fournie à la sortie de la mémoire (3) d'un nombre (V') égal au quotient de la division de (N') par (M') lorsque la somme est inférieure à (M'), et du nombre (V'+1) lorsque la somme est au moins égale à (M') ; (III-6) the address generator (37) is activated to control the memory (3) so that it outputs another original pixel data, this other data being offset by a pixel data immediately preceding origin supplied to the memory output (3) of a number (V ') equal to the quotient of the division of (N') by (M ') when the sum is less than (M'), and the number (V '+ 1) when the sum is at least equal to (M'); (111-7) si la somme est au moins égale à (M'), on soustrait (M') de la somme et on mémorise la différence dans le registre de données (56) ; et, si la somme est inférieure à (M'), on mémorise la somme dans le registre de données (56) ; et (111-7) if the sum is at least equal to (M '), we subtract (M') from the sum and the difference is stored in the data register (56); and, if the sum is less than (M '), the sum is stored in the data register (56); and (III-8) on répète les étapes (111-4) à (111-7) jusqu'à ce que (M') données de pixel d'origine soient apparues en sortie de la mémoire (3). (III-8) the steps (111-4) to (111-7) are repeated until (M ') original pixel data have appeared at the output of the memory (3). 11. Procédé selon la revendication 1, caractérisé en ce que la donnée d'image d'origine est une donnée de pixel d'origine d'une ligne de balayage. 11. Method according to claim 1, characterized in that the original image data is an original pixel data of a scanning line. 12. Procédé de traitement d'une image numérique d'origine pour obtenir une image numérique désirée à échelle modifiée de façon uniforme, dans laquelle l'image numérique d'origine a (N) données d'image successives et l'image numérique désirée a (M) données d'image successives, (M) étant inférieur à (N), caractérisé en ce qu'il comprend les étapes suivantes 12. Method for processing an original digital image to obtain a desired digital image on a uniformly modified scale, in which the original digital image has (N) successive image data and the desired digital image a (M) successive image data, (M) being less than (N), characterized in that it comprises the following steps (I-l) on mémorise les données d'image d'origine dans une mémoire (2) (I-1) the original image data is stored in a memory (2) (1-2) on prévoit un générateur d'adresse (37) qui commande la mémoire (2) de façon à fournir en sortie une première donnée d'image d'origine (1-2) an address generator (37) is provided which controls the memory (2) so as to output a first original image data (I-3) on mémorise un nombre (U), qui est le reste de la division de (N) par (M), dans un registre de données (56) (I-3) a number (U), which is the remainder of the division of (N) by (M), is stored in a data register (56) (I-4) on ajoute le nombre (U) au nombre mémorisé dans le registre de données (56) pour obtenir une somme (I-4) we add the number (U) to the number stored in the data register (56) to obtain a sum (1-5) on compare la somme avec (M) (1-5) we compare the sum with (M) (I-6) on active le générateur d'adresse (37) pour commander la mémoire (2) de façon qu'elle fournisse en sortie une autre donnée d'image d'origine, décalée d'une donnée d'image d'origine immédiatement précédente fournie par la mémoire (2) d'un nombre (V) égal au quotient de la division de (N) par le nombre (M) lorsque la somme est inférieure à (M), et par le nombre (V+1) lorsque la somme est au moins égale à (M) (I-6) the address generator (37) is activated to control the memory (2) so that it outputs another original image data, offset by an image data of immediately preceding origin provided by the memory (2) of a number (V) equal to the quotient of the division of (N) by the number (M) when the sum is less than (M), and by the number (V + 1) when the sum is at least equal to (M) (I-7) si la somme est au moins égale à (M), on soustrait le nombre (M) de la somme et on mémorise la différence dans le registre de données ; et, si la somme est inférieure à (M), on mémorise la somme dans le registre de données (56) ; et (I-7) if the sum is at least equal to (M), the number (M) is subtracted from the sum and the difference is stored in the data register; and, if the sum is less than (M), the sum is stored in the data register (56); and (I-8) on répète les étapes (I-4) à (I-7) jusqu'à ce que (M) données d'image d'origine aient été fournies à la sortie de la mémoire. (I-8) repeating steps (I-4) to (I-7) until (M) original image data has been supplied to the memory output. 13. Procédé selon la revendication 12, caractérisé en ce que la donnée d'image d'origine est une donnée de ligne de balayage. 13. Method according to claim 12, characterized in that the original image data is a scanning line data. 14. Procédé selon la revendication 13, caractérisé en ce que, chacune des données d'image d'origine comportant (N') données de pixel d'origine successives et chaque donnée d'image souhaitée ayant (M') données de pixel souhaitées successives, (M') étant supérieur à (N'), ladite méthode étant également caractérisée en ce que 14. Method according to claim 13, characterized in that each of the original image data comprising (N ') successive original pixel data and each desired image data having (M') desired pixel data successive, (M ') being greater than (N'), said method also being characterized in that on prévoit un interpolateur linéaire (9) ; et a linear interpolator (9) is provided; and on commande l'interpolateur linéaire (9) pour effectuer une interpolation linéaire entre la (n' )iêao et la (n'+l)"10 données de pixel d'origine de chacune des données d'image d'origine de façon à produire une donnée de pixel interpolée résiduelle insérée entre elles lorsque la division de (M'-N') par (N'-1) donne un reste (S') et lorsque (n') est un nombre minimum qui remplit la condition (n'+l)*(S') 2 (s')*(N'), où (s') varie de 1 à (S').  the linear interpolator (9) is controlled to perform a linear interpolation between the (n ') iêao and the (n' + l) "10 original pixel data of each of the original image data so as to produce a residual interpolated pixel data inserted between them when the division of (M'-N ') by (N'-1) gives a remainder (S') and when (n ') is a minimum number which fulfills the condition ( n '+ l) * (S') 2 (s ') * (N'), where (s ') varies from 1 to (S'). 15. Procédé selon la revendication 14, caractérisé en ce qu'on commande l'interpolateur linéaire (9) pour effectuer une interpolation linéaire entre la (n' )"Y et la (n'+l)iè données de pixel d'origine de chaque donnée d'image d'origine pour obtenir un nombre additionnel (T') de données de pixel interpolées successives qui sont insérées lorsque (M'-N') est supérieur à (N'-1), le nombre (T') étant le quotient de la division de (M'-N') par (N'-l).  15. Method according to claim 14, characterized in that the linear interpolator (9) is controlled to perform a linear interpolation between the (n ') "Y and the (n' + l) th original pixel data of each original image data to obtain an additional number (T ') of successive interpolated pixel data which are inserted when (M'-N') is greater than (N'-1), the number (T ' ) being the quotient of the division of (M'-N ') by (N'-l). 16. Procédé selon la revendication 15, caractérisé de plus en ce que l'interpolateur linéaire (9) est un additionneur bilinéaire. 16. The method of claim 15, further characterized in that the linear interpolator (9) is a bilinear adder. 17. Procédé selon la revendication 14, caractérisé en ce que, au cours de l'étape de commande 17. Method according to claim 14, characterized in that, during the control step (II-1) on mémorise le nombre (S') dans un registre de données (56) (II-1) the number (S ') is stored in a data register (56) (II-2) on additionne le nombre (S') et le nombre mémorisé dans le registre de données (56) pour obtenir une somme (II-2) add the number (S ') and the number stored in the data register (56) to obtain a sum (II-3) on compare la somme de l'étape (II-2) et (N'); (II-3) the sum of step (II-2) and (N ') are compared; (II-4) si la somme de l'étape (II-2) est au moins égale à (N'), on commande l'interpolateur linéaire (9) pour obtenir la donnée de pixel interpolée résiduelle qui est insérée entre la (n' )iême et la (n'+l)im' données de pixel d'origine, on soustrait le nombre (N') de la somme de l'étape (II-2) et on mémorise la différence obtenue dans le registre de données (56) ; et, si la somme de l'étape (II-2) est inférieure à (N'), on mémorise la somme dans le registre de données (56) ; et (II-4) if the sum of step (II-2) is at least equal to (N '), the linear interpolator (9) is controlled to obtain the residual interpolated pixel data which is inserted between the ( n ') same and the (n' + l) im 'original pixel data, we subtract the number (N') from the sum of step (II-2) and we memorize the difference obtained in the register data (56); and, if the sum of step (II-2) is less than (N '), the sum is stored in the data register (56); and (II-5) on répète les étapes (II-2) à (II-4) en incrémentant (n') chaque fois de 1 jusqu'à ce que (n') soit égal à (N'). (II-5) repeating steps (II-2) to (II-4) by incrementing (n ') each time by 1 until (n') is equal to (N '). 18. Procédé selon la revendication 13, caractérisé en ce que, chacune des données d'image d'origine ayant un nombre (N') données de pixel d'origine successives et chacune des données d'image désirée ayant (M') données de pixel souhaitées successives, (M') étant inférieur à (N'), de plus 18. The method according to claim 13, characterized in that each of the original image data having a number (N ') of successive original pixel data and each of the desired image data having (M') data of successive desired pixels, (M ') being less than (N'), moreover (III-1) on mémorise une des données d'image d'origine dans une mémoire (3) ; (III-1) one of the original image data is stored in a memory (3); (111-2) on prévoit un générateur d'adresse (37) qui commande la mémoire (3) pour fournir en sortie une première donnée de pixel d'origine (111-2) an address generator (37) is provided which controls the memory (3) to output a first original pixel data (III-3) on mémorise un nombre (U'), qui est le reste de la division de (N') par (M'), dans un registre de données (56) ; (III-3) a number (U '), which is the remainder of the division of (N') by (M '), is stored in a data register (56); (111-4) on ajoute le nombre (U') au nombre mémorisé dans le registre de données (56) pour obtenir une somme ; (111-4) adding the number (U ') to the number stored in the data register (56) to obtain a sum; (III-5) on compare la somme de l'étape (III-4) à (M') ;; (III-5) the sum of step (III-4) is compared to (M ') ;; (III-6) on active le générateur d'adresse (37) pour commander la mémoire (3) de façon qu'elle fournisse en sortie une autre donnée de pixel d'origine, cette autre donnée étant décalée d'une donnée de pixel d'origine immédiatement précédente fournie à la sortie de la mémoire (3) d'un nombre (V') égal au quotient de la division de (N') par (M') lorsque la somme est inférieure à (M'), et du nombre (V'+1) lorsque la somme est au moins égale à (M') (III-6) the address generator (37) is activated to control the memory (3) so that it outputs another original pixel data, this other data being offset by a pixel data immediately preceding origin supplied to the memory output (3) of a number (V ') equal to the quotient of the division of (N') by (M ') when the sum is less than (M'), and the number (V '+ 1) when the sum is at least equal to (M') (III-7) si la somme de l'étape (III-4) est au moins égale à (M'), on soustrait (M') de la somme et on mémorise la différence dans le registre de données (56) ; et, si la somme de l'étape (III-4) est inférieure au nombre (M'), on mémorise la somme dans le registre de données (56) ; et (III-7) if the sum of step (III-4) is at least equal to (M '), we subtract (M') from the sum and the difference is stored in the data register (56); and, if the sum of step (III-4) is less than the number (M '), the sum is stored in the data register (56); and (III-8) on répète les étapes (III-4) à (III-7) jusqu'à ce que (M') données de pixel d'origine soient apparues en sortie de la mémoire (3).  (III-8) repeating steps (III-4) to (III-7) until (M ') original pixel data have appeared at the output of the memory (3). 19. Procédé selon la revendication 12, caractérisé en ce que la donnée d'image d'origine est une donnée de pixel d'origine d'une ligne de balayage. 19. Method according to claim 12, characterized in that the original image data is an original pixel data of a scanning line. 20. Dispositif de traitement d'une image numérique d'origine pour obtenir une image numérique souhaitée à échelle modifiée de façon uniforme, l'image numérique d'origine ayant (N) données d'image d'origine successives, l'image numérique souhaitée ayant (M) données d'image souhaitées successives et (M) étant supérieur à (N), caractérisé par 20. Device for processing an original digital image to obtain a desired digital image on a uniformly modified scale, the original digital image having (N) successive original image data, the digital image desired having (M) successive desired image data and (M) being greater than (N), characterized by un premier interpolateur linéaire (5) ; et a first linear interpolator (5); and des premiers moyens de contrôle (6), reliés au premier interpolateur linéaire (5), pour commander l'interpolateur linéaire (5) de façon qu'il effectue une interpolation linéaire entre la (n)'é"' et la (n+l)'H données d'image d'origine afin de produire une donnée d'image interpolée résiduelle insérée entre les données d'interpolation si la division de (M-N) par (N-l) donne un reste (S) et si (n) est un nombre minimum qui remplit la condition (n+l)*(S) 2 (s)*(N), où (s) varie de 1 à (S). first control means (6), connected to the first linear interpolator (5), for controlling the linear interpolator (5) so that it performs a linear interpolation between the (n) 'é "' and the (n + l) 'H original image data in order to produce a residual interpolated image data inserted between the interpolation data if the division of (MN) by (Nl) gives a remainder (S) and if (n) is a minimum number which fulfills the condition (n + l) * (S) 2 (s) * (N), where (s) varies from 1 to (S). 21. Dispositif selon la revendication 20, caractérisé en ce que les premiers moyens de contrôle (6) commandent de plus le premier interpolateur linéaire (5) de façon à effectuer une interpolation linéaire entre la (n)i* et la (n+l)'" données d'image d'origine de façon à produire un nombre supplémentaire (T) de données d'image interpolées successives insérées entre les données d'interpolation lorsque (M-N) est supérieur à (N-1), le nombre (T) étant égal au quotient de la division de (M-N) par (N-l).  21. Device according to claim 20, characterized in that the first control means (6) also control the first linear interpolator (5) so as to perform a linear interpolation between the (n) i * and the (n + l ) '"original image data so as to produce an additional number (T) of successive interpolated image data inserted between the interpolation data when (MN) is greater than (N-1), the number ( T) being equal to the quotient of the division of (MN) by (Nl). 22. Dispositif selon la revendication 21, caractérisé en ce que le premier interpolateur linéaire (5) est un additionneur bilinéaire. 22. Device according to claim 21, characterized in that the first linear interpolator (5) is a bilinear adder. 23. Dispositif selon la revendication 20, caractérisé en ce que la donnée d'image d'origine est constituée par une donnée de ligne de balayage.  23. Device according to claim 20, characterized in that the original image data is constituted by a scanning line data. 24. Dispositif selon la revendication 23, caractérisé en ce que, chacune des données d'image d'origine ayant (N') données de pixel d'origine successives et chacune des données d'image souhaitée ayant (M') données de pixel souhaitées successives, (M') étant supérieur à (N'), il comporte de plus 24. Device according to claim 23, characterized in that each of the original image data having (N ') successive original pixel data and each of the desired image data having (M') pixel data desired successive, (M ') being greater than (N'), it further comprises un second interpolateur linéaire (9) ; et a second linear interpolator (9); and des seconds moyens de contrôle (10), connectés au second interpolateur linéaire (9) pour commander le second interpolateur linéaire (9) de façon qu'il effectue une interpolation linéaire entre les (n' )iêle et (n'+l)''" données d'image d'origine afin de produire une donnée d'image interpolée résiduelle insérée entre les données d'interpolation lorsque la division de (M'-N') par (N'-l) donne un reste (S') et lorsque (n') est un nombre minimum qui remplit la condition (n'+l)*(S') 2 (s')*(N'), où (s') varie de 1 à (S'). second control means (10), connected to the second linear interpolator (9) for controlling the second linear interpolator (9) so that it performs a linear interpolation between the (n ') island and (n' + l) ' '"original image data to produce residual interpolated image data inserted between the interpolation data when dividing (M'-N') by (N'-l) gives a remainder (S ' ) and when (n ') is a minimum number which fulfills the condition (n' + l) * (S ') 2 (s') * (N'), where (s') varies from 1 to (S ') . 25. Dispositif selon la revendication 24, caractérisé en ce que les seconds moyens de contrôle (10) commandent de plus le second interpolateur linéaire (9) de façon à effectuer une interpolation linéaire entre la (n')i- et la (n'+l)'"' données d'image d'origine de façon à produire un nombre supplémentaire (T') de données d'image interpolées successives insérées entre les données d'interpolation lorsque (M'-N') est supérieur à (N'-i), le nombre (T') étant égal au quotient de la division de (M'-N') par (N'-1). 25. Device according to claim 24, characterized in that the second control means (10) further control the second linear interpolator (9) so as to perform a linear interpolation between the (n ') i- and the (n' + l) '"' original image data so as to produce an additional number (T ') of successive interpolated image data inserted between the interpolation data when (M'-N') is greater than ( N'-i), the number (T ') being equal to the quotient of the division of (M'-N') by (N'-1). 26. Dispositif selon la revendication 25, caractérisé en ce que le second interpolateur linéaire (9) est un additionneur bilinéaire. 26. Device according to claim 25, characterized in that the second linear interpolator (9) is a bilinear adder. 27. Dispositif selon la revendication 23, caractérisé en ce que, chacune des données d'image d'origine ayant (N' ) données de pixel successives d'origine alors que l'image numérique souhaitée a (M') données d'image successives et (M') étant inférieur à (N'), le dispositif comporte de plus  27. Device according to claim 23, characterized in that each of the original image data having (N ') successive original pixel data while the desired digital image has (M') image data successive and (M ') being less than (N'), the device also comprises une mémoire (3) de stockage d'une des données d'image d'origine ; a memory (3) for storing one of the original image data; un générateur d'adresse (37), relié à la mémoire (3), pour commander la mémoire (3) de façon qu'elle fournisse une première donnée de pixel d'origine an address generator (37), connected to the memory (3), for controlling the memory (3) so that it supplies a first original pixel data des moyens de génération (33) pour générer un nombre (U') qui est le reste de la division de (N') par (M') generation means (33) for generating a number (U ') which is the remainder of the division of (N') by (M ') un registre de données (56) a data register (56) des moyens additionneurs (43) reliés aux moyens de génération (33) et au registre de données (56), prévus pour additionner (U') et le nombre stocké dans le registre de données (56) de façon à obtenir une somme ; et adding means (43) connected to the generating means (33) and to the data register (56), provided for adding (U ') and the number stored in the data register (56) so as to obtain a sum; and des moyens de calcul (44), reliés aux moyens additionneurs (43), au générateur d'adresse (37) et au registre de données (56), destinés à comparer la somme et le nombre (M') et à activer le générateur d'adresse (37) de façon à commander la mémoire (3) de façon qu'elle fournisse en sortie une autre donnée d'image d'origine qui est décalée de la donnée d'image d'origine immédiatement précédente apparue en sortie de la mémoire (3) par un nombre (V') égal au quotient de la division de (N') par (M') lorsque la somme est inférieure à (M') et par un nombre (V'+1) lorsque la somme est au moins égale au nombre (M') ; calculation means (44), connected to the adding means (43), the address generator (37) and the data register (56), intended to compare the sum and the number (M ') and to activate the generator address (37) so as to control the memory (3) so that it outputs another original image data which is offset from the immediately preceding original image data which appeared at the output of the memory (3) by a number (V ') equal to the quotient of the division of (N') by (M ') when the sum is less than (M') and by a number (V '+ 1) when the sum is at least equal to the number (M '); lesdits moyens de calcul (44) mémorisant la différence entre le nombre (M') et la somme dans le registre de données (56) lorsque la somme est au moins égale à (M') et mémorisant la somme dans le registre de données (56) lorsque la somme est inférieure à (M'). said calculation means (44) memorizing the difference between the number (M ') and the sum in the data register (56) when the sum is at least equal to (M') and memorizing the sum in the data register ( 56) when the sum is less than (M '). 28. Dispositif selon la revendication 20, caractérisé en ce que la donnée d'image d'origine est constituée par des données de pixel d'une ligne de balayage. 28. Device according to claim 20, characterized in that the original image data consists of pixel data of a scanning line. 29. Dispositif de traitement d'une image numérique d'origine pour obtenir une image numérique souhaitée à échelle modifiée de façon uniforme, l'image numérique d'origine ayant (N) données d'image successives d'origine, l'image numérique souhaitée ayant (M) données d'image successives et (M) étant inférieur à (N), caractérisé en ce qu'il comprend 29. Device for processing an original digital image to obtain a desired digital image on a uniformly modified scale, the original digital image having (N) successive original image data, the digital image desired having (M) successive image data and (M) being less than (N), characterized in that it comprises une première mémoire (2) de stockage des données d'image d'origine a first memory (2) for storing the original image data un premier générateur d'adresse (37), relié à la première mémoire (2), pour commander la première mémoire (2) de façon à fournir une première donnée parmi les données d'image d'origine a first address generator (37), connected to the first memory (2), for controlling the first memory (2) so as to supply a first data item from the original image data des premiers moyens de génération (33) d'un nombre (U) qui est le reste de la division de (N) par (M) first means of generation (33) of a number (U) which is the remainder of the division of (N) by (M) un premier registre de données (56) a first data register (56) des premiers moyens additionneurs (43) reliés aux premiers moyens de génération (53) et au premier registre de données (56), prévus pour additionner (U) et le nombre stocké dans le premier registre de données (56) de façon à obtenir une somme ; et first adding means (43) connected to the first generation means (53) and to the first data register (56), provided for adding (U) and the number stored in the first data register (56) so as to obtain a sum; and des premiers moyens de calcul (44), reliés aux premiers moyens additionneurs (43), au premier générateur d'adresse (37) et au premier registre de données (56), destinés à comparer la somme et le nombre (M) et à activer le premier générateur d'adresse (37) pour commander la première mémoire (2) de façon qu'elle fournisse en sortie une autre donnée d'image d'origine qui est décalée de la donnée d'image d'origine immédiatement précédente apparue en sortie de la première mémoire (2) d'un nombre (V) égal au quotient de la division de (N) par (M) lorsque la somme est inférieure à (M) et d'un nombre (V+1) lorsque la somme est au moins égale à (M) first calculation means (44), connected to the first adding means (43), to the first address generator (37) and to the first data register (56), intended to compare the sum and the number (M) and to activate the first address generator (37) to control the first memory (2) so that it outputs another original image data which is offset from the immediately preceding original image data which appeared at the output of the first memory (2) of a number (V) equal to the quotient of the division of (N) by (M) when the sum is less than (M) and of a number (V + 1) when the sum is at least equal to (M) lesdits premiers moyens de calcul (44) mémorisant la différence entre le nombre (M) et la somme dans le premier registre de données (56) si la somme est au moins égale à (M) et mémorisant la somme dans le premier registre de données (56) si la somme est inférieure à (M). said first calculating means (44) storing the difference between the number (M) and the sum in the first data register (56) if the sum is at least equal to (M) and storing the sum in the first data register (56) if the sum is less than (M). 30. Dispositif selon la revendication 29, caractérisé en ce que la donnée d'image d'origine est constituée par les données de ligne de balayage.  30. Device according to claim 29, characterized in that the original image data consists of the scan line data. 31. Dispositif selon la revendication 30, dans lequel chacune des données d'image d'origine ayant (N') données de pixel d'origine successives et chacune des données d'image souhaitée ayant (M') données de pixel souhaitées successives, (M') étant supérieur à (N'), il comporte de plus 31. Device according to claim 30, in which each of the original image data having (N ') successive original pixel data and each of the desired image data having (M') successive desired pixel data, (M ') being greater than (N'), it further comprises un interpolateur linéaire (9) ; et a linear interpolator (9); and des moyens de contrôle (10), connectés à l'interpolateur linéaire (9) pour commander l'interpolateur linéaire (9) de façon qu'il effectue une interpolation linéaire entre les (nI)iêle et (n+i)iêae données d'image d'origine afin de produire une donnée d'image interpolée résiduelle insérée entre les données d'interpolation lorsque la division de (M'-N') par (N'-l) donne un reste (S') et lorsque (n') est un nombre minimum qui remplit la condition (n'+l)*(S') 2 (s')*(N'), où (s') varie de 1 à (S'). control means (10), connected to the linear interpolator (9) for controlling the linear interpolator (9) so that it performs a linear interpolation between the (nI) and (n + i) iêae data d 'original image to produce residual interpolated image data inserted between the interpolation data when the division of (M'-N') by (N'-l) gives a remainder (S ') and when ( n ') is a minimum number which fulfills the condition (n' + l) * (S ') 2 (s') * (N'), where (s') varies from 1 to (S '). 32. Dispositif selon la revendication 31, caractérisé en ce que les moyens de contrôle (10) commandent de plus l'interpolateur linéaire (9) de façon à effectuer une interpolation linéaire entre la (n' )ièle et la (n'+l)i" données d'image d'origine de façon à produire un nombre supplémentaire (T') de données d'image interpolées successives insérées entre les données d'interpolation lorsque (M'-N') est supérieur à (N'-l), le nombre (T') étant égal au quotient de la division de (M'-N') par (N'-l).  32. Device according to claim 31, characterized in that the control means (10) also control the linear interpolator (9) so as to perform a linear interpolation between the (n ') island and the (n' + l ) i "original image data so as to produce an additional number (T ') of successive interpolated image data inserted between the interpolation data when (M'-N') is greater than (N'- l), the number (T ') being equal to the quotient of the division of (M'-N') by (N'-l). 33. Dispositif selon la revendication 32, caractérisé de plus en ce que l'interpolateur linéaire (9) est un additionneur bilinéaire. 33. Device according to claim 32, further characterized in that the linear interpolator (9) is a bilinear adder. 34. Dispositif selon la revendication 30, dans lequel chacune des données d'image d'origine ayant (N') données de pixel successives d'origine alors que l'image numérique souhaitée a (M') données d'image successives et (M') étant inférieur à (N'), le dispositif comporte de plus  34. Device according to claim 30, in which each of the original image data having (N ') successive original pixel data whereas the desired digital image has (M') successive image data and ( M ') being less than (N'), the device also comprises une seconde mémoire (3) de stockage d'une des données d'image d'origine  a second memory (3) for storing one of the original image data un second générateur d'adresse (37), relié à la seconde mémoire (3), pour commander la seconde mémoire (3) de façon qu'elle fournisse une première donnée de pixel d'origine a second address generator (37), connected to the second memory (3), for controlling the second memory (3) so that it supplies a first original pixel data des seconds moyens de génération (33) pour générer un nombre (U') qui est le reste de la division de (N') par (M') second generation means (33) for generating a number (U ') which is the remainder of the division of (N') by (M ') un second registre de données (56) ::  a second data register (56): des seconds moyens additionneurs (43) reliés aux seconds moyens de génération (33) et au second registre de données (56), prévus pour additionner (U') et le nombre stocké dans le second registre de données (56) de façon à obtenir une somme ; et second adding means (43) connected to the second generation means (33) and to the second data register (56), provided for adding (U ') and the number stored in the second data register (56) so as to obtain an amount ; and des seconds moyens de calcul (44), reliés aux seconds moyens additionneurs (43), au second générateur d'adresse (37) et au second registre de données (56), destinés à comparer la somme et le nombre (M') et à activer le second générateur d'adresse (37) de façon à commander la seconde mémoire (3) de façon qu'elle fournisse en sortie une autre donnée d'image d'origine qui est décalée de la donnée d'image d'origine immédiatement précédente apparue en sortie de la seconde mémoire (3) par un nombre (V') égal au quotient de la division de (N') par (M') lorsque la somme est inférieure à (M') et par un nombre (V'+1) lorsque la somme est au moins égale au nombre (M') second calculation means (44), connected to the second adding means (43), to the second address generator (37) and to the second data register (56), intended to compare the sum and the number (M ') and activating the second address generator (37) so as to control the second memory (3) so that it outputs another original image data which is offset from the original image data immediately preceding appeared at the output of the second memory (3) by a number (V ') equal to the quotient of the division of (N') by (M ') when the sum is less than (M') and by a number ( V '+ 1) when the sum is at least equal to the number (M') lesdits seconds moyens de calcul (44) mémorisant la différence entre le nombre (M') et la somme dans le second registre de données (56) lorsque la somme est au moins égale à (M') et mémorisant la somme dans le second registre de données (56) lorsque la somme est inférieure à (M'). said second calculating means (44) memorizing the difference between the number (M ') and the sum in the second data register (56) when the sum is at least equal to (M') and memorizing the sum in the second register data (56) when the sum is less than (M '). 35. Dispositif selon la revendication 29, caractérisé de plus en ce que la donnée d'image d'origine est constituée par des données de pixel d'une ligne de balayage.  35. The device of claim 29, further characterized in that the original image data is constituted by pixel data from a scan line.
FR9509086A 1995-07-26 1995-07-26 METHOD AND DEVICE FOR CHANGING THE SCALE OF A DIGITAL IMAGE IN A UNIFORM WAY Expired - Fee Related FR2737324B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR9509086A FR2737324B1 (en) 1995-07-26 1995-07-26 METHOD AND DEVICE FOR CHANGING THE SCALE OF A DIGITAL IMAGE IN A UNIFORM WAY
FR9609098A FR2737325A1 (en) 1995-07-26 1996-07-19 Digital image scale uniform alteration circuit for image scaling system - has vertical and horizontal scaling controllers, with the vertical controller using sweep line storage and buffers which can have horizontal points added

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9509086A FR2737324B1 (en) 1995-07-26 1995-07-26 METHOD AND DEVICE FOR CHANGING THE SCALE OF A DIGITAL IMAGE IN A UNIFORM WAY

Publications (2)

Publication Number Publication Date
FR2737324A1 true FR2737324A1 (en) 1997-01-31
FR2737324B1 FR2737324B1 (en) 1997-09-26

Family

ID=9481402

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9509086A Expired - Fee Related FR2737324B1 (en) 1995-07-26 1995-07-26 METHOD AND DEVICE FOR CHANGING THE SCALE OF A DIGITAL IMAGE IN A UNIFORM WAY

Country Status (1)

Country Link
FR (1) FR2737324B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0367418A2 (en) * 1988-10-31 1990-05-09 International Business Machines Corporation Display system interpolators
WO1990016035A2 (en) * 1989-06-16 1990-12-27 Eastman Kodak Company Digital image interpolator
EP0477884A2 (en) * 1990-09-26 1992-04-01 Matsushita Electric Industrial Co., Ltd. Horizontal line interpolation circuit and image pickup apparatus including it
EP0574245A2 (en) * 1992-06-11 1993-12-15 International Business Machines Corporation Method and apparatus for variable expansion and variable shrinkage of an image

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0367418A2 (en) * 1988-10-31 1990-05-09 International Business Machines Corporation Display system interpolators
WO1990016035A2 (en) * 1989-06-16 1990-12-27 Eastman Kodak Company Digital image interpolator
EP0477884A2 (en) * 1990-09-26 1992-04-01 Matsushita Electric Industrial Co., Ltd. Horizontal line interpolation circuit and image pickup apparatus including it
EP0574245A2 (en) * 1992-06-11 1993-12-15 International Business Machines Corporation Method and apparatus for variable expansion and variable shrinkage of an image

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HASAN S M R: "A novel LSI architecture for image scaling", PROCEEDINGS OF TENCON 87: 1987 IEEE REGION 10 CONFERENCE 'COMPUTERS AND COMMUNICATIONS TECHNOLOGY TOWARD 2000' (CAT. NO.87CH2423-2), SEOUL, SOUTH KOREA, 25-28 AUG. 1987, 1987, NEW YORK, NY, USA, IEEE, USA, pages 110 - 114 vol.1 *
WEIMAN C F R: "Continuous anti-aliased rotation and zoom of raster images", SIGGRAPH 1980 CONFERENCE PROCEEDINGS. SEVENTH ANNUAL CONFERENCE ON COMPUTER GRAPHICS AND INTERACTIVE TECHNIQUES, SEATTLE, WA, USA, 14-18 JULY 1980, vol. 14, no. 3, ISSN 0097-8930, COMPUTER GRAPHICS, JULY 1980, USA, pages 286 - 293 *

Also Published As

Publication number Publication date
FR2737324B1 (en) 1997-09-26

Similar Documents

Publication Publication Date Title
EP0492702B1 (en) Correlation device
FR2547144A1 (en)
EP0368731B1 (en) Process and circuit for image representation signal filtration
EP0858066A1 (en) Method and device for converting the digital image rate
EP0441692B1 (en) Control process for a matrix screen comprising two independent parts and device to carry it out
FR2617307A1 (en) MICROCALCULATOR COMPRISING PERFECTED ADDRESSING POSSIBILITIES
EP0443921B1 (en) Method of processing digital control data associated to an HD-MAC video signal
EP1746486B1 (en) Process for detecting movement of an entity fitted with an image sensor and a device for implementing it
FR2543721A1 (en) DEVICE FOR GENERATING IMAGES ON A SCREEN IN A COMPUTER-CONTROLLED VISUALIZATION SYSTEM
FR2737324A1 (en) Uniform alteration of scale of digital image - inserts interpolated data when enlarging image only when there is space to insert it smoothly into image data
FR2771229A1 (en) Decoder architecture
EP0005672B1 (en) Device for television titling apparatus
FR2860376A1 (en) METHOD AND DEVICE FOR ENLARGING A VIDEO IMAGE
FR2535561A1 (en) VIDEO SIGNAL PROCESSING SYSTEM
FR2737325A1 (en) Digital image scale uniform alteration circuit for image scaling system - has vertical and horizontal scaling controllers, with the vertical controller using sweep line storage and buffers which can have horizontal points added
EP0619552A1 (en) Object motion estimation device and process in animated successive pictures subdivided in bidimensional image element blocs
EP0476592A2 (en) Address generator for the data storage of a processor
FR2498035A1 (en) METHOD AND DEVICE FOR SYNCHRONIZING MESSAGES
EP0410909B1 (en) Apparatus for converting a line scan into a stripe-wise vertical sawtooth scan
EP0400734B1 (en) Programmable binary signal delay device and application to an error correcting code device
EP0640910B1 (en) Control process for a first in - first out circuit and device to carry it out
FR2818483A1 (en) CONVERGENCE CORRECTION DEVICE AND METHOD
EP0615374B1 (en) Process and apparatus for echo processing between two mutually coupled transmission paths
FR2695773A1 (en) Frequency division counting circuit and synthesizer equipped with such a circuit.
CA2359198C (en) Arithmetic unit for carrying out a cryptographic protocol

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20090331