In [1]:
%pylab inline
In [2]:
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import os.path as op
from pprint import pprint as pp
import scipy.stats
import seaborn as sns
import sys
pth = op.abspath("../")
print pth
sys.path.insert(0, pth)
import teigen
import itertools
reload(teigen)
print teigen.__path__
import teigen.tb_vtk
reload (teigen.tb_vtk)
Out[2]:
In [3]:
tg = teigen.tgmain.Teigen()
config = tg.get_default_config()
In [4]:
## Paper figures
def get_paper_config(resolution_mm=0.02, areasize_px=[50, 50, 50]):
areasize_px = np.asarray(areasize_px)
config = tg.get_default_config()
config["generator_id"] = 3
#config["output"]["note"] = run_label + " " + radius_method
gc = config["generators"]["Unconnected tubes"]
gc["element_number"] = 30
gc["radius_distribution_uniform"] = True
gc["radius_distribution_fixed"] = False
gc["orientation_anisotropic"] = False
gc["radius_distribution_mean"] = 0.2
gc["radius_distribution_standard_deviation"] = 0.0
gc["radius_distribution_maximum"] = 3.0
gc["radius_distribution_minimum"] = .3
gc["length_distribution_mean"] = 3.0
gc["length_distribution_standard_deviation"] = .0
gc["volume_fraction"] = 0.5
gc["random_generator_seed"] = 100
gc["orientation_anisotropic"] = False
config["postprocessing"]["gaussian_blur"] = True
config["postprocessing"]["gaussian_filter_sigma_mm"] = 0.04
config["postprocessing"]["measurement_resolution"] = 35
config["postprocessing"]['add_noise'] = False
config["postprocessing"]['noise_exponent'] = 0.
config["postprocessing"]['noise_std'] = 20
config["postprocessing"]['noise_mean'] = 0.
config["postprocessing"]['noise_lambda0'] = 0.02
config["postprocessing"]['noise_lambda1'] = 1.0
config["appearance"]["skip_volume_generation"] = False
config["measurement"]["polygon_radius_selection_method"] = "inscribed"
config['areasampling']["areasize_px"] = areasize_px
config['areasampling']["areasize_mm"] = areasize_px * resolution_mm
config['areasampling']["voxelsize_mm"] = [resolution_mm, resolution_mm, resolution_mm]
# config['filepattern'] = "~/teigen_data/generated_resolution_mm_{seriesn:03d}/data{:06d}.jpg"
return config
In [5]:
config = get_paper_config(resolution_mm=0.02, areasize_px=[50, 50, 50])
config["postprocessing"]['add_noise'] = True
config["postprocessing"]['noise_exponent'] = 0.
config["postprocessing"]['noise_std'] = 20
config["postprocessing"]['noise_mean'] = 0.
config["postprocessing"]['noise_lambda0'] = 0.02
config["postprocessing"]['noise_lambda1'] = 1.0
print config["areasampling"]
tg.update_config(**config)
noise = tg.generate_noise()
plt.imshow(noise[:,:,10], cmap="gray")
plt.colorbar()
Out[5]:
In [6]:
config = get_paper_config(resolution_mm=0.04, areasize_px=[25, 25, 25])
config["postprocessing"]['add_noise'] = True
config["postprocessing"]['noise_exponent'] = 0.
config["postprocessing"]['noise_std'] = 20
config["postprocessing"]['noise_mean'] = 0.
print config["areasampling"]
tg.update_config(**config)
noise = tg.generate_noise()
plt.imshow(noise[:,:,10], cmap="gray")
plt.colorbar()
Out[6]:
In [ ]: