FR2662524A1 - Process of three-dimensional visualisation by ray tracing with local interpolation - Google Patents

Process of three-dimensional visualisation by ray tracing with local interpolation Download PDF

Info

Publication number
FR2662524A1
FR2662524A1 FR9006683A FR9006683A FR2662524A1 FR 2662524 A1 FR2662524 A1 FR 2662524A1 FR 9006683 A FR9006683 A FR 9006683A FR 9006683 A FR9006683 A FR 9006683A FR 2662524 A1 FR2662524 A1 FR 2662524A1
Authority
FR
France
Prior art keywords
intersection
radius
interpolation
point
estimated
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.)
Withdrawn
Application number
FR9006683A
Other languages
French (fr)
Inventor
Dillenseger Jean Louis
Coatrieux Jean Louis
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to FR9006683A priority Critical patent/FR2662524A1/en
Publication of FR2662524A1 publication Critical patent/FR2662524A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Image Generation (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

The invention relates to all sectors which require means of three-dimensional visualisation and in which the data bases are described on acquisition as a stack of two-dimensional sections or directly in 3-D but with anisotropic sampling in the three dimensions. The process is therefore of relevance, among other things, to all medical imaging sources which provide this type of data. Conventionally, the isotropy of the bases described above is restored, before any manipulation or visualisation, through interpolation of sections. This process has the disadvantage of increasing the volume of data and hence of raising the size of the memory required in the processing systems. The invention is characterised in that no prior global interpolation is carried out on the anisotropic data base (7) before visualisation thereof by ray tracing. To do this, it follows the following procedure: - (8) tracing the ray in the anisotropic base, - (9) estimation of the position of the point of intersection of the ray with the subject to be visualised in the data base, - (10) interpolation in the vicinity of this estimated point, - (11) fine detection of the surface in this interpolated zone, - (12) shadowing as a function of the parameters contained in this zone.

Description

Procédé de visualisation tridimensionnelle par lancer de rayons avec interpolation locale.Three-dimensional ray tracing method with local interpolation.

L'invention concerne tous les domaines qui requièrent des moyens de visualisation tridimensionnelle (3-D) et dans lesquels les bases de données sont décrites à l'acquisition comme un empilement de coupes bidimensionnelles ou directement en 3-D mais avec un échantillonnage anisotrope dans les trois dimensions. Le procédé intéresse donc, entre autres, toutes les sources d'imagerie médicales fournissant ce type de données : Il peut être implanté sur leur informatique hôte mais aussi sur tout calculateur spécialisé ou d'usage général. The invention relates to all domains which require three-dimensional visualization means (3-D) and in which the databases are described on acquisition as a stack of two-dimensional cuts or directly in 3-D but with anisotropic sampling in the three dimensions. The process therefore concerns, among other things, all medical imaging sources providing this type of data: It can be implemented on their host computer but also on any specialized or general purpose computer.

Les techniques de visualisation tridimensionnelle actuellement peuvent être identifiées par le type de représentation des objets contenus dans la base de données qu'elles adoptent. Il s'agit - soit de représentations surfaciques (description de la surface de
l'objet par des approximations d'ordre 1 ou plus, ou encore par des
voxels -volume élémentaire généralement cubique), - soit de représentations volumiques, qui contrairement aux précéden
tes conservent l'ensemble des informations présente dans la base de
données initiale.
Currently three-dimensional visualization techniques can be identified by the type of representation of objects contained in the database they adopt. These are - surface representations (description of the surface of
the object by approximations of order 1 or more, or by
voxels - elementary volume usually cubic), - or voluminal representations, which contrary to the preceding
you keep all the information in the database
initial data.

Dans chacun de ces grands cadres, de nombreuses méthodes ont été proposées. L'invention concerne la représentation par volume et plus particulièrement les techniques par lancer de rayons (par opposition à des techniques de type projection ou de type codage par arbre octal ou "octree"). In each of these great frameworks, many methods have been proposed. The invention relates to the representation by volume and more particularly ray tracing techniques (as opposed to projection type techniques or octal shaft type or "octree").

Les approches basées sur le lancer de rayons sont apparues dans les années 70 en synthèse d'images : la recherche d'effets spéciaux (réflexion multiple, réfraction, ...) a cependant eu comme conséquence de rendre complexes leurs applications. Leur utilisation pour le rendu de volumes ne remonte qu'à trois ou quatre ans. La visualisation de volumes apporte pourtant une simplification majeure, dés lors que des perceptions réalistes des bases de données seront privilégiées par rapport à la recherche d'effets spéciaux. Seuls alors les rayons primaires seront à calculer. Ces techniques sont maintenant parfaitement éprouvées et dans le domaine médical on pourra se référer aux articles de Drebin (DREBIN R., CARPENTER L. et HANRAHAN P., Volume rendering,
ACM Com.Graph., 12, 4, Août 88, pp 65-74), de Levoy (LEVOY M.,
Display of surfaces from volume data, Thesis, University of North
Carolina at Chapel Hill, 1989), de Robb (ROBB R. and BARRILLOT C.,
Interactive 3-D display and analysis, SPIE vol 939 Hybrid Image and
Signal Processing, 1988, pp 173-202) et Trousset (TROUSSET. Y.,
Visualisation d'objets médicaux tridimensionnels, Thèse, ENST Paris, sept 1987 et brevet français FR 2.613.509).
Approaches based on ray tracing appeared in the 1970s in the synthesis of images: the search for special effects (multiple reflection, refraction, etc.), however, resulted in the complexity of their applications. Their use for rendering volumes only goes back three or four years. Visualization of volumes brings a major simplification, however, as realistic perceptions of databases will be favored over the search for special effects. Only then will the primary rays be calculated. These techniques are now perfectly tested and in the medical field we can refer to Drebin's articles (DREBIN R., CARPENTER L. and HANRAHAN P., Volume rendering,
ACM Com.Graph., 12, 4, Aug. 88, pp. 65-74), by Levoy (LEVOY M.,
Thesis, University of North
Carolina at Chapel Hill, 1989), by Robb (ROBB R. and BARRILLOT C.,
Interactive 3-D display and analysis, SPIE vol 939 Hybrid Image and
Signal Processing, 1988, pp. 173-202) and Trousset (TROUSSET.Y.,
Visualization of three-dimensional medical objects, Thesis, ENST Paris, September 1987 and French patent FR 2.613.509).

Tous ces travaux ont apporté des améliorations au schéma de base du lancer de rayons, soit sur le plan de la qualité des représentations, soit en terme de temps de calcul. La méthode, décrite par la suite, a l'avantage de réduire les capacités mémoires requises pour la représentation 3-D et ceci sans limiter les autres fonctionnalités (transformations géométriques, découpes par des plans quelconques, détection de sous objets,qualités de l'image, ...). All these works have brought improvements to the basic pattern of ray tracing, either in terms of the quality of representations, or in terms of computation time. The method, described later, has the advantage of reducing the memory capacities required for the 3-D representation without having to limit the other functionalities (geometrical transformations, cut by any planes, detection of sub-objects, qualities of the picture, ...).

