[go: up one dir, main page]

WO2004055545A1 - Procede de conversion d'images pour presentation sous forme bitmap - Google Patents

Procede de conversion d'images pour presentation sous forme bitmap Download PDF

Info

Publication number
WO2004055545A1
WO2004055545A1 PCT/EP2003/050766 EP0350766W WO2004055545A1 WO 2004055545 A1 WO2004055545 A1 WO 2004055545A1 EP 0350766 W EP0350766 W EP 0350766W WO 2004055545 A1 WO2004055545 A1 WO 2004055545A1
Authority
WO
WIPO (PCT)
Prior art keywords
bitmap
point
points
polygon
polygons
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.)
Ceased
Application number
PCT/EP2003/050766
Other languages
English (en)
Inventor
François Maurice
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.)
Thales Ultrasonics SAS
Original Assignee
Thales Ultrasonics SAS
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 Thales Ultrasonics SAS filed Critical Thales Ultrasonics SAS
Priority to AU2003286195A priority Critical patent/AU2003286195A1/en
Publication of WO2004055545A1 publication Critical patent/WO2004055545A1/fr
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/52Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S15/00
    • G01S7/52017Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S15/00 particularly adapted to short-range imaging
    • G01S7/52053Display arrangements
    • G01S7/52057Cathode ray tube displays
    • G01S7/5206Two-dimensional coordinated display of distance and direction; B-scan display
    • G01S7/52063Sector scan display
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S15/00Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
    • G01S15/88Sonar systems specially adapted for specific applications
    • G01S15/89Sonar systems specially adapted for specific applications for mapping or imaging
    • G01S15/8906Short-range imaging systems; Acoustic microscope systems using pulse-echo techniques
    • G01S15/8977Short-range imaging systems; Acoustic microscope systems using pulse-echo techniques using special techniques for image reconstruction, e.g. FFT, geometrical transformations, spatial deconvolution, time deconvolution
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/52Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S15/00
    • G01S7/52017Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S15/00 particularly adapted to short-range imaging
    • G01S7/52023Details of receivers
    • G01S7/52044Scan converters

