CPC G06T 7/11 (2017.01) [A61B 5/7267 (2013.01); A61B 6/032 (2013.01); A61B 6/501 (2013.01); A61N 5/1039 (2013.01); G06N 3/08 (2013.01); G06T 7/62 (2017.01); G06T 2207/10081 (2013.01); G06T 2207/20081 (2013.01); G06T 2207/20084 (2013.01); G06T 2207/30196 (2013.01)] | 20 Claims |
1. A method performed by one or more data processing apparatus, the method comprising:
receiving a medical image that is captured using a medical imaging modality and that depicts a region of tissue in a body;
processing the medical image using a segmentation neural network, in accordance with trained values of a plurality segmentation neural network parameters, to generate a segmentation output, wherein:
the segmentation output comprises a plurality of segmentation channels, each segmentation channel corresponds to a respective organ from a predetermined set of organs, and each segmentation channel defines a segmentation of the respective organ corresponding to the segmentation channel in the medical image;
a segmentation of a respective organ in the medical image comprises, for each of a plurality of voxels in the medical image, a respective score characterizing whether the voxel corresponds to an interior of the respective organ;
the segmentation neural network comprises a sequence of multiple encoder blocks, wherein:
each encoder block is a residual neural network block comprising one or more two-dimensional convolutional neural network layers, one or more three-dimensional convolutional neural network layers, or both;
each encoder block is configured to process a respective encoder block input to generate a respective encoder block output wherein a spatial resolution of the encoder block output is lower than a spatial resolution of the encoder block input; and
for each encoder block that is after an initial encoder block in the sequence of encoder blocks, the encoder block input comprises a previous encoder block output of a previous encoder block in the sequence of encoder blocks;
the segmentation neural network comprises a decoder subnetwork, wherein the decoder subnetwork is configured to process a decoder subnetwork input comprising an intermediate output of each encoder block to generate the segmentation output;
the decoder subnetwork comprises a final layer that is configured to process a final layer input to generate the segmentation output;
wherein the segmentation neural network has been trained by a plurality of operations comprising:
processing a training medical image using the segmentation neural network to generate a training segmentation output;
determining a segmentation loss for the training medical image, comprising:
for each segmentation channel of the training segmentation output:
determining a set of error values for the segmentation channel, wherein each error value in the set of error values for the segmentation channel corresponds to a respective voxel in the training medical image and is based on an error between: (i) the score from the segmentation channel which characterizes whether the voxel corresponds to the interior of the organ corresponding to the segmentation channel, and (ii) a target score defining whether the voxel corresponds to the interior of the organ corresponding to the segmentation channel; and
identifying a plurality of highest error values from the set of error values for the segmentation channel, wherein the plurality of highest error values are a proper subset of the set of error values for the segmentation channel; and
determining the segmentation loss based on the plurality of highest error values identified for each segmentation channel of the training segmentation output; and
adjusting current values of the plurality of segmentation neural network parameters of the segmentation neural network based on the segmentation loss for the training medical image.
|