目标检测第4步-模型测试

致谢声明

本文在学习《Tensorflow object detection API 搭建属于自己的物体识别模型(2)——训练并使用自己的模型》的基础上优化并总结,此博客链接:https://blog.****.net/dy_guox/article/details/79111949感谢此博客作者。

0.前言

本文作者的环境:python3.6、Windows10、tensorflow_gpu1.10
跟随本篇文章实践之前,需要先阅读前置文章。
《目标检测第2步-数据准备》,链接:https://www.jianshu.com/p/3d9436b4cb66
《目标检测第3步-模型训练》,链接:https://www.jianshu.com/p/0e5f9df4686a

1.下载并解压文件

在已经阅读并且实践过前3篇文章的情况下,读者会有一些文件夹。
因为每个读者的实际操作不同,则文件夹中的内容不同。
本文作者为了保持本篇文章的独立性,制作了可以独立运行的文件夹目标检测
本文作者对文件夹目标检测做了压缩,形成的压缩文件目标检测.zip已经上传百度网盘。
链接: https://pan.baidu.com/s/1aL2WOZ_e9380caeJxbcYrQ 提取码: fea6
压缩文件目标检测.zip只有60.8M,下载好后放在桌面,选择提取到当前位置
现在桌面有1个文件夹目标检测,文件夹目标检测中有3个文件夹netsobject_detectiontraining
文件夹training中含有训练了200000次的模型。
如下图所示:

目标检测第4步-模型测试
image.png

要求:读者需要用本文中的文件夹object_detection替换自己的文件夹object_detection
原因:在文章《目标检测第3步-模型训练》中的文件夹object_detection与本文中的文件夹object_detection有区别,但是因为时间较久,没有找到修改的代码文件。之前的文件夹object_detection可能无法完成导出模型的操作

2.导出训练好的模型

桌面的文件夹目标检测中,打开cmd,如下图所示:

目标检测第4步-模型测试
image.png

即在资源管理器的路径中输入cmd,按Enter键运行。

2.1 添加环境变量

使用cmd添加永久环境变量,适用于熟悉cmd命令的读者。
cmd中运行命令:setx -m PYTHONPATH "C:\Users\Administrator\Desktop\目标检测"
命令成功运行后,如下图所示:
要保持下图中的2个红色方框内容一致,路径加双引号可以增加命令的强壮性。

目标检测第4步-模型测试
image.png

运行成功会有提示成功: 指定的值已得到保存,如下图所示:
目标检测第4步-模型测试
image.png

2.2 导出模型命令

桌面的文件夹目标检测中,打开cmd
cmd中运行命令:python object_detection/export_inference_graph.py --input_type=image_tensor --pipeline_config_path=training/ssdlite_mobilenet_v2_coco.config --trained_checkpoint_prefix=training/model.ckpt-200000 --output_directory=fish_inference_graph
运行成功的结果如下图所示:

目标检测第4步-模型测试
image.png

在桌面的文件夹目标检测中产生了文件夹fish_inference_graph,如下图所示:
目标检测第4步-模型测试
image.png

3. 下载测试数据

下载链接: https://pan.baidu.com/s/1NksESNqBX--YqMJ4zptGdw 提取码: 6p3u
压缩文件n01440764.tar下载完成后,复制到桌面的文件夹目标检测中,解压时选择提取到"n01440764"
进行到此步,桌面的文件夹目标检测如下图所示:

目标检测第4步-模型测试
image.png

4.下载并运行测试代码

链接: https://pan.baidu.com/s/1Ym1cYFCnsj1JAYFACHFj_Q 提取码: i3wn
代码文件fish_detection.ipynb下载完成后,复制到桌面的文件夹目标检测中。
在桌面的文件夹目标检测中打开cmd,如下图所示:

目标检测第4步-模型测试
image.png

在cmd中输入并运行命令:jupyter notebook,如下图所示:
目标检测第4步-模型测试
image.png

浏览器会自动打开jupyter页面,打开代码文件fish_detection.ipynb,点击下图红色箭头所示标注处:
目标检测第4步-模型测试
image.png

在代码文件中,依次运行单元格中的代码即可。
文件夹n01440764*有1300张图片,测试图片是随机选的10张图片。
本文作者展示测试效果较好的2张图片。
目标检测第4步-模型测试
image.png

目标检测第4步-模型测试
image.png

5.总结

1.这篇文章值得读者花时间去实践,因为本文作者花了很久时间才完成本篇文章的写作。
2.时间主要花费在用最少的代码文件完成模型导出和模型测试的效果。
3.目标检测给物体画方框,方框线条的粗细和字体大小是一个需要花时间去学习的点。