Photo Class Function Manual (T-Z)


UPPER_LEFT

| HOME | BACK |

Purpose

To report x y photo coordinate of the upper left corner of the Photo.

Class

Photo

Usage

{Pt2D} ret  =  object.UPPER_LEFT()

Example:

->pt1 = ph1.upper_left()

->

See also (class function)

upper_right

| HOME | BACK |


UPPER_RIGHT

| HOME | BACK |

Purpose

To report x y photo coordinate of the upper right corner of the Photo.

Class

Photo

Usage

{Pt2D} ret  =  object.UPPER_RIGHT()

Example:

->pt1 = ph1.upper_right()

->

See also (class function)

upper_left

| HOME | BACK |


VAR

| HOME | BACK |

Purpose

To determine the value of the variance of all elements in a Photo.

Class

Photo

Usage

{double} ret  =  object.VAR()

Example:

->x = A.var()

->

See also (class function)

max, min, mean, sd

| HOME | BACK |


VECGCP2RC

| HOME | BACK |

Purpose

To convert from a vector of x y z ground control point coordinates to a vector of row and column numbers.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters), and by 2D transformation using the current IOP (Interior Orientation Parameters).

Class

Photo

Usage

{VecIndx} ret  =  object.VECGCP2RC({VecPt3D} argm1)

argm1 = list of x y z ground coordinates

Example:

->vec_index = ph1.vecgcp2rc(vec_xyz)

->

See also (class function)

vecrc2gcp, vidrc2gcp, vidgcp2rc

| HOME | BACK |


VECGCP2XPYP

| HOME | BACK |

Purpose

To convert from a vector of x y z ground control point coordinates to a vector of x y photo coordinates.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters).

Class

Photo

Usage

{VecPt2D} ret  =  object.VECGCP2XPYP({VecPt3D} argm1)

argm1 = list of x y z ground coordinates

Example:

->vec_xpyp = ph1.vecgcp2xpyp(vec_xyz)

->

See also (class function)

vecxpyp2gcp, vidxpyp2gcp, vidgcp2xpyp

| HOME | BACK |


VECRC2GCP

| HOME | BACK |

Purpose

To convert from a vector of row and column numbers to a vector of x y z ground control point coordinates.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters), and by 2D transformation using the current IOP (Interior Orientation Parameters).  Moreover this function requires a constant ground elevation, at which all light rays intersect the terrain.

Class

Photo

Usage

{VecPt3D} ret  =  object.VECRC2GCP({VecPt2D} argm1, {double} argm2)

argm1 = list of row and column numbers

argm2 = ground elevation   (in ground coordinate system unit)

Example:

->vec_xyz = ph1.vecrc2gcp(vec_rc, 500.5)

->

See also (class function)

vecgcp2rc, vidrc2gcp, vidgcp2rc

| HOME | BACK |


VECRC2XPYP

| HOME | BACK |

Purpose

To convert from a vector of row and column numbers to a vector of x y photo coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Class

Photo

Usage

{VecPt2D} ret  =  object.VECRC2XPYP({VecPt2D} argm1)

argm1 = list of row and column numbers

Example:

->vec_xpyp = ph1.vecrc2xpyp(vec_rc)

->

See also (class function)

vecxpyp2rc, vidrc2xpyp, vidxpyp2rc

| HOME | BACK |


VECRC2XY

| HOME | BACK |

Purpose

To convert from a vector of row and column numbers to a vector of x y image rectangular coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Class

Photo

Usage

{VecPt2D} ret  =  object.VECRC2XY({VecPt2D} argm1)

argm1 = list of row and column numbers

Example:

->vec_xy = ph1.vecrc2xy(vec_rc)

->

See also (class function)

vecxy2rc, vidrc2xy, vidxy2rc

| HOME | BACK |


VECXPYP2GCP

| HOME | BACK |

Purpose

To convert from a vector of x y photo coordinates to a vector of x y z ground control point coordinates.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters), and by 2D transformation using the current IOP (Interior Orientation Parameters).  Moreover this function requires a constant ground elevation, at which all light rays intersect the terrain.

Class

Photo

Usage

