快捷方式

运算符

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)

计算一组边界框的面积,这些边界框由其 (x1, y1, x2, y2) 坐标指定。

box_convert(boxes, in_fmt, out_fmt)

torch.Tensor 边界框从给定的 in_fmt 转换为 out_fmt

box_iou(boxes1, boxes2)

返回两组边界框之间的交并比(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, ...)

用于卷积 2D-归一化-激活块的可配置模块。

Conv3dNormActivation(in_channels, ...)

用于卷积 3D-归一化-激活块的可配置模块。

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 的压缩和激励块(参见图。

StochasticDepth(p, mode)

参见 stochastic_depth().

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

执行可变形卷积 v2,如 可变形卷积网络 v2:更可变形,更好的结果 中所述,如果 mask 不是 None,则执行可变形卷积,如 可变形卷积网络 中所述,如果 maskNone

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

"DropBlock:一种用于卷积网络的正则化方法" <https://arxiv.org/abs/1810.12890> 中实现 DropBlock2d。

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

"DropBlock:一种用于卷积网络的正则化方法" <https://arxiv.org/abs/1810.12890> 中实现 DropBlock3d。

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

"具有随机深度的深度网络" 中实现随机深度,用于随机丢弃残差架构的残差分支。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得您的问题解答

查看资源