FR2639740A1 - METHOD FOR PROCESSING AN IMAGE TO GIVE A ZOOMED CORRESPONDENCE, AND SYSTEM FOR CARRYING OUT SAID METHOD - Google Patents

METHOD FOR PROCESSING AN IMAGE TO GIVE A ZOOMED CORRESPONDENCE, AND SYSTEM FOR CARRYING OUT SAID METHOD Download PDF

Info

Publication number
FR2639740A1
FR2639740A1 FR8915477A FR8915477A FR2639740A1 FR 2639740 A1 FR2639740 A1 FR 2639740A1 FR 8915477 A FR8915477 A FR 8915477A FR 8915477 A FR8915477 A FR 8915477A FR 2639740 A1 FR2639740 A1 FR 2639740A1
Authority
FR
France
Prior art keywords
regions
intensity
zoom
values
matrix
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
FR8915477A
Other languages
French (fr)
Other versions
FR2639740B1 (en
Inventor
Jerome S Arenson
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.)
Elscint Ltd
Original Assignee
Elscint Ltd
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 Elscint Ltd filed Critical Elscint Ltd
Publication of FR2639740A1 publication Critical patent/FR2639740A1/en
Application granted granted Critical
Publication of FR2639740B1 publication Critical patent/FR2639740B1/fr
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4007Interpolation-based scaling, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • G06F17/175Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method of multidimensional data

Abstract

Système pour traitement d'une image de diagnostic médical afin de créer une image zoom 31 par laquelle l'image de diagnostic médical 21 comporte une matrice 27 de rangées et de colonnes de régions ayant des valeurs d'intensité en entrée qui sont transférées depuis les régions spécifiées pour lesquelles un zoom doit être réalisé afin de désigner les régions d'une matrice zoom 28 séparées par des régions d'intensité inconnue. Des kernels mémorisés ou produits 26 qui sont individuels aux régions d'intensité connues sont convolués avec les valeurs d'intensité de régions voisines sélectionnées d'intensité connue pour obtenir des valeurs d'intensité pour des régions d'intensité inconnues.System for processing a medical diagnostic image in order to create a zoom image 31 by which the medical diagnostic image 21 comprises a matrix 27 of rows and columns of regions having input intensity values which are transferred from the specified regions for which a zoom must be carried out in order to designate the regions of a zoom matrix 28 separated by regions of unknown intensity. Stored or produced kernels 26 that are individual to regions of known intensity are convolved with the intensity values of selected neighboring regions of known intensity to obtain intensity values for regions of unknown intensity.

Description

La présente invention concerne un traitement d'image pour diagnosticThe present invention relates to image processing for diagnosis

médical et plus particulièrement un traitement d'image qui conduit à traiter un zoom d'images. Il est souvent désirable d'agrandir la dimension d'une partie d'une image affichée dans les systèmes de production d'images pour diagnostic médical. Une image zoom affichée est constituée d'un certain nombre de pixels qui sont contigus dans une image initiale maintenant située dans l'image zoom avec de nouveaux  medical and more particularly image processing which involves processing an image zoom. It is often desirable to enlarge the size of part of an image displayed in medical diagnostic image production systems. A displayed zoom image is made up of a certain number of pixels which are contiguous in an initial image now located in the zoom image with new ones.

pixels entre les pixels initiaux.pixels between the initial pixels.

Par exemple, une région d'intérêt dite ROI est choisie constituée d'un nombre donné de pixels contigus. La région d'intéret est agrandie pour grandir l'écran d'affichage tout entier. Pour réaliser ceci, les pixels contigus initiaux de la région d'intérit sont séparés par de nouveaux pixels places entre les pixels initiaux. Les nouveaux pixels places entre les pixels initiaux sont prévus avec des données d'intensité obtenues par interpolation en utilisant les valeurs d'intensité des pixels initiaux. En général, l'interpolation est réalisée au moyen de techniques telles que l'extraction des valeurs d'intensité de pixels connus, disons deux pixels entourant un pixel inconnu, en ajoutant arithmétiquement les valeurs d'intensité et en les divisant par deux, dans le cas o il existe seulement un pixel inconnu entre deux pixels connus. Lorsqu'il n'existe plus qu'un pixel inconnu entre le pixel de valeur connue, alors des facteurs de pondération sont utilisés pour rendre compte des distances entre les pixels inconnus et les pixels connus. Un zoom est généralement réalisé lorsque l'on désire regarder une ROI particulière et afficher celle-ci sur l'écran entier. Dans le passé, un zoom a été réalisé principalement par des processus d'interpolation linéaire qui comprenne une interpolation arithmétique décrite  For example, a region of interest called ROI is chosen consisting of a given number of contiguous pixels. The region of interest is enlarged to enlarge the entire display screen. To achieve this, the initial contiguous pixels of the region of interest are separated by new pixels placed between the initial pixels. The new pixels placed between the initial pixels are provided with intensity data obtained by interpolation using the intensity values of the initial pixels. In general, interpolation is achieved using techniques such as extracting the intensity values of known pixels, say two pixels surrounding an unknown pixel, by arithmetically adding the intensity values and dividing them by two, in the case where there is only one unknown pixel between two known pixels. When there is only one unknown pixel between the pixel of known value, then weighting factors are used to account for the distances between the unknown pixels and the known pixels. A zoom is generally performed when you want to look at a particular ROI and display it on the entire screen. In the past, zooming has been done mainly by linear interpolation processes which include an arithmetic interpolation described

précédemment ou des processus d'interpolation analytique.  previously or analytical interpolation processes.

