如何检查泡菜的大小或内容物的数量

问题描述 投票:0回答:1

我很久以前做了一个泡菜,想使用里面的东西,但我必须确保里面有准确数量的[8752 个泡菜图像]。我尝试了常用的 python 函数,如

len()
但失败了。但是当我尝试像数组一样打印其中一个内容时,它确实输出了一个看起来像图像数组的数组,并且显然无法再次转换为可见图像(如 .jpeg)。

如何确保里面有所有图像?

我尝试按数组编号打印图像,它输出一个数组数组,我尝试使用“len”检查 python 中检查大小的常用方法,但它输出 1080 而不是预期的 8752 图像内容。

enter image description here

编辑1:

加载pickle的代码

#load pickle
with open("rivergate_image.pkl", "rb") as f:

    river_images = pickle.load(f)

print(river_images[0])
print(len(river_images))

编辑2:

### print(river_images) output
[[[ 27 147 145]
  [ 30 150 148]
  [ 28 148 146]
  ...
  [ 61 178 169]
  [ 63 177 169]
  [ 65 176 167]]

 [[ 24 144 142]
  [ 24 144 142]
  [ 24 144 142]
  ...
  [ 59 179 170]
  [ 63 177 169]
  [ 65 176 169]]

 [[ 32 152 150]
...
  ...
  [ 37 142 145]
  [ 36 141 144]
  [ 35 140 143]]]
Output is truncated. View as a scrollable element or open in a text editor. Adjust cell output settings...
python size pickle
1个回答
0
投票

看起来您将图像作为 NumPy 数组单独转储到文件中。

尝试加载并计数直到文件末尾。示例:

import pickle

with open('test.pkl', 'wb') as f:
  for c in 'foobar':
    pickle.dump(c, f)

with open('test.pkl', 'rb') as f:
  n = 0
  try:
    while True:
      print(repr(pickle.load(f)))
      n += 1
  except EOFError:
    print(n)

输出(在线尝试!):

'f'
'o'
'o'
'b'
'a'
'r'
6
© www.soinside.com 2019 - 2024. All rights reserved.