This invention relates to the general field of instruments that visualize and record digital data, more specifically related to ultrasonoscope instruments for visualizing and recording backscatter data acquired from ultrasound systems, and more specifically related to a type of ultrasound system known in the art as an a-scan system that produces one time-series vector of backscatter amplitude data from each pulse of an a-scan single-element probe.
An a-scan ultrasonoscope has an a-scan ultrasound probe that is typically stationary with respect to a material being investigated. The probe generates a pulse of ultrasonic energy into the material and scattered and reflected waveform energy is received back. Each sampled backscatter amplitude value indicates the relative difference in acoustic impedance detected at some structural boundary within the material. A-scan ultrasonoscopes do not produce images of the materials they investigate, nor images of internal material structures. A-scan ultrasonoscopes in the prior art typically produce only two-dimensional Cartesian graphs of time-amplitude data.
Until the present invention, visualization of a-scan backscatter data has been limited to displays of analog signal traces on an oscilloscope or to displays of raster-based scatter plots of backscatter amplitude values versus sampling time. As a result, users of a-scan ultrasound systems in the art cannot make use of more advanced multi-dimensional and multi-parameter data visualization techniques generally known in the art to assist such users in making more timely and more accurate diagnostic inferences and classification inferences from a-scan backscatter data. In addition, automated inference systems, such as deep learning artificial neural networks and neuro-Bayesian reasoning systems generally known in the art, cannot directly use a-scan backscatter data for investigatory material classification.
To-date, no complete solution exists to these problems. Several US Patents and some non-patent literature suggest piece-wise art that could be further developed and integrated into an improved a-scan ultrasonoscope.
U.S. Pat. No. 4,156,304 provides a baseline for a-scan ultrasonoscopes as they existed in the art in the year 1976. U.S. Pat. No. 4,230,124 teaches a method of generating colored dots in a raster image of displayed data. U.S. Pat. No. 4,233,989 teaches a method of quantifying A-wave data for use in medical diagnosis. U.S. Pat. No. 4,745,475 teaches a method of converting between Polar and Cartesian representations of raster data. U.S. Pat. No. 5,601,082 teaches a method of subtracting one raster data plot from another to produce a difference plot. U.S. Pat. No. 5,765,029 teaches a method of embedding audio information in a raster plot. U.S. Pat. No. 6,056,690 teaches a method of preparing quantitative evidence from input data for use in Bayesian inference. U.S. Pat. No. 6,301,512 teaches a method of concurrently displaying multiple data graphs from multiple data sources. U.S. Pat. No. 6,687,383 teaches a method of displaying embedded audio in raster image data arrays; U.S. Pat. No. 6,928,181 teaches a method of comparing investigatory data to a reference data array obtained from a control material. U.S. Pat. No. 7,472,598 teaches a method of using time-amplitude graphs of ultrasound backscatter data for non-destructive testing. U.S. Pat. No. 7,478,569 teaches a method of presenting a-scan data formatted in multiple formats. U.S. Pat. No. 7,516,022 teaches a method of feeding a-scan backscatter data into an artificial neural network for machine learning and for data analysis. U.S. Pat. No. 7,917,317 teaches a method of pruning ultrasound backscatter samples through the use of timegates.
The book, “Computers, Patterns, Chaos and Beauty”, by Clifford Pickover, published by St. Martin's Press, New York, September 1991, pages 37-45 contains a method for creating a single visual symmetrized dot pattern scatter plot from a vector of acoustic data. The present invention extends the Pickover method by disclosing an improved method for creating a plurality of symmetrized dot pattern scatter plots from a plurality of vectors of a-scan utrasound backscatter data.
US Patent application 20140039311 teaches a method for transforming and using pruned a-scan waveform data in various vector formats for generating time-amplitude echographs as an aid in heuristic medical diagnosis of palpable breast lumps.
One object of the present invention is to integrate the various relevant teachings into a complete working improved a-scan ultrasonoscope. Another object is to improve the content and acuity of visual images of a-scan data displayed by an improves a-scan ultrasonoscope, and thereby improve the speed and accuracy of interpreting a-scan data by an a-scan ultrasonoscope operator. Another object of the present invention is to improve the speed and accuracy of interpreting a-scan data by automated reasoning methods executing in at least one processor interfaced with the invention. Yet another object of the present invention is to ensure ease of use by an operator. The disclosed invention requires no computer software programming or any other specialized computer skills on the part of an operator in order to use the present invention effectively and to enjoy the benefits of its computation and presentation models.
The disclosed invention is a computer-implemented method for constructing, recording, displaying and exporting a plurality of multi-parameter two-dimensional buffered image data arrays in a plurality of visual presentation formats constructed from one-dimensional single-parameter ultrasonic time-amplitude a-scan backscatter data, whereby quantitative relationships in a-scan backscatter data that are indicative of material identity may be more easily detected by visual analysis and more easily detected by automated inference methods.
The invention will be described in conjunction with the accompanying drawings, in which:
For the purposes of the present invention, it is advantageous to first define several terms before describing the invention. It should be appreciated that the following definitions are used throughout this application. Where the definition of terms departs from the commonly used meaning of the term, applicant intends to utilize the definitions provided below, unless specifically indicated.
The term a-scan as used herein is intended to mean a type of ultrasound system that produces a finite element data vector, known as an a-line, comprised of one-dimensional digital recordings of sampled backscatter amplitude values versus sample time;
The term SDP difference plot as used herein is intended to mean an SDP graph in which a dot is plotted at raster coordinates (x, y) only when there is a corresponding dot plotted at the same (x,y) coordinates in an investigatory SDP buffered image data array and also only when there is a corresponding dot plotted at the same (x,y) coordinates in a control SDP buffered image data array. A plotted dot in a difference SDP graph is intended to indicate evidence of pixel-based similarity between an investigatory material SDP graph and a control material SDP graph.
The terms backscatter data and echo data as used herein are intended to be inclusive terms, each meaning a digital representation of the totality of both scattered and reflected returning waveform energy measured in terms of relative amplitude values sampled at evenly spaced time intervals;
The terms graphic image and data graph as used herein are intended to mean a raster-based graph visually representing quantitative relationships in an array of data objects. Digital graphic images and data graphs are stored as digital files, also called buffered image data arrays, which are retrieved and displayed on a digital display device or printed on a printing device or exported on computer-readable media;
The term image as used herein is intended to mean a two-dimensional raster-type visual image produced from data that are stored in raster form, which data are sometimes called a bitmap or a buffered image data array;
The term logarithmic regression graph as used herein is intended to mean a one-dimensional x-y scatter plot of time increments along the x axis (abscissa) and a logarithmic attenuation value plotted as a dot for each time tick along the x axis. The plotted attenuation value is calculated as [y(x)=a+b*In(x)]. The attenuation parameters (a) and (b) may be calculated using a minimum-error best-fit method applied to logarithmic signal attenuation decay from maximum amplitude value at x(0) to minimum amplitude value at x(max).
The term symmetric dot pattern graph as used herein is intended to mean a polar coordinate graph created from pairs of a-scan ultrasonic backscatter data vectors, according to a method modified herein from a method known in the art for acoustic waveforms.
The term time amplitude graph as used herein is intended to mean a one-dimensional x-y scatter plot of time increments along the x axis (abscissa) and sampled backscatter amplitude values along the y axis (ordinate).
The term time-amplitude graph with logarithmic regression as used herein is intended to mean a consolidation of a time-amplitude buffered image data array with a logarithmic regression buffered image data array, where the consolidated image data array is plotted as a single scatter plot;
A single-board computer (024) and operating system such as Linux (not shown) is installed within the enclosure and is used for executing logic and control instructions specific to the present invention. The single-board computer is comprised of a single circuit board that includes at least one processor (025), ROM, RAM, a networking interface, a plurality of serial I/O interfaces, a parallel digital display interface, a microprocessor operating system with common device drivers, and a connection to a power source, all known in the art. Alternatively, the single-board computer may be implemented as a custom designed application specific integrated circuit (ASIC), or may be implemented as a shared digital processor in a network-based processing server.
The raster type visual display device is mounted within the aperture within the enclosure and connected to the single-board computer. The visual display device includes common touch, pointing, and gesture capabilities. Alternatively, the visual display device may be installed as a peripheral component of the present invention and connected to the instrument enclosure through a parallel data connector (048). Alternatively, the visual display device could be implemented as a window on a computer connected to the present invention through a data network connection (080). Alternatively, the user touch, pointing and gesture capabilities could be replaced by a common pointing device, such as a “mouse”, connected to one of a plurality of serial connectors (040). A plurality of serial data connectors (040) are attached to the single-board computer through apertures (not shown) in the enclosure.
A digital ultrasound probe (050) may be attached to a serial connector as a peripheral component of the present invention for the purpose of acquiring a-scan data in real-time as those data are produced by the probe. Probe-specific device drivers (not shown) must also be installed in the single-board computer for the purpose of providing bi-directional commands and data transfer between the probe and the single-board computer.
A data network connector (080) is attached to the single-board computer through an aperture in the enclosure. The network connector is used to send and receive data across a local or remote data network.
A plurality of digital media slots (062) for removable non-transitory computer-readable media are attached to-the single-board computer for the purpose of accepting the insertion and removal of computer-readable media. A digital recording device (074), such as a hard disk drive or a solid state drive, is also included for persistent storage of data.
When an optional ultrasound probe is connected to the present invention and is actively streaming data to the single-board computer, the single-board computer is programmed by means of logic and control instructions to respond to an operator command entered through a user interface (400) that will command the single-board computer to make a digital recording of the operator-selected a-line echo data received from the probe.
Continuing with
A waveform data vector (106) is an input data file (104) that has been transformed into a finite element data vector comprised of normal RF waveform formatted amplitude values as a function of elapsed time since an originating pulse of ultrasound energy.
An envelope data vector (108) is a finite-element fixed-length one-dimensional array consisting of an approximate Hilbert envelope delineating the upper side band values of a waveform data array (106). Methods for implementing approximate Hilbert envelopes are known in the art.
A filtered envelope vector (112) is an envelope vector that has been transformed by an FIR filter to reduce unimportant variations in signal data. Methods for implementing an FIR filter are known in the art.
The waveform data vector, the envelope data vector, and the filtered envelope vector are saved into a global working memory area within the computer, thereby making such data vectors available to various steps within the computer-implemented method of the present invention.
With reference to the configuration settings data object (102) (See table 1), a formatted buffered image data array (114) is constructed from either the waveform data vector, or the envelope data vector, or the filtered envelope vector. A buffered image data array (114) is an array of data that represent a displayable image as a rectangular array of pixels. Buffered image arrays may be sent to the digital recording device (074), or to the network connector (080), or to a printer (not shown), or to the visual display device (030). Digital recordings of buffered image data arrays and printed images of buffered image data arrays may be sent to automated inference systems interfaced with the present invention.
Referring to
Referring to
(a) with reference to the configuration settings data object (102), initializing program data variables used by various steps in the disclosed computer-implemented method, including program data variables for containing a selected a-scan backscatter data vector, a first pruning index value for pruning an a-scan backscatter data vector by means of excluding from further processing all echo data samples with sample numbers beginning from the first sample in the vector to the selected first pruning number, a second scalar pruning number for pruning an a-scan backscatter data vector by means of excluding from further processing all data echo samples from the second pruning number to the last sample in the backscatter data vector, a scalar number of data points in a pruned a-scan backscatter data vector between the first pruning index value and the second pruning index value, a scalar number of SDP plot sectors which is typically 6, a scalar number for a symmetry angle of the SDP plot which is typically 60 degrees, the largest amplitude value in the a-scan backscatter vector, the smallest amplitude value in the a-scan backscatter vector, a scaling upper bound for amplitude values which is typically 60, the time lag between pairs of SDP points plotted which is typically one sample time interval, a first dot color to be assigned to a dot to be plotted in the SDP plot, and a second dot color to be assigned to a dot to be plotted in the SDP plot;
(b) for each data point in the backscatter vector, rescaling the backscatter data point amplitude value by setting the scaled backscatter data point=(unscaled backscatter data point−smallest backscatter data point value)*scaling-upper-bound/(largest backscatter data value−lowest backscatter data value);
(c) setting graphics output coordinates to polar coordinates;
(d) setting up polar coordinate axes for radius and theta, with radius ranging from −scaling_upper_bound to +scaling_upper_bound, and theta ranging from 0 to 360 degrees;
constructing a buffered SDP image data array from the rescaled a-scan backscatter data, by performing the steps of:
(e) looping through all data points in the pruned a-scan backscatter vector minus 1, if the next point in the pruned a-scan backscatter vector has an amplitude value that is larger than the amplitude value of the current point value, then setting the color of the dot equal to a first dot color, otherwise setting the dot color equal to a second dot color; and
(f) still within the main loop, for all symmetry angles from 0 to 360, plot dot at (radius=current waveform value, theta=angle+next waveform value), and plot dot at (radius=current waveform value, theta=angle−next waveform value).
(a) initializing method variables, including the selected a-scan backscatter data vector, a first scalar pruning index value for pruning an a-scan backscatter data vector by means of excluding from further processing all echo data samples with sample numbers beginning from the first sample in the vector to the selected first pruning number, a second scalar pruning index value for pruning an a-scan backscatter data vector by means of excluding from further processing all data echo samples from the second pruning number to the last sample in the backscatter data vector, a scalar number of points in a pruned a-scan backscatter vector between the first pruning index value and the second pruning index value, a first dot color for dots in a time-amplitude buffered image data array, and a second dot color for dots in a logarithmic regression buffered image data array;
(b) constructing a time-amplitude buffered image data array (321) by performing the steps of for all data points in the pruned a-scan backscatter data vector (305), plotting a dot at (time axis=sample number, amplitude axis=amplitude value at time=sample number) using the first dot color;
(c) for the set of all data points in the pruned backscatter vector calculating logarithmic regression coefficients a, and b;
(d) for all data points in the pruned a-scan backscatter data vector plotting a dot at time axis value=sample number, and amplitude axis value=a+b*In(sample_number) where a and b are logarithmic regression numbers for the set of all points in the pruned a-scan backscatter data vector, using the second dot color;
(e) showing both buffered image data arrays in one scatter plot in the GUI image panel, with the displayed graph points in the logarithmic regression data array overlaying the displayed graph points in the time-amplitude data array.
An exemplary manner for using an a-scan ultrasonoscope instrument with the present computer-implemented method installed and configured therein is as follows:
An operator first powers on the instrument and connects an ultrasound probe if desired. Then the operator configures the instrument by reviewing and possibly editing configuration settings values (102) displayed in the configuration settings panel (212) of the user interface (400). Some of the exemplary editable configuration settings are illustrated in Table 1.
Next, the operator uses the user interface (400) to command the presently disclosed computer-implemented method executing on a processor interfaced with the instrument to acquire input data and process them and record them and graph them into a selected graph format; and then send the graph data to a possible plurality of output media or devices in accordance with operator edited configuration settings (102).
Finally, the operator may repeat the process for another investigation.
Accordingly, the reader will see that the present invention advances the prior art by providing new data visualization capabilities to assist a-scan ultrasound clinicians, physicians, nurses, material scientists, and researchers to discover and identify and remember distinguishing characteristics and patterns in a-scan ultrasound echo data that are indicative of material classification or identity. The reader will also see that the present invention advances the prior art by providing computer readable formatted buffered image data arrays that may be visualized, printed, recorded and exported to assist automated inferencing methods to discover and identify and remember distinguishing characteristics and patterns in a-scan ultrasound echo data that are indicative of material identity.
It is anticipated therefore that both human users and automated systems will be enabled to make faster and more accurate inferences concerning classification of ultrasonically permeable materials scanned by a-scan ultrasound systems.
Although the description contains many specifications, these should not be construed as limiting the scope of the invention but as merely providing illustrations of some of the preferred embodiments and configurations of this invention. Thus the scope of the invention should be determined by the appended claims and their legal equivalents, rather than by the examples given.
The present application claims priority to the earlier filed provisional application having Ser. No. 62/312,918, and hereby incorporates subject matter of the provisional application in its entirety.