Изменения

Перейти к: навигация, поиск

Задача нахождения объектов на изображении

6953 байта убрано, 09:18, 11 апреля 2020
Семантическая сегментация
*[http://www.image-net.org/ ImageNet] {{---}} 400000 изображений 200 классов с 350000 размеченными ограничивающими рамками
*[http://storage.googleapis.com/openimages/web/factsfigures.html Google Open Images] {{---}} в шестой версии февраля 2020 года содержит свыше 1743000 изображений в тестовой выборке, свыше 41000 изображений в валидационной выборке и свыше 125000 изображений в тестовой выборке. Суммарно на изображениях размечено около 16000000 ограничивающих рамок
 
==Семантическая сегментация==
 
[[Файл:SegmentationExample.jpeg|300px|thumb|right|Пример семантической сегментации изображения]]
 
Для семантической сегментации чаще всего применяются глубокие [[:Сверточные_нейронные_сети|свёрточные нейронные сети]], в том числе, когда данные [https://arxiv.org/abs/1502.02734 слабо размечены]. Действительно, проблема низкого уровня размеченности данных в семантической сегментации довольно важна, поскольку для каждого пикселя определить его принадлежность с высокой точностью {{---}} задача, требующая высоких затрат времени и не всегда высокую точность. Однако, сочетание хорошо размеченных данных со слабо размеченными данными (например, с точностью до ограничивающих рамок) улучшает производительность модели. Для задачи сегментации [https://arxiv.org/abs/1605.06211 хорошо себя показали] FCN (англ. fully-convolutional networks) {{---}} полносвёрточные сети, позволяющие работать с изображениями произвольного размера, а на выходе выдавать тепловую карту нахождения классов на изображении через серию свёрток. Поскольку свёртка над матрицей большой размерности с большим числом каналом является затратной, как правило, первая половина слоёв в таких свёрточных сетях обеспечивает сабсэмплинг (англ. subsampling - уменьшение размерности), а вторая часть слоёв - апсэмплинг (англ. upsampling - увеличение размерности). Таким образом, размерность изображений в пикселях на входе и на выходе сети является одинаковой, а большинство операций свёртки применяется к матрицам небольшой размерности. Конечная классификация достигается за счёт выбора максимума по классам из значений тензора размерности $C \times W \times H$, где $C$ {{---}} множество классов, заранее заданных перед обучением и к которым могут принадлежать пиксели изображения, $W \times H$ {{---}} размер изображения. Такую модель можно обучить при помощи [[:Обратное_распространение_ошибки|обратного распространения ошибок]], а в качестве функции потерь для пикселей использовать кросс-энтропию.
 
Модель [https://arxiv.org/abs/1505.04597 U-Net], разработанная авторами для сегментации биомедицинских изображений, улучшает архитектуру FCN путём использования сужающихся блоков свёртки для захвата контекста, расширяющихся блоков свёртки для локализации, а также прямых связей между блоками свёртки на одинаковых уровнях. Прямая связь слоёв обеспечивает улучшенное обучение за счёт отсутствия так называемого "артефакта шахматной доски" {{---}} негативного явления, вызванного апсэмплингом при помощи транспонированной свёртки. Развитием U-Net, в свою очередь модель [https://arxiv.org/abs/1611.09326 DenseNet], в которой используются полностью связанные свёрточные сети. В основе идеи лежит использование "плотных блоков" {{---}} совокупности нескольких свёрточных слоёв с подключением каждого слоя к каждому слою. Однако, существенным недостатком такой модели является низкая эффективность работы с памятью.
 
Совершенно по-иному на свёртку для сегментации объектов позволил взглянуть метод расширенных свёрток (англ. atrous convolutions), применяющийся в современных state-of-the-art подходах ([https://arxiv.org/abs/1606.00915 DeepLab], [https://arxiv.org/abs/1706.05587 DeepLab v3], [https://paperswithcode.com/paper/encoder-decoder-with-atrous-separable DeepLab v3+]). Расширенная свёртка заключается в том, чтобы применять свёртки с ядрами разного размера и разным страйдом над прямоугольниками с одним и тем же центром, а впоследствии комбинировать полученные таким образом признаки. Расширенные свёртки могут применяться как каскадно (последовательно регулируя показатель расширения фильтра), так и параллельно (англ. ASPP, Atrous Spatial Pyramid Pooling {{---}} применяя свёртки с различным масштабом ядер на одном и том же слое свёрточной сети с пулингом в конце). Такой подход позволил достичь лучших результатов в изображениях с объектами разных масштабов.
 
{|align="center"
|-valign="top"
|[[Файл:U-Net-RUS.png|300px|thumb|Архитектура слоёв свёртки U-Net]]
|[[Файл:AtrousConvolution-RUS.png|300px|thumb|Расширенная свёртка (atrous convolution) и пространственный пирамидальный пулинг (ASPP)]]
|}
==Подходы к решению задачи детекции объектов==
107
правок

Навигация