Dans une interpolation analytique, la valeur interpolée I, doit Itre trouvée en résolvant l'équation linéaire: f(I) = mX + b, o m est égal à la pente de la fonction linéaire, b est la valeur de la fonction lorsque X est égal à zéro, et o X est l'emplacement du pixel dans la direction horizontale. Ainsi, la connaissance des valeurs d'intensité de deux pixels quelconques fournit deux points sur un graphique d'intensité par rapport & l'emplacement. Les deux points définissent une-ligne droite qui présente une pente m et coupe l'axe d'intensité au point b. L'interpolation linéaire du cas bidimensionnel (production d'images) assure l'ajustement linéaire à la fois dans les directions X et Y. Un problème spécifique se produisant par l'emploi de l'interpolation linéaire est que dans la vie réelle il existe des emplacements o la pente m se modifie de manière critique - la pente peut, par exemples s'inverser. Ainsi, les deux pixels connus suivants doivent définir une ligne ayant une pente & l'oppose de la pente de la fonction linéaire initiale. La modification obtenue dans la pente de la ligne entraîne des artefacts tels que des artefacts en escalier dans  In an analytical interpolation, the interpolated value I, must be found by solving the linear equation: f (I) = mX + b, om is equal to the slope of the linear function, b is the value of the function when X is equal to zero, and o X is the location of the pixel in the horizontal direction. Thus, knowing the intensity values of any two pixels provides two points on an intensity graph relative to the location. The two points define a straight line which has a slope m and intersects the intensity axis at point b. The linear interpolation of the two-dimensional case (production of images) ensures linear adjustment in both the X and Y directions. A specific problem that occurs when using linear interpolation is that in real life there is locations where the slope m changes critically - the slope can, for example, reverse. Thus, the following two known pixels must define a line having a slope and the opposite of the slope of the initial linear function. The change in the slope of the line results in artefacts such as staircase artefacts in

l'image affichée.the displayed image.

Il existe à présent des algorithmes qui lissent les résultats des changements profonds dans la direction de la pente qui provoque des angles aigus dans la fonction linéaire. Toutefois, ces algorithmes tendent en général à tâcher l'image et il est souvent douteux de savoir si le remède de l'artefact n'est pas fatal à la qualité de l'image. Un procédé conseillé pour améliorer les images pour lesquelles un zoom a été réalise consiste à effectuer l'interpolation des pixels en utilisant des fonctions polynomiales. ou, plus généralement, des fonctions binomiales au lieu de la fonction linéaire. Toutefois, le traitement pour une interpolation polynomiale devient très complexe et en général requiert beaucoup trop de temnps et d'espace mémoire du fait que dans une interpolation binomiale et polynomiale il existe de plus nombreuses étapes arithmétiques que dans une  There are now algorithms that smooth the results of deep changes in the direction of the slope that causes sharp angles in the linear function. However, these algorithms tend in general to smear the image and it is often doubtful whether the remedy for the artifact is not fatal to the quality of the image. A recommended method for improving the images for which a zoom has been carried out consists in performing the interpolation of the pixels using polynomial functions. or, more generally, binomial functions instead of the linear function. However, the processing for a polynomial interpolation becomes very complex and in general requires too much time and memory space because in a binomial and polynomial interpolation there are more arithmetic steps than in a

interpolation linéaire.Linear interpolation.

Par suite, les spécialistes de la technique sont toujours à la recherche de procédés d'interpolations utiles pour des images zoom. Cette recherche est particulièrement intense en ce qui concerne la découverte d'un procédé d'interpolation qui permettra d'effectuer un "zoom" "en direct", c'est-à-dire la réalisation suffisamment rapide des interpolations pour traiter les données d'image entrantes durant l'acquisition, ou peut permettre à l'opérateur de faire varier interactivement  As a result, those skilled in the art are always on the lookout for useful interpolation methods for zoom images. This research is particularly intense with regard to the discovery of an interpolation process which will make it possible to carry out a "zoom" "in direct", that is to say the sufficiently rapid realization of the interpolations to process the data of incoming image during acquisition, or can allow operator to vary interactively

le zoom à des vitesses dépassant 10 cadres par seconde.  zoom at speeds exceeding 10 frames per second.

En conformité avec la présente invention, un procédé de traitement d'une image normale en entrée pour fournir  In accordance with the present invention, a method of processing a normal input image to provide

une image zoom en sortie est énonce.  an output zoom image is stated.

L'image en entrée comprend une matrice d'entrée de rangées et de colonnes de "régions" ayant des valeurs d'intensité en entrée correspondant aux rangées et  The input image includes an input matrix of rows and columns of "regions" having input intensity values corresponding to the rows and

colonnes de pixels dans une image affichée normale.  columns of pixels in a normal displayed image.

L'image zoom en sortie comprend une matrice de rangées et de colonnes de régions ayant des valeurs d'intensité correspondantes aux rangées et aux colonnes de pixels dans une image zoom affichée (ici les "régions" sont souvent également désignées comme "pixels") ledit procédé comprenant les opérations consistant à: spécifier un facteur de zoom et une région d'intért contenant des valeurs d'intensité en entrée par lesquelles un zoom doit Etre réalisé, transférer les valeurs d'intensité en entrée des régions spécifiées pour lesquelles un zoom doit Etre  The output zoom image includes a matrix of rows and columns of regions having intensity values corresponding to the rows and columns of pixels in a displayed zoom image (here "regions" are often also referred to as "pixels") said method comprising the operations of: specifying a zoom factor and a region of interest containing input intensity values by which a zoom must be carried out, transferring the input intensity values from the specified regions for which a zoom must be

réalise aux régions désignées de la matrice zoom.  performs at designated regions of the zoom matrix.

lesdites régions désignées avec les valeurs dintensité transférées connues séparées par des régions de valeurs d'intensité connue, convoluer les valeurs d'intensité connue incluant les valeurs d'intensité voisines de celles des régions désignées de la matrice zoom pour obtenir des valeurs d'intensité pour les régions de valeurs d'intensité connue, et ladite opération de convolution incluant l'opération consistant à choisir un kernel mémorise individuel à chaque région de la matrice zoom, ledit kernel étant sélectionné comme une fonction de l'emplacement de la rangée et de la colonne de la région de valeurs d'intensité inconnue et étant alimenté avec des valeurs d'intensité connue pour la convolution comme une fonction du zoom, permettant que les valeurs d'intensité soient  said designated regions with known transferred intensity values separated by regions of known intensity values, convolving known intensity values including intensity values close to those of designated regions of the zoom matrix to obtain intensity values for regions of known intensity values, and said convolution operation including the operation of choosing a kernel memorized individual to each region of the zoom matrix, said kernel being selected as a function of the location of the row and of the column of the region of values of unknown intensity and being fed with values of intensity known for convolution as a function of zoom, allowing that the values of intensity are

appliquées à chaque région de la matrice zoom.  applied to each region of the zoom matrix.

Une caractéristique de l'invention comprend une disposition d'une pluralité de kernels mémorises sous la forme de tables de consultation individuelles à chaque région de la matrice zoom en fonction de la rangée et de  A feature of the invention includes an arrangement of a plurality of kernels stored in the form of individual look-up tables for each region of the zoom matrix as a function of the row and of

la colonne de la région.the region column.

Une caractéristique supplémentaire de l'invention comprend l'étape consistant à diviser la matrice zoom en sous-divisions entre des régions d'intensité connue, chaque sous-division fournissant un pointeur aux tables de consultation, les tables de consultation ainsi désignées étant convoluées avec des régions voisines d'intensité connue et dans laquelle les régions d'intensité connues utilisées dans la convolution sont  An additional feature of the invention comprises the step of dividing the zoom matrix into subdivisions between regions of known intensity, each subdivision providing a pointer to the look-up tables, the look-up tables thus designated being convolved with neighboring regions of known intensity and in which the regions of known intensity used in the convolution are

incrémentées comme une fonction du nombre de sous-  incremented as a function of the number of sub-

divisions divise par le facteur de zoom.  divisions divided by the zoom factor.

Une caractéristique encore supplémentaire de l'invention comprend l'opération consistant à déterminer  Yet another feature of the invention includes the step of determining

une valeur d'incrément basée sur le nombre de sous-  an increment value based on the number of sub-

divisions divisé par le facteur de zoom chaque fois que ladite valeur d'incrément est utilisée pour 'avancer pas & pas" à travers les tables de consultation de kernels à  divisions divided by the zoom factor each time the increment value is used to "step & step" through the kernels lookup tables at

convolution mémorisée.memorized convolution.

Une caractéristique supplémentaire de l'invention comprend l'utilisation des kernels sur la base de  An additional feature of the invention includes the use of kernels based on

polynSmes.polynSms.

Une autre caractéristique de l'invention utilise les  Another characteristic of the invention uses the

kernels sur la base de binômes.kernels based on binomials.

Une autre caractéristique de l'invention est qu'il est nécessaire de trouver les valeurs pour les tables de consultation seulement une fois pour chaque système de production d'image du fait que les kernels utilisés dans le processus de convolution sont indépendantes du format  Another characteristic of the invention is that it is necessary to find the values for the lookup tables only once for each image production system since the kernels used in the convolution process are independent of the format

d'image, du facteur de zoom et du format de la matrice.  image, zoom factor and matrix format.

Ainsi, les kernels sont calculés une fois et sont mémorisés sur un disque pour Etre charges dans la mémoire chaque fois que la fonction de zoom est appelée. Par suite, un zoom d'image interactif est pratique avec ce système. Une caractéristique supplémentaire en relation avec l'invention est l'emploi de l'opération de convolution caractérisant les kernels obtenus à partir d'un polynôme qui sont fonction seulement de l'emplacement de la région nécessitant une valeur interpolée en liaison avec tout traitement d'image quelconque qui pourrait nécessiter une interpolation, au lieu de l'interpolation linéaire bien connue, afin d'ainsi améliorer la qualité d'image en  Thus, the kernels are calculated once and are memorized on a disk to be loaded in the memory each time the zoom function is called. As a result, an interactive image zoom is practical with this system. An additional characteristic in connection with the invention is the use of the convolution operation characterizing the kernels obtained from a polynomial which are a function only of the location of the region requiring an interpolated value in connection with any processing of any image that might require interpolation, instead of the well-known linear interpolation, in order to improve image quality by

minimisant les artefacts tels que les artefacts d'étape.  minimizing artifacts such as stage artifacts.

Encore une autre caractéristiques de l'invention a utilisé le procédé d'interpolation décrit pour translater une image de format matriciel (c'est-à-dire 340 x 340) en une autre image de format matriciel (c'est-àdire 512 x  Yet another characteristic of the invention used the interpolation method described to translate an image of matrix format (i.e. 340 x 340) into another image of matrix format (i.e. 512 x

512) avec un zoom égal à un (aucun zoom n'est effectué).  512) with a zoom equal to one (no zoom is performed).

Les caractéristiques et buts mentionnés ci-dessus et autres de l'invention seront le mieux compris lorsqu'ils  The above mentioned and other features and objects of the invention will be best understood when

seront considérés à la lumière de la description suivante  will be considered in light of the following description

d'un aspect principal de la présente invention prise en liaison avec les dessins suivants, dans lesquels: Les fig. la, lb sont des schémas synoptiques illustratifs de deux systèmes d'interpolation linéaire de  of a main aspect of the present invention taken in conjunction with the following drawings, in which: Figs. la, lb are illustrative block diagrams of two linear interpolation systems of

la technique antérieure.the prior art.

La fig. lc est un graphique représentatif d'un  Fig. lc is a representative graph of a

procédé d'interpolation linéaire analytique.  analytical linear interpolation process.

La fig. 2 est un schéma synoptique représentatif du présent système d'interpolation inventif utilisé pour un  Fig. 2 is a block diagram representative of the present inventive interpolation system used for a

zoom.zoom.

La fig. Z est une représentation graphique d'une fonction de polynômes définie par quatre valeurs d'intensité connue en adaptant au mieux une courbe aux: valeurs connues pour permettre la détermination de  Fig. Z is a graphical representation of a function of polynomials defined by four values of known intensity by adapting a curve to the best: known values to allow the determination of

valeurs inconnues aux emplacements sélectionnés.  unknown values at selected locations.

La fig. 4 représente une table de consultation (:ernel) utilisée avec'l'interpolation polynomiale à convolutive de la présente invention, La fig. 5 est une représentation de matrice zoom représentant des grilles entre des régions de valeurs d'intensité connue recouvrant les régions devant Etre pourvues de valeurs d'intensité en conformité avec l'invention, et  Fig. 4 represents a consultation table (: ernel) used with the polynomial to convolutional interpolation of the present invention, FIG. 5 is a zoom matrix representation representing grids between regions of known intensity values covering the regions to be provided with intensity values in accordance with the invention, and

Les fig. 6a,6b,6c et 6d représentent un seul et mme pro-  Figs. 6a, 6b, 6c and 6d represent a single pro-

gramme d'interpolation effective zoom pr ordinateur en langage  gram of effective interpolation zoom for computer in language

Fortram et se font suite les unes aux autres.  Fortram and follow each other.

Le zoom est une procédure de traitement d'image bien connue dans laquelle une région d'intérêt est agrandie, telle que par exemple une région plus petite que l'image  Zooming is a well-known image processing procedure in which a region of interest is enlarged, such as for example a region smaller than the image

affichée entière répartie sur l'image affichée complète.  displayed whole spread over the complete displayed image.

Pour réaliser l'agrandissement, des valeurs d'intensité connue des régions pour lesquelles un zoom a été réalisé sont interpolées pour remplir les valeurs d'intensité des nouvelles régions insérées entre les régions de valeurs d'intensité connue. Plus particulièrement, la donnée d'image en entrée acquise est disposée sous forme matricielle, c'est-àa- dire en rangées et en colonnes de S régions contenant des valeurs d'intensité mesurées avant le traitement de zoom. Pour effectuer un zoom, une région d'intérgt de la matrice d'image en entrée est traitée en plaçant symétriquement les valeurs d'intensité connue de la région matricielle dans la région d'intért sur une matrice agrandie comportant beaucoup plus de régions matricielles qu'il n'en est inclus dans la région deintérQt. Ceci laisse des régions vierges dans les rangées et colonnes entre les régions d'intensité connues prises à partir de la région d'intérêt de l'image en entrée. Dans la technique antérieure, les régions ayant des intensités inconnues sont alimentées avec des valeurs d'intensité par interpolation "linéaire" entre les  To achieve the enlargement, values of known intensity of the regions for which a zoom has been carried out are interpolated to fill the intensity values of the new regions inserted between the regions of known intensity values. More particularly, the acquired input image data is arranged in a matrix form, that is to say in rows and columns of S regions containing intensity values measured before the zoom processing. To zoom, a region of interest of the input image matrix is processed by symmetrically placing the known intensity values of the matrix region in the region of interest on an enlarged matrix having many more matrix regions than 'it is not included in the region of interest. This leaves blank regions in the rows and columns between the regions of known intensity taken from the region of interest of the input image. In the prior art, regions with unknown intensities are fed with intensity values by "linear" interpolation between the

régions de valeurs d'intensité connue.  regions of known intensity values.

Il existe de nombreuses manières de réaliser une interpolation linéaire. Une manière est représentée à la fig. la qui peut Etre appelée un procédé analytique. Plus particulièrement, à la fig. la il est représenté une disposition de zoom en 11. La disposition de zoom comprend une image en entrée 12 inclut des rangées il, i2, i3,... in et des colonnes jl, j2, j3.  There are many ways to perform linear interpolation. One way is shown in fig. which can be called an analytical process. More particularly, in fig. there is shown a zoom arrangement at 11. The zoom arrangement comprises an input image 12 includes rows il, i2, i3, ... in and columns jl, j2, j3.

in. En général, de telles matrices peuvent comprendre 512 rangées par 512 colonnes. Pour effectuer un zoom de l'image, l'opérateur sélectionne une région d'intért sur un dispositif d'entrée par opérateur tel qu'une unité de clavier à boule roulante 13 par exemple. En variante, l'opérateur peut sélectionner un point central tel que i3, j3 et un facteur de zoom, disons 8. Le processeur central du système détermine la dimension de la région d'intérêt (ROI), c'est-à-dire quelle quantité de la région matricielle doit doit donner lieu à un zoom. Les valeurs d'intensité des pixels dans la ROI sont extraites de la donnée d'image en entrée par l'unité d'extraction..DTD: 14 et écrites dans un opérateur d'interpolation 16.  in. In general, such matrices can include 512 rows by 512 columns. To zoom the image, the operator selects a region of interest on an operator input device such as a rolling ball keyboard unit 13 for example. As a variant, the operator can select a central point such as i3, j3 and a zoom factor, say 8. The central processor of the system determines the dimension of the region of interest (ROI), that is to say how much of the matrix region should zoom. The pixel intensity values in the ROI are extracted from the input image data by the extraction unit..DTD: 14 and written in an interpolation operator 16.

L'opérateur d'interpolation effectue ensuite une interpolation en utilisant une interpolation linéaire entre les pixels sélectionnés d'une matrice 12 pour fournir des valeurs d'intensité pour les pixels entre les  The interpolation operator then performs interpolation using linear interpolation between the selected pixels of a matrix 12 to provide intensity values for the pixels between the

pixels de la ROI qui sont extraits de l'image en entrée.  ROI pixels that are extracted from the input image.

Une unité d'écriture 17 transfère les valeurs ici d'intensité dans les pixels d'une image en sortie 18 qui  A writing unit 17 transfers the intensity values here in the pixels of an output image 18 which

sont extraits de la ROI de l'image en entrée 12.  are extracted from the ROI of the input image 12.

L'interpolation est effectuée mathématiquement. Ainsi, par exemple, s'il existe une région vierge entre un pixel ayant une valeur d'intensité de 5 et un pixel ayant une valeur d'intensité de 3, alors la valeur interpolée de la  Interpolation is done mathematically. So, for example, if there is a blank region between a pixel having an intensity value of 5 and a pixel having an intensity value of 3, then the interpolated value of the

région entre celle-ci sera de 5+3 divisé par 2 ou par 4.  region between this will be 5 + 3 divided by 2 or by 4.

S'il existe deux régions vides entre les régions ayant des intensités connues, alors un facteur de pondération peut Etre utilisé pour rendre compte de la distance d'une  If there are two empty regions between regions with known intensities, then a weighting factor can be used to account for the distance of a

région vierge depuis la région ayant l'intensité connue.  virgin region from the region with known intensity.

Si la région vierge tombe entre à la fois des rangées et des colonnes de pixels connus, l'interpolation linéaire est effectuée par pondération en conformité avec les distances entre quatre pixels voisins connus. De cette manière, l'image zoom en 18 est constituée de régions qui ont toutes des valeurs d'intensité pour fournir une image complète. Dans la disposition de la technique antérieure de la fig. lb, une solution analytique est utilisée. Ici de 350 nouveau, il existe une image en entrée 12a. Un dispositif d'entrée par opérateur tel qu'un clavier à boule roulante 13a permet la sélection d'un point central de région d'intért et d'un facteur de zoom. L'unité d'extraction 14a fonctionne en réponse aux informations reçues depuis la région d'intérît sélectionnée et extrait les données de la région d'intérêt sélectionnée de l'image en entrée 12a. Seules deux régions ayant des intensités connues doivent tre utilisées pour développer l'équation linéaire f(I) = mX + b (représenté à la fig. lc o X est la distance à laquelle se trouve la région du coté gauche de la matrice, m est la pente de la ligne droite définie par les deux points (il, jl) et (i3, j3) et o b est la valeur d'intensité de la ligne lorsque X est égal à zéro, en d'autres termes, lorsque la ligne coupe l'axe d'intensité I. A partir des deux points de donnée, la pente m peut Etre déterminée et b peut également Etre déterminé. Le graphique f(I) de la fig. lc représente l'intensité I par rapport à la distance horizontale X à partir de l'axe d'intensité I. Toute valeur quelconque sur la fonction peut être déterminée à partir de la fonction. Une approche similaire est utilisée pour déterminer l'intensité I par rapport à la distance verticale Y. Un problème présenté par l'interpolation linéaire est qu'elle conduit souvent à des artefacts connus comme artefacts "mixtes". Les artefacts mixtes apparaissent  If the blank region falls between both rows and columns of known pixels, the linear interpolation is performed by weighting in accordance with the distances between four known neighboring pixels. In this way, the zoom image at 18 is made up of regions which all have intensity values to provide a complete image. In the arrangement of the prior art of FIG. lb, an analytical solution is used. Here of 350 new, there is an input image 12a. An operator input device such as a rolling ball keyboard 13a allows the selection of a central point of interest region and a zoom factor. The extraction unit 14a operates in response to information received from the selected region of interest and extracts the data of the selected region of interest from the input image 12a. Only two regions with known intensities should be used to develop the linear equation f (I) = mX + b (represented in fig. Lc o X is the distance at which the region is on the left side of the matrix, m is the slope of the straight line defined by the two points (il, jl) and (i3, j3) and ob is the intensity value of the line when X is zero, in other words, when the line intersects the intensity axis I. From the two data points, the slope m can be determined and b can also be determined.The graph f (I) in Fig. lc represents the intensity I with respect to the horizontal distance X from the intensity axis I. Any value on the function can be determined from the function A similar approach is used to determine the intensity I with respect to the vertical distance Y. A problem presented by linear interpolation is that it often leads to art efacts known as "mixed" artefacts. Mixed artefacts appear

lorsque se produisent des discontinuités dans les pentes.  when discontinuities occur on slopes.

Par exemple, lorsque sur le c8té droit d'un pixel connu la pente est positive et que sur le c8té gauche la pente  For example, when on the right side of a known pixel the slope is positive and when on the left side the slope

est négative.is negative.

Par suite, un procédé d'interpolation utilisant une analyse d'un ordre supérieur qui fournit une pente variant en continu est présenté. Le procédé d'interpolation est représenté à titre d'exemple dans le schéma synoptique de la fig. 2. Dans le passe, des interpolations d'un ordre supérieur n'ont pas été pratiquées du fait du grand nombre de calculs nécessaires exerçant une contrainte sur l'ordinateur et sur la mémoire du système. Toutefois, le système décrit ici qui ) effectue une convolution afin d'interpoler en utilisant des kernels indépendants de la dimension d'image, du facteur de zoom et des intensités rend possible des  As a result, an interpolation method using higher order analysis which provides a continuously varying slope is presented. The interpolation process is shown by way of example in the block diagram of FIG. 2. In the past, interpolations of a higher order have not been performed due to the large number of computations required exerting a constraint on the computer and on the system memory. However, the system described here which) performs a convolution in order to interpolate using kernels independent of the image size, the zoom factor and the intensities makes it possible to

interpolations d'ordre supérieur.higher order interpolations.

Le système 20 comprend une image en entrée d'une donnée acquise représentée en 21. Une donnée peut tre acquise par l'un quelconque des modes d'acquisition  The system 20 comprises an image as input of an acquired data item represented at 21. A data item can be acquired by any of the acquisition modes

utilisé par le champ médical de diagnostic, par exemple.  used by the medical diagnostic field, for example.

L'image en entrée est de nouveau constituée d'une matrice  The input image again consists of a matrix

de rangées et de colonnes qui ne sont pas représentées.  rows and columns that are not shown.

Des moyens tels qu'un clavier à boule roulante 22 sont prévus pour une interaction de l'opérateur avec l'image en entrée que l'opérateur utilise pour sélectionner la région d'intérêt ou le centre de la région d'intérêt plus un facteur de zoom. En mode interactif, l'image en sortie est présentée presque instantanément sur l'écran et l'opérateur peut modifier  Means such as a rolling ball keyboard 22 are provided for operator interaction with the input image which the operator uses to select the region of interest or the center of the region of interest plus a factor zoom. In interactive mode, the output image is presented almost instantly on the screen and the operator can modify

le zoom, faire un panoramique et un défilement direct.  zoom, pan and scroll directly.

L'unité 22 amène une unité d'extraction 23 à extraire des valeurs d'intensité des régions appropriées de l'image en entrée. Les régions appropriées sont les pixels voisins nécessaires pour le processus de convolution. Dans un exemple polynomial, quatre valeurs horizontales et quatre valeurs régionales verticales voisines (c'est-à-dire un minimum de 16 pixels) sont extraites. L'information extraite est fournie & une mémoire 25 dans un processeur de convolution de zoom 24. C'est la fonction du processeur de convolution 24 de fournir des valeurs d'intensité aux régions matricielles entre les régions X:0 extraites qui font partie de l'image zoom en sortie. Ceci est effectué en utilisant les kernels sélectionnés d'une pluralité de kernels mémorisés dans le processeur de  The unit 22 causes an extraction unit 23 to extract intensity values from the appropriate regions of the input image. The appropriate regions are the neighboring pixels necessary for the convolution process. In a polynomial example, four horizontal values and four neighboring vertical regional values (i.e. a minimum of 16 pixels) are extracted. The extracted information is supplied to a memory 25 in a zoom convolution processor 24. It is the function of the convolution processor 24 to supply intensity values to the matrix regions between the extracted X: 0 regions which are part of the image zoom out. This is done using the selected kernels of a plurality of kernels stored in the processor.

convolution de zoom à la mémoire de kernels 26.  convolution of zoom to the memory of kernels 26.

La mémoire de kernels est représentée en plus grand -;5 détail en 27 bien que dans un mode de réalisation préféré la mémoire de kernels constitue une partie intégrante du processeur de convolution de zoom. La pluralité de kernels dans un mode de réalisation préféré est établie en une pluralité de tables de consultation telles que la table de consultation 28. Des moyens sont prévus pour produire des tables de consultation qui contiennent les "poids" devant tre utilisés dans la convolution avec les valeurs de pixels  The kernels memory is shown in greater detail; detail in 27 although in a preferred embodiment the kernels memory is an integral part of the zoom convolution processor. The plurality of kernels in a preferred embodiment is established in a plurality of look-up tables such as look-up table 28. Means are provided for producing look-up tables which contain the "weights" to be used in the convolution with pixel values

connues pour fournir les valeurs de pixels manquantes.  known to provide missing pixel values.

Dans un mode de réalisation préféré, les tables de consultation (kernel) sont indépendantes des données d'image. du facteur de zoom et du format matriciel. Des moyens sont prévus pour produire de telles tables de consultation indépendantes et pour sélectionner la table de consultation appropriée devant Etre utilisée dans l'opération de convolution. Les moyens impliquent l'établissement d'un système de grilles indépendantes s'étendant entre les régions d'intensité connues pour lesquelles un zoom a été réalisé. Dans un mode de réalisation préféré, la grille comprend 16 lignes horizontales et 16 lignes verticales entre chacune des régions de la ROI qui sont pour lesquelles un zoom a été réalisé. Le nombre de lignes de grille est généralement  In a preferred embodiment, the lookup tables (kernel) are independent of the image data. zoom factor and matrix format. Means are provided for producing such independent look-up tables and for selecting the appropriate look-up table to be used in the convolution operation. The means involve the establishment of a system of independent grids extending between the regions of known intensity for which a zoom has been made. In a preferred embodiment, the grid comprises 16 horizontal lines and 16 vertical lines between each of the regions of the ROI which are for which a zoom has been carried out. The number of grid lines is usually

indiqué ici par isubX et isubY.indicated here by isubX and isubY.

Les poids pour les tables de consultation sont déterminés à l'aide d'une table de poids prévue pour chaque intersection de ligne de grille. Ainsi, la matrice en entrée est développée pour fournir un nombre de lignes sélectionnées entre chaque zoné d'intensité connue transférée vers la matrice zoom en sortie. Dans un mode de réalisation, 16 lignes sont utilisées s'étendant depuis le milieu de l'un des pixels d'intensité connue vers le milieu du pixel suivant d'intensité connue de la matrice zoom en sortie. En fonction du facteur de zoom, il existe un nombre fixe de régions qui sont insérées entre les régions d'intensité connues. L'intersection des lignes de grille les plus proches du centre de région insérée est le pointeur vers (ou'sélectionne) le kernel désiré devant Utre utilisé, le kernel est une table de consultation de 16 poids (dans notre exemple) qui est convoluée avec 16 pixels voisins d'intensité connue pour fournir la valeur d'intensité de la région insérée pour  The weights for the look-up tables are determined using a weight table provided for each grid line intersection. Thus, the input matrix is developed to provide a number of selected lines between each zone of known intensity transferred to the output zoom matrix. In one embodiment, 16 lines are used extending from the middle of one of the pixels of known intensity to the middle of the next pixel of known intensity of the output zoom matrix. Depending on the zoom factor, there is a fixed number of regions that are inserted between regions of known intensity. The intersection of the grid lines closest to the inserted region center is the pointer to (or selects) the desired kernel before being used, the kernel is a lookup table of 16 weights (in our example) which is convoluted with 16 neighboring pixels of known intensity to provide the intensity value of the inserted region for

la matrice en sortie.the output matrix.

Les poids de chaque intersection de la grille sont IC) précalculés comme indiqué à la fig. 3. On suppose qu'il existe 4 points de valeur connue tels que f1, f2, f3 et f4 entre lesquels les valeurs interpolées telles que la valeur d'intensité du point X doit Etre déterminée située entre les points f2 et f3 (une interpolation  The weights of each intersection of the grid are precalculated IC) as shown in fig. 3. It is assumed that there are 4 points of known value such as f1, f2, f3 and f4 between which the interpolated values such as the intensity value of point X must be determined located between points f2 and f3 (an interpolation

dimensionnelle est caractérisée).is characterized).

Une fonction f(X) reliant les points fi, f2, f3 et f4 peut Etre approchée par un polyn8me du troisième ordre f (X) p(X) = f1 + rjfl + r(r-1l)/2_t2f, + [r'r-, <r-2)/63 f....<. 1) ) o: X = X1 + rh (h est représenté à la fig. 3) r = (X-X1)/h, 0 < r < 3 A fm = f(m+l) - fm (m est un indice = 1, 2, 3...n) 42fm = / f(m+1) --bfm 13fm = A 2f(m-1) --jfm A la fig. 3, le nombre de lignes d'interpolation entre les points connus (zone matricielle en entrée) Isub est 16 comme représenté entre f et f. Une redéfinition des variables en utilisant Isub donne: r = [(isubX-1)/Isub]+ 1 A = r(r-1) B = A(r-2) Par suite, l'équation (1) peut #tre réécrite comme: P(isubX) = f1 + r(f2-f 1) + (A/2) (f3 - 2f2 + fl) + B/6 (f4 - 3f3 + 2f2 - fl)..... (2) qui peuvent #tre factorisées en: P(isubX) = f1 + (1-r + R/2 - B/6) + f2 (r-A + B/2) + f3 (A/2-B/2) + f4 (B/6)..... (3) L'équation (3) donne quatre coefficients de pondération comme une fonction de l'emplacement d'interpolation dans la d.rection horizontale: Wxl1 (isubx) = 1-r + A/2 B/6 wx2 (isubx) = r-A + B/2 wx3 (isubx) = A/2 - B/2 Wx4 (isubx) = B/6 o la valeur interpolée de f(X) est: P(isubx) = Wxl fl = Wx2 f2 + Wx3 f3 + Wx4 f4.. (4) Ainsi, l'interpolation du troisième ordre suivant un vecteur de points (c'est-à-dire dans la direction X) est  A function f (X) connecting the points fi, f2, f3 and f4 can be approximated by a third order polyn8me f (X) p (X) = f1 + rjfl + r (r-1l) / 2_t2f, + [r 'r-, <r-2) / 63 f .... <. 1)) o: X = X1 + rh (h is represented in fig. 3) r = (X-X1) / h, 0 <r <3 A fm = f (m + l) - fm (m is a index = 1, 2, 3 ... n) 42fm = / f (m + 1) --bfm 13fm = A 2f (m-1) --jfm In fig. 3, the number of interpolation lines between the known points (input matrix area) Isub is 16 as shown between f and f. A redefinition of the variables using Isub gives: r = [(isubX-1) / Isub] + 1 A = r (r-1) B = A (r-2) Consequently, equation (1) can #tre rewritten as: P (isubX) = f1 + r (f2-f 1) + (A / 2) (f3 - 2f2 + fl) + B / 6 (f4 - 3f3 + 2f2 - fl) ..... (2 ) which can be factored into: P (isubX) = f1 + (1-r + R / 2 - B / 6) + f2 (rA + B / 2) + f3 (A / 2-B / 2) + f4 (B / 6) ..... (3) Equation (3) gives four weighting coefficients as a function of the interpolation location in the horizontal direction: Wxl1 (isubx) = 1-r + A / 2 B / 6 wx2 (isubx) = rA + B / 2 wx3 (isubx) = A / 2 - B / 2 Wx4 (isubx) = B / 6 where the interpolated value of f (X) is: P (isubx ) = Wxl fl = Wx2 f2 + Wx3 f3 + Wx4 f4 .. (4) Thus, the third order interpolation according to a vector of points (ie in the direction X) is

simplement un kernel à convolution dimensionnelle.  simply a dimensional convolution kernel.

Du fait que le zoom graphique implique une interpolation bidimensionnelle, des facteurs de pondération sont obtenus de manière identique dans la direction verticale. Le résultat est un kernel de 2) convolution 4 x 4 représenté à la fig. 4 construit en utilisant: w(isubx, isuby) = wij(isubx, isuby) = wxi(isubx) * wyi(isuby) Il conviendra de noter qu'il existe ISUB*ISUB de tels kernels de convolution, dans lequel chacun est utilise pour trouver la valeur à une intersection de grille spécifique par exemple, si la valeur du point interpolé (intersection de grille) se produisant en isubx = 3 et isuby = 10 est nécessaire pour que l'image en sortie du kernel approprié soit trouvée wij(3,10) et soit convolué avec les 16 zones matricielles voisines de la matrice  Because the graphic zoom involves two-dimensional interpolation, weighting factors are obtained identically in the vertical direction. The result is a kernel of 2) 4 x 4 convolution shown in fig. 4 constructed using: w (isubx, isuby) = wij (isubx, isuby) = wxi (isubx) * wyi (isuby) It should be noted that there are ISUB * ISUB such convolution kernels, in which each is used to find the value at a specific grid intersection for example, if the value of the interpolated point (grid intersection) occurring in isubx = 3 and isuby = 10 is necessary for the output image of the appropriate kernel to be found wij ( 3.10) and be convoluted with the 16 matrix zones adjacent to the matrix

d'entrée pour produire la matrice zoom en sortie.  input to produce the zoom matrix as output.

Avec ISUB égal à 16, il existe 4K mots nécessaires  With ISUB equal to 16, there are 4K words required

pour mémoriser les kernels.to memorize the kernels.

De cette manière, les tables de consultation (kernels de convolution) fournissent des poids pour une interpolation par convolution de la valeur de zone connue afin d'obtenir des valeurs pour le nombre de zoom situées entre elles comme imposées par le facteur de zoom. Une convolution avec les tables de consultation sur la donnée provenant de l'image en entrée fournit des données pour l'image zoom en sortie représentée en 31. Les tables de consultation sont choisies par l'emplacement de l'intersection de ligne de grille la plus proche du centre de la région pour la région recherchant une valeur d'intensité. Afin de faciliter la localisation de l'intersection de ligne de grille la plus proche, une valeur d'incrément  In this way, the lookup tables (convolution kernels) provide weights for a convolutional interpolation of the known area value in order to obtain values for the number of zooms located between them as imposed by the zoom factor. A convolution with the look-up tables on the data coming from the input image provides data for the output zoom image represented at 31. The look-up tables are chosen by the location of the grid line intersection la closer to the center of the region for the region looking for an intensity value. In order to facilitate the location of the nearest grid line intersection, an increment value

est sélectionnée par une unité de sous-incrémentation 29.  is selected by a sub-increment unit 29.

Cette valeur est ajoutée au pointeur de la table de consultation pour chaque nouvelle région ayant une valeur générée. Une ligne partant de l'unité 22 est représentée se dirigeant vers l'unité de lecture 23 pour extraire les y valeurs de zone ROI sélectionnées à partir de la matrice d'image en entrée 21. Les zones lues sont exploitées par les kernels qui sont sélectionnés en conformité avec le facteur de zoom déterminant les 16 zones voisines de  This value is added to the lookup table pointer for each new region with a generated value. A line from the unit 22 is shown going towards the reading unit 23 to extract the y ROI zone values selected from the input image matrix 21. The zones read are exploited by the kernels which are selected in accordance with the zoom factor determining the 16 neighboring areas of

valeur connue qui sont utilisées dans la convolution.  known value that are used in convolution.

Ainsi, une ligne provenant de l'unité de sous-  So a line from the sub-

incrémentation 29 est tracée jusqu'au processeur de convolution de zoom pour déterminer quelles zones de  increment 29 is plotted to the zoom convolution processor to determine which areas of

valeurs connues doivent Stre convoluées avec le kernel.  known values must be convolved with the kernel.

Par exemple, à la fig. 5, les régions entre les zones O0 initiales de valeurs connues (f2,2, f2,3, f3,2 et f3,3) sont sous-divisées en une grille fixe. La grille fixe dans un mode de réalisation préféré est une grille 16 x 16 commençant au début d'une zone connue et s'étendant vers le commencement de la zone connue suivante. Il convient de comprendre que d'autres schémas de grilles cycliques peuvent également etre utilises dans le cadre de l'invention. Les valeurs des intersections de grille sont fournies en utilisant les kernels pour chaque intersection. Le processus de convolution commence aux positions de départ X, Y définies comme: Départ X = centre X - (format matriciel/2)(1/zoom) Départ Y = centre Y (format matriciel/2)(1/zoom) le centre X, le centre Y et le facteur de zoom sont définis par l'utilisateur. La dimension de matrice est généralement celle de l'image en entrée, mais peut tre  For example, in fig. 5, the regions between the initial zones O0 of known values (f2.2, f2.3, f3.2 and f3.3) are subdivided into a fixed grid. The fixed grid in a preferred embodiment is a 16 x 16 grid starting at the start of a known area and extending to the beginning of the next known area. It should be understood that other schemes of cyclic grids can also be used in the context of the invention. Grid intersection values are provided using kernels for each intersection. The convolution process begins at the starting positions X, Y defined as: Start X = center X - (matrix format / 2) (1 / zoom) Start Y = center Y (matrix format / 2) (1 / zoom) the center X, center Y and zoom factor are user defined. The matrix dimension is generally that of the input image, but can be

d'autres formats.other formats.

Les pointeurs de sous-divisions (intersection de grille) commence en subx = suby = 1 et sont incrémentés par: subinc = ISUB/zoom dans les directions X et Y à mesure que progresse la convolution. Ainsi, lorsque les points de sous-divisions deviennent supérieurs à ISUB), alors le kernel est décalé et le reste (ISUB-SUBx ou ISUB-SUBy est utilisé comme le  The subdivision pointers (grid intersection) start in subx = suby = 1 and are incremented by: subinc = ISUB / zoom in the X and Y directions as the convolution progresses. So, when the subdivision points become greater than ISUB), then the kernel is shifted and the rest (ISUB-SUBx or ISUB-SUBy is used as the

nouveau pointeur de sous-divisions).  new subdivision pointer).

