C# Класс SharpMap.Utilities.LeastSquaresTransform

Calculates Affine and Helmert transformation using Least-Squares Regression of input and output points
Показать файл Открыть проект

Открытые методы

Метод Описание
AddInputOutputPoint ( SharpMap input, SharpMap output ) : void

Adds an input and output value pair to the collection

GetAffineTransformation ( ) : double[]

Return an array with the six affine transformation parameters {a,b,c,d,e,f} and the sum of the squares of the residuals (s0)

a,b defines scale vector 1 of coordinate system, d,e scale vector 2. c,f defines offset.

Converting from input (X,Y) to output coordinate system (X',Y') is done by: X' = a*X + b*Y + c, Y' = d*X + e*Y + f

Transformation based on Mikhail "Introduction to Modern Photogrammetry" p. 399-300. Extended to arbitrary number of measurements by M. Nielsen

GetHelmertTransformation ( ) : double[]

Calculates the four helmert transformation parameters {a,b,c,d} and the sum of the squares of the residuals (s0)

a,b defines scale vector 1 of coordinate system, d,e scale vector 2. c,f defines offset.

Converting from input (X,Y) to output coordinate system (X',Y') is done by: X' = a*X + b*Y + c, Y' = -b*X + a*Y + d

This is a transformation initially based on the affine transformation but slightly simpler.

GetInputPoint ( int i ) : SharpMap.Geometries.Point

Gets the input point value at the specified index

GetOutputPoint ( int i ) : SharpMap.Geometries.Point

Gets the output point value at the specified index

LeastSquaresTransform ( ) : System

Initialize Least Squares transformations

RemoveInputOutputPointAt ( int i ) : void

Removes input and output value pair at the specified index

SetInputPointAt ( SharpMap p, int i ) : void

Sets the input point value at the specified index

SetOutputPointAt ( SharpMap p, int i ) : void

Sets the output point value at the specified index

Приватные методы

Метод Описание
CreateMatrix ( int n, int m ) : double[][]

Creates an n x m matrix of doubles

Описание методов

AddInputOutputPoint() публичный Метод

Adds an input and output value pair to the collection
public AddInputOutputPoint ( SharpMap input, SharpMap output ) : void
input SharpMap
output SharpMap
Результат void

GetAffineTransformation() публичный Метод

Return an array with the six affine transformation parameters {a,b,c,d,e,f} and the sum of the squares of the residuals (s0)
a,b defines scale vector 1 of coordinate system, d,e scale vector 2. c,f defines offset.

Converting from input (X,Y) to output coordinate system (X',Y') is done by: X' = a*X + b*Y + c, Y' = d*X + e*Y + f

Transformation based on Mikhail "Introduction to Modern Photogrammetry" p. 399-300. Extended to arbitrary number of measurements by M. Nielsen

public GetAffineTransformation ( ) : double[]
Результат double[]

GetHelmertTransformation() публичный Метод

Calculates the four helmert transformation parameters {a,b,c,d} and the sum of the squares of the residuals (s0)

a,b defines scale vector 1 of coordinate system, d,e scale vector 2. c,f defines offset.

Converting from input (X,Y) to output coordinate system (X',Y') is done by: X' = a*X + b*Y + c, Y' = -b*X + a*Y + d

This is a transformation initially based on the affine transformation but slightly simpler.

public GetHelmertTransformation ( ) : double[]
Результат double[]

GetInputPoint() публичный Метод

Gets the input point value at the specified index
public GetInputPoint ( int i ) : SharpMap.Geometries.Point
i int index
Результат SharpMap.Geometries.Point

GetOutputPoint() публичный Метод

Gets the output point value at the specified index
public GetOutputPoint ( int i ) : SharpMap.Geometries.Point
i int index
Результат SharpMap.Geometries.Point

LeastSquaresTransform() публичный Метод

Initialize Least Squares transformations
public LeastSquaresTransform ( ) : System
Результат System

RemoveInputOutputPointAt() публичный Метод

Removes input and output value pair at the specified index
public RemoveInputOutputPointAt ( int i ) : void
i int
Результат void

SetInputPointAt() публичный Метод

Sets the input point value at the specified index
public SetInputPointAt ( SharpMap p, int i ) : void
p SharpMap Point value
i int index
Результат void

SetOutputPointAt() публичный Метод

Sets the output point value at the specified index
public SetOutputPointAt ( SharpMap p, int i ) : void
p SharpMap Point value
i int index
Результат void