Нейронные сетевые системы и компьютерно-реализуемые способы идентификации и/или оценки одного или более пищевых изделий в визуальной входной информации

Изобретение относится к способу, системе и носителю информации для обработки видеопотока для идентификации и оценки качества производства пиццы. Технический результат заключается в повышении точности распознавания объектов в видеопотоке. В способе выполняют прием с помощью процессора непрерывного видеопотока, по меньшей мере, из одного положения камеры над столом, сконфигурированным для приема готовых пицц; сбор с помощью процессора множества видеокадров пиццы, содержащих видеокадры выбранной пиццы, из этого видеопотока; применение с помощью процессора первой сверточной нейронной сети (CNN) для выбора набора видеокадров выбранной пиццы с пиццей с самым высоким рейтингом из множества видеокадров пиццы; применение с помощью процессора первой CNN для идентификации изображения выбранной пиццы с пиццей с самым высоким рейтингом из набора видеокадров пиццы с самым высоким рейтингом; применение с помощью процессора первой CNN для локализации, по меньшей мере, одной порции выбранной пиццы в идентифицированном изображении с пиццей с самым высоким рейтингом; применение с помощью процессора первой CNN для определения типа выбранной пиццы из идентифицированного изображения с пиццей с самым высоким рейтингом; применение с помощью процессора второй сверточной нейронной сети (CNN) для задания карты компонентов выбранной пиццы в результате автоматического выполнения сегментации изображения порции пиццы на основе, по меньшей мере, типа пиццы; и применение с помощью процессора второй CNN для автоматического подсчета баллов выбранной пиццы на основе заданной карты компонентов пиццы, содержащее: разделение с помощью процессора порции пиццы из идентифицированного наилучшего изображения на множество ломтиков; вычисление с помощью процессора градиентов одного из множества ломтиков выбранной пиццы; повторение с помощью процессора этапа вычисления градиентов оставшихся ломтиков из множества ломтиков; и определение с помощью процессора итогового балла выбранной пиццы на основе вычисления градиентов множества ломтиков. 3 н. и 27 з.п. ф-лы, 23 ил., 1 табл.

 

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

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

ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ

Быстро растущий спрос на пиццу создают для производителей пиццы стимулы к повышению качества и эффективности производства пиццы. Уровень техники, включающий разработки, посвященные проблеме оптимизации производства и повышению качества производимой пиццы, можно представить следующими техническими решениями - RU 2654199 C1 (Samsung Electronics Co., Ltd.), 16.05.2018; CN 106529564 A (Universal Zhejiang Technology), 22.03.2017; CN 108335300 A (Universal Beijing Technology & Business), 27.07.2018; CN 107563439 A (Hunan Luchuan Information Technology Co. Ltd.), 09.01.2018; US 2018/0122063 A1 (Roche Diabetes Care, Inc.), 03.05.2018: WO 2018/148740 A1 (Iceberg Luxembourg), 16.08.2018; US 9977980 B2 (Microsoft Technology Licensing, LLC), 22.05.2018; US 9659225 B2 (Microsoft Corporation), 23.05.2017; CN 1147723 С (Huazhong Science & Engineering), 28.04.2004; WO 2016/077934 A1 (Le Henaff, Guy), 26.05.2016. Однако большинство производителей пиццы по-прежнему использует ручной мониторинг процесса производства пиццы, являющийся причиной изменения качества пиццы и затрат времени и человеческого труда.

КРАТКОЕ ИЗЛОЖЕНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ

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

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

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

В некоторых вариантах осуществления видеокадры видеопотока распределяются по категориям в случаях, включающих в себя:

i) первый случай для изображений без пиццы;

ii) второй случай для нецентрированных изображений пиццы;

iii) третий случай для центрированных изображений пиццы и качеством разрешения, составляющим X;

iv) четвертый случай для центрированных изображений пиццы и качеством разрешения, составляющим Y, где Υ выше чем X;

v) пятый случай для центрированных изображений пиццы первого типа и требуемым качеством разрешения; и

vi) шестой случай для центрированных изображений пиццы второго типа и требуемым качеством разрешения.

В некоторых вариантах осуществления применение первой CNN для выбора набора видеокадров пиццы с самым высоким рейтингом из видеокадров пиццы и идентификации наилучшего изображения выполняется с помощью графического процессора (GPU).

В некоторых вариантах осуществления применение первой CNN для выбора набора видеокадров пиццы с самым высоким рейтингом из видеокадров пиццы выполняется с помощью неточного детектора высокого быстродействия.

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

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

В некоторых вариантах осуществления число элементов множества ломтиков составляет 8.

В некоторых вариантах осуществления вторая CNN имеет путь сжатия и путь расширения.

В некоторых вариантах осуществления путь сжатия включает в себя множество слоев свертки и активации.

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

В некоторых вариантах осуществления путь сжатия дополнительно включает в себя слой выпрямленных линейных единиц (ReLU) и слой подвыборки, следующие за каждым слоем свертки и активации перед переходом к следующему слою свертки и активации.

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

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

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

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

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

В некоторых вариантах осуществления компьютерный программный код включает в себя инструкции по применению первой CNN для выбора набора видеокадров пиццы с самым высоким рейтингом из видеокадров пиццы, выполняемого с помощью неточного детектора высокого быстродействия.

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

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

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

На фиг. 1-9 показаны блок-схемы и/или определенные компьютерные архитектуры, являющиеся представительными для некоторых типовых объектов настоящего изобретения в соответствии, по меньшей мере, с некоторыми принципами, по меньшей мере, в некоторых вариантах осуществления настоящего изобретения.

ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

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

По всему описания каждый из приводимых ниже терминов имеет значения в данном документе одно смысловое значение, если в контексте ясно не оговорено иное. Фразы "в одном варианте осуществления" и "в некоторых вариантах осуществления", используемые в данном документе, необязательно относятся к одному и тому же варианту(ам) осуществления, однако это не исключено. Кроме того, фразы "в другом варианте осуществления" и "в некоторых других вариантах осуществления" в данном документе необязательно относятся к разным вариантам осуществления, однако это не исключено. Таким образом, как описано ниже, различные варианты осуществления изобретения могут быть без труда объединены без выхода за пределы объема или сущности изобретения.

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

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

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

Термин, "динамичный (в динамике)" означает возможность инициирования и/или наступления событий и/или действий без какого-либо вмешательства человека. В некоторых вариантах осуществления события и/или действия в соответствии с настоящим изобретением могут происходить в реальном времени и/или с предварительно заданной периодичностью, по меньшей мере, в течение: наносекунды, нескольких наносекунд, миллисекунд, нескольких миллисекунд, секунд, несколько секунд, минут и/или нескольких минут, ежечасно, с периодичностью в несколько часов, ежедневно, с периодичностью в несколько дней, еженедельно и/или ежемесячно и т.д.

В некоторых вариантах осуществления заявленные электронные системы имеют связь с электронными мобильными устройствами (например, смартфонами и т.д.) пользователей и сервером(ами) в распределенной сетевой среде, обеспечивающую обмен данными через подходящую сеть передачи данных (например, интернет и т.д.) с использованием, по меньшей мере, одного подходящего протокола передачи данных (например, IPX/SPX, Х.25, АХ.25, AppleTalk(TM), TCP/IP (например, HTTP) и т.д.). В некоторых вариантах осуществления допускается множество параллельных пользователей (например, линий/станций по производству пиццы), в том числе, по меньшей мере, 2 (например, в том числе, 2-10), по меньшей мере, 10 (например, в том числе, 10-100), по меньшей мере, 100 (например, в том числе, 100-1000), по меньшей мере, 1000 (например, в том числе, 1000-10000) и т.д.

В некоторых вариантах осуществления заявленные специально запрограммированные вычислительные системы со связанными устройствами сконфигурированы для работы в распределенной сетевой среде, обеспечивающей обмен данными через подходящую сеть передачи данных (например, интернет и т.д.) с использованием, по меньшей мере, одного подходящего протокола передачи данных (например, IΡΧ/SPX, Х.25, АХ25, AppleTalk(TM), TCP/IP (например, HTTP) и т.д.). Следует отметить, что описанные в данном документе варианты осуществления, разумеется, могут быть реализованы с использованием любых подходящих языков аппаратного и/или компьютерного программного обеспечения. При этом специалисты в данной области хорошо разбираются в типе используемого компьютерного оборудования, типе методов компьютерного программирования, которые могут быть использованы (например, объектно-ориентированного программирования) и типе языков компьютерного программирования которые могут быть использованы (например, С ++, Objective-C, Swift, Java, Javascript, Python, Perl). Разумеется, приведенные примеры носят иллюстративный, а не ограничительный характер.

Термины "изображение(я)" и "данные изображения" в данном являются взаимозаменяемыми и служат для идентификации данных, представляющих визуальный контент, который включает в себя, в том числе, изображения, закодированные в различных компьютерных форматах (например, ".jpg", ".bmp" и т.д.), потоковое видео на основе различных протоколов (например, протокола потоковой передачи в реальном времени (RTSP), протокола передачи в реальном времени (RTP), протокола управления передачей в реальном времени (RTCP) и т.д.), записанное/генерируемое непотокового видео различных форматов (например, ".mov", ".mpg", ".wmv", ".avi", ".flv" и т.д.), и визуальные образы в реальном времени, полученные через приложения для камеры на мобильном устройстве.

Раскрытые в данном документе объекты изобретения могут быть реализованы в виде программного обеспечении или встроенного программного обеспечения или их комбинации или в виде инструкций, хранимых на машиночитаемом носителе, с возможностью считывания и исполнения с помощью одного или более процессоров. Машиночитаемый носитель может включать в себя любой носитель и/или механизм для хранения или передачи информации в форме, доступной для считывания машиной (например, вычислительным устройством). Например, машиночитаемый носитель может включать в себя постоянную память (ROM); оперативную память (RAM); накопители на магнитных дисках; оптические носители; устройства флэш-памяти; электрические, оптические, акустические или другие формы распространяемых сигналов (например, несущие волны, инфракрасные сигналы, цифровые сигналы и т.д.) и другие.

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

Термины "компьютерный двигатель" и "двигатель" идентифицируют в данном документе, по меньшей мере, один программный компонент и/или комбинацию, по меньшей мере, одного программного компонента и, по меньшей мере, одного аппаратного компонента, которые спроектированы/запрограммированы/сконфигурированы для управления/контроля других программных и/или аппаратных компонентов (таких как библиотеки, комплекты разработки программного обеспечения (SDK), объекты и т.д.).

Примеры аппаратных элементов могут включать в себя процессоры, микропроцессоры, схемы, элементы схем (например, транзисторы, резисторы, конденсаторы, индуктивности и т.д.), интегральные схемы, специализированные интегральные схемы (ASIC), программируемые логические устройства (PLD), цифровые сигнальные процессоры (DSP), программируемые вентильные матрицы (FPGA), логические вентили, регистры, полупроводниковые приборы, чипы, микрочипы, чипсеты и т.д. В некоторых вариантах осуществления один или более процессоров могут быть реализованы как процессоры с полным набором команд (CISC) или процессоры с сокращенным набором команд (RISC), х86-совместимые процессоры, многоядерные или любые другие микропроцессоры, центральные процессоры (CPU) или графические процессоре (GPU). В различных примерах реализации один или более процессоров могут представлять собой двухъядерный процессор(ы), двухъядерный мобильный процессор(ы) и т.д.

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

В одном примере реализации многопроцессорная система может включать в себя множество процессорных чипов, каждый из которых включает в себя, по меньшей мере, один компонент ввода/вывода, который предназначен для непосредственного соединения с фотонными компонентами для соединения, по меньшей мере, с устройством ввода/вывода. В некоторых вариантах осуществления устройство ввода/вывода может представлять собой стандартный интерфейс, такой как интерфейс, регламентируемый стандартом (PCIe) периферийных компонентов, универсальная последовательная шина (USB), Ethernet, Infiniband и т.п. В некоторых вариантах осуществления устройство ввода/вывода может включать в себя запоминающее устройство.

В одном примере реализации многопроцессорная система может включать в себя множество фотонных компонентов и память вне чипа. Память вне чипа может совместно использоваться более чем одним из процессорных чипов. Память вне чипа может непосредственно соединяться с одним процессорным чипом и совместно использоваться с другими процессорными чипами с использованием архитектуры глобальной памяти, реализованную с использованием подхода "процессор к процессору". Многопроцессорная система может также включать в себя кэш-память и множество процессорных чипов, каждый из которых включает в себя, по меньшей мере, один компонент ввода/вывода, предназначенный для непосредственного соединения с фотонными компонентами для обмена данными с одним или несколькими другими процессорными чипами. По меньшей мере, один компонент ввода/вывода, по меньшей мере, одного из процессорных чипов может быть сконфигурирован для использования протокола когерентности кэш-памяти. В некоторых вариантах осуществления кэш-память, по меньшей мере, одного из процессорных чипов может быть сконфигурирована для хранения информации каталогов. В некоторых вариантах осуществления память вне чипа может включать в себя DRAM (динамическую оперативную память). В некоторых вариантах осуществления информация каталогов может храниться в памяти вне чипа и в кэш-памяти на чипе, по меньшей мере, одного из процессорных чипов. В некоторых вариантах осуществления многопроцессорная система может дополнительно включать в себя подсистему каталогов, сконфигурированную с некоторой частью подсистемы, реализованной на высокопроизводительном чипе, который является частью стека памяти 3D DRAM. В некоторых вариантах осуществления многопроцессорная система может дополнительно включать в себя подсистему каталогов, сконфигурированную для поддержки различного числа разделителей на блок памяти. В некоторых вариантах осуществления многопроцессорная система может дополнительно включать в себя подсистему каталогов, сконфигурированную для поддержки различного числа разделителей на блок памяти с использованием хеширования для записей с памятью для различного числа указателей для разделителей. В некоторых вариантах осуществления многопроцессорная система может дополнительно включать в себя подсистему каталогов, сконфигурированную для использования хеширования для уменьшения объема памяти, выделенной для блоков памяти с нулевым числом разделителей.

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

Иллюстративные примеры заявленных, основанных на CNN,

компьютерно-реализуемых способов поиска и подсчета баллов пиццы в видеопотоке

Иллюстративные примеры общей заявленной архитектуры

В некоторых вариантах осуществления в настоящем изобретении предлагается типовая заявленная, основанная на CNN, компьютерно-реализуемая система, сконфигурированная для идентификации и оценки производства пищевых изделий, такого как производство пиццы на основе визуальной входной информации (например, видеопотока и т.д.). На фигуре 1 представлена типовая общая архитектура 100, позволяющая реализовать типовую заявленную, основанную на CNN, компьютерно-реализуемую систему для идентификации и оценки производства пищевых изделий, такого как производство пиццы. В некоторых вариантах осуществления архитектура сохраняет видеопоток с помощью модуля Smart Video Saver 1, описанного в данном документе со ссылками фигуры 2А-В и 3А-В. Сохраненный видеопоток содержит один или более видеокадров Video 1, 2, 3, … N.

В некотором варианте осуществления кадры Video 1, 2, 3, … N видеопотока представляются в качестве входной информации в типовой заявленный модуль Pizza Detector 2, в котором видеокадры - один или более из видеокадров Video 1, 2, 3, … Ν, не имеющие размытости вследствие движения и/или расфокусировки, обрабатываются детектором 2 пиццы для идентификации одного или более наилучших потенциальных видеокадров. В некотором варианте осуществления наилучшие потенциальные видеокадры затем обрабатываются детектором 2 пиццы путем применения типовой обучаемой заявленной сверточной нейронной сети для идентификации наилучшего видеокадра с изображением пиццы наилучшего разрешения.

В некоторых вариантах осуществления типовой заявленный модуль Pizza Detector 2 сконфигурирован для классификации видеокадров Video 1, 2, 3, … N в случаях, которые могут быть определены как, в том числе:

случай 1: отсутствие изображения пиццы;

случай 2: изображение пиццы имеется, но расположено не в центре кадра;

случай 3: изображение пиццы имеется, располагается в центре кадра и имеет качество разрешения X;

случай 4: изображение пиццы имеется, располагается в центре кадра и имеет качество разрешения Y, где Υ выше чем X;

случай 5: изображение пиццы имеется, располагается в центре кадра, имеет требуемое качество разрешения, и пицца представляет собой обычный тип пиццы;

случай 6: изображение пиццы имеется, располагается в центре кадра, имеет требуемое качество разрешения, и пицца представляет собой белый (рикотта) тип пиццы; … и т.д.

В некоторых вариантах осуществления типовой заявленный модуль Pizza Detector 2 использует типовую заявленную CNN, обученную классификации видеокадров Video 1, 2, 3, … N на основе предварительно заданных случаев, для идентификации, по меньшей мере, одного кадра с наилучшим изображением пиццы определенного типа (например, изображение располагается в центре, имеет требуемое качество разрешения, и пицца представляет собой белый (рикотта) тип пиццы). В некоторых вариантах осуществления в случае видеокадров с изображением пиццы для идентификации положения (локализации) типовая заявленная CNN может быть обучена, по меньшей мере, частично, на основе определения ограничивающей рамки 102 и одной или более двоичных масок, обеспечивающих возможность обесценения, например, в том числе, фоновых пикселов в кадре.

В некоторых вариантах осуществления одна или более двоичных масок представляют данные в двоичной форме, используемой для битовых операций, в частности, в битовом поле. Использование маски позволяет установить несколько битов в байте, полубайте, слове и т.д. на включение, выключение или инвертирование с включения на выключение (или наоборот) в одной битовой операции. В соответствии с одним вариантом осуществления типовой заявленной, основанной на CNN, компьютерно-реализуемой системы одна или более двоичные маски состоят из нулей и цифр, где каждая цифра указывает на соответствие этого пиксела пицце.

В некоторых вариантах осуществления типовой заявленный модуль Pizza Detector 2 сконфигурирован для применения типовой заявленной CNN для выделения наилучших изображений (например, 10 наилучших изображений) из видеокадров Video 1, 2, 3, … N. В некоторых вариантах осуществления выделение наилучших изображений выполняют на GPU.

В некоторых вариантах осуществления типовой заявленный модуль Pizza Detector 2 содержит два детектора: типовой заявленный неточный детектор высокого быстродействия и типовой заявленный точный детектор низкого быстродействия. В некоторых вариантах осуществления типовой неточный детектор высокого быстродействия использует типовую заявленную CNN, обученную применению подхода на основе типовых заявленных машин опорных векторов (SVM, а также сетей опорных векторов) и типовой заявленной гистограммы направленных градиентов (HOG) и сконфигурированную на выделение наилучших изображений (например, 10 наилучших изображений) из видеокадров Video 1, 2, 3, … N.

При машинном обучении типовая заявленная SVM использует типовую заявленную CNN, обученную контролируемым обучающим моделям с ассоциированными обучающими алгоритмами, которые анализируют данные, используемые для классификации и регрессионного анализа. С учетом набора примеров обучения, каждый из которых отмечен как относящийся к одной или другой из двух категорий, алгоритм обучения типовой заявленной SVM создает модель, которая относит новые примеры к одной или другой категории, и делает ее невариантным двоичным линейным классификатором (несмотря на существованием методов, таких как масштабирование Plat, t для использования SVM в настройке вероятностной классификации). Модель типовой заявленной SVM является представлением примеров как точек в пространстве с картированием, обеспечивающим разделение примеров отдельных категорий пробелами максимально возможной ширины. Новые примеры при этом отображаются в этом пространстве и, как предполагается, относятся к категории, определяемой стороной пробела, на который эти примеры приходятся.

В некоторых вариантах осуществления в качестве используемых в настоящем изобретении при применении типовой заявленной CNN модели обучаются на наборе данных, полученном от одной или более камер, таких как как IP-камера 202 на фигуре 2, описываемой в данном документе. В некоторых вариантах осуществления модели обучаются с использованием SVM.

В некоторых вариантах осуществления набор данных содержит приблизительно 9000 изображений с ограничивающими рамками 102 разметки. В некоторых вариантах осуществления для каждой пиццы существует метка типа, подлежащая идентификации типовым заявленным модулем Pizza Classifier 3, подробно описываемым в данном документе. Затем создается одна или более типовых заявленных двоичных масок пиццы приблизительно для 90 изображений (приблизительно 1%) из 9000 изображений набора данных.

В некоторых вариантах осуществления типовая заявленная HOG представляет собой дескриптор гистограммы направленных градиентов, используемый в компьютерном зрении и при обработке изображений с целью обнаружения объекта. Типовая заявленная HOG использует типовую заявленную CNN, обученную подсчету случаев ориентации градиента на локализованных участках изображения. В некоторых вариантах осуществления типовая заявленная HOG использует типовую заявленную CNN, обученную описанию внешнего вида и формы локального объекта в изображении с помощью распределения градиентов интенсивности или направлений края. Изображение разделяется на небольшие связанные области, называемые ячейками, и для пикселов в каждой ячейке составляется гистограмма направлений градиента. Дескриптор представляет собой конкатенацию этих гистограмм. Для повышения точности локальные гистограммы могут быть контрастно-нормализованы путем вычисления меры интенсивности в большей области изображения, называемой блоком, а затем с использованием этого значения для нормализации всех ячеек в блоке. Эта нормализация приводит к лучшей инвариантности к изменениям освещения и затенения.

В некоторых вариантах осуществления типовая заявленная CNN была обучена на применение к наилучшим изображениям для выполнения точной локализации. Типовая заявленная CNN дополнительно была обучена проверке размытости или неразмытости изображения перед подачей этих изображений к детекторам в соответствии с некоторыми вариантами осуществления.

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

В некотором варианте осуществления выбранный наилучший кадр направляется в типовой заявленный модуль Pizza Classifier 3 с использованием CNN для определения: типа пиццы и/или типа корочки, такой как, в том числе, тонкая корочка, традиционная корочка и толстая корочка. Некоторые типовые виды пиццы, которые могут быть идентифицированы с помощью типового заявленного модуля Pizza Classifier 3 типовой заявленной, основанной на CNN, компьютерно-реализуемой системы, включают в себя, в том числе, с пепперони, с колбасой, с грибами, с зеленым перцем, с помидорами, с канадским беконом, с пепперони/колбасой (только с качественным пепперони), с пепперони/помидорами (только с качественным пепперони), с пепперони/грибами (только с качественным пепперони), с пепперони/беконом (только с качественным пепперони), с пепперони/луком (только с качественным пепперони), с пепперони/канадским беконом (только с качественным пепперони), с пепперони/зеленым перцем (только с качественным пепперони), с помидорами/колбасой, с помидорами/грибами, с помидорами/луком (только с качественными помидорами), с помидорами/беконом (только с качественными помидорами), с помидорами/канадским беконом, с грибами/колбасой, с грибами/беконом (только с качественными грибами), с грибами/канадским беконом, с зеленым перцем/колбасой, с зеленым перцем/помидорами, с зеленым перцем/беконом (только с качественным зеленым перцем), с зеленым перцем/луком (только с качественным зеленым перцем), с зеленым перцем/канадским беконом, с канадским беконом/луком (только с качественным канадским беконом), с канадским беконом/беконом (только с качественным канадским беконом качественного), с канадским беконом/колбасой.

В некоторых вариантах осуществления типовой заявленный модуль Pizza Classifier 3 использует типовую заявленную CNN, обученную идентифицировать до 21 типа пиццы с предварительно заданной точностью. В некоторых вариантах осуществления точность может достигать, по меньшей мере, 80%. В некоторых вариантах осуществления точность может достигать, по меньшей мере, 85%. В некоторых вариантах осуществления точность может достигать, по меньшей мере, 90%. В некоторых вариантах осуществления точность может достигать, по меньшей мере, 95%. В некоторых вариантах осуществления точность может достигать 80-100%. После определения типа пиццы выбранный наилучший кадр направляется на вход следующей CNN типового заявленного модуля Scorer 4, который применяет усовершенствованную архитектуру CNN. Типовой заявленный модуль Scorer 4 использует типовую заявленную CNN, обученную представлению карты теста, сыра и других ингредиентов для выполнения проверки качества пиццы и подсчета баллов на основе карты теста, сыра и других ингредиентов, иллюстрированной в данном документе на фигурах 4-5.

Поиск пиццы в видеопотоке

