TensorFlow_yolov3测试map函数的流程,以及几个yolov3大神版本的优缺点!教你选择哪个TensorFlow_yolov3代码!以及使用TensorFlow1.x实现yolov3全集

一、前言

当你模型训练好了以后,可以看看你自己的模型效果怎么样,就需要测试其map。yunyang1994的yolov3版本已经把代码写好,直接使用,很方便。

二、使用步骤

一、实现修改config.py函数

__C.TEST.ANNOT_PATH             = "./data/dataset/voc_test.txt"
__C.TEST.BATCH_SIZE             = 2
__C.TEST.INPUT_SIZE             = 416
__C.TEST.DATA_AUG               = False
__C.TEST.WRITE_IMAGE            = True
__C.TEST.WRITE_IMAGE_PATH       = "./data/detection/"
__C.TEST.WRITE_IMAGE_SHOW_LABEL = True
__C.TEST.WEIGHT_FILE            = "./checkpoint/yolov3_coco_demo.ckpt"
__C.TEST.SHOW_LABEL             = True
__C.TEST.SCORE_THRESHOLD        = 0.3
__C.TEST.IOU_THRESHOLD          = 0.45

__C.TEST.WEIGHT_FILE修改为自己的路径

二、运行evaluate.py函数,基本不需要改什么,如果你的模型是修改了的,那么修改如下对应的部分即可:

        # with tf.name_scope('ema'):
        # ema_obj = tf.train.ExponentialMovingAverage(self.moving_ave_decay)
        self.saver = tf.train.Saver()

        self.sess  = tf.Session(config=tf.ConfigProto(allow_soft_placement=True))
        # self.saver = tf.train.Saver(ema_obj.variables_to_restore())
        self.saver.restore(self.sess, self.weight_file)

运行的结果如下:

以及predict文件夹为:

三、运行map文件中的main文件即可

运行结果如下:

四、结言

yunyang1994的youlov3版本写的不错,他官方说的使用TensorFlow2.0,但是我用的TensorFlow1.11.0也能跑,还是gpu。
官方网址:
https://github.com/YunYang1994/tensorflow-yolov3

yunyang1994的yolov3代码跑出来的模型(.ckpt)大小大概1000多kb, 不影响使用。如果你是为了写论文对比的话,想减少模型大小的话,可以在博客的下方评价。

还有就是wizyang的yolov3写的也挺不错的,也能跑通,但是代码的测试集损失函数不下降,不管是自己的数据集还是官方的数据集,自己找了很久的原因也没有找到,改参数,找模型问题等。如果有大佬知道,也可以在博客下方评价,小弟将不胜感激。
官方网址L:
https://github.com/wizyoung/YOLOv3_TensorFlow

其次是qqwweee的代码,他是用全程Keras实现的代码,能训练,测试集,训练集的损失都能下降,但是不容易移植。
官方网址:
https://github.com/qqwweee/keras-yolo3

综上 我还是推荐yunyang1994的官方代码,比较好用,也全。

以上三份代码我都已经跑通,用的环境都是TensorFlow-GPU 1.11.0

大家如果在实现过程中遇到了什么问题,可以提问!

全部评论

相关推荐

2024-12-16 21:59
东北大学 Java
水杉1:我评估了仨月了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
01-17 17:00
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务