Основы ИИ
Что такое компьютерное зрение?
Что такое компьютерное зрение?
Алгоритмы компьютерного зрения являются одними из наиболее трансформационных и мощных систем искусственного интеллекта в мире на данный момент. Системы компьютерного зрения используются в автономных транспортных средствах, навигации роботов, системах распознавания лиц и многих других областях. Однако, что же такое алгоритмы компьютерного зрения именно? Как они работают? Чтобы ответить на эти вопросы, мы глубоко погрузимся в теорию компьютерного зрения, алгоритмы компьютерного зрения и применения систем компьютерного зрения.
Как работают системы компьютерного зрения?
Чтобы полностью оценить, как работают системы компьютерного зрения, давайте сначала обсудим, как люди распознают объекты. Лучшее объяснение, которое имеет нейропсихология для описания того, как мы распознаем объекты, – это модель, которая описывает начальную фазу распознавания объектов как фазу, на которой основные компоненты объектов, такие как форма, цвет и глубина, интерпретируются мозгом сначала. Сигналы от глаза, которые входят в мозг, анализируются для извлечения краев объекта сначала, и эти края объединяются в более сложное представление, которое завершает форму объекта.
Системы компьютерного зрения работают очень похоже на человеческую систему зрения, сначала определяя края объекта, а затем объединяя эти края в форму объекта. Большая разница заключается в том, что поскольку компьютеры интерпретируют изображения как числа, система компьютерного зрения нуждается в некотором способе интерпретации отдельных пикселей, которые составляют изображение. Система компьютерного зрения присваивает значения пикселям в изображении, и, анализируя разницу в значениях между одним регионом пикселей и другим регионом пикселей, компьютер может определить края. Например, если изображение в вопросе является градацией серого, то значения будут варьироваться от черного (представленного 0) до белого (представленного 255). Внезапная смена диапазона значений пикселей рядом друг с другом будет указывать на край.
Этот основной принцип сравнения значений пикселей также может быть применен к цветным изображениям, когда компьютер сравнивает разницу между различными цветовыми каналами RGB. Итак, теперь, когда мы знаем, как система компьютерного зрения анализирует значения пикселей для интерпретации изображения, давайте посмотрим на архитектуру системы компьютерного зрения.
Свёрточные нейронные сети (CNN)
Основным типом искусственного интеллекта, используемого в задачах компьютерного зрения, является тот, который основан на свёрточных нейронных сетях. Что такое свёртка именно?
Свёртки – это математические процессы, которые сеть использует для определения разницы в значениях между пикселями. Если вы представите себе сетку пиксельных значений, представьте себе меньшую сетку, перемещающуюся над этой основной сеткой. Значения под второй сеткой анализируются сетью, поэтому сеть анализирует только горстку пикселей за раз. Это часто называется техникой “скользящего окна”. Значения, анализируемые скользящим окном, суммируются сетью, что помогает уменьшить сложность изображения и сделать его проще для сети извлечь закономерности.
Свёрточные нейронные сети разделены на две различные секции, свёрточную секцию и полностью связанную секцию. Свёрточные слои сети являются извлекателями признаков, чья задача состоит в том, чтобы проанализировать пиксели в изображении и сформировать представления их, которые плотно связанные слои нейронной сети могут научиться распознавать закономерности. Свёрточные слои начинают с анализа пикселей и извлечения низкоуровневых признаков изображения, таких как края. Поздние свёрточные слои объединяют края в более сложные формы. К концу сеть, надеюсь, получит представление о краях и деталях изображения, которое она может передать полностью связанным слоям.
Аннотация изображений
Хотя свёрточная нейронная сеть может извлечь закономерности из изображений самостоятельно, точность системы компьютерного зрения может быть значительно улучшена путем аннотации изображений. Аннотация изображений – это процесс добавления метаданных к изображению, который помогает классификатору обнаружить важные объекты в изображении. Использование аннотации изображений важно всякий раз, когда системы компьютерного зрения должны быть высокоточными, такие как при контроле автономного транспортного средства или робота.
Существует несколько способов аннотировать изображения для улучшения производительности классификатора компьютерного зрения. Аннотация изображений часто выполняется с помощью ограничивающих рамок, рамки, окружающей края целевого объекта, и указывающей компьютеру сосредоточить внимание внутри рамки. Семантическая сегментация – это другой тип аннотации изображений, который работает путем присвоения класса изображения каждому пикселю в изображении. Другими словами, каждый пиксель, который может быть рассмотрен как “трава” или “деревья”, будет помечен как принадлежащий к этим классам. Техника обеспечивает точность на уровне пикселя, но создание аннотаций семантической сегментации более сложно и требует больше времени, чем создание простых ограничивающих рамок. Другие методы аннотации, такие как линии и точки, также существуют.












