Tensorflow FIFOQueue错误:FIFOQueue已关闭且元素不足

den*_*nru 5 tensorflow

现在我使用tensorflow编写程序来验证模型.我使用FIFOQueue对输入数据进行排队.例如,我有50,000张图像,一次排列100张图像.除最后一次迭代外,该程序运行良好.在最后一次迭代中,它显示错误"E tensorflow/core/client/tensor_c_api.cc:485] FIFOQueue'_0_path_queue'关闭且元素不足(请求1,当前大小为0)[[Node:path_queue_Dequeue = QueueDequeue_class = [ "loc:@path_queue"],component_types = [DT_INT32,DT_BOOL,DT_STRING],timeout_ms = -1,_device ="/ job:localhost/replica:0/task:0/cpu:0"]]"

我认为这是因为它试图将50,001~50,100图像排入队列但却无法实现.但是,我不需要将这些图像排入队列,也不会使用它们.我怎样才能避免这个错误?

另一个问题是,如果我想使用dequeue_many(100),则图像的总数不能被100整除,比如说45678.在这种情况下,tensorflow会抛出错误.我怎么解决这个问题?

谢谢.

小智 2

尝试dequeue_up_to代替dequeue_manyhttps://www.tensorflow.org/versions/r0.10/api_docs/python/io_ops.html

希望有帮助!