Detectron: 关键点检测失败

创建于 2018-02-07  ·  4评论  ·  资料来源: facebookresearch/Detectron

我正在使用 MaskRCNN 运行 infer_simple.py 并希望获得关键点检测结果。
以下是我所做的配置更改:

__C.MODEL.KEYPOINTS_ON = True
__C.KRCNN.ROI_KEYPOINTS_HEAD = b'keypoint_rcnn_heads.add_roi_pose_head_v1convX'

这是 cmd (在 docker 容器中运行):
python2 tools/infer_simple.py --cfg configs/12_2017_baselines/e2e_mask_rcnn_R-101-FPN_2x.yaml --output-dir /tmp/detectron-visualizations --image-ext jpeg --wts https://s3-us-west-2.amazonaws.com/detectron/35861858/12_2017_baselines/e2e_mask_rcnn_R-101-FPN_2x.yaml.02_32_51.SgT4y1cO/output/train/coco_2014_train:coco_2014_valminusminival/generalized_rcnn/model_final.pkl demo2

实际结果

这是输出:

E0207 09:09:15.140436  1193 init_intrinsics_check.cc:54] CPU feature avx is present on your machine, but the Caffe2 binary is not compiled with it. It means you may not get the full speed of your CPU.
E0207 09:09:15.140471  1193 init_intrinsics_check.cc:54] CPU feature avx2 is present on your machine, but the Caffe2 binary is not compiled with it. It means you may not get the full speed of your CPU.
E0207 09:09:15.140481  1193 init_intrinsics_check.cc:54] CPU feature fma is present on your machine, but the Caffe2 binary is not compiled with it. It means you may not get the full speed of your CPU.
WARNING cnn.py:  40: [====DEPRECATE WARNING====]: you are creating an object from CNNModelHelper class which will be deprecated soon. Please use ModelHelper object with brew module. For more information, please refer to caffe2.ai and python/brew.py, python/brew_test.py for more information.
INFO net.py:  57: Loading weights from: /tmp/detectron-download-cache/35861858/12_2017_baselines/e2e_mask_rcnn_R-101-FPN_2x.yaml.02_32_51.SgT4y1cO/output/train/coco_2014_train:coco_2014_valminusminival/generalized_rcnn/model_final.pkl
INFO net.py:  86: conv_fcn1_w not found
INFO net.py:  86: conv_fcn1_b not found
INFO net.py:  86: conv_fcn2_w not found
INFO net.py:  86: conv_fcn2_b not found
INFO net.py:  86: conv_fcn3_w not found
INFO net.py:  86: conv_fcn3_b not found
INFO net.py:  86: conv_fcn4_w not found
INFO net.py:  86: conv_fcn4_b not found
INFO net.py:  86: conv_fcn5_w not found
INFO net.py:  86: conv_fcn5_b not found
INFO net.py:  86: conv_fcn6_w not found
INFO net.py:  86: conv_fcn6_b not found
INFO net.py:  86: conv_fcn7_w not found
INFO net.py:  86: conv_fcn7_b not found
INFO net.py:  86: conv_fcn8_w not found
INFO net.py:  86: conv_fcn8_b not found
INFO net.py:  86: kps_score_w not found
INFO net.py:  86: kps_score_b not found
I0207 09:09:18.430824  1193 net_dag_utils.cc:118] Operator graph pruning prior to chain compute took: 0.000197332 secs
I0207 09:09:18.431121  1193 net_dag.cc:61] Number of parallel execution chains 63 Number of operators = 402
I0207 09:09:18.464114  1193 net_dag_utils.cc:118] Operator graph pruning prior to chain compute took: 0.000170871 secs
I0207 09:09:18.464408  1193 net_dag.cc:61] Number of parallel execution chains 30 Number of operators = 358
I0207 09:09:18.467808  1193 net_dag_utils.cc:118] Operator graph pruning prior to chain compute took: 1.7301e-05 secs
I0207 09:09:18.467864  1193 net_dag.cc:61] Number of parallel execution chains 5 Number of operators = 18
I0207 09:09:18.471062  1193 net_dag_utils.cc:118] Operator graph pruning prior to chain compute took: 1.599e-05 secs
I0207 09:09:18.471115  1193 net_dag.cc:61] Number of parallel execution chains 5 Number of operators = 23
INFO infer_simple.py: 111: Processing demo2/images2.jpeg -> /tmp/detectron-visualizations/images2.jpeg.pdf
terminate called after throwing an instance of 'caffe2::EnforceNotMet'
  what():  [enforce fail at blob.h:94] IsType<T>(). wrong type for the Blob instance. Blob contains nullptr (uninitialized) while caller expects caffe2::Tensor<caffe2::CUDAContext> .
