保存/打开h5文件时数组更改值

时间:2019-06-06 15:37:04

标签: python arrays python-2.7 numpy h5py

我正在尝试在Caffe中训练图像数据上的CNN分类器,但是,当我将图像保存为h5格式以插入到我的第一个Caffe层中时,我的数组中的一两个就有很小的机会会有一个或两个他们的像素值改变了。

我先检查数组的像素值,然后再将它们保存到h5文件中,然后将其与打开时进行比较

for image in images:
    if np.max(image) > 1 or np.min(image) < 0:
         print np.max(image), np.min(image)

with h5py.File(path, 'w') as f:
    f['data'] = images
    f['label'] = labels

h5_file = h5py.File(filename, 'r')

images, labels = list(h5_file.keys())

images = list(h5_file[images])
labels = list(h5_file[labels])

for image in images:
    if np.max(image) > 1 or np.min(image) < 0:
         print np.max(image), np.min(image)

我希望输出的数组中不包含任何大于1或小于0的值(图像已标准化)。我只是在将它们保存到h5文件之前(我从来没有找到0-1范围之外的数组)进行检查。但是,当我打开h5文件时,似乎有些机会会更改一些像素值。它们的值将不在0到1之间,而是看起来在〜10 ^ 100或-10 ^ 100的数量级。

我不知道为什么,我将python 2.7与h5py版本2.7.1一起使用

0 个答案:

没有答案