{VecPt3D} ret  =  object.VECXPYP2GCP({VecPt2D} argm1, {double} argm2)

argm1 = list of x y photo coordinates

argm2 = ground elevation   (in ground coordinate system unit)

Example:

->vec_xyz = ph1.vecxpyp2gcp(vec_xpyp, 500.5)

->

See also (class function)

vecgcp2xpyp, vidxpyp2gcp, vidgcp2xpyp

| HOME | BACK |


VECXPYP2RC

| HOME | BACK |

Purpose

To convert from a vector of x y photo coordinates to a vector of row and column numbers.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Class

Photo

Usage

{VecIndx} ret  =  object.VECXPYP2RC({VecPt2D} argm1)

argm1 = list of x y photo coordinates

Example:

->vec_index = ph1.vecxpyp2rc(vec_xpyp)

->

See also (class function)

vecrc2xpyp, vidrc2xpyp, vidxpyp2rc

| HOME | BACK |


VECXPYP2XY

| HOME | BACK |

Purpose

To convert from a vector of x y photo coordinates to a vector of x y image rectangular coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Class

Photo

Usage

{VecPt2D} ret  =  object.VECXPYP2XY({VecPt2D} argm1)

argm1 = list of x y photo coordinates

Example:

->vec_xy = ph1.vecxpyp2rc(vec_xpyp)

->

See also (class function)

vecxy2xpyp, vidxy2xpyp, vidxpyp2xy

| HOME | BACK |


VECXY2RC

| HOME | BACK |

Purpose

To convert from a vector of x y image rectangular coordinates to a vector of row and column numbers.  The transformation is done by relationship between x y coordinates of image corner points and no of rows and columns. 

Class

Photo

Usage

{VecIndx} ret  =  object.VECXY2RC({VecPt2D} argm1)

argm1 = list of x y image rectangular coordinates

Example:

->vec_index = ph1.vecxy2rc(vec_xy)

->

See also (class function)

vecrc2xy, vidrc2xy, vidxy2rc

| HOME | BACK |


VECXY2XPYP

| HOME | BACK |

Purpose

To convert from a vector of x y image rectangular coordinates to a vector of x y photo coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Class

Photo

Usage

{VecPt2D} ret  =  object.VECXY2XPYP({VecPt2D} argm1)

argm1 = list of x y image rectangular coordinates

Example:

->vec_xpyp = ph1.vecxy2xpyp(vec_xy)

->

See also (class function)

vecxpyp2xy, vidxy2xpyp, vidxpyp2xy

| HOME | BACK |


VIDGCP2RC

| HOME | BACK |

Purpose

To convert from a vector of x y z ground control point coordinates to a vector of row and column numbers.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters), and by 2D transformation using the current IOP (Interior Orientation Parameters). 

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdIndx} ret  =  object.VIDGCP2RC({VecIdPt3D} argm1)

argm1 = list of x y z ground coordinates with ID and SD

Example:

->vec_index = ph1.vidgcp2rc(vec_xyz)

->

See also (class function)

vecrc2gcp, vecgcp2rc, vidrc2gcp

| HOME | BACK |


VIDGCP2XPYP

| HOME | BACK |

Purpose

To convert from a vector of x y z ground control point coordinates to a vector of row and column numbers.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters).

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdPt2D} ret  =  object.VIDGCP2XPYP({VecIdPt3D} argm1)

argm1 = list of x y z ground coordinates with ID and SD

Example:

->vec_xpyp = ph1.vidgcp2xpyp(vec_xyz)

->

See also (class function)

vecxpyp2gcp, vecgcp2xpyp, vidxpyp2gcp

| HOME | BACK |


VIDRC2GCP

| HOME | BACK |

Purpose

To convert from a vector of row and column numbers to a vector of x y z ground control point coordinates.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters), and by 2D transformation using the current IOP (Interior Orientation Parameters).  Moreover this function requires a constant ground elevation, at which all light rays intersect the terrain.

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdPt3D} ret  =  object.VIDRC2GCP({VecIdPt2D} argm1, {double} argm2)

argm1 = list of row and column numbers with ID and SD

argm2 = ground elevation   (in ground coordinate system unit)

Example:

->vec_xyz = ph1.vidrc2gcp(vec_rc, 500.5)

->

See also (class function)

vecgcp2rc, vecrc2gcp, vidgcp2rc

| HOME | BACK |


VIDRC2XPYP

| HOME | BACK |

Purpose

To convert from a vector of row and column numbers to a vector of x y photo coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdPt2D} ret  =  object.VIDRC2XPYP({VecIdPt2D} argm1)

argm1 = list of row and column numbers with ID and SD

Example:

->vec_xpyp = ph1.vidrc2xpyp(vec_rc)

->

See also (class function)

vecxpyp2rc, vecrc2xpyp, vidxpyp2rc

| HOME | BACK |


VIDRC2XY

| HOME | BACK |

Purpose

To convert from a vector of row and column numbers to a vector of x y image rectangular coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdPt2D} ret  =  object.VIDRC2XY({VecIdPt2D} argm1)

argm1 = list of row and column numbers with ID and SD

Example:

->vec_xy = ph1.vidrc2xy(vec_rc)

->

See also (class function)

vecxy2rc, vecrc2xy, vidxy2rc

| HOME | BACK |


VIDXPYP2GCP

| HOME | BACK |

Purpose

To convert from a vector of x y photo coordinates to a vector of x y z ground control point coordinates.  The transformation is done by collinearity equation using the current EOP (Exterior Orientation Parameters), and by 2D transformation using the current IOP (Interior Orientation Parameters).  Moreover this function requires a constant ground elevation, at which all light rays intersect the terrain.

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdPt3D} ret  =  object.VIDXPYP2GCP({VecIdPt2D} argm1, {double} argm2)

argm1 = list of x y photo coordinates with ID and SD

argm2 = ground elevation   (in ground coordinate system unit)

Example:

->vec_xyz = ph1.vidxpyp2gcp(vec_xpyp, 500.5)

->

See also (class function)

vecgcp2xpyp, vecxpyp2gcp, vidgcp2xpyp

| HOME | BACK |


VIDXPYP2RC

| HOME | BACK |

Purpose

To convert from a vector of x y photo coordinates to a vector of row and column numbers.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdIndx} ret  =  object.VIDXPYP2RC({VecIdPt2D} argm1)

argm1 = list of x y photo coordinates with ID and SD

Example:

->vec_index = ph1.vidxpyp2rc(vec_xpyp)

->

See also (class function)

vecrc2xpyp, vecxpyp2rc, vidrc2xpyp

| HOME | BACK |


VIDXPYP2XY

| HOME | BACK |

Purpose

To convert from a vector of x y photo coordinates to a vector of x y image rectangular coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdPt2D} ret  =  object.VIDXPYP2XY({VecIdPt2D} argm1)

argm1 = list of x y photo coordinates with ID and SD

Example:

->vec_xy = ph1.vidxpyp2rc(vec_xpyp)

->

See also (class function)

vecxy2xpyp, vecxpyp2xy, vidxy2xpyp

| HOME | BACK |


VIDXY2RC

| HOME | BACK |

Purpose

To convert from a vector of x y image rectangular coordinates to a vector of row and column numbers.  The transformation is done by relationship between x y coordinates of image corner points and no of rows and columns. 

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdIndx} ret  =  object.VIDXY2RC({VecIdPt2D} argm1)

argm1 = list of x y image rectangular coordinates with ID and SD

Example:

->vec_index = ph1.vidxy2rc(vec_xy)

->

See also (class function)

vecrc2xy, vecxy2rc, vidrc2xy

| HOME | BACK |


VIDXY2XPYP

| HOME | BACK |

Purpose

To convert from a vector of x y image rectangular coordinates to a vector of x y photo coordinates.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Both input and output coordinates will have ID number.  This function will also determine standard deviation, using the law of error propagation.

Class

Photo

Usage

{VecIdPt2D} ret  =  object.VIDXY2XPYP({VecIdPt2D} argm1)

argm1 = list of x y image rectangular coordinates with ID and SD

Example:

->vec_xy = ph1.vidxpyp2rc(vec_xpyp)

->

See also (class function)

vecxpyp2xy, vecxy2xpyp, vidxpyp2xy

