USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::Albedo Class Reference

Albedo normalization. More...

#include <Albedo.h>

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

List of all members.

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
History:
2008-03-07 Janet Barrett - Changed name of Incmatch parmater to Incmat
History:
2008-06-18 Christopher Austin - Fixed documentation errors
History:
2010-11-10 Janet Barrett - Added reference parameters for phase and emission so user can specify normalization conditions in initialization
History:
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 [inline, inherited]

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) [virtual, inherited]

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: