Назад в библиотеку

ПРИМЕНЕНИЕ СВЕРТОЧНОЙ НЕЙРОННОЙ СЕТИ К РЕШЕНИЮ ЗАДАЧИ РАСПОЗНАВАНИЯ ПРОДУКТОВ ПИТАНИЯ НА ИЗОБРАЖЕНИИ

Авторы:В. А. Гарячев
Источник: Информационные технологии: теория и практика//М.: Парус, 2009г.

Аннотация

Данное исследование посвящено изучению применения сверточной нейронной сети к решению задачи распознавания продуктов питания на изображении. В ходе работы рассмотрены некоторые современные подходы к решению задачи распознавания продуктов питания по изображению, выполнен анализ возможных исходных данных для проведения исследования, а также реализован подход к решению поставленной задачи с использованием сверточных нейронных сетей. Для обучения нейронной сети использовались исходные данные из набора Food 101. В ходе исследования была разработана модель нейронной сети, способная распознавать на изображении продукты питания с точностью более 35%. В качестве выводов приведены факторы, которые необходимо учесть для модернизации модели нейронной сети с последующим увеличением точности распознавания.

Ключевые слова: распознавание образов, обработка изображений, нейронные сети, Keras, Python, CNN, Food 101

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

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

Среди нескольких изученных современных работ, посвящённых решению поставленной задачи, было отмечено исследование [1], в котором представлен набор данных из 101 000 изображений продуктов питания. В этом наборе 101 категория по 1000 изображений в каждой, представляющие собой, в основном, изображения готовых блюд. Преимущество описанных исходных данных в том, что они также представлены в удобном для быстрого обучения виде, то есть переформатированы как HDF5 файлы. Это позволяет легко и быстро их использовать для обучения и тестирования.

В ходе работы построена простая сверточная нейронная сеть, архитектура которой включает в себя четыре сверточных и два полносвязных слоя (рис. 1). Для создания модели был использован язык программирования Python 3.6, среда разработки Jupyter Notebook, а также библиотека Keras. Размер исходных изображений   64x64 пикселей, размер обучающей выборки   10099, размер тестовой выборки   1000, количество итераций обучения   10.

Структурная схема сверточной нейронной сети

Рисунок 1 – Структурная схема сверточной нейронной сети

На рисунке 2 представлен график зависимости точности (при обучении и валидации) от этапа обучения нейронной сети. На представленном графике видно, что итоговая точность алгоритма составила около 35%, что является сравнительно неплохим результатом.

График зависимости точности нейронной сети (при обучении и валидации) от этапа обучения

Рисунок 2 – График зависимости точности нейронной сети (при обучении и валидации) от этапа обучения

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

Список использованной литературы

  1. Bossard L, Guillaumin M, Van Gool L. Food–101–mining discriminative components with random forests //European Conference on Computer Vision 2014. С. 446–461.
  2. Методы распознавания образов и анализа изображений [Электронный ресурс] : электрон. учеб.–метод. комплекс по дисциплине в LMS Moodle / М–во образования и науки Рос. Федерации, Самар. гос. аэрокосм. ун–т им. С. П. Королева (нац. исслед. ун–т) (СГАУ); [авт.–сост. Э. И. Коломиец]. – Самара, 2013. – on–line