Abstract:
A method for mapping a 3D surface that contains a volume in space, the method including: acquiring 3D vertices representing the surface, and defining in the space a first plane cutting the volume and a second parallel plane, external to the volume, thereby partitioning the vertices into a first set not between the two planes and a second set located between the two planes. The method further includes projecting the first set vertices onto the first plane so as to generate first projected points therein, and projecting the second set vertices onto the first plane while translating these vertices in respective directions parallel to the second plane by respective translations responsive to respective distances of the second vertices from the first plane, thereby generating second projected points in the first plane. The first and second projected points are displayed as a 2D representation of the surface on a screen.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates generally to image mapping, and specifically to mapping of three-dimensional images to two-dimensional images. 
       BACKGROUND OF THE INVENTION 
       [0002]    The representation of a three-dimensional structure on a two-dimensional screen may typically involve a reduction in the quality of the information being presented. The reduction is typically significant in the case of anatomical structures, and a number of prior art references address this problem. 
         [0003]    U.S. Pat. No. 7,643,662, to Gering, whose disclosure is incorporated herein by reference, describes a system for accessing a three dimensional representation of an anatomical surface and flattening the anatomical surface so as to produce a two dimensional representation of the anatomical surface. 
         [0004]    U.S. Pat. No. 8,611,989, to Roberts, whose disclosure is incorporated herein by reference, describes a method of generating an image of a segment of a lumen structure. The method comprises acquiring volumetric image data and rendering a planar slab image based on a thickness and the volumetric image data. 
         [0005]    U.S. Patent Application 2013/0088491, to Hobbs et al., whose disclosure is incorporated herein by reference, describes a two-dimensional (2D) animation that may be generated from a three-dimensional (3D) mesh by a machine or device that flattens, textures, and modifies the 3D mesh, which results in distorting the texture of the 3D mesh. 
         [0006]    U.S. Patent Application 2011/0142306, to Nair, whose disclosure is incorporated herein by reference, describes providing a 3D dataset of a heart and generating a 2D representation of a curved surface of the 3D dataset by flattening out the curved surface of the heart. 
         [0007]    Documents incorporated by reference in the present patent application are to be considered an integral part of the application except that, to the extent that any terms are defined in these incorporated documents in a manner that conflicts with definitions made explicitly or implicitly in the present specification, only the definitions in the present specification should be considered. 
       SUMMARY OF THE INVENTION 
       [0008]    An embodiment of the present invention provides a method for mapping a three-dimensional (3D) surface that contains a volume in a 3D space, the method including: 
         [0009]    acquiring a set of 3D vertices representing the 3D surface; 
         [0010]    defining in the 3D space a first plane that cuts the volume and a second plane, parallel to the first plane, that is external to the volume, thereby partitioning the 3D vertices into a first set of the vertices that are not between the first and second planes and a second set of the vertices that are located between the first and the second planes in the 3D space; 
         [0011]    projecting the vertices in the first set onto the first plane so as to generate first projected points in the first plane; 
         [0012]    projecting the vertices in the second set onto the first plane while translating the vertices in the second set in respective directions parallel to the second plane by respective translations responsive to respective distances of the second vertices from the first plane, thereby generating second projected points in the first plane; and 
         [0013]    displaying the first and second projected points together as a two-dimensional (2D) representation of the 3D surface on a screen. 
         [0014]    Typically the method includes projecting the vertices in the first set onto the first plane orthogonally to the first plane. Alternatively or additionally the method includes projecting the vertices in the second set onto the first plane orthogonally to the first plane. 
         [0015]    In a disclosed embodiment the respective translations are directly proportional to the respective distances. 
         [0016]    In a further disclosed embodiment the respective translations are responsive to a distance, measured parallel to the first plane, to a pre-defined point in the second plane. Typically, each of the respective translations of a given vertex is directly proportional to the distance from the given vertex to the pre-defined point. 
         [0017]    In an alternative embodiment the 3D surface includes a surface of a heart chamber. 
         [0018]    In a further alternative embodiment the 3D surface comprises a 3D surface of a distal tip of a catheter. The 3D surface may be a temperature distribution map of the distal tip. 
         [0019]    In a yet further disclosed embodiment displaying the first and second projected points includes forming a 2D surface including the points. 
         [0020]    Typically, the 3D surface includes an axis of symmetry, and the 2D representation has symmetry related to the axis of symmetry. 
         [0021]    In an embodiment the 3D surface has no symmetry. 
         [0022]    There is further provided, according to an embodiment of the present invention, apparatus for mapping a three-dimensional (3D) surface that contains a volume in a 3D space, the apparatus including: 
         [0023]    a screen configured to display a two-dimensional (2D) representation of the 3D surface; and 
         [0024]    a processor configured to: 
         [0025]    acquire a set of 3D vertices representing the 3D surface, 
         [0026]    define in the 3D space a first plane that cuts the volume and a second plane, parallel to the first plane, that is external to the volume, thereby partitioning the 3D vertices into a first set of the vertices that are not between the first and second planes and a second set of the vertices that are located between the first and the second planes in the 3D space, 
         [0027]    project the vertices in the first set onto the first plane so as to generate first projected points in the first plane, 
         [0028]    project the vertices in the second set onto the first plane while translating the vertices in the second set in respective directions parallel to the second plane by respective translations responsive to respective distances of the second vertices from the first plane, thereby generating second projected points in the first plane, and 
         [0029]    transfer the first and second projected points to the screen. 
         [0030]    The present disclosure will be more fully understood from the following detailed description of the embodiments thereof, taken together with the drawings, in which: 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0031]      FIG. 1  is a schematic illustration of an image manipulation system, according to an embodiment of the present invention; 
           [0032]      FIG. 2  is a flowchart of steps performed in manipulating the presentation of a three-dimensional (3D) surface, according to an embodiment of the present invention; 
           [0033]      FIG. 3  is a schematic diagram of a 3D mesh, according to an embodiment of the present invention; 
           [0034]      FIG. 4  is a view illustrating two planes and four vertices drawn on a frame of reference, according to an embodiment of the present invention; 
           [0035]      FIG. 5  illustrates the 3D mesh of  FIG. 3  after a step of the flowchart of  FIG. 2 , according to an embodiment of the present invention; and 
           [0036]      FIG. 6  illustrates the resulting display on a screen after all steps of the flowchart of  FIG. 2  have been performed, according to an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF EMBODIMENTS 
     Overview 
       [0037]    During a medical procedure, there is typically a large amount of information that needs to be presented to the operating physician, in order for the physician to carry out the procedure effectively. However, particularly in the case of a three-dimensional (3D) representation of an organ of the body of a patient, or of a 3D map of an entity such as a temperature distribution, it is difficult to effectively present the 3D images on a two dimensional (2D) screen. 
         [0038]    Embodiments of the present invention provide a presentation of a 3D surface that may be used to overcome the difficulty. A set of vertices, representing a 3D surface containing a volume in 3D space, is acquired. Two parallel planes are defined: a first plane that cuts the volume and a second plane that is external to the volume. The two planes partition the 3D vertices into a first set of vertices not between the two planes, and a second set of vertices that are between the two planes. 
         [0039]    The vertices in the first set are projected, typically orthogonally, onto the first plane, so generating a first set of projected points. 
         [0040]    The vertices in the second set undergo two transformations: a translation and a projection. The projection is onto the first plane, typically orthogonally. The translation is parallel to the planes and, for a given vertex, the amount of translation is responsive to the distance of the vertex, and is typically directly proportional to the distance. 
         [0041]    The first and second projected points are displayed on the screen as a 2D representation of the 3D surface. 
       System Description 
       [0042]    Reference is now made to  FIG. 1 , which is a schematic illustration of an image manipulation system  20 , according to an embodiment of the present invention. System  20  is typically used during a medical procedure on a body organ of a subject  30 , and in the description herein the body organ, by way of example, is assumed to comprise a heart  22 , wherein the system is applied to view three-dimensional (3D) images derived from measurements on the heart. However, it will be understood that system  20  may be applied to view other 3D images, including 3D images of entities other than body organs. 
         [0043]    System  20  may be controlled by a system processor  40 , comprising a processing unit  42  communicating with an electrocardiogram (ECG) module  44 , a probe tracking module  46 , and a temperature module  48 . The functions of modules  44 ,  46 , and  48  are described below. Processor  40  may be mounted in a console  50 , which comprises operating controls  52  which typically include a pointing device such as a mouse or trackball. Professional  32  uses the operating controls to interact with the processor, which, as described below, may be used to present results produced by system  20  to the professional on a screen  54 . 
         [0044]    Processor  40  uses software stored in a memory of the processor to operate system  20 . The software may be downloaded to processor  40  in electronic form, over a network, for example, or it may, alternatively or additionally, be provided and/or stored on non-transitory tangible media, such as magnetic, optical, or electronic memory. 
         [0045]    To perform the procedure on heart  22 , professional inserts a catheter  24 , also herein termed a probe, into the heart. In order to track the 3D position of probe  24 , the probe comprises a sensor  28  installed into a distal tip  26  of the probe. Sensor  28 , typically one or more coils, generates signals in response to magnetic fields traversing the sensor. The signals are conveyed, typically via probe  24 , to processing unit  42 , which uses probe tracking module  46  to analyze the signals so as to determine the 3D location and 3D orientation of the distal tip of the probe. The Carto® system, produced by Biosense Webster, of Diamond Bar, Calif., uses a tracking system similar to that described herein to track the location and orientation of the distal tip of a probe inserted into a subject. 
         [0046]    Distal tip  26  typically comprises an electrode  34  which acquires electropotentials of a section of heart  22  in contact with the electrode. The electropotentials are conveyed, typically via probe  24 , to processing unit  42 , which uses ECG module  46  to analyze the signals. The analysis typically includes generating electropotential vs. time graphs, as well as determining a local activation time (LAT) of the section of heart contacted by the electrode. 
         [0047]    Distal tip  26  may also have one or more temperature sensors  49 , typically comprising thermocouples. Sensors  49  generate signals which are conveyed to processing unit  42 , and the processing unit uses temperature module  48  to determine the temperatures measured by the sensors. 
         [0048]    Processor  40  typically comprises modules other than the modules referred to above, such as a force module that measures a force on distal end  26 , and an ablation module that provides regulated power to electrode  28 , or another electrode in the distal end. For simplicity, such modules are not shown in  FIG. 1 . The Carto® system referred to above uses such modules. 
         [0049]    A screen  54  displays results produced by processor  40 . Typically, the resultant signals from ECG module  44  are presented on screen  54  in the form of one or more potential vs. time graphs, and a schematic example  60  of such a graph is illustrated in  FIG. 1 . However, the resultant ECG signals may also be used by processor  40  to derive other results associated with the ECG signals, such as the LATs referred to above. The results from probe tracking module  46  may be presented on screen  54  in the form of a three-dimensional map  64  of the internal surface of heart  22 , and as well as incorporating the locations of distal tip  26  as it is moved in the heart, such a map may also incorporate other values, such as the LAT values at the location of the distal tip. 
         [0050]    The results from temperature module  48  may also be presented on screen  54  in the form of a three-dimensional map  66  of the temperature distribution of the internal surface, measured around distal tip  26 . 
         [0051]    Maps such as map  64  and map  66  are maps of a three-dimensional surface that are presented on the two-dimensional (2D) surface of screen  54 . There is typically a large amount of information incorporated into both maps, and such information becomes more difficult to comprehend because of, inter alia, the reduction from a true three-dimensional representation of the map to a two-dimensional surface. Embodiments of the present invention provide professional  32  with a method for manipulating the presentation of a map such as map  64  or map  66  on screen  54 , so as to improve the comprehension of selected features of the map. 
         [0052]      FIG. 2  is a flowchart of steps performed by processor  40  in manipulating the presentation of a three-dimensional (3D) surface, according to an embodiment of the present invention. In the following description, by way of example the steps of the flowchart are described assuming that processor  40  operates on a 3D mesh from which map  66  is derived. 
         [0053]      FIG. 3  is a schematic diagram of a 3D mesh  100  from which map  66  is derived, according to an embodiment of the present invention. Mesh  100  is dome-shaped, having an axis of symmetry  101 , and comprises a plurality of vertices  102 . The vertices and the mesh are part of a surface that contains a volume in 3D space. 
         [0054]    In an initial step  150  of the flowchart processor  40  acquires three-dimensional values of the vertices, formed on an xyz frame of reference  108 , by any convenient means. For example, since mesh  100  corresponds to distal tip  26 , the processor may generate 3D values of the vertices from the geometry of the distal tip. To produce the mesh, processor  40  connects vertices  102  by line segments, using a method for connection known in the art. Processor  40  typically produces a three-dimensional map from 3D mesh  100  by covering the mesh with a 3D surface that smoothly connects the line segments, after which temperatures in the form of different colors are incorporated into the 3D surface to produce map  66 . However, for simplicity, the following description of the flowchart assumes that the processor operates on mesh  100 . 
         [0055]    In a plane definition step  152  professional  32  uses controls  52  to define two parallel planes  104 ,  106  for partitioning mesh  100 .  FIG. 4  is a view illustrating the planes and four vertices  102 , termed  102 C,  102 D,  102 P and  102 L, of mesh  100  drawn on frame of reference  108 , according to an embodiment of the present invention. For simplicity, in the description herein vertices  102 C,  102 D,  102 P and  102 L are assumed to have respective coordinates (x C ,y C ,z C ), (x D ,y D ,z D ), (x P ,y P ,z P ), and (x L ,y L ,z L ), the two planes are assumed to be horizontal xz planes, orthogonal to the y-axis, and the y-axis is assumed to be vertical. However, those having ordinary skill in the art will be able to adapt the description for cases where the y-axis is not vertical, so that the two xz planes, while being orthogonal to the y-axis, are not horizontal. 
         [0056]    In addition, the following assumptions are also made: 
         [0057]    The origin of frame of reference  108  is selected so that all vertices of mesh  100  have x, z, ≧0, and there is at least one vertex with y&gt;0 and at least one vertex with y&lt;0. 
         [0058]    Plane  104  passes through the origin. In this case plane  104  has an equation given by equation (1): 
         [0000]        y= 0  (1)
 
         [0059]    Plane  106  has an equation given by equation (2): 
         [0000]        y=y   B   (2)
 
         [0060]    where y B  is a negative value smaller than the most negative y-value of vertices  102 . Vertex  102 L is assumed to be the vertex of mesh  100  having the most negative value. 
         [0061]    Plane  106  comprises a point B, having coordinates (x B ,y B ,z B ). By way of example, plane  106  is drawn in  FIG. 4  as a bounded plane having point B as its center, but in general point B may be any point on plane  106 . In some embodiments, a vertical projection of the bounded plane in a positive y direction defines a rectangular parallelepiped that acts as a bounding box encompassing all of mesh  100 . 
         [0062]    It will be understood that using the assumptions above does not affect the generality of the results generated, and that those having ordinary skill in the art will be able to adapt the description herein, mutatis mutandis, for sets of vertices drawn on any frame of reference. 
         [0063]    As illustrated in  FIG. 4 , planes  104  and  106  partition vertices  102  into two regions: an upper region comprising a first set of vertices  102  that are not between the two planes, and a lower region comprising a second set of vertices  102  that are between the two planes. 
         [0064]    From equations (1) and (2), the distance between the two planes is y B . In the following description, plane  104  is also referred to as the upper plane, and plane  106  is also referred to as the lower plane. It will be understood that the upper plane divides mesh  100  into two regions, the upper region (where y&gt;0) above the plane, and the lower region (where y&lt;0) below the plane. Vertices  102 B and  102 C are generic vertices in the upper region; vertex  102 P is a generic vertex in the lower region; and vertex  102 L is the lowest vertex in the lower region. 
         [0065]    In a first projection step  154 , processor  40  projects each vertex  102  of the upper region vertically, i.e., orthogonal to the planes and parallel to the y-axis, so that the projected points lie on the upper plane. Thus vertices  102 C (x C ,y C ,z C ) and  102 D (x D ,y D ,z D ), project, as shown respectively by broken arrows  110  and  112 , to points (x C ,0,z C ) and (x D ,0,z D ). 
         [0066]    In contrast to vertices in the upper region, which undergo a single transformation, vertices in the lower region are subject to two transformations, a horizontal translation and a vertical projection. Details of each of the transformations are described below with reference to steps  154  and  156 . 
         [0067]    In a translation step  156 , processor  40  translates each of the vertices in the lower region horizontally, i.e., parallel to the planes. For a given vertex the translation is directly proportional to the distance of the vertex from the upper plane and to the horizontal distance from the vertex point B. The direction of the translation corresponds to the direction of the original vertex from a vertical line through point B. 
         [0068]    The distance of generic vertex  102 P, with coordinates (x P ,y P , z P ), from the lower plane may be normalized according to equation (3): 
         [0000]    
       
         
           
             
               
                 
                   F 
                   = 
                   
                      
                     
                       
                         
                           y 
                           P 
                         
                         - 
                         
                           y 
                           B 
                         
                       
                       
                         y 
                         B 
                       
                     
                      
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
         [0069]    where F is the normalized distance from the generic vertex to the lower plane, and 0≦F≦1. 
         [0070]    Thus, if the generic vertex is on the lower plane, then F=0, and if the vertex is on the upper plane (which is the highest possible location for a generic vertex in the lower region), then y P =0 and F=1. 
         [0071]    It will be understood that the expression (1−F) gives a normalized distance for a generic vertex in the lower region to the upper plane. 
         [0072]    A general equation for the horizontal translation of generic vertex (x P , y P , z P ) is given by equation (4): 
         [0000]      ( x   G   ,y   G   ,z   G )=( x   P   ,y   P   ,z   P )+(( x   P   −x   B )· S ·(1− F ),0,( z   P   −z   B )· S ·(1− F ))  (4)
 
         [0073]    where (x G , y G , z G ) are the coordinates to where vertex (x P , y P , z P ) is translated, 
         [0074]    F is the normalized distance given by equation (3), 
         [0075]    and 
         [0076]    S is a scaling factor corresponding to a constant of proportionality of the scaling. 
         [0077]    S may be any number greater than 1. A typical range of values of S is between 2 and 100, and in one embodiment S=10. From inspection of equation (4), it will be understood that the translation in an xz plane of any given vertex is a function of both S and F. 
         [0078]    In step  156  S may typically be selected by professional  32  using controls  52 . 
         [0079]    A broken arrow  116  illustrates the horizontal translation of generic vertex (x P , y P , z P ) to (x G , y G , z G ). 
         [0080]    In a second projection step  158 , processor  40  projects each of the translated vertices generated in step  156  vertically upwards, i.e., parallel to the y-axis, so that the projected points lie on the upper plane. A broken arrow  118  illustrates the vertical projection. Thus, from equation (4), the final coordinates (x F , y F , z F ) of the translated and projected generic vertex (x P , y P , z P ) are given by equation (5): 
         [0000]      ( x   F   ,y   F   ,z   F )=(( x   P   −x   B )· S ·(1− F )+ x   p ,0,( z   P   −z   B )· S ·(1− F )+ z   p )  (5)
 
         [0081]    In a final display step  160 , once the translations and projections described above have been implemented, the 2D result, of vertices that have been projected onto the upper plane, is displayed on screen  54 , with the y-axis of the resultant mesh being orthogonal to screen  54 . 
         [0082]    It will be understood that the order of the projections and translations of the flowchart of  FIG. 3  are by way of example, and other orders will be apparent to those having ordinary skill in the art. All such orders, including changes to the descriptions of the steps as necessary, are considered to be within the scope of the present invention. For example, translation step  156  may be implemented before either first projection step  154  and second projection step  158  are implemented. 
         [0083]      FIG. 5  illustrates mesh  100  after translation step  156  has been performed on the mesh and before projection steps  154  and  158  are performed, according to an embodiment of the present invention. In  FIG. 5 , point B is assumed to be where axis of symmetry  101  of mesh  100  meets plane  106 , and the value of scaling factor S is 2. It will be understood, from inspection of equation (4), that a smaller value of S “narrows” the base of the conical section produced in the lower region. 
         [0084]      FIG. 6  illustrates the resulting display on screen  54  for display step  160 , i.e. after all translation and projection steps of the flowchart of  FIG. 2  have been performed, according to an embodiment of the present invention. S in this case is 4. While for clarity planes  104  and  106  are displayed in  FIG. 6 , typically in the display of screen  54  they are not shown. 
         [0085]    The resulting display illustrated in  FIG. 6  is a symmetrical 2D display, and it will be appreciated that the symmetry is a result of the initial symmetry of 3D mesh  100  ( FIG. 3 ), together with the choice of point B as being on the axis of symmetry of the 3D mesh ( FIG. 5 ). However, it will be understood that if the original mesh has no symmetry, such as is the case where the mesh is of a surface of a heart chamber, the final 2D result displayed also has no symmetry. Even where the original mesh does have symmetry, the final 2D result may not have symmetry. For example if in  FIG. 5  point B is selected to be not on the axis of symmetry, the final result is a non-symmetrical 2D display. 
         [0086]    For simplicity the description above has assumed that transformations are performed on a plurality of vertices, typically derived from a surface enclosing a volume. The vertices are configured into the form of a 3D mesh, which is transformed by the steps of the flowchart into a 2D mesh. It will be understood that the 2D mesh generated by the transformed vertices is typically used as a scaffolding, and that from the scaffolding processor  40  constructs a 2D surface, the surface comprising the transformed vertices. 
         [0087]    It will be appreciated that the 2D surface produced may be used to represent 3D maps such as map  64 , illustrating the internal surface of heart  22 , and map  66 , illustrating the temperature distribution around distal tip  26 . Other 3D maps that may be transformed to 2D surfaces according to the description herein will be apparent to those having ordinary skill in the art, and all such maps are assumed to be comprised in the scope of the present invention. 
         [0088]    It will thus be appreciated that the embodiments described above are cited by way of example, and that the present invention is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present invention includes both combinations and subcombinations of the various features described hereinabove, as well as variations and modifications thereof which would occur to persons skilled in the art upon reading the foregoing description and which are not disclosed in the prior art.