The invention relates to removing stripe noise artifacts from a digital image particularly in the context of digital radiography and especially x-ray imaging.
In digital radiography (DR), motors, switches and other electronic components introduce electromagnetic signals into the DR detector resulting in artifacts in the captured image. This problem is referred to as EMI (electromagnetic interference) and is particularly challenging in intensive care units where a lot of electrical equipment is close to the patient (e.g. LVADs, high-voltage generators, WiFi routers etc.). Sometimes the artifact occurs in a cluster of adjacent lines thus forming a wide stripe. In addition, unwanted movement of the detector as a result of mechanical impact or vibrations can also introduce stripes in the captured image. Stripes can be removed from the generated image using a stripe filter. However, the stripes can resemble clinical structures such as cables, bone edges, implants, catheters, and so on. It is difficult to remove such stripes without also losing potentially useful image information.
There is therefore a need for techniques to mitigate or remove stripe artifacts in digital radiography images while preserving as much useful image information as possible. This need is met by the subject-matter of the independent claims. Optional features are set forth by the dependent claims.
According to a first aspect, there is provided a method for removing stripe noise artifacts from a digital image. The method comprises receiving the digital image as an input image captured by a detector using a non-progressive readout mode in which a readout line order in the time domain differs from a detector line order in the spatial domain; re-sorting lines in the input image to correspond to their detector line order in the spatial domain, wherein the re-sorting causes a cluster of noise-affected lines which are adjacent in the input image to be dispersed in the re-sorted image; and applying a stripe filter to the re-sorted image to remove the stripe noise artifacts.
By “non-progressive readout” is meant that at least two adjacent lines in the pixel array of the detector are read out non-progressively, non-consecutively, and more preferably that no two lines which are adjacent in the spatial domain are read out consecutively in the time domain. The non-progressive scan may thus be referred to as a non-consecutive scan and may take the form of an interlaced or interline scan, for example.
With such a readout, perturbations caused by EMI or caused by time-dependent interferences (e.g. mechanical impact such as vibrations or shocks) are less likely to appear in consecutive lines in the re-sorted image, such that the artifact no longer resembles clinical structures and correction becomes easier. Conventionally, progressive readout modes are used in x-ray detectors and fluoroscopic systems in order to minimize image noise at critical mid-to-high spatial frequencies. The inventors have come to the counterintuitive recognition that using an interlaced readout mode shifts noise artifacts to higher spatial frequencies at which stripe filters or de-striping algorithms are more effective.
In that regard, the effect of the re-sorting in causing the cluster of noise-affected lines which are adjacent in the input image (in the time domain) to be dispersed in the re-sorted image (in the spatial domain), may be restated in that the re-sorting causes (for some noise frequencies) a spectral shift of stripe noise artifacts appearing in the input image from lower to higher spatial frequencies, or, in other words, the re-sorting causes an increase in the spatial frequency of (some) stripe noise artifacts. Stated another way, the combination of the non-progressive readout and the re-sorting effectively reduces the frequency at which the stripe noise is sampled to a sampling frequency that is less than (e.g. one half of, one quarter of, etc.) the line readout frequency, with the resulting noise aliasing causing the shift in spatial frequency of some stripe noise artifacts during re-sorting. The combination of the non-progressive readout and the re-sorting may be referred to as re-sampling. In this way, a wide stripe noise artifact in the cluster of adjacent noise-affected lines in the input image may become an intermittent narrow stripe noise artifact in the re-sorted image. The stripe noise is thus dispersed, its sparsity increased. Stated another way, at least one line of the cluster is separated from the rest. Preferably, all adjacent lines in the cluster are separated from one another after re-sorting. In any case, the result is to render the stripe noise artifact more suitable for removal by the stripe filter.
As mentioned, the non-progressive readout mode may comprise an interlaced readout mode comprising at least first and second consecutive readout cycles, wherein a respective group of lines is read out during each readout cycle. Groups in the context of the present disclosure may be non-overlapping. In particular, the interlaced readout mode may be a twofold interlaced readout mode, with odd-numbered lines being read out during one of the first and second readout cycles, and even-numbered lines being read out during the other of the first and second cycles. The lines in each group may be read out sequentially (e.g. in order of increasing detector line number) during the respective readout cycle. Non-sequential line read out orders are also possible within each group, as discussed further below.
Multifold interlaced readouts are also possible, as described further herein, such as twofold, threefold, fourfold, and sixfold interlaced readouts, in which the interlaced readout mode comprises more than two consecutive readout cycles, with each readout cycle being associated with a respective group of lines. Each readout cycle leads to the production of one field of the full image frame. In one example, either (i) the interlaced readout mode comprises a twofold interlaced readout and the re-sorting comprises a twofold re-sorting followed by a fourfold re-sorting, or (ii) the interlaced readout mode comprises a fourfold interlaced readout and the re-sorting comprises a fourfold re-sorting followed by a twofold re-sorting. Such an arrangement has a particularly advantageous effect on the spatial frequency of the stripe noise artifacts, as explained further below. A parallel implementation of the twofold and fourfold re-sorting may also be possible.
The order in which lines are read out from the detector as a whole or from a group of lines may be any non-progressive order which reduces the sampling frequency of stripe noise artifacts. For example, the non-progressive readout mode may operate to read out the lines from the detector as a whole, or from a said group, in a random line order.
The method may further comprise applying a stripe filter to the input image before the re-sorting, to generate an intermediate image, wherein the re-sorting is applied to the intermediate image to create the re-sorted image. In this step, high frequency patterns can be removed but low frequency patterns may remain. Thus proposed is a non-progressive (e.g. interlaced) readout in combination with a two-step de-striping algorithm: the first step being performed on the input image (in the readout line order) and the second on the re-sorted image (in the detector line order). Applying the stripe filter before the re-sorting may comprise generating a map identifying perturbed lines in the input image that are affected by stripe noise and lines that are unperturbed, wherein applying the stripe filter to the re-sorted image comprises modifying only the perturbed lines identified in the map. Applying the stripe filter to the re-sorted image may further comprise using the unperturbed lines identified in the map as reference lines to interpolate the perturbed lines affected by stripe noise. The interpolation may be implemented using a median filter kernel.
Applying the stripe filter may comprise applying a first one-dimensional median filter kernel in the column direction. Applying the stripe filter may further comprise subtracting the resulting filtered image from the original image. Applying the stripe filter may further comprise applying a second median filter kernel in the row direction, and subtracting the resulting stripe image from the original image.
By “re-sorting” is meant reordering, rearranging, e.g. de-interlacing/de-interlining/de-interleaving, the lines of pixels in the input image (which appear in the readout line order, i.e. the chronological order in which the lines were read out) such that they appear in the re-sorted image in the order in which the corresponding lines of pixels (i.e. array elements) appear in the pixel array of the detector in the spatial domain, i.e. in the detector line order.
By “readout” is meant a readout period in which individual lines are wholly or partially read out following an exposure period in which all lines are exposed to x-rays. A readout may also be referred to as a scan.
The method may be computer implemented, as described further below. Additionally or alternatively, the method may be performed by hardware, such as digital image processing circuitry or a digital image processor, e.g. that of the detector described herein, or any combination of software and hardware. The method may be performed by components internal to or external to the detector. In the latter case, the received digital image may be accompanied by metadata mapping the readout line order to the detector line order, or some other indication of said mapping may be provided or made available to the components performing the method. When the method is performed by the detector, the method may further comprise capturing the input image using the detector using the non-progressive readout mode.
According to a second aspect, there is provided a computing device comprising a processor configured to perform the method of the first aspect. The computing device may be the detector described herein.
According to a third aspect, there is provided a computer program product comprising instructions which, when executed by a computing device, enable/cause the computing device to carry out the method of the first aspect.
According to a fourth aspect, there is provided a computer-readable medium comprising instructions which, when executed by a computing device, enable/cause the computing device to carry out the method of the first aspect.
According to a further aspect, there is provided a method for removing stripe noise artifacts from a digital image, the method comprising receiving the digital image as an input image captured by a detector using multiple incomplete readouts, wherein each line is partly read out multiple times, optionally at random time points, the method further comprising averaging (or selecting median values from, or applying an outlier suppression method to) the resulting signal portions to obtain a noise-compensated image. A corresponding system is also provided.
The invention may include one or more aspects, examples, or features in isolation or combination whether or not specifically disclosed in that combination or in isolation.
Further aspects, examples, and features of the invention will become apparent from and be elucidated with reference to the embodiments described hereinafter.
A detailed description will now be given, by way of example only, with reference to the accompanying drawings, in which:
During a progressive (regular) readout, the line driver 104 consecutively addresses the lines of pixels 102 in the array, and in each step the signals of each line are passed to the column decoder 106 via the readout lines, such that the signals are read out line by line from the first line to the last line. The signals so read out are then passed to a digital image processor (not shown) configured to generate an image for display.
As shown in
Proposed herein are systems and methods of image acquisition and image processing that help to remove wide-stripe artifacts such as that shown in
One example of a simple de-striping algorithm that may be used according to the present disclosure includes apply a one-dimensional (column direction) small sized median filter kernel, and subtracting the median filtered image from the original image to obtain a pattern of high-frequency EMI stripes. A further optional stage includes applying another median filter with a larger kernel in the row direction to maintain lines which are smaller than the number of image columns, and subtracting this stripe image from the original image to obtain the stripe free image. It will be understood that other types of stripe filter are possible which may be more sophisticated but that the filter described herein is sufficiently effective in removing high-frequency patterns.
Stated differently, the effect of using interlaced readout is to obtain multiple patient images instead of a single one. Each of the half-images “odd” and “even” (the odd and even fields) covers the whole detector and the whole patient but is distorted by a factor of two. The perturbation takes place in the time domain. So a pattern covering 12 lines in a progressively read out image will result in a 12-line wide stripe. Using an interlaced readout with re-sorting, the “wide stripe” is now transformed into a high frequency perturbation: the pattern extends over 24 lines but only every other line is effected, e.g. the “odd” lines, while the “even” lines in between are unaffected. When the pattern is not periodical, it is unlikely that the same location of the patient that was effected by EMI in the “odd” half-image will also be effected in the “even” half-image. The stripe filter can now be applied to remove this high-frequency pattern. This may be done in a way that changes only the values of the “odd” lines (normal filters would leave the average value in the image, without stripes). Each object in the image that extends over several lines will be sampled at different points in time. So each of these lines may be differently affected by the EMI perturbation. After correction of these EMI patterns in the input image, the image is re-sorted. Any remaining deviation from the true signal will now appear as a high-frequency pattern which can be removed by the stripe filter.
As mentioned above, variants to the systems and methods described above are possible. For example, multiple sub-images, for example eight instead of two, may be produced with a similar regular EMI pattern. Multiple sub-images may be produced with random line addressing (e.g. line 1, 5, 12, 14, 17, 21, . . . until all lines have been addressed). Another option is to use multiple incomplete readouts. Normally each line is read out once. Lines may be partly read out multiple times N (e.g. N=10) at random time points and with averaging being applied (or median values or other methods that suppress outliers) on the signal portions. Stated differently, multiple readouts are performed where for each single readout only parts of the X-ray signal are integrated at different time points. The multiple readouts can subsequently be averaged to obtain an EMI compensated signal. This would reduce the EMI pattern because the main signal will remain constant during repeated sampling while the EMI signal is not fixed, with its amplitude being time-dependent. Of course, this method leads to longer readout times of the image data. A further option is to apply interlacing also to pixel columns. One example may comprise generating four sub-images including all combinations of even and odd columns and lines. This method may require detector modifications and may lead to longer readout times in total.
In addition to digital radiography, the subject-matter described herein may also find application in the field of fluoroscopy.
Referring now to
The computing device 800 additionally includes a data store 808 that is accessible by the processor 802 by way of the system bus 806. The data store 808 may include executable instructions, log data, etc. The computing device 800 also includes an input interface 810 that allows external devices to communicate with the computing device 800. For instance, the input interface 810 may be used to receive instructions from an external computer device, from a user, etc. The computing device 800 also includes an output interface 812 that interfaces the computing device 800 with one or more external devices. For example, the computing device 800 may display text, images, etc. by way of the output interface 812.
It is contemplated that the external devices that communicate with the computing device 800 via the input interface 810 and the output interface 812 can be included in an environment that provides substantially any type of user interface with which a user can interact. Examples of user interface types include graphical user interfaces, natural user interfaces, and so forth. For instance, a graphical user interface may accept input from a user employing input device(s) such as a keyboard, mouse, remote control, or the like and provide output on an output device such as a display. Further, a natural user interface may enable a user to interact with the computing device 800 in a manner free from constraints imposed by input device such as keyboards, mice, remote controls, and the like. Rather, a natural user interface can rely on speech recognition, touch and stylus recognition, gesture recognition both on screen and adjacent to the screen, air gestures, head and eye tracking, voice and speech, vision, touch, gestures, machine intelligence, and so forth.
Additionally, while illustrated as a single system, it is to be understood that the computing device 800 may be a distributed system. Thus, for instance, several devices may be in communication by way of a network connection and may collectively perform tasks described as being performed by the computing device 800.
Various functions described herein can be implemented in hardware, software, or any combination thereof. If implemented in software, the functions can be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes computer-readable storage media. A computer-readable storage media can be any available storage media that can be accessed by a computer. By way of example, and not limitation, such computer-readable storage media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc (BD), where disks usually reproduce data magnetically and discs usually reproduce data optically with lasers. Further, a propagated signal is not included within the scope of computer-readable storage media. Computer-readable media also includes communication media including any medium that facilitates transfer of a computer program from one place to another. A connection, for instance, can be a communication medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio and microwave are included in the definition of communication medium. Combinations of the above should also be included within the scope of computer-readable media.
Alternatively, or in addition, the functionally described herein can be performed, at least in part, by one or more hardware logic components. For example, and without limitation, illustrative types of hardware logic components that can be used include Field-programmable Gate Arrays (FPGAs), Program-specific Integrated Circuits (ASICs), Program-specific Standard Products (ASSPs), System-on-a-chip systems (SOCs), Complex Programmable Logic Devices (CPLDs), etc.
The applicant hereby discloses in isolation each individual feature described herein and any combination of two or more such features, to the extent that such features or combinations are capable of being carried out based on the present specification as a whole in the light of the common general knowledge of a person skilled in the art, irrespective of whether such features or combinations of features solve any problems disclosed herein, and without limitation to the scope of the claims. The applicant indicates that aspects of the present invention may consist of any such individual feature or combination of features.
While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description are to be considered exemplary and not restrictive. The invention is not limited to the disclosed embodiments.
Other variations to the disclosed embodiments can be understood and effected by those skilled in the art, 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 indefinite article “a” or “an” does not exclude a plurality. A single processor or other unit may fulfil the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used advantageously. A computer program may be stored/distributed on a suitable medium, such as an optical storage medium or a solid-state medium supplied together with or as part of other hardware, but may also be distributed in other forms, such as via the internet or other wired or wireless communications systems. Any reference signs in the claims should not be construed as limiting the scope.
Number | Date | Country | Kind |
---|---|---|---|
20207952.1 | Nov 2020 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2021/080855 | 11/8/2021 | WO |