УДК 004.93
В статье представлен способ реализации мобильного приложения для распознавания продуктов питания на фотографии при помощи мобильного телефона. Рассмотрены метод классификации и распознавания объектов на изображении при помощи сверточной нейронной сети, метод хранения данных в мобильном приложении при помощи СУБД SQLLite. Результатом является спроектированное и реализованное приложение.
The article presents a way to implement a mobile application for recognizing food products in a photograph using a mobile phone. A method of classification and recognition of objects in an image using a convolutional neural network, a method of storing data in a mobile application using the SQLLite DBMS are considered. The result is a designed and implemented application.
Ключевые слова: нейронные сети, распознавание изображения, TensorFlow Lite, SQLite, Android.
Keywords: neural networks, image recognition, TensorFlow Lite, SQLite, Android.
На данный момент одним из перспективных направлений развития информационных технологий можно считать разработку алгоритмов распознавания объектов на изображении или видео. Системы, которые способны быстро и качественно распознавать объекты, сразу же находят свое прикладное применение в таких задачах, как городское видеонаблюдение, мониторинг социальных медиа, медицина и т.д.
Целью данной работы является сокращение времени записи информации в электронный дневник питания путем автоматического распознавания продуктов на изображении при помощи нейронной сети средствами мобильного телефона.
Технология и теория для создания интеллектуальных машин, производящих обнаружение, детектирование и классификацию объектов называется компьютерным зрением [1].
Компьютерное зрение используется для создания интеллектуальных систем, обрабатывающих информацию из изображений и видео. Одним из самых популярных, успешных и широко распространённых подходов для анализа видеоизображений являются нейронные сети. Наиболее эффективными в задачах распознавания изображений и речи являются сверточные нейронные сети [2]. Их особенность заключается в том, что сверточная сеть способна сама определять признаки (фильтры) для определённого объекта, т.е. нет необходимости вручную определять характерные признаки, а потом их выделять на примерах.
Самая распространенная и широко известная за счет открытой программной библиотеки для машинного обучения является платформа TesorFlow[3]. Ее дочерней платформой является TensorFlow Lite для работы на мобильных устройствах. Для решения поставленной задачи в библиотеке TensorFlow Lite предлагается обученная готовая модель для классификации более 1000 объектов. Среди них около 73 наименований, связанных с питанием человека: морепродукты, мясо, фрукты и овощи, готовые блюда, напитки и кондитерские изделия.
По умолчанию в Android используется SQLite – популярная и простая в освоении реляционная база данных. Использование SQLite является оптимальным решением при мобильной разработке, когда не требуется хранить данные на сервере, а только на самом мобильном устройстве.
На рисунке 1 представлена диаграмма вариантов использования приложения. Действующим лицом является пользователь, который обладает доступом к основным функционалам системы.
В качестве среды разработки выбрана Android Studio. Интерфейс приложения представлен на рисунке 2 и 3.
Данное приложение позволяет распознавать продукт питания, фотография которого получена с камеры мобильного телефона. В результате экспериментов процент правильного распознавания составляет 64%. Дальнейшее развитие приложения позволит расширить функциональные возможности и повысить удобство использования приложения. Можно добавить секцию «Спорт», что привлечет больше пользователей увлекающихся своим здоровьем. Это может быть дневник объемов тела, учет физических и полезных привычек, полезные статьи и рецепты.
Список литературы
- Обзор алгоритмов детектирования текстовых областей на изображениях и видеозаписях Электронный ресурс / Ю. А. Болотова, В.Г. Спицын, П.М. Осина // Компьютерная оптика: научный журнал/ Институт систем обработки изображений Российской академии наук. – 2017. – Т.41, №3.– С. 441-452. – Электронный ресурс. – Свободный доступ из сети Интернет. Режим доступа: https://doi.org/10.18287/2412-6179-2017-41-3-441-452
- Goodfellow I., Bengio Y., Courville А. Deep Learning/ – Cambridge, MIT Press, 2016. – 800 с.
- Geron A., Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems.: – Sebastopol, "O'Reilly Media, Inc.", 2019 , 856 с.
Текст статьи, опубликованный в сборнике (скачать).