Добавил:
У меня есть канал с приколами: t.me/urmipies_garbage Подпишитесь пж-пж!!!! Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
02.09.2026
Размер:
400 Кб
Скачать
1.таблица «sessions» предназначена для сохранения сведений о
сеансах позиционирования, выполненных операторами системы. Она
включает такие поля, как session_id (уникальный идентификатор
сеанса), operator_name (имя оператора, запустившего сеанс),
start_time (время начала сеанса), end_time (время окончания
сеанса), duration_seconds (продолжительность сеанса в секундах), а
также trajectory_le (ссылка на файл формата CSV, содержащий
сохранённую траекторию движения объекта). Эта таблица позволяет
отслеживать историю использования системы и при необходимости
восстанавливать траектории прошлых сеансов. Физическая схема
представлена в таблице 5.2
Рис.5.2 — Физическая модель таблицы sessions
№ПолеТип данныхОграниченияОписание
1session_idINTEGERPRIMARY KEY,
AUTOINCREMENT
2operator_nameTEXTNOT NULLИмя оператора, за-
3start_timeDATETIMENOT NULLВремя начала сеан-
4end_timeDATETIMEВремя окончания
5duration_secondsINTEGERПродолжитель-
6trajectory_leTEXTПуть к файлу CSV с
Уникальный иден-
тификатор сеанса
пустившего сеанс
са
сеанса
ность сеанса в се-
кундах
сохранённой траек-
торией
7calibration_idINTEGERNULLСсылка на актив-
ные параметры ка-
либровки
21
1.таблица «logs» предназначена для хранения информации о
событиях, происходящих в системе. Она включает такие поля,
как log_id (уникальный идентификатор записи), timestamp (время
возникновения события), event_type (тип события: ошибка
синхронизации кадров, потеря соединения с камерой, подключение
нового клиента, успешное сохранение калибровки и т.д.),
event_description (текстовое описание события), а также camera_id
(идентификатор камеры, к которой относится событие, если
применимо). Данная таблица используется администратором для
мониторинга состояния системы и диагностики возможных
неполадок. Физическая схема представлена в таблице 5.3
Рис.5.3 — Физическая модель таблицы logs
№ПолеТип данныхОграниченияОписание
1log_idINTEGERPRIMARY KEY,
AUTOINCREMENT
2timestampDATETIMENOT NULL,Время возникнове-
3event_typeTEXTNOT NULLТип события
4event_descriptionTEXTТекстовое описа-
5session_idINTEGERNULL, FOREIGN
KEY REFERENCES
sessions(session_id)
6camera_idINTEGERCHECK (camera_id
Уникальный иден-
тификатор записи
лога
ния события
ние события
Ссылка на сеанс
(если событие свя-
зано с сеансом)
Идентификатор ка-
IN (1, 2))
Используя эти данные, можно построить единую инфологическую
модель данных (руснок 5.1), отражающую структуру и взаимосвязи элементов
22
меры (если событие
связано с камерой)
системы. Связь между таблицами sessions и calibration не является прямой,
так как параметры калибровки применяются ко всем сеансам до момента их
обновления. При этом таблица logs связана с обеими таблицами через поля
session_id и camera_id для обеспечения возможности фильтрации событий по
конкретному сеансу или камере.
Рисунок5.1 — Физическая диаграмма базы данных
23

Заключение