En visualisation d'image 3-D, un compromis doit être trouvé entre trois facteurs principaux : (a) la qualité des images et des fonctions offertes à l'utilisateur, (b) les temps de réponse du système en sachant que l'interactivité
homme-machine (même pour des tailles élevées de bases de données)
doit être assurée, (c) les coûts des stations d'imagerie.
In 3-D image visualization, a compromise must be found between three main factors: (a) the quality of the images and functions offered to the user, (b) the response times of the system knowing that interactivity
man-machine (even for large database sizes)
must be ensured, (c) the costs of the imaging stations.

L'invention proposées permet d'apporter un gain significatif sur le troisième point (c) en diminuant notamment la taille de la mémoire nécessaires aux systèmes de traitement. The proposed invention makes it possible to bring a significant gain on the third point (c) by decreasing in particular the size of the memory necessary for the processing systems.

La particularité de la plupart des bases de données 3-D constituées à partir de coupes (ou plans) 2-D est de présenter une anisotropie axiale. C'est-à-dire que la résolution -l'échantillonnagedans le plan est meilleure que dans la direction orthogonale. The peculiarity of most 3-D databases made from sections (or planes) 2-D is to present an axial anisotropy. That is, the resolution -the sampling in the plane is better than in the orthogonal direction.

Tous les travaux, publiés à ce jours, rétablissent avant toute visualisation ou manipulation de la base de données l'isotropie du volume en interpolant entre les coupes. La taille totale de la base de données est ainsi multipliée par un facteur N, avec N#2.  All the works, published to date, restore the isotropy of the volume by interpolating between cuts before any visualization or manipulation of the database. The total size of the database is thus multiplied by a factor N, with N # 2.