В некоторых вариантах осуществления типовая заявленная, основанная на CNN, компьютерно-реализуемая система может быть выполнена на одной или более камерах, установленных поблизости от пиццы, подлежащей поиску. На фигуре 2А показано типовое заявленное устройство 200, позволяющее реализовать основанную на CNN, компьютерно-реализуемую систему для идентификации и оценки производства пищевых продуктов, такого как производство пиццы.

В некоторых вариантах осуществления типовая заявленная, основанная на CNN, компьютерно-реализуемая система использует камеру интернет-протокола или IP-камеру 202, которая является цифровой видеокамерой, используемой для наблюдения, и которая может отправлять и принимать данные через компьютерную сеть и интернет. Такая IP-камера является либо централизованной (требуется центральный сетевой видеомагнитофон (NVR) для управления записью и воспроизведением видеоинформации и сигнализацией) в соответствии с некоторыми вариантами осуществления, либо децентрализованной (нет необходимости в NVR, поскольку камера может записывать на любой локальный или удаленный носитель информации) в соответствии с некоторыми другими вариантами осуществления. В некоторых вариантах осуществления используемая камера имеет разрешение 4 мегапиксела - 1920x1080 (Full High-Definition (HD)) и до 4 потоков H.264/MJPEG, 25 кадр/с. В некоторых вариантах осуществления угол обзора камеры составляет не менее чем 32-87° (по горизонтали) и 18-46° (по вертикали). В некоторых вариантах осуществления минимальное расстояние между камерой и объектом (например, пиццей) составляет приблизительно 1 м.

Вышеупомянутая конфигурация обеспечивает возможность доступа типовой заявленной, основанной на CNN, компьютерно-реализуемой системы к веб-интерфейсу и настройкам камеры, доступа к потоковой передаче видео (по меньшей мере, по одному каналу) и изображения пиццы с достаточно высоким разрешением в соответствии с некоторыми вариантами осуществления.

В некоторых вариантах осуществления одна или более видеокамер 202 закреплены над столом 204 для резки для регистрации активности на этом столе. В некоторых вариантах осуществления камера смонтирована на потолочной панели 206 прямо над столом 204 для резки с помощью двух самонарезающих винтов. Вся проводка может быть скрыта внутри потолка. Розетка для подключения камеры может находиться внутри потолка. Камера 202 смонтирована на потолке 206 и направлена на середину разделочной доски 208, установленной на столе 204 для резки. В некоторых вариантах осуществления камера смонтирована с небольшим наклоном, составляющим 2-5 см.

На фигуре 2В показана разделочная доска 208, установленная на столе 204 для резки в типовом заявленном устройстве, как показано на фигуре 2А, в соответствии с некоторыми вариантами осуществления. В некоторых вариантах осуществления разделочная доска 208 закреплена на столе 204 с помощью алюминиевых стержней 210а-с, которые могут быть скрыты внутри разделочной доски. Стержни 210а-с могут быть приклеены с помощью, в том числе, безопасного. Черный круг 212 на разделочной доске 208 на фигуре 2А представляет собой пиццу. Камера 202 сконфигурирована для захвата пиццы, размещенной в любом месте на разделочной доске 208.

В некоторых вариантах осуществления возможно изменение настроек сети в соответствии с выбранными конфигурациями сети или выбранным внешним -адресом каждого ресторана.

В случае, когда продолжительность активности захвата превышает предварительно заданный промежуток времени, например, 3 секунды, такой видеокадр загружается на сервер и затем подвергается обработке с помощью алгоритма поиска. В некоторых вариантах осуществления каждая камера может сохранять до 1-1500 коротких видеокадров в день. В некоторых вариантах осуществления каждая камера может сохранять, по меньшей мере, до 500 коротких видеокадров в день. В некоторых вариантах осуществления каждая камера может сохранять, по меньшей мере, до 1000 коротких видеокадров в день.

В некоторых вариантах осуществления алгоритм поиска выполняется с помощью типового заявленного модуля Pizza Detector 2 на фигуре 1, применяющего типовую заявленную CNN. Все видеокадры без размытости вследствие движения и/или расфокусировки подвергаются обработки с помощью типовой заявленной CNN для процедуры принятия решения.

В некоторых вариантах осуществления алгоритм поиска выполняется с помощью типового заявленного неточного детектора высокого быстродействия в составе типового заявленного модуля Pizza Detector 2 на фигуре 1. Все видеокадры без размытости вследствие движения и/или расфокусировки подвергаются обработке помощью детектора высокого быстродействия на основе типовых заявленных дескрипторов HOG с использованием типовой заявленный линейный SVM в качестве процедуры принятия решения.

Набор N наилучших видеокадров выбирается по значению достоверности, при котором N является отличным от 0 целым числом (например, 3, 5, 10, 15 и т.д.). В некотором варианте осуществления N может быть любым целым числом в диапазоне 1-20. В некотором варианте осуществления N может составлять, по меньшей мере, 5. В некотором варианте осуществления N может составлять, по меньшей мере, 10. В некотором варианте осуществления достоверность составляет 95%. В некотором варианте осуществления достоверность может быть изменена после повторного обучения алгоритма.

В некоторых вариантах осуществления набор N наилучших видеокадров обрабатывается и выбирается с помощью типового заявленного модуля Pizza Detector 2 на фигуре 1, применяющего CNN. Наилучший видеокадр выбирается из набора с достоверностью, превышающей предварительно заданное значение достоверности, такого как 95%. В случае отсутствия видеокадра с достоверностью, превышающей это предварительно заданное значение достоверности алгоритм заканчивает свою работу.

В некоторых вариантах осуществления набор N наилучших видеокадров обрабатывается и выбирается с помощью типового заявленного точного детектора низкого быстродействия в составе типового заявленного модуля Pizza Detector 2 на фигуре 1. Наилучший видеокадр выбирается из набора с достоверностью, превышающей предварительно заданное значение достоверности, такого как 95%. В случае отсутствия видеокадра с достоверностью, превышающей это предварительно заданное значение достоверности алгоритм заканчивает свою работу.

Подсчет баллов пиццы

На фигуре 3А представлен типовой выбранный наилучший кадр с изображением 300 пиццы, который может быть далее подвергнут проверке с помощью основанной на CNN, компьютерно-реализуемой системы в соответствии с некоторыми вариантами осуществления. В некоторых вариантах осуществления вид и размер пиццы определяется по выбранному кадру 300 с помощью типовой заявленной, основанной на CNN, компьютерно-реализуемой системы. В некоторых вариантах осуществления размер определяется по диаметру пиццы на выбранном кадре в пикселах.

В некоторых вариантах осуществления модуль Pizza Classifier 3 на фигуре 1 использует типовую заявленную CNN, обученную определению типа пиццы, как отмечалось выше со ссылками на фигуру 1. В случае невозможности достоверного распознавания типа пиццы алгоритм заканчивает свою работу.

Затем выбранный кадр направляется на вход следующей CNN, управляемой модулем Scorer 4 на фигуре 1, использующим типовую заявленную CNN, обученную выполнению сегментации изображения пиццы, и, таким образом, представляющим в качестве выходных данных карты теста/корочки, сыра и наполнителей. Тесто/корочка, наполнители, сыр и готовность пиццы подвергаются проверке, и каждый из этих компонентов оценивается в баллах, как описывается в данном документе. Общая оценка в баллах, представляющая собой комбинацию оценок в баллах теста/корочки, наполнителей, сыра и готовности образует общую оценку качества пиццы. В некоторых вариантах осуществления модуль Scorer 4 на фигуре 1 использует типовую заявленную CNN, обученную оценке качества пиццы в баллах по карте ингредиентов.

Типовой способ обработки порции пиццы на изображении содержит: 1) определение корочки; 2) определение наплыва сыра, как описывается в данном документе; 3) определение количества наполнителей в сырной кромке; 4) оценку теста пиццы в результате проверки пиццы и определения цвета теста; и 5) оценку в баллах каждого ломтика порции пиццы на изображении для определения высоты подъема корочки и ее размера.

В соответствии с некоторыми вариантами осуществления типовой заявленной, основанной на CNN, компьютерно-реализуемой системы в процессе подсчета баллов или проверки круг пиццы, представляющий собой порцию пиццы на наилучшем изображении, идентифицированном с помощью типовой заявленной CNN, определяется внешней окружностью 302. Сырная кромка определяется окружностями 304 и 306 с допуском порядка ±3 мм. Порция пиццы на изображения делится на 8 равных ломтиков/секторов 1-8, как показано на фигуре 3А. В некоторых, вариантах осуществления круг пиццы делится на N равных ломтиков/секторов, где N является отличным от 0 целым числом. В некоторых вариантах осуществления каждый сектор оценивается независимо от других.

