3.3.3. pci.api.mathmodel module¶
This module has classes that represent math models for describing the relationship between image space and ground space, and the operations that can be performed with them.
- class pci.api.mathmodel.MathModel¶
Bases:
instance
The math model for an image is the set of coefficients and equations that describes the relationship between image space (column/row) and ground space (Longitude/Latitude/Height, Easting/Northing/Height, X/Y/Z, etc.).
Most
MathModel
types cannot be created directly in python, and can only be read from a file usingpci.api.datasource.MathmodelDataset
.- property cols¶
The number of columns in the raster.
- property crs¶
The
pci.api.cts.CRS
coordinate system of the mathmodel.
- property downsample_factor¶
The downsample factor for the raster.
- ground_to_image((MathModel)self, (float)x, (float)y, (float)height) tuple : ¶
Project from ground space to image space. Given ground point (x, y, height),return a two-element tuple of (col, row) in image space. If ground_to_image fails, an empty tuple is returned.
- image_to_ground((MathModel)self, (float)col, (float)row, (float)height) tuple : ¶
Project from image space to ground space. Given image point (col, row) and ground height height, return a two-element tuple of (x, y) in ground space. If image_to_ground fails, an empty tuple is returned.
- property is_height_dependent¶
True if the height parameter affects the
image_to_ground()
andground_to_image()
methods, False otherwise. In other words, True if the model is 3D, and False otherwise.
- property max_valid_height¶
The maximum valid height for this model if it has been defined, None otherwise.
- property min_valid_height¶
The minimum valid height for this model if it has been defined, None otherwise.
- property model_name¶
A short string describing the type of math model.
- property model_type¶
The
MathModelType
of this math model.
- property rows¶
The number of rows in the raster.
- class pci.api.mathmodel.RpcMathModel((object)arg1, (float)line_off, (float)sample_off, (float)lat_off, (float)lon_off, (float)height_off, (float)line_scale, (float)sample_scale, (float)lat_scale, (float)lon_scale, (float)height_scale, (VecDouble)line_num_coeffs, (VecDouble)line_den_coeffs, (VecDouble)samp_num_coeffs, (VecDouble)samp_den_coeffs, (CRS)crs[, (object)raster_dimensions=None[, (string_)sensor_id=''[, (bool)is_vendor=False]]])¶
Bases:
MathModel
Encapsulates the RPC Math Model, a representation of image geometry that is based on cubic rational polynomials in latitude, longitude, and height.
- property cols¶
The number of columns in the raster.
- property crs¶
The
pci.api.cts.CRS
coordinate system of the mathmodel.
- property downsample_factor¶
The downsample factor for the raster.
- ground_to_image((MathModel)self, (float)x, (float)y, (float)height) tuple : ¶
Project from ground space to image space. Given ground point (x, y, height),return a two-element tuple of (col, row) in image space. If ground_to_image fails, an empty tuple is returned.
- property height_off¶
height offset
- property height_scale¶
height scale
- image_to_ground((MathModel)self, (float)col, (float)row, (float)height) tuple : ¶
Project from image space to ground space. Given image point (col, row) and ground height height, return a two-element tuple of (x, y) in ground space. If image_to_ground fails, an empty tuple is returned.
- property is_height_dependent¶
True if the height parameter affects the
image_to_ground()
andground_to_image()
methods, False otherwise. In other words, True if the model is 3D, and False otherwise.
- property is_vendor¶
True if the model is from a vendor, False if computed.
- property lat_off¶
latitude offset
- property lat_scale¶
latitude scale
- property line_den_coeffs¶
line denominator coefficients
- property line_num_coeffs¶
line numerator coefficients
- property line_off¶
line offset
- property line_scale¶
line scale
- property lon_off¶
longitude offset
- property lon_scale¶
longitude scale
- property max_valid_height¶
The maximum valid height for this model if it has been defined, None otherwise.
- property min_valid_height¶
The minimum valid height for this model if it has been defined, None otherwise.
- property model_name¶
A short string describing the type of math model.
- property model_type¶
The
MathModelType
of this math model.
- property raster_dimensions¶
A tuple representing the number of columns and rows in the raster.
- property rows¶
The number of rows in the raster.
- property samp_den_coeffs¶
sample denominator coefficients
- property samp_num_coeffs¶
sample numerator coefficients
- property sample_off¶
sample offset
- property sample_scale¶
sample scale
- property sensor_id¶
The sensor name associated with this model. The sensor name typically describes the imaging system used to collect the image. The value must not contain any white space, or it can cause an error.
- class pci.api.mathmodel.MathModelType¶
Bases:
enum
Specifies the type of math model.
MODEL_RPC refers to a rational function (RPC) model.
MODEL_AIRPHOTO refers to a frame-based airphoto model.
MODEL_RADAR refers to a radar model.
MODEL_AFFINE refers to an affine 2D model.
MODEL_SPB refers to a satellite pushbroom model.
MODEL_ADS refers to an ADS airborne pushbroom model.
MODEL_POLY refers to a polynomial math model.
MODEL_TPS refers to a thin plate spline math model.
MODEL_SRS refers to a spacecraft rolling-shutter model.
MODEL_SGS refers to a spacecraft global-shutter model.
MODEL_SRIT refers to a Toutin model.
MODEL_LRS refers to a low resolution satellite orbit model.
MODEL_CUSTOM refers to a model not defined by other enum values.
- MODEL_RPC = pci.api.mathmodel.MathModelType.MODEL_RPC¶
- MODEL_AIRPHOTO = pci.api.mathmodel.MathModelType.MODEL_AIRPHOTO¶
- MODEL_RADAR = pci.api.mathmodel.MathModelType.MODEL_RADAR¶
- MODEL_AFFINE = pci.api.mathmodel.MathModelType.MODEL_AFFINE¶
- MODEL_SPB = pci.api.mathmodel.MathModelType.MODEL_SPB¶
- MODEL_ADS = pci.api.mathmodel.MathModelType.MODEL_ADS¶
- MODEL_POLY = pci.api.mathmodel.MathModelType.MODEL_POLY¶
- MODEL_TPS = pci.api.mathmodel.MathModelType.MODEL_TPS¶
- MODEL_SRS = pci.api.mathmodel.MathModelType.MODEL_SRS¶
- MODEL_SGS = pci.api.mathmodel.MathModelType.MODEL_SGS¶
- MODEL_SRIT = pci.api.mathmodel.MathModelType.MODEL_SRIT¶
- MODEL_LRS = pci.api.mathmodel.MathModelType.MODEL_LRS¶
- MODEL_CUSTOM = pci.api.mathmodel.MathModelType.MODEL_CUSTOM¶
- class pci.api.mathmodel.EphemerisData((object)arg1)¶
Bases:
instance
The
EphemerisData
class contains information about satellite position, satellite altitude, IFOV, projection, sensor, orbit, and more.New in version 2016.
Construct a new Ephemeris object
- property angular_spd¶
Angular speed (N) [rad/s]
- property arg_perigee¶
Argument Perigee (OMEGA-MIN) [rad]
- property asc_nodeLong¶
Ascending node Longitude (OMEGA-MAJ) [rad]
- property corner_available¶
True if the corner coordinates are available, False otherwise
- property descending¶
True indicates descending, ascending otherwise
- property earth_satelliteDist¶
Earth Satellite distance (RHO) [m]
- property eccentricity¶
Eccentricity (ES)
- property field_of_view¶
Scanner field of view (ALPHA) [rad]
- property height¶
Height (H0) [m]
- property ht_centre¶
Centre Height [m]
- property ht_ll¶
LL Height [m]
- property ht_lr¶
LR Height [m]
- property ht_ul¶
UL Height [m]
- property ht_ur¶
UR Height [m]
- property image_record_length¶
Image record length
- property image_taken_date¶
Date of image taken
- property inclination¶
Inclination (I) [rad]
- property lat_centre¶
Latitude of center (PHI) [rad]
- property lat_centre_deg¶
Scene centre latitude [deg]
- property lat_ll¶
Lower left latitude [deg]
- property lat_lr¶
Lower right latitude [deg]
- property lat_ul¶
Upper left latitude [deg]
- property lat_ur¶
Upper right latitude [deg]
- property line_res¶
Pixel resolution in y direction [m]
- property long_centre¶
Longitude of center (LAMBDA) [rad]
- property long_centre_deg¶
Scene centre longitude [deg]
- property long_ll¶
Lower left longitude [deg]
- property long_lr¶
Lower right longitude [deg]
- property long_ul¶
Upper left longitude [deg]
- property long_ur¶
Upper right longitude [deg]
- property mapunits¶
Map units
- property nominal_pitch¶
Nominal pitch (T) [rad]
- property num_col_centre¶
Number of column at center (C0)
- property num_line_centre¶
Number of line at center (L0)
- property num_spot_1b_coeff¶
Number of coefficients for SPOT 1B
- property number_byte_perPixel¶
Number of bytes per pixel
- property number_imageLine¶
Number of image line
- property number_prefix_bytes¶
Number of prefix bytes
- property number_sample_perLine¶
Number of samples per line
- property number_suffix_bytes¶
Number of suffix bytes
- property pixel_res¶
Pixel resolution in x direction [m]
- property radial_speed¶
Radial speed (DELIRO) [m/s]
- property satellite_arg¶
Satellite argument (WP) [rad]
- property satellite_description¶
Satellite description
- property satellite_sensor¶
Satellite sensor
- property scene_id¶
Scene ID
- property sensor_num¶
Satellite sensor number
- property spot_1b_coeff¶
SPOT 1B coefficients
- property spot_1b_segment_coeff¶
SPOT 1B segment coefficients
- property supplemental_segment_exist¶
True if supplemental segment is available, False otherwise
- property time_atCentre¶
Time at centre (T0) [sec]
- property time_interval¶
Time interval (K) [s]
- property utm_x_centre¶
UTM Easting of scene centre
- property utm_xll¶
UTM Easting of lower left corner
- property utm_xlr¶
UTM Easting of lower right corner
- property utm_xul¶
UTM Easting of upper left corner
- property utm_xur¶
UTM Easting of upper right corner
- property utm_y_centre¶
UTM Northing of scene centre
- property utm_yll¶
UTM Northing of lower left corner
- property utm_ylr¶
UTM Northing of lower right corner
- property utm_yul¶
UTM Northing of upper left corner
- property utm_yur¶
UTM Northing of upper right corner
- property view_angle¶
Viewing angle (BETA) [rad]
- property x_centre¶
Pixel coordinate of scene centre
- property xll¶
Pixel coordinate of lower left corner
- property xlr¶
Pixel coordinate of lower right corner
- property xul¶
Pixel coordinate of upper left corner
- property xur¶
Pixel coordinate of upper right corner
- property y_centre¶
Line coordinate of scene centre
- property yll¶
Line coordinate of lower left corner
- property ylr¶
Line coordinate of lower right corner
- property yul¶
Line coordinate of upper left corner
- property yur¶
Line coordinate of upper right corner
- pci.api.mathmodel.rpc_txt_to_math_model((string_)rpc_txt_filename) RpcMathModel : ¶
Create an
pci.api.mathmodel.RpcMathModel
by reading the contents of the RPC TXT file in the parameter rpc_txt_filename. An RPC TXT file is a common file format for storing Rational Polynomial Coefficients (RPCs). Often RPC TXT files are named with the following patterns: *_rpc.txt or *.rpbNew in version CATALYST: 2.2