Offending Blob name: gpu_0/conv_fcn1_w.
Error from operator: 
input: "gpu_0/_[pose]_roi_feat" input: "gpu_0/conv_fcn1_w" input: "gpu_0/conv_fcn1_b" output: "gpu_0/conv_fcn1" name: "" type: "Conv" arg { name: "kernel" i: 3 } arg { name: "exhaustive_search" i: 0 } arg { name: "pad" i: 1 } arg { name: "order" s: "NCHW" } arg { name: "stride" i: 1 } device_option { device_type: 1 cuda_gpu_id: 0 } engine: "CUDNN"
*** Aborted at 1517994559 (unix time) try "date -d @1517994559" if you are using GNU date ***
PC: @     0x7f1f2613d428 gsignal
*** SIGABRT (@0x4a9) received by PID 1193 (TID 0x7f1e677fe700) from PID 1193; stack trace: ***
    @     0x7f1f2613d4b0 (unknown)
    @     0x7f1f2613d428 gsignal
    @     0x7f1f2613f02a abort
    @     0x7f1f200b484d __gnu_cxx::__verbose_terminate_handler()
    @     0x7f1f200b26b6 (unknown)
    @     0x7f1f200b2701 std::terminate()
    @     0x7f1f200ddd38 (unknown)
    @     0x7f1f264d96ba start_thread
    @     0x7f1f2620f41d clone
    @                0x0 (unknown)
Aborted (core dumped)

系统信息

  • 操作系统:Ubuntu 16、nvidia docker

最有用的评论

非常感谢您的超快速响应!
我是否值得将此示例添加到 gettingstarted.md ;)

所有4条评论

@olgaliak ,要获得关键点结果,您可以使用Model Zoo中的关键点模型之一。

例如,您可以使用默认 ResNet-101 配置运行 e2e Keypoint R-CNN,使用:

python2 tools/infer_simple.py \
   --cfg configs/12_2017_baselines/e2e_keypoint_rcnn_R-101-FPN_s1x.yaml \
   --output-dir /tmp/detectron-visualizations \
   --image-ext jpg \
   --wts https://s3-us-west-2.amazonaws.com/detectron/37698009/12_2017_baselines/e2e_keypoint_rcnn_R-101-FPN_s1x.yaml.08_45_57.YkrJgP6O/output/train/keypoints_coco_2014_train:keypoints_coco_2014_valminusminival/generalized_rcnn/model_final.pkl \
  demo

另请注意,您不应更改config.py模块中的值。 相反,您应该在 yaml 中编写一个配置文件并加载它以覆盖默认选项。

非常感谢您的超快速响应!
我是否值得将此示例添加到 gettingstarted.md ;)

你好
我收到类似的错误从头开始训练 Inceptionv4 模型后,我在测试期间收到以下错误。 我在 Ubuntu 16.04 上运行。 有什么想法我需要做/检查吗?
谢谢
命令:
python2工具/test_net.py --cfg configs/getting_started/ml349_2gpu_e2e_faster_rcnn
Inception_ResNetv2.yaml --multi-gpu-testing TEST.WEIGHTS /tmp/detectron-output/train/coco_2014_train/generalized
rcnn/model_final.pkl NUM_GPUS 2
错误

