cacao  Release 0.1.03-dev
Compute And Control For Adaptive Optics
statistic.c File Reference

statistical tools module More...

#include <stdint.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <gsl/gsl_randist.h>
#include "CommandLineInterface/CLIcore.h"
#include "00CORE/00CORE.h"
#include "COREMOD_memory/COREMOD_memory.h"
#include "statistic/statistic.h"
Include dependency graph for statistic.c:

Data Structures

struct  BIRCHCF
 

Macros

#define MODULE_SHORTNAME_DEFAULT   ""
 
#define MODULE_DESCRIPTION   "Statistics functions and tools"
 
#define MODULE_APPLICATION   "milk"
 

Functions

CLI bindings
errno_t statistic_putphnoise_cli ()
 
errno_t statistic_putgaussnoise_cli ()
 
Module initialization
static errno_t init_module_CLI ()
 
STATISTIC functions
double ran1 ()
 Uniform distribution from 0 to 1. More...
 
double gauss ()
 Normal distribution, mean=0, sigma=1. More...
 
double gauss_trc ()
 truncated (-1/+1) sigma = 1 mean = 0 gaussian probability More...
 
long poisson (double mu)
 Poisson distribution. More...
 
double cfits_gammaln (double xx)
 
double fast_poisson (double mu)
 
double better_poisson (double mu)
 
long put_poisson_noise (const char *ID_in_name, const char *ID_out_name)
 Apply Poisson noise to image. More...
 
long put_gauss_noise (const char *ID_in_name, const char *ID_out_name, double ampl)
 Apply Gaussian noise to image. More...
 
long statistic_BIRCH_clustering (__attribute__((unused)) const char *IDin_name, __attribute__((unused)) int B, __attribute__((unused)) double epsilon, __attribute__((unused)) const char *IDout_name)
 

Detailed Description

statistical tools module

Random numbers, photon noise

Macro Definition Documentation

◆ MODULE_APPLICATION

#define MODULE_APPLICATION   "milk"

◆ MODULE_DESCRIPTION

#define MODULE_DESCRIPTION   "Statistics functions and tools"

◆ MODULE_SHORTNAME_DEFAULT

#define MODULE_SHORTNAME_DEFAULT   ""

Function Documentation

◆ better_poisson()

double better_poisson ( double  mu)

◆ cfits_gammaln()

double cfits_gammaln ( double  xx)

◆ fast_poisson()

double fast_poisson ( double  mu)

◆ gauss()

double gauss ( )

Normal distribution, mean=0, sigma=1.

◆ gauss_trc()

double gauss_trc ( )

truncated (-1/+1) sigma = 1 mean = 0 gaussian probability

◆ init_module_CLI()

static errno_t init_module_CLI ( )
static

◆ poisson()

long poisson ( double  mu)

Poisson distribution.

Parameters
muDistribution mean

◆ put_gauss_noise()

long put_gauss_noise ( const char *  ID_in_name,
const char *  ID_out_name,
double  ampl 
)

Apply Gaussian noise to image.

◆ put_poisson_noise()

long put_poisson_noise ( const char *  ID_in_name,
const char *  ID_out_name 
)

Apply Poisson noise to image.

◆ ran1()

double ran1 ( )

Uniform distribution from 0 to 1.

◆ statistic_BIRCH_clustering()

long statistic_BIRCH_clustering ( __attribute__((unused)) const char *  IDin_name,
__attribute__((unused)) int  B,
__attribute__((unused)) double  epsilon,
__attribute__((unused)) const char *  IDout_name 
)

Purpose

Apply BIRCH clustering to images

Overview

Images input is 3D array, one image per slice
Euclidian distance adopted
B is the number of branches

epsilon is the maximum distance (Euclidian)

Details

◆ statistic_putgaussnoise_cli()

errno_t statistic_putgaussnoise_cli ( )

◆ statistic_putphnoise_cli()

errno_t statistic_putphnoise_cli ( )