write chapter_3

This commit is contained in:
2026-04-01 14:00:38 +03:00
parent 26f2fac07b
commit 2561ba1cbf
21 changed files with 557 additions and 18 deletions

View File

@@ -0,0 +1,92 @@
# 3.2 Модель позиционирования
Модель позиционирования описывает положение и ориентацию беспилотного летательного аппарата в трёхмерном пространстве. Класс `Position` (файл `position.py`) инкапсулирует все параметры состояния БПЛА и операции над ними.
\section{Параметры позиции}
Позиция БПЛА характеризуется следующими параметрами:
\begin{itemize}
\item $x$, $y$ — координаты в горизонтальной плоскости (пиксели карты)
\item $z$ — масштаб изображения (уровень приближения)
\item $yaw$ — угол рыскания (поворот вокруг вертикальной оси)
\item $pitch$ — угол тангажа (поворот вокруг поперечной оси)
\item $roll$ — угол крена (поворот вокруг продольной оси)
\end{itemize}
\section{Матрица гомографии}
Матрица гомографии связывает координаты точек на двух изображениях одной и той же плоскости. Для БПЛА гомография описывает преобразование между последовательными кадрами видеопоследовательности.
Матрица гомографии вычисляется как:
\begin{equation}
H = K_{out} \cdot R \cdot T \cdot K_{in}^{-1}
\end{equation}
где $K_{in}$ и $K_{out}$ — матрицы внутренних параметров камеры, $R$ — матрица вращения, $T$ — матрица трансляции.
\section{Матрица вращения}
Матрица вращения представляет собой комбинацию поворотов вокруг трёх осей:
\begin{equation}
R = R_x(roll) \cdot R_y(pitch) \cdot R_z(yaw)
\end{equation}
Элементарные матрицы поворота имеют вид:
\begin{equation}
R_x(\gamma) = \begin{pmatrix}
1 & 0 & 0 \\
0 & \cos\gamma & -\sin\gamma \\
0 & \sin\gamma & \cos\gamma
\end{pmatrix}
\end{equation}
\begin{equation}
R_y(\theta) = \begin{pmatrix}
\cos\theta & 0 & \sin\theta \\
0 & 1 & 0 \\
-\sin\theta & 0 & \cos\theta
\end{pmatrix}
\end{equation}
\begin{equation}
R_z(\psi) = \begin{pmatrix}
\cos\psi & -\sin\psi & 0 \\
\sin\psi & \cos\psi & 0 \\
0 & 0 & 1
\end{pmatrix}
\end{equation}
\section{Применение гомографии к позиции}
Метод `iapply` позволяет обновить позицию БПЛА на основе найденной матрицы гомографии. Алгоритм включает:
\begin{enumerate}
\item Декомпозицию гомографии на компоненты $R$ и $t$
\item Вычисление оптимальной трансформации
\item Обновление координат и углов ориентации
\end{enumerate}
Трансформация координат выполняется с учётом фокусного расстояния камеры:
\begin{equation}
x_{new} = x_{old} - T_x \cdot K_{focus}
\end{equation}
\begin{equation}
y_{new} = y_{old} + T_y \cdot K_{focus}
\end{equation}
\section{Операции над позицией}
Класс `Position` поддерживает арифметические операции:
\begin{itemize}
\item Умножение на скаляр — масштабирование координат
\item Деление на скаляр — обратное масштабирование
\item Копирование — создание полной копии состояния
\end{itemize}
Эти операции используются при интерполяции траекторий и преобразовании координат.

View File

@@ -0,0 +1,5 @@
# 3.2 Модель позиционирования
## Содержание раздела
Описание модели позиционирования находится в файле 3.2_position_model.md