Почему размер дампа рассола больше размера исходного набора данных изображения? - PullRequest
0 голосов
/ 13 января 2020

Набор данных изображений содержит приблизительно 70 000 изображений. Я пытался создать из них 6 маринованных файлов. Поэтому каждый файл дампа рассылки содержит около 11519 предварительно обработанных изображений. Размер папки с изображениями на диске составляет примерно 2,5G . Однако каждый файл маринада генерируется с размером 6.45G .

Всего 6,45 * 6 = 38,7 Г !!

Это ожидаемое поведение или я что-то не так делаю? Я использовал следующий скрипт для генерации маринованных файлов.

import os
import pickle
import numpy as np
from PIL import Image

n = 11519
images = []
DATADIR = r"path/to/images"

def data_preprocessing(samples, img_size):
    img_width, img_height, channels = img_size, img_size, 3
    image_list = [np.array((Image.open(os.path.join(DATADIR, filename)).convert('RGB')).resize((img_width, img_height), Image.ANTIALIAS)) for filename in samples]
    images = np.asarray(image_list).astype('float32') / 255.0
    ds_samples = np.reshape(images, (len(samples), img_width, img_height, channels))
    return ds_samples


def divide_chunks(samples, n): 
    # looping till length samples 
    for i in range(0, len(samples), n):  
        yield samples[i:i + n] 

# Appending files from directory to list
for file in (os.listdir(DATADIR)):
    images.append(file)

# Creating parts
sub_samples = list(divide_chunks(images, n)) 

# Saving pickle files
for chunk in range(len(sub_samples)):
  outfile = open("sample_{}.pkl".format(chunk), 'wb')
  pickle.dump(data_preprocessing(sub_samples[chunk], 224), outfile, protocol=4)
  outfile.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...