Le processus de convolution peut Etre effectué soit rangée par rangée soit colonne par colonne. Toutefois, le processus devra Etre cyclique. En d'autres termes, si la convolution est effectuée rangée par rangée, quatre rangées doivent tre mémorisées dans la mémoire du processeur 25 pour fournir la valeur d'intensité des quatre zones de rangées voisines nécessaire pour fournir la valeur de chaque rangée unique insérée dans l'image zoom en sortie. Si l'une des rangées n'est plus désormais nécessaire, i.e. lorsque isubY est supérieur à ISUB, seule une rangée a besoin d'Ptre remplacée par la rangée de l'image en entrée suivante dans la mémoire 25 et le processus se poursuit sans nécessiter qu'un réseau entièrement nouveau soit entre en mémoire 25. Par exemple, à la fig. 5 f2, 25 f2,3, f32 et f3,3 sont des zones ayant des valeurs d'intensité connues transférées en provenance de l'image en entrée. Le facteur de zoom est 4 et ISUB est 16. Il existe trois zones nécessitant des valeurs d'interpolation entre f2,2 et f2,3 et entre f3,2 et f3,3 de mime que les trois ensembles de cinq zones ci-après f2,2, f2,3 et au-dessus  The convolution process can be carried out either row by row or column by column. However, the process should be cyclical. In other words, if the convolution is carried out row by row, four rows must be stored in the memory of the processor 25 to provide the intensity value of the four zones of neighboring rows necessary to provide the value of each single row inserted in the image zoom out. If one of the rows is no longer necessary, ie when isubY is greater than ISUB, only one row needs to be replaced by the row of the next input image in memory 25 and the process continues without require that an entirely new network be entered into memory 25. For example, in fig. 5 f2, 25 f2.3, f32 and f3.3 are areas with known intensity values transferred from the input image. The zoom factor is 4 and ISUB is 16. There are three areas requiring interpolation values between f2.2 and f2.3 and between f3.2 and f3.3 mime as the following three sets of five areas f2.2, f2.3 and above

