【发布时间】:2021-10-14 18:05:31
【问题描述】:
我一直在 Raspberry Pi 4 上使用 OpenCV 的 DNN 模块,它需要一个冻结的推理图(.pb 文件)和相应的文本图文件(.pbtxt 文件)。
使用来自TF1 model zoo 的预训练ssd_mobilenet_v3_small_coco 并使用来自OpenCV 的tf_text_graph_ssd.py 脚本生成pbtxt 文件,这可以在Raspberry 上成功运行平均 5 FPS。
然后我想尝试通过只为一个班级训练这个模型来加快这个速度。 在解决了错误和依赖版本之后,我开始接受培训。我建立了一个数据集,标记了图像,创建了所有必要的文件。使用 ssdlite_mobilenet_v3_small_320x320_coco.config from sample configs,设置所有路径,将微调检查点指向模型文件夹,将类数设置为 1,批量设置为 16.
model_train.py 运行,它似乎产生了结果,尽管我不太确定如何解释它们。我已经对其进行了 100K 步的训练,然后导出了一个冻结的推理图,并再次使用 tf_text_graph_ssd.py 生成了一个 pbtxt 文件。 我在我的树莓派应用程序上运行这些,它没有抛出任何错误,运行速度为 10FPS,但绝对没有检测到。
所以要么我在训练中做错了,要么在导出或 pbtxt 生成中做错了。不知道从这里去哪里。希望有人能指出我正确的方向。以下是 Tensorboard 输出的一些截图。
【问题讨论】:
标签: python tensorflow opencv machine-learning neural-network