Method and system for generating device-specific oct image data

By using a unified domain generator and a conditional generator in a machine learning model, the problem of differences in image characteristics between different OCT devices was solved, enabling image consistency comparison and quality improvement across different medical facilities.

CN116569210BActive Publication Date: 2025-11-28INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202180079356.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-12-08
Filing Date
2021-10-28
Publication Date
2025-11-28
Estimated Expiration
2041-10-28

AI Technical Summary

Technical Problem

Differences in image characteristics between different OCT image capture devices make it difficult for medical professionals to compare images of the same patient across different medical facilities, especially as variations in resolution and noise type affect image comparability.

Method used

By employing machine learning models, particularly generative adversarial networks (GANs), image data from different OCT devices are normalized into a unified representation through a unified domain generator and a conditional generator, and device-specific OCT image scans are generated based on the resolution and noise type of the target device.

Benefits of technology

It achieves unified representation and quality improvement of images from different OCT devices, enabling medical professionals to make consistent image comparisons across different medical facilities while maintaining high resolution and low noise characteristics of the images.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116569210B_ABST
    Figure CN116569210B_ABST
Patent Text Reader

Abstract

In one aspect for generating device-specific OCT images, one or more processors can be configured to receive, at a unified domain generator, first image data corresponding to OCT image scans captured by one or more OCT devices; process, by the unified domain generator, the first image data to generate second image data corresponding to a unified representation of the OCT image scans; determine, by a unified discriminator, third image data corresponding to a quality subset of the unified representation of the OCT image scans having a base resolution that satisfies a first condition and a base noise type that satisfies a second condition; and process, using a condition generator, the third image data to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution that satisfies a third condition and a device-specific noise type that satisfies a fourth condition.
Need to check novelty before this filing date? Find Prior Art

Description

BACKGROUND

[0001] The present invention relates generally to the field of image processing, and more specifically to normalizing optical coherence tomography (OCT) images independent of a scanner to generate device-specific OCT scans.

[0002] Different image processing solutions employ machine learning models as deep learning networks trained with a set of training images to classify a particular image set as one of the image types used to train the model. The deep learning model can be configured as a convolutional neural network (CNN), a generative adversarial network (GAN) trained model, or a deep neural network. GANs can include a generator network and a discriminator network used in combination to produce high resolution and low noise images.

[0003] Many medical facilities use a myriad of different types of computing devices to capture and process images used during medical diagnoses. As more and more images are uploaded to cloud servers and databases, these images come in different formats, resolutions, and noise types. It can be difficult for medical professionals to compare medical images captured at different medical facilities using different image capture device technologies with medical images captured at their resident medical facility having different image characteristics. SUMMARY

[0004] The present invention is described in various embodiments disclosing a method, computer program product, and computer system for generating device-specific OCT image data. One embodiment of the disclosure is a computer-implemented method for generating device-specific OCT image data, the computer-implemented method can include one or more processors configured to: receive, at a unified domain generator, first image data corresponding to an OCT image scan captured by one or more OCT devices; process, by the unified domain generator, the first image data to generate second image data corresponding to a unified representation of the OCT image scan. The computer-implemented method can also include one or more processors configured to determine, by a unified discriminator, third image data of a quality subset corresponding to the unified representation of the OCT image scan having a base resolution satisfying a first condition and a base noise type satisfying a second condition. The computer-implemented method can also include one or more processors configured to: process, by a condition generator, the third image data to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution satisfying a third condition and a device-specific noise type satisfying a fourth condition; and output the fourth image data to a user interface of a computing device.

[0005] In one embodiment, the computer-implemented method can include one or more processors configured to determine a resolution and a noise type for each of the OCT image scans and determine a resolution and a noise type for each of the OCT devices used to capture the OCT image scans.

[0006] In one embodiment, the computer-implemented method can include one or more processors configured to determine fifth image data corresponding to a device space subset of the device-specific OCT image scans having the device-specific resolution that satisfies the third condition and the device-specific noise type that satisfies the fourth condition.

[0007] In one embodiment, the computer-implemented method can include one or more processors configured to train the unified discriminator using the uniform spatial image data to produce high-quality normalized OCT image scans.

[0008] In embodiments, the second image data can be determined using a convolutional neural network (CNN) generator configured to map the OCT image scans to a uniform representation.

[0009] In one embodiment, the OCT image scans can be generated by OCT devices each having one of one or more resolution values and one of one or more noise type values.

[0010] In embodiments, the first condition can be that the base resolution exceeds a first predetermined threshold and the second condition is that the base noise type is less than a second predetermined threshold.

[0011] In embodiments, the third condition can be that the device-specific resolution is within a third predetermined threshold and the fourth condition can be that the device-specific noise type is within a fourth predetermined threshold. BRIEF DESCRIPTION OF DRAWINGS

[0012] Figure 1 A block diagram of a system for generating device-specific OCT image data is shown in accordance with embodiments of the present application;

[0013] Figure 2 A block diagram of a model for generating device-specific OCT image data is depicted in accordance with embodiments of the present application;

[0014] Figure 3 A block diagram of a trained model for generating device-specific OCT image data is depicted in accordance with embodiments of the present application;

[0015] Figure 4a flowchart depicting a computer-implemented method for generating device-specific OCT image data according to an embodiment of the present invention; and

