Добавил:
У меня есть канал с приколами: t.me/urmipies_garbage Подпишитесь пж-пж!!!! Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Я получил 5 за защиту кста.docx
Скачиваний:
0
Добавлен:
02.09.2026
Размер:
352 Кб
Скачать

1.4 Геометрическая модель простой триангуляции в стереосистеме

Рассмотрим две камеры с центрами проекции с точками фокуса F1 и F2, разнесенными на базисное расстояние B. Точка P в трехмерном пространстве проецируется на левую камеру в позицию p1 (u1, v₁) и на правую — в p2 (u2, v2). Прямые F1P и F2P, проходящие через центры камер и точку P, пересекаются в этой точке. [19]. Схема представлена на рисунке 1.1

Математически задача сводится к решению системы линейных уравнений. Введем систему координат: левая камера — начало отсчета, ось X направлена вправо вдоль базиса, ось Z — вперед (глубина), ось Y — вверх. Правая камера смещена на вектор t = (B, 0, 0). Для простоты полагаем, что оптические оси параллельны (ректифицированная конфигурация).

Проекция точки P(X, Y, Z) на левую камеру задается формулами:

u1 = f · X / Z + cx, (1.2)

v1 = f · Y / Z + cy, (1.3)

где f — фокусное расстояние в пикселях, (cx, cy) — координаты главной точки (обычно центр матрицы: cx = ширина/2, cy = высота/2). Для правой камеры:

u2 = f · (X − B) / Z + cx, (1.4)

v2 = f · Y / Z + cy. (1.5)

Вычтем из первого уравнения для u₁ второе для u₂:

u1 − u2 = f · B / Z. (1.6)

Диспаратность d определяется как d = u₁ − u₂ (горизонтальное смещение соответствующей точки между левым и правым изображением). Отсюда глубина:

Z = f · B / d. (1.7)

Координаты X и Y находятся из первых двух уравнений:

X = (u₁ − cx) · Z / f, (1.8)

Y = (v₁ − cy) · Z / f. (1.9)

Эти формулы составляют математическую модель простой триангуляции — метод, впервые формализованный Лонге-Хиггинсом [12].

Рисунок 1.1 – Геометрическая схема системы

Калибровка стереопары выполняется по методу Цая (Zhang, 2000) с использованием шахматного паттерна (checkerboard). OpenCV предоставляет функции calibrateCamera и stereoCalibrate. Типичная последовательность:

  1. захват 20–30 изображений паттерна (плоская доска с чередующимися черными и белыми квадратами 10×7) под разными углами;

  2. автоматическое обнаружение угловых точек (findChessboardCorners);

  3. вычисление внутренних параметров каждой камеры (матрица K, коэффициенты дисторсии D);

  4. вычисление внешних параметров (матрица поворота R, вектор трансляции T);

  5. построение карт ректификации (функция stereoRectify, инициализация функций undistortMap) для быстрого преобразования кадров при обработке потока.

Альтернативный подход — использование фундаментальной матрицы F (8-точечный алгоритм Лонге-Хиггинса) [16] для некалиброванной стереосистемы. Матрица F связывает координаты соответствующих точек уравнением:

p₂ᵀ F p₁ = 0, (1.10)

где p₁, p₂ — однородные координаты точек в левом и правом изображениях. Однако метод применим лишь для относительной реконструкции (восстановление формы с точностью до масштаба), что недостаточно для задачи абсолютного позиционирования. Калиброванный подход, описанный выше, обеспечивает точность.

1.5 Особенности получения и синхронизации видеопотоков в ip-сетях

IP-камеры, в отличие от аналоговых систем (PAL / NTSC с композитным видеовыходом) и цифровых интерфейсов машинного зрения (GigE Vision, USB3 Vision), передают видеопоток в виде пакетов по стеку TCP/IP [13]. Типичный протокол — RTSP (Real Time Streaming Protocol, RFC 2326) для управления сессией и RTP (Real-time Transport Protocol, RFC 3550) для доставки медиаданных [5]. Эта архитектура обеспечивает гибкость развертывания — камеры подключаются к существующей локальной сети предприятия, но вносит вызовы синхронизации, задержек и потери пакетов.

Структура RTSP-сессии:

  • клиент (сервер обработки видео) отправляет запрос OPTIONS на URL rtsp://192.168.1.64:554/stream1;

  • камера отвечает списком поддерживаемых команд (DESCRIBE, SETUP, PLAY, TEARDOWN);

  • клиент запрашивает DESCRIBE — получает SDP (Session Description Protocol) с параметрами потока (кодек H.264, разрешение 1920×1080, частота 25 FPS);

  • команда SETUP инициирует RTP-канал (указывается пара портов UDP для RTP-данных и RTCP-управления);

  • команда PLAY запускает передачу видео; кадры поступают как RTP-пакеты с заголовками, содержащими временные метки (timestamp).

Для синхронизации изображений используется синхронизация на сервере

  1. каждый кадр маркируется временной меткой RTCP SR (Sender Report), содержащей NTP-время (Network Time Protocol, точность ~1 мс в LAN);

  2. сервер буферизует кадры обеих камер;

  3. алгоритм выбирает пары кадров с минимальной разницей временных меток (оптимально ≤5 мс);

  4. при превышении порога кадр с более ранней меткой отбрасывается.

Соседние файлы в предмете Дипломная работа (подготовка и защита)