我在自己的数据集上运行SegNet (通过Segnet教程)。我通过test_segmentation.py看到了很好的结果。我的问题是,我想看到真实的净结果,而不是test_segmentation自己的着色(通过类)。例如,如果我训练了两个班的网,那么在训练结束后,我不仅会看到两种颜色(就像我们在课堂上看到的那样),而且我们会看到真实的净颜色分割(0.22,0.19,0.3.)越看越轻,越黑越好,我希望我解释得很清楚。谢谢你的帮助。
发布于 2016-10-13 11:14:01
我来解决它。解决方案是在枕保存方法中将cmin和cmax从0降到1。例如:scipy.misc.toimage(output, cmin=0.0, amax=1).save(/path/.../image.png)
发布于 2016-10-10 13:09:31
您可以使用python脚本来实现您想要的结果。看看这个剧本。
命令out = out['argmax']提取原始输出,这样您就可以得到一个具有“更轻、更暗”值的分段映射。
发布于 2016-10-11 00:08:35
当你说‘真实’的颜色分割时,我会假设你指的是概率图。实际上,最后一层对于每个类都有一个映射;如果您检查inference.py中的函数预测,它们就会得到argmax;这是概率最高的通道(表示类)。如果你想得到这些地图,你只需要得到数据而不需要计算argmax;比如:
predicted = net.blobs['prob'].datahttps://stackoverflow.com/questions/39956512
复制相似问题