[0016] Figure 5 a block diagram of a computing device of a system according to an embodiment of the present invention. Figure 1 DETAILED DESCRIPTION

[0017] The present invention addresses the problem of comparing images of the same object taken by different image capture devices.

[0018] Embodiments of the present invention provide a system and computer-implemented method for generating device-specific OCT image scans using machine learning models. Images captured by different OCT image capture devices have different characteristics, which can vary significantly within the range of OCT image capture devices. Among the varying characteristics, resolution and noise type are the most important, as resolution and noise type determine the amount of detail that a medical professional can see in the image. The computer-implemented method can be configured to transform the OCT images so that the transformed images have the characteristics of another device.

[0019] In embodiments, the method can include receiving OCT image data from different OCT image capture devices, and normalizing the OCT image data to include image characteristics that are generally consistent across the set of OCT image data. Further, the method can include classifying the OCT devices by resolution and noise type, and mapping the OCT image scans to a uniform representation using a uniform domain generator network (e.g., a CNN generator). Further, the method can include selecting images with the lowest noise level and highest resolution, where those selected images can represent the highest quality images from the mapped OCT image scans in the uniform representation. The images can be transformed using a conditional GAN, where resolution and noise type are input parameters to the conditional GAN.

[0020] Further, the method can include using a discriminator as part of the GAN to distinguish between the normalized and uniform OCT image scans. Further, the method can include training the uniform domain generator network (e.g., a CNN generator) to generate high quality normalized OCT image scans, and then feeding the normalized OCT image scans into a conditional generator network that can be configured to produce or generate device-specific OCT image scans depending on the selected resolution and noise type. Embodiments of the present invention provide OCT device characteristics, which can include, for example, axial resolution and scan speed.

[0021] ​A successfully trained GAN with about 50% discriminator performance and having avoided mode collapse produces random outputs spanning the full range of possible modes from the training data set. The generated outputs are similar to but generally different from the training data set samples.

[0022] In embodiments, the method utilizes cloud or edge cloud resources to train the generator and discriminator networks of the GAN's model. After training, the GAN either resides locally or on the cloud or edge cloud resources for use. In use, the GAN generates random outputs according to the trained distribution function and the training data set. For example, a GAN trained with images of handwritten numeric characters generates images of numeric characters that appear to be handwritten. Similarly, a GAN trained with handwritten alphabetic characters generates images of alphabetic characters that appear to be handwritten, a GAN trained with images of human faces generates images of human faces that appear to be human faces, and a GAN trained with audio files outputs similar audio files. In each example, the GAN generates outputs according to the training rather than simply reproducing samples from the training data set. In each example, the GAN produces outputs that are similar to but not simply selected from the training data set samples.

[0023] In embodiments, the method can be configured to convert a source OCT image scan into a uniform representation of the OCT image scan, wherein the OCT image scan can be mapped to the uniform representation using a CNN generator. The method can also be configured to convert the uniform representation of the OCT image scan into a target image of a desired format using a GAN, the desired format corresponding to a particular resolution and noise type of a particular OCT device. This enables medical professionals to compare images of the same patient taken in different medical facilities.

[0024] Embodiments of the present invention provide a computer-implemented method for generating device-specific OCT image data, which can include one or more processors configured to receive, at a uniform domain generator, first image data corresponding to OCT image scans captured by one or more OCT devices.

[0025] In one embodiment, the computer-implemented method can include one or more processors configured to process, by the uniform domain generator, the first image data to generate second image data corresponding to a uniform representation of the OCT image scans.

[0026] In one embodiment, the computer-implemented method can further include one or more processors configured to determine third image data corresponding to a quality subset of the uniform representation of the OCT image scans having a base resolution that satisfies a first condition and a base noise type that satisfies a second condition.

[0027] The computer-implemented method can further include one or more processors configured to process the third image data to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution that satisfies a third condition and a device-specific noise type that satisfies a fourth condition.

[0028] The computer-implemented method can further include one or more processors configured to output the fourth image data to a user interface of a computing device.

[0029] In one embodiment, the computer-implemented method can include one or more processors configured to determine, for each OCT image scan, a resolution and a noise type.

[0030] In one embodiment, the computer-implemented method can include one or more processors configured to determine, for each OCT device used to capture an OCT image scan, a resolution and a noise type.

[0031] In one embodiment, the computer-implemented method can include one or more processors configured to determine fifth image data corresponding to a device space subset of the device-specific OCT image scans having the device-specific resolution that satisfies the third condition and the device-specific noise type that satisfies the fourth condition.

[0032] In embodiments, the second image data can be determined using a convolutional neural network (CNN) generator configured to map the OCT image scans to the uniform representation. The OCT image scans can be generated by OCT devices each having one of one or more resolution values and one of one or more noise type values. The first condition can be that the base resolution exceeds a first predetermined threshold and the second condition is that the base noise type is less than a second predetermined threshold. The third condition can be that the device-specific resolution is within a third predetermined threshold and the fourth condition can be that the device-specific noise type is within a fourth predetermined threshold.

