Detectron2 图表化 DensePose(I/U/V)稠密人体与动物姿态估计:原理、Bootstrapping 训练管线与 Model Zoo 详解
【免费下载链接】detectron2Detectron2 is a platform for object detection, segmentation and other visual recognition tasks.项目地址: https://gitcode.com/GitHub_Trending/de/detectron2
导读
本文深入讲解 Detectron2 仓库中 DensePose 项目的核心范式之一——基于图表(Chart-Based)的稠密姿态估计(即 IUV 方法):它不再只输出检测框或分割掩码,而是为每个图像像素建立其与三维物体网格(mesh)之间的稠密对应关系,输出部位索引I与局部图表坐标(U, V),从而在像素级"贴附"三维人体/动物表面。读者将掌握其任务定义、Faster R-CNN + FPN 元架构、从人类迁移到近缘动物类别的 master/student 两阶段 Bootstrapping 训练管线、模型库(Model Zoo)中全部基线的组织方式与指标含义,并能结合仓库源码(DensePose 配置、ROI Heads 实现)理解底层实现细节。
本文主体基于 DENSEPOSE_IUV.md 展开,对应源码位于 projects/DensePose 目录。
图表化 DensePose:为每个像素找到它在三维网格上的位置
图表化 DensePose 方法的目标,是建立图像像素与三维物体网格之间的稠密对应关系(dense correspondences)。其具体做法是:把三维物体网格拆分为若干"图表"(charts),然后对图像中的每个像素估计两个量:
- 图表索引
I:该像素对应三维网格上的哪一个图表(即身体的哪一部分); - 局部图表坐标
(U, V):该像素在该图表内部的二维局部坐标,取值范围均为[0, 1]。
以人体为例,用于人类 DensePose 估计的图表将人体划分为24 个部位(body parts),每个部位都由U、V坐标参数化。也就是说,模型输出的稠密结果可以理解为一个"UV 贴图":图像上每个属于人体的像素,都被映射到人体三维网格表面的一个确定位置。
这种表示与常见的二维关键点(keypoints)或密集对齐(dense alignment)的区别在于:它同时给出了"像素属于身体哪个部分"(离散的I)和"在该部分内部的精确位置"(连续的U, V),因此既能支撑三维姿态重建、纹理迁移,也能用于后续的跨类别域迁移(见下文 Bootstrapping 一节)。
元架构:Faster R-CNN + FPN 的多任务预测
该管线使用Faster R-CNN + Feature Pyramid Network(FPN)元架构。对于每个被检测到的物体(region proposal),模型同时预测三类输出:
| 输出 | 通道数 | 含义 |
|---|---|---|
粗分割S(coarse segmentation) | 2 或 15 | 前景/背景,或背景 + 14 个预定义身体部位 |
精细分割I(fine segmentation) | 25 | 背景 + 24 个预定义身体部位 |
局部图表坐标U、V | 各 1 | 每个像素在其所属图表内部的连续坐标 |
在仓库源码中,这一"检测 + 稠密姿态"组合由 DensePoseROIHeads 实现:它继承自 Detectron2 的StandardROIHeads,在其forward中先执行标准的框回归/分类分支,再通过_forward_densepose追加 DensePose 分支:
- 训练阶段:对前景 proposal 做特征过滤(
densepose_data_filter),经 ROI Pooler(默认 ROIAlign 或ROIAlignV2)取出 RoI 特征,送入densepose_head(默认DensePoseV1ConvXHead,见 Base-DensePose-RCNN-FPN.yaml),再由densepose_predictor输出分割与 UV 估计,最后用densepose_losses计算损失; - 推理阶段:对预测框执行同样的前向,并把 DensePose 结果写回
instances的densepose字段。
基础配置文件 Base-DensePose-RCNN-FPN.yaml 展示了与标准 Detectron2 配置的差异点:
MODEL: META_ARCHITECTURE: "GeneralizedRCNN" DENSEPOSE_ON: True ROI_HEADS: NAME: "DensePoseROIHeads" IN_FEATURES: ["p2", "p3", "p4", "p5"] NUM_CLASSES: 1 # 类无关训练时类别数收敛为 1 ROI_DENSEPOSE_HEAD: NAME: "DensePoseV1ConvXHead" POOLER_TYPE: "ROIAlign" NUM_COARSE_SEGM_CHANNELS: 2 DATASETS: TRAIN: ("densepose_coco_2014_train", "densepose_coco_2014_valminusminival") TEST: ("densepose_coco_2014_minival",) SOLVER: IMS_PER_BATCH: 16 BASE_LR: 0.01 STEPS: (60000, 80000) MAX_ITER: 90000 WARMUP_FACTOR: 0.1 INPUT: MIN_SIZE_TRAIN: (640, 672, 704, 736, 768, 800)MODEL.DENSEPOSE_ON与ROI_HEADS.NAME = "DensePoseROIHeads"是"打开"DensePose 分支的关键开关;NUM_CLASSES: 1对应类无关(class-agnostic)设定。
DensePose Head 的关键超参数(源码级)
在 densepose/config.py 的add_densepose_head_config中,MODEL.ROI_DENSEPOSE_HEAD定义了 head 的核心结构参数,默认值如下:
| 配置项 | 默认值 | 含义 |
|---|---|---|
NUM_STACKED_CONVS | 8 | DensePose 头堆叠的卷积层数 |
NUM_PATCHES | 24 | 用于点标签的部位(patch)数量,即 24 个人体部位 |
NUM_COARSE_SEGM_CHANNELS | 2 | 粗分割通道数(2 或 15) |
CONV_HEAD_DIM | 512 | 卷积头通道数 |
DECONV_KERNEL | 4 | 反卷积核大小 |
UP_SCALE | 2 | 上采样倍数 |
HEATMAP_SIZE | 112 | 输出热图尺寸 |
POOLER_RESOLUTION | 28 | ROI Pooler 输出分辨率 |
POOLER_SAMPLING_RATIO | 2 | ROI Pooler 采样率 |
FG_IOU_THRESHOLD | 0.7 | RoI 被视为前景的 IOU 阈值 |
同时,各损失项的权重也在此定义(config.py):
INDEX_WEIGHTS = 5.0:部位索引I(14 parts 掩码)的损失权重;PART_WEIGHTS = 1.0:表面部位(24 parts)的损失权重;POINT_REGRESSION_WEIGHTS = 0.01:UV 坐标回归损失权重。
Panoptic FPN Decoder 与 DeepLabV3 Head
Model Zoo 中"Improved Baselines"系列的改进点之一,是使用 Panoptic Feature Pyramid Networks 论文(Kirillov et al., 2019)提出的语义分割 Decoder:它在 roi_head.py 中以Decoder类实现,将 FPN 各层特征上采样到统一 stride(DECODER_COMMON_STRIDE = 4)并逐层累加,再经1x1卷积预测。配置开关为MODEL.ROI_DENSEPOSE_HEAD.DECODER_ON = True。
另一类改进基线使用DeepLabV3 Head(Chen et al., 2017),对应配置前缀DL(如densepose_rcnn_R_50_FPN_DL_s1x.yaml),相关配置项位于MODEL.ROI_DENSEPOSE_HEAD.DEEPLAB(如NORM = "GN"、NONLOCAL_ON = 0)。
Bootstrapping:把人体 DensePose 迁移到近缘动物类别
原始 DensePose 标注只覆盖人类,难以直接扩展到动物。Sanakoyeu et al.(2020)提出了一条两阶段训练管线(bootstrapping pipeline),将训练好的人体 DensePose 模型迁移到近缘动物类别(以黑猩猩 chimpanzee 为目标类别为例)。该管线在仓库中的实现说明见 BOOTSTRAPPING_PIPELINE.md,完整流程如下。
第一阶段:训练 master 模型
- 数据来源:master 模型在源域(source domain)——带完整 DensePose 标注(
S、I、U、V)的人类数据,以及支持域(supporting domain)——仅有分割标注的动物数据上训练; - 类别过滤(category filters):为保证目标域分割质量,只从支持域中挑选部分动物类别参与训练。例如
WHITELISTED_CATEGORIES可配置为 person、bird、cat、dog、horse、sheep、cow、elephant、bear、zebra、giraffe 等,即配置文件名中Atop10P(10 个最适合的类别 + person)的含义; - 类无关训练(class-agnostic):所有被选中的类别通过
CATEGORY_MAPS统一映射到单一类别(person),即配置文件中的CA后缀。以 Base-RCNN-FPN-Atop10P_CA.yaml 为参考,映射形如"16": 1 # bird -> person、"17": 1 # cat -> person。
第二阶段:训练 student 模型
student 模型在以下三类数据上训练:
- 源域:带完整 DensePose 标注的人类数据;
- 支持域:带分割标注的动物数据;
- 目标域:由 master 模型对目标类别图像进行推理、筛选高置信度检测结果并对输出进行采样后得到的数据(即 bootstrapping 过程)。
该过程在 BOOTSTRAPPING_PIPELINE.md 中有完整示例配置,核心组件为两个数据加载器:
InferenceBasedLoader:从一个数据加载器取图像 → 用模型推理 → 按条件过滤输出 → 采样生成标注;CombinedDataLoader:按比例混合多个加载器的数据(标准数据加载器默认RATIO = 1.0,bootstrap 数据集的RATIO在配置中指定,比例越高越可能被选入 batch)。
对应的配置骨架(取自 BOOTSTRAPPING_PIPELINE.md,完整版见 densepose_R_50_FPN_DL_WC1M_3x_Atop10P_CA_B_uniform.yaml):
BOOTSTRAP_DATASETS: - DATASET: "chimpnsee" RATIO: 1.0 IMAGE_LOADER: TYPE: "video_keyframe" SELECT: STRATEGY: "random_k" NUM_IMAGES: 4 TRANSFORM: TYPE: "resize" MIN_SIZE: 800 MAX_SIZE: 1333 BATCH_SIZE: 8 NUM_WORKERS: 1 INFERENCE: INPUT_BATCH_SIZE: 1 OUTPUT_BATCH_SIZE: 1 DATA_SAMPLER: # 可选:densepose_uniform / densepose_UV_confidence / # densepose_fine_segm_confidence / densepose_coarse_segm_confidence TYPE: "densepose_uniform" COUNT_PER_CLASS: 8 FILTER: TYPE: "detection_score" MIN_VALUE: 0.8 BOOTSTRAP_MODEL: WEIGHTS: <master 模型权重>其中FILTER.TYPE: "detection_score"与MIN_VALUE: 0.8对应文档所述"筛选高置信度检测结果";DATA_SAMPLER.TYPE对应"采样结果"的策略(均匀采样或按 UV/细分割/粗分割置信度采样)。在 config.py 中,BOOTSTRAP_MODEL.WEIGHTS与BOOTSTRAP_MODEL.DEVICE = "cuda"指定用于生成伪标注的 master 模型。
数据集
图表化 DensePose 的训练与验证数据集(DensePose COCO、DensePose Chimps 等)的下载、目录组织与注册方式,详见 DENSEPOSE_DATASETS.md 文档。Model Zoo 中 Bootstrapping 基线的评估即使用 DensePose Chimps 数据集。
Model Zoo 与基线:全部预训练模型与指标对照
仓库为图表化 DensePose 提供了多代基线模型,覆盖不同的训练计划与 head 结构。下表按原文档 DENSEPOSE_IUV.md 的 Model Zoo 逐项整理。各表头含义:lr sched为学习率调度(s1x约 130k 迭代、3x约为其 3 倍);train time为每秒迭代训练耗时(秒);inference time为每秒图像推理耗时(秒);train mem为训练显存占用(GB);box AP/segm AP为检测与分割 AP;dp. AP GPS/dp. AP GPSm为 DensePose 评估协议下的 AP 指标(GPS 为 Geodesic Point Similarity,GPSm 为其修正变体)。所有模型的权重(model_final_*.pkl)与训练指标(metrics.json)均可通过下表中的 model id 在 DensePose 官方模型库中定位下载。
Legacy 模型(Güler et al., 2018 训练计划)
使用 Güler et al., 2018(原始 DensePose 论文)训练计划得到的基线:
| 名称(配置) | lr sched | 训练 (s/iter) | 推理 (s/im) | 显存 (GB) | box AP | segm AP | dp. AP GPS | dp. AP GPSm | model id |
|---|---|---|---|---|---|---|---|---|---|
| R_50_FPN_s1x_legacy | s1x | 0.307 | 0.051 | 3.2 | 58.1 | 58.2 | 52.1 | 54.9 | 164832157 |
| R_101_FPN_s1x_legacy | s1x | 0.390 | 0.063 | 4.3 | 59.5 | 59.3 | 53.2 | 56.0 | 164832182 |
改进基线:原始全卷积头 + Panoptic FPN
这些模型使用改进的训练计划,并将头部替换为 Kirillov et al., 2019(Panoptic FPN 论文)中的语义分割 Decoder(对应上文Decoder类):
| 名称(配置) | lr sched | 训练 (s/iter) | 推理 (s/im) | 显存 (GB) | box AP | segm AP | dp. AP GPS | dp. AP GPSm | model id |
|---|---|---|---|---|---|---|---|---|---|
| R_50_FPN_s1x | s1x | 0.359 | 0.066 | 4.5 | 61.2 | 67.2 | 63.7 | 65.3 | 165712039 |
| R_101_FPN_s1x | s1x | 0.428 | 0.079 | 5.8 | 62.3 | 67.8 | 64.5 | 66.2 | 165712084 |
以 densepose_rcnn_R_50_FPN_s1x.yaml 为例,其仅需在基础配置上覆盖主干与训练计划:
_BASE_: "Base-DensePose-RCNN-FPN.yaml" MODEL: WEIGHTS: "detectron2://ImageNetPretrained/MSRA/R-50.pkl" RESNETS: DEPTH: 50 SOLVER: MAX_ITER: 130000 STEPS: (100000, 120000)改进基线:DeepLabV3 Head(DL 系列)
在改进训练计划与 Panoptic FPN head 基础上,再叠加 Chen et al., 2017 的 DeepLabV3 head:
| 名称(配置) | lr sched | 训练 (s/iter) | 推理 (s/im) | 显存 (GB) | box AP | segm AP | dp. AP GPS | dp. AP GPSm | model id |
|---|---|---|---|---|---|---|---|---|---|
| R_50_FPN_DL_s1x | s1x | 0.392 | 0.070 | 6.7 | 61.1 | 68.3 | 65.6 | 66.7 | 165712097 |
| R_101_FPN_DL_s1x | s1x | 0.478 | 0.083 | 7.0 | 62.3 | 68.7 | 66.3 | 67.6 | 165712116 |
带 UV 置信度估计的基线(WC1 / WC2)
这些模型在回归U、V坐标的同时额外估计其置信度(方差),思路来自 Neverova et al., 2019(Correlated Uncertainty for Learning Dense Correspondences from Noisy Labels):
WC1:对U和V使用类型 1 的置信度模型(统计独立同分布、各向同性协方差,iid_iso);WC2:对U和V使用类型 2 的置信度模型(统计独立但各向异性协方差,indep_aniso)。
| 名称(配置) | lr sched | 训练 (s/iter) | 推理 (s/im) | 显存 (GB) | box AP | segm AP | dp. AP GPS | dp. AP GPSm | model id |
|---|---|---|---|---|---|---|---|---|---|
| R_50_FPN_WC1_s1x | s1x | 0.353 | 0.064 | 4.6 | 60.5 | 67.0 | 64.2 | 65.4 | 173862049 |
| R_50_FPN_WC2_s1x | s1x | 0.364 | 0.066 | 4.8 | 60.7 | 66.9 | 64.2 | 65.7 | 173861455 |
| R_50_FPN_DL_WC1_s1x | s1x | 0.397 | 0.068 | 6.7 | 61.1 | 68.1 | 65.8 | 67.0 | 173067973 |
| R_50_FPN_DL_WC2_s1x | s1x | 0.410 | 0.070 | 6.8 | 60.8 | 67.9 | 65.6 | 66.7 | 173859335 |
| R_101_FPN_WC1_s1x | s1x | 0.435 | 0.076 | 5.7 | 62.5 | 67.6 | 64.9 | 66.3 | 171402969 |
| R_101_FPN_WC2_s1x | s1x | 0.450 | 0.078 | 5.7 | 62.3 | 67.6 | 64.8 | 66.4 | 173860702 |
| R_101_FPN_DL_WC1_s1x | s1x | 0.479 | 0.081 | 7.9 | 62.0 | 68.4 | 66.2 | 67.2 | 173858525 |
| R_101_FPN_DL_WC2_s1x | s1x | 0.491 | 0.082 | 7.6 | 61.7 | 68.3 | 65.9 | 67.2 | 173294801 |
带掩码置信度估计的基线(WC1M / WC2M)
这类模型在回归 UV 坐标及其置信度的基础上,进一步估计粗分割与精细分割对应的置信度(mask confidence),详见 Sanakoyeu et al., 2020:
WC1M:对U、V使用类型 1 置信度模型 + 掩码置信度估计;WC2M:对U、V使用类型 2 置信度模型 + 掩码置信度估计。
| 名称(配置) | lr sched | 训练 (s/iter) | 推理 (s/im) | 显存 (GB) | box AP | segm AP | dp. AP GPS | dp. AP GPSm | model id |
|---|---|---|---|---|---|---|---|---|---|
| R_50_FPN_WC1M_s1x | s1x | 0.381 | 0.066 | 4.8 | 60.6 | 66.7 | 64.0 | 65.4 | 217144516 |
| R_50_FPN_WC2M_s1x | s1x | 0.342 | 0.068 | 5.0 | 60.7 | 66.9 | 64.2 | 65.5 | 216245640 |
| R_50_FPN_DL_WC1M_s1x | s1x | 0.371 | 0.068 | 6.0 | 60.7 | 68.0 | 65.2 | 66.7 | 216245703 |
| R_50_FPN_DL_WC2M_s1x | s1x | 0.385 | 0.071 | 6.1 | 60.8 | 68.1 | 65.0 | 66.4 | 216245758 |
| R_101_FPN_WC1M_s1x | s1x | 0.423 | 0.079 | 5.9 | 62.0 | 67.3 | 64.8 | 66.0 | 216453687 |
| R_101_FPN_WC2M_s1x | s1x | 0.436 | 0.080 | 5.9 | 62.5 | 67.4 | 64.5 | 66.0 | 216245682 |
| R_101_FPN_DL_WC1M_s1x | s1x | 0.453 | 0.079 | 6.8 | 62.0 | 68.1 | 66.4 | 67.1 | 216245771 |
| R_101_FPN_DL_WC2M_s1x | s1x | 0.464 | 0.080 | 6.9 | 61.9 | 68.2 | 66.1 | 67.1 | 216245790 |
Bootstrapping 基线(目标类别:黑猩猩)
使用上文 bootstrapping 管线训练得到的 master / student 模型,目标类别为黑猩猩(chimpanzee),评估在 DensePose Chimps 数据集上进行。此表额外包含松弛指标dp. APex GPS:
| 名称(配置) | lr sched | 训练 (s/iter) | 推理 (s/im) | 显存 (GB) | box AP | segm AP | dp. APex GPS | dp. AP GPS | dp. AP GPSm | model id |
|---|---|---|---|---|---|---|---|---|---|---|
| R_50_FPN_DL_WC1M_3x_Atop10P_CA | 3x | 0.522 | 0.073 | 9.7 | 61.3 | 59.1 | 36.2 | 20.0 | 30.2 | 217578784 |
| R_50_FPN_DL_WC1M_3x_Atop10P_CA_B_uniform | 3x | 1.939 | 0.072 | 10.1 | 60.9 | 58.5 | 37.2 | 21.5 | 31.0 | 256453729 |
| R_50_FPN_DL_WC1M_3x_Atop10P_CA_B_uv | 3x | 1.985 | 0.072 | 9.6 | 61.4 | 58.9 | 38.3 | 22.2 | 32.1 | 256452095 |
| R_50_FPN_DL_WC1M_3x_Atop10P_CA_B_finesegm | 3x | 2.047 | 0.072 | 10.3 | 60.9 | 58.5 | 36.7 | 20.7 | 30.7 | 256452819 |
| R_50_FPN_DL_WC1M_3x_Atop10P_CA_B_coarsesegm | 3x | 1.830 | 0.070 | 9.6 | 61.3 | 59.2 | 37.9 | 21.5 | 31.6 | 256455697 |
配置命名中的缩写含义:
Atop10P:训练使用人类 + 10 个最合适动物类别的数据;CA:类无关训练(class-agnostic),所有标注实例映射到单一类别;B_<...>:带 bootstrapping 的训练计划,<...>为指定的结果采样策略(uniform均匀采样、uv按 UV 置信度采样、finesegm按细分割置信度采样、coarsesegm按粗分割置信度采样)。
关于dp. APex GPS松弛指标
dp. APex GPS是 Sanakoyeu et al., 2020 中用于评估 DensePose 结果的松弛指标:在标准评估协议使用的匹配阈值之外,它额外考虑阈值 0.2、0.3、0.4 下的匹配,因此分数通常显著高于标准dp. AP GPS。其最小阈值由配置项DENSEPOSE_EVALUATION.MIN_IOU_THRESHOLD控制。
置信度估计的源码实现:从配置到损失函数
WC1/WC2/WC1M/WC2M 系列在源码层面如何落地?这有助于理解模型库各后缀的实际差异。
配置侧
在 densepose/config.py 中:
_C.MODEL.ROI_DENSEPOSE_HEAD.UV_CONFIDENCE = CN({"ENABLED": False}) _C.MODEL.ROI_DENSEPOSE_HEAD.UV_CONFIDENCE.EPSILON = 0.01 _C.MODEL.ROI_DENSEPOSE_HEAD.UV_CONFIDENCE.TYPE = "iid_iso" _C.MODEL.ROI_DENSEPOSE_HEAD.SEGM_CONFIDENCE = CN({"ENABLED": False}) _C.MODEL.ROI_DENSEPOSE_HEAD.SEGM_CONFIDENCE.EPSILON = 0.01UV_CONFIDENCE.TYPE = "iid_iso"对应WC1(各向同性高斯噪声);"indep_aniso"对应WC2(各向异性);UV_CONFIDENCE.ENABLED与SEGM_CONFIDENCE.ENABLED分别控制是否学习 UV 置信度与分割置信度,二者同时开启即对应WC1M/WC2M的 M(Mask)后缀;EPSILON = 0.01是方差的数值下界,用于防止退化解。
同时,默认的预测器与损失函数在配置中注册为:
PREDICTOR_NAME = "DensePoseChartWithConfidencePredictor"(chart_with_confidence.py,同时输出分割、UV 坐标及其置信度);LOSS_NAME = "DensePoseChartWithConfidenceLoss"(chart_with_confidences.py,对分割、UV 坐标及对应置信度联合计算损失)。
损失侧:高斯负对数似然
在 chart_with_confidences.py 中,置信度损失按"带噪声标签的稠密对应学习"思路(Neverova et al., 2019)建模为高斯负对数似然:
IIDIsotropicGaussianUVLoss(WC1):假设残差独立同分布、协方差各向同性Σᵢ = σᵢ²I,损失为1/2 Σᵢ (log(2π) + 2·log σᵢ² + ‖δᵢ‖² / σᵢ²),其中
δᵢ = (u − u′, v − v′)是估计与真值 UV 坐标的二维差值;σᵢ² = softplus(σ_u) + epsilon,epsilon 即配置中的UV_CONFIDENCE.EPSILON,用于避免方差退化到 0。IndepAnisotropicGaussianUVLoss(WC2):假设残差独立但协方差各向异性Σᵢ = σᵢ²I + rᵢrᵢᵀ,其中rᵢ = (κ_u, κ_v)由额外的kappa_u、kappa_v输出提供,损失形式相应扩展为包含‖δᵢ‖²与标量积<δᵢ, rᵢ>项的完整负对数似然。
另外值得一提的是,DensePoseChartWithConfidenceLoss在 batch 中没有合适真值数据时,会通过produce_fake_densepose_losses_uv构造值为 0 的"假损失",仅为置信度参数保留计算图,从而保证DistributedDataParallel在各 GPU 上有结构一致的图可以规约——这是一个重要的分布式训练细节。
评估配置项
与 DensePose 评估相关的配置集中在DENSEPOSE_EVALUATION(config.py),常用项包括:
| 配置项 | 默认值 | 说明 |
|---|---|---|
TYPE | "iou" | 评估器类型:iou(图表化 IUV 模型)或cse(连续表面嵌入模型) |
STORAGE | "none" | DensePose 结果存储方式:none(全部存于预测字典,内存密集)/ram(进程内 RAM 存储)/file(文件存储,最省内存但可能带来文件系统瓶颈) |
MIN_IOU_THRESHOLD | 0.5 | IOU 匹配最小阈值;取值越低,产生的匹配越多、AP 分数越高(dp. APex GPS即依赖降低该阈值) |
DISTRIBUTED_INFERENCE | True | 分布式推理(非分布式推理更慢,但可避免 RAM OOM) |
许可证
Model Zoo 中所有可下载模型均采用Creative Commons Attribution-ShareAlike 3.0(CC BY-SA 3.0)许可协议;仓库主体(Detectron2)遵循 Apache 2.0 许可(见 LICENSE)。
引用与参考文献
若在研究中使用了图表化 DensePose 方法,请按如下 BibTeX 条目引用对应论文(出处见 DENSEPOSE_IUV.md):
DensePose Bootstrapping 管线(Sanakoyeu et al., 2020,CVPR):
@InProceedings{Sanakoyeu2020TransferringDensePose, title = {Transferring Dense Pose to Proximal Animal Classes}, author = {Artsiom Sanakoyeu and Vasil Khalidov and Maureen S. McCarthy and Andrea Vedaldi and Natalia Neverova}, journal = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, year = {2020}, }带置信度估计的 DensePose(Neverova et al., 2019,NeurIPS):
@InProceedings{Neverova2019DensePoseConfidences, title = {Correlated Uncertainty for Learning Dense Correspondences from Noisy Labels}, author = {Neverova, Natalia and Novotny, David and Vedaldi, Andrea}, journal = {Advances in Neural Information Processing Systems}, year = {2019}, }原始 DensePose(Güler et al., 2018,CVPR):
@InProceedings{Guler2018DensePose, title={DensePose: Dense Human Pose Estimation In The Wild}, author={R{i}za Alp G\"uler, Natalia Neverova, Iasonas Kokkinos}, journal={The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, year={2018} }此外,DensePose 项目首页 还提供了快速上手指南(GETTING_STARTED.md)、数据集说明(DENSEPOSE_DATASETS.md)、连续表面嵌入(CSE)范式(DENSEPOSE_CSE.md)以及 Bootstrapping 完整实现(BOOTSTRAPPING_PIPELINE.md),可与本文配合阅读。仓库内的推理入口(apply_net.py)与训练入口(train_net.py)分别演示了如何使用 Model Zoo 权重进行可视化推理与复现训练。
【免费下载链接】detectron2Detectron2 is a platform for object detection, segmentation and other visual recognition tasks.项目地址: https://gitcode.com/GitHub_Trending/de/detectron2
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考