Definitions

  • the present invention relates to a method for converting images for presentation in bitmap form.
  • the acquisition of images in fields such as medical ultrasound, radars, lidars or sonars is generally carried out by “shots” of emission beams, their echoes being collected in the direction of the emission beams . These echoes are reflected, on reception, by luminance values of points arranged, after data processing, on the different directions of the beams, which are generally parallel or radial.
  • the commonly used display devices have a “bitmap” display and are either television type or pixel type scanning screens with a matrix layout (liquid crystal screens). The pixels of these display devices generally have a higher density than that of the echoes and a different arrangement.
  • the subject of the present invention is a method of converting images acquired using parallel and / or radial “shots” into bitmap type images, a method which allows processing as quickly as possible.
  • the method according to the invention consists, consists, before a sequence of shots, and for a given bitmap display format, in determining for each point of the bitmap, if it belongs to an analysis polygon, each polygon d analysis being defined by at least two consecutive points of a shot and by the two points of the same rank of the next shot, and if so, to chain it to the last point of the bitmap found in this polygon, to determine its position in the polygon, to reorganize the data thus collected according to the order of arrival of the points in the order of the shots, to locate the last point of each non-empty polygon, to associate with each of the empty polygons a determined point of the bitmap, then , during the shootings, to produce for each point received an operand comprising the luminances of at least four of the vertices of the polygon whose point in question is the last vertex received which identifies it, to arrange these operands in the order of reception of the corresponding points, and, at the end of each shot, to calculate the
  • the polygons are quadrilaterals. According to another characteristic of the invention, during the processing of a set of points of the bitmap, the loading into cache memory of the data necessary for processing a following set of points of the bitmap is forced.
  • the coefficients of the interpolation law are stored in a table addressed by the position of the points in the polygon examined.
  • a data table is made up containing the Cartesian addresses of each point of the bitmap and its relative position inside the corresponding polygon. According to yet another characteristic of the invention, said data table is organized in ascending order of shots and of acquired polygons and that it contains information signaling the last point of the polygon in question.
  • a table is created containing the luminance operands of the vertices of each polygon, in the order of acquisition of these polygons, before calculating the luminances of the points of the bitmap.
  • a table is created giving, for each shot, the indices of the first and last polygons visible in the bitmap.
  • a global table is created giving, for each shot, the addresses of the first entry and of the last entry of the bitmap data table for a given bitmap.
  • the bitmap point associated with each of the empty polygons is the same for all these polygons.
  • the point produced for each of the empty polygons is a point on the edge of the bitmap, which is whitened or blackened at the end of the calculation of the bitmap according to the background color of the bitmap.
  • the method is applied to at least one of the following fields: ultrasound medical imaging, acoustic camera, radar, NMR apparatus.
  • Figure 1 is a simplified diagram relating to a method of converting images of the prior art.
  • Figure 2 is a simplified diagram for explaining the method of the invention.
  • bitmap raster
  • the density of the bitmap points is higher than that of the P and Q points of lines 1 and 2, but it is understood that in the vicinity of the probe, the reverse may be true.
  • the lines 3, 4, 5 pass between the points Pj and Pj + 1 on the one hand, and between the points Qj and Qj + 1, and ten of the points of these three lines are included in the quadrilateral 6 whose four vertices are Pj, Pj + 1, Qj, Qj + 1. Let A be one of these ten points, located on line 4.
  • This point like all the other points of the bitmap, has Cartesian coordinates x and y, and its luminance is noted Lx, y because it depends on its position relative at the "luminous" points Pj, Pj + 1, Qj and Qj + 1, which are the only luminous points in the immediate vicinity of A.
  • the luminance Lxy of point A is calculated as follows. Let Lij, Li, j + 1, Li + 1, j and Li + 1, j + 1, be the respective luminances of the points Pj, Pj + 1, Qj, Qj + 1 and a, b, c, d of the dependent coefficients relative distances from point A to said four vertices of quadrilateral 6. We then have:
  • Lxy aLij + bLij + 1 + cLi + 1j + dLi + 1j + 1
  • Such a linear combination of four luminances is not the only possible way to calculate Lxy, which can be calculated according to other types of combination (nonlinear , with more than four points, ).
  • E2 It determines the analysis quadrilateral to which this next point belongs.
  • E3 It calculates the interpolation coefficients (a, b, c, d) relative to this next point.
  • E4 It calculates the luminance of this next point from the above-mentioned interpolation coefficients.
  • E5 It stores this luminance value in the memory defining the bitmap. In general, each shot and the resulting luminance data take place in sequence, and it may be advantageous, immediately after making two successive shots, to calculate the luminances of all the points of the bitmap located between the lines (lines of shot) relating to these two shots. Two different approaches are known for implementing the conversion process recalled above.
  • steps E1 to E5 are carried out in real time, as the luminance data is acquired.
  • Patent US-A-5 957846 describes an algorithm allowing step E1 to be carried out by addressing a bitmap by polar exploration (rotation of a scanning line around a fixed point located at the intersection of the lines shooting). This process requires little storage memory, but requires a lot of calculations.
  • the steps E1 to E3 are calculated once and for all.
  • This table contains the successive coordinates (x, y) of the points of the bitmap, their quadrilaterals of belonging, their interpolation coefficients.
  • the data in this table are then called in real time, as successive shots are taken for the calculations in step E4. This process is technically feasible since the memories of current processors are sufficiently large (typically, the memory capacity required is a few megabytes).
  • the second approach tends to supplant the first because it is faster and requires less computing means than the first, the current most efficient processors being sufficient to perform the necessary calculations in real time.
  • the implementation of this second approach is relatively complex and cannot be done on common personal computers, especially if one uses ultrasonic probes with a large number of piezoelectric elements. Indeed, the number of points included in an analysis quadrilateral is variable (from zero to the entire bitmap), depending on the zoom factor and the location of the quadrilateral. In addition, some quadrilaterals may not contain any bitmap points.
  • the present invention makes it possible to use the precharging instructions in cache memory to store therein in advance the data of the data table which will be requested in the near and foreseeable future. It is therefore no longer dependent on the use of the central memory whose access times are too slow. This is made possible thanks to a very simple program sequence making it possible to identify with certainty the moments when we must preload in cache the data to be used later.
  • the method of the invention organizes the data table relating to the points of the bitmap and their associated data quadrilateral by quadrilateral, these quadrilaterals being classified in the order of their formation, that is to say in the order of reception of their last vertex (lower right vertex): for example in the case of FIG. 1, quadrilateral 6 (whose last vertex received is Qj + 1) comes immediately after quadrilateral 6A (whose last vertex received is Qj) , and it is immediately followed by quadrilateral 6B (whose last vertex received is Qj + 2).
  • the method of the invention makes it possible to resolve this difficulty by virtue of a characteristic explained below with reference to FIG. 2.
  • FIG. 2 several successive divergent lines of fire 7 to 13 have been represented (originating from a probe shown) and the outline 14 of a bitmap image in the desired viewing position of this image with respect to these lines of fire.
  • the image is zoomed and the bitmap does not represent the entire acquired image.
  • the bitmap intersects, for example, firing lines 8 to 12.
  • analysis points have only been represented for lines 9 and 10.
  • the analysis points are, in general, referenced Pi j , the index i being the sequence number of the shot and the index j the sequence number of the point on the firing line considered.
  • the five analysis points contained in contour 14 are, respectively, P9j, P9J + 1, ... P9J + 4 (j is the rank of the first point of line 9 visible in outline 14).
  • the five analysis points contained in contour 14 are, respectively: P10J, P10, j + 1, ... P10, + 4.
  • the analysis quadrilaterals are identified for example by the coordinates of their upper left vertex.
  • the quadrilaterals between lines 9 and 10 and comprising points visible in bitmap 14 are the quadrilaterals referenced by points P9, j-1 to P9, j + 4.
  • the rule adopted by the invention is that if the first quadrilateral comprising points visible in the bitmap is Pij and if the last quadrilateral comprising points visible in the bitmap is (Pi + nj + n) then all the intermediate quadrilaterals will be assumed to contain each at least one visible point, for which a luminance will be calculated and displayed. In the case where one of these intermediate quadrilaterals does not include any point of the bitmap, we associate with it a unique dummy point, common to all the empty quadrilaterals, for example the first point of the bitmap (the first one at the top, on the left). No calculation is made for the quadrilaterals prior to Pij and those posterior to Pi + n j + n.
  • the method of the invention consists in systematically traversing all the quadrilaterals from Pij to Pi + nj + n and performing for each of them at least one luminance calculation. If a quadrilateral is empty or if it contains only one point of the bitmap, it is considered to contain a single point (dummy or real) and this point is also considered as the last point of the quadrilateral, which is indicated by a special bit (described below). If a quadrilateral has several points, the last of them (in the direction of scanning the bitmap) is also indicated by a special bit.
  • This special bit controls the incrementation of the reading of the data table (luminance table of the vertices of the quadrilaterals) to pass to the reading of the data relating to the next quadrilateral (empty or not) at the end of the calculations relating to the last point of the quadrilateral Analyzing. This avoids the loss of time caused by the search for the next non-empty quadrilateral.
  • This phase begins as soon as you have made a choice of image geometry or zoom factor and want to start the analysis.
  • this position is called
  • POS POS and its value consists of the fractional part of i (firing index), on 5 bits and the fractional part of j (index of the point analyzed on the firing line), on 3 bits.
  • the parameters i and j are the polar coordinates of the treated points, obtained by transformation of the Cartesian coordinates of the points of the bitmap (these Cartesian coordinates are x and y).
  • the above chaining is used to arrange the data in ascending order of their quadrilaterals of belonging.
  • the table has one entry per bitmap point located in one of these quadrilaterals. Each entry in the table (on 32 bits for example) therefore contains the following data (relating to a single point):
  • index table indicating, for each shot, the first and last entries in the data table relating to this shot, as well as the serial numbers of the first and of the last quadrilateral visible for this shot.
  • the invention provides for using the instructions with multiple operands available with the INTEL processors (instructions of the SIMD or MMX type).
  • these instructions there is in particular an operation which carries out at one time four multiplications and two additions. Knowing that in general a quadrilateral can contain several points of the bitmap (except the special cases in the vicinity of the probe cited above), it is advantageous to generate each time that we receive a new data of shooting a multiple operand which concatenates the four values of luminance of vertices of the quadrilateral whose last point received is the bottom right vertex.
  • the four luminance values (La, Lb, Le, Ld) are each defined on 16 bits and concatenated into a 64-bit operand, and on the other hand, the four coefficients (a, b, c , d), also defined on 16 bits, are concatenated, in the same order, into a 64-bit operand.
  • La, Lb, Le and Ld are respectively multiplied by a, b, c, d, and a first addition consists in simultaneously adding on the one hand aLa + bLb, which gives a partial result E, and on the other hand cLc + dLd, which gives another partial result F, these two partial results being concatenated into a 64-bit word, and finally performing a second addition E + F.
  • the conversion operation is carried out, reduced to its simplest expression, namely a calculation loop covering all of the entries in the data table relating to the shot in question, this table being formed during the preparation phase.
  • This loop performs the calculations mentioned above, namely the multiplication of the luminances of the four vertices of the quadrilateral being analyzed by the interpolation coefficients of the bitmap point considered.
  • the luminances were acquired during the shots and stored in cache memory and the coefficients are stored in a constant array of multiple operands, also residing in cache memory.
  • This table of coefficients is indexed by the value (“POS”) of the entry considered in the data table.
  • the calculation program consumes exactly one entry in the data table per path of the loop. We can therefore accurately predict the moment when we will need data from the data table, and use, if it exists, the preload instruction in the processor cache memory.
  • this processor is a Pentium III TM
  • a line of cache memory represents 256 bits, and the optimum is therefore to carry out a preload (called "prefetch" ) of the cache memory every 8 calculated points.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Image Processing (AREA)

