DeeplabV3+ 命令行不显示miou的解决

Posted tccbj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DeeplabV3+ 命令行不显示miou的解决相关的知识,希望对你有一定的参考价值。

首先看到训练时会在命令行里输出 loss 和 total loss,那是怎么做到的呢,通过分析 train.py 源码,看到如下代码

    total_loss = tf.cond(
        should_log,
        lambda: tf.Print(total_loss, [total_loss], Total loss is :),
        lambda: total_loss)

    summaries.append(tf.summary.scalar(total_loss, total_loss))

是把 total_loss 加到了 summaries 里,然后就会输出在命令行了,那 summaries 是什么呢?

通过百度看到一篇不错的博客:https://www.cnblogs.com/lyc-seu/p/8647792.html

简单说就是在训练过程中,用tf.summary()的各类方法,能够保存训练过程以及参数分布图。并在tensorboard显示,tensorboard还没用过,等会再看看

解决方法:

照搬 train 的思路,新建一个 op,是个 tf.Print(),再加到 summaries 里应该就OK了

    print_miou = tf.Print(miou, [miou], miou is:)  #创建tf.Print()的op
    tf.summary.scalar(print_miou, print_miou)      #把这个op加到summary里,后面在tf.contrib.training.evaluate_repeatedly中会自动调用
    summary_op = tf.summary.merge_all()

 tf.Print参考这里:https://blog.csdn.net/thormas1996/article/details/81224405

以上是关于DeeplabV3+ 命令行不显示miou的解决的主要内容,如果未能解决你的问题,请参考以下文章

linux 命令行不显示路径了,而显示为-bash-4.1#的两种解决办法

Mac命令行不执行命令 总出现command not found解决方法

DeepLabV3,珊瑚的分割和分类/检测

使用 RVM 安装 Ruby 1.9.3 但命令行不显示 ruby​​ -v

Mac系统终端命令行不执行命令解决方法(command not found)

Mac系统终端命令行不执行命令 总出现command not found解决方法