Конформное преобразование: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Строка 66: Строка 66:


<math>\begin{array}{lcl}
<math>\begin{array}{lcl}
a_0 & = & \bar{X} - a_1 \bar{x} + b_1 \bar{y} \\
a_0 & = & X_c - a_1 x_c + b_1 y_c \\
b_0 & = & \bar{Y} - b_1 \bar{x} - a_1 \bar{y}
b_0 & = & Y_c - b_1 x_c - a_1 y_c
\end{array}</math>
\end{array}</math>



Версия от 12:19, 9 марта 2013


Конформное преобразование на плоскости широко используется в геодезии при создании местных координатных систем на небольшие территории, ограниченные размерами населённого пункта.

Введение

Следующие формулы связывают координаты точек x, y, заданные в местной системе координат (МСК), и координаты X, Y, заданные в государственной системе координат (ГСК):

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle \begin{array}{lcl} X & = & X_0 + m \big[ (x - x_0) \cos \theta - (y - y_0) \sin \theta \big] \\ Y & = & Y_0 + m \big[ (x - x_0) \sin \theta + (y - y_0) \cos \theta \big] \end{array}}

где m — масштабный множитель, θ — угол разворота, X0, Y0, x0, y0 — координаты одного из геодезических пунктов в ГСК и МСК, как правило. Этот набор параметров называется «ключ».

Исходный материал для определения ключа — пары координат пунктов геодезической сети, полученные из независимого уравнивания одних и тех же измерений в МСК и в ГСК. В зависимости от класса пунктам (вернее, соответствующим парам уравнений) назначаются веса p.

Алгоритм нахождения параметров

Конформное преобразование представляется следующей математической моделью:

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle \begin{array}{lcl} X' & = & a_0 + a_1 x - b_1 y \\ Y' & = & b_0 + b_1 x + a_1 y \end{array}}

Определению подлежат четыре параметра: a0, b0, a1, b1,.

Очевидно, конформное преобразование является частным случаем аффинного.

Шаг 1: вычисление взвешенных средних

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle x_c = \frac{\sum\limits_{i=1}^n p_i x_i}{\sum\limits_{i=1}^n p_i} \quad y_c = \frac{\sum\limits_{i=1}^n p_i y_i}{\sum\limits_{i=1}^n p_i} \quad X_c = \frac{\sum\limits_{i=1}^n p_i X_i}{\sum\limits_{i=1}^n p_i} \quad Y_c = \frac{\sum\limits_{i=1}^n p_i Y_i}{\sum\limits_{i=1}^n p_i} }

Шаг 2: перенос осей в центр масс

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle \Delta x_i = x_i - x_c \quad \Delta y_i = y_i - y_c \quad \Delta X_i = X_i - X_c \quad \Delta Y_i = Y_i - Y_c }

Шаг 3: вычисление a1 и b1

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle S_1 = \sum\limits_{i=1}^n p_i \Delta X_i \Delta x_i} Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle S_2 = \sum\limits_{i=1}^n p_i \Delta Y_i \Delta y_i}
Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle S_3 = \sum\limits_{i=1}^n p_i \Delta Y_i \Delta x_i} Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle S_4 = \sum\limits_{i=1}^n p_i \Delta X_i \Delta y_i}
Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle S_5 = \sum\limits_{i=1}^n p_i \left( \Delta x_i^2 + \Delta y_i^2 \right)}
Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle a_1 = \frac{S_1 + S_2}{S_5}} Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle b_1 = \frac{S_3 - S_4}{S_5}}

Шаг 4: вычисление a0 и b0

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle \begin{array}{lcl} a_0 & = & X_c - a_1 x_c + b_1 y_c \\ b_0 & = & Y_c - b_1 x_c - a_1 y_c \end{array}}

Шаг 5: вычисление невязок

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle v_{xi} = X_i - X_i' \quad v_{yi} = Y_i - Y_i' }

Невязки позволяют выявить точки, плохо укладывающиеся в полученную модель. Классическая процедура удаляет такие «отлетающие» точки, после чего вычисление параметров повторяется без них. Робастные процедуры переназначают веса уравнениям в соответствии с невязками, и повторное вычисление повторяется с полным набором точек при том, что «отлетающие» влияют на результат незначительно.

Кроме того, невязки необходимы для оценки точности измерений и результатов.

Шаг 6: вычисление ключа

Вычислим масштабный множитель и угол разворота:

Невозможно разобрать выражение (SVG (MathML можно включить с помощью плагина для браузера): Недопустимый ответ («Math extension cannot connect to Restbase.») от сервера «https://wikimedia.org/api/rest_v1/»:): {\displaystyle m = \sqrt{a_1^2 + b_1^2} \qquad \theta = \operatorname{arc\,tg} \frac{b_1}{a_1} }

Выберем i-й пункт с малыми невязками по возможности в середине массива точек. Его координаты в обеих системах Xi, Yi, xi, yi становятся параметрами X0, Y0, x0, y0.

Пример вычисления параметров

Даны координаты четырёх пунктов:

i xi yi Xi Yi pi
1 1334.71 285.94 83477.64 87377.60 1.0
2 563.67 -5197.34 82557.14 81916.51 1.0
3 4444.27 1153.79 86610.19 88160.39 1.0
4 -252.07 2881.90 81962.05 90016.34 1.0
p = 4.0
i pixi piyi piXi piYi
1 1334.71 285.94 83477.64 87377.60
2 563.67 -5197.34 82557.14 81916.51
3 4444.27 1153.79 86610.19 88160.39
4 -252.07 2881.90 81962.05 90016.34
∑ = 6090.58 -875.71 334607.02 347470.84

Взвешенные средние:

xc yc Xc Yc
1522.645 -218.9275 83651.755 86867.71