Abstract

Le procédé de conversion d'images de l'invention, qui s'applique en particulier à l'échographie ultrasonore, consiste essentiellement, avant les tirs, à préparer un tableau de données et des tableaux d'index en rangeant les points de bitmap dans l'ordre des quadrilatères visibles tels que reçus dans l'ordre des tirs, puis, au cours des tirs, à préparer une structure de données, incluant, pour chaque quadrilatère visible, les luminances de ses quatre sommets, et à la fin de chaque tir, à calculer les luminances de tous les nouveaux points de la bitmap que l'on peut afficher.

Description

PROCEDE DE CONVERSION D'IMAGES POUR PRESENTATION SOUS
FORME BITMAP
La présente invention se rapporte à un procédé de conversion d'images pour présentation sous forme bitmap.
L'acquisition d'images dans des domaines tels que l'échographie médicale, les radars, les lidars ou les sonars est généralement réalisée par des « tirs » de faisceaux d'émission, leurs échos étant recueillis dans la direction des faisceaux d'émission. Ces échos se traduisent, à la réception, par des valeurs de luminance de points disposés, après traitement de données, sur les différentes directions des faisceaux, qui sont généralement parallèles ou radiaux. Or, les dispositifs d'affichage couramment utilisés ont un affichage « bitmap » et sont soit des écrans à balayage de type télévision ou à pixels à disposition matricielle (écrans à cristaux liquides). Les pixels de ces dispositifs d'affichage ont en général une densité plus élevée que celle des échos et une disposition différente. Il est donc nécessaire, pour constituer une image « bitmap », de convertir les différents points recueillis, ou plus exactement leurs luminances respectives, en points à disposition matricielle, et d'interpoler entre les points recueillis afin de pouvoir présenter une image « bitmap » sans lacunes.
La présente invention a pour objet un procédé de conversion d'images acquises selon des « tirs » parallèles et/ou radiaux en images de type bitmap, procédé qui permette un traitement le plus rapide possible.
Le procédé conforme à l'invention consiste, consiste, avant une séquence de tirs, et pour un format d'affichage bitmap donné, à déterminer pour chaque point de la bitmap, s'il appartient à un polygone d'analyse, chaque polygone d'analyse étant défini par au moins deux points consécutifs d'un tir et par les deux points de même rang du tir suivant, et si oui, à le chaîner au dernier point de la bitmap trouvé dans ce polygone, à déterminer sa position dans le polygone, à réorganiser les données ainsi recueillies selon l'ordre d'arrivée des points dans l'ordre des tirs, à repérer le dernier point de chaque polygone non vide, à associer à chacun des polygones vides un point déterminé de la bitmap, puis, pendant les tirs, à produire pour chaque point reçu un opérande comportant les luminances d'au moins quatre des sommets du polygone dont le point en question est le dernier sommet reçu qui l'identifie, à ranger ces opérandes dans l'ordre de réception des points correspondants, et, à la fin de chaque tir, à calculer la luminance de chaque point contenu dans chacun des polygones pris dans l'ordre de réception des sommets les identifiant, ce calcul étant fait selon une loi d'interpolation appropriée à partir des luminances d'au moins les sommets du polygone contenant le point en question, le passage d'un polygone au suivant étant commandé lors de la détection du dernier point contenu dans ce polygone, à mémoriser les luminosités des points ainsi calculés et à produire l'image bitmap en lisant les luminosités des points ainsi mémorisés.
De façon avantageuse, les polygones sont des quadrilatères. Selon une autre caractéristique de l'invention, pendant le traitement d'un ensemble de points de la bitmap, on force le chargement en mémoire cache des données nécessaires au traitement d'un ensemble suivant de points de la bitmap.
Selon encore une autre caractéristique de l'invention, les coefficients de la loi d'interpolation sont stockés dans une table adressée par la position des points dans le polygone examiné.
Selon encore une autre caractéristique de l'invention, on constitue une table de données contenant les adresses cartésiennes de chaque point de la bitmap et sa position relative à l'intérieur du polygone correspondant. Selon encore une autre caractéristique de l'invention, ladite table de données est organisée dans l'ordre croissant des tirs et des polygones acquis et qu'elle contient une information signalant le dernier point du polygone en question.
Selon encore une autre caractéristique de l'invention, on constitue une table contenant les opérandes de luminance des sommets de chaque polygone, dans l'ordre d'acquisition de ces polygones, avant de calculer les luminances des points de la bitmap.
Selon encore une autre caractéristique de l'invention, on constitue une table donnant, pour chaque tir, les indices du premier et du dernier polygones visibles dans la bitmap.
Selon encore une autre caractéristique de l'invention, on constitue une table globale donnant, pour chaque tir, les adresses de la première entrée et de la dernière entrée du tableau de données bitmap pour une bitmap donnée. Selon encore une autre caractéristique de l'invention, le point de bitmap associé à chacun des polygones vides est le même pour tous ces polygones.
Selon encore une autre caractéristique de l'invention, le point produit pour chacun des polygones vides est un point du bord de la bitmap, qui est blanchi ou noirci à la fin du calcul de la bitmap selon la couleur du fond de la bitmap.
Selon encore une autre caractéristique de l'invention, le procédé est appliqué à l'un au moins des domaines suivants : imagerie médicale ultrasonore, caméra acoustique, radar, appareil de RMN.
La présente invention sera mieux comprise à la lecture de la description détaillée d'un mode de mise en œuvre, pris à titre d'exemple non limitatif et illustré par le dessin annexé, sur lequel :
• la figure 1 est un diagramme simplifié relatif à un procédé de conversion d'images de l'art antérieur ; et
• la figure 2 est un diagramme simplifié servant à expliquer le procédé de l'invention.
L'invention est décrite ci-dessous en référence à la conversion d'images d'échographie médicale, mais il est bien entendu qu'elle n'est pas limitée à cette seule application, et qu'elle peut être mise en œuvre pour la conversion d'images fournies par divers appareils fonctionnant selon le principe de « tirs », et balayant une portion d'espace, que ces tirs soient parallèles entre eux et/ou radiaux, comme par exemple les radars, les sonars, le RMN, ... On a représenté en figure 1 , de façon simplifiée, deux lignes de tir consécutives et immatérielles 1, 2 d'une sonde d'échographie.
Ces deux lignes sont radiales (divergentes), mais les explications ci-dessous restent valables si ces lignes sont parallèles entre elles. Le rang de la ligne 1 , dans l'ordre de tir des différentes lignes est i, et celui de la ligne 2 est i+1. Sur chacune de ces deux lignes, on a représenté les échos consécutifs par des points : pour la ligne 1 , ils sont références Pj-1, Pj, Pj+1, Pj+2, ... et ... Qj-1, Qj, Qj+1, Qj+2 ... pour la ligne 2, les indices ...j-1 , j, j+1, ... correspondant à des mêmes distances de tir d'une ligne à la suivante. On a, d'autre part, représenté trois lignes consécutives et immatérielles 3, 4, 5 parallèles entre elles et sur lesquelles sont alignés les points régulièrement espacés d'une image bitmap (matricielle) telle qu'affichée sur un écran de moniteur à tube cathodique ou un écran à cristaux liquides ou à plasma. Sur le dessin, qui est représenté relativement loin de la sonde de laquelle partent les lignes de tir, la densité des points bitmap est plus élevée que celle des points P et Q des lignes 1 et 2, mais il est bien entendu qu'au voisinage de la sonde, l'inverse peut être vrai. Sur la figure 1, les lignes 3, 4, 5 passent entre les points Pj et Pj+1 d'une part, et entre les points Qj et Qj+1, et dix des points de ces trois lignes sont compris dans le quadrilatère 6 dont les quatre sommets sont Pj, Pj+1, Qj, Qj+1. Soit A un de ces dix points, situé sur la ligne 4. Ce point, comme tous les autres points de la bitmap, a des coordonnées cartésiennes x et y, et sa luminance est notée Lx,y car elle dépend de sa position par rapport aux points « lumineux » Pj, Pj+1, Qj et Qj+1, qui sont les seuls points lumineux au voisinage immédiat de A. On pourrait également tenir compte des points non immédiatement voisins de A et situés sur les lignes 1 et 2 et/ou sur les lignes précédente et suivante, mais, en général, cela complique le calcul sans améliorer notablement l'image bitmap.
De façon bien connue, la luminance Lxy du point A est calculée de la façon suivante. Soient Lij, Li,j+1, Li+1,j et Li+1,j+1, les luminances respectives des points Pj, Pj+1, Qj, Qj+1 et a, b, c, d des coefficients dépendant des distances relatives du point A auxdits quatre sommets du quadrilatère 6. On a alors :
Lxy = aLij + bLij+1 + cLi+1j + dLi+1j+1 Une telle combinaison linéaire de quatre luminances n'est pas la seule façon possible de calculer Lxy, qui peut être calculée selon d'autres types de combinaison (non linéaire, avec plus de quatre points, ...).
A partir de ces données, le processus de conversion effectue les étapes E1 à E5 suivantes :
E1 - Dès la fin du calcul de la luminosité d'un point de la bitmap, il détermine les coordonnées (x,y) du prochain point à afficher.
E2 - Il détermine le quadrilatère d'analyse auquel appartient ce prochain point. E3 - Il calcule les coefficients d'interpolation (a, b, c, d) relatifs à ce prochain point. E4 - Il calcule la luminance de ce prochain point à partir des coefficients d'interpolation précités. E5 - Il stocke cette valeur de luminance dans la mémoire définissant la bitmap. En général, chaque tir et les données de luminance qui en résultent ont lieu en séquence, et il peut être avantageux, aussitôt après avoir effectué deux tirs successifs, de calculer les luminances de tous les points de la bitmap situés entre les lignes (lignes de tir) relatives à ces deux tirs. On connaît deux approches différentes pour mettre en œuvre le processus de conversion rappelé ci-dessus.
Selon la première approche, les étapes E1 à E5 sont réalisées en temps réel, au fur et à mesure de l'acquisition des données de la luminance. Le brevet US-A-5 957846, par exemple, décrit un algorithme permettant de réaliser l'étape E1 en adressant une bitmap par exploration polaire (rotation d'une ligne de balayage autour d'un point fixe situé à l'intersection des lignes de tir). Ce procédé requiert peu de mémoire de stockage, mais nécessite beaucoup de calculs.
Selon une deuxième approche, qui s'applique lorsque les points de la bitmap ont une position fixe d'une trame d'image à la suivante par rapport aux quadrilatères d'analyse, les étapes E1 à E3 sont calculées une fois pour toutes. On produit alors un tableau de données, stockées en mémoire. Ce tableau comporte les coordonnées successives (x, y) des points de la bitmap, leurs quadrilatères d'appartenance, leurs coefficients d'interpolation. Les données de ce tableau sont ensuite appelées en temps réel, au fur et à mesure des tirs successifs pour les calculs de l'étape E4. Ce procédé est techniquement réalisable depuis que les mémoires des processeurs courants sont suffisamment grandes (typiquement, la capacité de mémoire requise est de quelques mégaoctets). Actuellement, la deuxième approche a tendance à supplanter la première du fait qu'elle est plus rapide et requiert moins de moyens de calcul que la première, les processeurs actuels les plus performants étant suffisants pour réaliser en temps réel les calculs nécessaires. Cependant, la mise en œuvre de cette deuxième approche est relativement complexe et ne peut pas être faite sur des ordinateurs personnels courants, en particulier si l'on utilise des sondes ultrasonores à grand nombre d'éléments piézoélectriques. En effet, le nombre de points compris dans un quadrilatère d'analyse est variable (de zéro à l'ensemble de la bitmap), selon le facteur de zoom et la localisation du quadrilatère. De plus, certains quadrilatères peuvent ne contenir aucun point de bitmap. Il en résulte une complexité dans la logique de déroulement et de branchement de l'algorithme, qui passe beaucoup de temps à chercher le prochain quadrilatère non vide, ce temps passé « improductif », étant trop important par rapport au temps mis à calculer la luminance des points de la bitmap. Une autre conséquence est qu'il est difficile d'anticiper le déroulement précis du processus. Ceci est gênant en particulier lorsque l'on veut utiliser un processeur d'ordinateur personnel pour réaliser la conversion. En effet, un tel processeur dispose d'une mémoire cache beaucoup plus rapide que la mémoire centrale (de grande capacité en général), mais cette mémoire cache est de capacité limitée, et ne permet pas de stocker l'intégralité du tableau de données tel que défini selon le procédé connu.
La présente invention permet d'utiliser les instructions de préchargement en mémoire cache pour y stocker à l'avance les données du tableau de données qui seront demandées dans un futur proche et prévisible. Elle n'est donc plus tributaire du recours à la mémoire centrale dont les temps d'accès sont trop lents. Ceci est rendu possible grâce à un déroulement de programme très simple permettant d'identifier à coup sûr les instants où l'on doit précharger en mémoire cache les données à utiliser ultérieurement. Le procédé de l'invention organise le tableau de données relatif aux points de la bitmap et à leurs données associées quadrilatère par quadrilatère, ces quadrilatères étant classés dans l'ordre de leur formation, c'est-à-dire dans l'ordre de réception de leur dernier sommet (sommet inférieur droit) : par exemple pour le cas de la figure 1, le quadrilatère 6 (dont le dernier sommet reçu est Qj+1 ) vient aussitôt après le quadrilatère 6A (dont le dernier sommet reçu est Qj), et il est immédiatement suivi du quadrilatère 6B (dont le dernier sommet reçu est Qj+2).
Le seul branchement attendu se produit donc lorsque l'on a traité le dernier point de bitmap d'un quadrilatère et que l'on doit passer au point à traiter suivant (le branchement consiste à répondre à la question : « le point venant après celui qui vient d'être traité est-il situé dans le quadrilatère suivant ? »). Le problème est qu'il peut se produire des cas où le prochain quadrilatère contenant au moins un point de la bitmap ne soit pas le suivant, mais le deuxième ou le troisième voisin. Ce genre de situation se présente en particulier lorsque les quadrilatères sont ceux d'une zone proche de la sonde. Dans une telle zone, la densité des points d'analyse (échos reçus par la sonde) est supérieure à la densité des points de la bitmap. Il n'y a donc pas, en moyenne, un point de bitmap par quadrilatère d'analyse.
Le procédé de l'invention permet de résoudre cette difficulté grâce à une caractéristique expliquée ci-dessous en référence à la figure 2. Sur cette figure 2, on a représenté plusieurs lignes de tir successives divergentes 7 à 13 (issues d'une sonde non représentée) et le contour 14 d'une image bitmap dans la position de visualisation désirée de cette image par rapport à ces lignes de tir. Dans l'exemple représenté sur cette figure, l'image est zoomée et la bitmap ne représente pas l'intégralité de l'image acquise. La bitmap intersecte par exemple les lignes de tir 8 à 12. Pour simplifier le dessin, on n'a représenté des points d'analyse que pour les lignes 9 et 10. Les points d'analyse sont, de façon générale, référencés Pi j, l'indice i étant le numéro d'ordre du tir et l'indice j le numéro d'ordre du point sur la ligne de tir considérée. Sur la ligne 9 (i = 9), les cinq points d'analyse contenus dans le contour 14 sont, respectivement, P9j, P9J+1, ... P9J+4 (j est le rang du premier point de la ligne 9 visible dans le contour 14). Sur la ligne 10 (i = 10), les cinq points d'analyse contenus dans le contour 14 sont, respectivement : P10J, P10,j+1, ... P10,+4. Les quadrilatères d'analyse sont repérés par exemple par les coordonnées de leur sommet supérieur gauche. Ainsi, les quadrilatères compris entre les lignes 9 et 10 et comprenant des points visibles dans la bitmap 14 sont les quadrilatères référencés par les points P9,j-1 à P9,j+4. La règle adoptée par l'invention est que si le premier quadrilatère comprenant des points visibles dans la bitmap est Pij et si le dernier quadrilatère comprenant des points visibles dans la bitmap est (Pi+nj+n) alors tous les quadrilatères intermédiaires seront supposés contenir chacun au moins un point visible, pour lequel une luminance sera calculée et affichée. Dans le cas où un de ces quadrilatères intermédiaires n'inclut aucun point de la bitmap, on lui associe un point factice unique, commun à tous les quadrilatères vides, par exemple le premier point de la bitmap (le premier en haut, à gauche). On n'effectue aucun calcul pour les quadrilatères antérieurs à Pij et ceux postérieurs à Pi+n j+n. Ainsi, plutôt que de perdre du temps à effectuer un branchement, le procédé de l'invention consiste à parcourir systématiquement tous les quadrilatères de Pij à Pi+nj+n et à effectuer pour chacun d'eux au moins un calcul de luminance. Si un quadrilatère est vide ou s'il ne contient qu'un seul point de la bitmap, on considère qu'il contient un point unique (factice ou réel) et ce point est aussi considéré comme dernier point du quadrilatère, ce qui est signalé par un bit spécial (décrit ci-dessous). Si un quadrilatère comporte plusieurs points, le dernier d'entre eux (dans le sens du balayage de la bitmap) est également signalé par un bit spécial. Ce bit spécial commande l'incrémentation de la lecture du tableau de données (tableau de luminances des sommets des quadrilatères) pour passer à la lecture des données relatives au quadrilatère suivant (vide ou non) dès la fin des calculs relatifs au dernier point du quadrilatère en cours d'analyse. Ainsi, on évite la perte de temps causée par la recherche du quadrilatère non vide suivant.
On va maintenant décrire en détail le déroulement du processus de conversion d'image selon la présente invention.
1) - Préparation du tableau de données et de tableaux d'index
Cette phase débute dès que l'on a fait un choix de géométrie d'image ou de facteur de zoom et que l'on veut commencer l'analyse.
Il n'est pas nécessaire de l'optimiser, car on dispose typiquement de quelques dixièmes de seconde pour cette phase sans que cela crée une gêne pour l'utilisateur de l'échographe.
Cette phase se déroule de la façon suivante. Pour chaque point
(de coordonnées rectangulaires x, y) de la bitmap, on détermine s'il appartient à un quadrilatère d'analyse. Si oui, on le chaîne au dernier point trouvé dans ce quadrilatère, si ce dernier point existe. On détermine aussi la position de ce point dans le quadrilatère.
Dans le présent exemple, cette position est dénommée
« POS » et sa valeur se compose de la partie fractionnaire de i (indice de tir), sur 5 bits et de la partie fractionnaire de j (indice du point analysé sur la ligne de tir), sur 3 bits. Les paramètres i et j sont les coordonnées polaires des points traités, obtenues par transformation des coordonnées cartésiennes des points de la bitmap (ces coordonnées cartésiennes sont x et y) . On utilise le chaînage précité pour ranger les données par ordre croissant de leurs quadrilatères d'appartenance. Le tableau comporte une entrée par point de bitmap situé dans un de ces quadrilatères. Chaque entrée du tableau (sur 32 bits par exemple) comporte donc les données suivantes (relatives à un seul point) :
> l'adresse (en x, y) du point de bitmap considéré, codée linéairement (par exemple sur 23 bits) ;
> sa position (« POS ») dans son quadrilatère (par exemple sur 8 bits, comme précisé ci-dessus) ; et
> un drapeau (« flag ») qui est validé si le point en question est le dernier point du quadrilatère (par exemple sur 1 bit).
Lorsque le quadrilatère analysé ne comporte aucun point visible de la bitmap, on génère une entrée comportant une valeur nulle en tant qu'adresse dans la bitmap (point supérieur gauche), une valeur nulle pour la position dans le quadrilatère examiné et 1 pour le bit de drapeau.
A la fin de cette phase de préparation, on dispose aussi d'un tableau d'index indiquant, pour chaque tir, la première et la dernière entrées du tableau de données relatif à ce tir, ainsi que les numéros d'ordre du premier et du dernier quadrilatères visibles pour ce tir.
- Pendant les tirs
De façon à accélérer le calcul final, qui comporte quatre multiplications et trois additions pour obtenir la luminance de chaque point, l'invention prévoit d'utiliser les instructions à opérandes multiples disponibles avec les processeurs INTEL (instructions de type SIMD ou MMX). Parmi ces instructions, il y a en particulier une opération qui réalise en une seule fois quatre multiplications et deux additions. Sachant qu'en général un quadrilatère peut contenir plusieurs points de la bitmap (sauf les cas particuliers au voisinage de la sonde cités ci-dessus), il est avantageux de générer à chaque fois que l'on reçoit une nouvelle donnée de tir un opérande multiple qui concatène les quatre valeurs de luminance des sommets du quadrilatère dont le dernier point reçu est le sommet bas droit. Ces données sont en volume limité, et peuvent donc toutes résider dans la mémoire cache du processeur pour le calcul ultérieur de la luminance des points de bitmap. Selon un exemple de réalisation, les quatre valeurs de luminance (La, Lb, Le, Ld) sont définies chacune sur 16 bits et concaténées en un opérande de 64 bits, et d'autre part, les quatre coefficients (a, b, c, d), définis également sur 16 bits, sont concaténés, dans le même ordre, en un opérande de 64 bits. Ensuite, La, Lb, Le et Ld sont respectivement multipliés par a, b, c, d, et une première addition consiste à additionner simultanément d'une part aLa + bLb, ce qui donne un résultat partiel E, et d'autre part cLc + dLd, ce qui donne un autre résultat partiel F, ces deux résultats partiels étant concaténés en un mot de 64 bits, et enfin à effectuer une seconde addition E + F.
- A la fin de chaque tir.
A la fin de chaque tir, on réalise l'opération de conversion, réduite à sa plus simple expression, à savoir une boucle de calcul portant sur l'ensemble des entrées du tableau de données relatives au tir en question, ce tableau étant formé pendant la phase de préparation. Cette boucle effectue les calculs cités ci-dessus, à savoir la multiplication des luminances des quatre sommets du quadrilatère en cours d'analyse par les coefficients d'interpolation du point de bitmap considéré. Les luminances ont été acquises pendant les tirs et mémorisées en mémoire cache et les coefficients sont stockés dans un tableau constant d'opérandes multiples, résidant également en mémoire cache. Ce tableau de coefficients est indexé par la valeur (« POS ») de l'entrée considérée du tableau de données. En utilisant les instructions SIMD du processeur précité, il suffit d'une opération de multiplication - accumulation suivie d'une addition, et d'une normalisation par décalage (mise à l'échelle). On obtient ainsi directement la luminance du point de bitmap analysé, qu'il suffit de stocker dans la mémoire de bitmap à son adresse, qui est fournie par l'entrée considérée du tableau de données. Si le drapeau associé à l'entrée en cours du tableau de données est mis (c'est-à-dire s'il correspond au dernier point compris dans le quadrilatère analysé), il faut incrementer l'index du tableau de données de luminances constitué pendant les tirs. Cet index pointe alors sur les luminances du quadrilatère suivant. Ces deux opérations forment le corps, très compact, du programme de calcul de l'image bitmap. On voit que, quel que soit le résultat de la deuxième opération liée à l'état du drapeau, le programme de calcul consomme exactement une entrée du tableau de données par parcours de la boucle. On peut donc prédire précisément l'instant où l'on aura besoin de données du tableau de données, et utiliser, si elle existe, l'instruction de préchargement dans la mémoire cache du processeur. Par exemple, dans le cas où ce processeur est un Pentium III™, et de l'exemple numérique cité ci- dessus, une ligne de mémoire cache représente 256 bits, et l'optimum est donc de réaliser une précharge (dite « prefetch ») de la mémoire cache tous les 8 points calculés.
Lorsque l'ensemble de la bitmap a été calculé, il faut noircir (ou blanchir, selon le choix de la couleur du fond d'image) le point supérieur gauche de la bitmap qui détient une information de luminance liée au dernier quadrilatère situé en zone visible, mais ne contenant lui-même aucun point de la bitmap.

Claims

REVENDICATIONS
1. Procédé de conversion d'images acquises selon des tirs parallèles et/ou divergents en image du type bitmap, caractérisé par le fait qu'il consiste, avant une séquence de tirs, et pour un format d'affichage bitmap donné, à déterminer pour chaque point de la bitmap, s'il appartient à un polygone d'analyse, chaque polygone d'analyse étant défini par au moins deux points consécutifs d'un tir et par les deux points de même rang du tir suivant, et si oui, à le chaîner au dernier point de la bitmap trouvé dans ce polygone, à déterminer sa position dans le polygone, à réorganiser les données ainsi recueillies selon l'ordre d'arrivée des points dans l'ordre des tirs, à repérer le dernier point de chaque polygone non vide, à associer à chacun des polygones vides un point déterminé de la bitmap, puis, pendant les tirs, à produire pour chaque point reçu un opérande comportant les luminances d'au moins quatre des sommets du polygone dont le point en question est le dernier sommet reçu qui l'identifie, à ranger ces opérandes dans l'ordre de réception des points correspondants, et, à la fin de chaque tir, à calculer la luminance de chaque point contenu dans chacun des polygones pris dans l'ordre de réception des sommets les identifiant, ce calcul étant fait selon une loi d'interpolation appropriée à partir des luminances d'au moins les sommets du polygone contenant le point en question, le passage d'un polygone au suivant étant commandé lors de la détection du dernier point contenu dans ce polygone, à mémoriser les luminosités des points ainsi calculés et à produire l'image bitmap en lisant les luminosités des points ainsi mémorisés.
2. Procédé selon la revendication 1 , caractérisé par le fait que le polygone est un quadrilatère.
3. Procédé selon la revendication 1 ou 2 , caractérisé par le fait que, pendant le traitement d'un ensemble de points de la bitmap, on force le chargement en mémoire cache des données nécessaires au traitement d'un ensemble suivant de points de la bitmap.
4. Procédé selon l'une des revendications précédentes, caractérisé par le fait que les coefficients de la loi d'interpolation sont stockés dans une table adressée par la position des points dans le polygone examiné.
5. Procédé selon l'une des revendications précédentes, caractérisé par le fait que l'on constitue une table de données contenant les adresses cartésiennes de chaque point de la bitmap et sa position relative à l'intérieur du polygone correspondant.
6. Procédé selon la revendication 5, caractérisé par le fait que ladite table de données est organisée dans l'ordre croissant des tirs et des polygones acquis et qu'elle contient une information signalant le dernier point du polygone en question.
7. Procédé selon l'une des revendications précédentes, caractérisé par le fait que l'on constitue une table contenant les opérandes de luminance des sommets de chaque polygone, dans l'ordre d'acquisition de ces polygones, avant de calculer les luminances des points de la bitmap.
8. Procédé selon l'une des revendications précédentes, caractérisé par le fait que l'on constitue une table donnant, pour chaque tir, les indices du premier et du dernier polygones visibles dans la bitmap.
9. Procédé selon l'une des revendications 5 à 8, caractérisé par le fait que l'on constitue une table globale donnant , pour chaque tir, les adresses de la première entrée et de la dernière entrée du tableau de données bitmap pour une bitmap donnée.
10. Procédé selon l'une des revendications précédentes, caractérisé par le fait que le point de bitmap associé à chacun des polygones vides est le même pour tous ces polygones.
11. Procédé selon l'une des revendications précédentes, caractérisé par le fait que le point produit pour chacun des polygones vides est un point du bord de la bitmap, qui est blanchi ou noirci à la fin du calcul de la bitmap selon la couleur du fond de la bitmap.
12. Procédé selon l'une des revendications précédentes, caractérisé par le fait qu'il est appliqué à l'un au moins des domaines suivants : imagerie médicale ultrasonore, caméra acoustique, radar, appareil de RMN.
PCT/EP2003/050766 2002-12-17 2003-10-29 Procede de conversion d'images pour presentation sous forme bitmap Ceased WO2004055545A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003286195A AU2003286195A1 (en) 2002-12-17 2003-10-29 Method for image conversion for bitmap display

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0215992A FR2848673B1 (fr) 2002-12-17 2002-12-17 Procede de conversion d'images pour presentation sous forme bitmap
FR0215992 2002-12-17

