Skip to content

Commit

Permalink
Add correct priors on camera properties (mu, sigma, gain)
Browse files Browse the repository at this point in the history
  • Loading branch information
ahillsley committed Jan 22, 2024
1 parent 8b79a0f commit 3f6b486
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 2 deletions.
6 changes: 6 additions & 0 deletions blinx/hyper_parameters.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,8 @@ def __init__(
g_scale=None,
mu_loc=None,
mu_scale=None,
sigma_loc=None,
sigma_scale=None
):
self.min_y = min_y
self.num_guesses = num_guesses
Expand All @@ -112,6 +114,8 @@ def __init__(
self.g_scale = g_scale
self.mu_loc = mu_loc
self.mu_scale = mu_scale
self.sigma_loc = sigma_loc
self.sigma_scale = sigma_scale

if sum([r_e_loc is None, r_e_scale is None]) == 1:
raise RuntimeError("Both r_e_loc and r_e_scale need to be provided")
Expand All @@ -121,3 +125,5 @@ def __init__(
raise RuntimeError("Both g_loc and g_scale need to be provided")
if sum([mu_loc is None, mu_scale is None]) == 1:
raise RuntimeError("Both mu_loc and mu_scale need to be provided")
if sum([sigma_loc is None, sigma_scale is None]) == 1:
raise RuntimeError("Both sigma_loc and sigma_scale need to be provided")
9 changes: 7 additions & 2 deletions blinx/trace_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,16 @@ def log_p_parameters(parameters, hyper_parameters):
)
if hyper_parameters.g_loc is not None:
log_p += jnp.log(
norm.pdf(parameters.g, hyper_parameters.g_loc, hyper_parameters.g_scale)
norm.pdf(parameters.gain, hyper_parameters.g_loc, hyper_parameters.g_scale)
)
if hyper_parameters.mu_loc is not None:
log_p += jnp.log(
norm.pdf(parameters.mu, hyper_parameters.mu_loc, hyper_parameters.mu_scale)
norm.pdf(parameters.mu_ro, hyper_parameters.mu_loc, hyper_parameters.mu_scale)
)

if hyper_parameters.sigma_loc is not None:
log_p += jnp.log(
norm.pdf(parameters.sigma_ro, hyper_parameters.sigma_loc, hyper_parameters.sigma_scale)
)

# sigma is a uniform prior distribution and will add a constant to all models --> we leave it out
Expand Down

0 comments on commit 3f6b486

Please sign in to comment.