- Дипломы
- Курсовые
- Рефераты
- Отчеты по практике
- Диссертации
Веб-приложение для получения трехмерной модели объекта по фотоматериалам
Внимание: Акция! Курсовая работа, Реферат или Отчет по практике за 10 рублей!
Только в текущем месяце у Вас есть шанс получить курсовую работу, реферат или отчет по практике за 10 рублей по вашим требованиям и методичке!
Все, что необходимо - это закрепить заявку (внести аванс) за консультацию по написанию предстоящей дипломной работе, ВКР или магистерской диссертации.
Нет ничего страшного, если дипломная работа, магистерская диссертация или диплом ВКР будет защищаться не в этом году.
Вы можете оформить заявку в рамках акции уже сегодня и как только получите задание на дипломную работу, сообщить нам об этом. Оплаченная сумма будет заморожена на необходимый вам период.
В бланке заказа в поле "Дополнительная информация" следует указать "Курсовая, реферат или отчет за 10 рублей"
Не упустите шанс сэкономить несколько тысяч рублей!
Подробности у специалистов нашей компании.
Только в текущем месяце у Вас есть шанс получить курсовую работу, реферат или отчет по практике за 10 рублей по вашим требованиям и методичке!
Все, что необходимо - это закрепить заявку (внести аванс) за консультацию по написанию предстоящей дипломной работе, ВКР или магистерской диссертации.
Нет ничего страшного, если дипломная работа, магистерская диссертация или диплом ВКР будет защищаться не в этом году.
Вы можете оформить заявку в рамках акции уже сегодня и как только получите задание на дипломную работу, сообщить нам об этом. Оплаченная сумма будет заморожена на необходимый вам период.
В бланке заказа в поле "Дополнительная информация" следует указать "Курсовая, реферат или отчет за 10 рублей"
Не упустите шанс сэкономить несколько тысяч рублей!
Подробности у специалистов нашей компании.
Код работы: | K011650 |
Тема: | Веб-приложение для получения трехмерной модели объекта по фотоматериалам |
Содержание
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ (НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ)» (МАИ) Кафедра «Информационные и сетевые технологии» Утверждаю: Заведующий кафедрой _________________________ В.Ю. Павлов «____»________________________ 2017 г. Веб-приложение для получения трехмерной модели объекта по фотоматериалам ПОЯСНИТЕЛЬНАЯ ЗАПИСКА 22315 – 01 81 01 Листов СОГЛАСОВАНО Консультант по специальной части ______________________ / Терновскова В.Б./ «____»_______________________ 201 г. Руководитель дипломного проектирования _____________________ / Терновскова В.Б. / «____»_______________________ 201 г. Нормоконтроль ____________________/ Коновалов К.А./ «____»_______________________ 201 г. Задание принял к исполнению студент группы 3ИВТ-4ДБ-233 ______________________ / Сухопаров И.С./ «____»_______________________ 201 г. 2017г. Аннотация В данной выпускной квалификационной работе бакалавра представлен разработка веб-приложения, предназначенного для автоматизированного построения трехмерной модели по изображениям. Данное приложение помогает пользователям построить трехмерную модель для дальнейшей обработки. Программно-аппаратный комплекс выполнен с использованием среды разработки phpStirm, языков PHP ,python. Разработанный комплекс полностью удовлетворяет поставленной задаче. Пояснительная записка включает в себя две основные части. В специальную часть входит: постановка задачи; обзор существующих решений; выбор программных средств; описание алгоритма; организация данных и диалога; Технические и программные средства Следующая часть пояснительной записки — это результаты работы программы и их оценка в нее входит: объект испытаний; цель испытаний; требования к программе; требования к программной документации; средства и порядок проведения испытаний; состав и параметр технических средств; состав и параметр программных средств; методы испытаний. Оглавление Введение 3 1. Специальная часть 3 1.1. Постановка задачи 3 1.2. Обзор существующих решений 4 1.3. Выбор программных средств 12 1.4. Описание алгоритма 17 1.5 Описание аппаратной части 21 1.6. Организация данных и диалога. 23 1.6 Технические и программные средства 28 2. Результаты работы программы и их оценка 29 2.1 Объект испытаний 29 2.2 Цель испытаний 29 2.3 Требования к программе 29 2.4 Требование к программной документации 29 2.5 Средства и порядок проведения испытаний 30 Технические средства 30 Программные средства 30 2.6 Методы испытаний 30 Заключение 41 Список используемых источников 42 Перечень сокращений 43 Приложение А. Текст программы 44 Приложение Б. Презентационный материал 45 Введения Обычные снимки, как бы ни были они хороши, никогда не дадут возможности наглядно представить себе демонстрируемые объекты, так как показанный на них, например, товар нельзя повернуть и увидеть с обратной стороны. Иное дело — объемные представления объектов — модели, которые позволяют рассмотреть предмет со всех сторон. Такие объемные модели незаменимы для демонстрации товаров, предлагаемых компаниями в интерактивных каталогах продукции, публикуемых на web-сайтах, в Интернет-магазинах или прилагаемых к корпоративным презентациям — здесь модели позволяют покупателю получить наиболее полную информацию о товаре. Не менее часто интерактивные объемные модели применяются в энциклопедиях и обучающих программах, где обеспечивают наглядное представление того или иного предмета, состояния, вещества и т.п. Однако на этом список областей, где применяются 3D-модели, конечно, не исчерпывается, — они необходимы при разработке различных строительных объектов, проведении реставрационных работ, создании новых моделей автомобилей и самолетов и совершенно незаменимы в компьютерных играх и анимациях. Веб-приложение позволяет построить трехмерную модель изображения любому желающему при наличии фотоаппарата и доступа к сети интернет. 1. Специальная часть 1.1. Постановка задачи В рамках данной выпускной квалификационной работы бакалавра разрабатывается Веб-приложение для получения трехмерной модели объекта по фотоматериалам, функционирующий в качестве Веб-приложение для ОС Windows, приложение разрабатывается на языке программирования PHP. Веб-приложение предназначено для автоматического построения трехмерной модели. Приложение должен должно позволять пользователям загружать фотоматериалы и получать ответ. Веб-приложение предназначено для людей желающих построить трехмерную модель для дальнейшего его анализа. 1.2. Обзор существующих решений Приложение разрабатывается для людей желающих получить трехмерную модель по фотоматериалам. Существует несколько программных дающих возможность реконструкции трехмерной сцены. Большинство программ имеют различные недостатки, не позволяющие в полной мере удовлетворить пользователя. Программа нацелена на самостоятельную работу с минимальным участием пользователя в построение трехмерной модели. Исходя из этих целей были сформулированы критерии: бесплатная программа; простой интерфейс; открытый код программы; Рассмотрим некоторые программные средства. 1. Agisoft Photoscan: полная и закрытая система фотограмметрии Позволяет автоматически создавать высококачественные 3D модели объектов на основе цифровых фотографий. Для реконструкции объекта в PhotoScan достаточно загрузить фотографии, никакой дополнительной информации не требуется. Восстановленную текстурированную 3D модель можно сохранить в различных форматах – OBJ, 3DS, PLY, FBX, VRML, COLLADA, U3D, PDF. PhotoScan способен обрабатывать любые фотографии, снятые любым цифровым фотоаппаратом, с любых ракурсов. Программа предоставляет весьма широкую функциональность и разделана на две платные версии: Базовая Создание Облака Точек Создание 3D-Модели Профессиональная Создание Облака Точек Создание 3D-Модели Поддержка Широкоугольных Объективов Поддержка Наземных Контрольных Точек Сетевая Обработка Поддержка Скриптов Python Распознавание Маркеров Геопривязка Классификация Облака Точек Создание Ортофото И ЦМР Достоинства Программы: Широкая функциональность Недостатки Программы: закрытый код программы. требовательна к ресурсам компьютера нет возможности импорта в демонстрационной версии высокая цена: базовая 179$; Профессиональная 3 499$ 2.SCANN3D [Beta] Простая закрытая система построения трехмерной модели на устройствах под управлением операционный системыAndroid. Использует методы фотограмметрии для возможности построения трехмерной модели на смартфонах или планшетах. Получившуюся модель можно использовать в сторонних приложения для дополненной или виртуальной реальности. Достоинства программы: простота в использовании использует встроенную камеру минимальный диалог с пользователем бесплатная возможность экспорт Недостатки программы: закрытый код программы. только на устройствах под android находится в стадии бета-тестирования 3. VisualSFM Приложение для создания 3D реконструкций использующее алгоритм SFM (Structure From Motion), и позволяющее быстро определить, рассчитать и вычислить зависимости уникальных точек на изображениях за счет использования многопоточных параллельных вычислений Достоинства программы: поддерживает windows, mac, linux бесплатная Недостатки программы: закрытый код программы. необходимость стороннего программного обеспечения для полноценной 3D реконструкции требовательна к ресурсам компьютера последнее обновление 2 года назад В таблице 1.1 приведено сравнение рассмотренных программ. Таблица 1.1 – Сравнение существующих решений. Название критерии Agisoft Photoscan: 2.SCANN3D [Beta] VisualSFM Мое приложение Бесплатная - + + + Открытый исходный код - - - + Удобный интерфейс + + + - Поддержка сторонних плагинов + - + - Независимость от ресурсов устройства - - - + Рассмотрев несколько готовых решений, основное назначение которых схоже с той программой, которая разрабатывается в данной работе, можно выделить ряд свойственных им недостатков: большой диалог с пользователм закрытый код программы. При разработке программно-аппаратного комплекса важно учесть перечисленные недостатки и устранить их в процессе разработки данной работы. 1.3. Выбор программных средств На данный момент существует несколько готовых библиотек работающих с изображениям для реконструкции трехмерной сцены. Написанных на следующих языках(С++ иpython, языков программирования (PHP, Ruby, Python, C#) и сред разработок для них (phpstrom, RubyMine, Visual Studio), для написания веб приложений. Поэтому перед тем, как сделать выбор, необходимо проанализировать все преимущества и недостатки наиболее известных языков и сред разработки. Перейдем к обзору преимуществ и недостатков самых популярных языков программирования: C# Главной особенностью языка C# является его ориентированность на платформу Microsoft .NET — создатели C# ставили своей целью предоставление разработчикам естественных средств доступа ко всем возможностям платформы .NET. Видимо, это решение можно считать более или менее вынужденным, так как платформа .NET изначально предлагала значительно большую функциональность, чем любой из существовавших на тот момент языков программирования. Кроме того, создатели С# хотели скрыть от разработчика как можно больше незначительных технических деталей, включая операции по упаковке/распаковке типов, инициализации переменных и сборке мусора. Благодаря этому программист, пишущий на C#, может лучше сконцентрироваться на содержательной части задачи. Python Python—высокоуровневый язык программированияобщего назначения, ориентированный на повышение производительности разработчика и читаемости кода.Синтаксисядра Python минималистичен. В то же времястандартная библиотекавключает большой объём полезных функций. Python поддерживает несколькопарадигм программирования, в том числе структурное, объектно-ориентированное,функциональное,императивное иаспектно-ориентированное. Основные архитектурные черты —динамическая типизация,автоматическое управление памятью, полная интроспекция, механизмобработки исключений, поддержка многопоточныхи удобные высокоуровневыеструктуры данных. Код в Python организовывается в функции иклассы, которые могут объединяться вмодули(они в свою очередь могут быть объединены в пакеты). Эталонной реализацией Python является интерпретаторCPython, поддерживающий большинство активно используемых платформ. Он распространяется подсвободной лицензиейPython Software Foundation License, позволяющей использовать его без ограничений в любых приложениях, включаяпроприетарные. Есть реализации интерпретаторов дляJVM(с возможностьюкомпиляции),MSIL(с возможностьюкомпиляции),LLVMи других. ПроектPyPyпредлагает реализацию Python на самом Python, что уменьшает затраты на изменения языка и постановку экспериментов над новыми возможностями. Python — активно развивающийсяязык программирования, новые версии (с добавлением/изменением языковых свойств) выходят примерно раз в два с половиной года. Вследствие этого и некоторых других причин на Python отсутствуютстандарт ANSI,ISOили другие официальные стандарты, их роль выполняетCPython. Для того чтобы система эффективно выполняла свои функции, необходимо провести комплексную оценку каждого из наиболее подходящих вариантов решения и выбрать наиболее оптимальный вариант. Решение должно соответствовать таким критериям: быстродействие; простота; удобство; функциональность; совместимость. Данные языки программирования имеют такие особенности как: удобная среда разработки; поддержка баз данных; высокопроизводительность компилятора; поддержка объектно-ориентированных средств; наличие дополнительных компонентов; простота языка. Рассмотрев популярные языки программирования, было принято решение, что для данной работы будут использоваться php и python. Выбор обуславливается популярностью языка, его функциональностью и обилием обучающей литературы, так же удобностью разработки графического интерфейса программы на языке C#. Для программирования аппаратной части применяется язык C++, для написания приложения для ПК используется C#. 1.4. Описание алгоритма Для разработки приложения необходимо создание системы взаимосвязанных элементов, выполняющих различные функции, объединенные общим интерфейсом. Основные элементы программного-аппаратного комплекса: интерфейс программы; алгоритм построения трехмерной модели; алгоритм обработки исключительных ситуаций; Схема алгоритма работы программы представлен на рисунке 1.7. После запуске веб-страницы пользователю будет предложен диалог для загрузки фотографий. После того, как фотографии будут выбраны необходимо нажать на кнопку загрузить. После нажатия фотографии будут отгружены на сервер и обработаны алгоритмом. После ожидания пользователю будет предложено скачать файл, либо ошибка о неудачной построении. Полученый файл в формате .ply будет возможно просмотреть в сторонних редакторах например Meshlab. На вход алгоритму должны подавать фотографии в формате .jpg. В противном случае приложение выдаст ошибку что введены не корректные данные. Алгоритм построения трехмерной модели Для построения модели была выбрана библиотека OpenSfM Это библиотека использующая метод Structure from Motion написанная на языке python и базирующаяся на библиотека OpentCV. Библиотека используется в качестве конвейера для реконструкции трехмерной сцены из нескольких изображений. Состоит из базовых модулей (обнаружение пересечений, сопоставление) сфокусированных на построение стабильной и масштабируемой трехмерной сцены. Для передачи фотографий необходимо, чтобы они удовлетворяли следующим требованийм. Описания алгоритма построения трехмерной модели Эпиполярная геометрия.C и C' — оптические центры камер. Если точка P на первом изображении спроектирована в m. Тогда на другом изображении её проекцию нужно искать на прямой l'm. 1.5. Организация данных и диалога. В данной работе, при организации диалога между пользователем и приложением, данные можно разделить на два типа – входные и выходные данные. Входными данными являются набор изображений, загружающихся на сервер, выходные данные – данные получаемые в процессе работы приложения (построенная трехмерная модель, сообщения об ошибках). Рассмотрим эти типы данных более подробно. Входные данные: набор изображений Выходные данные: текстовые сообщения с уведомлением об ошибках; Построенная трехмерная модель 1.6 Технические и программные средства Для функционирования программы необходим сервер, со следующими минимальными техническими параметрами: двух ядерный процессор:2,0 ГГц; ОЗУ:2048 Мб; свободное место на жестком диске: 5 гб Мб; Для доступ к программе необходимо доступ к серверу. По протоколу http Приложение предназначено для функционирования на устройствах имеющих доступ к серверу по протоколу http 2. Результаты работы программы и их оценка 2.1 Объект испытаний Объектом испытаний является Веб-приложение для получения трехмерной модели объекта по фотоматериалам, предназначенный для упрощения построения трехмерных объектов. 2.2 Цель испытаний Целью испытаний является проверка работоспособности приложения, а именно проверка правильности выполнения функций, перечисленных в разделе «Требования к программе» настоящего документа. 2.3 Требования к программе Во время испытаний проверке подлежат следующие функции программы: пр 2.4 Требование к программной документации Спецификация. Программно-аппаратный комплекс «Комптемпус». Техническое задание. Программно-аппаратный комплекс «Комптемпус». Пояснительная записка. Программно-аппаратный комплекс «Комптемпус». Руководство пользователя. 2.5 Средства и порядок проведения испытаний Технические средства Для тестирования программы необходим компьютер, со следующими минимальными техническими параметрами: процессор:0,8 ГГц; ОЗУ:512 Мб; свободное место на жестком диске: 100 Мб; периферийные устройства: SVGA дисплей, манипулятор типа «мышь». Программные средства Персональный компьютер, используемый для проведения испытаний, должен функционировать под управлением операционной системы семейства Windows (версия XP или старше). Также должны быть установлены следующие программные компоненты: .NET Framework 4.0; Microsoft Access Database Engine 2010; 2.6 Методы испытаний Для проведения испытаний программы использовался метод «черного» ящика - этот простой метод может обнаружить в программах важные ошибки. Он выявляет ошибки, которые возникают при реальной эксплуатации. Тестирование по методу "черного ящика" может обнаружить наличие ошибок, не использую знания о внутреннем устройстве программы. Проведение такого тестирования повышает уверенность в том, что приложение надежно и безопасно к непредвиденным входным данным. Тестирование по методу "черного ящика" является важным средством нахождения в программах реальных ошибок. Порядок проведения испытаний: 1) убедиться в наличии заявленных программных средств соответствующих версий; 2) открыть программу; 3) провести испытания. 4) закрыть программу. Заключение Веб-приложение для получения трехмерной модели объекта по фотоматериалам было разработано в соответствии с поставленной задачей в техническом задании. Практическая значимость работы заключается в том, что приложение позволяет построить трехмерную модель для дальнейшего использования. В дальнейшем планируется доработка программы. В планах: расширение функциональности программы, добавления групп пользователей, с возможностью хранить полученные модели, редактировать, удалять. В рамках данной выпускной квалификационной работы бакалавра была подготовлена необходимая документация........................ |
Для получения полной версии работы нажмите на кнопку "Узнать цену"
Узнать цену | Каталог работ |
Похожие работы: