Generating M-mode data for detecting fetal cardiac activity
Patent Information
- Application Number
- JP2023578748
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-07-09
- Filing Date
- 2022-06-22
- Publication Date
- 2025-09-01
- Estimated Expiration
- 2042-06-22
AI Technical Summary
Existing ultrasound techniques for detecting fetal heart activity, such as Doppler-based methods, expose the fetus to significant ultrasound waves, increasing the risk of pregnancy failure and are not sufficiently accurate for assessing cardiac activity.
A processing system that generates and ranks M-mode data by automatically identifying regions of interest in ultrasound images, positioning multiple M-mode lines, and evaluating their quality to provide accurate fetal heart rate measurements, reducing ultrasound exposure.
The system effectively reduces fetal ultrasound exposure and enhances the accuracy of fetal heart rate assessment by automatically generating and ranking M-mode lines, facilitating rapid and reliable cardiac activity evaluation.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to the field of ultrasound imaging, and in particular to generating data that can be used to determine fetal cardiac activity. [Background technology]
[0002] Fetal (i.e., unborn) cardiac activity is a sought-after vital sign used by clinicians to assess pregnancy viability. Cardiac activity can be measured from the sixth week of pregnancy. Because normal fetal heart rate depends on the age of the pregnancy, it has been observed that abnormal or unexpected heart rates or other cardiac characteristics can be used to identify the risk of pregnancy failure.
[0003] For example, absence or irregularity of cardiac activity at a crown-rump length greater than 7 mm has been observed to be associated with a high risk of pregnancy failure. Fetal bradycardia, such as a fetal heart rate less than 85 bpm, is also a strong indicator of potential risk to the fetus.
[0004] EP3052023B1 discloses an ultrasound diagnostic imaging system for identifying a fetal heart. It is proposed to identify a region of interest in response to user controls, generate a plurality of spatially distinct M-mode lines associated with the region of interest, analyze echo data of the M-mode lines to identify the fetal heartbeat, and rank the collected echo data based on the measured fetal heart rate.
[0005] Thus, there is a continuing need to provide accurate data that can be used to assess fetal cardiac activity, such as fetal heart rate and irregularities caused by arrhythmias, such as ectopic beats and palpitations ("fluttering").
[0006] One approach to assess fetal cardiac activity is to use Doppler-based ultrasound techniques to measure blood flow to the heart. However, the use of Doppler techniques can result in significant exposure of the embryo / fetus to ultrasound, which may increase the risk of pregnancy failure. Summary of the Invention [Problem to be solved by the invention]
[0007] Therefore, alternative approaches to detecting cardiac activity in utero would be advantageous. [Means for solving the problem]
[0008] The invention is defined by the claims.
[0009] According to an embodiment of an aspect of the present invention, a processing system is provided for generating M-mode data by processing a sequence of ultrasound images.
[0010] The processing system performs the steps of: acquiring a sequence of ultrasound images, each ultrasound image including a representation of a portion of a fetus including the fetal heart; identifying a region of interest in each ultrasound image in the sequence of images including the representation of the fetal heart; locating a plurality of M-mode lines relative to the sequence of ultrasound images based on the identified region of interest; generating M-mode data for each of the plurality of M-mode lines; determining a quality measure of the M-mode line by processing the generated M-mode data for each of the plurality of M-mode lines; and ranking the plurality of M-mode lines based on the determined quality measure of each M-mode line. Identifying the region of interest includes automatically detecting a first region of interest including the representation of the fetus in each ultrasound image and automatically identifying a second region of interest within the first region of interest including the representation of the fetal heart. In some examples, identifying the first region of interest includes applying a first machine learning method to the ultrasound images and identifying the second region of interest includes applying a second machine learning method to the first region of interest.
[0011] This disclosure proposes an approach to automatically locate and evaluate M-mode lines on a sequence of ultrasound images. Based on the identified location of the fetal heart in the ultrasound images, different M-mode lines are located on the sequence of ultrasound images. A quality measure for each M-mode line is generated (from the M-mode data associated with the M-mode lines) and used to rank the M-mode lines. This provides a set or collection of M-mode lines for automatic selection or manual selection by a clinician. The automatic ranking of M-mode lines provides the clinician with useful clinical information to select or distinguish between different instances of M-mode data, for example to facilitate identifying which M-mode line is likely to provide more clinically useful data about the fetal heart.
[0012] This embodiment recognizes that different positions (e.g., orientations and / or alignments) of the M-mode lines may result in M-mode data of different accuracy, and thus, by generating M-mode data for each of a plurality of M-mode lines, M-mode data can be generated that is accurately representative of cardiac activity of the fetal heart.
[0013] Suitable examples of quality measures include the span of the M-mode lines, the consistency / regularity of any periodic signals in the M-mode data (e.g., in terms of frequency and / or amplitude), etc. In particular, the quality measures represent a measure of how accurately the M-mode data can provide information about the fetal heart, e.g., the accuracy of the fetal heart rate derived from the M-mode data.
[0014] A region of interest is, for example, a region whose outer boundary is defined by the position and / or size of the fetal heart in a sequence of ultrasound images and is smaller than the entire image. In a particular embodiment, the outer boundary of the region of interest represents a predicted outer boundary of the representation of the fetal heart in the ultrasound images. In particular, the region of interest is a region that includes the representation of the fetal heart for each ultrasound image and is smaller than the entire size of the ultrasound images.
[0015] The term "fetus" is used herein to refer to the unborn offspring of an animal (such as a mammal, reptile, or bird). For purposes of this disclosure, a fetus is considered to include any unborn offspring of an animal having a gestational age that is expected to have a beating heart. Thus, the term "fetus" also includes an embryo. For example, if the fetus is a human fetus, the term "fetus" refers to an embryo or fetus that is at least the fifth week of gestation.
[0016] The proposed methodology facilitates rapid acquisition of adequate / accurate M-mode data for assessment of fetal cardiac activity, thereby effectively reducing fetal ultrasound exposure, which has been identified as a desirable attribute of fetal medical testing to reduce risks.
[0017] Positioning the multiple M-mode lines may include positioning each M-mode line to pass through the region of interest, for example, to pass through a central portion of the region of interest (such as a centroid of the region of interest).
[0018] In some embodiments, two or more M-mode lines (for a sequence of ultrasound images) are positioned at different orientations relative to the region of interest of the ultrasound images.
[0019] In some embodiments, each M-mode line is positioned at a different orientation with respect to the region of interest of the ultrasound images for a sequence of ultrasound images.
[0020] In this manner, the M-mode lines effectively analyze or segment (the region of interest of) the ultrasound image at different angles, and it is recognized herein that different angles for the M-mode lines can capture different periodicities depending on the region through which the line passes, increasing the likelihood that the M-mode lines will capture data that can be used to derive the fetal heart rate or other characteristics of the fetal heart.
[0021] Preferably, each of the different orientations is a predetermined orientation.
[0022] In some embodiments, each M-mode line is positioned with respect to the sequence of ultrasound images to pass through a different portion of the region of interest.
[0023] Preferably, each M-mode line is an anatomical M-mode line. Thus, the origin and / or end (start and end) of the anatomical M-mode line varies for different M-mode lines. The start and / or end position of each anatomical M-mode line may be based on the position of the region of interest. In a particular embodiment, the start and / or end position of each anatomical M-mode line is located on the boundary of the region of interest.
[0024] The processing system is further configured to control a user interface to display a visual representation of the ranking of the plurality of M-mode lines.
[0025] The processing system is further configured to receive user input including an index identifying one of the plurality of M-mode lines and control the user interface to display M-mode data for the user-identified M-mode line and / or a visual representation of one or more characteristics of the fetal heart derived from the M-mode data for the user-identified M-mode line.
[0026] In some embodiments, the one or more characteristics of the fetal heart include a predicted fetal heart rate. The predicted fetal heart rate generates useful clinical information for assessing the condition of the fetus (e.g., determining fetal viability). It will be readily apparent to one skilled in the art how to generate or predict fetal neo-pax from suitable M-mode data of the fetus. It may also include identifying a frequency of lines in the M-mode data that represent motion of (a part of) the fetal heart.
[0027] Other suitable characteristics include heart rate variability, heart rate stability, cardiac motion amplitude, mean AV interval, etc.
[0028] In some embodiments, the processing system is further configured to control a user interface to display the M-mode data of the M-mode line having the highest rank and / or a visual representation of one or more characteristics of the fetal heart derived from the M-mode data of the M-mode line having the highest rank.
[0029] In this manner, an automated determination of the best possible M-mode data, eg, the best single instance of M-mode data, may be made.
[0030] The processing system can control each M-mode line to track the movement of the region of interest in the sequence of ultrasound images.
[0031] The processing system may further compensate for motion artifacts for each M-mode data based on a change in position of the bounding box between different ultrasound images in the sequence of ultrasound images.
[0032] Also proposed is a computer-implemented method for generating M-mode data from a sequence of ultrasound images, the computer-implemented method including the steps of acquiring a sequence of ultrasound images, each ultrasound image including a representation of a portion of a fetus including the fetal heart, identifying in the sequence of ultrasound images a region of interest including a representation of the fetal heart in each ultrasound image, locating a plurality of M-mode lines in the sequence of ultrasound images based on the identified region of interest, generating M-mode data for each of the plurality of M-mode lines by processing a portion of each ultrasound image in which the M-mode line is located, determining a quality measure for the M-mode line by processing the generated M-mode data for each of the plurality of M-mode lines, and ranking the plurality of M-mode lines based on the determined quality measure for each M-mode line.
[0033] Also proposed is a computer program product comprising computer program code means which, when executed on a computing device having a processing system, causes the processing system to perform all the steps of any of the methods described herein. Also proposed is a (non-transitory) computer readable medium having such a computer program product stored thereon.
[0034] These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments described hereinafter. [Brief description of the drawings]
[0035] For a better understanding of the present invention and to show more clearly how it may be carried into effect, reference will now be made, by way of example only, to the accompanying drawings in which:
[0036] [Figure 1] FIG. 1 shows an ultrasound system. [Diagram 2] FIG. 2 illustrates a schematic of an approach according to one embodiment. [Diagram 3] FIG. 3 is a flow chart illustrating a method according to one embodiment. [Figure 4] FIG. 4 shows the process for positioning the M-mode lines. [Diagram 5] FIG. 5 is a flow chart illustrating a method according to one embodiment. [Figure 6] FIG. 6 illustrates a processing system according to one embodiment. [Figure 7] FIG. 7 illustrates an ultrasound system according to one embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0037] The present invention will now be described with reference to the drawings.
[0038] It should be understood that the detailed description and specific examples, while indicating exemplary embodiments of the devices, systems, and methods, are for purposes of illustration only and are not intended to limit the scope of the invention. These and other features, aspects, and advantages of the devices, systems, and methods of the present invention will become better understood from the following description, the appended claims, and the accompanying drawings. It should be understood that the figures are schematic representations only and are not drawn to scale. It should also be understood that the same reference numerals are used throughout the figures to indicate the same or similar parts.
[0039] The present invention provides an approach for automatically generating and ranking M-mode lines to generate or define M-mode data usable for assessing fetal cardiac activity, for example to determine fetal heart rate. A region of interest is identified in a sequence of ultrasound images that includes the fetal heart. The region of interest is used to define a location for each of a number of M-mode lines (e.g., anatomical M-mode lines). A quality measure for each M-mode line is determined based on the M-mode data generated for each M-mode line, and the quality measure is used to rank the M-mode lines.
[0040] The embodiments are based on the recognition that generating multiple M-mode lines, each based on a predicted position of the fetal heart, increases the likelihood of generating M-mode data from which an accurate measure of fetal heart activity can be derived. Performing an automatic generation and ranking of M-mode lines reduces the burden on the clinician while providing important information that the clinician can use to evaluate the accuracy and / or reliability (e.g., rank) of the M-mode data. In particular, multiple instances of M-mode data can be generated and used to verify or confirm an assessment made by the clinician on only one of the M-mode data. The most appropriate M-mode data instance can be easily identified based on the rank.
[0041] The embodiments may be used in any suitable ultrasound system, particularly ultrasound systems used to image a fetus during the early stages of fetal development.
[0042] 1 shows a schematic diagram of an ultrasound system 100, in particular a medical two-dimensional (2D) or three-dimensional (3D) ultrasound system, which may itself be an embodiment of the present invention or may include an embodiment of the present invention.
[0043] The ultrasound system 100 can be utilized to examine a volume of an anatomical region. For example, the ultrasound system 100 scans a fetus 62 using an ultrasound probe 14. The ultrasound probe 14 generates an ultrasound image of the anatomical region, generally designated 64. The ultrasound probe 14 has at least one transducer array with a number of transducer elements for transmitting and receiving ultrasound waves. In one example, each transducer element can transmit ultrasound waves in the form of at least one transmit impulse of a particular pulse duration, in particular a number of subsequent transmit pulses. The transducer elements can be arranged in a linear array in the case of a 2D ultrasound system 100, or in a two-dimensional array to provide a multi-plane or three-dimensional image in the case of a 2D ultrasound system 100. In general, (matrix) transducer systems found in the Philips iE33 system, as well as mechanical 3D / 4D transducer technology found, for example, in the Philips EPIQ and Affiniti systems (including, for example, the mechanical V6-2 probe) can be utilized in conjunction with the present invention.
[0044] The ultrasound probe further generates a sequence of ultrasound images based on the ultrasound data generated during imaging of the anatomical site.
[0045] The ultrasound probe 14 can be connected to an (ultrasound image) processing system 16 via an ultrasound data interface 66. This interface can be a wired or wireless interface. The processing system 16 is itself an embodiment of the present invention.
[0046] The processing system 16 includes a segmentation unit 68, an M-mode line placement unit 70, and a quality assessment unit 72. It should be understood that such units may be implemented in any suitable manner, for example by one or more appropriately configured processors, which may also be referred to herein as a processor arrangement, i.e., an arrangement of one or more processors that perform the functions of the segmentation unit 68, the M-mode line placement unit 70, and the quality assessment unit 72, as described below.
[0047] The processing system 16 can be connected to a user interface, for example for displaying the results of an ultrasound scan, which is connected to the input interface 10 for inputting commands for controlling the ultrasound system 100. The user interface 18 may be separate from the processing system 16 or may form part of the processing system 16, for example it may be integrated into the processing system 16. The input interface 10 may include keys or a keyboard, as well as further input devices such as a trackball or a mouse. The input interface 10 may be connected to the user interface 18 or directly to the processing system 16.
[0048] In this exemplary embodiment, the processing system 16 receives the (temporal) sequence of ultrasound images, such as 2D or 3D images, directly from the ultrasound probe 14. However, it should be understood that the processing system 16 can equally obtain the (temporal) sequence of ultrasound images from a data storage device (not shown), such as a local or remote data storage device, in which the temporal sequence of ultrasound images is temporarily stored, for example, to facilitate an "offline" evaluation of the scan results after completion of an examination of a female patient carrying a fetus 62. Examples of data storage devices include one or more memory devices, hard disks, optical disks, etc., in which the processing system 16 can store, for example, image frames and image frame processing data for later evaluation.
[0049] A segmentation unit 68 is provided for identifying or segmenting anatomical features of the fetus 62 in a sequence of (2D or 3D) ultrasound images, e.g., of a region of interest including, in particular, the fetal heart, captured by the ultrasound probe 14. The segmentation unit 68 thereby provides segmentation data of the anatomical structure of the fetus 62 (including at least the identified region of interest).
[0050] The M-mode line placement unit 70 places a number of M-mode lines on the sequence of ultrasound images based on the identified region of interest, i.e., based on the segmentation data.
[0051] The quality assessment unit 72 determines a quality measure for each M-mode line based on the M-mode data obtained from each M-mode line. The quality assessment unit also ranks each M-mode line based on the determined quality measure.
[0052] A more detailed description of the steps performed by the units of the processing system is given below.
[0053] It should be noted that the fetus 62 shown is for illustrative purposes only, and that the size and development of the fetus may differ from that shown. It should also be noted that the ultrasound probe shown is a surface probe that contacts the subject's skin, but other probe configurations (such as a transvaginal probe) can be used.
[0054] The approach proposed in this disclosure is generally illustrated in Figure 2. In particular, Figure 2 illustrates a workflow 200 that is followed when implementing an embodiment of the present invention.
[0055] The workflow is conceptually divided into two parts: in the first part 210, a sequence of ultrasound images is processed to identify a region of interest that contains the fetal heart, and in the second part 220, based on the region of interest, M-mode lines are placed on the sequence of ultrasound images and analyzed.
[0056] Thus, the workflow receives as input a sequence of fetal ultrasound images 200A and provides as output M-mode data of M-mode lines disposed on the sequence of ultrasound images and / or evaluation results (in particular a ranking of different possible M-mode lines for the sequence of ultrasound images) performed with respect to the fetal heart, for example to evaluate the usefulness or quality of the data for deriving one or more fetal cardiac characteristics.
[0057] In the context of this disclosure, a sequence of ultrasound images is considered to be a sequence of time frames, i.e., a temporal sequence of ultrasound images captured one after the other, which in effect forms a (frame) video or cine loop.
[0058] The sequence of ultrasound images is, for example, a transvaginal (TV) ultrasound image. Transvaginal ultrasound provides high resolution images in the early stages of pregnancy. Therefore, due to its better visualization, a TV probe is suitable for pregnancy scans before the 8th week of pregnancy. However, the fetal heart occupies a very small area on the image, so to detect and locate the heart, the probe emits ultrasound waves to capture the beating heart. With a TV probe, it is relatively difficult to emit ultrasound waves to locate the beating heart, given the anatomical constraints that need to be addressed.
[0059] In the first part 210 of the workflow, the sequence of ultrasound images is processed to identify a region of interest. The region of interest is the part or portion (of each ultrasound image) that contains the fetal heart. In particular, the location of the region of interest is identified for each ultrasound image. This is done by detecting a first region of interest that contains the fetus in each ultrasound image, and optionally then identifying a second (smaller) region of interest that contains the fetal heart within the first region of interest. The second region of interest serves as the "region of interest" for the purposes of the following disclosure. Compared to manual detection of the beating heart or direct automatic detection of the beating heart, such a two-step approach can achieve higher accuracy, especially in early obstetrics where the gestational age is less than 11 weeks and the heart is very small. In some embodiments, the process of the first part 210 of the workflow process further includes a step of setting the second region of interest as the first region of interest if the beating heart cannot be identified.
[0060] The first region of interest may include the entire detected fetus. Alternatively, the first region of interest may include a majority of the entire detected fetus (e.g., at least 50% of the entire detected fetus). By way of example only, the first region of interest includes the entire torso of the fetus. The automated detection of the fetus may be performed in a variety of ways, such as by machine learning methods (e.g., artificial intelligence networks). After the fetus is first detected, a beating heart that appears periodically over a sequence of time frames is then identified. Any automated method suitable for detecting objects that appear periodically may be employed. For example, the second region of interest may be identified by analyzing one or more features that are indicative of motion over time. In another example, the second region of interest may also be identified by machine learning methods.
[0061] By way of example only, the first portion 210 includes the steps of: applying a first neural network to the ultrasound image, where the first neural network is trained to detect the fetus, thereby generating coordinates of at least one first bounding box as an output; cropping the ultrasound image to the first bounding box, thereby generating a cropped image including image content within the first bounding box; and applying a second neural network to the cropped medical image, where the second neural network is trained to detect the fetal heart, thereby generating coordinates of at least twelve second bounding boxes as an output.
[0062] The first neural network and / or the second neural network may be a fully convolutional neural network. By way of example only, the first neural network and / or the second neural network is a YOLO fully convolutional neural network.
[0063] In this approach, the input medical image is advantageously cropped to a bounding box that includes the larger anatomical structures, and the cropped image is used to search for the smaller anatomical structures. In this way, the neural networks used at each hierarchical level to detect the anatomical structures (e.g., at the larger and smaller hierarchical levels) require a much simpler architecture, can be trained faster, and are more robust, i.e., have a higher average accuracy. That is, separate and distinct neural networks can be implemented at each hierarchical level and thus can be specially trained for a specific detection task depending on the hierarchical level.
[0064] Thus, the position of the beating heart across a sequence of images can be detected.
[0065] Any suitable segmentation technique may be used to identify the region of interest, for example a Hankel transform algorithm, a deformable contour segmentation algorithm, and / or machine learning techniques, and for the sake of brevity, the segmentation technique will not be described in detail, since such algorithms are well known per se.
[0066] Next, in a second portion 220 of the workflow, a number of M-mode lines are located relative to the sequence of ultrasound images. A quality measure for each M-mode line is then obtained from the M-mode data generated for each M-mode line, for example by evaluation of a cardiac waveform calculated from the M-mode data for each M-mode line (as will be described). The M-mode lines are then ranked based on the determined quality measures.
[0067] The ranked set of M-mode lines automatically indicates the best possible line to use in the post-processing stage. It is also used to provide the clinician with an ensemble of possible lines. These can be examined to make a better diagnosis (e.g., if the highest ranked M-mode line is erroneous or misleading to the physician's opinion). Multiple M-mode lines can be used to enhance the decision by the clinician. Ranking the set of automatically located M-mode lines also eases the physician's task of identifying the appropriate M-mode data.
[0068] The use of multiple M-mode lines is advantageous because early in fetal development, the fetal heart occupies a relatively small space in the ultrasound image sequence. This means that precise placement of the M-mode lines is required to accurately capture the movement of the fetal heart. In other words, the accuracy of fetal heart measurements is highly dependent on correct placement of the M-mode lines. The use of multiple M-mode lines allows for a "scatter gun" technique to be employed, which increases the likelihood of acquiring adequate M-mode data to derive accurate characteristics of the fetal heart.
[0069] Having provided a general description of the approach taken in this disclosure, a more complete description of the embodiments is provided below.
[0070] 3 is a flow chart illustrating a (computer-implemented) method 300 according to one embodiment. The method 300 is performed by a processing system (such as the processing system 16 of FIG. 1) that performs all steps of the method 300.
[0071] The method 300 includes a step 310 of acquiring a (temporal) sequence of ultrasound images. Each ultrasound image includes a representation of a portion of the fetus including the fetal heart. The sequence of ultrasound images can be acquired directly from an ultrasound imaging device or from a memory / store containing sequences of ultrasound images. Step 310 is performed, for example, by an input interface of a processing system.
[0072] The method 300 also includes a step 320 of identifying in the sequence of images a region of interest that includes a representation of the fetal heart in each ultrasound image. Step 320 is performed by processing the sequence of images using a segmentation algorithm as described above. The region of interest may be defined by a bounding box located / positioned (overlaid) on the sequence of ultrasound images. Step 320 is performed, for example, by a segmentation unit of a processing system.
[0073] In some examples, step 320 includes determining any movement of the region of interest. This reflects movement of the fetus in the sequence of ultrasound images due to, for example, movement of the ultrasound probe, movement of the parent, and / or movement of the fetus within the parent. A position of the region of interest (or bounding box) for each ultrasound image in the sequence can be determined. In other words, the position and / or size of the region of interest (i.e., bounding box) can change throughout the sequence of images. Determining the position of the region of interest in the temporal sequence includes determining the position of the first region of interest or the second region of interest in the temporal sequence. In some embodiments, movement of both the first region of interest and the second region of interest can be tracked, and movement of the fetus in the sequence of ultrasound images can be determined based on both the movement of the first region of interest and the movement of the second region of interest.
[0074] The method 300 also includes positioning 330 a plurality of M-mode lines relative to the sequence of ultrasound images based on the identified region of interest, the step 330 being performed, for example, by an M-mode line positioning unit of the processing unit.
[0075] The multiple M-mode lines are positioned such that at least two M-mode lines overlap different parts or portions of the region of interest.
[0076] This can be achieved, for example, by positioning two or more M-mode lines such that each of them is at a different orientation relative to the region of interest, with each M-mode line capturing a different periodicity depending on the region through which the line passes. In some embodiments, each M-mode line is positioned to pass through a central portion of the region of interest, i.e., through a central portion of a bounding box that defines the region of interest.
[0077] In one example, the region of interest is conceptually divided into a number of sub-regions (e.g., a grid is formed within the region of interest). For the avoidance of doubt, it should be noted that the size of the sub-regions is smaller than the size of the region of interest (i.e., is a portion of the region of interest). For example, if the region of interest is a rectangular box, the sub-regions form a rectangular grid of (smaller) boxes. Each M-mode line passes through a particular sub-region of the region of interest. In particular, at least two M-mode lines are positioned to pass through different sub-regions of the region of interest. For example, each M-mode line passes through the (most) central part (e.g., center of gravity) of the sub-region through which it passes. For example, it passes through the center of gravity of the sub-region. Thus, a conventional M-mode line (with a fixed origin) starts from a fixed origin and has an end point where the M-mode line passes through (e.g., the (most) central part, i.e., center of gravity) of the region of interest.
[0078] The minimum size of a subregion is 1 pixel / voxel. The maximum size of a subregion is the size of the region of interest minus 1 pixel. For improved consistency, the sizes of the subregions can be identical, but this is not required.
[0079] In some implementations where the position of the bounding box changes across a sequence of ultrasound images (e.g., due to movement of the ultrasound probe or fetus), each M-mode line moves to accommodate the movement of the bounding box. Thus, the position of each M-mode line changes in different images of the sequence of ultrasound images (e.g., if the position of the bounding box changes). This can be done, for example, by controlling each M-mode line to have a fixed orientation with respect to the boundary and / or to pass through the same region / location within the bounding box.
[0080] In other words, step 320 involves controlling each M-mode line to track the movement of the region of interest in the sequence of ultrasound images.
[0081] In this way, the position of the M-mode line reflects only fetal motion, and not motion due to heartbeat.Similarly, M-mode images obtained using the M-mode line (as described below) reflect only motion due to heartbeat, and are not affected by the changing position of the fetus itself.
[0082] Thus, step 320 effectively involves determining, for each M-mode line, the placement of the M-mode line on each ultrasound image according to the region of interest of the respective ultrasound image.
[0083] FIG. 4 conceptually illustrates one embodiment of step 330.
[0084] 4 shows an ultrasound image 400 in which the fetal heart is included in a region of interest 410. Multiple M-mode lines 421, 422, 423 are positioned to intersect the region of interest.
[0085] 3, the method 300 also includes generating M-mode data for each M-mode line at step 340. Techniques for generating M-mode data for positioned M-mode lines are well known in the art and will not be described here solely for the sake of brevity.
[0086] M-mode data includes, for example, temporal echo data of an M-mode line, or an M-mode image where one axis represents position along the line and the other axis represents time (the intensity of each pixel in the image represents the intensity of the echo response).
[0087] In general, M-mode data includes time motion data of a sequence of ultrasound images along a selected ultrasound line. It provides a single dimensional view of the subject along the time axis. One advantage of M-mode data is that it can have a very high sampling rate, which provides high temporal resolution and allows even very fast motion to be recorded, displayed, and measured.
[0088] In some embodiments, M-mode data can be generated using a portion of each ultrasound image that is beneath an M-mode line located in the sequence of ultrasound images, and step 330 thus includes, for each M-mode line, generating M-mode data by processing the portion of each ultrasound image in which the M-mode line is located.
[0089] The method 300 further includes a step 350 of determining an M-mode line quality measure for each M-mode line by processing the M-mode data.
[0090] Various forms of quality measures are contemplated within the scope of this disclosure, such as statistical parameters. The quality measure may be, for example, a numeric, binary, or categorical measure indicating how closely a characteristic of the M-mode data (for a particular M-mode line) meets a predefined or desired characteristic. It should be understood that the quality measure represents the quality of the M-mode data and / or characteristics derivable therefrom, i.e., a quality measure indicating how accurate or "close to the truth" the M-mode data or characteristics derivable therefrom are.
[0091] The quality measure may represent, for example, the quality of a waveform representing a fetal heart rate that is derivable from the M-mode data. Thus, the quality measure may represent the quality or accuracy of collection of fetal cardiac characteristics (such as fetal heart rate) that are derivable from the M-mode data.
[0092] In one example, the M-mode data is processed to identify periodic signals or pulsatile motion in the M-mode data. This motion can be assumed to represent the fetal heart rate (as this is the largest contributor to the periodic signal in the M-mode data obtained from the M-mode line passing through the region of interest). In particular, this motion represents movement of a portion of the fetal heart. The movement of the fetal heart represents the fetal heart rate.
[0093] The M-mode data can be used to track changes in position of specific portions of the fetal heart to generate a waveform (a "cardiac waveform") consistent with the heart's beating cycle. The cardiac waveform can be processed to generate a quality measure of the M-mode line associated with the M-mode data.
[0094] As an example, the quality measure may be derived from or correspond to the standard deviation and / or average of the distance (i.e., time) between two consecutive peaks of the cardiac waveform, thereby providing a measure of the integrity of the generated cardiac waveform and directly representing the quality of the derived fetal heart rate.
[0095] As another example, another quality measure is derived from or corresponds to the standard deviation and / or average of the cardiac waveform amplitude. The amplitude is the difference between the maximum and the adjacent minimum of the cardiac waveform. Variations in amplitude may indicate that the M-mode line is not positioned correctly (e.g., not covering the same region of the fetal heart across the sequence of images).
[0096] These two example quality measures can be combined to generate quality measures according to other embodiments, for example using a weighted sum, weighted multiplication, etc.
[0097] The assumption is that low variation (in the distance between peaks or in amplitude) means that the signal is stable, which means it is reliable and of high quality.
[0098] Yet another example of a quality measure is a measure of the noise in the M-mode data (e.g. a measure of white noise). Techniques for assessing the level or measure of noise in data are well established in the prior art.
[0099] Next, the method 300 includes a step 360 of ranking the plurality of M-mode lines based on the determined quality measure for each M-mode line.
[0100] Steps 340, 350 and 360 are performed by a quality assessment unit of the processing system.
[0101] The method 300 may include a step 305 of performing an ultrasound scan to generate a sequence of ultrasound images. This step is not required and may be omitted, for example, if the sequence of ultrasound images is already present in a memory or storage unit.
[0102] The method 300 may further include displaying 365 a rank for each of the plurality of M mode lines, which may include controlling a user interface to provide a visual representation of the rank for each of the plurality of M mode lines.
[0103] In some examples, the method 300 further includes receiving 370 a user selection of one or more of the M-mode lines, e.g., via user input provided at an input interface. In response to receiving the user selection, the method displays M-mode data generated for the selected M-mode lines and / or fetal cardiac characteristics derived from the M-mode data (e.g., fetal heart rate) at step 375. This may include controlling a user interface to provide a visual representation of the M-mode data and / or the derived characteristics.
[0104] Examples of fetal cardiac characteristics include fetal heart rate, heart rate variability, heart rate stability, cardiac motion amplitude, average PQ interval, etc. If desired for display, in step 380, the M-mode data of the selected M-mode line is processed to generate fetal cardiac characteristics.
[0105] In some examples, the method 300 may include displaying 380 the M-mode data and / or one or more fetal cardiac characteristics derived therefrom generated for the M-mode line having the highest rank, which may include controlling a user interface to provide a visual representation of the M-mode data and / or one or more fetal cardiac characteristics derived therefrom.
[0106] Examples of fetal cardiac characteristics include fetal heart rate, heart rate variability, heart rate stability, cardiac motion amplitude, mean PQ interval, etc. If desired for display, in step 380, the M-mode data of the M-mode lines are processed to generate fetal cardiac characteristics.
[0107] A user selection of another M-mode line (eg, in step 370) causes the display of the M-mode data of the M-mode line having the highest rank, and / or one or more fetal heart characteristics derived therefrom, to cease.
[0108] In some embodiments, the M-mode line is an anatomical M-mode (AAM) line. An anatomical m-mode line differs from a conventional or regular m-mode line in that both the start and end positions of the anatomical m-mode line can be freely selected. For a regular or regular m-mode line, the start position, i.e. the origin, is fixed (as shown in FIG. 4). The proposed approach facilitates the automatic placement of an anatomical m-mode line (or multiple lines) on a sequence of ultrasound images.
[0109] Thus, the identification of the region of interest can be used to improve the temporal resolution of the anatomical M-mode lines by constraining or defining the location of the anatomical M-mode lines based on the region of interest.
[0110] In certain embodiments, the anatomical m-mode lines are positioned to be bounded by the region of interest, reducing the effective computational area for generating the anatomical m-mode data, thereby improving the temporal resolution of the anatomical m-mode data. In yet other embodiments, the start and / or end positions of each anatomical m-mode line are within a predetermined distance of the region of interest. In yet other embodiments, the anatomical m-mode lines are positioned to pass through the region of interest (e.g., without necessarily being bounded by the region of interest).
[0111] In some embodiments, each of the multiple anatomical m-mode lines is positioned to pass through a central portion of the region of interest, but at a different orientation relative to the region of interest.
[0112] In some embodiments, each of the multiple anatomical m-mode lines is positioned to pass through a sub-region (such as a center or centroid) of the region of interest. Conceptually dividing the region of interest into multiple sub-regions is described above. The AAM line is positioned relative to the particular sub-region.
[0113] In certain embodiments, there are one or more sets of one or more AAM lines, where each set of AAM lines passes through a different sub-region of the region of interest (e.g., a central (most) portion of the region). For example, there are two or more sets of one or more AAM lines, e.g., one set of AAM lines in each sub-region of the region of interest. In some embodiments, at least one set of AAM lines (e.g., at least two sets, or each set) includes at least two AAM lines.
[0114] In some embodiments, at least one set of AAM lines includes a plurality of AAM lines, where each AAM line in the set is positioned at a different predetermined orientation with respect to the corresponding sub-region. The orientations of the AAM lines may be evenly distributed with respect to each other, e.g., such that the angular difference between an AAM line and a nearest AAM line is fixed. Thus, the angular resolution of the set of AAM lines is fixed.
[0115] The angular resolution, the number of AAM lines, the number of sets of AAM lines, and the number of AAM lines in each set of AAM lines may be predetermined and / or responsive to user input.
[0116] It will be appreciated that the AAM lines may be arranged into AAM line pairs, and thus, in some embodiments, ranking the M-mode lines includes ranking AAM line pairs.
[0117] 5 is a flow chart illustrating a (computer-implemented) method 500 according to one embodiment. Method 500 is performed by a processing system (such as processing system 16 of FIG. 1) that performs all steps of method 500. Method 500 describes several techniques for overcoming or avoiding motion artifacts in ultrasound images and / or M-mode data.
[0118] The method 500 includes performing the method 300 described with reference to FIG.
[0119] The method 500 also includes acquiring 510 movement data corresponding to a movement of the position of the fetus in the sequence of ultrasound images.
[0120] Movement data includes, for example, sensor data obtained from the probe (or a sensor attached thereto) corresponding to movement of the ultrasound probe (and thus movement of the fetus in a sequence of ultrasound images).
[0121] In some examples, the movement data includes tracked movement of the position of the region of interest (e.g., coordinates of a bounding box defining the position of the ROI in each ultrasound image) between different ultrasound images in the sequence of ultrasound images.
[0122] In step 520, the motion data is used to correct motion artifacts in the M-mode data (e.g., for each M-mode data generated, or, to save processing power, only for the M-mode data of selected and / or highest ranked M-mode lines).
[0123] In some embodiments, clinician guidance is generated (and preferably displayed) based on the movement data, for example to guide the user to return the ultrasound probe to its original position.
[0124] Changes in motion have a particularly large impact on fetal heart rate detection: especially early in fetal development, the size of the fetal heart (in an ultrasound image) is so small that any motion significantly impacts the ease and efficiency of locating the fetal heart.
[0125] Having described embodiments of how to generate M-mode data for each of a plurality of M-mode lines, a method is also proposed herein for generating M-mode data for one or more M-mode lines located in a sequence of ultrasound images, the method including the steps of acquiring a sequence of ultrasound images, each ultrasound image including a representation of a portion of a fetus including the fetal heart, identifying for each ultrasound image a region of interest including the representation of the fetal heart, determining for each of the one or more M-mode lines a placement of the M-mode line on each ultrasound image according to the region of interest of the corresponding ultrasound image, and generating M-mode data by processing the portion of each ultrasound image in which the M-mode line is located.
[0126] Thus, because the location of the M-mode lines in any given ultrasound image depends on the location of the region of interest in that ultrasound image, the location of the M-mode lines will effectively track the region of interest as it moves between different ultrasound images, thereby providing M-mode data that at least partially compensates for movement of the representation of the fetus in the sequence of ultrasound images (e.g., caused by movement of the fetus, the pregnant woman, or the ultrasound device that captured the ultrasound images).
[0127] The proposed methodology facilitates rapid acquisition of adequate / accurate M-mode data for assessment of fetal cardiac activity, thereby effectively reducing fetal ultrasound exposure, which has been identified as a desirable attribute of fetal medical testing to reduce risk.
[0128] In the proposed technique, the location of an M-mode line on an ultrasound image is largely independent of the location of the same M-mode line on another ultrasound image (i.e., the location is calculated separately for each ultrasound image).
[0129] The techniques may be embodied as a method, a computer program product, a (non-transitory) computer-readable medium, and / or a processing system.
[0130] As a further example, Figure 6 illustrates an example of a processing system 60 in which one or more portions of the embodiments may be used. Processing system 60 provides one example of the processing system 16 described with reference to Figure 1.
[0131] The various operations described above utilize the functionality of the processing system 60. For example, one or more portions of the system for generating M-mode data or ranking M-mode lines may be incorporated into any of the elements, modules, applications, and / or components described herein. In this regard, it should be understood that the functional blocks of the system may operate on a single computer or may be distributed across several computers and locations (e.g., connected via the Internet).
[0132] The processing system 60 may include, but is not limited to, a PC, a workstation, a laptop, a PDA, a palm device, a server, storage, etc. In general, with respect to a hardware architecture, the processing system 60 includes one or more processors 61, a memory 62, and one or more I / O devices 67 communicatively coupled via a local interface (not shown). The local interface may be, for example, but not limited to, one or more buses or other wired or wireless connections as known in the art. The local interface may have controllers, buffers (caches), drivers, repeaters, and receivers to enable communication. Additionally, the local interface may include address, control, and / or data connections to enable appropriate communication between the aforementioned components.
[0133] Processor 61 is a hardware device that executes software that may be stored in memory 62. Processor 61 may be virtually any custom or commercially available processor, central processing unit (CPU), digital signal processor (DSP), or coprocessor of multiple processors associated with processing system 60, and processor 61 may be a semiconductor-based microprocessor (in the form of a microchip) or microprocessor.
[0134] The memory 62 may include any one or combination of volatile memory elements (e.g., random access memory (RAM), such as dynamic random access memory (DRAM), static random access memory (SRAM), etc.) and non-volatile memory elements (e.g., ROM, erasable programmable read only memory (EPROM), electronically erasable programmable read only memory (EEPROM), programmable read only memory (PROM), tape, compact disk read only memory (CD-ROM), disk, diskette, cartridge, cassette, etc.). Further, the memory 62 may incorporate electronic, magnetic, optical, and / or other types of storage media. It is noted that the memory 62 may have a distributed architecture in which various components are remote from one another but accessible by the processor 61.
[0135] The software in memory 62 may include one or more separate programs, each including an ordered list of executable instructions for implementing logical functions. The software in memory 62 includes a suitable operating system (O / S) 65, a compiler 64, source code 63, and one or more applications 66, according to an exemplary embodiment. As shown, the applications 66 include a number of functional components for implementing the features and operations of the exemplary embodiments. The applications 66 of the processing system 60 may represent various applications, computational units, logic, functional units, processes, operations, virtual entities, and / or modules, according to an exemplary embodiment, although the applications 66 are not intended to be limiting.
[0136] Operating system 65 controls the execution of other computer programs and provides scheduling, input / output control, file and data management, memory management, and communication control and related services. The inventors contemplate that application 66 for implementing the exemplary embodiment is applicable to any commercially available operating system.
[0137] The application 66 may be a source program, an executable program (object code), a script, or any other entity that includes a set of instructions to be executed. In the case of a source program, the program is typically translated via a compiler (such as compiler 64), assembler, interpreter, etc., which may or may not be contained in memory 62, so that it operates properly in conjunction with the O / S 65. Additionally, the application 66 may be written as an object-oriented programming language with classes of data and methods, or a procedural programming language with routines, subroutines, and / or functions (e.g., but not limited to, C, C++, C#, Pascal, BASIC, API calls, HTML, XHTML, XML, ASP script, JavaScript, FORTRAN, COBOL, Perl, Java, ADA, .NET, etc.).
[0138] The I / O devices 67 include input devices such as, but not limited to, a mouse, keyboard, scanner, microphone, camera, etc. The I / O devices 67 also include output devices such as, but not limited to, a printer, display, etc. Finally, the I / O devices 67 also include devices that communicate both input and output such as, but not limited to, a NIC or modulator / demodulator (for accessing remote devices, other files, devices, systems, or networks), radio frequency (RF) or other transceivers, telephone interfaces, bridges, routers, etc. The I / O devices 67 also include components for communicating over various networks such as the Internet or an intranet.
[0139] If processing system 60 is a PC, workstation, intelligent device, etc., the software in memory 62 may further include a Basic Input / Output System (BIOS) (omitted for simplicity). The BIOS is a set of essential software routines that initializes and tests the hardware at power-up, starts O / S 65, and supports data transfers between hardware devices. The BIOS is stored in some type of read-only memory, such as ROM, PROM, EPROM, EEPROM, etc., so that it is executed when processing system 60 is powered up.
[0140] During operation of processing system 60, processor 61 executes software stored in memory 62, transfers data to and from memory 62, and generally controls the operation of processing system 60 in accordance with the software. Applications 66 and O / S 65, in whole or in part, are read by processor 61 and, in some cases, buffered within processor 61 before being executed.
[0141] It should be noted that if the application 66 is implemented in software, the application 66 may be stored on substantially any (e.g., non-transitory) computer-readable medium for use with or in connection with any computer-related system or method. In the context of this document, a computer-readable medium may be an electronic, magnetic, optical, or other physical device or means that can store or be stored with a computer program for use with or in connection with a computer-related system or method.
[0142] The application 66 may be embodied in any computer-readable medium for use with or in connection with an instruction execution system, apparatus, or device (such as a computer-based system, processor-based system, or other system that can fetch instructions from and execute instructions from an instruction execution system, apparatus, or device). In the context of this document, a "computer-readable medium" may be any means that can store, communicate, propagate, or transfer a program for use with or in connection with an instruction execution system, apparatus, or device. Computer-readable media include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, devices, or propagation media.
[0143] 7 illustrates an ultrasound system 700 according to one embodiment. The ultrasound system 700 includes a processing system 710, which is itself an embodiment of the present invention. The ultrasound system 700 can be considered a generalized version of the ultrasound system 100 described with reference to FIG.
[0144] The processing system 710 may perform any of the methods described herein and is an example of the processing system 16 described with reference to FIG. 1 or the processing system 60 described with reference to FIG.
[0145] Thus, the processing system performs the steps of acquiring a sequence of ultrasound images, each ultrasound image including a representation of a portion of the fetus including the fetal heart, identifying in each ultrasound image in the sequence of images a region of interest including a representation of the fetal heart, positioning a plurality of M-mode lines relative to the sequence of ultrasound images based on the identified region of interest, generating, for each of the plurality of M-mode lines, M-mode data for the M-mode line, determining a quality measure for the M-mode line by processing the generated M-mode data for each of the plurality of M-mode lines, and ranking the plurality of M-mode lines based on the determined quality measure for each M-mode line.
[0146] The processing system may be embodied as the processing system 600 described with reference to FIG.
[0147] The sequence of ultrasound images may be acquired from the ultrasound imaging device 721 and / or memory 722. The rank of each of the plurality of M-mode lines may be displayed on a user interface of the ultrasound system 100, for example, through appropriate control of the user interface by the processing system 710.
[0148] In some examples, motion data is acquired by the processing system (e.g., from an optional position sensor of the ultrasound system) and can be used to compensate for motion artifacts in M-mode data generated by the processing system and / or to provide guidance (e.g., in a user interface) for reducing motion artifacts in ultrasound images.
[0149] Those skilled in the art will be able to readily develop a processing system to perform the methods described herein, and each step of the flowchart thus represents a different action performed by the processing system and may be executed by a corresponding module of the processing system.
[0150] Thus, the embodiments employ a processing system. The processing system can be implemented in various ways using software and / or hardware to perform the various functions required. The processor is one example of a processing system that employs one or more microprocessors that are programmed using software (e.g., microcode) to perform the required functions. However, the processing system may be implemented without regard to the employment of a processor, and may be implemented as a combination of dedicated hardware to perform some functions and processors (e.g., one or more programmed microprocessors and associated circuitry) to perform other functions.
[0151] Examples of processing system components that may be employed in various embodiments of the present disclosure include, but are not limited to, conventional microprocessors, application specific integrated circuits (ASICs), and field programmable gate arrays (FPGAs).
[0152] In various implementations, a processor or processing system may be associated with one or more storage media, such as volatile and non-volatile computer memory, such as RAM, PROM, EPROM, and EEPROM. The storage media may be encoded with one or more programs that, when executed on the one or more processors and / or processing systems, perform the necessary functions. The various storage media may be fixed within the processor or processing system or may be transportable such that one or more programs stored thereon may be loaded into the processor.
[0153] It will be understood that the disclosed methods are preferably computer-implemented methods. Therefore, the concept of a computer program is also proposed, which includes code means for carrying out any of the described methods when executed on a processing system such as a computer. Thus, different parts, lines or blocks of code of a computer program according to an embodiment may be executed by a processing system or a computer to carry out any of the methods described herein. In some alternative implementations, the functions shown in the block diagrams or flow charts may occur out of the order shown in the figures. For example, two blocks shown in succession may in fact be executed substantially simultaneously, or the blocks may be executed in the reverse order depending on the functionality involved.
[0154] Variations of the disclosed embodiments can be understood and effected by those skilled in the art in implementing the claimed invention, from a study of the drawings, the disclosure and the appended claims. In the claims, the word "comprising" does not exclude other elements or steps, and the singular elements do not exclude a plurality. A single processor or other unit may fulfill the functions of several items recited in the claims. The mere fact that certain means are recited in mutually different dependent claims does not indicate that a combination of these means cannot be used to advantage. In the case where a computer program is described above, it can be stored / distributed on any suitable (non-transitory) medium, such as an optical storage medium or a solid-state medium, provided together with or as part of other hardware, but can also be distributed in other forms, such as via the Internet or other wired or wireless communication systems. It should be noted that when the term "adapted to" is used in the claims or description, the term "adapted to" is intended to be equivalent to the term "configured to". Any reference signs in the claims should not be interpreted as limiting the scope.
Claims
1. 1. A processing system for generating M-mode data by processing a sequence of ultrasound images, the processing system comprising: acquiring the sequence of ultrasound images, each ultrasound image including a representation of at least a portion of the fetus including a fetal heart; identifying, in the sequence of ultrasound images, a region of interest including a representation of the fetal heart in each ultrasound image, the region of interest including automatically detecting a first region of interest including the representation of the fetus in each ultrasound image, and automatically identifying, within the first region of interest, a second region of interest including the representation of the fetal heart; positioning a plurality of M-mode lines relative to the sequence of ultrasound images based on the identified region of interest; For each of the plurality of M-mode lines, generating M-mode data for the M-mode line; determining a quality measure of the M-mode lines by processing the generated M-mode data; ranking the plurality of M-mode lines based on the determined quality measure of each M-mode line; and controlling a user interface to display a visual representation of the ranking of the plurality of M-mode lines. A processing system that executes the
2. 2. The processing system of claim 1, wherein identifying the first region of interest comprises applying a first machine learning method to the ultrasound image, and identifying the second region of interest comprises applying a second machine learning method to the first region of interest.
3. The processing system of claim 1 , wherein positioning the plurality of M-mode lines comprises positioning each M-mode line to pass through the region of interest.
4. The processing system of claim 1 , wherein at least two of the plurality of M-mode lines are positioned at different orientations relative to the region of interest of the ultrasound images with respect to the sequence of ultrasound images.
5. The processing system of claim 1 , wherein each M-mode line is positioned to pass through a different portion of the region of interest with respect to the sequence of ultrasound images.
6. The processing system of claim 1 , wherein each M-mode line is an anatomical M-mode line.
7. The processing system of claim 6 , wherein a start and / or end position of each anatomical M-mode line is based on a position of the region of interest.
8. receiving a user input including an indicator identifying one of the plurality of M-mode lines; controlling the user interface to display the M-mode data of the user-specified M-mode line and / or a visual representation of one or more characteristics of the fetal heart derived from the M-mode data of the user-specified M-mode line; The processing system of claim 1 , further comprising:
9. The processing system of claim 8 , wherein the one or more characteristics of the fetal heart include a predicted fetal heart rate.
10. 10. The processing system of claim 1, further comprising: controlling a user interface to display a visual representation of the M-mode data of the M-mode line having the highest rank and / or one or more characteristics of the fetal heart derived from the M-mode data of the M-mode line having the highest rank.
11. The processing system of claim 1 , further comprising: determining any movement of the region of interest in the sequence of ultrasound images by determining a position of the first region of interest and / or a position of the second region of interest in the sequence of ultrasound images.
12. The processing system of claim 11 , further comprising: controlling each M-mode line to track any movement of the region of interest in the sequence of ultrasound images.
13. 1. A computer-implemented method for generating M-mode data from a sequence of ultrasound images, the computer-implemented method comprising: acquiring the sequence of ultrasound images, each ultrasound image including a representation of at least a portion of the fetus including the fetal heart; identifying, in the sequence of ultrasound images, a region of interest including a representation of the fetal heart in each ultrasound image, the region of interest including automatically detecting a first region of interest including a representation of the fetus in each ultrasound image, and automatically identifying, within the first region of interest, a second region of interest including the representation of the fetal heart; positioning a plurality of M-mode lines in the sequence of ultrasound images based on the identified region of interest; For each of the plurality of M-mode lines, generating M-mode data by processing the portion of each ultrasound image in which the M-mode lines are located; determining a quality measure of the M-mode lines by processing the generated M-mode data; ranking the M-mode lines based on the determined quality measure of each M-mode line; and displaying a visual representation of the ranking of the M-mode lines on a user interface.
20. A computer-implemented method comprising:
14. 14. A non-transitory computer-readable medium containing computer program code that, when executed on a computing device having a processing system, causes the processing system to perform all of the steps of the computer-implemented method of claim 13.