目录

操作符

torchvision.ops 实现了特定于计算机视觉的操作符、损失函数和层。

注意

所有运算符都原生支持TorchScript。

检测与分割运算符

以下操作符执行对象检测和分割模型所需的数据预处理和后处理。

batched_nms(boxes, scores, idxs, iou_threshold)

以批量方式执行非最大抑制。

masks_to_boxes(掩码)

计算所提供掩码周围的边界框。

nms(边界框,分数,iou_threshold)

根据交并比(IoU)对框执行非最大值抑制(NMS)。

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

执行Mask R-CNN中描述的带平均池化的感兴趣区域(RoI)对齐操作。

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

执行Fast R-CNN中描述的兴趣区域(RoI)池化操作

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

执行轻量级头部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(框)

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

box_convert(boxes, in_fmt, out_fmt)

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

box_iou(边界框1, 边界框2)

返回两组框之间的交并比(雅卡尔指数)。

clip_boxes_to_image(框,大小)

将框裁剪到大小为 size 的图像内。

complete_box_iou(boxes1, boxes2[, eps])

返回两组框之间的完整交并比(雅卡尔指数)。

distance_box_iou(boxes1, boxes2[, eps])

返回两组框之间的交并比(雅卡尔指数)。

generalized_box_iou(边界框1, 边界框2)

返回两组框之间的广义交并比(雅卡尔指数)。

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, ...)

可配置块,用于卷积二维-归一化-激活块。

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(维度)

此模块返回一个张量输入的视图,并对其维度进行置换。

SqueezeExcitation(input_channels, ...)

此块实现了来自https://arxiv.org/abs/1709.01507 的Squeeze-and-Excitation块(见图。

StochasticDepth(张量, 模式)

查看 stochastic_depth()

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

执行可变形卷积v2,如可变形卷积网络v2:更可变形,更好结果中所述,如果mask不等于None;执行可变形卷积,如可变形卷积网络中所述,如果mask等于None

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])

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

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

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

查看教程

资源

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

查看资源