| HOME | BACK |


VLOAD

| HOME | BACK |

Purpose

To virtually load an Image object, saved as Noobeed format.  The document file is read but not the data file.  Unlike the VLOAD function of Matrix and Image, this VLOAD does not open the data file. 

Please note that only a limited set of functions is available for a virtually loaded photo.  Function supported in a vload photo are goget, goset, gosetmat, window, skip, min, max, mean, sd, var, and those function that do not requated data, such as nrow, ncol, rc2xy, xy2rc etc.

Most orientation function such as "EO", "IO", etc., and all coordinate conversion functions, such as "rc2xpyp", "xpyp2gcp", etc., do not require that the photo must be fully loaded.  For example it is possible to virtually loaded a photo and perform all orientation, then save the results by using function "savedoc".  Working by this way can save a lot of memory and also can reduce a lot of computer time used in reading data.

Class

Photo

Usage

{void} object.VLOAD({String} argm1, [{String} argm2])

argm1 = file name for the documentation file (default extension is ".txt")

argm2 = file name for the data file  

        (default file name is same file name as argm1 with an extension ".raw")

Example:

->ph1 = Photo()

->A.vload("my_photo")

photo virtually loaded...

->

See also (class function)

load

| HOME | BACK |


WIDTH

| HOME | BACK |

Purpose

To report the width of the photo image, in photocoordinate system unit.

Class

Photo

Usage

{Image} ret  =  object.WIDTH()

Example:

->ph1_win = ph1.width()

->

See also (class function)

height

| HOME | BACK |


WINDOW

| HOME | BACK |

Purpose

To cut a window out of a Photo.  This function does not perform resample, therefore the result window image is the nearest possible to the required cutting window.  Window corner points are given by photo coordinates.

Class

Photo

Usage

{Image} ret  =  object.WINDOW({double} argm1, {double} argm2, {double} argm3, {double} argm4)

argm1 = x photo coordinate of the lower left corner of the window

argm2 = y photo coordinate of the lower left corner of the window

argm3 = x photo coordinate of the upper right corner of the window

argm4 = y photo coordinate of the upper right corner of the window

Example:

->ph1_win = ph1.window(-10.125, -11.256, 50.50, 50.50)

->

See also (class function)

 

| HOME | BACK |


XPYP2DEM

| HOME | BACK |

Purpose

To compute from  x y photo coordinate to an x y z ground control system coordinate.  This function generates a ray from an xp yp photo coordinate passing through the projection center and intersects the ground surface, defined by DEM (Digital Elevation Model).  The return 3D point is the coordinate,  in ground control system, at the location of the interesection between the ray and the groind.

The computation is done by collinearity equation using the current EOP (Exterior Orientation Parameters). This function requires DEM data described by an Image_flt object.

If the lens distortion flag, earth curvature flag, or refraction flag, is turn on (0=off 1 =on), then lens distortion, earth curvature effect and refraction effect, will be removed from the given photo coordinate prior to feed into the collinearity equation.

Class

Photo

Usage

{Pt3D} ret  =  object.XPYT2GCP({double} argm1, {double} argm2, {Image_flt} argm3)

argm1 = x photo coordinate

argm2 = y photo coordinate

argm3 = DEM (Digital Elevation Model)

Example:

-> my_dem = Image_flt()

-> my_dem.load("DEM")

-> pt_xyz = ph1.xpyp2dem(12.544, 22.986, my_dem)

->

See also (class function)

xpyp2gcp, xpyp2plane

| HOME | BACK |


XPYP2GCP

| HOME | BACK |

Purpose

To compute from  x y photo coordinate to an x y z ground control point coordinate.  The computation is done by collinearity equation using the current EOP (Exterior Orientation Parameters). This function requires a constant ground value, which could be x or y or z coordinate, at which the light ray from the photo intersects the terrain at the particular given ground constrant value.

If the lens distortion flag, earth curvature flag, or refraction flag, is turn on (0=off 1 =on), then lens distortion, earth curvature effect and refraction effect, will be removed from the given photo coordinate prior to feed into the collinearity equation.

Class

Photo

Usage

