ValueError:无法将大小为0的数组重塑为形状(1,256,256,6)

时间:2018-01-24 06:42:55

标签: python tensorflow

我收到了错误,

  

ValueError:无法将大小为0的数组重塑为形状(1,256,256,6)。

我在 main.py

中编写了代码
PYTHONPATH

models.py

parser.add_argument('--checkpoint_dir', dest='checkpoint_dir', default='./checkpoint', help='models are saved here')
parser.add_argument('--sample_dir', dest='sample_dir', default='./sample', help='sample are saved here')
parser.add_argument('--test_dir', dest='test_dir', default='./test', help='test sample are saved here')
parser.add_argument('--L1_lambda', dest='L1_lambda', type=float, default=10.0, help='weight on L1 term in objective')
parser.add_argument('--use_resnet', dest='use_resnet', type=bool, default=True, help='generation network using reidule block')
parser.add_argument('--use_lsgan', dest='use_lsgan', type=bool, default=True, help='gan loss defined in lsgan')
parser.add_argument('--max_size', dest='max_size', type=int, default=50, help='max size of image pool, 0 means do not use image pool')

args = parser.parse_args()


def main(_):
    if not os.path.exists(args.checkpoint_dir):
        os.makedirs(args.checkpoint_dir)
    if not os.path.exists(args.sample_dir):
        os.makedirs(args.sample_dir)
    if not os.path.exists(args.test_dir):
        os.makedirs(args.test_dir)

    tfconfig = tf.ConfigProto(allow_soft_placement=True)
    tfconfig.gpu_options.allow_growth = True
    with tf.Session(config=tfconfig) as sess:
        model = cyclegan(sess, args)
        model.train(args) if args.phase == 'train' \
            else model.test(args)

if __name__ == '__main__':
    tf.app.run()

Traceback说

  

Traceback(最近一次调用最后一次):文件“main.py”,第53行,in          tf.app.run()文件“/home/ml/.pyenv/versions/3.5.2/lib/python3.5/site-packages/tensorflow/python/platform/app.py”,   第44行,在运行中       _sys.exit(main(_sys.argv [:1] + flags_passthrough))文件“main.py”,第49行,主要       model.train(args)if args.phase =='train'\ File“/home/ml/learning/pix2pix/CycleGAN-tensorflow/model.py”,第176行,in   培养       self.sample_model(args.sample_dir,epoch,idx)文件“/home/ml/learning/pix2pix/CycleGAN-tensorflow/model.py”,第215行,in   sample_model       sample_images = array(sample_images).reshape(1,256,256,6)ValueError:无法将大小为0的数组重塑为形状(1,256,256,6)

在此之前我遇到了重塑错误,所以我在下面添加了代码

def sample_model(self, sample_dir, epoch, idx): dataA = glob('./datasets/{}/*.*'.format(self.dataset_dir + '/testA')) dataB = glob('./datasets/{}/*.*'.format(self.dataset_dir + '/testB')) np.random.shuffle(dataA) np.random.shuffle(dataB) batch_files = list(zip(dataA[:self.batch_size], dataB[:self.batch_size])) sample_images = [load_train_data(batch_file, is_testing=True) for batch_file in batch_files] sample_images = np.array(sample_images).astype(np.float32) sample_images = array(sample_images).reshape(1, 256, 256, 6) fake_A, fake_B = self.sess.run( [self.fake_A, self.fake_B], feed_dict={self.real_data: sample_images} ) save_images(fake_A, [self.batch_size, 1], './{}/A_{:02d}_{:04d}.jpg'.format(sample_dir, epoch, idx)) save_images(fake_B, [self.batch_size, 1], './{}/B_{:02d}_{:04d}.jpg'.format(sample_dir, epoch, idx))

但是现在我被告知大小0导致错误。我真的不明白为什么会发生这种错误。我不认为0大小的图像在文件夹中。我该怎么解决这个问题?我的代码有什么问题?文件夹中的任何图像大小为0吗?

0 个答案:

没有答案