f3,2 et f3s,53-f3.2 and f3s, 53-

En supposant que l'on effectue une intersection t rangée par rangée, alors la mémoire 25 aura quatre colonnes et quatre rangées provenant de l'imageinitiale qui y est mémorisée pour fournir les 16 valeurs d'intensité nécessaires des zones voisines requises pour le processus de convolution. Ainsi, afin d'obtenir la i5 valeur de zone A, le kernel pour l'intersection de grille 19, 24 est utilisé en même temps que les valeurs de la région à quatre rangées voisines et à quatre colonnes voisines: f1, 1, f1,2, fl,35 fl,4 - {f2,1' f2,2, f2,35, f2,4 f3,15 f3,25 f3,35 f3,4  Assuming that an intersection t is made row by row, then the memory 25 will have four columns and four rows coming from the initial image which is stored therein to supply the 16 values of intensity necessary for the neighboring areas required for the process of convolution. Thus, in order to obtain the i5 value of area A, the kernel for the grid intersection 19, 24 is used at the same time as the values of the region with four neighboring rows and four neighboring columns: f1, 1, f1 , 2, fl, 35 fl, 4 - {f2,1 'f2,2, f2,35, f2,4 f3,15 f3,25 f3,35 f3,4

f4,1, f4,2, f4,3, et f4,4.f4.1, f4.2, f4.3, and f4.4.

De manière similaire, pour obtenir la valeur de la zone B, le kernel pour l'intersection de grille 27, 34 est utilisé en mime temps que les valeurs des mimes 16  Similarly, to obtain the value of area B, the kernel for the grid intersection 27, 34 is used at the same time as the values of the mimes 16

zones voisines.neighboring areas.

Afin d'obtenir la valeur d'intensité de zone i5, j3, le kernel pour l'intersection de grille la plus proche du centre de la région est utilisé en mime temps que les valeurs des régions connues nouvellement incrémentées: f2,1- f2,2, f2,35, f2,4 f3,1, f3,2, f 3,3, f3,4 f4,1, f4,25 f4,3, f4,4  In order to obtain the zone intensity value i5, j3, the kernel for the grid intersection closest to the center of the region is used at the same time as the values of the newly incremented known regions: f2.1- f2 , 2, f2.35, f2.4 f3.1, f3.2, f 3.3, f3.4 f4.1, f4.25 f4.3, f4.4

f5,1, f5,2, f5,3, et f5,4.f5.1, f5.2, f5.3, and f5.4.

Ainsi, la cinquième rangée a été prise et la première  So the fifth row was taken and the first

a été rejetée.was rejected.

Le programme d'interpolation effective de zoom par ordinateur en langage Fortram est illustré aux  The program of effective computerized zoom interpolation in Fortram language is illustrated in

figures 6a, 6b, 6c et 6d.Figures 6a, 6b, 6c and 6d.

Ainsi, un nouveau et unique système d'interpolation de zoom est créé lequel, grâce aux kernels qui sont seulement fonction d'un emplacement de l'interpolation, permet une convolution destinée à obtenir des valeurs d'intensité sur une zone insérée en utilisant des tables de consultation. Ceci conduit à une interpolation très rapide qui assure une qualité d'image comparable à la reconstruction avec un zoom et fournit efficacement  Thus, a new and unique zoom interpolation system is created which, thanks to the kernels which are only a function of a location of the interpolation, allows a convolution intended to obtain intensity values on an inserted zone using consultation tables. This leads to very fast interpolation which ensures image quality comparable to reconstruction with a zoom and provides effectively

une production d'image zoom en "temps réel".  "real time" zoom image production.

Tandis que l'invention a été décrite en utilisant un mode de réalisation à titre d'exemple, il convient de comprendre que ce mode de réalisation est décrit à titre d'exemple seulement et non comme limitation de la  While the invention has been described using an embodiment by way of example, it should be understood that this embodiment is described by way of example only and not as a limitation of the

portée de l'invention.scope of the invention.

Claims (15)

REVENDICATIONS:CLAIMS: 1. Procéde de traitement d'une image normale en entrée (21) pour fournir une image zoomée en sortie (31), l'image en entrée (21) comprenant une matrice d'entrée (28) de rangées et de colonnes de régions ayant des valeurs d'intensité en entrée correspondant aux rangées  1. Method for processing a normal input image (21) to provide a zoomed output image (31), the input image (21) comprising an input matrix (28) of rows and columns of regions having input intensity values corresponding to the rows et colonnes de pixels dans une image affichée normale.  and pixel columns in a normal displayed image. ladite image zoom en sortie (31) comprenant une matrice zoom (28) de rangées et de colonnes de régions ayant des valeurs d'intensité correspondant aux rangées et colonnes de pixels dans une image zoom affichée (31), ledit procédé comprenant: la spécification d'un facteur de zoom (15) et des régions de valeurs d'intensité en entrée pour lesquelles un zoom doit être réalisé, le transfert des valeurs d'intensité en entrée aux régions spécifiées pour lesquelles un zoom doit #tre réalisé vers les régions désignées de la matrice zoom (28), lesdites régions désignées étant séparées par des t:0 régions de valeurs d'intensité connue, la sélection des kernels mémorises individuels pour chacune desdites régions d'intensité connue de la matrice zoom (28), lesdits kernels mémorisés étant sélectionnés en fonction de l'emplacement de la région d'intensité inconnue de la matrice zoom (28), la sélection de régions voisines & partir d'emplacements déterminés par l'emplacement de la région d'intensité.inconnue et le facteur de zoom (15), et la convolution desdits kernels mémorisés sélectionnés avec des valeurs d'intensité desdites régions voisines sélectionnées de valeurs d'intensité connue incluant les régions désignées de la matrice zoom <28) pour obtenir des valeurs d'intensité pour les régions de valeurs  said output zoom image (31) comprising a zoom matrix (28) of rows and columns of regions having intensity values corresponding to the rows and columns of pixels in a displayed zoom image (31), said method comprising: specifying a zoom factor (15) and regions of input intensity values for which a zoom must be carried out, the transfer of the input intensity values to the specified regions for which a zoom is to be carried out towards the regions designated from the zoom matrix (28), said designated regions being separated by t: 0 regions of known intensity values, selecting the individual stored kernels for each of said regions of known intensity from the zoom matrix (28), said stored kernels being selected according to the location of the region of unknown intensity of the zoom matrix (28), the selection of neighboring regions & from determined locations s by the location of the unknown intensity region and the zoom factor (15), and the convolution of said selected stored kernels with intensity values of said selected neighboring regions of known intensity values including the designated regions of the zoom matrix <28) to obtain intensity values for the value regions d'intensité inconnue.of unknown intensity. 2. Procédé selon la revendication 1, comprenant un moyen pour sélectionner 16 régions voisines afin de  2. Method according to claim 1, comprising means for selecting 16 neighboring regions in order to satisfaire une fonction polynomiale.  satisfy a polynomial function. Procédé selon la revendication 1, dans laquelle ladite étape de sélection comprend la sélection de 9 régions voisines pour satisfaire une fonction binomiale. 4. Procédé selon la revendication 1 dans laquelle l'étape de sélection desdits kernels mémorisés comprend les opérations consistant à: recouvrir une grille sur la matrice zoom (28), ladite grille comportant une pluralité de lignes horizontales entre lesdites régions d'intensité connue dans lesdites rangées et une pluralité de lignes verticales entre lesdites régions d'intensité connue dans lesdites colonnes, un kernel se trouvant associé à chaque intersection desdites lignes horizontales et verticales, et sélectionner ledit kernel le plus près du centre de ladite région d'intensité inconnue pour Etre utilisé dans l'étape de convolution (24) afin d'obtenir une valeur  The method of claim 1, wherein said selecting step comprises selecting 9 neighboring regions to satisfy a binomial function. 4. The method of claim 1 wherein the step of selecting said stored kernels comprises the operations of: covering a grid on the zoom matrix (28), said grid comprising a plurality of horizontal lines between said regions of known intensity in said rows and a plurality of vertical lines between said regions of known intensity in said columns, a kernel being associated with each intersection of said horizontal and vertical lines, and selecting said kernel closest to the center of said region of unknown intensity for Be used in the convolution step (24) to obtain a value d'intensité pour ladite région d'intensité inconnue.  of intensity for said region of unknown intensity. 5. Procédé selon la revendication 4, comprenant  5. Method according to claim 4, comprising l'étape consistant à utiliser une grille 16 x 16.  the step of using a 16 x 16 grid. 6. Procédé selon la revendication 1, dans lequel lesdits kernels sont indépendants des données d'image, du  6. The method of claim 1, wherein said kernels are independent of the image data, the facteur de zoom (15) et du format matriciel.  zoom factor (15) and matrix format. 7. Procédé selon la revendication 4, comprenant l'étape consistant à incrémenter les kernels sur la base du nombre de lignes de grille dans lesdites régions spécifiées de valeurs d'intensité connue divisées par le 0 facteur de zoom (15) de façon que lorsqu'il existe 16 lignes de grille et un facteur de zoom de 8 seul chaque  The method of claim 4, including the step of incrementing the kernels based on the number of grid lines in said specified regions of known intensity values divided by the zoom factor (15) so that when '' there are 16 grid lines and a zoom factor of 8 only each second kernel soit utilisé.second kernel be used. 8. Procédé selon la revendication 1, dans lequel  8. The method of claim 1, wherein lesdits kernel sont basés sur une fonction polynomiale.  said kernel is based on a polynomial function. S5 9. Procédé selon la revendication 1, dans lequel  S5 9. The method of claim 1, wherein lesdits kernels sont basés sur une fonction binomiale.  said kernels are based on a binomial function. li. Procédé selon la revendication 1. comprenant les étapes consistant à produire un kernel, lesdites étapes de production deun kernel comprenant les opérations consistant à: a) établir une fonction polynomiale qui réunit les régions spécifiée d'intensité connue en une rangée comme une fonction des lignes de grille entre lesdites régions spécifiées, ladite convolution étant: P(isubX) = fi (i-r + A/2 - B/6) + f2 (r-A + B/2) + fE (A/2-B/2) + f4 (B/6)..... (3) o fl f2, f3s f4 sont des régions voisines d'intensité connue dans une rangée, les multiplicateurs fi, f2, f3 et f4 sont les kernels dans la direction X, r = isubX-1)/ISUB +1 A = r(r-1) B = A(r-2> isubX est le nombre de lignes de grille verticales, et 201 ISUB est le nombre total de lignes de grille entre les régions spécifiées d'intensité connue; b) obtenir des facteurs de pondération utilisant la fonction polynomiale P(isubY) afin d'obtenir des kernels dans la direction X conduisant à un kernel de convolution  li. The method of claim 1. comprising the steps of producing a kernel, said steps of producing a kernel comprising the steps of: a) establishing a polynomial function which joins the specified regions of known intensity into a row as a function of the lines grid between said specified regions, said convolution being: P (isubX) = fi (ir + A / 2 - B / 6) + f2 (rA + B / 2) + fE (A / 2-B / 2) + f4 (B / 6) ..... (3) where fl f2, f3s f4 are neighboring regions of known intensity in a row, the multipliers fi, f2, f3 and f4 are the kernels in the direction X, r = isubX-1) / ISUB +1 A = r (r-1) B = A (r-2> isubX is the number of vertical grid lines, and 201 ISUB is the total number of grid lines between the specified regions d intensity known; b) obtain weighting factors using the polynomial function P (isubY) in order to obtain kernels in the X direction leading to a convolution kernel not 4 x 4 pour chaque intersection de grille.  4 x 4 for each grid intersection. 11. Procédé d'interpolation dans une matrice pour obtenir des valeurs interpolées & partir de valeurs connues, ledit procédé comprenant les opérations consistant à produire des kernels qui sont indépendants des valeurs connues ou la dimension de matrice, mais sont fonction de l'emplacement séparant les pixels de valeur connue avec des pixels nécessitant des valeurs interpolées, à effectuer une convolution de pixels voisins de valeur connue avec un kernel déterminé par ô;5 emplacement du pixel ayant besoin d'une valeur interpolée pour obtenir des valeurs pour les pixels nécessitant les  11. A method of interpolation in a matrix to obtain interpolated values from known values, said method comprising the operations consisting in producing kernels which are independent of the known values or the dimension of the matrix, but are a function of the location separating pixels of known value with pixels requiring interpolated values, to convolve neighboring pixels of known value with a kernel determined by;; 5 location of the pixel needing an interpolated value to obtain values for the pixels requiring the valeurs interpolées.interpolated values. 12. Système de traitement d'une image normale en entrée pour fournir une image zoom en sortie (31), l'image en entrée (21) comprenant une matrice d'entrée (27) de rangée et de colonne de région ayant des valeurs d'intensité en entrée correspondant aux rangée et colonne de pixels dans une image d'affichage normal, ladite image zoom en sortie (31) comprenant une matrice zoom (28) de rangées et de colonnes de régions ayant des valeurs d'intensité correspondant aux rangées et colonnes de pixels dans l'image zoom affichée (31), ledit procédé comprenant: un moyen pour spécifier un facteur de zoom et des régions de valeurs d'intensité en entrée pour lesquelles un zoom a été réalise, un moyen pour transférer les valeurs d'intensité en entrée aux régions spécifiées pour lesquelles un zoom doit Etre réalise afin de désigner des régions de la matrice zoom (28), lesdites régions désignées étant séparées par des régions de valeurs d'intensité inconnue, un moyen pour sélectionner des kernels mémorisés individuels pour chacune desdites régions d'intensité inconnues de la matrice zoom (28), lesdits kernels mémorisés étant sélectionnés en fonction de l'emplacement de la région d'intensité inconnue dans la matrice zoom (28>, un moyen servant à sélectionner des régions voisines à partir d'emplacements déterminés par l'emplacement de 0C} la région d'intensité inconnue et le facteur de zoom (15), et un moyen servant à effectuer une convolution desdits kernels mémorises sélectionnés avec des valeurs d'intensité desdites régions voisines sélectionnées avec -_. des valeurs d'intensité connue comprenant les régions désignées de la matrice zoom (28) afin d'obtenir des valeurs d'intensité pour les régions de valeurs  12. A normal input image processing system for providing an output zoom image (31), the input image (21) comprising an input array (27) of region row and column having values of input intensity corresponding to the row and column of pixels in a normal display image, said output zoom image (31) comprising a zoom matrix (28) of rows and columns of regions having intensity values corresponding to the rows and columns of pixels in the displayed zoom image (31), said method comprising: means for specifying a zoom factor and regions of input intensity values for which zooming has been performed, means for transferring the input intensity values to the specified regions for which a zoom must be performed in order to designate regions of the zoom matrix (28), said designated regions being separated by regions of values of unknown intensity, an average in to select individual stored kernels for each of said regions of unknown intensity in the zoom matrix (28), said stored kernels being selected as a function of the location of the region of unknown intensity in the zoom matrix (28>, a means for selecting neighboring regions from locations determined by the location of 0C} the region of unknown intensity and the zoom factor (15), and means for convolving said selected stored kernels with values intensity of said neighboring regions selected with -_. values of known intensity including the designated regions of the zoom matrix (28) in order to obtain intensity values for the regions of values d'intensité inconnue.of unknown intensity. 135. Système selon la revendication 12. comprenant un S moyen (24) servant à sélectionner 16 régions voisines  135. The system of claim 12. comprising a medium S (24) for selecting 16 neighboring regions pour satisfaire una fonction polynomiale.  to satisfy a polynomial function. 14. Système selon la revendication 12, dans lequel ledit moyen de sélection (24) comprend un moyen (26) servant à sélectionner 9 régions voisines pour satisfaire  The system of claim 12, wherein said selection means (24) comprises means (26) for selecting 9 neighboring regions to satisfy une fonction binomiale.a binomial function. 15. Procédé selon la revendication 12, dans lequel le moyen de sélection (24) dudit kernel mémorisé comprend: un moyen servant à recouvrir une grille sur la matrice zoom (28), ladite grille comportant une pluralité 1' de lignes horizontales entre lesdites régions d'intensité connue dans lesdites rangées et une pluralité de lignes verticales entre lesdites régions d'intensité connue dans lesdites colonnes, un kernel associé à chaque intersection desdites lignes horizontales et verticales -- étant présent, et un moyen servant à sélectionner ledit kernel le plus voisin du centre de ladite région d'intensité inconnue pour utilisation par le moyen pour effectuer une convolution afin d'obtenir les valeurs d'intensité pour  15. The method of claim 12, wherein the means for selecting (24) said stored kernel comprises: means for covering a grid on the zoom matrix (28), said grid comprising a plurality 1 'of horizontal lines between said regions of known intensity in said rows and a plurality of vertical lines between said regions of known intensity in said columns, a kernel associated with each intersection of said horizontal and vertical lines - being present, and means for selecting said most kernel neighbor of the center of said region of unknown intensity for use by the means to perform a convolution in order to obtain the intensity values for lesdites régions d'intensité inconnue.  said regions of unknown intensity. 16. Système selon la revendication 15 comprenant une  16. The system of claim 15 comprising a grille 16 x 16.grid 16 x 16. 17. Système selon la revendication 12, dans lequel lesdits kernels sont indépendants de la donnée d'image 3o <21), du facteur de zoom (15) et de la dimension matricielle. 18. Système selon la revendication 15, comprenant le moyen servant à incrémenter les kernels sur la base du nombre de lignes de grille divisé par le facteur de zoom  17. The system of claim 12, wherein said kernels are independent of the image data 3o <21), the zoom factor (15) and the matrix dimension. 18. The system of claim 15, comprising means for incrementing the kernels based on the number of grid lines divided by the zoom factor *_ i(15).* _ i (15). 19. Système selon la revendication 12, dans lequel  19. The system of claim 12, wherein lesdits kernels sont basés sur un polynôme.  said kernels are based on a polynomial. -. Système selon la revendication 12, dans lequel  -. The system of claim 12, wherein lesdits kernels sont basés sur une fonction binomiale.  said kernels are based on a binomial function. 21. Système pour interpolation permettant d'obtenir une valeur interpolée à partir de valeurs connues dans une matrice de pixels, ledit système comprenant un moyen (24) servant à produire les kernels qui sont indépendants de la donnée matricielle ou du format de la matrice, un moyen servant à séparer les pixels de valeur connue à l'aide de pixels nécessitant une valeur inconnue, un moyen servant à effectuer une convolution de pixels de valeur connue avec lesdits kernels produits afin d'obtenir des valeurs pour des pixels nécessitant des  21. A system for interpolation making it possible to obtain an interpolated value from known values in a matrix of pixels, said system comprising means (24) serving to produce kernels which are independent of the matrix data or of the format of the matrix, means for separating pixels of known value using pixels requiring an unknown value, means for carrying out a convolution of pixels of known value with said produced kernels in order to obtain values for pixels requiring valeurs interpolées.interpolated values.
FR8915477A 1988-11-27 1989-11-24 METHOD FOR PROCESSING AN IMAGE TO GIVE A ZOOMED CORRESPONDENCE, AND SYSTEM FOR CARRYING OUT SAID METHOD Granted FR2639740A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IL88511A IL88511A (en) 1988-11-27 1988-11-27 Image processing system

Publications (2)

Publication Number Publication Date
FR2639740A1 true FR2639740A1 (en) 1990-06-01
FR2639740B1 FR2639740B1 (en) 1993-02-26

Family

ID=11059452

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8915477A Granted FR2639740A1 (en) 1988-11-27 1989-11-24 METHOD FOR PROCESSING AN IMAGE TO GIVE A ZOOMED CORRESPONDENCE, AND SYSTEM FOR CARRYING OUT SAID METHOD

Country Status (3)

Country Link
DE (1) DE3939110A1 (en)
FR (1) FR2639740A1 (en)
IL (1) IL88511A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127630B2 (en) 2011-06-29 2018-11-13 Koninklijke Philips N.V. Zooming of medical images

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657047A (en) * 1995-01-12 1997-08-12 Accelgraphics, Inc. Method and apparatus for zooming images on a video display
FR2837591B1 (en) 2002-03-20 2004-07-02 Airbus France AIRPORT VISUALIZATION DEVICE

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4698778A (en) * 1983-09-02 1987-10-06 Ricoh Company, Ltd. Method of processing gradation information with variable magnification
EP0244141A2 (en) * 1986-04-21 1987-11-04 Konica Corporation Image processing system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4578812A (en) * 1982-12-01 1986-03-25 Nec Corporation Digital image processing by hardware using cubic convolution interpolation
IL71924A0 (en) * 1984-05-25 1984-09-30 Elscint Ltd Display interpolator

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4698778A (en) * 1983-09-02 1987-10-06 Ricoh Company, Ltd. Method of processing gradation information with variable magnification
EP0244141A2 (en) * 1986-04-21 1987-11-04 Konica Corporation Image processing system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127630B2 (en) 2011-06-29 2018-11-13 Koninklijke Philips N.V. Zooming of medical images
US10540745B2 (en) 2011-06-29 2020-01-21 Koninklijke Philips N.V. Zooming of medical images

Also Published As

Publication number Publication date
DE3939110A1 (en) 1990-05-31
IL88511A (en) 1992-07-15
FR2639740B1 (en) 1993-02-26
IL88511A0 (en) 1989-06-30

Similar Documents

Publication Publication Date Title
Setlur et al. Automatic image retargeting
Bankhead Analyzing fluorescence microscopy images with ImageJ
US8159550B2 (en) Presenting images as mosaics
US9530195B2 (en) Interactive refocusing of electronic images
EP2102815B1 (en) Method of sharpening using panchromatic pixels
O'Gorman et al. Practical algorithms for image analysis with CD-ROM
Song et al. Probabilistic exposure fusion
EP0368731B1 (en) Process and circuit for image representation signal filtration
US8588548B2 (en) Method for forming a composite image
WO2006055514A1 (en) Variance-based event clustering
WO2006055730A2 (en) Multi-tiered image clustering by event
US9442960B2 (en) High performance data layout and processing
EP0211770A1 (en) Device for sequential picture transformation
Luo et al. Multi-operator image retargeting with automatic integration of direct and indirect seam carving
US8836714B2 (en) Rapid, interactive editing of massive imagery data
FR2644263A1 (en) METHOD AND DEVICE FOR THE ACQUISITION AND DIGITAL STORAGE OF COLORED GEOGRAPHIC MAPS AND FOR RETURNING THESE MAPS
FR2639740A1 (en) METHOD FOR PROCESSING AN IMAGE TO GIVE A ZOOMED CORRESPONDENCE, AND SYSTEM FOR CARRYING OUT SAID METHOD
FR2565004A1 (en) Video display device with interpolation units
EP0161176B1 (en) Device for obtaining continuous traces on a display screen controlled by a graphical processor
Guo et al. NIF-based seam carving for image resizing
Ayubi et al. A new seam carving method for image resizing based on entropy energy and lyapunov exponent
FR2887347A1 (en) Digital image`s depth map constructing method for e.g. digital photography field, involves evaluating clarity of each block to obtain discrete function, and determining and assigning optimal value of focal distance to map
JP5158974B2 (en) Attention area extraction method, program, and image evaluation apparatus
Srivastava et al. Fast content aware image retargeting
JP5232107B2 (en) Image display method, program, image display apparatus, and imaging apparatus

Legal Events

Date Code Title Description
ST Notification of lapse