Анализ R-CNN подхода к распознаванию объектов в контексте прикладных экономических задач
Попов Д.Н.1, Жилина Е.В.1, Петренко В.И.2
1 Ростовский государственный экономический университет (РИНХ), Россия, Ростов-на-Дону
2 Северо-Кавказский федеральный университет, Россия, Ставрополь
Скачать PDF | Загрузок: 2 | Цитирований: 1
Статья в журнале
Информатизация в цифровой экономике (РИНЦ, ВАК)
опубликовать статью | оформить подписку
Том 3, Номер 4 (Октябрь-декабрь 2022)
Цитировать:
Попов Д.Н., Жилина Е.В., Петренко В.И. Анализ R-CNN подхода к распознаванию объектов в контексте прикладных экономических задач // Информатизация в цифровой экономике. – 2022. – Том 3. – № 4. – С. 211-220. – doi: 10.18334/ide.3.4.115222.
Эта статья проиндексирована РИНЦ, см. https://elibrary.ru/item.asp?id=49863093
Цитирований: 1 по состоянию на 07.08.2023
Аннотация:
Актуальность настоящего исследования обусловлена популяризацией систем обработки данных, используя различные подходы к применению нейронных сетей. Это связано в первую очередь с развитием технологий, а также и с необходимостью решения прикладных задач, носящих сложное неоднозначное решение. В статье рассмотрен и описан R–CNN подход к распознаванию объектов, дано краткое сравнение данного алгоритма с методами-аналогами.
Ключевые слова: системы обнаружения объектов, R–CNN алгоритм, архитектура нейронной сети, подходы к системам обнаружения объектов
JEL-классификация: C45
Введение
Начало последнего десятилетия ознаменовалось простоем в разработках систем обнаружения и распознавания объектов и образов, в том числе и в оценке их эффективности. Эффективность таких систем, согласно измерениям по стандартному набору данных PASCAL VOC, оставалась долгие годы неизменной лишь с небольшими изменениями; точность распознавания не превышала 35%, что для многих задач являлось неприемлемым значением. Самыми актуальными и производительными методами были сложные методы, соединяющие вместе некоторое количество функций низшего порядка с накладыванием масок и определенных параметров на обработку. Основными передовыми методами обработки визуальной информации в сфере были SIFT [4] (Lowe, 2004) и HOG [1] (Dalal, Triggs, 2005).
Основная часть
Подходы к системам обнаружения объектов
Обозначенные выше методы HOG и SIFT являются гистограммами, которые ориентируются по блоковой системе, основаны на усложненной обработке по клеткам (блокам), после прохода всех или части блоков (в зависимости от системы и заданных параметров) происходит еще одна итерация, с той же обработкой, но уже с учетом полученных ранее данных, и так несколько раз. Однако, к сожалению, при использовании таких методов и данных подходов процент распознавания остается низким.
На замену им пришел алгоритм Region-based Convolutional Network (R-CNN), который отличался методом обработки данных, структурным подходом, параметрами и давал значительный прирост в процентности распознавания объектов [7] (Szegedy, Toshev, Erhan, 2013).
R-CNN – это система обнаружения объектов, основанная на сверточных нейросетях. В отличие от устаревших систем, которые используют для поиска изображений скользящие окна фиксированного размера, R-CNN в первую очередь начинает селективный поиск определенных регионов и областей, разбивая на прямоугольные сектора разных размеров, которые предположительно могут содержать необходимый объект [6]. Подобный метод значительно увеличивает скорость и эффективность процесса поиска объектов вне зависимости от размера самого объекта, угла обзора или фокуса и расстояния до объектива фотоустройства.
Ориентировочное количество областей поиска объектов для предлагаемого изображения, которое создается в первом этапе поиска объектов, примерно около двух тысяч единиц. Зафиксированные области (регионы) при помощи специальной формулы системы параллельных прямых приобретают размер, который нужно подать на вход CNN. Также вместо систем параллельных прямых можно использовать padding: устанавливать и использовать отступы внутри границ регионов, в которых могут находиться объекты или их признаки. Для достижения таких результатов также можно максимально увеличить ограничивающие рамки для входа CNN.
Выборочный или селективный поиск при необходимости также возможно применять, используя методы линейной регрессии, где учитываются обязательные параметры областей поиска – ширины, высоты, центра. Эта методика, так называемая bounding-box regression, позволила специалистам быстрее и качественнее определить объект внутри изображений. В качестве данных для проведения анализа силы и характера связей между переменными используются признаки, которые были или будут получены в процессе применения методологии CNN.
Итак, рассматривая отличия R-CNN от предшественников и других структурных подходов к распознаванию объектов, можно выделить следующие отличительные черты:
1. Применяются нейронные сети с высоким коэффициентом успеха на основе свертываемости и обработки частей объекта (регионов) более высокого ранга для локализации и сегментации изображений.
2. Даже при небольшом количестве входных данных благодаря предварительной обработке и компоновке данных и наложению необходимых и точных настроек для формирования допустимого процента эффективности нейросети результаты распознавания объектов показывают значительный прирост по сравнению с аналогами. Происходит объединение предложения регионов с CNN, отсюда и возникло название подхода – R-CNN (регионы с CNN-особенностями). Одним из похожих подходов является OverFeat из‑за использования подобной CNN-архитектуры, он все же значительно уступает R-CNN, согласно исследованиям, приведенным П. Серманентом, Д. Эйгером, М. Мэтью и другими в их труде [5] (Sermanet, Eigen, Zhang, Mathieu, Fergus, LeCun, 2014).
Обзор системы обнаружения объектов.
Подробное описание R-CNN-системы продемонстрировано на рисунке 1. На первом этапе первично обрабатывается входное изображение, далее извлекается примерно 2000 восходящих областей предложения (регионов), на третьем этапе обрабатываются и вычисляются характеристики для каждого региона благодаря взаимодействию со сверточной нейронной сетью с большим объемом данных (CNN), на последнем этапе каждый регион подлежит классификации с использованием линейных SVM для заданных классов.
Рисунок 1. Обзор системы обнаружения объектов
Источник: [10].
Согласно измерениям точности данного метода, используя PASCAL VOC [2] (Everingham, Gool, Williams, Winn, Zisserman, 2010), средняя точность (mAP) составляет 53,7%. Подобные методы, использующие такое же разделение на регионы, но при использовании набора визуальных триггеров, согласно Т. Геверсу и А. Смолдерсу [8] (Uijlings, Sande, Gevers, Smeulders, 2013), достигают лишь 35,1%, что, в свою очередь, все же больше остальных популярных моделей, точность которых составляет 33,4%.
Процесс обнаружения объектов системой R-CNN
Подход к распознаванию объектов включает в себя три части. Первая создает независимые от классификации предложения регионов, из этих предложений формируется набор обнаружений кандидатов, доступных детектору. Вторая часть представляется большой сверточной нейросетью, которая в процессе извлекает функцию фиксированной длины по выборочному вектору из каждой области. Третий этап обычно представлен как набор линейных SVM для определенных классов. Далее будет описана примерная разработка решения для каждого модуля с возможностями использования во время тестирования, подробностями в деталях процесса, как именно изучаются необходимые для методологии параметры, а также показаны результаты обнаружения с помощью PASCAL VOC 2010–12 и на ILSVRC-2013.
Примеры распознанных классов (объектов) представлены на рисунке 2. В ходе последних современных исследований предлагаются методы создания классов, не зависящих от каких-либо категорий.
Рисунок 2. Деформированные обучающие образцы VOC
Источник: https://guyuehome.com/35494
Данные примеры включают в себя:
- независимые от категорий объектные предложения;
- объектность [1] (Dalal, Triggs, 2005);
- ограниченные параметрические минимальные разрезы (CPMC) [5] (Sermanet, Eigen, Zhang, Mathieu, Fergus, LeCun, 2014);
- выборочный поиск [8] (Uijlings, Sande, Gevers, Smeulders, 2013);
- многомасштабные комбинаторные группировки [3] (Krizhevsky, Sutskever, Hinton, 2012), которые обнаруживают митотические клетки, применяя CNN к регулярно расположенным квадратным культурам, которые являются частным случаем региональных предложений.
При условии того, что R-CNN никак не зависит от метода предложения конкретной области (региона), то в основном используется выборочный поиск, чтобы было обеспечено контролируемое сравнение с прошлыми процессами по обнаружению объектов.
В процессе извлечения признаков возможно осуществить выборку 4096-мерного вектора признаков из каждого предложения области (региона), используя Caffe реализацию CNN, описанную Крижевским и др. [3] (Krizhevsky, Sutskever, Hinton, 2012). Признаки и характеристики вычисляются путем прямого распространения RGB-изображения 227 × 227 с вычитанием среднего слоя через пять сверточных слоев и два полносвязных слоя. Для более подробного разбора извлечения признаков стоит обращаться к трудам Крижевского и Y. Ji., где описаны и разобраны данные об архитектуре сети, ее особенностях и функционале. Чтобы корректно вычислять необходимые функции для предложения области (региона), в первую очередь следует преобразовать данные изображения в этой области в форму, которая будет полностью совместима с CNN (архитектура данной модели требует для входа фиксированный размер 227 × 227 пикселей). Из предложенных возможных преобразований выбранных областей произвольной формы необходимо отбирать самые простые. Вне зависимости от размеров и соотношений сторон анализируемого изображения с помощью систем обнаружения объектов все равно будут происходить искажения всех пикселей в узкой ограничительной рамке вокруг искомого объекта до необходимого размера. Перед самим процессом поиска и искажения будет расширяться и плотная ограничивающая рамка, так что при происходящем искажении размеров вокруг оригинала будет находиться ровно столько же пикселей искаженного контекста изображения.
Определение времени тестирования
В процессе тестирования системы обнаружения запускается выборочный поиск на тестовом изображении для получения около 2000 предположений по областям (регионам). Часто в подобных тестированиях используется селекционный «быстрый режим» поиска, что дополнительно сокращает время проходящего теста. Следующий шаг – это деформирование каждого предложения и распространение через CNN для возможности вычисления функций.
Далее для каждого класса начисляются баллы за все единицы извлеченных векторов с необходимыми признаками с использованием SVM, обученного для этого класса. С учетом всех выбранных областей изображения зачастую применяется не максимальное подавление (независимо для каждого класса), которое отклоняет область, если она имеет перекрытие, то есть пересечения–пересоединения (IoU) с выбранной областью с более высокой оценкой, чем проанализированный возможный порог.
Обучение
Предварительная подготовка должна происходить под контролем. Создатели моделей либо пользователи предварительно обучают CNN, назначая необходимые параметры на большом вспомогательном наборе данных (классификация ILSVRC2012) с использованием аннотаций на уровне изображения. Особенностью данного этапа является то, что метки ограничивающей рамки недоступны для этих данных.
Обучение системы R-CNN выполняется с использованием библиотек, например таких как Caffe CNN, где присутствует открытый исходный код. Обучение происходит таким образом для того, чтобы CNN максимально соответствовала производительности Крижевского и др.
Специфика настроек обучения
Чтобы адаптировать CNN к новым задачам (обнаружению объектов) и новому домену (искаженное предложение окна), продолжается стохастический градиентный спуск (SGD), то есть обучение параметров CNN с использованием только искривленной области предложения. Кроме замены 1000-факторного уровня классификации CNN, специфичного для ImageNet, бессистемно созданным (N + 1)-уровневым классификационным слоем (где N – количество классов объектов плюс 1 для фона), CNN архитектура будет оставаться неизменной.
Для ЛОС N = 20 и для ILSVRC2013, N = 200 – отношение ко всем предложенным регионам с 3 ≥ 0,5 IoU перекрывается с полем истинности в качестве положительных для определенного класса, а остальные ответы будут отображаться в этом случае как негативные. Далее запускается SGD со скоростью обучения 0,001 (1/10 от начальной скорости предварительной подготовки), что позволяет добиться прогресса в тонкой настройке, не мешая инициализации. В каждой итерации SGD стоит равномерно отбирать примерно 32 положительных окна (по всем классам) и 96 фоновых окон, чтобы создать мини-пакет размером в 128.
Классификаторы категорий объектов
Если цель поиска системы обнаружения объектов, например, найти автомобиль на изображении, то необходимо проработать процесс обучения двоичного файла классификатора для обнаружения этих автомобилей. Однозначно область изображения, где располагается признак автомобиля, должна стать положительным примером в момент обучения и последующей работе системы. Также ясно, что фоновая область, в которой нет ничего общего с автомобилями и их признаками, должна стать отрицательным примером. Стоить сказать, что есть и некоторые трудности с выделением областей, где находятся объекты, которые частично перекрывают автомобиль.
Зачастую эта проблема решается при помощи прописывания порогов перекрытия IoU, ниже которых области будут определяться как отрицательный пример. Важно тщательно высчитывать порог IoU.
Установка порогов, к примеру, на 0,5, как в [9] (Zeiler, Taylor, Fergus, 2011), уменьшила мАР на 5 баллов, тогда как при установке его на 0 это уменьшает mAP уже на 4 балла. Положительными примерами определяются стандартные наземные ограничивающие рамки для каждого вынесенного класса. После процесса по извлечению функций и использования ранее сформированных обучающих меток следующим действием является оптимизация в одну линейную SVM для классов. Из-за большого объема данных для обучения, которые не поместятся в исходном формате в памяти, часто используется стандартный метод жесткого отрицательного майнинга. Жесткий отрицательный майнинг быстро сходится, и на практике mAP останавливается, а увеличивается уже только после первого прохода по всем тестируемым или проверяемым изображениям.
Практическая значимость
Практическая значимость данного исследования определяется тем, что главные рекомендации, выводы, алгоритмы и методы могут быть использованы в работе предприятий и организаций любой принадлежности, структуры и формы управления и создания программных продуктов [10] с использованием технологий распознавания объектов для ознакомления с преимуществами R-CNN-подхода и оценки эффективности данного подхода под конкретные задачи.
Заключение
В этой статье описан простой и масштабируемый алгоритм обнаружения объектов на изображениях, который может повышать среднюю точность (mAP) более чем на 30% относительно предыдущего лучшего результата на VOC-2012, где высшей точкой достижения mAP было 53,3%. Исходя из информации, представленной многими авторами и обобщенной в данной статье, можно прийти к заключению, что R-CNN подход обеспечивает более быстрое и эффективное нахождение объектов независимо от размера объекта, расстояния или угла обзора. Избирательный поиск, в свою очередь, тоже часто обучается с помощью линейной регрессии параметров выбранных областей (регионов) – ширины, высоты, центра.
Метод bounding-box regression позволяет повысить скорость обработки, а также более точно выделить объект. В качестве данных для регрессии используются признаки, которые будут получены в результате проведенного анализа CNN, хотя и есть минусы, обучение сети занимает большой объем времени, однако этого недостатка можно избежать, используя один из родственных подходов R-CNN-метода, являющихся его ответвлением. Сам же R-CNN идеально использовать при нестандартном угле обзора на объект и необходимости относительно точной идентификации данных на объекте (по сравнению с другими методами распознавания объектов).
Источники:
2. Everingham M., Gool L., Williams C. K. I., Winn J., Zisserman A. The PASCAL Visual Object Classes (VOC) Challenge // International Journal of Computer Vision. – 2010. – № 2. – p. 303-338. – doi: 10.1007/s11263-009-0275-4.
3. Krizhevsky A., Sutskever I., Hinton G. ImageNet classification with deep convolutional neural networks. Dl.acm.org. [Электронный ресурс]. URL: https://dl.acm.org/doi/10.5555/2999134.2999257?cookieSet=1.
4. Lowe D. Distinctive image features from scale-invariant keypoints. Cs.ubc.ca. [Электронный ресурс]. URL: https://www.cs.ubc.ca/~lowe/papers/ijcv04.pdf.
5. Sermanet P., Eigen D., Zhang X., Mathieu M., Fergus R., LeCun Y. OverFeat: Integrated Recognition, Localization and Detection using Convolutional Networks. Researchgate.net. [Электронный ресурс]. URL: https://www.researchgate.net/publication/259441043_OverFeat_Integrated_Recognition_Localization_and_Detection_using_Convolutional_Networks.
6. Example-based learning for viewbased human face detection Sung K., Poggio T. Example-based learning for viewbased human face detection. Technical Report A.I. Memo No. 1521, Massachussets Institute of Technology. - 1994
7. Szegedy C., Toshev A., Erhan D. Deep neural networks for object detection. Arxiv.org. [Электронный ресурс]. URL: https://arxiv.org/pdf/1312.6885.pdf.
8. Uijlings J., Sande K., Gevers T., Smeulders А. Selective search for object recognition. Koen.me. [Электронный ресурс]. URL: https://www.koen.me/research/pub/uijlings-ijcv2013-draft.pdf.
9. Zeiler M., Taylor G., Fergus R. Adaptive deconvolutional networks for mid and high level feature learning. Ieeexplore.ieee.org. [Электронный ресурс]. URL: https://ieeexplore.ieee.org/document/6126474.
10. Komissarenko N. 3 метода детектирования объектов c Deep Learning: R-CNN, Fast R-CNN и Faster R-CNN. Soup. Medium.com/. [Электронный ресурс]. URL: https://medium.com/@bigdataschool/3-метода-детектирования-объектов-c-c-deep-learning-r-cnn-fast-r-cnn- %D0 %B8-faster-r-cnn-acdf6380fd33.
11. Zhilina E.V., Efimova E.V., Rutta N.A., Savskaya A.R. Developing a software neuro-fuzzy risk prediction product to ensure university's information security // 14th International Conference on Theory and Application of Fuzzy Systems and Soft Computing – ICAFS-2020: International Conference on Theory and Applications of Fuzzy Systems and Soft Computing. 2020.– doi: 10.1007/978-3-030-64058-3_76.
Страница обновлена: 14.07.2024 в 15:30:20