mednet.models.segment.driu¶
DRIU network architecture for vessel segmentation, from [MANINIS-2016].
Classes
Takes in four feature maps with 16 channels each, concatenates them and applies a 1x1 convolution with 1 output channel. |
|
|
DRIU network architecture for vessel segmentation, from [MANINIS-2016]. |
|
DRIU head module. |
- class mednet.models.segment.driu.ConcatFuseBlock[source]¶
Bases:
ModuleTakes in four feature maps with 16 channels each, concatenates them and applies a 1x1 convolution with 1 output channel.
- forward(x1, x2, x3, x4)[source]¶
Define the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
- class mednet.models.segment.driu.DRIUHead(in_channels_list)[source]¶
Bases:
ModuleDRIU head module.
Based on paper by [MANINIS-2016].
- Parameters:
in_channels_list – Number of channels for each feature map that is returned from backbone.
- forward(x)[source]¶
Define the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
- class mednet.models.segment.driu.DRIU(loss_type=<class 'mednet.models.losses.SoftJaccardAndBCEWithLogitsLoss'>, loss_arguments={}, optimizer_type=<class 'torch.optim.adam.Adam'>, optimizer_arguments={}, scheduler_type=None, scheduler_arguments={}, model_transforms=[], augmentation_transforms=[], num_classes=1, pretrained=False)[source]¶
Bases:
ModelDRIU network architecture for vessel segmentation, from [MANINIS-2016].
- Parameters:
The loss to be used for training and evaluation.
Warning
The loss should be set to always return batch averages (as opposed to the batch sum), as our logging system expects it so.
optimizer_type (
type[Optimizer]) – The type of optimizer to use for training.optimizer_arguments (
dict[str,Any]) – Arguments to the optimizer afterparams.scheduler_type (
type[LRScheduler] |None) – The type of scheduler to use for training.scheduler_arguments (
dict[str,Any]) – Arguments to the scheduler afterparams.model_transforms (
Sequence[Callable[[Tensor],Tensor]]) – An optional sequence of torch modules containing transforms to be applied on the input before it is fed into the network.augmentation_transforms (
Sequence[Callable[[Tensor],Tensor]]) – An optional sequence of torch modules containing transforms to be applied on the input before it is fed into the network.num_classes (
int) – Number of outputs (classes) for this model.pretrained (
bool) – If True, will use VGG16 pretrained weights.
- forward(x)[source]¶
Same as
torch.nn.Module.forward().- Parameters:
*args – Whatever you decide to pass into the forward method.
**kwargs – Keyword arguments are also possible.
- Returns:
Your model’s output
- set_normalizer(dataloader)[source]¶
Initialize the normalizer for the current model.
This function is NOOP if
pretrained = True(normalizer set to imagenet weights, during contruction).- Parameters:
dataloader (
DataLoader) – A torch Dataloader from which to compute the mean and std. Will not be used if the model is pretrained.- Return type: