Ophthalmic imaging system and method for suppressing imaging artifacts in ophthalmic images
By segmenting the ophthalmic image into partial overlapping fragments and applying discrete cosine transformation and filtering technology, the banding artifact problem introduced by the polygon scanning mirror is solved, which significantly improves the image quality and achieves effective suppression of artifacts.
Patent Information
- Application Number
- CN202410762984.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-06-14
- Filing Date
- 2024-06-13
- Publication Date
- 2024-12-17
AI Technical Summary
In existing ophthalmic imaging systems, band artifacts introduced by polygonal scanning mirrors lead to a decrease in image quality and are difficult to effectively suppress, especially the vibrations introduced during rotation and artifacts caused by uneven optical components are difficult to completely eliminate.
By segmenting the ophthalmic image into partially overlapping multiple fragments, discrete cosine transformation and filtering techniques are used to remove artifacts, combined with window function attenuating the frequency domain signal, the fragments are recombined to generate a corrected image, reducing the existence of banded artifacts.
It effectively suppresses band artifacts in the image, improves the image quality of the ophthalmic imaging system, reduces the impact of artifacts on the image, and makes the pathological evaluation more accurate.
Smart Images

Figure CN119152054A_ABST
Abstract
Description
[0001] field
[0002] The present disclosure relates to ophthalmic imaging systems and methods for suppressing banding artefacts in ophthalmic images. In particular, but not exclusively, the present disclosure relates to suppressing banding artefacts introduced into ophthalmic images by polygonal scanning mirrors in ophthalmic imaging systems. background
[0004] Ophthalmic imaging devices such as scanning laser ophthalmoscopy (SLO) and optical coherence tomography (OCT) imaging systems typically include a light source and a scanning system. The scanning system scans light emitted by the light source over a target imaging area (such as a patient's retina) by controlling the position of the imaging beam using one or more scanning mirrors.
[0005] One type of reflector that can be used in a scanning system is a polygonal scanning mirror. The polygonal scanning mirror includes a polygonal mirror mounted on a rotating shaft. The polygonal mirror includes reflective facets arranged in a polygon. When the polygonal scanning mirror rotates, the light beam is reflected from the facets so that the light beam is scanned onto the target area. The polygonal scanning mirror can quickly scan light on an imaging target. Therefore, polygonal scanning mirrors are often used to scan light beams linearly on a target area. For example, if the scanning pattern is a series of parallel vertical lines, the polygonal scanning mirror will scan the light beam linearly along the vertical lines on the target area, and a scanning mirror such as a scanning galvanometer can be used to control the horizontal position of the light beam on the target area. The polygonal scanning mirror and the scanning galvanometer mirror can work together to form an XY scanning system, which can be used to scan a light beam on an imaging target to generate an image of the target.
[0006] Banding is an optical artifact that may appear in an image where a polygonal scanning mirror is used to scan a beam across an imaging target. Banding artifacts may appear in an image as a series of dark and / or light bands that appear periodically in the image. In examples where a polygonal scanning mirror scans an imaging beam vertically across an imaging target, banding typically appears as dark and / or light bands that extend vertically across the resulting image. However, banding artifacts may take other forms, such as horizontal lines.
[0007] Banding artifacts in an image can be caused by several contributing factors. For example, imperfect optical components within the scanning system can introduce banding in the image. This can include irregularities or defects in the polygon scanning mirror, or wiggles of the polygon scanning mirror as it rotates, which can cause changes in the angular position of the facets of the polygon scanning mirror as it rotates. These changes can cause the imaging beam to deviate from its intended scanning pattern, resulting in visible lines or bands in the resulting image. In addition, changes in the reflectivity of each of the reflective facets or mirrors on the polygon can cause changes in the intensity of the light scanned across the target area. Banding can also be caused by uneven line spacing between the lines scanned by the polygon scanning mirror, which can be introduced by defects in the horizontal scanning galvanometer.
[0008] Ultimately, while banding artifacts may manifest in images for a variety of reasons and in a variety of forms, the presence of banding artifacts in images captured by an imaging system degrades the quality of the resulting image. If the resulting image is a medical image of tissue (e.g., an ophthalmic image of the retina), this may make it difficult for a clinician to visualize or assess the severity of pathology within the image. Therefore, it is desirable to minimize or eliminate banding in images to improve the quality of images captured by an imaging system having a polygonal scanning mirror.
[0009] Banding in the image can be suppressed by using high-quality optical components within the imaging system. For example, using high-quality reflective facets on the polygon can reduce the variation in reflectivity of each facet. However, high-quality optical components can be very expensive, which increases the overall cost of the imaging system. In addition, suppressing vibrations within the imaging system can also help reduce the presence of banding in the image captured by the imaging system, but this can be challenging due to the inherent vibrations associated with the rotating polygon scanning mirror.
[0010] Overview
[0011] A method for suppressing banding artifacts in an image of an imaging target is described below, the method comprising: dividing the image of the imaging target into a plurality of segments that partially overlap with each other, wherein each segment of the plurality of segments includes one or more overlapping regions, wherein each overlapping region is a region where the segment overlaps with a corresponding adjacent segment of the plurality of segments; applying an image correction algorithm to suppress banding artifacts in the plurality of segments, the image correction algorithm calculating a discrete cosine transform of each of the plurality of segments; removing at least a portion of the one or more overlapping regions from each of the plurality of segments to remove edge effects or artifacts introduced by the image correction algorithm, thereby generating corresponding corrected segments; and combining each corrected segment to generate a corrected image of the imaging target, the corrected image including fewer banding artifacts than the image.
[0012] According to a first exemplary aspect of the present invention, there is provided a method for suppressing banding artifacts (e.g., periodic line artifacts) in an ophthalmic image of an eye of a patient, the method comprising: segmenting the ophthalmic image into a plurality of segments that partially overlap each other, wherein each segment of the plurality of segments comprises one or more overlapping regions, wherein each overlapping region is an area where the segment overlaps with a corresponding adjacent segment of the plurality of segments; applying an image correction algorithm to suppress banding artifacts in the plurality of segments, the image correction algorithm calculating a discrete cosine transform of each segment of the plurality of segments; removing at least a portion of the one or more overlapping regions from each segment of the plurality of segments to remove artifacts introduced by the image correction algorithm, thereby generating corresponding corrected segments; and combining the corrected segments to generate a corrected ophthalmic image, the corrected ophthalmic image comprising fewer banding artifacts than the ophthalmic image. The method and any exemplary embodiments thereof described below may be implemented (performed) by a computer.
[0013] The method may include performing filtering in the frequency domain after the discrete cosine transform has been calculated to remove at least one of a low frequency signal and a high frequency signal from each segment. In addition, performing filtering may include removing discrete cosine transform coefficients having an absolute value equal to or above a threshold. For example, the threshold may be an integer value, such as 1, 2, 3, or greater. Removing discrete cosine transform coefficients having an absolute value equal to or above the threshold may include setting the coefficients equal to or above the threshold to zero.
[0014] Additionally or alternatively, the method may include applying a window function to the calculated discrete cosine transform of each segment. The window function may be applied to window a bin in the discrete cosine transform of each segment to attenuate banding artifacts in the discrete cosine transform of each segment, the bin corresponding to the spatial frequency of the banding artifacts.
[0015] The window function may include a secondary component for filtering a second frequency corresponding to a harmonic of a frequency of the banding artifact. The secondary component may be applied to window bins corresponding to the secondary frequency in the discrete cosine transform of each segment. The secondary frequency may be a frequency that is a multiple of the frequency of the banding artifact. In an example embodiment, the window function may be a Hanning window filter.
[0016] Optionally, the image correction algorithm may comprise, for each segment of the plurality of segments, computing a corresponding inverse discrete cosine transform of the segment after a discrete cosine transform has been computed for the segment.
[0017] The method may include combining the corrected segments to generate a corrected ophthalmic image. Combining the corrected segments may include blending a peripheral region of a first corrected segment in the corrected segments with a peripheral region of an adjacent corrected segment in the corrected segments. Blending the peripheral region of the first corrected segment with the peripheral region of the adjacent corrected segment may include aligning one or more features present in both the first corrected segment and the adjacent corrected segment so that the one or more features are superimposed on each other in the corrected image so that a join between the first corrected segment and the adjacent corrected segment is not visible.
[0018] According to a second exemplary aspect of the present invention, there is provided a computer program comprising computer readable instructions, which, when executed by a processor, causes the processor to perform a method according to the first exemplary aspect or at least one of the exemplary embodiments thereof set forth above. The computer program may be stored on a non-transitory computer readable storage medium, or the computer program may be carried by a signal.
[0019] According to a third exemplary aspect of the present invention, there is provided an ophthalmic imaging system for imaging an eye of a patient, the imaging system comprising: a light source arranged to emit a light beam; a scanning system comprising a polygonal scanning mirror, wherein the polygonal scanning mirror is arranged to scan the light beam over a region of the patient's eye; a photodetector optically coupled to the scanning system, wherein the photodetector is configured to generate a detection signal based on light reflected by the patient's eye; and data processing hardware or a processor configured to receive the detection signal from the photodetector and to generate an ophthalmic image of the patient's eye based on the received detection signal, wherein the ophthalmic image includes a banding artifact; wherein the data processing hardware or processor is configured to generate an ophthalmic image of the patient's eye based on the received detection signal. The data processing hardware is also configured to: segment the ophthalmic image into a plurality of fragments that partially overlap with each other, wherein each fragment of the plurality of fragments includes one or more overlapping regions, wherein each overlapping region is a region where the fragment overlaps with a corresponding adjacent fragment of the plurality of fragments; apply an image correction algorithm to suppress banding artifacts in the plurality of fragments, the image correction algorithm calculating a discrete cosine transform of each of the plurality of fragments; remove at least a portion of one or more overlapping regions from each of the plurality of fragments to remove artifacts introduced by the image correction algorithm, thereby generating corrected fragments; and combine each corrected fragment to generate a corrected ophthalmic image, the corrected ophthalmic image including fewer banding artifacts than the ophthalmic image.
[0020] The ophthalmic imaging system may be a scanning laser ophthalmoscope (SLO) imaging system or an optical coherence tomography (OCT) imaging system. The OCT imaging system may be, for example, a swept-source OCT imaging system, a spectral-domain OCT imaging system, or a Fourier-domain OCT imaging system.
[0021] In an embodiment, the data processing hardware may be further configured to perform filtering in the frequency domain after the discrete cosine transform has been calculated to remove at least one of a low frequency signal and a high frequency signal from each segment. Removing or filtering at least one of the low frequency signal and the high frequency signal may include removing discrete cosine transform coefficients having an absolute value equal to or above a threshold from each partially overlapping segment. Removing discrete cosine transform coefficients having an absolute value equal to or above the threshold may include setting the discrete cosine transform coefficients to zero.
[0022] Additionally or alternatively, the data processing hardware may be further configured to apply a window function to the calculated discrete cosine transform of each segment. The window function may be applied to window bins in the discrete cosine transform of each segment to attenuate banding artifacts in the discrete cosine transform of each segment, the bins corresponding to the spatial frequencies of the banding artifacts. The window function may include a subcomponent for filtering a second frequency corresponding to a harmonic of the frequency of the banding artifacts. The subcomponent may be applied to window bins in the discrete cosine transform of each segment corresponding to the subfrequency of the harmonic. The window function may be a Hanning window.
[0023] Optionally, applying the image correction algorithm may further comprise: for each segment of the plurality of segments, calculating a corresponding inverse discrete cosine transform of the segment after the discrete cosine transform has been calculated for each partially overlapping segment.
[0024] Optionally, combining the corrected segments to generate the corrected ophthalmic image may include blending a peripheral region of a first corrected segment of the corrected segments with a peripheral region of an adjacent corrected segment of the corrected segments. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] Example embodiments will now be explained in detail, by way of non-limiting example only, with reference to the accompanying drawings described below.Unless otherwise indicated, like reference numerals appearing in different figures of the drawings may represent the same element or a functionally similar element.
[0027] Figure 1 is a schematic diagram of an imaging system including a polygonal scanning mirror according to example embodiments herein.
[0028] Figure 2 Is Figure 1Example of an image captured by an imaging system including banding artifacts.
[0029] Figure 3 is split into partially overlapping segments Figure 2 Schematic diagram of an image.
[0030] Figure 4 It shows that the inhibition Figure 3 Flow chart of a method for removing banding artifacts in one of partially overlapping segments.
[0031] Figure 5 yes Figure 3 Example of a segment of a segmented image including banding artifacts.
[0032] Figure 6 This is after a correction algorithm has been applied to the clip to suppress banding artifacts Figure 5 An example of a snippet.
[0033] Figure 7 is obtained after suppressing banding artifacts according to the exemplary embodiments herein. Figure 1 Examples of images captured by the imaging system.
[0034] Figure 8 is shown to be inhibited by Figure 1 A flow chart of a method for removing banding artifacts in an image captured by an imaging system.
[0035] Fig. 9 is an example hardware implementation of an apparatus that may operate as data processing hardware of an imaging system according to example embodiments herein. Detailed Description
[0037] In view of the above background, the inventors have designed an ophthalmic imaging system for imaging a patient's eye, the ophthalmic imaging system utilizing a scanning system including a polygonal scanning mirror to scan a light beam over the patient's eye to generate an ophthalmic image of the patient's eye. The ophthalmic imaging system includes a control module or data processing hardware, which is arranged to apply an image correction algorithm to an uncorrected ophthalmic image containing banding artifacts to remove or suppress the banding artifacts present in the ophthalmic image. Removing or suppressing the banding artifacts in the ophthalmic image may include: segmenting the ophthalmic image into partially overlapping segments, applying the image correction algorithm or the artifact suppression algorithm to each overlapping segment, cropping or removing the overlapping area of each partially overlapping segment, and recombining the cropped segments to generate a corrected ophthalmic image, the corrected ophthalmic image containing fewer banding artifacts than the uncorrected image.
[0038] The data processing hardware is arranged to apply an image correction algorithm to an uncorrected ophthalmic image containing banding artifacts, and the banding artifacts are beneficially removed or suppressed from the ophthalmic image using the data processing hardware, thereby improving the image quality of the image acquired by the ophthalmic imaging system. Banding artifacts in ophthalmic images reduce the quality of the image, so it is beneficial to remove and / or suppress banding artifacts present in the image captured by the ophthalmic imaging system. The banding artifacts may be, for example, periodic line artifacts.
[0039] Segmenting the uncorrected image into partially overlapping segments and applying the image correction algorithm to each overlapping segment allows banding artifacts to be suppressed in each segment, and any residual edge effects or edge artifacts introduced by the image correction algorithm are generally contained within the overlapping region of the overlapping segments. Advantageously, the overlapping region of each segment can be removed so that a central portion of each segment can be combined to create a corrected image, thereby removing edge effects from the corrected image, and using only a central portion of each corrected segment to generate the corrected image.
[0040] Figure 1 An imaging system 10 for acquiring an image of an imaging target 11 is shown. The imaging system 10 may be a medical imaging system, such as an ophthalmic imaging system, and the imaging target 11 may be a biological tissue, such as an eye of a patient, such that the ophthalmic imaging system is arranged to capture an ophthalmic image of the eye of the patient. The imaging system 10 may be, for example, a scanning laser ophthalmoscope (SLO) imaging system or an optical coherence tomography (OCT) imaging system, such as a swept source OCT imaging system or a spectral domain OCT imaging system. The imaging system 10 comprises a light source 14, such as a laser or a super luminescent diode (SLD), which is arranged to emit a light beam L towards a scanning system 12 within the imaging system 10. b The scanning system 12 is arranged to transmit the light beam L from the light source 14 to b The light beam L is transmitted to the imaging target 11 and scans the light beam L on the area to be imaged of the imaging target 11. b .
[0041] Furthermore, the scanning system 12 is arranged to collect light L which has been reflected or scattered by the imaging target 11 during scanning. c , and the collected light L c The collected light L is transmitted to a photodetector 16 within the imaging system 10. The photodetector 16 is arranged to detect the collected light L c , so that the image processing hardware (not shown) in the data processing hardware 18 can use well-known data processing techniques based on the detection signal S dAn image of the imaging target 11 is generated. If the imaging target 11 is an eye, the image generated by the data processing hardware 18 may be an uncorrected ophthalmic image 22 of the imaging target 11. The uncorrected image 22 generated by the data processing hardware 18 includes banding artifacts introduced by the polygon scanning mirror discussed in further detail below.
[0042] As in this example embodiment, the scanning system 12 may include Figure 1 Schematically shown arrangement of optical components. Figure 1 The scanning system 12 includes a first scanning element 201 and a first curved mirror 202. As in the present example, the scanning system 12 may also include a second curved mirror 203 (also referred to herein as a "slit mirror") and a second scanning element in the form of a polygonal scanning mirror 205. The first scanning element 201 may be a scanning galvanometer mirror arranged to scan the light beam L horizontally on the imaging target 11. b The second scanning element is a polygonal scanning mirror 205, which is arranged to vertically scan the light beam L on the imaging target 11. b The polygonal scanning mirror 205 includes reflective facets arranged in a polygonal shape. The polygonal scanning mirror may include sixteen reflective facets of equal size arranged in a polygonal shape. b The positions scanned by the first scanning element 201 and the second scanning element 205 on the imaging target 11 may be controlled by a scanning system controller (not shown).
[0043] During operation of the scanning system 12, the light beam L emitted from the light source 14 b The light beam L1 enters the scanning system 12 and is focused by a lens (not shown) onto the polygonal scanning mirror 205. Then, the light beam L1 received by the polygonal scanning mirror 205 b The returned light scattered by the illuminated area of the imaging target 11 (e.g., the retina of the eye) follows the same path as the light L incident on the imaging target 11. b The same light path but in reverse order passes through the scanning system 12 and is used as the collected light L c Leaving the scanning system 12, the collected light L c The collected light L includes optical aberration or banding artifacts caused by the polygon scanning mirror 205. c Received by the photodetector 16.
[0044] As in the present exemplary embodiment, the first curved mirror 202 and the second curved mirror 203 may be a spherical mirror and an ellipsoidal mirror, respectively, each having a first focus and a conjugate second focus. The first scanning element 201 is located at the first focus of the first curved mirror 202, and the imaging target 11 is located at the second focus of the first curved mirror 202. In the case where the imaging target 11 is a part of the retina of the eye, the pupil of the eye is located at the second focus of the first curved mirror 202, so that the light beam L b During scanning, the polygonal scanning mirror 205 is located at the first focus of the second curved mirror 203, and the first scanning element 201 is located at the second focus of the second curved mirror 203. However, the second curved mirror 203 (ellipsoidal mirror in this example embodiment) can be any reflective component with a non-spherical reflective surface, such as a shape of a conic section like a parabola or a hyperbola, or more generally, can have a shape described by one or more polynomial functions containing two variables.
[0045] The collected light L received by the photodetector 16 c The light L collected by the polygon scanning mirror 205 is c The banding artifacts may be periodic optical artifacts or banding artifacts in the polygon scanning mirror 205. The banding artifacts may have been introduced by the polygon scanning mirror 205 due to defects and / or imperfections in the polygon scanning mirror 205 or due to uneven scan line spacing. For example, in an embodiment where the polygon scanning mirror includes sixteen reflective facets, the banding artifacts may vary sinusoidally with a period of sixteen pixels. The banding artifacts may be caused by the variability of the reflectivity of each reflective facet in the polygon scanning mirror 205 (thereby causing periodic variations in the intensity of the light scanned across the imaging target 11).
[0046] The data processing hardware 18 receives the detection signal S from the photodetector 16 d , and generates an image of the imaging target 11. The image generated by the data processing hardware 18 is an uncorrected image 22, which includes the light L introduced by the polygon scanning mirror 205 to the collected light L c The data processing hardware 18 includes an image correction algorithm 20 that is executable by the data processing hardware 18 to remove or reduce the amount of aberrations or banding artifacts in the generated uncorrected image 22. Once the image correction algorithm 20 is applied to the uncorrected image 22, the data processing hardware 18 is arranged to output a corrected image 24 that contains fewer banding artifacts than the uncorrected image 22. The level of banding artifacts present in the corrected image 24 is undetectable to the human eye.
[0047] Now go to Figure 2 , shows an example uncorrected image 22 captured by the imaging system 10 and generated by the data processing hardware 18. The uncorrected image 22 contains vertical stripes, which are examples of striping artifacts 25. The striping artifacts 25 can be periodic optical aberrations or periodic line artifacts, such as in the form of a set of uniformly spaced linear features (stripes) in the uncorrected image 22. The example uncorrected image 22 is an ophthalmic image of the retina captured by the imaging system 10, wherein the imaging target 11 is an eye. The striping artifacts 25 in the form of vertical stripes shown in the example uncorrected image 22 appear periodically, spaced at intervals of 16 pixels in the horizontal direction. The spacing of 16 pixels between adjacent stripes can be caused at least in part by a variation in the reflectivity of each of the 16 reflective facets of the polygonal scanning mirror 205. In another example embodiment in which the polygonal scanning mirror 205 has a different number of reflective facets, the spacing between adjacent stripes can vary accordingly. The banding artifacts 25 shown in the uncorrected image 22 degrade the overall image quality, and therefore it is desirable to remove the vertical banding from the uncorrected image 22 without compromising the quality of the image of the imaged object 11 .
[0048] The data processing hardware 18 includes an image correction algorithm 20 which, when executed by the data processing hardware 18, is configured to remove or suppress banding artifacts 25 present in the uncorrected image 22. The data processing hardware 18 is configured to segment the uncorrected image 22 into 2D partially overlapping segments. Figure 3 An example of an uncorrected image 22 segmented into nine partially overlapping segments 30 is shown. Although the uncorrected image 22 has been Figure 3 2 is divided into nine partially overlapping segments 30, but the skilled reader will appreciate that in other exemplary embodiments, the image may be divided into smaller overlapping segments. For example, depending on the severity of the banding artifacts 25 and / or the size of the uncorrected image 22, the image may be divided into a 10×10 grid, a 100×100 grid, or a larger grid.
[0049] Figure 3 The partially overlapping segments 30 in are rectangular segments of equal size that partially overlap adjacent segments 30. The degree of overlap between adjacent segments 30 can be varied by the data processing hardware 18. Cases with particularly severe banding artifacts 25 may have increased overlap of segments 30 because application of the correction algorithm 20 may introduce severe edge effects or edge artifacts that further erode toward the center of each segment 30 and therefore more of each segment 30 must be removed to remove the edge effects or artifacts before the corrected segments 30 are reassembled to generate the corrected image 24. Figure 3In the example shown, the segments 30 overlap in both the horizontal and vertical directions. In another embodiment, the segments 30 may overlap only in the horizontal or vertical direction, for example.
[0050] Once the data processing hardware 18 has segmented the uncorrected image 22 into partially overlapping segments 30, the image correction algorithm 20 is executed by the data processing hardware 18 such that the image correction algorithm 20 is applied to each of these partially overlapping segments 30 to correct the image 22 by performing a correction on each segment 30 within the uncorrected image 22. Figure 4 The method outlined in is used to correct the banding artifacts 25 present in each segment 30 individually, as described in further detail below.
[0051] Figure 4 FIG. 2 is a flow chart showing a method of suppressing the banding artifact 25 present in each overlapping segment 30 in the uncorrected image 22. The correction algorithm 20 may be applied to each overlapping segment 30 in the uncorrected image 22. Figure 4 The method outlined in Figure 4 The method outlined in is applied to each segment 30 in the uncorrected image 22. The skilled reader will appreciate that although the method is described with respect to a single partially overlapping segment 30, Figure 4 , but as in the present exemplary embodiment, the method may be performed on each partially overlapping segment 30 present in the uncorrected image 22 to remove or suppress the banding artifact 25 present in each partially overlapping segment 30 .
[0052] In step 401, a discrete cosine transform (DCT) of a given partially overlapping segment 30 is calculated. Applying a discrete cosine transform to the segment 30 converts the image contained within the segment 30 from the spatial domain to the frequency domain by defining the image as a series of cosine functions, each cosine function having a different frequency corresponding to the frequency in the image. Using a discrete cosine transform to convert the image to the frequency domain is beneficial relative to another transform, such as a discrete Fourier transform, because the discrete cosine transform introduces fewer edge effects into each segment 30 than the discrete Fourier transform. In addition, each frequency bin in the discrete cosine transform corresponds to a wider frequency range than the bin in the corresponding discrete Fourier transform. This is beneficial because the banding artifacts 25 to be suppressed by the image correction algorithm 20 are typically sinusoidal signals, and therefore the peaks and / or valleys of the banding artifact sinusoidal signals are fitted into a single bin in the discrete cosine transform, thereby allowing the banding artifacts 25 to be attenuated or suppressed more easily in the discrete cosine transform than is possible in, for example, the discrete Fourier transform.
[0053] In step 402, high and low frequencies within the discrete cosine transform of the segment 30 are removed to create a modified discrete cosine transform of the segment 30. For example, discrete cosine transform coefficients having an absolute value equal to or above a threshold value, such as 2, are removed. Removing high and / or low frequencies may include setting discrete cosine transform coefficients having an absolute value equal to or above the threshold value to zero. Removing high and low frequencies within the discrete cosine transform of the segment 30 prevents higher frequency components and background noise in the signal from being amplified by the image correction algorithm 20 in future steps of the image correction process. In addition, once the discrete cosine transform is calculated, the high and low frequencies are removed from each segment 30 in the frequency domain, which allows for more efficient removal of high and low frequencies than would otherwise be possible if the frequencies were removed in the spatial domain prior to calculating the discrete cosine transform of each segment 30. Removing high and low frequencies has the effect of flattening the image by removing background noise, thereby improving the quality of the resulting corrected image 24.
[0054] In step 403, the striping artifacts 25 contained in the partially overlapping segments 30 are attenuated. Attenuating the striping artifacts 25 contained in the segments 30 can be performed using a window function (e.g., a Hanning window). The window function is centered on a frequency bin corresponding to the frequency of the striping artifacts 25 contained in the segment 30. The window function can be applied to window bins corresponding to the spatial frequencies of the striping artifacts 25 in the discrete cosine transform of each segment. For example, the Hanning window can be centered on bins corresponding to the frequencies associated with the striping artifacts 25 that appear every sixteen pixels. The parameters of the window function can be changed to select the attenuation level applied to the target frequency. In one example, the window function can apply a -10db attenuation to the frequencies associated with the striping artifacts 25 present in the partially overlapping segments 30. Relative to a bandpass filter, such as a brick wall filter, using a Hanning window to attenuate the frequencies associated with the striping artifacts 25 is beneficial because the Hanning window introduces fewer ringing artifacts into the signal than a brick wall filter.
[0055] The window function used to attenuate the vertical stripes in step 403 may be a multi-level window function. For example, a two-level or three-level Hanning window may be used to attenuate the vertical stripes in the segment 30. The main component of the Hanning window may be centered at a bin corresponding to the frequency of the striping artifact 25 contained within the segment 30. The window function may include one or more subcomponents located at bins corresponding to harmonics of the main frequency associated with the striping artifact 25, the harmonics of the main frequency being filtered by the window function, so that the harmonics within the segment 30 that contribute to the presence of the striping artifact 25 in the segment 30 may be attenuated by the window function.
[0056] In step 404, an inverse discrete cosine transform (IDCT) is calculated on the segment 30 to reconstruct the image contained within the segment 30 and generate a corrected segment. The banding artifacts 25 in the reconstructed image in the corrected segment are suppressed compared to the level of banding artifacts 25 that existed in the segment 30 of the uncorrected image 22 before the correction algorithm 20 was applied to the uncorrected segment. Applying the inverse discrete cosine transform to the segment 30 converts the segment 30 from the frequency domain back to the spatial domain, thereby generating a corrected segment that contains fewer banding artifacts 25 than the banding artifacts 25 that existed in the segment 30 before the correction algorithm 20 was applied.
[0057] Now go to Figure 5 and Figure 6 , shows an example of a segment 30 from an uncorrected image 22 before and after application of the correction algorithm 20 . Figure 5 A segment 30 is shown before application of the correction algorithm 20, which is an example of an uncorrected segment. Figure 5 The segment 30 shown in FIG. 3 comprises vertical strips spanning the width of the segment 30 with substantially uniform spacing between adjacent strips in the segment 30. In the example shown, the strips appear periodically with a period of 16 pixels. Figure 6 FIG. 2 shows a segment 30 after the correction algorithm 20 has been applied to the segment 30. Figure 6 As shown, in the central portion 60 of the corrected segment 30, the banding artifact 25 has been sufficiently suppressed so that it is no longer visible in the image. However, the application of the correction algorithm 20 causes edge effects 68 to appear in the peripheral region 62 of the segment 30, within which the banding is still visible due to the edge effects 68.
[0058] like Figure 3 As shown, the size of the segments 30 is determined so that the edges of each segment 30 overlap. When the correction algorithm 20 is applied to the segments 30, the resulting edge effects 68 contained within the peripheral regions 62 of a given segment 30 correspond to the overlapping portions of the segments 30. Therefore, the peripheral regions 62 of each segment 30 can be removed or cropped so that the peripheral regions 62 containing banding artifacts as a result of the edge effects 68 can be discarded. The remaining central portions 60 of each segment 30 can be reassembled or stitched together by the data processing hardware 18 to generate the corrected image 24. The central portions 60 are examples of corrected segments. The corrected image 24 can be selected. Figure 3 The size and amount of overlap of the segments 30 in are such that the peripheral region 62 of the segment 30 containing the strips from the edge effect 68 is completely contained within the overlapping region of the adjacent segment 30 .
[0059] Figure 7An example of a corrected image 24 generated by combining corrected segments generated by applying the correction algorithm 20 to segments 30 of the uncorrected image 22 is shown. The data processing hardware 18 is arranged to fuse the corrected segments 64 together to generate the corrected image 24 so that the connections between adjacent segments 30 are not visible or perceived by the human eye. The banding in the corrected image 24 has been sufficiently suppressed (or completely eliminated) so that it is no longer visible in the corrected image 24.
[0060] Now go to Figure 8 , a flow chart is shown which illustrates a method of suppressing banding artifacts 25 in an image of an imaged object 11 . Figure 8 The method shown in can be performed by the data processing hardware 18 of the imaging system 10. The method can be performed on the uncorrected image 22 to generate a corrected image 24.
[0061] In step 801, the uncorrected image 22 is segmented into at least partially overlapping 2D segments. The number and size (size) of the segments 30 can be selected based on parameters, such as one or more of the following: the severity of the banding artifacts 25 present in the uncorrected image 22, the resolution of the uncorrected image 22, and the processing power of the data processing hardware 18. The segments are generally rectangular and are equal-sized segments. In addition, the amount of overlap between adjacent segments is generally equal. If the banding artifacts 25 present in the uncorrected image 22 are severe, the uncorrected image 22 can be segmented into smaller segments, such that, for example, the uncorrected image 22 is segmented into 1000×1000 overlapping segments or more. Increasing the number of segments 30 into which the uncorrected image 22 is segmented generally increases the effectiveness of the application of the image correction algorithm 20. However, increasing the number of segments 30 into which the uncorrected image is segmented also increases the computational time for performing the method of suppressing the banding artifacts 25 in the uncorrected image 22.
[0062] Next, in step 802, the banding artifacts 25 are corrected or suppressed in each overlapping segment 30 by applying the image correction algorithm 20 to each segment 30 in the uncorrected image 22. This can be performed as described above. Figure 4 The method outlined in is used to correct or suppress the banding artifacts 25 present in each partially overlapping segment 30. Applying the image correction algorithm 20 to each partially overlapping segment 30 suppresses the banding artifacts 25 present in the corresponding partially overlapping segment 30. Applying the image correction algorithm 20 to each segment 30 includes calculating a discrete cosine transform of each partially overlapping segment 30.
[0063] In step 803, at least a portion of the overlap region 62 is removed from each segment 30 to remove edge effects 68 or artifacts introduced into the respective segments 30 by the image correction algorithm 20 in step 802. Removing at least a portion of the overlap region 62 may include cropping at least some of the peripheral region 62 from each segment 30 to remove artifacts or edge effects 68 introduced into each segment 30 by the image correction algorithm 20. Cropping the peripheral region 62 from the segments 30 beneficially removes artifacts and / or edge effects 68 introduced into each segment 30 by the image correction algorithm 20. Removing at least a portion of the overlap region 62 from each overlapping segment 30 generates a corrected segment. Removing at least a portion of the overlap region 62 may be performed after the image correction algorithm 20 has been applied to the segments 30.
[0064] In step 804, each cropped segment 30 is reassembled to generate the corrected image 24. Reassembling the cropped segments 30 may include mosaicing and optionally fusing the segments 30 to generate the corrected image 24. Fusing adjacent segments 30 when reassembling the segments 30 to generate the corrected image 24 prevents artifacts from being introduced into the corrected image 24 due to misalignment of the reassembled segments 30. Combining each corrected segment 30 to generate the corrected image 24 may include fusing and / or aligning peripheral areas of adjacent segments 30 to generate the corrected image 24, such that connections between adjacent segments 30 are not perceptible in the corrected image 24. Aligning adjacent segments may include identifying common features present in adjacent segments 30 and superimposing the common features in the adjacent segments 30 to align adjacent segments 30 in the corrected image 24.
[0065] Fig. 9 6 is a schematic diagram of programmable signal processing hardware 600 configured to remove or suppress banding artifacts 25 in images captured by imaging system 10. Programmable signal processing hardware 600 may perform at least a portion of the functionality of data processing hardware 18 of imaging system 10, and in an example embodiment herein, at least a portion of hardware 600 is included in data processing hardware 18. Programmable signal processing hardware 600 includes a communication interface (I / F) 610 for receiving a detection signal S from photodetector 16. d and / or for outputting the corrected image 24. In an example embodiment herein, the communication interface (I / F) 610 may input / output any information obtained as part of the methods described herein.
[0066] The signal processing hardware 600 also includes a processor (e.g., a central processing unit CPU and / or a graphics processing unit GPU) 620, a working memory 630 (e.g., a random access memory), and an instruction storage device 640 storing a computer program 645, which includes computer-readable instructions that, when executed by the processor 620, cause the processor 620 to perform various functions, including Figure 1 Those functions of the data processing hardware 18 in the present invention and / or the functions of the methods described herein. In an example embodiment herein, only the processor 620 is included in the data processing hardware 18, but in other examples, one or more additional components of the hardware 600 are also included in the data processing hardware 18.
[0067] The working memory 630 stores information used by the processor 620 during the execution of the computer program 645. The instruction storage device 640 includes, for example, a ROM (e.g., in the form of an electrically erasable programmable read-only memory (EEPROM) or flash memory) preloaded with computer-readable instructions. Alternatively, the instruction storage device 640 includes a RAM or similar type of memory, and the computer-readable instructions of the computer program 645 can be input to the instruction storage device 640 from a computer program product (e.g., a non-transitory computer-readable storage medium 650 in the form of a CD-ROM, DVDROM, etc.) or a computer-readable signal 660 carrying the computer-readable instructions. In any case, the computer program 645, when executed by the processor 620, causes the processor 620 to perform the methods described herein, including, for example, but not limited to, the method of suppressing banding artifacts in ophthalmic images as described herein above.
[0068] In one example embodiment herein, the data processing hardware 18 of the above example embodiment includes a computer processor 620 and a memory 640 storing computer readable instructions, which when executed by the computer processor 620 causes the computer processor 620 to perform the methods described herein, including, for example, but not limited to, methods of suppressing banding artifacts in ophthalmic images acquired by the imaging system 10 as described herein. However, it should be noted that the data processing hardware 18 may alternatively be implemented in non-programmable hardware (such as an ASIC, FPGA, or other integrated circuit dedicated to performing the functions of the above-described data processing hardware 18), or in such non-programmable hardware and as described above with reference to Fig. 9 The described programmable hardware is implemented in combination.
[0069] In the foregoing description, example aspects have been described with reference to several example embodiments. Therefore, the description should be regarded as illustrative rather than restrictive. Similarly, the drawings shown in the accompanying drawings highlighting the features and advantages of the example embodiments are presented for illustrative purposes only. The architecture of the example embodiments is sufficiently flexible and configurable that it can be utilized in ways other than those shown in the accompanying drawings.
[0070] In an example embodiment, the software embodiments of the examples presented herein may be provided as computer programs or software, such as one or more programs having instructions or instruction sequences included or stored in an article (e.g., a machine-accessible or machine-readable medium, an instruction storage device, or a computer-readable storage device, each of which may be non-transitory). The program or instructions on a non-transitory machine-accessible medium, a machine-readable medium, an instruction storage device, or a computer-readable storage device may be used to program a computer system or other electronic device. Machine-readable or computer-readable media, instruction storage devices, and storage devices may include, but are not limited to, floppy disks, optical disks, and magneto-optical disks or other types of media / machine-readable media / instruction storage devices / storage devices suitable for storing or transmitting electronic instructions. The techniques described herein are not limited to any particular software configuration. They may be applied in any computing or processing environment. The terms "computer-readable", "machine-accessible medium", "machine-readable medium", "instruction storage device", and "computer-readable storage device" used herein shall include any medium capable of storing, encoding, or transmitting instructions or instruction sequences for execution by a machine, a computer, or a computer processor and causing the machine / computer / computer processor to perform any of the methods described herein. Furthermore, it is common in the art to refer to software in one form or another (e.g., program, procedure, process, application, module, unit, logic, etc.) as taking an action or causing a result. Such expressions are merely a shorthand way of stating that execution of the software by a processing system causes the processor to perform an action to produce a result.
[0071] Some embodiments may also be implemented by the preparation of application specific integrated circuits, field programmable gate arrays, or by interconnecting an appropriate network of conventional component circuits.
[0072] Some embodiments include computer program products. A computer program product may be one or more storage media, instruction storage devices, or storage devices on or in which instructions that can be used to control or cause a computer or computer processor to perform any process of the example embodiments described herein are stored. Storage media / instruction storage devices / storage devices may include, by way of example and without limitation, optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory, flash memory cards, magnetic cards, optical cards, nanosystems, molecular memory integrated circuits, RAIDs, remote data storage / archiving / warehousing devices, and / or any other type of device suitable for storing instructions and / or data.
[0073] Some implementations stored on any of one or more computer-readable media, instruction storage devices (multiple instruction storage devices), or storage devices (multiple storage devices) include hardware for controlling the system and software for enabling the system or microprocessor to interact with a human user or other mechanism using the results of the example embodiments described herein. Such software may include, without limitation, device drivers, operating systems, and user applications. Ultimately, as described above, such computer-readable media or storage devices also include software for performing example aspects of the present invention.
[0074] Software modules for implementing the processes described herein are included in the programming and / or software of the system. In some example embodiments herein, the modules include software, but in other example embodiments herein, the modules include hardware or a combination of hardware and software.
[0075] Although various exemplary embodiments of the present invention have been described above, it should be understood that they are presented by way of example and not limitation. It will be apparent to those skilled in the relevant art that various changes may be made in form and detail. Therefore, the present invention should not be limited to any of the above exemplary embodiments, but should only be defined in accordance with the appended claims and their equivalents.
[0076] It should also be understood that any process recited in the claims does not need to be performed in the order presented.
[0077] Although this specification contains many specific embodiment details, these should not be understood as limitations on the scope of any invention or content that may be claimed, but should be understood as descriptions of features specific to the specific embodiments described herein. Certain features described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, the various features described in the context of a single embodiment may also be implemented in multiple embodiments individually or in any suitable sub-combination. In addition, although features may be described above as acting in a specific combination and even initially claimed as such, one or more features from the claimed combination may be deleted from the combination in some cases, and the claimed combination may be directed to a sub-combination or a variant of the sub-combination.
[0078] In some cases, multitasking and parallel processing may be advantageous. In addition, the separation of the various components in the above-described embodiments should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
Claims
1. A method of suppressing banding artifacts (25) in an ophthalmic image (22) of an eye of a patient, the method comprising: Segmenting the ophthalmic image (22) into a plurality of segments (30) partially overlapping each other, wherein each segment of the plurality of segments (30) includes one or more overlapping regions, wherein each overlapping region is a region where the segment overlaps with a corresponding adjacent segment of the plurality of segments (30); applying an image correction algorithm (20) to suppress the banding artifacts (25) in the plurality of segments (30), the image correction algorithm (20) computing a discrete cosine transform of each segment in the plurality of segments (30); removing at least a portion of the one or more overlapping regions from each of the plurality of segments (30) to remove artifacts (68) introduced by the image correction algorithm (20), thereby generating a corresponding corrected segment; and The corrected segments are combined to generate a corrected ophthalmic image (24), the corrected ophthalmic image (24) comprising less of the banding artifact (25) than the ophthalmic image (22).
2. The method according to claim 1, further comprising: Filtering is performed in the frequency domain after the discrete cosine transform is calculated to remove at least one of a low frequency signal and a high frequency signal from each of the plurality of segments (30).
3. The method according to claim 2, wherein: The filtering includes removing discrete cosine transform coefficients having an absolute value equal to or above a threshold value from each of the plurality of segments (30).
4. The method according to any one of claims 1 to 3, further comprising: A window function is applied to the calculated discrete cosine transform of each segment (30), wherein the window function is applied to window a bin in the discrete cosine transform of each segment (30) to attenuate the banding artifact (25) in the discrete cosine transform of each segment (30), the bin corresponding to a spatial frequency of the banding artifact (25).
5. The method according to claim 4, wherein: The window function includes a function for filtering a sub-component of a second frequency corresponding to a harmonic of the spatial frequency of the banding artifact (25), wherein the sub-component is applied to window the bin corresponding to the sub-frequency in the discrete cosine transform of each segment (30).
6. The method according to claim 4 or claim 5, wherein: The window function is a Hanning window.
7. The method according to any one of claims 1 to 6, wherein: Applying the image correction algorithm (20) further comprises, for each segment of the plurality of segments (30), computing a corresponding inverse discrete cosine transform of the segment after the discrete cosine transform has been computed for the segment.
8. The method according to any one of claims 1 to 7, wherein: Combining the corrected segments (30) to generate the corrected ophthalmic image (24) includes blending a peripheral region (62) of a first one of the corrected segments with a peripheral region of an adjacent one of the corrected segments.
9. A non-transitory computer readable storage medium having stored thereon a computer program comprising instructions which, when executed by a processor, cause the processor to perform the method according to any preceding claim.
10. An ophthalmic imaging system (10) for imaging an eye of a patient, the ophthalmic imaging system (10) comprising: A light source (14) is arranged to emit a light beam (L b ); A scanning system (12) comprising a polygonal scanning mirror (205), wherein the polygonal scanning mirror (205) is arranged to scan the light beam (L) over a region of an eye of a patient b ); a photodetector (16) optically coupled to the scanning system (12), wherein the photodetector (16) is configured to generate a detection signal (S) based on light reflected by the patient's eye d );and Data processing hardware (18) configured to receive the detection signal (S) from the photodetector (16) d ), and based on the received detection signal (S d ) to generate an ophthalmic image (22) of an eye of a patient, wherein the ophthalmic image (22) includes a banding artifact (25); Wherein, the data processing hardware (18) is further configured to: Segmenting the ophthalmic image (22) into a plurality of segments (30) partially overlapping each other, wherein each segment (30) of the plurality of segments (30) includes one or more overlapping regions, wherein each overlapping region is a region where the segment overlaps with a corresponding adjacent segment of the plurality of segments (30); applying an image correction algorithm (20) to suppress the banding artifacts (25) in the plurality of segments (30), the image correction algorithm (20) computing a discrete cosine transform of each segment in the plurality of segments (30); removing at least a portion of the one or more overlapping regions from each of the plurality of segments (30) to remove artifacts (68) introduced by the image correction algorithm (20), thereby generating corrected segments; and Each of the corrected segments is combined to generate a corrected ophthalmic image (24), the corrected ophthalmic image (24) comprising less of the banding artifact (25) than the ophthalmic image (22).
11. The ophthalmic imaging system (10) according to claim 10, wherein: The data processing hardware (18) is further configured to perform filtering in the frequency domain after computing the discrete cosine transform to remove at least one of low frequency signals and high frequency signals from each of the plurality of segments (30).
12. The ophthalmic imaging system (10) according to claim 10 or claim 11, wherein: The data processing hardware (18) is also configured to apply a window function to the calculated discrete cosine transform of each segment (30), wherein the window function is applied to window a bin in the discrete cosine transform of each segment (30) to attenuate the banding artifact (25) in the discrete cosine transform of each segment (30), the bin corresponding to the spatial frequency of the banding artifact (25).
13. The ophthalmic imaging system (10) according to claim 12, wherein: The window function includes at least one of the following: a secondary component for filtering a second frequency corresponding to a harmonic of the spatial frequency of the banding artifact (25), wherein the secondary component is applied to window a bin in the discrete cosine transform of each segment (30) corresponding to the secondary frequency; or Hanning window.
14. The ophthalmic imaging system (10) according to any one of claims 10 to 13, wherein: Applying the image correction algorithm (20) further comprises, after the discrete cosine transform has been calculated for each partially overlapping segment (30), calculating, for each segment of the plurality of segments (30), a corresponding inverse discrete cosine transform of the segment.
15. The ophthalmic imaging system (10) according to any one of claims 10 to 14, wherein: Combining the corrected segments to generate the corrected ophthalmic image (24) includes fusing a peripheral region (62) of a first one of the corrected segments with a peripheral region (62) of an adjacent one of the corrected segments.