В ходе выполнения данной курсовой работы была разработана
система определения положения объекта в пространстве по двум
синхронизированным видеопотокам с визуализацией результатов в среде
игрового движка Godot.
На этапе анализа предметной области были рассмотрены основные
принципы стереозрения, методы калибровки камер и триангуляции
координат, а также особенности передачи видеоданных в реальном
времени по протоколам RTP/RTCP. Определены функциональные требования
к системе: приём и синхронизация видеопотоков с двух IP-камер,
калибровка стереопары, ректификация изображений, вычисление карты
диспарантности, триангуляция трёхмерных координат, передача результатов
клиенту визуализации и отображение положения объекта в трёхмерной сцене.
В соответствии с поставленными задачами была спроектирована клиент-
серверная архитектура программного решения с модульной структурой
серверной части. Серверный компонент, реализованный на языке Python,
включает четыре независимых модуля: модуль приёма видеопотоков,
модуль стереообработки, модуль брокера сообщений и модуль хранения
данных. Клиентская часть представлена двумя приложениями: консольным
интерфейсом для администратора и инженера-калибровщика, а также
приложением визуализации на базе Godot для оператора. Выбранная
архитектура обеспечивает слабую связность компонентов и возможность
масштабирования системы путём добавления дополнительных камер или
клиентов визуализации.
В работе определены три роли пользователей системы — администратор,
инженер-калибровщик и оператор — для каждой из которых разработаны
алгоритмы взаимодействия с системой и установлены соответствующие
уровни доступа к данным и функциональным модулям. Администратор
24
обладает полным доступом к базе данных и настройкам сервера,
инженер-калибровщик выполняет калибровку камер и проверку точности
позиционирования, а оператор работает исключительно с клиентским
приложением визуализации, не имея доступа к служебным данным.
Спроектирована структура базы данных SQLite, включающая
таблицы для хранения параметров калибровки, информации о сеансах
позиционирования и системных логов. Разработаны пользовательские
интерфейсы: консольный интерфейс администратора и инженера-
калибровщика, а также трёхмерный интерфейс оператора в среде Godot.
Описаны пользовательские пути и логика переходов между экранами
приложений.
Практическая значимость разработанной системы заключается в
возможности её использования в учебных целях для изучения принципов
стереозрения, методов передачи видеоданных в реальном времени и основ
построения клиент-серверных систем визуализации. Модульная архитектура
позволяет в дальнейшем расширять функциональность системы, например,
добавлять поддержку большего числа камер, реализовывать более сложные
алгоритмы отслеживания объектов или интегрировать систему с другими
программными комплексами.
Таким образом, все поставленные задачи курсовой работы выполнены
в полном объёме, цель работы достигнута. Разработанное программное
решение соответствует заявленным функциональным и нефункциональным
требованиям и может служить основой для дальнейших исследований и
разработок в области систем компьютерного зрения и позиционирования
объектов в пространстве.
25

Список использованных источников

1.Чибуничев А.Г. Фотограмметрия: учебник для вузов. Москва: Изд-во
МИИГАиК, 2022. С. 327.
2.Михайлов А.П., Чибуничев А.Г. Фотограмметрия: учебник для вузов / под
ред. Чибуничев А.Г. Москва: Изд-во МИИГАиК, 2016. С. 294.
3.Никифоров Д.Л., Рысенков К.Н. Определение пространственных
координат объекта по его положению на двух полученных с разных
ракурсов изображениях // Труды МАИ. 2023. № 139.
4.Шепилова К.М. и др. Метод трехмерной реконструкции сцены в
относительных координатах по двум изображениям с неоткалиброванных
видеокамер // Информационно-коммуникационные технологии. 2020. №
3.
5.Безменов В.М., Сафин К.И. Фотограмметрическая засечка. Оценка
точности для произвольного случая съемки // Известия вузов «Геодезия и
аэрофотосъемка». 2019. № 4. Сс. 400–406.
6.Клячин В.А., Кузьменко А.Ю. Алгоритм реконструкции трехмерных
объектов по двум изображениям // Математическая физика и
компьютерное моделирование. 2024. Т. 27, № 2. Сс. 61–70.
7.Коршунов Р.А., Носков В.В., Погорелов В.В. Нецентральная обратная
фотограмметрическая засечка // Известия высших учебных заведений.
Геодезия и аэрофотосъемка. 2018.
8.Безменов В.М. Фотограмметрия: учебное пособие для вузов.
Университетская библиотека онлайн, 2017.
9.Гошин Е.В., Фурсов В.А. Реконструкция 3D-сцен по разноракурсным
изображениям при неизвестных внешних параметрах съёмки //
Компьютерная оптика. 2015. Т. 39, № 5. Сс. 770–780.
10.Гужов В.И. Методы измерения 3D-профиля объектов. Контактные,
триангуляционные системы и методы структурированного освещения.
26
Новосибирск: Новосибирский государственный технический университет,
2015.
27
Соседние файлы в папке лаба (можете лабу за прошлый курс гадаса обрезать и сдать ему это лол)