Illumination Model is a parametric function that transforms pixel values extracted from a patch to account for illumination changes g(I, a): R(N) x R(K) -> R(N)
More...
|
| IlluminationModel (const ILMParams *ilm_params) |
|
virtual int | getStateSize () const =0 |
|
virtual void | initialize (double *p) |
|
virtual void | apply (double *g, const double *I, const double *p)=0 |
|
virtual void | invert (double *inv_p, const double *p)=0 |
|
virtual void | update (double *new_p, const double *old_p, const double *dp)=0 |
|
virtual void | cmptParamJacobian (double *df_dp, const double *df_dg, const double *I, const double *p)=0 |
| ILM Jacobians.
|
|
virtual void | cmptPixJacobian (double *df_dI, const double *df_dg, const double *I, const double *p)=0 |
|
virtual void | cmptParamHessian (double *d2f_dp2, const double *d2f_dg2, const double *df_dg, const double *I, const double *p)=0 |
| NULL/nullptr for d2f_dg2 implies that the corresponding matrix is identity; conversely a non negative return imples an identity d2f_dI2 scaled by the return value; these conventions are necessary to avoid unnecessary and very expensive matrix multiplications;. More...
|
|
virtual void | cmptPixHessian (double *d2f_dI2, const double *d2f_dg2, const double *df_dg, const double *I, const double *p)=0 |
| d2f_dI2 = dg_dI^T*d2f_dg2*dg_dI + df_dg*d2g_dI2
|
|
virtual void | cmptCrossHessian (double *d2f_dp_dI, const double *d2f_dg2, const double *df_dg, const double *I, const double *p)=0 |
| d2f_dp_dI = dg_dp^T*d2f_dg2*dg_dI + df_dg*d2g_dpdI
|
|
virtual void | cmptParamHessian (double *d2f_dp2, const double *d2f_dg2, const double *I, const double *p)=0 |
| First order ILM hessians. More...
|
|
virtual void | cmptPixHessian (double *d2f_dI2, const double *d2f_dg2, const double *I, const double *p)=0 |
| d2f_dI2 = dg_dI^T*d2f_dg2*dg_dI
|
|
virtual void | cmptCrossHessian (double *d2f_dp_dI, const double *d2f_dg2, const double *I, const double *p)=0 |
| d2f_dp_dI = dg_dp^T*d2f_dg2*dg_dI
|
|
virtual void | setPixHessType (PixHessType _d2f_dg2_type) |
|
virtual PixHessType | getPixHessType ()=0 |
|
virtual void | parseSamplerSigma (VectorXd &out_sigma, const VectorXd &in_sigma)=0 |
|
virtual void | parseSamplerMean (VectorXd &out_mean, const VectorXd &in_mean)=0 |
|
Illumination Model is a parametric function that transforms pixel values extracted from a patch to account for illumination changes g(I, a): R(N) x R(K) -> R(N)
virtual void IlluminationModel::cmptParamHessian |
( |
double * |
d2f_dp2, |
|
|
const double * |
d2f_dg2, |
|
|
const double * |
df_dg, |
|
|
const double * |
I, |
|
|
const double * |
p |
|
) |
| |
|
pure virtual |
NULL/nullptr for d2f_dg2 implies that the corresponding matrix is identity; conversely a non negative return imples an identity d2f_dI2 scaled by the return value; these conventions are necessary to avoid unnecessary and very expensive matrix multiplications;.
Second order ILM hessiansd2f_dp2 = dg_dp^T*d2f_dg2*dg_dp + df_dg*d2g_dp2
Implemented in PGB, RBF, and GB.