这个训练批处理形状与自定义不匹配np.数组d

2021-04-12 00:17:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用slim库来训练我自己的resnet_v2_152和

构建我自己的图像numpy数组数据,由20个图像堆叠而成。在

这意味着我的numpy数组大小将是

[224, 224, 20]

我用字节转换的方法把数据转换成tfrecords,经过预处理后得到的图像数组数据没有问题

^{pr2}$

以及

OutOfRangeError (see above for traceback): FIFOQueue '_5_batch/fifo_queue' 
is closed and has insufficient elements (requested 1, current size 0)

当我申请训练批处理在

下面是我代码的一部分

    dataset = dataset_factory.get_dataset(
        FLAGS.datasetname, FLAGS.dataset, FLAGS.dataset_dir)

    network_fn = nets_factory.get_network_fn(
        FLAGS.model_name,
        num_classes=101,
        is_training=True)

    provider = slim.dataset_data_provider.DatasetDataProvider(
          dataset,
          num_readers=4,
          common_queue_capacity=20 * FLAGS.batch_size,
          common_queue_min=10 * FLAGS.batch_size)
    [image, label] = provider.get(['image', 'label'])
    label -= 0

    preprocessing_name = FLAGS.preprocessing_name or FLAGS.model_name
    image_preprocessing_fn = preprocessing_factory.get_preprocessing(preprocessing_name, is_training=True)

    eval_image_size = FLAGS.eval_image_size or network_fn.default_image_size
    image = image_preprocessing_fn(image, eval_image_size, eval_image_size)

    #Batch size is 1
    images, labels = tf.train.batch(
          [image, label],
          batch_size=FLAGS.batch_size,
          num_threads=4,
          capacity=5 * FLAGS.batch_size)   

    init_op = tf.group(tf.global_variables_initializer(),
            tf.local_variables_initializer())

    #This part to see the fetched results
    with tf.Session() as sess:
        coord = tf.train.Coordinator()
        threads = tf.train.start_queue_runners(coord=coord)
        sess.run(init_op)
        im = sess.run(images)
        l = sess.run(label)
        coord.request_stop()
        coord.join(threads)

我坚持要遵循火车头形象的风格_分类器.py因为我想使用slim库提供的默认训练模式。在

我将非常感谢你的帮助和回答。谢谢