Как работает компьютерное зрение

Как работает компьютерное зрение

Если я попрошу вас посмотреть на картинку выше и перечислить некоторые объекты, которые вы видите в кадре, какие это будут объекты? Вы, вероятно, не задумываясь, написали бы длинный список объектов, которые видели. В него могут входить автомобили, различные красочные рекламные щиты, яркие магазины или столбики на дороге, высокие здания или растения в горшках вдоль дороги и многое другое.

Если я попрошу вас описать картину, которую вы видели, всего одним предложением, вы, вероятно, скажете: «Это Нью-Йорк, Таймс-сквер!», снова не задумываясь. Эти задачи были очень просты для вас, так как даже человек с уровнем интеллекта и понимания ниже среднего или шестилетний ребенок может сделать то же самое. Однако знаете ли вы, как вы это сделали?


«За кулисами» происходит очень сложный процесс. Человеческое зрение — это очень сложный сегмент органической технологии, который охватывает наши глаза и зрительную кору. Оно вовлекает мысленные модели объектов и наше абстрактное понимание концепций. Также учитывается и наш личный опыт, полученный в результате бесчисленных взаимодействий с окружающим миром. Сегодня мы видим, что цифровые устройства уже могут делать снимки с разрешением, превосходящим человеческое зрение. Компьютеры также могут с большой точностью обнаруживать объекты вместе с их цветом.

Что такое «компьютерное зрение»?

В технических терминах это означает область информатики, которая сосредоточена на изучении того, как компьютеры видят и понимают цифровые изображения. Компьютерное зрение охватывает видение, или восприятие зрительного раздражителя, а также понимание и извлечение сложной информации. Извлечённые данные можно использовать в других процессах.

В этой междисциплинарной области моделируются и автоматизируются элементы систем человеческого зрения с помощью датчиков и алгоритмов машинного обучения. Оно образует ядро, лежащее в основе систем искусственного интеллекта. Такие системы получают способность видеть и понимать окружающую их среду с помощью компьютерного зрения.

Вдохновение черпается из системы человеческого зрения, позволяя компьютерам идентифицировать и обрабатывать объекты на изображениях и видео так же, как это делают люди.

Как цифровое устройство интерпретирует изображение?

Компьютер видит изображение не так, как мы. В отличие от нас он интерпретирует всё изображение в терминах чисел. Для компьютера изображение — это лишь двумерная матрица чисел, где каждая запись представляет интенсивность света или цвета для заданного положения, или так называемых пикселей. Для изображения в оттенках серого числа в пикселях варьируются от 0 до 255 согласно интенсивности цвета.

Что мы видим в сравнении с тем, что считывает компьютер
Что мы видим в сравнении с тем, что считывает компьютер

Например, у нас есть изображение в оттенках серого написанной от руки цифры 8, которое представлено в виде матрицы 28*28 с 784 пикселями. На первом изображении показано то, как мы видим цифру 8, а на втором и третьем — то, как компьютер считывает изображение цифры 8 в терминах пикселей. Здесь 0 обозначает полностью чёрную часть, а промежуточные числа показывают оттенки между чёрным и белым в соответствии с изображением (обратите внимание на границу цифры). По мере продвижения к максимальному числу 255 мы смещаемся в сторону более белой части изображения. Вся матрица будет выровнена (преобразована в одномерный массив): все строки объединяются одна за другой, как показано на рисунке ниже:

Формирование одномерного массива пикселей
Формирование одномерного массива пикселей

Вторая строка прикрепляется к первой, а третья — ко второй, таким образом создаётся единый одномерный массив пикселей который подаётся скрытому слою свёрточной нейронной сети. Также можно сказать, что изображение это просто массив пикселей.

Любой цвет можно представить в виде комбинации трёх цветов: КРАСНОГО, СИНЕГО и ЗЕЛЁНОГО. Если изображение цветное, то это RGB-изображение а не в оттенках серого. Мы можем его представить как три двумерные матрицы, сложенные друг на друга. Каждая из этих трёх матриц соответствует одному каналу цвета: Red (красный), Green (зелёный) и Blue (синий). Таким образом, у нас одна матрица — для красного цвета, другая — для зелёного и третья — для синего цвета, и они преобразуются в соответствующие одномерные массивы. Это означает, что конечное цветное изображение представляет собой комбинацию этих массивов, образующих единый трёхмерный массив, как показано ниже:

RGB-изображение
RGB-изображение

Каковы области применения компьютерного зрения?

1. Распознавание лиц

Это мощный инструмент обеспечения безопасности, используемый в наши дни, чтобы «видеть» тех, кто пытается получить доступ к ценным ресурсам. Пример: блокировка экрана мобильного устройства. Алгоритмы компьютерного зрения обнаруживают черты лица на изображениях и сравнивают их с базой данных профилей, в которых хранятся оцифрованные лица. Правоохранительные органы также используют технологию распознавания лиц для идентификации преступников в видеопотоках.

2. Автономный транспорт

Самоуправляемым автомобилям требуется информация о своём окружении, чтобы решить, как себя вести. Камеры снимают видео окружения автомобиля с разных углов. Это видео подаётся в программное обеспечение компьютерного зрения. Изображения обрабатываются в режиме реального времени для поиска границ дорог, дорожных знаков, а также для обнаружения других транспортных средств, объектов и пешеходов. Затем автономный автомобиль может двигаться по своему пути и, надеюсь, без аварий.

3. Поиск изображений и распознавание объектов

Теория компьютерного зрения используется для идентификации объектов на изображениях, поиска по каталогам изображений и извлечения информации из изображений.

4. Робототехника

Большинству роботизированных машин (часто на производстве) необходимо видеть своё окружение, чтобы выполнять свои задачи.

5. В области медицинских технологий

Алгоритмы компьютерного зрения позволяют обнаружить злокачественные родинки на коже. Это может быть полезно при использовании рентгеновских лучей и МРТ-сканирования. Это также может помочь точно диагностировать заболевания, своевременно выявлять болезни и интенсифицировать лечебные процессы.

Заключение

Это была всего лишь элементарная информация о компьютерном зрении. Теория компьютерного зрения — это обширная тема, которая достигла больших высот благодаря революции в области искусственного интеллекта и достижениям в сфере глубокого обучения и нейронных сетей. В последнее время в этой области произошли большие изменения. Компьютеры успешно превзошли людей во многих задачах, связанных с обнаружением и маркировкой объектов.

Узнайте, как прокачаться в других специальностях или освоить их с нуля:

Другие профессии и курсы
 

Источник

skillfactory

Читайте также