3d ultrasound-based instrument for non-invasive measurement of fluid-filled and non fluid-filled structures
Abstract
A segmentation algorithm is optimized to robustly locate and measure the volume of fluid filled or non-fluid filled structures or organs from imaging systems derived from ultrasound, computer assisted tomography, magnetic resonance, and position emission tomography. A clinical specimen is measured with a plurality of 2D scan planes processed by the segmentation algorithm to estimate the 2D based area the 3D based volumes of fluid-filled and non-fluid filled organs or structures.

Term
Term ended
Expired 1 August 2023, 3.1 years ago.
- Priority
- Filed
- Granted
- Expired
- Today
40 claims: 16 independent, 24 dependent
- 1A system for determining amniotic fluid volume, the system comprising:a transceiver (10) configured to deliver radio frequency ultrasound pulses to amniotic fluid regions of a patient, to receive echoes of the pulses reflected from the amniotic fluid regions, and to convert the echoes to digital form;a computer system (52) in communication with the transceiver (10), the computer system having a microprocessor and a memory, characterized in that the memory further containes stored programming instructions operable by the microprocessor to associate the plurality of scanplanes (210) into a rotational array (240);and the memory further containes instructions operable by the microprocessor to determine the presence of an amniotic fluid region in each scanplane (210) and determine the amniotic fluid volume spanning between and through each scanplane (210) of the rotational array (240).
- 2The system according to Claim 1, wherein a method for determining areas or volumes of structures from an image is used, the method comprising:acquiring (410) a digital image;enhancing (418) the digital image using non-linear filters;segmenting the digital image using an intensity-based first segmentation method or algorithm (422), an edge-based second segmentation method or algorithm (438), and a combining step or algorithm (422) that combines the first and the second methods to produce homogeneous regions;and determining the areas of the homogenous regions.
- 3The system according to Claim 2, the method determining volumes of structures from a set of images, the method comprising:acquiring (410) at least two digital images;enhancing (418) each digital image using non-linear filters;segmenting each digital image using an intensity-based segmentation method (422), an edge-based segmentation method (438), and a combining step (422) that combines the intensity-based and the edge-based methods to produce homogeneous regions in each digital image;and determining the volumes of the homogenous regions.
- 4The system according to Claim 2 or 3, wherein the intensity-based segmentation method (422) includes:categorizing (522) the pixels into white, gray, and black pixel intensity clusters;assigning each pixel of each intensity cluster to a k-cluster;defining a cluster center by calculating a mean intensity for each pixel in the k- cluster;and determining a boundary by calculating the mid points between cluster centers.
- 8The system according to any of Claims 2-7, wherein the digital image is obtained from a plurality of imaging sources including computerized tomography, ultrasound imaging, magnetic resonance imaging, x-ray imaging, visible light imaging, ultraviolet imaging, microwave imaging, gamma ray imaging, infra-red imaging, positron imaging, and facsimile transmissions.
- 9The system of any of Claims 2-8, wherein the matching edges filter steps includes determining the absence of boundary edge locations along a scanline by establishing that an ascending pixel gradient is unpaired with a descending pixel gradient, or that a decending pixel gradient is unpaired with an ascending gradient.
- 11The system according to any of claims 2-10, wherein:the first algorithm is a spatial gradient algorithm, the second algorithm a initial point positioning algorithm, an optimal path algorithm that combining the spatial gradient and the initial point positioning algorithms to produce homogeneous regions.
- 13The system of Claim 12, wherein the heat filter (514) is defined by a partial differential equation of an inputted image pixel intensity u expressed in an equation defined as ∂ u ∂ t = ∂ 2 u ∂ x 2 + ∂ 2 u ∂ y 2 , where u is the image being processed, ∂ 2 u ∂ x 2 is the second partial derivative of u along the x-axis, and ∂ 2 u ∂ y 2 is the second partial derivative of u along the y-axis.
- 14The system of Claim 12 or 13, wherein the shock filter (518) is a partial differential equation of an imputed image pixel intensity u expressed in an equation defined as ∂ u ∂ t = - sign ∂ 2 u dx 2 ∂ u dx , where u is the image being processed, ∂ 2 u ∂ x 2 is the second partial derivative of u, ∂ u dx is the absolute value of the first derivative of u along the x-axis.
- 15The system of Claim 12, 13 or 14, wherein the optimum path algorithm includes a total cost function C ( p ) weighted between an edge distance cost function, a path direction cost function, and a previous contour distance cost function from the equation C p = αC e p + βC d p + γC c p , where C e ( p ) is the edge distance cost function, C d ( p ) is the path direction cost function, C c ( p ) is the previous contour distance cost function, and α,β, and γ are numerical values.
- 16The system of Claim 15, wherein the edge distance function C e (p) is defined from the equation C e p = ∑ i = p 1 p 2 1 μ + ‖ ∇ I i ‖ , where I i is the pixel intensity, ∥∇ I i ∥ is the gradient magnitude the pixel at location i, and µ is a constant value.
- 17The system of Claim 15 or 16, wherein the path direction cost function C d ( p ) is defined from the equation C d p = ∑ i = p 1 p 2 I i in - I i out , where I i in is the image intensity of the inside and dark pixel and I i out is the image intensities the outside and bright pixel along a path bisecting the I i in and I i out pixels and connecting pixels points i and i -1 adjacent to each side of the I i in pixel.
- 22The system of Claim 21, wherein plurality of 2D scanplanes (210) are assembled into a plurality of arrays (240) including a rotational array (240), a translational array, or a wedge array.
- 23The system according to Claim 1, wherein a method to determine amniotic fluid volume in digital images is used, the method comprising:positioning an ultrasound transceiver (10) exterior to a patient such that at least a portion of the amniotic fluid is within a field of view of the transceiver (10), the ultrasound transceiver (10) configured to send radio frequency ultrasound pulses and to receive echoes of the radio frequency ultrasound pulses;sending the radio frequency ultrasound pulses from the ultrasound transceiver to amniotic fluid regions;receiving echoes of the radio frequency ultrasound pulses reflected from the amniotic fluid regions to the transceiver (10);associating the received echoes to form a plurality of 2D scanplanes (210) so that they form an array (240);enhancing the images of the amniotic fluid regions in each plane (210) of the array (240) using a plurality of algorithms;and determining the amniotic fluid volume of the amniotic fluid regions spanning between and through each plane (210) in the array (240).
- 24The system of Claim 23, wherein plurality of 2D scanplanes (210) are acquired from a rotational array (240), a translational array, or a wedge array.
- 28The system of Claim 27, wherein segmentation further includes an intensity clustering step (522), a spatial gradients step (526), a hysteresis threshold step (530), a Region-of-Interest selection step (534), and a matching edges filter step (538).
- 29The system of Claim 28, wherein the intensity clustering step (522) is performed in a first parallel operation, and the spatial gradients (526), hysteresis threshold (530), Region-of-Interest selection (534), and matching edges filter steps (538) are performed in a second parallel operation, and further wherein the results from the first parallel operation are combined with the results from the second parallel operation.
- 32The system of Claim 31, wherein the amniotic fluid volume is adjusted for underestimation by probing with adjustable ultrasound frequencies to penetrate deep tissues and to repositioning the transceiver (10) to establish that deep tissues are exposed with probing ultrasound of sufficient strength to provide a reflecting ultrasound echo receivable by the transceiver (10), such that more than one rotational array (240) to detect deep tissue and regions of the fetal head are obtained.
- 34The system of Claim 33, wherein the steps to adjust for overestimated amniotic fluid volumes include a 2D clustering step, a matching edges step, an all edges step, a gestational age factor step (726), a head diameter step (730), an head edge detection step (734), and a Hough transform step (736).
- 35The system of Claim 34, wherein the Hough transform step includes a polar Hough Transform step (738), a Find Maximum Hough value step (742), and a fill circle region step (746).
- 36The system of Claim 35, wherein the polar Hough Transform step includes a first Hough transform to look for lines of a specified shape, and a second Hough transform to look for fetal head structures.
Independent claims38
180 paragraphs in 18 sections, as filed
FIELD OF THE INVENTION
0001This invention pertains to the field of image enhancement and analysis, particularly to electromagnetic and non-electromagnetic acquired images, to ultrasound-based non-invasive obstetric measurements, and to the field of medical imaging, particularly to measuring the size and shape of organs from three-dimensional images.
BACKGROUND OF THE INVENTION
0002Measurement of the amount of Amniotic Fluid (AF) volume is critical for assessing the kidney and lung function of a fetus and also for assessing the placental function of the mother. Amniotic fluid volume is also a key measure to diagnose conditions such as polyhydramnios (too much AF) and oligohydramnios (too little AF). Polyhydramnios and oligohydramnios are diagnosed in about 7-8% of all pregnancies and these conditions are of concern because they may lead to birth defects or to delivery complications. The amniotic fluid volume is also one of the important components of the fetal biophysical profile, a major indicator of fetal well-being.
0003The currently practiced and accepted method of quantitatively estimating the AF volume is from two-dimensional (2D) ultrasound images. The most commonly used measure is known as the use of the amniotic fluid index (AFI). AFI is the sum of vertical lengths of the largest AF pockets in each of the 4 quadrants. The four quadrants are defined by the umbilicus (the navel) and the linea nigra (the vertical mid-line of the abdomen). The transducer head is placed on the maternal abdomen along the longitudinal axis with the patient in the supine position. This measure was first proposed by Phelan et al (<nplcit id="ncit0001" npl-type="s"><text>Phelan JP, Smith CV, Broussard P, Small M., "Amniotic fluid volume assessment with the four-quadrant technique at 36-42 weeks' gestation," J Reprod Med Jul; 32(7): 540-2, 1987</text></nplcit>) and then recorded for a large normal population over time by Moore and Cayle (<nplcit id="ncit0002" npl-type="s"><text>Moore TR, Cayle JE. "The amniotic fluid index in normal human pregnancy," Am J Obstet Gynecol May; 162(5): 1168-73, 1990</text></nplcit>).
0004Even though the AFI measure is routinely used, studies have shown a very poor correlation of the AFI with the true AF volume (<nplcit id="ncit0003" npl-type="s"><text>Sepulveda W, Flack NJ, Fisk NM., "Direct volume measurement at midtrimester amnioinfusion in relation to ultrasonographic indexes of amniotic fluid volume," Am J Obstet Gynecol Apr; 170(4): 1160-3, 1994</text></nplcit>). The correlation coefficient was found to be as low as 0.55, even for experienced sonographers. The use of vertical diameter only and the use of only one pocket in each quadrant are two reasons why the AFI is not a very good measure of AF Volume (AFV).
0005Some of the other methods that have been used to estimate AF volume include: <ul id="ul0001" list-style="none"><li><b>Dye dilution technique.</b> This is an invasive method where a dye is injected into the AF during amniocentesis and the final concentration of dye is measured from a sample of AF removed after several minutes. This technique is the accepted gold standard for AF volume measurement; however, it is an invasive and cumbersome method and is not routinely used.</li><li><b>Subjective interpretation from ultrasound images.</b> This technique is obviously dependent on observer experience and has not been found to be very good or consistent at diagnosing oligo- or poly-hydramnios.</li><li><b>Vertical length of the largest single cord-free pocket.</b> This is an earlier variation of the AFI where the diameter of only one pocket is measured to estimate the AF volume.</li><li><b>Two-diameter areas of the largest AF pockets in the four quadrants.</b> This is similar to the AFI; however, in this case, two diameters are measured instead of only one for the largest pocket. This two diameter area has been recently shown to be better than AFI or the single pocket measurement in identifying oligohydramnios (<nplcit id="ncit0004" npl-type="s"><text>Magann EF, Perry KG Jr, Chauhan SP, Anfanger PJ, Whitworth NS, Morrison JC., "The accuracy of ultrasound evaluation of amniotic fluid volume in singleton pregnancies: the effect of operator experience and ultrasound interpretative technique," J Clin Ultrasound, Jun; 25(5):249-53, 1997</text></nplcit>).</li></ul>
0006The measurement of various anatomical structures using computational constructs are described, for example, in <patcit id="pcit0001" dnum="US6346124B"><text>U.S patent 6,346,124 to Geiser, et al.</text></patcit> (Autonomous Boundary Detection System For Echocardiographic Images). Similarly, the measurement of bladder structures are covered in <patcit id="pcit0002" dnum="US6213949B"><text>U.S. patent 6,213,949 to Ganguly, et al.</text></patcit> (System For Estimating Bladder Volume) and <patcit id="pcit0003" dnum="US5235985A"><text>U.S. patent to 5,235,985 to McMorrow, et al.</text></patcit>, (Automatic Bladder Scanning Apparatus). The measurement of fetal head structures is described in <patcit id="pcit0004" dnum="US5605155A"><text>U.S. patent 5,605,155 to Chalana, et al.</text></patcit>, (Ultrasound System For Automatically Measuring Fetal Head Size). The measurement of fetal weight is described in <patcit id="pcit0005" dnum="US6375616B"><text>U.S. patent 6,375,616 to Soferman, et al.</text></patcit> (Automatic Fetal Weight Determination).
0007Pertaining to ultrasound-based determination of amniotic fluid volumes, Segiv et al. (in <nplcit id="ncit0005" npl-type="s"><text>Segiv C, Akselrod S, Tepper R., "Application of a semiautomatic boundary detection algorithm for the assessment of amniotic fluid quantity from ultrasound images." Ultrasound Med Biol, May; 25(4): 515-26, 1999</text></nplcit>) describe a method for amniotic fluid segmentation from 2D images. However, the Segiv et al. method is interactive in nature and the identification of amniotic fluid volume is very observer dependent. Moreover, the system described is not a dedicated device for amniotic fluid volume assessment.
0008Grover et al. (<nplcit id="ncit0006" npl-type="s"><text>Grover J, Mentakis EA, Ross MG, "Three-dimensional method for determination of amniotic fluid volume in intrauterine pockets." Obstet Gynecol, Dec; 90(6): 1007-10, 1997</text></nplcit>) describe the use of a urinary bladder volume instrument for amniotic fluid volume measurement. The Grover et al. method makes use of the bladder volume instrument without any modifications and uses shape and other anatomical assumptions specific to the bladder that do not generalize to amniotic fluid pockets. Amniotic fluid pockets having shapes not consistent with the Grover et al. bladder model introduces analytical errors. Moreover, the bladder volume instrument does not allow for the possibility of more than one amniotic fluid pocket in one image scan. Therefore, the amniotic fluid volume measurements made by the Grover et al. system may not be correct or accurate.
0009As relating to the measurement of the size, shape, and internal volumes of specific organs using ultrasound segmentation analysis from three-dimensional ultrasound images, various methods have been used or proposed. Various kinds of methods have been used or proposed in the literature to measure the size, shape, and internal volumes of specific organs using ultrasound segmentation analysis from three-dimensional ultrasound images. Examples of body structures undergoing segmentation analysis include heart chambers, particularly cardiac chambers (left and right ventricles, left and right atriums), the prostate, the bladder, and amniotic sacs.
0010The measurement of heart chambers is described, for example in U.S patent 6,346,124 to Geiser, et al. (Autonomous Boundary Detection System For Echocardiographic Images). Similarly, the measurement of bladder structures are covered in <patcit id="pcit0006" dnum="US6213949B"><text>U.S. patent 6,213,949 to Ganguly, et al.</text></patcit> (System For Estimating Bladder Volume) and <patcit id="pcit0007" dnum="US5235985A"><text>U.S. patent to 5,235,985 to McMorrow, et al.</text></patcit>, (Automatic Bladder Scanning Apparatus). The measurement of fetal head structures is described in <patcit id="pcit0008" dnum="US5605155A"><text>U.S. patent 5,605,155 to Chalana, et al.</text></patcit>, (Ultrasound System For Automatically Measuring Fetal Head Size). The measurement of fetal weight is described in <patcit id="pcit0009" dnum="US6375616B"><text>U.S. patent 6,375,616 to Soferman, et al.</text></patcit> (Automatic Fetal Weight Determination).
0011Most of these techniques are not ideal in that they cannot be generalized beyond the application for which they were designed. They use shape or size assumptions that are not necessarily satisfied for different applications. An attempt to make a generalized model is described in <patcit id="pcit0010" dnum="US5588435A"><text>U.S. patent 5,588,435 to Weng, et al.</text></patcit> (System And Method For Automatic Measurement Of Body Structures) but is limited in its application due to method complexity and operational robustness.
0012The techniques commonly employed in segmentation use active contour modeling and live wire methods to delineate an object shape within electronic-based images, and partial differential equation (PDE) based processing of image signals to reduce background noise speckle. These three methods have their advantages and disadvantages. For example, the active contour modeling method or "snakes" is a region-based boundary method and requires specific shape assumptions and the use of deformable models to work properly (<nplcit id="ncit0007" npl-type="s"><text>M. Kass, A. Witkin, D. Terzopolous, "Snakes : Active Contour Models, "International Journal of Computer Vision, pp. 321-331, 1988</text></nplcit>). However, "snake" methods require an initial contour that needs to be very close to the final desired boundary. In addition, most of these methods are iterative in nature and labor intensive.
0013U.S. patent application published under number <patcit id="pcit0011" dnum="US20020102023A1"><text>US2002/0102023 A1</text></patcit> discloses an ultrasonic diagnostic device including an automatic contour extracting unit that contains: an initial contour extracting unit for roughly extracting an initial contour of an object to be examined from an ultrasound image by performing a predetermined operation (such as equalization, binarization and degeneration) on the ultrasound image; and a dynamic contour extracting unit for accurately extracting a final contour of the object by using the extracted initial contour as an initial value and by applying an active contour model, such as the SNAKES model, to the object within the ultrasound image.
0014Live wire methods, championed by A. X. Falacao et al. in "User-steered Image Segmentation Paradigms: Live wire and Live Lane," (<nplcit id="ncit0008" npl-type="s"><text>A.X. Falacao, J.K. Udupa, S. Samarasekara, and S. Sharma, Graphical Models and Image Processing, 60,233-26-, 1998</text></nplcit>) and <nplcit id="ncit0009" npl-type="s"><text>E.W. Dijkstra, in "A note on two problems in connection with graphs," (Numerical Math, vol. 1, pp. 269-271, 1959</text></nplcit>), requires a user to actively provide a starting point and an ending point via a mouse, pointer, or equivalent delineation means. Live wire is an interactive segmentation method which uses a minimum cost path between the last clicked user point to the current mouse clicked location. The live wire methodology of Falacao is labor intensive since it requires an iterative approach and generates a series of mouse delineating end-points. Furthermore, live wire methods are limited in accuracy because the simplest optimal path contour connecting any two mouse determined end-points is not sufficient in ultrasound images that are prone to mouse pointer backtracking. That is, the "user-steering" methods of Falacao require that the user backtrack the mouse whenever the drawn contour line has lost track of the object boundary as presented on the ultrasound image.
0015Most ultrasound processing methods involve some pre-processing techniques to reduce speckle noise and enhance images, such as median filtering methods and PDE-based image processing. PDE-based methods have the added advantages of preserving edges while enhancing images (see <nplcit id="ncit0010" npl-type="s"><text>P. Perona and J. Malik, "Scale-space and edge detection using aniostropic diffusion," IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 12, July 1990, pp. 629 - 639</text></nplcit>; <nplcit id="ncit0011" npl-type="b"><text>J.A. Sethian, Level Set Methods and Fast Marching Methods, 2nd Edition, Cambridge University Press, 1999</text></nplcit>; <nplcit id="ncit0012" npl-type="s"><text>S. Osher and L.I. Rudin, "Feature-oriented image enhancement using shock filters," SIAM Journal of Numerical Analysis, vol. 27, pp. 919-940, August 1990</text></nplcit>; and <patcit id="pcit0012" dnum="US5644513A"><text>U.S. patent 5,644,513 to Rudin, et al.</text></patcit> "System Incorporating Feature-Oriented Signal Enhancement Using Shock Filters"). These methods, especially shock filters for image sharpening or blind deconvolution, have been used reducing noise speckle for computerized-tomography (CT), magnetic resonance (MR), and positron emission-tomography (PET) images. However, shock filters implemented with unoptimized algorithms have been found deficient in that the unoptimized algorithms increase or enhance noise speckle, thereby degrading the CT, MR, and PET images.
0016In ultrasound images, chamber-like structures (for example: bladder, heart left ventricle, prostate, amniotic sac) are further prone to image degradation due to ultrasound echoes reflecting from other surfaces parallel to do organ wall boundary. The echoes from the parallel surfaces present as bright regions overlapping with the dark chamber boundary walls. Thus, ultrasound-echoing overlaps creates missing lateral boundaries of the organ walls. Thereby, making it difficult to accurately determine boundary wall locations where segmentation lines need to be drawn.
0017None of the currently used methods for AF volume estimation are ideal. Therefore, there is a need for better, non-invasive, and easier ways to accurately measure amniotic fluid volume. Furthermore, there is a need for a generalized image analysis method to accurately measure the size, shape, and volumes of fluid-filled and non-fluid filled organs from analysis of one-dimensional (1D), two-dimensional (2D), and three-dimensional (3D) images from ultrasound, CT, MR, and PET procedures. The generalized image analysis method requires optimal algorithms to minimize background noise speckle and maximize structure segmentation or delineation by minimizing the creation of missed lateral boundaries of organ structures. The generalized image analysis method needs to be broadly adaptable and simple to implement.
SUMMARY OF THE INVENTION
0018The invention is as defined by the amended set of claims.
0019The preferred form of the invention is a three dimensional (3D) ultrasound-based system and method having a plurality of automated processes optimized to robustly locate and measure the volume of amniotic fluid in a uterus without resorting to pre-conceived models of the shapes of amniotic fluid pockets in ultrasound images. The automated process uses a plurality of algorithms in a sequence that includes steps for image enhancement, segmentation, and polishing.
0020A hand-held 3D ultrasound device is used to image the uterus trans-abdominally. The user moves the device around on the maternal abdomen and, using 2D image processing to locate the amniotic fluid areas, the device gives feedback to the user about where to acquire the 3D image data sets. The user acquires one or more 3D image data sets covering all of the amniotic fluid in the uterus and the data sets are then stored in the device or transferred to a host computer.
0021The 3D datasets are then subjected to a 3D analysis process, the 3D analysis process preferably having a plurality of processes to calculate and the total volume of amniotic fluid in the uterus. The plurality of processes is either implemented on the device itself or is implemented on the host computer. Alternatively, the plurality of processes can also be implemented on a server or other computer to which the 3D ultrasound data sets are transferred.
0022In one preferred 3D analysis process, each 2D image in the 3D dataset is first enhanced using non-linear filters by an image pre-filtering step. The image pre-filtering step includes an image-smoothing step to reduce image noise followed by an image-sharpening step to obtain maximum contrast between organ wall boundaries.
0023A second process includes subjecting the resulting image of the first process to a location method to identify initial edge points between amniotic fluid and other fetal or maternal structures. The location method automatically determines the leading and trailing regions of wall locations along an A-mode one-dimensional scan line.
0024A third process includes subjecting the image of the first process to an intensity-based segmentation process where dark pixels (representing fluid) are automatically separated from bright pixels (representing tissue and other structures).
0025In a fourth process, the images resulting from the second and third step are combined to result in a single image representing likely amniotic fluid regions.
0026In a fifth process, the combined image is cleaned to make the output image smooth and to remove extraneous structures such as the fetal head and the fetal bladder.
0027A sixth process includes placing boundary line contours on each 2D image. Thereafter, the method then calculates the total 3D volume of amniotic fluid.
0028The system and method further provides an automatic method to detect and correct for any contribution the fetal head provides to the amniotic fluid volume.
0029Another preferred embodiment of the invention is a method having a plurality of segmentation algorithms and steps optimized to robustly locate and measure the volume of a fluid filled or non-fluid filled structure or organ from primary images obtained from instruments probing with or receiving and processing electromagnetic and non-electromagnetic radiation including ultrasound, CT, MR, PET, and radioisotopes used in nuclear medicine procedures that produce a plurality of 1D, 2D, or 3D images. The method is applied to 1D scans to obtain resultant 2D primary images. Each 2D primary image is made visually enhanced by the plurality of segmentation algorithms and steps of the method. The method then includes the creation and placement of accurately drawn boundary line contours that more clearly delineate or segment the structure walls within the 2D image. Upon placing the boundary line contours, the method calculates the volumes for each delineated structure or organ presented in each primary image. Then, as an aggregate, the method provides the ability to calculate the 2D area and the 3D volume of the structure or organ, fluid filled or non-fluid filled, from the summation of each 2D image.
0030The method employs subjecting each primary image to a pre-filtering step using non-linear filters to enhance the image. The pre-filtering step includes an image-smoothing step to obtain maximum contrast between organ wall boundaries followed by an image-sharpening step to establish image enhancements. The pre-filtering step has a first algorithm and a second algorithm, each algorithm having a partial differential equation (PDE) formula in non-linear form. The first PDE algorithm serves as a heat filter, and the second PDE algorithm serves as a shock filter. The sequence of image enhancement is application of the heat filter followed by application of the shock filter. Each image is subjected to a combination of the heat and shock filters to reduce each image's signal noise and to sharpen each image signal while at the same time preserving signal discontinuities. Each primary image subjected to the heat and shock prefiltering algorithms is formed into a second image having a clearer demarcation along the boundary of the structure or organ walls.
0031Each second image is then processed to determine where to locate initial edge points by either of two locating methods. A first locating method is a manual, user-deployed radial point method. The radial point method is comprised of lines that are drawn in substantially 30-degree increments for establishing where maximum spatial gradients exist during transitioning between light and dark areas. A second locating method to set initial boundary edge points is an automatic method to determine the leading and trailing regions of wall locations along an A-mode first dimension (1D) scan line that is regulated by a hysteresis threshold value.
0032An optimal pathway to connect between the initial edge points is then determined using a third algorithm to determine an optimal pathway. The optimal pathway between any two points is one defined to have the least cost, where the least cost represents the sum of three sub-equations; namely, the edge distance cost, the path direction cost, and the previous contour distance cost. The optimal pathway represents an automatically implemented way to draw contour boundary lines along wall structure using the automatically selected initial edge points from the second locating method or as manually selected by the radial method. The advantages compared to the manual live wire methodology is fewer initial points are needed to establish boundary contours, the minimum cost-optimal pathway algorithm is more robust, and does not require manual interactive mouse pointer setting and reselecting.
0033After the boundaries of each structure or organ are determined in each second image, the 2D area and 3D volume of the organ or structure is determined. For fluid-filled organs, this includes but is not limited to bladders, amniotic sacs, prostates, cardiac chambers (left and right ventricles, left and right atriums), ovarian cysts, arteries, and veins. Similarly, non-fluid containing organs or structures includes but is not limited to kidneys, kidney stones, gall bladders, gall bladder stones, and ovaries.
0034Finally, the method may be done remotely using a web server to analyze scan data sent from ultrasound, CT, MR, and PET devices over intranets or internets where the device architecture permits image processing on the server-side of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
0035<ul id="ul0002" list-style="none"><li><figref idref="f0001">FIGURE 1</figref> is a side view of a microprocessor-controlled, hand-held ultrasound transceiver;</li><li><figref idref="f0002">FIGURE 2A</figref> is a is depiction of the hand-held transceiver in use for scanning a patient;</li><li><figref idref="f0002">FIGURE 2B</figref> is a perspective view of the hand-held transceiver device sitting in a communication cradle;</li><li><figref idref="f0003">FIGURE 3</figref> depicts a schematic view of a plurality of transceivers in connection with a server;</li><li><figref idref="f0004">FIGURE 4</figref> depicts a schematic view of a plurality of transceivers in connection with a server over a network;</li><li><figref idref="f0005">FIGURE 5A</figref> a graphical representation of a plurality of scan lines forming a single scan plane;</li><li><figref idref="f0005">FIGURE 5B</figref> is a graphical representation of a plurality of scanplanes forming a three-dimensional array having a substantially conic shape;</li><li><figref idref="f0006">FIGURE 6</figref> is a depiction of the hand-held transceiver placed laterally on a patient trans-abdominally to transmit ultrasound and receive ultrasound echoes for processing to determine amniotic fluid volumes;</li><li><figref idref="f0007">FIGURE 7</figref> shows a block diagram overview of the two-dimensional and three-dimensional Input, Image Enhancement, Intensity-Based Segmentation, Edge-Based Segmentation, Combine, Polish , Output, and Compute algorithms to visualize and determine the volume or area of amniotic fluid;</li><li><figref idref="f0008">FIGURE 8A</figref> depicts the sub-algorithms of Image Enhancement;</li><li><figref idref="f0008">FIGURE 8B</figref> depicts the sub-algorithms of Intensity-Based Segmentation;</li><li><figref idref="f0008">FIGURE 8C</figref> depicts the sub-algorithms of Edge-Based Segmentation;</li><li><figref idref="f0009">FIGURE 8D</figref> depicts the sub-algorithms of the Polish algorithm, including Close, Open, Remove Deep Regions, and Remove Fetal Head Regions;</li><li><figref idref="f0010">FIGURE 8E</figref> depicts the sub-algorithms of the Remove Fetal Head Regions sub-algorithm;</li><li><figref idref="f0011">FIGURE 8F</figref> depicts the sub-algorithms of the Hough Transform sub-algorithm;</li><li><figref idref="f0012">FIGURE 9</figref> depicts the operation of a circular Hough transform algorithm;</li><li><figref idref="f0013">FIGURE 10</figref> shows results of sequentially applying the algorithm steps on a sample image;</li><li><figref idref="f0014">FIGURE 11</figref> illustrates a set of intermediate images of the fetal head detection process;</li><li><figref idref="f0015">FIGURE 12</figref> presents a 4-panel series of sonographer amniotic fluid pocket outlines and the algorithm output amniotic fluid pocket outlines;</li><li><figref idref="f0016">Figure 13</figref> is an overview of the segmentation algorithm method;</li><li><figref idref="f0017">Figure 14</figref> is an algorithm processing on a real bladder image presented in a five-panel series;</li><li><figref idref="f0018">Figure 15</figref> is a three panel series of 2D images smoothed with varying heat filter algorithm iterations;</li><li><figref idref="f0019">Figure 16A</figref> is a graph showing the effects of a shock-filtering algorithm of a blurred signal;</li><li><figref idref="f0020">Figure 16B</figref> is a graph showing the effects of heat and shock filtering algorithms of a blurred noisy signal;</li><li><figref idref="f0021">Figure 17</figref> is a pixel-processing algorithm for finding the direction cost;</li><li><figref idref="f0022">Figure 18</figref> is a 24 panel series of segmentation algorithms applied to 24 image planes of a bladder phantom, each image plane showing the resultant boundary contours;</li><li><figref idref="f0023">Figure 19</figref> is a 12 panel series of segmentation algorithms applied to a first human bladder scanned with 12 images planes, each image plane showing the resultant boundary contours; and</li><li><figref idref="f0024">Figure 20</figref> is a 12 panel series of segmentation algorithms applied to a second human bladder scanned with 12 image planes, each image plane showing the resultant boundary contours.</li></ul>
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
0036The preferred portable embodiment of the ultrasound transceiver of the amniotic fluid volume measuring system are shown in <figref idref="f0001 f0002 f0003 f0004">FIGURES 1-4</figref>. The transceiver 10 includes a handle 12 having a trigger 14 and a top button 16, a transceiver housing 18 attached to the handle 12, and a transceiver dome 20. A display 24 for user interaction is attached to the transceiver housing 18 at an end opposite the transceiver dome 20. Housed within the transceiver 10 is a single element transducer (not shown) that converts ultrasound waves to electrical signals. The transceiver 10 is held in position against the body of a patient by a user for image acquisition and signal processing. In operation, the transceiver 10 transmits a radio frequency ultrasound signal at substantially 3.7 MHz to the body and then receives a returning echo signal. To accommodate different patients having a variable range of obesity, the transceiver 10 can be adjusted to transmit a range of probing ultrasound energy from approximately 2 MHz to approximately 10 MHz radio frequencies.
0037The top button 16 selects for different acquisition volumes. The transceiver is controlled by a microprocessor and software associated with the microprocessor and a digital signal processor of a computer system. As used in this invention, the term "computer system" broadly comprises any microprocessor-based or other computer system capable of executing operating instructions and manipulating data, and is not limited to a traditional desktop or notebook computer. The display 24 presents alphanumeric or graphic data indicating the proper or optimal positioning of the transceiver 10 for initiating a series of scans. A suitable transceiver is the DCD372 made by Diagnostic Ultrasound. In alternate embodiments, the two- or three-dimensional image of a scan plane may be presented in the display 24.
0038Although the preferred ultrasound transceiver is described above, other transceivers may also be used. For example, the transceiver need not be battery-operated or otherwise portable, need not have a top-mounted display 24, and may include many other features or differences. The display 24 may be a liquid crystal display (LCD), a light emitting diode (LED), a cathode ray tube (CRT), or any suitable display capable of presenting alphanumeric data or graphic images.
0039<figref idref="f0002">FIGURE 2A</figref> is a photograph of the hand-held transceiver 10 for scanning a patient. The transceiver 10 is then positioned over the patient's abdomen by a user holding the handle 12 to place the transceiver housing 18 against the patient's abdomen. The top button 16 is centrally located on the handle 12. Once optimally positioned over the abdomen for scanning, the transceiver 10 transmits an ultrasound signal at substantially 3.7 MHz into the uterus. The transceiver 10 receives a return ultrasound echo signal emanating from the uterus and presents it on the display 24.
0040<figref idref="f0002">FIGURE 2B</figref> is a perspective view of the hand-held transceiver device sitting in a communication cradle. The transceiver 10 sits in a communication cradle 42 via the handle 12. This cradle can be connected to a standard USB port of any personal computer, enabling all the data on the device to be transferred to the computer and enabling new programs to be transferred into the device from the computer.
0041<figref idref="f0003">FIGURE 3</figref> depicts a schematic view of a plurality of transceivers in connection with a server. <figref idref="f0003">FIGURE 3</figref>, by example, depicts each transceiver 10 being used to send probing ultrasound radiation to a uterus of a patient and to subsequently retrieve ultrasound echoes returning from the uterus, convert the ultrasound echoes into digital echo signals, store the digital echo signals, and process the digital echo signals by algorithms of the invention. A user holds the transceiver 10 by the handle 12 to send probing ultrasound signals and to receive incoming ultrasound echoes. The transceiver 10 is placed in the communication cradle 42 that is in signal communication with a computer 52, and operates as an amniotic fluid volume measuring system. Two amniotic fluid volume-measuring systems are depicted as representative though fewer or more systems may be used. As used in this invention, a "server" can be any computer software or hardware that responds to requests or issues commands to or from a client. Likewise, the server may be accessible by one or more client computers via the Internet, or may be in communication over a LAN or other network.
0042Each amniotic fluid volume measuring systems includes the transceiver 10 for acquiring data from a patient. The transceiver 10 is placed in the cradle 52 to establish signal communication with the computer 52. Signal communication as illustrated is by a wired connection from the cradle 42 to the computer 52. Signal communication between the transceiver 10 and the computer 52 may also be by wireless means, for example, infrared signals or radio frequency signals. The wireless means of signal communication may occur between the cradle 42 and the computer 52, the transceiver 10 and the computer 52, or the transceiver 10 and the cradle 42.
0043A preferred first embodiment of the amniotic fluid volume measuring system includes each transceiver 10 being separately used on a patient and sending signals proportionate to the received and acquired ultrasound echoes to the computer 52 for storage. Residing in each computer 52 are imaging programs having instructions to prepare and analyze a plurality of one dimensional (1D) images from the stored signals and transforms the plurality of 1D images into the plurality of 2D scanplanes. The imaging programs also present 3D renderings from the plurality of 2D scanplanes. Also residing in each computer 52 are instructions to perform the additional ultrasound image enhancement procedures, including instructions to implement the image processing algorithms.
0044A preferred second embodiment of the amniotic fluid volume measuring system is similar to the first embodiment, but the imaging programs and the instructions to perform the additional ultrasound enhancement procedures are located on the server 56. Each computer 52 from each amniotic fluid volume measuring system receives the acquired signals from the transceiver 10 via the cradle 51 and stores the signals in the memory of the computer 52. The computer 52 subsequently retrieves the imaging programs and the instructions to perform the additional ultrasound enhancement procedures from the server 56. Thereafter, each computer 52 prepares the 1D images, 2D images, 3D renderings, and enhanced images from the retrieved imaging and ultrasound enhancement procedures. Results from the data analysis procedures are sent to the server 56 for storage.
0045A preferred third embodiment of the amniotic fluid volume measuring system is similar to the first and second embodiments, but the imaging programs and the instructions to perform the additional ultrasound enhancement procedures are located on the server 56 and executed on the server 56. Each computer 52 from each amniotic fluid volume measuring system receives the acquired signals from the transceiver 10 and via the cradle 51 sends the acquired signals in the memory of the computer 52. The computer 52 subsequently sends the stored signals to the server 56. In the server 56, the imaging programs and the instructions to perform the additional ultrasound enhancement procedures are executed to prepare the 1D images, 2D images, 3D renderings, and enhanced images from the server 56 stored signals. Results from the data analysis procedures are kept on the server 56, or alternatively, sent to the computer 52.
0046<figref idref="f0004">FIGURE 4</figref> is a schematic view of a plurality of amniotic fluid measuring systems connected to a server over the Internet or other network 64. <figref idref="f0004">FIGURE 4</figref> represents any of the first, second, or third embodiments of the invention advantageously deployed to other servers and computer systems through connections via the network.
0047<figref idref="f0005">FIGURE 5A</figref> a graphical representation of a plurality of scan lines forming a single scan plane. <figref idref="f0005">FIGURE 5A</figref> illustrates how ultrasound signals are used to make analyzable images, more specifically how a series of one-dimensional (1D) scanlines are used to produce a two-dimensional (2D) image. The 1D and 2D operational aspects of the single element tranducer housed in the transceiver 10 is seen as it rotates mechanically about an angle φ. A scanline 214 of length r migrates between a first limiting position 218 and a second limiting position 222 as determined by the value of the angle φ, creating a fan-like 2D scanplane 210. In one preferred form, the transceiver 10 operates substantially at 3.7 MHz frequency and creates an approximately 18 cm deep scan line 214 and migrates within the angle φ having an angle of approximately 0.027 radians. A first motor tilts the transducer approximately 60° clockwise and then counterclockwise forming the fan-like 2D scanplane presenting an approximate 120° 2D sector image. A plurality of scanlines, each scanline substantially equivalent to scanline 214 is recorded, between the first limiting position 218 and the second limiting position 222 formed by the unique tilt angle φ. The plurality of scanlines between the two extremes forms a scanplane 210. In the preferred embodiment, each scanplane contains 77 scan lines, although the number of lines can vary within the scope of this invention. The tilt angle φ sweeps through angles approximately between -60° and +60° for a total arc of approximately 120°.
0048<figref idref="f0005">FIGURE 5B</figref> is a graphical representation of a plurality of scanplanes forming a three-dimensional array (3D) 240 having a substantially conic shape. <figref idref="f0005">FIGURE 5B</figref> illustrates how a 3D rendering is obtained from the plurality of 2D scanplanes. Within each scanplane 210 are the plurality of scanlines, each scanline equivalent to the scanline 214 and sharing a common rotational angle θ. In the preferred embodiment, each scanplane contains 77 scan lines, although the number of lines can vary within the scope of this invention. Each 2D sector image scanplane 210 with tilt angle φ and range r (equivalent to the scanline 214) collectively forms a 3D conic array 240 with rotation angle θ. After gathering the 2D sector image, a second motor rotates the transducer between 3.75° or 7.5° to gather the next 120° sector image. This process is repeated until the transducer is rotated through 180°, resulting in the cone-shaped 3D conic array 240 data set with 24 planes rotationally assembled in the preferred embodiment. The conic array could have fewer or more planes rotationally assembled. For example, preferred alternate embodiments of the conic array could include at least two scanplanes, or a range of scanplanes from 2 to 48 scanplanes. The upper range of the scanplanes can be greater than 48 scanplanes. The tilt angle φ indicates the tilt of the scanline from the centerline in 2D sector image, and the rotation angle θ, identifies the particular rotation plane the sector image lies in. Therefore, any point in this 3D data set can be isolated using coordinates expressed as three parameters, <i>P</i>(<i>r,</i>φ<i>,</i>θ)<i>.</i>
0049As the scanlines are transmitted and received, the returning echoes are interpreted as analog electrical signals by a transducer, converted to digital signals by an analog-to-digital converter, and conveyed to the digital signal processor of the computer system for storage and analysis to determine the locations of the amniotic fluid walls. The computer system is representationally depicted in <figref idref="f0003">FIGURES 3</figref> and <figref idref="f0004">4</figref> and includes a microprocessor, random access memory (RAM), or other memory for storing processing instructions and data generated by the transceiver 10.
0050<figref idref="f0006">FIGURE 6</figref> is a depiction of the hand-held transceiver placed on a patient trans-abdominally to transmit probing ultrasound and receive ultrasound echoes for processing to determine amniotic fluid volumes. The transceiver 10 is held by the handle 12 to position over a patient to measure the volume of amniotic fluid in an amniotic sac over a baby. A plurality of axes for describing the orientation of the baby, the amniotic sac, and mother is illustrated. The plurality of axes includes a vertical axis depicted on the line L(R) - L(L) for left and right orientations, a horizontal axis LI - LS for inferior and superior orientations, and a depth axis LA - LP for anterior and posterior orientations.
0051<figref idref="f0006">FIGURE 6</figref> is representative of a preferred data acquisition protocol used for amniotic fluid volume determination. In this protocol, the transceiver 10 is the hand-held 3D ultrasound device (for example, model DCD372 from Diagnostic Ultrasound) and is used to image the uterus trans-abdominally. Initially during the targeting phase, the patient is in a supine position and the device is operated in a 2D continuous acquisition mode. A 2D continuous mode is where the data is continuously acquired in 2D and presented as a scanplane similar to the scanplane 210 on the display 24 while an operator physically moves the transceiver 10. An operator moves the transceiver 10 around on the maternal abdomen and the presses the trigger 14 of the transceiver 10 and continuously acquires real-time feedback presented in 2D on the display 24. Amniotic fluid, where present, visually appears as dark regions along with an alphanumeric indication of amniotic fluid area (for example, in cm<sup>2</sup>) on the display 24. Based on this real-time information in terms of the relative position of the transceiver 10 to the fetus, the operator decides which side of the uterus has more amniotic fluid by the presentation on the display 24. The side having more amniotic fluid presents as regions having larger darker regions on the display 24. Accordingly, the side displaying a large dark region registers greater alphanumeric area while the side with less fluid shows displays smaller dark regions and proportionately registers smaller alphanumeric area on the display 24. While amniotic fluid is present throughout the uterus, its distribution in the uterus depends upon where and how the fetus is positioned within the uterus. There is usually less amniotic fluid around the fetus's spine and back and more amniotic fluid in front of its abdomen and around the limbs.
0052Based on fetal position information acquired from data gathered under continuous acquisition mode, the patient is placed in a lateral recumbent position such that the fetus is displaced towards the ground creating a large pocket of amniotic fluid close to abdominal surface where the transceiver 10 can be placed as shown in <figref idref="f0006">FIGURE 6</figref>. For example, if large fluid pockets are found on the right side of the patient, the patient is asked to turn with the left side down and if large fluid pockets are found on the left side, the patient is asked to turn with the right side down.
0053After the patient has been placed in the desired position, the transceiver 10 is again operated in the 2D continuous acquisition mode and is moved around on the lateral surface of the patient's abdomen. The operator finds the location that shows the largest amniotic fluid area based on acquiring the largest dark region imaged and the largest alphanumeric value displayed on the display 24. At the lateral abdominal location providing the largest dark region, the transceiver 10 is held in a fixed position, the trigger 14 is released to acquire a 3D image comprising a set of arrayed scanplanes. The 3D image presents a rotational array of the scanplanes 210 similar to the 3D array 240. In a preferred alternate data acquisition protocol, the operator can reposition the transceiver 10 to a different abdominal location to acquire new 3D images comprised of different scanplane arrays similar to the 3D array 240. Multiple scan cones obtained from different lateral positions provide the operator the ability to verify amniotic fluid imaging and measurement. In the case of a single image cone being too small to accommodate a large AFV measurement, obtaining multiple 3D array 240 image cones ensures that the total volume of large AFV regions is determined. Multiple 3D images may also be acquired by pressing the top bottom 16 to select multiple conic arrays similar to the 3D array 240.
0054Depending on the position of the fetus relative to the location of the transceiver 10, a single image scan may present an underestimated volume of AFV due to amniotic fluid pockets that remain hidden behind the limbs of the fetus. The hidden amniotic fluid pockets present as unquantifiable shadow-regions.
0055To guard against underestimating AFV, repeated positioning the transceiver 10 and rescanning can be done to obtain more than one ultrasound view to maximize detection of amniotic fluid pockets. Repositioning and rescanning provides multiple views as a plurality of the 3D arrays 240 images cones. Acquiring multiple images cones improves the probability of obtaining initial estimates of AFV that otherwise could remain undetected and un-quantified in a single scan.
0056In an alternative scan protocol, the user determines and scans at only one location on the entire abdomen that shows the maximum amniotic fluid area while the patient is the supine position. As before, when the user presses the top button 16, 2D scanplane images equivalent to the scanplane 210 are continuously acquired and the amniotic fluid area on every image is automatically computed. The user selects one location that shows the maximum amniotic fluid area. At this location, as the user releases the scan button, a full 3D data cone is acquired and stored in the device's memory.
0057<figref idref="f0007">FIGURE 7</figref> shows a block diagram overview the image enhancement, segmentation, and polishing algorithms of the amniotic fluid volume measuring system. The enhancement, segmentation, and polishing algorithms are applied to each scanplane 210 or to the entire scan cone 240 to automatically obtain amniotic fluid regions. For scanplanes substantially equivalent to scanplane 210, the algorithms are expressed in two-dimensional terms and use formulas to convert scanplane pixels (picture elements) into area units. For the scan cones substantially equivalent to the 3D conic array 240, the algorithms are expressed in three-dimensional terms and use formulas to convert voxels (volume elements) into volume units.
0058The algorithms expressed in 2D terms are used during the targeting phase where the operator trans-abdominally positions and repositions the transceiver 10 to obtain real-time feedback about the amniotic fluid area in each scanplane. The algorithms expressed in 3D terms are used to obtain the total amniotic fluid volume computed from the voxels contained within the calculated amniotic fluid regions in the 3D conic array 240.
0059<figref idref="f0007">FIGURE 7</figref> represents an overview of a preferred method of the invention and includes a sequence of algorithms, many of which have sub-algorithms described in more specific detail in <figref idref="f0008 f0009 f0010 f0011">FIGURES 8A-F</figref>. <figref idref="f0007">FIGURE 7</figref> begins with inputting data of an unprocessed image at step 410. After unprocessed image data 410 is entered (e.g., read from memory, scanned, or otherwise acquired), it is automatically subjected to an image enhancement algorithm 418 that reduces the noise in the data (including speckle noise) using one or more equations while preserving the salient edges on the image using one or more additional equations. Next, the enhanced images are segmented by two different methods whose results are eventually combined. A first segmentation method applies an intensity-based segmentation algorithm 422 that determines all pixels that are potentially fluid pixels based on their intensities. A second segmentation method applies an edge-based segmentation algorithm 438 that relies on detecting the fluid and tissue interfaces. The images obtained by the first segmentation algorithm 422 and the images obtained by the second segmentation algorithm 438 are brought together via a combination algorithm 442 to provide a substantially segmented image. The segmented image obtained from the combination algorithm 442 are then subjected to a polishing algorithm 464 in which the segmented image is cleaned-up by filling gaps with pixels and removing unlikely regions. The image obtained from the polishing algorithm 464 is outputted 480 for calculation of areas and volumes of segmented regions-of-interest. Finally the area or the volume of the segmented region-of-interest is computed 484 by multiplying pixels by a first resolution factor to obtain area, or voxels by a second resolution factor to obtain volume. For example, for pixels having a size of 0.8mm by 0.8 mm, the first resolution or conversion factor for pixel area is equivalent to 0.64 mm<sup>2</sup>, and the second resolution or conversion factor for voxel volume is equivalent to 0.512 mm<sup>3</sup>. Different unit lengths for pixels and voxels may be assigned, with a proportional change in pixel area and voxel volume conversion factors.
0060The enhancement, segmentation and polishing algorithms depicted in <figref idref="f0007">FIGURE 7</figref> for measuring amniotic fluid areas or volumes are not limited to scanplanes assembled into rotational arrays equivalent to the 3D array 240. As additional examples, the enhancement, segmentation and polishing algorithms depicted in <figref idref="f0007">FIGURE 7</figref> apply to translation arrays and wedge arrays. Translation arrays are substantially rectilinear image plane slices from incrementally repositioned ultrasound transceivers that are configured to acquire ultrasound rectilinear scanplanes separated by regular or irregular rectilinear spaces. The translation arrays can be made from transceivers configured to advance incrementally, or may be hand-positioned incrementally by an operator. The operator obtains a wedge array from ultrasound transceivers configured to acquire wedge-shaped scanplanes separated by regular or irregular angular spaces, and either mechanistically advanced or hand-tilted incrementally. Any number of scanplanes can be either translationally assembled or wedge-assembled ranges, but preferably in ranges greater than 2 scanplanes.
0061Other preferred embodiments of the enhancement, segmentation and polishing algorithms depicted in <figref idref="f0007">FIGURE 7</figref> may be applied to images formed by line arrays, either spiral distributed or reconstructed random-lines. The line arrays are defined using points identified by the coordinates expressed by the three parameters, P(<i>r</i>,φ,θ), where the values or <i>r</i>, φ, and θ can vary.
0062The enhancement, segmentation and polishing algorithms depicted in <figref idref="f0007">FIGURE 7</figref> are not limited to ultrasound applications but may be employed in other imaging technologies utilizing scanplane arrays or individual scanplanes. For example, biological-based and non-biological-based images acquired using infrared, visible light, ultraviolet light, microwave, x-ray computed tomography, magnetic resonance, gamma rays, and positron emission are images suitable for the algorithms depicted in <figref idref="f0007">FIGURE 7</figref>. Furthermore, the algorithms depicted in <figref idref="f0007">FIGURE 7</figref> can be applied to facsimile transmitted images and documents.
0063<figref idref="f0008 f0009 f0010">FIGURES 8A-E</figref> depict expanded details of the preferred embodiments of enhancement, segmentation, and polishing algorithms described in <figref idref="f0007">Figure 7</figref>. Each of the following greater detailed algorithms are either implemented on the transceiver 10 itself or are implemented on the host computer 52 or on the server 56 computer to which the ultrasound data is transferred.
0064<figref idref="f0008">FIGURE 8A</figref> depicts the sub-algorithms of Image Enhancement. The sub-algorithms include a heat filter 514 to reduce noise and a shock filter 518 to sharpen edges. A combination of the heat and shock filters works very well at reducing noise and sharpening the data while preserving the significant discontinuities. First, the noisy signal is filtered using a 1D heat filter (Equation E1 below), which results in the reduction of noise and smoothing of edges. This step is followed by a shock-filtering step 518 (Equation E2 below), which results in the sharpening of the blurred signal. Noise reduction and edge sharpening is achieved by application of the following equations E1-E2. The algorithm of the heat filter 514 uses a heat equation E1. The heat equation E1 in partial differential equation (PDE) form for image processing is expressed as: <maths id="math0001" num="E1"><math display="block"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi>t</mi></mrow></mfrac><mo>=</mo><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><msup><mrow><mo>∂</mo><mi>x</mi></mrow><mn>2</mn></msup></mfrac><mo>+</mo><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><msup><mrow><mo>∂</mo><mi>y</mi></mrow><mn>2</mn></msup></mfrac><mo>,</mo></math><img file="EP1538986B1_D0001.tif" /></maths> where u is the image being processed. The image u is 2D, and is comprised of an array of pixels arranged in rows along the x-axis, and an array of pixels arranged in columns along the y-axis. The pixel intensity of each pixel in the image u has an initial input image pixel intensity (I) defined as <i>u</i><sub>0</sub> = <i>I</i>. The value of <i>I</i> depends on the application, and commonly occurs within ranges consistent with the application. For example, <i>I</i> can be as low as 0 to 1, or occupy middle ranges between 0 to 127 or 0 to 512. Similarly, <i>I</i> may have values occupying higher ranges of 0 to 1024 and 0 to 4096, or greater.
0065The heat equation E1 results in a smoothing of the image and is equivalent to the Gaussian filtering of the image. The larger the number of iterations that it is applied for the more the input image is smoothed or blurred and the more the noise that is reduced.
0066The shock filter 518 is a PDE used to sharpen images as detailed below. The two dimensional shock filter E2 is expressed as: <maths id="math0002" num="(E2"><math display="block"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi>t</mi></mrow></mfrac><mo>=</mo><mo>-</mo><mi>F</mi><mfenced><mo>ℓ</mo><mfenced><mi>u</mi></mfenced></mfenced><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>,</mo></math><img file="EP1538986B1_D0002.tif" /></maths> where u is the image processed whose initial value is the input image pixel intensity (I): <i>u<sub>0</sub></i> = <i>I</i> where the ℓ(<i>u</i>) term is the Laplacian of the image <i>u</i>, <i>F</i> is a function of the Laplacian, and ∥∇<i>u</i>∥ is the 2D gradient magnitude of image intensity defined by equation E3. <maths id="math0003" num="E3"><math display="block"><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>=</mo><msqrt><msubsup><mi>u</mi><mi>x</mi><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>u</mi><mi>y</mi><mn>2</mn></msubsup></msqrt><mo>,</mo></math><img file="EP1538986B1_D0003.tif" /></maths> where <ul id="ul0003" list-style="none" compact="compact"><li><i>u<sup>2</sup><sub>x</sub></i> = the square of the partial derivative of the pixel intensity (u) along the x-axis,</li><li><i>u<sup>2</sup><sub>y</sub></i> = the square of the partial derivative of the pixel intensity (u) along the y-axis,</li></ul> the Laplacian ℓ(<i>u</i>) of the image, u, is expressed in equation E4 as <maths id="math0004" num="E4"><math display="block"><mo>ℓ</mo><mfenced><mi>u</mi></mfenced><mo>=</mo><msub><mi>u</mi><mi mathvariant="italic">xx</mi></msub><mo></mo><msup><msub><mi>u</mi><mi>x</mi></msub><mn>2</mn></msup><mo>+</mo><mn>2</mn><mo></mo><msub><mi>u</mi><mi mathvariant="italic">xy</mi></msub><mo></mo><msub><mi>u</mi><mi>x</mi></msub><mo></mo><msub><mi>u</mi><mi>y</mi></msub><mo>+</mo><msub><mi>u</mi><mi mathvariant="italic">yy</mi></msub><mo></mo><msup><msub><mi>u</mi><mi>y</mi></msub><mn>2</mn></msup></math><img file="EP1538986B1_D0004.tif" /></maths> where equation E4 relates to equation E1 as follows: <ul id="ul0004" list-style="none"><li><i>u<sub>x</sub></i> is the first partial derivative <maths id="math0005"><math display="inline"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi>x</mi></mrow></mfrac></math><img file="EP1538986B1_D0005.tif" /></maths>of u along the x-axis,</li><li><i>u<sub>y</sub></i> is the first partial derivative <maths id="math0006"><math display="inline"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mi mathvariant="italic">dy</mi></mfrac></math><img file="EP1538986B1_D0006.tif" /></maths> of u along the y-axis,</li><li><i>u<sub>x</sub><sup>2</sup></i> is the square of the first partial derivative <maths id="math0007"><math display="inline"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi>x</mi></mrow></mfrac></math><img file="EP1538986B1_D0007.tif" /></maths> of u along the x-axis,</li><li><i>u<sub>y</sub><sup>2</sup></i> is the square of the first partial derivative <maths id="math0008"><math display="inline"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi mathvariant="italic">y</mi></mrow></mfrac></math><img file="EP1538986B1_D0008.tif" /></maths> of u along the y-axis,</li><li><i>u<sub>xx</sub></i> is the second partial derivative <maths id="math0009"><math display="inline"><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mo>∂</mo><msup><mi>x</mi><mn>2</mn></msup></mrow></mfrac></math><img file="EP1538986B1_D0009.tif" /></maths>of u along the x-axis,</li><li><i>u<sub>yy</sub></i> is the second partial derivative <maths id="math0010"><math display="inline"><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mo>∂</mo><msup><mi>y</mi><mn>2</mn></msup></mrow></mfrac></math><img file="EP1538986B1_D0010.tif" /></maths> of u along the y-axis,</li><li><i>u<sub>xy</sub></i> is cross multiple first partial derivative <maths id="math0011"><math display="inline"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi mathvariant="italic">xdy</mi></mrow></mfrac></math><img file="EP1538986B1_D0011.tif" /></maths> of u along the x and y axes, and</li></ul> the sign of the function <i>F</i> modifies the Laplacian by the image gradient values selected to avoid placing spurious edges at points with small gradient values: <maths id="math0012"><math display="block"><mtable><mtr><mtd><mi>F</mi><mfenced><mo>ℓ</mo><mfenced><mi>u</mi></mfenced></mfenced></mtd><mtd columnalign="left"><mo>=</mo><mn>1</mn><mo>,</mo><mi>if</mi><mo>ℓ</mo><mfenced><mi>u</mi></mfenced><mo>></mo><mn>0</mn><mspace width="1em" /><mi>and</mi><mspace width="1em" /><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>></mo><mi>t</mi></mtd></mtr><mtr><mtd><mspace width="1em" /></mtd><mtd columnalign="left"><mo>=</mo><mo>-</mo><mn>1</mn><mo>,</mo><mi>if</mi><mo>ℓ</mo><mfenced><mi>u</mi></mfenced><mo><</mo><mn>0</mn><mspace width="1em" /><mi>and</mi><mspace width="1em" /><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>></mo><mi>t</mi></mtd></mtr><mtr><mtd><mspace width="1em" /></mtd><mtd columnalign="left"><mo>=</mo><mn>0</mn><mo>,</mo><mi>otherwise</mi></mtd></mtr></mtable></math><img file="EP1538986B1_D0012.tif" /></maths> where <i>t</i> is a threshold on the pixel gradient value ∥∇<i>u</i>∥.
0067The combination of heat filtering and shock filtering produces an enhanced image ready to undergo the intensity-based and edge-based segmentation algorithms as discussed below.
0068<figref idref="f0008">FIGURE 8B</figref> depicts the sub-algorithms of Intensity-Based Segmentation (step 422 in <figref idref="f0007">FIGURE 7</figref>). The intensity-based segmentation step 422 uses a "k-means" intensity clustering 522 technique where the enhanced image is subjected to a categorizing "k-means" clustering algorithm. The "k-means" algorithm categorizes pixel intensities into white, gray, and black pixel groups. Given the number of desired clusters or groups of intensities (k), the k-means algorithm is an iterative algorithm comprising four steps: <ol id="ol0001"><li>1. Initially determine or categorize cluster boundaries by defining a minimum and a maximum pixel intensity value for every white, gray, or black pixels into groups or k-clusters that are equally spaced in the entire intensity range.</li><li>2. Assign each pixel to one of the white, gray or black k-clusters based on the currently set cluster boundaries.</li><li>3. Calculate a mean intensity for each pixel intensity k-cluster or group based on the current assignment of pixels into the different k-clusters. The calculated mean intensity is defined as a cluster center. Thereafter, new cluster boundaries are determined as mid points between cluster centers.</li><li>4. Determine if the cluster boundaries significantly change locations from their previous values. Should the cluster boundaries change significantly from their previous values, iterate back to step 2, until the cluster centers do not change significantly between iterations. Visually, the clustering process is manifest by the segmented image and repeated iterations continue until the segmented image does not change between the iterations.</li></ol>
0069The pixels in the cluster having the lowest intensity value - the darkest cluster - are defined as pixels associated with amniotic fluid. For the 2D algorithm, each image is clustered independently of the neighboring images. For the 3D algorithm, the entire volume is clustered together. To make this step faster, pixels are sampled at 2 or any multiple sampling rate factors before determining the cluster boundaries. The cluster boundaries determined from the down-sampled data are then applied to the entire data.
0070<figref idref="f0008">FIGURE 8C</figref> depicts the sub-algorithms of Edge-Based Segmentation (step 438 in <figref idref="f0007">FIGURE 7</figref>) and uses a sequence of four sub-algorithms. The sequence includes a spatial gradients 526 algorithm, a hysteresis threshold 530 algorithm, a Region-of-Interest (ROI) 534 algorithm, and a matching edges filter 538 algorithm.
0071The spatial gradient 526 computes the x-directional and y-directional spatial gradients of the enhanced image. The Hysteresis threshold 530 algorithm detects salient edges. Once the edges are detected, the regions defined by the edges are selected by a user employing the ROI 534 algorithm to select regions-of-interest deemed relevant for analysis.
0072Since the enhanced image has very sharp transitions, the edge points can be easily determined by taking x- and y- derivatives using backward differences along x- and y-directions. The pixel gradient magnitude ∥∇<i>I</i>∥ is then computed from the x- and y-derivative image in equation E5 as: <maths id="math0013" num="E5"><math display="block"><mo>‖</mo><mo>∇</mo><mi>I</mi><mo>‖</mo><mo>=</mo><msqrt><msubsup><mi>I</mi><mi>x</mi><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>I</mi><mi>y</mi><mn>2</mn></msubsup></msqrt></math><img file="EP1538986B1_D0013.tif" /></maths>
0073Where <i>I<sup>2</sup><sub>x</sub></i> = the square of x-derivative of intensity; and <i>I<sup>2</sup><sub>y</sub></i> = the square of y-derivative of intensity along the y-axis.
0074Significant edge points are then determined by thresholding the gradient magnitudes using a hysteresis thresholding operation. Other thresholding methods could also be used. In hysteresis thresholding 530, two threshold values, a lower threshold and a higher threshold, are used. First, the image is thresholded at the lower threshold value and a connected component labeling is carried out on the resulting image. Next, each connected edge component is preserved which has at least one edge pixel having a gradient magnitude greater than the upper threshold. This kind of thresholding scheme is good at retaining long connected edges that have one or more high gradient points.
0075In the preferred embodiment, the two thresholds are automatically estimated. The upper gradient threshold is estimated at a value such that at most 97% of the image pixels are marked as non-edges. The lower threshold is set at 50% of the value of the upper threshold. These percentages could be different in different implementations. Next, edge points that lie within a desired region-of-interest are selected 534. This region of interest selection 534 excludes points lying at the image boundaries and points lying too close to or too far from the transceiver 10. Finally, the matching edge filter 538 is applied to remove outlier edge points and fill in the area between the matching edge points.
0076The edge-matching algorithm 538 is applied to establish valid boundary edges and remove spurious edges while filling the regions between boundary edges. Edge points on an image have a directional component indicating the direction of the gradient. Pixels in scanlines crossing a boundary edge location will exhibit two gradient transitions depending on the pixel intensity directionality. Each gradient transition is given a positive or negative value depending on the pixel intensity directionality. For example, if the scanline approaches an echo reflective bright wall from a darker region, then an ascending transition is established as the pixel intensity gradient increases to a maximum value, i.e., as the transition ascends from a dark region to a bright region. The ascending transition is given a positive numerical value. Similarly, as the scanline recedes from the echo reflective wall, a descending transition is established as the pixel intensity gradient decreases to or approaches a minimum value. The descending transition is given a negative numerical value.
0077Valid boundary edges are those that exhibit ascending and descending pixel intensity gradients, or equivalently, exhibit paired or matched positive and negative numerical values. The valid boundary edges are retained in the image. Spurious or invalid boundary edges do not exhibit paired ascending-descending pixel intensity gradients, i.e., do not exhibit paired or matched positive and negative numerical values. The spurious boundary edges are removed from the image.
0078For amniotic fluid volume related applications, most edge points for amniotic fluid surround a dark, closed region, with directions pointing inwards towards the center of the region. Thus, for a convex-shaped region, the direction of a gradient for any edge point, the edge point having a gradient direction approximately opposite to the current point represents the matching edge point. Those edge points exhibiting an assigned positive and negative value are kept as valid edge points on the image because the negative value is paired with its positive value counterpart. Similarly, those edge point candidates having unmatched values, i.e., those edge point candidates not having a negative-positive value pair, are deemed not to be true or valid edge points and are discarded from the image.
0079The matching edge point algorithm 538 delineates edge points not lying on the boundary for removal from the desired dark regions. Thereafter, the region between any two matching edge points is filled in with non-zero pixels to establish edge-based segmentation. In a preferred embodiment of the invention, only edge points whose directions are primarily oriented co-linearly with the scanline are sought to permit the detection of matching front wall and back wall pairs.
0080Returning to <figref idref="f0007">FIGURE 7</figref>, once Intensity-Based 422 and Edge-Based Segmentation 438 is completed, both segmentation methods use a combining step that combines the results of intensity-based segmentation 422 step and the edge-based segmentation 438 step using an AND Operator of Images 442. The AND Operator of Images 442 is achieved by a pixel-wise Boolean AND operator 442 step to produce a segmented image by computing the pixel intersection of two images. The Boolean AND operation 442 represents the pixels as binary numbers and the corresponding assignment of an assigned intersection value as a binary number 1 or 0 by the combination of any two pixels. For example, consider any two pixels, say pixel<sub>A</sub> and pixel<sub>B</sub>, which can have a 1 or 0 as assigned values. If pixel<sub>A</sub>'s value is 1, and pixel<sub>B</sub>'s value is 1, the assigned intersection value of pixel<sub>A</sub> and pixel<sub>B</sub> is 1. If the binary value of pixel<sub>A</sub> and pixel<sub>B</sub> are both 0, or if either pixels or pixel<sub>B</sub> is 0, then the assigned intersection value of pixel<sub>A</sub> and pixel<sub>B</sub> is 0. The Boolean AND operation 542 takes the binary any two digital images as input, and outputs a third image with the pixel values made equivalent to the intersection of the two input images.
0081Upon completion of the AND Operator of Images 442 algorithm, the polish 464 algorithm of <figref idref="f0007">FIGURE 7</figref> is comprised of multiple sub-algorithms. <figref idref="f0009">FIGURE 8D</figref> depicts the sub-algorithms of the Polish 464 algorithm, including a Close 546 algorithm, an Open 550 algorithm, a Remove Deep Regions 554 algorithm, and a Remove Fetal Head Regions 560 algorithm.
0082Closing and opening algorithms are operations that process images based on the knowledge of the shape of objects contained on a black and white image, where white represents foreground regions and black represents background regions. Closing serves to remove background features on the image that are smaller than a specified size. Opening serves to remove foreground features on the image that are smaller than a specified size. The size of the features to be removed is specified as an input to these operations. The opening algorithm 550 removes unlikely amniotic fluid regions from the segmented image based on <i>a-priori</i> knowledge of the size and location of amniotic fluid pockets.
0083Referring to <figref idref="f0009">FIGURE 8D</figref>, the closing 546 algorithm obtains the Apparent Amniotic Fluid Area (AAFA) or Volume (AAFV) values. The AAFA and AAFV values are "Apparent" and maximal because these values may contain region areas or region volumes of non-amniotic origin unknowingly contributing to and obscuring what otherwise would be the true amniotic fluid volume. For example, the AAFA and AAFV values contain the true amniotic volumes, and possibly as well areas or volumes due to deep tissues and undetected fetal head volumes. Thus the apparent area and volume values require correction or adjustments due to unknown contributions of deep tissue and of the fetal head in order to determine an Adjusted Amniotic Fluid Area (AdAFA) value or Volume (AdAVA) value 568.
0084The AdAFA and AdAVA values obtained by the Close 546 algorithm are reduced by the morphological opening algorithm 550. Thereafter, the AdAFA and AdAVA values are further reduced by removing areas and volumes attributable to deep regions by using the Remove Deep Regions 554 algorithm. Thereafter, the polishing algorithm 464 continues by applying a fetal head region detection algorithm 560.
0085<figref idref="f0010">FIGURE 8E</figref> depicts the sub-algorithms of the Remove Fetal Head Regions sub-algorithm 560. The basic idea of the sub-algorithms of the fetal head detection algorithm 560 is that the edge points that potentially represent a fetal skull are detected. Thereafter, a circle finding algorithm to determine the best-fitting circle to these fetal skull edges is implemented. The radii of the circles that are searched are known a priori based on the fetus' gestational age. The best fitting circle whose fitting metric lies above a certain prespecified threshold is marked as the fetal head and the region inside this circle is the fetal head region. The algorithms include a gestational Age 726 input, a determine head diameter factor 730 algorithm, a Head Edge Detection algorithm, 734, and a Hough transform procedure 736.
0086Fetal brain tissue has substantially similar ultrasound echo qualities as presented by amniotic fluid. If not detected and subtracted from amniotic fluid volumes, fetal brain tissue volumes will be measured as part of the total amniotic fluid volumes and lead to an overestimation and false diagnosis of oligo or poly-hyraminotic conditions. Thus detecting fetal head position, measuring fetal brain matter volumes, and deducting the fetal brain matter volumes from the amniotic fluid volumes to obtain a corrected amniotic fluid volume serves to establish accurately measure amniotic fluid volumes.
0087The gestational age input 726 begins the fetal head detection algorithm 560 and uses a head dimension table to obtain ranges of head bi-parietal diameters (BPD) to search for (e.g., 30 week gestational age corresponds to a 6 cm head diameter). The head diameter range is input to both the Head Edge Detection, 734, and the Hough Transform, 736., The head edge detection 734 algorithm seeks out the distinctively bright ultrasound echoes from the anterior and posterior walls of the fetal skull while the Hough Transform algorithm, 736, finds the fetal head using circular shapes as models for the fetal head in the Cartesian image (pre-scan conversion to polar form).
0088Scanplanes processed by steps 522, 538, 530, are input to the head edge detection step 734. Applied as the first step in the fetal head detection algorithm 734 is the detection of the potential head edges from among the edges found by the matching edge filter. The matching edge 538 filter outputs pairs of edge points potentially belonging to front walls or back walls. Not all of these walls correspond to fetal head locations. The edge points representing the fetal head are determined using the following heuristics: <ol id="ol0002" compact="compact"><li>(1) Looking along a one dimensional A-mode scan line, fetal head locations present a corresponding matching gradient in the opposing direction within a short distance approximately the same size as the thickness of the fetal skull. This distance is currently set to a value 1 cm.</li><li>(2) The front wall and the back wall locations of the fetal head are within a range of diameters corresponding to the expected diameter 730 for the gestational age 726 of the fetus. Walls that are too close or too far are not likely to be head locations.</li><li>(3) A majority of the pixels between the front and back wall locations of the fetal head lie within the minimum intensity cluster as defined by the output of the clustering algorithm 422. The percentage of pixels that need to be dark is currently defined to be 80%.</li></ol>
0089The pixels found satisfying these features are then vertically dilated to produce a set of thick fetal head edges as the output of Head Edge Detection, 734.
0090<figref idref="f0011">FIGURE 8F</figref> depicts the sub-algorithms of the Hough transform procedure 736. The sub-algorithms include a Polar Hough Transform 738 algorithm, a find maximum Hough value 742 algorithm 742, and a fill circle region 746. The Polar Hough Transform algorithm looks for fetal head structures in polar coordinate terms by converting from Cartesian coordinates using a plurality of equations. The fetal head, which appears like a circle in a 3D scan-converted Cartesian coordinate image, has a different shape in the pre-scan converted polar space. The fetal head shape is expressed in terms of polar coordinate terms explained as follows:
0091The coordinates of a circle in the Cartesian space (x,y) with center (<i>x</i><sub>0</sub>, <i>y</i><sub>0</sub>) and radius R are defined for an angle θ are derived and defined in equation E5 as: <maths id="math0014" num="E5"><math display="block"><mo>⇒</mo><msup><mfenced><mi>x</mi><mo>-</mo><msub><mi>x</mi><mn>0</mn></msub></mfenced><mn>2</mn></msup><mo>+</mo><msup><mfenced><mi>y</mi><mo>-</mo><msub><mi>y</mi><mn>0</mn></msub></mfenced><mn>2</mn></msup><mo>=</mo><msup><mi>R</mi><mn>2</mn></msup></math><img file="EP1538986B1_D0014.tif" /></maths>
0092In polar space, the coordinates (<i>r</i>, φ), with respect to the center (<i>r</i><sub>0</sub>, φ<sub>0</sub>), are derived and defined in equation E6 as: <maths id="math0015" num="E6"><math display="block"><mo>⇒</mo><msup><mfenced><msub><mi>r</mi><mspace width="1em" /></msub><mo></mo><mi>sin</mi><mmultiscripts><mi>φ</mi><mprescripts /><mspace width="1em" /><none /></mmultiscripts><mo>-</mo><msub><mi>r</mi><mn>0</mn></msub><mspace width="1em" /><mi>sin</mi><mspace width="1em" /><msub><mi>φ</mi><mn>0</mn></msub></mfenced><mn>2</mn></msup><mo>+</mo><msup><mfenced><mi>r</mi><mmultiscripts><mrow><mi>cos</mi><mspace width="1em" /></mrow><mprescripts /><mspace width="1em" /><none /></mmultiscripts><mi>φ</mi><mo>-</mo><msub><mi>r</mi><mn>0</mn></msub><mspace width="1em" /><mi>cos</mi><msub><mrow><mspace width="1em" /><mi>φ</mi></mrow><mn>0</mn></msub></mfenced><mn>2</mn></msup><mo>=</mo><msup><mi>R</mi><mn>2</mn></msup></math><img file="EP1538986B1_D0015.tif" /></maths>
0093The Hough transform 736 algorithm using equations E5 and E6 attempts to find the best-fit circle to the edges of an image. A circle in the polar space is defined by a set of three parameters, (<i>r</i><sub>0</sub>, φ<sub>0</sub>, <i>R</i>) representing the center and the radius of the circle.
0094The basic idea for the Hough transform 736 is as follows. Suppose a circle is sought having a fixed radius (say, R1) for which the best center of the circle is similarly sought. Now, every edge point on the input image lies on a potential circle whose center lays R1 pixels away from it. The set of potential centers themselves form a circle of radius R1 around each edge pixel. Now, drawing potential circles of radius R1 around each edge pixel, the point at which most circles intersect, a center of the circle that represents a best-fit circle to the given edge points is obtained. Therefore, each pixel in the Hough transform output contains a likelihood value that is simply the count of the number of circles passing through that point.
0095<figref idref="f0012">FIGURE 9</figref> illustrates the Hough Transform 736 algorithm for a plurality of circles with a fixed radius in a Cartesian coordinate system. A portion of the plurality of circles is represented by a first circle 804a, a second circle 804b, and a third circle 804c. A plurality of edge pixels are represented as gray squares and an edge pixel 808 is shown. A circle is drawn around each edge pixel to distinguish a center location 812 of a best-fit circle 816 passing through each edge pixel point; the point of the center location through which most such circles pass (shown by a gray star 812) is the center of the best-fit circle 816 presented as a thick dark line. The circumference of the best fit circle 816 passes substantially through is central portion of each edge pixel, represented as a-series of squares substantially equivalent to the edge pixel 808.
0096This search for best fitting circles can be easily extended to circles with varying radii by adding one more degree of freedom - however, a discrete set of radii around the mean radii for a given gestational age makes the search significantly faster, as it is not necessary to search all possible radii.
0097The next step in the head detection algorithm is selecting or rejecting best-fit circles based on its likelihood, in the find maximum Hough Value 742 algorithm. The greater the number of circles passing through a given point in the Hough-space, the more likely it is to be the center of a best-fit circle. A 2D metric as a maximum Hough value 742 of the Hough transform 736 output is defined for every image in a dataset. The 3D metric is defined as the maximum of the 2D metrics for the entire 3D dataset. A fetal head is selected on an image depending on whether its 3D metric value exceeds a preset 3D threshold and also whether the 2D metric exceeds a preset 2D threshold. The 3D threshold is currently set at 7 and the 2D threshold is currently set at 5. These thresholds have been determined by extensive training on images where the fetal head was known to be present or absent.
0098Thereafter, the fetal head detection algorithm concludes with a fill circle region 746 that incorporates pixels to the image within the detected circle. The fill circle region 746 algorithm fills the inside of the best fitting polar circle. Accordingly, the fill circle region 746 algorithm encloses and defines the area of the fetal brain tissue, permitting the area and volume to be calculated and deducted via algorithm 554 from the apparent amniotic fluid area and volume (AAFA or AAFV) to obtain a computation of the corrected amniotic fluid area or volume via algorithm 484.
0099<figref idref="f0013">FIGURE 10</figref> shows the results of sequentially applying the algorithm steps of <figref idref="f0007">FIGURES 7</figref> and <figref idref="f0008 f0009">8A-D</figref> on an unprocessed sample image 820 presented within the confines of a scanplane substantially equivalent to the scanplane 210. The results of applying the heat filter 514 and shock filter 518 in enhancing the unprocessed sample is shown in enhanced image 840. The result of intensity-based segmentation algorithms 522 is shown in image 850. The results of edge-based segmentation 438 algorithm using sub-algorithms 526, 530, 534 and 538 of the enhanced image 840 is shown in segmented image 858. The result of the combination 442 utilizing the Boolean AND images 442 algorithm is shown in image 862 where white represents the amniotic fluid area. The result of applying the polishing 464 algorithm employing algorithms 542, 546, 550, 554, 560, and 564 is shown in image 864, which depicts the amniotic fluid area overlaid on the unprocessed sample image 810.
0100<figref idref="f0014">FIGURE 11</figref> depicts a series of images showing the results of the above method to automatically detect, locate, and measure the area and volume of a fetal head using the algorithms outlined in <figref idref="f0007">FIGURES 7</figref> and <figref idref="f0008 f0009 f0010 f0011">8A-F</figref>. Beginning with an input image in polar coordinate form 920, the fetal head image is marked by distinctive bright echoes from the anterior and posterior walls of the fetal skull and a circular shape of the fetal head in the Cartesian image. The fetal head detection algorithm 734 operates on the polar coordinate data (i.e., pre-scan version, not yet converted to Cartesian coordinates).
0101An example output of applying the head edge detection 734 algorithm to detect potential head edges is shown in image 930. Occupying the space between the anterior and posterior walls are dilated black pixels 932 (stacks or short lines of black pixels representing thick edges). An example of the polar Hough transform 738 for one actual data sample for a specific radius is shown in polar coordinate image 940.
0102An example of the best-fit circle on real data polar data is shown in polar coordinate image 950 that has undergone the find maximum Hough value step 742. The polar coordinate image 950 is scan-converted to a Cartesian data in image 960 where the effects of finding maximum Hough value 742 algorithm are seen in Cartesian format.
0103<figref idref="f0015">FIGURE 12</figref> presents a 4-panel series of sonographer amniotic fluid pocket outlines compared to the algorithm's output in a scanplane equivalent to scanplane 210. The top two panels depict the sonographer's outlines of amniotic fluid pockets obtained by manual interactions with the display while the bottom two panels show the resulting amniotic fluid boundaries obtained from the instant invention's automatic application of 2D algorithms, 3D algorithms, combination heat and shock filter algorithms, and segmentation algorithms.
0104After the contours on all the images have been delineated, the volume of the segmented structure is computed. Two specific techniques for doing so are disclosed in detail in <patcit id="pcit0013" dnum="US5235985A"><text>U.S. Pat. No. 5,235,985 to McMorrow et al</text></patcit><i>,</i> herein incorporated by reference. This patent provides detailed explanations for non-invasively transmitting, receiving and processing ultrasound for calculating volumes of anatomical structures.
0105Demonstrations of the algorithmic manipulation of pixels of the present invention are provided in <i>Appendix 1: Examples of Algorithmic Steps.</i> Source code of the algorithms of the present invention is provided in <i>Appendix 2: Matlab Source Code.</i>
0106<figref idref="f0016">Figure 13</figref> shows an overview of a segmentation algorithm 1000. The segmentation algorithm 1000 begins with the receiving of an input image 1020, to which a heat and shock filtering algorithm 1030 is applied to the input image 1020. Thereafter, a spatial gradient algorithm 1034 is applied to the image that has been heat and shock filtered. At this juncture, initial edge points are located in a point-positioning algorithm 1038 to the boundary of the organ structure within the image. Thereafter an optimal path algorithm 1042 is applied to determine the best path to connect the initial edge points assigned by the point-positioning algorithm 1038. This optimal path algorithm 1042 also uses the result of the spatial gradient algorithm 1034 as an input. For images already having a drawn contour, a previous image contour input 1046 is inputted to the optimal path algorithm 1042. Thereafter, a compute volume algorithm 1048 is applied to the image, and the computed volume is reported as an output volume 1052.
0107<figref idref="f0017">Figure 14</figref> shows the segmentation algorithm applied to a sample image. An original bladder image 1204 acquires more contrast as shown in a bladder image 1206 once subjected to the heat and shock filtering algorithms. Thereafter, spatial gradients are depicted as shown in a bladder image 1208. Initial points are placed as shown in a bladder image 1210 when the point-positioning algorithm is applied. The point-positioning algorithm includes the radial method. Finally, a contour along the boundary where the points have been connected by applying the optimal path algorithm is shown in a bladder image 1212.
0108The effects of applying the heat filtering algorithm is shown in <figref idref="f0018">Figure 15</figref>. The effect of 10 iterations of heat algorithm is shown in image 1222. The effect of 50 iterations is shown in image 1226. The effect of 100 iterations is shown in image 1230. With more iterations of heat filtering algorithms, the more the image becomes blurry.
0109For scanplanes substantially equivalent to scanplane 210, the algorithms are expressed in two-dimensional terms and use formulas to convert scanplane pixels (picture elements) into area units. For the scan cones substantially equivalent to the 3D conic array 240, the algorithms are expressed in three-dimensional terms and use formulas to convert voxels (volume elements) into volume units. The heat-filtering algorithm is determined one of the simplest PDE for image processing is the heat equation as shown in equation E7: <maths id="math0016" num="E7"><math display="block"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi>t</mi></mrow></mfrac><mo>=</mo><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mo>∂</mo><msup><mi>x</mi><mn>2</mn></msup></mrow></mfrac><mo>+</mo><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mo>∂</mo><msup><mi>y</mi><mn>2</mn></msup></mrow></mfrac><mo>,</mo></math><img file="EP1538986B1_D0016.tif" /></maths> where <i>u</i> is the image being processed whose initial value is the input image: <i>u</i><sub>0</sub> = <i>I</i>.
0110The above PDE can be discretized using finite differences to give the following iterative scheme of equation E8: <maths id="math0017" num="E8"><math display="block"><mfrac><mrow><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>-</mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup></mrow><mi>k</mi></mfrac><mo>=</mo><mfenced><msubsup><mi>u</mi><mrow><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup><mo>-</mo><mn>2</mn><mo></mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup><mo>+</mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup></mfenced><mo>+</mo><mfenced><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn></mrow><mi>t</mi></msubsup><mo>-</mo><mn>2</mn><mo></mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup><mo>+</mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn></mrow><mi>t</mi></msubsup></mfenced></math><img file="EP1538986B1_D0017.tif" /></maths> which can be simplified as shown in equation E9: <maths id="math0018" num="E9"><math display="block"><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>=</mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup><mo>+</mo><mi>k</mi><mo></mo><mfenced><msubsup><mi>u</mi><mrow><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup><mo>+</mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup><mo>+</mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn></mrow><mi>t</mi></msubsup><mo>+</mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn></mrow><mi>t</mi></msubsup><mo>-</mo><mn>4</mn><mo></mo><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup></mfenced></math><img file="EP1538986B1_D0018.tif" /></maths> where k is the time step, and <maths id="math0019"><math display="inline"><msubsup><mi>u</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>t</mi></msubsup></math><img file="EP1538986B1_D0019.tif" /></maths>is the value of the pixel at coordinates (<i>i,j</i>) at time point (iteration) t.
0111This heat equation results in a smoothing of the image substantially equivalent to the Gaussian filtering of the image. The larger the number of iterations the more the input image is smoothed or blurred.
0112Shock filters are another type of PDE-based filters that were originally proposed by Osher and Rudin (Osher and Rudin 1990) for sharpening of signals and images. A one-dimensional shock filter is given as equation E10: <maths id="math0020" num="E10"><math display="block"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi>t</mi></mrow></mfrac><mo>=</mo><mo>-</mo><mi mathvariant="italic">sign</mi><mfenced><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mi>d</mi><mo></mo><msup><mi>x</mi><mn>2</mn></msup></mrow></mfrac></mfenced><mo></mo><mfenced open="|" close="|"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mi mathvariant="italic">dx</mi></mfrac></mfenced></math><img file="EP1538986B1_D0020.tif" /></maths> where u is the image being processed, <maths id="math0021"><math display="inline"><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mo>∂</mo><msup><mi>x</mi><mn>2</mn></msup></mrow></mfrac></math><img file="EP1538986B1_D0021.tif" /></maths>is the second partial derivative of u, <maths id="math0022"><math display="inline"><mfenced open="|" close="|"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mi mathvariant="italic">dx</mi></mfrac></mfenced></math><img file="EP1538986B1_D0022.tif" /></maths>is the absolute value of the first derivative of u along the x-axis. Here, the signal is modified based on the sign of its second derivative and the magnitude of its first derivative. This filter cannot be discretized using the simple centered finite-difference scheme.
0113The result of applying this filter on noiseless blurred data is shown in <figref idref="f0019">Figure 16A</figref>. The x-axis shows the index coordinates of the signals while the y-axis shows the magnitude of the signals. The solid line is the original noiseless signal which was blurred with a Gaussian filter algorithm. The blurred signal is shown as the dotted line. A shock filter was then applied to the blurred signal and that results in the signal shown in light shaded line - it is virtually the same as the original signal and the edge is restored from the blurred signal.
0114Applying this filter directly to noisy data, however, does not work and leads to many possible false edges. The combination of heat and shock filters would works very well at reducing noise and sharpening of a signal while preserving the significant discontinuities on a signal. First, the noisy signal is filtered using the 1D heat filter (Equation E1), which results in the reduction of noise and smoothing of edges. This step is followed by a shock-filtering step (Equation E4), which results in the sharpening of the blurred signal. A 1D simulated example of this combination heat/shock filter is shown in <figref idref="f0020">Figure 16B</figref>. The solid line is the original noiseless signal while the dotted dark line is the noisy blurred signal. The result of heat filtering the noisy signal by the gray dashed line. Finally, the result of shock filtering after heat filtering is shown by the gray dot-dashed line. Note that on the last signal, the significant edge has been preserved while the noise has been removed.
0115In two dimensions, the shock filter PDE specified by Osher and Rudin is: <maths id="math0023" num="E11"><math display="block"><mfrac><mrow><mo>∂</mo><mi>u</mi></mrow><mrow><mo>∂</mo><mi>t</mi></mrow></mfrac><mo>=</mo><mo>-</mo><mi>F</mi><mfenced><mo>ℓ</mo><mfenced><mi>u</mi></mfenced></mfenced><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>,</mo></math><img file="EP1538986B1_D0023.tif" /></maths> where ℓ(<i>u</i>) is the Laplacian of the image (<i>u, F</i>.) is a function of the Laplacian, and ∥∇<i>u</i>∥ is the gradient magnitude. For the Laplacian, the second derivative in the direction of the gradient is used: <maths id="math0024" num="E12"><math display="block"><mo>ℓ</mo><mfenced><mi>u</mi></mfenced><mo>=</mo><msub><mi>u</mi><mi mathvariant="italic">xx</mi></msub><mo></mo><msup><msub><mi>u</mi><mi>x</mi></msub><mn>2</mn></msup><mo>+</mo><mn>2</mn><mo></mo><msub><mi>u</mi><mi mathvariant="italic">xy</mi></msub><mo></mo><msub><mi>u</mi><mi>x</mi></msub><mo></mo><msub><mi>u</mi><mi>y</mi></msub><mo>+</mo><msub><mi>u</mi><mi mathvariant="italic">yy</mi></msub><mo></mo><msup><msub><mi>u</mi><mi>y</mi></msub><mn>2</mn></msup></math><img file="EP1538986B1_D0024.tif" /></maths>
0116For the function F, to avoid placing spurious edges at points with small gradient values as would occur by choosing the sign by selecting the sign of the Laplacian in the 1-D case, the following function is used instead: <maths id="math0025"><math display="block"><mtable><mtr><mtd columnalign="left"><mspace width="4em" /><mi>F</mi><mfenced><mo>ℓ</mo><mfenced><mi>u</mi></mfenced></mfenced><mo>=</mo><mn>1</mn><mo>,</mo><msub><mi>if</mi><mspace width="1em" /></msub><mo>ℓ</mo><mfenced><mi>u</mi></mfenced><mo>></mo><mn>0</mn><mspace width="1em" /><mi>and</mi><mspace width="1em" /><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>></mo><mi>t</mi></mtd></mtr><mtr><mtd columnalign="left"><mo>=</mo><mo>-</mo><mn>1</mn><mo>,</mo><msub><mi>if</mi><mspace width="1em" /></msub><mo>ℓ</mo><mfenced><mi>u</mi></mfenced><mo><</mo><mn>0</mn><mspace width="1em" /><mi>and</mi><mspace width="1em" /><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>></mo><mi>t</mi></mtd></mtr><mtr><mtd columnalign="left"><mspace width="4em" /><mo>=</mo><mn>0</mn><mo>,</mo><mi>otherwise</mi></mtd></mtr></mtable></math><img file="EP1538986B1_D0025.tif" /></maths> where t is a threshold on gradient values.
0117Once again, as in the 1D case, a combination of the heat and shock filters works very well at reducing noise and sharpening of a signal while preserving the significant edges on an image. <figref idref="f0017">Figure 14</figref>-image 1208 shows the results of applying the heat and shock filter on real ultrasound data.
0118The point-positioning algorithm uses two different methods for locating the initial edge points. One method looks for edges along radial lines and the other looks for edges along A-mode lines. The first method requires the user to specify a center point from which radial lines are drawn for an image, and the second method is completely automatic.
0119In the first method, to locate the initial edge points on an image, the image is radially sampled from the user marked center location. The radial lines are drawn at substantially in 30-degree increments. On each radial line, edge points are found by using the values obtained from the spatial gradient algorithm. A first point on each radial line whose gradient magnitude exceeds a pre-set threshold and which represents a transition from a dark area to a bright area. If no such point is found, that radial line is skipped. As shown in <figref idref="f0017">Figure 14</figref> image 1210, the points are assigned to the edge locations.
0120In the second method, the A-mode lines starting from the transducer position are moved outwards. One-dimensional gradients and pixel intensity values <i>I</i> are used along these A-mode lines to determine fluid wall locations. A hysteresis threshold is applied to the gradient values to determine the leading wall and the trailing wall of the structure.
0121Given two points on an image, p1 and p2, an optimal path finding algorithm finds the "best" path between the two points where "best" is the one that has the least cost. The cost function for a path can be defined to depend upon many factors such as, how close the path passes through edges on an image, the direction of the path, how smooth the path is, and what the length of the path is. A dynamic programming algorithm can be then used to locate the least cost path between p1 and p2.
0122The total cost function to be a weighted is defined by a sum of 3 terms as shown in equation E13: <maths id="math0026" num="E13"><math display="block"><mi>C</mi><mfenced><mi>p</mi></mfenced><mo>=</mo><mi>α</mi><mo></mo><msub><mi>C</mi><mi>e</mi></msub><mfenced><mi>p</mi></mfenced><mo>+</mo><mi mathvariant="italic">β</mi><mo></mo><msub><mi>C</mi><mi>d</mi></msub><mfenced><mi>p</mi></mfenced><mo>+</mo><mi mathvariant="italic">γ</mi><mo></mo><msub><mi>C</mi><mi>c</mi></msub><mfenced><mi>p</mi></mfenced></math><img file="EP1538986B1_D0026.tif" /></maths> where α,β, <i>and</i> γ are numerical values and the three cost terms are: <ol id="ol0003" compact="compact"><li>(1) Edge Distance Cost <i>C<sub>e</sub>(p):</i> This cost is defined such that paths closer to high gradient points, i.e., edges, are favored over other paths. <maths id="math0027" num="E14"><math display="block"><msub><mi>C</mi><mi>e</mi></msub><mfenced><mi>p</mi></mfenced><mo>=</mo><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>i</mi><mo>=</mo><mi>p</mi><mo></mo><mn>1</mn></mrow><mrow><mi>p</mi><mo></mo><mn>2</mn></mrow></munderover></mstyle><mfenced><mfrac><mn>1</mn><mrow><mi>μ</mi><mo>+</mo><mo>‖</mo><mo>∇</mo><msub><mi>I</mi><mi>i</mi></msub><mo>‖</mo></mrow></mfrac></mfenced><mo>,</mo></math><img file="EP1538986B1_D0027.tif" /></maths> where <i>I<sub>i</sub></i> is the pixel intensity at point i, ∥∇<i>I<sub>i</sub></i>∥ is the gradient magnitude of point i, and µ is a small constant. Since this term is the sum of inverse image gradients for each pixel on the path - this cost term implicitly favors shorter paths over longer paths.</li><li>(2) Path Direction Cost: Since the path between <i>p</i><sup>1</sup> and <i>p</i><sup>2</sup> is a directed graph, a cost can be defined based on the orientation of the graph. The cost is defined to favor paths for which pixels on the inside of the path are dark and the pixels on the outside are bright (See <figref idref="f0021">Figure 17</figref>). The PDE formula for calculating the path direction cost is provided in equation E15. <maths id="math0028" num="E15"><math display="block"><msub><mi>C</mi><mi>d</mi></msub><mfenced><mi>p</mi></mfenced><mo>=</mo><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>i</mi><mo>=</mo><mi>p</mi><mo></mo><mn>1</mn></mrow><mrow><mi>p</mi><mo></mo><mn>2</mn></mrow></munderover></mstyle><mfenced><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">in</mi></msubsup><mo>-</mo><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">out</mi></msubsup></mfenced><mo>,</mo></math><img file="EP1538986B1_D0028.tif" /></maths> where <maths id="math0029"><math display="inline"><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">in</mi></msubsup></math><img file="EP1538986B1_D0029.tif" /></maths>and <maths id="math0030"><math display="inline"><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">out</mi></msubsup></math><img file="EP1538986B1_D0030.tif" /></maths>are the image intensities on the inside and the outside of the path connecting point <i>i</i> and <i>i</i><sub>-1</sub> as shown in <figref idref="f0021">Figure 17. Figure 17</figref> depicts, at the pixel level, how the optimal path algorithm is applied. Direction of path proceeds from point 1242 (<i>p</i><sub>i-1</sub>) to point 1246 (<i>p</i><sub>i</sub>) between the outside pixel 1234 <maths id="math0031"><math display="inline"><mfenced><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">out</mi></msubsup></mfenced></math><img file="EP1538986B1_D0031.tif" /></maths>and the inside pixel 1238 <maths id="math0032"><math display="inline"><mfenced><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">in</mi></msubsup></mfenced><mn>.</mn></math><img file="EP1538986B1_D0032.tif" /></maths>Given two points on the image, <i>p</i><sub>i-1</sub> 1242 and <i>p</i><sub>i</sub> 1246, an optimal path finding algorithm finds the "best" path between the two points where "best" is the one that has the least cost and bisects the. Thus <maths id="math0033"><math display="inline"><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">in</mi></msubsup></math><img file="EP1538986B1_D0033.tif" /></maths>pixel 1238 is the image intensity of the inside and dark pixel and <maths id="math0034"><math display="inline"><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">out</mi></msubsup></math><img file="EP1538986B1_D0034.tif" /></maths>1234 is the image intensity outside and bright pixel along a path bisecting the <maths id="math0035"><math display="inline"><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">in</mi></msubsup></math><img file="EP1538986B1_D0035.tif" /></maths>1238 and <maths id="math0036"><math display="inline"><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">out</mi></msubsup></math><img file="EP1538986B1_D0036.tif" /></maths>1234 pixels and connecting pixels points <i>i</i> 1246 and <i>i</i><sub>-1</sub> 1242 adjacent to each side of the <maths id="math0037"><math display="inline"><msubsup><mi>I</mi><mi>i</mi><mi mathvariant="italic">in</mi></msubsup></math><img file="EP1538986B1_D0037.tif" /></maths>1238 pixel.</li><li>(3) Previous Contour Distance Cost: When trying to find paths in 3D images, a constraint upon the paths on the current image are imposed and are close to a contour on a previous image. Therefore, a definition of a cost based on the distance of a point on the current path to a contour from a previous image can be made as according to equation E 1000: <maths id="math0038" num="E16"><math display="block"><msub><mi>C</mi><mi>c</mi></msub><mfenced><mi>p</mi></mfenced><mo>=</mo><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>i</mi><mo>=</mo><mi>p</mi><mo></mo><mn>1</mn></mrow><mrow><mi>p</mi><mo></mo><mn>2</mn></mrow></munderover></mstyle><msubsup><mi>D</mi><mi>i</mi><mi>P</mi></msubsup></math><img file="EP1538986B1_D0038.tif" /></maths> where <i>P</i> is the previous contour and <maths id="math0039"><math display="inline"><msubsup><mi>D</mi><mi>i</mi><mi>P</mi></msubsup></math><img file="EP1538986B1_D0039.tif" /></maths>is the distance of point <i>i</i> from the closest point on the previous contour. This distance can be easily evaluated using the Euclidean distance transform function computed for the previous contour.</li></ol>
0123A dynamic programming algorithm was used to find the least cost path between the initial edge points. The two steps typically involved in this are: (1) Computing the cost of the path from the starting point to each point on the image - this cost image (also known as the minimum action surface) using the fast-marching algorithms; (2) Locating the path connecting the end point to the starting point by gradient descent on the minimum action surface.
0124This multi-step segmentation algorithm of the present invention serves to establish a determination of the best path between two points and makes the segmentation much more robust. When the two points are quite far apart on the image, it still locates a good path that passes through the significant edges and completing the areas with missing edges.
0125<figref idref="f0017">Figure 14</figref> image 1212 shows the optimal path found using this algorithm connecting the initial edge points.
0126The first image processed was the central image that had the fewest missing lateral boundaries. No previous contour constraint was used for this central image.
0127From this central image, the process was moved up to process all the images after the central image through the end of the sequence and then moved down to process all the images before the central image through the beginning of the sequence.
0128After the contours on all the images have been delineated, the volume of the segmented structure is computed. The contour inside the polygon is filled using a polygon filling algorithm to compute the volume. Then, the intensity value of a central pixel is determined using trilinear interpolation (where intensity values from six three-dimensional neighbors are used) to create a Cartesian volume from the polar coordinate images. Pixels on the boundary are assigned fractional values depending on the partial volume coverage. Finally, the sum of all the pixels in the reconstructed volume is multiplied by the voxel resolution to get the volume.The segmentation algorithm was made on images from a bladder phantom and on images of the bladder from several subjects. Boundaries were delineated on all of the images in the 3D dataset using the same center point for all images in the 3D sequence.
0129The segmentation algorithm was first tested on a bladder phantom with a known volume. From the bladder phantom 24 planes of data are acquired. The boundaries detected on this phantom are shown in <figref idref="f0022">Figure 18</figref>.
0130While the true volume of the bladder phantom is known to be 495 mL, the volume computed using our algorithm is 483 mL, or 97.6% accurate.
0131The accuracy for clinical measurements fared well. The segmentation algorithms as applied to 12 scan planes of real bladder images from five different subjects (3 females and 2 males) are shown in Table 1. The volume of urine was measured using a UroFlow device. The segmentation algorithm of the present invention was applied to images to measure volumes and compared to the urine volumes measured by the UroFlow device. The volume measured by the Uroflow device added to the post-Uroflow volume is considered the true bladder as a standard to compare to the volume determined by the segmentation algorithms applied to the 12 bladder scan images from each patient.
0132The table below shows the raw results on the five subjects: <tables id="tabl0001" num="0001"><table frame="all"><title>Table 1: Bladder volume computational results</title><tgroup cols="4"><colspec colnum="1" colname="col1" colwidth="20mm" /><colspec colnum="2" colname="col2" colwidth="41mm" /><colspec colnum="3" colname="col3" colwidth="46mm" /><colspec colnum="4" colname="col4" colwidth="24mm" /><thead><row><entry align="right" valign="top">Subject ID</entry><entry align="right" valign="top">True Bladder Volume (mL)</entry><entry align="right" valign="top">Segmentation Algorithm (mL)</entry><entry align="right" valign="top">Accuracy (%)</entry></row></thead><tbody><row><entry align="right">102</entry><entry align="right">391</entry><entry align="right">367</entry><entry align="right">93.9%</entry></row><row><entry align="right">130</entry><entry align="right">238</entry><entry align="right">232</entry><entry align="right">97.5%</entry></row><row><entry align="right">138</entry><entry align="right">651</entry><entry align="right">642</entry><entry align="right">98.6%</entry></row><row><entry align="right">148</entry><entry align="right">469</entry><entry align="right">434</entry><entry align="right">92.5%</entry></row><row><entry align="right">162</entry><entry align="right">169</entry><entry align="right">104</entry><entry align="right">61.5%</entry></row></tbody></tgroup></table></tables>
0133Accuracy is defined as a % ratio and is calculated by taking the volume determined from the Segmentation Algorithm applied to the 12 image scans and dividing it by the True Bladder Volume, then multiplied by 100. The accuracy range of the 12 scan plane measurements to measured urine volumes is 61.5% to 98.6%. The median is 93.9%. The mean accuracy for the five measurements is 88.8%.
0134<figref idref="f0023">Figure 19</figref> and <figref idref="f0024">Figure 20</figref> respectively show the delineated bladder boundaries of 12 scan plane images for patients 138 and 148 subjected to the segmentation algorithm of the present invention. The segmentation algorithm set boundaries very reasonable boundaries except at a few planes in that the initial edge point is outside the expected location.
0135The segmentation algorithm of the present invention involves fitting minimum cost contours to known boundary points. The cost function is defined very similarly to snakes and other deformable models; however, instead of modifying an initial contour, our algorithm finds an optimal path between two known points on the boundary. The advantages compared to deformable models are: (a) The initial set of points needs to be very small and you do not need an entire initial contour, (b) The algorithm is more robust with respect to missing boundaries since missing boundaries are simply handled through an least cost path through them, (c) The algorithm is not iterative and always finds a unique global minimum for the cost function.
0136While the preferred embodiment of the invention has been illustrated and described, as noted above, many changes can be made without departing from the spirit and scope of the invention. For example, other uses of the invention include determining the areas and volumes of the prostate, heart, bladder, and other organs and body regions of clinical interest. Accordingly, the scope of the invention is not limited by the disclosure of the preferred embodiment.
APPENDIX 1: EXAMPLES OF ALGORITHMIC STEPS
EXAMPLE IMAGE
0137The Figure A below shows an example image on which some of the algorithmic steps are demonstrated. The size of this image is 20 rows by 20 columns. <img file="EP1538986B1_D0040.tif" />
0138The image shown above is represented as a matrix of numbers and can also be displayed in 20 x 20 matrix form where the black pixels on the image have a number zero and white pixels have a number 10 in this case: <tables id="tabl0002" num="0002"><img file="EP1538986B1_D0041.tif" /></tables>
0139To illustrate some of our algorithms, we also use a noisy version of this example image. To create this image, we added random values to every pixel of the example image and this noisy image is shown in Figure B. <img file="EP1538986B1_D0042.tif" />
0140As before, the noisy image is shown as a 20 x 20 matrix below: <tables id="tabl0003" num="0003"><img file="EP1538986B1_D0043.tif" /></tables>
0141<b>HEAT FILTER - 514</b>
0142The Laplacian (second derivative) of the example image is computed as the sum of the second partial x-derivative and second partial y-derivative of the image: <maths id="math0040"><math display="inline"><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mo>∂</mo><msup><mi>x</mi><mn>2</mn></msup></mrow></mfrac><mo>+</mo><mfrac><mrow><msup><mo>∂</mo><mn>2</mn></msup><mo></mo><mi>u</mi></mrow><mrow><mo>∂</mo><msup><mi>y</mi><mn>2</mn></msup></mrow></mfrac><mn>.</mn></math><img file="EP1538986B1_D0044.tif" /></maths>This Laplacian is the right-hand side of the heat equation E1.
0143The Laplacian of the example image is computed and this is shown in Figure C(1). Notice the negative values on the inside of the bright areas and positive values on the outside of the bright areas at the edges of the regions. The Laplacian is zero an pixels far from edges. <img file="EP1538986B1_D0045.tif" />
0144When this Laplacian is added back to the input image, after multiplying with a step size parameter, it results in blurring of the edges since the bright areas are reduced in brightness and the dark areas are increased in brightness - this output is shown in Figure C(2). This is the output of a single iteration of the heat filter. The heat filter outputs after 4 iterations and after 20 iterations are shown in (1) (2)
0145Figure D. Notice the progressive blurring of the image as you apply more iterations. <img file="EP1538986B1_D0046.tif" /><img file="EP1538986B1_D0047.tif" />
0146Applying 20 iterations of the heat filter to the noisy image from Figure B results in a reduction of noise and a blurring of the image. This output is shown in Figure E. <img file="EP1538986B1_D0048.tif" />
0147Note that in this image, the noise has been significantly removed, although the image is very blurred. This image looks very similar to the heat filtered version of the noiseless image shown in Figure D(2).
SHOCK FILTER - 518
0148The application of the shock filtered to the blurred image is shown in Figure E to sharpen this image. For purposes of the shock filter, the Laplacian of an image (Equation E4) is computed as: <maths id="math0041"><math display="block"><mo>ℓ</mo><mfenced><mi>u</mi></mfenced><mo>=</mo><msub><mi>u</mi><mi mathvariant="italic">xx</mi></msub><mo></mo><msup><msub><mi>u</mi><mi>x</mi></msub><mn>2</mn></msup><mo>+</mo><mn>2</mn><mo></mo><msub><mi>u</mi><mi mathvariant="italic">xy</mi></msub><mo></mo><msub><mi>u</mi><mi>x</mi></msub><mo></mo><msub><mi>u</mi><mi>y</mi></msub><mo>+</mo><msub><mi>u</mi><mi mathvariant="italic">yy</mi></msub><mo></mo><msup><msub><mi>u</mi><mi>y</mi></msub><mn>2</mn></msup><mn>.</mn></math><img file="EP1538986B1_D0049.tif" /></maths>
0149This is computed for the blurred image and is shown below in shown in Figure F(1). Again, notice the negative values on the inside of the bright areas and positive values on the outside of the bright areas at the edges of the regions.
0150The gradient magnitude of the blurred image (Equation E3) is: <maths id="math0042"><math display="block"><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>=</mo><msqrt><msubsup><mi>u</mi><mi>x</mi><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>u</mi><mi>y</mi><mn>2</mn></msubsup></msqrt></math><img file="EP1538986B1_D0050.tif" /></maths>
0151This is computed for the blurred image and is shown in Figure F(2) below. Note that the gradient magnitude is highest at the edges and zero in smooth regions. <img file="EP1538986B1_D0051.tif" />
0152Using a threshold value, t, on pixel gradient to be 0.7 we can compute the F function, which is positive where the Laplacian is greater than zero and the gradient magnitude is greater than a threshold, negative where the Laplacian is less than zero and the gradient magnitude is greater than the threshold and zero elsewhere: <maths id="math0043"><math display="block"><mtable><mtr><mtd><mi>F</mi><mfenced><mo>ℓ</mo><mfenced><mi>u</mi></mfenced></mfenced></mtd><mtd columnalign="left"><mo>=</mo><mn>1</mn><mo>,</mo><mspace width="1em" /><mi>if</mi><mmultiscripts><mo>ℓ</mo><mprescripts /><mspace width="1em" /><none /></mmultiscripts><mfenced><mi>u</mi></mfenced><mo>></mo><mn>0</mn><mspace width="1em" /><mi>and</mi><mspace width="1em" /><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>></mo><mi>t</mi></mtd></mtr><mtr><mtd><mspace width="1em" /></mtd><mtd columnalign="left"><mo>=</mo><mo>-</mo><mn>1</mn><mo>,</mo><mi>if</mi><mmultiscripts><mo>ℓ</mo><mprescripts /><mspace width="1em" /><none /></mmultiscripts><mfenced><mi>u</mi></mfenced><mo><</mo><mn>0</mn><mspace width="1em" /><mi>and</mi><mspace width="1em" /><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>></mo><mi>t</mi></mtd></mtr><mtr><mtd><mspace width="1em" /></mtd><mtd columnalign="left"><mo>=</mo><mn>0</mn><mo>,</mo><mi>otherwise</mi></mtd></mtr></mtable></math><img file="EP1538986B1_D0052.tif" /></maths>
0153This F image is shown in Figure G(1) below. Note that as with the Laplacian image, everything outside the original white regions at the edge is 1, everything inside the original white regions at the edge is -1. The boundaries of the original region can be seen as the transition between the negative and the positive F values (the zero crossings).
0154Now, the right hand side of the shock filter equation E2, is the negative of the product of the F function image Figure G(1) and the gradient magnitude image shown in Figure F(2): - F(ℓ(<i>u</i>))∥Δ<i>u</i>∥
0155This right hand side of the shock filter equation is shown in Figure G(2). If we add this image to the original blurred image we can see that it has the opposite effect of the heat filter. The dark pixels in Figure G(2) are subtracted from the blurred image and the bright pixels are added to the blurred image basically, thereby making the blurred image more crisp. The addition of this image to the input blurred image is basically what constitutes a single iteration of the shock filter - this addition is shown in Figure H(1). After 20 iterations, a crisper output as shown in Figure H(2) is obtained. While this image is not identical to the input noiseless image of Figure A, it is quite similar to it and much more noise free as compared to the noisy version shown in Figure B. <img file="EP1538986B1_D0053.tif" /><img file="EP1538986B1_D0054.tif" />
INTENSITY CLUSTERING - 422
0156In intensity clustering, the enhanced image is subject to the k-means clustering algorithm. In this example, the enhanced image, shown in Figure H(2), is clustered into 4 clusters.
0157The minimum and maximum intensity values are 1.69 and 13.40. We divide that range into 4 partitions and get the following initial cluster boundaries. 1.19 4.12 7.04 9.98 13.90
0158With this partition, all pixels with values between 1.19 and 4.12 are assigned into cluster 1, all between 4.12 and 7.04 are assigned into cluster 2, etc. This initial assignment of every pixel to the 4 clusters is shown in Figure I(1). Based on this assignment new cluster centers are found and new partition boundaries found accordingly - after this first iteration, the cluster boundaries move slightly and they are now at: 1.19 4.08 6.30 9.57 13.90.
0159In the next iteration, the pixel assignment based on these partition boundaries is shown in Figure I(2). Finally, after 6 iterations, the partition boundaries change very little between iterations and are set to: 1.19 3.65 5.646 9.25 13.90
0160The final assignment of pixels to the 4 clusters is shown in Figure I(3). For this example, the output of the clustering step is the set of pixels assigned to the brightest cluster. This output is shown in Figure I(4). <img file="EP1538986B1_D0055.tif" /><img file="EP1538986B1_D0056.tif" />
SPATIAL GRADIENT - 526
0161To compute the gradient magnitude of the enhanced image shown in Figure H(2), the x-derivative <i>u<sub>x</sub></i> and the y-derivative <i>u<sub>y</sub></i> of the image is calculated and then the sum of squares of the two images is calculated to get the gradient magnitude -- <maths id="math0044"><math display="inline"><mo>‖</mo><mo>∇</mo><mi>u</mi><mo>‖</mo><mo>=</mo><msqrt><msubsup><mi>u</mi><mi>x</mi><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>u</mi><mi>y</mi><mn>2</mn></msubsup></msqrt><mn>.</mn></math><img file="EP1538986B1_D0057.tif" /></maths> The x- and y-derivatives and the gradient magnitudes of the enhanced image are shown in Figure J. <img file="EP1538986B1_D0058.tif" />
HYSTERESIS THRESHOLD - 530
0162In the hysteresis threshold, two threshold values based on the percentage of non-edge pixels desired and the ratio of the two thresholds is determined. In this example, the percentage non-edge pixels desired is set to 90% and the lower to upper threshold ratio is set to 0.5.
0163The upper threshold is first computed by looking at the histogram and the cumulative histogram of the gradient magnitude image shown in Figure J(3). The histogram of the gradient magnitude image is shown in Figure K(1). The histogram shows the count of pixels of different gradient values on the image. The cumulative histogram calculated by cumulatively adding up the bins of the histogram is shown in Figure K(2). The cumulative histogram shows the count of all pixels less than a given value in the gradient magnitude image. The horizontal line shown in Figure K(2) corresponds to a y-value of 90% of the image pixels (0.90 * 20 * 20 = 360). The intersection of this line with the cumulative histogram gives the threshold at which 90% of the image pixels will be marked as non-edge and 10% will be marked as edge. From the graph, we can see that a threshold of 7 satisfies that condition. The lower threshold is set to 0.5 times the upper threshold of 7, which gives 3.5. <img file="EP1538986B1_D0059.tif" />
0164For the hysteresis threshold, the threshold of the image at the two threshold values of 3.5 and at 7 is set and then all edge segments from the lower threshold image is selected that have at least one higher threshold pixel. The two thresholded images and the output of the Hysteresis threshold step are shown in Figure L. In this example, note that one edge segment - (row 15, column 2) has no pixel greater than the higher threshold and is therefore removed from the output. All other edge segments from Figure L(1) are retained in the output. <img file="EP1538986B1_D0060.tif" />
MATCHING EDGES FILTER - 538
0165The matching edges filter selects pairs of matching edges from among all the edges found by the hysteresis threshold step (Figure L(3)). The y-derivative image , shown in Figure J(2) is used in this step to help find the vertical matching edges. The matching edges found by this step of the algorithm are shown in Figure M(1) and the filled region between the leading the trailing edges are shown in Figure M(2). Note that this step gets rid of edges of regions on the periphery of the image since it cannot find matching trailing edges for those regions. Also, note that in the output filled image we have some unfilled lines where the gradient was primarily horizontal or where the matching edges did not exist. <img file="EP1538986B1_D0061.tif" /><img file="EP1538986B1_D0062.tif" />
AND IMAGES - 442
0166The two images shown in Figure I(4) and Figure M(2) represent the segmentation of the input noisy image shown in Figure B. Neither of them represents a perfect output. The region-based algorithm finds extraneous regions while the edge-based algorithm misses part of the desired region. The two images are combined using a Boolean AND operator and the output is shown in Figure N. <img file="EP1538986B1_D0063.tif" />
CLOSE AND OPEN - 546 & 550
0167Using a structuring element shaped like a line of width 5 pixels, we close the output of AND images and this gives us a single region representing the structure of interest as shown in Figure O. <img file="EP1538986B1_D0064.tif" />
0168Opening this image does not change the result - however, Figure P shows an example of opening on another image. The input image, Figure P(1), contains two regions, one large region and one small region. The large region is 10 pixels in width and height while the small region is 4 pixels in width and height. Using a structuring element shaped like a line of length 5 pixels and applying morphological opening to the input image results in an image shown in Figure P(2) where the smaller region whose width was smaller than the structuring element was removed from the image. <img file="EP1538986B1_D0065.tif" />
FILTER DEEP REGIONS - 554
0169This filtering step is used to remove regions from a segmented image that start at a location deeper than a user specified depth threshold. This filtering is illustrated in Figure Q, where the input image contains two regions -- one region starts at row 2 and the other region starts at row 14. For each region on the input image, the starting row is determined after doing a connected component labeling - then using a depth threshold of 12, the regions where the starting row depth is greater than the depth threshold are removed from the input image. <img file="EP1538986B1_D0066.tif" />
HEAD DIAMETER RANGE - 730
0170For a gestational age of 20 weeks, the bi-parietal diameter (BPD) is typically 46 mm. The calculated Head Diameter search range, which ranges from -30% to +30% of the typical BPD value, is found to be: 32.2 36.8 41.4 46.0 50.6 55.2 59.8
0171For a gestational age of 36 weeks, the bi-parietal diameter (BPD) is typically 88 mm. The calculated Head Diameter search range, which ranges from -30% to +30% of the typical BPD value, is found to be: 61.6 70.4 79.2 88.0 96.8 105.6 114.4
POLAR HOUGH TRANSFORM - 738
0172To illustrate the polar Hough transform, an exemplary image is generated of a circle in the Cartesian coordinates using the circle equations, E5. This circle image was then dilated to result in a disk like shape and then a few rows of data were set to zero. This input image is shown in Figure R(1). The goal of the circular Hough transform is to find the circle that best fits the white pixels in this input image.
0173Next, this Cartesian input image was converted to polar domain by inverse scan conversion and the resulting image is shown in Figure R(2). To this polar coordinate image, the polar Hough transform for a circle was applied, where for each white pixel on the image a polar circle of a known radius was drawn. The output of the Hough transform is the sum of all such circles and this is shown in Figure R(3). The center of the best-fit circle has the most points passing through it. So, to determine the best-fit circle, we simply found the pixel on the Hough output with the maximum value. The point with the maximum value represents the center of the best-fit circle. <img file="EP1538986B1_D0067.tif" />
0174The best-fit circle determined by this Hough transform procedure is overlaid on the polar coordinate image and the Cartesian coordinate image and the two drawings are shown in Figure S. <img file="EP1538986B1_D0068.tif" /><img file="EP1538986B1_D0069.tif" />
FILL CIRCLE REGION - 746
0175A circle region in Cartesian space has a somewhat different shape in the Polar coordinate space. To illustrate this polar coordinate circle, we use both Cartesian coordinate and polar coordinate circles. First, a Cartesian coordinate circle of radius 50 pixels and a center (120,250) is drawn using the circle equation, E5, (<i>x</i>-<i>x</i><sub>0</sub>)<sup>2</sup> + (<i>y</i> - <i>y</i><sub>0</sub>)<sup>2</sup> = <i>R</i><sup>2</sup> -- this circle is shown in Figure T(1).
0176Now, the Cartesian center coordinates (<i>x</i><sub>0</sub>, <i>y</i><sub>0</sub>) are converted from Cartesian to polar center (<i>r</i><sub>0</sub>,φ<sub>0</sub>) using the scan conversion equations: <maths id="math0045"><math display="block"><msup><msub><mi>r</mi><mn>0</mn></msub><mn>2</mn></msup><mo>=</mo><mfenced><msup><msub><mi>x</mi><mn>0</mn></msub><mn>2</mn></msup><mo>+</mo><msup><msub><mi>y</mi><mn>0</mn></msub><mn>2</mn></msup></mfenced><mo>,</mo></math><img file="EP1538986B1_D0070.tif" /></maths><maths id="math0046"><math display="block"><mtable><mtr><mtd><msub><mi>φ</mi><mn>0</mn></msub><mo>=</mo><msup><mi>tan</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mfenced><msub><mi>y</mi><mn>0</mn></msub><mo>/</mo><msub><mi>x</mi><mn>0</mn></msub></mfenced></mtd></mtr></mtable></math><img file="EP1538986B1_D0071.tif" /></maths>
0177Next, the polar coordinate circle drawing and filling equation, E6, (<i>r</i> sin φ - <i>r</i><sub>0</sub> sin φ<sub>0</sub>)<sup>2</sup> + (<i>r</i> cos φ - <i>r</i><sub>0</sub> cos φ<sub>0</sub>)<sup>2</sup> = <i>R</i><sup>2</sup>, is applied to draw and fill the same circle of radius R=50, in polar coordinates. This circle in the polar coordinates is shown in Figure T(2).
0178Finally, to verify that this polar coordinate circle in indeed a representation of the Cartesian coordinate circle, the polar circle image is scan-converted to generate the representative Cartesian coordinate circle image. This scan-converted circle is shown in Figure T(3). Comparing Figure T(1) and Figure T(3), it can be seen that while the two circles are not identical, they are fairly similar. The differences are due to the fact that the polar coordinate data cannot represent Cartesian data completely. <img file="EP1538986B1_D0072.tif" />
APPENDIX 2: MATLAB SOURCE CODE
0179<tables id="tabl0004" num="0004"><img file="EP1538986B1_D0073.tif" /></tables><tables id="tabl0005" num="0005"><img file="EP1538986B1_D0074.tif" /></tables><tables id="tabl0006" num="0006"><img file="EP1538986B1_D0075.tif" /></tables><tables id="tabl0007" num="0007"><img file="EP1538986B1_D0076.tif" /></tables><tables id="tabl0008" num="0008"><img file="EP1538986B1_D0077.tif" /></tables><tables id="tabl0009" num="0009"><img file="EP1538986B1_D0078.tif" /></tables><tables id="tabl0010" num="0010"><img file="EP1538986B1_D0079.tif" /></tables><tables id="tabl0011" num="0011"><img file="EP1538986B1_D0080.tif" /></tables><tables id="tabl0012" num="0012"><img file="EP1538986B1_D0081.tif" /></tables><tables id="tabl0013" num="0013"><img file="EP1538986B1_D0082.tif" /></tables><tables id="tabl0014" num="0014"><img file="EP1538986B1_D0083.tif" /></tables><tables id="tabl0015" num="0015"><img file="EP1538986B1_D0084.tif" /></tables><tables id="tabl0016" num="0016"><img file="EP1538986B1_D0085.tif" /></tables><tables id="tabl0017" num="0017"><img file="EP1538986B1_D0086.tif" /></tables><tables id="tabl0018" num="0018"><img file="EP1538986B1_D0087.tif" /></tables>
Contents18
159 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41 Sheet 42 Sheet 43 Sheet 44 Sheet 45 Sheet 46 Sheet 47 Sheet 48 Sheet 49 Sheet 50 Sheet 51 Sheet 52 Sheet 53 Sheet 54 Sheet 55 Sheet 56 Sheet 57 Sheet 58 Sheet 59 Sheet 60 Sheet 61 Sheet 62 Sheet 63 Sheet 64 Sheet 65 Sheet 66 Sheet 67 Sheet 68 Sheet 69 Sheet 70 Sheet 71 Sheet 72 Sheet 73 Sheet 74 Sheet 75 Sheet 76 Sheet 77 Sheet 78 Sheet 79 Sheet 80 Sheet 81 Sheet 82 Sheet 83 Sheet 84 Sheet 85 Sheet 86 Sheet 87 Sheet 88 Sheet 89 Sheet 90 Sheet 91 Sheet 92 Sheet 93 Sheet 94 Sheet 95 Sheet 96 Sheet 97 Sheet 98 Sheet 99 Sheet 100 Sheet 101 Sheet 102 Sheet 103 Sheet 104 Sheet 105 Sheet 106 Sheet 107 Sheet 108 Sheet 109 Sheet 110 Sheet 111 Sheet 112 Sheet 113 Sheet 114 Sheet 115 Sheet 116 Sheet 117 Sheet 118 Sheet 119 Sheet 120 Sheet 121 Sheet 122 Sheet 123 Sheet 124 Sheet 125 Sheet 126 Sheet 127 Sheet 128 Sheet 129 Sheet 130 Sheet 131 Sheet 132 Sheet 133 Sheet 134 Sheet 135 Sheet 136 Sheet 137 Sheet 138 Sheet 139 Sheet 140 Sheet 141 Sheet 142 Sheet 143 Sheet 144 Sheet 145 Sheet 146 Sheet 147 Sheet 148 Sheet 149 Sheet 150 Sheet 151 Sheet 152 Sheet 153 Sheet 154 Sheet 155 Sheet 156 Sheet 157 Sheet 158 Sheet 159
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| EP1030187A | Cites | European Patent Office (EPO) |
| EP1076318A | Cites | European Patent Office (EPO) |
| US5148809A | Cites | United States of America |
| US5465721A | Cites | United States of America |
| US5605155A | Cites | United States of America |
| US5993390A | Cites | United States of America |
| US2002102023A1 | Cites | United States of America |
| US6375616B1 | Cites | United States of America |
| US6610013B1 | Cites | United States of America |
192 members in 9 offices
Priority claims11
| Document | Office | Kind | Date |
|---|---|---|---|
| 400624P | United States of America | – | |
| 40062402 | United States of America | P | |
| 423881P | United States of America | – | |
| 42388102 | United States of America | P | |
| 470525P | United States of America | – | |
| 47052503 | United States of America | P | |
| 443126 | United States of America | – | |
| 44312603 | United States of America | A | |
| 633186 | United States of America | – | |
| 63318603 | United States of America | A | |
| 0324368 | United States of America | W |
Members192
| Document | Office | Kind | |
|---|---|---|---|
| GB0218547D0 | United Kingdom | D0 | |
| US2003229281A1 | United States of America | A1 | |
| CA2526297A1 | Canada | A1 | |
| WO03103499A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2003237819A1 | Australia | A1 | |
| US6676605B2 | United States of America | B2 | |
| US2004024302A1 | United States of America | A1 | |
| US2004024315A1 | United States of America | A1 | |
| GB2391625A | United Kingdom | A | |
| CA2534287A1 | Canada | A1 | |
| WO2004012584A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU2003261357A1 | Australia | A1 | |
| AU2003261357A8 | Australia | A8 | |
| WO2004017834A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2003254372A1 | Australia | A1 | |
| WO2004012584A3 | World Intellectual Property Organization (WIPO) | A3 | |
| CA2541798A1 | Canada | A1 | |
| WO2004041094A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU2003296928A1 | Australia | A1 | |
| AU2003296928A8 | Australia | A8 | |
| US2004127796A1 | United States of America | A1 | |
| US2004127797A1 | United States of America | A1 | |
| WO2004041094A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO2004041094A8 | World Intellectual Property Organization (WIPO) | A8 | |
| US2004267123A1 | United States of America | A1 | |
| WO2005000390A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2005000390A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP1521548A1 | European Patent Office (EPO) | A1 | |
| US6884217B2 | United States of America | B2 | |
| CA2587137A1 | Canada | A1 | |
| WO2005044109A1 | World Intellectual Property Organization (WIPO) | A1 | |
| EP1538986A2 | European Patent Office (EPO) | A2 | |
| EP1551305A1 | European Patent Office (EPO) | A1 | |
| CA2598335A1 | Canada | A1 | |
| WO2005079487A2 | World Intellectual Property Organization (WIPO) | A2 | |
| JP2005528950A | Japan | A | |
| US2005215896A1 | United States of America | A1 | |
| US2005228278A1 | United States of America | A1 | |
| US2005251039A1 | United States of America | A1 | |
| JP2005534462A | Japan | A | |
| WO2005107581A2 | World Intellectual Property Organization (WIPO) | A2 | |
| EP1596718A2 | European Patent Office (EPO) | A2 | |
| JP2005535420A | Japan | A | |
| WO2005112773A2 | World Intellectual Property Organization (WIPO) | A2 | |
| US2006006765A1 | United States of America | A1 | |
| US2006025689A1 | United States of America | A1 | |
| WO2006017168A2 | World Intellectual Property Organization (WIPO) | A2 | |
| US7004904B2 | United States of America | B2 | |
| CA2617622A1 | Canada | A1 | |
| WO2006026605A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2006031526A2 | World Intellectual Property Organization (WIPO) | A2 | |
| US2006079775A1 | United States of America | A1 | |
| EP1538986A4 | European Patent Office (EPO) | A4 | |
| CA2626226A1 | Canada | A1 | |
| WO2006017168A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO2006047554A2 | World Intellectual Property Organization (WIPO) | A2 | |
| US7041059B2 | United States of America | B2 | |
| EP1596718A4 | European Patent Office (EPO) | A4 | |
| US2006111633A1 | United States of America | A1 | |
| CA2631937A1 | Canada | A1 | |
| WO2006062867A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2006047554A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US7087022B2 | United States of America | B2 | |
| EP1689298A1 | European Patent Office (EPO) | A1 | |
| US2006235301A1 | United States of America | A1 | |
| US2007004983A1 | United States of America | A1 | |
| CA2616541A1 | Canada | A1 | |
| WO2007016369A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2006026605A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO2005107581A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO2006031526A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2007100236A1 | United States of America | A1 | |
| EP1781176A2 | European Patent Office (EPO) | A2 | |
| EP1784129A2 | European Patent Office (EPO) | A2 | |
| WO2005112773A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP1809178A2 | European Patent Office (EPO) | A2 | |
| WO2006062867A3 | World Intellectual Property Organization (WIPO) | A3 | |
| JP2007522884A | Japan | A | |
| EP1819279A2 | European Patent Office (EPO) | A2 | |
| JP2007524474A | Japan | A | |
| WO2007103737A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2005107581A8 | World Intellectual Property Organization (WIPO) | A8 | |
| US2007232908A1 | United States of America | A1 | |
| US2007276247A1 | United States of America | A1 | |
| US2007276254A1 | United States of America | A1 | |
| EP1909648A2 | European Patent Office (EPO) | A2 | |
| JP2008511408A | Japan | A | |
| JP2008517673A | Japan | A | |
| US2008139934A1 | United States of America | A1 | |
| US2008139938A1 | United States of America | A1 | |
| US2008146932A1 | United States of America | A1 | |
| US2008146939A1 | United States of America | A1 | |
| WO2007103737A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO2008073560A2 | World Intellectual Property Organization (WIPO) | A2 | |
| JP2008522661A | Japan | A | |
| CA2671708A1 | Canada | A1 | |
| WO2008083386A2 | World Intellectual Property Organization (WIPO) | A2 | |
| US2008181479A1 | United States of America | A1 | |
| WO2008083386A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2008242985A1 | United States of America | A1 |
66 legal events, as 7 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal feeWithdrawnR119 | R119 | DE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Notification of lapseLapsedST | ST | FR | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Gb: european patent ceased through non-payment of renewal feeCeasedGBPC | GBPC | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| No opposition filed against granted patent, or epo opposition proceedings concluded without decisionGrantedR097 | R097 | DE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| No opposition filedOpposition26N | 26N | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Patent ceasedCeasedPL | PL | CH | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Discontinued in the netherlands as no translation has been filedVDEP | VDEP | NL | |
| Dpma publication of mentioned ep patent grantGrantedR096 | R096 | DE | |
| European patents granted designating irelandGrantedFG4D | FG4D | IE | |
| Designated contracting statesAK | AK | EP | |
| European patent takes effect as a national patent in ch/liEP | EP | CH | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Information related to communication of intention to grant a patent modifiedORIGINAL CODE: EPIDOSCIGR1GRAC | GRAC | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| Information related to disapproval of communication of intention to grant by the applicant or resumption of examination proceedings by the epo deletedORIGINAL CODE: EPIDOSDIGR1GRAJ | GRAJ | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Party data changed (applicant data changed or rights of an application transferred)RAP1 | RAP1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Information on inventor provided before grant (corrected)RIN1 | RIN1 | EP | |
| Supplementary search report drawn up and despatchedA4 | A4 | EP | |
| Information provided on ipc code assigned before grantRIC1 | RIC1 | EP | |
| Information provided on ipc code assigned before grantRIC1 | RIC1 | EP | |
| Request for extension of the european patent (deleted)DAX | DAX | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1538986
- Application
- 37671591
Titles3
- German
- INSTRUMENT AUF 3D-ULTRASCHALLBASIS FÜR DIE NICHTINVASIVE MESSUNG VON FLÜSSIGKEITSGEFÜLLTEN UND NICHT FLÜSSIGKEITSGEFÜLLTEN STRUKTUREN
- English
- 3D ULTRASOUND-BASED INSTRUMENT FOR NON-INVASIVE MEASUREMENT OF FLUID-FILLED AND NON FLUID-FILLED STRUCTURES
- French
- INSTRUMENT A BASE D'ULTRASONS EN 3D DE MESURE DE STRUCTURES REMPLIES OU NON DE LIQUIDES
Classification
- CPC, 18
- A61B8/00
- A61B5/204
- A61B8/0858
- A61B8/0866
- A61B8/462
- A61B8/483
- A61B2560/0456
- G06T7/0012
- G06T2207/10132
- G06T2207/10136
- G06T2207/30004
- G06T2207/30016
- G06T2207/30044
- G06T2207/30048
- G06T7/11
- G06T7/12
- G06T7/149
- G06T7/62
- IPC, 11
- A61B8 00
- G06K9 48
- A61B5 00
- A61B5 055
- A61B6 00
- A61B6 03
- A61B8 08
- G06T1 00
- G06T5 00
- G06T5 20
- G06T7 60
Designated states27
- Contracting states, 27
- Austria
- Belgium
- Bulgaria
- Switzerland
- Cyprus
- Czechia
- Germany
- Denmark
- Estonia
- Spain
- Finland
- France
- United Kingdom
- Greece
- Hungary
- Ireland
- Italy
- Liechtenstein
- Luxembourg
- Monaco
- Netherlands (Kingdom of the)
- Portugal
- Romania
- Sweden
and 3 moreShow fewer
- Slovenia
- Slovakia
- Türkiye