imdb.competition_mode('competition mode')
    if not os.path.isfile(tfmodel + '.meta'):
        print(tfmodel)
        raise IOError(
            ('{:s} not found.\nDid you download the proper networks from '
             'our server and place them properly?').format(tfmodel + '.meta'))
    # set config
    tfconfig = tf.ConfigProto(allow_soft_placement=True)
    tfconfig.gpu_options.allow_growth = True
    # init session
    sess = tf.Session(config=tfconfig)
    # load network
    if demonet == 'vgg16':
        net = vgg16(batch_size=1)
    # elif demonet == 'res101':
    # net = resnetv1(batch_size=1, num_layers=101)
    else:
        raise NotImplementedError
    net.create_architecture(
        sess,
        "TEST",
        2,  # 记得修改第3个参数为:类别数量+1
        tag='default',
        anchor_scales=[8, 16, 32])
    saver = tf.train.Saver()
    saver.restore(sess, tfmodel)
    print('Loaded network {:s}'.format(tfmodel))
    print(filename)
    test_net(sess, net, imdb, filename, max_per_image=100)
    sess.close()
Esempio n. 2
0
from lib.config import config as cfg
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
if __name__ == '__main__':
    # Create session
    tfconfig = tf.ConfigProto(allow_soft_placement=True)
    # tfconfig.gpu_options.allow_growth = True
    sess = tf.Session(config=tfconfig)
    # init net
    net = vgg16(batch_size=1)
    net.create_architecture(sess, "TEST", 2, tag='default', anchor_scales=[8, 16, 32], anchor_ratios=(1, 2))

    for i in range(80001) :
        if i==0 : continue
        if (i%1000)!=0 : continue
        weights_filename = "default\\voc_2007_trainval\\default\\vgg16_faster_rcnn_iter_{0}.ckpt".format(i)
        print("Load weights : {0}".format(weights_filename))
        saver = tf.train.Saver()
        saver.restore(sess, weights_filename)
    #set imdb
        imdb_name = "voc_2007_test"
        imdb = get_imdb(imdb_name)
        accuracy, recall, precision, tpr, fpr = test_net(sess, net, imdb, weights_filename, max_per_image=100, thresh=0.0)
        
        record_file = open("TestNet_Record_iter_{0}.csv".format(i), "w")
        record_file.write("accuracy,recall,precision,tpr,fpr\n")
        num = len(accuracy[0])
        print("Data Number = {0} :: {1}, {2}, {3}, {4}".format(num, len(recall[0]), len(precision[0]), len(tpr[0]), len(fpr[0])))
        for idx in range(num) :
            record_file.write("{0:3f},{1:3f},{2:3f},{3:3f},{4:3f}\n".format(accuracy[0][idx], recall[0][idx], precision[0][idx], tpr[0][idx], fpr[0][idx]))
        record_file.close()
Esempio n. 3
0
File: demo1.py Progetto: limuer/lm
    # load network
    if demonet == 'vgg16':
        net = vgg16(batch_size=1)
    # elif demonet == 'res101':
    # net = resnetv1(batch_size=1, num_layers=101)
    else:
        raise NotImplementedError
    net.create_architecture(sess,
                            "TEST",
                            19,
                            tag='default',
                            anchor_scales=[8, 16, 32])
    saver = tf.train.Saver()
    saver.restore(sess, tfmodel)

    print('Loaded network {:s}'.format(tfmodel))

    im_names = os.listdir(cfg.FLAGS2["data_dir"] + '/demo')  # 测试图片所在位置
    for im_name in im_names:
        print('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
        print('Demo for data/demo/{}'.format(im_name))
        demo(sess, net, im_name)

    imdb = get_imdb("voc_2007_trainval")
    test_net(sess, net, imdb, 'default')
    plt.show()
    # 保存测试图片所在位置,并设置输出格式
    #plt.savefig(cfg.FLAGS2["data_dir"] + '/test_result/'+ im_name, format='png', transparent=True, pad_inches=0,
    #dpi=300, bbox_inches='tight')

    # plt.show()
Esempio n. 4
0
    sess = tf.Session(config=tfconfig)
    # load network
    if demonet == 'vgg16':
        net = vgg16(batch_size=1)
    net.create_architecture(sess,
                            "TEST",
                            7,
                            tag='default',
                            anchor_scales=[8, 16, 32])
    print("loading model...")
    saver = tf.train.Saver()
    saver.restore(sess, tfmodel)
    print('Loaded network {:s}'.format(tfmodel))
    imdb = get_imdb(args.imdb_name)
    test_net(sess,
             net,
             imdb,
             weights_filename=None,
             max_per_image=100,
             thresh=0.5)
    '''
    im_names = open(os.path.join(TEST_DIR, "test.txt")).readlines()
    m = len(im_names)
    for i in range(m):
        im_name = im_names[i].strip("\n")
        im_name = im_name + ".jpg"
        print('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
        print('Demo for data/demo/{}'.format(im_name))
        demo(sess, net, im_name)
    '''
Esempio n. 5
0
        raise IOError(
            ('{:s} not found.\nDid you download the proper networks from '
             'our server and place them properly?').format(tfmodel + '.meta'))

    imdb = combined_roidb(DATASETS[dataset][0])

    tfconfig = tf.ConfigProto(allow_soft_placement=True)
    tfconfig.gpu_options.allow_growth = True

    # init session
    sess = tf.Session(config=tfconfig)
    # load network
    #if demonet == 'vgg16' or 'voc_2007_trainval+test':
    net = vgg16(batch_size=1)
    # elif demonet == 'res101':
    # net = resnetv1(batch_size=1, num_layers=101)
    #else:
    #    raise NotImplementedError
    net.create_architecture(sess,
                            "TEST",
                            cfg.FLAGS2["CLASSES"].__len__(),
                            tag='default',
                            anchor_scales=[8, 16, 32])

    # start a session
    saver = tf.train.Saver()
    saver.restore(sess, tfmodel)
    #print ('Loading model weights from {:s}').format(args.model)

    test_net(sess, net, imdb, demonet)
Esempio n. 6
0
    sess = tf.Session(config=tfconfig)
    # load network
    if demonet == 'vgg16':
        net = vgg16(batch_size=1)
    # elif demonet == 'res101':
    # net = resnetv1(batch_size=1, num_layers=101)
    else:
        raise NotImplementedError

    net.create_architecture(sess,
                            "TEST",
                            imdb.num_classes,
                            tag='default',
                            anchor_scales=[8, 16, 32])
    saver = tf.train.Saver()
    saver.restore(sess, tfmodel)

    print('Loaded network {:s}'.format(tfmodel))

    # for file in os.listdir("./lib/layer_utils"):
    #     if file.endswith(".jpg"):
    #         print('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
    #         print('Demo for lib/layer_utils/{}'.format(file))
    #         demo(sess, net, file)

    # plt.show()

    test_net(sess, net, imdb, demonet, max_per_image=100)

sess.close()