我已更新到 Tensorflow 1.9 和对象检测 API 的最新版本。当运行以前运行良好的训练/评估会话时(我认为版本 1.6),训练似乎按预期进行,但我只获得一个图像(第一个图像)的评估和指标。
在 Tensorboard 中,图像标记为“Detections_Left_Groundtruth_Right”。评估步骤本身也发生得非常快,这让我相信这不仅仅是 Tensorboard 的问题。
查看 model_lib.py,我看到一些可疑代码(第 349 行附近):
eval_images = (
features[fields.InputDataFields.original_image] if use_original_images
else features[fields.InputDataFields.image])
eval_dict = eval_util.result_dict_for_single_example(
eval_images[0:1],
features[inputs.HASH_KEY][0],
detections,
groundtruth,
class_agnostic=class_agnostic,
scale_to_absolute=True)
这对我来说就像评估器总是对第一张图像运行单个评估。有人看到和/或修复过这个问题吗?如果更改上述工作,我会更新。
你是对的,对象检测仅支持批量大小为 1 的评估。评估次数等于评估步骤数。评估指标是跨批次累积的。
顺便说一句,在 Tensorboard 中查看更多评估图像的更改刚刚提交给了 master。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)