В соответствии с картой компонентов пиццы типовой контур пиццы может быть определен более детально линиями, показанными на фигуре 3В. Как показано на фигуре 3В, NTZ показывает зону без наполнителей. Линия 1 определяет окружность максимального диаметра за границами круга пиццы. Участки 2 определяют внутреннее поле и внешнее поле порции пиццы в соответствии с одним вариантом осуществления. Участок 3 определяет внешний край предварительно запеченной пиццы. В некоторых вариантах осуществления этот внешний край имеет некоторый допуск. В некотором варианте осуществления этот допуск может составлять, в том числе, ±3 мм. Участок 4 определяет границу соуса пиццы. В некоторых вариантах осуществления граница 4 может иметь допуск порядка ±3 мм. Линия 5 показывает стандартную внешнюю окружность круга пиццы. Участок 6 показывает допустимый стандартный радиус края пиццы. В некотором варианте осуществления допустимый стандартный радиус края пиццы составляет 5 см. Участок 7 определяет линию сырной кромки. В некоторых вариантах осуществления сырная кромка 7 имеет некоторый допуск. В некотором варианте осуществления этот допуск составляет ±3 мм. Пороговое значение допустимого допуска порядка ±3 мм, обеспечивают возможность практического определения размера. В частности, радиус концентрических окружностей изменяется в пределах идеального радиуса ±3 мм.

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

В некоторых вариантах осуществления типовая заявленная CNN была обучена выполнению проверки корочки пиццы для определения высоты подъема корочки и ее размера. Проверка корочки включает в себя, в том числе, проверку размера и проверку чистоты корочки.

В соответствии с некоторыми вариантами осуществления типовая заявленная CNN была обучена выполнению проверки размера по карте компонентов пиццы, содержащей изображения с одной или более двоичными масками. Например, центр пиццы определяется как центр масс карты компонентов пиццы. Например, размер пиццы (например, 23 см, 30 см, 35 см, 40 см и т.д.) определяется по числу пикселов изображения пиццы в кадре.

На фигуре 4А показаны изображения типовой пиццы, по которым типовая заявленная CNN была обучена оценке на основе внешней окружности круга пиццы по линии 5, имеющей допуск ±Z мм (например, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1-15), в соответствии с некоторыми вариантами осуществления. В случае, когда более чем Υ % (например, 5%, 10%, 15%, 20%, 25% и т.д.) контура некоторого сектора располагается за границами концентрических окружностей, за этот сектор начисляется штраф в X баллов (например, 0,1).

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

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

В некоторых вариантах осуществления типовая заявленная CNN была обучена выполнению проверке наполнителей пиццы для определения равномерного или неравномерного распределения наполнителей и сыра.

Некоторые типовые распределения наполнителей по ломтикам пиццы показаны на фигуре 4D, на которой ломтики сверху имеют равномерное распределение наполнителей, а ломтики снизу имеют неравномерное распределение наполнителей.

В некотором варианте осуществления в процессе проверки наполнителей каждый из этих восьми секторов разделяется окружностью на две части: внутреннее поле и внешнее поле, показанные как участки 2 на фигуре 3В, как отмечалось в данном документе. Количество пикселов для каждого типа наполнителей вычисляется для каждого внутреннего поля и внешнего поля по отдельности. В случае, когда количество некоторых наполнителей на внутреннем поле или на внешнем поле меньше, чем указано в правилах, за этот участок сектора начисляется штраф в 0,25 балла. Минимальное количество наполнителей для каждого типа и размера пиццы задается в процессе обучения алгоритма (в соответствии с условиями минимизации ошибок на обучающей выборке).

В некоторых вариантах осуществления типовая заявленная CNN была обучена выполнению проверке сыра пиццы для определения равномерного или неравномерного распределения сыра при его достаточном количестве, то есть без красного края. Некоторые типовые распределения сыра на ломтиках пиццы показаны на фигуре 4Е, на которой ломтики сверху имеют требуемое распределение. Ломтик в середине имеет недопустимое распределение, а ломтик снизу не имеет требуемого распределения, но имеет допустимое распределение.

В некотором варианте осуществления типовая заявленная CNN была обучена проверке границы между корочкой и сыром: по меньшей мере, 75% сыра должно располагаться внутри зоны заполнения меньшей концентрической окружности круга или на внутреннем поле (и не выходить за границу более чем на 3 мм, например в том числе), в противном случае за этот сектор начисляется штраф в 0,1 балла, который может достигать 0,8 балла для всей пиццы).

В случае, когда менее чем 75% участка без наполнителей в каждом сегменте каждого внутреннего поля и внешнего поля покрыто сыром (излишнее количество корочки), начисляется штраф в 0,1 балла, который может достигать 1,6 балла для всей пиццы. За сектора с подгоревшим/полузапеченным/сыром и сыром с дырочками также начисляется штраф в 0,1 балла, который может достигать 0,8 для всей пиццы.

В некоторых вариантах осуществления типовая заявленная CNN была обучена выполнению проверки готовности корочки пиццы для определения готовности корочки до степени обеспечения полного расплавления сыра, отсутствия подгоревших наполнителей и наличия золотистого цвета корочки.

Некоторые типовые ломтики пиццы с разными степенями готовности показаны на фигуре 4F, на которой ломтики сверху слева являются подгоревшими, ломтики сверху справа имеют нормальную/хорошую степень готовности, а ломтики снизу являются непропеченными.

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

На фигуре 4Н показана типовая идеально изготовленная пицца, внешняя окружность которой располагается на стандартной внешней кромке (на тонкой [красной] линии), а начинки и сыр однородно распределены по 16 участкам, определяемым этой внешней кромкой и сырной кромкой (толстой [красной] линией).

На фигуре 5 представлена типовая таблица 500, показывающая вычисление общей оценки типовой пиццы в баллах по оценкам в баллах, вычисленным при проверке корочки, проверке наполнителей, проверке сыра и проверке готовности корочки, выполненной с помощью типовой заявленной CNN в соответствии с некоторыми вариантами осуществления.

В описываемом в данном документе примере на фигуре 5 каждой из общих баллов корочки, общих баллов наполнителей, общих баллов сыра и общих баллов готовности корочки вычисляется в соответствии с правилами, как указано выше со ссылками на фигуру 4.

Общая оценка пиццы в баллах представляет собой в сумму оценок в баллах, полученных при проверке корочки, проверке наполнителей, проверке сыра и проверке готовности корочки. В описываемом в данном документе примере на фигуре 5 общая оценка в баллах (6,65) = общие баллы корочки (1,4) + общие баллы наполнителей (1,75) + общие баллы сыра (2,3) + общие баллы готовности корочки (1,2).

На фигуре 6А представлена типовая заявленная архитектура 600 подсчета баллов, которая использует типовую заявленную CNN, обученную реализации описанных выше методов в соответствии с некоторыми вариантами осуществления. На этапе 602 выбранное наилучшее изображение пиццы представляется в качестве входной информации типовой заявленной архитектуры подсчета баллов. При этом процедура подсчета баллов содержит два основных этапа: этап 604 операции сегментации и этап 606 операции вычисления градиентов/подсчета баллов (оба с увеличением на фигуре 6В).

Этап 604 заключается в сегментации изображения пиццы. В некотором варианте осуществления типовая заявленная CNN U-net была обучена выполнению этого этапа. В соответствии с некоторым вариантом осуществления на подэтапе 604а типовая заявленная архитектура 600 подсчета баллов использует типовую заявленную CNN U-net, обученную сегментации изображения пиццы на N ломтиков, где N является отличным от 0 целым числом. В некотором варианте осуществления N = 8, и эти восемь ломтиков представляют собой определенный слой для дальнейшей обработки по определению соответствующего показателя для каждого сегментированного кусочка.

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

В частности, типовой заявленный путь сжатия представляет собой сверточную сеть, которая состоит из повторного применения слоев свертки и активации (подэтапы 604b, 604d и 604е). В некоторых вариантах осуществления после первого подэтапа 604а слоев свертки и активации применяется подэтап 604 с слоев субдискретизации и пакетной нормализации.

