示例#1
0
def CT(load_path, dset, sc, ang_freq, Exp_bin, bin_param, nTrain, nTD, nVal,
       nVD, bpath):
    dataset = ddf.load_and_preprocess_real_data(load_path, dset, sc)
    meta = ddf.load_meta(load_path + dset + '/', sc)
    pix_size = meta['pix_size']
    src_rad = meta['s2o']
    det_rad = meta['o2d']

    data_obj = ddf.real_data(dataset,
                             pix_size,
                             src_rad,
                             det_rad,
                             ang_freq,
                             zoom=False)

    CT_obj = ddf.CCB_CT(data_obj)
    CT_obj.init_algo()
    spf_space, Exp_op = ddf.support_functions.ExpOp_builder(
        bin_param, CT_obj.filter_space, interp=Exp_bin)
    # Create the FDK binned operator
    #    CT_obj.FDK_bin_nn = CT_obj.FDK_op * Exp_op

    # Create the NN-FDK object
    CT_obj.NNFDK = nn.NNFDK_class(CT_obj,
                                  nTrain,
                                  nTD,
                                  nVal,
                                  nVD,
                                  Exp_bin,
                                  Exp_op,
                                  bin_param,
                                  dset=dset,
                                  base_path=bpath)
    CT_obj.rec_methods += [CT_obj.NNFDK]
    return CT_obj
示例#2
0
def CT(load_path, dset, sc, ang_freq):
    dataset = ddf.load_and_preprocess_real_data(load_path, dset, sc)
    meta = ddf.load_meta(load_path + dset + '/', sc)
    pix_size = meta['pix_size']
    src_rad = meta['s2o']
    det_rad = meta['o2d']
    
    data_obj = ddf.real_data(dataset, pix_size, src_rad, det_rad, ang_freq,
                 zoom=False)

    CT_obj = ddf.CCB_CT(data_obj)
    CT_obj.init_algo()
    return CT_obj
示例#3
0
def CT(load_path, dset, sc, ang_freq, Exp_bin, bin_param, offset):
    dataset = ddf.load_and_preprocess_real_data(load_path, dset, sc)
    meta = ddf.load_meta(load_path + dset + '/', sc)
    pix_size = meta['pix_size']
    src_rad = meta['s2o']
    det_rad = meta['o2d']

    data_obj = ddf.real_data(dataset,
                             pix_size,
                             src_rad,
                             det_rad,
                             ang_freq,
                             zoom=True,
                             offset=offset)

    CT_obj = ddf.CCB_CT(data_obj)
    CT_obj.init_algo()
    CT_obj.init_DDF_FDK()
    return CT_obj
示例#4
0
    freq = 2 * np.arange(len(filt)) / (rs_detu)
    filt = filt * (np.cos(freq * np.pi / 2)**2) / 2 / w_detu
    #    filt = filt / 2 / w_detu
    return filt


# %%
path = '/bigstore/lagerwer/data/FleXray/pomegranate1_02MAR/'
#path = '/export/scratch2/lagerwer/data/FleXray/walnuts_10MAY/walnut_01/'
dset = 'noisy'
#dset2 = 'good'
pd = 'processed_data/'
sc = 1
ang_freq = 1
redo = False
dataset = ddf.load_and_preprocess_real_data(path, dset, sc, redo=redo)
meta = ddf.load_meta(path + dset + '/', sc)

pix_size = meta['pix_size']
src_rad = meta['s2o']
det_rad = meta['o2d']
#dataset = {'g': }

# Specifics for the expansion operator
Exp_bin = 'linear'
bin_param = 2

# %% Create a test phantom
# Create a data object
t2 = time.time()
offset = 1.26 / 360 * 2 * np.pi
示例#5
0
def load_and_preprocess(path, dset, sc, redo):
    dataset = ddf.load_and_preprocess_real_data(path, dset, sc, redo=redo)
    meta = ddf.load_meta(path + dset + '/', sc)
    return dataset, meta