The Flutter Shutter Code Optimizer
Functions
code_comparison.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

double MSE_snapshot_of_velocity_integrand (double velocity, double tilde_deltat, double xi)
 This function computes the integrand of equation (20).
double MSE_snapshot_of_velocity (double velocity, double tilde_deltat)
 This function computes the MSE of a snapshot for a given velocity. This is equation (20) up to a 1 factor.
double MSE_flutter_of_velocity_integrand (double *code, int code_length, double velocity, double tilde_deltat, double xi)
 This function computes the integrand of equation (21).
double MSE_flutter_of_velocity (double *code, int code_length, double velocity, double tilde_deltat)
 This function computes the MSE of flutter shutter for a given velocity. This is equation (21) up to a 1 factor.
double abs_hat_alpha (double *code, int code_length, double xi, double deltat)
 Given a code compute the modulus of the Fourier transform of the Flutter-Shutter function, see equation (2).
double gain_in_terms_of_RMSE_at_velocity_v (double *code, int code_length, double tilde_deltat, double velocity, double deltat)
 This function implements equation (22).
double probability_density (double velocity, int flag_motion_model, double s)
 Given a velocity velocity, the motion model and its parameters the function computes the probability. Used onfy for velocityisualization with the R(velocity) function, to display the probability density of the motion mode.
void average_gain_in_terms_of_RMSE (double *code, int code_length, double tilde_deltat_star, int flag_motion_model, double motion_model_parameter, double deltat, int num_plot_points, double *gain_of_v_equation_22, double *average_gain_equation_23)
 This function implements equation (23)
void std_dev_gain_in_terms_of_RMSE (int flag_motion_model, double motion_model_parameter, int num_plot_points, double *gain_of_v_equation_22, double *average_gain_equation_23, double *std_dev_gain_equation_24)
 This function implements equation (24).

Function Documentation

double abs_hat_alpha ( double *  code,
int  code_length,
double  xi,
double  deltat 
)

Given a code compute the modulus of the Fourier transform of the Flutter-Shutter function, see equation (2).

Parameters:
double*code : array of doubles where code[k] contains the ;
intcode_length : length of the code;
doublexi : frequency;
doubledeltat : the temporal sampling of the flutter shutter function;
Returns:
| ()| see equation (2).

Gives back the modulus of the Fourier transform, see equation (2)

Gives back the modulus of the Fourier transform, see equation (2)

Definition at line 225 of file code_comparison.cpp.

void average_gain_in_terms_of_RMSE ( double *  code,
int  code_length,
double  tilde_deltat_star,
int  flag_motion_model,
double  motion_model_parameter,
double  deltat,
int  num_plot_points,
double *  gain_of_v_equation_22,
double *  average_gain_equation_23 
)

This function implements equation (23)

Parameters:
double*code : array of doubles where code[k] contains the
intcode_length : length of the code L;
doubletilde_deltat_star : the optimal exposure time for the snapshot
intflag_motion_model : motion model selection -0 for truncated Gaussian of std-develocity s; -1 For uniform of range s;
doublemotion_model_parameter : motion model parameter;
doubledeltat : the temporal sampling of the flutter shutter function;
intnum_plot_point : the lengt of output array for plot;
double*gain_of_v_equation_22 : will contain G(v), see equation (22);
double*_average_gain_equation_23 : will contain equation (23);
Returns:
void.
Parameters:
double*code : array of doubles where code[k] contains the
intcode_length : length of the code L;
doubletilde_deltat_star : the optimal exposure time for the snapshot
intflag_motion_model : motion model selection -0 for truncated Gaussian of std-develocity s; -1 For uniform of range s;
doublemotion_model_parameter : motion model parameter;
doubledeltat : the of the numerical flutter shutter;
intnum_plot_point : the lengt of output array for plot;
double*gain_of_v_equation_22 : will contain G(v), see equation (22);
double*_average_gain_equation_23 : will contain equation (23);
Returns:
void.

Initialization.

Computation of equation (23).

Initialization.

Computation of equation (23).

Definition at line 340 of file code_comparison.cpp.

double gain_in_terms_of_RMSE_at_velocity_v ( double *  code,
int  code_length,
double  tilde_deltat,
double  velocity,
double  deltat 
)

This function implements equation (22).

Parameters:
double*code : array of doubles where code[k] contains the
intcode_length : length of the code L;
doubletilde_deltat : the of the snapshot (best snapshot on average);
doublevelocity : velocity;
doubledeltat : the temporal sampling of the flutter shutter function;
Returns:
G(v), see equation (22).

