TypeError: У ввода 'filenames' из 'TFRecordDataset' Op есть тип float32, который не соответствует ожидаемому типу строки - PullRequest
0 голосов
/ 24 апреля 2019

Я пытаюсь использовать этот код github cnn-watermark-Removal для удаления водяных знаков с изображений.Я добавил свои собственные пользовательские изображения в data/VOCdevkit/VOC2012/JPEGImages, как описано и обучено с использованием данной команды.

В последней строке return (next_element, [iterator.make_initializer(x) for x in [train, val]]) эта часть кода выдает ошибку выше.

def dataset_split(dataset_fn, split):
    # import pdb; pdb.set_trace();
    records = get_records()
    split = int(len(records) * split)
    train, val = dataset_fn(records[:split]), dataset_fn(records[split:])
    iterator = tf.contrib.data.Iterator.from_structure(
        train.output_types, train.output_shapes)
    # import ipdb; ipdb.set_trace();
    next_element = iterator.get_next()
    return (next_element,
            [iterator.make_initializer(x) for x in [train, val]])

Iнашел похожий вопрос по stackoverflow TypeError: введите 'filenames' для 'TFRecordDataset' , в котором ожидаемый тип ошибки - int32 unilike, в моем случае это строка.

Я очень новичок в tenorflow.Любые приводит высоко ценится.Спасибо.

...