Il apparaît avantageux, pour éviter cette augmentation du volume de données, de ne pas pratiquer une interpolation globale préalable et de visualiser directement le contenu de la base anisotrope. Une seule publication (TROUSSET. Y., Visualisation d'objets médicaux tridimensionnels, Thèse, ENST Paris, sept 1987) propose un schéma permettant de faire l'économie d'une telle augmentation mais en contraignant le problème de telle sorte que la condition (a) n'est plus totalement respectée. Sa méthode de visualisation d'une base de données tridimensionnelle formées de coupes empilées est caractérisé par le fait que son incidence de vision est choisie de manière à ce que l'écran est placé perpendiculairement aux coupes et que les rayons suivent une géométrie parallèle. Ainsi, à chaque ligne de l'écran correspond l'image de la tranche d'une coupe.Après un lancer de rayons sur la base anisotrope, il lui suffit d'interpoler des ligne entre les lignes de l'écran. Cette méthode n'est généralisable ni dans le cas où l'incidence de vision est quelconque, ni dans celui d'une géométrie conique. It seems advantageous, to avoid this increase in the volume of data, not to practice a prior global interpolation and to directly view the content of the anisotropic base. A single publication (TROUSSET.Y., Visualization of three-dimensional medical objects, thesis, ENST Paris, Sept. 1987) proposes a scheme to economize such an increase but by constraining the problem so that the condition ( a) is no longer fully respected. Its method of viewing a three-dimensional database formed of stacked sections is characterized in that its incidence of vision is chosen so that the screen is placed perpendicular to the sections and that the rays follow a parallel geometry. Thus, each line of the screen corresponds to the image of the slice of a section. After a ray tracing on the anisotropic base, it is enough for it to interpolate lines between the lines of the screen. This method is generalizable neither in the case where the incidence of vision is any, nor in that of a conical geometry.

La présente invention vise à fournir un procédé de visualisation par lancer de rayons ne nécessitant pas d'interpolation préalable de la base de données et s'affranchissant des restrictions citées préalablement. The present invention aims to provide a ray tracing display method that does not require prior interpolation of the database and overcomes the aforementioned restrictions.

C'est-à-dire que - la base de données anisotrope initiale reste inchangée, - seules les parties visibles (surfaces ou volumes internes) à
l'observateur et indépendamment du point de vue choisi devront être
interpolées lors de la visualisation.
That is, - the initial anisotropic database remains unchanged, - only the visible parts (internal surfaces or volumes) to
the observer and regardless of the point of view chosen shall be
interpolated during visualization.

Dans ce but, l'invention propose une méthode caractérisée par une séquence d'opérations à réaliser pour chaque rayon et qui se décompose en différente phases (1) définition du rayon (trajectoire) dans la base anisotrope, (2) estimation de la position du point d'intersection du rayon avec le
ou les sujets à visualiser dans la base de donnés, (3) interpolation sur le voisinage de ce point estimé (le choix de
l'interpolateur est libre, il faut seulement qu'il soit local), (4) recherche sur le rayon dans la zone interpolée du point
d'intersection, (5) calcul éventuel de la normale, (6) spécification de la valeur au plan image (ombrage).
For this purpose, the invention proposes a method characterized by a sequence of operations to be performed for each radius and which is broken down into different phases (1) definition of the radius (trajectory) in the anisotropic base, (2) estimation of the position from the point of intersection of the radius with the
or the subjects to be visualized in the database, (3) interpolation on the neighborhood of this estimated point (the choice of
the interpolator is free, it only needs to be local), (4) search on the radius in the interpolated area of the point
intersection, (5) possible calculation of normal, (6) specification of image value (shading).

L'invention sera mieux comprise à la lecture de la description qui suit, d'un mode particulier de mise en oeuvre de l'invention, donné à titre d'exemple non limitatif. Cet exemple reprend les principes de base du lancer de rayons et définit les notations indispensables. Dans un but de simplification, l'exemple est décrit en géométrie parallèle. Son principe s'étend cependant aux projections perspectives. The invention will be better understood on reading the description which follows, of a particular embodiment of the invention, given by way of non-limiting example. This example uses the basic principles of ray tracing and defines the essential notations. For the sake of simplification, the example is described in parallel geometry. Its principle, however, extends to future projections.

La description se réfère aux schémas qui l'accompagnent dans lesquels
- la figure 1 est un schéma qui présente les deux repères (écran
et objets) et les relations géométriques entre eux,
- la figure 2 est un schéma qui représente le lancer de rayons en
géométrie parallèle,
- la figure 3 est un graphe destiné à illustrer la suite d'opéra
tions du lancer de rayons avec interpolation locale,
- la figure 4 est un schéma qui pose le problème de l'intersec
tion entre le rayon et l'objet décrit dans la base de données,
- la figure 5 est un schéma qui illustre une des méthodes d'esti
mation approchée de la position de l'intersection rayon/objet,
- la figure 6 est un schéma qui illustre une deuxième méthode
d'estimation approchée de cette position,
- la figure 7 présente des histogrammes permettant l'évaluation
des méthodes proposées.
The description refers to the diagrams that accompany it in which
FIG. 1 is a diagram showing the two markers (screen
and objects) and the geometric relations between them,
FIG. 2 is a diagram showing the ray tracing in
parallel geometry,
FIG. 3 is a graph intended to illustrate the opera suite
ray tracing with local interpolation,
FIG. 4 is a diagram that poses the problem of intersec
between the department and the object described in the database,
FIG. 5 is a diagram illustrating one of the methods of
approximation of the position of the radius / object intersection,
FIG. 6 is a diagram illustrating a second method
approximate estimation of this position,
- Figure 7 shows histograms for evaluation
proposed methods.

Un rayon dans une base isotrope est définit de la manière suivante
La scène 3-D possède son propre repère (1) (voir figure 1) appelé repère objet Rob. Celui-ci dépend de la disposition des coupes tomographiques. Traditionnellement ces dernières sont considérées parallèles au plan (xobXyob) et empilées selon l'axe zob.
A radius in an isotropic base is defined as follows
The 3-D scene has its own marker (1) (see Figure 1) called the Rob object mark. This depends on the arrangement of tomographic sections. Traditionally these are considered parallel to the plane (xobXyob) and stacked along the zob axis.

L'autre système de coordonnées (2) -le repère écran ou repère image tYc est lié à la visualisation. L'écran représente le plan (xec,yec). La scène est placée du côté des Zec positifs. The other coordinate system (2) -the screen mark or image mark tYc is linked to the visualization. The screen represents the plane (xec, yec). The scene is placed on the side of positive Zec.

Ces deux repères sont liés par des relations de rotation et de translation. Ces relations dépendent des paramètres de vision. La direction de l'observation est défini e par ses coordonnées sphériques dans le repère objet (1) qui forment une matrice de rotation [R] entre les deux repères. Les origines des repères sont liées par un vecteur de translation. These two marks are linked by rotational and translational relations. These relationships depend on the vision parameters. The direction of the observation is defined by its spherical coordinates in the object reference (1) which form a rotation matrix [R] between the two marks. The origins of the landmarks are linked by a translation vector.

Lors du lancer d'un rayon, la position relative d'un point de ce dernier par rapport à l'objet doit être connue en permanence. Ceci impose constamment de passer d'un repère à l'autre. Toutefois, pour visualiser une base de données formée de voxels, il est plus efficace de tourner l'écran autour de l'objet que de tourner l'objet lui-même. When launching a ray, the relative position of a point of the ray relative to the object must be known continuously. This constantly requires to move from one benchmark to another. However, to visualize a database of voxels, it is more efficient to turn the screen around the object than to rotate the object itself.

Ce sont donc les transformations écran/objet qui interviendront le plus souvent.It is therefore the screen / object transformations that will occur most often.

Ceci revient à appliquer la formule suivante
[Xob,Yob,Zob] = [ R ] [Xec,Yec,Zec]+T
Le principe du lancer de rayons est le suivant (voir figure 2). A partir du point de départ (3) P0(x0,y0,z0), le rayon (4) est parcouru de l'écran (5) vers la scène (6). A chaque incrément, une transformation de repère écran/objet est effectuée. Sur le résultat de celle-ci -c'est-à-dire les coordonnées de la position du rayon dans le repère objet- sont vérifiées les conditions d'intersection (par une fonction que nous appellerons CONDITION~D~INTERSECTION). Ces dernières peuvent être fondées sur la densité, le gradient local ou bien d'autres attributs du voxel. Une fois l'intersection constatée, la couleur du pixel (xo,y0) est calculée.
This amounts to applying the following formula
[Xob, Yob, Zob] = [R] [Xec, Yec, Zec] + T
The principle of ray tracing is as follows (see Figure 2). From the starting point (3) P0 (x0, y0, z0), the ray (4) is traversed from the screen (5) to the scene (6). At each increment, a screen / object mark transformation is performed. On the result of this one - that is to say the coordinates of the position of the radius in the reference object - are verified the conditions of intersection (by a function which we will call CONDITION ~ D ~ INTERSECTION). These can be based on density, local gradient, or other attributes of voxel. Once the intersection is found, the color of the pixel (xo, y0) is calculated.

Le rayon est une droite dans le repère écran. Les paramètres de ce rayon sont
- son point de départ Po (x0,y0,z0),
- son vecteur directeur d [ dx, dy, dz ],
- une variable t représentant la position le long du rayon.
The ray is a straight line in the screen mark. The parameters of this ray are
- its starting point Po (x0, y0, z0),
its director vector d [dx, dy, dz],
a variable t representing the position along the radius.

Son équation s'écrit

Figure img00050001

x(t) = x0 + doit y(t) = y0 + z(t) = z0 + dz.t
Si les rayons sont parallèles entre eux et à l'axe Zec t vaut [ 0,0,1 ] . His equation is written
Figure img00050001

x (t) = x0 + must y (t) = y0 + z (t) = z0 + dz.t
If the rays are parallel to each other and to the axis Zec t is [0,0,1].

L'équation du rayon se ramène à

Figure img00060001

x(t) = xo y(t) = y0 z(t) = z0 + t c'est à dire : [xec(t),yec(t),zec(t)] = [ x0,y0,z0+t ] où x0 et y0 sont les coordonnées du pixel de départ,
Les coordonnées du rayon dans le repère objet, pour un t donné, sont
[xob(t),yob(t),zob(t)] = [R]. [xec(t),yec(t),zec(t)] + T
= [R].[x0,y0,z0+t] + T
Cette opération se décompose en trois termes
Figure img00060002

xob(t) = x0.r11 + y0.r21 + (z0+t).r31 + tx yob(t) = x0.r12 + y0.r22 + (z0+t).r32 + ty
Zob(t) = x0.r13 + y0 r23 + (z0+t).r33 + tz
avec rjj les composante de la matrice [R] et ti les valeurs du vecteur T.The radius equation can be reduced to
Figure img00060001

x (t) = xo y (t) = y0 z (t) = z0 + t ie: [xec (t), yec (t), zec (t)] = [x0, y0, z0 + t] where x0 and y0 are the coordinates of the starting pixel,
The coordinates of the radius in the object reference, for a given t, are
[xob (t), yob (t), zob (t)] = [R]. [xec (t), yec (t), zec (t)] + T
= [R]. [X0, y0, z0 + t] + T
This operation breaks down into three terms
Figure img00060002

xob (t) = x0.r11 + y0.r21 + (z0 + t) .r31 + tx yob (t) = x0.r12 + y0.r22 + (z0 + t) .r32 + ty
Zob (t) = x0.r13 + y0 r23 + (z0 + t) .r33 + tz
with rjj the components of the matrix [R] and ti the values of the vector T.

La transformation des coordonnées à chaque pas du rayon ralenti le processus. Nous incrémenterons donc directement le rayon dans le repère objet. The transformation of the coordinates at each step of the ray slowed down the process. We will therefore increment the radius directly in the object reference.

Cet incrément vaut

Figure img00060003

Xob(ti) - xob(tj-1) = (ti-ti-1).r31
Yob(ti) - yob(ti-1) = (ti-ti-1).r32 zob(t;) - zob(ti-1) = (ti-ti-1).r33 Si nous considérons # #t = ti-ti-1 (pas du rayon), alors nous avons:
[xob(ti ) ,yob(ti) X zob(ti) ] = [ xo#(ti.i) ,yob(ti-1 ) , Zob(ti-1)
+ [ r31,r32,r33 ] . This increment is worth
Figure img00060003

Xob (ti) - xob (tj-1) = (ti-ti-1) .r31
Yob (ti) - yob (ti-1) = (ti-ti-1) .r32 zob (t) - zob (ti-1) = (ti-ti-1) .r33 If we consider # #t = ti-ti-1 (not radius), then we have:
[xob (ti), yob (ti) X zob (ti)] = [xo # (ti.i), yob (ti-1), Zob (ti-1)
+ [r31, r32, r33].

En rappel et en référence avec le schéma synoptique de la figure 3 voici les différentes opérations du lancer de rayons sur une base anisotrope (7) (cette dernière, dans cet exemple, sera composée de coupes présentant une seule anisotropie selon Zob): (8) lancer du rayon dans la base anisotrope, (9) estimation de la position du point d'intersection du rayon avec le ou les sujets à visualiser dans la base de donnés, (10) interpolation sur le voisinage de ce point estimé, (11) détection fine de la surface dans cette zone interpolée, (12) ombrage en fonction des paramètres contenus dans cette zone. As a reminder and with reference to the block diagram of FIG. 3 are the various operations of ray tracing on an anisotropic base (7) (the latter, in this example, will be composed of sections presenting a single anisotropy according to Zob): (8 ) launching the radius into the anisotropic base, (9) estimating the position of the point of intersection of the radius with the subject (s) to be displayed in the database, (10) interpolation on the vicinity of that estimated point, (11) ) fine detection of the surface in this interpolated zone, (12) shading according to the parameters contained in this zone.

Le rayon dans la base anisotrope est définit de la manière suivante:
L'échantillonnage du repère Rob n'est plus isotrope. Si D représente la distance inter-coupes et p la taille d'un pixel des coupes originales, le rapport de compression (noté e) de Rob selon l'axe zob vaut : e=D/p.
The radius in the anisotropic base is defined as follows:
The sampling of the Rob landmark is no longer isotropic. If D represents the inter-slice distance and p is the size of a pixel of the original slices, the compression ratio (denoted e) of Rob along the zob axis is: e = D / p.

Le ré-échantillonnage isotrope, par interpolation de e-l coupes fictives entre deux coupes originales, définit un nouveau repère appelé Riso. La transformation entre R. et Rob est soumis à une matrice de mise à l'échelle E.

Figure img00070001
The isotropic resampling, by interpolation of the fictitious sections between two original sections, defines a new reference point called Riso. The transformation between R. and Rob is subjected to a scaling matrix E.
Figure img00070001

<tb><Tb>

<SEP> 1 <SEP> 0 <SEP> 0 <SEP>
<tb> E <SEP> O <SEP> <SEP> 1 <SEP> 0
<tb> <SEP> 0 <SEP> O <SEP> l/e <SEP>
<tb>
Le lancer de rayons, décrit précédemment est effectué du repère sur sur Rjso. Les transformations géométriques entre les différents repères sont
[xiso,yiso,ziso] = [ R ] .
<SEP> 1 <SEP> 0 <SEP> 0 <SEP>
<tb> E <SEP> O <SEP><SEP> 1 <SEP> 0
<tb><SEP> 0 <SEP> Y <SEP> l / e <SEP>
<Tb>
The ray tracing, previously described, is done from the mark on on Rjso. The geometric transformations between the different marks are
[xiso, yiso, ziso] = [R].

[xob,yob,zob] = [ E ] . [ XisosYisoXZiso ]
L'estimation de la position de l'intersection du rayon avec le ou les sujets à visualiser dans la base de données peut se dérouler ainsi:
Voir figure 4; si pour les plans originaux (13) les rayons (14) touchent bien l'objet (15), pour les plans "intermédiaires" une surface encore inexistante doit être détectée.
[xob, yob, zob] = [E]. [XisosYisoXZiso]
The estimation of the position of the intersection of the radius with the subject (s) to be displayed in the database can proceed as follows:
See Figure 4; if for the original planes (13) the spokes (14) touch the object (15), for the "intermediate" planes a still non-existent surface must be detected.

l'interpolation sur un voisinage volumique est gourmande en temps de calcul. La réduction de ce voisinage impose une estimation de la position de la surface la plus précise possible. the interpolation on a volume neighborhood is greedy in computing time. The reduction of this neighborhood imposes an estimate of the position of the surface as accurate as possible.

Le module de détection est le suivant : le point d'intersection estimé est un voxel du repère Riso qui appartient à la trajectoire du rayon partant de (xec,yec) et qui répond à un critère appelé
ESTIMATION. C'est-à-dire

Figure img00080001

Pa(x,y,Z) : point de détection approchée de la surface viso(xiso,yiso,ziso) : voxel de Rjso de position (xiso,yiso,ziso)
Rayon(xec,yec) : rayon lancé du pixel (xe#,yec) ESTIMATION(x,y,z) : module d'estimation de la position de la surface
Plusieurs modèles de la fonction ESTIMATION sont étudiés, qui font intervenir des critères géométriques et les propriétés physiques des structures.The detection module is as follows: the estimated intersection point is a voxel of the Riso coordinate system which belongs to the trajectory of the radius starting from (xec, yec) and which satisfies a criterion called
ESTIMATE. That is to say
Figure img00080001

Pa (x, y, Z): approximate detection point of the viso surface (xiso, yiso, ziso): position Rjso voxel (xiso, yiso, ziso)
Radius (xec, yec): ray of the ray (xe #, yec) ESTIMATION (x, y, z): modulus of the position of the surface
Several models of the ESTIMATION function are studied, which involve geometric criteria and the physical properties of the structures.

ler modèle
Ce modèle, qui se réfère à la figure 5, est fondée sur la discrétisations originale de la base de données. Un lancer de rayons sur une base anisotrope équivaut, en fait, à un lancer de rayons (16) sur une base isotrope pour laquelle chaque coupe (17) retrouve son épaisseur originale (18). Tout ce passe comme si dans le repère Riso les voxels des plans intermédiaires prenaient la valeur des plans originaux. Nous pouvons donc détecter les voxels (18) de la surface de manière classique c'est-à-dire dès qu'un rayon (16) les pénètrent (19).
the model
This model, which refers to Figure 5, is based on the original discretizations of the database. A ray tracing on an anisotropic base is, in fact, a ray tracing (16) on an isotropic basis for which each trench (17) returns to its original thickness (18). Everything happens as if in the reference Riso the voxels of the intermediate planes took the value of the original planes. We can therefore detect the voxels (18) of the surface in a conventional manner that is to say as soon as a ray (16) penetrates (19).

La condition de détection approchée s'écrit

Figure img00080002
The approximate detection condition is written
Figure img00080002

CONDITION~D~INTERSECTION est la fonction citée précédemment qui vérifie si le voxel appartient ou non à l'objet. Le voxel candidat a pour adresse

Figure img00080003

et la partie entière de
Figure img00080004
CONDITION ~ D ~ INTERSECTION is the function mentioned above that checks whether the voxel belongs to the object or not. The candidate voxel has for address
Figure img00080003

and the whole part of
Figure img00080004

Cette translation de 0,5 permet de répartir l'épaisseur de part et d'autre de la coupe originale.This translation of 0.5 makes it possible to distribute the thickness on both sides of the original section.

- 2ème modèle
Ce modèle se réfère à la figure 6. Le rayon (20), calculé en nombre réel, est entouré d'autres rayons formés par les coordonnées entières du rayon initiale. Ces rayons, que nous pouvons appeler rayons auxiliaires, touchent obligatoirement les zones connues de l'objet. Les coordonnées de la position approchée de l'intersection du rayon sont déterminées par interpolation des positions d'intersections des rayons auxiliaires avec l'objet.
- 2nd model
This model refers to Figure 6. The radius (20), calculated in real numbers, is surrounded by other rays formed by the integer coordinates of the initial radius. These rays, which we may call auxiliary rays, necessarily affect the known areas of the object. The coordinates of the approximate position of the intersection of the radius are determined by interpolation of the intersecting positions of the auxiliary radii with the object.

Seule l'interpolation selon Zob est déterminante. Les rayons auxiliaires peuvent être réduits aux nombre de deux : celui qui se trouve au-dessus (z entier supérieur) et celui qui se trouve endessous (z entier inférieur). Only the interpolation according to Zob is decisive. Auxiliary rays can be reduced to the number of two: the one above (z upper integer) and the one below (z lower integer).

L'estimation se déroule de la façon suivante : les intersections des rayons auxiliaires supérieurs (21) et inférieurs (22) sont recherchées par CONDITIONP' INTERSECTION(x,b, y,b, z,b+l) pour le rayon auxiliaire supérieur et par CONDITION~D'INTERSECTION(xOb,yOb,zOb) pour le rayon auxiliaire inférieur. Le point de la surface estimé est représenté par l'intersection (23) du rayon (20) et de la ligne (24) définie par les deux points d'intersection trouvés (21) et (22). The estimation proceeds as follows: the intersections of the upper (21) and lower (22) auxiliary radii are searched for by the CONDITIONP 'INTERSECTION (x, b, y, b, z, b + 1) for the upper auxiliary radius and by CONDITION ~ OF INTERSECTION (xOb, yOb, zOb) for the lower auxiliary radius. The point of the estimated area is represented by the intersection (23) of the radius (20) and the line (24) defined by the two intersection points found (21) and (22).

- 36 modèle
Le premier modèle peut être affiné. Le paramètre physique (densité, ...) associé au point détecté est calculé par interpolation linéaire des valeurs des coupes environnantes. Si cette valeur répond aux conditions d'intersection, ce point est retenu, sinon le rayon est incrémenté.

Figure img00090001
- 36 models
The first model can be refined. The physical parameter (density, ...) associated with the detected point is calculated by linear interpolation of the values of the surrounding cuts. If this value meets the intersection conditions, this point is retained, otherwise the radius is incremented.
Figure img00090001

avec

Figure img00090002

e : rapport de compression d : distance entre
Figure img00090003

coupes originales selon z
Figure img00090004
with
Figure img00090002

e: compression ratio d: distance between
Figure img00090003

original cuts according to z
Figure img00090004

Le module de l'interpolation locale est le suivant
Toutes les techniques d'interpolation à partir de données locales sont utilisables qu'elles soient du premier ordre (interpolation linéaire) ou plus élaborées (fonctions splines, ... ). Cette liste n'est pas limitative, la seule restriction est le caractère local de l'interpolation.
The local interpolation module is as follows
All interpolation techniques from local data are usable whether they are of the first order (linear interpolation) or more elaborate (spline functions, ...). This list is not limiting, the only restriction is the local character of the interpolation.

La taille et la forme de la zone environnant le point d'intersection estimé et dans laquelle sera menée l'interpolation peut être définie arbitrairement. Différent critères permettent toutefois un ajustement de ces paramètres (cette liste est non limitative) - la précision du modèle de détection, - le rapport e (si e est faible -2 ou 3- la position estimée est
proche de la surface "réelle"), - la technique d'interpolation retenue. Il s'avère que les points
estimés par l'opérateur de détection sont proches de la surface de
l'objet après interpolation linéaire. Si la technique d'interpola
tion locale est linéaire, la région peut se résumer aux proches
voisins (connexes) du voxel détecté. Pour les techniques d'ordre
supérieur cette région doit être étendue, - la direction de vision.La région doit être étendue selon la direc
Lion de islon (celle du rayon), la méthode de calcul de l'ombrage (des voisins qui y sont
nécessaires).
The size and shape of the area surrounding the estimated intersection point and in which the interpolation will be conducted may be arbitrarily defined. However, different criteria allow an adjustment of these parameters (this list is not exhaustive) - the accuracy of the detection model, - the ratio e (if e is low -2 or 3- the estimated position is
close to the "real" surface), - the chosen interpolation technique. It turns out that the points
estimated by the detection operator are close to the surface of
the object after linear interpolation. If the interpola technique
localization is linear, the region can be summed up
neighbors (related) of the detected voxel. For ordering techniques
this region must be extended, - the direction of vision. The region must be extended according to the direction
Lion of islon (that of the ray), the method of calculation of the shading (of the neighbors who are there
required).

La détection fine de la surface et l'ombrage se déroulent ainsi
Les différents voxels, issus du module d'interpolation, sont stockés dans une petite base auxiliaire. Le rayon, transposé dans cette base auxiliaire et isotrope, procède de manière classique (recherche de la surface, ombrage -en fonction du gradient de la surface, de l'éloignement de l'écran, des sources de lumières, de la nature de la surface, .. ...).
The fine detection of the surface and the shading take place thus
The different voxels, coming from the interpolation module, are stored in a small auxiliary base. The ray, transposed in this auxiliary and isotropic base, proceeds in a classical way (search for the surface, shading - as a function of the gradient of the surface, the distance from the screen, sources of light, the nature of the area, .. ...).

La validation de la méthode à été effectuée sur deux plans - l'appréciation subjective des différences entre images par
comparaison visuelle, - l'analyse quantitative des valeurs issues des procédures proposées.
The validation of the method was done on two levels - the subjective appreciation of the differences between images by
visual comparison, - the quantitative analysis of the values resulting from the proposed procedures.

Cette dernière pouvait être réalisée directement dans l'espace 3-D interpolé après détection. La valeur locale des comparaisons et la complexité de mise en oeuvre ont conduit à préférer une comparaison des images projetées sous différents points de vue. La procédure appliquée est la suivante : 1) acquisition de bases de données 3-D anisotrope; 2) interpolation globale et visualisation sous un angle d'incidence particulier; 3) pour le même point de vue, calcul de l'image par interpolation locale sur le rayon; 4) soustraction point par point des images obtenues en (2) et (3) et statistiques sur les différences. The latter could be performed directly in the interpolated 3-D space after detection. The local value of the comparisons and the complexity of implementation have led to a preference for comparing the projected images from different points of view. The procedure applied is as follows: 1) acquisition of 3-D anisotropic databases; 2) global interpolation and visualization at a particular angle of incidence; 3) for the same point of view, calculation of the image by local interpolation on the ray; 4) point-by-point subtraction of the images obtained in (2) and (3) and statistics on the differences.

Cette évaluation a été faite pour des nombres de coupes interpolées variables, en utilisant les méthodes de détection décrites précédemment et différents schémas d'interpolation. Les résultats après reparcours local du rayon ne présentant pas de différence significatives, seuls les points de détection approchée ont été utilisés, ce qui à comme intérêt de simplifier la méthode. This evaluation was made for variable interpolated section numbers, using the previously described detection methods and different interpolation schemes. The results after local reparcours of the radius do not have significant difference, only the approximate detection points were used, which with interest to simplify the method.

Pour l'une des bases de données ayant fait l'objet de test, base de résolution 128 X 128 X 136 voxels (volume isotrope), la suppression d'une coupe sur deux a été effectuée. La base de données, rendue ainsi anisotrope, a été visualisée soit après interpolation globale (linéaire), soit par lancer de rayons avec interpolation locale. La figure 7 nous montre les histogrammes des différences entre l'image originale (base de données isotrope de départ) et les images produites après interpolation globale (25) ou interpolation locale (ler modèle de détection (26), 2ème (27) et 3ème (28)). Elle montre que le 3ème modèle de détection donne les meilleurs résultats et que ceux ci sont extrêmement proche de ceux de l'interpolation globale. For one of the databases tested, based on 128 X 128 X 136 voxels (isotropic volume) resolution, the removal of every other cut was performed. The database, rendered anisotropic, was visualized either after global (linear) interpolation or by ray tracing with local interpolation. Figure 7 shows the histograms of the differences between the original image (starting isotropic database) and the images produced after global interpolation (25) or local interpolation (1st detection model (26), 2nd (27) and 3rd (28)). It shows that the 3rd model of detection gives the best results and that these are extremely close to those of the global interpolation.

Naturellement, la présente invention n'est pas limitée à la description qui vient d'être faite. En particulier elle peut s'appliquer à toute les techniques d'accélération du processus de lancer de rayons. L'avantage de ce procédé est qu'il peut être généralisable ou s'insérer à toute séquence d'opérateurs le long du rayon exploitants les distribution locales des paramètres physiques ou simplement des critères géométriques.  Naturally, the present invention is not limited to the description that has just been made. In particular, it can be applied to all techniques for accelerating the ray tracing process. The advantage of this method is that it can be generalized or inserted in any sequence of operators along the radius operators local distribution of physical parameters or simply geometric criteria.

Claims (8)

Revendicationsclaims 1 - Procédé de visualisation tridimensionnelle du contenu d'une base de données volumique présentant une ou plusieurs anisotropies axiales (échantillonnage différent selon les trois axes), selon une incidence quelconque, utilisant le principe de lancer de rayons et caractérisé en ce qu'il comprend les opérations suivantes - définition du rayon (trajectoire) dans la base anisotrope, - estimation de la position du point d'intersection du rayon avec le 1 - Method for three-dimensional visualization of the content of a volume database having one or more axial anisotropies (different sampling along the three axes), according to any incidence, using the principle of ray tracing and characterized in that it comprises the following operations - definition of the radius (trajectory) in the anisotropic base, - estimation of the position of the point of intersection of the radius with the ou les sujets à visualiser dans la base de données, - interpolation sur le voisinage de ce point estimé (le choix de or the subjects to be visualized in the database, - interpolation on the neighborhood of this estimated point (the choice of l'interpolation est libre, il faut seulement qu'il soit local), - recherche sur le rayon dans la zone interpolée du point the interpolation is free, it only needs to be local), - search on the radius in the interpolated zone of the point d'intersection, - calcul éventuel de la normale en ce point et spécification de la valeur au plan image (ombrage). intersection, - possible calculation of the normal at this point and specification of the value in the image plane (shading). 2 - Procédé selon la revendication 1, caractérisé en ce que la position du point d'intersection du rayon avec le ou les sujets contenus dans la base anisotrope est estimée lorsque le rayon pénètre un voxel (anisotrope) de cette base, voxel qui répond aux conditions d'intersection souhaitées. 2 - Process according to claim 1, characterized in that the position of the point of intersection of the radius with the subject or subjects contained in the anisotropic base is estimated when the ray penetrates a voxel (anisotropic) of this base, voxel which responds to desired intersection conditions. 3 - Procédé selon la revendication 1, caractérisé en ce que la position du point d'intersection du rayon avec le ou les sujets contenus dans la base anisotrope est estimée par une méthode qui se sert du principe suivant : le rayon, calculé en nombre réel, est entouré d'autres rayons formés par les coordonnées entières du rayon initiale, que ces rayons, que nous pouvons appeler rayons auxiliaires, touchent obligatoirement les zones connues de l'objet; ainsi les coordonnées de la position approchée de. l'intersection du rayon sont déterminées par interpolation des positions d'intersections des rayons auxiliaires avec l'objet.  3 - Process according to claim 1, characterized in that the position of the point of intersection of the radius with the subject or subjects contained in the anisotropic base is estimated by a method which makes use of the following principle: the radius, calculated in real number , is surrounded by other rays formed by the integer coordinates of the initial ray, that these rays, which we may call auxiliary rays, necessarily affect the known zones of the object; thus the coordinates of the approximate position of. the intersection of the radius are determined by interpolation of the intersections positions of the auxiliary radii with the object. 4 - Procédé selon la revendication 3, caractérisé en ce que la position du point d'intersection du rayon avec le ou les sujets contenus dans la base anisotrope est estimée par une méthode qui se sert du fait que si la base de données ne présente qu'une seule anisotropie axiale seule l'interpolation selon cette direction est déterminante; ainsi les rayons auxiliaires peuvent être réduits au nombre de deux : ceux qui se trouvent de part et d'autre du rayon selon cette direction; l'estimation se déroule le principe suivant les intersections des deux rayons auxiliaires sont recherchées, le point de la surface estimé est représenté par l'intersection (23) du rayon (20) et de la ligne (24) définie par les deux points d'intersection trouvés (21) et (22). 4 - Process according to claim 3, characterized in that the position of the point of intersection of the radius with the subject or subjects contained in the anisotropic base is estimated by a method which makes use of the fact that if the database only presents a single axial anisotropy only the interpolation in this direction is decisive; thus the auxiliary rays can be reduced to the number of two: those which are on both sides of the ray in this direction; the estimation proceeds the principle according to the intersections of the two auxiliary rays are sought, the point of the estimated surface is represented by the intersection (23) of the radius (20) and of the line (24) defined by the two points d intersection found (21) and (22). 5 - Procédé selon la revendication 2, selon lequel le paramètre physique associé au point trouvé selon le procédé de la revendication 2 est calculé par interpolation linéaire des valeurs des coupes environnantes; la position du point d'intersection du rayon avec le ou les sujets contenus dans la base anisotrope est estimée si la valeur du paramètre physique répond aux conditions d'intersection. 5 - Process according to claim 2, wherein the physical parameter associated with the point found according to the method of claim 2 is calculated by linear interpolation of the values of the surrounding cuts; the position of the point of intersection of the radius with the subject or subjects contained in the anisotropic base is estimated if the value of the physical parameter meets the intersection conditions. 6 - Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que la position estimée de l'intersection entre le rayon et le ou les sujets contenus dans la base de données est considéré comme position exacte de cette intersection. 6 - Process according to any one of claims 1 to 5, characterized in that the estimated position of the intersection between the radius and the subject or subjects contained in the database is considered as the exact position of this intersection. 7 - Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que la taille et la forme de la zone environnant le point d'intersection estimé et dans laquelle sera menée l'interpolation sont définies soit arbitrairement soit selon un ou plusieurs critères de la liste suivante - la précision du modèle de détection, - le ou les rapports caractérisant l'anisotropie, - la technique d'interpolation retenue, - la direction de vision, - la méthode de calcul de l'ombrage (des voisins qui y sont 7 - Process according to any one of claims 1 to 6, characterized in that the size and shape of the area surrounding the estimated intersection point and in which the interpolation will be conducted are defined either arbitrarily or in one or more criteria of the following list - the accuracy of the detection model, - the relationship (s) characterizing the anisotropy, - the chosen interpolation technique, - the direction of vision, - the shading calculation method (of the neighbors who are there nécessaires).  required). 8 - Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que les différents voxels, issus du module d'interpolation, sont stockés dans une petite base auxiliaire temporaire et que le rayon, transposé dans cette base auxiliaire et isotrope, procède de manière classique pour trouver le ou les objets à visualiser et pour spécifier la valeur du plan image (ombrage).  8 - Process according to any one of claims 1 to 7, characterized in that the different voxels, from the interpolation module, are stored in a small temporary auxiliary base and the radius, transposed in this auxiliary base and isotropic, proceeds in a conventional manner to find the object or objects to be displayed and to specify the value of the image plane (shading).
FR9006683A 1990-05-25 1990-05-25 Process of three-dimensional visualisation by ray tracing with local interpolation Withdrawn FR2662524A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR9006683A FR2662524A1 (en) 1990-05-25 1990-05-25 Process of three-dimensional visualisation by ray tracing with local interpolation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9006683A FR2662524A1 (en) 1990-05-25 1990-05-25 Process of three-dimensional visualisation by ray tracing with local interpolation

Publications (1)

Publication Number Publication Date
FR2662524A1 true FR2662524A1 (en) 1991-11-29

Family

ID=9397071

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9006683A Withdrawn FR2662524A1 (en) 1990-05-25 1990-05-25 Process of three-dimensional visualisation by ray tracing with local interpolation

Country Status (1)

Country Link
FR (1) FR2662524A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000033257A1 (en) * 1998-11-27 2000-06-08 Algotec Systems Ltd. A method for forming a perspective rendering from a voxel space

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0362123A2 (en) * 1988-09-26 1990-04-04 Visual Information Technologies, Inc. High-speed image rendering method using look-ahead images

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0362123A2 (en) * 1988-09-26 1990-04-04 Visual Information Technologies, Inc. High-speed image rendering method using look-ahead images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SYSTEMS & COMPUTERS IN JAPAN, vol. 18, no. 11, novembre 1987, pages 31-39, Silver Spring, MD, US; TAKAAKI AKIMOTO et al.: "Pixel-selected ray-tracing" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000033257A1 (en) * 1998-11-27 2000-06-08 Algotec Systems Ltd. A method for forming a perspective rendering from a voxel space
US6999078B1 (en) 1998-11-27 2006-02-14 Algotec Systems Ltd. Method of forming a perspective rendering from a voxel space

Similar Documents

Publication Publication Date Title
US10893250B2 (en) Free-viewpoint photorealistic view synthesis from casually captured video
Kruger et al. Clearview: An interactive context preserving hotspot visualization technique
JP6041838B2 (en) Method and apparatus for rendering a virtual object in a real environment
JP4204670B2 (en) Volume data representation system
KR101482578B1 (en) Multi-view ray tracing using edge detection and shader reuse
US11887256B2 (en) Deferred neural rendering for view extrapolation
FR2798759A1 (en) SYSTEM AND METHOD FOR VOLUME RENDERED SEGMENTATION
JP2010541053A (en) Method and apparatus for rendering a virtual object in a real environment
CN111009033A (en) OpenGL-based focal region visualization method and system
Meerits et al. Real-time scene reconstruction and triangle mesh generation using multiple RGB-D cameras
Minto et al. Online access and sharing of reality-based 3D models
US7230620B2 (en) Rendering deformable and animated surface reflectance fields
Bornik et al. High‐quality texture reconstruction from multiple views
Kadosh et al. Tricubic interpolation of discrete surfaces for binary volumes
US6518964B1 (en) Apparatus, system, and method for simplifying annotations on a geometric surface
Waschbüsch et al. 3d video billboard clouds
Pan et al. Perception-motivated visualization for 3D city scenes
FR2662524A1 (en) Process of three-dimensional visualisation by ray tracing with local interpolation
Corcoran et al. Perceptual enhancement of two-level volume rendering
Yu et al. Surface camera (scam) light field rendering
Böhm From point samples to surfaces-on meshing and alternatives
Lechlek et al. Interactive hdr image-based rendering from unstructured ldr photographs
Li et al. State-of-the-art line drawing techniques
Eisemann et al. Filtered Blending: A new, minimal Reconstruction Filter for Ghosting-Free Projective Texturing with Multiple Images.
Truong et al. Novel View Synthesis for Sparse RGB-D camera networks

Legal Events

Date Code Title Description
ST Notification of lapse