Tensorboard eval.py IOU用于对象检测

Des*_*ond 4 object-detection tensorflow tensorboard

我在张量流对象检测中使用了来自检测模型Zoo的ssd_mobilenet_v1_coco。我目前正在通过跑步训练模型

python legacy/train.py --logtostderr --train_dir=trainingmobile/ --pipeline_config_path=trainingmobile/pipeline.config
Run Code Online (Sandbox Code Playgroud)

我想通过运行eval.py来获得评估工作,以获取其他指标(如IOU和PR曲线),但我不知道该怎么做。我能够运行命令

python legacy/eval.py \
--logtostderr \
--checkpoint_dir= path/to/checkpoint \
--eval_dir= path/to/eval \
--pipeline_config_path= path/to/config
Run Code Online (Sandbox Code Playgroud)

然后我运行了命令

tensorboard --logdir=path/to/eval
Run Code Online (Sandbox Code Playgroud)

张量板仅显示测试图像输出。我如何获得其他指标,如IOU和PR Curve?

Tho*_*257 5

首先,我强烈建议您结合使用较新的model_main.py脚本进行培训和评估。您可以如下所示使用它:

python object_detection/model_main.py \
   --pipeline_config_path=path/to/config \
   --model_dir=path/to/train_dir \
   --num_train_steps=NUM_TRAIN_STEPS \
   --num_eval_steps=NUM_EVAL_STEPS \
   --alsologtostderr
Run Code Online (Sandbox Code Playgroud)

它结合了培训和评估,您可以使用

tensorboard -logdir=path/to/train_dir
Run Code Online (Sandbox Code Playgroud)

Tensorboard不仅会显示培训过程,还将显示您在验证集上的进度。他们使用COCO指标作为默认指标!

原来的问题:也许您应该将配置文件中的评估设置更改为更大的数字:

eval_config: {
  num_examples: 8000
  # Note: The below line limits the evaluation process to 10 evaluations.
  # Remove the below line to evaluate indefinitely.
  max_evals: 10}
Run Code Online (Sandbox Code Playgroud)

如果您将使用model_main.py脚本,则评估数量将由标志设置。

提提您:tnesorflow的信息输出在较新的model_main.py脚本中已禁用。您可以通过添加启用它

tf.logging.set_verbosity(tf.logging.INFO)
Run Code Online (Sandbox Code Playgroud)

在导入部分之后。