Способ конвертации преобразования перевода 2D-изображений в формат 3D
METHOD OF CONVERTING 2D IMAGES TO 3D FORMAT

ОБЛАСТЬ ТЕХНИКИ
Изобретение относится к способам и системам распознавания графических образов. Система и способ характеризуются разбиением изображения на области; выделением текстовых и нетекстовых областей; распознаванием объектов; предварительным назначением по крайней мере одной графической конструкции из наименьших единиц изображения в качестве типового элемента для составления распознаваемого объекта; предварительным представлением изображения этого объекта в виде совокупности типовых элементов одного типа с их взаимными пространственно-параметрическими соотношениями. Обеспечивается увеличение точности и помехозащищенности распознавания объектов изображения.
УРОВЕНЬ ТЕХНИКИ
Известно техническое решение по патенту US 6912293 от 28.06.2005, МПК G06T 15/20, G06T 17/10, G06T 3/00, в котором раскрыты система и методы доступа к двумерным цифровым изображениям и 3D-геометрическим моделям по сети (предпочтительно в Интернете), а также преобразование и компоновка этих носителей вместе с 2D цифровым изображением и 3D-геометрическими модельными носителями, полученными другими средствами, в улучшенное 20-изображение и 3D-модель представлены представления для визуализации и моделирования виртуальной реальности. Цифровые изображения и модели из сети и других источников включаются и обрабатываются через интерактивный графический интерфейс пользователя. Фотограмметрический механизм обработки мультимедиа автоматически извлекает виртуальный датчик (камеру) и геометрические модели из изображений. Извлеченная информация используется процессором реконструкции для автоматического и реалистичного создания изображений и моделей. Система рендеринга обеспечивает визуализацию и моделирование построенных сред в режиме реального времени. Раскрывается модель обработки клиент-сервер для развертывания системы обработки медиа-данных по сети.
Недостатком известного решения является то, что современные технические средства, создающие геометрические модели, формируют многомегабайстные файлы, которые обуславливают повышенные требования к вычислительным ресурсам систем, которые используют для визуализации таких моделей, особенно в режиме реального времени.
Предлагаемые система и способ имеют преимущество по сравнению с известными аналогами, поскольку алгоритм создания трехмерной модели обеспечивает эффективную оптимизацию модели и полученные легковесные трехмерные модели могут быть использованы в мобильных системах, планшетах или телефонах служб для оперативной ориентации на местности.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Технический результат изобретения заключается в обеспечении распознавании геометрических фигур методом контурного анализа формы объекта.
Изобретение обеспечивает перевод любых плоских изображений объектов любой сложности, в том числе комплексов административных и правительственных зданий, электростанций, нефтеперерабатывающих заводов, атомных электростанций и других, в формат 3D с нанесением текстовой информации и всех необходимых знаков, в том числе пожарных, согласно паспорта объекта, возможности мгновенной загрузки 3D изображений этих объектов в смартфоны, планшеты и персональные компьютеры (ПК) с возможностью вращать их целиком или поэтажно вокруг любых осей. Объем используемой памяти электронных устройств настолько мал, то есть занимает всего десятки килобайт даже для сложных комплексов зданий, что может использоваться очень быстро на любом этапе как при подготовке по возможному сценарию развития событий. Структуры гражданской обороны и борьбы с чрезвычайными ситуациями, нуждаются в технологиях обеспечения выполнения своей работы с наименьшими потерями ресурсов и времени. Сотрудники и командиры подразделений на своих планшетах или смартфонах могут заранее или даже по дороге на объект изучить его со всеми входами и выходами, местами установки пожарного оборудования, особенностями внутреннего расположения и материалов лестниц, перегородок и перекрытий, посчитать время преодоления расстояния от точки до точки внутри объекта.
Метод компьютерного моделирования, который используется для сопоставления и отслеживания реального мира как трехмерной модели. Способы и системы, описанные здесь, используют аппаратно-программные средства для сжатия в реальном времени живого видеопотока удаленной сцены с целью просмотра этой сцены. После повторной визуализации в виде 3D модели на устройстве зрителя, живую удаленную сцену можно просматривать с помощью гарнитуры виртуальной реальности, как если бы зритель находился в удаленном месте. Следует иметь в виду, что в одном варианте осуществления описанная реализации технология может использоваться для захвата сцены (включая объекты в сцене) первого местоположения в качестве одной или нескольких трехмерных моделей, переноса 3D модели (моделей) в реальном времени на второе местоположение, которое удалено от первого местоположения, а затем визуализирует просмотры изображений 3D модели с другой перспективы просмотра, используя элемента просмотра (например, цифровой экран, камеру или средство просмотра изображений, гарнитуру) во втором местоположении. В некоторых случаях второе место может быть оборудовано гарнитурой VR или другим подобным оборудованием для просмотра 3D модели первого местоположения с любого угла обзора. Даже когда существенные изменения в сцене в первом месте, системы и способы, описанные здесь, преимущественно передают только изменяющиеся части сцены и / или объекты в сцене во втором месте.
Следует понимать, что описанные здесь методы обеспечивают преимущество практического копирования сцены и объектов в первом месте, хранения 3D моделей сцены и объектов в памяти устройства зрителя во второе местоположение, а затем визуализации сцены и объектов в реальном времени (например, как видеопоток) из «виртуальной» сцены.
Другое преимущество, обеспечиваемое описанными способами и системами, состоит в том, что устройство обработки изображений в первом местоположении требует только передачи изменений в положении объектов и местоположения датчика относительно сцены для каждого кадра, а не всей сцены для каждого кадра, чтобы зритель во втором местоположении мог перемещать объекты и местоположение датчика в виртуальной сцене, как если бы удаленный наблюдатель находился в первом месте. Поскольку передача изменений местоположения и местоположения датчика включает гораздо меньше данных, чем отправка всей сцены. Этот способ обеспечивает существенное сжатие видеопотока, переданного из первого местоположения во второе местоположение.
В одном из вариантов реализации система генерирует видеопоток сцены, которая включает один или несколько объектов. Система содержит сенсорное устройство, которое захватывает множество изображений одного или нескольких объектов в сцене. Система дополнительно содержит серверное вычислительное устройство, соединенное с сенсорным устройством, которое для каждого изображения генерирует начальную трехмерную модель для каждого из нескольких объектов в сцене с использованием изображения. Серверное вычислительное устройство для каждого изображения генерирует исходную 3D модель сцены с использованием изображения. Серверное вычислительное устройство для каждого изображения захватывает информацию о местоположении сенсорного устройства относительно одного или нескольких объектов в сцене, когда сенсорное устройство перемещается относительно сцены. Система дополнительно содержит устройство просмотра, соединенное с серверным вычислительным устройством. Устройство просмотра принимает от серверного вычислительного устройства по меньшей мере одну из исходных трехмерных моделей одного или нескольких объектов, или исходную трехмерную модель сцены и информацию о позиции сенсорного устройства. Устройство просмотра захватывает информацию о представлении перспективы просмотра устройства просмотра относительно сцены с объектами в сцене, когда вектор просмотра устройства просмотра перемещается относительно сцены. Устройство просмотра отображает видеопоток объектов или сцены на элемент отображения устройства просмотра с использованием полученных начальных трехмерных моделей и информации о позиции сенсорного устройства или информацию о позиции вектора просмотра устройства просмотра.
В одном из вариантов реализации способ генерации сцены, включает один или несколько объектов. Сенсорное устройство захватывает множество изображений объектов в сцене. Серверное вычислительное устройство, соединенное с сенсорным устройством, для каждого изображения генерирует начальную трехмерную модель для каждого из нескольких объектов в сцене с использованием изображения. Серверное вычислительное устройство для каждого изображения генерирует исходную 3D модель сцены с использованием изображения. Серверное вычислительное устройство для каждого изображения захватывает информацию о местоположении сенсорного устройства относительно сцены или объектов в сцене, когда сенсорное устройство перемещается относительно сцены. Устройство просмотра, подсоединенное к серверному вычислительному устройству, принимает трехмерные модели одного или нескольких объектов или исходную трехмерную модель сцены и информацию о местоположении сенсорного устройства с сервера вычислительное устройство. Устройство просмотра захватывает информацию о представлении перспективы просмотра устройства просмотра относительно сцены или объектов в сцене, когда вектор просмотра устройства просмотра перемещается относительно сцены. Устройство просмотра отображает сцену из одного или нескольких объектов на элемент отображения устройства просмотра с использованием полученных начальных трехмерных моделей и информации о позиции сенсорного устройства или информации о позиции вектора просмотра устройства просмотра.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 схематически отображает логику построения последовательности границ с применением цепного кода Фримана.
Фиг. 2 отображает список математических выражений шаблонов, используемых для поиска объектов.
Фиг. 3 отображает примерный набор примитивов 3D поверхностей для сопоставления соответствия формулам, расположение которых выявляет анализ изображений.
Фиг. 4 представляет пример вычислительного устройства, в котором может быть воплощено изобретение.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Способ предусматривает оцифровку изображения внутренних и наружных поверхностей объекта, который может быть зданием или иным сооружением. Объект через отснятые изображения оцифровывают посредством аппаратно-программных средств. Каждое изображение анализируется на предмет присутствия границ и цветовых характеристик, для чего может быть использована открытая библиотека OpenCV. После обработки изображений и считывания конструктивных параметров объекта получают набор неупорядоченных математических выражений. Полученные математические выражения упорядочивают и записывают в базу данных в виде файла 3D модели на сервере.
Средством просмотра файла сформированной 3D модели объекта является ПК, планшет, мобильный телефон или устройств типа под общим названием тонкий клиент. Файл 3D модели объекта считывается посредством среды XCODE и использования объектно-ориентированных библиотек, встроенных в IOS, приемы языка SWIFT строят логику и архитектуру приложения, объединяя компоненты математических выражений формата 3D модели объекта, отображают формат 3D модели объекта в 2D или в 3D виде, приложение позволяет проходить по виртуальной модели, например, искать кратчайший маршрут на плане, а так же находить информацию занесенную в файл 3D модели объекта, такие как пожарные обозначения. В программно-аппаратный комплекс просмотра файла 3D модели объекта встроен редактор, с помощью которого можно изменять план с автоматической перезаписью файла 3D модели объекта.
Одним из способов распознавания геометрических фигур является метод контурного анализа, который позволяет получить достаточную информацию о форме объекта, его свойствах. При необходимости можно использовать альтернативные методы, такие как: детектор границ Кэнни, выделение объекта по цвету, пороговое преобразование и другие.
При анализе изображения анализируют 8-битное одноканальное изображение. Используют предварительную обработку для перевода в черно белый формат изображения. В памяти резервируют область памяти для хранения структур 3D модели файла. Для работы с сформированными математическими выражениями используют связный список и указатель на структуру первого контура. Для работы в нескольких режимах предусмотрены средства выбора режима работы поиска контуров.
Система включает в себя датчик изображения, соединенный с вычислительным устройством. Вычислительное устройство включает в себя модуль обработки изображения. В некоторых вариантах осуществления вычислительное устройство также может быть связано с базой данных или другим устройством хранения данных, хранение распознанных 3D моделей сцены, изображений, информации о позиции и других данных. Система также включает в себя сеть связи, соединенную с вычислительным устройством, и устройство наблюдения, коммуникативно связанное с сетью, для приема данных трехмерной модели, данных изображения и других связанных данных из вычислительного устройства.
Датчик изображения осуществляет захват изображений сцены, который включает в себя один или несколько физических объектов. Датчики изображения, которые могут использоваться в системе могут включают такие датчики как 3D-глубинные датчики в реальном времени, цифровые камеры, комбинированную 3D-глубину и устройства RGB-камеры и другие типы устройств, которые способны захватывать информацию о глубине пикселя вместе с изображениями реального объекта и / или сцены для сбора данных о его местоположении, местоположении и внешнем виде. В некоторых вариантах осуществления датчик встроен в вычислительное устройство, например, в камеру на смартфоне или устройство захвата 3D виртуальной реальности. В некоторых вариантах осуществления датчик дополнительно включает в себя инерционный измерительный блок для захвата данных, таких как линейное ускорение, вращение и тому подобное.
Вычислительное устройство принимает изображения сцены от датчика изображения и обрабатывает изображения для создания трехмерных моделей объектов, представленных в сцене. Вычислительное устройство может принимать различные формы, включая как мобильные, так и немобильные формы. Примерные вычислительные устройства включают в себя, но не ограничиваются этим, портативный компьютер, настольный компьютер, планшетный компьютер, смартфон, интернет вещей, устройства с расширенной реальностью или виртуальной реальностью (например, очки, устройства гарнитуры и т.д.). В некоторых вариантах осуществления датчик изображения и вычислительное устройство могут быть встроены в большую мобильную структуру, такую как робот или беспилотный летательный аппарат (БПЛА). Вычислительное устройство включает в себя компоненты сетевого интерфейса для соединения с сетью связи. В некоторых вариантах осуществления компоненты сетевого интерфейса включают компоненты для подключения к беспроводной сети, таким как Wi-Fi или сотовая сеть, для доступа к сети Интернет.
Вычислительное устройство включает в себя модуль обработки изображений, сконфигурированный для приема изображений, захваченных датчиком, и анализа изображений различными способами, включая обнаружение положения и местоположения объектов, представленных на изображениях, и создание трехмерных моделей объектов в изображениях.
Модуль обработки изображений представляет собой аппаратный и/или программный модуль, который находится на вычислительном устройстве для выполнения функций, связанных с анализом захвата изображений с помощью сканера, включая создание 3D моделей на основе контуров, выявленных на изображениях. В некоторых вариантах осуществления функциональность модуля обработки изображений распределена между множеством вычислительных устройств. В некоторых вариантах осуществления модуль обработки изображения работает в сочетании с другими модулями, которые либо расположены также на вычислительном устройстве, либо на других вычислительных устройствах, соединенных с вычислительным устройством.
Следует понимать, что в одном варианте осуществления модуль обработки изображения содержит специализированное оборудование (такое как процессор или система на кристалле), которое встроено в печатную плату или другой аналогичный компонент другого устройства. В этом варианте осуществления модуль обработки изображений специально запрограммирован с помощью программных функций обработки изображений и моделирования, описанных ниже.
Согласно Фиг. 1 для упрощения построения последовательности границ из одной начальной точки (Фиг. 1а) применяют цепной код Фридмана (Фиг. 1б). В основе этого принципа лежит 4-ех или 8-ми связная решетка. Длина каждого отрезка определяется разрешением решетки, а направления задаются выбранным кодом.
Результатом обработки изображения является массив типа [[[22,45], [33,55]]] …, где каждый элемент четырех мерного массива описывает ту или иную геометрическую фигуру заданными точками.
С помощью свойств фигур делают предположение, которое объясняет какая именно фигура лежит в контурах и в соответствии с рассчитанными значением математического выражения (Фиг. 2).
Получают результат анализа изображения, найденного по шаблону. Количество изображений не ограниченно, цикл поиска может быть не одномерным, т.е. в одном определенном контуре выполняют вложенный поиск контуров других фигур (Фиг. 3). После поиска изображений фильтруют полученные результаты.
Весь способ обработки исходных изображений может быть охарактеризован как обработка изображения, бинаризация изображения, поиск контуров, фильтрация контуров, запись контура в формат фигуры 3D модели в виде последовательности точек, поиск изображений по шаблону, фильтрация найденных контуров и изображений, поиск текста, фильтрация найденных результатов с текстом.
В одном из вариантов реализации выполняют сжатие результатов обработки.
Результат обработки данных обеспечивает компактное представление информации обработанного изображения, которая может быть записана в краткой форме, что позволяет воспроизводить 3D модели по найденным результатам. Алгоритм обработки изображения предполагает поиск информации об объекте исследования с удалением данных и последующей записью в формат 3D модели для построения 2D и 3D сцен.
Данные результатов обработки записывают в память устройства в файл 3D модели, структурированными упорядоченными структурами контуров. Использование отрытых библиотек 3D визуализации обеспечивает возможность трансформирования данных в 3D или 2D сцены на современных вычислительных средствах любой программной или аппаратной архитектуры.
Для построения сцен нужно иметь информацию, которая достаточна для расчета значений контуров и для построения сцен. Формат файла 3D модели включает в себя информацию, которая необходима для проведения геометрических и тригонометрических операций.
Описанные здесь способы могут быть выполнены с помощью цифровой системы обработки, такой как обычная компьютерная система общего назначения. В альтернативном варианте могут использоваться компьютеры специального назначения, которые спроектированы или запрограммированы на выполнение специализированной функции. На Фиг. 4 представлен пример вычислительного устройства, которое может реализовать описанные здесь варианты осуществления. Вычислительное устройство по Фиг. 4 может использоваться для выполнения вариантов осуществления функций для обеспечения и функционирования виртуальных компьютеров, распределения и работы с памятью и связи между узлами в соответствии с некоторыми вариантами осуществления.
Вычислительное устройство включает в себя центральный процессор 401, который соединен через шину 405 с памятью 403 и запоминающим устройством 407 большой емкости. Запоминающее устройство 407 представляет собой постоянное устройство хранения данных, такое как жесткий диск или дисковод, который может быть локальным или удаленным. В некоторых вариантах осуществления запоминающее устройство 407 может реализовать резервное хранилище. Память 403 может включать в себя постоянное запоминающее устройство, оперативное запоминающее устройство и т.д. Приложения, расположенные на вычислительном устройстве, могут быть сохранены или доступны через считываемый компьютером носитель, такой как память 403 или запоминающее устройство 407 большой емкости. В качестве центрального процессора 401 может быть использован процессор общего назначения, процессоре специального назначения или специально запрограммированное логическое устройство.
Дисплей 411 связывается с центральным процессором 401, памятью 403 и запоминающим устройством 407 большой емкости через шину 405. Экран 411 сконфигурирован для отображения любых инструментов визуализации или отчетов. Устройство 409 ввода/вывода подсоединено к шине 405 для передачи информации и команд центрального процессора 401. Следует понимать, что данные от внешних устройств могут передаваться через устройство 409 ввода/вывода. Центральный процессор 401 реализует выполнение функциональных возможностей, чтобы обеспечить функциональность, описанную на Фиг. 2. Инструкции, которые воплощают эту функциональность, хранят в машиночитаемом носителе данных, например, в памяти 403 или в запоминающем устройстве 407 большой емкости для выполнения процессором, таким как центральный процессор 401. Операционная система на вычислительном устройстве может быть MS-WINDOWS™, UNIX™, LINUX™, CentOS™, Android™, Redhat Linux™, z/OS™, EMC ISILON ONEFS™, DATA ONTAP™ или любая другая операционная система. В одном из вариантов реализации раскрытое решение может быть совмещено с виртуальными вычислительными системами и решениями.
Конкретные функциональные детали, раскрытые здесь, являются примерными вариантами реализации для описания вариантов осуществления. Однако варианты осуществления могут быть воплощены во многих альтернативных формах и не должны истолковываться как ограниченные только вариантами осуществления, изложенными здесь.
Вышеприведенное описание предназначено для пояснения основных принципов реализации изобретения. Приведенные выше примерные варианты реализации не должны быть интерпретированы буквально и ограничивать изобретение только раскрытыми примерами. Варианты осуществления были выбраны и изложены для объяснения основных принципов осуществления и их практической реализации, чтобы тем самым дать возможность специалистам в данной области в полной мере понять варианты осуществления. Соответственно, настоящие варианты осуществления следует рассматривать как иллюстративные, а не ограничительные, и изобретение не должно ограничиваться приведенными здесь деталями, но может быть изменено в пределах объема и эквивалентов прилагаемой формулы изобретения.