Область техники, к которой относится изобретение
Настоящее раскрытие относится к области техники носимых устройств и, в частности, к способам и системам идентификации действия пользователя.
Уровень техники
Учитывая внимание людей к научно обоснованным занятиям спортом и к физическому здоровью, разработка устройств контроля движения при фитнесе получила широкое развитие. В настоящее время основным направлением разработки устройств контроля движения для контроля действия пользователя является анализ данных о действии пользователя, основанный на справочных данных о действии, когда тип действия пользователя известен, с тем, чтобы контролировать, является ли действие пользователя стандартизированным. Поэтому в сценарии практического применения пользователь должен заранее перед тренировкой информировать устройство контроля движения о типе действия при фитнесе, так чтобы устройство контроля движения могло выбрать справочные данные о действии для типа действия, чтобы вести точный контроль действия пользователя. Перед каждым действием пользователя при фитнесе устройству контроля движения должен сообщаться тип действия, что ведет к неудобству для пользователя. Кроме того, существующие устройства контроля движения контролируют действие пользователя не в режиме реального времени, что в результате приводит к тому, что пользователь может принимать информацию, связанную с действием фитнеса после завершения действия фитнеса, что также ведет к неудобству для пользователя.
Поэтому необходимо обеспечить способ и систему идентификации действия пользователя при фитнесе в режиме реального времени, не требующие от пользователя заранее вводить тип действия.
Раскрытие сущности изобретения
Настоящее раскрытие представляет способ идентификации действия пользователя. В соответствии с одним из подходов настоящего раскрытия способ может содержать следующую операцию. Могут быть получены данные о действии пользователя, собранные из множества мест измерений на пользователе, данные о действии пользователя могут соответствовать неизвестному действию пользователя. Действие пользователя содержит целевое действие, при котором получение данных о действии пользователя может идентифицироваться на основе по меньшей мере одного набора целевых справочных данных о действии, и по меньшей мере один набор целевых справочных данных о действии может соответствовать целевому действию. Информация, связанная с целевым действием, может быть послана пользователю.
В некоторых вариантах осуществления идентификация того, что действие пользователя содержит целевое действие, может содержать следующие операции. Может быть получено множество наборов возможных справочных данных о действии, причем каждый набор справочных данных о действии соответствует по меньшей мере одному справочному действию. Может выполняться двухуровневая операция отсева, проводимая на множестве наборов возможных справочных данных о действии, на основе данных о действии пользователя, причем двухуровневая процедура отсева может содержать сочетание операции отсева на основе степени различия и операции отсева на основе вероятности. Таким образом может быть определено действие пользователя, содержащее целевое действие, основанное на результате операции двухуровневого отсева.
В некоторых вариантах осуществления идентификация того, что действие пользователя содержит целевое действие, может содержать следующие операции. Может быть получено множество наборов справочных данных о действии, причем каждый набор справочных данных о действии соответствует по меньшей мере одному справочному действию. Каждый набор справочных данных о действии из множества наборов справочных данных о действии в свою очередь может быть выбран в качестве возможных справочных данных о действии. По меньшей мере одна степень различия может быть определена путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя. Комплексная степень различия может быть определена путем взвешивания и суммирования по меньшей мере одной степени различия.
В некоторых вариантах осуществления каждый набор справочных данных о действии может содержать M фрагментов справочных субданных о действии, причем каждый фрагмент справочных субданных о действии может содержать по меньшей мере один сегмент субданных идентификации действия, где M - целое число, большее 1. Субданные идентификации действия M фрагментов справочных субданных о действии могут формировать интегральные данные идентификации действия, и каждый сегмент субданных идентификации действия может соответствовать по меньшей мере участку справочного действия по меньшей мере в одном месте измерения из множества мест измерения.
В некоторых вариантах осуществления определение по меньшей мере одной степени различия путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя может содержать следующие операции. Можно выбрать скользящее окно заданной длины на каждом фрагменте субданных идентификации действия, причем скользящее окно может содержать сегмент данных из данных о действии пользователя, собранных в заданном временном интервале. Для скользящего окна в текущий момент может быть определена степень различия между сегментом данных и соответствующими субданными идентификации действия.
В некоторых вариантах осуществления идентификация, что действие пользователя содержит целевое действие, дополнительно может содержать следующие операции. Может быть определено, что значение комплексной степени различия больше, чем первое заданное значение. Скользящее окно может быть передвинуто к следующему сегменту данных с заданным размером шага и сравнение может быть повторено.
В некоторых вариантах осуществления продолжительность сбора данных, соответствующая сегменту данных в скользящем окне, может отрицательно коррелироваться со скоростью действия пользователя.
В некоторых вариантах осуществления заданный размер шага может удовлетворять одному или более следующих условий. Заданный размер шага может положительно коррелироваться с величиной значения комплексной степени различия в предыдущий момент. Заданный размер шага может положительно коррелироваться с тенденцией изменения значения комплексной степени различия.
В некоторых вариантах осуществления сегмент данных может содержать множество точек данных о действии пользователя. Определение по меньшей мере одной степени различия путем сравнения по меньшей мере одного сегмента возможных субданных идентификации действия из числа возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя может содержать следующие операции. Целевой интервал данных для сравнения может быть выбран из субданных идентификации действия, причем целевой интервал данных для сравнения содержит множество точек данных идентификации. Сегмент данных, соответствующий множеству масштабных шкал, может корректироваться для получения множества отрегулированных сегментов данных. Степень различия между субданными идентификации действия и каждым отрегулированным сегментом данных из множества отрегулированных сегментов данных может быть определена соответственно. Может быть определена минимальная степень различия между субданными идентификации действия и сегментом данных.
В некоторых вариантах осуществления определение по меньшей мере одной степени различия путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия из возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя может содержать следующие операции. Может быть определена матрица расстояний [Dij], где Dij означает расстояние между i-ой точкой данных целевого интервала данных сравнения и j-ой точкой данных сегмента данных. Может быть определено кратчайшее расстояние матрицы расстояний, где кратчайшее расстояние может удовлетворить следующим операциям. Начальная точка пути кратчайшего расстояния может находиться в первой строке матрицы [Dij], две смежные точки на кратчайшем расстоянии могут быть смежными в матрице расстояний, следующая точка на кратчайшем расстоянии может находиться справа, ниже или справа ниже предыдущей точки, конечная точка пути кратчайшего расстояния может находиться в последней строке [Dij], путь кратчайшего расстояния можно иметь наименьшую цену регуляризации, причем цена регуляризации определяется расстояниями между точками на соответствующем пути кратчайшего расстояния матрицы расстояний, и степень различия может быть связана с ценой регуляризации.
В некоторых вариантах осуществления, если первая точка данных сегмента данных может быть определена как точка данных, в которой начинается действие пользователя, начальная точка пути кратчайшего расстояния может быть расстоянием D11 между первой точкой сегмента данных и первой точкой целевого интервала данных сравнения.
В некоторых вариантах осуществления, если последняя точка данных сегмента данных может быть определена как точка данных, в которой заканчивается действие пользователя, то конечная точка пути кратчайшего расстояния может быть расстоянием Dmn между последней точкой сегмента данных и последней точкой целевого интервала данных сравнения.
В некоторых вариантах осуществления идентификация того, что действие пользователя содержит целевое действие, дополнительно может содержать следующие операции. N фрагментов возможных справочных данных о действии второго уровня могут выбираться из множества наборов справочных данных о действии. Значение комплексной степени различия возможных справочных данных о действии второго уровня может быть меньше, чем первое заданное значение, и N может быть целым числом больше 1. N расстояний между данными о действии пользователя и N фрагментами возможных справочных данных о действии второго уровня могут соответственно вычисляться. N значений вероятности могут соответственно быть вычислены на основе N расстояний. Возможные справочные данные о действии второго уровня, значение вероятности которых больше, чем второе заданное значение, могут быть выбраны в качестве целевых справочных данные о действии пользователя. Справочное действие, соответствующее целевым справочным данным о действии, может быть определено как целевое действие.
Другой подход настоящего раскрытия раскрывает систему идентификации действия пользователя. Система идентификации действия пользователя может содержать следующие операции. По меньшей мере один носитель для хранения данных может хранить по меньшей мере один набор команд для получения данных о действии пользователя во время движения пользователя. По меньшей мере один процессор осуществляет связь по меньшей мере с одним носителем и, когда система работает, по меньшей мере один процессор может считывать по меньшей мере один набор команд и выполнять вышеупомянутый способ и способ идентификации целевого действия, раскрытые в вариантах осуществления.
Краткое описание чертежей
Настоящее раскрытие может быть дополнительно описано посредством примерных вариантов осуществления, которые могут быть подробно описаны посредством использования сопроводительных чертежей. Эти варианты осуществления не создают ограничения и в этих вариантах осуществления одни и те же ссылочные позиции относятся к одним и тем же структурам, где:
фиг. 1 - сценарий применения системы контроля движения, соответствующей некоторым вариантам осуществления настоящего раскрытия;
фиг. 2 - примерные аппаратные средства и/или компоненты программного обеспечения носимого устройства, соответствующие некоторым вариантам осуществления настоящего раскрытия;
фиг. 3 - примерные компоненты аппаратных средств и/или программного обеспечения вычислительного устройства, соответствующие некоторым вариантам осуществления настоящего раскрытия;
фиг. 4 – примерная структурная схема носимого устройства, соответствующего некоторым вариантам осуществления настоящего раскрытия;
фиг. 5 - блок-схема последовательности выполнения операций примерного процесса определения целевого действия в соответствии с некоторыми вариантами осуществления настоящего раскрытия;
фиг. 6 – примерная система координат во время движения пользователя, соответствующая некоторым вариантам осуществления настоящей заявки;
фиг. 7A - примерный сегмент данных идентификации действия в справочных данных о действии и кривая сегмента субданных о действии пользователя, собираемых скользящим окном в данных о действии пользователя по оси времени в соответствии с некоторыми вариантами осуществления настоящего раскрытия;
фиг. 7B - матрица расстояний и путь кратчайшего расстояния от левого верхнего угла до правого нижнего угла матрицы расстояний, соответствующие некоторым вариантам осуществления настоящего раскрытия;
фиг. 7C – диаграмма определения комплексной степени различия посредством скользящего окна, когда данные о действии пользователя содержат множество субданных о действии пользователя, соответствующая некоторым вариантам осуществления настоящего раскрытия.
Осуществление изобретения
Чтобы более ясно проиллюстрировать технические решения вариантов осуществления настоящего раскрытия, ниже кратко представлены чертежи, иллюстрирующие варианты осуществления. Чертежи на последующих иллюстрациях являются просто некоторыми примерами или вариантами осуществления настоящего раскрытия. Специалистами в данной области техники настоящее раскрытие может быть применено к другим подобным сценариям в соответствии с чертежами, не прилагая творческих усилий. Если из контекста явно не следует или контекст не указывает иное, одна и та же ссылочная позиция на чертежах относится к одной и той же конструкции или операции.
Следует понимать, что термины «система», «устройство», «блок» и/или «модуль», используемые здесь, являются способом различения разных компонент, элементов, частей, участков или сборочных узлов различных уровней. Однако, если той же цели можно достигнуть другими выражениями, такие слова могут быть заменены другими выражениями.
Как это используется в раскрытии и добавленной формуле изобретения, формы единственного числа содержат формы множественного числа, если содержание явно не диктует иное. В целом, термины «содержащий» и «включающий» только подсказывают этапы и элементы, которые явно определены, и эти этапы и элементы не составляют эксклюзивный список. Способы или устройство могут также содержать другие этапы или элементы.
Блок-схемы последовательности выполнения операций используются в настоящем раскрытии для пояснения операций, выполняемых системой в соответствии с некоторыми вариантами осуществления настоящего раскрытия. Следует понимать, что предшествующие или последующие операции могут не обязательно выполняться точно в указанном порядке. Наоборот, каждый этап может быть выполнен в обратном порядке или одновременно. В то же время, к процедурам могут также быть добавлены другие операции или какой-либо этап или несколько этапов могут быть удалены из процедур.
Настоящее раскрытие обеспечивает систему целевого определения действия. Набор команд, хранящихся на носителе данных в системе целевого определения действия, может выполняться для получения данных о действии пользователя во время движения пользователя. Целевая система определения действия может быть применима к носимому устройству (например, на одежде, в браслете и в шлеме), медицинскому тестирующему устройству (например, электромиографический тестер (electromyographic tester, EMG)), фитнес-устройство и т.д. После того, как пользователь надевает устройство, датчики на устройстве могут быть присоединены к множеству мест измерений на теле пользователя и, таким образом, данные о действии пользователя могут собираться датчиками устройства. После того, как датчики собрали данные о действии пользователя, процессор в целевой системе определения действия может связаться с носителем для хранения данных, чтобы получить доступ или считать команды, хранящиеся на носителе и т.д. Когда целевая система определения действия работает, процессор может получать доступ к справочным данным о действии, хранящимся на носителе с известным содержанием о действиях. На основе справочных данных о действии из этого известного содержания о действиях система может выполнить целевую идентификацию действия на данных о действии пользователя, контент о действиях которого неизвестен. После определения целевого действия, система может послать пользователю контент, связанный с целевым действием.
В некоторых вариантах осуществления настоящего раскрытия система может выполнять целевую идентификацию действия на данных о действии пользователя сразу или в пределах заданного времени, причем заданное время может быть коротким временем, таким как 0,1 секунды или 0,5 секунды. Таким образом, система может осуществлять идентификацию в реальном времени данных о действии пользователя и пользователь может принимать соответствующие материалы о действии сразу после выполнения действия.
В некоторых вариантах осуществления настоящего раскрытия данные о действии пользователя могут также быть получены другими способами, не собирая их датчиками на устройствах, таких как носимое устройство (например, одежда, браслет, шлем), медицинское устройство обнаружения (например, тестер EMG), фитнес-устройство и т.д. Например, изображения пользователя в режиме видео могут быть проанализированы алгоритмом искусственного интеллекта для получения данных о действии в нескольких местах измерений на теле пользователя. Одним словом, пока данные о действии пользователя могут быть получены в режиме реального времени, способ и система, соответствующие настоящему раскрытию, могут быть конфигурированы для определения целевого действия.
Носитель для хранения данных может содержать распространяющийся сигнал данных, имеющий содержащуюся в нем управляющую программу, например, в основной полосе или как часть несущей волны. Распространяющийся сигнал может принимать различные формы, включая электромагнитную, оптическую и т.д. или их соответствующее сочетание. Компьютерный носитель для хранения данных может быть любым считываемым компьютером носителем, кроме считываемого компьютером носителя, который может осуществлять связь, распространять или передавать программу для ее использования путем связи с системой выполнения команд, оборудованием или устройством. Управляющая программа, записанная на компьютерном носителе, может передаваться посредством любого подходящего носителя, включая радио, кабель, оптоволоконный кабель, радиочастотный носитель и т.п. или их сочетание. Конкретно, носитель может быть оперативной памятью (random-access memory, RAM), постоянной памятью (read only memory, ROM) и т.д. Примеры ROM могут содержать масочную ROM (mask ROM, MROM), программируемую ROM (programmable ROM, PROM), стираемую программируемую ROM (erasable programmable ROM, PEROM), электрически стираемую программируемую ROM (electrically erasable programmable ROM, EEPROM), ROM на компакт-диске (compact disc ROM, CD-ROM), ROM на цифровом универсальном диске и т.д. Примеры RAM могут содержать динамическую RAM (dynamic RAM, DRAM), синхронную динамическую RAM с двойной скоростью (double rate synchronous dynamic RAM, SDRAM DDR), статическую RAM (static RAM, SRAM), тиристорную RAM (thyristor RAM (T-RAM), RAM с нулевой емкостью (zero capacitance, Z-RAM) и т.п.
Как пример, процессор может быть многоядерным процессором, одноядерным процессором, распределенным процессором, центральным процессором (central processing unit, CPU), специализированной прикладной интегральной схемой (application-specific integrated circuit, ASIC), специализированным прикладным командным процессором (application-specific instruction processor, ASIP), графическим процессором (graphics processor, GPU), физическим процессором (physical processor, PPU), цифровым сигнальным процессором (digital signal processor, DSP), программируемой логической интегральной схемой (field programmable gate array, FPGA), программируемой логической схемой (programmable logic circuit, PLD), контроллером, модулем микроконтроллера, компьютером с сокращенной системой команд (reduced instruction set computer, RISC), устройством микропроцессора и т.п. или любым их сочетанием.
На фиг. 1 схематично представлен сценарий применения системы контроля движения, соответствующей некоторым вариантам осуществления настоящего раскрытия. Как показано на фиг. 1, система 100 определения целевого действия (или система 100) может содержать устройство 110 обработки, сеть 120, носимое устройство 130 и устройство 149 мобильного терминала. Система 100 может получать данные о действии пользователя (например, сигнал EMG, сигнал о позе, данные о напряжении и данные физиологического контроля, такие как сигнал ECG, сигнал частоты дыхания и т.д.), представленные с возможностью охарактеризовать действие пользователя и определить, к какому целевому действию принадлежит действие пользователя при тренировке в соответствии с данными о действии пользователя.
Например, система 100 может идентифицировать действие пользователя, выполняемое пользователем при тренировке. Когда пользователь носит на себе носимое устройство 130 для выполнения упражнений фитнеса, носимое устройство 130 может получать данные о действии пользователя. Устройство 110 обработки или устройство 140 мобильного терминала могут принимать и анализировать данные о действии пользователя для идентификации действия пользователя при фитнесе, таких как, является ли действие пользователя при фитнесе жимом лежа, подъемом на бицепс или приседанием и т.д., с тем, чтобы послать пользователю контент, связанный с целевым действием, в котором определенное идентифицированное действие пользователя (например, жим лежа, подъем на бицепс, приседание, и т.д.) является целевым действием. Конкретно, контент, связанный с целевым действием, может содержать название целевого действия, подсказываемое голосом или видео, тип действия, количество действий, время действия, информация о физиологических параметрах пользователя, когда пользователь выполняет действие, и т.д. Дополнительно, система 100 может формировать сигнал обратной связи на действие при фитнесе пользователя, основываясь на результате анализа данных о действии при фитнесе пользователя, таком как, является ли действие при фитнесе пользователя стандартным, и т.д., чтобы руководить фитнесом пользователя.
Как другой пример, система 100 может идентифицировать действие пользователя, выполняемое пользователем при тренировке. Например, когда пользователь носит на себе носимое устройство 130 для выполнения бега, система 100 может получать данные о действии при беге пользователя и определить, что текущим движением пользователя является бег, основываясь на справочных данных о действии. Когда пользователь бежит слишком долго или, когда действие бега является неправильным, устройство фитнеса может по обратной связи сообщить о состоянии движения пользователю, чтобы предложить пользователю скорректировать действие бега или время выполнения бега.
В некоторых вариантах осуществления устройство 110 обработки может быть выполнено с возможностью обработки информации и/или данных, связанных с движением пользователя. Например, устройство 110 обработки может принимать сигнал о действии пользователя (например, сигнал EMG, сигнал о позе, сигнал ECG, сигнал о частоте дыхания и т.д.) и дополнительно извлекать информацию о признаках (например, информацию о признаках, соответствующих сигналу EMG или информации о признаках, соответствующих сигналу позы в сигнале действия), соответствующую сигналу действия. В некоторых вариантах осуществления устройство 110 обработки может выполнять специальную обработку сигнала на сигнале EMG или на сигнале телодвижения, собираемых носимым устройством 130, такую как сегментация сигналов, предварительная обработка сигналов (например, процесс коррекции сигнала, процесс фильтрации и т.д.) и т.п. В некоторых вариантах осуществления устройство 110 обработки может также определить, корректно ли действие пользователя на основе сигнала действия пользователя. Например, устройство обработки 110 может определить, является ли действие пользователя правильным, основываясь на информации о признаках (например, на информации об амплитуде, информации о частоте и т.д.), соответствующей сигналу EMG. Как другой пример, устройство 110 обработки может определить, правильно ли действие пользователя, основываясь на информации о признаках (например, угловой скорости, направлении угловой скорости, ускорении угловой скорости, угле, информации о смещении, напряжении, и т.д.), соответствующей сигналу телодвижения. Как дополнительный другой пример, устройство 110 обработки может определить, правильно ли действие пользователя, основываясь на информации о признаках, соответствующей сигналу EMG, и на информации о признаках, соответствующей сигналу телодвижения. В некоторых вариантах осуществления устройство обработки 110 может также определить, удовлетворяет ли информация о физиологических параметрах пользователя во время движения пользователя медицинскому стандарту. В некоторых вариантах осуществления устройство 110 обработки может также выдавать соответствующие команды для отслеживания по обратной связи ситуации с движением пользователя. Например, когда пользователь бежит, система 100 контролирует, что время бега пользователя является слишком долгим. В этом случае, устройство 110 обработки может выдать команду устройству 140 мобильного терминала предложить пользователю скорректировать время бега. Следует заметить, что информация о признаках, соответствующая сигналу телодвижения, не ограничивается вышеупомянутыми угловой скоростью, направлением угловой скорости, ускорением угловой скорости, углом, информацией о смещении, напряжением и т.д., но может также быть другой информацией о признаках. Любая информация о параметрах, которая может отражать относительное движение тела пользователя, может быть информация о признаках, соответствующей сигналу телодвижения. Например, когда датчик позы является тензодатчиком, угол изгиба и направление изгиба в суставе пользователя могут быть получены, измеряя величину сопротивления в тензодатчике, которая изменяется пропорционально длине растяжения.
В некоторых вариантах осуществления устройство 110 обработки может быть локальным или удаленным. Например, устройство 110 обработки может через сеть 120 получать доступ к информации и/или данным, хранящимся в носимом устройстве 130 и/или в устройстве 140 мобильного терминала. В некоторых вариантах осуществления устройство 110 обработки может соединиться непосредственно с носимым устройством 130 и/или с устройством 140 мобильного терминала для доступа к хранящихся в них информации и/или данным. Например, устройство 110 обработки может быть расположено в носимом устройстве 130 и реализовывать информационное взаимодействие с устройством 140 мобильного терминала через сеть 120. Как другой пример, устройство 110 обработки может быть расположено в устройстве 140 мобильного терминала и реализовывать информационное взаимодействие с носимым устройством 130 через сеть. В некоторых вариантах осуществления устройство 110 обработки может быть реализовано на облачной платформе.
В некоторых вариантах осуществления устройство 110 обработки может обрабатывать данные и/или информацию, связанные с контролем действий, чтобы выполнять одну или более из описанных здесь функций. В некоторых вариантах осуществления устройство 110 обработки может получить сигнал о действии во время движения пользователя, получаемый носимым устройством 130. В некоторых вариантах осуществления устройство 110 обработки может посылать команду управления на носимое устройство 130 или на устройство 140 мобильного терминала. Команда управления может управлять состояниями переключателей носимого устройства 130 и датчиками носимого устройства 130 и может также управлять устройством 140 мобильного терминала для своевременной посылки информации. В некоторых вариантах осуществления устройство 110 обработки может содержать одно или несколько устройств вспомогательной обработки (например, одноядерное процессорное устройство или многоядерное процессорное устройство).
Сеть 120 может упрощать обмен данными и/или информацией системы 100 контроля движения. В некоторых вариантах осуществления один или более компонентов системы 100 контроля движения могут посылать данные и/или информацию другим компонентам системы 100 контроля движения через сеть 120. Например, сигнал действия, полученный носимым устройством 130, может передаваться устройству 110 обработки через сеть 120. Как другой пример, результат подтверждения сигнала действия, определенного устройством 110 обработки, может быть передан устройству 140 мобильного терминала через сеть 120. В некоторых вариантах осуществления сеть 120 может быть любым типом проводной или беспроводной сети.
Носимое устройство 130 может относиться к предмету одежды или устройству с пригодной для ношения функцией. В некоторых вариантах осуществления носимое устройство 130 может содержать, но не ограничиваясь только этим, устройство 130-1 для верхней одежды, устройство 130-2 для брюк, устройство 130-3 для браслета, устройство 130-4 для обуви и т.п. В некоторых вариантах осуществления носимое устройство 130 может содержать М датчиков, где M - целое число больше единицы. Датчики могут получать различные сигналы действия (например, сигнал EMG, сигнал положения, температурная информация, частота биения сердца, сигнал электрокардиограммы и т.д.), формируемые во время движения пользователя. В некоторых вариантах осуществления датчики могут содержать, но не ограничиваясь только этим, один или более из датчика EMG, датчика положения, температурного датчика, датчика влажности, датчика электрокардиограммы, датчика насыщенности крови кислородом, датчика Холла, датчика кожного электричества, датчика вращения и т.п. Например, устройство 130-1 для верхней одежды может содержать датчик EMG, находящийся на месте расположения мышцы (например, бицепс плеча, трицепс плеча, широчайшая мышца спины, трапециевидная мышца, и т.д.) человеческого тела, и датчик EMG может соответствовать коже пользователя и получать сигнал EMG во время движения пользователя. Как другой пример, устройство 130-1 для верхней одежды может содержать датчик электрокардиограммы, расположенный около левой грудной мышцы человеческого тела, и датчик электрокардиограммы может получать электрокардиографический сигнал пользователя. Как еще один другой пример, устройство 130-2 для брюк может содержать датчик позы, находящийся на месте расположения мышцы (например, большой ягодичной мышцы, четырехглавой мышцы бедра, широкого медиалиса, икроножной мышцы и т.д.) человеческого тела, и датчик позы может получать сигнал о позе пользователя. В некоторых вариантах осуществления носимое устройство 130 может также обеспечивать обратную связь по действиям пользователя. Например, когда действие определенного участка тела во время движения пользователя не соответствует стандарту, датчик EMG, соответствующий этому участку, может генерировать сигнал стимуляции (например, стимуляции током или сигнал электрического удара) для напоминания пользователю.
Следует заметить, что носимое устройство 130 не ограничивается устройством 130-1 для верхней одежды, устройством 130-2 для брюк, устройством 130-3 браслета или устройством 130-4 для обуви, показанными на фиг. 1. Носимое устройство 130 может также содержать другие устройства, используемые для контроля движения, такие как устройство для шлема, устройство для наколенника и т.д., перечень которых здесь не ограничивается. Любой устройство, который может использовать способ контроля движения, представленный в настоящем раскрытии, находится в рамках объема защиты настоящего раскрытия.
В некоторых вариантах осуществления устройство мобильного терминала 140 может получить информацию или данные в системе 100. В некоторых вариантах осуществления устройство 140 мобильного терминала может получать данные о действии пользователя, обработанные устройством 110 обработки, и возвращать обратно запись действия, основанную на обработанных данных о действии. Примерные режимы обратной связи могут содержать, но не ограничиваясь только этим, речевую подсказку, видеоподсказку, видеопрезентацию, текстовую подсказку и т.п. В некоторых вариантах осуществления пользователь через устройство 140 мобильного терминала может получать запись действия, сделанную во время его собственного движения. Например, устройство 140 мобильного терминала может быть соединено с носимым устройством 130 через сеть 120 (например, проводное соединение, беспроводное соединение). Пользователь может через устройство 140 мобильного терминала получать запись действия во время движения пользователя и запись действия может передаваться устройству 110 обработки через устройство 140 мобильного терминала. В некоторых вариантах осуществления устройство 140 мобильного терминала может содержать мобильное устройство 140-1, планшетный компьютер 140-2, портативный компьютер 140-3 и т.п. или любое их сочетание. В некоторых вариантах осуществления мобильное устройство 140-1 может содержать сотовый телефон, домашнее смарт-устройство, мобильное смарт-устройство, устройство виртуальной реальности, устройство аугментированной реальности и т.д. или любое их сочетание. В некоторых вариантах осуществления домашнее смарт-устройство может содержать устройство управления для смарт-устройства, устройство смарт-контроля, смарт-телевизор, смарт-камеру и т.д. или любое их сочетание. В некоторых вариантах осуществления мобильное смарт-устройство может содержать смартфон, персонального цифрового секретаря (personal digital assistant, PDA), игровое устройство, навигационное устройство, устройство POS, и т.д. или любое их сочетание. В некоторых вариантах осуществления устройство виртуальной реальности и/или устройство аугментированной реальности могут содержать гарнитуру виртуальной реальности, очки виртуальной реальности, очки для виртуальной реальности, шлем аугментированной реальности, очки аугментированной реальности, очки для аугментированной реальности и т.д. или любое их сочетание.
В некоторых вариантах осуществления система 100 контроля движения может также содержать систему 160 представления данных о действии. Система 160 представления данных о действии может быть выполнена с возможностью обработки и отображения информации и/или данных, связанных с действием пользователя. Например, может отображаться, какого рода движение делает пользователь, или информация и/или данные могут быть объединены с виртуальным символом и интуитивно отображаться на интерфейсе пользователя устройства 140 мобильного терминала для упрощения просмотра для пользователя. Например, система 160 представления данных о действии может принимать данные о действии пользователя. Например, данные о действии пользователя могут содержать сигнал действия, такой как сигнал EMG, сигнал позы, сигнал электрокардиограммы, сигнал частоты дыхания и т.д. Как другой пример, данные о действии пользователя могут содержать информацию о признаках (например, информацию о признаках, соответствующих сигналу EMG, информацию о признаках, соответствующих сигналу телодвижения в сигнале действия), получаемую устройством 110 обработки, выполняющим обработку признаков на сигнале действия. Как еще один другой пример, данные о действии пользователя могут содержать сигнал, полученный после того, как устройство 110 обработки выполняет конкретную обработку сигнала, такую как сегментация сигнала, предварительная обработка сигнала (например, процесс коррекции сигнала, процесс фильтрации и т.д.) и т.д. Система 160 представления данных о действии может сравнивать данные о действии пользователя со справочными данными о действии, объединять результат сравнения с виртуальным символом, чтобы формировать анимацию виртуального символа, и отправлять сформированную анимацию на устройство 140 мобильного терминала для отображения. Справочные данные о действии пользователя могут быть описаны подробно в последующих описаниях. Например, когда пользователь делает подъем на бицепс, система 160 представления данных о действии может принимать данные о действии пользователя при выполнении подъема на бицепс, такие как сигнал EMG бицепса плеча, сигнал EMG трапециевидной мышцы, поза при перемещении предплечья и т.д. Система 160 представления данных о действии может сравнивать данные о действии пользователя с множеством наборов справочных данных о действии, хранящихся в системе 100 контроля движения, чтобы определить, что пользователь выполняет действие бицепса плеча. Дополнительно система 160 представления данных о действии может отображать виртуальный символ, который демонстрирует подъем на бицепс, и пользователь может явно и интуитивно просматривать данные о действии пользователя или различие между данными о действии и справочными данными о действии (например, различие в положении и размере мышечных сил, различие в позе при действии и т.д.) посредством анимации виртуального символа для корректировки действия во время движения.
В некоторых вариантах осуществления система 160 представления данных о действии может быть интегрирована в устройство 110 обработки. В некоторых вариантах осуществления система 160 представления данных о действии может также быть интегрирована в устройство 140 мобильного терминала. В некоторых вариантах осуществления система 160 представления данных о действии может также существовать независимо от устройства 110 обработки и устройства 140 мобильного терминала. Система представления 160 данных о действии может осуществлять связь с устройством 110 обработки, носимым устройством 130 и устройством 140 мобильного терминала, чтобы передавать и обмениваться информацией и/или данными. В некоторых вариантах осуществления система 160 представления данных о действии может получить доступ к информации и/или данным, хранящимся в устройстве 110 обработки, носимом устройстве 130 и/или в устройстве 140 мобильного терминала, через сеть 120. В некоторых вариантах осуществления носимое устройство 130 может соединяться непосредственно с устройством 110 обработки и/или с устройством 140 мобильного терминала для доступа к информации и/или данным, хранящимся в них. Например, система 160 представления данных о действии может быть расположена в устройстве 110 обработки и осуществлять информационное взаимодействие с носимым устройством 130 и устройством 140 мобильного терминала через сеть 120. Как другой пример, система 160 представления данных о действии может быть расположена в устройстве 140 мобильного терминала и осуществлять информационное взаимодействие с устройством 110 обработки и носимым устройством 130 через сеть. В некоторых вариантах осуществления система 160 представления данных о действии может быть выполнена на облачной платформе и осуществлять информационное взаимодействие с устройством 110 обработки, носимым устройством 130 и устройством 140 мобильного терминала через сеть.
Для удобства представления, в следующих описаниях в качестве примера для описания может быть взята система 160 представления данных о действии, расположенная в устройстве 140 мобильного терминала.
В некоторых вариантах осуществления система 160 представления данных о действии может обрабатывать данные и/или информацию, связанные с представлением данных о действии для выполнения одной или более описанных здесь функций. В некоторых вариантах осуществления система 160 представления данных о действии может получать данные о действии пользователя во время движения пользователя, например, сигнала действия во время движения пользователя, получаемого носимым устройством 130, или данные, получаемые после того, как сигнал действия, полученный во время движения пользователя носимым устройством 130, будет обработан устройством 110 обработки. В некоторых вариантах осуществления система 160 представления данных о действии может посылать команду управления на устройство 140 мобильного терминала для управления отображением интерфейса пользователя устройства 140 мобильного терминала.
В некоторых вариантах осуществления система 100 может также содержать базу данных. База данных может хранить данные (например, начально заданное пороговое условие и т.д.) и/или команды (например, команды обратной связи). В некоторых вариантах осуществления база данных может хранить данные, полученные от носимого устройства 130 и/или от устройства 140 мобильного терминала. В некоторых вариантах осуществления база данных может хранить информацию и/или команды для выполнения или использования устройством 110 обработки, чтобы выполнять примерные способы, описанные в настоящем раскрытии. В некоторых вариантах осуществления база данных может быть соединена с сетью 120 для осуществления связи с одним или более компонентами системы 100 (например, с устройством 110 обработки, носимым устройством 130, устройством 140 мобильного терминала и т.д.). Один или более компонентов системы 100 могут получать доступ к данным или командам, хранящимся в базе данных, через сеть 120. В некоторых вариантах осуществления база данных может соединиться или осуществлять связь напрямую с одним или несколькими компонентами в системе 100. В некоторых вариантах осуществления база данных может быть частью устройства 110 обработки.
На фиг. 2 представлены примерные компоненты аппаратных средств и/или программного обеспечения носимого устройства в соответствии с некоторыми вариантами осуществления настоящего раскрытия. Как показано на фиг. 2, носимое устройство 130 может содержать модуль 210 получения, модуль 220 обработки 220 (также называемый процессором), модуль 230 управления (также упоминаемый как основной контроллер, MCU, контроллер), модуль 240 связи, модуль 250 электропитания и модуль 260 ввода/вывода.
Модуль 210 получения может быть выполнен с возможностью получения сигнала действия во время движения пользователя. В некоторых вариантах осуществления модуль 210 получения может содержать датчик и датчик может быть выполнен с возможностью получения одного или более сигналов действия во время движения пользователя. В некоторых вариантах осуществления датчик может содержать, но не ограничиваясь только этим, один или несколько датчиков из числа датчика EMG, датчика позы, датчика электрокардиограммы, датчика дыхания, температурного датчика, датчика влажности, инерциального датчика, датчика насыщенности крови кислородом, датчика Холла, электрокожного датчика, датчика вращения, и т.п. В некоторых вариантах осуществления сигнал действия может содержать один или более сигналов из числа сигнала EMG, сигнала позы, сигнала электрокардиограммы, частоты дыхания, сигнала температуры, сигнала влажности и т.п. Датчик может помещаться в различные места на носимом устройстве 130 в соответствии с типом сигнала действия, который должен быть получен. Например, в некоторых вариантах осуществления, датчик EMG (также называемый электродом) может быть расположен в месте расположения человеческой мышцы и датчик EMG может быть выполнен с возможностью для получения сигнала EMG во время движения пользователя. Сигнал EMG и соответствующая информация о функции (например, информация о частоте, информация об амплитуде и т.д.) могут отображать состояние мышцы во время движения пользователя. Датчик телодвижения может быть установлен в различных местах человеческого тела (например, в местах, соответствующих туловищу, конечностям и суставам в носимом устройстве 130) и датчик телодвижения может быть выполнен с возможностью для получения сигнала телодвижения во время движения пользователя. Сигнал телодвижения и соответствующая информация о признаке (например, направление угловой скорости, значение угловой скорости, значение ускорения угловой скорости, угол, информация о смещении, напряжение и т.д.) могут отражать телодвижение пользователя. Датчик ECG может быть расположен в месте вокруг грудной клетки человека и датчик ECG может быть выполнен с возможностью получения данных ECG во время движения пользователя. Датчик дыхания может быть расположен в месте вокруг грудной клетки человеческого тела и датчик дыхания может быть выполнен с возможностью получения данных дыхания (например, частота дыхания, амплитуда дыхания и т.д.) во время движения пользователя. Температурный датчик может быть выполнен с возможностью получения температурных данных (например, поверхностной температуры тела) во время движения пользователя. Датчик влажности может быть выполнен с возможностью получения данных влажности внешней среды во время движения пользователя.
Модуль 220 обработки может обрабатывать данные, полученные от модуля 210 получения, модуля 230 управления, модуля 240 связи, модуля 250 электропитания и/или модуля 260 ввода/вывода. Например, модуль 220 обработки может обрабатывать сигнал действия во время движения пользователя, поступающий от модуля 210 получения. В некоторых вариантах осуществления модуль 220 обработки может предварительно обрабатывать сигнал действия (например, сигнал EMG, сигнал телодвижения), принятый модулем 210 получения. Например, модуль 220 обработки может выполнять процесс сегментации сигнала EMG или сигнала телодвижения во время движения пользователя. Как другой пример, модуль 220 обработки может выполнять предварительную обработку (например, процесс фильтрации, процесс коррекции сигнала) для сигнала EMG во время движения пользователя, улучшая качество сигнала EMG. Как еще один другой пример, модуль 220 обработки может определить информацию о признаках, соответствующих сигналу телодвижения, основываясь на сигнале телодвижения во время движения пользователя. В некоторых вариантах осуществления модуль 220 обработки может обрабатывать команду или операцию, поступающую от модуля 260 ввода/вывода. В некоторых вариантах осуществления обработанные данные могут храниться в памяти или на жестком диске. В некоторых вариантах осуществления модуль 220 обработки может передавать обработанные данные одному или нескольким компонентам системы 100 контроля движения через модуль 240 связи или через сеть 120. Например, модуль 220 обработки может посылать результат контроля движения пользователя на модуль 230 управления и модуль 230 управления может выполнять последующие операции или команды в соответствии с результатом определения действия.
Модуль 230 управления может соединяться с другими модулями носимого устройства 130. В некоторых вариантах осуществления модуль 230 управления может управлять рабочими состояниями других модулей носимого устройства 130. Например, модуль 230 управления может управлять состоянием источника питания (например, нормальный режим, режим экономии электроэнергии), временем работы источника питания и т.д. модуля 250 электропитания. Как другой пример, модуль 230 управления может управлять модулем 260 ввода/вывода в соответствии с результатом определения действия пользователя, чтобы управлять устройством 140 мобильного терминала для посылки пользователю результата обратной связи движения пользователя. Если с действием у пользователя существует проблема (например, действие не соответствует стандарту) во время движения пользователя, модуль 230 управления может управлять модулем 260 ввода/вывода 260 для управления устройством 140 мобильного терминала, чтобы послать пользователю сигнал обратной связи, так чтобы пользователь мог знать свое собственное состояние движения в режиме реального времени и корректировать действие. В некоторых вариантах осуществления модуль 230 управления может также управлять одним или более датчиками модуля 210 получения или другими модулями для обеспечения обратной связи человеческому телу. Например, если определенная мышца показывает слишком много силы во время движения пользователя, модуль 230 управления может управлять модулем электрода в месте на мышце для электрического стимулирования пользователя, чтобы вовремя подсказать пользователю скорректировать действие.
В некоторых вариантах осуществления модуль 240 связи может быть выполнен с возможностью обмена информацией или данными. В некоторых вариантах осуществления модуль 240 связи может быть выполнен с возможностью осуществления связи между компонентами носимого устройства 130. Например, модуль 210 получения может послать сигнал действия пользователя (например, сигнал EMG, сигнал телодвижения и т.д.) модулю 240 связи и модуль 240 связи может послать сигнал действия на модуль 220 обработки. В некоторых вариантах осуществления модуль 240 связи может также быть выполнен с возможностью осуществления связи между носимым устройством 130 и другими компонентами в системе 100. Например, модуль 240 связи может посылать информацию о состоянии (например, о состоянии переключателя) носимого устройства 130 устройству 110 обработки и устройство 110 обработки может контролировать носимое устройство 130 на основе информации о состоянии. Модуль 240 связи может приспосабливаться под проводные, беспроводные и проводные/беспроводные гибридные технологии.
В некоторых вариантах осуществления модуль 250 электропитания может обеспечивать электропитание другим компонентам в системе 100.
Модуль 260 ввода/вывода может получать, передавать и посылать сигнал. Модуль 260 ввода/вывода может взаимодействовать через интерфейс или осуществлять связь с другими компонентами в системе 100. Другие компоненты в системе 100 контроля движения могут соединяться или осуществлять связь через модуль 260 ввода/вывода.
Следует заметить, что вышеупомянутые описания системы 100 и ее модулей сделаны просто для удобства описаний и не могут ограничивать один или более вариантов осуществления настоящего раскрытия объемом представленных вариантов осуществления. Следует понимать, что специалисты в данной области техники после понимания принципа действия системы могут произвольно объединять различные модули или формировать подсистему для соединения с другими модулями или изымать из нее один или более модулей. Например, модуль 210 получения и модуль 220 обработки могут быть объединены в один модуль, который может иметь функции получения и обработки сигнала действия пользователя. Как другой пример, модуль 220 обработки может обеспечиваться не в носимом устройстве 130, а интегрироваться в устройство 110 обработки. Такие модификации находятся в рамках объема защиты одного или нескольких вариантов осуществления настоящего раскрытия.
На фиг. 3 представлены примерные компоненты аппаратных средств и/или программного обеспечения вычислительного устройства 300, соответствующего некоторым вариантам осуществления настоящего раскрытия. В некоторых вариантах осуществления устройство 110 обработки и/или устройство 140 мобильного терминала могут быть реализованы на вычислительном устройстве 300. В некоторых вариантах осуществления система 160 представления данных о действии может быть реализована на вычислительном устройстве 300. Как показано на фиг. 3, вычислительное устройство 300 может содержать внутреннюю шину 310 связи, процессор 320, постоянную память 330, оперативную память 340, порт 350 связи, интерфейс 360 ввода-вывода, жесткий диск 370 и интерфейс 380 пользователя.
Внутренняя шина 310 связи может позволять передачу данных среди различных компонент вычислительного устройства 300. Например, процессор 320 может посредством внутренней шины 310 связи посылать данные в память или другим компонентам аппаратных средств, таким как интерфейс 360 ввода-вывода.
Процессор 320 может выполнить компьютерные команды (управляющую программу) и выполнять функции описанной здесь системы 100 контроля движения. Компьютерные команды могут содержать программу, объект, компонент, структуру данных, процедуру, модуль и функцию (функция относится к конкретной функции, описанной в раскрытии). Например, процессор 320 может обрабатывать сигнал действия (например, сигнал EMG, сигнал телодвижения) полученный из носимого устройства 130 или/и от устройства 140 мобильного терминала системы 100 контроля движения во время движения пользователя, и контролировать действие пользователя в соответствии с сигналом действия во время движения пользователя. Только для иллюстрации, в вычислительном устройстве 300 на фиг. 3 показан только один процессор, но следует заметить, что вычислительное устройство 300 в настоящем раскрытии может также содержать множество процессоров.
Память (например, постоянная память (ROM) 330, оперативная память (RAM) 340, жесткий диск 370 и т.д.) вычислительного устройства 300 может хранить данные, полученные от любого другого компонента системы 100 контроля движения. В некоторых вариантах осуществления память вычислительного устройства 300 может быть расположена в носимом устройстве 130, а также в устройстве 110 обработки.
Интерфейс 360 ввода-вывода может быть выполнен с возможностью ввода или вывода сигнал, данных или информации. В некоторых вариантах осуществления интерфейс 360 ввода-вывода может позволить пользователю взаимодействовать с системой 100 контроля движения.
Жесткий диск 370 может быть выполнен с возможностью хранения информации и данных, сформированных или полученных от устройства 110 обработки. Например, жесткий диск 370 может хранить информацию подтверждения пользователя. В некоторых вариантах осуществления жесткий диск 370 может обеспечиваться в устройстве 110 обработки или в носимом устройстве 130. Интерфейс 380 пользователя может позволять взаимодействие и обмен информацией между вычислительным устройством 300 и пользователем. В некоторых вариантах осуществления интерфейс 380 пользователя может быть выполнен с возможностью представления пользователю записей движения, сформированных системой 100 контроля движения. В некоторых вариантах осуществления интерфейс 380 пользователя может содержать физический дисплей, такой как дисплей с динамиком, жидкокристаллический дисплей, светодиодный дисплей, OLED-дисплей, дисплей с электронными чернилами (E-Ink), и т.п.
Например, носимое устройство 130 в системе 100 может принимать любую структуру. Например, носимое устройство 130 может принять структуру носимого устройства 400, показанного на фиг. 4. Для описания носимого устройства 130, носимое устройство 400 на фиг. 4 может использовать в качестве примера одежду. Как показано на фиг. 4, носимое устройство 400 может содержать предмет 410 верхний одежды. Предмет 410 верхней одежды может содержать предмет 4110 верхней одежды, один или несколько модулей 4120 обработки предмета верхней одежды, один или несколько модулей 4130 обратной связи предмета верхней одежды, один или несколько модулей 4140 получения предмета верхней одежды и т.п. Основа 4110 предмет верхней одежды может относиться к одежде, надеваемой на верхнюю часть человеческого тела. В некоторых вариантах осуществления основа 4110 предмета верхней одежды может содержать футболку с коротким рукавом, футболку с длинным рукавом, рубашку, жакет и т.п. Один или более несколько модулей 4120 обработки предмета верхней одежды и один или несколько модулей 4140 получения предмета верхней одежды могут располагаться на основе 4110 предмета верхней одежды в областях, которые соответствуют различным участкам тела человека. Один или более модулей 4130 обратной связи предмета верхней одежды могут располагаться в любом месте на основе 4110 предмета верхней одежды и один или более модулей 4130 обратной связи предмета верхней одежды могут быть выполнены с возможностью возвращения информации о состоянии движения верхней части тела пользователя. Примерные способы обратной связи могут содержать, но не ограничиваясь только этим, речевую подсказку, текстовую подсказку, подсказку давлением, электрическую стимуляцию и т.п. В некоторых вариантах осуществления один или более модулей 4140 получения предмета верхней одежды могут содержать, но не ограничиваясь только этим, один или несколько датчиков из числа датчика телодвижения, датчика ECG, датчика EMG, температурного датчика, датчика влажности, кислотно-щелочного датчика, преобразователя звуковой волны и т.п. Датчики в модуле 4140 получения предмета верхней одежды могут быть помещены в различных местах на теле пользователя в соответствии с различными сигналами, которые должны быть измерены. Например, когда датчик телодвижения выполнен с возможностью получения сигнала телодвижения во время движения пользователя, датчик телодвижения может быть помещен в местах основы 4110 предмета верхней одежды, соответствующих туловищу, рукам и суставам. Как другой пример, когда датчик EMG выполнен с возможностью получения сигнала EMG во время движения пользователя, датчик EMG может быть расположен около мышц, которые должны измеряться пользователем. В некоторых вариантах осуществления датчик телодвижения может содержать, но не ограничиваясь только этим, трехосевой датчик ускорения, трехосевой датчик угловой скорости, датчик магнитной силы и т.д. или любое их сочетание. Например, датчик телодвижения может содержать трехосевой датчик ускорения и трехосевой датчик угловой скорости. В некоторых вариантах осуществления датчик телодвижения может также содержать тензодатчик. Тензодатчик может быть датчиком, действие которого может быть основано на деформации, сформированной силой и деформацией измеряемого объекта. В некоторых вариантах осуществления тензодатчик может содержать, но не ограничиваясь только этим, один или более из таких датчиков, как нагрузочная ячейка тензодатчика, датчика давления на основе тензодатчика, датчик момента на основе тензодатчика, датчик смещения на основе тензодатчика, датчик ускорения на основе тензодатчика и т.п. Например, датчик на основе тензодатчика может быть установлен в месте сустава пользователя и измеряя сопротивления датчика на основе тензодатчика, которое изменяется с увеличением длины, могут быть получены угол изгиба и направление изгиба сустава пользователя. Следует заметить, что в дополнение к вышеупомянутой основе 4110 предмета верхней одежды, модуль 4120 обработки предмета верхней одежды, модуль 4130 обратной связи предмета верхней одежды и модуль 4140 получения предмета верхней одежды, предмет 410 верхней одежды может также содержать другие модули, такие как модуль электропитания, модуль связи, модуль ввода/вывода и т.д. Модуль 4120 обработки предмета верхней одежды может быть подобен модулю 220 обработки на фиг. 2 и модуль 4140 получения предмета верхней одежды может быть подобен модулю 210 получения на фиг. 2. Для дополнительного описания различных модулей предмета 410 верхней одежды, обратитесь к фиг. 2 и его сопутствующим описаниям в настоящем раскрытии, которые здесь не повторяются.
На фиг. 5 представлена блок-схема последовательности выполнения операций примерного процесса определения целевого действия, соответствующая согласно некоторым вариантам осуществления настоящего раскрытия. В некоторых вариантах осуществления процесс 500 может быть реализован системой 100. Например, память в устройстве 110 обработки и/или в мобильном устройстве 140 может хранить один или более наборов команд по анализу и идентификации действий. Набор команд может содержать множество команд. Процессор устройства 110 обработки и/или мобильного устройства 140 во времени выполнения может считывать и выполнить множество команд из набора команд и исполнять процесс 500, руководствуясь множеством команд. Процесс 500 может быть завершен в реальном времени или каждая операция может завершаться в различные периоды времени. Процесс 500 может содержать нижеследующие этапы.
На этапе 510 могут быть получены данные о действии пользователя во время движения пользователя. Данные о действии пользователя могут соответствовать действию неизвестного пользователя.
Устройство 110 обработки и/или мобильное устройство 140 могут измерять вышеупомянутые данные о действии во множестве мест измерений на пользователе, например, могут получать необработанные данные во время движения пользователя. А именно, устройство 110 обработки и/или мобильное устройство 140 может быть средствами связи соединено с носимым устройством 130 напрямую или через сеть 120. Носимое устройство 130 может иметь множество датчиков. Когда пользователь носит на себе носимое устройство 130, множество датчиков могут быть присоединены ко множеству мест на теле пользователя. Поэтому устройство 110 обработки и/или мобильное устройство 140 могут получать результаты измерений от множества датчиков, присоединенных к пользователю во множестве мест измерений, через соответствующие модули получения для получения данных о действии пользователя.
Данные о действии пользователя могут относиться к данным о действии, формируемым на основе информации о параметрах человеческого тела во время движения пользователя. В некоторых вариантах осуществления информация о параметрах человеческого тела может содержать, но не ограничиваясь только этим, один или более сигналов из числа сигнала EMG, сигнала телодвижения, электрокардиографического сигнала, температурного сигнала, сигнала влажности, концентрации кислорода в крови, частоты дыхания и т.п.
Поскольку действие пользователя является результатом координации множества мышц и суставов, соответственно, данные о действии пользователя могут также содержать данные, собираемые множеством датчиками в М местах на теле пользователя, где M - целое число, большее 1. В некоторых вариантах осуществления данные, собранные каждым отдельным датчиком, могут рассматриваться как фрагмент субданных о действии. Например, в некоторых вариантах осуществления множество датчиков в носимом устройстве 130 может получать сигналы от множества частей тела во время движения пользователя. Комбинация сигналов телодвижения множества частей тела может отражать относительную ситуацию с движением между различными частями человеческого тела. Например, датчик EMG в носимом устройстве 130 может получать сигнал EMG во время движения пользователя, датчик телодвижения в носимом устройстве 130 может получать сигнал телодвижения во время движения пользователя, и датчик угла и датчик угловой скорости в носимом устройстве 130 могут получать угол и угловую скорость для каждого сустава во время движения пользователя. Сигнал каждого из вышеупомянутых датчиков регистрируется как фрагмент субданных о действии. Все субданные о действии пользователя могут объединяться для формирования данных о действии.
Например, когда человек выполняет действие по подъему руки, соответствующие данные о действии могут содержать данные об угле и данные угловой скорости плеча, данные об угле и данные угловой скорости между плечом и предплечьем, данные EMG мышцы бицепса плеча, данные EMG дельтовидной мышцы, данные EMG трапециевидной мышцы и данные группы мышц спины и т.д., измеряемые носимым устройством 130. Как другой пример, когда пользователь выполняет фиксацию при грудном жиме сидя, датчик EMG в носимом устройстве 130, соответствующий положению грудной мышцы человеческого тела, широчайшей мышцы спины и т.д., может получать сигнал EMG для соответствующего положения мышц пользователя. Как дополнительный другой пример, когда пользователь выполняет приседание, датчик EMG в носимом устройстве 130, соответствующий положению большой ягодичной мышцы, четырехглавой мышцы бедра человека и т.д., может получать сигнал EMG о соответствующем положении мышцы пользователя и ближайший угловой датчик и датчик угловой скорости могут получать угол и угловую скорость между бедром и икрой. Данные, полученные каждым одиночным датчиком, могут рассматриваться как фрагмент субданных о действии. Поэтому данные о действии пользователя для подъема руки могут также содержать множество субданных о действии пользователя, соответствующих данным, собираемым во множестве мест тела пользователя, когда пользователь выполняет действие по подъему руки.
Когда пользователь носит на себе носимое устройство 130, носимое устройство 130 может начинать измерение движения пользователя в любое время и пользователь может начать тренироваться или начинать отдыхать в любое время. Таким образом, устройство 110 обработки и/или мобильное устройство 140 не знают, получает ли носимое устройство 130 фрагмент случайных данных о действии пользователя или вышеупомянутом действии при фитнесе, а также устройство 110 обработки и/или мобильное устройство 140 не знают, когда действие фитнеса началось в полученных данных. Поэтому то, что получает носимое устройство 130, является данными действия, содержание которого неизвестно. То есть, система 100 находится в неизвестном состоянии в отношении того, какой вид движения выполняет пользователь (то есть, содержит ли действие пользователя несколько известных целевых действий и время начала каждого целевого действия) и когда пользователь начинает тренироваться. Поэтому данные о действии также не имеют никакого идентификатора, указывающего контент действия. Просто для удобства описания, настоящее раскрытие может определить, содержат ли данные о действии идентификатор действия как пример для описания того, является ли известным контент данных о действии.
На этапе 520 на основе одного или более наборов возможных справочных данных о действии, содержание которых известно, выполняя идентификацию действия на данных о действии пользователя, может быть определено, содержит ли действие пользователя справочное действие (т.е. целевое действие), соответствующее одному или более наборам возможных справочных данных о действии.
Целевое действие может относиться к конкретному действию из числа фактических действий, выполняемых пользователем, таких как подъем на бицепс, жим лежа, приседание, удар, отжимание в упоре, становая тяга, укрепление брюшного пресса и т.д. Справочное действие может относиться к стандартному действию с содержанием действия, соответствующего конкретному действию, выполняемому специалистом (таким как тренер и т.д.). В некоторых вариантах осуществления идентификация целевого действия может быть выполнена сразу или в течение заданного времени после того, как получены данные о действии пользователя. Заданное время может быть очень коротким временем, например, в течение одного часа или 0,1, 0,5 секунды. Идентификация целевого действия может также быть выполнена в режиме реального времени с получением данных о действии пользователя. Например, когда пользователь выполняет действие, процессор устройства 110 обработки и/или мобильное устройство 140 могут получить данные о действии пользователя, в то же время растягивая или сжимая данные о действии пользователя до другого масштаба и затем сравнивая их со справочными данными о действии, таким образом, одновременно выполняя идентификацию действия на данных о действии пользователя. Способ сравнения, описанный выше, может быть описан в других частях настоящего раскрытия.
Справочные данные о действии пользователя могут содержать множество наборов справочных данных о действиях, измеряемых множеством датчиков. При получении справочных данных о действиях, подобных набору данных о действиях пользователя, множество датчиков могут также прикрепляться к М местам измерений на специалисте, например, специалист может носить носимое устройство 130. Затем специалист может выполнять конкретное действие и устройство получения данных (например, устройство 110 обработки и/или мобильное устройство 140 или другие устройства) может принимать соответствующие данные о действии пользователя через соответствующий модуль получения в носимом устройстве 130. Поэтому возможные справочные данные о действии могут быть данными о действия для справочного действия, содержание которого известно и измерено в М местах измерений на специалисте, таких как справочные данные о действии пользователя, помеченных содержанием действия. Например, справочные данные о действии при подъеме плеча могут содержать данные, собранные из того же самого множества мест, что и у тренера по фитнесу. Специалист может быть человеком, который используется в качестве модели для получения справочных данных о действии, таким как тренер по фитнесу. Для данных, полученных каждым датчиком, справочные данные о действии пользователя для подъема руки могут содержать M фрагментов справочных субданных о действии, каждый из которых соответствует данным, полученным в одном из М мест на теле, когда специалист выполняет действие по подъему руки. В некоторых вариантах осуществления М мест измерений на специалисте могут иметь взаимно однозначное соответствие с М мест измерений на пользователе, когда получают данные о действии пользователя. Соответственно, M фрагментов субданных о действии пользователя в данных о действии пользователя могут иметь взаимно однозначное соответствие с M фрагментами справочных субданных о действии.
Справочные данные о действии могут также формироваться другими способами. Например, данные о действии виртуального человека могут быть получены посредством компьютерного моделирования и справочные данные о действии могут быть получены путем искусственного приспосабливания виртуального человека в видео через технологии искусственного интеллекта (например, искусственно подгоняемого действия г-на Олимпия в демонстрационном видео). Пока определенные данные о действии могут стандартно представлять определенное действие и содержание определенных данных о действии известно, определенные данные о действии могут использоваться в настоящем раскрытии в качестве справочных данных о действии. Как упомянуто выше, просто для удобства описания, настоящее раскрытие может принимать данные о действии пользователя, отмеченные содержанием, в качестве примера для описания данных о действии с известным содержанием.
На этапе 520 устройство 110 обработки и/или мобильное устройство 140 может получать доступ к справочной базе данных о действии. Справочная база данных о действии может содержать множество наборов справочных данных о действии. Множество наборов справочных данных о действии может соответствовать множеству справочных действий. Например, каждый набор справочных данных о действии может соответствовать одному справочному действию или каждый набор справочных данных о действии может соответствовать множеству справочных действий или каждое справочное действие может соответствовать множеству наборов справочных данных о действии.
При выполнении идентификации целевого действия на данных о действии пользователя устройство 110 обработки и/или мобильное устройство 140 может идентифицировать данные о действии пользователя, последовательно сравнивая данных о действии пользователя с каждым из множества наборов справочных данных о действии в базе данных справочных действий, используя двухуровневую операцию отсева. Двухуровневая операция отсева может отсеивать множество наборов справочных данных о действии посредством двух различных операций отсева и окончательно определять, какое справочное действие содержит действие пользователя. Например, двухуровневая операция отсева может содержать сочетание операции отсева, основанной на степени различия, и операции отсева, основанной на вероятности.
А именно, при отсеве на первом уровне устройство 110 обработки и/или мобильное устройство 140 могут выбрать набор возможных справочных данных о действии в качестве возможных справочных данных о действии первого уровня и затем использовать выбранные возможные справочные данные о действии пользователя кандидата для определения степени различия действия с данными о действии пользователя, чтобы определить, является ли различие в значениях данных между данными о действии пользователя и возможными справочными данными о действии первого уровня достаточно малым. Если степень различия между данными о действии пользователя и определенными возможными справочными данными о действии первого уровня меньше, чем заданное значение, возможные справочные данные о действии первого уровня могут перейти на возможные справочные данные о действии второго уровня. Каждые возможные справочные данные о действии второго уровня соответствуют одному или более продвинутым справочным действиям, то есть, справочным действиям второго уровня.
Отсев на втором уровне может быть вероятностным отсевом. При отсеве второго уровня устройство 110 обработки и/или мобильное устройство 140 может определять вероятность, что действие пользователя содержит продвинутое справочное действие (справочное действие второго уровня), и затем определять, содержит ли действие пользователя справочное действие второго уровня. Содержит ли действие пользователя целевое действие, соответствующее целевым справочным данным о действии, может быть определено, основываясь на результате отсева второго уровня. Конкретные этапы описываются ниже.
На этапе 521 каждый набор справочных данных о действии может быть выбран, в свою очередь, из множества наборов справочных данных о действии в качестве возможных справочных данных о действии первого уровня.
На этапе 522 может быть определена степень различия между возможными справочными данными о действии первого уровня и данными о действии пользователя.
На этапе 523 может быть сделано заключение, является ли значение степени различия меньшим, чем первое заданное значение. Если значение степени различия больше или равно первому заданному значению, общее различие между действием пользователя и возможными справочными данными о действия первого уровня может считаться относительно большим. Затем может быть выполнена операция 521, то есть, из множества наборов справочных данных о действии в справочной базе данных о действии может быть выбран следующий набор справочных данных в качестве возможных справочных данных о действии первого уровня и следующий набор справочных данных может снова сравниваться с данными о действии пользователя на уровне значения данных. Если значение степени различия следующего набора справочных данных меньше, чем первое заданное значение, общее различие между действием пользователя и возможными справочными данными о действии первого уровня можно считать малым. Затем может быть выполнен этап 524, то есть, возможные справочные данные о действии первого уровня могут быть определены как возможные справочные данные о действии второго уровня, и затем может быть выполнена целевая идентификация данных о действии следующего уровня.
На этапе 525 может быть определено расстояние между данными о действии пользователя и каждым из нескольких наборов возможных справочных данных о действии второго уровня.
На этапе 526 вероятность, что данные о действии пользователя содержат целевое действие, соответствующее возможным справочным данным о действии второго уровня, может быть определена на основе каждого расстояния.
На этапе 527 принимается решение, превышает ли максимальное значение из числа значений вероятностей второе заданное значение. Если максимальное значение не превышает второе заданное значение, может быть выполнен этап 529, то есть, определяется, что действие пользователя не содержит справочное действие, соответствующее возможным справочным данным о действии второго уровня. Если максимальное значение больше, чем второе заданное значение, этап 528 может быть выполнен, то есть, принимается решение, что действие пользователя содержит справочное действие, соответствующее возможным справочным данным о действии второго уровня с самым высоким значением вероятности, и справочное действие является целевым действием.
Основание для выбора возможных справочных данных о действии первого уровня может быть случайным и последовательным или может быть выбрано согласно определенному правилу, что не ограничивается в настоящем раскрытии. Например, все справочные данные о действии могут быть заранее пронумерованы в базе справочных данных о действии и затем устройство 110 обработки и/или мобильное устройство 140 может выбрать справочную позицию данных о действии объектом как позицию возможных справочных данных о действии первого уровня, соответствующую номеру.
При сравнении возможных справочных данных о действии первого уровня с данными о действии пользователя может быть принят способ сравнения с использованием скользящего окна. Например, устройство 110 обработки и/или мобильное устройство 140 может перемещать скользящее окно по данным о действии пользователя вдоль оси времени и выбирать сегмент данных о действии пользователя в скользящем окне. Поскольку M фрагментов субданных о действии пользователя в данных о действии пользователя собирают параллельно, скользящее окно может действовать на каждом фрагменте субданных о действии пользователя одновременно и скользить по каждому фрагменту субданных о действии пользователя параллельно. Скользящее окно может соответствовать заданному временному интервалу (такому как 0,1 секунды, 0,5 секунды, 1 секунда и т.д.). Поэтому для M фрагментов субданных о действии пользователя скользящее окно может содержать М сегментов данных для данных о действии пользователя, собранных в заданном временном интервале. Устройство 110 обработки и/или мобильное устройство 140 может соответственно сравнивать М сегментов данных о действии с некоторыми или всеми данными M фрагментов справочных субданных о действии, соответствующих возможным справочным данным о действии первого уровня, чтобы получить один или более субрезультатов сравнения и затем определить комплексную степень различия путем взвешивания и суммирования одного или более субрезультатов сравнения. Комплексная степень различия указывает на различие между данными о действии пользователя и справочными данными о действии. Чем меньше значение комплексной степени различия, тем меньше различие, что указывает, что чем ближе сегмент данных о действии пользователя к справочным данным о действии, тем ближе действие пользователя, соответствующее сегменту данных о действии пользователя, к справочному действию, и устройство 110 обработки и/или мобильное устройство 140 может принять решение, что данные о действии пользователя содержат справочное действие. Например, когда пользователь выполняет подъем на бицепсах во время движения пользователя, данные о действии пользователя могут содержать соответствующий сегмент данных о действии пользователя. Когда устройство 110 обработки и/или мобильное устройство 140 сравнивает сегмент данных о действии пользователя, соответствующий подъему на бицепсах, со справочными данными о действии, соответствующими подъему на бицепсах, значение комплексной степени различия может быть очень малым. С другой стороны, меньшее значение комплексной степени различия может указывать, что положение сегмента данных о действии пользователя в данных о действии пользователя находится ближе к месту целевого действия в данных о действии пользователя, то есть, действие пользователя, соответствующее сегменту данных о действии пользователя находится ближе по времени к моменту, когда пользователь выполнит целевое действие.
Конкретно, устройство 110 обработки 110 и/или мобильное устройство 140 могут использовать скользящее окно с заданной шириной, чтобы скользить по данным о действиях пользователя вдоль оси времени с заданным размером шага и каждый раз выбирать в скользящем окне сегмент данных о действии пользователя. Например, устройство 110 обработки и/или мобильное устройство 140 могут последовательно выбирать с заданным размером шага сегмент непрерывных данных с заданной длиной данных из данных о действии пользователя. Полагая, что скорость пользователя, выполняющего целевое действие, может отличаться от скорости стандартного действия, выполняемого специалистом, длина скользящего окна может отрицательно коррелироваться со скоростью действия по использованию для возмещения различия. То есть, когда скорость действия пользователя выше, используемая длина скользящего окна короче, а когда скорость действия пользователя медленнее, используемая длина скользящего окна длиннее.
Заданный размер шага может быть постоянной величиной. Поскольку значение комплексной степени различия также обозначает временное расстояние между действием пользователя, соответствующим текущему сегменту данных о действии пользователя, и целевым действием, заданный размер шага, может также регулироваться на основе значения комплексной степени различия. Например, чтобы повысить эффективность идентификации целевого действия, заданный размер шага может положительно коррелироваться с величиной значения комплексной степени различия в предыдущий момент. Положительная корреляция может указывать, что заданный размер пропорционален значению комплексной степени различия в предыдущий момент или можно выбрать размер шага в текущий момент на определенном этапе способом, основанным на значении комплексной степени различия в предыдущий момент, или может быть таким, что размер шага для текущего момента больше, чем размер шага для предыдущего момента на постоянную величину и т.д., что здесь не ограничивается. Заданный размер шага может также положительно коррелироваться с тенденцией изменения значения комплексной степени различия. Например, если различие между комплексным значением степени различия в текущий момент и комплексным значением степени различия в предыдущий момент больше 0, т.е. тенденция изменения комплексной значения степени различия увеличивается, что означает, что действие пользователя, соответствующее текущему сегменту данных о действии пользователя, становится более далеким и удаляется от целевого действия во времени. В этом случае, устройство 110 обработки и/или мобильное устройство 140 может увеличивать размер шага. Если различие между комплексным значением степени различия в текущий момент и комплексным значением степени различия в предыдущий момент меньше 0, это означает, что действие пользователя, соответствующее текущему сегменту данных о действии пользователя, становится во времени все ближе и ближе к целевому действию. В этом случае, устройство 110 обработки и/или мобильное устройство 140 могут уменьшить размер шага. Если различие между комплексным значением степени различия в текущий момент и комплексным значением степени различия в предыдущий момент равно 0, размер шага может оставаться неизменным.
Так как ширина скользящего окна задается, длина сегмента данных, отсекаемого от данных о действии пользователя, также может быть задана. Поэтому сегмент данных о действии пользователя может соответствовать всем возможным справочным данным о действии первого уровня. Сегмент данных о действии пользователя может также соответствовать участку возможных справочных данных о действии первого уровня. В некоторых вариантах осуществления справочные данные о действии могут содержать один или более сегментов данных идентификации действия. Данные идентификации действия могут быть данными действия (например, данными угловой скорости, данными скорости и т.д.), соответствующими, по меньшей мере, участку характерного действия справочного действия, которое, по существу, выполнено с возможностью представления характерного действия. Характерное действие может быть уникально для справочного действия. Справочное действие может быть определено через участок характерного действия или все данные могут быть определены как справочные данные о действии через данные идентификации действия, так чтобы, когда сегмент данных, подобный данным идентификации действия, появляется в данных о действии пользователя, действие пользователя могло распознаваться как содержащее соответствующее целевое действие. Между тем, данные идентификации действия пользователя могут существовать только на участке справочных субданных о действии справочных данных о действии, или данные идентификации действия могут существовать в каждых справочных субданных о действии. Данные идентификации действия, существующие в справочных субданных о действии, могут упоминаться как субданные идентификации действии.
Для скользящего окна в текущий момент устройство 110 обработки и/или мобильное устройство 140 могут сравнивать М сегментов данных о действии пользователя с соответствующими М фрагментами субданных идентификации действия соответственно для получения соответствующих М степеней различия. М степеней различия могут быть взвешены и просуммированы для получения комплексной степени различия. Если комплексная степень различия меньше, чем первое заданное значение, могут быть определены возможные справочные данные о действии первого уровня, прошедшие отсев первого уровня, и возможные справочные данные о действии первого уровня могут быть выбраны в качестве возможных справочных данных о действии второго уровня. Если значение комплексной степени различия больше, чем первое заданное значение, скользящее окно может скользить к следующему сегменту данных о действии пользователя с заданным размером шага, и затем сравнение может повторяться, пока комплексное значение степени различия не станет меньше, чем первое заданное значение, или пока скользящее окно не продвинется до конца данных о действии пользователя.
Конкретно, при сравнении определенного сегмента субданных идентификации действия определенного фрагмента возможных справочных данных о действии первого уровня с его соответствующими субданными о действии пользователя, могут быть выполнены следующие операции.
Для определенного сегмента субданных идентификации действия в возможных справочных данных о действии первого уровня данные являются двумерными. Например, возможные справочные данные о действии первого уровня для подъема руки могут содержать субданные идентификации действия в различные моменты времени для угла изгиба предплечья относительно плеча. Субданные идентификации действия могут содержать множество значений угла и множество соответствующих моментов времени, поскольку субданные идентификации действия являются двумерными данными. Для таких субданных идентификации действия для единого параметра, когда сегмент субданных идентификации действия включается в один фрагмент возможных справочных данных о действии первого уровня, конкретный процесс получения комплексной степени различия является следующим. На фиг. 7A показан примерный сегмент идентификации данных о действии в справочных данных о действии и кривая сегмента субданных о действии пользователя, собранных скользящим окном в данных о действии пользователя по оси времени в соответствии с некоторыми вариантами осуществления настоящего раскрытия. Субданные идентификации действия в справочных данных о действии могут содержать множество фрагментов данных {aj} = {a1, a2, a3, …an}, где n – целое число, большее 1, каждый фрагмент данных соответствует метке времени и по мере увеличения j момент времени, соответствующий метке времени каждым данным aj последовательно увеличивается. То есть, точки данных в векторе {aj} могут располагаться в хронологическом порядке. Сегмент субданных о действии пользователя может содержать множество фрагментов данных {bi} = {b1, b2, a3, …, bm}, где m - целое число, большее 1, каждый фрагмент данных соответствует метке времени, и когда i увеличивается, временная точка, соответствующая метке времени каждых данных bi, последовательно увеличивается. То есть, точки данных в векторе {bi} могут располагаться в хронологическом порядке. Вообще говоря, длительность, соответствующая скользящему окну, является меньшей, чем длительность, соответствующая субданным идентификации действия, и объем данных, соответствующий скользящему окну, является меньшим, чем объем данных, соответствующий данным автоматической идентификации, то есть, m < n.
Полагая, что частоты выборки и скорости действия справочных данных о действии и данных о действии пользователя являются одинаковыми для одного и того же временного интервала, количество точек данных в справочных данных о действии и количество точек данных о действии пользователя могут быть одинаковыми. Таким образом, сегмент {bi} субданных о действии пользователя может соответствовать данным той же длины в субданных {aj} идентификации действия. То есть, каждая точка данных в {bi} может соответствовать точке данных в {aj}. При определении степени различия между {bi} и {aj}, {bi} необходимо брать только вдоль временной оси t, расстояние одной точки данных может скользить каждый раз, и одно определение степени различия между точкой данных и соответствующей точкой данных в {aj} может определяться каждый раз. Однако, полагая, что частоты выборки и/или скорости действия в справочных данных о действии и в данных о действии пользователя несовместимы, между точками данных о действии пользователя и точками данных справочного действия не существует взаимно однозначного соответствия. В этом случае, отношение время-действие для {bi} должно регулироваться в соответствии с различными масштабами времени для создания отрегулированного отношения действие-время, совместимого с отношением действие-время для справочных данных о действии. Например, если частоты выборки справочных данных о действии и данных о действии пользователя одинаковы, но скорости действия несовместимы, время, затраченное пользователем для выполнения действия, отличается от времени, затраченного соответствующим справочным действием. Например, если частота выборки аппаратных средств равна 100 точек данных в секунду, скорость сгибания сустава при справочном действии изменяется от 0° до 90° за 1 секунду, а скорость действия пользователя может изменяться только от 0° до 45° за 1 секунду для 100 точек данных, справочные данные о действии соответствуют изменению угла на 90°, а данные о действии пользователя соответствуют изменению угла на 45°. Таким образом, отрезок времени {bi} должен регулироваться в соответствии с различными масштабами времени, т.е. {bi} должен расширяться или сжиматься в соответствии с различными масштабами с последующим различением степени различия между обработанной точкой данных и соответствующей точкой данных в {aj} один раз для каждого масштаба, пока не определятся все степени различия, соответствующие всем масштабам. Конкретные операции могут быть описаны следующим образом.
Сначала, устройство 110 обработки и/или мобильное устройство 140 может вычислить расстояние Dji между любой точкой bi в субданных о действии пользователя и любой точкой aj в субданных идентификации действия, размещая сегмент {bi} субданных о действии пользователя и субданные {aj} идентификации действия на одной и той же временной оси, и определить матрицу Dm×n расстояний m×n, как показано на фиг. 7B. Каждый элемент в матрице расстояний обозначает расстояние от i-ой (i≤m) точки сегмента субданных действия пользователя до j-ой (i ≤ n) точки субданных идентификации действия в возможных справочных данных о действии первого уровня. Принимая в качестве примера действия пользователя такое действие фитнеса, как подъем на бицепсах, субданные {bi} действия пользователя могут содержать углы между плечом и предплечьем и соответствующие субданные {aj} идентификации действия пользователя в справочных данных могут также содержать углы между плечом и предплечьем. Таким образом, расстояние Dji может указать разницу Dji = | aj-bi | между углом между плечом и предплечьем пользователя и углом, представленным субданными идентификации действия. Расстояние D56 между a5 и b6 и расстоянием D53 между a5 и b3 показана на фиг. 7A. Конечно, расстояние может также быть расстоянием, определенным другими способами. Например, расстояние между любой точкой bi в субданных о действии и любой точкой aj в субданных идентификации действия может быть евклидовым расстоянием, манхэттенским расстоянием, Р-параметрическим расстоянием, косинусным расстоянием, чебышевским расстоянием, марксианским расстоянием, расстоянием редактирования, расстоянием Джеккарда или любым другим корреляционным расстоянием. Таким образом, матрица Dm×n расстояний содержит расстояния точка-точка между всеми точками в сегменте {bi} субданных о действии пользователя во всех масштабах и всех точках в субданных {aj}идентификации действия.
Во-вторых, устройство 110 обработки и/или мобильное устройство 140 может определить путь Pmin кратчайшего расстояния в матрице Dm×n расстояний, т.е. наименьшую цену регуляризации. Расстояние может быть выражено вектором P = {pk} = {p1, p2, … …, pl}, который является последовательностью, состоящей из некоторых элементов матрицы Dm×n расстояний, где l - количество элементов на расстоянии P. Расстояние P может содержать множество чисел, каждое из которых является элементом (т.е. расстоянием) в Dm×n. Любые два смежных числа являются двумя соседними элементами матрицы Dm×n расстояний и положение следующего числа в последовательности в матрице Dm×n расстояний должно быть справа внизу или внизу справа от соответствующего положения предыдущего числа в последовательности в матрице Dm×n расстояний. Так как время, соответствующее сегменту субданных о действии пользователя в скользящем окне короче, чем время, соответствующее субданным идентификации действия, два конца пути кратчайшего расстояния P могут соответствовать точке b1 первых данных и последней точке bm данных из числа {bi}, то есть, первое число в последовательности равно p1=D1x и последнее число равно pl=Dmy, где x <n, y <n, x и y - положения соответствующих точек данных в {aj}, соответственно. Путь кратчайшего расстояния Pmin является расстоянием с самой маленькой суммой всех элементов среди всех путей, удовлетворяющих вышеупомянутым условиям, то есть, .
Полагая, что скользящее окно может быть установлено с различной длительностью и различными частотами выборки данных, количество точек данных в сегменте данных о действии пользователя во временном окне может отличаться. Это может заставить отличаться значение пути Р кратчайшего расстояния в зависимости от частоты выборки данных и длительности временного окна датчиков. Принимая эти факторы во внимание, степень f различия может быть определена как , где может быть средневзвешенным значением элементов пути кратчайшего расстояния Pmin, W = {w1, w2, … wl} может быть весовым вектором, состоящим из m элементов с 1 строкой и l столбцами, и является скаляром. Например, степень различия может быть определены как среднее расстояние, то есть, все элементы в W равны 1/l.
Посредством вышеупомянутого вычисления устройство 110 обработки и/или мобильное устройство 140 могут завершить операции определения степени различия между каждым из множества масштабированных сегментов данных и субданными идентификации действия, соответственно, и определения наименьшей степени различия из числа степеней различия между сегментом данных и субданными идентификации действия.
В некоторых вариантах осуществления, чтобы уменьшить объем вычислений и определить масштаб корректировки субданных о действии пользователя, перед определением степени различия сегмента субданных о действии пользователя внутри скользящего окна, устройство 110 обработки и/или мобильное устройство 140 могут определить целевой интервал данных для сравнения, исходя из субданных идентификации действия, и сравнить только целевой интервал данных для сравнения с сегментом субданных о действии пользователя для получения степени различия. Целевой интервал данных для сравнения может содержать множество точек субданных действия. Целевой интервал данных для сравнения может быть определен на основе следующего соотношения между данными о действия пользователя и субданными идентификации действия, выбранными скользящим окном.
1) Начало и конец сегмента данных о действии пользователя, выбранных скользящим окном, точно соответствуют началу и концу субданных идентификации действия, то есть, сегмент данных о действии пользователя является точно полным распределением субданных идентификации действия. В этом случае, устройство 110 обработки и/или мобильное устройство 140 могут сначала определить, что первая точка данных и последняя точка данных пользовательского сегмента данных о действии пользователя, выбранные скользящим окном, соответствуют первой точке данных и последней точке данных соответствующих субданных идентификации действия, соответственно. Целевой интервал данных для сравнения охватывает все субданные идентификации действия. Ограничение расстояния Р может содержать следующее: каждое число из последовательности является элементом Dm×n, любые два смежных числа являются двумя соседними элементами в матрице Dm×n расстояний и положение следующего числа из последовательности в матрице Dm×n расстояний находится справа внизу или внизу справа от соответствующего положение предыдущего числа в матрице Dm×n расстояний. Два конца пути кратчайшего расстояния Р могут соответствовать p1=D11 и pl=Dmn. То есть, путь кратчайшего расстояния P матрицы расстояний является кратчайшим расстоянием от левого верхнего угла до правого нижнего угла матрицы расстояний.
2) Начальная точка субданных о действии пользователя, выбранная скользящим окном, соответствует начальной точке субданных идентификации действия и конечная точка субданных о действии пользователя, выбранная скользящим окном, соответствует определенной точке данных в субданных идентификации действия. То есть, субданные о действии пользователя соответствуют сегменту в субданных идентификации действия после масштабирования и этот сегмент располагается в начальном положении субданных идентификации действия. В этом случае устройство 110 обработки и/или мобильное устройство 140 может сначала решить, что первая точка данных сегмента данных о действии пользователя, выбранная скользящим окном, соответствует первой точке данных, соответствующей субданным идентификации действия. Затем, целевой интервал данных для сравнения может охватывать все субданные идентификации пользователя. Ограничение расстояния Р может содержать следующее: каждое число в последовательности является элементом в Dm×n; любые два смежных числа являются двумя смежными элементами матрицы Dm×n расстояний и положением следующего числа в последовательности матрицы Dm×n расстояний является положение вправо вниз или вниз вправо от соответствующего положения предыдущего числа в матрице Dm×n расстояний Оба конца пути кратчайшего расстояния Р могут соответствовать p1=D11 и pl=Dmy. То есть, путь кратчайшего расстояния P матрицы расстояний является расстоянием от левого верхнего угла матрицы расстояний до определенной точки последней строки вдоль направления вправо вниз.
3) Начальная точка субданных о действии пользователя, выбранная скользящим окном, соответствует определенным данным субданных идентификации действия и конечная точка субданных о действии пользователя, выбранная скользящим окном, соответствует конечной точке субданных идентификации действия. То есть, после масштабирования субданные о действии пользователя могут быть сегментом данных в конечном положении субданных идентификации действия. В этом случае устройство 110 обработки и/или мобильное устройство 140 могут сначала решить, что последняя точка данных сегмента данных о действии пользователя, выбранная скользящим окном, соответствует последней точке данных соответствующих субданных идентификации действия. Затем целевой интервал данных для сравнения может охватывать все субданные идентификации действия. Ограничение расстояния Р может содержать следующее: каждое число из последовательности является элементом в Dm×n, любые два смежных числа являются двумя смежными элементами матрицы Dm×n расстояний и положением следующего числа из последовательности в матрице Dm×n расстояний является положение направо вниз или вниз направо в соответствующее положение предыдущего числа в матрице Dm×n расстояний. Оба конца пути кратчайшего расстояния Р могут соответствовать p1=D1x и pl=Dmn. То есть, путь кратчайшего расстояния P матрицы расстояний является путем кратчайшего расстояния от определенной точки в первой строке матрицы расстояний до правого нижнего угла.
4) Начальная точка и конечная точка данных субданных о действии пользователя, выбранных скользящим окном, соответствуют двум промежуточным точкам данных субданных идентификации действия, соответственно, а не первой точке данных и не последней точке данных. То есть, начальная точка субданных о действии пользователя, выбранная скользящим окном, не может быть началом субданных идентификации действия и конечная точка субданных о действии пользователя, выбранная скользящим окном, также не может быть концом субданных идентификации действия. После масштабирования субданные о действии пользователя могут быть сегментом данных субданных идентификации действия и этот сегмент может быть расположен в определенном положении в середине субданных идентификации действия. «Промежуточные данные» сегмента данных могут относиться к данным в любом положении кроме начальной точки и конечной точки данных. В этом случае, устройство 110 обработки и/или мобильное устройство 140 может сначала решить, что первая точка данных и последняя точка данных сегмента субданных о действии пользователя, выбранные скользящим окном, не могут быть первой точкой данных и последней точкой данных соответствующих субданных идентификации действия. Затем целевой интервал данных для сравнения может охватывать все субданные идентификации действия за исключением первой точки данных и последней точки данных. Ограничение расстояния Р может содержать следующее: каждое число из последовательности является элементом в Dm×n, любые два смежных числа являются двумя смежными элементами матрицы Dm×n расстояний и положение следующего числа из последовательности в матрице Dm×n расстояний является положением вправо вниз или вниз вправо от соответствующего положения предыдущего числа на матрице Dm×n расстояний. Два конца пути кратчайшего расстояния Р могут соответствовать pl=D1x и pl=Dmy, где . То есть, путь кратчайшего расстояния P матрицы расстояний начинается от определенной точки на середине первой строки матрицы расстояний, проходит до нижнего правого угла и заканчивается в определенной точке в последней строке.
В некоторых вариантах осуществления субданные идентификации действия могут соответствовать действию начала или действию окончания справочного действия. В этом случае, является ли определенная точка в субданных о действии пользователя начальной точкой или конечной точкой действия, может быть определено изменением угловых скоростей перед точкой и после точки. Например, когда точка данных о действии пользователя показывает, что угловая скорость соответствующего действия пользователя равна 0, и угловая скорость точки после точки данных о действии пользователя не равна 0, можно доказать, что пользователь начинает определенное действие фитнеса с точки данных о действии пользователя, так что можно определить, что точка данных о действии пользователя является начальной точкой действия пользователя. Как другой пример, когда угловая скорость точки действия пользователя равна 0, а угловая скорость предыдущей точки не равна 0, можно доказать, что пользователь прекратил действие в этой точке, то есть, может быть определено, что точка действия пользователя является конечной точкой действия.
Следует понимать, что выполнение идентификации целевого действия на данных о действии пользователя может содержать один из следующих двух случаев. 1) Субданные идентификации действия могут сравниваться с субсегментом данных о действии пользователя для получения значения комплексной степени различия. Когда значение комплексной степени различия меньше, чем первое заданное значение, устройство 110 обработки и/или мобильное устройство 140 могут решить, что возможные справочные данные о действии первого уровня являются возможными справочными данными о действии второго уровня. 2) Данные идентификации пользователя могут сравниваться с сегментом данных о действии пользователя для получения значения комплексной степени различия. Когда значение комплексной степени различия больше, чем первое заданное значение, устройство 110 обработки и/или мобильное устройство 140 могут переместить скользящее окно к следующему сегменту данных с заданным размером шага и затем повторить сравнение. Первое заданное значение может быть критерием определения, является ли расстояние между данными о действии пользователя и действием, соответствующим возможным справочным данным о действии первого уровня достаточно малым. Поэтому, когда значение комплексной степени различия меньше, чем первое заданное значение, может быть доказано, что расстояние между данными о действии пользователя и возможными справочными данными о действии первого уровня является относительно малым (то есть, сходство очень высокое), данные о действии пользователя могут рассматриваться как содержащие целевые данные о действии, соответствующие возможным справочным данным о действии первого уровня. В этом случае, возможные справочные данные о действии первого уровня могут быть определены как возможные справочные данные о действии второго уровня. Когда значение комплексной степени различия больше, чем первое заданное значение, схожесть между данными о действии пользователя и возможными справочными данными о действии первого уровня может оказаться очень низкой и данные о действии пользователя могут определены как не содержащие целевые данные о действии, соответствующие справочному действию.
Выше представлен способ определения степени различия между фрагментом субданных о действии пользователя и соответствующими субданными идентификации действия. На фиг. 7C схематично показан процесс определения комплексной степени различия, когда данные о действии пользователя содержат множество фрагментов субданных о действии пользователя, соответствующих некоторым вариантам осуществления настоящего раскрытия.
Если данные о действии для определенного действия содержат данные по измерению M параметров и M - целое число, большее 1, данные о действии для упомянутого действия содержат M фрагментов субданных параллельных измерений. Поэтому данные о действии пользователя могут содержать M фрагментов субданных о действии пользователя. Возможные справочные данные о действии первого уровня могут также содержать M фрагментов возможных справочных субданных о действии первого уровня. Каждый фрагмент возможных справочных субданных о действии первого уровня соответствует данным о локальном действии в общих данных о действии, получаемых путем измерения параметров, и содержит, по меньшей мере, сегмент субданных идентификации независимого действия. Все субданные идентификации действия вместе составляют данные идентификации действия для справочного действия.
Когда возможные справочные субданные о действии первого уровня, соответствующие определенному фрагменту субданных о действии пользователя, содержат сегмент субданных идентификации действия, субрезультат сравнения между субданными о действии пользователя и возможными справочными субданными о действии первого уровня может быть получен на основе следующих операций. Устройство 110 обработки и/или мобильное устройство 140 могут выбрать сегмент данных о действии пользователя из каждого из M фрагментов субданных о действии пользователя, используя скользящее окно, и последовательно сравнить сегменты данных с соответствующими М сегментами субданных идентификации действия в M фрагментах справочных субданных о действии для определения степеней различия, так чтобы могли быть получены субрезультаты сравнения. Затем М субрезультатов сравнения могут взвешиваться и суммироваться для получения комплексной степени различия, и содержат ли данные о действии пользователя целевое действие, может быть определено на основе комплексной степени различия и первом заданном значении. Для каждого фрагмента из M фрагментов субданных о действии пользователя устройство 110 обработки и/или мобильное устройство 140 может получить степень различия между субданными о действии пользователя и субданными идентификации действия на основе способа, описанного выше.
Конкретно, для каждого фрагмента из числа M фрагментов субданных о действии пользователя устройство 110 обработки и/или мобильное устройство 140 может собирать сегмент субданных о действии пользователя посредством скользящего окна. Скользящие окна, соответствующие M фрагментам субданных о действии пользователя, могут быть связаны или действовать независимо при скольжении. Каждое скользящее окно может иметь одну и ту же ширину, то есть, сегмент субданных о действии пользователя, соответствующий каждому скользящему окну, может одинаково содержать d (d - целое число, большее 1) точек данных и, как описано выше, каждая точка данных из числа d точек данных соответствует временной отметке. Конечно, ширина различных скользящих окон также может отличаться и объем данных, содержащихся в сегмент субданных о действии пользователя в каждом скользящем окне также может отличаться. Устройство 110 обработки и/или мобильное устройство 140 могут определять общее расстояние между каждой точкой данных сегмента субданных данных о действии пользователя и каждой точкой данных о действии субданных идентификации действия согласно способу, описанному выше. Устройство 110 обработки и/или мобильное устройство 140 может получить минимальную стоимость регуляризации общего расстояния вышеупомянутым способом и затем определить степень различия между сегментом субданных о действии пользователя и субданными идентификации действия. Поскольку существует M фрагментов субданных о действии пользователя, то согласно вышеупомянутому способу устройство 110 обработки и/или мобильное устройство 140 может получить все М степеней различия. Наконец, устройство 110 обработки и/или мобильное устройство 140 могут выполнить взвешенное суммирование для М субрезультатов сравнения, чтобы получить комплексную степень различия.
В некоторых вариантах осуществления настоящего раскрытия, после получения значения комплексной степени различия устройство 110 обработки и/или мобильное устройство 140 могут напрямую определить, содержат ли данные о действии пользователя возможные справочные данные о действии первого уровня. Например, устройство 110 обработки и/или мобильное устройство 140 могут установить первое заданное значение для данных идентификации действия и когда значение комплексной степени различия больше, чем первое заданное значение, устройство 110 обработки и/или мобильное устройство 140 могут сдвигать каждое из М скользящих окон к следующему сегменту данных с заданным размером шага и затем сравнение может быть повторено. Если значение комплексной степени различия меньше, чем первое заданное значение, устройство 110 обработки и/или мобильное устройство 140 могут полагать, что набор субданных о действии пользователя может содержать возможные справочные данные о действии первого уровня, и тем самым, вышеупомянутый цикл может считаться законченным.
Когда возможные справочные субданные о действии первого уровня, соответствующие фрагменту субданных о действии пользователя, содержат множество сегментов (например, p сегменты, где p - целое число, большее 1) субданных идентификации действия, результат сравнения между субданными о действии пользователя и возможными справочными субданными о действии первого уровня может быть получен на основе следующего способа. Для каждого фрагмента из числа M фрагментов субданных о действии пользователя устройство 110 обработки и/или мобильное устройство 140 может выбрать сегмент субданных о действии пользователя из каждого фрагмента субданных о действии пользователя через скользящее окно. Скользящие окна, соответствующие M фрагментам субданных о действии пользователя, могут быть связаны или действовать независимо при скольжении. Каждое скользящее окно может иметь одинаковую ширину, то есть, сегмент субданных о действии пользователя, соответствующий каждому скользящему окну, может равномерно содержать d (d - целое число, большее 1) точек данных, и, как описано выше, каждая точка d данных из числа точек данных соответствует временной отметке. Конечно, ширина различных скользящих окон может также отличаться и объем данных, содержащихся в сегменте субданных о действии пользователя в каждом скользящем окне, также может отличаться. Устройство 110 обработки и/или мобильное устройство 140 могут вычислить p интегральных расстояний между сегментом субданных о действии пользователя и p сегментами субданных идентификации действия, соответственно основываясь на способе, описанном выше. Устройство 110 обработки и/или мобильное устройство 140 могут определять минимальную стоимость регуляризации p общих расстояний, используя вышеупомянутый способ в качестве субрезультата сравнения между сегментом субданных о действии пользователя и субданными идентификации действия. Поскольку существует M фрагментов субданных о действии пользователя, устройство 110 обработки и/или мобильное устройство 140 могут получать, в целом, М субрезультатов сравнения на основе вышеупомянутого способа. Наконец, устройство 110 обработки и/или мобильное устройство 140 могут выполнить взвешенное суммирование М субрезультатов сравнения, чтобы получить значение комплексной степени различия.
В некоторых вариантах осуществления настоящего раскрытия, после получения значения комплексной степени различия устройство 110 обработки и/или мобильное устройство 140 могут напрямую определять, содержит ли набор субданных о действии пользователя возможные справочные данные о действии первого уровня. Например, устройство 110 обработки и/или мобильное устройство 140 могут установить первое заданное значение для данных идентификации действия и когда комплексное значение степени различия больше, чем первое заданное значение, устройство 110 обработки и/или мобильное устройство 140 могут сдвигать каждое из М скользящих окон M к следующему сегменту данных с заданным размером шага и затем сравнение может быть повторено. Если значение комплексных степеней различия меньше, чем первое заданное значение, устройство 110 обработки и/или мобильное устройство 140 могут решить, что возможные справочные данные о действии первого уровня являются возможными справочными данными о действии второго уровня, и, таким образом, вышеупомянутый цикл может быть закончен.
В некоторых вариантах осуществления после определения возможных справочных данных о действии второго уровня устройство 110 обработки и/или мобильное устройство 140 могут дополнительно подтвердить, содержит ли действие пользователя справочное действие, соответствующее возможным справочным данным о действии второго уровня.
В некоторых вариантах осуществления настоящего раскрытия может также быть установлено второе заданное значение и второе заданное значение может быть заданным значением, связанным с вероятностью. Полагая, что посредством вышеупомянутого процесса устройство 110 обработки и/или мобильное устройство 140 может окончательно решить, что N (N – целое число, большее 1) наборов возможных справочных данных о действии первого уровня являются возможными справочными данными о действии второго уровня. А именно, N расстояний (комплексные результаты сравнения) между данными о действии пользователя и N наборами возможных справочных данных о действии второго уровня могут быть вычислены, соответственно, посредством сравнения и затем N значений вероятности могут быть вычислены, соответственно, через N расстояний, соответственно. Максимальное значение из числа N значений вероятности может сравниваться со вторым заданным значением и может быть определено, содержат ли данные о действии пользователя возможные справочные данные о действии второго уровня, соответствующие максимальному значению вероятности. Вероятность, что данные о действии пользователя содержат целевое действие, соответствующее i-ым вероятным справочным данным о действии второго уровня, может быть выражена следующим образом:
где Dj - расстояние (например, вышеупомянутая комплексная стоимость регуляризации или комплексная степень различия) между данными о действии пользователя и j-ыми возможными справочными данными о действии второго уровня. Чем меньше значение расстояния между данными о действии пользователя и возможными справочными данными о действии второго уровня, тем может быть выше вероятность, что данные о действии пользователя содержат целевое действие, соответствующее возможным справочным данным о действии второго уровня. Например, сравнивая данные о действии пользователя с тремя возможными справочными данными о действии второго уровня (то есть, принимая N=3, количество трех возможных справочных данных о действии второго уровня равно 1, 2 и 3, соответственно), может быть получено, что расстояние между данными 1 о действии пользователя и возможными справочными данными о действии второго уровня равно D1, может быть получено, что расстояние между данными 2 о действии пользователя и возможными справочными данными о действии второго уровня равно D2, и может быть получен, что расстояние между данными 3 о действии пользователя и возможными справочными данными о действии второго уровня равно D3. Чем меньше значение расстояния между данными о действии пользователя и возможными справочными данными о действии второго уровня, тем выше может быть вероятность, что данные о действии пользователя содержат целевое действие, соответствующее возможным справочным данным о действии второго уровня. Например, вероятность, что пользовательские данные о действии пользователя содержат целевое действие, соответствующее справочным данным действия кандидата второго уровня 1, может быть определена следующим образом:
Вероятность, что данные о действии пользователя содержат целевое действие, соответствующее справочным данным 2 о действии, может быть определена следующим образом:
Вероятность, что данные о действии пользователя содержат целевое действие, соответствующее справочным данным 3 о действии, может быть определена следующим образом:
В этом случае, расчетное максимальное значение трех значений вероятности может быть сравниваться со вторым заданным значением. Когда максимальное значение вероятности больше, чем второе заданное значение, принимают решение, что данные о действии пользователя содержат целевое действие, соответствующее возможным справочным данным n о действии второго уровня, и возможные справочные данные n о действии второго уровня являются возможными справочными данными о действии второго уровня, соответствующими максимальному значению вероятности. Когда максимальное значение вероятности меньше, чем заданное значение второго уровня, принимают решение, что данные о действии пользователя не содержат целевое действие, соответствующее справочной базе данных о действии.
На этапе 530 после определения целевого действия, содержание, связанное с целевым действием, может быть послано пользователю.
Конкретно, после того, как действие пользователя идентифицировано, действие, состоящее в движении пользователя, может контролироваться и контролируемая информация может быть послана пользователю. Контроль действия, состоящего в движении пользователя, может содержать контроль информации, связанной с действием пользователя. В некоторых вариантах осуществления информация, связанная с действием пользователя, может содержать один или более типов действия пользователя, количество действий, качество действий (например, соответствует ли действие пользователя стандарту), время действия и т.п. Тип действия может относиться к действиям фитнеса, которые пользователь выполняет при тренировке. В некоторых вариантах осуществления тип действия может содержать, но не ограничиваясь только этим, один или несколько из таких действий, как грудной жим сидя, приседания, становая тяга, планка, бег, плавание и т.п. Количество действия может относиться к количеству действий, выполняемых во время движения пользователя. Например, пользователь может выполнить 10 грудных жимов сидя во время движения пользователя и эти 10 раз является количеством действий. Качество действия может относиться к степени стандартности действия при фитнесе, выполняемого пользователем относительно стандартного действия при фитнесе. Например, когда пользователь выполняет действие приседания, устройство 110 обработки может определить тип действия для действия пользователя, основываясь на информации о признаке сигнала действия (сигнала EMG и сигнала телодвижения), соответствующего определенному положению мышц (большая ягодичная мышца, четырехглавая мышца бедра и т.д.), и определить качество действия при действии приседания пользователя, основываясь на сигнале действия для стандартного действия приседания. Время действия может относиться ко времени, соответствующему каждому из одного или более типам действия пользователя или к общему времени процесса движения.
Подводя итоги, способ и система 100 определения целевого действия, представленные в настоящем раскрытии, могут получить данные о действии во время движения пользователя и затем данные о действии могут сравниваться со справочными данными о действии, помеченными содержанием действия, так чтобы можно было определить, содержит ли движение пользователя целевое действие, которое совпадает со справочным действием. Способ и система могут выполнить идентификацию целевого действия на данных о действии пользователя, не зная (неизвестно, выполнил ли пользователь действие типа аннотации и когда действие типа аннотации было выполнено), какое действие выполнил пользователь, и послать содержание, связанное с целевым действием пользователю после определения целевого действия. Используя вышеупомянутые технические решения, настоящие способы и системы обладают более высоким интеллектом, чем традиционные способы и системы, и улучшают опыт пользователя.
Описав, таким образом, базовые концепции, специалистам в данной области техники после прочтения этого подробного раскрытия, должно быть достаточно очевидно, что предшествующее подробное раскрытие предназначено для представления посредством примера, но не для ограничения. Различные изменения, улучшения и модификации могут иметь место и предназначены для специалистов в данной области техники, хотя явно это здесь не указывается. Эти изменения, улучшения и модификации предназначены предлагаться этим раскрытием и находятся в рамках сущности и объема примерных вариантов осуществления этого раскрытия.
Кроме того, для описания вариантов осуществления настоящего раскрытия была использована определенная терминология. Например, термины «один из вариантов осуществления», «вариант осуществления» и/или «некоторые варианты осуществления» означают, что конкретные признак, структура или характеристика, описанные в связи с вариантом осуществления, включаются в состав по меньшей мере одного варианта осуществления настоящего раскрытия. Поэтому подчеркнуто и следует понимать, что две или более ссылки на «вариант осуществления», «один из вариантов осуществления» или «альтернативный вариант осуществления» в различных частях настоящего описания не обязательно все относятся к одному и тому же варианту осуществления. Дополнительно, конкретные признаки, структуры или характеристики могут объединяться как подходящие в одном или нескольких вариантах осуществления настоящего раскрытия.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ ОБРАБОТКИ ДАННЫХ ДВИЖЕНИЯ ПОЛЬЗОВАТЕЛЯ И СИСТЕМА КОНТРОЛЯ ДВИЖЕНИЯ ПОЛЬЗОВАТЕЛЯ | 2022 |
|
RU2821773C1 |
СИСТЕМЫ И СПОСОБЫ УПРАВЛЕНИЯ ОКОНЕЧНЫМ УСТРОЙСТВОМ | 2021 |
|
RU2806269C1 |
СИСТЕМЫ И СПОСОБЫ ВЫРАБОТКИ АУДИОСИГНАЛА | 2019 |
|
RU2804933C2 |
Способ, устройство и система для установления беспроводного сетевого соединения | 2015 |
|
RU2625338C1 |
ЗВУКОПРОИЗВОДЯЩЕЕ УСТРОЙСТВО | 2021 |
|
RU2800544C1 |
Способ и устройство для определения местоположения носимого устройства | 2015 |
|
RU2628330C1 |
НАУШНИКИ | 2021 |
|
RU2807021C1 |
Система, способ и устройство передачи данных | 2015 |
|
RU2644392C2 |
СПОСОБ ПЕРЕДАЧИ ИНФОРМАЦИИ И ЭЛЕКТРОННОЕ УСТРОЙСТВО | 2020 |
|
RU2793700C1 |
СИСТЕМЫ И СПОСОБЫ ОПРЕДЕЛЕНИЯ ПОТЕНЦИАЛЬНОГО ЗЛОНАМЕРЕННОГО СОБЫТИЯ | 2018 |
|
RU2768512C1 |
Группа изобретений относится к области вычислительной техники и может быть использована для идентификации действий пользователя. Техническим результатом является повышение точности распознавания действий пользователя. Способ содержит этапы, на которых получают данные о действии пользователя, собранные со множества мест измерений на пользователе, при этом данные соответствуют неизвестному действию пользователя; получают множество наборов справочных данных о действии, причем каждый набор справочных данных о действии соответствует по меньшей мере одному справочному действию; выполняют операцию двухуровневого отсева на множестве наборов справочных данных о действии на основе данных о действии пользователя, причем двухуровневая операция отсева содержит сочетание операции отсева на основе степени различия и операции отсева на основе вероятности; определяют справочное действие, соответствующее целевым справочным данным о действии, в качестве целевого действия; принимают решение, что действие пользователя содержит целевое действие, на основе результата двухуровневой операции отсева; и посылают пользователю информацию, связанную с целевым действием. 2 н. и 8 з.п. ф-лы, 9 ил.
1. Способ идентификации действия пользователя, содержащий этапы, на которых:
получают данные о действии пользователя, собранные со множества мест измерений на пользователе, причем данные о действии пользователя соответствуют неизвестному действию пользователя;
идентифицируют, что действие пользователя содержит целевое действие, когда получают данные о действии пользователя, на основе по меньшей мере одного набора целевых справочных данных о действии, причем указанный по меньшей мере один набор целевых справочных данных о действии соответствует целевому действию,
при этом на этапе идентификации, что действие пользователя содержит целевое действие:
получают множество наборов справочных данных о действии, причем каждый набор справочных данных о действии соответствует по меньшей мере одному справочному действию;
выполняют операцию двухуровневого отсева на множестве наборов справочных данных о действии на основе данных о действии пользователя, причем двухуровневая операция отсева содержит сочетание операции отсева на основе степени различия и операции отсева на основе вероятности и включает в себя этапы, на которых
выбирают каждый набор справочных данных о действии поочередно из множества наборов справочных данных о действии в качестве возможных справочных данных о действии;
определяют по меньшей мере одну степень различия путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия из возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя;
определяют комплексную степень различия путем взвешивания и суммирования указанной по меньшей мере одной степени различия;
выбирают N фрагментов возможных справочных данных о действии второго уровня из множества наборов справочных данных о действии, причем значение комплексной степени различия возможных справочных данных о действии второго уровня меньше, чем первое заданное значение, где N - целое число больше 1;
вычисляют N расстояний между данными действия пользователя и N фрагментами возможных справочных данных о действии второго уровня соответственно;
вычисляют N значений вероятности на основе N расстояний соответственно;
выбирают возможные справочные данные о действии второго уровня, значение вероятности которых больше, чем второе заданное значение, в качестве целевых справочных данных о действии; и
определяют справочное действие, соответствующее целевым справочным данным о действии, в качестве целевого действия; и
принимают решение, что действие пользователя содержит целевое действие, на основе результата двухуровневой операции отсева; и
посылают пользователю информацию, связанную с целевым действием.
2. Способ по п. 1, в котором
каждый набор справочных данных о действии содержит M фрагментов справочных субданных о действии, причем каждый фрагмент справочных субданных о действии содержит по меньшей мере один сегмент субданных идентификации действия, где M - целое число больше 1;
субданные идентификации действия для M фрагментов справочных субданных о действии формируют интегральные идентификационные данные о действии, причем каждый сегмент субданных идентификации действия соответствует по меньшей мере участку справочного действия по меньшей мере в одном месте измерения из множества мест измерения.
3. Способ по п. 1, в котором на этапе определения по меньшей мере одной степени различия путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия из возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя:
выбирают скользящее окно с заданной длительностью на каждом фрагменте субданных идентификации пользователя, причем скользящее окно содержит сегмент данных из данных о действии пользователя, собранных в заданном временном интервале; и
для скользящего окна в текущий момент определяют степень различия между сегментом данных и соответствующими субданными идентификации действия.
4. Способ по п. 3, в котором этап идентификации, что действие пользователя содержит целевое действие, дополнительно содержит этапы, на которых:
определяют, что значение комплексной степени различия больше, чем первое заданное значение; и
перемещают скользящее окно к следующему сегменту с заданным размером шага и повторяют сравнение.
5. Способ по п. 4, в котором длительность сбора данных, соответствующая сегменту данных в скользящем окне, отрицательно коррелируется со скоростью действия пользователя,
при этом заданный размер шага удовлетворяет одному или более из следующих условий:
заданный размер шага положительно коррелируется с величиной значения комплексной степени различия в предыдущий момент; и
заданный размер шага положительно коррелируется с тенденцией изменения значения комплексной степени различия.
6. Способ по п. 3, в котором сегмент данных содержит множество точек данных о действии пользователя; при этом
на этапе определения по меньшей мере одной степени различия путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия из возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя:
выбирают целевой интервал данных для сравнения из субданных идентификации действия, причем целевой интервал данных для сравнения содержит множество точек данных идентификации,
корректируют сегмент данных в соответствии с множеством масштабов для получения множества скорректированных сегментов данных,
определяют степень различия между субданными идентификации действия и каждым скорректированным сегментом данных из множества скорректированных сегментов данных соответственно, и
определяют минимальную степень различия среди степеней различия между субданными идентификации действия и множеством скорректированных сегментов данных.
7. Способ по п. 3, в котором на этапе определения по меньшей мере одной степени различия путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия из возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя:
определяют матрицу [Dij] расстояний, где Dij обозначает расстояние между i-ой точкой данных целевого интервала данных для сравнения и j-ой точкой данных сегмента данных;
определяют путь кратчайшего расстояния матрицы расстояний, причем путь кратчайшего расстояния удовлетворяет следующим условиям:
начальная точка на пути кратчайшего расстояния находится в первой строке [Dij],
две смежные точки на пути кратчайшего расстояния являются смежными в матрице расстояний,
следующая точка на пути кратчайшего расстояния находится справа, ниже или ниже справа от предыдущей точки,
конечная точка на пути кратчайшего расстояния находится в последней строке [Dij], и
путь кратчайшего расстояния имеет наименьшую цену регуляризации, причем цена регуляризации определяется расстояниями точек на соответствующем пути кратчайшего расстояния матрицы расстояний; и
степень различия связана с ценой регуляризации.
8. Способ по п. 7, в котором, если первая точка данных сегмента данных определяется как точка данных, в которой начинается действие пользователя, начальная точка на пути кратчайшего расстояния является расстоянием D11 между первой точкой сегмента данных и первой точкой целевого интервала данных для сравнения.
9. Способ по п. 7, в котором, если последняя точка данных сегмента данных определяется как точка данных, в которой действие пользователя заканчивается, конечная точка на пути кратчайшего расстояния является расстоянием Dmn между последней точкой сегмента данных и последней точкой целевого интервала данных для сравнения.
10. Система идентификации действия пользователя, содержащая:
по меньшей мере один носитель для хранения данных, причем указанный по меньшей мере один носитель для хранения данных хранит по меньшей мере один набор команд для получения данных о действии пользователя во время движения пользователя; и
по меньшей мере один процессор, связанный с указанным по меньшей мере одним носителем для хранения данных,
при этом при работе системы указанный по меньшей мере один процессор считывает указанный по меньшей мере один набор команд и выполняет способ, содержащий этапы, на которых:
получают данные о действии пользователя, собранные со множества мест измерений на пользователе, причем данные о действии пользователя соответствуют неизвестному действию пользователя;
идентифицируют, что действие пользователя содержит целевое действие, когда получают данные о действии пользователя, на основе по меньшей мере одного набора целевых справочных данных о действии, причем указанный по меньшей мере один набор целевых справочных данных о действии соответствует целевому действию;
при этом на этапе идентификации, что действие пользователя содержит целевое действие:
получают множество наборов справочных данных о действии, причем каждый набор справочных данных о действии соответствует по меньшей мере одному справочному действию;
выполняют операцию двухуровневого отсева на множестве наборов справочных данных о действии на основе данных о действии пользователя, причем двухуровневая операция отсева содержит сочетание операции отсева на основе степени различия и операции отсева на основе вероятности и включает в себя этапы, на которых
выбирают каждый набор справочных данных о действии поочередно из множества наборов справочных данных о действии в качестве возможных справочных данных о действии;
определяют по меньшей мере одну степень различия путем посегментного сравнения по меньшей мере одного сегмента субданных идентификации действия из возможных справочных данных о действии с соответствующим сегментом субданных о действии пользователя;
определяют комплексную степень различия путем взвешивания и суммирования указанной по меньшей мере одной степени различия;
выбирают N фрагментов возможных справочных данных о действии второго уровня из множества наборов справочных данных о действии, причем значение комплексной степени различия возможных справочных данных о действии второго уровня меньше, чем первое заданное значение, где N - целое число больше 1;
вычисляют N расстояний между данными действия пользователя и N фрагментами возможных справочных данных о действии второго уровня соответственно;
вычисляют N значений вероятности на основе N расстояний соответственно;
выбирают возможные справочные данные о действии второго уровня, значение вероятности которых больше, чем второе заданное значение, в качестве целевых справочных данных о действии; и
определяют справочное действие, соответствующее целевым справочным данным о действии, в качестве целевого действия; и
принимают решение, что действие пользователя содержит целевое действие, на основе результата двухуровневой операции отсева; и
посылают пользователю информацию, связанную с целевым действием.
CN 110569775 A, 13.12.2019 | |||
CN 107349594 B, 19.03.2019 | |||
CN 110298221 A, 01.10.2019 | |||
CN 108764120 A, 06.11.2018 | |||
US 8755569 B2, 17.06.2014 | |||
US 20210016150 A1, 21.01.2021 | |||
РАСПОЗНАВАНИЕ ЖЕСТОВ В ДИНАМИКЕ ДЛЯ ПОСЛЕДОВАТЕЛЬНОСТИ СТЕРЕОКАДРОВ | 2001 |
|
RU2280894C2 |
Авторы
Даты
2024-02-12—Публикация
2022-01-27—Подача