Generative adversarial network training method, device, computer equipment and storage medium
Through the generative adversarial network training method, the layer thickness direction information of the CT image is recovered by the loop generation adversarial network, which solves the problem of loss of layer thickness direction information of the CT image, and realizes the reconstruction of high-quality images to meet the needs of the analysis task.
Patent Information
- Application Number
- CN202110930101.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-08-13
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2041-08-13
AI Technical Summary
Due to the large layer thickness of CT images, information loss occurs in the direction of layer thickness, which cannot meet the needs of certain specific analysis tasks.
A generative adversarial network training method is adopted. By obtaining a training sample set, including a plurality of first sample data and a corresponding second sample data, the layer thickness of the second sample data is smaller than the layer thickness of the first sample data, neural network training is performed based on these samples to obtain a circular generation adversarial network. The network includes a first generator, a second generator, a first discriminator and a second discriminator. Through multiple rounds of reconstruction and discriminant loss calculation, network parameters are adjusted to improve the accuracy of image reconstruction.
Through training of circular generation adversarial networks, layer thickness direction information can be effectively restored, high-quality images can be generated, and the needs of analysis tasks can be met. Moreover, the recovery accuracy is high due to no interpolation calculation.
Smart Images

Figure CN113780519B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data reconstruction technology, and in particular to a generative adversarial network training method, apparatus, computer equipment and storage medium. Background Art
[0002] CT (Computed Tomography) is a computer tomography scan that uses a precisely collimated X-ray beam and a highly sensitive detector to scan a certain part of the human body one section after another. Due to its fast scanning time and clear images, it is used to examine a variety of diseases. Clinically, CT images are usually stored with a larger slice thickness (5mm) to save storage space. However, due to the large slice thickness of CT images, there is information loss in the slice thickness direction, which cannot be applied to certain specific analysis tasks.
[0003] At present, in order to solve the problem of loss of layer thickness direction information, the commonly used methods include: first interpolating the thick layer CT images, training a neural network model based on the interpolated images, and then using the neural network model to restore the layer thickness direction information.
[0004] However, errors may occur in interpolation calculations, so the trained neural network model may have low recovery accuracy. The image reconstructed using the neural network model is of poor quality and cannot meet the needs of the analysis task. Summary of the invention
[0005] Based on this, it is necessary to provide a generative adversarial network training method, device, computer equipment and storage medium to address the above-mentioned technical problems, so as to train a cyclic generative adversarial network with high accuracy in recovering information in the layer thickness direction, and use the cyclic generative adversarial network to reconstruct images with better quality, thereby meeting the needs of the analysis task.
[0006] In a first aspect, an embodiment of the present disclosure provides a method for training a generative adversarial network, the method comprising:
[0007] Acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data;
[0008] The neural network is trained based on the training sample set to obtain a cyclic generative adversarial network.
[0009] In one embodiment, the neural network training is performed based on the training sample set to obtain a recurrent generative adversarial network, including:
[0010] Selecting a first block of data and a second block of data from the first sample data and the second sample data respectively;
[0011] Performing neural network training based on the first block of data and the second block of data to obtain a cyclic generative adversarial network;
[0012] The selecting of the first block of data and the second block of data from the first sample data and the second sample data respectively includes:
[0013] Calculate the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data respectively according to the first preset size;
[0014] Selecting a first block of data corresponding to a first layer number from the first sample data;
[0015] A second block of data corresponding to the second layer number is selected from the second sample data.
[0016] In one embodiment, it also includes:
[0017] A neural network is trained based on the multiple first blocks of data and the second blocks of data to obtain a cyclic generative adversarial network.
[0018] In one embodiment, the recurrent generative adversarial network includes a first generator and a second generator, and the neural network training is performed based on the first block of data and the second block of data to obtain the recurrent generative adversarial network, including:
[0019] Inputting the first block of data into the first generator for reconstruction to obtain a first generation result;
[0020] Inputting the second block of data into the second generator for reconstruction to obtain a second generation result;
[0021] Inputting the first generation result into the second generator for reconstruction to obtain a third generation result;
[0022] Inputting the second generation result into the first generator for reconstruction to obtain a fourth generation result;
[0023] A total loss value is calculated based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and network parameters are adjusted according to the total loss value to obtain a cyclic generative adversarial network.
[0024] In one embodiment, the cyclic generative adversarial network further includes a first discriminator and a second discriminator, the total loss value includes a first loss value and a second loss value, the total loss value is calculated based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and the network parameters are adjusted according to the total loss value to obtain the cyclic generative adversarial network, including:
[0025] Calculate a first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result, and the fourth generation result, and calculate a second loss value based on the first block of data, the second block of data, the first generation result, and the second generation result;
[0026] The first loss value is used to adjust the network parameters of the first generator and the second generator, and the second loss value is used to adjust the network parameters of the first discriminator and the second discriminator to obtain a cyclic generative adversarial network.
[0027] In one embodiment, the calculation process of the first loss value includes:
[0028] Input the second generated result into the first discriminator to obtain a first discriminant result output by the first discriminator, calculate the loss between the first discriminant result and the all-one data of the same size, and obtain a first generated adversarial loss value; the first discriminant result is used to indicate whether the second generated result is the first block of true data;
[0029] Input the first generation result into the second discriminator to obtain a second discrimination result output by the second discriminator, calculate the loss between the second discrimination result and the all-one data of the same size, and obtain a second generation adversarial loss value; the second discrimination result is used to indicate whether the first generation result is a second block of data that is true;
[0030] Calculate the loss between the first block of data and the third generated result to obtain a first cycle adversarial loss value, calculate the loss between the second block of data and the fourth generated result to obtain a second cycle adversarial loss value;
[0031] A weighted sum is calculated on the first generation adversarial loss value, the second generation adversarial loss value, the first cycle adversarial loss value, and the second cycle adversarial loss value to obtain a first loss value.
[0032] In one embodiment, the calculation process of the second loss value includes:
[0033] Calculate the loss between the first discrimination result and the all-zero data of the same size to obtain a third generative adversarial loss value;
[0034] Input the first block of data into the first discriminator, obtain a third discriminant result output by the first discriminator, calculate the loss between the third discriminant result and the all-one data of the same size, and obtain a fourth generative adversarial loss value;
[0035] Calculate the loss between the second discrimination result and the all-zero data of the same size to obtain the fifth generative adversarial loss value;
[0036] Input the second block of data into the second discriminator, obtain a fourth discrimination result output by the second discriminator, calculate the loss between the fourth discrimination result and the all-one data of the same size, and obtain a sixth generative adversarial loss value;
[0037] A weighted sum is calculated for the third generation adversarial loss value, the fourth generation adversarial loss value, the fifth generation adversarial loss value, and the sixth generation adversarial loss value to obtain a second loss value.
[0038] In a second aspect, an embodiment of the present disclosure provides a method for generating medical image data, the method comprising:
[0039] Acquiring first medical imaging data;
[0040] Reconstructing the first medical image data using a pre-trained image data generation model to obtain second medical image data;
[0041] Among them, the image data generation model includes the recurrent generative adversarial network described in the first aspect.
[0042] In one embodiment, the above-mentioned reconstructing the first medical image data using the pre-trained image data generation model to obtain the second medical image data includes:
[0043] Obtain a plurality of input image data according to a second preset size and the first medical image data;
[0044] Inputting a plurality of input image data into the image data generation model in sequence for reconstruction, and obtaining output image data corresponding to each input image data output by the image data generation model;
[0045] The plurality of output image data are synthesized to obtain second medical image data.
[0046] In one embodiment, the synthesizing process of the plurality of output image data to obtain the second medical image data includes:
[0047] Performing Gaussian weighted calculation on each output image data to obtain weighted image data corresponding to each output image data;
[0048] The plurality of weighted image data are averaged to obtain second medical image data.
[0049] In a third aspect, an embodiment of the present disclosure provides a training device for generating an adversarial network, characterized in that the device comprises:
[0050] A sample acquisition module, used to acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data;
[0051] The training module is used to perform neural network training based on the training sample set to obtain a recurrent generative adversarial network.
[0052] In one embodiment, the training module includes:
[0053] A data selection submodule, used to select a first block of data and a second block of data from the first sample data and the second sample data respectively;
[0054] A training submodule, used for performing neural network training based on the first block of data and the second block of data to obtain a recurrent generative adversarial network;
[0055] Among them, the data selection submodule is specifically used to calculate the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data according to the first preset size; select the first block of data corresponding to the first number of layers from the first sample data; select the second block of data corresponding to the second number of layers from the second sample data.
[0056] In one of the embodiments, the training module is further used to perform neural network training according to a plurality of first preset sizes and / or a plurality of first blocks of data and second blocks of data to obtain a recurrent generative adversarial network.
[0057] In one embodiment, the recurrent generative adversarial network includes a first generator and a second generator, and the training submodule includes:
[0058] A first reconstruction unit, used for inputting the first block of data into the first generator for reconstruction to obtain a first generation result;
[0059] A second reconstruction unit, used for inputting the second block of data into the second generator for reconstruction to obtain a second generation result;
[0060] A third reconstruction unit, used for inputting the first generation result into the second generator for reconstruction to obtain a third generation result;
[0061] a fourth reconstruction unit, configured to input the second generation result into the first generator for reconstruction to obtain a fourth generation result;
[0062] A training unit is used to calculate a total loss value based on a first block of data, a second block of data, a first generation result, a second generation result, a third generation result, and a fourth generation result, and to adjust network parameters according to the total loss value to obtain a cyclic generative adversarial network.
[0063] In one embodiment, the cyclic generative adversarial network also includes a first discriminator and a second discriminator, the total loss value includes a first loss value and a second loss value, and the above-mentioned training unit is specifically used to calculate the first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and calculate the second loss value based on the first block of data, the second block of data, the first generation result and the second generation result; use the first loss value to adjust the network parameters of the first generator and the second generator, and use the second loss value to adjust the network parameters of the first discriminator and the second discriminator to obtain a cyclic generative adversarial network.
[0064] In one of the embodiments, the above-mentioned training unit is specifically used to input the second generation result into the first discriminator to obtain the first discrimination result output by the first discriminator, calculate the loss between the first discrimination result and the all-one data of the same size, and obtain the first generation adversarial loss value; the first discrimination result is used to indicate whether the second generation result is the first block of true data; the first generation result is input into the second discriminator to obtain the second discrimination result output by the second discriminator, calculate the loss between the second discrimination result and the all-one data of the same size, and obtain the second generation adversarial loss value; the second discrimination result is used to indicate whether the first generation result is the second block of true data; calculate the loss between the first block of data and the third generation result to obtain the first cycle adversarial loss value, calculate the loss between the second block of data and the fourth generation result to obtain the second cycle adversarial loss value; perform weighted sum calculation on the first generation adversarial loss value, the second generation adversarial loss value, the first cycle adversarial loss value and the second cycle adversarial loss value to obtain the first loss value.
[0065] In one of the embodiments, the training unit is specifically used to calculate the loss between the first discrimination result and the all-zero data of the same size to obtain a third generative adversarial loss value; input the first block of data into the first discriminator to obtain the third discrimination result output by the first discriminator, calculate the loss between the third discrimination result and the all-one data of the same size to obtain a fourth generative adversarial loss value; calculate the loss between the second discrimination result and the all-zero data of the same size to obtain a fifth generative adversarial loss value; input the second block of data into the second discriminator to obtain the fourth discrimination result output by the second discriminator, calculate the loss between the fourth discrimination result and the all-one data of the same size to obtain a sixth generative adversarial loss value; perform weighted sum calculation on the third generative adversarial loss value, the fourth generative adversarial loss value, the fifth generative adversarial loss value and the sixth generative adversarial loss value to obtain a second loss value.
[0066] In a fourth aspect, an embodiment of the present disclosure provides a medical imaging data generating device, the device comprising:
[0067] A data acquisition module, used for acquiring first medical image data;
[0068] A data generation module, used to reconstruct the first medical image data using a pre-trained image data generation model to obtain second medical image data;
[0069] Among them, the image data generation model includes the recurrent generative adversarial network described in the first aspect.
[0070] In one embodiment, the data generation module includes:
[0071] A data acquisition submodule, used for obtaining a plurality of input image data according to a second preset size and the first medical image data;
[0072] A reconstruction submodule, used to sequentially input a plurality of input image data into the image data generation model for reconstruction, and obtain output image data corresponding to each input image data output by the image data generation model;
[0073] The synthesis submodule is used to perform synthesis processing on the multiple output image data to obtain the second medical image data.
[0074] In one embodiment, the synthesis submodule is specifically used to perform Gaussian weighted calculation on each output image data to obtain weighted image data corresponding to each output image data; and perform average calculation on multiple weighted image data to obtain second medical image data.
[0075] In a fifth aspect, an embodiment of the present disclosure provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0076] Acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data;
[0077] The neural network is trained based on the training sample set to obtain a cyclic generative adversarial network.
[0078] In a sixth aspect, an embodiment of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:
[0079] Acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data;
[0080] The neural network is trained based on the training sample set to obtain a cyclic generative adversarial network.
[0081] The above-mentioned generative adversarial network training method, device, computer equipment and storage medium, the terminal obtains the training sample set; the neural network training is performed based on the training sample set to obtain a cyclic generative adversarial network. Among them, the training sample set includes multiple first sample data and corresponding second sample data, and the layer thickness of the reconstructed image corresponding to the second sample data is less than the layer thickness of the reconstructed image corresponding to the first sample data. Compared with the prior art, no interpolation calculation is required, so the trained cyclic generative adversarial network has high recovery accuracy and can be applied to image reconstruction with different layer thickness resolutions, such as reconstructing low layer thickness resolution images into high layer thickness resolution images. In this way, the cyclic generative adversarial network can solve the problem of information loss in the layer thickness direction and reconstruct images with better quality, thereby meeting the needs of the analysis task. BRIEF DESCRIPTION OF THE DRAWINGS
[0082] Figure 1 A diagram of an application environment for generating an adversarial network training method in one embodiment;
[0083] Figure 2 A schematic diagram of a process of generating an adversarial network training method in one embodiment;
[0084] Figure 3 A schematic diagram of a process of performing neural network training steps based on a training sample set in one embodiment;
[0085] Figure 4 A schematic diagram of the structure of a cyclic generative adversarial network in one embodiment;
[0086] Figure 5 A schematic diagram of a flow chart of a neural network training step based on a first block of data and a second block of data in one embodiment;
[0087] Figure 6 A schematic diagram of a flow chart of the steps for calculating the total generated adversarial loss value in one embodiment;
[0088] Figure 7 A schematic diagram of a flow chart of a calculation step of a total cycle resistance loss value in one embodiment;
[0089] Figure 8 is a flowchart of a method for generating medical image data in one embodiment;
[0090] Fig. 9 A schematic diagram of a flow chart of a step of reconstructing first medical image data using a pre-trained image data generation model in one embodiment;
[0091] Fig.10 is a schematic diagram of a matrix in one embodiment;
[0092] Fig.11A structural block diagram of a device for generating adversarial network training in one embodiment;
[0093] Fig.12 is a structural block diagram of a medical imaging data generating device in one embodiment;
[0094] Fig.13 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0095] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0096] The generative adversarial network training method provided in this application can be applied to Figure 1 In the application environment shown. The application environment may include a terminal 101 and an image acquisition device. The terminal 101 may communicate with the image acquisition device through a network. The terminal 101 may be, but not limited to, various personal computers, laptops, and tablet computers; the image acquisition device may be a medical scanning device, and may be, but not limited to, a CT (Computed Tomography) device, a PET (Positron Emission Computed Tomography)-CT device, and an MR (Magnetic Resonance) device, or other scanning devices, such as three-dimensional scanning devices for geological exploration, geographic surveying, and mapping, or any other device for acquiring three-dimensional images, such as three-dimensional image display terminals for games, movies, and television.
[0097] Taking the image acquisition device as a medical scanning device 102 as an example, the application environment may also include a PACS (Picture Archiving and Communication Systems) server 103, and the terminal 101 and the medical scanning device 102 may communicate with the PACS server 103 through a network. The PACS server 103 may be implemented as an independent server or a server cluster consisting of multiple servers.
[0098] In one embodiment, Figure 2 As shown, a generative adversarial network training method is provided, which is applied to Figure 1 The terminal in is used as an example to illustrate, including the following steps:
[0099] Step 201: Obtain a training sample set.
[0100] The training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data.
[0101] Optionally, the first sample data and the second sample data may be medical imaging data of the same part of different treatment subjects. For example, the first sample data is chest CT imaging data of treatment subject A, and the second sample data is chest CT imaging data of treatment subject B. The layer thickness of the reconstructed image corresponding to the chest CT imaging data of treatment subject A is 5 mm, and the layer thickness of the reconstructed image corresponding to the chest CT imaging data of treatment subject B is 2 mm.
[0102] Optionally, the first sample data and the second sample data may be medical imaging data of different parts of the same diagnosis and treatment object. For example, the first sample data is chest CT imaging data of diagnosis and treatment object A, and the second sample data is abdominal CT imaging data of diagnosis and treatment object A. The layer thickness of the reconstructed image corresponding to the chest CT imaging data is 5 mm, and the layer thickness of the reconstructed image corresponding to the abdominal CT imaging data is 2 mm.
[0103] Optionally, the first sample data and the second sample data may be medical imaging data of different parts of different diagnosis and treatment objects. For example, the first sample data is chest CT imaging data of diagnosis and treatment object A, and the second sample data is abdominal CT imaging data of diagnosis and treatment object B. The layer thickness of the reconstructed image corresponding to the chest CT imaging data is 5 mm, and the layer thickness of the reconstructed image corresponding to the abdominal CT imaging data is 2 mm.
[0104] Optionally, the layer thickness of the reconstructed image corresponding to the plurality of second sample data is different. For example, the second sample data includes abdominal CT image data 1 and abdominal CT image data 2 of the diagnosis and treatment object A, the layer thickness of the reconstructed image corresponding to the abdominal CT image data 1 is 2 mm, and the layer thickness of the reconstructed image corresponding to the abdominal CT image data 2 is 3 mm.
[0105] The embodiment of the present disclosure does not limit the first sample data and the second sample data, and does not limit the layer thickness of the reconstructed image corresponding to the first sample data and the layer thickness of the reconstructed image corresponding to the second sample data.
[0106] The terminal can obtain multiple first sample data and corresponding second sample data from a medical scanning device, or can obtain multiple first sample data and corresponding second sample data from a PACS server. Then, the terminal composes the obtained multiple first sample data and corresponding second sample data into a training sample set.
[0107] Step 202: Perform neural network training based on the training sample set to obtain a recurrent generative adversarial network.
[0108] After the terminal obtains the training sample set, the neural network is trained according to the first sample data and the second sample data in the training sample set to obtain a cycle generative adversarial network (Cycle Generative Adversarial Networks).
[0109] In practical applications, a cyclic generative adversarial network can be used to reconstruct the first medical image data to obtain the second medical image data, wherein the layer thickness of the reconstructed image corresponding to the second medical image data is smaller than the layer thickness of the reconstructed image corresponding to the first medical image data.
[0110] In the above-mentioned generative adversarial network training method, the terminal obtains a training sample set; neural network training is performed based on the training sample set to obtain a cyclic generative adversarial network. Among them, the training sample set includes multiple first sample data and corresponding second sample data, and the layer thickness of the reconstructed image corresponding to the second sample data is less than the layer thickness of the reconstructed image corresponding to the first sample data. Compared with the prior art, no interpolation calculation is required, so the trained cyclic generative adversarial network has high restoration accuracy and can be applied to image reconstruction with different layer thickness resolutions, such as reconstructing low layer thickness resolution images into high layer thickness resolution images. In this way, the cyclic generative adversarial network can solve the problem of information loss in the layer thickness direction and reconstruct images with better quality, thereby meeting the needs of the analysis task.
[0111] In one embodiment, Figure 3 As shown, the above-mentioned steps of training a neural network based on a training sample set to obtain a cyclic generative adversarial network may include:
[0112] Step 301 : Select a first block of data and a second block of data from the first sample data and the second sample data respectively.
[0113] The terminal selects a first block of data from the first sample data, and selects a second block of data from the second sample data, wherein the first block of data and the second block of data have the same size, and the sizes of the first block of data and the second block of data cannot be too large, taking into account the hardware conditions of the terminal. The above selection operation can be random selection or selection according to preset rules. The disclosed embodiments do not limit the selection operation.
[0114] In one of the embodiments, the process of selecting the first block of data and the second block of data from the first sample data and the second sample data respectively may include: calculating the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data respectively according to the first preset size; selecting the first block of data corresponding to the first number of layers from the first sample data; and selecting the second block of data corresponding to the second number of layers from the second sample data.
[0115] For example, the layer thickness of the reconstructed image corresponding to the first sample data is 5 mm, and the size of each voxel in the first sample data is 1*1*5, and the layer thickness of the reconstructed image corresponding to the second sample data is 2 mm, and the size of each voxel in the second sample data is 1*1*2. According to the preset size of 256*256*4, it can be calculated that the first number of layers corresponding to the first sample data is 4 layers, and the second number of layers corresponding to the second sample data is 10 layers. Afterwards, the first block of data corresponding to the first number of layers is selected from the first sample data with a size of 256*256*4, and the second block of data corresponding to the second number of layers is selected from the second sample data with a size of 256*256*10. The preset size is not limited in the embodiments of the present disclosure.
[0116] Step 302: Perform neural network training based on the first block of data and the second block of data to obtain a recurrent generative adversarial network.
[0117] In each round of training, the first block of data and the second block of data are selected according to the above steps. Afterwards, the neural network is trained based on the first block of data and the second block of data. If it is determined that the training result does not meet the preset convergence condition, the network parameters in the neural network are adjusted, and the next round of selection of the first block of data and the second block of data and training of the neural network are performed. The training is terminated until it is determined that the training result meets the preset convergence condition, and the neural network at the end of the training is determined as a recurrent generative adversarial network. The above network parameters are the network parameters of the recurrent generative adversarial network.
[0118] In one embodiment, after selecting the second block of data from the second sample data, the second block of data is interpolated to obtain the third block of data; a neural network is trained based on the first block of data and the third block of data to obtain a recurrent generative adversarial network. The layer thickness of the reconstructed image corresponding to the second block of data is less than the layer thickness of the reconstructed image corresponding to the third block of data.
[0119] For example, the layer thickness of the reconstructed image corresponding to the first sample data is 5mm, and the layer thickness of the reconstructed image corresponding to the second sample data is 2mm. The second block of data is interpolated to obtain the third block of data, and the layer thickness of the reconstructed image corresponding to the third block of data is 3mm. If a neural network is trained based on the first block of data and the second block of data to obtain a cyclic generative adversarial network, the cyclic generative adversarial network is used to reconstruct the first medical image data to obtain the second medical image data, and the layer thickness of the reconstructed image corresponding to the first medical image data is 5mm, and the layer thickness of the reconstructed image corresponding to the second medical image data is 2mm. If a neural network is trained based on the first block of data and the third block of data to obtain a cyclic generative adversarial network, the cyclic generative adversarial network is used to reconstruct the first medical image data to obtain the second medical image data, and the layer thickness of the reconstructed image corresponding to the first medical image data is 5mm, and the layer thickness of the reconstructed image corresponding to the second medical image data is 3mm.
[0120] In one of the embodiments, a neural network is trained based on a plurality of first preset sizes and / or a plurality of first blocks of data and a second block of data to obtain a recurrent generative adversarial network.
[0121] For example, the first block of data and the second block of data are selected according to the first preset size a for the first round of neural network training; the first block of data and the second block of data are selected according to the first preset size b for the second round of neural network training; the first block of data and the third block of data are selected according to the first preset size c for the third round of neural network training, and so on, until the trained neural network meets the preset convergence condition, and a cyclic generative adversarial network is obtained. The first preset sizes a, b, and c can be different sizes.
[0122] In the above process of performing neural network training based on the training sample set to obtain a recurrent generative adversarial network, the terminal selects the first block of data and the second block of data from the first sample data and the second sample data respectively; and performs neural network training based on the first block of data and the second block of data to obtain a recurrent generative adversarial network.
[0123] In one embodiment, Figure 4 As shown, the cyclic generative adversarial network includes a first generator, a second generator, a first discriminator and a second discriminator, as shown in Figure 5 As shown, the above-mentioned step of performing neural network training based on the first block of data and the second block of data to obtain a cyclic generative adversarial network may include:
[0124] Step 401, input a first block of data into a first generator for reconstruction to obtain a first generation result.
[0125] The terminal inputs the first block of data into the first generator, and the first generator performs data reconstruction processing according to the first block of data to obtain a first generation result.
[0126] The first generated result corresponds to the second block of data. For example, the first block of data is thick layer data selected from the chest CT image data of the diagnosis and treatment object A, and the second block of data is thin layer data selected from the chest CT image data of the diagnosis and treatment object B. The first generator reconstructs the first generated result of the thin layer with the same layer thickness as the second block of data, such as Figure 4 shown.
[0127] Step 402: input the second block of data into the second generator for reconstruction to obtain a second generation result.
[0128] The terminal inputs the second block of data into the second generator, and the second generator performs data reconstruction processing according to the second block of data to obtain a second generation result.
[0129] The second generated result corresponds to the first block of data. For example, the first block of data is thick layer data selected from the chest CT image data of the diagnosis and treatment object A, and the second block of data is thin layer data selected from the chest CT image data of the diagnosis and treatment object B. The second generator reconstructs the second generated result of the thick layer with the same layer thickness as the first block of data, such as Figure 4 shown.
[0130] The disclosed embodiment does not limit the location and organ of the input data by the first generator and the second generator during the reconstruction process.
[0131] Step 403, input the first generation result into the second generator for reconstruction to obtain a third generation result.
[0132] After the terminal obtains the first generation result, the first generation result is input into the second generator, and the second generator reconstructs the data according to the first generation result to obtain the third generation result.
[0133] The third generated result corresponds to the first block of data. For example, the first block of data is thick layer data selected from the chest CT image data of the diagnosis and treatment object A, the first generated result is thin layer data reconstructed from the thick layer data of the chest CT image of the diagnosis and treatment object A, and the third generated result is the reconstructed thin layer data by the second generator to obtain the reconstructed thick layer data of the chest CT image of the diagnosis and treatment object A similar to the first block of data, such as Figure 4 shown.
[0134] Step 404, input the second generation result into the first generator for reconstruction to obtain a fourth generation result.
[0135] After obtaining the second generation result, the terminal inputs the second generation result to the first generator, and the first generator reconstructs data according to the second generation result to obtain the fourth generation result.
[0136] The fourth generated result corresponds to the second block of data. For example, the second block of data is thin-layer data selected from the chest CT image data of the diagnosis and treatment object B, the second generated result is thick-layer data reconstructed from the thin-layer data of the chest CT image data of the diagnosis and treatment object B, and the fourth generated result is the reconstructed thick-layer data reconstructed by the first generator to obtain the reconstructed thin-layer data of the chest CT image of the diagnosis and treatment object B similar to the second block of data, such as Figure 4 shown.
[0137] Step 405, calculate the total loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and adjust the network parameters according to the total loss value to obtain a recurrent generative adversarial network.
[0138] The total loss value includes a first loss value and a second loss value.
[0139] After the terminal obtains the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, it can calculate the first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and calculate the second loss value based on the first block of data, the second block of data, the first generation result and the second generation result; then use the first loss value to adjust the network parameters of the first generator and the second generator, and use the second loss value to adjust the network parameters of the first discriminator and the second discriminator to obtain a cyclic generative adversarial network.
[0140] Specifically, the network parameters of the first discriminator and the second discriminator are first fixed, the first loss value is calculated according to the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and the network parameters of the first generator and the second generator are adjusted according to the first loss value. After that, the network parameters of the first generator and the second generator are fixed, the second loss value is calculated according to the first block of data, the second block of data, the first generation result and the second generation result, and the network parameters of the first discriminator and the second discriminator are adjusted according to the second loss value. And so on, until the outputs of the first generator, the second generator, the first discriminator and the second discriminator meet the preset convergence conditions, the training is terminated, and the neural network obtained at the end of the training is determined as a cyclic generative adversarial network.
[0141] In the above embodiment, the terminal inputs the first block of data into the first generator for reconstruction to obtain the first generation result; inputs the second block of data into the second generator for reconstruction to obtain the second generation result; inputs the first generation result into the second generator for reconstruction to obtain the third generation result; inputs the second generation result into the first generator for reconstruction to obtain the fourth generation result; calculates the total loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and adjusts the network parameters according to the total loss value to obtain a cyclic generative adversarial network. In the disclosed embodiment, the first block of data and the second block of data are relatively independent, and can come from the same part of different diagnostic and treatment objects, or from different parts of the same diagnostic and treatment object, preferably from different parts of different diagnostic and treatment objects, which can not only reduce the difficulty of data acquisition, but also does not need to pre-align the first block of data and the second block of data or establish a corresponding relationship before training, so that unsupervised training of neural networks can be achieved, thereby saving the preparation process of training labels, and thus improving the training efficiency of cyclic generative adversarial networks.
[0142] In one embodiment, Figure 6 As shown, the calculation process of the first loss value includes:
[0143] Step 4051, input the second generated result into the first discriminator, obtain the first discrimination result output by the first discriminator, calculate the loss between the first discrimination result and the all-one data of the same size, and obtain the first generated adversarial loss value.
[0144] The first discrimination result is used to indicate whether the second generated result is the first block of data that is true. For example, if the first discrimination result is close to 1, it indicates that the probability that the first discriminator judges that the second generated result is the first block of data that is true is relatively high; if the first discrimination result is close to 0, it indicates that the probability that the first discriminator judges that the second generated result is the first block of data that is false is relatively high; if the first discrimination result is close to 0.5, it indicates that it is difficult for the first discriminator to judge whether the second generated result is the first block of data that is true.
[0145] The terminal inputs the second generated result into the first discriminator, and the first discriminator determines whether the second generated result is the true first block of data, and outputs the first discrimination result, such as Figure 4 Then, a preset loss function is used to calculate the loss between the first discrimination result and the all-one data of the same size to obtain a first generative adversarial loss value. The all-one data is data with a probability of 1 for each pixel.
[0146] Step 4052, input the first generated result into the second discriminator, obtain the second discrimination result output by the second discriminator, calculate the loss between the second discrimination result and the all-one data of the same size, and obtain the second generated adversarial loss value.
[0147] The second discrimination result is used to indicate whether the first generated result is the second block of data that is true. For example, if the second discrimination result is close to 1, it indicates that the probability that the second discriminator judges that the first generated result is the second block of data that is true is relatively high; if the second discrimination result is close to 0, it indicates that the probability that the second discriminator judges that the first generated result is the second block of data that is false is relatively high; if the second discrimination result is close to 0.5, it indicates that it is difficult for the second discriminator to judge whether the first generated result is the second block of data that is true.
[0148] The terminal inputs the first generated result into the second discriminator, and the second discriminator determines whether the first generated result is a true second block of data, and outputs a second discrimination result, such as Figure 4 The loss between the second discrimination result and the all-one data of the same size is calculated using a preset loss function to obtain a second generative adversarial loss value.
[0149] Step 4053, calculate the loss between the first block of data and the third generated result to obtain the first cycle adversarial loss value, calculate the loss between the second block of data and the fourth generated result to obtain the second cycle adversarial loss value.
[0150] The loss between the first block of data and the third generated result is calculated using a preset loss function to obtain a first cycle adversarial loss value. The loss between the second block of data and the fourth generated result is calculated using a preset loss function to obtain a second cycle adversarial loss value.
[0151] The above loss function may be a MSE (mean square error) function or other loss functions. The embodiment of the present disclosure does not limit the loss function and may be selected according to actual conditions.
[0152] Step 4054, performing weighted sum calculation on the first generated adversarial loss value, the second generated adversarial loss value, the first loop adversarial loss value, and the second loop adversarial loss value to obtain a first loss value.
[0153] For example, the first generation adversarial loss value is l1, the second generation adversarial loss value is l2, the first cycle adversarial loss value is l1', the second cycle adversarial loss value is l2', and the weights of the first generation adversarial loss value and the second generation adversarial loss value are k1, and the weights of the first cycle adversarial loss value and the second cycle adversarial loss value are k2, then the first loss value is L1 = k1*(l1+l2)+k2*(l1'+l2'). Among them, k1:k2 can be 1:10. The embodiment of the present disclosure does not limit the weights, and can be set according to actual conditions.
[0154] The above l1 can be calculated using the following formula:
[0155] l1=E y [log(1-D1(G 21 (y)))]
[0156] The above l2 can be calculated using the following formula:
[0157] l2=E x [log(1-D2(G 12 (x)))]
[0158] The above l1' can be calculated using the following formula:
[0159] l1′=E x [||xG 21 (G 12 (x))||1]
[0160] The above l2' can be calculated using the following formula:
[0161] l2′=E y [||yG 12 (G 21 (y))||1]
[0162] Among them, x is the first block of data, y is the second block of data, G 12 (x) is the first generated result, G 21 (y) is the second generated result, G 21 (G 12 (x)) is the third generated result, G 12 (G 21 (y)) is the fourth generated result, D1(G 21 (y)) is the first judgment result, D2(G 12 (x)) is the second judgment result.
[0163] In the above embodiment, the terminal calculates the first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result. In this process, the first loss value is obtained by using the generation result of the generator and the discrimination result of the discriminator, which can better adjust the network parameters of the first generator and the second generator in the neural network, thereby improving the accuracy of the generator generation.
[0164] In one embodiment, Figure 7 As shown, the calculation process of the second loss value may include:
[0165] Step 4055, calculate the loss between the first discrimination result and the all-zero data of the same size to obtain a third generative adversarial loss value.
[0166] The terminal calculates the loss between the first discrimination result and the all-zero data of the same size using a preset loss function to obtain a third generative adversarial loss value, wherein the all-zero data is data whose probability corresponding to each pixel is 0.
[0167] Step 4056, input the first block of data into the first discriminator, obtain the third discrimination result output by the first discriminator, calculate the loss between the third discrimination result and the all-one data of the same size, and obtain the fourth generative adversarial loss value.
[0168] The third discrimination result is used to indicate whether the input first block of data is the real first block of data. For example, if the third discrimination result is close to 1, it indicates that the probability that the first discriminator judges that the input first block of data is the real first block of data is relatively high; if the third discrimination result is close to 0, it indicates that the probability that the first discriminator judges that the input first block of data is the false first block of data is relatively high; if the third discrimination result is close to 0.5, it indicates that it is difficult for the first discriminator to judge whether the input first block of data is the real first block of data.
[0169] The terminal inputs the first block of data into the first discriminator to obtain a third discrimination result output by the first discriminator, and then uses a preset loss function to calculate the loss between the third discrimination result and the all-one data of the same size to obtain a fourth generative adversarial loss value.
[0170] Step 4057, calculate the loss between the second discrimination result and the all-zero data of the same size to obtain the fifth generative adversarial loss value.
[0171] The terminal calculates the loss between the second discrimination result and the all-zero data of the same size using a preset loss function to obtain a fifth generation adversarial loss value.
[0172] Step 4058, input the second block of data into the second discriminator, obtain the fourth discrimination result output by the second discriminator, calculate the loss between the fourth discrimination result and the all-one data of the same size, and obtain the sixth generative adversarial loss value.
[0173] The fourth discrimination result is used to indicate whether the input second block of data is the real second block of data. For example, if the fourth discrimination result is close to 1, it indicates that the probability that the second discriminator judges that the input second block of data is the real second block of data is relatively high; if the fourth discrimination result is close to 0, it indicates that the probability that the second discriminator judges that the input second block of data is the fake second block of data is relatively high; if the fourth discrimination result is close to 0.5, it indicates that it is difficult for the second discriminator to judge whether the input second block of data is the real second block of data.
[0174] The terminal inputs the second block of data into the second discriminator to obtain a fourth discrimination result output by the second discriminator, and then uses a preset loss function to calculate the loss between the fourth discrimination result and the all-one data of the same size to obtain a sixth generative adversarial loss value.
[0175] Step 4059, perform weighted sum calculation on the third generation adversarial loss value, the fourth generation adversarial loss value, the fifth generation adversarial loss value and the sixth generation adversarial loss value to obtain a second loss value.
[0176] For example, the third generation antagonistic loss value is l3, the fourth generation antagonistic loss value is l4, the fifth generation antagonistic loss value is l5, and the sixth generation antagonistic loss value is l6, and the weight values of the third generation antagonistic loss value and the fourth generation antagonistic loss value are k3, and the weight values of the fifth generation antagonistic loss value and the sixth generation antagonistic loss value are k4, then the second loss value is L2=k3*(l3+l4)+k4*(l5+l6). Among them, k3 and k4 can be 0.5. The embodiment of the present disclosure does not limit the weights, and can be set according to actual conditions.
[0177] The above l3 can be calculated using the following formula:
[0178] l3=E y [log(0-D1(G 21 (y)))]
[0179] The above l4 can be calculated using the following formula:
[0180] l4=E x [log(1-D1(x))]
[0181] The above l5 can be calculated using the following formula:
[0182] l5=E x [log(0-D2(G 12 (x)))]
[0183] The above l6 can be calculated using the following formula:
[0184] l6=E y [log(1-D2(y))]
[0185] Among them, x is the first block of data, y is the second block of data, G 12 (x) is the first generated result, G 21 (y) is the second generated result, G 21 (G 12 (x)) is the third generated result, G 12 (G 21 (y)) is the fourth generated result, D1(G 21 (y)) is the first judgment result, D2(G 12 D1(x) is the second discrimination result, D1(x) is the third discrimination result, and D2(y) is the fourth discrimination result.
[0186] In the above embodiment, the terminal calculates the second loss value based on the first block of data, the second block of data, the first generation result, and the second generation result. In this process, the loss value is obtained by using the generation result of the generator and the discrimination result of the discriminator, so that the network parameters of the first discriminator and the second discriminator in the neural network can be better adjusted, thereby improving the accuracy of the discriminator's judgment.
[0187] In one embodiment, Figure 8 As shown, a method for generating medical image data is provided, and the method is applied to Figure 1 The terminal in is used as an example to illustrate, including the following steps:
[0188] Step 501: Acquire first medical image data.
[0189] The terminal may obtain the first medical image from a medical scanning device, or may obtain the first medical image data from a PACS server. This embodiment of the disclosure does not limit this.
[0190] Step 502: Reconstruct the first medical image data using a pre-trained image data generation model to obtain second medical image data.
[0191] Among them, the image data generation model includes a cyclic generative adversarial network.
[0192] In actual use, different parts of the recurrent generative adversarial network can be used according to actual conditions. For example, if it is desired to reconstruct low-resolution medical image data to obtain high-resolution medical image data, the first medical image data can be input into the first generator in the recurrent generative adversarial network, and the first generator reconstructs and outputs the second medical image data based on the first medical image data. The layer thickness resolution of the second medical image data is higher than the layer thickness resolution of the first medical image data, that is, the layer thickness of the reconstructed image corresponding to the second medical image data is smaller than the layer thickness of the reconstructed image corresponding to the first medical image data.
[0193] Alternatively, if it is desired to reconstruct high-resolution medical image data to obtain low-resolution medical image data, the first medical image data can be input into the second generator in the recurrent generative adversarial network, and the second generator reconstructs and outputs the second medical image data based on the first medical image data. The resolution of the second medical image data is lower than that of the first medical image data, that is, the layer thickness of the reconstructed image corresponding to the second medical image data is greater than the layer thickness of the reconstructed image corresponding to the first medical image data.
[0194] The training process of the recurrent generative adversarial network may include: obtaining a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; and performing neural network training based on the training sample set to obtain a recurrent generative adversarial network. The layer thickness of the reconstructed image corresponding to the second sample data is less than the layer thickness of the reconstructed image corresponding to the first sample data.
[0195] In one of the embodiments, the process of performing neural network training based on the training sample set to obtain a recurrent generative adversarial network may include: selecting a first block of data and a second block of data from the first sample data and the second sample data, respectively; performing neural network training based on the first block of data and the second block of data to obtain a recurrent generative adversarial network.
[0196] In one of the embodiments, the process of selecting the first block of data and the second block of data from the first sample data and the second sample data respectively may include: calculating the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data respectively according to the first preset size; selecting the first block of data corresponding to the first number of layers from the first sample data; and selecting the second block of data corresponding to the second number of layers from the second sample data.
[0197] In one of the embodiments, it may also include: performing neural network training according to multiple first preset sizes and / or multiple first blocks of data and second blocks of data to obtain a recurrent generative adversarial network.
[0198] In one embodiment, a recurrent generative adversarial network includes a first generator and a second generator. The process of training a neural network based on the first block of data and the second block of data to obtain a recurrent generative adversarial network may include: inputting the first block of data into the first generator for reconstruction to obtain a first generation result; inputting the second block of data into the second generator for reconstruction to obtain a second generation result; inputting the first generation result into the second generator for reconstruction to obtain a third generation result; inputting the second generation result into the first generator for reconstruction to obtain a fourth generation result; calculating a total loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and adjusting the network parameters according to the total loss value to obtain a recurrent generative adversarial network.
[0199] In one embodiment, the cyclic generative adversarial network also includes a first discriminator and a second discriminator, and the total loss value includes a first loss value and a second loss value. The above process of calculating the total loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and adjusting the network parameters according to the total loss value to obtain the cyclic generative adversarial network may include: calculating the first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and calculating the second loss value based on the first block of data, the second block of data, the first generation result and the second generation result; adjusting the network parameters of the first generator and the second generator using the first loss value, and adjusting the network parameters of the first discriminator and the second discriminator using the second loss value to obtain the cyclic generative adversarial network.
[0200] In one embodiment, the calculation process of the first loss value includes: inputting the second generation result into the first discriminator to obtain the first discrimination result output by the first discriminator, calculating the loss between the first discrimination result and the all-one data of the same size, and obtaining the first generation adversarial loss value; the first discrimination result is used to indicate whether the second generation result is the first block of true data; inputting the first generation result into the second discriminator to obtain the second discrimination result output by the second discriminator, calculating the loss between the second discrimination result and the all-one data of the same size, and obtaining the second generation adversarial loss value; the second discrimination result is used to indicate whether the first generation result is the second block of true data; calculating the loss between the first block of data and the third generation result to obtain the first cycle adversarial loss value, calculating the loss between the second block of data and the fourth generation result to obtain the second cycle adversarial loss value; performing weighted sum calculation on the first generation adversarial loss value, the second generation adversarial loss value, the first cycle adversarial loss value and the second cycle adversarial loss value to obtain the first loss value.
[0201] In one embodiment, the calculation process of the second loss value includes: calculating the loss between the first discrimination result and the all-zero data of the same size to obtain a third generation adversarial loss value; inputting the first block of data into the first discriminator to obtain the third discrimination result output by the first discriminator, calculating the loss between the third discrimination result and the all-one data of the same size to obtain a fourth generation adversarial loss value; calculating the loss between the second discrimination result and the all-zero data of the same size to obtain a fifth generation adversarial loss value; inputting the second block of data into the second discriminator to obtain the fourth discrimination result output by the second discriminator, calculating the loss between the fourth discrimination result and the all-one data of the same size to obtain a sixth generation adversarial loss value; performing weighted sum calculation on the third generation adversarial loss value, the fourth generation adversarial loss value, the fifth generation adversarial loss value and the sixth generation adversarial loss value to obtain the second loss value.
[0202] In the above-mentioned medical image data generation method, the terminal obtains first medical image data; the first medical image data is reconstructed using a pre-trained image data generation model to obtain second medical image data. Compared with the interpolation method in the prior art, the embodiment of the present disclosure uses a pre-trained image data generation model to generate an image with a resolution that meets the user's needs, which can not only obtain an image of better quality, but also meet the needs of the analysis task.
[0203] In one embodiment, Fig. 9 As shown, the above step of reconstructing the first medical image data using the pre-trained image data generation model to obtain the second medical image data may include:
[0204] Step 5021, obtaining a plurality of input image data according to the second preset size and the first medical image data.
[0205] After the terminal obtains the first medical image data, it selects a plurality of input image data from the first medical image data according to the second preset size, wherein each two adjacent input image data may overlap or may not overlap.
[0206] For example, there is a 50% overlap between input image data 1 and input image data 2; and there is a 50% overlap between input image data 2 and input image data 3. The embodiment of the present disclosure does not limit the size of the overlap.
[0207] The second preset size may be any one of the multiple first preset sizes in the above embodiments.
[0208] Step 5022: input a plurality of input image data into the image data generation model in sequence for reconstruction, and obtain output image data corresponding to each input image data output by the image data generation model.
[0209] After obtaining multiple input image data, if low-resolution medical image data is to be reconstructed to obtain high-resolution medical image data, the multiple input image data are sequentially input into the first generator of the image data generation model to obtain output image data corresponding to each input image data output by the first generator.
[0210] If high-resolution medical image data is to be reconstructed to obtain low-resolution medical image data, multiple input image data are sequentially input into the second generator of the image data generation model to obtain output image data corresponding to each input image data output by the second generator.
[0211] Step 5023, synthesizing the multiple output image data to obtain second medical image data.
[0212] If there is no overlapping part between the multiple input image data, after obtaining the multiple output image data, the multiple output image data can be spliced according to the position of the input image data to obtain the second medical image data.
[0213] If there are overlapping parts between multiple input image data, after obtaining multiple output image data, Gaussian weighted calculation can be performed on each output image data to obtain weighted image data corresponding to each output image data; then, the multiple weighted image data are averaged to obtain the second medical image data.
[0214] like Fig.10As shown, first construct two matrices of the first medical image data size dimension, one matrix places the result of the network output, called the result matrix, and the other matrix places the weight, called the weight matrix. For example, two overlapping blocks are extracted starting from the upper left corner of the first medical image data, such as the first color block and the second color block processed by the network. Assume that the output size is 256*256*10. Then construct two Gaussian matrices of the same size of 256*256*10, normalized to between 0 and 1. When splicing back, place the output results corresponding to the network at the positions of the first color block and the second color block in the result matrix, and place the Gaussian matrix results at the same position of the weight matrix. The outputs of the two blocks are directly added at the overlapping parts of the result matrix and the weight matrix. Repeat the above process until the entire first medical image data is traversed, and directly divide the value of the corresponding position of the result matrix by the weight matrix to obtain the second medical image data after weighted average.
[0215] In practical applications, other synthesis processing methods may also be used, which are not limited in the embodiments of the present disclosure.
[0216] In the above embodiment, input image data is selected from the first medical image data according to the second preset size, output image data is generated using the image data generation model, and then second medical image data with a resolution that meets the user's needs is obtained based on the multiple output images. In this way, not only can images with better quality be obtained, but also the needs of the analysis task can be met.
[0217] It should be understood that although Figures 2 to 9 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figures 2 to 9 At least part of the steps may include multiple steps or multiple stages. These steps or stages are not necessarily performed at the same time, but can be performed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed in turn or alternately with other steps or at least part of the steps or stages in other steps.
[0218] In one embodiment, Fig.11 As shown, a generative adversarial network training device is provided, comprising:
[0219] The sample acquisition module 601 is used to acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data;
[0220] The training module 602 is used to perform neural network training based on the training sample set to obtain a recurrent generative adversarial network.
[0221] In one embodiment, the training module 602 includes:
[0222] A data selection submodule, used to select a first block of data and a second block of data from the first sample data and the second sample data respectively;
[0223] A training submodule, used for performing neural network training based on the first block of data and the second block of data to obtain a recurrent generative adversarial network;
[0224] Among them, the data selection submodule is specifically used to calculate the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data according to the first preset size; select the first block of data corresponding to the first number of layers from the first sample data; select the second block of data corresponding to the second number of layers from the second sample data.
[0225] In one of the embodiments, the training module is further used to perform neural network training according to a plurality of first preset sizes and / or a plurality of first blocks of data and second blocks of data to obtain a recurrent generative adversarial network.
[0226] In one embodiment, the recurrent generative adversarial network includes a first generator and a second generator, and the training submodule includes:
[0227] A first reconstruction unit, used for inputting the first block of data into the first generator for reconstruction to obtain a first generation result;
[0228] A second reconstruction unit, used for inputting the second block of data into the second generator for reconstruction to obtain a second generation result;
[0229] A third reconstruction unit, used for inputting the first generation result into the second generator for reconstruction to obtain a third generation result;
[0230] a fourth reconstruction unit, configured to input the second generation result into the first generator for reconstruction to obtain a fourth generation result;
[0231] A training unit is used to calculate a total loss value based on a first block of data, a second block of data, a first generation result, a second generation result, a third generation result, and a fourth generation result, and to adjust network parameters according to the total loss value to obtain a cyclic generative adversarial network.
[0232] In one embodiment, the cyclic generative adversarial network also includes a first discriminator and a second discriminator, the total loss value includes the first loss value and the second loss value, the above-mentioned training unit calculates the first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and calculates the second loss value based on the first block of data, the second block of data, the first generation result and the second generation result; the first loss value is used to adjust the network parameters of the first generator and the second generator, and the second loss value is used to adjust the network parameters of the first discriminator and the second discriminator, so as to obtain a cyclic generative adversarial network.
[0233] In one of the embodiments, the above-mentioned training unit is specifically used to input the second generation result into the first discriminator to obtain the first discrimination result output by the first discriminator, calculate the loss between the first discrimination result and the all-one data of the same size, and obtain the first generation adversarial loss value; the first discrimination result is used to indicate whether the second generation result is the first block of true data; the first generation result is input into the second discriminator to obtain the second discrimination result output by the second discriminator, calculate the loss between the second discrimination result and the all-one data of the same size, and obtain the second generation adversarial loss value; the second discrimination result is used to indicate whether the first generation result is the second block of true data; calculate the loss between the first block of data and the third generation result to obtain the first cycle adversarial loss value, calculate the loss between the second block of data and the fourth generation result to obtain the second cycle adversarial loss value; perform weighted sum calculation on the first generation adversarial loss value, the second generation adversarial loss value, the first cycle adversarial loss value and the second cycle adversarial loss value to obtain the first loss value.
[0234] In one of the embodiments, the training unit is specifically used to calculate the loss between the first discrimination result and the all-zero data of the same size to obtain a third generative adversarial loss value; input the first block of data into the first discriminator to obtain the third discrimination result output by the first discriminator, calculate the loss between the third discrimination result and the all-one data of the same size to obtain a fourth generative adversarial loss value; calculate the loss between the second discrimination result and the all-zero data of the same size to obtain a fifth generative adversarial loss value; input the second block of data into the second discriminator to obtain the fourth discrimination result output by the second discriminator, calculate the loss between the fourth discrimination result and the all-one data of the same size to obtain a sixth generative adversarial loss value; perform weighted sum calculation on the third generative adversarial loss value, the fourth generative adversarial loss value, the fifth generative adversarial loss value and the sixth generative adversarial loss value to obtain a second loss value.
[0235] For the specific definition of the generative adversarial network training device, please refer to the definition of the generative adversarial network training method above, which will not be repeated here. Each module in the above-mentioned generative adversarial network training device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.
[0236] In one embodiment, Fig.12 As shown, a medical image data generating device comprises:
[0237] The data acquisition module 701 is used to acquire first medical image data;
[0238] A data generation module 702 is used to reconstruct the first medical image data using a pre-trained image data generation model to obtain second medical image data;
[0239] Among them, the image data generation model includes the recurrent generative adversarial network of the above embodiment.
[0240] In one embodiment, the data generation module 702 includes:
[0241] A data acquisition submodule, used for obtaining a plurality of input image data according to a second preset size and the first medical image data;
[0242] A reconstruction submodule, used to sequentially input a plurality of input image data into the image data generation model for reconstruction, and obtain output image data corresponding to each input image data output by the image data generation model;
[0243] The synthesis submodule is used to perform synthesis processing on the multiple output image data to obtain the second medical image data.
[0244] In one embodiment, the synthesis submodule is specifically used to perform Gaussian weighted calculation on each output image data to obtain weighted image data corresponding to each output image data; and perform average calculation on multiple weighted image data to obtain second medical image data.
[0245] For the specific definition of the medical imaging data generating device, please refer to the definition of the medical imaging data generating method above, which will not be repeated here. Each module in the above-mentioned medical imaging data generating device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.
[0246] In one embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as follows: Fig.13 As shown. The computer device includes a processor, a memory, a communication interface, a display screen and an input device connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be achieved through WIFI, an operator network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a generative adversarial network training method is implemented. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covered on the display screen, or a key, trackball or touchpad set on the computer device housing, or an external keyboard, touchpad or mouse, etc.
[0247] Those skilled in the art will understand that Fig.13 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0248] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented:
[0249] Acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data;
[0250] The neural network is trained based on the training sample set to obtain a cyclic generative adversarial network.
[0251] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0252] Selecting a first block of data and a second block of data from the first sample data and the second sample data respectively;
[0253] Performing neural network training based on the first block of data and the second block of data to obtain a cyclic generative adversarial network;
[0254] The selecting of the first block of data and the second block of data from the first sample data and the second sample data respectively includes:
[0255] Calculate the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data respectively according to the first preset size;
[0256] Selecting a first block of data corresponding to a first layer number from the first sample data;
[0257] A second block of data corresponding to the second layer number is selected from the second sample data.
[0258] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0259] A neural network is trained according to the multiple first preset sizes and / or the multiple first blocks of data and the second block of data to obtain a cyclic generative adversarial network.
[0260] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0261] Inputting the first block of data into the first generator for reconstruction to obtain a first generation result;
[0262] Inputting the second block of data into the second generator for reconstruction to obtain a second generation result;
[0263] Inputting the first generation result into the second generator for reconstruction to obtain a third generation result;
[0264] Inputting the second generation result into the first generator for reconstruction to obtain a fourth generation result;
[0265] A total loss value is calculated based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and network parameters are adjusted according to the total loss value to obtain a cyclic generative adversarial network.
[0266] In one embodiment, the total loss value includes a first loss value and a second loss value, and when the processor executes the computer program, the following steps are further implemented:
[0267] Calculate a first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result, and the fourth generation result, and calculate a second loss value based on the first block of data, the second block of data, the first generation result, and the second generation result;
[0268] The first loss value is used to adjust the network parameters of the first generator and the second generator, and the second loss value is used to adjust the network parameters of the first discriminator and the second discriminator to obtain a cyclic generative adversarial network.
[0269] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0270] Input the second generated result into the first discriminator to obtain a first discriminant result output by the first discriminator, calculate the loss between the first discriminant result and the all-one data of the same size, and obtain a first generated adversarial loss value; the first discriminant result is used to indicate whether the second generated result is the first block of true data;
[0271] Input the first generation result into the second discriminator to obtain a second discrimination result output by the second discriminator, calculate the loss between the second discrimination result and the all-one data of the same size, and obtain a second generation adversarial loss value; the second discrimination result is used to indicate whether the first generation result is a second block of data that is true;
[0272] Calculate the loss between the first block of data and the third generated result to obtain a first cycle adversarial loss value, calculate the loss between the second block of data and the fourth generated result to obtain a second cycle adversarial loss value;
[0273] The first generation adversarial loss value, the second generation adversarial loss value, the first cycle adversarial loss value and the second cycle adversarial loss value are weightedly summed to obtain the first loss.
[0274] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0275] Calculate the loss between the first discrimination result and the all-zero data of the same size to obtain a third generative adversarial loss value;
[0276] Input the first block of data into the first discriminator, obtain a third discriminant result output by the first discriminator, calculate the loss between the third discriminant result and the all-one data of the same size, and obtain a fourth generative adversarial loss value;
[0277] Calculate the loss between the second discrimination result and the all-zero data of the same size to obtain the fifth generative adversarial loss value;
[0278] Input the second block of data into the second discriminator, obtain a fourth discrimination result output by the second discriminator, calculate the loss between the fourth discrimination result and the all-one data of the same size, and obtain a sixth generative adversarial loss value;
[0279] A weighted sum is calculated for the third generation adversarial loss value, the fourth generation adversarial loss value, the fifth generation adversarial loss value, and the sixth generation adversarial loss value to obtain a second loss value.
[0280] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:
[0281] Acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data;
[0282] The neural network is trained based on the training sample set to obtain a cyclic generative adversarial network.
[0283] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0284] Selecting a first block of data and a second block of data from the first sample data and the second sample data respectively;
[0285] Performing neural network training based on the first block of data and the second block of data to obtain a cyclic generative adversarial network;
[0286] The selecting of the first block of data and the second block of data from the first sample data and the second sample data respectively includes:
[0287] Calculate the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data respectively according to the first preset size;
[0288] Selecting a first block of data corresponding to a first layer number from the first sample data;
[0289] A second block of data corresponding to the second layer number is selected from the second sample data.
[0290] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:
[0291] A neural network is trained according to the multiple first preset sizes and / or the multiple first blocks of data and the second block of data to obtain a cyclic generative adversarial network.
[0292] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0293] Inputting the first block of data into the first generator for reconstruction to obtain a first generation result;
[0294] Inputting the second block of data into the second generator for reconstruction to obtain a second generation result;
[0295] Inputting the first generation result into the second generator for reconstruction to obtain a third generation result;
[0296] Inputting the second generation result into the first generator for reconstruction to obtain a fourth generation result;
[0297] A total loss value is calculated based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and network parameters are adjusted according to the total loss value to obtain a cyclic generative adversarial network.
[0298] In one embodiment, the total loss value includes a first loss value and a second loss value, and when the computer program is executed by a processor, the following steps are further implemented:
[0299] Calculate a first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result, and the fourth generation result, and calculate a second loss value based on the first block of data, the second block of data, the first generation result, and the second generation result;
[0300] The first loss value is used to adjust the network parameters of the first generator and the second generator, and the second loss value is used to adjust the network parameters of the first discriminator and the second discriminator to obtain a cyclic generative adversarial network.
[0301] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0302] Input the second generated result into the first discriminator to obtain a first discriminant result output by the first discriminator, calculate the loss between the first discriminant result and the all-one data of the same size, and obtain a first generated adversarial loss value; the first discriminant result is used to indicate whether the second generated result is the first block of true data;
[0303] Input the first generation result into the second discriminator to obtain a second discrimination result output by the second discriminator, calculate the loss between the second discrimination result and the all-one data of the same size, and obtain a second generation adversarial loss value; the second discrimination result is used to indicate whether the first generation result is a second block of data that is true;
[0304] Calculate the loss between the first block of data and the third generated result to obtain a first cycle adversarial loss value, calculate the loss between the second block of data and the fourth generated result to obtain a second cycle adversarial loss value;
[0305] The first generation adversarial loss value, the second generation adversarial loss value, the first cycle adversarial loss value and the second cycle adversarial loss value are weightedly summed to obtain the first loss.
[0306] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:
[0307] Calculate the loss between the first discrimination result and the all-zero data of the same size to obtain a third generative adversarial loss value;
[0308] Input the first block of data into the first discriminator, obtain a third discriminant result output by the first discriminator, calculate the loss between the third discriminant result and the all-one data of the same size, and obtain a fourth generative adversarial loss value;
[0309] Calculate the loss between the second discrimination result and the all-zero data of the same size to obtain the fifth generative adversarial loss value;
[0310] Input the second block of data into the second discriminator, obtain a fourth discrimination result output by the second discriminator, calculate the loss between the fourth discrimination result and the all-one data of the same size, and obtain a sixth generative adversarial loss value;
[0311] A weighted sum is calculated for the third generation adversarial loss value, the fourth generation adversarial loss value, the fifth generation adversarial loss value, and the sixth generation adversarial loss value to obtain a second loss value.
[0312] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).
[0313] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0314] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the attached claims.
Claims
1. A generative adversarial network training method, characterized in that: The method comprises: Acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data; Performing neural network training based on the training sample set to obtain a cyclic generative adversarial network; The performing of neural network training based on the training sample set to obtain the cyclic generative adversarial network includes: Selecting a first block of data and a second block of data from the first sample data and the second sample data respectively; Performing neural network training based on the first block of data and the second block of data to obtain the recurrent generative adversarial network; The selecting a first block of data and a second block of data from the first sample data and the second sample data respectively includes: Calculate the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data respectively according to the first preset size; Selecting a first block of data corresponding to the first number of layers from the first sample data; A second block of data corresponding to the second number of layers is selected from the second sample data.
2. The method according to claim 1, characterized in that The method further comprises: A neural network is trained based on the first blocks of data and the second blocks of data to obtain the cyclic generative adversarial network.
3. The method according to claim 1, characterized in that The cyclic generative adversarial network includes a first generator and a second generator, and the neural network training is performed based on the first block of data and the second block of data to obtain the cyclic generative adversarial network, including: Inputting the first block of data into the first generator for reconstruction to obtain a first generation result; Inputting the second block of data into the second generator for reconstruction to obtain a second generation result; Inputting the first generation result into the second generator for reconstruction to obtain a third generation result; Inputting the second generation result into the first generator for reconstruction to obtain a fourth generation result; A total loss value is calculated based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result and the fourth generation result, and network parameters are adjusted according to the total loss value to obtain the cyclic generative adversarial network.
4. The method according to claim 3, characterized in that The cyclic generative adversarial network also includes a first discriminator and a second discriminator, the total loss value includes a first loss value and a second loss value, the total loss value is calculated based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result, and the fourth generation result, and the network parameters are adjusted according to the total loss value to obtain the cyclic generative adversarial network, including: Calculate the first loss value based on the first block of data, the second block of data, the first generation result, the second generation result, the third generation result, and the fourth generation result, and calculate the second loss value based on the first block of data, the second block of data, the first generation result, and the second generation result; The first loss value is used to adjust the network parameters of the first generator and the second generator, and the second loss value is used to adjust the network parameters of the first discriminator and the second discriminator to obtain the cyclic generative adversarial network.
5. The method according to claim 4, characterized in that The calculation process of the first loss value includes: Input the second generation result into the first discriminator to obtain a first discrimination result output by the first discriminator, calculate the loss between the first discrimination result and the all-one data of the same size, and obtain a first generation adversarial loss value; the first discrimination result is used to indicate whether the second generation result is the first block of true data; Input the first generation result into the second discriminator to obtain a second discrimination result output by the second discriminator, calculate the loss between the second discrimination result and the all-one data of the same size, and obtain a second generation adversarial loss value; the second discrimination result is used to indicate whether the first generation result is a second block of true data; Calculate the loss between the first block of data and the third generated result to obtain a first cycle adversarial loss value, and calculate the loss between the second block of data and the fourth generated result to obtain a second cycle adversarial loss value; A weighted sum is calculated for the first generation adversarial loss value, the second generation adversarial loss value, the first cycle adversarial loss value, and the second cycle adversarial loss value to obtain the first loss value.
6. The method according to claim 4, characterized in that The calculation process of the second loss value includes: Calculate the loss between the first discrimination result and the all-zero data of the same size to obtain a third generative adversarial loss value; Input the first block of data into the first discriminator, obtain a third discrimination result output by the first discriminator, calculate the loss between the third discrimination result and all-one data of the same size, and obtain a fourth generative adversarial loss value; Calculate the loss between the second discrimination result and the all-zero data of the same size to obtain the fifth generative adversarial loss value; Input the second block of data into the second discriminator to obtain a fourth discrimination result output by the second discriminator, calculate the loss between the fourth discrimination result and all-one data of the same size, and obtain a sixth generative adversarial loss value; The third generation adversarial loss value, the fourth generation adversarial loss value, the fifth generation adversarial loss value and the sixth generation adversarial loss value are weightedly summed to obtain the second loss value.
7. A method for generating medical image data, characterized in that: The method comprises: Acquiring first medical imaging data; Reconstructing the first medical image data using a pre-trained image data generation model to obtain second medical image data; Wherein, the image data generation model includes a recurrent generative adversarial network; the recurrent generative adversarial network is trained based on the generative adversarial network training method according to any one of claims 1 to 6.
8. The method according to claim 7, characterized in that The step of reconstructing the first medical image data using a pre-trained image data generation model to obtain second medical image data includes: Obtain a plurality of input image data according to a second preset size and the first medical image data; Inputting the plurality of input image data into the image data generation model in sequence for reconstruction, and obtaining output image data corresponding to each of the input image data output by the image data generation model; The plurality of output image data are synthesized to obtain the second medical image data.
9. The method according to claim 8, characterized in that The synthesizing and processing the plurality of output image data to obtain the second medical image data comprises: Performing Gaussian weighted calculation on each of the output image data to obtain weighted image data corresponding to each of the output image data; The plurality of weighted image data are averaged to obtain the second medical image data.
10. A training device for generating an adversarial network, characterized in that: The device comprises: A sample acquisition module, used to acquire a training sample set; the training sample set includes a plurality of first sample data and corresponding second sample data; the layer thickness of the reconstructed image corresponding to the second sample data is smaller than the layer thickness of the reconstructed image corresponding to the first sample data; A training module, used for performing neural network training based on the training sample set to obtain a recurrent generative adversarial network; Wherein, the training module includes: A data selection submodule, used to select a first block of data and a second block of data from the first sample data and the second sample data respectively; A training submodule, configured to perform neural network training based on the first block of data and the second block of data to obtain the recurrent generative adversarial network; Among them, the data selection submodule is specifically used to calculate the first number of layers corresponding to the first sample data and the second number of layers corresponding to the second sample data according to the first preset size; select the first block of data corresponding to the first number of layers from the first sample data; select the second block of data corresponding to the second number of layers from the second sample data.
11. A medical image data generating device, characterized in that: The device comprises: A data acquisition module, used for acquiring first medical image data; A data generation module, used to reconstruct the first medical image data using a pre-trained image data generation model to obtain second medical image data; Wherein, the image data generation model includes a recurrent generative adversarial network; the recurrent generative adversarial network is trained based on the generative adversarial network training method according to any one of claims 1 to 6.
12. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 9 are implemented.
13. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.