[0033] In one embodiment, the computer-implemented method can include one or more processors configured to train the unified discriminator using the unified spatial image data to produce high-quality normalized OCT image scans. During training, the unified discriminator receives image data corresponding to images generated by the unified domain generator and real images corresponding to the unified representation. The real images can include unified reference images selected from devices that generate high-quality (e.g., highest resolution and lowest noise) images. The unified discriminator can be configured to classify both the generated and real images and compute a loss to penalize incorrect classifications. Incorrect classifications can include classifying a generated image as a real image or classifying a real image as a generated image. As a result, the training generator (e.g., unified domain or conditional) to produce images that look like real images.

[0034] In an example scenario, a patient that has been diagnosed with glaucoma can be monitored in a first medical facility using a first OCT device. After two years of monitoring, the patient can change their residence to another city and, therefore, must be monitored in a second medical facility using a second OCT device that uses different image capture parameters (e.g., resolution, noise type) than the first OCT device. Furthermore, a medical professional can need to compare second OCT images captured at the second medical facility using the second OCT device with first OCT images captured at the first medical facility using the first OCT device. Therefore, the medical professional can request the first OCT images, apply the method of the present embodiment to the first OCT images to transform the first OCT images so that they look like they were captured with the second OCT device. During the transformation, the resolution and noise type of the second OCT device are used to perform the transformation operations. Therefore, the second medical facility can be enabled to continue monitoring the progression of the glaucoma diagnosis without interruption of image consistency due to changing medical facilities and using different OCT image capture equipment parameters.

[0035] The present application will now be described in detail with reference to the accompanying drawings.

[0036] Figure 1 A block diagram of a system 100 for generating device-specific OCT image data according to an embodiment of the present application is shown. Figure 1Only a diagram of one embodiment of the application is provided, and no implication is made that any limitations as to an environment in which different embodiments can be implemented are present. In the illustrated embodiment, system 100 includes computing device 120, server 125, database 124, uniform domain generator (UDG) 130, condition generator 132, uniform discriminator 140, and device discriminator 142 interconnected by network 110. Network 110 operates as a computing network, which can be, for example, a local area network (LAN), a wide area network (WAN), or a combination of both, and can include wired, wireless, or fiber optic connections. In general, network 110 can be any combination of connections and protocols that will support communications between computing device 120, server 125, database 124, uniform domain generator (UDG) 130, condition generator 132, uniform discriminator 140, and device discriminator 142. System 100 can also include additional servers, computers, sensors, or other devices not shown.

[0037] Computing device 120 operates to execute at least a portion of a computer program for generating device-specific OCT image data. Computing device 120 is configured to send and / or receive data from network 110 or from any other device connected to network 110. In some embodiments, computing device 120 can be a management server, a web server, or any other electronic device or computing system capable of receiving and sending data. In some embodiments, computing device 120 can be a laptop computer, a tablet computer, a netbook computer, a personal computer (PC), a desktop computer, a smart phone, or any programmable electronic device capable of communicating with database 124, server 125 via network 110. Computing device 120 can contain components as further described in detail in Figure 5

[0038] Computing device 120 can also be configured to receive, store, and process images processed between uniform domain generator (UDG) 130, condition generator 132, uniform discriminator 140, and device discriminator 142. Computing device 120 can be configured to store image data in a memory of computing device 120 or transmit image data to database 124 or server 125 via network 110. Image data can be processed by one or more processors in communication with computing device 120 (e.g., uniform domain generator (UDG) 130, condition generator 132, uniform discriminator 140, and device discriminator 142) or by one or more processors associated with server 125 in a cloud computing network.

[0039] ​The database 124 operates as a repository for data flowing to and from the network 110. Examples of data include image data, OCT image data, network data, and data corresponding to images processed within the system 100. A database is an organized collection of data. The database 124 can be implemented with any type of storage device capable of storing data and configuration files that can be accessed and utilized by the computing device 120, such as a database server, hard drive, or flash memory. In an embodiment, the database 124 is accessed by the computing device 120 to store data corresponding to images processed within the system 100. In another embodiment, the database 124 is accessed by the computing device 120 to access user data, device data, network data, and data corresponding to images processed within the system 100. In another embodiment, the database 124 can reside elsewhere within the system 100 so long as the database 124 is accessible to the network 110.

[0040] The server 125 can be a standalone computing device, a management server, a web server, or any other electronic device or computing system capable of receiving, sending, and processing data and capable of communicating with the computing device 120 via the network 110. In other embodiments, the server 125 represents a server computing system that utilizes multiple computers as a server system, such as a cloud computing environment. In other embodiments, the server 125 represents a computing system that utilizes clustered computers and components (e.g., database server computers, application server computers, etc.) that act as a single seamless resource pool when accessed within the system 100. The server 125 can include components as described in further detail below in Figure 5

[0041] In one embodiment, a system 100 for generating device-specific optical coherence tomography (OCT) image data can include one or more processors configured to receive, at a unified domain generator (UDG) 130 (e.g., a CNN generator), OCT image data (e.g., first image data) corresponding to OCT image scans captured by one or more OCT devices. Input to the UDG 130 can include input image data corresponding to a unified representation of images of a target OCT device and OCT device parameters (e.g., resolution, noise type, noise level).

[0042] ​In one embodiment, the system 100 can include one or more processors to process OCT image data (e.g., first image data) through the UDG 130 to generate unified image data (e.g., second image data) G corresponding to a unified representation of the OCT image scan. The output from the UDG 130 can include device-specific image data (e.g., output image data) corresponding to an OCT image under specified OCT device parameters.

[0043] In one embodiment, the system 100 can include one or more processors to determine third image data R’ corresponding to a quality subset of the unified representation of the OCT image scan having a base resolution that satisfies a first condition and a base noise type that satisfies a second condition belonging to the unified space through a unified discriminator (UD) 140. For example, the UD 140 can be configured to receive unified image data corresponding to the OCT images generated by the UDG 130 (e.g., second image data G) and a unified representation of a true image R having image characteristics consistent with the highest quality OCT device parameters. The UD 140 can be configured to classify the generated and true images and compute a loss to penalize incorrect classifications. Incorrect classifications can include classifying a generated image as a true image or classifying a true image as a generated image. As a result, the generator (e.g., unified or conditional) is trained to produce images that look like true images. The second image data can be determined using a convolutional neural network (CNN) generator configured to map the OCT image scan to the unified representation. In embodiments, the first condition can be that the base resolution exceeds a first predetermined threshold and the second condition is that the base noise type is less than a second predetermined threshold.

[0044] In one embodiment, the system 100 can include one or more processors to process unified image data (e.g., third image data) belonging to the unified space using a conditional generator (CG) 132 to generate device-specific image data (not shown) (e.g., fourth image data) corresponding to a device-specific OCT image scan having a device-specific resolution that satisfies a third condition and a device-specific noise type that satisfies a fourth condition. For example, the input to the CG 132 can include unified image data corresponding to images of the unified representation and OCT device parameters (e.g., resolution, noise type, noise level) of a target OCT device. The output from the CG 132 can include device-specific image data corresponding to an OCT image under specified OCT device parameters. Adjustments to the OCT device parameters enable the CG 132 to generate OCT images having arbitrary resolutions, noise types, and noise levels.

[0045] In one embodiment, the system 100 can include one or more processors configured to determine, for each OCT image scan, an OCT device parameter (e.g., resolution, noise type, noise level). For example, the OCT device parameters can be determined during a training phase, where the OCT device parameters are from a target OCT device for which OCT images are generated for comparison. During a testing phase, the discriminator can not be needed. However, a user can select a target device type, resolution, noise type, and noise level, and the system 100 can be configured to sequentially perform the computer-implemented method (as described) to obtain a result. For example, a user associated with the computing device 120 can interact with a user interface of the computing device 120 to input the OCT device parameters (e.g., resolution, noise type, noise level) for further processing. In another embodiment, the OCT device parameters can be determined based on image data received from an OCT device, where the image data can be processed to identify the resolution, noise type, and noise level. Figure 4

[0046] In one embodiment, the system 100 can include one or more processors configured to determine a resolution and a noise type for each OCT device used to capture the OCT image scans.

[0047] In one embodiment, the system 100 can include one or more processors configured to determine fifth image data corresponding to a device spatial subset of the device-specific OCT image scans having the device-specific resolution that satisfies the third condition and the device-specific noise type that satisfies the fourth condition. In one embodiment, the OCT image scans can be generated by OCT devices each having one of one or more resolution values and one of one or more noise type values.

[0048] In an embodiment, the third condition can be that the device-specific resolution is within a third predetermined threshold, and the fourth condition can be that the device-specific noise type is within a fourth predetermined threshold.

[0049] In one embodiment, the system 100 can include one or more processors configured to train the unified discriminator using the uniform spatial image data to generate high-quality normalized OCT image scans.

[0050] ​In one embodiment, system 100 may include one or more processors for outputting fourth image data to a user interface of computing device 120. Furthermore, any data received, processed, or generated within system 100 may be output to the user interface of computing device 120 at any stage during the implementation of the described embodiments.

[0051] Figure 1 A schematic diagram of a GAN 101 according to an embodiment of the present invention is provided. As shown, a unified domain generator (UDG) 130 can be configured to generate an output G based on image data received from a network 110 for training the UDG 130.

[0052] GAN 101 can be configured to provide a unified discriminator (UD) 140 with a G and a true output R for consideration. UD 140 can be configured to consider each input sequentially and classify it as either true R or false / generated G. A well-trained GAN generates an output from its noisy input vector, and the discriminator classifies the output as true 50% of the time. GAN 101 can run on a server computing system (e.g., a cloud computing environment) that utilizes multiple computers as server systems. In other embodiments, GAN 101 can run on a computing system that utilizes a cluster of computers and components (e.g., database server computers, application server computers, etc.) that act as a single seamless resource pool when accessed within system 100.

[0053] Although the preceding description and Figure 2 Implementations of GAN models are shown (e.g., a unified domain generator 220 with a unified discriminator 230, a conditional generator 222 with a device discriminator 232), but this disclosure is not limited thereto. In at least some embodiments, model 200 may implement trained components or trained models configured to perform the processes described above with respect to model 200. Trained components may include one or more machine learning models, including but not limited to one or more classifiers, one or more neural networks, one or more probabilistic graphs, one or more decision trees, etc. In other embodiments, trained components may include rule-based engines, one or more statistical algorithms, one or more mapping functions, or other types of functions / algorithms to determine whether a natural language input is complex or uncomplex. In some embodiments, trained components may be configured to perform binary classification, where the natural language input may be classified into one of two classes / categories. In some embodiments, trained components may be configured to perform multi-class or multinomial classification, where the natural language input may be classified into one of three or more classes / categories. In some embodiments, trained components may be configured to perform multi-label classification, where the natural language input may be associated with more than one class / category.

