ОБРАБОТКА ТЕЛЕФОННЫХ НОМЕРОВ В ЗВУКОВЫХ ПОТОКАХ
PROCESSING OF TELEPHONE NUMBERS IN SOUND FLOWS

Область техники, к которой относится изобретение
Настоящее изобретение относится, в общем, к системам беспроводной связи и, в частности, к методике обработки появлений телефонных номеров в звуковых потоках.
Уровень техники
Системы беспроводной связи хорошо известны в данной области техники. В таких системах обмен данными в типичном варианте поддерживается беспроводной инфраструктурой, которая в беспроводном режиме обменивается данными с устройствами беспроводной связи (или мобильными устройствами), например, сотовыми телефонами или портативными радиостанциями. Более того, подходящие соединения между беспроводной инфраструктурой и другими сетями, такими как так называемая простая старая телефонная система (Plain Old Telephone System, POTS) или Интернет, предоставляют пользователям мобильных устройств возможность обмениваться данными с другими участниками, не оснащенными аналогичными мобильными устройствами. В общем случае, подобные беспроводные системы предоставляют удобное средство для их пользователей для того, чтобы обмениваться данными с другими пользователями, несмотря на нахождение в движении.
Портативность таких мобильных устройств, несмотря на то что она является большим преимуществом в некоторых отношениях, привела к ранее неизвестным трудностям. Например, когда пользователи находятся в мобильном окружении (к примеру, далеко от офиса или дома), им часто не хватает возможности записывать информацию, переданную в ходе телефонной связи. Такая ситуация часто возникает, когда принимающий пользователь прослушивает звуковые сигналы, предоставляемые непосредственно другим пользователем (как в случае обычного речевого общения) или устройством хранения данных (к примеру, системой голосовой почты или автоответчиком), и телефонный номер, необходимый принимающему пользователю, появляется в звуковом потоке. Если окажется, что у принимающего пользователя нет под рукой какого-либо средства быстрой записи телефонного номера для последующего использования (к примеру, ручки и бумаги), принимающий пользователь часто должен попытаться очень быстро запомнить телефонный номер. В случае записанного звука пользователь может иметь возможность вернуться и прослушать телефонный номер больше, чем один раз, в попытке запомнить его, хотя это может представлять неудобство для пользователя. Помимо этого, такие многократные воспроизведения означают дополнительные расходы для пользователя в смысле платы за эфирное время. Заметим, что возможность повторно воспроизводить звук отсутствует при обычной живой голосовой связи. Более того, даже если у пользователя есть под рукой какое-либо средство для записи телефонного номера, природа многих мобильных окружений делает невозможным для принимающего пользователя быть отвлеченным от своей текущей деятельности (к примеру, ведения машины, прогулки по многолюдной улице и т.д.) для того, чтобы записать телефонный номер или уделить достаточно внимания для того, чтобы запомнить номер.
Поэтому было бы полезно предоставить методику для мобильных устройств для обнаружения и обработки телефонных номеров, появляющихся в звуковых потоках, так, чтобы фиксировать эти телефонные номера для последующего использования. Такая методика должна предпочтительно работать в автоматическом режиме или с минимальным участием пользователя, при этом все же позволяя пользовательское вмешательство для того, чтобы обеспечить точность зафиксированных телефонных номеров.
Краткое описание чертежей
Фиг. 1 - это блок-схема системы беспроводной связи в соответствии с вариантом осуществления настоящего изобретения.
Фиг. 2 - это блок-схема устройства беспроводной связи в соответствии с вариантом осуществления настоящего изобретения.
Фиг. 3 - схема потока данных методики обработки телефонных номеров из звуковых потоков в соответствии с вариантом осуществления настоящего изобретения.
Фиг. 4 - блок-схема последовательности операций способа, иллюстрирующая способ в соответствии с предпочтительным вариантом осуществления настоящего изобретения.
Подробное описание предпочтительных вариантов осуществления
Настоящее изобретение предусматривает методику обработки телефонных номеров, которые появляются в звуковых потоках, в устройстве связи. В частности, появления, по меньшей мере, одного из множества связанных с телефонным номером шаблонов речи идентифицируют в звуковом потоке с помощью методик анализа речи. В предпочтительном варианте осуществления звуковой поток включает в себя принятый звуковой поток, хотя настоящее изобретение может быть использовано для звуковых потоков, передаваемых устройством связи. Один или более шаблонов номера, соответствующих появлениям, по меньшей мере, одного из множества связанных с телефонным номером шаблонов речи, после этого идентифицируют и сохраняют для последующего представления пользователю устройства связи. В предпочтительном варианте осуществления упомянутые появления и соответствующие один или более шаблонов номера фильтруют, чтобы уменьшить вероятность ошибочного обнаружения телефонных номеров в звуковом потоке. Более того, обнаруженный шаблон(ы) номера может быть дополнен или преобразован согласно, по меньшей мере, одному заданному пользователем правилу. Получившийся шаблон(ы) номера, обнаруженный (и отфильтрованный/дополненный) таким способом, может быть представлен пользователю, тем самым позволяя пользователю дополнительно редактировать шаблоны номера. Посредством сохранения шаблона(ов) номера в постоянной памяти, например, в заданном пользователем телефонном каталоге, телефонные номера, зафиксированные таким способом, могут быть повторно вызваны любое число раз. Более того, звуковой поток может быть сохранен на постоянной основе таким образом, чтобы недавно принятая часть звукового потока была доступна для анализа или воспроизведения в ответ на команду, принятую от пользователя. Когда один или более шаблонов номера обнаружены в части звукового потока, эта часть может быть воспроизведена (к примеру, воспроизведена для прослушивания) по существу в то же самое время, когда один или более шаблонов номера предусматриваются для пользователя, тем самым предоставляя пользователю возможность проверить точность зафиксированного телефонного номера. Таким образом, настоящее изобретение предоставляет механизм для удобной и безопасной фиксации телефонных номеров в звуковых потоках.
Эти и другие преимущества настоящего изобретения более полно описаны дополнительно на фиг. 1-4 ниже. Ссылаясь теперь на фиг. 1, проиллюстрирована блок-схема системы 100 беспроводной связи. В частности, система 100 включает в себя множество устройств 102-104 беспроводной связи (или мобильных устройств), находящихся в беспроводном обмене данными с беспроводной инфраструктурой 106 по одному или более беспроводных каналов 120-122. Мобильные устройства 102-104, проиллюстрированные более подробно на фиг. 2, могут включать в себя любые устройства беспроводной связи, которые, по меньшей мере, могут принимать звуковые потоки, например сотовые телефоны, приемно-передающие радиостанции, "карманные" компьютеры с поддержкой беспроводного режима и т.д. Хотя настоящее изобретение, в первую очередь, применимо к мобильным устройствам, оно может быть выгодно применено к любому типу устройства связи, включая немобильные устройства, например, традиционные наземные телефоны и т.п. Беспроводная инфраструктура 106 включает в себя элементы, необходимые для того, чтобы поддерживать такой беспроводной обмен данными, известный в данной области техники, частности элементов которого будут отличаться согласно типу используемой системы 100. Такие элементы в типичном варианте включают в себя базовые станции, контроллеры ресурсов, транскодеры, коммутаторы и множество других элементов, известных обычным специалистам в данной области техники. Беспроводные каналы 120-122 также являются зависимыми от природы реализованной системы 100. В общем, тем не менее, беспроводные каналы 120-122 могут включать в себя любые беспроводные ресурсы, например, радиочастотные (РЧ) каналы, инфракрасные каналы и т.д., поддерживающие любой подходящий протокол модуляции (к примеру, частотную модуляцию, амплитудную модуляцию и т.д.) и/или протокол доступа, например, протокол мультиплексной передачи с частотным разделением каналов, мультиплексной передачи с временным разделением каналов или мультиплексной передачи с кодовым разделением каналов. Заметим, что дополнительные беспроводные каналы 124 описанного выше типа могут быть предоставлены в поддержку обмена данными "мобильный-мобильный", так что мобильные устройства 102-104 могут обмениваться данными друг с другом без вмешательства беспроводной инфраструктуры.
Как показано на фиг. 1, беспроводная инфраструктура 106 может поддерживать подключения к другим сетям 108-110 связи, так чтобы другие типы устройств 112-114 связи могли обмениваться данными с мобильными устройствами 102-104. Например, как известно в данной области техники, беспроводная инфраструктура 106 может поддерживать подключения к так называемой POTS 108 так, чтобы традиционные наземные телефонные трубки 112 могли обмениваться данными с мобильными устройствами 102-104. Альтернативно или помимо этого, беспроводная инфрастуктура 106 может поддерживать соединения с компьютерной сетью 110 (к примеру, Интернетом, всемирной сетью, частными сетями, их сочетаниями и т.п.) так, чтобы основанные на компьютерах платформы 114 (к примеру, персональные компьютеры, дорожные компьютеры, КПК и т.д.) также могли обмениваться данными с мобильными устройствами 102-104. Методики для обеспечения такого основанного на компьютерах обмена данными с мобильными устройствами хорошо известны в данной области техники. Дополнительно следует понимать, что дополнительные сети, не проиллюстрированные на фиг. 1, могут быть подключены к беспроводной инфраструктуре 106 помимо или как альтернативы проиллюстрированным сетям 108-110 в зависимости от выбранной структуры.
Мобильное устройство 102-104 в соответствии с настоящим изобретением дополнительно проиллюстрировано на фиг. 2. В частности, такие мобильные устройства включают в себя контроллер 202, соединенный с подходящим дисплеем 204, динамик (громкоговоритель) 206, передатчик 208, приемник 210 и другие устройства 212 ввода/вывода. Контроллер 202 может включать в себя любое устройство или сочетание устройств с возможностью обработки входных данных и сигналов и предусматривающие, при необходимости, выходные данные и сигналы. Различные конструкции таких контроллеров хорошо известны в данной области техники. В предпочтительном варианте осуществления контроллер 202 включает в себя устройство, которое может сохранять информацию о состоянии, например, микропроцессора, микроконтроллера, процессора цифровых сигналов, сопроцессора, программируемой логики, специализированной интегральной схемы и т.д. или их сочетаний. В некоторых случаях контроллер может включать в себя одно или более устройств хранения, например, энергозависимую (к примеру, оперативную память) или энергонезависимую (к примеру, электронно-перепрограммируемую постоянную память) память, подходящую для непостоянного или постоянного хранения данных или исполняемых команд. Описанные ниже различные методики предпочтительно реализуются как сегменты программного кода, реализованные как исполняемые команды. При использовании в данном документе такие сегменты кода могут включать в себя любую группировку (к примеру, смежную или независимую) одной или более исполняемых команд для выполнения конкретной операции. Такие сегменты кода могут быть сохранены в одном устройстве хранения или могут быть распределены по нескольким устройствам хранения в зависимости от выбранной структуры. Хотя описанные ниже конкретные операции могут быть отнесены к одному такому сегменту кода, обычные специалисты в данной области техники примут во внимание, что конкретные операции могут быть распределены множеством различных способов по нескольким устройствам хранения без потери функциональных возможностей.
Дисплей 204 может включать в себя любой подходящий механизм для отображения данных для просмотра пользователем мобильного устройства, например жидкокристаллический дисплей. Динамик 206 может включать в себя любой подходящий механизм для воспроизведения звуковых сигналов для прослушивания пользователем мобильного устройства. Другие устройства в поддержку дисплея 204 (к примеру, графические сопроцессоры) и динамика 206 (к примеру, цифроаналоговый преобразователь) хотя не проиллюстрированы, могут содержаться в мобильном устройстве в зависимости от выбранной структуры. Передатчик 208 может включать в себя любое подходящее устройство беспроводной модуляции/усиления, известное в данной области техники. Также приемник 210 может включать в себя любое подходящее устройство беспроводной демодуляции/распознавания, известное в данной области техники. На практике конкретная конфигурация и работа передатчика 208 и приемника 210 будут зависеть от конфигурации беспроводных каналов и протоколов связи, поддерживаемых системой 100.
Наконец, другие устройства 212 ввода/вывода включают в себя все остальные механизмы, посредством которых сигналы предоставляются в контроллер 202 или из контроллера 202. Например, мобильное устройство может включать в себя микрофон, сенсорный экран, буквенно-цифровую клавиатуру, различные кнопки, экранные клавиши, коммутаторы, дисковые номеронабиратели или другие активируемые пользователем устройства, известные в данной области техники. Дополнительно, может быть предоставлен порт данных, так чтобы различные типы информации, в том числе звуковые потоки, могли быть введены непосредственно в контроллер 202. Также могут быть использованы различные другие типы устройств вывода, например, светодиоды, сигнализаторы, вибраторы и т.п. Природа и размер других устройств 212 ввода/вывода зависит от выбранной структуры, и настоящее изобретение не должно быть ограничено в этом отношении. В одном варианте осуществления настоящего изобретения другие устройства 212 ввода/вывода включают в себя механизмы для пользователя для того, чтобы выдавать команды контроллеру, чтобы фиксировать части звуковых потоков, запрашивать отображение шаблонов номера, запрашивать воспроизведение записанных частей звуковых потоков и обеспечивать редакционные изменения показываемых шаблонов номера.
Ссылаясь теперь на фиг. 3, предусматривается схема потока данных в соответствии с вариантом осуществления настоящего изобретения. Каждый из функциональных блоков 300-312, проиллюстрированных на фиг. 3, предпочтительно реализуется в качестве сегмента кода, как описано выше, с помощью традиционных методик программирования. Как показано, сегмент 300, принимающий звуковой поток, предусматривает звуковой поток 320 в качестве выходного сигнала, при этом звуковой поток может быть выведен из любого числа источников. В контексте настоящего изобретения звуковой поток может включать в себя любую форму информации, представляемой в звуковом сигнале, принятом из любого источника. В предпочтительном в данный момент варианте осуществления звуковой поток принимается мобильным устройством посредством беспроводного канала для последующего представления пользователю мобильного устройства. Тем не менее, на практике звуковой поток может исходить практически из любого источника, в том числе источника звука (к примеру, микрофона или порта данных), резидентно размещенного в мобильном устройстве. Помимо этого, звуковой поток может быть представителем речевых данных в реальном времени, как в случае сотового телефонного вызова, или может быть представителем сохраненных звуковых данных, как в случае воспроизведения записанного сообщения. Независимо от этого звуковой поток 320 предпочтительно представляется в форме, подлежащей анализу речи сегментом 302 анализа речи. Если он представлен не в форме, подлежащей анализу речи, как в случае некоторых сжатых звуковых форматов, то может потребоваться преобразование либо сегментом 300, принимающим звуковой поток, либо сегментом 302 анализа речи.
Сегмент 302 анализа речи реализует методики распознавания речи, известные в данной области техники. В частности, распознавание речи, выполненное сегментом 302 анализа речи, предпочтительно включает в себя независимое от говорящего абонента специализированное распознавание речи, т.е. сегмент анализа речи специально приспособлен, чтобы распознавать появление связанных с телефонным номером шаблонов речи (или цифровых фрагментов речи), встречающихся в звуковых потоках, предоставляемых любым говорящим участником. При использовании в данном документе связанные с телефонным номером шаблоны речи включают в себя параметрические или другие представления фрагментов человеческой речи, которые часто встречаются, когда телефонный номер произносится или иным образом передается в звуковой форме. Такие связанные с телефонным номером шаблоны речи могут быть сохранены в подходящей постоянной памяти.
Например, телефонные номера в типичном варианте произносятся в режиме "цифра-за-цифрой". Таким образом, телефонный номер "555-123-4567" (используя 10-значные соглашения, в большинстве случаев используемые в Северной Америке), вероятно, будет произнесен как "пять пять пять один два три четыре пять шесть семь", а не "пять миллиардов пятьсот пятьдесят один миллион двести тридцать четыре тысячи пятьсот шестьдесят семь" или "пятьсот пятьдесят пять сто двадцать три четыре тысячи пятьсот шестьдесят семь". Тем не менее часто встречаются исключения из этого практического способа "цифра-за-цифрой". Например, телефонный номер "800-555-1000", может быть произнесен как "восемьсот пять пять пять тысяча". Как еще один пример, последние четыре цифры телефонного номера, содержащего "3452", могут быть произнесены как "три четыре пять два" или "тридцать четыре пятьдесят два". Дополнительно, конкретными говорящими абонентами могут быть использованы альтернативные выражения отдельных цифр, к примеру, "О" вместо "ноль". В предпочтительном в данный момент варианте осуществления множество связанных с телефонным номером шаблонов речи описанного выше типа (к примеру, "ноль", "один", "два", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять", "О", "тридцать четыре", "пятьдесят два", "восемьсот", "тысяча" и т.д.) предоставляется и используется в качестве основы для распознавания появления номеров в звуковом потоке. Поскольку словарь распознавания речи ограничен таким образом, ожидается, что может быть выполнено надежное распознавание речи на независимой от говорящего абонента основе.
В одном варианте осуществления настоящего изобретения сегмент 302 анализа речи работает как конечный автомат с двумя состояниями. В первом состоянии, которое может быть обозначено нулевым состоянием, сегмент 302 анализа речи "прослушивает" возникновение цифровых фрагментов речи. Сегмент 302 анализа речи остается в этом состоянии до тех пор, пока не обнаружен цифровой фрагмент речи, после чего он переключается во второе состояние, на которое можно сослаться как на строковое состояние. При переходе в строковое состояние предполагается, что обнаруженный цифровой фрагмент речи находится в начале строки (последовательности) цифровых фрагментов речи. В ходе работы в строковом состоянии сегмент анализа речи пытается распознать возникновение дополнительных цифровых фрагментов речи, удовлетворяющих различным критериям, для того, чтобы установить строку связанных цифровых фрагментов речи. После того, как различные критерии удовлетворены, выводится строка обнаруженных шаблонов номера, соответствующая строке цифровых фрагментов речи, и обработка возвращается в нулевое состояние. В различных вариантах осуществления настоящего изобретения определение того, была ли завершена строка цифровых фрагментов речи, может быть основано, например, на прохождении отрезка времени между обнаружениями цифровых фрагментов речи или числе обнаруженных нецифровых фрагментов речи после обнаружения цифрового фрагмента речи. Например, если проходит более двух секунд после обнаружения цифрового фрагмента речи, можно предположить, что цифровой фрагмент речи завершен. Альтернативно или помимо этой методики может отслеживаться число нецифровых фрагментов речи для той же цели. Таким образом, например, если более трех нецифровых фрагментов речи встречается после цифрового фрагмента речи, снова можно предположить, что цифровой фрагмент речи завершен. Число нецифровых фрагментов речи может отслеживаться множеством способов в зависимости от природы распознавания речи. Вообще это осуществляется посредством распознавания простейших структур речи и подсчета числа отрезков времени, когда такие структуры встречаются не в цифровых фрагментах речи. Например, могут быть определены слоги в нецифровых фрагментах речи или даже отдельные фонемы в рамках нецифровых фрагментов речи. Так или иначе, заметим, что описанные здесь пороговые значения даны только для примера. Более того, обычные специалисты в данной области техники примут во внимание, что могут быть использованы другие критерии для определения завершения строки цифровых фрагментов речи, к примеру, появление достаточно долгих периодов молчания после фрагментов речи. Если подходящие критерии удовлетворены, сегмент 302 анализа речи возвращается в нулевое состояние, и предполагается, что предыдущая строка цифровых фрагментов речи была завершена. В противном случае предполагается, что цифровые фрагменты речи, ближайшие по времени (или ближайшие по числу промежуточных нецифровых фрагментов речи), связаны друг с другом, формируя непрерывную строку цифровых фрагментов речи.
После того, как связанные с телефонным номером шаблоны речи (или строка цифровых фрагментов речи) обнаружены, шаблоны 322 номера, соответствующие связанным с телефонным номером шаблонам речи, идентифицируют и предоставляют в качестве выходного сигнала сегмента 302 анализа речи. Например, поскольку обнаружены шаблоны речи, соответствующие "восемьсот", "О", "один" и "пять", номера "800", "0", "1" и "5" предоставляются в качестве строки обнаруженных шаблонов номера. Строки обнаруженных шаблонов 322 номера (строка, определенная как один или более шаблонов номера) предпочтительно предоставляются в качестве входа сегменту 304 фильтрации, который применяет последовательность правил или шаблонов к строке обнаруженных шаблонов номера в попытке минимизировать вероятность ошибочного распознавания такой строки, как телефонного номера. Заметим, что такая фильтрация не является обязательной, но желательна, чтобы минимизировать появление ошибок.
В предпочтительном в данный момент варианте осуществления фильтрация осуществляется посредством подчинения строк обнаруженных шаблонов номера одному или более правилам фильтрации, к примеру, посредством проверки различных характеристик строк обнаруженных шаблонов номера для того, чтобы просмотреть, соответствуют ли строки желательным или нежелательным характеристикам. Такие правила могут быть предварительно сконфигурированы и быть статическими либо они могут быть сконфигурированы пользователем и быть динамическими. В одном варианте осуществления длина (в количестве цифр) каждой строки обнаруженных шаблонов номера сравнивается со стандартной длиной телефонных номеров. Например, в США и Канаде телефонные номера в типичном варианте включают 7 или 10 цифр. В других странах телефонные номера часто имеют другую традиционную длину. Помимо этого, некоторые частные телефонные станции могут допускать номера, которые имеют длину, например, 5 цифр, к примеру, телефонный номер "576-1234" может быть равным образом выражен как "6-1234" для участников, осуществляющих доступ к местной телефонной станции внутри. Таким образом, маловероятно, что данная строка обнаруженных шаблонов номера, которая не соответствует такой традиционной длине, будет телефонным номером и, таким образом, она игнорируется.
В еще одном варианте осуществления содержимое каждой строки обнаруженных шаблонов номера проверяется и сравнивается с эталонными шаблонами. Например, в США номер "312" - допустимый междугородный телефонный код (код зоны), тогда как номер "311" - недопустимый. Таким образом, 10-значный шаблон номера "312xxxxxxx" (где "xxxxxxx" - любой допустимый 7-значный номер), вероятно, допустимый телефонный номер, тогда как 10-значный шаблон номера "311 xxxxxxx" - недопустимый телефонный номер. Такие правила, основанные на междугородных телефонных кодах, могут учитывать все возможные междугородные телефонные коды либо могут быть ограничены только теми междугородными телефонными кодами, с которыми, вероятно, будет сталкиваться конкретный пользователь.
В еще одном варианте осуществления, связанном с вышеописанными вариантами осуществления, принимается во внимание местоположение или зона регистрации мобильного устройства во время анализа звукового потока (или когда была принята речь). Например, если мобильное устройство работает в США, может быть использован один набор правил в соответствии с вышеописанными вариантами осуществления. Тем не менее, если то же устройство работает в зарубежной стране, может быть использован другой набор правил в соответствии с вышеописанными вариантами осуществления.
Сегмент 304 фильтрации может также функционировать с возможностью разрешения неоднозначности в строках обнаруженных шаблонов номера. Например, если фрагмент речи "тридцать пять сорок два" обнаружен сегментом 302 анализа речи, обнаруженные шаблоны номера, вероятно, будут "35" и "42". Тем не менее, учитывая способ, которым люди иногда выражают номера, данный фрагмент речи может быть равным образом интерпретирован как "305402" или "3542". Чтобы учесть такие сценарии, сегмент 304 фильтрации может включать в себя правила, которые пытаются разрешить подобные неоднозначности в пользу нахождения телефонного номера. Например, если телефонный номер "800-555-3542" представлен фрагментами речи "восемьсот пять пять пять тридцать пять сорок два", возможными строками обнаруженного шаблона номера будут "800555305402", "80055535402", "80055530542" или "8005553542". Из этих четырех возможных строк обнаруженных шаблонов номера только последняя будет соответствовать допустимому 10-значному телефонному номеру. Сегмент 304 фильтрации распознает эти варианты и автоматически разрешает неоднозначности в пользу выбора вероятного результата или результатов, которые (наиболее близко) соответствуют допустимому телефонному номеру.
Сегмент обнаружения фрагмента речи с ключевым словом (не показан) может также быть включен в сегмент 302 анализа речи и сегмент 304 фильтрации или существовать отдельно и работать совместно с сегментом 302 анализа речи или сегментом 304 фильтрации. Ключевые слова в контексте настоящего изобретения - это нецифровые фрагменты речи, зачастую связанные с телефонными номерами или другими типами номеров. Как и в случае связанных с телефонным номером шаблонов речи, фрагменты речи с ключевым словом могут быть представлены параметрически для использования алгоритмом распознавания речи. Например, слово "добавочный" часто используется при описании телефонного номера. Появление слова "добавочный", ближайшее по времени к множеству цифровых фрагментов речи, следовательно, служит в качестве признака для процесса анализа речи, что цифровые фрагменты речи, встречающиеся до и после слова "добавочный", связаны с одной и той же строкой. Более того, получившаяся строка шаблона номера может включать в себя символ (к примеру, запятую, тире или другой значок), представляющий место в строке цифровых фрагментов речи, где встречалось слово "добавочный". Напротив, другие типы ключевых слов часто связаны с номерами, отличными от телефонных номеров. Например, такие слова, как "улица", "проспект", "дорога", "бульвар", вероятнее всего, связаны с адресами места жительства (к примеру, "центральная улица три один два"), а не с телефонными номерами. По существу, маловероятно, что цифровые фрагменты речи, ближайшие по времени к таким ключевым словам, являются частью телефонного номера. Те же принципы применяются к названиям штатов. Например, рассмотрим звуковой поток, содержащий "главная улица пять два гарвард иллинойс шесть О О три три". Появление слов "улица" и "иллинойс" между цифрами "пять два" и "шесть О О три три" указывает, что этот фрагмент речи соответствует адресу места жительства, а не телефонному номеру "526-0033".
Дополнительные "ключевые слова", используемые таким образом, могут фактически соответствовать конкретным типам фрагментов речи, которые в типичном варианте встречаются, когда человек делает паузу в ходе разговора, к примеру, так называемые заполнители паузы. Например, нередко человек, произносящий вслух телефонный номер, вставляет такие звуки, как "э-э-э" или "м-м-м" между номерами. Фрагменты речи такого типа не предоставляют какого-либо дополнительного понимания того, завершена ли данная строка цифровых фрагментов речи, и, следовательно, составляют категорию фрагментов речи, которые должны игнорироваться в процессе анализа речи при попытке распознать строки цифровых фрагментов речи. Например, могут быть установлены критерии завершения, так что подобные фрагменты речи не вносят вклад в метрику, используемую для определения, когда строка цифровых фрагментов речи была завершена.
Как описано выше, сегмент 304 фильтрации помогает гарантировать то, что только допустимые телефонные номера обнаружены и зафиксированы. По-прежнему возможна дополнительная обработка с помощью сегмента 306 дополнения шаблона номера. Предпочтительно, работая с отфильтрованными шаблонами 324 номера, предоставляемыми сегментом 304 фильтрации, сегмент 306 дополнения работает так, чтобы завершать неполные телефонные номера, которые могут встречаться, когда, например, говорящий абонент пропускает междугородный телефонный код или только предоставляет добавочный номер. Могут быть вероятны другие сценарии дополнения. Как и сегмент 304 фильтрации, сегмент 306 дополнения предпочтительно работает, используя последовательность предварительно сконфигурированных или заданных пользователем правил, формулирующих различные шаблоны для сравнения с обнаруженными (и возможно отфильтрованными) шаблонами номера. Если происходит совпадение с данным шаблоном правила, дополнительный шаблон номера может быть добавлен в рассматриваемый шаблон номера, чтобы более полно заполнить шаблон номера, что имеет следствием дополненный шаблон 326 номера. Альтернативно, заданное пользователем правило может задавать преобразование, так что какая-то часть шаблона номера сохраняется, а остальная часть шаблона номера отбрасывается.
Например, в случае междугородных телефонных кодов сегмент дополнения может сравнивать 7-значные шаблоны номера, чтобы определить, могут ли быть присоединены в начале определенные междугородные телефонные коды. С этой целью сегмент 306 дополнения может включать в себя привязки (предварительно сконфигурированные или заданные пользователем) конкретных префиксов, входящих в строки назначенной длины (к примеру, первые 3 цифры 7-значного телефонного номера), к вероятным междугородным телефонным кодам. Например, может быть установлено правило, что 7-значные шаблоны номера вида "576xxxx" - подходящие варианты для присоединения в начало междугородного телефонного кода "847", тогда как шаблоны номера другой длины, но также начинающиеся с "576", могут быть дополнены другим способом согласно другому правилу. В качестве дополнения данной концепции известно, что определенные телефонные префиксы могут быть сокращены в случае частных телефонных станций. Например, крупная корпорация может иметь одно или более мест, в которых все 7-значные телефонные номера начинаются либо с префикса "576", либо с префикса "523" (допустим, в обоих случаях междугородный телефонный код, например, "847"). В таких случаях пользователи могут выражать свои телефонные номера с помощью 5-значного шаблона, к примеру, "6-1234" или "3-1000". 5-значные шаблоны номера (или другой длины в зависимости от выбранной структуры) могут быть дополнены посредством присоединения в начало соответствующего междугородного телефонного кода и номеров префикса, к примеру, "6-1234" становится "847-576-1234", а "3-1000" становится "847-523-1000". Табл. ниже содержит неполный список различных примеров правил привязки описанного выше типа.
Шаблоны номера
Дополнение
6xxxxx
847 576 xxxx
3xxxx
847 523 xxxx
4xxxx
815 884 xxxx
653xxxx
919 653 xxxx
482xxxx
919 482 xxxx
2xx
919 653 12xx
Может иметь место такое, что в некоторых случаях более чем один междугородный телефонный код или другой дополнительный шаблон номера может быть присоединен к обнаруженному шаблону номера. Решение этой проблемы заключается в том, чтобы запретить конфликтующие правила, которые привязывают данные шаблоны номера к различным результатам дополнения. Предпочтительно, когда существует более одного варианта дополнения, оба результата предоставляются и в дальнейшем представляются пользователю как варианты, из которых следует выбирать. Те же самые методики также могут быть использованы в случае, если шаблон номера имеет несколько возможных интерпретаций (к примеру, разрешение неоднозначностей в обнаруженных шаблонах номера), которые соответствуют нескольким правилам.
Сегмент 306 дополнения может также принимать во внимание местоположение функционирования или зону регистрации мобильного устройства при применении правил дополнения. Например, в США правила дополнения могут включать в себя присоединение "1" в качестве первой цифры дополненного шаблона номера для междугородных телефонных кодов за пределами междугородного телефонного кода, где расположено или зарегистрировано мобильное устройство. Напротив, при функционировании за пределами США различные коды доступа могут быть присоединены в соответствии с местными соглашениями.
Обнаруженные (и возможно, отфильтрованные и дополненные) шаблоны номера сохраняются с помощью сегмента 308 сохранения обнаруженного шаблона номера. В предпочтительном варианте осуществления сегмент 308 сохранения обнаруженного шаблона номера хранит список N последних обнаруженных шаблонов номера в подходящем устройстве хранения, где N конфигурируется пользователем и ограничено только объемом доступной памяти. Помимо этого, сегмент 308 сохранения может работать, чтобы сохранять части звукового потока 330 в подходящем устройстве хранения. Как показано, предусмотрен сегмент 312 фиксации звукового потока, который направляет звуковой поток 330 в кольцевой буфер, реализованный сегментом 308 сохранения, который непрерывно хранит последние M секунд звукового потока 330. При прослушивании появления телефонного номера (посредством не показанного воспроизведения звукового потока) пользователь мобильного устройства выдает команду сегменту 312 фиксации звукового потока. В ответ сегмент 312 фиксации звукового потока выдает сегменту 308 сохранения команду (не показано) заморозить кольцевой буфер в текущем состоянии. Благодаря планированию длины кольцевого буфера для того, чтобы учитывать средние отрезки времени, которые потребуются пользователю, чтобы прослушать номер и ввести необходимую команду, можно обеспечить, чтобы часть звукового потока, содержащая телефонный номер, была представлена в буфере. Если требуется, содержимое замороженного в настоящее время буфера может быть сохранено в другом месте постоянной памяти, так чтобы кольцевой буфер мог оставаться обновляемым. Количество звуковых частей, которые могут быть зафиксированы таким способом, а также отдельная длительность и совокупная длительность таких зафиксированных частей обязательно ограничена доступным объемом подходящей области памяти. Более того, способ, которым эти типы команд вводятся пользователем, ограничен только доступностью подходящих устройств ввода (к примеру, других устройств 212 ввода/вывода).
В одном варианте осуществления настоящего изобретения часть звукового потока 330, сохраненная таким способом, может быть предоставлена сегменту 302 анализа речи сегментом 308 сохранения (показан пунктирной линией) для анализа, как описано выше. В этом случае звуковой поток 320 необязательно должен быть непрерывно предоставлен сегменту 302 анализа. Вместо этого, только те части звукового потока, которые считаются пользователем важными, предоставляются сегменту 302 анализа речи при необходимости.
Когда сохраняется, по меньшей мере, один шаблон номера (и, необязательно, по меньшей мере, одна соответствующая часть звукового потока), может быть использован сегмент 310 представления обнаруженного номера. В одном варианте осуществления сегмент 310 представления осуществляет доступ к списку обнаруженных номеров, сохраненному сегментом 308 сохранения, и воспроизводит обнаруженные номера для просмотра посредством подходящего дисплея (к примеру, дисплея 204). Сегмент 310 представления предпочтительно отображает список в ответ на команду, принятую от пользователя, хотя список может быть показан автоматически в удобное время, к примеру, по завершении текущего вызова. Аналогично, сегмент 316 представления звукового потока заставляет сохраненные части звуковых потоков 330 быть воспроизведенными для прослушивания. В одном варианте осуществления отдельные показанные обнаруженные шаблоны номера могут иметь индикатор (например, значок, графический символ и т.д.), показываемый вслед за ними, при этом индикатор является представителем сохраненной части звукового потока, соответствующей этому обнаруженному шаблону номера. Посредством выбора индикатора (к примеру, посредством нажатия кнопки, экранной клавиши, области сенсорного экрана и т.д., связанной с индикатором) часть звукового потока 330, связанная с обнаруженным шаблоном номера, воспроизводится для прослушивания сегментом 316 представления звукового потока, так чтобы пользователь мог быстро проверить точность обнаруженного шаблона номера. Более того, часть звукового потока 330 может быть воспроизведена в виде непрерывного цикла, так чтобы пользователь мог прослушать часть несколько раз при проверке точности обнаруженного шаблона номера.
Если пользователь определяет, что есть ошибки в обнаруженном шаблоне номера на основе отображения, может быть использован сегмент 314 редактирования для того, чтобы ввести редакционные изменения 340 в показываемые шаблоны номера. Сегмент 314 редактирования предоставляет пользователю возможность выбрать конкретный отображаемый шаблон номера (к примеру, посредством выделения на экране конкретного показываемого шаблона номера) и отредактировать шаблон номера, при этом редакционные изменения 340 предоставляются сегменту 308 сохранения для того, чтобы обновить соответствующий сохраненный шаблон номера. Методики принятия редакционных изменений к показываемым номерам в мобильных устройствах хорошо известны в данной области техники. Помимо этого, сегмент 314 редактирования может предусмотреть вариант для пользователя такой, чтобы передать показываемый шаблон номера (отредактированный или нет) для постоянного хранения. К тому же, может быть использован любой традиционный механизм ввода (к примеру, кнопка, раскрывающееся меню, экранная клавиша и т.д.), чтобы позволить пользователю указать необходимость передать шаблон номера в постоянную память.
Ссылаясь теперь на фиг. 4, предусмотрена блок-схема последовательности операций способа в соответствии с предпочтительным вариантом осуществления настоящего изобретения. Процесс, проиллюстрированный блок-схемой последовательности операций способа фиг. 4, может быть осуществлен описанными выше сегментами кода, реализованными в мобильном устройстве. На этапе 402 звуковой поток сканируется (посредством анализа речи) на появление связанных с телефонным номером шаблонов речи. Если эти появления удовлетворяют критериям фильтрации на этапе 404, шаблоны номера, соответствующие этим появлениям, сохраняются на этапе 406. При возможности обнаруженные шаблоны номера дополняются на этапе 408 и после этого сохраняются на этапе 410. Независимо от того, были ли дополнены обнаруженные шаблоны номера, сохраненные шаблоны номера представляются пользователю мобильного устройства на этапе 412 либо автоматически, либо в ответ на команду, принятую от пользователя. После этого на этапе 414 пользователь может по выбору отредактировать любой из показываемых шаблонов номера и заставить выбранные из показываемых шаблонов номера быть постоянно сохраненными в памяти или вызванными, как в случае выбора пользователем кнопки "отправить", как правило, имеющейся в современных сотовых телефонах.
Настоящее изобретение предусматривает методику обработки телефонных номеров, которые встречаются в звуковых потоках. Посредством выполнения анализа распознавания речи в звуковых потоках идентифицируются появления связанных с телефонным номером шаблонов речи и идентифицируются соответствующие обнаруженные шаблоны номера. Методики фильтрации и дополнения могут быть применены к обнаруженным шаблонам номера для того, чтобы минимизировать ошибки и обеспечить завершенность. Операции редактирования и фиксация/воспроизведение соответствующих частей звукового потока предусматриваются для того, чтобы обеспечить точность. Таким образом, телефонные номера могут быть удобно и безопасно зафиксированы для последующего использования пользователями мобильных устройств.
В предшествующем подробном описании изобретение было описано по отношению к конкретным вариантам осуществления. Тем не менее, обычный специалист в данной области техники принимает во внимание, что различные модификации и изменения могут быть выполнены без отступления от объема настоящего изобретения, как формулируется в формуле изобретения далее. Следовательно, подробное описание и фигуры должны быть рассмотрены в иллюстративном, а не ограничительном смысле, и все подобные модификации предназначены для того, чтобы быть включенными в объем настоящего изобретения.
Выгоды, другие преимущества и решения проблем были описаны выше по отношению к конкретным вариантам осуществления. Тем не менее, выгоды, преимущества, решения проблем и любой элемент(ы), который может приводить к тому, чтобы любая выгода, преимущество и решение произошло или стало более явным, не должны истолковываться как критические, обязательные или существенные признаки или элементы любого пункта либо всей формулы изобретения. При использовании в данном документе термин "содержит", "содержащий" или любая другая его разновидность служит для того, чтобы охватить неисключительное включение, так чтобы процесс, способ, изделие или устройство, которое содержит список элементов, не включали в себя только эти элементы, а могли включать в себя другие элементы, не перечисленные в явном виде или внутренне присущие такому процессу, способу, изделию или устройству