{Pt3D} ret  =  object.XPYT2GCP({double} argm1, {double} argm2, {double} argm3,[{int} argm4])

argm1 = x photo coordinate

argm2 = y photo coordinate

argm3 = fixed ground coordinate   (in ground coordinate system unit)

argm4 = flag.  Must be 1 or 2 or 3.

        if flag = 1, the given value in argm3 is x coordinate

        if flag = 2, the given value in argm3 is y coordinate

        if flag = 3, the given value in argm3 is z coordinate

  The default value is 3.

Example:

->pt_xyz = ph1.xpyp2gcp(12.544, 22.986, 500.5)

->

See also (class function)

gcp2xpyp

| HOME | BACK |


XPYP2PLANE

| HOME | BACK |

Purpose

To intersect a ray from xp yp coordinate to a plane in the object space.  A plane equation in the object space is defined by

            Z = AX + BY + C

where X Y Z is a point in the plane in the object space.  The coordinate system of the plane equation must be the same as that of ground control points and EOP.

This function uses an initial approximate elevation value of 0, then compute the X Y ground coordinate.  Then check with the plane equation in order to update the elevation.  It keeps iterating until the update to the X Y Z coordinate is less than 0.0001 meters, or the number of iterations reaches the maximum number of iterations, set by command "set max_no_iterate".

To find a plane equation, given a set of 3D points (Pt3D), use external function "fitplane".  See external program and function repository.

If the lens distortion flag, earth curvature flag, or refraction flag, is turn on (0=off 1 =on), then lens distortion, earth curvature effect and refraction effect, will be removed from the given photo coordinate prior to feed into the collinearity equation

Class

Photo

Usage

{Pt3D} ret  =  object.XPYT2PLANE({double} argm1, {double} argm2, {double} argm3, {double} argm4, {double} argm5)

argm1 = x photo coordinate

argm2 = y photo coordinate

argm3 = value of coefficient A in the plane equation

argm4 = value of coefficient B in the plane equation

argm5 = value of coefficient C in the plane equation

Example:

->A = call fitplane(Vec_point_3d)

->pt_xyz = ph1.xpyp2plane(12.544, 22.986, A(0,0), A(1,0), A(2,0))

->

See also (class function)

xpyp2gcp

| HOME | BACK |


XPYP2RC

| HOME | BACK |

Purpose

To convert from an x y photo coordinate to a row and column number.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Class

Photo

Usage

{Index} ret  =  object.XPYP2RC({double} argm1, {double} argm2)

argm1 = x photo coordinate

argm2 = y photo coordinate

Example:

->ind1 = ph1.xpyp2rc(12.544, 22.986)

->

See also (class function)

rc2xpyp

| HOME | BACK |


XPYP2XY

| HOME | BACK |

Purpose

To convert from an x y photo coordinate to an x y image rectangular coordinate.  The transformation is done by  2D transformation using the current IOP (Interior Orientation Parameters). 

Class

Photo

Usage

{Pt2D} ret  =  object.XPYP2XY({double} argm1, {double} argm2)

argm1 = x photo coordinate

argm2 = y photo coordinate

Example:

->pt_xy = ph1.xpyp2xy(12.544, 22.986)

->

See also (class function)

xy2xpyp

| HOME | BACK |


XY2RC

| HOME | BACK |

Purpose

To convert from an x y image rectangular coordinate to  row and column index number. 

Class

Photo

Usage

{Index} ret  =  object.XY2RC({double} argm1, {double} argm2)

argm1 = x image rectangular coordinate

argm2 = y image rectangular coordinate

Example:

->ind1 = ph1.xy2rc(12.544, 22.986)

->

See also (class function)

rc2xy

| HOME | BACK |


XY2XPYP

| HOME | BACK |

Purpose

To convert from an x y image rectangular coordinate to  x y photo coordinate. 

Class

Photo

Usage

{Pt2D} ret  =  object.XY2XPYP({double} argm1, {double} argm2)

argm1 = x image rectangular coordinate

argm2 = y image rectangular coordinate

Example:

->pt_xpyp = ph1.xy2xpyp(12.544, 22.986)

->

See also (class function)

xpyp2xy

| HOME | BACK |