Publications (1)

Publication Number Publication Date
WO2004055545A1 true WO2004055545A1 (fr) 2004-07-01

Family

ID=32338879

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2003/050766 Ceased WO2004055545A1 (fr) 2002-12-17 2003-10-29 Procede de conversion d'images pour presentation sous forme bitmap

Country Status (3)

Country Link
AU (1) AU2003286195A1 (fr)
FR (1) FR2848673B1 (fr)
WO (1) WO2004055545A1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006113445A1 (fr) 2005-04-14 2006-10-26 Verasonics, Inc. Systeme d'imagerie ultrasonore avec un traitement oriente de pixels
US10914826B2 (en) 2008-06-26 2021-02-09 Verasonics, Inc. High frame rate quantitative doppler flow imaging using unfocused transmit beams

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5957846A (en) * 1995-06-29 1999-09-28 Teratech Corporation Portable ultrasound imaging system
US6362817B1 (en) * 1998-05-18 2002-03-26 In3D Corporation System for creating and viewing 3D environments using symbolic descriptors

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5957846A (en) * 1995-06-29 1999-09-28 Teratech Corporation Portable ultrasound imaging system
US6362817B1 (en) * 1998-05-18 2002-03-26 In3D Corporation System for creating and viewing 3D environments using symbolic descriptors