[0054] Different machine learning techniques can be used to train and operate trained components to perform the different processes described herein. Models can be trained and operated according to different machine learning techniques. Such techniques can include, for example, neural networks such as deep neural networks and / or recurrent neural networks, inference engines, trained classifiers, etc. Examples of trained classifiers include support vector machines (SVMs), neural networks, decision trees, AdaBoost (short for "Adaptive Boosting") in combination with decision trees, and random forests. Focusing on SVMs as an example, SVMs are supervised learning models with an associated learning algorithm that analyzes data and identifies patterns in the data, and are commonly used for classification and regression analysis. Given a set of training examples, each marked as belonging to one of two categories, an SVM training algorithm builds a model that assigns new examples into one category or the other, making it a non-probabilistic binary linear classifier. More complex SVM models can be built using a training set that identifies more than two categories, where the SVM determines which category is most similar to the input data. SVM models can be mapped so that examples of individual categories are clearly separated by gaps. New examples are then mapped into that same space and, based on which side of the gaps they fall on, are predicted to belong to a certain category. A classifier can issue a "score" that indicates which category the data most closely matches. The score can provide an indication of how closely the data matches the category.

[0055] To apply machine learning techniques, the machine learning process itself needs to be trained. Training a machine learning component requires establishing "ground truth" for training examples. In machine learning, the term "ground truth" refers to the accuracy of the classification of a training set for a supervised learning technique. Different techniques can be used to train a model, including backpropagation, statistical learning, supervised learning, semi-supervised learning, stochastic learning, or other known techniques.

[0056] Figure 2 A block diagram of a model 200 for generating device-specific OCT image data according to embodiments of the present application is depicted. The model 200 shows that the model 200 includes Figure 1The block processing model of the GAN 101 is shown, components receive image data at a particular stage and user input at various stages, where the user input includes OCT device specific parameters (e.g., resolution, noise type). The model 200 can include a unified domain generator 220 configured to receive image data (e.g., OCT image scans 210). The unified domain generator 220 can be configured to receive multiple input images and generate model output data (e.g., unified representation 212) as a feature vector corresponding to each image and transmit the model output data to a series of fully connected layers. The output data from the fully connected layers can represent a classification for a full learning. This model output data can be in the form of a confidence score or probability for each classification. In embodiments, the OCT device parameters (e.g., resolution, noise type, noise level) can be provided as part of the model input data or separately on a different channel input to the model 200.

[0057] In embodiments, the OCT image scans 210 can be provided to the UDG 220 (e.g., device 2U) to generate a unified representation 212 (e.g., unified image data) of the OCT image scans 210. The unified representation 212 can include image data having a resolution above a predetermined threshold and a noise level below a predetermined threshold that represents a good quality image.

[0058] In an embodiment, the input image data represented as the unified representation 212 and the unified space image 214 can be provided to the unified discriminator 230 to distinguish between generated unified images (e.g., unified representation 212) and real unified images (e.g., unified space image 214). The unified discriminator 230 can be configured to generate output data corresponding to a classification of whether the input image data belongs to the unified space. The output data can be transmitted via the network 110 to the computing device 120 for processing and display on a user interface of the computing device 120.

[0059] In embodiments, the unified representation 212 belonging to the unified space can be provided as input image data with a noise type and resolution of a particular OCT device to the conditional generator 222 (e.g., U2 device) to generate output image data including device specific OCT scans 216. The conditional generator 222 can be configured to receive image data in the unified space and generate image data having properties of a particular device corresponding to a given resolution and noise type.

[0060] In embodiments, the device discriminator 232 can be configured to receive input image data represented as device-specific OCT scans 216 and the noise type and resolution of the specific OCT device to generate output image data corresponding to a classification of whether the input image data belongs to the device space. In a testing phase, a user can select a target OCT device type, resolution, and noise type, and the model 200 can be configured to sequentially execute these modules to obtain a result.

[0061] Figure 3 A block diagram of a training model 300 for generating device-specific OCT image data according to an embodiment of the present application is depicted.

[0062] In embodiments, the model 300 can undergo a testing phase in which a target device type and corresponding target device parameters can be selected. Once selected, the model 300 can be configured to sequentially execute the steps of the model 300 to obtain an OCT image generated according to the specific device parameters. For example, the OCT image scan 310 can be provided to a unified domain generator (UDG) 320 (depicted as device 2U) to generate image data corresponding to the unified representation 212 of the OCT image scan 310. The image data corresponding to the unified representation of the OCT image scan 310 can be provided to a conditional generator (CG) 322, which can be configured to generate image data corresponding to a device-specific OCT image 316 when processed with the target resolution and target noise type.

[0063] In embodiments, during the training phase, the OCT device parameters can be determined by examining the settings of a target OCT device. The OCT device parameters can include resolution, noise type, and noise level.

[0064] Figure 4 A flowchart of a computer-implemented method 400 for generating device-specific OCT image scans according to one embodiment of the present application is depicted.

