def from_toml(filename):
from keras.utils.data_utils import get_file
volumes = {}
with open(filename, 'rb') as fin:
datasets = toml.load(fin).get('dataset', [])
for dataset in datasets:
hdf5_file = dataset['hdf5_file']
if dataset.get('use_keras_cache', False):
hdf5_file = get_file(hdf5_file, dataset['download_url'], md5_hash=dataset.get('download_md5', None))
image_dataset = dataset.get('image_dataset', None)
label_dataset = dataset.get('label_dataset', None)
mask_dataset = dataset.get('mask_dataset', None)
mask_bounds = dataset.get('mask_bounds', None)
resolution = dataset.get('resolution', None)
hdf5_pathed_file = os.path.join(os.path.dirname(filename), hdf5_file)
volume = HDF5Volume(hdf5_pathed_file,
image_dataset,
label_dataset,
mask_dataset,
mask_bounds=mask_bounds)
# If the volume configuration specifies an explicit resolution,
# override any provided in the HDF5 itself.
if resolution:
logging.info('Overriding resolution for volume "%s"', dataset['name'])
volume.resolution = np.array(resolution)
volumes[dataset['name']] = volume
return volumes
评论列表
文章目录