Definition at line 270 of file code_comparison.cpp.

double MSE_flutter_of_velocity ( double *  code,
int  code_length,
double  velocity,
double  deltat 
)

This function computes the MSE of flutter shutter for a given velocity. This is equation (21) up to a 1 factor.

double MSE_flutter_of_velocity(double* code, int code_length,double velocity, double tilde_deltat)

Parameters:
double*code : array of doubles where code[k] contains the
intcode_length : length of the code L;
doublevelocity : the velocity;
doubledeltat : the temporal sampling of the flutter shutter function;
Returns:
The MSE of the flutter at velcity velocity. See equation (21). The 1 multiplicative factor is irrelevant, see equation (22).

Initalization.

Initalization.

Definition at line 153 of file code_comparison.cpp.

double MSE_flutter_of_velocity_integrand ( double *  code,
int  code_length,
double  velocity,
double  deltat,
double  xi 
)

This function computes the integrand of equation (21).

double MSE_flutter_of_velocity_integrand(double* code, int code_length, double velocity, double tilde_deltat, double xi)

Parameters:
double*code : array of doubles where code[k] contains the
intcode_length : length of the code L;
doublevelocity : the velocity;
doubledeltat : the temporal sampling of the flutter shutter function;
doulexi: the frequency;
Returns:
The integrand of equation (21).

Step1 compute | ( v)|

Step2 : compute ||||_{l2}^2

Step1 compute | ( v)|

Step2 : compute ||||_{l2}^2

Definition at line 194 of file code_comparison.cpp.

double MSE_snapshot_of_velocity ( double  velocity,
double  tilde_deltat 
)

This function computes the MSE of a snapshot for a given velocity. This is equation (20) up to a 1 factor.

double MSE_snapshot_of_velocity(double velocity,double tilde_deltat)

Parameters:
doublevelocity : the velocity;
doubletilde_deltat: the exposure time of the snapshot;
Returns:
The MSE of the snapshot at velcity velocity. See equation (20). The 1 multiplicative factor is irrelevant, see equation (22).

Initalization.

Initalization.

Definition at line 79 of file code_comparison.cpp.

double MSE_snapshot_of_velocity_integrand ( double  velocity,
double  tilde_deltat,
double  xi 
)

This function computes the integrand of equation (20).

double MSE_snapshot_of_velocity_integrand(double velocity, double tilde_deltat, double xi)

Parameters:
doublevelocity : the velocity;
doubletilde_deltat: the exposure time of the snapshot;
doulexi: the frequency;
Returns:
The integrand of equation (20).

Definition at line 117 of file code_comparison.cpp.

double probability_density ( double  velocity,
int  flag_motion_model,
double  motion_model_parameter 
)

Given a velocity velocity, the motion model and its parameters the function computes the probability. Used onfy for velocityisualization with the R(velocity) function, to display the probability density of the motion mode.

double probability_density(double velocity, int flag_motion_model, double motion_model_parameter)

Parameters:
doublevelocity : the velocity;
intflag_motion_model : motion model selection -0 for Gaussian motion model -1 For uniform motion model
doublemotion_model_parameter : motion model parameter;
Returns:
(velocity).

Definition at line 297 of file code_comparison.cpp.

void std_dev_gain_in_terms_of_RMSE ( int  flag_motion_model,
double  motion_model_parameter,
int  num_plot_points,
double *  gain_of_v_equation_22,
double *  average_gain_equation_23,
double *  std_dev_gain_equation_24 
)

This function implements equation (24).

Parameters:
double*code : array of doubles where code[k] contains the
intcode_length : length of the code L;
doubletilde_deltat_star : the optimal exposure time for the snapshot
intflag_motion_model : motion model selection -0 for truncated Gaussian of std-develocity s; -1 For uniform of range s;
doublemotion_model_parameter : motion model parameter;
doubledeltat : the of the numerical flutter shutter;
intnum_plot_point : the lengt of output array for plot;
double*gain_of_v_equation_22 : contains G(v), see equation (22);
double*_average_gain_equation_23 : contains equation (23);
double*std_dev_gain_equation_24 : will contains equation (24).
Returns:
void.

Initialization.

Computation of equation (24), knowing equations (22) and (23)

Initialization.

Computation of equation (24), knowing equations (22) and (23)

Definition at line 431 of file code_comparison.cpp.

 All Files Functions Defines