USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::Albedo Class Reference

Albedo normalization. More...

#include <Albedo.h>

Inheritance diagram for Isis::Albedo:
Inheritance graph
Collaboration diagram for Isis::Albedo:
Collaboration graph

Public Member Functions

 Albedo (Pvl &pvl, PhotoModel &pmodel)
 
std::string AlgorithmName () const
 Return normalization algorithm name.
 
void CalcNrmAlbedo (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
 Calculate the albedo normalization.
 
void CalcNrmAlbedo (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base)
 Calculate the normalization albedo using photometric angle information.
 
virtual void SetNormWavelength (double wavelength)
 Set the wavelength parameter.
 

Protected Member Functions

virtual void NormModelAlgorithm (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
 
virtual void NormModelAlgorithm (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base)
 
void SetAlgorithmName (std::string name)
 
PhotoModelGetPhotoModel ()
 
AtmosModelGetAtmosModel ()
 

Protected Attributes

double p_normWavelength
 

Private Member Functions

void SetNormPharef (const double pharef)
 Set parameters needed for albedo normalization.
 
void SetNormIncref (const double incref)
 Set the normalization function parameter.
 
void SetNormEmaref (const double emaref)
 Set the normalization function parameter.
 
void SetNormIncmat (const double incmat)
 Set the normalization function parameter.
 
void SetNormThresh (const double thresh)
 Set the normalization function parameter.
 
void SetNormAlbedo (const double albedo)
 Set the normalization function parameter.
 

Private Attributes

double p_normPsurfref
 
double p_normPharef
 
double p_normIncref
 
double p_normEmaref
 
double p_normThresh
 
double p_normIncmat
 
double p_normAlbedo
 

Detailed Description

Albedo normalization.

Consistent dividing out of photometric model at given an- gles and putting it back in at reference incidence but zero phase. Let the reference incidence default to zero. For Hapke model only, the photometric function multiplied back in will be modified to take out opposition effect. This requires saving the actual value of B0 while temporarily setting it to zero in the common block to compute the over- all normalization.

Author
1998-12-21 Randy Kirk
History:

2007-08-15 Steven Lambright - Refactored code

2008-03-07 Janet Barrett - Changed name of Incmatch parmater to Incmat

2008-06-18 Christopher Austin - Fixed documentation errors

2010-11-10 Janet Barrett - Added reference parameters for phase and emission so user can specify normalization conditions in initialization

2010-11-30 Janet Barrett - Added ability to use photometric angles from the ellipsoid or the DEM

Definition at line 58 of file Albedo.h.

Member Function Documentation

std::string Isis::NormModel::AlgorithmName ( ) const
inlineinherited

Return normalization algorithm name.

Definition at line 59 of file NormModel.h.

void Isis::NormModel::CalcNrmAlbedo ( double  pha,
double  inc,
double  ema,
double  dn,
double &  albedo,
double &  mult,
double &  base 
)
inherited

Calculate the albedo normalization.

Calculate the normalization albedo using photometric angle information.

Parameters
phainput phase angle
incinput incidence angle
emainput emission angle
dninput albedo value

Definition at line 58 of file NormModel.cpp.

Referenced by Isis::Photometry::Compute().

void Isis::NormModel::CalcNrmAlbedo ( double  pha,
double  inc,
double  ema,
double  deminc,
double  demema,
double  dn,
double &  albedo,
double &  mult,
double &  base 
)
inherited

Calculate the normalization albedo using photometric angle information.

Parameters
phainput phase angle
incinput incidence angle for ellipsoid
emainput emission angle for ellipsoid
demincinput incidence angle for dem
dememainput emission angle for dem
dninput albedo value

Definition at line 83 of file NormModel.cpp.

void Isis::Albedo::SetNormAlbedo ( const double  albedo)
private

Set the normalization function parameter.

This is the albedo that the image will be normalized to have. To construct mosaics, the same value of albedo should be used for all images to achieve a uniform result.

Parameters
albedoNormalization function parameter

Definition at line 160 of file Albedo.cpp.

void Isis::Albedo::SetNormEmaref ( const double  emaref)
private

Set the normalization function parameter.

This is the reference emission angle to which the image photometry will be normalized. This parameter is limited to values that are >=0 and <90.

Parameters
emarefNormalization function parameter, default is 0.0

Definition at line 128 of file Albedo.cpp.

References _FILEINFO_, Isis::toString(), and Isis::IException::User.

void Isis::Albedo::SetNormIncmat ( const double  incmat)
private

Set the normalization function parameter.

This parameter is limited to values that are >=0 and <90.

Parameters
incmatNormalization function parameter, default is 0.0

Definition at line 143 of file Albedo.cpp.

References _FILEINFO_, Isis::toString(), and Isis::IException::User.

void Isis::Albedo::SetNormIncref ( const double  incref)
private

Set the normalization function parameter.

This is the reference incidence angle to which the image photometry will be normalized. This parameter is limited to values that are >=0 and <90.

Parameters
increfNormalization function parameter, default is 0.0

Definition at line 110 of file Albedo.cpp.

References _FILEINFO_, Isis::toString(), and Isis::IException::User.

void Isis::Albedo::SetNormPharef ( const double  pharef)
private

Set parameters needed for albedo normalization.

Set the normalization function parameter.

This is the reference phase angle to which the image photometry will be normalized. This parameter is limited to values that are >=0 and <180.

Parameters
pharefNormalization function parameter, default is 0.0

Definition at line 92 of file Albedo.cpp.

References _FILEINFO_, Isis::toString(), and Isis::IException::User.

void Isis::Albedo::SetNormThresh ( const double  thresh)
private

Set the normalization function parameter.

It is used to amplify variations in the input image in regions of small incidence angle where the shading in the input image is weak. This parameter sets the upper limit on the amount of amplification that will be attempted. If it is set too low, low incidence areas of the image may appear bland. If it is set too high, then low incidence areas of the image may contain amplified noise rather than useful shading information.

Parameters
threshNormalization function parameter, default is 30.0

Definition at line 178 of file Albedo.cpp.

void Isis::NormModel::SetNormWavelength ( double  wavelength)
virtualinherited

Set the wavelength parameter.

This value is obtained from the BandBin Center keyword of the image. This must be set by the application.

Definition at line 45 of file NormModel.cpp.

Referenced by Isis::Photometry::SetPhotomWl().


The documentation for this class was generated from the following files: