ES2801854T3 - Dispositivo electrónico para proporcionar servicio de reconocimiento de voz y procedimiento del mismo - Google Patents

Dispositivo electrónico para proporcionar servicio de reconocimiento de voz y procedimiento del mismo Download PDF

Info

Publication number
ES2801854T3
ES2801854T3 ES18168559T ES18168559T ES2801854T3 ES 2801854 T3 ES2801854 T3 ES 2801854T3 ES 18168559 T ES18168559 T ES 18168559T ES 18168559 T ES18168559 T ES 18168559T ES 2801854 T3 ES2801854 T3 ES 2801854T3
Authority
ES
Spain
Prior art keywords
electronic device
user
text
processor
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES18168559T
Other languages
English (en)
Inventor
Zhedan Pan
Sung Pa Park
Neyyan Biju Mathew
Han Jun Ku
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Application granted granted Critical
Publication of ES2801854T3 publication Critical patent/ES2801854T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R1/00Details of transducers, loudspeakers or microphones
    • H04R1/08Mouthpieces; Microphones; Attachments therefor
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/221Announcement of recognition results
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/227Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Un dispositivo electrónico que comprende: un micrófono (110); un visualizador (120); un circuito (140) de comunicación; una memoria (150) en la que se almacena una aplicación; y un procesador (130) conectado eléctricamente al micrófono (110), al visualizador (120), al circuito (140) de comunicación y a la memoria (150), en el que el procesador (130) está configurado para: mostrar una pantalla de ejecución de la aplicación en el visualizador (120); obtener datos de voz a través del micrófono (110); mostrar, en la pantalla de ejecución, un texto convertido de los datos de voz; mostrar, en la pantalla de ejecución, un indicador asociado con un tiempo de espera determinado en base a al menos uno de un tiempo de adquisición de los datos de voz y una longitud del texto, en el que el tiempo de adquisición de los datos de voz es el período de tiempo total desde un punto en el tiempo cuando se inicia la entrada de los datos de voz hasta cuando se termina la entrada de voz; y cuando transcurre el tiempo de espera, transmitir el texto a un dispositivo externo a través del circuito (140) de comunicación.

Description

DESCRIPCIÓN
Dispositivo electrónico para proporcionar servicio de reconocimiento de voz y procedimiento del mismo
Referencia cruzada a solicitudes relacionadas
Esta solicitud se basa y reivindica la prioridad de la Solicitud de Patente Coreana n.° 10-2017-0052135, presentada el 24 de abril de 2017, en la Oficina de Propiedad Intelectual de Corea.
Antecedentes
1. Campo
La presente divulgación se refiere por lo general a la tecnología de reconocimiento de voz y dispositivos electrónicos que proporcionan la misma.
2. Descripción de la técnica relacionada
Por conveniencia del usuario, los dispositivos electrónicos desarrollados recientemente han incluido varios esquemas de entrada. Por ejemplo, un dispositivo electrónico puede proporcionar un esquema de entrada de voz usando tecnología de reconocimiento de voz. El dispositivo electrónico puede recibir datos de voz generados por el habla del usuario y puede convertir los datos de voz recibidos en texto de lenguaje natural utilizando la tecnología de reconocimiento de voz. En el documento US 2004/0153321A1 se muestra un dispositivo ejemplar que usa tecnología de reconocimiento de voz.
El texto convertido puede usarse como datos de entrada de varias aplicaciones y programas. Por ejemplo, el texto convertido puede ser un mensaje para ser transmitido por una aplicación de mensajes, o el texto convertido puede ser como una consulta de búsqueda introducida en la ventana de búsqueda de un navegador web.
Al mismo tiempo, se han desarrollado sistemas de inteligencia artificial, que son sistemas informáticos que implementan inteligencia a nivel humano. Estos sistemas de inteligencia artificial tienen capacidades de aprendizaje, y su inteligencia mejora con el tiempo a medida que los usa el usuario. La tecnología de inteligencia artificial (por ejemplo, tecnología de aprendizaje automático o tecnología de aprendizaje profundo) puede incluir tecnologías que simulan las funciones (por ejemplo, reconocimiento o determinación) del cerebro humano. Esto puede hacerse mediante el uso de algoritmos que clasifican o aprenden las características de varios datos de entrada.
Por ejemplo, las tecnologías empleadas por un sistema de inteligencia artificial pueden incluir una tecnología de comprensión del lenguaje que comprende la entrada del lenguaje natural, una tecnología de comprensión visual que reconoce objetos, una técnica de inferencia o predicción que puede inferir y predecir lógicamente información, una tecnología de expresión de conocimiento que procesa información de la experiencia humana como datos de conocimiento, y una tecnología de control de operación que controla la conducción autónoma de vehículos y/o robots. Se entiende que la tecnología de comprensión del lenguaje puede reconocer y procesar el lenguaje humano y puede incluir procesamiento del lenguaje natural, traducción automática, sistema de diálogo, respuesta a consultas, reconocimiento/síntesis de voz y similares.
La información anterior se presenta como información de antecedentes únicamente para ayudar con un entendimiento de la presente divulgación. No se ha hecho determinación alguna, y no se hace afirmación alguna, en lo que respecta a si algo de lo anterior podría ser aplicable como técnica anterior con respecto a la presente divulgación.
Sumario
Como se ha explicado anteriormente, el texto convertido de datos de voz a través del reconocimiento de voz puede usarse como datos de entrada. Sin embargo, a veces los datos de voz se pueden convertir incorrectamente. En este caso, el texto convertido incorrectamente puede usarse como datos de entrada. En consecuencia, antes de que el texto convertido se pueda utilizar como datos de entrada, el usuario debe confirmar el texto convertido.
Una forma de facilitar esta confirmación es proporcionar un período de tiempo de espera específico para que el usuario pueda verificar y/o revisar el texto convertido.
Como el usuario debe verificar y revisar el texto dentro del período de espera, el usuario debe reconocer que el período ha comenzado a ejecutarse. Además, cuando se proporciona un período de tiempo establecido independientemente de la cantidad de contenido, el período de tiempo puede ser demasiado corto para una gran cantidad de contenido, pero demasiado largo para una pequeña cantidad de contenido. Esto también puede causar inconvenientes para el usuario.
Los aspectos de la presente divulgación tienen por objeto abordar al menos los problemas y/o desventajas anteriormente mencionados y proporcionar al menos las ventajas descritas posteriormente. Por consiguiente, un aspecto de la presente divulgación es proporcionar un dispositivo electrónico que proporcione un tiempo de espera dinámico de acuerdo con la cantidad de entrada de voz del usuario y proporcione una interfaz de usuario para el tiempo de espera.
De acuerdo con un aspecto de la presente divulgación, un dispositivo electrónico incluye un micrófono; un visualizador; un circuito de comunicación; una memoria en la que se almacena una aplicación; y un procesador conectado eléctricamente al micrófono, al visualizador, al circuito de comunicación y a la memoria, en el que el procesador está configurado para: emitir una pantalla de ejecución de la aplicación en la pantalla; obtener datos de voz a través del micrófono; mostrar, en la pantalla de ejecución, un texto convertido de los datos de voz; mostrar, en la pantalla de ejecución, un indicador asociado con un tiempo de espera determinado basándose en al menos uno de un tiempo de adquisición de los datos de voz y una longitud del texto, en el que el tiempo de adquisición de los datos de voz es el período de tiempo total desde punto en el tiempo cuando se inicia la entrada de los datos de voz cuando se termina la entrada de voz; y cuando transcurre el tiempo de espera, transmitir el texto a un dispositivo externo a través del circuito de comunicación.
De acuerdo con otro aspecto de la presente divulgación, un procedimiento realizado por un dispositivo electrónico incluye obtener datos de voz a través de un micrófono; mostrar un texto convertido de los datos de voz en un visualizador; mostrar, en el visualizador, un indicador asociado con un tiempo de espera determinado basándose en al menos uno de un tiempo de adquisición de los datos de voz y una longitud del texto, en el que el tiempo de adquisición de los datos de voz es el período de tiempo total desde punto en el tiempo cuando se inicia la entrada de los datos de voz cuando se termina la entrada de voz; y cuando transcurre el tiempo de espera, determinar un texto a introducir.
De acuerdo con diversas realizaciones de la presente divulgación, se puede proporcionar un tiempo de espera dinámico dependiendo de la longitud o el contenido de la entrada de voz de un usuario.
De acuerdo con diversas realizaciones de la presente divulgación, se puede proporcionar un tiempo de espera personalizado para un usuario específico.
De acuerdo con diversas realizaciones de la presente divulgación, se puede proporcionar una interfaz de usuario que indique visualmente el tiempo de espera.
Además, se pueden proporcionar varias características y ventajas diferentes directa o indirectamente entendidas a través de esta divulgación.
Otros aspectos, ventajas y características importantes de la divulgación se harán evidentes para los expertos en la materia a partir de la siguiente descripción detallada, que, tomada en conjunto con los dibujos adjuntos, desvela diversas realizaciones de la presente divulgación.
Breve descripción de los dibujos
Los anteriores y otros aspectos, características, y ventajas de ciertas realizaciones de la presente divulgación se harán más evidentes a partir de la siguiente descripción tomada en conjunto con los dibujos adjuntos, en los que:
la Figura 1 ilustra un entorno en el que se realiza una entrada de voz, de acuerdo con una realización;
la Figura 2 es un diagrama de bloques que ilustra un dispositivo electrónico, de acuerdo con una realización; la Figura 3 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo con una realización de la presente divulgación;
la Figura 4 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo con otra realización de la presente divulgación;
la Figura 5 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo con todavía otra realización de la presente divulgación;
la Figura 6 es un diagrama de flujo que ilustra un procedimiento para revisar un tiempo de espera, de acuerdo con una realización de la presente divulgación;
la Figura 7 ilustra una interfaz de usuario de acuerdo con una realización de la presente divulgación;
la Figura 8 ilustra un indicador, de acuerdo con diversas realizaciones de la presente divulgación;
la Figura 9 ilustra una pantalla de ejecución de una aplicación de mensaje, de acuerdo con una realización de la presente divulgación;
la Figura 10 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo con todavía otra realización;
la Figura 11 es un diagrama de bloques que ilustra un dispositivo electrónico en un entorno de red, de acuerdo con una realización;
la Figura 12 es un diagrama que ilustra un sistema inteligente integrado de acuerdo con una realización de la presente divulgación;
la Figura 13 es un diagrama de bloques que ilustra un terminal de usuario de un sistema inteligente integrado, de acuerdo con una realización de la presente divulgación;
la Figura 14 es una vista que ilustra cuando se ejecuta una aplicación de inteligencia de un terminal de usuario, de acuerdo con una realización de la presente divulgación;
la Figura 15 es un diagrama de bloques que ilustra un servidor de inteligencia de un sistema inteligente integrado, de acuerdo con una realización de la presente divulgación; y
la Figura 16 es un diagrama que ilustra un procedimiento de generación de reglas de ruta de un módulo de comprensión del lenguaje natural (NLU), de acuerdo con una realización de la presente divulgación.
Descripción detallada
En lo sucesivo, pueden describirse diversas realizaciones de la presente divulgación con referencia a los dibujos adjuntos. Por consiguiente, los expertos en la materia en la técnica reconocerán que pueden realizarse diversas modificaciones y/o alternativas en las diversas realizaciones descritas en el presente documento sin alejarse del ámbito de la presente divulgación. Con respecto a descripción de los dibujos, elementos similares pueden marcarse por números de referencia similares.
En esta divulgación, las expresiones "tiene", "puede tener", "incluye", "comprende", "puede incluir" y "puede comprender" usadas en el presente documento indican la existencia de correspondientes características (por ejemplo, elementos tales como valores numéricos, funciones, operaciones, o componentes) pero no excluyen la presencia de características adicionales.
En esta divulgación, las expresiones "A o B", "al menos uno de A o/y B", o "uno o más de A o/y B", y similares pueden incluir cualquiera y todas las combinaciones de uno o más de los artículos enumerados asociados. Por ejemplo, las expresiones "A o B", "al menos uno de A y B", o "al menos uno de A o B" pueden hacer referencia a todos del caso (1) en el que está incluido al menos un A, el caso (2) en el que está incluido al menos un B, o el caso (3) en el que están incluidos tanto al menos un A y como al menos un B.
Los términos, como "primer", "segundo", y similares utilizados en esta divulgación pueden referirse a componentes correspondientes sin implicar un orden de importancia, y se usan simplemente para distinguir cada componente de los demás sin limitar indebidamente los componentes. Por ejemplo, "un primer dispositivo de usuario" y "un segundo dispositivo de usuario" indican diferentes dispositivos de usuario independientemente del orden o prioridad. En otros ejemplos, sin alejarse del ámbito de la presente divulgación, un primer elemento puede denominarse como un segundo elemento, y de manera similar, un segundo elemento puede denominarse como un primer elemento.
Se entenderá que cuando un elemento (por ejemplo, un primer elemento) se denomina como que está "(de manera operativa o comunicativa) acoplado con/a" o "conectado a" otro elemento (por ejemplo, un segundo elemento), puede estar directamente acoplado con/a o conectado al otro elemento o puede estar presente un elemento intermedio (por ejemplo, un tercer elemento). En contraste, cuando un elemento (por ejemplo, un primer elemento) se denomina como que está "directamente acoplado con/a" o "directamente conectado a" otro elemento (por ejemplo, un segundo elemento), debería entenderse que no hay elemento intermedio (por ejemplo, un tercer elemento).
De acuerdo con la situación, la expresión "configurado para" utilizado en esta divulgación puede ser intercambiable con expresiones como "adecuado para", "que tiene la capacidad de", "diseñado para", "adaptado para", "hecho para" o "capaz de". La expresión "configurado para" no debe significar únicamente "específicamente diseñado para" en hardware. En su lugar, la expresión "un dispositivo configurado para" puede significar que el dispositivo es "capaz de" operar junto con otro dispositivo u otras componentes. Por ejemplo, un "procesador configurado para (o establecido para) realizar A, B, y C" puede significar un procesador especializado (por ejemplo, un procesador embebido) para realizar una correspondiente operación o un procesador de fin genérico (por ejemplo, una unidad de procesamiento central (CPU) o un procesador de aplicación) que realiza correspondientes operaciones ejecutando uno o más programas de software que se almacenan en un dispositivo de memoria.
Las expresiones usadas en esta divulgación se usan para describir realizaciones especificadas y no se pretenden para limitar el ámbito de la presente divulgación. Las expresiones singulares también pueden incluir las expresiones plurales correspondientes a menos que se especifique lo contrario. Todos los términos usados en el presente documento, que incluyen términos técnicos o científicos, pueden tener el mismo significado que el que se entiende generalmente por un experto en la materia. Además, debe entenderse que, cuando corresponda, los términos deben tener sus significados contextuales en la técnica relevante. En algunos casos, incluso si los términos se definen en esta divulgación, no pueden interpretarse para excluir realizaciones de esta divulgación.
Un dispositivo electrónico de acuerdo con diversas realizaciones de esta divulgación puede incluir al menos uno de, por ejemplo, teléfonos inteligentes, ordenadores personales (PC) de tableta, teléfonos móviles, video teléfonos, lectores de libro electrónico, PC de sobremesa, PC portátiles, ordenadores portátiles, estaciones de trabajo, servidores, asistentes digitales personales (PDA), reproductores multimedia portátiles (PMP), reproductores de capa 3 (MP3) de audio del Grupo de Expertos de Imágenes en Movimiento (MPEG-1 o MPEG-2), dispositivos médicos móviles, cámaras, o dispositivos ponibles. De acuerdo con diversas realizaciones, el dispositivo llevable puede incluir el menos uno de un tipo accesorio (por ejemplo, relojes, anillos, pulseras, tobilleras, collares, gafas, lentes de contacto o dispositivos montados en la cabeza (HMD), un tejido o tipo integrado en prenda (por ejemplo, una ropa electrónica), un tipo fijado al cuerpo (por ejemplo, una almohadilla de la piel o tatuajes), o un tipo implantable biológico (por ejemplo, un circuito implantable).
De acuerdo con diversas realizaciones, el dispositivo electrónico puede ser un electrodoméstico. Los electrodomésticos pueden incluir al menos uno de, por ejemplo, televisiones (TV), reproductores de disco versátil digital (DVD), audios, frigoríficos, aires acondicionados, aspiradores, hornos, hornos microondas, lavadoras, depuradores de aire, decodificadores de salón, paneles de control de domótica, paneles de control de seguridad, cajas de TV (por ejemplo, Samsung HomeSync™, Apple TV™, o Google TV™), consolas de juegos (por ejemplo, Xbox™ o Playstation™), diccionarios electrónicos, llaves electrónicas, cámaras de vídeo, marcos de fotos electrónicos, y similares.
De acuerdo con otra realización, un dispositivo electrónico puede incluir al menos uno de diversos dispositivos médicos (por ejemplo, diversos dispositivos de medición médicos portátiles (por ejemplo, un dispositivo de monitorización de glucosa en sangre, un dispositivo de medición de frecuencia cardiaca, un dispositivo de medición de presión sanguínea, un dispositivo de medición de temperatura corporal, y similares), un dispositivo de angiografía de resonancia magnética (MRA), un dispositivo de formación de imágenes por resonancia magnética (MRI), un dispositivo de tomografía computarizada (CT), escáneres y dispositivos ultrasónicos), dispositivos de navegación, Sistema de Satélite de Navegación Global (GNSS), registradores de datos de evento (EDR), registradores de datos de vuelo (FDR), dispositivos de infoentretenimiento de vehículo, equipo electrónico para embarcaciones (por ejemplo, sistemas de navegación y girocompases), aviónica, dispositivos de seguridad, unidades de la cabeza para vehículos, robots industriales o domésticos, cajeros automáticos (ATM), puntos de venta (POS) de tiendas, o del Internet de las Cosas (por ejemplo, bombillas, diversos sensores, contadores eléctricos o de gas, dispositivos rociadores, alarmas de fuego, termostatos, farolas, tostadores, equipo de ejercicio, tanques de agua caliente, calentadores, calderas y similares).
De acuerdo con una realización, el dispositivo electrónico puede incluir al menos una de partes de muebles o edificios/estructuras, paneles electrónicos, dispositivos de recepción de firma electrónica, proyectores, o diversos instrumentos de medición (por ejemplo, contadores de agua, contadores de electricidad, contadores de gas, o contadores de olas, y similares). De acuerdo con diversas realizaciones, el dispositivo electrónico puede ser uno de los dispositivos anteriormente descritos o una combinación de los mismos. Un dispositivo electrónico de acuerdo con una realización puede ser un dispositivo electrónico flexible. Adicionalmente, un dispositivo electrónico de acuerdo con una realización de esta divulgación puede no estar limitado a los dispositivos electrónicos anteriormente descritos y puede incluir otros dispositivos electrónicos y nuevos dispositivos electrónicos de acuerdo con el desarrollo de las tecnologías.
En lo sucesivo, los dispositivos electrónicos de acuerdo con diversas realizaciones se describirán con referencia a los dibujos adjuntos. En esta divulgación, el término "usuario" puede hacer referencia a una persona que usa un dispositivo electrónico o puede hacer referencia a un dispositivo (por ejemplo, un dispositivo electrónico de inteligencia artificial) que usa el dispositivo electrónico.
La Figura 1 ilustra un entorno en el que se realiza una entrada de voz, de acuerdo con una realización.
Con referencia a la Figura 1, un dispositivo 100 electrónico puede obtener datos de voz de un usuario 50. El dispositivo 100 electrónico puede transmitir los datos de voz a un dispositivo 30 externo (por ejemplo, servidor o similar) conectado a través de una red y puede recibir datos de texto, que se convierten a partir de los datos de voz, desde el dispositivo 30 externo. Alternativamente, el dispositivo 100 electrónico puede convertir los datos de voz en datos de texto y puede transmitir los datos de texto convertidos al dispositivo 30 externo.
En consecuencia, el dispositivo 100 electrónico puede obtener la voz del usuario 50 como entrada. El dispositivo 100 electrónico puede realizar reconocimiento de voz en la voz y puede obtener un texto correspondiente a la voz usando el reconocimiento de voz. Por ejemplo, el dispositivo 100 electrónico puede realizar reconocimiento de voz usando un módulo de reconocimiento automático de voz (ASR) en el dispositivo 100 electrónico. Como alternativa, el dispositivo 100 electrónico puede transmitir los datos de voz obtenidos al servidor externo, que proporciona la función ASR. El dispositivo 100 electrónico puede entonces recibir el texto convertido del servidor externo.
Antes de realizar operaciones o funciones adicionales utilizando el texto convertido, el dispositivo 100 electrónico puede proporcionar una interfaz de usuario para que el usuario confirme que el texto convertido se ha convertido correctamente. Mientras se proporciona la interfaz de usuario, el texto convertido puede no estar finalizado, pero puede ser revisado por el usuario 50. En la memoria descriptiva, el período de tiempo desde el momento en que se muestra el texto convertido hasta el momento en que se finaliza el texto puede denominarse "tiempo de espera".
El usuario 50 puede determinar si el texto se ha convertido correctamente durante el tiempo de espera. En el caso de que el texto se haya convertido correctamente, el usuario 50 puede confirmar que el texto convertido es el texto que se utilizará para las operaciones adicionales posteriores. En el caso de que el texto no se haya convertido correctamente, por ejemplo, cuando el reconocimiento de voz introdujo errores, el usuario 50 puede revisar el texto y confirmar que el texto revisado se utilizará para las operaciones adicionales posteriores.
En una realización, la función de entrada de voz del dispositivo 100 electrónico puede usarse para una aplicación de mensaje. La aplicación de mensaje puede significar una aplicación que transmite y recibe un mensaje. El mensaje puede incluir un mensaje de texto, un correo electrónico y un mensaje instantáneo. Por ejemplo, el usuario 50 puede hablar el contenido a transmitir, utilizando la aplicación de mensaje. El dispositivo 100 electrónico puede generar un mensaje a partir del texto convertido del discurso, y puede transmitir el mensaje al dispositivo 30 externo. En este caso, el dispositivo 30 externo puede ser un terminal homólogo que recibe el mensaje o puede ser un dispositivo servidor externo.
En otra realización, la función de entrada de voz del dispositivo 100 electrónico puede usarse para un navegador web. El usuario 50 puede pronunciar el contenido que se introducirá en el navegador web, y el dispositivo 100 electrónico puede introducir el texto convertido del discurso en el navegador web. El texto introducido puede transmitirse al dispositivo 30 externo a través de la red. En este caso, cuando el dispositivo 30 externo es un servidor de motor de búsqueda, se puede transmitir el texto y se puede realizar la búsqueda correspondiente. En otro ejemplo, cuando el dispositivo 30 externo es un servidor de redes sociales, se puede cargar una publicación que incluya el texto introducido.
En lo sucesivo, la realización ejemplar usa entrada de voz para una aplicación de mensaje del dispositivo 100 electrónico. Sin embargo, como se ha descrito anteriormente, la presente divulgación no está limitada a los mismos. En cambio, la función de entrada de voz del dispositivo 100 electrónico puede usarse para todos los casos de uso que requieren entradas de texto.
La Figura 2 es un diagrama de bloques que ilustra un dispositivo electrónico, de acuerdo con una realización;
Haciendo referencia a la Figura 2, el dispositivo 100 electrónico puede incluir un micrófono 110, un visualizador 120, un procesador 130, un circuito 140 de comunicación, y una memoria 150.
El micrófono 110 puede obtener una entrada de voz de un usuario. Por ejemplo, el micrófono 110 puede obtener el habla del usuario como entrada de voz. El micrófono 110 puede realizar una función de cancelación de ruido para mejorar la señal de entrada de voz. Además, el micrófono 110 puede convertir la señal analógica de la entrada de voz en una señal digital. La conversión de la señal puede ser realizada por el procesador 130. La señal digital convertida se puede usar como entrada para procedimientos como ASR, procesamiento de lenguaje natural, etc.
El visualizador 120 puede mostrar la pantalla de ejecución de la aplicación de mensaje y el texto convertido desde la entrada de voz. Además, el visualizador 120 puede mostrar un indicador asociado con el tiempo de espera. El indicador asociado con el tiempo de espera puede ser un artículo de la interfaz de usuario (por ejemplo, ícono, barra de estado o similar) que indica visualmente el tiempo de espera. El usuario puede identificar visualmente el tiempo de espera utilizando el indicador. La visualización del indicador puede cambiar de acuerdo con la duración del tiempo de espera.
El procesador 130 puede estar conectado eléctricamente al micrófono 110, el visualizador 120, el circuito 140 de comunicación y la memoria 150 para que las señales puedan intercambiarse entre estos componentes. El procesador 130 puede controlar las operaciones generales del dispositivo 100 electrónico y los elementos incluidos en el dispositivo 100 electrónico. El procesador 130 puede incluir un microprocesador o cualquier tipo de circuito de procesamiento adecuado, como uno o más procesadores de propósito general (por ejemplo, procesadores basados en ARM), un procesador de señal digital (DSP), un dispositivo lógico programable (PLD), un circuito integrado de aplicación específica (ASIC), una matriz de compuerta programable en campo (FPGA), una unidad de procesamiento gráfico (GPU), un controlador de tarjeta de video, etc. Además, se reconocería que cuando un ordenador de uso general accede al código para implementar el procesamiento que se muestra en su interior, la ejecución del código transforma el ordenador de propósito general en un ordenador de propósito especial para ejecutar el procesamiento que se muestra en el presente documento. Cualquiera de las funciones y etapas proporcionadas en las figuras puede implementarse en hardware, software o una combinación de ambos y pueden realizarse en su totalidad o en parte dentro de las instrucciones programadas de un ordenador. Además, un artesano entiende y aprecia que un "procesador" o "microprocesador" puede ser hardware en la divulgación reivindicada.
El circuito 140 de comunicación puede transmitir datos a un dispositivo externo y puede recibir los datos del dispositivo externo. Por ejemplo, cuando se transmite un mensaje al dispositivo externo a través de la aplicación de mensajes, el dispositivo 100 electrónico puede usar el circuito 140 de comunicación.
En una realización, la memoria 150 puede almacenar la aplicación de mensaje, es decir, almacenar el código del programa/instrucciones de la aplicación de mensaje. Además, las instrucciones para implementar varios otros módulos/funciones pueden almacenarse en la memoria 150. El procesador 130 puede implementar módulos/funciones ejecutando las instrucciones almacenadas en la memoria 150.
La Figura 3 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo con una realización de la presente divulgación. El procedimiento de la Figura 3 puede realizarse mediante el dispositivo 100 electrónico ilustrado en la Figura 2. De aquí en adelante, para conveniencia de la descripción, el procedimiento de la figura 3 se describirá con referencia a un procedimiento en el que el dispositivo 100 electrónico procesa una entrada de voz para una aplicación de mensaje.
De acuerdo con una realización, el procesador 130 del dispositivo 100 electrónico puede emitir la pantalla de ejecución de la aplicación de mensajes almacenada en la memoria 150, a través del visualizador 120. La pantalla de ejecución ejemplar se describirá con referencia a la Figura 9.
En la operación 310, el procesador 130 del dispositivo 100 electrónico puede obtener datos de voz de un usuario a través del micrófono 110. Por ejemplo, cuando el usuario 50 habla hacia el micrófono 110, que está expuesto al exterior del dispositivo 100 electrónico, el micrófono 110 puede capturar una señal de voz, y el dispositivo 100 electrónico puede obtener los datos de voz, incluida la señal de voz.
En la operación 320, el procesador 130 del dispositivo 100 electrónico puede mostrar el texto convertido de los datos de voz en la pantalla de ejecución. Al mostrar el texto convertido en la pantalla de ejecución, el dispositivo 100 electrónico puede permitir al usuario 50 confirmar la conversión.
En una realización, el dispositivo 100 electrónico puede convertir la señal de voz del usuario 50 en texto usando un módulo ASR. Como alternativa, el dispositivo 100 electrónico puede transmitir datos de voz a un servidor externo a través del circuito 140 de comunicación. El servidor externo puede recibir los datos de voz y puede realizar el reconocimiento de voz en los datos de voz recibidos para generar texto. El servidor externo puede transmitir el texto al dispositivo 100 electrónico.
En la operación 330, el procesador 130 del dispositivo 100 electrónico puede mostrar un indicador asociado con el tiempo de espera en la pantalla de ejecución de la aplicación de mensaje. La duración del tiempo de espera puede determinarse basándose en al menos uno del tiempo de adquisición de los datos de voz y la longitud del texto convertido de los datos de voz.
El tiempo de adquisición de los datos de voz significa el período de tiempo total desde un punto en el tiempo cuando se inicia la entrada de datos de voz hasta que finaliza la entrada de voz. Esto puede ser igual o proporcional al tiempo total de conversación del usuario 50.
Puesto que la cantidad de texto convertido es probablemente mayor cuando el tiempo total de conversación es más largo, el dispositivo 100 electrónico puede determinar correspondientemente que la duración del tiempo de espera sea mayor. Por ejemplo, cuando el tiempo de conversación es de 5 segundos, el dispositivo 100 electrónico puede determinar que el tiempo de espera es de 5 segundos; cuando el tiempo de conversación es de 10 segundos, el dispositivo 100 electrónico puede determinar que el tiempo de espera es de 10 segundos. En otra realización, cuando el tiempo de conversación es de 4 segundos, el dispositivo 100 electrónico puede proporcionar un tiempo de espera de 3 segundos; cuando el tiempo de conversación es de 3 segundos, el dispositivo 100 electrónico puede proporcionar un tiempo de espera de 2,25 segundos.
La longitud del texto puede significar el número de caracteres incluidos en el texto convertido. Como el usuario requiere más tiempo para examinar una mayor cantidad de texto, el dispositivo 100 electrónico puede determinar que el tiempo de espera sea más largo. Por ejemplo, cuando el texto convertido es de 60 caracteres, el dispositivo 100 electrónico puede determinar que el tiempo de espera es de 10 segundos; cuando el texto convertido es de 10 caracteres, el dispositivo 100 electrónico puede determinar que el tiempo de espera es de 3 segundos.
En otra realización, el tiempo de espera puede determinarse basándose tanto al tiempo de adquisición de los datos de voz como en la longitud del texto. Por ejemplo, cuando la velocidad del habla del usuario 50 es lenta, el tiempo del habla será largo, aunque el número de caracteres hablados sea pequeño. En consecuencia, en consideración de los dos factores, el dispositivo 100 electrónico puede determinar el tiempo de espera basándose en el número de caracteres hablados por hora generada.
En otra realización, el tiempo de espera puede determinarse basándose en el contenido del habla. Por ejemplo, cuando se repiten los mismos caracteres en el contenido de voz, el dispositivo 100 electrónico puede determinar que el tiempo de espera es relativamente más corto, aunque la longitud del texto y el tiempo de adquisición de los datos de voz sean relativamente mayores. En consecuencia, el dispositivo 100 electrónico puede determinar el tiempo de espera basándose en la longitud del texto y el tiempo de conversación; el tiempo de adquisición de los datos de voz y el contenido del habla, etc.
En la operación 340, el procesador 130 del dispositivo 100 electrónico puede determinar si ha transcurrido el tiempo de espera determinado. Cuando transcurre el tiempo de espera, en la operación 350, el procesador 130 del dispositivo 100 electrónico, mientras ejecuta la aplicación de mensaje, puede transmitir el texto convertido a través del circuito 140 de comunicación a un dispositivo externo. Por lo tanto, cuando transcurre el tiempo de espera, el dispositivo 100 electrónico puede suponer que el usuario 50 ha completado la confirmación o revisión del texto convertido.
La Figura 4 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo con otra realización de la presente divulgación. El procedimiento de la Figura 4 puede realizarse mediante el dispositivo 100 electrónico ilustrado en la Figura 2.
La operación 410 a la operación 430 puede corresponder a la operación 310 a la operación 330 descrita en la Figura 3. De aquí en adelante, se omite su descripción duplicada.
En la operación 440, el procesador 130 del dispositivo 100 electrónico puede cambiar el indicador visualizado. El indicador ejemplar se describirá a continuación con referencia a las Figuras 7 y 8.
En una realización, el procesador 130 del dispositivo 100 electrónico puede cambiar el indicador dependiendo de la duración determinada del tiempo de espera. Por ejemplo, mientras los datos de voz se obtienen del usuario 50, el procesador 130 puede determinar el tiempo de espera en tiempo real y puede cambiar el indicador dependiendo del tiempo de espera determinado.
Por lo tanto, el indicador puede cambiarse para indicar la duración del tiempo de espera, y puede proporcionar una indicación visual del tiempo de espera al usuario 50. Por ejemplo, a medida que aumenta el tiempo de conversación o aumenta la longitud del texto convertido, se puede determinar que el tiempo de espera es más largo. El usuario 50 puede ver la duración del tiempo de espera determinado a través del indicador. Un ejemplo del mismo se describirá a continuación con referencia a 710a en la Figura 7.
En la operación 450, el procesador 130 del dispositivo 100 electrónico puede determinar si ha transcurrido el tiempo de espera determinado.
En el caso en que no transcurra el tiempo de espera, en la operación 440, el procesador 130 del dispositivo 100 electrónico puede cambiar el indicador a medida que transcurre el tiempo de espera determinado. Por lo tanto, el procesador 130 del dispositivo 100 electrónico puede proporcionar visualmente información sobre el tiempo de espera restante a través del indicador.
En una realización, cuando se termina la voz del usuario 50, el dispositivo 100 electrónico puede terminar la adquisición de datos de voz y determinar la duración del tiempo de espera. El tiempo de espera comienza a correr. Mientras transcurre el tiempo de espera determinado, el dispositivo 100 electrónico puede cambiar el indicador para transmitir visualmente información sobre el tiempo de espera restante al usuario 50. Un ejemplo del mismo se describirá a continuación con referencia a 710c en la Figura 7.
En una realización, mientras transcurre el tiempo de espera determinado, el usuario 50 puede confirmar o revisar el texto convertido. El usuario 50 puede ver el tiempo de espera restante a través del indicador y puede confirmar o revisar el texto convertido dentro del tiempo de espera.
Además, mientras transcurre el tiempo de espera determinado, al recibir una entrada de revisión asociada con el texto convertido, el procesador 130 del dispositivo 100 electrónico puede revisar el texto convertido en respuesta. Aunque dicha operación de revisión de texto no se ilustra, la operación de revisión de texto puede realizarse entre la operación 440 y la operación 450.
En el caso de que transcurra el tiempo de espera en la operación 450, en la operación 460, el texto puede transmitirse a un dispositivo externo. En el caso de que se revise el texto, el texto revisado puede transmitirse al dispositivo externo; en el caso de que el texto no se revise, el texto convertido de los datos de voz puede transmitirse al dispositivo externo.
La Figura 5 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo con otra realización más de la presente divulgación. El procedimiento de la Figura 5 puede realizarse mediante el dispositivo 100 electrónico ilustrado en la Figura 2.
En la operación 510, el procesador 130 del dispositivo 100 electrónico puede obtener datos de voz y puede determinar un tiempo de espera. Por ejemplo, el tiempo de espera puede ser el último tiempo de espera calculado antes de que finalice la adquisición de los datos de voz, o el tiempo de espera puede calcularse en tiempo real a medida que se reciben los datos de voz. En consecuencia, la duración del tiempo de espera puede revisarse después de que finalice la adquisición de los datos de voz, o puede realizarse en tiempo real.
En la operación 520 y la operación 530, el procesador 130 del dispositivo 100 electrónico puede detectar respectivamente las ocurrencias de un primer evento y un segundo evento, mientras transcurre el tiempo de espera.
El primer evento puede significar un evento en el que el texto a introducir es confirmado por el usuario 50. El texto a introducir puede ser texto convertido de los datos de voz o puede ser texto revisado por el usuario 50. En una realización, cuando el primer evento ocurre antes de que transcurra el tiempo de espera, el procesador 130 del dispositivo 100 electrónico puede transmitir el texto determinado a un dispositivo externo.
El dispositivo 100 electrónico puede proporcionar al usuario 50 una interfaz para generar el primer evento, y el usuario 50 puede generar el primer evento a través de la interfaz. Antes de que transcurra el tiempo de espera determinado, el usuario 50 puede completar la confirmación y la revisión del texto convertido de voz. En este caso, el usuario 50 puede finalizar el texto a introducir y puede transmitir el texto a introducir, al dispositivo externo, generando el primer evento.
El segundo evento puede significar un evento que detiene el tiempo de espera. En una realización, cuando el segundo evento ocurre antes de que transcurra el tiempo de espera determinado, el procesador 130 del dispositivo 100 electrónico puede pausar el tiempo de espera.
El dispositivo 100 electrónico puede proporcionar al usuario 50 una interfaz para generar el segundo evento, y el usuario 50 puede generar el segundo evento a través de la interfaz. En el caso de que tarde más tiempo que el tiempo de espera para confirmar y revisar el texto, el usuario 50 puede pausar el tiempo de espera. Como tal, el usuario 50 puede retrasar la confirmación del texto a introducir.
En una realización, el registro de ocurrencia del primer evento y el registro de ocurrencia del segundo evento pueden almacenarse en la memoria 150 del dispositivo 100 electrónico. El registro de ocurrencia del primer evento y el registro de ocurrencia del segundo evento pueden usarse cuando se determina la duración de los tiempos de espera subsiguientes. Los detalles de los mismos se describirán a continuación con referencia a la Figura 6.
Cuando ocurre el primer evento, en la operación 522, el procesador 130 del dispositivo 100 electrónico puede almacenar datos asociados con el primer evento en el registro de ocurrencia del primer evento.
En la operación 524, el procesador 130 del dispositivo 100 electrónico puede transmitir el texto confirmado para ser introducido a un dispositivo externo.
Cuando ocurre el segundo evento, en la operación 532, el procesador 130 del dispositivo 100 electrónico puede almacenar datos asociados con el segundo evento en el registro de ocurrencia del segundo evento; en la operación 534, el procesador 130 del dispositivo 100 electrónico puede pausar el tiempo de espera. Cuando el tiempo de espera está en pausa, el usuario 50 puede confirmar o revisar el texto convertido.
En la operación 536, se puede liberar la pausa del tiempo de espera. Por ejemplo, el usuario 50 puede liberar directamente la pausa a través de una interfaz de usuario particular, o el dispositivo 100 electrónico puede liberar automáticamente la pausa después de un período de tiempo predeterminado.
Cuando se libera la pausa, en la operación 538, el procesador 130 del dispositivo 100 electrónico puede transmitir el texto confirmado para ser introducido a un dispositivo externo.
La Figura 6 es un diagrama de flujo que ilustra un procedimiento para revisar un tiempo de espera, de acuerdo con una realización de la presente divulgación. El procedimiento de la Figura 6 puede realizarse mediante el dispositivo 100 electrónico ilustrado en la Figura 2.
La operación 610 puede corresponder a la operación 510 ilustrada en la Figura 5. Se omite su descripción duplicada.
Cuando se determina un tiempo de espera, en la operación 620a, el procesador 130 del dispositivo 100 electrónico puede disminuir el tiempo de espera determinado utilizando el registro de ocurrencia del primer evento.
En la operación 620b, el procesador 130 del dispositivo 100 electrónico puede aumentar el tiempo de espera determinado utilizando el registro de ocurrencia del segundo evento. El primer registro de ocurrencia de evento y el segundo registro de ocurrencia de evento pueden almacenarse en la memoria 150 del dispositivo 100 electrónico.
El primer evento ocurre cuando el usuario 50 completa la confirmación y la revisión del texto convertido antes de la expiración del tiempo de espera determinado anterior. Como tal, cuando el usuario 50 genera frecuentemente el primer evento, se puede determinar que los tiempos de espera anteriores son demasiado largos. En consecuencia, el dispositivo 100 electrónico puede disminuir la duración del tiempo de espera actual basándose en el primer registro de ocurrencia de evento.
El segundo evento ocurre cuando el usuario 50 requiere más tiempo que los tiempos de espera determinados anteriores para confirmar y revisar el texto convertido. Como tal, cuando el usuario 50 genera frecuentemente el segundo evento, se puede determinar que los tiempos de espera anteriores son demasiado cortos. En consecuencia, el dispositivo 100 electrónico puede aumentar la duración del tiempo de espera actual basándose en el segundo registro de ocurrencia de evento.
Por lo tanto, el dispositivo 100 electrónico puede almacenar el primer registro de ocurrencia de evento y el segundo registro de ocurrencia de evento y puede modificar el tiempo de espera subsiguiente basándose en el primer registro de ocurrencia de evento y el segundo registro de ocurrencia de evento, y puede proporcionar después al usuario 50 el tiempo de espera modificado y personalizado.
En otras palabras, cuando se obtiene la siguiente entrada de voz, el dispositivo 100 electrónico puede modificar el tiempo de espera en función del primer registro de ocurrencia de evento almacenado y el segundo registro de ocurrencia de evento. Como tal, el dispositivo 100 electrónico puede entrenar el tiempo de espera para personalizarlo para el usuario 50 específico.
La Figura 7 ilustra una interfaz de usuario de acuerdo con una realización de la presente divulgación. En particular, se ilustra la interfaz de usuario de una aplicación de mensajes, que transmite y recibe mensajes instantáneos, de acuerdo con una realización de la presente divulgación.
Con referencia a la Figura 7, una interfaz de usuario puede incluir indicadores 710a, 710b y 710c asociados con el tiempo de espera y un área 720 de visualización de texto. La interfaz de usuario puede mostrarse en el visualizador 120 del dispositivo 100 electrónico (por ejemplo, en la pantalla de ejecución de la aplicación de mensaje).
El indicador de acuerdo con una realización puede describirse como dividido en un punto de tiempo (punto de tiempo 'a') cuando comienza la recepción de los datos de voz del usuario 50, un punto de tiempo (punto de tiempo 'b') cuando la recepción del se completan los datos de voz del usuario 50, y se completa un punto de tiempo (punto de tiempo 'c') después de que se completa la determinación del tiempo de espera.
Mientras los datos de voz se obtienen en el punto de tiempo 'a', el indicador 710a puede cambiarse dependiendo de la duración determinada del tiempo de espera.
En una realización, el indicador 710a puede incluir una pluralidad de iconos, y el número de iconos puede ser proporcional al tiempo de espera determinado. Por ejemplo, el procesador 130 del dispositivo 100 electrónico puede mostrar los iconos, cuyo número es proporcional a la duración determinada del tiempo de espera, en la pantalla de ejecución.
El indicador 710a ilustrado puede incluir una pluralidad de iconos circulares. A medida que aumenta el contenido del discurso, por ejemplo, "hola" ^ "hola", "hola cómo" ^ "hola ¿cómo estás?", aumenta el tiempo de espera. En consecuencia, el indicador 710a puede incluir un número cada vez mayor de iconos circulares. El usuario 50 puede ver visualmente que la duración determinada del tiempo de espera está aumentando.
En el punto de tiempo 'b', el indicador 710b puede ser un indicador en un punto de tiempo cuando finaliza la recepción de los datos de voz. Cuando se determina la duración del tiempo de espera y los datos de voz introducidos ya no cambian, el indicador 710b que muestra el tiempo de espera determinado puede mostrarse en el visualizador 120.
En el punto de tiempo 'c', mientras transcurre el tiempo de espera determinado, el indicador 710c puede cambiarse dependiendo del tiempo de espera restante.
En una realización, el indicador 710c puede incluir una pluralidad de iconos, y el número de iconos puede ser proporcional al tiempo de espera restante. Por ejemplo, el procesador 130 del dispositivo 100 electrónico puede mostrar iconos, cuyo número disminuye a medida que transcurre el tiempo de espera, en la pantalla de ejecución.
El indicador 710c ilustrado puede incluir una pluralidad de iconos circulares. Como el tiempo de espera restante disminuye a medida que transcurre el tiempo de espera, la cantidad de iconos circulares incluidos en el indicador 710c puede disminuir. Cuando el tiempo de espera transcurre por completo, el número de iconos circulares puede ser cero y el texto "hola, ¿cómo estás?" visualizado en el área 720 de texto puede transmitirse a un terminal homólogo.
En una realización, la interfaz de usuario en el punto de tiempo 'c' puede incluir además un botón 730c de envío. Antes de que el tiempo de espera transcurra por completo, el usuario 50 puede transmitir el texto visualizado en el área 720 de texto usando el botón 730c de envío. Es decir, antes de que transcurra el tiempo de espera, el usuario puede confirmar el texto del área 720 de texto como el texto a introducir. Por ejemplo, cuando el usuario 50 presiona el botón 730c de envío, el procesador 130 del dispositivo 100 electrónico puede detectar la aparición del primer evento descrito anteriormente en relación con las Figuras 5-6 y puede transmitir el texto a un terminal homólogo.
La Figura 8 ilustra un indicador, de acuerdo con diversas realizaciones de la presente divulgación.
Con referencia a la Figura 8, el indicador puede cambiarse dependiendo del tiempo de espera que se determina cuando se obtienen datos de voz del usuario 50. Como se ilustra en la Figura 8, a medida que aumenta el tiempo de espera, el indicador puede cambiarse en una progresión indicada por las flechas hacia abajo.
De acuerdo con una realización de la presente divulgación, a medida que aumenta la duración del tiempo de espera, puede aumentar el número de círculos concéntricos de un indicador 800a. En otras realizaciones, a medida que aumenta el tiempo de espera, un icono circular incluido en cada uno de los indicadores 800b y 800c puede llenarse con el color distintivo. En otras realizaciones más, a medida que aumenta el tiempo de espera, el número de triángulos del indicador 800d puede aumentar, y la espiral de un indicador 800f puede extenderse.
Cuando se completa la determinación del tiempo de espera, el tiempo de espera comienza a correr y la duración disminuye. Mientras esto ocurre, cada uno de los indicadores 800a a 800f cambia en la dirección indicada por la flecha hacia arriba.
Por lo tanto, el usuario 50 puede ver visualmente a través de los indicadores 800a-800f cómo aumenta y disminuye el tiempo de espera. El usuario 50 puede ver cuánto aumenta el tiempo de espera y puede ajustar la cantidad de entrada de voz. Además, a medida que el usuario 50 ve que el tiempo de espera está disminuyendo, puede darse prisa para confirmar o revisar el texto convertido o puede pausar el tiempo de espera.
La Figura 9 ilustra una pantalla de ejecución de una aplicación de mensaje, de acuerdo con una realización de la presente divulgación. En particular, se ilustra la pantalla de ejecución de una aplicación de mensaje, que transmite y recibe un mensaje instantáneo, de acuerdo con una realización de la presente divulgación.
Con referencia a la Figura 9, un escenario en el que se realiza una entrada de voz en una aplicación de mensaje se describe como un ejemplo.
En la pantalla 'a', el usuario 50 recibe un mensaje de una contraparte que dice "Hola, salgamos esta noche". El usuario 50 luego desea introducir una respuesta usando la entrada de voz. Por ejemplo, el usuario 50 puede decir "¿dónde vamos?" El dispositivo 100 electrónico puede obtener datos de voz mientras el usuario 50 habla. Mientras continúa el discurso, la duración del tiempo de espera puede determinarse en tiempo real, y un indicador 920a puede cambiarse dependiendo de la duración determinada del tiempo de espera. La voz hablada puede convertirse en texto y el texto puede mostrarse en un área 930a de texto.
En la pantalla 'b', se puede terminar el discurso del usuario 50, y se puede completar la determinación de la duración del tiempo de espera. Se puede cambiar un indicador 920b a medida que transcurre el tiempo de espera determinado.
En una realización, el usuario 50 puede hacer que el texto visualizado se transmita al terminal homólogo antes de que transcurra el tiempo de espera. En este caso, el dispositivo 100 electrónico puede detectar la aparición del primer evento mencionado anteriormente.
Por ejemplo, el procesador 130 del dispositivo 100 electrónico puede mostrar un primer icono en la pantalla de ejecución de la aplicación de mensaje. Cuando se introduce un gesto táctil asociado con el primer icono, el procesador 130 del dispositivo 100 electrónico puede detectar la aparición del primer evento.
En el ejemplo de la pantalla 'b', el icono 940b puede ser el primer icono. El usuario 50 puede tocar el icono 940b antes de que transcurra el tiempo de espera para transmitir un texto visualizado en el área 930b de texto al terminal homólogo. Cuando se completa la transmisión, como se muestra en la pantalla 'c', el texto transmitido 950c puede mostrarse en la pantalla de ejecución.
En otro ejemplo, cuando se ingresan datos de voz predeterminados, el procesador 130 del dispositivo 100 electrónico puede detectar la aparición del primer evento.
En la pantalla 'b', el usuario 50 puede pronunciar una oración predeterminada para transmitir el texto (910b). Cuando se obtienen datos de voz correspondientes al texto predeterminado, se puede determinar que es un comando de transmisión de texto. En consecuencia, el dispositivo 100 electrónico puede transmitir el texto visualizado al terminal homólogo.
En una realización, antes de que transcurra el tiempo de espera, el usuario 50 puede pausar el tiempo de espera. En este caso, el dispositivo 100 electrónico puede detectar la aparición del segundo evento descrito en la Figura 5.
Por ejemplo, cuando se ingresa un gesto táctil asociado con el área 930b de texto visualizada, el procesador 130 del dispositivo 100 electrónico puede detectar la ocurrencia del segundo evento.
En otro ejemplo, cuando se ingresan otros datos de voz predeterminados, el procesador 130 del dispositivo 100 electrónico puede detectar la ocurrencia del segundo evento. Los datos de voz correspondientes al texto predeterminado pueden determinarse como un comando para pausar el tiempo de espera. Los datos de voz correspondientes al comando para pausar el tiempo de espera pueden ser diferentes de los datos de voz correspondientes al comando de transmisión.
En otro ejemplo más, el procesador 130 del dispositivo 100 electrónico puede mostrar un segundo icono (no ilustrado) diferente del primer icono, en la pantalla de ejecución. Cuando se introduce un gesto táctil asociado con el segundo icono, el procesador 130 del dispositivo 100 electrónico puede detectar la aparición del segundo evento.
En una realización, mientras transcurre el tiempo de espera, el usuario 50 puede revisar el texto convertido. Por ejemplo, cuando se introduce un gesto táctil asociado con el área 930b de texto visualizada en la pantalla de ejecución, el procesador 130 del dispositivo 100 electrónico puede esperar una entrada de revisión asociada con el texto visualizado.
En la pantalla 'b', el usuario 50 puede ver el área 930b de texto durante el tiempo de espera y puede ver que su entrada de voz se convirtió incorrectamente a "¿dónde ir?" Con el fin de revisar el texto, el usuario 50 puede tocar el área 930b de texto en la que "¿dónde ir?" se visualiza. El usuario 50 puede entonces revisar "¿dónde ir?" a "¿dónde vamos?" En la pantalla 'c', "¿dónde vamos?" entonces se puede transmitir.
En una realización, mientras transcurre el tiempo de espera, el usuario 50 puede cancelar la entrada de texto. Por ejemplo, el procesador 130 del dispositivo 100 electrónico puede mostrar un tercer icono en la pantalla de ejecución. Cuando se ingresa un gesto táctil asociado con el tercer icono, el procesador 130 del dispositivo 100 electrónico puede cancelar la entrada del texto convertido.
Aunque el tercer icono no está ilustrado, la pantalla de ejecución puede incluir un tercer icono para cancelar una entrada de texto. Por ejemplo, el usuario 50 puede cancelar la entrada de texto tocando el tercer icono.
La Figura 10 es un diagrama de flujo que ilustra un procedimiento para proporcionar un tiempo de espera asociado con una entrada de voz, de acuerdo otra realización adicional. El procedimiento de la Figura 10 puede realizarse mediante el dispositivo 100 electrónico ilustrado en la Figura 2.
La operación 1010 a la operación 1050 puede corresponder a la operación 310 a la operación 350 en la Figura 3. Además, el procedimiento puede aplicarse a todos los programas de aplicación que requieren una entrada de texto.
En una realización, cuando se obtienen datos de voz del usuario 50 en la operación 1010, el dispositivo 100 electrónico puede mostrar el texto convertido a partir de los datos de voz, en el visualizador 120 en la operación 1020. Por ejemplo, el texto convertido puede mostrarse en la pantalla de ejecución de un programa de aplicación, como una aplicación de mensaje. En una realización, en la operación 1030, el dispositivo 100 electrónico puede mostrar un indicador asociado con un tiempo de espera determinado basándose en el texto convertido, en el visualizador 120. En la operación 1040, el dispositivo 100 electrónico puede determinar si transcurre el tiempo de espera. Cuando transcurre el tiempo de espera, en la operación 1050, el dispositivo 100 electrónico puede determinar el texto a introducir.
En la operación 1050, el dispositivo 100 electrónico puede determinar el texto a introducir en el programa de aplicación. Por ejemplo, el texto a introducir puede ser el texto convertido de los datos de voz o puede ser un texto revisado del texto convertido.
En otra realización, el dispositivo 100 electrónico puede modificar el tiempo de espera determinado mediante el uso de los datos almacenados previamente. Como se ha descrito anteriormente en la Figura 6, el dispositivo 100 electrónico puede modificar el tiempo de espera determinado para personalizarlo para el usuario 50 específico. Por ejemplo, cuando el usuario 50 determina el texto a introducir antes de que transcurra el tiempo de espera o cuando el usuario 50 pausa el tiempo de espera, estos eventos pueden registrarse y almacenarse como datos.
El dispositivo 100 electrónico también puede determinar tentativamente la duración del tiempo de espera y luego modificar el tiempo de espera utilizando los datos almacenados previamente. Por ejemplo, los datos almacenados previamente pueden incluir un primer registro de ocurrencia de evento y un segundo registro de ocurrencia de evento, como se describió anteriormente en relación con las Figuras 5-6. Como tal, el dispositivo 100 electrónico puede personalizar el tiempo de espera para usuarios individuales.
La Figura 11 es un diagrama de bloques que ilustra un dispositivo 1101 electrónico en un entorno 1100 de red, de acuerdo con una realización. De acuerdo con una realización desvelada en la presente divulgación, el dispositivo 1101 electrónico puede incluir varios tipos de dispositivos. Por ejemplo, el dispositivo 1101 electrónico puede incluir al menos uno de un dispositivo de comunicación portátil (por ejemplo, un teléfono inteligente), un dispositivo informático (por ejemplo, un asistente digital personal (PDA), ordenadores de tableta personal (PC), un ordenador portátil, un PC de escritorio, una estación de trabajo o un servidor), un dispositivo multimedia portátil (por ejemplo, un lector de libros electrónicos o un reproductor de MP3), un dispositivo médico portátil (por ejemplo, frecuencia cardíaca, glucosa en sangre, presión arterial o un termómetro), una cámara o un dispositivo portátil. Un dispositivo portátil puede incluir al menos uno de un tipo de accesorio de un dispositivo (por ejemplo, un reloj, un anillo, un brazalete, una tobillera, un collar, gafas, una lente de contacto o un dispositivo montado en la cabeza (HMD)), un tipo de tejido o ropa de una pieza de un dispositivo (por ejemplo, ropa electrónica), un tipo de dispositivo sujeto al cuerpo (por ejemplo, una almohadilla para la piel o un tatuaje), o un circuito bioimplantable. De acuerdo con las realizaciones, el dispositivo electrónico puede incluir al menos uno de, por ejemplo, televisores (TV), reproductores de discos digitales versátiles (DVD), dispositivos de audio, dispositivos accesorios de audio (por ejemplo, un altavoz, un auricular o un auricular), un refrigerador, un aire acondicionado, un limpiador, un horno, un horno microondas, una lavadora, un depurador de aire, un decodificador, un panel de control de automatización del hogar, un panel de control de seguridad, una consola de juegos, un diccionario electrónico, una llave electrónica, una videocámara o un marco de imagen electrónico.
De acuerdo con otra realización, el dispositivo electrónico puede incluir al menos uno de un dispositivo de navegación, un sistema global de navegación por satélite (GNSS), un registrador de datos de eventos (EDR) (por ejemplo, una caja negra para un automóvil, un barco o un avión), un dispositivo de información y entretenimiento del vehículo (por ejemplo, una pantalla frontal para un vehículo), un robot industrial o doméstico, un dron, un cajero automático (ATM), un dispositivo de punto de venta (POS), un dispositivo de medición (por ejemplo, un medidor de agua, un medidor de electricidad o un medidor de gas), o Internet de cosas (por ejemplo, una bombilla, un dispositivo de rociadores, una alarma contra incendios, un termostato o una farola). De acuerdo con una realización de la divulgación, el dispositivo electrónico no está limitado a los dispositivos descritos anteriormente. Por ejemplo, de forma similar a un teléfono inteligente que tiene la función de medir bioinformación personal (por ejemplo, un ritmo cardíaco o glucosa en sangre), el dispositivo electrónico puede proporcionar funciones de múltiples dispositivos de manera compleja. En la presente divulgación, el término "usuario" como se usa en el presente documento puede hacer referencia a una persona que usa un dispositivo electrónico o puede hacer referencia a un dispositivo (por ejemplo, un dispositivo electrónico de inteligencia artificial) que usa el dispositivo electrónico.
Con referencia a la Figura 11, bajo el entorno 1100 de red, el dispositivo 1101 electrónico (por ejemplo, el dispositivo 100 electrónico de la Figura 2) puede comunicarse con un dispositivo 1102 electrónico a través de la comunicación 1198 inalámbrica local o puede comunicarse con un dispositivo 1104 electrónico o un servidor 1108 a través de una red 1199. De acuerdo con una realización, el dispositivo 1101 electrónico puede comunicarse con el dispositivo 1104 electrónico a través del servidor 1108.
De acuerdo con una realización, el dispositivo 1101 electrónico puede incluir un bus 1110, un procesador 1120 (por ejemplo, el procesador 130 de la Figura 2) una memoria 1130, un dispositivo 1150 de entrada (por ejemplo, un micrófono o un mouse), un visualizador 1160, un módulo 1170 de audio, un módulo 1176 de sensor, una interfaz 1177, un módulo 1179 háptico, un módulo 1180 de cámara, un módulo 1188 de gestión de energía, una batería 1189, un módulo 1190 de comunicación y un módulo 1196 de identificación de abonado. De acuerdo con una realización, el dispositivo 1101 electrónico puede no incluir al menos uno (por ejemplo, el visualizador 1160 o el módulo 1180 de cámara) de los elementos descritos anteriormente o puede incluir además otro u otros elementos.
Por ejemplo, el bus 1110 puede interconectar los elementos 1120 a 1190 anteriormente descritos y puede incluir un circuito para transportar señales (por ejemplo, un mensaje de control y/o datos) entre los componentes anteriormente descritos.
El procesador 1120 puede incluir una o más de una unidad central de procesamiento (CPU), un procesador de aplicaciones (AP), una unidad de procesamiento gráfico (GPU), un procesador de señal de imagen (ISP) de una cámara o un procesador de comunicación (CP). De acuerdo con una realización, el procesador 1120 puede implementarse con un sistema en chip (SoC) o un sistema en paquete (SiP). Por ejemplo, el procesador 1120 puede controlar un sistema operativo (SO) o una aplicación para controlar al menos uno de otro elemento (por ejemplo, elemento de hardware o software) conectado al procesador 1120 y puede procesar y calcular diversos datos. El procesador 1120 puede cargar un comando o datos, que se reciben de al menos uno de otros elementos (por ejemplo, el módulo 1190 de comunicación), en una memoria 1132 volátil para procesar el comando o los datos y puede almacenar los datos del resultado del procedimiento en una memoria 1134 no volátil.
La memoria 1130 puede incluir, por ejemplo, la memoria 1132 volátil o la memoria 1134 no volátil. La memoria 1132 volátil puede incluir, por ejemplo, una memoria de acceso aleatorio (RAM) (por ejemplo, una RAM dinámica (DRAM), una RAM estática (Sr a M) o una RAM dinámica síncrona (SDRAM). La memoria 1134 no volátil puede incluir, por ejemplo, una memoria de solo lectura programable (OTPROM), una memoria de solo lectura programable (PROM), una memoria de solo lectura programable borrable (EPROM), una memoria de solo lectura programable y borrable eléctricamente (EEPROM), una ROM de máscara, una ROM flash, una memoria flash, una unidad de disco duro o una unidad de estado sólido (SSD). Además, la memoria 1134 no volátil puede configurarse en forma de una memoria 1136 interna o en forma de una memoria 1138 externa que está disponible a través de la conexión solo si es necesario, de acuerdo con la conexión con el dispositivo 1101 electrónico. La memoria 1138 externa puede incluir adicionalmente una unidad flash tal como compact flash (CF), secure digital (SD), micro secure digital (Micro-SD), mini secure digital (Mini-SD), extreme digital (xD), una tarjeta multimedia (MMC), un lápiz de memoria. La memoria 1138 externa puede estar conectada operativa o físicamente con el dispositivo 1101 electrónico de manera cableada (por ejemplo, un cable o un bus serie universal (USB)) o de manera inalámbrica (por ejemplo, Bluetooth).
Por ejemplo, la memoria 1130 puede almacenar, por ejemplo, al menos un elemento de software diferente, tal como una instrucción o datos asociados con el programa 1140, del dispositivo 1101 electrónico. El programa 1140 puede incluir, por ejemplo, un núcleo 1141, una biblioteca 1143, un marco de aplicación 1145 o un programa 1147 de aplicación (indistintamente, "aplicación").
El dispositivo 1150 de entrada puede incluir un micrófono, un ratón o un teclado. De acuerdo con una realización, el teclado puede incluir un teclado conectado físicamente o un teclado visualizado virtualmente a través del visualizador 1160.
El visualizador 1160 puede incluir una pantalla, un dispositivo de holograma o un proyector, y un circuito de control para controlar un dispositivo relevante. La pantalla puede incluir, por ejemplo, una pantalla de cristal líquido (LCD), un visualizador de diodo de emisión de luz (LED), un visualizador de LED orgánico (OLED), visualizador de sistemas microelectromecánicos (MEMS), o un visualizador de papel electrónico. De acuerdo con una realización, la pantalla puede implementarse de manera flexible, transparente o portátil. La pantalla puede incluir un circuito táctil, que puede detectar la entrada de un usuario, como una entrada de gestos, una entrada de proximidad o una entrada flotante o un sensor de presión (indistintamente, un sensor de fuerza) que puede medir la intensidad de presión por el toque. El circuito táctil o el sensor de presión pueden implementarse integralmente con la pantalla o pueden implementarse con al menos un sensor por separado de la pantalla. El dispositivo de hologramas puede mostrar una imagen estereoscópica en un espacio usando interferencias de la luz. El proyector puede proyectar luz sobre una pantalla para mostrar una imagen. La pantalla puede estar ubicada dentro o fuera del dispositivo 1101 electrónico.
El módulo 1170 de audio puede convertir, por ejemplo, de un sonido a una señal eléctrica o de una señal eléctrica al sonido. De acuerdo con una realización, el módulo 1170 de audio puede adquirir sonido a través del dispositivo 1150 de entrada (por ejemplo, un micrófono) o puede emitir sonido a través de un dispositivo de salida (no ilustrado) (por ejemplo, un altavoz o un receptor) incluido en el dispositivo 1101 electrónico, un dispositivo electrónico externo (por ejemplo, el dispositivo 1102 electrónico (por ejemplo, un altavoz inalámbrico o un auricular inalámbrico) o un dispositivo 1106 electrónico (por ejemplo, un altavoz con cable o un auricular con cable) conectado con el dispositivo 1101 electrónico.
El módulo 1176 de sensor puede medir o detectar, por ejemplo, un estado operativo interno (por ejemplo, potencia o temperatura) o un estado del entorno externo (por ejemplo, altitud, humedad o brillo) del dispositivo 1101 electrónico para generar una señal eléctrica o un valor de datos correspondiente a la información del estado medido o el estado detectado. El módulo 1176 de sensor puede incluir, por ejemplo, al menos uno de un sensor de gestos, un sensor giroscópico, un sensor de presión barométrica, un sensor magnético, un sensor de aceleración, un sensor de agarre, un sensor de proximidad, un sensor de color (por ejemplo, un sensor rojo, verde, azul (RGB)), un sensor infrarrojo, un sensor biométrico (por ejemplo, un sensor de iris, un sensor de huellas digitales, un sensor de monitorización de la frecuencia cardíaca (HRM), un sensor de nariz electrónica, un sensor de electromiografía (EMG), un sensor de electroencefalograma (EEG), un sensor de electrocardiograma (ECG), un sensor de temperatura, un sensor de humedad, un sensor de iluminancia o un sensor UV. El módulo 1176 de sensor puede incluir además un circuito de control para controlar al menos uno o más sensores incluidos en el mismo. De acuerdo con una realización, el dispositivo 1101 electrónico puede controlar el módulo 1176 de sensor usando el procesador 1120 o un procesador (por ejemplo, un concentrador de sensor) separado del procesador 1120. En el caso de que se use el procesador separado (por ejemplo, un concentrador de sensor), mientras el procesador 1120 está en estado de suspensión, el dispositivo 1101 electrónico puede controlar al menos parte de la operación o el estado del módulo 1176 de sensor por la operación del procesador separado sin despertar el procesador 1120.
De acuerdo con una realización, la interfaz 1177 puede incluir una interfaz multimedia de alta definición (HDMI), un bus serie universal (USB), una interfaz óptica, un estándar recomendado 232 (RS-232), una D-subminiatura (D-sub), una interfaz de enlace de alta definición móvil (MHL), una tarjeta SD/interfaz MMC o una interfaz de audio. Un conector 1178 puede conectar físicamente el dispositivo 1101 electrónico y el dispositivo 1106 electrónico. De acuerdo con una realización, el conector 1178 puede incluir, por ejemplo, un conector USB, un conector de tarjeta SD/MMC o un conector de audio (por ejemplo, un conector de auriculares).
El módulo 1179 háptico puede convertir una señal eléctrica en estimulación mecánica (por ejemplo, vibración o movimiento) o en estimulación eléctrica. Por ejemplo, el módulo 1179 háptico puede aplicar estimulación táctil o kinestésica a un usuario. El módulo 1179 háptico puede incluir, por ejemplo, un motor, un elemento piezoeléctrico o un estimulador eléctrico.
El módulo 1180 de cámara puede capturar, por ejemplo, una imagen fija y una imagen en movimiento. De acuerdo con una realización, el módulo 1180 de cámara puede incluir al menos un objetivo (por ejemplo, un objetivo gran angular y un teleobjetivo, o un objetivo frontal y un objetivo posterior), un sensor de imagen, un procesador de señal de imagen o un flash (por ejemplo, un diodo emisor de luz o una lámpara de xenón).
El módulo 1188 de gestión de energía, que es para administrar la energía del dispositivo 1101 electrónico, puede constituir al menos una parte de un circuito integrado de gestión de energía (PMIC).
La batería 1189 puede incluir una celda primaria, una celda secundaria o una celda de combustible y puede recargarse mediante una fuente de energía externa para suministrar energía al menos a un elemento del dispositivo 1101 electrónico.
El módulo 1190 de comunicación puede establecer un canal de comunicación entre el dispositivo 1101 electrónico y un dispositivo externo (por ejemplo, el primer dispositivo 1102 electrónico externo, el segundo dispositivo 1104 electrónico externo o el servidor 1108). El módulo 1190 de comunicación puede soportar comunicación por cable o comunicación inalámbrica a través del canal de comunicación establecido. De acuerdo con una realización, el módulo 1190 de comunicación puede incluir un módulo 1192 de comunicación inalámbrica o un módulo 1194 de comunicación por cable. El módulo 1190 de comunicación puede comunicarse con el dispositivo externo a través de una primera red 1198 (por ejemplo, una red inalámbrica de área local como Bluetooth o asociación de datos infrarrojos (IrDA)) o una segunda red 1199 (por ejemplo, una red inalámbrica de área amplia como una celular red) a través de un módulo relevante entre el módulo 1192 de comunicación inalámbrica o el módulo 1194 de comunicación por cable.
El módulo 1192 de comunicación inalámbrica puede soportar, por ejemplo, comunicación celular, comunicación inalámbrica local y comunicación del sistema global de navegación por satélite (GNSS). La comunicación celular puede incluir, por ejemplo, evolución a largo plazo (LTE), LTE avanzada (LTE-A), acceso múltiple por división de código (CDMA), CDMA de banda ancha (WCDMA), sistema universal de telecomunicaciones móviles (UMTS), banda ancha inalámbrica (WiBro), o sistema global para comunicaciones móviles (GSM). La comunicación inalámbrica local puede incluir fidelidad inalámbrica (Wi-Fi), Wi-Fi Direct, fidelidad a la luz (Li-Fi), Bluetooth, Bluetooth de baja energía (BLE), Zigbee, comunicación de campo cercano (NFC), transmisión segura magnética (MST) ), radiofrecuencia (RF) o una red de área corporal (BAN). El GNSS puede incluir al menos uno de un sistema de posicionamiento global (GPS), un sistema global de navegación por satélite (Glonass), Beidou Navigation Satellite System (Beidou), el sistema europeo de navegación por satélite global (Galileo), o similares. En la presente divulgación, "GPS" y "GNSS" pueden usarse de manera intercambiable.
De acuerdo con una realización, cuando el módulo 1192 de comunicación inalámbrica admite la comunicación del sótano, el módulo 1192 de comunicación inalámbrica puede, por ejemplo, identificar o autenticar el dispositivo 1101 electrónico dentro de una red de comunicación usando el módulo 1196 de identificación de abonado (por ejemplo, una tarjeta SIM). De acuerdo con una realización, el módulo 1192 de comunicación inalámbrica puede incluir un procesador de comunicación (CP) separado del procesador 2820 (por ejemplo, un procesador de aplicación (AP). En este caso, el procesador de comunicación puede realizar al menos una parte de las funciones asociadas con al menos uno de los elementos 1110 a 1196 del dispositivo 1101 electrónico en sustitución del procesador 1120 cuando el procesador 1120 está en un estado inactivo (suspensión), y junto con el procesador 1120 cuando el procesador 1120 está en un estado activo. De acuerdo con una realización, el módulo 1192 de comunicación inalámbrica puede incluir una pluralidad de módulos de comunicación, cada uno de los cuales solo admite un esquema de comunicación relevante entre la comunicación celular, la comunicación inalámbrica de corto alcance o un esquema de comunicación GNSS.
El módulo 1194 de comunicación por cable puede incluir, por ejemplo, un servicio de red de área local (LAN), una comunicación de línea de alimentación o un servicio telefónico antiguo simple (POTS).
Por ejemplo, la primera red 1198 puede emplear, por ejemplo, Wi-Fi directo o Bluetooth para transmitir o recibir instrucciones o datos a través de una conexión inalámbrica directa entre el dispositivo 1101 electrónico y el primer dispositivo 1102 electrónico externo. La segunda red 1199 puede incluir una red de telecomunicaciones (por ejemplo, una red informática como una LAN o una WAN, Internet o una red telefónica) para transmitir o recibir instrucciones o datos entre el dispositivo 1101 electrónico y el segundo dispositivo 1104 electrónico.
De acuerdo con las realizaciones, las instrucciones o los datos pueden transmitirse o recibirse entre el dispositivo 1101 electrónico y el segundo dispositivo 1104 electrónico externo a través del servidor 1108 conectado con la segunda red. Cada uno del primer y segundo dispositivos 1102 y 1104 electrónicos externos pueden ser un dispositivo cuyo tipo es diferente de o el mismo que el del dispositivo 1101 electrónico. De acuerdo con diversas realizaciones, todas o un parte de las operaciones que el dispositivo 1101 electrónico realizará pueden ejecutarse por otro o una pluralidad de dispositivos electrónicos (por ejemplo, los dispositivos 1102 y 1104 electrónicos o el servidor 1108). De acuerdo con una realización, en el caso en el que el dispositivo 1101 electrónico ejecute cualquier función o servicio automáticamente o en respuesta a una solicitud, el dispositivo 1101 electrónico puede no realizar la función o servicio internamente, pero, puede como alternativa o adicionalmente, transmitir solicitudes para al menos una parte de una función asociada con el dispositivo 1101 electrónico a cualquier otro dispositivo (por ejemplo, el dispositivo 1102 o 1104 electrónico o el servidor 1108). El otro dispositivo electrónico (por ejemplo, el dispositivo 1102 o 1104 electrónico o el servidor 1108) puede ejecutar la función solicitada o función adicional y puede transmitir el resultado de ejecución al dispositivo 1101 electrónico. El dispositivo 1101 electrónico puede proporcionar la función solicitada o servicio usando el resultado recibido o puede procesar adicionalmente el resultado recibido para proporcionar la función solicitada o servicio. Para este fin, por ejemplo, puede usarse informática en la nube, informática distribuida o informática de cliente-servidor.
La Figura 12 es un diagrama que ilustra un sistema inteligente integrado de acuerdo con una realización de la presente divulgación.
Con referencia a la Figura 12, un sistema 1000 inteligente integrado puede incluir un terminal 1200 de usuario (por ejemplo, el dispositivo electrónico de la Figura 1), un servidor 1300 de inteligencia, un servidor 1400 de información personal o un servidor 1500 de sugerencias.
El terminal 1200 de usuario puede proporcionar servicios para un usuario a través de aplicaciones o programas de aplicación tales como aplicaciones de alarma, aplicaciones de mensajes, aplicaciones de imágenes (galería), etc., almacenadas en el terminal 1200 de usuario. Por ejemplo, el terminal 1200 de usuario puede ejecutar y operar una aplicación junto con una aplicación de inteligencia o una aplicación de reconocimiento de voz almacenada en el terminal 1200 de usuario. Se puede recibir una entrada del usuario para iniciar y operar la aplicación. Por ejemplo, la entrada del usuario puede recibirse a través de un botón físico, un panel táctil, una entrada de voz, una entrada remota o similar. De acuerdo con una realización, varios tipos de dispositivos conectados a Internet, tales como teléfonos móviles, teléfonos inteligentes, asistentes digitales personales (PDA), ordenadores portátiles y similares pueden ser el terminal 1200 de usuario.
De acuerdo con una realización, el terminal 1200 de usuario puede recibir voz de usuario como una entrada de usuario. El terminal 1200 de usuario puede recibir la voz del usuario y puede generar una instrucción para operar una aplicación basada en la voz del usuario. Como tal, el terminal 1200 de usuario puede operar la aplicación usando instrucciones generadas a partir del habla del usuario.
El servidor 1300 de inteligencia puede recibir una entrada de voz del usuario desde el terminal 1200 de usuario a través de una red de comunicación y puede convertir la entrada de voz en datos de texto. En otra realización, el servidor 1300 de inteligencia puede generar o seleccionar una regla de ruta basándose en los datos de texto. La regla de ruta puede incluir información sobre una acción (por ejemplo, una operación o una tarea) para realizar la función de la aplicación o información sobre un parámetro necesario para realizar la acción. Además, la regla de ruta puede incluir el orden de las acciones que se realizarán en la aplicación. El terminal 1200 de usuario puede recibir la regla de ruta, puede seleccionar una aplicación dependiendo de la regla de ruta y puede ejecutar acciones incluidas en la regla de ruta en la aplicación seleccionada.
El terminal 1200 de usuario puede ejecutar la(s) acción(es) y puede mostrar una pantalla correspondiente a la acción ejecutada. Como alternativa, el terminal 1200 de usuario puede ejecutar la acción y puede no mostrar el resultado obtenido al ejecutar la acción. Por ejemplo, el terminal 1200 de usuario puede ejecutar una pluralidad de acciones y puede mostrar solo el resultado de algunas de las acciones. En otro ejemplo, el terminal 1200 de usuario puede mostrar solo el resultado de la última acción en la pantalla. Y en otro ejemplo adicional, el terminal 1200 de usuario puede mostrar los resultados solo después de recibir la entrada del usuario para mostrar los resultados.
El servidor 1400 de información personal puede incluir una base de datos en la que se almacena la información del usuario. Por ejemplo, el servidor 1400 de información personal puede recibir la información del usuario (por ejemplo, información de contexto, información sobre la ejecución de una aplicación o similar) desde el terminal 1200 de usuario y puede almacenar la información del usuario en la base de datos. El servidor 1300 de inteligencia puede recibir la información del usuario desde el servidor 1400 de información personal a través de la red de comunicación y puede generar una regla de ruta asociada con la entrada del usuario basándose en la información del usuario. De acuerdo con una realización, el terminal 1200 de usuario puede recibir la información del usuario desde el servidor 1400 de información personal a través de la red de comunicación, y puede usar la información del usuario como información para gestionar la base de datos.
El servidor 1500 de sugerencias puede incluir una base de datos que almacena información sobre una función en un terminal, información de una aplicación o una función a proporcionar. Por ejemplo, el servidor 1500 de sugerencias puede incluir una base de datos asociada con una función que utiliza un usuario al recibir la información del usuario del terminal 1200 del servidor 1400 de información personal. El terminal 1200 de usuario puede recibir información sobre la función que se proporcionará desde el servidor 1500 de sugerencias a través de la red de comunicación y puede proporcionar la información al usuario.
La Figura 13 es un diagrama de bloques que ilustra un terminal de usuario de un sistema inteligente integrado, de acuerdo con una realización de la presente divulgación.
Con referencia a la Figura 13, el terminal 1200 de usuario puede incluir un módulo 1210 de entrada, un visualizador 1220, un altavoz 1230, una memoria 1240 o un procesador 1250. El terminal 1200 de usuario puede incluir además una carcasa, y los elementos del terminal 1200 de usuario pueden asentarse dentro del alojamiento o pueden colocarse en el alojamiento.
De acuerdo con una realización, el módulo 1210 de entrada puede recibir una entrada de usuario de un usuario. Por ejemplo, el módulo 1210 de entrada puede recibir la entrada del usuario desde un dispositivo externo conectado (por ejemplo, un teclado o un auricular). En otro ejemplo, el módulo 1210 de entrada puede incluir una pantalla táctil (por ejemplo, una pantalla táctil) acoplada al visualizador 1220. En otro ejemplo más, el módulo 1210 de entrada puede incluir uno o más hardware o claves físicas dispuestas en el terminal 1200 de usuario (o el alojamiento del terminal 1200 de usuario).
De acuerdo con una realización, el módulo 1210 de entrada puede incluir un micrófono que es capaz de recibir voz del usuario y convertir la voz en una señal de voz. Por ejemplo, el módulo 1210 de entrada puede incluir un sistema de entrada de voz y puede recibir la voz del usuario como una señal de voz a través del sistema de entrada de voz.
De acuerdo con una realización, el visualizador 1220 puede mostrar imágenes, videos y/o pantallas de ejecución de aplicaciones. Por ejemplo, el visualizador 1220 puede mostrar interfaces gráficas de usuario (GUI) de aplicaciones.
De acuerdo con una realización, el altavoz 1230 puede emitir señales de voz. Por ejemplo, el altavoz 1230 puede emitir señales de voz generadas en el terminal 1200 de usuario.
De acuerdo con una realización, la memoria 1240 puede almacenar una pluralidad de aplicaciones 1241 y 1243. La pluralidad de aplicaciones 1241 y 1243 almacenadas en la memoria 1240 puede seleccionarse, iniciarse e instruirse para realizar acciones dependiendo de la entrada del usuario.
De acuerdo con una realización, la memoria 1240 puede incluir una base de datos capaz de almacenar la información necesaria para reconocer la entrada del usuario. Por ejemplo, la memoria 1240 puede incluir una base de datos de registro capaz de almacenar información de registro. Para otro ejemplo, la memoria 1240 puede incluir una base de datos de persona capaz de almacenar información del usuario.
De acuerdo con una realización, la memoria 1240 puede almacenar la pluralidad de aplicaciones 1241 y 1243, y la pluralidad de aplicaciones 1241 y 1243 puede cargarse para ejecutarse. Por ejemplo, la pluralidad de aplicaciones 1241 y 1243 almacenadas en la memoria 1240 puede cargarse mediante un módulo 1253 de gestión de ejecución del procesador 1250 para que se ejecute la pluralidad de aplicaciones 1241 y 1243. La pluralidad de aplicaciones 1241 y 1243 puede incluir servicios 1241a y 1243a de ejecución que realizan una función o una pluralidad de acciones (o acciones unitarias, descritas a continuación en relación con la Figura 16) 1241b y 1243b. Los servicios 1241a y 1243a de ejecución pueden ser generados por el módulo 1253 de gestión de ejecución del procesador 1250 y después pueden ejecutar la pluralidad de acciones 1241b y 1243b.
De acuerdo con una realización, cuando se ejecutan las acciones 1241b y 1243b de las aplicaciones 1241 y 1243, las pantallas de estado de ejecución según la ejecución de las acciones 1241b y 1243b pueden mostrarse en el visualizador 1220. Por ejemplo, una pantalla de estado de ejecución puede mostrar que las acciones 1241b y 1243b se han completado. En otro ejemplo, la pantalla de estado de ejecución puede mostrar la finalización parcial de las acciones 1241b y 1243b, por ejemplo, cuando los parámetros necesarios para las acciones 1241b y 1243b aún no se han introducido.
De acuerdo con una realización, los servicios 1241a y 1243a de ejecución pueden ejecutar las acciones 1241b y 1243b dependiendo de una regla de ruta. Por ejemplo, los servicios 1241a y 1243a de ejecución pueden ser activados por el módulo 1253 de gestión de ejecución, pueden recibir una solicitud de ejecución del módulo 1253 de gestión de ejecución dependiendo de la regla de ruta y pueden ejecutar las acciones 1241b y 1243b de las aplicaciones 1241 y 1243 dependiendo de la solicitud de ejecución. Cuando se completa la ejecución de las acciones 1241b y 1243b, los servicios 1241a y 1243a de ejecución pueden transmitir información de finalización al módulo 1253 de gestión de ejecución.
De acuerdo con una realización, en el caso en que la pluralidad de las acciones 1241b y 1243b se ejecutan respectivamente en las aplicaciones 1241 y 1243, la pluralidad de las acciones 1241b y 1243b puede ejecutarse secuencialmente. Cuando se completa la ejecución de una acción (acción 1), los servicios 1241a y 1243a de ejecución pueden abrir la siguiente acción (acción 2) y pueden transmitir información de finalización al módulo 1253 de gestión de ejecución. Aquí, se entiende que abrir una acción particular es cambiar un estado de la acción a un estado ejecutable o preparar la ejecución de la acción. En otras palabras, cuando la acción no se abre, es posible que no se ejecute. Cuando se recibe la información de finalización, el módulo 1253 de gestión de ejecución puede transmitir una solicitud de ejecución para las siguientes acciones 1241b y 1243b (por ejemplo, la acción 2) al servicio 1241a y 1243a de ejecución. De acuerdo con una realización, en el caso en el que se ejecutan la pluralidad de aplicaciones 1241 y 1243, la pluralidad de aplicaciones 1241 y 1243 pueden ejecutarse secuencialmente. Por ejemplo, cuando se recibe la información de finalización después de ejecutar la última acción de la primera aplicación 1241, el módulo 1253 de gestión de ejecución puede transmitir la solicitud de ejecución de la primera acción de la segunda aplicación 1243 al servicio 1243a de ejecución.
De acuerdo con una realización, en el caso en que la pluralidad de las acciones 1241b y 1243b se ejecutan en las aplicaciones 1241 y 1243, las pantallas de resultados de cada una de la pluralidad ejecutada de las acciones 1241b y 1243b pueden mostrarse en el visualizador 1220. De acuerdo con otra realización, las pantallas de resultados de solo una parte de la pluralidad ejecutada de las acciones 1241b y 1243b pueden mostrarse en el visualizador 1220.
De acuerdo con una realización, la memoria 1240 puede almacenar una aplicación de inteligencia (por ejemplo, una aplicación de reconocimiento de voz) que funciona junto con un agente 1251 de inteligencia. La aplicación que funciona junto con el agente 1251 de inteligencia puede recibir y procesar el discurso del usuario en una señal de voz. De acuerdo con una realización, la aplicación que funciona junto con el agente 1251 de inteligencia puede ser operada por una entrada específica (por ejemplo, una entrada a través de una tecla de hardware, una entrada a través de una pantalla táctil o una entrada de voz específica) a través del módulo 1210 de entrada.
De acuerdo con una realización, el procesador 1250 puede controlar las operaciones generales del terminal 1200 de usuario. Por ejemplo, el procesador 1250 puede controlar el módulo 1210 de entrada para recibir la entrada del usuario. El procesador 1250 puede controlar el visualizador 1220 para mostrar imágenes. El procesador 1250 puede controlar el altavoz 1230 para emitir una señal de voz. El procesador 1250 puede controlar la memoria 1240 para leer o almacenar información.
De acuerdo con una realización, el procesador 1250 puede incluir el agente 1251 de inteligencia, el módulo del 1253 de gestión de ejecución o un módulo 1255 de servicio de inteligencia. En una realización, el procesador 1250 puede controlar el agente 1251 de inteligencia, el módulo 1253 de gestión de ejecución o el módulo 1255 de servicio de inteligencia ejecutando las instrucciones correspondientes almacenadas en la memoria 1240. Los módulos descritos en diversas realizaciones de la presente divulgación pueden implementarse mediante hardware o software. En diversas realizaciones de la presente divulgación, se entiende que las acciones ejecutadas por el agente 1251 de inteligencia, el módulo 1253 de gestión de ejecución o el módulo 1255 de servicio de inteligencia son acciones ejecutadas por el procesador 1250.
De acuerdo con una realización, el agente 1251 de inteligencia puede generar una instrucción para operar la aplicación 1241 o 1243 basándose en la señal de voz recibida como entrada del usuario. De acuerdo con una realización, el módulo del 1253 de gestión de ejecución puede recibir la instrucción generada por el agente 1251 de inteligencia, y puede seleccionar, iniciar y operar las aplicaciones 1241 o 1243 almacenadas en la memoria 1240. De acuerdo con una realización, el módulo 1255 de servicio de inteligencia puede gestionar información del usuario y puede usar la información del usuario para procesar la entrada del usuario.
El agente 1251 de inteligencia puede transmitir la entrada del usuario recibida a través del módulo 1210 de entrada al servidor 1300 de inteligencia.
De acuerdo con una realización, antes de transmitir la entrada del usuario al servidor 1300 de inteligencia, el agente 1251 de inteligencia puede preprocesar la entrada del usuario. De acuerdo con una realización, para preprocesar la entrada del usuario, el agente 1251 de inteligencia puede incluir un módulo de cancelación de eco adaptativo (AEC), un módulo de supresión de ruido (NS), un módulo de detección de punto final (EPD) o un módulo de control de ganancia automática (AGC). El AEC puede eliminar los ecos incluidos en la entrada del usuario. El módulo NS puede suprimir el ruido de fondo incluido en la entrada del usuario. El módulo EPD puede detectar un punto final de la voz del usuario incluido en la entrada del usuario para determinar la parte de la entrada en que está presente la voz del usuario. El módulo AGC puede ajustar el volumen de la entrada del usuario para que sea adecuado para el procesamiento. De acuerdo con una realización, para un mejor rendimiento, el agente 1251 de inteligencia puede incluir todos los elementos de preprocesamiento descritos anteriormente. Sin embargo, en otra realización, para preservar la vida útil de la batería, el agente 1251 de inteligencia solo puede operar algunos de los elementos de preprocesamiento.
De acuerdo con una realización, el agente 1251 de inteligencia puede incluir un módulo de reconocimiento de activación que reconoce una llamada del usuario. Usando el módulo de reconocimiento de voz, el módulo de reconocimiento de activación puede reconocer una instrucción de activación del usuario. En el caso de que el módulo de reconocimiento de activación reciba la instrucción de activación, el módulo de reconocimiento de activación puede activar el agente 1251 de inteligencia para recibir información adicional del usuario. De acuerdo con una realización, el módulo de reconocimiento de activación del agente 1251 de inteligencia puede implementarse con un procesador de baja potencia que incluye un códec de audio. De acuerdo con otra realización, el agente 1251 de inteligencia puede activarse cuando la entrada del usuario se ingresa a través de una clave de hardware. En el caso en el que se activa el agente 1251 de inteligencia, se puede ejecutar una aplicación de inteligencia (por ejemplo, una aplicación de reconocimiento de voz) que funciona junto con el agente 1251 de inteligencia.
De acuerdo con una realización, el agente 1251 de inteligencia puede incluir un módulo de reconocimiento de voz para convertir la entrada de voz en texto. El módulo de reconocimiento de voz puede reconocer la entrada del usuario para ejecutar una acción en una aplicación. Por ejemplo, el módulo de reconocimiento de voz puede reconocer una entrada de voz para activar las aplicaciones 1241 y 1443, o una entrada de voz para realizar una determinada función, como un "clic" para ejecutar una función de captura en una aplicación de cámara. Por lo tanto, el módulo de reconocimiento de voz puede reconocer y procesar rápidamente instrucciones de usuario para funciones ejecutables por el terminal 1200 de usuario. De acuerdo con una realización, el módulo de reconocimiento de voz para ejecutar la entrada del usuario del agente 1251 de inteligencia puede implementarse con un procesador de aplicaciones.
De acuerdo con una realización, el módulo de reconocimiento de voz (que puede incluir el módulo de reconocimiento de voz de un módulo de activación) del agente 1251 de inteligencia puede reconocer la entrada del usuario utilizando un algoritmo para reconocer la voz. Por ejemplo, el algoritmo para reconocer la voz puede ser un algoritmo oculto del modelo de Markov (HMM), un algoritmo de red neuronal artificial (ANN) o un algoritmo de deformación de tiempo dinámico (DTW).
De acuerdo con una realización, el agente 1251 de inteligencia puede cambiar la entrada de voz del usuario a datos de texto. De acuerdo con una realización, el agente 1251 de inteligencia puede transmitir la voz del usuario al servidor 1300 de inteligencia. El servidor 1300 de inteligencia convierte la entrada de voz en datos de texto y transmite los datos de texto al agente 1251 de inteligencia. Entonces, el agente 1251 de inteligencia puede mostrar los datos de texto en el visualizador 1220.
De acuerdo con una realización, el agente 1251 de inteligencia puede recibir una regla de ruta del servidor 1300 de inteligencia. De acuerdo con una realización, el agente 1251 de inteligencia puede transmitir la regla de ruta al módulo 1253 de gestión de ejecución.
De acuerdo con una realización, el agente 1251 de inteligencia puede transmitir el registro de resultados de ejecución de acuerdo con la regla de ruta al módulo 1255 de servicio de inteligencia, y el registro de resultados de ejecución transmitidos puede acumularse y gestionarse como información de preferencia del usuario en un módulo 155b de persona.
De acuerdo con una realización, el módulo del 1253 de gestión de ejecución puede recibir la regla de ruta del agente 1251 de inteligencia para ejecutar las aplicaciones 1241 y 1243 y puede indicar a las aplicaciones 1241 y 1243 que ejecuten las acciones 1241b y 1243b, que están incluidas en la regla de ruta. Por ejemplo, el módulo del 1253 de gestión de ejecución puede transmitir información de instrucciones para ejecutar las acciones 1241b y 1243b a las aplicaciones 1241 y 1243 y puede recibir información de finalización de las acciones 1241b y 1243b de las aplicaciones 1241 y 1243.
De acuerdo con una realización, el módulo del 1253 de gestión de ejecución puede transmitir o recibir la información de instrucciones para ejecutar las acciones 1241b y 1243b de las aplicaciones 1241 y 1243 entre el agente 1251 de inteligencia y las aplicaciones 1241 y 1243. El módulo del 1253 de gestión de ejecución puede vincular las aplicaciones 1241 y 1243 para que se ejecuten de acuerdo con la regla de ruta y puede transmitir la información de instrucciones de las acciones 1241b y 1243b incluidas en la regla de ruta a las aplicaciones 1241 y 1243. Por ejemplo, el módulo del 1253 de gestión de ejecución puede transmitir secuencialmente las acciones 1241b y 1243b incluidas en la regla de ruta a las aplicaciones 1241 y 1243 y puede ejecutar secuencialmente las acciones 1241b y 1243b de las aplicaciones 1241 y 1243 dependiendo de la regla de ruta.
De acuerdo con una realización, el módulo 1253 de gestión de ejecución puede gestionar estados de ejecución de las acciones 1241b y 1243b de las aplicaciones 1241 y 1243. Por ejemplo, el módulo del 1253 de gestión de ejecución puede recibir información sobre los estados de ejecución de las acciones 1241b y 1243b de las aplicaciones 1241 y 1243. En el caso de que las acciones 1241b y 1243b hayan aterrizado parcialmente (por ejemplo, las acciones 1241b y 1243b están esperando la entrada de un parámetro necesario), el módulo del 1253 de gestión de ejecución puede transmitir información sobre el aterrizaje parcial al agente 1251 de inteligencia. El agente 1251 de inteligencia puede entonces solicitar al usuario que ingrese la información necesaria. En otro ejemplo, en el caso de que las acciones 1241b y 1243b estén funcionando, se puede recibir voz del usuario, y el módulo del 1253 de gestión de ejecución puede transmitir información sobre los estados de ejecución de las aplicaciones 1241 y 1243 al agente 1251 de inteligencia. Usando el servidor 1300 de inteligencia, el agente 1251 de inteligencia puede analizar la información de parámetros del discurso del usuario y puede transmitir la información de parámetros al módulo del 1253 de gestión de ejecución. El módulo del 1253 de gestión de ejecución puede entonces cambiar un parámetro de cada una de las acciones 1241b y 1243b usando la información del parámetro del discurso del usuario.
De acuerdo con una realización, el módulo 1253 de gestión de ejecución puede transmitir la información de parámetros incluida en la regla de ruta a las aplicaciones 1241 y 1243. En el caso de que la pluralidad de aplicaciones 1241 y 1243 se ejecuten secuencialmente dependiendo de la regla de ruta, el módulo del 1253 de gestión de ejecución puede transmitir la información de parámetros incluida en la regla de ruta primero a una aplicación y después a otra aplicación.
De acuerdo con una realización, el módulo 1253 de gestión de ejecución puede recibir una pluralidad de reglas de ruta. El módulo del 1253 de gestión de ejecución puede seleccionar una pluralidad de reglas de ruta basándose en el discurso del usuario. Por ejemplo, en el caso en que la voz del usuario especifica la aplicación 1241 que ejecuta la acción 1241b pero no especifica la aplicación 1243 que ejecuta la acción 1243b, el módulo del 1253 de gestión de ejecución puede recibir una pluralidad de reglas de ruta diferentes en las que la misma aplicación 1241 ( por ejemplo, una aplicación de galería) ejecuta la acción 1241b pero diferentes aplicaciones 1243 (por ejemplo, una aplicación de mensaje o una aplicación de Telegram) ejecuta la acción 1243b. El módulo del 1253 de gestión de ejecución puede ejecutar la acción 1241b usando la aplicación 1241. El módulo del 1253 de gestión de ejecución también puede mostrar una pantalla de estado que le solicita al usuario que seleccione una aplicación para ejecutar la acción 1243b.
De acuerdo con una realización, el módulo 1255 de servicio de inteligencia puede incluir un módulo 155a de contexto, un módulo 155b de persona o un módulo 155c de sugerencias.
El módulo 155a de contexto puede recopilar estados actuales de las aplicaciones 1241 y 1243 de las aplicaciones 1241 y 1243. Por ejemplo, el módulo 155a de contexto puede recibir información de contexto que indica los estados actuales de las aplicaciones 1241 y 1243.
El módulo 155b de persona puede gestionar la información personal del usuario. Por ejemplo, el módulo 155b de persona puede recopilar la información de uso y los resultados de ejecución del terminal 1200 de usuario.
El módulo 155c de sugerencias puede predecir la intención del usuario para recomendar al usuario instrucciones de ejecución para el terminal 1200. Por ejemplo, el módulo 155c de sugerencias puede recomendar instrucciones al usuario en consideración del estado actual (por ejemplo, una hora, un lugar, un contexto o una aplicación) del usuario.
La Figura 14 es una vista que ilustra cuando se ejecuta una aplicación de inteligencia de un terminal de usuario, de acuerdo con una realización de la presente divulgación.
La Figura 14 ilustra que el terminal 1200 de usuario recibe una entrada de usuario para ejecutar una aplicación de inteligencia (por ejemplo, una aplicación de reconocimiento de voz) que funciona junto con el agente 1251 de inteligencia.
De acuerdo con una realización, el terminal 1200 de usuario puede ejecutar la aplicación de inteligencia para reconocer entradas de voz a través de una tecla 1212 de hardware. Por ejemplo, en el caso en que el terminal 1200 de usuario recibe la entrada del usuario a través de la tecla 1212 de hardware, el terminal 1200 de usuario puede mostrar una IU 1221 de la aplicación de inteligencia en el visualizador 1220. Luego, el usuario puede tocar un botón 1221a de reconocimiento de voz de la IU 1221 de la aplicación de inteligencia para introducir una entrada 1211b de voz. Como alternativa, mientras presiona continuamente la tecla 1212 de hardware, el usuario puede introducir la entrada 1211b de voz.
De acuerdo con una realización, el terminal 1200 de usuario puede ejecutar la aplicación de inteligencia para reconocer entradas de voz a través del micrófono 1211. Por ejemplo, en el caso de que una entrada 1211a de voz específica (por ejemplo, ¡despierte!) se introduzca a través del micrófono 1211, el terminal 1200 de usuario puede mostrar la IU 1221 de la aplicación de inteligencia en el visualizador 1220.
La Figura 15 es un diagrama de bloques que ilustra un servidor de inteligencia de un sistema inteligente integrado, de acuerdo con una realización de la presente divulgación.
Con referencia a la Figura 15, el servidor 1300 de inteligencia puede incluir un módulo 1310 de reconocimiento automático de voz (ASR), un módulo 1320 de comprensión del lenguaje natural (NLU), un módulo 1330 de planificador de ruta, un módulo 1340 de administrador de diálogo (DM), un módulo 1350 generador de lenguaje natural (NLG), o un módulo 1360 de texto a voz (TTS).
El módulo 1320 NLU o el módulo 1330 de planificador de ruta del servidor 1300 de inteligencia pueden generar una regla de ruta.
De acuerdo con una realización, el módulo 1310 de ASR puede convertir la entrada del usuario recibida desde el terminal 1200 del usuario de datos de voz a texto.
Por ejemplo, el módulo 1310 de ASR puede incluir un módulo de reconocimiento de voz. El módulo de reconocimiento de voz puede incluir un modelo acústico y un modelo de lenguaje. Por ejemplo, el modelo acústico puede incluir información asociada con el habla, y el modelo de lenguaje puede incluir información de fonema de la unidad e información sobre una combinación de información de fonema de la unidad. El módulo de reconocimiento de voz puede convertir la voz del usuario en datos de texto mediante el uso de la información asociada con la información de voz y fonema. Por ejemplo, la información sobre el modelo acústico y el modelo de lenguaje puede almacenarse en una base de datos de reconocimiento automático de voz (ASR DB) 1311.
De acuerdo con una realización, el módulo 1320 de NLU puede derivar la intención del usuario realizando análisis sintáctico o análisis semántico. El análisis sintáctico puede dividir la entrada del usuario en unidades sintácticas (por ejemplo, palabras, frases, morfemas y similares) y determinar qué elementos sintácticos tienen las unidades divididas. El análisis semántico se puede realizar utilizando coincidencia semántica, concordancia de reglas, concordancia de fórmulas o similares. Como tal, el módulo 1320 de NLU puede obtener características tales como dominio, intención o parámetro (o ranura) para que el módulo 1320 de NLU pueda derivar intención.
De acuerdo con una realización, el módulo 1320 de NLU puede determinar la intención del usuario y los parámetros correspondientes mediante el uso de una regla de coincidencia que se divide en el dominio, la intención y el parámetro (o ranura) necesarios para comprender la intención. Por ejemplo, un dominio como una alarma puede incluir una pluralidad de intentos, como la configuración de la alarma, la cancelación de la alarma y similares, y un intento puede incluir una pluralidad de parámetros, como el tiempo de la alarma, el número de iteraciones, la alarma sonido y similares. La pluralidad de reglas puede incluir uno o más parámetros necesarios. La regla de coincidencia puede almacenarse en una base 1321 de datos de comprensión del lenguaje natural (BD NLU).
De acuerdo con una realización, el módulo 1320 de NLU puede comprender el significado de las palabras extraídas de una entrada del usuario mediante el uso de características lingüísticas (por ejemplo, elementos gramaticales) como morfemas, frases y similares, y puede hacer coincidir el significado de las palabras captadas con el dominio e intención de determinar la intención del usuario. Por ejemplo, el módulo 1320 de NLU puede calcular cuántas palabras extraídas de la entrada del usuario se incluyen en cada uno de los dominios y la intención, para determinar la intención del usuario. De acuerdo con una realización, el módulo 1320 de NLU puede determinar un parámetro de la entrada del usuario utilizando las palabras. De acuerdo con una realización, el módulo 1320 de NLU puede determinar la intención del usuario utilizando la BD NLU 1321 que almacena las características lingüísticas que se utilizan para comprender la intención de la entrada del usuario. Según otra realización, el módulo 1320 de NLU puede determinar la intención del usuario utilizando un modelo de lenguaje personal (PLM). Por ejemplo, el módulo 1320 de NLU puede determinar la intención del usuario utilizando la información personalizada (por ejemplo, una lista de contactos o una lista de música). Por ejemplo, el PLM puede almacenarse en la BD NLU 1321. De acuerdo con una realización, el módulo 1310 de ASR así como el módulo 1320 de NLU pueden reconocer la voz del usuario con referencia al PLM almacenado en la BD NLU 1321.
De acuerdo con una realización, el módulo 1320 de NLU puede generar una regla de ruta basándose en la intención de la entrada del usuario y el parámetro. Por ejemplo, el módulo 1320 de NLU puede seleccionar una aplicación para que se ejecute, basándose en la intención de la entrada del usuario y puede determinar una acción que se ejecutará en la aplicación seleccionada. El módulo 1320 de NLU puede determinar el parámetro correspondiente a la acción determinada para generar la regla de ruta. De acuerdo con una realización, la regla de ruta generada por el módulo 1320 de NLU puede incluir información sobre la aplicación que se ejecutará, la acción que se ejecutará en la aplicación y los parámetros necesarios para ejecutar la acción.
De acuerdo con una realización, el módulo 1320 de NLU puede generar una regla de ruta, o una pluralidad de reglas de ruta basándose en la intención de la entrada del usuario y los parámetros correspondientes. Por ejemplo, el módulo 1320 de NLU puede recibir un conjunto de reglas de ruta correspondiente al terminal 1200 de usuario desde el módulo 1330 de planificador de ruta y puede asignar la intención de la entrada del usuario y los parámetros correspondientes al conjunto de reglas de ruta recibido para determinar la ruta regla.
De acuerdo con otra realización, el módulo 1320 de NLU puede determinar la aplicación que se ejecutará, la acción que se ejecutará en la aplicación y los parámetros necesarios para ejecutar la acción basándose en la intención de la entrada del usuario y los parámetros correspondientes para generar una regla de ruta o una pluralidad de reglas de ruta. Por ejemplo, dependiendo de la intención de la entrada del usuario, y para generar la regla de ruta, el módulo 1320 de NLU puede organizar la aplicación para que se ejecute y la acción que se ejecutará en la aplicación utilizando la información del terminal 1200 de usuario en forma de ontología o un modelo gráfico. La regla de ruta generada puede almacenarse en una base 1331 de datos de reglas de ruta (BD PR) controlada por el módulo 1330 de planificador de ruta. La regla de ruta generada se puede agregar a un conjunto de reglas de ruta de la BD PR 1331.
De acuerdo con una realización, el módulo 1320 de NLU puede seleccionar al menos una regla de ruta de la pluralidad de reglas de ruta generada. Por ejemplo, el módulo 1320 de NLU puede seleccionar una regla de ruta óptima de la pluralidad de reglas de ruta. En otro ejemplo, en el caso de que solo se especifique una parte de la acción basándose en la voz del usuario, el módulo 1320 de NLU puede seleccionar una pluralidad de reglas de ruta. El módulo 1320 de NLU puede determinar una regla de ruta de la pluralidad de reglas de ruta dependiendo de una entrada adicional del usuario.
De acuerdo con una realización, el módulo 1320 de NLU puede transmitir la regla de ruta al terminal 1200 de usuario en respuesta a una solicitud de entrada del usuario. Por ejemplo, el módulo 1320 de NLU puede transmitir una regla de ruta correspondiente a la entrada del usuario al terminal 1200 de usuario. Para otro ejemplo, el módulo 1320 de NLU puede transmitir la pluralidad de reglas de ruta correspondientes a la entrada del usuario al terminal 1200 de usuario. Por ejemplo, en el caso de que solo se especifique una parte de la acción basándose en la voz del usuario, el módulo 1320 de NLU puede generar una pluralidad de reglas de ruta.
De acuerdo con una realización, el módulo 1330 de planificador de ruta puede seleccionar al menos una regla de ruta entre la pluralidad de reglas de ruta.
De acuerdo con una realización, el módulo 1330 de planificador de ruta puede transmitir un conjunto de reglas de ruta que incluye la pluralidad de reglas de ruta al módulo 1320 de NLU. La pluralidad de reglas de ruta del conjunto de reglas de ruta puede almacenarse en la BD PR 1331 conectada al módulo 1330 de planificador de ruta. La BD PR puede ser una tabla. Por ejemplo, el módulo del 1330 de planificador de ruta puede transmitir un conjunto de reglas de ruta correspondiente a la información (por ejemplo, información del sistema operativo o información de la aplicación) del terminal 1200 de usuario, que se recibe del agente 1251 de inteligencia, al módulo 1320 de NLU. En una realización, la tabla almacenada en la BD PR 1331 puede almacenarse para cada dominio o para cada versión del dominio.
De acuerdo con una realización, el módulo 1330 de planificador de ruta puede seleccionar una regla de ruta o la pluralidad de reglas de ruta del conjunto de reglas de ruta, y transmitir la regla de una ruta seleccionada o la pluralidad de reglas de ruta seleccionada al módulo 1320 de NLU. Por ejemplo, el módulo del 1330 de planificador de ruta puede hacer coincidir la intención del usuario y los parámetros correspondientes con el conjunto de reglas de ruta correspondiente al terminal 1200 de usuario para seleccionar una regla de ruta o una pluralidad de reglas de ruta y puede transmitir la regla de ruta seleccionada o la pluralidad seleccionada de reglas de ruta al módulo 1320 de NLU.
De acuerdo con una realización, el módulo 1330 de planificador de ruta puede generar la regla de una ruta o la pluralidad de reglas de ruta utilizando la intención del usuario y los parámetros correspondientes. Por ejemplo, el módulo del 1330 de planificador de ruta puede determinar la aplicación que se ejecutará y la acción que se ejecutará en la aplicación basándose en la intención del usuario y los parámetros correspondientes al generar la regla de una ruta o la pluralidad de reglas de ruta. De acuerdo con una realización, el módulo 1330 de planificador de ruta puede almacenar la regla de ruta generada en la BD PR 1331.
De acuerdo con una realización, el módulo 1330 de planificador de ruta puede almacenar la regla de ruta generada por el módulo 1320 de NLU en la BD PR 1331. La regla de ruta generada se puede agregar al conjunto de reglas de ruta almacenado en la BD PR 1331.
De acuerdo con una realización, la tabla almacenada en la BD PR 1331 puede incluir una pluralidad de reglas de ruta o una pluralidad de conjuntos de reglas de ruta. La pluralidad de reglas de ruta o la pluralidad de conjuntos de reglas de ruta pueden reflejar el tipo, versión, tipo o características del dispositivo que realiza cada regla de ruta.
De acuerdo con una realización, el módulo 1340 de DM puede determinar si la intención del usuario derivada del módulo 1320 de NLU es clara. Por ejemplo, el módulo 1340 de DM puede determinar si la intención del usuario es clara, basándose en si los parámetros correspondientes son suficientes. El módulo 1340 de DM puede determinar si los parámetros derivados por el módulo 1320 de NLU son suficientes para realizar una tarea. De acuerdo con una realización, en el caso de que la intención del usuario no esté clara, el módulo 1340 de DM puede realizar una retroalimentación de causa y hacer una solicitud de información necesaria al usuario. Por ejemplo, el módulo 1340 de DM puede preguntar al usuario sobre el parámetro correspondiente a la intención del usuario para que se pueda aclarar la entrada del usuario.
De acuerdo con una realización, el módulo 1340 de DM puede incluir un módulo proveedor de contenido. En el caso en el que el módulo proveedor de contenido ejecuta una acción basada en la intención y los parámetros derivados por el módulo 1320 de NLU, el módulo proveedor de contenido puede generar el resultado obtenido realizando una tarea correspondiente a la entrada del usuario. De acuerdo con una realización, el módulo 1340 de DM puede transmitir el resultado generado por el módulo proveedor de contenido como la respuesta a la entrada del usuario al terminal 1200 de usuario.
De acuerdo con una realización, el módulo 1350 de generación de lenguaje natural NLG puede cambiar información especificada, tal como habla de lenguaje natural, en texto. Por ejemplo, la información especificada puede ser información sobre una entrada adicional, información para guiar la finalización de una acción correspondiente a la entrada del usuario o información para guiar la entrada adicional del usuario (por ejemplo, información de retroalimentación sobre la entrada del usuario). La información cambiada al formato de texto puede mostrarse en el visualizador 1220 después de transmitirse al terminal 1200 de usuario o puede cambiarse a salida de voz después de transmitirse al módulo 1360 de TTS.
De acuerdo con una realización, el módulo 1360 de TTS puede convertir la entrada de texto en salida de voz. El módulo 1360 de TTS puede recibir entrada de texto desde el módulo 1350 de NLG, puede cambiar la entrada de texto a salida de voz y puede transmitir la salida de voz al terminal 1200 de usuario. El terminal 1200 de usuario puede emitir la salida de voz a través del altavoz 1230.
De acuerdo con una realización, el módulo 1320 de NLU, el módulo 1330 de planificador de ruta y el módulo 1340 de DM pueden implementarse como un módulo. Por ejemplo, el módulo 1320 de NLU, el módulo 1330 de planificador de ruta y el módulo 1340 de DM pueden implementarse como un módulo, pueden determinar la intención del usuario y los parámetros correspondientes, y pueden generar una respuesta (por ejemplo, una regla de ruta) correspondiente a la determinada Intención y parámetros del usuario. Como tal, la respuesta generada puede transmitirse al terminal 1200 de usuario.
La Figura 16 es un diagrama que ilustra un procedimiento de generación de reglas de ruta de un módulo de NLU, de acuerdo con una realización de la presente divulgación.
Con referencia a la Figura 16, De acuerdo con una realización, el módulo 1320 de NLU puede dividir la función de una aplicación en acciones unitarias (por ejemplo, A a F) y puede almacenar las acciones unitarias divididas en la BD PR 1331. Por ejemplo, el módulo 1320 de NLU puede almacenar un conjunto de reglas de ruta, que incluye una pluralidad de reglas de ruta A-B1-C1, A-B1-C2, A-B1-C3-DF y A-B1-C3-DEF divididas en acciones unitarias, en la BD PR 1331.
De acuerdo con una realización, la BD PR 1331 del módulo 1330 de planificador de ruta puede almacenar el conjunto de reglas de ruta para realizar una función de la aplicación. El conjunto de reglas de ruta puede incluir una pluralidad de reglas de ruta, cada una de las que incluye una pluralidad de acciones. Una acción a ejecutar de acuerdo con las entradas de parámetros para cada una de la pluralidad de acciones puede disponerse secuencialmente en la pluralidad de reglas de ruta. De acuerdo con una realización, la pluralidad de reglas de ruta implementadas en una forma de ontología o un modelo gráfico y pueden almacenarse en la BD PR 1331.
De acuerdo con una realización, el módulo 1320 de NLU puede seleccionar una regla de ruta óptima A-B1-C3-DF correspondiente a la intención de una entrada del usuario y los parámetros correspondientes de la intención.
De acuerdo con una realización, en el caso de que no haya una regla de ruta que coincida completamente con la entrada del usuario, el módulo 1320 de NLU puede transmitir una pluralidad de reglas al terminal 1200 de usuario. Por ejemplo, el módulo 1320 de NLU puede seleccionar una regla de ruta (por ejemplo, A-Bl) que corresponde en parte a la entrada del usuario. El módulo 1320 de NLU puede seleccionar una o más reglas de ruta (por ejemplo, A-B1-C1, A-B1-C2, A-B1-C3-DF y A-B1-C3-DEF), incluida la regla de ruta (por ejemplo, A-B1) y puede transmitir una o más reglas de ruta al terminal 1200 de usuario.
De acuerdo con una realización, el módulo 1320 de NLU puede seleccionar una de una pluralidad de reglas de ruta basándose en una entrada adicional recibida por el terminal 1200 de usuario y puede transmitir la regla de ruta seleccionada al terminal 1200 de usuario. Por ejemplo, el módulo 1320 de NLU puede seleccionar una regla de ruta (por ejemplo, A-B1-C3-DF) de la pluralidad de reglas de ruta (por ejemplo, A-B1-C1, A-B1-C2, A-B1-C3- DF y A-B1-C3-DEF) dependiendo de la entrada adicional del usuario (por ejemplo, una entrada para seleccionar C3).
De acuerdo con otra realización, el módulo 1320 de NLU puede determinar la intención del usuario y los parámetros correspondientes que corresponden a la entrada adicional del usuario (por ejemplo, una entrada para seleccionar C3). El terminal 1200 de usuario puede seleccionar una regla de ruta (por ejemplo, A-B1-C3-DF) de la pluralidad de reglas de ruta (por ejemplo, A-B1-C1, A-B1-C2, A-B1-C3-DF, y A-B1-C3-d Ef ) basándose en la intención derivada de la entrada adicional del usuario.
Como tal, el terminal 1200 de usuario puede completar las acciones de las aplicaciones 1241 y 1243 basándose en la regla de una ruta seleccionada.
De acuerdo con una realización, en el caso en que el servidor 1300 de inteligencia recibe una entrada de usuario en la que la información es insuficiente, el módulo 1320 de NLU puede generar una regla de ruta que corresponde en parte a la entrada de usuario recibida. Por ejemplo, el módulo 1320 de NLU puede transmitir la regla de ruta parcialmente correspondiente al agente 1251 de inteligencia. El agente 1251 de inteligencia puede transmitir la regla de ruta parcialmente correspondiente al módulo 1253 de gestión de ejecución, y el módulo 1253 de gestión de ejecución puede ejecutar la primera aplicación 1241 dependiendo de la regla de ruta. El módulo del 1253 de gestión de ejecución puede transmitir información sobre un parámetro insuficiente al agente 1251 de inteligencia mientras ejecuta la primera aplicación 1241. El agente 1251 de inteligencia puede solicitar una entrada adicional a un usuario utilizando la información sobre el parámetro insuficiente. Cuando el usuario recibe la entrada adicional, el agente 1251 de inteligencia puede transmitir y procesar la entrada adicional al servidor 1300 de inteligencia. El módulo 1320 de NLU puede generar una regla de ruta que se agregará, basándose en la intención de la entrada del usuario adicionalmente introducida e información de parámetros y puede transmitir la regla de ruta que se agregará al agente 1251 de inteligencia. El agente 1251 de inteligencia puede transmitir la regla de ruta al módulo del 1253 de gestión de ejecución y puede ejecutar la segunda aplicación 1243.
De acuerdo con una realización, en el caso en que el servidor 1300 de inteligencia recibe una entrada de usuario, en la que falta una parte de información, el módulo 1320 de NLU puede transmitir una solicitud de información de usuario al servidor 1400 de información personal. El servidor 1400 de información personal puede transmitir información sobre el usuario que ingresa la entrada de usuario almacenada en una base de datos de persona al módulo 1320 de NLU. El módulo 1320 de NLU puede usar la entrada parcial del usuario y la información del servidor 1400 de información personal para seleccionar una regla de ruta. Como tal, aunque la entrada del usuario es parcial y le falta cierta información, el módulo 1320 de NLU puede hacer una solicitud de información faltante al usuario o puede determinar la regla de ruta correspondiente a la entrada del usuario utilizando información de usuario almacenada previamente.
El término "módulo" utilizado en esta memoria descriptiva puede incluir una unidad implementada con hardware, software o firmware. por ejemplo, el término "módulo" puede usarse de manera intercambiable con el término "lógica", "bloque lógico", "componente", "circuito" y similares. El "módulo" puede ser un componente integrado o una parte del mismo para realizar una o más funciones o una parte del mismo. El "módulo" se puede implementar de forma mecánica o electrónica y puede incluir, por ejemplo, un chip IC (ASIC) específico de la aplicación, una matriz de compuerta programable en campo (FPGA) y un dispositivo lógico programable para realizar algunas operaciones, que son conocido o serán desarrollados.
De acuerdo con diversas realizaciones, al menos una parte de un aparato (por ejemplo, módulos o funciones del mismo) o un procedimiento (por ejemplo, las operaciones) pueden implementarse, por ejemplo, por instrucciones almacenadas en un medio de almacenamiento legible por ordenador (por ejemplo, la memoria 1130) en forma de un módulo de programa. Las instrucciones, cuando se ejecuta por un procesador (por ejemplo, el procesador 1120), pueden provocar que el procesador realice funciones que corresponden a las instrucciones. El medio de grabación legible por ordenador puede incluir un disco duro, un disquete, un medio magnético (por ejemplo, una cinta magnética), un medio óptico (por ejemplo, una memoria de solo lectura de disco compacto (CD-ROM) y un disco versátil digital (DVD), un medio magneto-óptico (por ejemplo, un disco floptical), una memoria incrustada y similares. La una o más instrucciones pueden contener un código realizado por un compilador o un código ejecutable por un intérprete.
Cada elemento (por ejemplo, un módulo o un módulo de programa) de acuerdo con diversas realizaciones puede estar compuesto de una sola entidad o una pluralidad de entidades, una parte de los subelementos descritos anteriormente puede omitirse o puede incluir además otros elementos. Como alternativa o adicionalmente, después de integrarse en una entidad, algunos elementos (por ejemplo, un módulo o un módulo de programa) pueden realizar de manera idéntica o similar la función ejecutada por cada elemento correspondiente antes de la integración. De acuerdo con diversas realizaciones, las operaciones ejecutadas por módulos, módulos de programa u otros elementos pueden ejecutarse mediante un procedimiento sucesivo, un procedimiento paralelo, un procedimiento repetido o un procedimiento heurístico, o al menos una parte de las operaciones puede ejecutarse en diferentes secuencias u omitirse. Como alternativa, pueden añadirse otras operaciones.
Aunque la presente divulgación se ha mostrado y descrito con referencia a diversas realizaciones de la misma, se entenderá por los expertos en la materia que pueden realizarse diversos cambios en forma y detalles en la misma sin alejarse del ámbito de la presente divulgación como se define por las reivindicaciones adjuntas.
Cierto aspecto de las realizaciones anteriormente descritas de la presente divulgación puede implementarse en hardware, firmware o a través de la ejecución de software o código informático que puede almacenarse en un medio de registro tal como un CD ROM, un Disco Versátil Digital (DVD), una cinta magnética, una RAM, un disco flexible, un disco duro o un disco magneto-óptico o código informático descargado a través de una red originalmente almacenado en un medio de registro remoto o un medio legible por máquina no transitorio y que se va a almacenar en un medio de registro local, de tal modo que los procedimientos descritos en el presente documento puedan representarse a través de tal software que está almacenado en el medio de registro usando un ordenador de fin general o un procesador especial o en hardware programable o especializado, tal como un ASIC o FPGA. Como se entendería en la técnica, el ordenador, el procesador, el controlador de microprocesador o el hardware programable incluyen componentes de memoria, por ejemplo, RAM, ROM, Flash, etc., que pueden almacenar o recibir software o código informático que, cuando el ordenador, procesador o hardware accede al mismo y lo ejecuta, implementan los procedimientos de procesamiento descritos en el presente documento.

Claims (15)

REIVINDICACIONES
1. Un dispositivo electrónico que comprende:
un micrófono (110);
un visualizador (120);
un circuito (140) de comunicación;
una memoria (150) en la que se almacena una aplicación; y
un procesador (130) conectado eléctricamente al micrófono (110), al visualizador (120), al circuito (140) de comunicación y a la memoria (150), en el que el procesador (130) está configurado para:
mostrar una pantalla de ejecución de la aplicación en el visualizador (120);
obtener datos de voz a través del micrófono (110);
mostrar, en la pantalla de ejecución, un texto convertido de los datos de voz;
mostrar, en la pantalla de ejecución, un indicador asociado con un tiempo de espera determinado en base a al menos uno de un tiempo de adquisición de los datos de voz y una longitud del texto, en el que el tiempo de adquisición de los datos de voz es el período de tiempo total desde un punto en el tiempo cuando se inicia la entrada de los datos de voz hasta cuando se termina la entrada de voz; y
cuando transcurre el tiempo de espera, transmitir el texto a un dispositivo externo a través del circuito (140) de comunicación.
2. El dispositivo electrónico de la reivindicación 1, en el que el indicador indica una duración del tiempo de espera determinado.
3. El dispositivo electrónico de la reivindicación 1, en el que el procesador (130) está además configurado para: cambiar el indicador mientras transcurre el tiempo de espera.
4. El dispositivo electrónico de la reivindicación 1, en el que un registro de la ocurrencia de un primer evento se almacena en la memoria (150), y
en el que el procesador (130) está configurado además para:
disminuir una duración del tiempo de espera determinado en base al registro de la ocurrencia del primer evento.
5. El dispositivo electrónico de la reivindicación 1, en el que un registro de la ocurrencia de un segundo evento se almacena en la memoria (150), y
en el que el procesador (130) está configurado además para:
aumentar una duración del tiempo de espera determinado en base al registro de la ocurrencia del segundo evento.
6. El dispositivo electrónico de la reivindicación 1, en el que el procesador (130) está además configurado para: cuando ocurre un primer evento antes de que transcurra el tiempo de espera, transmitir el texto al dispositivo externo.
7. El dispositivo electrónico de la reivindicación 6, en el que un registro de la ocurrencia del primer evento se almacena en la memoria (150), y
en el que el procesador (130) está configurado además para:
almacenar datos asociados con el primer evento en el registro de la ocurrencia del primer evento.
8. El dispositivo electrónico de la reivindicación 1, en el que el procesador (130) está además configurado para: cuando ocurre un segundo evento antes de que transcurra el tiempo de espera, pausar el tiempo de espera.
9. El dispositivo electrónico de la reivindicación 8, en el que un registro de la ocurrencia del segundo evento se almacena en la memoria (150), y
en el que el procesador (130) está configurado además para:
almacenar datos asociados con el segundo evento en el registro de la ocurrencia del segundo evento.
10. El dispositivo electrónico de la reivindicación 8, en el que el procesador (130) está configurado además para: cuando se introduce un gesto táctil asociado con un área de texto mostrada en la pantalla de ejecución, detectar la ocurrencia del segundo evento.
11. El dispositivo electrónico de la reivindicación 1, en el que el procesador (130) está además configurado para:
al recibir una entrada de revisión asociada con el texto mientras transcurre el tiempo de espera, revisar el texto en respuesta a la entrada de revisión; y
transmitir el texto revisado al dispositivo externo.
12. El dispositivo electrónico de la reivindicación 1, en el que el procesador (130) está además configurado para: cuando se introduce un gesto táctil asociado con un área de texto mostrada en la pantalla de ejecución, esperar una entrada de revisión asociada con el texto.
13. El dispositivo electrónico de la reivindicación 1, en el que el indicador incluye una pluralidad de iconos, y en el que el procesador (130) está configurado además para:
mostrar la pluralidad de iconos en la pantalla de ejecución, en el que un número de la pluralidad de iconos es proporcional a una duración del tiempo de espera determinado.
14. Un procedimiento realizado por un dispositivo electrónico (100), que comprende:
obtener datos de voz a través de un micrófono (110);
mostrar un texto convertido de los datos de voz en un visualizador (120);
mostrar, en el visualizador (120), un indicador asociado con un tiempo de espera determinado en base a al menos uno de un tiempo de adquisición de los datos de voz y una longitud del texto, en el que el tiempo de adquisición de los datos de voz es el período de tiempo total desde un punto en el tiempo cuando se inicia la entrada de los datos de voz hasta cuando se termina la entrada de voz; y
cuando transcurre el tiempo de espera, determinar el texto a introducir.
15. El procedimiento de la reivindicación 14, que comprende además:
modificar una duración del tiempo de espera determinado mediante el uso de datos previamente almacenados.
ES18168559T 2017-04-24 2018-04-20 Dispositivo electrónico para proporcionar servicio de reconocimiento de voz y procedimiento del mismo Active ES2801854T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170052135A KR102391298B1 (ko) 2017-04-24 2017-04-24 음성 인식 서비스를 제공하는 전자 장치 및 그 방법

Publications (1)

Publication Number Publication Date
ES2801854T3 true ES2801854T3 (es) 2021-01-14

Family

ID=62067372

Family Applications (1)

Application Number Title Priority Date Filing Date
ES18168559T Active ES2801854T3 (es) 2017-04-24 2018-04-20 Dispositivo electrónico para proporcionar servicio de reconocimiento de voz y procedimiento del mismo

Country Status (5)

Country Link
US (1) US20180308489A1 (es)
EP (1) EP3396664B1 (es)
KR (1) KR102391298B1 (es)
CN (1) CN108735208B (es)
ES (1) ES2801854T3 (es)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10957310B1 (en) 2012-07-23 2021-03-23 Soundhound, Inc. Integrated programming framework for speech and text understanding with meaning parsing
US10636421B2 (en) * 2017-12-27 2020-04-28 Soundhound, Inc. Parse prefix-detection in a human-machine interface
USD926777S1 (en) * 2018-09-07 2021-08-03 Delta Electronics, Inc. Display screen or portion thereof with graphical user interface
KR20200066933A (ko) * 2018-12-03 2020-06-11 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
CN109857696B (zh) * 2018-12-11 2022-07-12 西南石油大学 互交式多语言信息资源互助系统及其实现方法
CN115361180B (zh) * 2022-08-05 2024-04-30 歌尔股份有限公司 基于物理按键的语音处理方法、电子设备、装置及介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6937984B1 (en) * 1998-12-17 2005-08-30 International Business Machines Corporation Speech command input recognition system for interactive computer display with speech controlled display of recognized commands
KR100668297B1 (ko) * 2002-12-31 2007-01-12 삼성전자주식회사 음성인식방법 및 장치
US9437186B1 (en) * 2013-06-19 2016-09-06 Amazon Technologies, Inc. Enhanced endpoint detection for speech recognition
US10430024B2 (en) * 2013-11-13 2019-10-01 Microsoft Technology Licensing, Llc Media item selection using user-specific grammar
US9390726B1 (en) * 2013-12-30 2016-07-12 Google Inc. Supplementing speech commands with gestures
US9082407B1 (en) * 2014-04-15 2015-07-14 Google Inc. Systems and methods for providing prompts for voice commands
JP6280074B2 (ja) * 2015-03-25 2018-02-14 日本電信電話株式会社 言い直し検出装置、音声認識システム、言い直し検出方法、プログラム
US10157039B2 (en) * 2015-10-05 2018-12-18 Motorola Mobility Llc Automatic capturing of multi-mode inputs in applications
JP6747434B2 (ja) * 2015-10-23 2020-08-26 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
KR20170128820A (ko) * 2016-05-16 2017-11-24 엘지전자 주식회사 이동단말기 및 그 제어방법
US10186263B2 (en) * 2016-08-30 2019-01-22 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Spoken utterance stop event other than pause or cessation in spoken utterances stream
US10339918B2 (en) * 2016-09-27 2019-07-02 Intel IP Corporation Adaptive speech endpoint detector
US10841412B2 (en) * 2017-03-13 2020-11-17 Motorola Mobility Llc Method and apparatus for enabling context-based voice responses to always-on-display notifications

Also Published As

Publication number Publication date
EP3396664A1 (en) 2018-10-31
KR102391298B1 (ko) 2022-04-28
US20180308489A1 (en) 2018-10-25
KR20180118894A (ko) 2018-11-01
CN108735208A (zh) 2018-11-02
CN108735208B (zh) 2023-08-08
EP3396664B1 (en) 2020-06-03

Similar Documents

Publication Publication Date Title
ES2801854T3 (es) Dispositivo electrónico para proporcionar servicio de reconocimiento de voz y procedimiento del mismo
US10838765B2 (en) Task execution method for voice input and electronic device supporting the same
US10909982B2 (en) Electronic apparatus for processing user utterance and controlling method thereof
US10825453B2 (en) Electronic device for providing speech recognition service and method thereof
US10170075B2 (en) Electronic device and method of providing information in electronic device
US11170768B2 (en) Device for performing task corresponding to user utterance
US11733964B2 (en) Method for operating speech recognition service and electronic device supporting the same
KR102366617B1 (ko) 음성 인식 서비스 운용 방법 및 이를 지원하는 전자 장치
US10788955B2 (en) Method for controlling display and electronic device supporting the same
EP3642838B1 (en) Method for operating speech recognition service and electronic device and server for supporting the same
US11137978B2 (en) Method for operating speech recognition service and electronic device supporting the same
US11360791B2 (en) Electronic device and screen control method for processing user input by using same
KR102356889B1 (ko) 음성 인식을 수행하는 방법 및 이를 사용하는 전자 장치
US20200075008A1 (en) Voice data processing method and electronic device for supporting same
US10996922B2 (en) Electronic apparatus for processing user utterance
US11004075B2 (en) Device and method for performing payment using utterance
US20200034112A1 (en) Electronic device for performing operation according to user input after partial landing
CN109309754B (zh) 用于获取和键入缺少参数的电子设备