Also Published As

Publication number Publication date
FR2848673B1 (fr) 2005-02-18
AU2003286195A1 (en) 2004-07-09
FR2848673A1 (fr) 2004-06-18

Similar Documents

Publication Publication Date Title
FR2690770A1 (fr) Système et procédé de visualisation pour jeux vidéo.
Ye et al. Single image surface appearance modeling with self‐augmented cnns and inexact supervision
FR2583541A1 (fr) Tampon z a haute vitesse munie d'une memoire dynamique a acces aleatoire
KR101420041B1 (ko) 디스크립터 및 이미지에 기초한 아이템 모델
FR2920899A1 (fr) Structure de donnees en tranches et procede de chargement d'une simulation basee sur des particules utilisant une structure de donnees en tranches dans un gpu, etc
FR2752975A1 (fr) Procede de reconstruction d'une image tridimensionnelle d'un objet, en particulier une image tridimentionnelle angiographique
EP1259939B1 (fr) Procede et dispositif de perception automatique
Olsson et al. Tiled shading
EP2511842B1 (fr) Consultation de maquettes numériques à partir de postes légers
Zhu et al. Deep kernel density estimation for photon mapping
FR2611270A1 (fr) Procede et dispositif de determination d'un champ de deformation par photoelasticimetrie
FR2966623A1 (fr) Procede d’estimation de l’occultation dans un environnement virtuel
JP2000348205A (ja) レンダリングパイプラインにおけるボリュームデータの調整ライティング方法及び装置
Michel et al. Real time multiscale rendering of dense dynamic stackings
WO2004055545A1 (fr) Procede de conversion d'images pour presentation sous forme bitmap
CA2651465C (fr) Procede de codage et systeme d'affichage sur un ecran d'une maquette numerique d'un objet sous forme d'une image de synthese
Vohl et al. Real-time colouring and filtering with graphics shaders
WO2011058007A2 (fr) Procede d'estimation de diffusion de la lumiere
WO2011057997A2 (fr) Procede d'estimation de diffusion de la lumiere
FR2563024A1 (fr) Dispositif pour modifier l'aspect des points d'une image sur un ecran d'une console de visualisation d'images graphiques
WO1999018451A1 (fr) Procede de representation sur un ecran de visualisation d'un champ de donnees multidirectionnelles notamment de donnees fournies par un sonar d'ecoute passive, et systeme pour la mise en oeuvre d'un tel procede
Jeong et al. A Collaborative Digital Pathology System for Multi‐Touch Mobile and Desktop Computing Platforms
FR2674044A1 (fr) Agencement pour predire une adresse d'instruction resultant d'un branchement dans un systeme de traitement numerique des donnees.
EP0230158B1 (fr) Processeur numérique d'images échographiques, à interpolation
Maisch et al. Interactive subsurface scattering for materials with high scattering distances

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP