ОБЛАСТЬ ТЕХНИКИ
Данное техническое решение в общем относится к вычислительной области техники, а в частности к визуальным маркерам и способам их продуцирования, которые могут использоваться в робототехнике, виртуальной и дополненной реальности.
УРОВЕНЬ ТЕХНИКИ
В настоящее время визуальные маркеры (также известные как визуальные реперные точки или визуальные коды) используются для облегчения среды обитания человека и роботов, а также для оказания помощи алгоритмам компьютерного зрения в сценариях, которые ограничены ресурсами и/или являются очень важными. Известными из уровня техники визуальными маркерами могут являться простые (линейные) штрихкоды и их двумерные (матричные) копии, такие как QR-коды или ацтекские коды, которые используются для встраивания визуальных объектов информации в объекты и сцены. В робототехнике очень популярны визуальные маркеры AprilTags (Фиг. 6) и похожие способы, которые являются популярным способом упрощения идентификации местоположения, объектов и агентов для роботов. В рамках дополненной реальности визуальные маркеры ARCodes и похожие способы используются для обеспечения оценки положения камеры с высокой точностью, низкой задержкой и на бюджетных устройствах. В целом такие маркеры могут встраивать визуальную информацию в окружающую среду более компактно и независимо от языка, причем они могут быть распознаны и использованы автономными, а также управляемыми человеком устройствами.
Таким образом, все визуальные маркеры, известные в уровне техники разрабатываются эвристически, исходя из соображений легкости распознавания посредством алгоритмов компьютерного (машинного) зрения. Для вновь созданного семейства маркеров, проектируются и настраиваются алгоритмы-распознаватели, целью которых является обеспечение надежной локализации и интерпретации визуальных маркеров. Создание визуальных маркеров и распознавателей визуальных маркеров разделены таким образом на две стадии, причем данное разделение является не оптимальным (конкретный вид маркеров не является оптимальным с точки зрения распознавателя в математическом смысле). Кроме того, при создании визуальных маркеров упускается аспект эстетичности, что приводит к появлению "назойливых" визуальным маркерам, которые во многих случаях не соответствуют стилю окружающей среды, в которую они помещаются, или товаров, на которые они наносится, и делают внешний вид этой среды или товаров "дружественным компьютеру" (простым для распознавания) и "не дружественным человеку".
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Данное техническое решение направлено на устранение недостатков, свойственных решениям, известным из уровня техники.
Технической задачей, поставленной в данном техническом решении, является создание семейств визуальных маркеров, не имеющих аналогичных проблем из уровня техники.
Техническим результатом является повышение точности распознавания визуальных маркеров за счет учета в процессе обучения нейронной сети искажений перспективы, путаницы с фоном, низкого разрешения, размытости изображения и т.д. Все такие эффекты моделируются во время обучения нейронной сети как кусочно-дифференцируемые преобразования.
Дополнительным техническим результатом, проявляющимся при решении вышеуказанной технической задачи, является повышение похожести визуального маркера визуальному стилю интерьера помещения или дизайна товара.
Указанный технический результат достигается благодаря осуществлению способа продуцирования семейства визуальных маркеров, кодирующих информацию, в котором формируют синтезирующую нейронную сеть, переводящую последовательность бит в изображения визуальных маркеров; формируют рендерную нейронную сеть, преобразующую входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, посредством геометрических и фотометрических преобразований; формируют распознающую нейронную сеть, переводящую изображения, содержащие визуальные маркеры в последовательности бит; обучают совместно синтезирующую, рендерную и распознающую нейронную сеть, путем минимизации функции потери, отражающей вероятность правильного распознавания случайных битовых последовательностей; получают набор изображений визуальных маркеров из источника видеоданных; извлекают из полученного набора изображений визуальных маркеров закодированные битовые последовательности посредством распознающей нейронной сети.
В некоторых вариантах осуществления технического решения рендерная нейронная сеть, преобразует входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, помещенные поверх фоновых изображений.
В некоторых вариантах осуществления технического решения синтезирующая нейронная сеть, состоит из одного линейного слоя, за которым следует поэлементная сигмоидная функция.
В некоторых вариантах осуществления технического решения синтезирующая и/или распознающая нейронная сеть имеет сверточный вид (являться сверточной нейронной сетью).
В некоторых вариантах осуществления технического решения в процессе обучения в функционал оптимизации добавляется член, характеризующий эстетическую приемлемость маркеров.
В некоторых вариантах осуществления технического решения в процессе обучения в функционал оптимизации добавляется член, измеряющий соответствие маркеров визуальному стилю, заданному в виде изображения-образца.
В некоторых вариантах осуществления технического решения минимизация функции потерь выполняется с использованием алгоритма стохастического градиентного спуска.
В некоторых вариантах осуществления технического решения битовая последовательность при обучении выбирается равномерно из множества вершин Булевого куба.
В некоторых вариантах осуществления технического решения синтезирующая, рендерная, распознающая нейронная сеть являются сетью прямого распространения.
Также указанный технический результат достигается благодаря осуществлению способа продуцирования семейства визуальных маркеров, кодирующих информацию, в котором получают переменные, соответствующие значениям пикселей создаваемых визуальных маркеров; формируют рендерную нейронную сеть, преобразующую значения пикселей визуальных маркеров в изображения, содержащие визуальные маркеры, посредством геометрических и фотометрических преобразований; формируют распознающую нейронную сеть, переводящую изображения, содержащие визуальные маркеры в последовательности бит; обучают совместно синтезирующую, рендерную и распознающую нейронную сеть, путем минимизации функции потери, отражающей вероятность правильного распознавания случайных битовых последовательностей; получают набор изображений визуальных маркеров из источника видеоданных; извлекают из полученного набора изображений визуальных маркеров номера классов маркеров.
В некоторых вариантах осуществления технического решения рендерная нейронная сеть, преобразует входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, помещенные в центр фонового изображения.
В некоторых вариантах осуществления технического решения в процессе обучения в функционал оптимизации добавляется член, характеризующий эстетическую приемлемость маркеров.
В некоторых вариантах осуществления технического решения в процессе обучения в функционал оптимизации добавляется член, измеряющий соответствие маркеров визуальному стилю, заданному в виде изображения-образца.
В некоторых вариантах осуществления технического решения минимизация функции потерь выполняется с использованием алгоритма стохастического градиентного спуска.
В некоторых вариантах осуществления технического решения битовая последовательность при обучении выбирается равномерно из множества вершин Булевого куба.
В некоторых вариантах осуществления технического решения рендерная и распознающая нейронная сеть являются сетью прямого распространения.
Также указанный технической результат достигается благодаря осуществлению способа продуцирования семейства визуальных маркеров, кодирующих информацию, в котором получают переменные, соответствующие значениям пикселей создаваемых визуального маркера; формируют рендерную нейронную сеть, преобразующую входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, посредством геометрических и фотометрических преобразований; формируют локализующую нейронную сеть, переводящую изображения, содержащие маркер, в параметры положения маркера; обучают совместно синтезирующую, рендерную и локализующую нейронную сеть, путем минимизации функции потери, отражающей вероятность нахождения положения маркера на изображении; получают набор изображений визуальных маркеров из источника видеоданных; извлекают из полученного набора изображений визуальных маркеров закодированные битовые последовательности посредством распознающей нейронной сети.
В некоторых вариантах осуществления технического решения рендерная нейронная сеть, преобразует входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, помещенные в центр фонового изображения.
В некоторых вариантах осуществления технического решения в процессе обучения в функционал оптимизации добавляется член, характеризующий эстетическую приемлемость маркеров.
В некоторых вариантах осуществления технического решения в процессе обучения в функционал оптимизации добавляется член, измеряющий соответствие маркеров визуальному стилю, заданному в виде изображения-образца.
В некоторых вариантах осуществления технического решения минимизация функции потерь выполняется с использованием алгоритма стохастического градиентного спуска.
В некоторых вариантах осуществления технического решения битовая последовательность при обучении выбирается равномерно из множества вершин Булевого куба.
В некоторых вариантах осуществления технического решения локализующая, рендерная и распознающая нейронная сеть являются сетью прямого распространения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Признаки и преимущества настоящего технического решения станут очевидными из приведенного ниже подробного описания и прилагаемых чертежей, на которых:
На Фиг. 1 показан пример осуществления способа создания и распознавания визуального маркера;
На Фиг. 2 показана рендерная нейронная сеть. Входной маркер М на левом выходе сети, который получают через несколько состояний (все это кусочно-дифференцируемые входы); справа показаны выходы T(М; φ) для нескольких случайных параметров помех φ. Использование кусочно-дифференцируемых преобразований в Т позволяет использовать обратное распространение ошибки обучения;
На Фиг. 3 показаны визуальные маркеры, полученные посредством осуществления данного технического решения. Подписи на фигуре показывают длину бита, емкость результирующего кодирования (в битах), а также точность, достигнутую во время обучения. В каждом случае показаны шесть маркеров: (1) - маркер, соответствующий битовой последовательности содержащий 0; (2) - маркер, соответствующий битовой последовательности содержащий 1; (3) и (4) - маркеры, соответствующие двум случайным битовым последовательностям, отличающимся одним битом; (5) и (6) - два маркера, соответствующих двум и более битовым последовательностям. При многих условиях возникает характерный узор в виде сеток;
На Фиг. 4 показаны примеры текстурированных 64-х битных семейств маркеров. Текстурный прототип показан в первом столбце, в то время как остальные столбцы показывают маркеры для следующих последовательностей: все нули, все единицы, 32 последовательных нуля, и в конце две случайные битовые последовательности, которые отличаются одним битом;
На Фиг. 5 показаны скриншоты восстановленных маркеров из видеопотока в реальном времени и правильно распознанной последовательности бит;
На Фиг. 6 показаны визуальные маркеры AprilTags;
На Фиг. 7 показана архитектура рендерной нейронной сети: сеть получает батч паттернов (b×k×k×3) и фоновые изображения (b×s×s×3). Сеть состоит из рендеринга, аффинного преобразования, преобразования цвета и размытия слоев. Форма вывода s×s×3;
На Фиг. 8 показана локализующая нейронная сеть, в которой входное изображение проходит через три слоя и предсказывает 4 карты точек, соответствующих положению каждого угла визуального маркера;
На Фиг. 9 показано созданное семейство визуальных маркеров для рендерной, локализующей, классификационной распознающей нейронной сети. Для человека данные маркеры выглядят одинаковыми, однако распознающая нейросеть достигает 99% точности распознавания;
На Фиг. 10 показана архитектура системы продуцирования семейства визуальных маркеров, кодирующих информацию;
На Фиг. 11 показан пример определения положения маркеров (из семейства, показанного на Фиг. 9), при помощи обученной локализующей нейронной сети. Положение каждого маркера задается координатами четырех углов. Предсказания локализующей нейросети для углов показаны белыми точками.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Ниже будут описаны понятия и определения, необходимые для подробного раскрытия осуществляемого технического решения.
Техническое решение может быть реализовано в виде распределенной компьютерной системы.
В данном решении под системой подразумевается компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций).
Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы).
Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных. В роли устройства хранения данных могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические носители (CD, DVD и т.п.).
Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.
Искусственная нейронная сеть (ИНС) - математическая модель, а также ее программное или аппаратное воплощение, построенная по принципу сложной функции, преобразующей входную информацию путем применения последовательности простых операций (также называемых слоями), зависящих от обучаемых параметров нейросети. Рассматриваемые ниже ИНС могут принадлежать к любым стандартным типам (например, многослойный перцептрон, сверточная нейронная сеть, рекуррентная нейронная сеть).
Обучение искусственной нейронной сети - процесс подстройки параметров слоев искусственной нейросети, в результате которого предсказания нейросети на обучающих данных улучшаются. При этом качество предсказаний ИНС на обучающих данных задается т.н. функцией потерь. Таким образом, процесс обучения соответствует математической минимизации функции потерь.
Метод обратного распространения ошибки (англ. backpropagation) - метод эффективного вычисления градиента функции потери по параметрам слоев нейросети с помощью рекуррентных соотношений, использующих известные аналитические формулы для частных производных отдельных слоев нейросети. Под методом обратного распространения ошибки будем также понимать алгоритм обучения нейросети, использующих вышеупомянутый способ вычисления градиента.
Параметр градиентных методов обучения нейронных сетей - параметр, позволяющий управлять величиной коррекции весов на каждой итерации.
Визуальный маркер - физический объект, представляющий собой распечатанное изображение, размещенное на одной из поверхностей физической сцены, и предназначенное для эффективной обработки цифровых фотографий с помощью алгоритмов машинного зрения. Результатом обработки фотографии маркера может быть или извлечение информационного сообщения (битовой последовательности), закодированного при помощи маркера, или определение положения камеры относительно положения маркера в момент съемки цифровой фотографии. Примером маркеров первого типа служат QR-коды, примером маркеров второго типа служат ArUko Markers и April Tags.
Распознающая нейронная сеть - нейронная сеть, принимающая на вход изображение, содержащее визуальный маркер, и выдающая в качестве результата информационное сообщение, закодированное в маркере.
Локализующая нейронная сеть - нейронная сеть, принимающая на вход изображение и выдающая в качестве результата численную информацию о положении визуального маркера на изображении (например, положение углов маркера). Как правило, подобная информация достаточна для определения положения камеры относительно маркера (при условии наличия информации о калибрации).
Синтезирующая нейронная сеть - нейронная сеть, принимающая на вход некоторую численную информацию, например битовую последовательность, и преобразующая ее в цветное или черно-белое изображение.
Рендерная нейронная сеть - нейронная сеть, принимающая на вход некоторое изображение и преобразующая ее в другое изображение таким образом, что выходное изображение становится похожим на цифровую фотографию распечатанного входного изображения.
Сверточная ИНС - один из видов искусственных нейронных сетей, широко используемый в распознавании образов, в т.ч. в компьютерном зрении. Характерной особенностью сверточных нейросетей является использование представления данных в виде набора изображений (карт), и применение локальных операций-сверток, модифицирующих и комбинирующих данные карты друг с другом.
Подробно рассмотрим способ создания обучаемого визуального маркера, показанный на Фиг. 1. Основной целью является создание синтезирующей нейронной сети S(b; θs) с параметрами обучения θs, которые могут кодировать битовую последовательность b={b1, …, bn}, содержащую n бит. Определим визуальный маркер (образец) Mk(bn) как изображение размера (k,k,3), соответствующее битовой последовательности bn. Для упрощения обозначений в дальнейших выводах предположим, что bi ∈ {-1; 1}.
Для распознавания визуальных маркеров, созданных, синтезирующей нейронной сетью, создают и используют распознающую нейронную сеть R(I; θR) с параметрами обучения θR. Данная нейронная сеть принимает изображение I, содержащее визуальный маркер, и выводит оцененную последовательность τ={τ1, …, τn}. Распознающая нейронная сеть взаимодействует с синтезирующей нейронной сетью для соблюдения условия ri=bi, т.е. знак числа, выведенный распознающей нейронной сетью соответствует битам, закодированным синтезирующей нейронной сетью. В частности, можно измерить успех распознавания, используя простую функцию потерь на основе сигмоидальной кривой:
где потери распределяются между -1 (совершенное распознавание) и 0.
В реальной жизни алгоритмы, распознающие маркеры, не получают на вход изображения-маркеры напрямую. Вместо этого, визуальные маркеры встраиваются в окружающую среду (например, посредством печати визуальных маркеров и размещения на объектах окружающей среды или посредством использования электронных дисплеев для отображения визуальных маркеров), после чего их изображения захватываются посредством некоторой камеры, управляемой человеком или роботом.
Поэтому во время обучения распознающей и синтезирующей нейронных сетей, осуществляют моделирование преобразования между визуальным маркером, созданным посредством синтезирующей нейронной сети, и изображением данного маркера, с использованием специальной сети прямого распространения (рендерная нейронная сеть) Т(М; φ), где параметры рендерной сети φ выбираются во время обучения и соответствуют изменчивости фона, изменчивости освещения, наклонной перспективы, ядра размытости, изменению цвета/баланса белого камеры и т.д. Во время обучения, φ выбираются из некоторого распределения Φ, которое должно моделировать изменчивость вышеупомянутых эффектов в условиях, в которых предполагается использование визуальных маркеров.
В случае, когда единственной целью является надежное распознавание маркеров, процесс обучения может быть осуществлен как минимизация следующего функционала:
Здесь битовая последовательность b выбирается равномерно из U(n)={-1; +1}n, прошедшей через синтезирующую нейронную сеть, рендерную и распознающую нейронную сеть, при этом функция потери (1) используются для измерения успеха распознавания. Параметры синтезирующей нейронной сети и распознающей нейронной сети оптимизируются для минимизации ожидания функции потери. Минимизация выражения (2) может быть затем выполнена с использованием алгоритма стохастического градиентного спуска, например ADAM [1]. Каждая итерация алгоритма отображает мини-батч различных битовых последовательностей в виде набора различных параметров слоев рендерной нейронной сети и обновляет параметры синтезирующей нейронной сети и распознающей нейронной сети для минимизации функции потерь (1) этих выборок.
В некоторых вариантах осуществления в процесс обучения добавляется также локализующая нейросеть (Фиг. 8), которая обнаруживает примеры маркеров в видеопотоке и определяет их положение на кадре (например, находит координаты их углов). Координаты преобразуются в бинарную карту с измерениями, равными форме входных изображений. Бинарная карта имеет везде нулевое значение, кроме местоположения углов, где значение равно одному. Локализующая сеть тренируется предсказывать эти бинарные карты, которые далее могут использоваться для выравнивания маркера перед подачей его на вход распознающей нейронной сети (Фиг. 10) или использоваться для оценки положения камеры относительно маркера в приложениях, где такая оценка является необходимой. При добавлении подобной локализующей нейросети в обучение, синтезирующая нейронная сеть адаптируется для создания маркеров, которые отличаются от фона и имеют легко идентифицируемые углы.
В некоторых вариантах осуществления создается единственный маркер или небольшое количество маркеров, существенно меньшее, чем количество битовых последовательностей существенной длины. В таких вариантах синтезирующая сеть не используются. Параметры синтезирующей сети в оптимизации заменяются непосредственно значениями пикселей маркеров (или маркера). В этих вариантах, как правило, используется локализующая нейросеть, а распознающая нейросеть или реализуется как классификатор для количества классов, равного количеству маркеров, или не используется вообще (в случае варианта с одним маркером). Пример обученных маркеров в данном варианте осуществления показан на Фиг. 9.
Как было показано выше, компоненты архитектуры, а именно синтезирующая нейронная сеть, рендерная нейронная сеть, распознающая нейронная сеть, локализующая нейросеть могут быть реализованы, например, как сети прямого распространения или как другие архитектуры, позволяющие проводить обучение при помощи метода обратного распространения ошибки. Распознающая сеть может быть реализована как сверточная нейронная сеть [2] с n выходами. Синтезирующая нейронная сеть также может иметь сверточную архитектуру (являться сверточной нейронной сетью). Локализующая нейронная сеть также может иметь сверточную архитектуру (являться сверточной нейронной сетью).
Для реализации рендерной нейронной сети Т(М; φ), показанной на Фиг. 2, требуется применение нестандартных слоев. Рендерная нейронная сеть реализовывается как цепочка слоев, каждый из которых вносит некоторое "мешающее" преобразование. Также реализовывается специальный слой, который накладывает входное изображение (образец) поверх фонового изображения, взятого из случайного набора изображений, моделирующего вид поверхностей, на которые обученные маркеры могут наноситься при использовании. Для реализации геометрического искажения используется пространственный преобразующий слой (spatial transformed layer) [5]. Изменение цвета или изменение интенсивности могут быть реализованы посредством использования дифференцируемых преобразований элементов (линейные, мультипликативные, гамма-преобразование). Слои преобразования помех могут применяться последовательно, образуя рендерную нейронную сеть, которая может моделировать сложные геометрические и фотометрические преобразования (Фиг. 2).
Интересно, что при переменных условиях оптимизация результатов выражения (2) приводит к маркерам, которые имеют непротиворечивую и интересную визуальную текстуру (Фиг. 3). Несмотря на такую визуальную "интересность", желательно контролировать появление результирующих маркеров более конкретно, например, посредством использования некоторых изображений-образцов.
Для такого контроля в некоторых вариантах осуществления задача обучения (2) дополняется функцией потери, измеряющей разницу между текстурами получаемых маркеров и текстурой изображения образца [6]. Опишем вкратце данную функцию потерь, введенную в [6]. Рассмотрим сеть прямого распространения С(М; γ), которая вычисляет результат t-го сверточного слоя сети, обученной для классификации крупномасштабного изображения, такая как VGGNet [7]. Для изображения М выход сети С(М; γ) содержит k двумерных каналов (карт). Сеть С использует параметры γ, которые предварительно обучены на большом наборе данных и которые не являются частью данного процесса обучения. Затем стиль изображения М определяется с помощью следующей матрицей Грама G(M; γ) размера k на k, где каждый элемент определяется как:
где Ci и Cj это i-я и j-я карты и скалярное произведение берется по всем пространственным положениям. Учитывая текстуру прототипа М0, задача обучения может быть дополнена следующим выражением:
Включение выражения (4) позволяет маркерам S(b; θS), созданным синтезирующей нейронной сетью, иметь визуальный облик, подобный экземплярам текстуры, определяемой прототипом М0 [6].
Для более длинных последовательностей битов в некоторых вариантах осуществления применяется способ кодирования с исправлением ошибок. Таким образом, распознающая нейронная сеть возвращает коэффициенты для каждого бита в восстановленном сигнале, и заявляемое техническое решение подходит для любого вероятностного кодирования с исправлением ошибок.
В некоторых вариантах осуществления для экспериментов без потерь текстур используется простейшая синтезирующая нейронная сеть, которая состоит из одного линейного слоя (с матрицей 3m2×n и вектором смещения), за которым следует поэлементная сигмоидная функция. В некоторых вариантах осуществления синтезирующая нейронная сеть имеет сверточный вид, принимая двоичный код в качестве входных данных и преобразуя их одним или несколькими мультипликативными слоями и наборами сверточных слоев. В последнем случае сходимость в состоянии обучения значительно выигрывает от добавления батч нормализации [8] после каждого сверточного слоя.
В некоторых вариантах параметры рендерной сети могут выбираться следующим образом. Пространственное преобразование выполняется как аффинное преобразование, где 6 аффинных параметров выбираются из [1, 0, 0, 0, 1, 0] + N(0, σ) (предполагая начало координат в центре маркера). Пример для σ=1 показан на Фиг. 2. Возьмем изображение x, тогда можно реализовать слой преобразования цвета как , где параметры выбираются из равномерного распределения U[-δ, δ]. Поскольку было выявлено, что напечатанные визуальные маркеры стремятся уменьшить контрастность, добавляют слой уменьшения контрастности, который преобразует каждое значение до kx+(1-k)[0.5] для случайного k.
В некоторых вариантах осуществления технического решения распознающая и локализующая нейронная сеть могут быть сверточными.
Результаты осуществления данного технического решения, показанные на Фиг. 4, позволяют понять, что техническое решение может успешно восстанавливать закодированные сигналы с небольшим количеством ошибок. Количество ошибок можно дополнительно уменьшить посредством применения набора (ансамбля) распознающих нейросетей или путем применения распознающей нейросети к нескольким искаженным версиям изображения (test-time data augmentation).
В некоторых вариантах для улучшения точности могут выравнивать маркер с заранее определенным квадратом (показан как часть пользовательского интерфейса на Фиг. 5). Как можно видеть, происходит ухудшение результатов с увеличением ошибки выравнивания.
ИСПОЛЬЗУЕМЫЕ ИСТОЧНИКИ ИНФОРМАЦИИ
1. D.P. Kingma and J.В. Adam. A method for stochastic optimization. International Conference on Learning Representation, 2015.
2. Y. LeCun, B. Boser, J.S. Denker, D. Henderson, R.E. Howard, W. Hubbard, and L.D. Jackel. Backpropagation applied to handwritten zip code recognition. Neural computation, 1(4): 541-551, 1989.
3. A. Dosovitskiy, J.T. Springenberg, and T. Brox. Learning to generate chairs with convolutional neural networks. Conf. on Computer Vision and Pattern Recognition (CVPR), 2015.
4. M.D. Zeiler, G.W. Taylor, and R. Fergus. Adaptive deconvolutional networks for mid and high level feature learning. Int. Conf. on Computer Vision (ICCV), pp. 2018-2025, 2011.
5. M. Jaderberg, K. Simonyan, A. Zisserman, et al. Spatial transformer networks. Advances in Neural Information Processing Systems, pp. 2008-2016, 2015.
6. L. Gatys, A.S. Ecker, and M. Bethge. Texture synthesis using convolutional neural networks. Advances in Neural Information Processing Systems, NIPS, pp. 262-270, 2015.
7. K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv: 1409.1556, 2014.
8. S. loffe and C. Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. Proc. International Conference on Machine Learning, ICML, pp. 448-456, 2015.
9. E. Olson. Apriltag: A robust and flexible visual fiducial system. Robotics and Automation (ICRA), 2011 IEEE International Conference on, pp. 3400-3407. IEEE, 2011.
название | год | авторы | номер документа |
---|---|---|---|
СИСТЕМА РАСПОЗНАВАНИЯ ИЗОБРАЖЕНИЯ: BEORG SMART VISION | 2020 |
|
RU2777354C2 |
СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ АДАПТИВНЫХ ТЕХНОЛОГИЙ НА ОСНОВЕ НЕЙРОСЕТЕЙ И КОМПЬЮТЕРНОГО ЗРЕНИЯ | 2020 |
|
RU2744769C1 |
ОПТИЧЕСКОЕ РАСПОЗНАВАНИЕ СИМВОЛОВ ПОСРЕДСТВОМ ПРИМЕНЕНИЯ СПЕЦИАЛИЗИРОВАННЫХ ФУНКЦИЙ УВЕРЕННОСТИ, РЕАЛИЗУЕМОЕ НА БАЗЕ НЕЙРОННЫХ СЕТЕЙ | 2018 |
|
RU2703270C1 |
СПОСОБ МНОГОМОДАЛЬНОГО БЕСКОНТАКТНОГО УПРАВЛЕНИЯ МОБИЛЬНЫМ ИНФОРМАЦИОННЫМ РОБОТОМ | 2020 |
|
RU2737231C1 |
Способ распознавания объектов в системе видеонаблюдения | 2022 |
|
RU2788301C1 |
ОБУЧЕНИЕ НЕЙРОННОЙ СЕТИ ПОСРЕДСТВОМ СПЕЦИАЛИЗИРОВАННЫХ ФУНКЦИЙ ПОТЕРЬ | 2018 |
|
RU2707147C1 |
РАСПОЗНАВАНИЕ ТЕКСТА С ИСПОЛЬЗОВАНИЕМ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА | 2017 |
|
RU2691214C1 |
СПОСОБ РАСПОЗНАВАНИЯ ТЕКСТА НА ИЗОБРАЖЕНИЯХ ДОКУМЕНТОВ | 2021 |
|
RU2768544C1 |
РАСПОЗНАВАНИЕ РУКОПИСНОГО ТЕКСТА ПОСРЕДСТВОМ НЕЙРОННЫХ СЕТЕЙ | 2020 |
|
RU2757713C1 |
СПОСОБ АВТОМАТИЗИРОВАННОГО АНАЛИЗА ЦИФРОВЫХ ФЛЮОРОГРАФИЧЕСКИХ СНИМКОВ | 2018 |
|
RU2684181C1 |
Группа изобретений относится к вычислительной области техники, в частности к визуальным маркерам и способам их продуцирования, которые могут использоваться в робототехнике, виртуальной и дополненной реальности. Техническим результатом является повышение точности распознавания и локализации визуальных маркеров. Способ содержит этапы, на которых: формируют синтезирующую нейронную сеть, переводящую последовательность бит в изображения визуальных маркеров; формируют рендерную нейронную сеть, преобразующую входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры; формируют распознающую нейронную сеть, переводящую изображения, содержащие визуальные маркеры, в последовательности бит; обучают совместно синтезирующую, рендерную и распознающую нейронную сеть путем минимизации функции потери, отражающей вероятность правильного распознавания случайных битовых последовательностей; синтезируют визуальные маркеры путем пропускания битовых последовательностей через обученную синтезирующую нейронную сеть; получают набор изображений визуальных маркеров из источника видеоданных; извлекают из полученного набора изображений визуальных маркеров закодированные битовые последовательности посредством распознающей нейронной сети. 3 н. и 18 з.п. ф-лы, 11 ил.
1. Способ продуцирования семейства визуальных маркеров, кодирующих информацию, включающий следующие шаги:
- формируют синтезирующую нейронную сеть, переводящую последовательность бит в изображения визуальных маркеров;
- формируют рендерную нейронную сеть, преобразующую входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры посредством геометрических и фотометрических преобразований;
- формируют распознающую нейронную сеть, переводящую изображения, содержащие визуальные маркеры, в последовательности бит;
- обучают совместно синтезирующую, рендерную и распознающую нейронные сети путем минимизации функции потери, отражающей вероятность правильного распознавания случайных битовых последовательностей;
- синтезируют визуальные маркеры путем пропускания битовых последовательностей через обученную синтезирующую нейронную сеть;
- получают набор изображений визуальных маркеров из источника видеоданных;
- извлекают из полученного набора изображений визуальных маркеров закодированные битовые последовательности посредством распознающей нейронной сети.
2. Способ по п. 1, характеризующийся тем, что рендерная нейронная сеть преобразует входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, помещенные в центр фонового изображения.
3. Способ по п. 1, характеризующийся тем, что синтезирующая нейронная сеть состоит из одного линейного слоя, за которым следует поэлементная сигмоидная функция.
4. Способ по п. 1, характеризующийся тем, что синтезирующая и/или распознающая нейронная сеть имеет сверточный вид.
5. Способ по п. 1, характеризующийся тем, что в процессе обучения в функционал оптимизации добавляется член, характеризующий эстетическую приемлемость маркеров.
6. Способ по п. 1, характеризующийся тем, что в процессе обучения в функционал оптимизации добавляется член, измеряющий соответствие маркеров визуальному стилю, заданному в виде изображения-образца.
7. Способ по п. 1, характеризующийся тем, что минимизация функции потерь выполняется с использованием алгоритма стохастического градиентного спуска.
8. Способ по п. 1, характеризующийся тем, что в процессе обучения битовая последовательность выбирается равномерно из Булевого куба.
9. Способ по п. 1, характеризующийся тем, что синтезирующая, рендерная, распознающая нейронная сеть является сетью прямого распространения.
10. Способ продуцирования семейства визуальных маркеров, кодирующих информацию, включающий следующие шаги:
- создают переменные, соответствующие значениям пикселей создаваемых визуальных маркеров;
- формируют рендерную нейронную сеть, преобразующую значения пикселей визуальных маркеров в изображения, содержащие визуальные маркеры посредством геометрических и фотометрических преобразований;
- формируют распознающую нейронную сеть, переводящую изображения, содержащие визуальные маркеры, в последовательности бит;
- обучают совместно синтезирующую, рендерную и распознающую нейронную сеть путем минимизации функции потери, отражающей вероятность правильного распознавания случайных битовых последовательностей;
- синтезируют визуальные маркеры путем создания растровых изображений со значениями пикселей, найденными в результате обучения;
- получают набор изображений визуальных маркеров из источника видеоданных;
- извлекают из полученного набора изображений визуальных маркеров номера классов маркеров.
11. Способ по п. 10, характеризующийся тем, что рендерная нейронная сеть преобразует входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, помещенные в центр фонового изображения.
12. Способ по п. 10, характеризующийся тем, что в процессе обучения в функционал оптимизации добавляется член, характеризующий эстетическую приемлемость маркеров.
13. Способ по п. 10, характеризующийся тем, что в процессе обучения в функционал оптимизации добавляется член, измеряющий соответствие маркеров визуальному стилю, заданному в виде изображения-образца.
14. Способ по п. 10, характеризующийся тем, что минимизация функции потерь выполняется с использованием алгоритма стохастического градиентного спуска.
15. Способ по п. 10, характеризующийся тем, что рендерная и распознающая нейронная сеть являются сетью прямого распространения.
16. Способ продуцирования семейства визуальных маркеров, кодирующих информацию, включающий следующие шаги:
- создают переменные, соответствующие значениям пикселей создаваемых визуального маркера;
- формируют рендерную нейронную сеть, преобразующую входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры посредством геометрических и фотометрических преобразований;
- формируют локализующую нейронную сеть, переводящую изображения, содержащие маркер, в параметры положения маркера;
- обучают совместно синтезирующую, рендерную и локализующую нейронную сеть путем минимизации функции потери, отражающей вероятность нахождения положения маркера на изображении;
- синтезируют визуальные маркеры путем создания растровых изображений со значениями пикселей, найденными в результате обучения;
- получают набор изображений визуальных маркеров из источника видеоданных;
- извлекают из полученного набора изображений визуальных маркеров закодированные битовые последовательности посредством распознающей нейронной сети.
17. Способ по п. 16, характеризующийся тем, что рендерная нейронная сеть преобразует входные изображения визуальных маркеров в изображения, содержащие визуальные маркеры, помещенные в центр фонового изображения.
18. Способ по п. 16, характеризующийся тем, что в процессе обучения в функционал оптимизации добавляется член, характеризующий эстетическую приемлемость маркеров.
19. Способ по п. 16, характеризующийся тем, что в процессе обучения в функционал оптимизации добавляется член, измеряющий соответствие маркеров визуальному стилю, заданному в виде изображения-образца.
20. Способ по п. 16, характеризующийся тем, что минимизация функции потерь выполняется с использованием алгоритма стохастического градиентного спуска.
21. Способ по п. 16, характеризующийся тем, что локализующая, рендерная и распознающая нейронная сеть являются сетью прямого распространения.
US 5373566 A, 13.12.1994 | |||
US 2010251169 A1, 30.09.2010 | |||
US 2014355861 A1, 04.12.2014 | |||
US 2015161522 A1, 11.06.2015 | |||
Распорное устройство к манжетным уплотнениям | 1960 |
|
SU139520A1 |
Авторы
Даты
2018-08-28—Публикация
2016-06-03—Подача