Machine learning for assessing clinical significance of vitreous floats
By receiving images of the patient's eyes, identifying and processing measurements of shadowed areas, and evaluating the clinical significance of vitreous floating objects using machine learning models, it solves the problem that it is difficult to effectively evaluate the clinical significance of floating objects in the prior art, and realizes the accurate assessment of visual impairment and the formulation of treatment plans.
Patent Information
- Application Number
- CN202380052984.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-07-13
- Filing Date
- 2023-07-12
- Publication Date
- 2025-03-04
AI Technical Summary
Floating objects in the vitreous body can lead to the appearance of shadows on the retina, which can lead to visual impairment. The prior art is difficult to effectively evaluate and deal with the clinical significance of these floating objects.
The image of the patient's eyes is received through a computing device, the shadowed area is identified, and the measurements are processed to obtain measurements. These measurements are processed using machine learning models to estimate the clinical significance of vitreous floating objects.
It achieves an effective assessment of the clinical significance of vitreous floats, provides an accurate estimate of the severity of visual impairment in patients, and helps medical professionals develop appropriate treatment plans.
Smart Images

Figure CN119563208A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of U.S. Provisional Patent Application No. 63 / 388,901, filed on July 13, 2022, the entire contents of which are incorporated herein by reference in their entirety. Background Art
[0003] Light enters the human eye through the clear cornea, which covers the iris and pupil of the eye. The light travels through the pupil and is focused by the lens, which is located behind the pupil in a structure called the capsular bag. The light is focused by the lens onto the retina, which consists of rods and cones, which generate nerve impulses in response to light. The space between the lens and the retina is occupied by a clear gel called the vitreous body.
[0004] Floaters may appear in the vitreous for a variety of reasons. Floaters are usually composed of clumps of cells, collagen fibers, or other tissues and are more opaque than the surrounding vitreous. Floaters can cast shadows on the retina, causing visual disturbances that can be severe for some patients.
[0005] Facilitating the treatment of floaters would be an advancement in this field. Summary of the invention
[0006] The present disclosure generally relates to systems and methods for assessing the clinical significance of vitreous floaters. In one aspect, a computing device receives one or more images of an eye of a patient and identifies one or more shadow regions in the one or more images. The shadow regions are processed to obtain one or more measurements of the shadow regions. The computing device processes the one or more measurements using a machine learning model to obtain an estimated clinical significance of floaters in the eye of the patient.
[0007] The following description and the associated drawings set forth in detail certain illustrative features of the one or more embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Certain aspects of one or more embodiments are depicted in the accompanying drawings, and therefore should not be considered to limit the scope of the disclosure.
[0009] Figure 1A is a schematic cross-sectional view of an eye with floaters.
[0010] Figure 1B is a retinal image showing shadows caused by floaters and measurements used to characterize the shadows, in accordance with some embodiments.
[0011] Figure 2Ais a schematic block diagram of components for characterizing clinically significant floaters using a machine learning model according to certain embodiments.
[0012] Figure 2B is a schematic block diagram of components for characterizing clinically significant floaters using a machine learning model and visibility threshold data, according to certain embodiments.
[0013] Figure 3 is a process flow diagram of a method for characterizing the clinical significance of floaters using a machine learning model and visibility threshold data, according to certain embodiments.
[0014] Figure 4 An example computing device that implements, at least in part, one or more functions of characterizing the clinical significance of vitreous floaters in accordance with certain embodiments is presented.
[0015] To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. It is contemplated that elements and features of one embodiment may be beneficially incorporated in other embodiments without further recitation. DETAILED DESCRIPTION
[0016] refer to Figure 1A , the human eye 100 includes a cornea 102, which is a spherical transparent layer through which light enters the eye 100. The light then passes through the anterior chamber 138, pupil 104, and lens 106 of the eye 100, respectively. The remaining volume of the eyeball 108 of the eye 100 (called the posterior chamber or vitreous cavity 140) is occupied by a transparent gel called vitreous 110. The light is focused by the cornea 102 and lens 106, and reaches the retina 112 at the back of the eye 100 through the vitreous 110.
[0017] Vitreous floaters 114 are clumps of cells, collagen fibers, or other contaminants within the vitreous 110. When vitreous floaters 114 are present, they cast a shadow 116 on the retina 112. The shadow 116 may occupy a certain angular range 118 of the visual field of the eye 100. When the floaters 114 are large enough, opaque, and / or numerous enough, they may become disturbing and significantly interfere with the patient's vision. When the shadow 116 of the floaters 114 moves over the fovea, the patient's vision may be reduced.
[0018] refer to Figure 1B, an image 120 of the retina 112 may be obtained, such as using a scanning laser ophthalmoscope (SLO), a visible light camera, an optical coherence tomography (OCT) microscope, or other imaging modality. For example, the image 120 may be an en face image captured using an SLO or OCT microscope. A portion of the light transmitted onto the retina 112 to capture the image 120 will be scattered by any floaters 114 in the vitreous body 110, resulting in a shadow region 122 appearing in the image 120.
[0019] Shadow region 122 may be identified as having contrasting pixel intensities relative to the area surrounding shadow region 122. Floaters 114 tend to move, such that shadow region 122 may be identified in image 120 as having a different intensity relative to the intensity of shadow region 122 in a previous or subsequent image in a series of video image frames that includes image 120. For example, each image in a series of images may be registered relative to a reference feature of the retina, such as the pattern of the vasculature (e.g., veins) of the retina, to track and compensate for eye movement. In such an example, changes from one registered image to another registered image may therefore correspond to shadow 116 of floater 114. Shadow region 122 may be identified using any method for detecting moving objects relative to a stationary background, wherein eye movement compensation is performed in the same manner as such methods are used to compensate for camera motion. Still or video images 120 may be analyzed using a machine learning model trained to identify shadow region 122 corresponding to floaters 114.
[0020] Various metrics of the shadow region 122 of each floating object 114 can be extracted from the image 120. For example, the shadow region 122 has a certain size. The size can be measured as the area (e.g., number of pixels) within the boundary 124 of the shadow region. The size of the shadow region 122 can also be obtained more simply as the size of a two-dimensional bounding box that is either orthogonal (sides are parallel to the rows and columns of pixels in the image 120) or oriented to coincide with the shadow region 122. The size can be represented by the two-dimensional dimensions of the floating object 114, such as the longest line that may be contained within the shadow region 122.
[0021] The shadow region 122 may be characterized by the contrast of the shadow region 122 relative to the surrounding regions of the image 120. For example, the average pixel intensity of the image pixels of the shadow region 122 may be divided by the average intensity of the pixels outside the shadow region 122 (e.g., a pixel band having a certain depth of one or more pixels around the boundary 124 of the shadow region 122) to obtain the contrast. Any method for characterizing the contrast between regions of an image may also be used.
[0022] The movement of the shadow region 122 from one image to the next in a series of video frames 120 can also be measured or characterized. Any motion tracking method known in the art (such as a Kalman filter or similar algorithm) can be used to detect movement. Movement can be characterized based on speed and / or direction of movement. For example, movement can be characterized as a velocity component 126 of the shadow region 122 toward or away from the fovea 128 (i.e., a representation of the fovea of the eye 100 in the image 120). In some embodiments, the movement of the shadow region 122 is characterized as stationary (e.g., movement less than a threshold), toward the fovea 128, or away from the fovea 128.
[0023] The shaded area 122 may be characterized by the position of the shaded area 122 relative to the fovea 128. For example, the distance between the shaded area 122 and the fovea 128 may be calculated as the shortest distance from the center of the fovea 128 to the point on the shaded area 122 that is closest to the center of the fovea 128. In another example, the shaded area 122 may be characterized as overlapping the fovea 128, the juxtafovea 130, the parafovea 132, the macula 134, or the peripheral area 136 of the retina 112. For example, the shaded area 122 may be characterized as the innermost area of the fovea 128, the juxtafovea 130, the parafovea 132, the macula 134, or the peripheral area 136 that overlaps at least a portion of the shaded area 122.
[0024] The location of the fovea 128, juxtafovea 130, parafovea 132, macula 134, or peripheral region 136 of the eye in the image 120 may be estimated based on the location in the image 120, i.e., the center of the image 120 may be assumed to be the center of the fovea, and generally accepted values may be used for the fovea 128, juxtafovea 130, parafovea 132, macula 134, and peripheral region 136. One skilled in the art may readily identify the fovea as a darker spot having a size of approximately 0.3 mm (approximately 1° of visual angle) and a characteristic geometry of the retinal vasculature.
[0025] The above-mentioned indicators of each shadow region 122 are merely exemplary, and other characteristics of each shadow region 122 may also be measured. For example, when there are multiple floating objects, the indicators may include one or more separation distances between shadow regions, the average separation between floating objects, the spatial frequency of the shadow pattern formed by the shadow regions 122 of the floating objects (e.g., a two-dimensional Fourier transform of the shadow pattern), and the spatial and temporal frequency of the shadow pattern (e.g., a three-dimensional Fourier transform of the shadow pattern of a series of video frames 120).
[0026] Figure 2AA system 200a is shown for training a machine learning model 202 for characterizing the clinical significance of floaters 114 in an eye 100 based on one or more shadow regions 122 in one or more images 120 of a retina 112 of the eye 100. The machine learning model may be implemented as a neural network, a deep neural network, a convolutional neural network, a multivariate linear regression model, a random sample consensus regression model, a multivariate polynomial regression model, a support vector regression model, a Bayesian neural network, a genetic algorithm, or any other type of machine learning model.
[0027] The machine learning model 202 may be trained by one or more training algorithms 204 to output an estimated category 206 of the clinical significance of the floater 114. The clinical significance may be one of a set of discrete values, each corresponding to a certain degree of severity, such as not seen (e.g., unnoticeable), noticeable, irritating, decreased visual acuity, or clinical symptoms (e.g., requiring treatment to maintain vision).
[0028] The machine learning model 202 may take as input metrics of the shadow region 122, such as size 208, contrast 210, direction of movement 212, and position 214. These metrics may be used as described above with respect to Figure 1B or obtained by some other method. Figure 1B Any of the other indicators described may be used instead of or in addition to Figure 2A The indicators shown in .
[0029] In some embodiments, the size of the shadow region 122 is assigned to one of a set of bins representing a range of possible sizes, represented herein by the following exemplary identifiers: very small (XS), small (S), large (L), very large (XL). Thus, the input to the machine learning model 202 may be an identifier of a bin that maps to a size range that includes the size of a given shadow region 122 in the image 120. Any number of bins may be used, and any size range may be assigned to each bin, with the size range of each bin not overlapping with the size range of another bin.
[0030] In a similar manner, a range of possible contrasts can be divided into non-overlapping sub-ranges, each sub-range being assigned to a bin having a bin identifier (e.g., high, medium, and low). Thus, the shadow area contrast 210 input to the machine learning model 202 can be an identifier of a bin having an assigned sub-range of contrast that includes the shadow area 122.
[0031] The movement direction 212 input to the machine learning model 202 can be one of two values, one indicating movement toward the fovea 128 and the other indicating movement away from the fovea. Alternatively or additionally, other representations of the movement of the shadow region 122 can be input into the machine learning model 202.
[0032] The location 214 input to the machine learning model 202 can be an identifier of the nearest area of the retina 112 that overlaps the shadow area 122. For example, the identifier can correspond to some or all of the fovea, juxtafovea, parafovea, macula, or peripheral areas of the retina 112. Alternatively, the distance between the center of the fovea and the point on the shadow area 122 closest to the fovea can also be used. Identifiers of bins mapped to a range of distances including the distance can also be used as the location 214 input to the machine learning model 202.
[0033] The training of the machine learning model 202 can be accomplished using a plurality of training data entries. Each training data entry can include a set of inputs including some or all of the metrics described herein, such as size 208, contrast 210, direction of movement 212, location 214 of the shadow region 122, or any other example metric described herein. Each training data entry further includes an assigned category as a desired output. The assigned category can be one of the output categories 206 assigned to the training data entry by a human expert based on observation of the image 120 including the shadow region 122 or based on observation of the patient (whose eyes are represented in the image 120). The assigned category can also be assigned based on the patient's rating of the severity of the floaters 114 causing the shadow region 122.
[0034] Each training data entry may be processed by inputting an input into the machine learning model 202, receiving an estimated category, and comparing the estimated category to the assigned category of the training data entry. The training algorithm 204 may then update the machine learning model 202 based on any difference or "loss" between the estimated category and the assigned category of the training data entry. For example, each category may be assigned an integer value i, such that the loss function evaluated by the training algorithm is |i1-i0| or a function thereof, where i1 is the index of the assigned category and i0 is the index of the estimated category.
[0035] During use, an image 120 is received, any shadow regions 122 are identified and their indices are calculated. These indices are processed using a machine learning model 202 to obtain an estimated category, which is then output to a user, such as on a display device.
[0036] Figure 2BAn alternative system 200b is presented for training a machine learning model for characterizing the clinical significance of floaters using visibility threshold data. The visibility threshold data includes experimental data characterizing the ability of a human observer to distinguish features. The experimental data may include data specific to floaters, and may additionally or alternatively include data non-specific to floaters, such as data characterizing the effectiveness of camouflage. Specifically, the experimental data may define a threshold surface based on three or two variables, the threshold surface defining a boundary between a combination of visible values of two or more variables and a combination of two or more invisible values.
[0037] Non-limiting example sources of visibility threshold data may include any of the following, all of which are incorporated herein by reference in their entirety: "Motion and Vision. II. Stabilized Spatio-Temporal Threshold Surface", DH Kelly, J. Opt. Soc. Am., Vol. 69, No. 10 (October 1979); "Contrast Sensitivity of the Human Eye and its Effects on Image Quality", Barten, PG (1999); "The contrast sensitivity gradient across the human visual field: With emphasis on the low spatial frequency range", Pointer, JS and Hess, RF Vision Research, 29 (9), 1133–1151 (1989); "Visual Processing of Moving Stimuli [Visual Processing of Moving Stimuli],” D. H. Kelly, J. Opt. Soc. Am., Vol. 2, No. 2 (February 1985); “Retinal Inhomogeneity. I. Spatiotemporal Contrast Sensitivity [Retinal Inhomogeneity. I. Spatiotemporal Contrast Sensitivity],” J. Opt. Sec. Am., Vol. 1, No. 1 (January 1984); “Retinal Inhomogeneity. II. Spatial Summation [Retinal Inhomogeneity. II. Spatial Summation],” J. Opt. Soc. Am., Vol. 1, No. 1 (January 1984); “Retinal Inhomogeneity. III. Circular-Retina Theory [Retinal Inhomogeneity. III. Circular-Retina Theory],” D. H. Kelly, J. Opt. Soc. Am., Vol. 2, No. 6 (June 1985); “Motion andVision.II.Stabilized Spatio-Temporal Threshold Surface[Motion and Vision.II. Stable Spatiotemporal Threshold Surfaces]”, J. Opt. Soc. Am., Vol. 69, No. 10 (October 1979); “Contrast Sensitivity of the Human Eye and its Effects on Image Quality”, PGJ Barten, SPIE Optical Engineering Press (1999).
[0038] Non-limiting examples of variables that may define a threshold surface may include: spatial frequency (cycles per degree of visual field); temporal frequency (Hz); speed (degrees / second); modulation (e.g., amplitude of spatial or temporal contrast); and eccentricity (e.g., distance from the fovea measured in degrees).
[0039] Examples of threshold surfaces include a first surface defined according to spatial frequency, speed and / or modulation amplitude and a second surface defined according to spatial frequency, eccentricity and modulation amplitude; a third surface defined according to spatial frequency, temporal frequency and / or modulation amplitude.
[0040] The system 200b may include a visibility threshold data comparator 216 that may evaluate the shadow pattern of the one or more shadow regions 122 relative to experimental data. For example, for each threshold surface of one or more threshold surfaces defined by two or more variables, the visibility threshold data comparator 216 may calculate values of the two or more variables of the shadow pattern and evaluate the values with respect to the two or more variables to determine whether the values of the two or more variables indicate that the shadow pattern is visible.
[0041] The visibility threshold data comparator 216 may perform one or more evaluations for each threshold surface. The one or more evaluations may include evaluating whether the values of two or more variables of the shadow pattern are above the threshold surface, i.e., visible. The one or more evaluations may include calculating the distance (D) between the values of the two or more variables defining the threshold surface j and the nearest point on the threshold surface j. T (j)), where j is the index assigned to each threshold facet used.
[0042] The machine learning model 202 can take the same inputs as the system 200a and can output the same estimated categories as the system 200a. The training data entries used to train the machine learning model 202 can also be the same as described above with respect to the system 200a. However, the training algorithm 204 can be modified relative to the algorithm described for the system 200a. More specifically, the training algorithm 204 can evaluate the estimated categories obtained by processing the inputs of the training data entries relative to the output of the visibility threshold data comparator 216. For example, let each possible output category 206 have an index i. Each image 120 in a set of images can be assigned an assigned category i by a human assessor (e.g., a trained medical professional or a patient for whom each image 120 was taken). The values of the variables defining each threshold surface j can also be calculated for each image 120. The distance D of the value of each image from each threshold surface j can be calculated. T (j). Therefore, for each output category i and threshold surface j, there will be a distance distribution of images 120 assigned to that output category i. This distribution can be used to define the probability distribution P ij (D T (j)), so that for any given distance D T (j), P ij (D T (j)) is the distance D that the image 120 assigned to category i will be located from the threshold surface j. T The probability of (j).
[0043] Assume that the estimated category of one or more input images 120 is i0. The D T (j) and obtain P relative to each threshold surface j i0j (D T (j)) to calculate the loss function used by the training algorithm 204.
[0044] The loss function can be P for all threshold faces j i0j (D T (j)) function, so that the loss function increases with P i0j (D T (j)) decreases. For example, the loss function can be or Or a function thereof, where N is the number of threshold faces. Note that the preceding equation is only exemplary and P can also be used. i0j (D T (j)) other functions, so that the loss function increases with P i0j (D T(j)) decreases. The loss function may also be a function of the difference between the estimated category and the assigned category of the training data entry. For example, the loss function may also be a function of |i1-i0|, where i1 is the index of the assigned category and i0 is the index of the estimated category.
[0045] The training algorithm 204 can train the machine learning model 202 to minimize the loss function within any constraints (e.g., available data, possible number of iterations).
[0046] Using the above method, the training algorithm 204 will train the machine learning model 202 to attempt to assign each image 120 to an output category 206 such that the distance D of the image 120 is T (j) is closer to the peak of the probability distribution for that category 206 than to the peaks of the probability distributions for other possible categories 206. Because the probability distribution is more continuous with respect to a limited number of categories (e.g., the five shown), the training algorithm 204 can more easily converge to parameters that are appropriate for the machine learning model 202.
[0047] Once trained, use of the machine learning model 202 may be the same as described above with respect to the system 200a. In some embodiments, visibility threshold data is not used during use.
[0048] Figure 3 A method 300 is shown for training a machine learning model 202 for determining the clinical significance of floaters using visibility threshold data. The method 300 may be performed for images 120. For example, for each eye of each of a plurality of patients, each training data entry may be generated using a series of two or more images 120. Each series of two or more images 120 may have a corresponding category 206 (“assigned category”) assigned by a human (e.g., a patient or a trained expert).
[0049] The method 300 may include identifying a shadow region 122 in the two or more images 120 corresponding to the floating object 114 at step 302. As described above, the shadow region 122 may be identified based on movement indicated in the two or more images 120 or using any other method.
[0050] The method 300 may include measuring the shadow area 122 in step 304. Measuring the shadow area 122 may include obtaining the above-mentioned Figure 2A Any of the metrics described (size 208 , contrast 210 , direction of movement 212 , position 214 , etc.) Measuring shadow areas may include calculating values for any of the above variables used to define any visibility threshold surfaces used in method 300 .
[0051] Method 300 may include processing the above-mentioned Figure 2A Method 300 further includes processing the measured values of shadow region 122 in step 308 to obtain values of two or more variables defining one or more visibility threshold surfaces.
[0052] The method 300 may include calculating a loss function with respect to the value of the estimated category and the two or more values in step 310. For example, as described above, the loss function may be a function of the probability distribution of the two or more values and the estimated category. Then, in step 312, the machine learning model 202 is updated by the training algorithm 204.
[0053] Figure 4 Demonstrates at least partial implementation of the invention Figures 1A to 3 An example computing system 400 that can implement one or more of the functions described herein. The computing system 400 can be integrated with an imaging device such as an SLO, or can be a separate computing device that receives an image of a patient's eye from the imaging device.
[0054] As shown, the computing system 400 includes a central processing unit (CPU) 402, one or more I / O device interfaces 404 that can allow various I / O devices 414 (e.g., keyboard, display, mouse device, pen input, etc.) to be connected to the computing system 400, a network interface 406 through which the computing system 400 is connected to a network 490 (which can be a local network, an intranet, the Internet, or any other group of computing systems communicatively connected to each other, as described with respect to FIG. 1), memory 408, storage devices 410, and interconnects 412.
[0055] In the case where the computing system 400 is an imaging system (such as a digital microscope, an OCT microscope, or an SLO), the computing system 400 may further include one or more optical components for obtaining ophthalmic imaging of the patient's eye and any other components known to those of ordinary skill in the art. In the case where the computing system 400 is a surgical microscope, the computing system 400 may further include many other components known to those of ordinary skill in the art for performing ophthalmic surgeries as described herein and known to those of ordinary skill in the art.
[0056] CPU 402 can retrieve and execute programming instructions stored in memory 408. Similarly, CPU 402 can retrieve and store application data residing in memory 408. Interconnect 412 transmits programming instructions and application data between CPU 402, I / O device interface 404, network interface 406, memory 408, and storage device 410. CPU 402 is included to represent a single CPU, multiple CPUs, a single CPU with multiple processing cores, etc.
[0057] The memory 408 represents a volatile memory such as a random access memory and / or a non-volatile memory such as a non-volatile random access memory, a phase change random access memory, etc. As shown, the memory 408 can store the machine learning model 202 during training and use. For the computing system 400 used to train the machine learning model 202, the memory 408 can further store the training algorithm 204.
[0058] The storage device 410 may be a non-volatile memory such as a disk drive, a solid-state drive, or a collection of storage devices distributed across multiple storage systems. The storage device 410 may optionally store training data entries 416 to train the machine learning model 202 using the above-described methods. The storage device 410 may store visibility threshold data 418, for example, data describing one or more visibility threshold surfaces and algorithms for calculating values of variables defining one or more visibility threshold surfaces based on shadow patterns.
[0059] Additional considerations
[0060] The foregoing description is provided to enable any person skilled in the art to practice the various embodiments described herein. Various modifications to these embodiments are clear to those skilled in the art, and the general principles defined herein may be applied to other embodiments. For example, without departing from the scope of the present disclosure, the function and arrangement of the elements discussed may be changed. Various examples may appropriately omit, replace or add various programs or components. In addition, the features described with respect to some examples may be combined in some other examples. For example, any number of aspects set forth herein may be used to implement a device or practice method. In addition, the scope of the present disclosure is intended to cover devices or methods practiced using other structures, functions, or structures and functions in addition to or different from the various aspects of the present disclosure set forth herein. It should be understood that any aspect of the present disclosure disclosed herein may be embodied by one or more elements of the claims.
[0061] As used herein, the phrase "at least one of" a list of items refers to any combination of those items, including single members. For example, "at least one of a, b, or c" is intended to cover any combination of a, b, c, ab, ac, bc, and abc, as well as multiples of the same element (e.g., aa, aaa, aab, aac, abb, acc, bb, bbb, bbc, cc, and ccc or any other order of a, b, and c).
[0062] As used herein, the term "determining" encompasses a wide variety of actions. For example, "determining" may include calculating, computing, processing, deriving, investigating, searching (e.g., searching in a table, database, or other data structure), ascertaining, etc. Also, "determining" may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), etc. Also, "determining" may include resolving, selecting, choosing, establishing, etc.
[0063] The method disclosed herein includes one or more steps or actions for implementing the method. Without departing from the scope of the claims, the method steps and / or actions can be interchangeable with each other. In other words, unless a specific step or action sequence is specified, the order and / or use of specific steps and / or actions can be modified without departing from the scope of the claims. Further, the various operations of the above-mentioned method can be performed by any suitable device that can perform the corresponding function. These devices may include various hardware and / or software components and / or modules, including but not limited to circuits, application specific integrated circuits (ASICs) or processors. Generally, in the case of operations shown in the figure, those operations can have corresponding corresponding devices with similar numbers plus functional components.
[0064] The various illustrative logical blocks, modules, and circuits described in conjunction with the present disclosure may be implemented or executed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device (PLD), discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in an alternative, the processor may be any commercially available processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
[0065] The processing system can be implemented with a bus architecture. Depending on the specific application and overall design constraints of the processing system, the bus may include any number of interconnecting buses and bridges. The bus may link together various circuits including a processor, a machine-readable medium, and an input / output device. A user interface (e.g., a keyboard, a display, a mouse, a joystick, etc.) may also be connected to the bus. The bus may also link various other circuits such as timing sources, peripherals, voltage regulators, power management circuits, etc., which are well known in the art and therefore will not be described further. The processor may be implemented with one or more general and / or special processors. Examples include microprocessors, microcontrollers, DSP processors, and other circuit systems that can execute software. Those skilled in the art will recognize how to best implement the described functions of the processing system according to the specific application and the overall design constraints imposed on the entire system.
[0066] If implemented in software, the function may be stored as one or more instructions or codes on a computer-readable medium or transmitted via a computer-readable medium. Software should be broadly interpreted as instructions, data, or any combination thereof, whether referred to as software, firmware, middleware, microcode, hardware description language, or other. Computer-readable media include both computer storage media and communication media (such as any medium that facilitates the transfer of computer programs from one place to another). The processor may be responsible for managing the bus and general processing, including the execution of software modules stored on a computer-readable storage medium. A computer-readable storage medium may be coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. In an alternative, the storage medium may be integrated with the processor. For example, a computer-readable medium may include a transmission line, a carrier modulated by data, and / or a computer-readable storage medium on which instructions separated from a wireless node are stored, all of which may be accessed by a processor via a bus interface. Alternatively or in addition, a computer-readable medium or any portion thereof may be integrated into a processor, such as a cache and / or a general register file. For example, examples of machine-readable storage media may include RAM (random access memory), flash memory, ROM (read-only memory), PROM (programmable read-only memory), EPROM (erasable programmable read-only memory), EEPROM (electrically erasable programmable read-only memory), registers, magnetic disks, optical disks, hard drives, or any other suitable storage media, or any combination thereof. Machine-readable media may be embodied in a computer program product.
[0067] A software module may include a single instruction or multiple instructions, and may be distributed over several different code segments, between different programs, and across multiple storage media. A computer-readable medium may include multiple software modules. A software module includes instructions that, when executed by a device such as a processor, cause a processing system to perform various functions. A software module may include a transmission module and a reception module. Each software module may exist in a single storage device, or may be distributed across multiple storage devices. For example, when a triggering event occurs, a software module may be loaded from a hard drive into a RAM. During the execution of a software module, a processor may load some instructions into a cache to increase access speed. Then, one or more cache lines may be loaded into a general register file for execution by the processor. When referring to the function of a software module, it should be understood that such function is implemented by the processor when executing instructions from the software module.
[0068] The following claims are not intended to be limited to the embodiments shown herein, but are given the full scope consistent with the language of the claims. In the claims, unless otherwise specified, reference to a singular element is not intended to mean "one and only one", but "one or more". Unless otherwise specifically stated, the term "some" refers to one or more. According to 35 U.S.C. § 112 (f), the elements of any claim will not be interpreted unless the phrase "device for..." is used to expressly describe these elements, or in the case of a method claim, the phrase "step for..." is used to describe these elements. All structural and functional equivalents of the elements of the various aspects described throughout this disclosure that are known or will be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be covered by the claims. In addition, whether or not such disclosure is explicitly described in the claims, the content disclosed herein is not intended to be committed to the public.
Claims
1. A method for training a machine learning model to characterize floating objects, the method comprising: For each training data entry in the multiple training data entries: processing, by a computing device, input data from each training data entry using a machine learning model to obtain an estimated clinical significance of the floater, the input data describing one or more shadowed areas in one or more images of a retina of an eye of a patient; (a) evaluating, by the computing device, the estimated clinical significance relative to output data from each training data item and visibility threshold data; as well as The machine learning model is updated by the computing device according to the result of (a).
2. The method of claim 1, wherein the one or more images comprise a series of video frames; and in, The input data includes one or more of the following: a size of each of the one or more shadow regions; a contrast ratio of each of the one or more shadow regions; a direction of movement of each of the one or more shadow regions; as well as Each of the one or more shaded regions is located relative to a representation of a fovea of the patient's eye in the one or more images. The method of claim 1 , wherein the visibility threshold data comprises a visibility threshold surface defined by two or more variables.
4. The method of claim 3, wherein the two or more variables include two or more of the following: Spatial frequency; Time frequency; modulation amplitude; and Eccentricity. The method of claim 2 , wherein the visibility threshold data comprises a visibility threshold surface defined by two or more variables.
6. The method of claim 5, wherein the two or more variables include spatial frequency, velocity, and modulation amplitude.
7. The method of claim 5, wherein the two or more variables include spatial frequency, eccentricity, and modulation amplitude.
8. The method of claim 5, wherein the two or more variables include spatial frequency, temporal frequency, and modulation amplitude.
9. The method of claim 1, wherein the one or more images include images from a scanning laser ophthalmoscope.
10. The method of claim 1, wherein estimating clinical significance comprises selecting from a set of possible output categories.