Shirhe-Lyh / mask_rcnn_test

Use tensorflow object_detection to finetuning a Mask R-CNN model
21 stars 23 forks source link

mask_rcnn not have mask #1

Open jersonal opened 6 years ago

jersonal commented 6 years ago

Hi~ Shirhe,你好,我用你提供的tfrecord文件在mask_rcnn_resnet50网络上训练,生成pb文件后预测,只有bbox,没有mask掩码信息。我用你提供的create_tf_record.py脚本重新训练数据集,也是一样的结果。我怀疑是我的训练、生成pb或者预测的时候出了问题。然后我使用官方提供的pet数据集以及create_pet_tf_record.py脚本,同样的训练导出pb以及预测代码,这个是可以显示出来mask以及bbox信息的。请问我该修改什么部分才能显示出mask信息呢?您用自己的tfrecord文件训练预测的时候有生成mask掩码吗?期待你的回答~,感谢!

jersonal commented 6 years ago

我用的也是tensorflow object detection API,目前是最新的版本。

lovebabychen commented 5 years ago
      我用的也是tensorflow object detection API,目前是最新的版本。

现在你的问题解决了吗? 有两个问题:使用model_main()训练时卡住;在使用train.py训练得到模型后只能检测的目标区域,并不能显示mask图片 希望博主能够解答

lovebabychen commented 5 years ago
      Hi~ Shirhe,你好,我用你提供的tfrecord文件在mask_rcnn_resnet50网络上训练,生成pb文件后预测,只有bbox,没有mask掩码信息。我用你提供的create_tf_record.py脚本重新训练数据集,也是一样的结果。我怀疑是我的训练、生成pb或者预测的时候出了问题。然后我使用官方提供的pet数据集以及create_pet_tf_record.py脚本,同样的训练导出pb以及预测代码,这个是可以显示出来mask以及bbox信息的。请问我该修改什么部分才能显示出mask信息呢?您用自己的tfrecord文件训练预测的时候有生成mask掩码吗?期待你的回答~,感谢!

现在你的问题解决了吗? 有两个问题:使用model_main()训练时卡住;在使用train.py训练得到模型后只能检测的目标区域,并不能显示mask图片 希望博主能够解答

RobinHan24 commented 5 years ago

博主,您好,我也遇到了类似的问题,训练结束得到的模型,最后用来测试,测试结果不显示mask,只显示检测结果。

Shirhe-Lyh commented 5 years ago

@jersonal @lovebabychen @RobinHan24 训练后没有 mask 的 bug 已修复

RobinHan24 commented 5 years ago

感谢博主,已经可以看到mask,如何把mask这部分切割出来呢,官方有提供样例吗,谢谢。

Shirhe-Lyh commented 5 years ago

@RobinHan24 你指的是从原图切割出 mask 对应的部分区域吧?一个简单的解决方案是:通过模型已经可以得到 mask,mask 是由 0-1 组成的二维数组,目标对应 1,背景对应 0,你可以用这个 mask 分别乘以原图的 3 个通道,把背景像素变成 0 就可以了。

RobinHan24 commented 5 years ago

非常感谢,已经实现,谢谢。

jersonal commented 5 years ago
      Hi~ Shirhe,你好,我用你提供的tfrecord文件在mask_rcnn_resnet50网络上训练,生成pb文件后预测,只有bbox,没有mask掩码信息。我用你提供的create_tf_record.py脚本重新训练数据集,也是一样的结果。我怀疑是我的训练、生成pb或者预测的时候出了问题。然后我使用官方提供的pet数据集以及create_pet_tf_record.py脚本,同样的训练导出pb以及预测代码,这个是可以显示出来mask以及bbox信息的。请问我该修改什么部分才能显示出mask信息呢?您用自己的tfrecord文件训练预测的时候有生成mask掩码吗?期待你的回答~,感谢!

现在你的问题解决了吗? 有两个问题:使用model_main()训练时卡住;在使用train.py训练得到模型后只能检测的目标区域,并不能显示mask图片 希望博主能够解答

我已经解决了,我改了mask创建时的格式,博主也已经更新了~

jersonal commented 5 years ago

@jersonal @lovebabychen @RobinHan24 训练后没有 mask 的 bug 已修复

感谢博主

RobinHan24 commented 5 years ago

博主,您好,这个是否支持单通道图像的训练呢,不知您是否尝试过。

Shirhe-Lyh commented 5 years ago

@RobinHan24 可以的。你看一下这个文件:https://github.com/tensorflow/models/blob/master/research/object_detection/models/faster_rcnn_resnet_v1_feature_extractor.py 的 preprocess 函数就知道了,不要忘了加一个通道