В некоторых вариантах осуществления за каждым типовым заявленным слоем свертки и активации следует типовой заявленной слой выпрямленных линейных единиц (ReLU) и типовой заявленный слой подвыборки перед переходом к следующему слою свертки и активации. Типовой заявленный слой ReLU использует типовую заявленную CNN U-net, обученная применению ненасыщаемой функции активации f(x) = max(0, x). Это увеличивает нелинейные свойства решающей функции и общей сети без оказания воздействия на восприимчивые поля типового заявленного слоя свертки и активации.

В некоторых вариантах осуществления типовой заявленный слой подвыборки использует типовую заявленную CNN U-net, обученную представлению формы нелинейной субдискретизации за счет объединения выходных сигналов нейронных кластеров в одном слое в один нейрон в следующем слое. В некоторых вариантах осуществления типовая заявленная CNN U-net может быть обучена реализации типовой заявленной максимизационной подвыборке, заключающейся в разделении входного изображения на набор неперекрывающихся прямоугольников и выводе для каждой такой подобласти максимального значения от каждого кластера нейронов в предшествующем слое. Типовой заявленный слой подвыборки служит для постепенного сокращения пространственного размера представления, уменьшения числа параметров и объема вычислений в сети и, следовательно, также для контроля переобучения.

После типового заявленного пути сжатия типовая заявленная CNN U-net переходит к типовому заявленному пути расширения и представляет полносвязный слой на подэтапе 604f в соответствии с некоторым вариантом осуществления. В процессе расширения типовая заявленная CNN U-net была обучена объединению признака и пространственной информации через последовательность повышающих сверток и конкатенаций с признаками высокого разрешения с пути сжатия.

В некоторых вариантах осуществления полносвязные слои состоят из нейронов в типовом заявленном полносвязном слое и имеют связи со всеми слоями активации в предыдущих слоях. В соответствии с некоторым вариантом осуществления нейроны типовых заявленный полносвязных слоев соответствуют карте ингредиентов пиццы, основанной на классификации каждого пиксела изображения, выполненной с помощью типовой заявленной CNN U-net. Карта ингредиентов пиццы включает в себя, в том числе, корочку, сыр и наполнители, такие как пепперони и ветчина.

В таблице 1 показана типовая заявленная схема данных для иллюстративной модели сегментации, реализованной на этапе 604, как описано в данном документе.

С помощью карты ингредиентов, полученной на этапе 604, на этапе 606 типовая заявленная CNN U-net была обучена применению типовых правил подсчета баллов, как детализировано в данном документе, для вычисления градиентов пиццы, в результате которого получают столбец баллов для одного ломтика из восьми ломтиков пиццы. Выходные результаты вычисления градиентов от типовой заявленный CNN U-net для одного кусочка пиццы далее иллюстрированы с увеличением на фигуре 6С.

После вычисления градиентов всех ломтиков типовая заявленная CNN U-net вырабатывает на выходе матрицу с восемью столбцами, каждый из которых соответствует каждому из восьми ломтиков, на этапе 608 (в увеличенном виде с увеличением на фигуре 6D). Затем заявленная CNN U-net подвергает эту матрицу последующей обработке с использованием статистических моделей, обеспечивающей повышение качества подсчета баллов на этапе 610 (в увеличенном виде на фигуре 6Е). На этапе 612 (в увеличенном виде на фигуре 6F) типовая заявленная CNN U-net вырабатывает на выходе улучшенную матрицу подсчета баллов в двоичной форме, состоящей из только нулей и единиц. По этой улучшенной матрице подсчета баллов на этапе 614 определяется итоговый балл.

На фигуре 7 представлен моментальный снимок диаграммы рабочего процесса 700 идентификации и оценки производства пищевых продуктов, такого как производство пиццы, с применением типовой заявленной CNN, описанной в данном документе, в соответствии с некоторыми вариантами осуществления. Этот процесс начинается с этапа 702, на котором видеопоток, содержащий, по меньшей мере, видеокадр с изображением пиццы, сохраняется с использованием модуля Smart Video Saver 1, как отмечалось со ссылками на фигуру 1. На этапе 704 определяется, содержит ли каждый из видеокадров видеопотока изображение пиццы или нет. В случае отсутствия изображения пиццы в видеокадре на этапе 706 этот видеокадр отбрасывается. В случае наличия изображения пиццы в видеокадре на этапе 708 осуществляется сбор видеокадров с изображением пиццы, которые используются для поиска наилучших изображений. На этапе 710 создается набор видеокадров с наилучшим изображением пиццы, выбранных из всех видеокадров с изображением пиццы. В некотором варианте осуществления создание набора видеокадров пиццы с самым высоким рейтингом выполняется с помощью типового заявленного неточного детектора высокого быстродействия в составе типового заявленный модуля Pizza Detector 2, как отмечалось со ссылками на фигуру 1. В некотором варианте осуществления создание набора видеокадров пиццы с самым высоким рейтингом, включает в себя, в том числе, определение размытости видеокадров вследствие движения или расфокусировки. На этапе 712 набор из выбранных видеокадров с наилучшим изображением пиццы подвергается обработке на основе первой обученной типовой заявленной CNN для идентификации наилучшего изображения пиццы из видеокадров пиццы с самым высоким рейтингом, локализации пиццы в границах наилучшего изображения пиццы, и определения типа пиццы по выбранному наилучшему изображению. В некотором варианте осуществления идентификация наилучшего изображения пиццы выполняется с помощью типового заявленного точного детектора низкого быстродействия в составе типового заявленного модуля Pizza Detector 2, как отмечалось со ссылками на фигуру 1. В некотором варианте осуществления локализация пиццы включает в себя определение ограничивающей рамки и одной или более двоичных масок на изображении.

После определения типа пиццы процесс затем выполняет автоматическую сегментацию изображения пиццы с применением второй обученной типовой заявленной CNN на этапе 714. В некоторых вариантах осуществления такая сегментация выполняется с помощью типового заявленного модуля Scorer 4, как отмечалось со ссылками на фигуру 1. В некоторых вариантах осуществления эта сегментация задает карту компонентов пиццы, таких как тесто, сыры и наполнители. Затем на этапе 716 по этой карте компонентов пиццы выполняется автоматический подсчет баллов. В некоторых вариантах осуществления подсчет баллов выполняется с помощью типового заявленного модуля Scorer 4, как отмечалось со ссылками на фигуру 1.

На фигуре 8 представлен моментальный снимок диаграммы рабочего процесса 800 автоматического подсчета баллов с реализацией второй обученной типовой заявленной CNN, описанной в данном документе, в соответствии с некоторыми вариантами осуществления. На этапе 802 выбранное наилучшее изображение пиццы представляется в качестве входной информации для процесса подсчета баллов. Затем на этапе 804 осуществляется переход к разделению этого изображения пиццы на N ломтиков, где N является отличным от 0 целым числом. В некотором варианте осуществления N = 8. На этапе 806 один из N ломтиков подвергается обработке для задания карты компонентов пиццы за счет применения типового заявленного пути сжатия и типового заявленного пути расширения второй обученной типовой заявленной CNN в соответствии с некоторыми вариантами осуществления.

В некотором варианте осуществления типовой заявленный путь сжатия состоит из повторных применений слоев свертки и активации. В некоторых вариантах осуществления вслед за первым слоем свертки и активации может быть применен слой субдискретизации и пакетной нормализации. В некоторых вариантах осуществления за каждым типовым заявленным слоем свертки и активации следует типовой заявленной слой выпрямленных линейных единиц (ReLU) и типовой заявленный слой подвыборки перед переходом к следующему слою свертки и активации.

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

С помощью карты компонентов пиццы от этапа 806 на этапе 808 типовой заявленный процесс может применять одно или более правил подсчета баллов пиццы, детализированных в данном документе для вычисления градиентов ломтика. Затем этапы 806-808 повторяются на этапе 810 вычисления градиентов оставшихся ломтиков пиццы. В заключение на этапе 812 по градиентам всех ломтиков пиццы определяется итоговый балл.

На фигуре 9 показана типовая заявленная, основанная на CNN, компьютерно-реализуемая система 900, обученная выполнению поиска и подсчета баллов пищевого объекта 902, например, пицц, изготовленных ресторанами. Видеокадры Video 1, 2, 3, … N видеопотока захватываются одной или более видеокамерами: видеокамерой А 904а, видеокамерой В 904b … видеокамерой N 904n (например, IP-камерой 202 на фигуре 2А), как отмечалось в данном документе в соответствии с некоторыми вариантами осуществления. Видеопоток представляется в качестве входной информации 906 и передается через сеть 908 для процессов дальнейшего поиска и подсчета баллов. В некоторых вариантах осуществления видеокадры Video 1, 2, 3, … N видеопотока сохраняются в запоминающем устройстве 910 для последующего извлечения. Запоминающее устройство 910 может представлять собой, в том числе, локальное запоминающее устройство или удаленный носитель информации и/или базу данных. В некоторых вариантах осуществления входная информация 906 передается через сеть 1008 на сервер 912 для обработки. Сервер 912 выбирает наилучшее изображение пиццы из кадров видеопотока и определяет местоположение порции пиццы на наилучшем изображении. Наилучшее изображение затем подвергается обработке с помощью сервера 912 для подсчета баллов, результаты которого передаются в качестве выходной информации 914. В некотором варианте осуществления возможно сохранение выходной информации 914 в запоминающем устройстве 910 для последующего извлечения для контроля и/или улучшения процессов производства пищевых изделий.

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

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

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

В некоторых вариантах осуществления видеокадры видеопотока распределены по категориям в случаях, включающих в себя:

i) первый случай для изображений без пиццы;

ii) второй случай для нецентрированных изображений пиццы;

iii) третий случай для центрированных изображений пиццы и качеством разрешения, составляющим X;

iv) четвертый случай для центрированных изображений пиццы и качеством разрешения, составляющим Y, где Υ выше чем X;

v) пятый случай для центрированных изображений пиццы первого типа и требуемым качеством разрешения; и

vi) шестой случай для центрированных изображений пиццы второго типа и требуемым качеством разрешения.

В некоторых вариантах осуществления применение первой CNN для выбора набора видеокадров пиццы с самым высоким рейтингом из видеокадров пиццы и идентификации наилучшего изображения выполняется с помощью графического процессора (GPU).

В некоторых вариантах осуществления применение первой CNN для выбора набора видеокадров пиццы с самым высоким рейтингом из видеокадров пиццы выполняется с помощью неточного детектора высокого быстродействия.

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

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

В некоторых вариантах осуществления число элементов множества ломтиков составляет 8.

В некоторых вариантах осуществления вторая CNN имеет путь сжатия и путь расширения.

В некоторых вариантах осуществления путь сжатия включает в себя множество слоев свертки и активации.

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

В некоторых вариантах осуществления путь сжатия дополнительно включает в себя слой выпрямленных линейных единиц (ReLU) и слой подвыборки, следующие за каждым слоем свертки и активации перед переходом к следующему слою свертки и активации.

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

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

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

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

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

В некоторых вариантах осуществления компьютерный программный код включает в себя инструкции по применению первой CNN для выбора набора видеокадров пиццы с самым высоким рейтингом из видеокадров пиццы, выполняемого с помощью неточного детектора высокого быстродействия.

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

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

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

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

1. Способ обработки видеопотока для идентификации и оценки качества производства пиццы, содержащий:

прием с помощью процессора непрерывного видеопотока, по меньшей мере, из одного положения камеры над столом, сконфигурированным для приема готовых пицц;

сбор с помощью процессора множества видеокадров пиццы, содержащих видеокадры выбранной пиццы, из этого видеопотока;

применение с помощью процессора первой сверточной нейронной сети (CNN) для выбора набора видеокадров выбранной пиццы с пиццей с самым высоким рейтингом из множества видеокадров пиццы;

применение с помощью процессора первой CNN для идентификации изображения выбранной пиццы с пиццей с самым высоким рейтингом из набора видеокадров пиццы с самым высоким рейтингом;

применение с помощью процессора первой CNN для локализации, по меньшей мере, одной порции выбранной пиццы в идентифицированном изображении с пиццей с самым высоким рейтингом;

применение с помощью процессора первой CNN для определения типа выбранной пиццы из идентифицированного изображения с пиццей с самым высоким рейтингом;

применение с помощью процессора второй сверточной нейронной сети (CNN) для задания карты компонентов выбранной пиццы в результате автоматического выполнения сегментации изображения порции пиццы на основе, по меньшей мере, типа пиццы; и

применение с помощью процессора второй CNN для автоматического подсчета баллов выбранной пиццы на основе заданной карты компонентов пиццы, содержащее:

разделение с помощью процессора порции пиццы из идентифицированного наилучшего изображения на множество ломтиков;

вычисление с помощью процессора градиентов одного из множества ломтиков выбранной пиццы;

повторение с помощью процессора этапа вычисления градиентов оставшихся ломтиков из множества ломтиков; и

определение с помощью процессора итогового балла выбранной пиццы на основе вычисления градиентов множества ломтиков.

2. Способ по п. 1, отличающийся тем, что видеокадры видеопотока распределяются по категориям в случаях, содержащих:

i) первый случай для изображений без пиццы;

ii) второй случай для нецентрированных изображений пиццы;

iii) третий случай для центрированных изображений пиццы и с качеством разрешения, составляющим X;

iv) четвертый случай для центрированных изображений пиццы и с качеством разрешения, составляющим Y, где Υ выше чем X;

v) пятый случай для центрированных изображений пиццы первого типа и с требуемым качеством разрешения; и

vi) шестой случай для центрированных изображений пиццы второго типа и с требуемым качеством разрешения.

3. Способ по п. 1, отличающийся тем, что выбор набора видеокадров пиццы с самым высоким рейтингом дополнительно содержит обесценивание каждого видеокадра пиццы с размытостью вследствие движения и/или размытостью вследствие расфокусировки.

4. Способ по п. 1, отличающийся тем, что число элементов множества ломтиков составляет 8.

5. Способ по п. 1, отличающийся тем, что вторая CNN имеет путь сжатия и путь расширения.

6. Способ по п. 5, отличающийся тем, что путь сжатия содержит множество слоев свертки и активации.

7. Способ по п. 6, отличающийся тем, что путь сжатия дополнительно содержит слой субдискретизации и пакетной нормализации, следующий за первым слоем свертки и активации.

8. Способ по п. 6, отличающийся тем, что путь сжатия дополнительно содержит слой выпрямленных линейных единиц (ReLU) и слой подвыборки, следующие за каждым слоем свертки и активации перед переходом к следующему слою свертки и активации.

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

10. Способ по п. 1, отличающийся тем, что применение первой CNN для локализации, по меньшей мере, одной порции выбранной пиццы в идентифицированном наилучшем изображении пиццы дополнительно содержит:

определение ограничивающей рамки; и

использование одной или более предварительно заданных двоичных масок.

11. Система обработки видеопотока для идентификации и оценки качества производства пиццы, содержащая:

по меньшей мере, одно устройство захвата изображения;

долговременное запоминающее устройство;

один или более процессоров; и

компьютерный программный код, хранимый в этом долговременном запоминающем устройстве, обеспечивающий при исполнении одним или более процессорами выполнение одним или более процессорами:

приема с помощью процессора непрерывного видеопотока, по меньшей мере, из одного положения камеры над столом, сконфигурированным для приема готовых пицц;

сбора с помощью процессора множества видеокадров пиццы, содержащих видеокадры выбранной пиццы, из этого видеопотока;

применения с помощью процессора первой сверточной нейронной сети (CNN) для выбора набора видеокадров выбранной пиццы с пиццей с самым высоким рейтингом из множества видеокадров пиццы;

применения с помощью процессора первой CNN для идентификации изображения выбранной пиццы с пиццей с самым высоким рейтингом из набора видеокадров пиццы с самым высоким рейтингом;

применения с помощью процессора первой CNN для локализации, по меньшей мере, одной порции выбранной пиццы в идентифицированном изображении с пиццей с самым высоким рейтингом;

применения с помощью процессора первой CNN для определения типа выбранной пиццы из идентифицированного изображения с пиццей с самым высоким рейтингом;

применения с помощью процессора второй сверточной нейронной сети (CNN) для задания карты компонентов выбранной пиццы в результате автоматического выполнения сегментации изображения порции пиццы на основе, по меньшей мере, типа пиццы; и

