因此,如果我有100个类型为.bmp的二进制图像,我想知道是否有一个库可以用来将它保存到一个文件中,然后读入该文件并迭代python中的每个图像。
如果没有库,我计划读取所有100个二进制图像,然后将它们保存到python中的数组中,然后将该数组保存到100_images.format
这样的文件中。
我想知道以什么格式保存文件以使其尽可能小?由于图像都是二进制32 x 32像素,我怎么能有效地做到这一点?
我以为我可以将100张图像保存到这样的数组中:
array index
0 0 or 1 for if image 1 pixel at (0, 0) is white(0) or black(1)
1 0 or 1 for if image 1 pixel at (0, 1) is white(0) or black(1)
...
1023 0 or 1 for if image 1 pixel at (31, 31) is white(0) or black(1)
1024 0 or 1 for if image 2 pixel at (0, 0) is white(0) or black(1)
...
然后将其写入python中的文件。但我不知道我应该使用什么类型的文件 做了。然后在通过100个二进制图像读取的代码中,我希望它的工作方式如下:
binary_images_manager = new BinaryImagesManager('100_images.format')
for i in range(number_of_images_to_see):
int[][] binary_image = binary_images_manager.readImage(i)
答案 0 :(得分:0)
我会做长度编码: https://en.wikipedia.org/wiki/Run-length_encoding
您可以使用python的一个实现: https://www.rosettacode.org/wiki/Run-length_encoding#Python
编码:
解码: