РАСПОЗНАВАНИЕ АУДИОПОСЛЕДОВАТЕЛЬНОСТИ ДЛЯ АКТИВАЦИИ УСТРОЙСТВА
RECOGNITION OF AUDIO SEQUENCE FOR DEVICE ACTIVATION

УРОВЕНЬ ТЕХНИКИ
Установившейся практикой является работа электрических устройств в неактивном или выключенном состоянии в режиме ожидания, когда устройство потребляет меньшее количество электропитания. Типичное питание в режиме ожидания электрического устройства может, например, иметь величину приблизительно до 8 ватт. Однако для миллиардов используемых электрических устройств даже эта небольшая величина суммируется в заметную долю общемирового потребления электроэнергии. Инициативы, такие как Инициатива «Один ватт» Международного энергетического агентства (TEA), стремятся уменьшить мощность в режиме ожидания электрических устройств до 0,5 ватт к 2013 году. Было бы полезно добиться упрощенной активации электрических устройств в режиме ожидания даже при работе на 0,5 ваттах.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Настоящая технология относится в общем к системе, содержащейся в электрическом устройстве, для активации устройства из режима ожидания в режим работы на полную мощность. Система включает в себя один или более микрофонов и блок активации в режиме ожидания. Блок активации в режиме ожидания включает в себя процессор, такой как микропроцессор, и соответствующую энергонезависимую память. Одна или более оцифрованных фраз активации могут храниться в энергонезависимой памяти, или записанные заранее до первого использования пользователем, или выбранные и введенные пользователем.
Когда электрическое устройство работает в режиме ожидания, на один или более микрофонов подается питание для считывания звука поблизости от микрофона. Чтобы активировать электрическое устройство, находящееся в режиме ожидания, пользователь может произнести заранее записанную или выбранную пользователем фразу активации, соответствующую фразе активации, сохраненной в энергонезависимой памяти. Аудиопоток детектируется одним или более микрофонами и оцифровывается в аудиопоследовательность. Аудиопоследовательность затем сравнивается процессором блока активации в режиме ожидания с одной или более фразами активации, сохраненными в энергонезависимой памяти. Если произнесенная фраза соответствует сохраненной фразе активации, процессор идентифицирует соответствие и отправит сигнал в силовую цепь для активации электрического устройства в режим работы на полную мощность. Если процессор не идентифицировал никакого соответствия между принятой аудиопоследовательностью и сохраненной фразой(ами) активации, электрическое устройство остается в режиме ожидания.
Микрофон и блок активации в режиме ожидания могут принимать аудиопоток, оцифровывать его в аудиопоследовательность и выполнять операцию нахождения соответствия для сравнения входящих аудиопоследовательностей с сохраненной фразой(ами) активации, все это с питанием, доступным в режиме ожидания. В одном примере это питание может составлять 0,5 ватт.
В вариантах выполнения настоящая технология относится к способу активации электрического устройства из режима ожидания, содержащему этапы, на которых: (a) принимают в режиме ожидания аудиопоток в электрическом устройстве; (b) оцифровывают в режиме ожидания аудиопоток в аудиопоследовательность; (c) сравнивают в режиме ожидания аудиопоследовательность, оцифрованную на упомянутом этапе (b), с оцифрованной фразой активации, сохраненной в энергонезависимой памяти; и (d) активируют электрическое устройство, если аудиопоследовательность соответствует фразе активации в пределах заданного допустимого отклонения.
В другом примере настоящая технология относится к системе активации в режиме ожидания для активации электрического устройства из режима ожидания, причем блок активации в режиме ожидания содержит: один или более микрофонов для обнаружения аудиопотока поблизости от одного или более микрофонов; и блок активации в режиме ожидания, включающий в себя энергонезависимую память, включающую в себя одну или более сохраненных последовательностей активации, и процессор для сравнения оцифрованной аудиопоследовательности, принятой от одного или более микрофонов, с одной или более несколькими сохраненными последовательностями активации, сохраненными в энергонезависимой памяти, используя питание, доступное электрическому устройству в режиме ожидания, процессор, активирующий устройство, если оцифрованная аудиопоследовательность соответствует фразе активации из одной или более фраз активации, сохраненных в энергонезависимой памяти, в пределах заданного допустимого отклонения.
В дополнительном примере настоящая технология относится к машиночитаемому носителю данных, имеющему исполняемые компьютером инструкции для программирования процессора для выполнения способа активации вычислительного устройства системы естественного пользовательского интерфейса NUI из режима ожидания, содержащего этапы, на которых: (a) принимают в режиме ожидания аудиопоток в одном или более микрофонах, связанных с системой NUI; (b) оцифровывают в режиме ожидания аудиопоток в аудиопоследовательность; (c) обрабатывают в режиме ожидания оцифрованный аудиопоток для облегчения нахождения соответствия оцифрованного аудиопотока с одной или более оцифрованными фразами активации, сохраненными в энергонезависимой памяти вычислительного устройства; (d) сравнивают в режиме ожидания аудиопоследовательность, обработанную на упомянутом этапе (c), с одной или более оцифрованными фразами активации, сохраненными в энергонезависимой памяти вычислительного устройства; и (e) активируют вычислительное устройство, если аудиопоследовательность соответствует фразе активации из одной или более фраз активации в пределах заданного допустимого отклонения.
Это раскрытие изобретения приведено для представления в упрощенной форме набора концепций, которые дополнительно описаны ниже в подробном описании. Это раскрытие изобретения не предназначено для идентификации ключевых признаков или существенных признаков заявленного изобретения, а также оно не предназначено для использования в качестве средства определения объема заявленного изобретения. Кроме того, заявленное изобретение не ограничивается вариантами осуществления, которые устраняют любые или все недостатки, отмеченные в любой части этого описания.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1A-1B изображают иллюстративные варианты выполнения системы распознавания, анализа и слежения за целью с пользователем, играющим в игру.
Фиг. 2 изображает иллюстративный вариант выполнения устройства захвата, которое может использоваться в системе распознавания, анализа и слежения за целью.
Фиг. 3A изображает иллюстративный вариант выполнения вычислительной среды, которая может использоваться для интерпретации одного или более жестов в системе распознавания, анализа и слежения за целью.
Фиг. 3B изображает другой иллюстративный вариант выполнения вычислительной среды, которая может использоваться для интерпретации одного или более жестов в системе распознавания, анализа и слежения за целью.
Фиг. 4 является блок-схемой последовательности операций варианта выполнения для обучения и сохранения фразы активации.
Фиг. 5 является примером оцифрованной последовательности активации.
Фиг. 6 является блок-схемой последовательности операций варианта выполнения для активации электрического устройства в режиме ожидания.
Фиг. 7 является блок-схемой варианта выполнения для активации электрического устройства в режиме ожидания.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Теперь будут описаны варианты выполнения настоящей технологии со ссылкой на фиг. 1A-7, которые в общем относятся к системе, содержащейся в электрическом устройстве, для активации устройства из режима ожидания в режим работы на полной мощности. В одном примере электрическое устройство может быть системой NUI, описанной ниже как система 10 распознавания, анализа и слежения за целью. Система NUI может быть системой, где жесты пользователя обнаруживаются, интерпретируются и используются для управления персонажами на экране или другими аспектами программного приложения. Однако, как будет описано ниже, электрическое устройство может быть множеством других вычислительных устройств и приборов. В вариантах выполнения система настоящего раскрытия включает в себя один или более микрофонов для отслеживания аудиосигналов поблизости от электрического устройства, и блок активации в режиме ожидания, включающий в себя микропроцессор с низким энергопотреблением и энергонезависимую память. Когда устройство находится в режиме ожидания, микрофон захватывает звук и преобразует его в цифровую аудиопоследовательность. Эта аудиопоследовательность затем сравнивается микропроцессором с заданной последовательностью(ями) активации, сохраненной в энергонезависимой памяти. Если обнаружено соответствие между цифровой аудиопоследовательностью и заданной последовательностью активации, электрическое устройство активируется.
Один или более микрофонов, микропроцессор и энергонезависимая память вместе могут получить аудиопоследовательности и сравнить их с сохраненными последовательностями активации, используя небольшое количество энергии, например 0,5 ватта. Таким образом, настоящая система может использоваться для активации электрического устройства, когда электрическое устройство находится в режиме ожидания, то есть является неактивным или выключенным. В режиме ожидания электрическое устройство, описанное ниже, получает питание в режиме ожидания, которое в примерах может составлять 0,5 ватта. Подразумевается, что питание в режиме ожидания может быть выше или ниже, чем в дополнительных вариантах выполнения, и что настоящая система будет работать при таких более высоких или низких настройках питания в режиме ожидания.
Обращаясь сначала к фиг. 1A-2, аппаратные средства для реализации одного примера настоящей технологии включают в себя систему 10 распознавания, анализа и слежения за целью, которая может использоваться для распознавания, анализа и/или слежения за человеком как целью, например за пользователем 18. Варианты выполнения системы 10 распознавания, анализа и слежения за целью включают в себя вычислительное устройство 12 для выполнения игры или другого приложения. Вычислительное устройство 12 может включать в себя аппаратные компоненты и/или программные компоненты, в результате чего вычислительное устройство 12 может использоваться для выполнения приложений, таких как игровые и неигровые приложения. В одном варианте выполнения вычислительное устройство 12 может включать в себя процессор, такой как стандартизированный процессор, специализированный процессор, микропроцессор и т.п., который может исполнять инструкции, сохраненные на читаемом процессором устройстве хранения, для выполнения процессов устройства 10, когда устройство активно и работает на полной мощности.
Как описывается далее, вычислительное устройство 12 может дополнительно включать в себя второй процессор или микропроцессор с низким энергопотреблением, который может исполнять инструкции, сохраненные в энергонезависимой памяти для выполнения процесса активации устройства 10 при работе в режиме ожидания.
Система 10 дополнительно включает в себя устройство 20 захвата для захвата видео- и аудиоданных, относящихся к одному или более нескольким пользователям и/или объектам, считываемых устройством захвата. В вариантах выполнения устройство 20 захвата может использоваться для захвата информации, относящейся к движениям тела и рук и/или жестов и речи одного или более пользователей, эта информация принимается вычислительной средой и используется для отображения, взаимодействия и/или управления аспектами игрового или другого приложения. Примеры вычислительного устройства 12 и устройства 20 захвата объясняются более подробно ниже.
Варианты выполнения системы 10 распознавания, анализа и слежения за целью могут быть соединены с аудио/видео (A/V) устройством 16, имеющим дисплей 14. Устройство 16 может, например, быть телевизором, монитором, телевизором высокой четкости (HDTV) и т.п., которое может обеспечить видеоизображение и/или звук игры, или приложения для пользователя. Например, вычислительное устройство 12 может включать в себя видеоадаптер, такой как видеокарта, и/или аудиоадаптер, такой как звуковая карта, который может обеспечивать аудио/видео сигналы, связанные с игрой или другим приложением. A/V устройство 16 может принять аудио/видео сигналы от вычислительного устройства 12 и может затем вывести видеоизображение и/или звук игры или приложения, связанные с аудио/видео сигналами, пользователю 18. В соответствии с одним вариантом выполнения аудио/видео устройство 16 может быть соединено с вычислительным устройством 12 с помощью, например, кабеля S-Video, коаксиального кабеля, кабеля HDMI, кабеля DVI, кабеля VGA, кабеля компонентного видео и т.п.
В вариантах выполнения вычислительное устройство 12, A/V устройство 16 и устройство 20 захвата могут сотрудничать для воспроизведения аватара или персонажа 19 на дисплее 14. Например, фиг. 1A показывает пользователя 18, играющего в футбольное игровое приложение. Движения пользователя отслеживаются и используются для анимации движений аватара 19. В вариантах выполнения аватар 19 имитирует движения пользователя 18 в пространстве реального окружения, в результате чего пользователь 18 может выполнять движения и жесты, которые управляют движениями и действиями аватара 19 на дисплее 14. На фиг. 1B устройство 20 захвата используется в системе NUI, где, например, пользователь 18 просматривает путем прокрутки и управляет пользовательским интерфейсом 21 с множеством пунктов меню, представленных на дисплее 14. На фиг. 1B вычислительное устройство 12 и устройство 20 захвата могут использоваться для распознавания и анализа движений и жестов тела пользователя, и такие движения и жесты могут интерпретироваться как элементы управления для пользовательского интерфейса.
Подходящие примеры системы 10 и ее компонентов могут быть найдены в следующих находящихся одновременно на рассмотрении заявках на патент, которые включены в настоящее описание посредством ссылки: заявка на патент США № 12/475,094, озаглавленная "Environment and/or Target Segmentation", поданная 29 мая 2009 г.; заявка на патент США № 12/511,850, озаглавленная "Auto Generating a Visual Representation", поданная 29 июля 2009 г.; заявка на патент США № 12/474,655, озаглавленная "Gesture Tool", поданная 29 мая 2009 г.; заявка на патент США № 12/603,437, озаглавленная "Pose Tracking Pipeline", поданная 21 октября 2009 г.; заявка на патент США № 12/475,308, озаглавленная "Device for Identifying and Tracking Multiple Humans Over Time", поданная 29 мая 2009 г.; заявка на патент США № 12/575,388, озаглавленная "Human Tracking System", поданная 7 октября 2009 г.; заявка на патент США № 12/422,661, озаглавленная "Gesture Recognizer System Architecture", поданная 13 апреля 2009 г.; и заявка на патент США № 12/391, 150, озаглавленная "Standard Gestures", поданная 23 февраля 2009 г.
Фиг. 2 изображает иллюстративный вариант выполнения устройства 20 захвата, который может использоваться в системе 10 распознавания, анализа и слежения за целью. В иллюстративном варианте выполнения устройство 20 захвата может быть сконфигурировано захватывать видео, имеющее изображение глубины, которое может включать в себя значения глубины с помощью любого подходящего технического приема, в том числе, например, времени пролета, структурированного света, стереоизображения и т.п. В соответствии с одним вариантом выполнения устройство 20 захвата может организовать вычисленную информацию о глубине в "Z слои" или слои, которые могут быть перпендикулярными оси Z, простирающейся от камеры глубины вдоль линии ее прямой видимости. Оси X и Y могут быть определены как оси, перпендикулярные оси Z. Ось Y может быть вертикальной, а ось X может быть горизонтальной. Вместе оси X, Y и Z определяют 3-D пространство реального окружения, захваченного устройством 20 захвата.
Как показано на фиг. 2, устройство 20 захвата может включать в себя элемент 22 камеры формирования изображения. В соответствии с иллюстративным вариантом выполнения элемент 22 камеры формирования изображения может быть камерой глубины, которая может захватывать изображение глубины сцены. Изображение глубины может включать в себя двумерную (2-D) область пикселей захваченного объекта съемки, где каждый пиксель в 2-D области пикселей может представлять значение глубины, такое как длина или расстояние, например, в сантиметрах, миллиметрах и т.п., объекта в захваченной сцене от камеры.
Как показано на фиг. 2, в соответствии с иллюстративным вариантом выполнения элемент 22 камеры формирования изображения может включать в себя элемент 24 инфракрасного (IR) света, трехмерную (3-D) камеру 26 и RGB камеру 28, которые могут использоваться для захвата изображения глубины сцены. Например, во времяпролетном анализе элемент 24 IR света устройства 20 захвата может испускать инфракрасное излучение на сцену и может затем использовать датчики (не показаны) для детектирования света, рассеянного обратно от поверхности одной или более целей и объектов в сцене, используя, например, 3-D камеру 26 и/или RGB камеру 28.
В некоторых вариантах выполнения может использоваться пульсирующее инфракрасное излучение, в результате чего может быть измерено время между исходящим световым импульсом и соответствующим входящим световым импульсом, и оно может использоваться для определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах в сцене. Кроме того, в других иллюстративных вариантах выполнения может сравниваться фаза исходящей световой волны с фазой входящей световой волны для определения фазового сдвига. Фазовый сдвиг может затем использоваться для определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах.
В соответствии с другим иллюстративным вариантом выполнения анализ времени пролета может использоваться для косвенного определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах путем анализа интенсивности отраженного луча света с течением времени с помощью различных технических приемов, в том числе, например, визуализации с помощью прерывистого светового импульса.
В другом иллюстративном варианте выполнения устройство 20 захвата может использовать структурированный свет для захвата информации о глубине. В таком анализе свет с упорядоченной структурой (то есть свет, отображаемый как известная структура, такая как структура в виде сетки или структура в виде полос) может проецироваться на сцену с помощью, например, элемента 24 IR света. При попадании на поверхность одной или более целей или объектов в сцене структура может в ответ деформироваться. Такая деформация структуры может захватываться, например, 3-D камерой 26 и/или RGB камерой 28 и может затем анализироваться для определения физического расстояния от устройства 20 захвата до конкретного местоположения на целях или объектах.
В соответствии с другим вариантом выполнения устройство 20 захвата может включать в себя две или более физически разделенные камеры, которые могут видеть сцену с различных углов для получения визуальных стереоданных, которые могут быть разрешены для генерации информации о глубине. В другом иллюстративном варианте выполнения устройство 20 захвата может использовать данные облака точек и технические приемы оцифровки цели для обнаружения характеристик пользователя.
Устройство 20 захвата может дополнительно включать в себя микрофон 30. Микрофон 30 может включать в себя преобразователь или датчик, который может принимать и преобразовывать звук в электрический сигнал. В соответствии с одним вариантом выполнения микрофон 30 может использоваться для уменьшения обратной связи между устройством 20 захвата и вычислительным устройством 12 в системе 10 распознавания, анализа и слежения за целью. Кроме того, микрофон 30 может использоваться для приема аудиосигналов, которые также могут быть обеспечены пользователем для управления приложениями, такими как игровые приложения, неигровые приложения и т.п., которые могут выполняться вычислительным устройством 12. Вместо одного микрофона 30 настоящая система может использовать два или более микрофона. Множество микрофонов позволяют определить местоположение акустического источника для идентификации источника звука.
В иллюстративном варианте выполнения устройство 20 захвата может дополнительно включать в себя процессор 32, который может находиться в оперативной связи с элементом 22 камеры формирования изображения. Процессор 32 может включать в себя стандартизированный процессор, специализированный процессор, микропроцессор и т.п., который может исполнять инструкции, которые могут включать в себя инструкции для приема изображения глубины, определения, включена ли подходящая цель в изображение глубины, преобразования подходящей цели в скелетное представление или модель цели или любую другую подходящую инструкцию.
Устройство 20 захвата может дополнительно включать в себя элемент 34 памяти, который может хранить инструкции, которые могут исполняться процессором 32, изображения или кадры изображений, захваченные 3-D камерой или RGB камерой, или любую другую подходящую информацию, изображения и т.п. В соответствии с иллюстративным вариантом выполнения элемент 34 памяти может включать в себя память с произвольным доступом (RAM), постоянную память (ROM), кэш, флэш-память, жесткий диск или любой другой подходящий элемент хранения. Как показано на фиг. 2, в одном варианте выполнения элемент 34 памяти может быть отдельным компонентом, осуществляющим связь с элементом 22 камеры формирования изображения и процессором 32. В соответствии с другим вариантом выполнения элемент 34 памяти может быть интегрирован в процессор 32 и/или компонент 22 камеры изображения.
Как показано на фиг. 2, устройство 20 захвата может осуществлять связь с вычислительным устройством 12 через линию 36 связи. Линия 36 связи может быть проводным соединением, в том числе, например, соединением USB, соединением Firewire, кабельным соединением Ethernet и т.п. и/или беспроводным соединением, таким как беспроводное соединение 802.11b, g, a или n. В соответствии с одним вариантом выполнения вычислительное устройство 12 может обеспечивать часы для устройства 20 захвата, которые могут использоваться для определения, когда захватывать, например, сцену с помощью линии 36 связи.
Кроме того, устройство 20 захвата может предоставить информацию глубины и изображения, захваченные, например, 3-D камерой 26 и/или RGB камерой 28. С помощью этих устройств может быть разработана частичная скелетная модель в соответствии с настоящей технологией, с предоставлением результирующих данных вычислительному устройству 12 через линию 36 связи.
Вычислительное устройство 12 может дополнительно включать в себя механизм 190 распознавания жестов для распознавания жестов. В соответствии с настоящей системой вычислительное устройство 12 может дополнительно включать в себя механизм 192 распознавания последовательностей и, в вариантах выполнения, механизм 194 распознавания голоса, оба из которых объясняются ниже.
Фиг. 3A изображает иллюстративный вариант выполнения вычислительной среды, которая может использоваться для интерпретации одного или более нескольких жестов в системе распознавания, анализа и слежения за целью. Вычислительная среда, такая как вычислительное устройство 12, описанное выше относительно фиг. 1A-2, может быть мультимедийной консолью 100, такой как игровая консоль. Как показано на фиг. 3A, мультимедийная консоль 100 имеет центральный процессор (CPU) 101, имеющий кэш 102 1-го уровня, кэш 104 2-го уровня и флэш-ROM 106. Кэш 102 1-го уровня и кэш 104 2-го уровня временно хранят данные и, следовательно, сокращают количество циклов доступа к памяти, тем самым улучшая скорость обработки и пропускную способность. CPU 101 может иметь более одного ядра и, таким образом, дополнительные кэши 102 и 104 1-го уровня и 2-го уровня. Флэш-ROM 106 может хранить исполняемый код, который загружается во время начальной фазы процесса начальной загрузки, когда мультимедийная консоль 100 включается.
Хотя это не показано на фиг. 3A, мультимедийная консоль 100 может дополнительно включать в себя процессор, такой как микропроцессор, и энергонезависимую память для активации системы из режима ожидания. В дополнительных вариантах выполнения процессор и память для активации системы из режима ожидания могут быть блоком 101 обработки и ROM 106 соответственно.
Графический процессор (GPU) 108 и видеокодер/видеокодек (кодер/декодер) 114 формирует конвейер обработки видеоданных для обработки графики с высокой скоростью и высоким разрешением. Данные передаются от GPU 108 к видеокодеру/видеокодеку 114 через шину. Конвейер обработки видеоданных выводит данные на A/V (аудио/видео) порт 140 для передачи на телевизор или другой дисплей. Контроллер памяти 110 соединен с GPU 108 для облегчения доступа процессора к различным типам памяти 112, такой как, но не ограничиваясь только этим, RAM.
Мультимедийная консоль 100 включает в себя контроллер 120 ввода-вывода (I/O), контроллер 122 управления системой, блок 123 обработки звука, контроллер 124 сетевого интерфейса, первый хост-контроллер 126 USB, второй хост-контроллер 128 USB и подсистему 130 ввода-вывода (I/O) передней панели, которые предпочтительно реализованы на модуле 118. Контроллеры 126 и 128 USB служат хост-узлами для контроллеров 142(1)-142(2) периферийного оборудования, беспроводного адаптера 148 и устройства 146 внешней памяти (например, флэш-памяти, внешнего привода CD/DVD ROM, съемных носителей и т.д.). Сетевой интерфейс 124 и/или беспроводной адаптер 148 обеспечивает доступ к сети (например, Интернет, домашней сети и т.д.) и может быть любым из широкого круга различных компонентов проводных или беспроводных адаптеров, в том числе картой Ethernet, модемом, модулем Bluetooth, кабельным модемом и т.п.
Системная память 143 обеспечена для хранения данных приложений, которые загружаются во время процесса начальной загрузки. Медианакопитель 144 обеспечен и может содержать привод DVD/CD, накопитель на жестких дисках или другой накопитель на съемных носителях и т.д. Медианакопитель 144 может быть внутренним или внешним по отношению к мультимедийной консоли 100. К данным приложения можно получить доступ через медианакопитель 144 для выполнения, воспроизведения и т.д. мультимедийной консолью 100. Медианакопитель 144 соединен с контроллером ввода-вывода (I/O) 120 через шину, такую как шина Serial ATA или другое высокоскоростное соединение (например, IEEE 1394).
Контроллер 122 управления системой обеспечивает множество служебных функций, связанных с обеспечением доступности мультимедийной консоли 100. Блок 123 обработки звука и аудиокодек 132 формируют соответствующий конвейер обработки аудиоданных с высоким качеством обработки и стереообработкой. Аудиоданные передаются между блоком 123 обработки звука и аудиокодеком 132 через линию связи. Конвейер обработки аудиоданных выводит данные на порт 140 A/V для воспроизведения внешним аудиоплеером или устройством, имеющим аудиовозможности.
Подсистема 130 ввода-вывода (I/O) передней панели поддерживает функциональность кнопки 150 "питание" и кнопки 152 извлечения, а также любые светодиоды (LED) или другие индикаторы, имеющиеся на наружной поверхности мультимедийной консоли 100. Модуль 136 системного источника питания обеспечивает питание для компонентов мультимедийной консоли 100. Вентилятор 138 охлаждает электросхему в мультимедийной консоли 100.
CPU 101, GPU 108, контроллер 110 памяти и различные другие компоненты в мультимедийной консоли 100 соединены через один или более шин, в том числе последовательные и параллельные шины, шину памяти, периферийную шину и процессорную или локальную шину с использованием любой из множества шинных архитектур. В качестве примера такие архитектуры могут включать в себя шину Взаимодействия периферийных компонентов (PCI), шину PCI-Express и т.д.
Когда мультимедийная консоль 100 включается, данные приложения могут быть загружены из системной памяти 143 в память 112 и/или кэши 102, 104 и выполнены на CPU 101. Приложение может представить графический пользовательский интерфейс, который обеспечивает единообразный пользовательский интерфейс при переходе к различным типам мультимедиа, доступным на мультимедийной консоли 100. В процессе работы приложения и/или другие медиаданные, содержащиеся на медианакопителе 144, могут быть запущены или воспроизведены в медианакопителе 144 для обеспечения дополнительной функциональности для мультимедийной консоли 100.
Мультимедийная консоль 100 может использоваться как автономная система, просто подключив систему к телевизору или другому дисплею. В этом автономном режиме мультимедийная консоль 100 позволяет одному или более пользователям взаимодействовать с системой, смотреть фильмы или слушать музыку. Однако при интеграции широкополосной связи, доступной через сетевой интерфейс 124 или беспроводной адаптер 148, мультимедийная консоль 100 может дополнительно использоваться как участник более многочисленного сетевого сообщества.
Когда мультимедийная консоль 100 включается, заданная величина аппаратных ресурсов резервируется для системного использования операционной системой мультимедийной консоли. Эти ресурсы могут включать в себя резервирование памяти (например, 16 МБ), циклов CPU и GPU (например, 5%), пропускной способности сети (например, 8 кбит/с) и т.д. Поскольку эти ресурсы зарезервированы во время начальной загрузки системы, зарезервированные ресурсы не существуют с точки зрения приложения.
В частности, резервирование памяти предпочтительно является достаточно большим, чтобы содержать ядро запуска, параллельные системные приложения и драйверы. Резервирование CPU предпочтительно является постоянным, в результате чего если зарезервированное использование CPU не будет использоваться системными приложениями, то пустой поток использует все неиспользованные циклы.
Что касается резервирования GPU, легковесные сообщения, генерируемые системными приложениями (например, всплывающие сообщения), отображаются с использованием прерывания GPU, чтобы запланировать код для отображения всплывающего сообщения в графическую накладку. Объем памяти, требуемый для графической накладки, зависит от размера области графической накладки, и графическая накладка предпочтительно масштабируется с разрешением экрана. Когда полный пользовательский интерфейс используется параллельным системным приложением, предпочтительно использовать разрешение, не зависящее от разрешения приложения. Может использоваться преобразователь масштаба для задания этого разрешения так, что устраняется необходимость изменять частоту и проводить ресинхронизацию TV.
После начальной загрузки мультимедийной консоли 100 и резервирования системных ресурсов выполняются параллельные системные приложения для обеспечения системной функциональности. Системная функциональность заключена в ряд системных приложений, которые выполняются в пределах зарезервированных системных ресурсов, описанных выше. Ядро операционной системы идентифицирует потоки, которые являются потоками системных приложений, в противовес потокам игровых приложений. Системные приложения предпочтительно планируются для запуска на CPU 101 в заданные моменты времени и интервалы для обеспечения единообразного представления системного ресурса для приложения. Планирование должно минимизировать нарушение кэша для игрового приложения, исполняющегося на консоли.
Когда параллельное системное приложение требует аудио, обработка аудиоданных планируется асинхронно к игровому приложению вследствие зависимости от фактора времени. Менеджер приложений мультимедийной консоли (описанный ниже) управляет уровнем громкости (например, отключение звука, ослабление) игрового приложения, когда системные приложения активны.
Устройства ввода данных (например, контроллеры 142(1) и 142(2)) используются совместно игровыми приложениями и системными приложениями. Устройства ввода данных не являются зарезервированными ресурсами, а должны переключаться между системными приложениями и игровым приложением так, что каждое будет иметь фокус устройства. Менеджер приложений предпочтительно управляет переключением входного потока, не зная осведомленности игрового приложения и информации о состоянии драйвера при правильном использовании относительно переключателей фокуса. Камеры 26, 28 и устройство 20 захвата могут определять дополнительные устройства ввода данных для консоли 100.
Фиг. 3B изображает другой иллюстративный вариант выполнения вычислительной среды 220, который может быть вычислительным устройством 12, показанным на фиг. 1A-2, используемым для интерпретации одного или более жестов в системе распознавания, анализа и слежения за целью. Среда 220 вычислительной системы является только одним примером подходящей вычислительной среды и не предназначена для предложения каких-либо ограничений относительно объема использования или функциональности раскрытого здесь объекта изобретения. Не следует также интерпретировать вычислительную среду 220 как имеющую какую-либо зависимость или требование, касающееся какого-либо одного компонента или комбинации компонентов, изображенных в иллюстративной операционной среде 220. В некоторых вариантах выполнения различные изображенные вычислительные элементы могут включать в себя электросхему, сконфигурированную реализовывать конкретные аспекты настоящего раскрытия. Например, термин электросхема, используемая в раскрытии, может включать в себя специализированные аппаратные компоненты, сконфигурированные выполнять функцию(и) с помощью встроенного микропрограммного обеспечения или переключателей. В других иллюстративных вариантах выполнения термин электросхема может включать в себя универсальный блок обработки, память и т.д., сконфигурированный с помощью программных инструкций, которые реализуют логику, выполненную с возможностью выполнять функцию(и). В иллюстративных вариантах выполнения, где электросхема включает в себя комбинацию аппаратного и программного обеспечения, разработчик может написать исходный код, реализующий логику, и исходный код может быть скомпилирован в машиночитаемый код, который может исполняться универсальным блоком обработки. Так как специалисту в области техники понятно, что существующий уровень техники достиг точки, когда нет большой разницы между аппаратными средствами, программным обеспечением или комбинацией аппаратных средств/программного обеспечения, выбор аппаратных средств в противоположность программному обеспечению для осуществления конкретных функций является проектным решением, оставленным на усмотрение разработчика. Более конкретно специалисту в области техники понятно, что программный процесс может быть преобразован в эквивалентную аппаратную структуру, а аппаратная структура может сама быть преобразована в эквивалентный программный процесс. Таким образом, выбор аппаратной реализации в противовес программной реализации является проектным решением и оно оставлено на усмотрение разработчика.
На фиг. 3B вычислительная среда 220 содержит компьютер 241, который, как правило, включает в себя разнообразные машиночитаемые носители. Машиночитаемые носители могут быть любыми доступными носителями, к которым может получить доступ компьютер 241, и включают в себя и энергозависимые и энергонезависимые носители, съемные и несъемные носители. Системная память 222 включает в себя компьютерные носители информации в форме энергозависимой и/или энергонезависимой памяти, такой как ROM 223 и RAM 260. Базовая система ввода-вывода 224 (BIOS), содержащая базовые процедуры, которые помогают передать информацию между элементами в компьютере 241, например во время запуска, обычно хранятся в ROM 223. RAM 260, как правило, содержит данные и/или программные модули, которые непосредственно доступны и/или обрабатываются в настоящее время центральным процессором 259. В качестве примера и не ограничиваясь только этим, фиг. 3B изображает операционную систему 225, прикладные программы 226, другие программные модули 227 и данные 228 программ.
Вычислительная среда может дополнительно включать в себя процессор 468, который в вариантах выполнения может быть микропроцессором, и энергонезависимую память 470 для активации системы из режима ожидания. Память 470 может быть любой из различных видов энергонезависимой памяти, в том числе, например, ROM, PROM, EPROM, EEPROМ и флэш-памятью. В вариантах выполнения процессор 468 и память 470 для активации системы из режима ожидания могут быть интегрированы как часть центрального процессора(ов) 259 и ROM 223 соответственно. В дополнительных вариантах выполнения процессор 468 и память 470 могут быть интегрированы вместе в так называемой системе на кристалле.
Компьютер 241 может также включать в себя другие съемные/несъемные, энергозависимые/энергонезависимые компьютерные носители информации. Только в качестве примера фиг. 3B изображает накопитель 238 на жестких магнитных дисках, который считывает или записывает на несъемный, энергонезависимый магнитный носитель, накопитель 239 на магнитных дисках, который считывает или записывает на съемный, энергонезависимый магнитный диск 254, и оптический дисковод 240, который считывает или записывает на съемный, энергонезависимый оптический диск 253, такой как CD-ROM или другой оптический носитель. Другие съемные/несъемные, энергозависимые/энергонезависимые компьютерные носители информации, которые могут использоваться в иллюстративной среде, включают в себя, но не ограничиваются только этим, кассеты с магнитной лентой, карты флэш-памяти, цифровые универсальные диски, цифровую видеопленку, твердотельную RAM, твердотельную ROM и т.п. Накопитель 238 на жестких магнитных дисках обычно соединен с системной шиной 221 через интерфейс несъемной памяти, такой как интерфейс 234, а накопитель 239 на магнитных дисках и оптический дисковод 240 обычно соединены с системной шиной 221 с помощью интерфейса съемной памяти, такого как интерфейс 235.
Накопители и их соответствующие компьютерные носители информации, обсуждаемые выше и изображенные на фиг. 3B, обеспечивают хранение машиночитаемых инструкций, структур данных, программных модулей и других данных для компьютера 241. На фиг. 3B, например, изображенные накопитель 238 на жестких магнитных дисках хранит операционную систему 258, прикладные программы 257, другие программные модули 256 и данные 255 программ. Следует отметить, что эти компоненты могут быть такими же или отличающимися от операционной системы 225, прикладных программ 226, других программных модулей 227 и данных 228 программ. Операционной системе 258, прикладным программам 257, другим программным модулям 256 и данным 255 программ здесь присвоены другие числа для иллюстрации, что как минимум они являются другими копиями. Пользователь может вводить команды и информацию в компьютер 241 через устройства ввода данных, такие как клавиатура 251 и указательное устройство 252, как правило, называемое мышью, шаровым манипулятором или сенсорной панелью. Другие устройства ввода данных (не показаны) могут включать в себя микрофон, джойстик, игровой планшет, спутниковую антенну, сканер и т.п. Эти и другие устройства ввода данных часто соединены с центральным процессором 259 и микропроцессор 468 через пользовательский входной интерфейс 236, который соединен с системной шиной, но может быть соединен с помощью другого интерфейса и структур шины, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB). Камеры 26, 28 и устройство 20 захвата могут определять дополнительные устройства ввода данных для консоли 100. Монитор 242 или другой тип устройства отображения также соединен с системной шиной 221 через интерфейс, такой как видеоинтерфейс 232. В дополнение к монитору компьютеры могут также включать в себя другие периферийные устройства вывода, такие как громкоговорители 244 и принтер 243, который может быть соединен через периферийный интерфейс 233 вывода.
Компьютер 241 может работать в сетевом окружении, используя логические соединения с одним или более удаленными компьютерами, такими как удаленный компьютер 246. Удаленный компьютер 246 может быть персональным компьютером, сервером, маршрутизатором, сетевым PC, устройством или другим обычным узлом сети и обычно включает в себя многие или все элементы, описанные выше касательно компьютера 241, хотя на фиг. 3B было изображено только запоминающее устройство 247. Логические соединения, изображенные на фиг. 3B, включают в себя локальную сеть (LAN) 245 и глобальную сеть (WAN) 249, но могут также включать в себя другие сети. Такие сетевые среды являются обычными в офисах, корпоративных компьютерных сетях, интранете и Интернете.
При использовании в сетевой среде LAN компьютер 241 соединен с LAN 245 через сетевой интерфейс или адаптер 237. При использовании в сетевой среде WAN компьютер 241 обычно включает в себя модем 250 или другое средство для установления связи через WAN 249, такую как Интернет. Модем 250, который может быть внутренним или внешним, может быть соединен с системной шиной 221 через пользовательский входной интерфейс 236 или другой соответствующий механизм. В сетевом окружении программные модули, изображенные касательно компьютера 241, или их части могут храниться на удаленном запоминающем устройстве. В качестве примера, но не ограничения, фиг. 3B изображает удаленные прикладные программы 248 как находящиеся на запоминающем устройстве 247. Следует иметь в виду, что показанные сетевые соединения являются иллюстративными, и может использоваться другое средство установления коммуникационного канала между компьютерами.
Вычислительное устройство 12 совместно с устройством 20 захвата может генерировать каждый кадр компьютерной модели положения тела пользователя. Один пример такого конвейера, который генерирует скелетную модель одного или более пользователей в поле обзора устройства 20 захвата, раскрыт, например, в заявке на патент США № 12/876,418, озаглавленной "Система для быстрого, вероятностного скелетного отслеживания", поданной 7 сентября 2010, эта заявка включена в настоящий документ в полном объеме.
Скелетная модель может затем быть обеспечена для вычислительного устройства 12, в результате чего вычислительная среда может отслеживать скелетную модель и отображать аватар, связанный со скелетной моделью. Вычислительная среда может далее определить, какие элементы управления выполнять в приложении, выполняющемся в компьютерной среде, на основании, например, жестов пользователя, которые были распознаны из скелетной модели. Например, как показано на фиг. 2, вычислительное устройство 12 может включать в себя механизм 190 распознавания жестов. Механизм 190 распознавания жестов может, в общем случае, включать в себя набор фильтров жестов, каждый из которых содержит информацию, касающуюся жеста, который может быть выполнен скелетной моделью (по мере того как пользователь движется).
Данные, захваченные камерами 26, 28 и устройством 20 в форме скелетной модели и движений, связанных с ней, могут сравниваться с фильтром жестов в механизме 190 распознавания жестов для идентификации, когда пользователь (как представлено скелетной моделью) выполнил один или более жестов. Эти жесты могут быть связаны с различными элементами управления приложения. Таким образом, вычислительное устройство 12 может использовать механизм 190 распознавания жестов для интерпретации движений скелетной модели и управления приложением на основании движений.
Чтобы сохранить энергию и добиться эффективного использования питания, система 10 может выключаться в режим ожидания, если она не используется в течение заданного промежутка времени. В качестве альтернативы пользователь может вручную выключить систему 10, когда он закончил ей пользоваться. В выключенном состоянии система также работает в режиме ожидания. В режиме ожидания источник 474 питания (фиг. 6) подает питание в режиме ожидания вычислительному устройству 12. В вариантах выполнения это питание в режиме ожидания может составлять, например, от 0,3 ватта до 5,0 ватт, а в дополнительном примере может составлять 0,5 ватта. Подразумевается, что питание, поданное системе 10 в режиме ожидания, может быть выше или ниже, чем этот диапазон, в дополнительных вариантах выполнения.
В соответствии с настоящей системой пользователь может активировать вычислительное устройство 12 системы 10 с помощью звуковой фразы активации. После распознавания фразы активации вычислительное устройство 12 может переключиться из режима ожидания в режим работы на полную мощность, когда доступны все системные ресурсы. Ниже описана активация вычислительного устройства 12 с использованием блока 464 активации в режиме ожидания. Что касается устройства 16 A/V и устройства 20 захвата, эти устройства могут также быть в режиме ожидания, они могут активироваться во время активации вычислительного устройства 12. Устройство 16 A/V и/или устройство 20 захвата может активироваться путем приема сигнала "пробуждения" от вычислительного устройства 12. В качестве альтернативы устройство 16 A/V и/или устройство 20 захвата могут также включать в себя блок 464 активации в режиме ожидания, который активирует их таким же образом, как и описанное ниже вычислительное устройство 12.
Особенностью настоящей системы является то, что она способна распознавать фразу активации с помощью компонентов, которые функционируют только от питания в режиме ожидания, подаваемого в течение режима ожидания. Эти особенности объясняются ниже, но в целом, используя только питание в режиме ожидания, процессор 468 и память 470 (фиг. 3B и 6) могут принять оцифрованную аудиопоследовательность и выполнить ограниченное сопоставление с последовательностями для структур активации, сохраненных в памяти 470, для определения, была ли сказана фраза активации.
Фраза активации может быть простой фразой из двух слов, например "активировать систему". Когда система 10 является, например, игровой приставкой Xbox от корпорации Майкрософт, фразой активации может быть, например, "включить Xbox". Эти фразы приведены в качестве примера, и фраза активации может быть любой заданной фразой, сохраненной в памяти 470. В дополнительных вариантах выполнения фраза активации может быть короче двух слов или длиннее двух слов. Более короткие фразы могут привести к ложным положительным соответствиям чаще, чем более длинные фразы, но более длинные фразы могут требовать больше энергии от питания в режиме ожидания для процессора 468 для выполнения операции сопоставления. В вариантах выполнения длина фразы активации может быть установлена равной оптимизированной длине для доступного питания в режиме ожидания. То есть фраза активации может быть достаточно длинной для минимизации ложных положительных соответствий, но в достаточной мере короткой, чтобы процессор 468 и память 470 могли определить, когда фраза активации принята, используя доступное питание в режиме ожидания.
В вариантах выполнения фраза активации может произноситься пользователем системы 10 для активации системы 10 из режима ожидания. Однако следует понимать, что фраза активации может быть любой отличительной аудиопоследовательностью, которая произносится или генерируется другим способом, отличающимся от речи. Кроме того, при произношении фраза активации не обязательно должна быть словами в известном словаре. Фраза активации может быть аудиопоследовательностью, состоящей из любых отличительных последовательностей звуков. Когда фраза активации содержит один или более слов, таких как «активировать систему» или «включить Xbox», фраза активации может храниться на одном языке или на нескольких языках.
В вариантах выполнения фразы активации могут быть предварительно запрограммированы в памяти 470 системой 10 поставщика, то есть перед начальным использованием системы 10 конечным пользователем. В качестве альтернативы фраза активации может определяться пользователем. Фиг. 4 является блок-схемой последовательности операций, показывающей последовательность этапов, когда каждый из одного или более пользователей могут генерировать и сохранить фразу активации. На этапе 400, пока система 10 активна, пользователь может выполнить жест управления или произвести выбор для входа в режим обучения фразе активации. В режиме обучения пользователь может произносить требуемую фразу активации на этапе 406. Пользователь может произносить требуемую фразу активации один раз, или система может попросить пользователя произнести фразу несколько раз на этапе 410.
На этапе 414 фраза активации, обеспеченная пользователем, обрабатывается в цифровую последовательность активации. В частности, один или более принятых экземпляров фразы активации могут быть пропущены через А-Ц (аналого-цифровой) преобразователь, чтобы обеспечить цифровой поток фразы. Для случаев, когда фраза была предоставлена несколько раз, аномальные частоты и/или произношение могут быть отфильтрованы, в результате чего получается цифровая последовательность активации, лучше всего аппроксимирующая фразу активации, обеспеченную пользователем в нескольких попытках обучения. В качестве альтернативы каждое произнесение фразы активации нескольких попыток обучения может быть сохранено отдельно и позже использовано для сравнения, как это описывается ниже. После обработки принятой фразы активации в цифровую последовательность активации эта последовательность активации сохраняется в памяти 470 на этапе 418.
Схематическое представление сохраненной оцифрованной последовательности активации показано на фиг. 5. Схематическое представление, показанное на фиг. 5, является оцифрованным представлением аналогового аудиопотока, который может быть представлен как график смещения (D) диафрагмы микрофона при изменениях давления воздуха, вызванных звуковыми волнами во времени (t). Цифровая последовательность активации, показанная на фиг. 5, представлена только в качестве примера, и структура будет меняться в зависимости от фразы активации, которая произносится и обрабатывается, как описано выше, касательно блок-схемы последовательности операций на фиг. 4.
Одна фраза активации может быть сгенерирована и сохранена с помощью этапов на фиг. 4. В качестве альтернативы может генерироваться и сохраняться несколько фраз активации. Как уже отмечалось, отдельный пользователь может генерировать несколько оцифрованных фраз активации, получающихся в результате нескольких произнесений одной и той же фразы. В качестве альтернативы различные пользователи могут генерировать различные фразы активации. Например, когда каждый из членов семьи или группы использует систему 10, каждый пользователь может генерировать и сохранить его/ее собственную фразу(ы) активации. Фразы активации, сгенерированные и сохраненные каждым пользователем, могут быть одинаковыми или отличающимися друг от друга.
В таком варианте выполнения каждый пользователь может быть распознан на основании его конкретной фразы активации. Таким образом, когда система активируется, система 10 NUI может быть персонализирована для идентифицированного пользователя, например она может выдавать персонализированное приветствие. Кроме того, в таком варианте выполнения блок 464 активации в режиме ожидания может предпринимать различные действия на основании того, какой пользователь идентифицирован по принятой фразе активации. В качестве одного примера вычислительное устройство 12 может быть настроено игнорировать команду активации от ребенка в определенное время дня, когда родитель не хочет, чтобы вычислительное устройство 12 использовалось ребенком.
После того как фраза активации была предварительно запрограммирована или сохранена пользователем как цифровая последовательность активации, пользователь может использовать фразу активации для активации вычислительного устройства 12 из режима ожидания в активный режим. Фиг. 6 является блок-схемой последовательности операций, показывающей последовательность этапов для активации вычислительного устройства 12 с использованием фразы активации, а фиг. 7 является блок-схемой, показывающей компоненты для активации вычислительного устройства 12 с использованием фразы активации. Фиг. 7 показывает один или более микрофонов 462, соединенных с блоком 464 активации в режиме ожидания, включающим в себя микропроцессор 468 и энергонезависимую память 470. Микрофоны 462 могут быть обеспечены в вычислительном устройстве 12 или они могут быть одним или более микрофонами 30, описанными выше в отношении фиг. 2. Фиг. 7 дополнительно показывает источник 474 питания. Источник 474 питания подает питание на все компоненты вычислительного устройства 12, в том числе один или более микрофонов 462, блок 464 активации в режиме ожидания и CPU 101/259, когда вычислительное устройство 12 находится в активном режиме. Источник питания 474 подает питание на один или более микрофонов 462 и блок 464 активации в режиме ожидания, когда вычислительное устройство 12 находится в режиме ожидания.
Как отмечалось выше, блок 464 активации в режиме ожидания может быть реализован на автономной системе на кристалле. В качестве альтернативы микропроцессор 468 и память 470 могут быть отдельными компонентами, осуществляющими связь друг с другом. В дополнительных вариантах выполнения отдельный микропроцессор 468 может быть опущен и вместо этого процессы активации в режиме ожидания, описанные ниже, выполняются с помощью CPU системы 10 (CPU 101 мультимедийной консоли 100 на фиг. 3A или CPU 259 вычислительной среды 220 на фиг. 3B). В таких вариантах выполнения CPU 101/259 получает питание в режиме ожидания, например 0,5 ватта, когда вычислительное устройство 12 находится в режиме ожидания. В режиме ожидания CPU 101/259 будет иметь ограниченные возможности обработки. Затем, когда вычислительное устройство 12 активировано, CPU 101/259 будет работать на более высокой величине питания для обеспечения полной системной функциональности.
В дополнительных вариантах выполнения может быть опущена отдельная память 470, а вместо этого хранение фразы активации может быть сделано с помощью другой энергонезависимой памяти в вычислительном устройстве 12, такой как, например, ROM 106 мультимедийной консоли 100 или ROM 223 вычислительной среды 220. В таких вариантах выполнения ROM 106/223 может быть сегментирована так, что только небольшая часть энергонезависимой памяти доступна процессору при работе в режиме ожидания.
Обращаясь теперь к блок-схеме последовательности операций на фиг. 6, на этапе 420 один или более микрофонов 462 отслеживают окружающую среду для прослушивания аудиопотока. Если на этапе 424 обнаружен звук, аудио фильтруется на этапе 430. Например, могут использоваться технические приемы многоканального эхоподавления для фильтрации фонового шума из принятого аудиопотока. Могут использоваться другие технические приемы фильтрации помех для фильтрации принятого аудиопотока на этапе 430.
На этапе 432 принятый аудиопоток оцифровывается с помощью аналого-цифрового преобразователя в цифровую аудиопоследовательность. Эта последовательность затем сравнивается с последовательностью(ями) активации, сохраненной в памяти 470. Это сравнение выполняется с помощью механизма 192 распознавания последовательностей, выполняемого в процессоре 468. Если найдено соответствие последовательностей в пределах некоторого заданного допустимого отклонения между какой-либо частью потоковой оцифрованной аудиопоследовательности и сохраненной последовательностью активации на этапе 440, механизм 192 распознавания последовательностей отправляет сигнал в источник 474 питания для обеспечения полного питания для вычислительного устройства 12, чтобы активировать устройство.
С другой стороны, если не найдено никакого соответствия последовательностей на этапе 440, механизм 192 распознавания последовательностей может сделать попытку дополнительной обработки принятой оцифрованной аудиопоследовательности на этапе 444. Если не найдено никакого соответствия последовательностей (этап 440), и механизм 192 распознавания последовательностей не может дополнительно обработать аудиопоследовательность (этап 444), вычислительное устройство 12 остается в режиме ожидания, и последовательность операций возвращается к этапу 420 для прослушивания дальнейшего звука. Если механизм 192 распознавания последовательностей может дополнительно обработать принятую оцифрованную аудиопоследовательность на этапе 444, аудиопоследовательность обрабатывается на этапе 446, и снова сравнивается с сохраненной последовательностью(ями) активации на этапе 440.
В качестве одного примера обработки, которая может выполняться над принятой оцифрованной аудиопоследовательностью на этапе 446, механизм 192 распознавания последовательностей может растянуть и/или сжать во времени принятую аудиопоследовательность, чтобы увидеть, соответствует ли она тогда сохраненной последовательности(ям) активации. К аудиопоследовательности могут также применяться различные фильтры и технические приемы подавления шумов, чтобы увидеть, соответствует ли она тогда сохраненной последовательности(ям) активации. Предполагается также и другая обработка аудиопоследовательности.
Обработка аудиопоследовательности, как описано касательно этапа 446, может иметь место до сравнения на этапе 436 цифровой аудиопоследовательности с сохраненной цифровой последовательностью(ями) активации вместо или в дополнение к последовательности операций, описанной выше (где обработка на этапе 446 выполняется только после неудачного сравнения на этапе 440). Также предполагается, что этапы 444 и 446 могут быть пропущены. В этом варианте выполнения не выполняется никакая обработка аудиопоследовательности. Если не найдено никакого соответствия между принятой последовательностью цифрового аудио и сохраненной фразой(ами) активации на этапе 440, устройство 12 не активируется.
Если найдено соответствие последовательностей на этапе 440, вычислительное устройство 12 активируется на этапе 450. В этот момент блок 464 активации в режиме ожидания подает сигнал источнику питания для подачи полного питания вычислительному устройству 12, и тогда становятся доступны все ресурсы устройства.
Известны разнообразные системы распознавания голоса, которые способны распознавать речь, например фразу активации. Однако системы распознавания голоса требуют большой величины вычислительной мощности, чем доступно вычислительному устройству 12 в режиме ожидания. С другой стороны, ограниченное сравнение принятой оцифрованной аудиопоследовательности с одной или более сохраненными последовательностями активации блоком 464 активации в режиме ожидания требует относительно небольшой величины вычислительной мощности и может быть выполнено в режиме ожидания, когда доступно, например, 0,5 ватта питания.
Сравнение принятой аудиопоследовательности с несколькими сохраненными последовательностями активации на этапе 436 может потреблять большое количество питания процессором 468. Аналогично значительная обработка принятой аудиопоследовательности на этапе 446 может потреблять большое количество питания процессором 468. Когда конкретный вариант осуществления настоящей системы работает с низким уровнем питания в режиме ожидания, может не быть возможности иметь и несколько сохраненных последовательностей активации и значительную обработку принятой аудиопоследовательности. В этом случае различные варианты выполнения могут выделять ресурсы по-разному. Например, вариант выполнения может иметь множество сохраненных последовательностей активации и относительно небольшую обработку принятой цифровой аудиопоследовательности. И наоборот, другой вариант выполнения может иметь только один или относительно немного сохраненных последовательностей активации, но иметь более сильную обработку принятой оцифрованной аудиопоследовательности. Число и длина хранимых последовательностей активации и величина обработки, доступной для принятой аудиопоследовательности, могут быть заданы на основании величины питания, доступного для этих процессов, когда вычислительное устройство 12 находится в режиме ожидания.
Как отмечалось выше, принятая аудиопоследовательность может считаться соответствующей сохраненной фразе активации, когда две цифровые последовательности соответствуют друг другу в пределах некоторого допустимого отклонения. Допустимое отклонение здесь обозначает степень, с которой принятая оцифрованная аудиопоследовательность должна соответствовать сохраненной последовательности активации. Допустимое отклонение может измеряться несколькими различными путями в различных вариантах выполнения. Допустимое отклонение может быть измерено между каждой точкой данных в оцифрованной аудиопоследовательности и сохраненной последовательности активации, требуя, чтобы каждая точка или все точки, взятые вместе, имели не меньше, чем некоторую заданную разницу амплитуд. В качестве альтернативы сравнение может быть сделано между группами точек данных в оцифрованной аудиопоследовательности и сохраненной последовательности активации.
В одном примере предполагается, что соответствие между оцифрованной аудиопоследовательностью и сохраненной последовательностью активации должно быть абсолютным или почти абсолютным. Однако поскольку один и тот же человек может произносить одну и ту же фразу по-другому в разное время, требование абсолютного соответствия может привести к тому, что пользователь будет испытывать трудности с попытками активировать вычислительное устройство 12. Таким образом, в вариантах выполнения допустимое отклонение может быть относительно низким. Это может привести к ложным положительным активациям. То есть блок 464 активации в режиме ожидания активирует вычислительное устройство 12, когда не была обеспечена настоящая фраза активации. Это будет охватывать случаи, когда пользователь намеревался активировать вычислительное устройство 12, но может также активировать систему, когда пользователя нет, или пользователь не намеревался активировать вычислительное устройство 12.
Когда допустимое отклонение является низким, в результате чего происходят ложные положительные активации, варианты выполнения настоящей системы могут дополнительно включать в себя процесс подтверждения активации, один пример которого показан на этапах 454 и 456 на фиг. 6. Как отмечалось выше, разнообразные механизмы распознавания голоса не могут работать на скудном питании, доступном в режиме ожидания. Однако после активации вычислительной системы 12 блоком 464 активации в режиме ожидания, как описано выше, механизм 194 распознавания голоса (фиг. 2) может затем подтвердить на этапе 454, действительно ли пользователь сказал правильную фразу активации. Если это так, вычислительное устройство может остаться активированным. В противном случае сигнал может быть отправлен на источник 474 питания, чтобы вернуться назад в режим ожидания на этапе 456. Последовательность операций затем возвращается к этапу 420, чтобы снова слушать возможные фразы активации.
На этапе 454 механизм 194 распознавания голоса может обработать аналоговый аудиопоток, принятый на этапе 420, чтобы определить, была ли произнесена надлежащая фраза активации. В качестве альтернативы активированное вычислительное устройство 12 может запросить пользователя произнести дополнительные фразы для анализа механизмом 194 распознавания голоса. Механизм распознавания голоса может использовать более сложные алгоритмы, чем распознавание последовательностей, выполняемое блоком 464 активации в режиме ожидания, для подтверждения активации с намного более высокой степенью достоверности.
Подразумевается, что процесс подтверждения активации может использовать компоненты и/или программные механизмы вместо или в дополнение к механизму 194 распознавания голоса в дополнительных вариантах выполнения. Например, после активации пользователю может быть предложено выполнить заданный жест подтверждения активации, который распознается системой 10 NUI для подтверждения желания пользователя активировать вычислительную систему 12 и взаимодействовать с системой 10. Предполагаются и другие процессы подтверждения активации.
Кроме того, подразумевается, что весь процесс подтверждения этапов 454 и 456 может быть пропущен. Когда процесс подтверждения пропущен, вычислительное устройство 12 может активироваться после обнаружения того, что, как предполагается, является получением фразы активации. Затем, если в течение заданного промежутка времени не обнаружено никакого дополнительного взаимодействия с системой 10, вычислительное устройство 12 может снова войти в режим ожидания.
Типовые варианты выполнения, изложенные выше, описывают блок 464 активации в режиме ожидания, содержащийся в вычислительном устройстве 12 системы 10 NUI. Однако, как уже отмечалось, блок 464 активации в режиме ожидания может быть обеспечен как часть других электрических устройств, в том числе универсальной игровой консоли или вычислительной среды, как описано на фиг. 3A и 3B соответственно. Такие системы могут быть PC, портативными ЭВМ, смартфонами, контроллерами и/или другими портативными вычислительными устройствами. В дополнительных вариантах выполнения блок 464 активации в режиме ожидания может содержаться в электроприборах, таких как, но не ограничиваясь только этим, стиральные машины/сушилки, кофеварки, телевизоры, стереосистемы и электрические двери гаража. Электрические устройства, имеющие блок активации в режиме ожидания, могут дополнительно включать в себя, но не ограничиваясь только этим, автомобили, системы охранной сигнализации и системы освещения. Подразумевается, что блок 464 активации в режиме ожидания с использованием распознавания последовательностей может использоваться в широком разнообразии других электрических устройств в дополнительных вариантах выполнения.
Варианты выполнения, описанные выше, раскрывают один или более микрофонов, детектирующих звук поблизости от вычислительного устройства 12. Однако может быть так, что устройство, включающее в себя блок 464 активации в режиме ожидания, также может отправлять и/или принимать передачу потока данных при работе в режиме ожидания. В таких вариантах выполнения предполагается, что аудиоисточник может находиться далеко от вычислительного устройства 12.
Например, аудиоисточник может быть обнаружен в первом местоположении, а затем передан устройству во втором местоположении, например, через сеть, такую как беспроводная сеть, локальная сеть, широкополосная сеть и/или Интернет. Аудиоисточник может быть оцифрован и/или обработан устройствами в первом или втором местоположениях. После этого блок 464 активации в режиме ожидания в устройстве во втором местоположении может выполнить соответствующее сравнение, описанное выше, для определения, является ли звук, принятый от устройства в первом местоположении, надлежащей фразой активации. Если это так, устройство во втором местоположении может быть активировано. В качестве альтернативы устройство во втором местоположении может отправить передачу назад устройству в первом местоположении или отправить передачу устройству в третьем местоположении, отличающемся от первого или второго местоположения, для активации устройства в первом или третьем местоположениях.
Вышеприведенное подробное описание системы согласно изобретению было представлено в целях иллюстрации и описания. Предполагается, что оно не является исчерпывающим или ограничивающим систему согласно изобретению точной раскрытой формой. Возможны многие модификации и вариации в свете вышеупомянутых идей. Описанные варианты выполнения были выбраны для наилучшего объяснения принципов системы согласно изобретению и ее практического применения, чтобы, таким образом, позволить другим специалистам в области техники наилучшим образом использовать систему согласно изобретению в различных вариантах выполнения и с различными модификациями, которые подходят для конкретного предположенного использования. Предполагается, что объем системы согласно изобретению определен прилагаемой формулой изобретения.