лекция. Lektsii_ПКТ. Конспект лекций по дисциплине прикладные компьютерные технологии Направление подготовки 09. 03. 01 Информатика и вычислительная техника
Скачать 7.93 Mb.
|
Возможность: • 3D-проектирование; • интеграция трехмерной модели с данными из других систем эксплуатанта; • отображение данных и характеристик объектов; • возможность просмотра объектов «изнутри»; • расстановка и изменение расположения объектов; • создание любых маркетинговых материалов; • одновременная работа множества пользователей; • удаленный доступ; • разграничение прав доступа и разделение работы на участки; • возможность совместного просмотра; • учет всех вносимых изменений в режиме реального времени; • доступ ко всем версиям проекта; • визуализация пользовательских примечаний к объектам; • онлайн-взаимодействие подразделений; • формирование отчетности; • расстановка людей на объектах; • возможность перемещаться по объектам; • возможность взаимодействия персонажей с объектами, выполнения специфических действий Результат: • Создание модели, объединяющей архитектурно-планировочные, конструктивные и инженерные решения с отражением всех технико-экономических показателей; • выявление недостатков объектов уже на этапе проектирования; • проверка эксплуатационных гипотез задолго до физического воплощения объекта строительства; • составление смет каждого объекта; • проработка сооружений, территорий и инфраструктуры «под ключ»; • проработка спонсорских программ; • отсутствие необходимости физического присутствия всех сотрудников на объекте, на одной территории; • демонстрация коллегам, партнерам, инвесторам и другим заинтересованным людям объектов; • отчетность перед лицами, принимающими решение; • взаимодействие в рамках единой модели без потери конфиденциальности информации по каждому объекту; • обучение обслуживающего персонала и волонтеров (проработка маршрутов); • тренировки специального персонала (охрана и безопасность), отработка действий во время определенных ситуаций; • изучение территории, расположения и внутреннего устройства объектов Эффект: • Сокращение количества ошибок; • сокращение продолжительности планирования и создания (доработки) объектов; • экономия издержек на физическое моделирование (макеты); • сокращение продолжительности и стоимости поиска оптимальных конструкторских и дизайнерских решений на всех этапах подготовки к Играм; • экономия затрат на персонал (субподрядчиков, проектировщиков, рабочих, маркетологов, обучающий и управляющий персонал); • экономия времени и затрат на приобретение и расстановку объектов; • упрощение и удешевление коммуникаций между всеми участниками проекта (подрядчиками, спонсорами, организаторами, работниками служб, волонтерами и т.д.); • упрощение и удешевление отчетности; • привлечение дополнительных инвестиций; • убыстрение взаимодействия между работниками подразделений; • возможность проведения обучения и тренировок в привязке к определенным локациям до момента сдачи объектов в эксплуатацию; • сокращение времени обучения и инструктажа; • сокращение затрат на элементы и расходные материалы, необходимые в обучении; • сокращение затрат на обучающий персонал Лекция №8 Основные принципы, понятия и применение компьютерного зрения. Технологическое и программное обеспечение для реализации компьютерного зрения Основы компьютерного зрения Компьютерное зрение (Computer Vision, CV), в том числе машинное зрение (Machine Vision, MV) – это автоматическая фиксация и обработка изображений, как неподвижных, так и движущихся объектов при помощи компьютерных средств. В России также используется термин «техническое зрение». Первые попытки заставить компьютер «видеть» относятся к началу 60-х годов 20 века. Однако лишь в последние годы в связи с повышением вычислительных мощностей и быстродействия процессоров, объёмов памяти, повышением разрешающей способности и других параметров камер, развитием полосы пропускания каналов связи, а также с появлением таких технологий, как машинное и глубокое обучение (Machine/Deep Learning), искусственный интеллект AI (Artificial Intelligence) технологии CV/MV стали находить все больше применений в различных отраслях индустрии и повседневной жизни людей. В последние годы CV стало активно использоваться в промышленности, в т.ч. в таких отраслях, как автомобилестроение, пищевая промышленность, фармацевтика, производство микроэлектронных изделий и многих других.
Например, в автомобилестроении применяют системы CV, чтобы считывать маркировку компонентов при сборке на конвейере. Компьютерное зрение также используется для повышения качества, в частности, для осмотра, калибровки, проверки размеров, зазоров, расстояний, а также для выравнивания деталей на линиях сборки автомобилей. В производстве пищевой продукции системы CV могут проверять, все ли ингредиенты указаны на упаковке товара, особенно те, которые могут содержать аллергические вещества. Фармацевтика подразумевает высокую ответственность за обеспечение безопасности, поэтому необходимо надёжно отслеживать все компоненты состава и качество готовой продукции. При изготовлении микросхем и электронных компонентов CV используют в чистых помещениях для контроля размещения кремниевых пластин, маркировки и положения чипа интегральных схем и других элементов. Сегодня компьютерное зрение широко применяется для многих компонентов цифровой экономики: «Умный город» (Smart City), Интеллектуальные транспортные системы ИТС (Intelligent Transportation System), Автономные автомобили (Driverless Car) и системы помощи водителю ADAS (Advanced driver-assistance systems), Беспилотные летательные аппараты (в т.ч. дроны), Высокотехнологичное сельское хозяйство (Smart Agriculture), Электронная медицина (eHealth) Системы военного применения, Аддитивное производство (3D-printing) и во многих других. Причём, постоянно появляются всё новые области и сценарии применения CV. Сегодняшнее развитие систем CV пока далеко от реализации всех его возможностей. Однако эта отрасль быстро развивается и диапазон его применений быстро ширится. «Компьютерное зрение» («машинное зрение», техническое зрение») часто путают с видеоаналитикой. Однако, эти понятия неравнозначны. Можно сказать, что видеоаналитика является составной частью компьютерного зрения в части анализа изображения. Компьютерное зрение (Computer Vision) – это технология (а также область исследований) по автоматизации понимания того, что мы видим в окружающем мире. Видеоаналитика (VCA, Video Content Analysis) – это частные приложения компьютерного зрения, которые извлекают информацию и знания из видеоконтента, то есть дают ответы на вопросы: Кто: распознавание и идентификация людей; Что: объекты, действия, события, поведение, взаимоотношения; Где: геолокация, пространственная (3D) и планарная (2D) локация; Когда: маркировка даты и времени, сезона. Три основных типа приложений видеоаналитики: Ретроспектива: что уже случилось, т.е. управление архивами видеозаписей, поиск, сортировка, получение юридических доказательств; Настоящий момент: что происходит сейчас, т.е. контроль ситуации, получение предупреждений в реальном времени, кодирование, компрессия видеопотока; Взгляд в будущее: что может или скорее всего произойдёт, т.е. предсказания на основе событий прошлого и настоящего, прогнозирование событий или активности, детектирование намечающихся аномалий. Задачи CV Задачи CV заключаются, главным образом, в получении полезной информации (insight) из фото- или видеоизображений. Наиболее употребительными задачами CV могут быть: Задачи калибровки камер и оптических систем, как состоящих из одной камеры, так и набора камер Задачи определения движения по изображениям Задачи определения препятствий по ходу движения В 3D-облаке по стереокамере или набору камер По одной камере за счёт движения Задачи распознавания объектов на сцене Задачи пространственной реконструкции сцены Задачи локализации изображения в заранее известной сцене Задачи анализа отличия в наборе изображений Технологии В общем случае, системы CV состоят из фото- или видеокамеры, а также компьютера, на котором работают программы обработки и анализа изображений. Если программное обеспечение по обработке изображения расположено непосредственно в камере, такая камера называется «смарт-камерой». ПО может также работать на удалённом компьютере или компьютерах, или выполняться в облаке по модели SaaS (Software as a Service). Системы компьютерного зрения включают следующие основные компоненты: подсветку объекта (не всегда требуется) и оптику (линзы и объективы) сенсорную матрицу для проецирования изображения системы обработки изображения, полученного с матрицы. В необходимых случаях, например, внутри помещений, когда свет можно контролировать, может подсвечиваться часть объекта, которую необходимо инспектировать, так, чтобы нужные характеристики объекта были заметными для камеры. Оптическая система проецирует полученное изображение в форме видимого или невидимого человеческим глазом спектра на сенсорную матрицу. Сенсорная матрица камеры преобразует изображение в цифровой образ, который затем посылается в процессор для анализа. В большинстве случаев системы CV предназначены для работы в естественном освещении. Кроме того, системы CV могут работать в диапазонах, невидимых для человеческого глаза. Д ля работы в условиях недостаточного освещения могут использоваться камеры с подсветкой, в которых кольцевой источник света обеспечивает яркое равномерное освещение объекта, когда необходимо высветить фактуру материала, мелкие детали и пр. Также освещение помогает избавиться от бликов, засветки объекта, используется в сложных условиях, например, в тумане. Такой интегрированный источник не даёт затенения и обеспечивает ровное освещение матовых поверхностей. Сенсорная матрица располагается в камере и предназначена для фиксации изображения соответствующим образом освещённого объекта. Обычно сенсорные матрицы строятся на основе полупроводниковых приборов с зарядовой связью ПЗС, CCD (charge coupled device), либо может быть использована комплементарная технология «металл-окисел-полупроводник» КМОП, или CMOS (complementary metal oxide semiconductor). Изображение представляет собой набор элементов – пикселей, цвет которых зависит от освещённости. Плотность пикселей (разрешение сенсорной матрицы) очень важна для корректной работы приложения компьютерного зрения. Чем больше разрешение, тем больше деталей будет на изображении, тем более точными будут измерения. Требуемая плотность пикселей зависит от размеров объекта, рабочего расстояния камеры и других параметров. Типы систем CV и методы обработки изображений Существует три основных типа систем CV: одномерные (1D), двумерные (2D) объёмные (3D) системы СV. Отдельно стоят панорамные многокамерные системы и системы «рыбий глаз» (fisheye), которые обычно относят к особому типу, а иногда, в зависимости от количества камер, их конструкции и расположению – к одному из вышеперечисленных типов. Стереозрение – один из методов извлечения информации о глубине сцены при помощи изображений с двух камер (стереопары). В основе метода лежит принцип человеческого зрения, когда мозг человека получает информацию об объёме по картинке от двух глаз. Точно так же разница в расположении пикселей в изображении с двух камер даёт информацию о глубине. При помощи регулировки расстояния между камерами стереопары (baseline) можно регулировать требуемую глубину распознавания сцены. С ферические и панорамные системы «рыбий глаз» (fisheye) используются для эмуляции панорамных PTZ-камер для видеонаблюдения и для интеграции трансляционных веб-камер в 2D- и 3D-приложения геоинформационных систем (ГИС), таких как Google Earth и Google Maps. Панорамные fisheye-системы, работающие с приложениями обработки изображений облачных провайдеров, применяются, например, в системах помощи водителю (ADAS), беспилотных автомобилях, при мониторинге больших пространств и подсчёте количества людей. Многокамерные системы (массивы). Массивы (сети) камер используются для отслеживания перемещения отдельных людей внутри помещений или в местах с ограниченной видимостью (склады в морских портах, заводские территории и пр.), а также для управления дорожным движением в интеллектуальных транспортных системах. Системы из небольшого количества (2-6) камер применяются, например, для областей: А втоматизация производства, Видеонаблюдение с БПЛА, 3D-фильмы, Интерактивные игры AR/VR, Распознавание лиц, движения, идентификации и пр. Например, использование многокамерной системы из пяти камер на конвейере при массовом производстве значительно облегчает контроль качества продукции. Библиотеки ПО компьютерного зрения OpenCV (Open Source Computer Vision Library) – библиотека алгоритмов компьютерного зрения, обработки изображений и численных алгоритмов общего назначения. Реализована на языке C/C++, также разрабатывается для Python, Java, Ruby, Matlab, Lua и других языков. PCL (Point Cloud Library) — крупномасштабный открытый проект для обработки 2D/3D-изображений и облаков точек. Платформа PCL содержит множество алгоритмов, включая фильтрацию, оценку характеристик, реконструкцию поверхности, регистрацию, подбор модели и сегментацию. ROS (Robot Operating System) – платформа разработки ПО для роботов. Она представляет собой набор инструментов, библиотек и соглашений, которые упрощают разработки сложных и эффективных программ для управления многими типами роботов. MATLAB — высокоуровневый язык и интерактивная среда для программирования, численных расчётов и визуализации результатов. С помощью MATLAB можно анализировать данные, разрабатывать алгоритмы, создавать модели и приложения. CUDA (Compute Unified Device Architecture) — программно-аппаратная архитектура параллельных вычислений, которая позволяет существенно увеличить вычислительную производительность благодаря использованию графических процессоров фирмы Nvidia. Системы и методы обработки изображений В простых системах обработки CV обычно требуется получить количественную и качественную информацию из визуальных данных (изображений): такие параметры, как размер, цвет, количество, направление и характер движения, а также контрастные переходы в окрестностях пикселя изображения, из которых производится получение характерных черт, ХЧ (т.н. «фичи», от англ. Features). На их основе производится анализ изображения для извлечения полезной информации. В системах обработки изображений CV используются такие методы, как машинное обучение (Machine Learning), системы глубокого обучения (Deep Learning) и нейросети (Neural Networks). Эти методы имитируют процесс распознавания и анализа, который проходит в мозге человека. Человеку ничего не стоит выделить на картинке важное и неважное. Компьютеру это сделать гораздо сложнее. В отличие от человека, он оперирует не образами, а числами. Для компьютера изображение — это набор пикселей, у каждого из которых есть своё значение яркости или цвета. Чтобы машина смогла получить представление о содержимом картинки, изображение обрабатывают с помощью специальных алгоритмов. Сначала на картинке выявляют потенциально значимые места — то есть предполагаемые объекты или их границы. Это можно сделать несколькими способами. Рассмотрим, к примеру, алгоритм Difference of Gaussians (DoG, разность гауссиан). Он подразумевает, что исходную картинку несколько раз подвергают размытию по Гауссу, каждый раз используя разный радиус размытия. Затем результаты сравнивают друг с другом. Этот способ позволяет выявить на изображении наиболее контрастные фрагменты — к примеру, яркие пятна или изломы линий. После того как значимые места найдены, их описывают в числах. Запись фрагмента картинки в числовом виде называется дескриптором. С помощью дескрипторов можно быстро, полно и точно сравнить фрагменты изображения, не используя сами фрагменты. Существуют разные алгоритмы получения дескрипторов — например, SIFT, SURF, HOG и многие другие. Поскольку дескриптор — это числовое описание данных, то сравнение изображений — одна из важнейших задач в компьютерном зрении — сводится к сравнению чисел. Дескрипторы выражены довольно большими числами, поэтому их сравнение может требовать заметных вычислительных ресурсов. Чтобы ускорить вычисления, дескрипторы распределяют по группам, или кластерам. В один и тот же кластер попадают похожие дескрипторы с разных изображений. Операция распределения дескрипторов по кластерам называется кластеризацией. После кластеризации данный дескриптор изображения сам по себе можно не рассматривать; важным становится лишь номер кластера с дескрипторами, наиболее похожими на данный. Переход от дескриптора к номеру кластера называется квантованием, а сам номер кластера — квантованным дескриптором. Квантование существенно сокращает объём данных, которые нужно обработать компьютеру. Опираясь на квантованные дескрипторы, компьютер выполняет такие задачи, как распознавание объектов и сравнение изображений. В случае с распознаванием квантованные дескрипторы используются для обучения классификатора — алгоритма, который отделяет изображения «с домиком» от изображений «без домика». В случае со сравнением картинок компьютер сопоставляет наборы квантованных дескрипторов с разных изображений и делает вывод о том, насколько похожи эти изображения или их отдельные фрагменты. Такое сравнение лежит в основе поиска дубликатов и поиска по загруженной картинке. Это лишь один подход к анализу изображения, поясняющий, как компьютер «видит» предметы. Существуют и другие подходы. Так, для распознавания изображений всё чаще применяются нейронные сети. Они позволяют выводить важные для классификации признаки изображения непосредственно в процессе обучения. Свои методы работы с изображением используются и в узких, специфических областях — например, при чтении штрихкодов. |