[0065] Embodiments of the present application provide a computer-implemented method 400 for generating device-specific OCT image data, which can include one or more processors configured to receive 402, at a unified domain generator, first image data corresponding to OCT image scans captured by one or more OCT devices. In one embodiment, the computer-implemented method 400 can include one or more processors configured to determine, for each OCT image scan, a resolution and a noise type. In one embodiment, the computer-implemented method 400 can include one or more processors configured to determine a resolution and a noise type for each OCT device used to capture the OCT image scans.

[0066] In one embodiment, the computer-implemented method 400 can include one or more processors configured to process 404, by a unified domain generator, the first image data to generate second image data corresponding to a unified representation of the OCT image scan. In one embodiment, the OCT image scan can be generated by an OCT device each having one of one or more resolution values and one of one or more noise type values. In embodiments, the second image data can be determined using a convolutional neural network (CNN) generator configured to map the OCT image scan to the unified representation.

[0067] In one embodiment, the computer-implemented method 400 can further include one or more processors configured to determine 406, by a unified discriminator, third image data corresponding to a quality subset of the unified representation of the OCT image scan having a base resolution satisfying a first condition and a base noise type satisfying a second condition. In embodiments, the first condition can be that the base resolution exceeds a first predetermined threshold and the second condition is that the base noise type is less than a second predetermined threshold. In some embodiments, the computer-implemented method 400 can include one or more processors configured to train the unified discriminator using the unified spatial image data to generate a high-quality normalized OCT image scan. In some embodiments, the OCT image scan can be generated by an OCT device each having one of one or more resolution values and one of one or more noise type values.

[0068] The computer-implemented method 400 can further include one or more processors configured to process 408, by a conditional generator, the third image data to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution satisfying a third condition and a device-specific noise type satisfying a fourth condition.

[0069] The computer-implemented method 400 can further include one or more processors configured to output 410 the fourth image data to a user interface of a computing device.

[0070] In some embodiments (not depicted), the computer-implemented method 400 can include one or more processors configured to determine fifth image data corresponding to a device spatial subset of the device-specific OCT image scan having a device-specific resolution satisfying a third condition and a device-specific noise type satisfying a fourth condition. In embodiments, the third condition can be that the device-specific resolution is within a third predetermined threshold and the fourth condition can be that the device-specific noise type is within a fourth predetermined threshold.

[0071] In one embodiment, the computer-implemented method can include one or more processors configured for training the unified discriminator using the unified spatial image data to generate a high-quality normalized OCT image scan, where the high-quality normalized OCT image scan satisfies a first condition. In embodiments, the first condition can be that a basic resolution exceeds a first predetermined threshold and a second condition is that a basic noise type is less than a second predetermined threshold.

[0072] In embodiments, a third condition can be that a device-specific resolution is within a third predetermined threshold and a fourth condition can be that a device-specific noise type is within a fourth predetermined threshold.

[0073] Figure 5 A block diagram of a computing device of system 100 in accordance with an embodiment of the present application is depicted. Figure 5 A block diagram of a computing device 500 of a computing device 120 suitable for running GAN 101 in accordance with an illustrative embodiment of the present application is depicted. It should be understood that Figure 5 Only one implementation is provided for illustration and no inference should be made as to the scope of environments in which different embodiments can be implemented. Numerous modifications can be made to the depicted environments.

[0074] Computing device 500 includes a communication fabric 502 that provides communications between a cache memory 516, a memory 506, a persistent storage 508, a communication unit 510, and input / output (I / O) interface(s) 512. Communication fabric 502 can be implemented with any architecture designed for passing data and / or control information between processors (such as microprocessors, communications and network processors, etc.), system memory, peripheral devices, and any other hardware components within a system. For example, communication fabric 502 can be implemented with one or more buses or cross-over switches.

[0075] Memory 506 and persistent storage 508 are computer readable storage media. In this embodiment, memory 506 includes a random access memory (RAM). Generally, memory 506 can include any suitable volatile or non-volatile computer readable storage media. Cache 516 is a fast memory that enhances the performance of computer processor 504 by very quickly storing and retrieving data and instructions.

[0076] The programs can be stored in the permanent storage 508 and memory 506 for execution by one or more respective computer processors 504 via cache 516. In embodiments, the permanent storage 508 includes a magnetic hard disk drive. Alternatively, or in addition to a magnetic hard disk drive, the permanent storage 508 can include a solid-state hard drive, a semiconductor storage device, read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, or any other computer readable storage media that is capable of storing program instructions or digital information.

[0077] The media used by the permanent storage 508 also can be removable. For example, a removable hard drive can be used for permanent storage 508. Other examples include optical and magnetic disks, thumb drives, and smart cards, which are inserted into a drive for transfer onto another computer readable storage media, also a portion of permanent storage 508.

[0078] In these examples, the communication unit 510 provides communication through the use of either or both physical and wireless communications links. The programs as described herein can be downloaded to the permanent storage 508 through the communication unit 510.

[0079] The I / O interface 512 allows for input and output of data with other devices that can be connected to the computing device 500. For example, the I / O interface 512 can provide a connection to external devices 518 such as a image sensor, a keyboard, a keypad, a touchscreen, and / or some other suitable input device. The external devices 518 can also include portable computer readable storage media such as, for example, thumb drives, portable optical or magnetic disks, and memory cards. Software and data 514 for implementing embodiments of the application can be stored on such portable computer readable storage media and can be loaded onto the permanent storage 508 via the I / O interface 512. The I / O interface 512 also connects to a display 520.

[0080] The display 520 provides a mechanism to display data to a user and can be, for example, a computer monitor.

[0081] The software and data 514 described herein are identified based upon the application for which the embodiments of the present application are implemented in a specific embodiment. However, it is to be understood that whatever application is sought by the present application, that the software and data 514 can be identified based on the application for which the embodiments of the present application are implemented in a specific embodiment. It is therefore, to be understood that any particular order described herein for executing process steps is illustrative only and the order of steps can be performed in any order or simultaneously, unless otherwise indicated by the specific application.

[0082] The present application can be a system, a method, and / or a computer program product at any possible technical detail level of integration. The computer program product can include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present application.

[0083] The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium can be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non- exhaustive list of more specific examples of the computer readable storage medium include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.

[0084] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.

[0085] Computer readable program instructions for carrying out operations of the present application can be assembly instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, configuration data for an integrated circuit, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like and a procedural programming language such as the "C" programming language or the like. The computer readable program instructions can execute entirely on a user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate array (FPGA), or programmable logic array (PLA) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present application.

[0086] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.

[0087] These computer readable program instructions can be provided to a processor of a computer, or other programmable data processing apparatus, to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer readable program instructions can also be stored in a computer readable storage medium that can include, without limitation, random access memory (RAM), read only memory (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other data storage technology. When the computer readable program instructions are executed by the computer, other programmable data processing apparatus, or other device, a series of operational steps are performed.

[0088] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer readable program instructions can also be stored in a computer readable storage medium that can include, without limitation, random access memory (RAM), read only memory (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other data storage technology. When the computer readable program instructions are executed by the computer, other programmable data processing apparatus, or other device, a series of operational steps are performed.

[0089] The computer program product of the different embodiments of the present application can have the form of a routine, a program, a script, or instructions for computer or electronic devices (e.g., a processor) that can be temporary or permanent, and that can be self-contained or be distributed over several different programs and / or devices. In some embodiments, the computer program product can be a computer program product comprising a computer-readable medium, which can be any medium (e.g., memory, optical disk, etc.) that can be read by a computer. Therefore, the computer program product can have the form of a program storage medium, a program memory medium, a memory, or a computer readable medium that can be readable by a computer. The computer program product can further comprise a computer program, which can be stored / fixed in the computer-readable medium, which can means that the computer program comprises one or more instructions that can be executable by a computer that cause the computer to implement methods or create structures in accordance with the present application. The computer program can also mean that the program be directly loadable and / or executable into the computer without the need for further action.

[0090] The description of the various embodiments of the present application has been presented for purposes of illustration but is not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the present application. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application, or technical improvement over technologies found in the marketplace, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A computer-implemented method for generating device-specific optical coherence tomography (OCT) image data, comprising: receiving, by one or more processors at a unified domain generator, first image data corresponding to OCT image scans captured by one or more OCT devices; processing, by the one or more processors, the first image data by the unified domain generator to generate second image data corresponding to a unified representation of the OCT image scans; determining, by the one or more processors, third image data corresponding to a quality subset of the unified representation of the OCT image scans having a base resolution satisfying a first condition and a base noise type satisfying a second condition by a unified discriminator; processing, by the one or more processors, the third image data using a condition generator to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution satisfying a third condition and a device-specific noise type satisfying a fourth condition; and outputting the fourth image data to a user interface of a computing device, wherein the unified domain generator, the unified discriminator, and the condition generator are machine learning components. The second image data is determined using a convolutional neural network (CNN) generator configured to map the OCT image scans to the unified representation.

2. The computer-implemented method of claim 1, wherein, The OCT image scans are each generated by one of the one or more OCT devices, each of the one or more OCT devices having a respective resolution value and a respective noise type value.

3. The computer-implemented method of claim 1, wherein, The first condition is that the base resolution exceeds a first predetermined threshold, and the second condition is that the base noise type is less than a second predetermined threshold.

4. The computer-implemented method of claim 1, wherein, 5. The computer-implemented method of claim 1, further comprising: determining, by the one or more processors, fifth image data corresponding to a device space subset of the device-specific OCT image scan having the device-specific resolution and the device-specific noise type by a device discriminator. The third condition is that the device-specific resolution is within a third predetermined threshold, and wherein the fourth condition is that the device-specific noise type is within a fourth predetermined threshold.

6. The computer-implemented method of claim 1, wherein, 7. The computer-implemented method of claim 1, further comprising: training, by the one or more processors, the unified discriminator using unified space image data to generate high-quality normalized OCT image scans.

8. A computer program product for generating device-specific OCT image data, the computer program product comprising: one or more computer-readable storage media and program instructions stored on the one or more computer-readable storage media, the program instructions comprising: program instructions to receive, at a unified domain generator, first image data corresponding to OCT image scans captured by one or more OCT devices; program instructions to process, by the unified domain generator, the first image data to generate second image data corresponding to a unified representation of the OCT image scans; program instructions to determine, by the one or more processors, third image data corresponding to a quality subset of the unified representation of the OCT image scans having a base resolution satisfying a first condition and a base noise type satisfying a second condition by a unified discriminator; program instructions for determining, by a quality discriminator, third image data corresponding to a quality subset of the uniform representation of the OCT image scans having a base resolution that satisfies a first condition and a base noise type that satisfies a second condition; program instructions for processing, using a condition generator, the third image data to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution that satisfies a third condition and a device-specific noise type that satisfies a fourth condition; and outputting the fourth image data to a user interface of a computing device, wherein the uniform domain generator, the uniform discriminator, and the condition generator are machine learning components.

9. The computer program product of claim 8, wherein, The second image data is determined using a convolutional neural network (CNN) generator configured to map the OCT image scans to the uniform representation.

10. The computer program product of claim 8, wherein, The OCT image scans are each generated by one of the one or more OCT devices having a respective resolution value and a respective noise type value.

11. The computer program product of claim 8, wherein, The first condition is that the base resolution exceeds a first predetermined threshold, and the second condition is that the base noise type is less than a second predetermined threshold.

12. The computer program product of claim 8, further comprising: program instructions for determining, by a device discriminator, fifth image data corresponding to a device space subset of the device-specific OCT image scans having the device-specific resolution and the device-specific noise type.

13. The computer program product of claim 8, wherein, The third condition is the device-specific resolution within a third predetermined threshold, and wherein the fourth condition is the device-specific noise type within a fourth predetermined threshold.

14. The computer program product of claim 8, further comprising: program instructions for training the uniform discriminator using the uniform space image data to generate high-quality normalized OCT image scans.

15. A computer system for generating device-specific OCT image data, the computer system comprising: one or more computer processors; one or more computer-readable storage media; program instructions stored on the one or more computer-readable storage media for execution by at least one of the one or more processors, the program instructions comprising: program instructions for receiving, at a uniform domain generator, first image data corresponding to OCT image scans captured by one or more OCT devices; program instructions for processing, by the uniform domain generator, the first image data to generate second image data corresponding to a uniform representation of the OCT image scans; program instructions for determining, by a quality discriminator, third image data corresponding to a quality subset of the uniform representation of the OCT image scans having a base resolution that satisfies a first condition and a base noise type that satisfies a second condition; program instructions for processing, using a condition generator, the third image data to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution that satisfies a third condition and a device-specific noise type that satisfies a fourth condition; and outputting the fourth image data to a user interface of a computing device, wherein the uniform domain generator, the uniform discriminator, and the condition generator are machine learning components. The second image data is determined using a convolutional neural network (CNN) generator configured to map the OCT image scans to the uniform representation. The OCT image scans are each generated by one of the one or more OCT devices having a respective resolution value and a respective noise type value. The first condition is that the base resolution exceeds a first predetermined threshold, and the second condition is that the base noise type is less than a second predetermined threshold.

12. The computer program product of claim 8, further comprising: program instructions for determining, by a device discriminator, fifth image data corresponding to a device space subset of the device-specific OCT image scans having the device-specific resolution and the device-specific noise type. The third condition is the device-specific resolution within a third predetermined threshold, and wherein the fourth condition is the device-specific noise type within a fourth predetermined threshold.

14. The computer program product of claim 8, further comprising: program instructions for training the uniform discriminator using the uniform space image data to generate high-quality normalized OCT image scans.

15. A computer system for generating device-specific OCT image data, the computer system comprising: one or more computer processors; one or more computer-readable storage media; program instructions stored on the one or more computer-readable storage media for execution by at least one of the one or more processors, the program instructions comprising: program instructions for receiving, at a uniform domain generator, first image data corresponding to OCT image scans captured by one or more OCT devices; program instructions for processing, by the uniform domain generator, the first image data to generate second image data corresponding to a uniform representation of the OCT image scans; program instructions for determining, by a quality discriminator, third image data corresponding to a quality subset of the uniform representation of the OCT image scans having a base resolution that satisfies a first condition and a base noise type that satisfies a second condition; program instructions for processing, using a condition generator, the third image data to generate fourth image data corresponding to a device-specific OCT image scan having a device-specific resolution that satisfies a third condition and a device-specific noise type that satisfies a fourth condition; and outputting the fourth image data to a user interface of a computing device, wherein the uniform domain generator, the uniform discriminator, and the condition generator are machine learning components. program instructions to output the fourth image data to a user interface of a computing device, wherein the unified domain generator, the unified discriminator, and the conditional generator are machine learning components.

16. The computer system of claim 15, wherein, The second image data is determined using a convolutional neural network (CNN) generator configured to map the OCT image scans to the unified representation.

17. The computer system of claim 15, wherein, The OCT image scans are each generated by one of the one or more OCT devices having a respective resolution value and a respective noise type value.

18. The computer system of claim 15, wherein, The first condition is that the base resolution exceeds a first predetermined threshold, and the second condition is that the base noise type is less than a second predetermined threshold; and wherein the third condition is the device-specific resolution within a third predetermined threshold; and wherein the fourth condition is the device-specific noise type within a fourth predetermined threshold.

19. The computer system of claim 16, further comprising: program instructions to determine, by a device discriminator, fifth image data corresponding to a device space subset of the device-specific OCT image scans having the device-specific resolution and the device-specific noise type.

20. The computer system of claim 15, further comprising: program instructions to train the unified discriminator using the unified space image data to generate high-quality normalized OCT image scans.

Citation Information

Patent Citations

  • Signal normalization among multiple optical coherence tomography devices

    US20160100755A1