--- a +++ b/generate_luna_histograms.py @@ -0,0 +1,52 @@ +import cPickle as pickle +import string +import sys +import time +from itertools import izip +import numpy as np +from datetime import datetime, timedelta +import utils +import logger +import buffering +from configuration import config, set_configuration +import pathfinder +import utils_plots +import data_iterators +import data_transforms + +import matplotlib +matplotlib.use('Agg') +import matplotlib.pyplot as plt + + + +train_valid_ids = utils.load_pkl(pathfinder.LUNA_VALIDATION_SPLIT_PATH) +train_pids, valid_pids = train_valid_ids['train'], train_valid_ids['valid'] + +all_pids = train_pids + valid_pids + +data_iterator = data_iterators.LunaSimpleDataGenerator(data_path=pathfinder.LUNA_DATA_PATH, patient_ids=all_pids) + +histograms = {} +# bins = np.arange(-960,1700,40) +# avg_histogram = np.zeros((bins.shape[0]-1), dtype=np.int64) +# use buffering.buffered_gen_threaded() +for idx, (x, pid) in enumerate(data_iterator.generate()): + print idx, 'pid', pid + # if (idx == 10): + # break + histograms[pid]= data_transforms.get_rescale_params_hist_eq(x) + + +#plot avg histogram +# width = 0.7 * (bins[1] - bins[0]) +# center = (bins[:-1] + bins[1:]) / 2 +# plt.bar(center, avg_histogram, align='center', width=width) +# plt.savefig('dsb_histogram_avg.jpg') +# plt.clf() + + +pickle.dump(histograms, open( "luna_rescale_params_hist_eq.pkl", "wb" ) ) + + +