применения с помощью процессора второй CNN для автоматического подсчета баллов выбранной пиццы на основе заданной карты компонентов пиццы, содержащего:

разделение с помощью процессора порции пиццы из идентифицированного наилучшего изображения на множество ломтиков;

вычисление с помощью процессора градиентов одного из множества ломтиков выбранной пиццы;

повторение с помощью процессора этапа вычисления градиентов оставшихся ломтиков из множества ломтиков; и

определение с помощью процессора итогового балла выбранной пиццы на основе вычисления градиентов множества ломтиков.

12. Система по п. 11, отличающаяся тем, что видеокадры видеопотока распределяются по категориям в случаях, содержащих:

i) первый случай для изображений без пиццы;

ii) второй случай для нецентрированных изображений пиццы;

iii) третий случай для центрированных изображений пиццы и с качеством разрешения, составляющим X;

iv) четвертый случай для центрированных изображений пиццы и с качеством разрешения, составляющим Y, где Υ выше чем X;

v) пятый случай для центрированных изображений пиццы первого типа и с требуемым качеством разрешения; и

vi) шестой случай для центрированных изображений пиццы второго типа и с требуемым качеством разрешения.

13. Система по п. 11, отличающаяся тем, что инструкции по выбору набора видеокадров пиццы с самым высоким рейтингом дополнительно содержат обесценивание каждого видеокадра пиццы с размытостью вследствие движения и/или размытостью вследствие расфокусировки.

14. Система по п. 11, отличающаяся тем, что число элементов множества ломтиков составляет 8.

15. Система по п. 11, отличающаяся тем, что вторая CNN имеет путь сжатия и путь расширения.

16. Система по п. 15, отличающаяся тем, что путь сжатия содержит множество слоев свертки и активации.

17. Система по п. 16, отличающаяся тем, что путь сжатия дополнительно содержит слой субдискретизации и пакетной нормализации, следующий за первым слоем свертки и активации.

18. Система по п. 16, отличающаяся тем, что путь сжатия дополнительно содержит слой выпрямленных линейных единиц (ReLU) и слой подвыборки, следующие за каждым слоем свертки и активации перед переходом к следующему слою свертки и активации.

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

20. Система по п. 11, отличающаяся тем, что применение первой CNN для локализации, по меньшей мере, одной порции выбранной пиццы в идентифицированном наилучшем изображении пиццы дополнительно содержит:

определение ограничивающей рамки; и

использование одной или более предварительно заданных двоичных масок.

21. Долговременный считываемый компьютером носитель информации, содержащий исполняемые процессором инструкции по:

приему с помощью процессора непрерывного видеопотока, по меньшей мере, из одного положения камеры над столом, сконфигурированным для приема готовых пицц;

сбору с помощью процессора множества видеокадров пиццы, содержащих видеокадры выбранной пиццы, из этого видеопотока;

применению с помощью процессора первой сверточной нейронной сети (CNN) для выбора набора видеокадров выбранной пиццы с пиццей с самым высоким рейтингом из множества видеокадров пиццы;

применению с помощью процессора первой CNN для идентификации изображения выбранной пиццы с пиццей с самым высоким рейтингом из набора видеокадров пиццы с самым высоким рейтингом;

применению с помощью процессора первой CNN для локализации, по меньшей мере, одной порции выбранной пиццы в идентифицированном изображении с пиццей с самым высоким рейтингом;

применению с помощью процессора первой CNN для определения типа выбранной пиццы из идентифицированного изображения с пиццей с самым высоким рейтингом;

применению с помощью процессора второй сверточной нейронной сети (CNN) для задания карты компонентов выбранной пиццы в результате автоматического выполнения сегментации изображения порции пиццы на основе, по меньшей мере, типа пиццы; и

применению с помощью процессора второй CNN для автоматического подсчета баллов выбранной пиццы на основе заданной карты компонентов пиццы, содержащему:

разделение с помощью процессора порции пиццы из идентифицированного наилучшего изображения на множество ломтиков;

вычисление с помощью процессора градиентов одного из множества ломтиков выбранной пиццы;

повторение с помощью процессора этапа вычисления градиентов оставшихся ломтиков из множества ломтиков; и

определение с помощью процессора итогового балла выбранной пиццы на основе вычисления градиентов множества ломтиков.

22. Долговременный считываемый компьютером носитель информации по п. 21, отличающийся тем, что видеокадры видеопотока распределяются по категориям в случаях, содержащих:

i) первый случай для изображений без пиццы;

ii) второй случай для нецентрированных изображений пиццы;

iii) третий случай для центрированных изображений пиццы и с качеством разрешения, составляющим X;

iv) четвертый случай для центрированных изображений пиццы и с качеством разрешения, составляющим Y, где Υ выше чем X;

v) пятый случай для центрированных изображений пиццы первого типа и с требуемым качеством разрешения; и

vi) шестой случай для центрированных изображений пиццы второго типа и с требуемым качеством разрешения.

23. Долговременный считываемый компьютером носитель информации по п. 21, отличающийся тем, что исполняемые процессором инструкции по выбору набора видеокадров пиццы с самым высоким рейтингом дополнительно содержат обесценивание каждого видеокадра пиццы с размытостью вследствие движения и/или размытостью вследствие расфокусировки.

24. Долговременный считываемый компьютером носитель информации по п. 21, отличающийся тем, что число элементов множества ломтиков составляет 8.

25. Долговременный считываемый компьютером носитель информации по п. 21, отличающийся тем, что вторая CNN имеет путь сжатия и путь расширения.

26. Долговременный считываемый компьютером носитель информации по п. 25, отличающийся тем, что путь сжатия содержит множество слоев свертки и активации.

27. Долговременный считываемый компьютером носитель информации по п. 26, отличающийся тем, что путь сжатия дополнительно содержит слой субдискретизации и пакетной нормализации, следующий за первым слоем свертки и активации.

28. Долговременный считываемый компьютером носитель информации по п. 26, отличающийся тем, что путь сжатия дополнительно содержит слой выпрямленных линейных единиц (ReLU) и слой подвыборки, следующие за каждым слоем свертки и активации перед переходом к следующему слою свертки и активации.

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

30. Долговременный считываемый компьютером носитель информации по п. 21, отличающийся тем, что исполняемые процессором инструкции по применению первой CNN для локализации, по меньшей мере, одной порции выбранной пиццы в идентифицированном наилучшем изображении пиццы дополнительно содержат:

определение ограничивающей рамки; и

использование одной или более предварительно заданных двоичных масок.



 

Похожие патенты:

Изобретение относится к способам и системам борьбы с мошенничеством. Технический результат заключается в повышении точности идентификации подлинности клиентских электронных устройств.

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

Изобретение относится к системам транспортирования лыжного курорта. Технический результат заключается в обеспечении лучшей эксплуатации и управления лыжным склоном с более высоким уровнем заполняемости и большей безопасностью.

Изобретение относится к интернету вещей и системам автоматизации и может быть использовано для автоматизации технологических процессов, мониторинга и удаленного управления техническими системами. Технический результат - создание не требующего специальных знаний инструмента для конфигурирования, мониторинга и управления оборудованием и техническими системами, поддерживающими концепцию IoT.

Изобретение относится к области информационных технологий. Техническим результатом является повышение точности и скорости отслеживания движущихся объектов.

Изобретение относится к области вычислительной техники для распознавания данных. Техническим результатом является обеспечение автоматического распознавания из изображений документов химической информации, сокращение времени и повышение точности распознавания химической информации из изображений документов.

Изобретение относится к области компьютерной техники и может быть использовано для обнаружения полей на изображениях документов. Техническим результатом является определение точности разметки пользователем полей в документах.

Изобретение относится к области электротехники, информационных технологий и вычислительной техники. Технический результат заключается в автоматизированной настройке размещения рекламных материалов компаний на рекламных площадках.

Изобретение относится к области вычислительной техники для защиты и аутентификации документов. Технический результат заключается в повышении точности и надежности определения (распознавания) факта предъявления цифровой копии документа в виде пересъемки экрана.

Изобретение относится к интеллектуальному устройству для продвижения товаров, выставляемых на полках супермаркетов, аптек, автозаправочных станций, хозяйственных и строительных магазинов и т.д. Технический результат - упрощение конструкции.

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