快捷方式

運算元

torchvision.ops 實現專門用於計算機視覺的運算元、損失函式和層。

注意

所有運算元都原生支援 TorchScript。

檢測和分割運算元

以下運算元執行目標檢測和分割模型所需的預處理和後處理。

batched_nms(boxes, scores, idxs, iou_threshold)

以批處理方式執行非最大抑制。

masks_to_boxes(masks)

計算給定掩碼的邊界框。

nms(boxes, scores, iou_threshold)

根據交併比 (IoU) 對框執行非最大抑制 (NMS)。

roi_align(input, boxes, output_size[, ...])

執行感興趣區域 (RoI) 對齊運算元,使用平均池化,如 Mask R-CNN 中所述。

roi_pool(input, boxes, output_size[, ...])

執行 Fast R-CNN 中所述的感興趣區域 (RoI) 池化運算元。

ps_roi_align(input, boxes, output_size[, ...])

執行 Light-Head R-CNN 中提到的位置敏感感興趣區域 (RoI) 對齊運算元。

ps_roi_pool(input, boxes, output_size[, ...])

執行 R-FCN 中所述的位置敏感感興趣區域 (RoI) 池化運算元。

FeaturePyramidNetwork(in_channels_list, ...)

在一組特徵圖之上新增 FPN 的模組。

MultiScaleRoIAlign(featmap_names, ...[, ...])

多尺度 RoIAlign 池化,這對於帶或不帶 FPN 的檢測很有用。

RoIAlign(output_size, spatial_scale, ...[, ...])

參見 roi_align()

RoIPool(output_size, spatial_scale)

參見 roi_pool()

PSRoIAlign(output_size, spatial_scale, ...)

參見 ps_roi_align()

PSRoIPool(output_size, spatial_scale)

參見 ps_roi_pool()

邊界框運算元

這些實用函式對邊界框執行各種操作。

box_area(boxes[, fmt])

計算給定格式的邊界框集合的面積。

box_convert(boxes, in_fmt, out_fmt)

將給定 in_fmt 格式的 torch.Tensor 邊界框轉換為 out_fmt 格式。

box_iou(boxes1, boxes2[, fmt])

返回給定格式的兩個邊界框集合之間的交併比 (Jaccard 指數)。

clip_boxes_to_image(boxes, size)

剪下邊界框,使其位於大小為 size 的影像內。

complete_box_iou(boxes1, boxes2[, eps])

返回兩個邊界框集合之間的完整交併比 (Jaccard 指數)。

distance_box_iou(boxes1, boxes2[, eps])

返回兩個邊界框集合之間的距離交併比 (Jaccard 指數)。

generalized_box_iou(boxes1, boxes2)

返回兩個邊界框集合之間的廣義交併比 (Jaccard 指數)。

remove_small_boxes(boxes, min_size)

boxes 中移除所有至少有一側長度小於 min_size 的邊界框。

損失函式

實現了以下計算機視覺特定損失函式。

complete_box_iou_loss(boxes1, boxes2[, ...])

梯度友好的 IoU 損失,在邊界框不重疊時具有非零的附加懲罰。

distance_box_iou_loss(boxes1, boxes2[, ...])

梯度友好的 IoU 損失,在邊界框中心距離不為零時具有非零的附加懲罰。

generalized_box_iou_loss(boxes1, boxes2[, ...])

梯度友好的 IoU 損失,在邊界框不重疊時具有非零的附加懲罰,並且該懲罰隨其最小包圍框的大小而縮放。

sigmoid_focal_loss(inputs, targets[, alpha, ...])

RetinaNet 中用於密集檢測的損失函式:https://arxiv.org/abs/1708.02002

TorchVision 提供常用的構建塊作為層。

Conv2dNormActivation(in_channels, ...)

用於 Convolution2d-Normalization-Activation 塊的可配置模組。

Conv3dNormActivation(in_channels, ...)

用於 Convolution3d-Normalization-Activation 塊的可配置模組。

DeformConv2d(in_channels, out_channels, ...)

參見 deform_conv2d()

DropBlock2d(p, block_size[, inplace, eps])

參見 drop_block2d()

DropBlock3d(p, block_size[, inplace, eps])

參見 drop_block3d()

FrozenBatchNorm2d(num_features[, eps])

BatchNorm2d,其中批次統計量和仿射引數是固定的。

MLP(in_channels, hidden_channels, ...)

此模組實現多層感知機 (MLP) 模組。

Permute(dims)

此模組返回一個具有置換維度的張量輸入的檢視。

SqueezeExcitation(input_channels, ...)

此模組實現來自 https://arxiv.org/abs/1709.01507 的 Squeeze-and-Excitation 塊(參見圖。

StochasticDepth(p, mode)

參見 stochastic_depth()

deform_conv2d(input, offset, weight[, bias, ...])

執行可變形卷積 v2,如 Deformable ConvNets v2: More Deformable, Better Results 中所述(如果 mask 不為 None),以及執行可變形卷積,如 Deformable Convolutional Networks 中所述(如果 maskNone)。

drop_block2d(input, p, block_size[, ...])

實現來自 "DropBlock: A regularization method for convolutional networks" <https://arxiv.org/abs/1810.12890> 的 DropBlock2d。

drop_block3d(input, p, block_size[, ...])

實現來自 "DropBlock: A regularization method for convolutional networks" <https://arxiv.org/abs/1810.12890> 的 DropBlock3d。

stochastic_depth(input, p, mode[, training])

實現來自 "Deep Networks with Stochastic Depth" 的隨機深度,用於隨機丟棄殘差架構的殘差分支。

文件

訪問全面的 PyTorch 開發者文件

檢視文件

教程

為初學者和高階開發者提供深入的教程

檢視教程

資源

查詢開發資源並讓您的問題得到解答

檢視資源