Виды искусственных нейронных сетей для обработки изображений: 1. Многослойный перцептрон ![Многослойный перцептрон](../Pictures/06_01.%20Многослойный%20перцептрон.png) 2. Сверточные нейронные сети ![Сверточная нейронная сеть](../Pictures/06_02.%20Сверточная%20нейронная%20сеть.png) Представление изображения в формате RGB: ![Представление изображения в формате RGB](../Pictures/06_03.%20Представление%20изображения%20в%20формате%20RGB.png) ## Сверточные нейронные сети **Сверточная нейронная сеть** - специальная архитектура искусственных нейронных сетей, предложенная Яном Лекуном и нацеленная на эффективное распознавание образов. Данной архитектуре удается гораздо точнее распознавать объекты на изображениях, так как, в отличие от многослойного персептрона, учитывается двухмерная топология изображения. ![Сверточная нейронная сеть](../Pictures/06_04.%20Сверточная%20нейронная%20сеть.png) ![Представление изображения в формате RGB](../Pictures/06_05.%20Представление%20изображения%20в%20формате%20RGB.png) #### Операция свертки ![Операция свертки](../Pictures/06_06.%20Операция%20свертки.png) ![Операция свертки](../Pictures/06_07.%20Операция%20свертки.png) ## Задачи, решаемые нейронными сетями применительно к изображениям #### Классификация изображений **Классификация** - отнесение изображения к одному или нескольким предопределенным классам. ![Классификация изображений](../Pictures/06_08.%20Классификация%20изображений.png) Примеры: - VGG19 ![VGG19](../Pictures/06_09.%20VGG19.png) - Inception - ResNeXt #### Детектирование объектов на изображении **Детектирование объектов** - поиск и выделение областей изображения, содержащих объекты определенного вида. ![Детектирование объектов на изображении](../Pictures/06_10.%20Детектирование%20объектов%20на%20изображении.png) Примеры: - Single Shot Detector ![Single Shot Detector](../Pictures/06_11.%20Single%20Shot%20Detector.png) #### Semantic segmentation **Semantic segmentation** - отнесение каждого пикселя изображения к определенному классу. ![Semantic segmentation](../Pictures/06_12.%20Semantic%20segmentation.png) Примеры: - UNET ![UNET](../Pictures/06_13.%20UNET.png) #### Instance segmentation **Instance segmentation** - поиск и выделение маской областей различных объектов одного семантического класса на одном изображении. ![Instance segmentation](../Pictures/06_14.%20Instance%20segmentation.png) Instance segmentation vs Semantic segmentation: ![Instance segmentation vs Semantic segmentation](../Pictures/06_15.%20Instance%20segmentation%20vs%20Semantic%20segmentation.png) Примеры: - MaskRCNN ![MaskRCNN](../Pictures/06_16.%20MaskRCNN.png) #### Генерация изображений **Генерация изображений** - процесс создания нового изображения на основе имеющегося. ![Генерация изображений](../Pictures/06_17.%20Генерация%20изображений.png) ## Генеративно-состязательные сети **GAN (Generative adversarial network)** - алгоритм, построенный на комбинации 2 нейронных сетей, одна из которых генерирует образцы, а другая старается отличить правильные образцы от неправильных. ![Генеративно-состязательные сети](../Pictures/06_18.%20Генеративно-состязательные%20сети.png) ## Инструменты 1. Python 3 2. Jupyter Notebook или PyCharm 3. OpenCV 4. PyTorch 5. CUDA