===================
信息 net.py:88:未找到 conv1-7x7_s2_w
信息 net.py:88:未找到 conv1-7x7_s2_b
信息 net.py:88:未找到 conv2-3x3_reduce_w
信息 net.py:88:未找到 conv2-3x3_reduce_b
信息 net.py:88:未找到 conv2-3x3_w
信息 net.py:88:未找到 conv2-3x3_b
信息 net.py:88:未找到 inception_3a-1x1_w
信息 net.py:88:未找到 inception_3a-1x1_b
信息 net.py:88:未找到 inception_3a-3x3_reduce_w
信息 net.py:88:未找到 inception_3a-3x3_reduce_b
信息 net.py:88:未找到 inception_3a-3x3_w
信息 net.py:88:未找到 inception_3a-3x3_b
信息 net.py:88:未找到 inception_3a-5x5_reduce_w
信息 net.py:88:未找到 inception_3a-5x5_reduce_b
信息 net.py:88:未找到 inception_3a-5x5_w
信息 net.py:88:未找到 inception_3a-5x5_b
信息 net.py:88:未找到 inception_3a-pool_proj_w
信息 net.py:88:未找到 inception_3a-pool_proj_b
信息 net.py:88:未找到 inception_3b-1x1_w
信息 net.py:88:未找到 inception_3b-1x1_b
信息 net.py:88:未找到 inception_3b-3x3_reduce_w
信息 net.py:88:未找到 inception_3b-3x3_reduce_b
信息 net.py:88:未找到 inception_3b-3x3_w
信息 net.py:88:未找到 inception_3b-3x3_b
信息 net.py:88:未找到 inception_3b-5x5_reduce_w
信息 net.py:88:未找到 inception_3b-5x5_reduce_b
信息 net.py:88:未找到 inception_3b-5x5_w
信息 net.py:88:未找到 inception_3b-5x5_b
信息 net.py:88:未找到 inception_3b-pool_proj_w
信息 net.py:88:未找到 inception_3b-pool_proj_b
信息 net.py:88:未找到 inception_4a-1x1_w
信息 net.py:88:未找到 inception_4a-1x1_b
信息 net.py:88:未找到 inception_4a-3x3_reduce_w
信息 net.py:88:未找到 inception_4a-3x3_reduce_b
信息 net.py:88:未找到 inception_4a-3x3_w
信息 net.py:88:未找到 inception_4a-3x3_b
信息 net.py:88:未找到 inception_4a-5x5_reduce_w
信息 net.py:88:找不到 inception_4a-5x5_reduce_b
信息 net.py:88:未找到 inception_4a-5x5_w
信息 net.py:88:未找到 inception_4a-5x5_b
信息 net.py:88:未找到 inception_4a-pool_proj_w
信息 net.py:88:未找到 inception_4a-pool_proj_b
信息 net.py:88:未找到 conv_rpn_w
信息 net.py:88:未找到 conv_rpn_b
信息 net.py:88:未找到 rpn_cls_logits_w
信息 net.py:88:找不到 rpn_cls_logits_b
信息 net.py: 88: rpn_bbox_pred_w 未找到
信息 net.py:88:找不到 rpn_bbox_pred_b
信息 net.py:88:找不到 head_conv1_w
信息 net.py:88:找不到 head_conv1_gn_s
信息 net.py:88:找不到 head_conv1_gn_b
信息 net.py:88:找不到 head_conv2_w
信息 net.py:88:找不到 head_conv2_gn_s
信息 net.py:88:找不到 head_conv2_gn_b
信息 net.py:88:找不到 head_conv3_w
信息 net.py:88:找不到 head_conv3_gn_s
信息 net.py:88:找不到 head_conv3_gn_b
信息 net.py:88:找不到 head_conv4_w
信息 net.py:88:找不到 head_conv4_gn_s
信息 net.py:88:找不到 head_conv4_gn_b
信息 net.py: 88: _mask_fcn1_w 未找到
信息 net.py:88:_mask_fcn1_gn_s 未找到
信息 net.py: 88: _mask_fcn1_gn_b 未找到
信息 net.py:88:_mask_fcn2_w 未找到
信息 net.py:88:_mask_fcn2_gn_s 未找到
信息 net.py: 88: _mask_fcn2_gn_b 未找到
信息 net.py: 88: _mask_fcn3_w 未找到
信息 net.py: 88: _mask_fcn3_gn_s 未找到
信息 net.py: 88: _mask_fcn3_gn_b 未找到
信息 net.py: 88: _mask_fcn4_w 未找到
信息 net.py: 88: _mask_fcn4_gn_s 未找到
信息 net.py: 88: _mask_fcn4_gn_b 未找到
信息 net.py:88:未找到 conv5_mask_w
信息 net.py:88:未找到 conv5_mask_b
信息 net.py:88:未找到 mask_fcn_logits_w
信息 net.py:88:未找到 mask_fcn_logits_b
I0529 11:23:29.991972 25591 net_dag_utils.cc:102] 链计算之前的算子图修剪耗时:5.1028e-05 秒
I0529 11:23:29.992153 25591 net_dag.cc:46] 并行执行链数 25 运算符数 = 78
I0529 11:23:29.995748 25591 net_dag_utils.cc:102] 链计算之前的算子图修剪耗时:3.4177e-05 秒
I0529 11:23:29.995859 25591 net_dag.cc:46] 并行执行链数 18 运算符数 = 53
I0529 11:23:29.997187 25591 net_dag_utils.cc:102] 链计算之前的算子图修剪耗时:1.3739e-05 秒
I0529 11:23:29.997264 25591 net_dag.cc:46] 并行执行链数 1 运算符数 = 17
E0529 11:23:54.638962 26563 net_dag.cc:195] 从“”开始的运算符链异常(类型“Conv”):caffe2::EnforceNotMet:[在 blob.h:84 强制失败] IsType()。 Blob 实例的类型错误。 Blob 包含 nullptr (未初始化),而调用者需要 caffe2::Tensorcaffe2::CUDAContext 。
违规 Blob 名称:gpu_0/conv1-7x7_s2_w。
来自运营商的错误:
输入:“gpu_0/data”输入:“gpu_0/conv1-7x7_s2_w”输入:“gpu_0/conv1-7x7_s2_b”输出:“gpu_0/conv1-7x7_s2”名称:“”类型:“Conv”arg {名称:“内核” i: 7 } arg { name: "exhaustive_search" i: 0 } arg { name: "pad" i: 3 } arg { name: "order" s: "NCHW" } arg { name: "stride" i: 2 } device_option { device_type: 1 cuda_gpu_id: 0 } 引擎:“CUDNN”
警告workspace.py:185:网络generalized_rcnn中操作员0的原始python回溯在上述异常中(最近一次调用):
警告workspace.py:190:文件“/home/srikilaru/detectron/tools/test_net.py”,第116行,在
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第128行,在run_inference
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第125行,在result_getter
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第235行,在test_net
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第328行,在initialize_model_from_cfg
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/modeling/model_builder.py”,第124行,在创建
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/modeling/model_builder.py”,第89行,在generalized_rcnn
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/modeling/model_builder.py”,第230行,在build_generic_detection_model
警告 workspace.py:190:文件“/home/srikilaru/detectron/detectron/modeling/optimizer.py”,第 54 行,在 build_data_parallel_model
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/modeling/model_builder.py”,第170行,在_single_gpu_build_func
警告workspace.py:190:文件“/home/srikilaru/detectron/detectron/modeling/Inception_ResNetv2.py”,第27行,在add_inception_resnetv2_xxs_conv5_body
警告 workspace.py:190:文件“/home/srikilaru/pytorch/build/caffe2/python/cnn.py”,第 97 行,在 Conv
警告workspace.py:190:文件“/home/srikilaru/pytorch/build/caffe2/python/brew.py”,第107行,在scope_wrapper中
警告workspace.py:190:文件“/home/srikilaru/pytorch/build/caffe2/python/helpers/conv.py”,第186行,在conv
警告workspace.py:190:文件“/home/srikilaru/pytorch/build/caffe2/python/helpers/conv.py”,第139行,在_Conv
信息 net.py:88:未找到 inception_3b-pool_proj_b
根据
回溯(最近一次通话最后):
文件“/home/srikilaru/detectron/tools/test_net.py”,第 116 行,在
check_expected_results=真,
文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第 128 行,在 run_inference
all_results = result_getter()
文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第 125 行,在 result_getter
gpu_id=gpu_id
文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第 258 行,在 test_net
模型、即时消息、box_proposals、计时器
文件“/home/srikilaru/detectron/detectron/core/test.py”,第 66 行,在 im_detect_all
模型,我,cfg.TEST.SCALE,cfg.TEST.MAX_SIZE,box=box_proposals
文件“/home/srikilaru/detectron/detectron/core/test.py”,第 158 行,在 im_detect_bbox
workspace.RunNet(model.net.Proto().name)
RunNet 中的文件“/home/srikilaru/pytorch/build/caffe2/python/workspace.py”,第 217 行
StringifyNetName(name), num_iter, allow_fail,
CallWithExceptionIntercept 中的文件“/home/srikilaru/pytorch/build/caffe2/python/workspace.py”,第 178 行
返回函数(参数,* kwargs)
RuntimeError: [enforce fail at blob.h:84] IsType()。 Blob 实例的类型错误。 Blob 包含 nullptr (uni
已初始化),而调用者期望 caffe2::Tensorcaffe2::CUDAContext 。
违规 Blob 名称:gpu_0/conv1-7x7_s2_w。
来自运营商的错误:
输入:“gpu_0/data” 输入:“gpu_0/conv1-7x7_s2_w” 输入:“gpu_0/conv1-7x7_s2_b” 输出:“gpu_0/conv1-7x7_s2” 名称:
"" 类型:"Conv" arg { 名称:"kernel" i: 7 } arg { 名称:"exhaustive_search" i: 0 } arg { 名称:"pad" i: 3 } arg { n
ame: "order" s: "NCHW" } arg { name: "stride" i: 2 } device_option { device_type: 1 cuda_gpu_id: 0 } engine: "CUDNN
"
回溯(最近一次通话最后):
文件“tools/test_net.py”,第 116 行,在
check_expected_results=真,
文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第 128 行,在 run_inference
all_results = result_getter()
文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第 108 行,在 result_getter
multi_gpu=multi_gpu_testing
文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第 155 行,在 test_net_on_dataset
weights_file、dataset_name、proposal_file、num_images、output_dir
文件“/home/srikilaru/detectron/detectron/core/test_engine.py”,第 188 行,在 multi_gpu_test_net_on_dataset
'检测',num_images,二进制,output_dir,opts
文件“/home/srikilaru/detectron/detectron/utils/subprocess.py”,第 95 行,在 process_in_parallel
log_subprocess_output(i, p, output_dir, tag, start, end)
log_subprocess_output 中的文件“/home/srikilaru/detectron/detectron/utils/subprocess.py”,第 133 行
assert ret == 0, '范围子进程失败(退出代码:{})'.format(ret)
AssertionError:范围子进程失败(退出代码:1)

@srikanth-kilaru 同样的错误
有人帮忙吗?

此页面是否有帮助?
0 / 5 - 0 等级