Nothing Special   »   [go: up one dir, main page]

WO2019150708A1 - 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム - Google Patents

情報処理装置、情報処理システム、および情報処理方法、並びにプログラム Download PDF

Info

Publication number
WO2019150708A1
WO2019150708A1 PCT/JP2018/042409 JP2018042409W WO2019150708A1 WO 2019150708 A1 WO2019150708 A1 WO 2019150708A1 JP 2018042409 W JP2018042409 W JP 2018042409W WO 2019150708 A1 WO2019150708 A1 WO 2019150708A1
Authority
WO
WIPO (PCT)
Prior art keywords
speaker
information processing
timing
nod
unit
Prior art date
Application number
PCT/JP2018/042409
Other languages
English (en)
French (fr)
Inventor
富士夫 荒井
祐介 工藤
秀憲 青木
元 濱田
佐藤 直之
邦在 鳥居
Original Assignee
ソニー株式会社
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 ソニー株式会社 filed Critical ソニー株式会社
Publication of WO2019150708A1 publication Critical patent/WO2019150708A1/ja

Links

Images

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/08Speech classification or search
    • G10L15/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques

Definitions

  • the present disclosure relates to an information processing apparatus, an information processing system, an information processing method, and a program. More specifically, the present invention relates to an information processing apparatus, an information processing system, an information processing method, and a program that perform processing and response based on a speech recognition result of a user utterance.
  • Devices that perform such voice recognition include mobile devices such as smartphones, smart speakers, agent devices, signage devices, and the like. In a configuration using smart speakers, agent devices, signage devices, etc., there are many cases where there are many people around these devices.
  • the voice recognition device is required to specify a speaker (speaking user) for the device and provide a service corresponding to the speaker.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 11-24691
  • Patent Document 2 Japanese Patent Application Laid-Open No. 2008-146054
  • Patent Document 1 Japanese Patent Application Laid-Open No. 11-24691
  • Patent Document 2 Japanese Patent Application Laid-Open No. 2008-146054
  • a method of identifying a speaker based on an analysis result by analyzing sound quality (frequency identification / voiceprint) of a voice input to a device.
  • sound quality frequency identification / voiceprint
  • Patent Document 3 Japanese Patent Laid-Open No. 08-235358 discloses a method for identifying a speaker by detecting mouth movement from an image taken by a camera or the like. However, this method makes it impossible to specify the speaker when there are a plurality of people moving his mouth or when the mouth of the speaker cannot be photographed.
  • JP-A-11-24691 JP 2008-146054 A Japanese Patent Laid-Open No. 08-235358
  • the present disclosure has been made in view of the above-described problems, for example, and an information processing apparatus and an information processing system capable of specifying a speaker with high accuracy under various circumstances using both sound and images And an information processing method and a program.
  • the first aspect of the present disclosure is: It has a speaker identification unit that executes speaker identification processing,
  • the speaker specifying unit (A) A speaker identification process based on a comparison result between a speech recognition result for an uttered speech and a lip reading recognition result for analyzing the utterance from the lip movement of the speaker, or (B) A speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech, It exists in the information processing apparatus which performs the speaker specific process of at least any one of said (a) and (b).
  • the second aspect of the present disclosure is: An information processing system having an information processing terminal and a server,
  • the information processing terminal A voice input unit; An image input unit; A communication unit that transmits the audio acquired through the audio input unit and the camera-captured image acquired through the image input unit to the server;
  • the server A speech recognition unit that performs speech recognition processing of the speech of the speaker received from the information processing terminal;
  • An image recognition unit that performs analysis of the camera-captured image received from the information processing terminal;
  • the voice recognition unit Generating a character string indicating the utterance content of the speaker, and generating nodding timing estimation data of the speaker and the listener based on the character string;
  • the image recognition unit Generating nod timing actual data that records the nod timing of the nod performer included in the camera-captured image;
  • the present invention is in an information processing system that performs speaker identification processing based on the degree of coincidence between the nodding timing estimation data and the nodding timing actual data.
  • the third aspect of the present disclosure is: An information processing method executed in an information processing apparatus,
  • the information processing apparatus includes: It has a speaker identification unit that executes speaker identification processing,
  • the speaker specifying unit (A) A speaker identification process based on a comparison result between a speech recognition result for an uttered speech and a lip reading recognition result for analyzing the utterance from the lip movement of the speaker, or (B) A speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech,
  • a speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech
  • the fourth aspect of the present disclosure is: An information processing method executed in an information processing system having an information processing terminal and a server, The information processing terminal Transmitting the voice acquired through the voice input unit and the camera-captured image acquired through the image input unit to the server; The server From the voice received from the information processing terminal, voice recognition processing of the voice of the speaker is executed, a character string indicating the utterance content of the speaker is generated, and nodding timing estimation of the speaker and the listener based on the character string Generate data, Performing analysis of the camera-captured image received from the information processing terminal; Generating nod timing actual data that records the nod timing of the nod performer included in the camera-captured image; In at least one of the information processing terminal and the server, The present invention is an information processing method for executing a speaker identification process based on the degree of coincidence between the nod timing estimation data and the actual nod timing data.
  • the fifth aspect of the present disclosure is: A program for executing information processing in an information processing apparatus;
  • the information processing apparatus includes: It has a speaker identification unit that executes speaker identification processing,
  • the program is stored in the speaker specifying unit.
  • a speaker identification process based on a comparison result between a speech recognition result for an uttered speech and a lip reading recognition result for analyzing the utterance from the lip movement of the speaker, or
  • B A speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech, In the program for executing the speaker specifying process of at least one of the above (a) and (b).
  • the program of the present disclosure is a program that can be provided by, for example, a storage medium or a communication medium provided in a computer-readable format to an information processing apparatus or a computer system that can execute various program codes.
  • a program in a computer-readable format, processing corresponding to the program is realized on the information processing apparatus or the computer system.
  • system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.
  • the speaker specifying unit that executes the speaker specifying process (a) compares the speech recognition result for the uttered voice with the lip reading recognition result for analyzing the utterance from the lip movement of the speaker. Or (b) the speaker identification process based on the analysis result of the operation of the speaker or the listener. For example, a process of comparing the nodding timing estimation data of a speaker or listener estimated based on an utterance character string obtained as a speech recognition result and the nodding timing actual data of the nodding performer included in the camera-captured image is executed.
  • FIG. 2 is a diagram illustrating a configuration example and a usage example of an information processing device. It is a figure explaining the process which the information processing apparatus of this indication performs.
  • FIG. 25 is a diagram for describing a configuration example of an information processing device.
  • FIG. 11 is a diagram illustrating a flowchart for describing a sequence of processing executed by the information processing apparatus. It is a figure which shows the flowchart explaining the sequence of the speech recognition process which information processing apparatus performs. It is a figure explaining the analysis process of the nod timing which an information processing apparatus performs.
  • FIG. 11 is a diagram illustrating a flowchart for describing a sequence of image recognition processing executed by the information processing apparatus. It is a figure explaining the some pattern of the information required in the speaker specific process of this indication. It is a sequence diagram explaining the sequence in the case of performing a speaker specific process using the server by the side of a cloud. It is a sequence diagram explaining the sequence in the case of performing a speaker specific process using the server by the side of a cloud. It is a figure explaining the structural example of an information processing system.
  • FIG. 25 is a diagram for describing an example hardware configuration of an information processing device.
  • FIG. 1 is a diagram illustrating a processing example of an information processing apparatus 10 that recognizes and responds to a user utterance made by a speaker 1.
  • the information processing apparatus 10 executes processing based on the speech recognition result of the user utterance.
  • the information processing apparatus 10 performs the following system response.
  • System response “Tomorrow in Osaka, the afternoon weather is fine, but there may be a shower in the evening.”
  • the information processing apparatus 10 executes speech synthesis processing (TTS: Text To Speech) to generate and output the system response.
  • TTS Text To Speech
  • the information processing apparatus 10 generates and outputs a response using knowledge data acquired from a storage unit in the apparatus or knowledge data acquired via a network.
  • An information processing apparatus 10 illustrated in FIG. 1 includes a camera 11, a microphone 12, a display unit 13, and a speaker 14, and has a configuration capable of audio input / output and image input / output.
  • the information processing apparatus 10 illustrated in FIG. 1 is called, for example, a smart speaker or an agent device.
  • the information processing apparatus 10 according to the present disclosure is not limited to the agent device 10 a but may be various device forms such as a smartphone 10 b and a PC 10 c, or a signage device installed in a public place. Is possible.
  • the information processing apparatus 10 recognizes the utterance of the speaker 1 and makes a response based on the user's utterance, and also executes control of the external device 30 such as a television and an air conditioner shown in FIG. 2 according to the user's utterance. For example, when the user utterance is a request such as “change the TV channel to 1” or “set the air conditioner temperature to 20 degrees”, the information processing apparatus 10 determines whether the user utterance is based on the voice recognition result of the user utterance. A control signal (Wi-Fi, infrared light, etc.) is output to the external device 30 to execute control according to the user utterance.
  • Wi-Fi Wi-Fi, infrared light, etc.
  • the information processing apparatus 10 is connected to the server 20 via the network, and can acquire information necessary for generating a response to the user utterance from the server 20. Moreover, it is good also as a structure which makes a server perform a speech recognition process and a semantic analysis process.
  • An information processing device such as an agent device or a signage device that responds to a user utterance is required to specify a speaker for the information processing device and provide a service corresponding to the speaker.
  • voice data and image data are used to identify a speaker.
  • the information processing apparatus 10 can photograph the mouth of the speaker 31, the speech of the speaker is input via the microphone 12 and the speech photographed by the camera 11.
  • the lip reading process based on the movement of the person 31's mouth is performed and the content of the speech is analyzed.
  • the utterance content analysis result using the lip reading process is compared with the voice recognition result of the utterance voice data, and the speaker is specified based on the matching degree.
  • the information processing apparatus 10 enables, for example, such a process to perform a speaker's highly accurate specifying process under various situations.
  • FIG. 4 is a diagram illustrating a configuration example of the information processing apparatus 10 that recognizes a user utterance and responds.
  • the information processing apparatus 10 includes a voice input unit 101, a voice recognition unit 102, an utterance meaning analysis unit 103, an image input unit 105, an image recognition unit 106, a speaker identification unit 111, and a speaker analysis unit 112. , Speaker data storage unit 113, storage unit (user database, etc.) 114, response generation unit 121, system utterance speech synthesis unit 122, display image generation unit 123, output (speech, image) control unit 124, speech output unit 125, An image output unit 126 is included. Note that all of these components can be configured inside one information processing apparatus 10, but a part of the configuration and functions may be included in another information processing apparatus or an external server.
  • the user's uttered voice and ambient sounds are input to the voice input unit 101 such as a microphone.
  • the voice input unit (microphone) 101 inputs voice data including the input user uttered voice to the voice recognition unit 102.
  • the voice recognition unit 102 has, for example, an ASR (Automatic Speech Recognition) function, and converts voice data into a character string (text data) composed of a plurality of words.
  • ASR Automatic Speech Recognition
  • the text data generated in the speech recognition unit 102 is input to the utterance meaning analysis unit 103.
  • the speech recognition unit 102 also generates a nod timing of a speaker or listener estimated based on the speech based on the speech recognition result. This process will be described in detail later.
  • the utterance meaning analysis unit 103 selects and outputs user intention candidates included in the text.
  • the utterance meaning analysis unit 103 has a natural language understanding function such as NLU (Natural Language Understanding), for example, and from text data, an intention (intent) of a user utterance and a meaningful element included in the utterance (The entity information (entity: Entity) which is a significant element) is estimated, and the utterance meaning analysis processing is performed.
  • NLU Natural Language Understanding
  • the information processing apparatus 10 can perform accurate processing on the user utterance.
  • the response generation unit 121 generates a response to the user based on the utterance meaning analysis result of the user utterance estimated by the utterance meaning analysis unit 103.
  • the response is constituted by at least one of sound and image.
  • the voice information generated by the system utterance voice synthesis unit 122 through the voice synthesis process (TTS: Text To Speech) is output via the voice output unit 125 such as a speaker.
  • TTS Text To Speech
  • the display image information generated in the display image composition unit 123 is output via the image output unit 126 such as a display. Note that the output control of sound and image is controlled by the output (sound and image) control unit 124.
  • the image output unit 126 includes, for example, a display such as an LCD or an organic EL display, or a projector that performs projection display.
  • the information processing apparatus 10 can also output and display images on externally connected devices such as televisions, smartphones, PCs, tablets, AR (Argented Reality) devices, VR (Virtual Reality) devices, and other home appliances. It is.
  • the image input unit 105 is a camera and inputs an image of a speaker or a listener.
  • the image recognition unit 106 inputs a photographed image from the image input unit 105 and performs image analysis. For example, lip reading processing is performed by analyzing the movement of the lips of the speaker, and a character string corresponding to the utterance content of the speaker is generated from the result. Furthermore, the nod timing of the speaker or listener is acquired from the image. Details of these processes will be described later.
  • the speaker specifying unit 111 executes speaker specifying processing.
  • the speaker specifying unit 111 inputs the following data. (1) Speech recognition result (character string) related to the utterance of the speaker generated by the speech recognition unit 102, nodding timing estimation information of the speaker or listener, (2) Estimated utterance content (character string) based on the lip reading result of the speaker acquired by the image recognition unit 106, nodding timing information of the speaker or listener,
  • the speaker specifying unit 111 inputs each of the above data, and executes speaker specifying processing using at least one of these pieces of information. A specific example of the speaker specifying process will be described later.
  • the speaker analysis unit 112 analyzes the external characteristics (age, sex, body shape, etc.) of the speaker specified by the speaker specifying unit 110, and includes a user database including the speaker registered in the storage unit 114 in advance. To search for a speaker and perform a specific process.
  • the speaker data storage unit 113 executes processing for storing the information of the speaker and the content of the speech in the storage unit (user database or the like) 114.
  • the storage unit (user database, etc.) 114 in addition to a user database consisting of speaker information such as age, gender, and body type for each user, the content of each speaker's speech is associated with each user (speaker). To be recorded.
  • processing shown in the flow of FIG. 5 and the subsequent steps can be executed in accordance with a program stored in the storage unit of the information processing apparatus 10, and for example, executed as a program execution process by a processor such as a CPU having a program execution function Can do.
  • a processor such as a CPU having a program execution function Can do.
  • Step S101 First, in step S101, the speech recognition unit 102 performs speech recognition processing on the speech input from the speech input unit 101.
  • the voice recognition unit 102 has, for example, an ASR (Automatic Speech Recognition) function, and converts voice data into a character string (text data) composed of a plurality of words.
  • ASR Automatic Speech Recognition
  • Step S102 the speech recognition unit 102 acquires a character string that is a speech recognition result of the speaker.
  • the voice recognition unit 102 generates a character string of the utterance content acquired as a voice recognition result and outputs it to the speaker specifying unit 111.
  • Step S103 In step S ⁇ b> 103, the voice recognition unit 102 generates estimation data of the nodding timing of the speaker or listener based on the character string that is the speech recognition result of the speaker. Details of this processing will be described later.
  • Step S104 the image recognition unit 106 that has input the captured image of the image input unit 105 analyzes the image and searches for a person who is estimated to be a speaker. Specifically, a person whose lips are moving is searched.
  • Step S105 is a step of determining whether or not the search of the person (the person who moves the lips) estimated as the speaker based on the image in Step S104 is successful. If the search of the estimated speaker is successful, Proceed to step S111. If the search for the estimated speaker fails, the process proceeds to step S121.
  • Step S111 When the search of the person who is estimated to be the speaker based on the image (person who moves the lips) is successful, the image recognition unit 106 in step S111, the lips of the estimated speaker (person who moves the lips). Analyzing the movements of the lips, the lip reading recognition process is executed. The image recognition unit 106 generates a character string of the utterance content based on the lip reading recognition process, and outputs the character string to the speaker specifying unit 111.
  • Step S112 to S113 The process in step S112 is a process executed by the speaker specifying unit 112.
  • the speaker specifying unit 112 (1) A character string of utterance content generated by the voice recognition unit 102 based on voice recognition, (2) a character string of the utterance content generated by the image recognition unit 106 based on the lip recognition processing; Input these two character strings.
  • the speaker specifying unit 112 compares these two character strings.
  • step S113 Yes
  • the process proceeds to step S131, and the estimated speaker (person who moves the lips) detected based on the image in step S104 is specified as the speaker.
  • the matching rate between the speech recognition result character string and the lip reading recognition result character string is equal to or higher than a predetermined threshold
  • the estimated speaker moving the lip is detected based on the image). Person as the speaker.
  • step S113 No
  • the estimated speaker (moving lips) detected based on the image in step S104 Is determined not to be a speaker, and the process returns to step S104 to search for an estimated speaker again.
  • the estimated speaker detected based on the image in step S104 is excluded from the search target, and only other persons are searched.
  • the process in step S121 is a process executed by the image recognition unit 106.
  • the image recognition unit 106 that has input the captured image of the image input unit 105 analyzes the image and searches for a person who nods. When a nodding person can be found, the image recognition unit 106 generates nodding time-series data, that is, a “nodding timing time table”, and outputs it to the speaker identification unit 111.
  • the “nod timing timing table” will be described in detail later.
  • Step S122 to S123 The process of step S122 is a process executed by the speaker specifying unit 112.
  • the speaker specifying unit 111 compares the following two data. (1) Nodding timing estimation data of the speaker or listener estimated by the speech recognition unit 102 based on the character string that is the speech recognition result of the speaker in step S103; (2) The “nodding timing time table” generated by the image recognition unit 106 using the captured image of the image input unit 105 in step S121; The speaker identification unit 112 compares these two nodding timings.
  • step S123 (a) coincides with the estimated nodding timing of the speaker
  • the process proceeds to step S131, and the “person who nods” detected based on the image in step S121. Identify as a speaker.
  • the nodding timing estimation data of the speaker estimated by the speech recognition unit 102 based on the character string that is the speech recognition result of the speaker, and the image recognition unit 106 use the captured image of the image input unit 105. If the matching rate of the time stamps recorded in the “nodding timing time table” generated above is equal to or higher than a predetermined threshold, the “person who nods” detected based on the image is used as the speaker. Identify.
  • step S123 (b) matches the listener's estimated nodding timing
  • the listener's nod timing estimation data estimated by the speech recognition unit 102 based on the character string that is the speech recognition result of the speaker, and the image recognition unit 106 use the captured image of the image input unit 105.
  • the coincidence rate of the time stamps recorded in the generated “nodding timing time table” is equal to or higher than a predetermined threshold value, the process proceeds to step S124.
  • the nodding timing estimation data of the speaker and the listener estimated by the voice recognition unit 102 based on the character string that is the voice recognition result of the speaker, and the image recognition unit 106 use the captured image of the image input unit 105.
  • the nodding performer detected based on the image in step S121 utters It is determined that the user is neither a speaker nor a listener, and the process returns to step S104 to search for an estimated speaker again.
  • the nod performer detected based on the image in step S121 is excluded from the search target, and a search using only other persons as the search target is executed.
  • Step S124 the listener's nod timing estimation data estimated by the speech recognition unit 102 based on the character string that is the speech recognition result of the speaker in step S123, and the image recognition unit 106 obtain the captured image of the image input unit 105. This is executed when the “nodding timing time table” generated by using the data generally matches.
  • step S124 the speaker identifying unit 111 determines that the nod performer detected from the image is a listener, acquires information on the line of sight and head orientation of the listener from the image recognition unit 106, and in step S131, The person in the direction of is identified as the speaker.
  • Step S131 is a speaker specifying process executed by the speaker specifying unit 111.
  • the speaker specifying unit 111 executes any of the following three types of speaker specifying processes.
  • Step S113 Yes
  • Step S123 (a) Matches the estimated nodding timing of the speaker The nodding timing estimation data of the speaker estimated by the speech recognition unit 102 based on the character string that is the speech recognition result of the speaker, and the image recognition unit When the “nodding timing time table” generated using the captured image of the image input unit 105 substantially matches 106, the “person who nods” detected based on the image in step S121 is identified as the speaker. To do.
  • Step S123 (b) Matches with the listener's estimated nodding timing
  • the “nodding timing time table” generated using the captured image of the image input unit 105 substantially matches
  • the nod performer detected from the image is determined to be a listener, and information on the line of sight and head orientation of the listener is acquired from the image recognition unit 106, and the person ahead of the line of sight and head direction is identified as the speaker.
  • Step S132 Finally, the speaker specifying unit 111 analyzes the characteristics of the speaker after the speaker specifying process. Then, the analysis result of the speaker and the utterance content are stored in the storage unit (user database or the like) 114 via the speaker data storage unit 113.
  • the data stored in the storage unit (user database, etc.) 114 includes, for example, the external features (age, gender, body type, etc.) of the speaker analyzed from the image acquired by the image input unit 105, and the generation of the voice recognition unit 102.
  • the speech recognition unit 102 performs speech recognition processing on the speech input from the speech input unit 101 to generate a character string indicating the utterance content. Based on the character string that is the voice recognition result of the speaker, nodding timing estimation data for the speaker or listener is generated.
  • the flow shown in FIG. 6 is a flowchart showing the effective procedure of these processes. The processing of each step will be described sequentially.
  • Step S201 First, in step S ⁇ b> 201, the voice recognition unit 102 inputs a speaker's voice from the voice input unit 101.
  • Step S202 the voice recognition unit 102 converts the voice of the speaker input from the voice input unit 101 into a character string (text data) composed of a plurality of words.
  • a character string text data
  • the utterance character string 251 shown in FIG. 6 is generated. This uttered character string 251 is input to the speaker specifying unit 111.
  • Step S203 In step S ⁇ b> 203, the speech recognition unit 102 generates estimation data of the speaker's nod timing based on the character string that is the speech recognition result of the speaker. Through this process, a speaker nodding timing estimation time table 252 shown in FIG. 6 is generated. The speaker nodding timing estimation time table 252 is input to the speaker specifying unit 111.
  • Step S204 the voice recognition unit 102 generates estimation data of the listener's nod timing based on the character string that is the voice recognition result of the speaker. This process generates the listener nodding timing estimation time table 253 shown in FIG. The listener nodding timing estimation time table 253 is input to the speaker specifying unit 111.
  • FIG. 7 shows a character string generated by the speech recognition unit 102 based on the uttered speech.
  • String Hello, It's good weather today. By the way, did you watch that movie? It's popular now and every movie theater seems to be full.
  • the voice recognition unit 102 estimates the nodding timing of the speaker and the listener according to the utterance voice made up of this character string.
  • the voice recognition unit 102 estimates the nodding timing of the speaker and the listener from the timing at which a punctuation mark that interrupts the voice enters.
  • the speaker performs “nodding” with his / her speech. For example, “nodding” associated with one's utterance is performed at the value immediately before the punctuation mark in the utterance sentence. On the other hand, the listener often performs “nodding” as a companion to the utterance of the speaker. For example, there are many nods immediately after punctuation in utterances.
  • the voice recognition unit 102 uses this characteristic to set the speaker's nod estimation timing just before the punctuation mark and the listener's nod estimation timing just after the punctuation mark.
  • the speech recognition unit 102 performs this estimation process, A speaker nod timing estimation time table 252 with the nod timing set immediately before the punctuation mark; A listener nodding timing estimation time table 253 in which the nodding timing is set immediately after the punctuation mark is generated.
  • the timing estimation time table is a table in which time information estimated to be nodding is sequentially recorded as a “time stamp”.
  • the voice recognition unit 102 obtains time information from the clock of the information processing apparatus 10 or via a network, and generates a time table in which time information estimated to be nodding is recorded as a “time stamp”.
  • the speaker nodding timing estimation time table 252 is a table in which time information (time stamp) estimated to be nodding is recorded in time series.
  • FIG. 9 is a flowchart for explaining a specific processing sequence of these processes. The processing of each step will be described sequentially.
  • step S301 In step S ⁇ b> 301, the image recognition unit 106 inputs a captured image of the image input unit 105.
  • Step S302 the image recognition unit 106 analyzes the image and searches for a person estimated to be a speaker. Specifically, a person whose lips are moving is searched.
  • Step S303 is a step of determining whether or not the search for the person (moving person's lips) estimated to be a speaker based on the image in step S302 is successful. If the search for the estimated speaker is successful, Proceed to step S304. If the search for the estimated speaker fails, the process proceeds to step S311.
  • Step S304 If the search of the person who is estimated to be the speaker based on the image (the person who moves the lips) is successful, in step S304, the image recognition unit 106 determines the lips of the estimated speaker (the person who moves the lips). Analyzing the movements of the lips, the lip reading recognition process is executed. The image recognition unit 106 generates an utterance character string 351 that is a character string indicating the utterance content based on the lip reading recognition process. The uttered character string 351 generated based on the lip reading recognition process is input to the speaker specifying unit 111.
  • step S ⁇ b> 311 the image recognition unit 106 analyzes the captured image of the image input unit 105 and searches for a person who nods. If a nodding person can be found, the image recognition unit 106 generates nodding time-series data, that is, “nodding timing time table 352”, and outputs it to the speaker identification unit 111.
  • the nod timing time table 352 is a table in which the actual nod timing of the nodding person in the image is recorded. That is, it is nod timing actual data.
  • the table configuration is the same as the configuration described above with reference to FIG.
  • the “nodding timing time table 352” generated by the image recognition unit 106 is a table in which the nodding timing observed from the image is recorded, and the actual time when the nodding is executed is recorded.
  • the nod timing timing tables 252 and 253 generated by the speech recognition unit 102 are estimated times that the nod is estimated to be executed according to the character string indicating the utterance content. Is a table in which is recorded. This is the process described above with reference to FIG.
  • FIG. 10 shows a table summarizing the minimum necessary elements for speaker identification.
  • Pattern 1 is a pattern in which the speaker is specified by the lip recognition of the speaker. In this pattern 1, Recognizing the lip reading of the speaker is required. Nodding recognition is unnecessary for both the speaker and the listener. Recognition of the listener's gaze is also unnecessary.
  • Pattern 2 is a pattern in which the speaker is identified by recognition of the speaker's nod. In this pattern 2, Recognizing the lip reading of the speaker becomes unnecessary. Nodding recognition requires the speaker's nodding recognition and no listener's nodding recognition. The viewer's gaze recognition becomes unnecessary.
  • Pattern 3 is a pattern in which the speaker is identified by the listener's nodding recognition and line-of-sight information. In this pattern 3, Recognizing the lip reading of the speaker becomes unnecessary. Nodding recognition does not require the speaker's nodding, and the listener's nodding is required. The viewer's gaze recognition is necessary.
  • the patterns 1 to 3 in FIG. 10 it is possible to improve the accuracy of speaker identification by adding information about items that are not required. For example, it is possible to improve the accuracy of speaker identification by using not only the speaker's nodding timing but also the listener's nodding timing and its gaze and head direction information.
  • An utterance rhythm is acquired from speech, and if the rhythm of the subject's head or body obtained from the image matches the rhythm, the target person is identified as the speaker.
  • a character string is acquired from speech, and a head skin vibration pattern depending on a vowel at the time of utterance is acquired from an image. The speaker is specified by the vowel of the character string and the head skin vibration pattern matching.
  • the speech break information is acquired from the voice, the blink timing is acquired from the image, and the speaker is identified by matching.
  • the body volume obtained from the image is compared with the volume level, the sound level, and the speed change.
  • the volume of the volume and the magnitude of the movement, the height of the voice and the raising and lowering of the face, the speed of the voice and the speed of the body movement are compared, and a person who shows a similar tendency is identified as the speaker.
  • a person who expresses the same emotion as the prediction result is identified by image recognition. The person is identified as the listener, and the person ahead of the line of sight or head is identified as the speaker.
  • a part of the processing of the above-described embodiment may be configured to be executed using a cloud side device (server).
  • voice recognition processing by the voice recognition unit 102 nod timing generation processing, lip reading recognition processing by the image recognition unit 106, nod detection processing, verification of character string recognition results, nod timing comparison processing, etc.
  • a part or all of them may be executed in a cloud-side device (server).
  • FIG. 11 is a processing sequence in which processing for specifying a speaker by voice recognition and lip reading recognition is executed by processing involving communication between the information processing apparatus 10 and the server 20.
  • FIG. 12 is a processing sequence in which processing for identifying a speaker using nodding timing is executed by processing involving communication between the information processing apparatus 10 and the server 20.
  • Step S401 First, in step S401, the information processing apparatus 10 transmits a voice recognition request to the server 20 together with the acquired voice.
  • Step S402 the server 20 transmits a speech recognition result to the information processing apparatus 10 in step S402.
  • the API used for the speech recognition processing in steps S401 to S402 is, for example, the following API.
  • GET / api / v1 / recognition / audio This API is an API for starting speech recognition and acquiring the recognition result (text character string).
  • the data required for this API request is audio data (audio stream data) input by the information processing apparatus 10 via the audio input unit 101.
  • the API response that is a response from the server 20 includes a speech recognition result character string (speech (string)) that is result data of the speech recognition processing executed in the speech recognition processing unit on the server 20 side.
  • step S403 In step S ⁇ b> 403, the information processing apparatus 10 transmits a lip reading recognition request to the server 20 together with the acquired image.
  • Step S404 Next, the server 20 transmits a lip reading recognition result to the information processing apparatus 10 in step S404.
  • the API used for the lip reading recognition process in steps S403 to S404 is, for example, the following API.
  • GET / api / v1 / recognition / lip This API is an API for starting lip reading recognition and acquiring a recognition result (text character string) and a speaker identifier (ID).
  • the API response that is the response from the server 20 includes a lip reading recognition character string (lip (string)) that is the result data of the lip reading recognition process executed by the lip reading recognition processing unit on the server 20 side, and a speaker ID ( spike-id (string)).
  • the server 20 holds a user database in which a user ID and user feature information are recorded in association with each other.
  • the server 20 identifies a user based on image data received from the information processing apparatus 10 and a user identifier (ID). Is provided to the information sail processing apparatus 10. However, in the case of an unregistered user, a result that it is unknown is returned.
  • ID user identifier
  • step S405 Next, in step S ⁇ b> 405, the information processing apparatus 10 transmits a comparison request between the speech recognition result (character string) and the lip reading recognition result (character string) to the server 20.
  • step S406 Next, in step S ⁇ b> 406, the server 20 transmits a comparison result (match rate) between the speech recognition result (character string) and the lip reading recognition result (character string) to the information processing apparatus 10.
  • the API used for the comparison process between the speech recognition result (character string) and the lip reading recognition result (character string) in steps S405 to S406 is, for example, the following API.
  • GET / api / v1 / recognition / audio / comparison This API is an API for comparing the character string of the voice recognition result and the character string of the lip reading recognition result and acquiring the result of matching.
  • the data required for this API request is received from the server 20 by the information processing apparatus 10.
  • Speech recognition result character string (speech (string)) Lip reading recognition result string (lip (string))
  • the API response that is a response from the server 20 includes a character string match rate (concordance-rate (integer)) that is the result data of the character string comparison processing executed in the character string comparison unit on the server 20 side. .
  • step S407 the information processing apparatus 10 causes the speaker specifying unit 111 to perform speaker specifying processing based on the character string match rate (concordance-rate (integer)) received from the server 20. That is, Speech recognition result character string (speech (string)) Lip reading recognition result string (lip (string)) When the matching rate of these character strings is equal to or higher than a predetermined threshold, an estimated speaker (a person who moves the lips) detected based on the image is specified as a speaker.
  • the character string match rate concordance-rate (integer)
  • Step S408 Next, in step S ⁇ b> 408, the information processing apparatus 10 transmits a speaker information acquisition request to the server 20.
  • Step S409 the server 20 transmits speaker information to the information processing apparatus 10 in step S409.
  • the API used for the speaker information acquisition processing in steps S408 to S409 is, for example, the following API.
  • the data required for this API request includes image data (video stream data) input by the information processing apparatus 10 via the image input unit 105 and a speaker ID (speaker-id (string)) received from the server 20. is there.
  • the API response that is a response from the server 20 includes user information corresponding to the speaker ID acquired from the user database on the server 20 side. Specifically, it is configured by the following information of the speaker. Gender (sex (string)) Age (age (integer)) Height (integer) Physical status (string) These are data registered in the user database on the server 20 side.
  • Step S410 Next, in step S ⁇ b> 410, the information processing apparatus 10 transmits a speaker information registration request to the server 20.
  • Step S411 Next, in step S411, the server 20 transmits a speaker information registration completion notification to the information processing apparatus 10.
  • the API used for the speaker information registration processing in steps S410 to S411 is, for example, the following API. POST / api / v1 / recognition / speakers / ⁇ speaker-id ⁇
  • the data required for the API request includes a speaker ID (speaker-id (string)) received by the information processing apparatus 10 from the server 20, a voice recognition result character string (speech (string)) received from the server 20.
  • the image data (video stream data) input by the information processing apparatus 10 via the image input unit 105.
  • the API response that is a response from the server 20 includes a speaker registration ID (registered-speaker-id (string)).
  • the next information of the speaker can be stored in the database, so that the speaker can be specified at the time of the next utterance content analysis.
  • A Face photograph
  • Voice quality In addition, by storing the following data, it is possible to perform recognition according to the person's eyelid at the time of recognition, and to improve recognition accuracy.
  • C Mouth movement characteristics
  • Utterance sound characteristics e
  • Utterance contents trends of utterance contents
  • the server 20 registers the speaker information (a) to (i) in the data heart.
  • Step S421 First, in step S421, the information processing apparatus 10 transmits a nod timing estimation data generation request to the server 20 along with the acquired voice.
  • Step S422 Next, in step S422, the server 20 transmits a voice-based nod timing estimation time table to the information processing apparatus 10.
  • the API used for the nod timing estimation time table generation processing in steps S421 to S422 is, for example, the following API.
  • GET / api / v1 / recognition / audio / nodes This API is an API for analyzing a character string obtained from a speech recognition result and obtaining a nodding timing estimation time table (a time stamp list of times at which nodding is estimated) and a nodding person's ID. .
  • the data required for this API request is audio data (audio stream data) input by the information processing apparatus 10 via the audio input unit 101.
  • the API response that is a response from the server 20 includes a speech-based nod timing estimation time table acquired by the speech recognition processing unit on the server 20 side analyzing the speech recognition result (character string).
  • the voice-based nod timing estimation time table includes the following two types of tables. Speaker nodding timing estimation time table (speaker-nods (string-array)) Listener nodding timing estimation timetable (listener-nodes (string-array)) These are generated in the voice recognition unit of the server 20 in accordance with the processing described above with reference to FIG. That is, the optimal nod timing is determined from the voice recognition result and generated.
  • Step S423 First, in step S423, the information processing apparatus 10 transmits a nod timing data generation request to the server 20 together with the acquired image.
  • step S424 the server 20 transmits an image-based nodding timing time table to the information processing apparatus 10.
  • the API used for the nod timing estimation time table generation processing in steps S423 to S424 is, for example, the following API.
  • GET / api / v1 / recognition / nodes This API is an API for analyzing an image and obtaining a nodding timing time table (a time stamp list of times when nodding is performed) and an ID of the nodding person.
  • Data necessary for the API request is image data (video stream data) input by the information processing apparatus 10 via the image input unit 105.
  • an API response that is a response from the server 20 includes an image-based nodding timing time table (an image recognition processing unit on the server 20 side analyzing and acquiring an image). nod-timings (string-array)) and nodding ID (string-person-id (string)).
  • the server 20 holds the user database in which the user ID and the user characteristic information are recorded in association with each other, specifies the user based on the image data received from the information processing apparatus 10, and identifies the user identifier. (ID) is provided to the information sail processing apparatus 10. However, in the case of an unregistered user, a result that it is unknown is returned.
  • step S425 the information processing apparatus 10 (A1) a voice-based speaker nodding timing estimation time table received in step S422; (A2) a voice-based listener nodding timing estimation time table; Each of these two nod timing estimation timetables, (V1) image-based nodding timing time table received in step S424; A request for comparing these timetables is transmitted.
  • Step S426 the server 20 transmits a comparison result (match rate) between the two voice-based nodding timing estimation time tables and the image-based nodding timing time table to the information processing apparatus 10.
  • the API used for the comparison process of the nod timing table in steps S425 to S426 is, for example, the following API.
  • GET / api / v1 / recognition / nodes / comparison This API is an API for comparing the nodding timings of the two audio-based nodding timing estimation time tables and the nodding timing time table of the image-based nodding timing time table to obtain a result of matching.
  • the data required for this API request is the following data received from the server 20 by the information processing apparatus 10.
  • A1 voice-based speaker nodding timing estimation time table (speaker-nod (string-array)) received in step S422,
  • A2) voice-based listener nodding timing estimation timetable (listener-nod (string-array)), These two nod timing estimation timetables,
  • V1) image-based nodding timing time table (nod-timing (string-array)) received in step S424,
  • the API response which is a response from the server 20 is the result data of the nodding timing time table comparison processing executed in the speaker specifying unit on the server 20 side.
  • Speaker-concordance-rate integer
  • Listener-concordance-rate integer
  • Speaker-concordance-rate is: (A1) a voice-based speaker nodding timing estimation time table (speaker-nod (string-array)); (V1) Image-based nodding timing timetable (nod-timing (string-array)), This is the coincidence rate (%) data obtained as a comparison result of the nod timing of these two tables.
  • the listener-concordance-rate is: (A2) a voice-based listener nodding timing estimation time table (listener-nod (string-array)); (V1) Image-based nodding timing timetable (nod-timing (string-array)), This is the coincidence rate (%) data obtained as a comparison result of the nod timing of these two tables.
  • step S427 the information processing apparatus 10 receives the speaker nod match rate (%) (speaker-concordance-rate (integer)) received from the server 20, Listener-concordance-rate (integer) Based on these data, the speaker specifying unit 111 executes speaker specifying processing.
  • V1 A nod performer detected from an image that is a generation target of an image-based nod timing timing table (node-timing (string-array)) is determined to be a speaker.
  • V1 A nod performer detected from an image that is a generation target of an image-based nod timing timing table (nod-timing (string-array)) is determined to be a listener. In this case, the processes of steps S428 to S430 are further executed to specify the speaker.
  • step S427 If a speaker is specified in step S427, the processes in steps S428 to S430 can be omitted. That is, in step S427, if the speaker-concordance-rate (integer) is equal to or greater than a predetermined threshold value and a speaker is specified, steps S428 to S430 are performed. You may abbreviate
  • Steps S428 to 430 The processing of steps S428 to S430 is executed when the listener-nodding match rate (%) (listener-concordance-rate (integer)) is equal to or greater than a predetermined threshold value in step S427. That is, (V1) This process is performed when it is determined that a nod performer detected from an image that is a generation target of an image-based nod timing timing table (node-timing (string-array)) is a listener.
  • the information processing apparatus 10 outputs a listener's gaze point detection request to the server in step S428. This is a request to detect the person (speaker) ahead of the line of sight of the nod performer (listener) detected from the image.
  • step S429 the server 20 transmits detection information of the person (speaker) ahead of the line of sight of the nod performer (listener) detected from the image to the information processing apparatus 10. This is performed using image data received from the information processing apparatus 10.
  • step S430 the information processing apparatus 10 determines, based on the detection information of the person (speaker) ahead of the gaze of the nod performer (listener) detected from the image received from the server 20 by the speaker specifying unit 111. It is determined that the person at the line of sight is the speaker.
  • Step S431 The following processes in steps S431 to S434 are the same as the processes in steps S408 to S411 described above with reference to FIG.
  • step S ⁇ b> 431 the information processing apparatus 10 transmits a speaker information acquisition request to the server 20.
  • Step S432 the server 20 transmits the speaker information to the information processing apparatus 10 in step S432.
  • the response from the server 20 includes user information corresponding to the speaker ID acquired from the user database on the server 20 side. Specifically, it is configured by the following information of the speaker. Gender (sex (string)) Age (age (integer)) Height (integer) Physical status (string) These are data registered in the user database on the server 20 side.
  • Step S433 Next, in step S 433, the information processing apparatus 10 transmits a speaker information registration request to the server 20.
  • Step S434 the server 20 transmits a speaker information registration completion notification to the information processing apparatus 10.
  • the registration information as the speaker information includes the following data.
  • A) Face photo (b) Voice quality (c) Mouth movement characteristics (d) Utterance characteristics (e) Utterance contents (trends of utterance contents)
  • F) Gender (g) Age (h) Height (i) Physical characteristics
  • the server 20 registers the speaker information of (a) to (i) in the data heart.
  • the processing described with reference to FIGS. 11 and 12 includes voice recognition processing, nod timing generation processing, lip reading recognition processing, nod detection processing, character string recognition result verification, nod timing verification processing, and the like. It is a processing sequence when it is set as the structure performed in the apparatus (server) by the side of a cloud.
  • agent device First, a usage example as an agent device will be described. If there are multiple people in front of the agent device, and one of them speaks to the agent device, the agent device captures the lip movement of the speaker with a camera and uses lip reading to convert the utterance into a string. Convert. At the same time, the voice input using a microphone is converted into a character string using voice recognition. By comparing these character strings, it can be determined whether or not the person who captured the movement of the lips is a speaker.
  • the agent device can infer information on the gender, age, and physical characteristics as the speaker's characteristics. More appropriate answers can be made. For example, if the speaker is recognized as a child, it is possible to answer in an easy-to-understand tone tailored to the child, or to introduce a high-volume restaurant to a young and well-structured man.
  • the following processing is also possible by storing the utterance feature information such as the utterance content of the speaker and the manner of speaking in the database together with the face photograph.
  • the utterance feature information is input to the speech recognition or lip recognition engine, so that recognition according to the speaker can be performed, and the recognition accuracy can be improved.
  • speaker identification is effective to prevent the agent device from malfunctioning in response to the utterance of the agent device or the utterance of TV or radio sound.
  • the speaker by specifying the speaker according to the process of the present disclosure, the following process can be performed.
  • the age and gender can be determined from the appearance of the speaker, and display according to the speaker can be performed.
  • display according to the speaker can be performed.
  • vending machines it is possible to recommend products tailored to the speaker.
  • the speaker it is possible to record both the content of the utterance and the appearance information for a person who is interested in the displayed content or purchased product, or who has given an opinion. Useful for data collection.
  • a shop or the like by using the security camera or the like and the above-described speaker specifying process together, it is possible to record the utterance content of the customer for the product in the store together with the characteristics of the speaker.
  • the child's utterance contents can be easily reported to parents, and the burden on the nursery school can be reduced.
  • the parent can check the utterance contents of the child at any time. By counting the number of utterances of each student at school, it can be used to determine whether the lesson is a class in which only some students are speaking or a class in which many students are speaking.
  • the speaker specifying process of the present disclosure can be used in various fields.
  • a speaker is specified from among an unspecified number of persons even if the speaker is not registered in advance. Even when the movement of the lip of the speaker cannot be photographed, the speaker can be specified. Then, by specifying the speaker, the following effects can be obtained.
  • A) Acquisition of external feature information such as the speaker's age and gender makes it possible to provide a service tailored to the speaker.
  • B It is possible to improve speech recognition and lip-reading recognition accuracy by recording the utterance contents and habits of the speaker and using it for learning the recognition function.
  • C By providing a service only to a specific speaker, it becomes possible to give a specific person administrator authority.
  • D By utilizing the characteristics and content of the utterance as log data, it can be used for market research data, entertainment use, and discovery of conspiracy.
  • FIG. 13 illustrates an example of a system configuration for executing the processing of the present disclosure.
  • Information processing system configuration example 1 has almost all the functions of the information processing apparatus shown in FIG. 4 as one apparatus, for example, a smartphone or PC owned by the user, or voice input / output and image input / output functions.
  • the information processing apparatus 410 is a user terminal such as an agent device.
  • the information processing apparatus 410 corresponding to the user terminal executes communication with the application execution server 420 only when an external application is used when generating a response sentence, for example.
  • the application execution server 420 is, for example, a weather information providing server, a traffic information providing server, a medical information providing server, a tourist information providing server, or the like, and is configured by a server group that can provide information for generating a response to a user utterance. .
  • FIG. 13B is an information processing system configuration example 2 in the information processing apparatus 410, which is an information processing terminal such as a smartphone, PC, agent device, etc. owned by the user, with some of the functions of the information processing apparatus shown in FIG.
  • This is an example of a system that is configured to be executed by a data processing server 460 that can communicate with an information processing apparatus.
  • the audio input unit 101, the image input unit 105, the audio output unit 125, and the image output unit 126 in the apparatus shown in FIG. 4 are provided on the information processing device 410 side on the information processing terminal side, and all other functions are provided on the server side. It is possible to perform a configuration such as
  • An audio input / output unit and an image input / output unit are configured in an information processing terminal such as a user terminal.
  • the data processing server performs a speaker specifying process based on voice and images received from the user terminal.
  • the server generates information necessary for the speaker identification process and provides the information to the information processing device. It is good also as a structure which performs a speaker specific process. For example, such various configurations are possible.
  • Information processing terminal A voice input unit; An image input unit; A communication unit that transmits the sound acquired through the sound input unit and the camera-captured image acquired through the image input unit to the server;
  • the server A speech recognition unit that performs speech recognition processing of the speech of the speaker received from the information processing terminal;
  • An image recognition unit that performs analysis of the camera-captured image received from the information processing terminal;
  • the voice recognition unit Generate a string that shows the utterance content of the speaker, and generate nodding timing estimation data for the speaker and listener based on the string,
  • the image recognition unit It is a configuration that generates nod timing actual data that records the nod timing of the nod performer included in the camera image,
  • a speaker identification process is executed based on the degree of coincidence between the nod timing estimation data and the actual nod timing data.
  • Such an information processing system can be configured.
  • the functions on the information processing terminal side such as the user terminal and the function division modes of the server side functions can be set in various different ways, and a configuration in which one function is executed on both sides is also possible.
  • FIG. 14 is an example of the hardware configuration of the information processing apparatus described above with reference to FIG. 4, and constitutes the data processing server 460 described with reference to FIG. It is an example of the hardware constitutions of information processing apparatus.
  • a CPU (Central Processing Unit) 501 functions as a control unit or a data processing unit that executes various processes according to a program stored in a ROM (Read Only Memory) 502 or a storage unit 508. For example, processing according to the sequence described in the above-described embodiment is executed.
  • a RAM (Random Access Memory) 503 stores programs executed by the CPU 501 and data.
  • the CPU 501, ROM 502, and RAM 503 are connected to each other by a bus 504.
  • the CPU 501 is connected to an input / output interface 505 via a bus 504.
  • An input unit 506 including various switches, a keyboard, a mouse, a microphone, and a sensor, and an output unit 507 including a display and a speaker are connected to the input / output interface 505.
  • the CPU 501 executes various processes in response to a command input from the input unit 506 and outputs a processing result to the output unit 507, for example.
  • the storage unit 508 connected to the input / output interface 505 includes, for example, a hard disk and stores programs executed by the CPU 501 and various data.
  • a communication unit 509 functions as a transmission / reception unit for Wi-Fi communication, Bluetooth (BT) communication, and other data communication via a network such as the Internet or a local area network, and communicates with an external device.
  • BT Bluetooth
  • the drive 510 connected to the input / output interface 505 drives a removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card, and executes data recording or reading.
  • a removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card
  • the technology disclosed in this specification can take the following configurations.
  • the speaker specifying unit (A) A speaker identification process based on a comparison result between a speech recognition result for an uttered speech and a lip reading recognition result for analyzing the utterance from the lip movement of the speaker, or (B) A speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech, An information processing apparatus that executes at least one of the speaker identification processes of (a) and (b) above.
  • the speaker specifying unit If it ’s impossible to detect the lip movement of the speaker from the camera image, (B) A speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech, The information processing apparatus according to (1) or (2).
  • the speaker specifying unit Nodding timing estimation data of the speaker or listener estimated based on the utterance character string obtained from the speech recognition result for the uttered speech, A comparison process with the actual data of the nodding person's nodding timing included in the camera image is executed.
  • the information processing apparatus according to any one of (1) to (3), wherein a nod performer included in the camera-captured image determines whether the person is a speaker or a listener.
  • the speaker specifying unit If the degree of coincidence between the utterer nod timing estimation data estimated based on the utterance character string obtained from the speech recognition result and the nod timing actual data is high, it is determined that the nod performer is a utterer, If the degree of coincidence between the listener nodding timing estimation data estimated based on the utterance character string obtained from the speech recognition result and the nodding timing actual data is high, it is determined that the nod performer is a listener (4).
  • the speaker specifying unit If it is determined that the nod performer is a listener, The information processing apparatus according to (5), wherein a person in the line of sight of the nod performer is determined as a speaker.
  • the information processing apparatus A speech recognition unit that performs speech recognition processing for analyzing the speech from the lip movement of the speaker and performing speech recognition processing for the speech speech;
  • the speaker specifying unit The information processing apparatus according to any one of (1) to (6), wherein a speech recognition result and a lipreading recognition result generated by the speech recognition processing unit are input and a speaker specifying process is executed.
  • the voice recognition unit further includes: Based on the utterance character string obtained from the speech recognition result for the uttered speech, generate nodding timing estimation data of the speaker and listener, The speaker specifying unit Nodding timing estimation data of a speaker and a listener generated by the voice recognition processing unit, A comparison process with the actual data of the nodding person's nodding timing included in the camera image is executed.
  • the information processing apparatus according to (7), wherein the nod performer included in the camera-captured image determines whether the person is a speaker or a listener.
  • the information processing apparatus From an image captured by the camera, an image recognition unit that executes an analysis process of the operation of the speaker or the operation of the listener who is listening to the speech of the speaker,
  • the speaker specifying unit The information processing apparatus according to any one of (1) to (8), wherein the analysis information generated by the image recognition processing unit is input and a speaker specifying process is executed.
  • the image recognition unit Generate a timetable that records the nod timing of the nod performer included in the camera image
  • the speaker specifying unit The information processing apparatus according to (9), wherein a speaker specifying process is executed using a nod timing timing table generated by the image recognition processing unit.
  • the information processing apparatus includes: A speech recognition unit that performs speech recognition processing on the uttered speech; An image recognition unit that performs an analysis process of a captured image of at least one of the speaker or the listener; The voice recognition unit Based on the character string obtained by executing the speech recognition process for the uttered speech, estimating the speaker's nod timing and the listener's nod timing, and recording the estimated nod timing data, Talker nod timing estimation timetable, Listener nod timing estimation timetable, Produces The image recognition unit Recorded the nodding timing of the nod performer included in the camera image, Generate a nod timing timing table, The speaker specifying unit When the degree of coincidence between the speaker nodding timing estimation time table and the nodding timing time table is high, it is determined that the nodding performer is a speaker, The information processing apparatus according to any one of (1) to (10), wherein when the degree of coincidence between the listener nod timing estimation time table and the nod timing timing table is high, the nod performer is determined to be a listener
  • An information processing system having an information processing terminal and a server, The information processing terminal A voice input unit; An image input unit; A communication unit that transmits the audio acquired through the audio input unit and the camera-captured image acquired through the image input unit to the server;
  • the server A speech recognition unit that performs speech recognition processing of the speech of the speaker received from the information processing terminal;
  • An image recognition unit that performs analysis of the camera-captured image received from the information processing terminal;
  • the voice recognition unit Generating a character string indicating the utterance content of the speaker, and generating nodding timing estimation data of the speaker and the listener based on the character string;
  • the image recognition unit Generating nod timing actual data that records the nod timing of the nod performer included in the camera-captured image;
  • An information processing system that executes speaker identification processing based on a degree of coincidence between the nod timing estimation data and the nod timing actual data.
  • the information processing apparatus includes: It has a speaker identification unit that executes speaker identification processing,
  • the speaker specifying unit (A) A speaker identification process based on a comparison result between a speech recognition result for an uttered speech and a lip reading recognition result for analyzing the utterance from the lip movement of the speaker, or (B) A speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech, An information processing method for executing the speaker specifying process of at least one of (a) and (b) above.
  • the server From the voice received from the information processing terminal, voice recognition processing of the voice of the speaker is executed, a character string indicating the utterance content of the speaker is generated, and nodding timing estimation of the speaker and the listener based on the character string Generate data, Performing analysis of the camera-captured image received from the information processing terminal; Generating nod timing actual data that records the nod timing of the nod performer included in the camera-captured image;
  • a program for executing information processing in an information processing device includes: It has a speaker identification unit that executes speaker identification processing, The program is stored in the speaker specifying unit.
  • a speaker identification process based on a comparison result between a speech recognition result for an uttered speech and a lip reading recognition result for analyzing the utterance from the lip movement of the speaker or
  • a speaker identification process based on an analysis result of a speaker's motion or a listener's motion listening to the speaker's speech A program for executing at least one of the speaker specifying processes (a) and (b).
  • the series of processes described in the specification can be executed by hardware, software, or a combined configuration of both.
  • the program recording the processing sequence is installed in a memory in a computer incorporated in dedicated hardware and executed, or the program is executed on a general-purpose computer capable of executing various processing. It can be installed and run.
  • the program can be recorded in advance on a recording medium.
  • the program can be received via a network such as a LAN (Local Area Network) or the Internet and installed on a recording medium such as a built-in hard disk.
  • the various processes described in the specification are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary.
  • the system is a logical set configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same casing.
  • the speaker specifying unit that executes the speaker specifying process (a) compares the speech recognition result for the uttered voice with the lip reading recognition result for analyzing the utterance from the lip movement of the speaker. Or (b) the speaker identification process based on the analysis result of the operation of the speaker or the listener. For example, a process of comparing the nodding timing estimation data of a speaker or listener estimated based on an utterance character string obtained as a speech recognition result and the nodding timing actual data of the nodding performer included in the camera-captured image is executed. Based on the degree of coincidence, it is determined whether the nod performer included in the camera-captured image is a speaker or a listener. With this configuration, an apparatus and a method for executing a speaker identification process with high accuracy under various circumstances are realized.

Landscapes

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

Abstract

様々な状況下において、高精度な発話者特定処理を実行する装置、方法を実現する。発話者の特定処理を実行する発話者特定部が、(a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、(b)発話者、または聞き手の動作の解析結果に基づく発話者特定処理を実行する。例えば、音声認識結果として得られる発話文字列に基づいて推定される発話者、または聞き手のうなずきタイミング推定データと、カメラ撮影画像に含まれるうなずき実行者のうなずきタイミング実データとの比較処理を実行し、その一致度に基づいて、カメラ撮影画像に含まれるうなずき実行者が、発話者であるか、聞き手であるかを判別する。

Description

情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
 本開示は、情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。さらに詳細には、ユーザ発話の音声認識結果に基づく処理や応答を行う情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。
 昨今、ユーザ発話の音声認識を行い、認識結果に基づく様々な処理や応答を行う音声認識システムの利用が増大している。
 この音声認識システムにおいては、マイクを介して入力するユーザ発話を認識理解して、それに応じた処理を行う。
 例えばユーザが、「明日の天気を教えて」と発話した場合、天気情報提供サーバから天気情報を取得して、取得情報に基づくシステム応答を生成して、生成した応答をスピーカーから出力する。具体的には、例えば、
 システム発話=「明日の天気は晴れです。ただし、夕方、雷雨があるかもしれません」
 このようなシステム発話を出力する。
 このような音声認識を行う機器として、スマートフォン等のモバイル機器、スマートスピーカー、エージェント機器、サイネージ機器等がある。
 スマートスピーカー、エージェント機器、サイネージ機器等を利用した構成では、これらの機器の周囲に多くの人がいる場合が多い。
 音声認識機器は、機器に対する発話者(発話ユーザ)を特定し、その発話者に応じたサービスを提供することが求められる。
 発話者の特定方法を開示した従来技術として、例えば特許文献1(特開平11-24691号公報)や特許文献2(特開2008-146054号公報)がある。
 これらは、機器に入力した声の音質(周波数特定・声紋)を解析して解析結果に基づいて、発話者を特定する方法を開示している。
 しかし、これらの方法では、類似する音質の発話者の場合、誤検出する可能性が高く、また事前に音質を登録しておく必要がある。
 また、特許文献3(特開平08-235358号公報)は、カメラ等によって撮影された画像から、口の動きを検出して発話者を識別する方法を開示している。
 しかし、この方法では、口を動かしている人が複数人いる場合や、発話者の口が撮影できない場合は発話者を特定することが不可能となる。
特開平11-24691号公報 特開2008-146054号公報 特開平08-235358号公報
 本開示は、例えば、上記問題点に鑑みてなされたものであり、音声と画像の両方を利用して、様々な状況下で高精度な発話者特定を可能とした情報処理装置、情報処理システム、および情報処理方法、並びにプログラムを提供することを目的とする。
 本開示の第1の側面は、
 発話者の特定処理を実行する発話者特定部を有し、
 前記発話者特定部は、
 (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
 (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
 上記(a),(b)の少なくともいずれかの発話者特定処理を実行する情報処理装置
にある。
 さらに、本開示の第2の側面は、
 情報処理端末とサーバを有する情報処理システムであり、
 前記情報処理端末は、
 音声入力部と、
 画像入力部と、
 前記音声入力部を介して取得した音声と、前記画像入力部を介して取得したカメラ撮影画像を前記サーバに送信する通信部を有し、
 前記サーバは、
 前記情報処理端末から受信する発話者の音声の音声認識処理を実行する音声認識部と、
 前記情報処理端末から受信する前記カメラ撮影画像の解析を実行する画像認識部を有し、
 前記音声認識部は、
 前記発話者の発話内容を示す文字列を生成するとともに、前記文字列に基づく発話者と聞き手のうなずきタイミング推定データを生成し、
 前記画像認識部は、
 前記カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したうなずきタイミング実データを生成し、
 前記情報処理端末、または前記サーバの少なくともいずれかにおいて、
 前記うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度に基づく発話者特定処理を実行する情報処理システムにある。
 さらに、本開示の第3の側面は、
 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 発話者の特定処理を実行する発話者特定部を有し、
 前記発話者特定部が、
 (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
 (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
 上記(a),(b)の少なくともいずれかの発話者特定処理を実行する情報処理方法にある。
 さらに、本開示の第4の側面は、
 情報処理端末とサーバを有する情報処理システムにおいて実行する情報処理方法であり、
 前記情報処理端末は、
 音声入力部を介して取得した音声と、画像入力部を介して取得したカメラ撮影画像を前記サーバに送信し、
 前記サーバは、
 前記情報処理端末から受信する前記音声から、発話者の音声の音声認識処理を実行し、発話者の発話内容を示す文字列を生成するとともに、前記文字列に基づく発話者と聞き手のうなずきタイミング推定データを生成し、
 前記情報処理端末から受信する前記カメラ撮影画像の解析を実行し、
 前記カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したうなずきタイミング実データを生成し、
 前記情報処理端末、または前記サーバの少なくともいずれかにおいて、
 前記うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度に基づく発話者特定処理を実行する情報処理方法にある。
 さらに、本開示の第5の側面は、
 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 発話者の特定処理を実行する発話者特定部を有し、
 前記プログラムは、前記発話者特定部に、
 (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
 (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
 上記(a),(b)の少なくともいずれかの発話者特定処理を実行させるプログラムにある。
 なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
 本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 本開示の一実施例の構成によれば、様々な状況下において、高精度な発話者特定処理を実行する装置、方法が実現される。
 具体的には、例えば、発話者の特定処理を実行する発話者特定部が、(a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、(b)発話者、または聞き手の動作の解析結果に基づく発話者特定処理を実行する。例えば、音声認識結果として得られる発話文字列に基づいて推定される発話者、または聞き手のうなずきタイミング推定データと、カメラ撮影画像に含まれるうなずき実行者のうなずきタイミング実データとの比較処理を実行し、その一致度に基づいて、カメラ撮影画像に含まれるうなずき実行者が、発話者であるか、聞き手であるかを判別する。
 本構成により、様々な状況下において、高精度な発話者特定処理を実行する装置、方法が実現される。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
ユーザ発話に対する応答を行う情報処理装置の具体的な処理例について説明する図である。 情報処理装置の構成例と利用例について説明する図である。 本開示の情報処理装置の実行する処理について説明する図である。 情報処理装置の構成例について説明する図である。 情報処理装置の実行する処理のシーケンスについて説明するフローチャートを示す図である。 情報処理装置の実行する音声認識処理のシーケンスについて説明するフローチャートを示す図である。 情報処理装置の実行するうなずきタイミングの解析処理について説明する図である。 情報処理装置の生成するうなずきタイミングを記録したテーブルの例について説明する図である。 情報処理装置の実行する画像認識処理のシーケンスについて説明するフローチャートを示す図である。 本開示の発話者特定処理において必要となる情報の複数のパターンについて説明する図である。 発話者特定処理をクラウド側のサーバを利用して実行する場合のシーケンスについて説明するシーケンス図である。 発話者特定処理をクラウド側のサーバを利用して実行する場合のシーケンスについて説明するシーケンス図である。 情報処理システムの構成例について説明する図である。 情報処理装置のハードウェア構成例について説明する図である。
 以下、図面を参照しながら本開示の情報処理装置、情報処理システム、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
 1.情報処理装置の実行する処理の概要について
 2.本開示の情報処理装置の実行する動作の概要について
 3.情報処理装置の構成例について
 4.発話者特定処理のシーケンスについて
 5.その他の発話者特定方法について
 6.クラウド側の装置(サーバ)を利用した構成について
 7.本開示の情報処理装置の具体的な利用例について
 8.情報処理装置、および情報処理システムの構成例について
 9.情報処理装置のハードウェア構成例について
 10.本開示の構成のまとめ
  [1.情報処理装置の実行する処理の概要について]
 まず、図1以下を参照して、本開示の情報処理装置の実行する処理の概要についてについて説明する。
 図1は、発話者1の発するユーザ発話を認識して応答を行う情報処理装置10の一処理例を示す図である。
 情報処理装置10は、発話者1のユーザ発話、例えば、
 ユーザ発話=「大阪の明日、午後の天気を教えて」
 このユーザ発話の音声認識処理を実行する。
 さらに、情報処理装置10は、ユーザ発話の音声認識結果に基づく処理を実行する。
 図1に示す例では、ユーザ発話=「大阪の明日、午後の天気を教えて」に応答するためのデータを取得し、取得データに基づいて応答を生成して生成した応答を、スピーカー14を介して出力する。
 図1に示す例では、情報処理装置10は、以下のシステム応答を行っている。
 システム応答=「大阪の明日、午後の天気は晴れですが、夕方、にわか雨がある可能性があります。」
 情報処理装置10は、音声合成処理(TTS:Text To Speech)を実行して上記のシステム応答を生成して出力する。
 情報処理装置10は、装置内の記憶部から取得した知識データ、またはネットワークを介して取得した知識データを利用して応答を生成して出力する。
 図1に示す情報処理装置10は、カメラ11、マイク12、表示部13、スピーカー14を有しており、音声入出力と画像入出力が可能な構成を有する。
 図1に示す情報処理装置10は、例えばスマートスピーカーあるいはエージェント機器と呼ばれる。
 本開示の情報処理装置10は、図2に示すように、エージェント機器10aに限らず、スマホ10bやPC10c等、あるいは公共の場所に設置されたサイネージ機器のような様々な装置形態とすることが可能である。
 情報処理装置10は、発話者1の発話を認識して、ユーザ発話に基づく応答を行う他、例えば、ユーザ発話に応じて図2に示すテレビ、エアコン等の外部機器30の制御も実行する。
 例えばユーザ発話が「テレビのチャンネルを1に変えて」、あるいは「エアコンの設定温度を20度にして」といった要求である場合、情報処理装置10は、このユーザ発話の音声認識結果に基づいて、外部機器30に対して制御信号(Wi-Fi、赤外光など)を出力して、ユーザ発話に従った制御を実行する。
 なお、情報処理装置10は、ネットワークを介してサーバ20と接続され、サーバ20から、ユーザ発話に対する応答を生成するために必要となる情報を取得することが可能である。また、音声認識処理や意味解析処理をサーバに行わせる構成としてもよい。
  [2.本開示の情報処理装置の実行する動作の概要について]
 次に、図3を参照して、本開示の情報処理装置の実行する動作の概要について説明する。
 ユーザ発話に対する応答を行うエージェント機器やサイネージ機器等の情報処理装置は、情報処理装置に対する発話者を特定し、その発話者に応じたサービスを提供することが求められる。
 本開示の情報処理装置では、発話者を特定するために、音声データと画像データを利用する。
 例えば、図3(A)に示すように、情報処理装置10が発話者31の口元を撮影可能なケースでは、発話者の発話音声をマイク12を介して入力するとともに、カメラ11によって撮影した発話者31の口の動きに基づく読唇処理を行い、発言内容の解析を行う。
 さらに、読唇処理を用いた発話内容解析結果と、発話音声データの音声認識結果とを比較し、一致度に基づいて発話者を特定する。
 一方、図3(B)に示すように、情報処理装置10が発話者31の口の動きを撮影できない場合には、発話者31のうなずきやジェスチャー、もしくは聞き手32の相槌やうなずき等のリアクションをカメラ撮影画像から解析して、この解析結果に基づいて発話者を特定する。
 本開示の情報処理装置10は、例えば、このような処理を実行することで、様々な状況下で発話者の高精度な特定処理を可能としたものである。
  [3.情報処理装置の構成例について]
 次に、図4を参照して、情報処理装置の具体的な構成例について説明する。
 図4は、ユーザ発話を認識して応答を行う情報処理装置10の一構成例を示す図である。
 図4に示すように、情報処理装置10は、音声入力部101、音声認識部102、発話意味解析部103、画像入力部105、画像認識部106、発話者特定部111、発話者解析部112、発話者データ保存部113、記憶部(ユーザデータベース等)114、応答生成部121、システム発話音声合成部122、表示画像生成部123、出力(音声、画像)制御部124、音声出力部125、画像出力部126を有する。
 なお、これらの構成要素は、全てを1つの情報処理装置10内部に構成することも可能であるが、一部の構成や機能を他の情報処理装置や外部サーバに備える構成としてもよい。
 ユーザの発話音声や、周囲音はマイクなどの音声入力部101に入力される。
 音声入力部(マイク)101は、入力したユーザ発話音声を含む音声データを、音声認識部102に入力する。
 音声認識部102は、例えばASR(Automatic Speech Recognition)機能を有し、音声データを複数の単語から構成される文字列(テキストデータ)に変換する。
 音声認識部102において生成されたテキストデータは、発話意味解析部103に入力される。
 なお、音声認識部102は、さらに、音声認識結果に基づいて、発話に基づいて推定される発話者や聞き手のうなずきタイミングの生成も行う。
 この処理については後段で詳細に説明する。
 発話意味解析部103は、テキストに含まれるユーザの意図候補を選択して出力する。
 発話意味解析部103は、例えば、NLU(Natural Language Understanding)等の自然言語理解機能を有し、テキストデータから、ユーザ発話の意図(インテント:Intent)や、発話に含まれる意味のある要素(有意要素)である実体情報(エンティティ:Entity)を推定し、発話意味の解析処理を行う。
 ユーザ発話から、意図(エンティティ)と、実体情報(エンティティ)を正確に推定、取得することができれば、情報処理装置10は、ユーザ発話に対する正確な処理を行うことができる。
 応答生成部121は、発話意味解析部103において推定されたユーザ発話の発話意味解析結果に基づいて、ユーザに対する応答を生成する。応答は、音声、または画像の少なくともいずれかによって構成される。
 応答音声を出力する場合は、システム発話音声合成部122が音声合成処理(TTS:Text To Speech)により生成した音声情報を、スピーカー等の音声出力部125を介して出力する。
 応答画像を出力する場合は、表示画像合成部123において生成した表示画像情報を、ディスプレイ等の画像出力部126を介して出力する。
 なお、音声、画像の出力制御は、出力(音声、画像)制御部124によって制御される。
 画像出力部126は、例えばLCD、有機ELディスプレイ等のディスプレイ、あるいはプロジェクション表示を行うプロジェクタ等によって構成される。
 なお、情報処理装置10は、外部接続機器、例えばテレビ、スマートフォン、PC、タブレット、AR(Argumented Reality)機器、VR(Virtual Reality)機器、その他の家電製品に画像を出力して表示することも可能である。
 画像入力部105は、カメラであり、発話者や聞き手の画像を入力する。
 画像認識部106は、画像入力部105の撮影画像を入力して、画像解析を行う。例えば発話者の唇の動きを解析して読唇処理を行い、その結果から発話者の発話内容に相当する文字列を生成する。
 さらに、画像から発話者や聞き手のうなずきタイミングの取得も行う。
 これらの処理の詳細については後段で説明する。
 発話者特定部111は、発話者の特定処理を実行する。
 発話者特定部111は、以下の各データを入力する。
 (1)音声認識部102において生成された発話者の発話に関する音声認識結果(文字列)や、発話者や聞き手のうなずきタイミング推定情報、
 (2)画像認識部106が取得した発話者の読唇結果に基づく推定発話内容(文字列)や、発話者や聞き手のうなずきタイミング情報、
 発話者特定部111は、上記の各データを入力し、これらの情報の少なくともいずれかを用いて発話者特定処理を実行する。
 この発話者特定処理の具体例については後述する。
 発話者解析部112は、発話者特定部110において特定された発話者の外的特徴(年齢、性別、体型など)を解析し、事前に記憶部114に登録されている発話者を含むユーザデータベースの検索を行い、発話者の検索、特定処理等を実行する。
 発話者データ保存部113は、発話者の情報と発言内容を記憶部(ユーザデータベース等)114に格納する処理を実行する。
 記憶部(ユーザデータベース等)114には、各ユーザ対応の年齢、性別、体型などの発話者情報からなるユーザデータベースの他、各発話者の発言内容が、各ユーザ(発話者)に対応付けて記録される。
  [4.発話者特定処理のシーケンスについて]
 次に、本開示の情報処理装置10が実行する発話者特定処理のシーケンスについて、図5に示すフローチャートを参照して説明する。
 なお、図5以下のフローに示す処理は、情報処理装置10の記憶部に格納されたプログラムに従って実行することが可能であり、例えばプログラム実行機能を有するCPU等のプロセッサによるプログラム実行処理として行うことができる。
 以下、図5に示すフローの各ステップの処理について説明する。
  (ステップS101)
 まず、ステップS101において、音声入力部101から入力された音声に対して、音声認識部102が音声認識処理を実行する。
 音声認識部102は、例えばASR(Automatic Speech Recognition)機能を有し、音声データを複数の単語から構成される文字列(テキストデータ)に変換する。
  (ステップS102)
 ステップS102では、音声認識部102が、発話者の音声認識結果である文字列を取得する。
 音声認識部102は音声認識結果として取得した発話内容の文字列を生成して発話者特定部111に出力する。
  (ステップS103)
 ステップS103では、音声認識部102が、発話者の音声認識結果である文字列に基づいて発話者や聞き手のうなずきタイミングの推定データを生成する。
 この処理の詳細については、後段で説明する。
  (ステップS104)
 ステップS104では、画像入力部105の撮影画像を入力した画像認識部106が画像を解析し、発話者と推定される人物を検索する。具体的には、唇が動いている人物を探す。
  (ステップS105)
 ステップS105は、ステップS104における画像に基づく発話者と推定される人物(唇を動かしている人物)の検索が成功したか否かの判定ステップであり、推定発話者の検索に成功した場合は、ステップS111に進む。
 推定発話者の検索に失敗した場合は、ステップS121に進む。
  (ステップS111)
 画像に基づく発話者と推定される人物(唇を動かしている人物)の検索が成功した場合は、ステップS111において、画像認識部106が、その推定発話者(唇を動かしている人物)の唇の動きを解析し、読唇認識処理を実行する。
 画像認識部106は、読唇認識処理に基づいて、発話内容の文字列を生成して発話者特定部111に出力する。
  (ステップS112~S113)
 ステップS112の処理は、発話者特定部112の実行する処理である。
 発話者特定部112は、
 (1)音声認識部102が音声認識に基づいて生成した発話内容の文字列、
 (2)画像認識部106が読唇認識処理に基づいて生成した発話内容の文字列、
 これら2つの文字列を入力する。
 発話者特定部112は、これら2つの文字列の比較を行う。
 これらの2つの文字列が概ね一致した場合(ステップS113=Yes)、ステップS131に進み、ステップS104において画像に基づいて検出した推定発話者(唇を動かしている人物)を発話者として特定する。
 具体的には、音声認識結果文字列と、読唇認識結果文字列との一致率が、予め規定したしきい値以上である場合は、画像に基づいて検出した推定発話者(唇を動かしている人物)を発話者として特定する。
 一方、2つの文字列が一致しなかった場合(ステップS113=No)、すなわち一致率が規定しきい値未満であった場合は、ステップS104において画像に基づいて検出した推定発話者(唇を動かしている人物)を発話者でないと判定し、ステップS104に戻り、再度、推定発話者の検索を行う。
 なお、この推定発話者の検索処理においては、ステップS104において画像に基づいて検出した推定発話者を検索対象から外し、その他の人物のみを検索対象とした検索を実行する。
  (ステップS121)
 一方、ステップS104における画像に基づく発話者と推定される人物(唇を動かしている人物)の検索が成功しなかった(ステップS105=No)と判定されるとステップS121に進む。
 ステップS121の処理は、画像認識部106の実行する処理である。
 画像入力部105の撮影画像を入力した画像認識部106が画像を解析し、うなずきを行っている人物を検索する。
 うなずいている人物を発見できた場合、画像認識部106は、うなずきの時系列データ、すなわち、「うなずきタイミングタイムテーブル」を生成し、発話者特定部111に出力する。
 「うなずきタイミングタイムテーブル」については、後段で詳細に説明する。
  (ステップS122~S123)
  ステップS122の処理は、発話者特定部112の実行する処理である。
 発話者特定部111は、以下の2つのデータの比較を行う。
 (1)ステップS103において、音声認識部102が発話者の音声認識結果である文字列に基づいて推定した発話者や聞き手のうなずきタイミング推定データ、
 (2)ステップS121において、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」、
 発話者特定部112は、これら2つのうなずきタイミングの比較を行う。
 音声認識部102が発話者の音声認識結果である文字列に基づいて推定した発話者のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」が概ね一致した場合(ステップS123=(a)発話者の推定うなずきタイミングに一致)は、ステップS131に進み、ステップS121において画像に基づいて検出した「うなずきを行っている人物」を発話者として特定する。
 具体的には、音声認識部102が発話者の音声認識結果である文字列に基づいて推定した発話者のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」に記録されたタイムスタンプの一致率が、予め規定したしきい値以上である場合は、画像に基づいて検出した「うなずきを行っている人物」を発話者として特定する。
 また、音声認識部102が発話者の音声認識結果である文字列に基づいて推定した聞き手のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」が概ね一致した場合(ステップS123=(b)聞き手の推定うなずきタイミングに一致)は、ステップS124に進む。
 具体的には、音声認識部102が発話者の音声認識結果である文字列に基づいて推定した聞き手のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」に記録されたタイムスタンプの一致率が、予め規定したしきい値以上である場合は、ステップS124に進む。
 また、音声認識部102が発話者の音声認識結果である文字列に基づいて推定した発話者および聞き手のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」が一致しなかった場合(ステップS123=No)、すなわち一致率が規定しきい値未満であった場合は、ステップS121において画像に基づいて検出したうなずき実行者が発話者でも聞き手でもないと判定し、ステップS104に戻り、再度、推定発話者の検索を行う。
 なお、この推定発話者の検索処理においては、ステップS121において画像に基づいて検出したうなずき実行者を検索対象から外し、その他の人物のみを検索対象とした検索を実行する。
  (ステップS124)
 ステップS124は、ステップS123において、音声認識部102が発話者の音声認識結果である文字列に基づいて推定した聞き手のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」が概ね一致した場合に実行される。
 ステップS124では、発話者特定部111は、画像から検出されたうなずき実行者を聞き手と判断し、この聞き手の視線や頭の向き情報を画像認識部106から取得し、ステップS131において、視線や頭の向きの先にいる人物を発話者として特定する。
  (ステップS131)
 ステップS131は、発話者特定部111において実行する発話者特定処理である。
 発話者特定部111は、以下の3種類のいずれかの発話者特定処理を実行する。
 (処理1)ステップS113=Yes
 音声認識部102が音声認識に基づいて生成した発話内容の文字列と、画像認識部106が読唇認識処理に基づいて生成した発話内容の文字列が概ね一致した場合(ステップS113=Yes)、ステップS104において画像に基づいて検出した推定発話者(唇を動かしている人物)を発話者として特定する。
 (処理2)ステップS123=(a)発話者の推定うなずきタイミングに一致
 音声認識部102が発話者の音声認識結果である文字列に基づいて推定した発話者のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」が概ね一致した場合、ステップS121において画像に基づいて検出した「うなずきを行っている人物」を発話者として特定する。
 (処理3)ステップS123=(b)聞き手の推定うなずきタイミングに一致
 音声認識部102が発話者の音声認識結果である文字列に基づいて推定した聞き手のうなずきタイミング推定データと、画像認識部106が、画像入力部105の撮影画像を利用して生成した「うなずきタイミングタイムテーブル」が概ね一致した場合、
画像から検出されたうなずき実行者を聞き手と判断し、この聞き手の視線や頭の向き情報を画像認識部106から取得し、視線や頭の向きの先にいる人物を発話者として特定する。
  (ステップS132)
 最後に、発話者特定部111は、発話者の特定処理の後、その発話者の特徴を解析する。そして発話者の解析結果と発話内容を、発話者データ保存部113を介して記憶部(ユーザデータベース等)114に保存する。
 記憶部(ユーザデータベース等)114に保存するデータは、例えば、画像入力部105の取得した画像から解析される発話者の外的特徴(年齢、性別、体型など)や、音声認識部102の生成した発話内容を示す文字列等である。
 次に、図5のフローチャート中のステップS101~S103の処理、すなわち、音声認識部102の実行する処理の詳細シーケンスについて、図6に示すフローチャートを参照して説明する。
 音声認識部102は、ステップS101~S103において、音声入力部101から入力された音声に対して、音声認識部102が音声認識処理を実行し、発話内容を示す文字列を生成し、さらに、発話者の音声認識結果である文字列に基づいて発話者や聞き手のうなずきタイミングの推定データを生成する。
 図6に示すフローは、これらの処理の実効手順を示すフローチャートである。
 各ステップの処理について、順次、説明する。
  (ステップS201)
 まず、ステップS201において、音声認識部102は、音声入力部101から発話者の音声を入力する。
  (ステップS202)
 次に、ステップS202において、音声認識部102は、音声入力部101から入力した発話者の音声を複数の単語から構成される文字列(テキストデータ)に変換する。
 この処理によって図6に示す発話文字列251が生成される。
 この発話文字列251は、発話者特定部111に入力される。
  (ステップS203)
 ステップS203では、音声認識部102が、発話者の音声認識結果である文字列に基づいて発話者のうなずきタイミングの推定データを生成する。
 この処理によって図6に示す発話者うなずきタイミング推定タイムテーブル252が生成される。
 この発話者うなずきタイミング推定タイムテーブル252は、発話者特定部111に入力される。
  (ステップS204)
 ステップS204では、音声認識部102が、発話者の音声認識結果である文字列に基づいて聞き手のうなずきタイミングの推定データを生成する。
 この処理によって図6に示す聞き手うなずきタイミング推定タイムテーブル253が生成される。
 この聞き手うなずきタイミング推定タイムテーブル253は、発話者特定部111に入力される。
 発話者うなずきタイミング推定タイムテーブル252、聞き手うなずきタイミング推定タイムテーブル253の生成処理の具体例について、図7を参照して説明する。
 図7には、音声認識部102が、発話音声に基づいて生成した文字列を示している。
 文字列=こんにちは、今日も良い天気ですね。ところで、あの映画見ましたか?今人気で、どの映画館も満員みたいですよ。
 音声認識部102は、この文字列からなる発話音声に従って、発話者と聞き手のうなずきタイミングを推定する。
 音声認識部102は、音声の途切れとなる句読点が入るタイミングから、発話者と聞き手のうなずきタイミングを推定する。
 発話者は自分の発話に伴う「うなずき」を行う。例えば、発話文における句読点の直前値等において、自分の発話に伴う「うなずき」を行う。
 一方、聞き手は、多くの場合、発話者の発話に対する相槌としての「うなずき」を行う。例えば、発話文における句読点の直後にうなずくことが多い。
 音声認識部102は、この特性を利用し、発話者のうなずき推定タイミングを句読点の直前に設定し、聞き手のうなずき推定タイミングを句読点の直後に設定する。
 音声認識部102は、この推定処理によって、
 うなずきタイミングを句読点の直前に設定した発話者うなずきタイミング推定タイムテーブル252と、
 うなずきタイミングを句読点の直後に設定した聞き手うなずきタイミング推定タイムテーブル253を生成する。
 なお、タイミング推定タイムテーブルは、うなずきを行ったと推定される時間情報を「タイムスタンプ」として順次、記録したテーブルである。
 音声認識部102は、情報処理装置10のクロックから、あるいはネットワークを介して時間情報を取得して、うなずきを行ったと推定される時間情報を「タイムスタンプ」として記録したタイムテーブルを生成する。
 発話者うなずきタイミング推定タイムテーブル252の具体例を図8に示す。
 発話者うなずきタイミング推定タイムテーブル252は、図8に示すように、うなずきが実行されると推定される時間情報(タイムスタンプ)を、時系列に記録したテーブルである。
 次に、画像認識部106の実行する処理の詳細シーケンスについて、図9に示すフローチャートを参照して説明する。
 なお、画像認識部106の実行する処理は、図5を参照して説明したフローチャートのステップS104~S105、S111、S121の~S各処理である。
 図9に示すフローチャートは、これらの処理の具体的な処理シーケンスを説明するフローチャートである。
 各ステップの処理について、順次、説明する。
  (ステップS301)
 画像認識部106は、ステップS301において、画像入力部105の撮影画像を入力する。
  (ステップS302)
 次に、ステップS302において、画像認識部106は、画像を解析し、発話者と推定される人物を検索する。具体的には、唇が動いている人物を探す。
  (ステップS303)
 ステップS303は、ステップS302における画像に基づく発話者と推定される人物(唇を動かしている人物)の検索が成功したか否かの判定ステップであり、推定発話者の検索に成功した場合は、ステップS304に進む。
 推定発話者の検索に失敗した場合は、ステップS311に進む。
  (ステップS304)
 画像に基づく発話者と推定される人物(唇を動かしている人物)の検索が成功した場合は、ステップS304において、画像認識部106が、その推定発話者(唇を動かしている人物)の唇の動きを解析し、読唇認識処理を実行する。
 画像認識部106は、読唇認識処理に基づいて、発話内容を示す字列である発話文字列351を生成する。
 この読唇認識処理に基づいて生成した発話文字列351は、発話者特定部111に入力される。
  (ステップS311)
 一方、ステップS302における画像に基づく発話者と推定される人物(唇を動かしている人物)の検索が成功しなかった(ステップS303=No)と判定されるとステップS311に進む。
 ステップS311において、画像認識部106は、画像入力部105の撮影画像を解析し、うなずきを行っている人物を検索する。
 うなずいている人物を発見できた場合、画像認識部106は、うなずきの時系列データ、すなわち、「うなずきタイミングタイムテーブル352」を生成し、発話者特定部111に出力する。
 うなずきタイミングタイムテーブル352は、画像中のうなずいている人物の実際のうなずきタイミングを記録したテーブルである。すなわちうなずきタイミング実データである。
 テーブル構成は、先に図8を参照して説明した構成と同様である。
 ただし、この画像認識部106が生成する「うなずきタイミングタイムテーブル352」は、画像から観測されたうなずきタイミングを記録したテーブルであり、うなずきの実行された実時間が記録される。
 これに対して、図6を参照して説明したフローに従って、音声認識部102の生成するうなずきタイミングタイムテーブル252,253は、発話内容を示す文字列に従ってうなずきが実行されると推定される推定時間を記録したテーブルである。
 先に図7を参照して説明した処理である。
 発話者特定に最低限必要な要素についてまとめた表を図10に示す。
 発話者特定に最低限必要な要素の組み合わせのパターンとして3つの異なるパターンがある。
 パターン1は、発話者の読唇認識によって発話者特定を行うパターンである。
 このパターン1では、
 発話者の読唇認識が必要となる。
 うなずき認識は、発話者、聞き手とも不要となる。
 聞き手の視線認識も不要となる。
 パターン2は、発話者のうなずき認識によって発話者特定を行うパターンである。
 このパターン2では、
 発話者の読唇認識が不要となる。
 うなずき認識は、発話者のうなずき認識が必要、聞き手のうなずき認識が不要となる。
 聞き手の視線認識は不要となる。
 パターン3は、聞き手のうなずき認識と視線情報によって発話者特定を行うパターンである。
 このパターン3では、
 発話者の読唇認識が不要となる。
 うなずき認識は、発話者のうなずき認識が不要、聞き手のうなずき認識が必要となる。
 聞き手の視線認識は必要となる。
 なお、図10の各パターン1~3において、不要となっている項目についての情報も加味することで、発話者特定の精度を向上させることも可能となる。例えば、発話者のうなずきタイミングだけでなく、聞き手のうなずきタイミングとその視線や頭の向き先情報を使うことで、発話者特定の精度を向上させることが可能となる。
  [5.その他の発話者特定方法について]
 上述した実施例では、発話者の特定方法として、音声認識結果から得られる発話の文字列(テキスト)と、読唇認識結果から得られる発話の文字列(テキスト)を比較する方法と、音声認識結果のうなずきタイミングと画像認識結果のうなずきタイミングを比較する方法を記載したが、音声と画像の次のようなデータを使うことでも発話者を特定することが可能である。
 (1)音声から発話のリズムを取得し、画像から取得した対象者の頭や体の揺れとそのリズムが一致する場合、その対象者を発話者と特定する。
 (2)音声から文字列を取得し、発話時の母音に依存する頭部皮膚振動パターンを画像から取得。文字列の母音とその頭部皮膚振動パターンが一致するかで発話者を特定する。
 (3)話の切れ目で発話者のまばたきが生じやすい性質を利用し、音声から発話の切れ目情報を取得、画像からまばたきタイミングを取得し、一致するかで発話者を特定する。
 (4)音量の大小、音声の高低、スピードの変化と画像から得られた体の動きを比較する。音量の大小と動きの大小、音声の高低と顔の上げ下げ、音声のスピードと、体の動きの速度を比較し、似た傾向が見られる人物を発話者と特定する。
 (5)発話音声から、発話内容を認識し、その発話内容によってもたらされるであろう聞き手の感情の変化を予測する(笑い、喜び、怒り、悲しみなど)。画像認識より予測結果と同様の感情を表している人物を特定する。その人物を聞き手と特定し、視線や頭の向きの先にいる人物を発話者として特定する。
  [6.クラウド側の装置(サーバ)を利用した構成について]
 上述した実施例では、全ての処理を図4に示す情報処理装置10の内部で実行する処理例として説明した。
 しかし、上述した実施例の少なくとも一部の処理はクラウド側の装置(サーバ)を利用して実行する構成としてもよい。
 例えば、音声認識部102による音声認識処理や、うなずきタイミングの生成処理、あるいは画像認識部106の読唇認識処理や、うなずき検出処理、また文字列の認識結果の照合や、うなずきタイミングの照合処理等は、その一部もしくはすべてを、クラウド側の装置(サーバ)において実行する構成としてもよい。
 クラウド側の装置(サーバ)を利用した処理を行う場合の処理シーケンスについて、図11、図12を参照して説明する。
 図11は、音声認識と読唇認識によって発話者を特定する処理を情報処理装置10と、サーバ20との通信を伴う処理によって実行する処理シーケンスである。
 図12は、うなずきタイミングを用いて発話者を特定する処理を情報処理装置10と、サーバ20との通信を伴う処理によって実行する処理シーケンスである。
 まず、図11に示すシーケンス図を参照して、音声認識と読唇認識によって発話者を特定する処理を情報処理装置10と、サーバ20との通信を伴う処理によって実行する場合の処理シーケンスについて説明する。
 なお、この処理シーケンスは、例えば、情報処理装置10はAPI(Application Programming Interface)リクエストをサーバ20に出力し、サーバ20がAPIレスポンスを情報処理装置20に返すことによって、進行させることができる。
 以下では、具体的なAPI例も含めて説明する。
  (ステップS401)
 まず、ステップS401において、情報処理装置10は、サーバ20に対して、取得音声に併せて音声認識要求を送信する。
  (ステップS402)
 次に、サーバ20は、ステップS402において、情報処理装置10に対して、音声認識結果を送信する。
 このステップS401~S402の音声認識処理に利用されるAPIは、例えば以下のAPIである。
 GET/api/v1/recognition/audio
 このAPIは、音声認識を開始し、その認識結果(テキスト文字列)を取得するためのAPIである。
 このAPIリクエストに必要となるデータは、情報処理装置10が音声入力部101を介して入力した音声データ(audio stream data)である。
 また、サーバ20からの応答であるAPIレスポンスには、サーバ20側の音声認識処理部において実行した音声認識処理の結果データである音声認識結果文字列(speech(string))が含まれる。
  (ステップS403)
 次に、ステップS403において、情報処理装置10は、サーバ20に対して、取得画像に併せて読唇認識要求を送信する。
  (ステップS404)
 次に、サーバ20は、ステップS404において、情報処理装置10に対して、読唇認識結果を送信する。
 このステップS403~S404の読唇認識処理に利用されるAPIは、例えば以下のAPIである。
 GET/api/v1/recognition/lip
 このAPIは、読唇認識を開始し、その認識結果(テキスト文字列)と発話者識別子(ID)を取得するためのAPIである。
 このAPIリクエストに必要となるデータは、情報処理装置10が画像入力部105を介して入力した画像データ(video stream data)である。
 また、サーバ20からの応答であるAPIレスポンスには、サーバ20側の読唇認識処理部において実行した読唇認識処理の結果データである読唇認識結果文字列(lip(string))と、発話者ID(speaker-id(string))が含まれる。
 なお、サーバ20は、ユーザIDと、ユーザの特徴情報を対応付けて記録したユーザデータベースを保持しており、情報処理装置10から受信する画像データに基づいてユーザを特定してユーザ識別子(ID)を情報帆処理装置10に提供する。
 ただし、未登録ユーザの場合は不明であるとの結果を返す。
  (ステップS405)
 次に、ステップS405において、情報処理装置10は、サーバ20に対して、音声認識結果(文字列)と読唇認識結果(文字列)との比較要求を送信する。
  (ステップS406)
 次に、サーバ20は、ステップS406において、情報処理装置10に対して、音声認識結果(文字列)と読唇認識結果(文字列)との比較結果(一致率)を送信する。
 このステップS405~S406の音声認識結果(文字列)と読唇認識結果(文字列)との比較処理に利用されるAPIは、例えば以下のAPIである。
 GET/api/v1/recognition/audio/comparison
 このAPIは、音声認識結果の文字列と読唇認識結果の文字列を比較し、一致しているかの結果を取得するためのAPIである。
 このAPIリクエストに必要となるデータは、情報処理装置10がサーバ20から受信した、
 音声認識結果文字列(speech(string))
 読唇認識結果文字列(lip(string))
 これらのデータである。
 また、サーバ20からの応答であるAPIレスポンスには、サーバ20側の文字列比較部において実行した文字列比較処理処理の結果データである文字列一致率(concordance-rate(integer))が含まれる。
  (ステップS407)
 次に、ステップS407において、情報処理装置10は、発話者特定部111において、サーバ20から受信した文字列一致率(concordance-rate(integer))に基づいて、発話者特定処理を実行する。
 すなわち、
 音声認識結果文字列(speech(string))
 読唇認識結果文字列(lip(string))
 これらの文字列の一致率が、予め規定したしきい値以上である場合は、画像に基づいて検出した推定発話者(唇を動かしている人物)を発話者として特定する。
  (ステップS408)
 次に、ステップS408において、情報処理装置10は、サーバ20に対して、発話者情報取得要求を送信する。
  (ステップS409)
 次に、サーバ20は、ステップS409において、情報処理装置10に対して、発話者情報を送信する。
 このステップS408~S409の発話者情報取得処理に利用されるAPIは、例えば以下のAPIである。
 GET/api/v1/recognition/speakers/{speaker-id}
 このAPIリクエストに必要となるデータは、情報処理装置10が画像入力部105を介して入力した画像データ(video stream data)と、サーバ20から受信した発話者ID(speaker-id(string))である。
 サーバ20からの応答であるAPIレスポンスには、サーバ20側のユーザデータベースから取得した発話者ID対応のユーザ情報が含まれる。
 具体的には、発話者の以下の情報等によって構成される。
 性別(sex(string))
 年令(age(integer))
 身長(height(integer)
 身体的特徴(physical status (string))
 これらは、サーバ20側のユーザデータベースに登録済みのデータである。
  (ステップS410)
 次に、ステップS410において、情報処理装置10は、サーバ20に対して、発話者情報登録要求を送信する。
  (ステップS411)
 次に、サーバ20は、ステップS411において、情報処理装置10に対して、発話者情報登録完了通知を送信する。
 このステップS410~S411の発話者情報登録処理に利用されるAPIは、例えば以下のAPIである。
 POST/api/v1/recognition/speakers/{speaker-id}
 このAPIリクエストに必要となるデータは、情報処理装置10がサーバ20から受信した発話者ID(speaker-id(string))と、サーバ20から受信した音声認識結果文字列(speech(string))と、情報処理装置10が画像入力部105を介して入力した画像データ(video stream data)である。
 サーバ20からの応答であるAPIレスポンスには、発話者登録ID(registered-speaker-id(string))が含まれる。
 なお、発話者のデータ登録では、データベース内に発話者の次の情報を保存しておくことで、次回の発話内容解析時に発話者を特定することができる。
 (a)顔写真
 (b)声質
 また、次のデータを保存しておくことで、認識の際にその人物の癖に合わせた認識を行うことができ、認識精度を向上させることができる。
 (c)口の動きの特徴
 (d)発話音の特徴
 (e)発話内容(発話内容の傾向)
 また、次のデータを保存しておくことで、発話者データの再解析の処理を省いたり、顔写真だけしか取れない場合でも、発話者データを取得したりすることができる。
 (f)性別
 (g)年齢
 (h)身長
 (i)身体的特徴
 例えばサーバ20は、これら(a)~(i)の発話者情報をデータヘースに登録する。
 次に、図12に示すシーケンス図を参照して、うなずきタイミングを用いて発話者を特定する処理を情報処理装置10と、サーバ20との通信を伴う処理によって実行する場合の処理シーケンスについて説明する。
 なお、この処理シーケンスも、例えば、情報処理装置10はAPIリクエストをサーバ20に出力し、サーバ20がAPIレスポンスを情報処理装置20に返すことによって、進行させることができる。
 以下では、具体的なAPI例も含めて説明する。
  (ステップS421)
 まず、ステップS421において、情報処理装置10は、サーバ20に対して、取得音声に併せてうなずきタイミング推定データ生成要求を送信する。
  (ステップS422)
 次に、サーバ20は、ステップS422において、情報処理装置10に対して、音声ベースのうなずきタイミング推定タイムテーブルを送信する。
 このステップS421~S422のうなずきタイミング推定タイムテーブル生成処理に利用されるAPIは、例えば以下のAPIである。
 GET/api/v1/recognition/audio/nods
 このAPIは、音声認識結果から得られる文字列を解析して、うなずきタイミング推定タイムテーブル(うなずきを実行したと推定される時間のタイムスタンプリスト)とうなずき者のIDを取得するためのAPIである。
 このAPIリクエストに必要となるデータは、情報処理装置10が音声入力部101を介して入力した音声データ(audio stream data)である。
 また、サーバ20からの応答であるAPIレスポンスには、サーバ20側の音声認識処理部が音声認識結果(文字列)を解析して取得した音声ベースうなずきタイミング推定タイムテーブルが含まれる。
 なお、音声ベースうなずきタイミング推定タイムテーブルには、以下の2種類のテーブルが含まれる。
 発話者うなずきタイミング推定タイムテーブル(speaker-nods(string-array))
 聞き手うなずきタイミング推定タイムテーブル(listener-nods(string-array))
 これらは、先に図7を参照して説明した処理に従ってサーバ20の音声認識部において生成される。すなわち、音声認識結果から、最適なうなずきタイミングを割り出して生成する。
  (ステップS423)
 まず、ステップS423において、情報処理装置10は、サーバ20に対して、取得画像に併せてうなずきタイミングデータ生成要求を送信する。
  (ステップS424)
 次に、サーバ20は、ステップS424において、情報処理装置10に対して、画像ベースのうなずきタイミングタイムテーブルを送信する。
 このステップS423~S424のうなずきタイミング推定タイムテーブル生成処理に利用されるAPIは、例えば以下のAPIである。
 GET/api/v1/recognition/nods
 このAPIは、画像を解析して、うなずきタイミングタイムテーブル(うなずきを実行した時間のタイムスタンプリスト)とうなずき者のIDを取得するためのAPIである。
 このAPIリクエストに必要となるデータは、情報処理装置10が画像入力部105を介して入力した画像データ(video stream data)である。
 また、サーバ20からの応答であるAPIレスポンスには、サーバ20側の画像認識処理部が画像を解析して取得した画像ベースうなずきタイミングタイムテーブル(
nod-timings(string-array))と、うなずき者ID(nodding-person-id(string))が含まれる。
 前述したように、サーバ20は、ユーザIDと、ユーザの特徴情報を対応付けて記録したユーザデータベースを保持しており、情報処理装置10から受信する画像データに基づいてユーザを特定してユーザ識別子(ID)を情報帆処理装置10に提供する。
 ただし、未登録ユーザの場合は不明であるとの結果を返す。
  (ステップS425)
 次に、ステップS425において、情報処理装置10は、サーバ20に対して、
 ステップS422で受信した
 (a1)音声ベースの発話者うなずきタイミング推定タイムテーブル、
 (a2)音声ベースの聞き手うなずきタイミング推定タイムテーブル、
 これら2つのうなずきタイミング推定タイムテーブルの各々と、
 ステップS424で受信した
 (v1)画像ベースのうなずきタイミングタイムテーブル、
 これらのタイムテーブルの比較要求を送信する。
  (ステップS426)
 次に、サーバ20は、ステップS426において、情報処理装置10に対して、音声ベースの2つのうなずきタイミング推定タイムテーブルと、画像ベースのうなずきタイミングタイムテーブルの比較結果(一致率)を送信する。
 このステップS425~S426のうなずきタイミングテーブルの比較処理に利用されるAPIは、例えば以下のAPIである。
 GET/api/v1/recognition/nods/comparison
 このAPIは、音声ベースの2つのうなずきタイミング推定タイムテーブルと、画像ベースのうなずきタイミングタイムテーブルのうなずきタイミングを比較し、一致しているかの結果を取得するためのAPIである。
 このAPIリクエストに必要となるデータは、情報処理装置10がサーバ20から受信した以下のデータである。
 ステップS422で受信した
 (a1)音声ベースの発話者うなずきタイミング推定タイムテーブル(speaker-nod(string-array))、
 (a2)音声ベースの聞き手うなずきタイミング推定タイムテーブル(listener-nod(string-array))、
 これら2つのうなずきタイミング推定タイムテーブルと、
 ステップS424で受信した
 (v1)画像ベースのうなずきタイミングタイムテーブル(nod-timing (string-array))、
 また、サーバ20からの応答であるAPIレスポンスには、サーバ20側の発話者特定部において実行したうなずきタイミングタイムテーブル比較処理処理の結果データである、
 発話者うなずき一致率(%)(speaker-concordance-rate (integer))、
 聞き手うなずき一致率(%)(listener-concordance-rate (integer))
 これらのデータが含まれる。
 発話者うなずき一致率(%)(speaker-concordance-rate (integer))は、
 (a1)音声ベースの発話者うなずきタイミング推定タイムテーブル(speaker-nod(string-array))と、
 (v1)画像ベースのうなずきタイミングタイムテーブル(nod-timing (string-array))、
 これらの2つのテーブルうなずきタイミングの比較結果として得られる一致率(%)データである。
 また、聞き手うなずき一致率(%)(listener-concordance-rate (integer))は、
 (a2)音声ベースの聞き手うなずきタイミング推定タイムテーブル(listener-nod(string-array))と、
 (v1)画像ベースのうなずきタイミングタイムテーブル(nod-timing (string-array))、
 これらの2つのテーブルうなずきタイミングの比較結果として得られる一致率(%)データである。
  (ステップS427)
 次に、ステップS427において、情報処理装置10は、サーバ20から受信した
 発話者うなずき一致率(%)(speaker-concordance-rate (integer))、
 聞き手うなずき一致率(%)(listener-concordance-rate (integer))
 これらのデータに基づいて、発話者特定部111において発話者特定処理を実行する。
 具体的には、発話者うなずき一致率(%)(speaker-concordance-rate (integer))が、予め規定したしきい値以上である場合、
 (v1)画像ベースのうなずきタイミングタイムテーブル(nod-timing (string-array))の生成対象となった画像から検出したうなずき実行者を発話者であると判定する。
 一方、聞き手うなずき一致率(%)(listener-concordance-rate (integer))が、予め規定したしきい値以上である場合、
 (v1)画像ベースのうなずきタイミングタイムテーブル(nod-timing (string-array))の生成対象となった画像から検出したうなずき実行者を聞き手であると判定する。
 この場合は、さらに、発話者を特定するために、ステップS428~S430の処理を実行する。
 ステップS427において、発話者が特定された場合は、ステップS428~S430の処理は省略可能である。
 すなわち、ステップS427において、発話者うなずき一致率(%)(speaker-concordance-rate (integer))が、予め規定したしきい値以上であり、発話者が特定された場合は、ステップS428~S430の処理を省略してステップS431の処理を開始してもよい。
  (ステップS428~430)
 ステップS428~S430の処理は、ステップS427において、聞き手うなずき一致率(%)(listener-concordance-rate (integer))が、予め規定したしきい値以上である場合に実行する。すなわち、
 (v1)画像ベースのうなずきタイミングタイムテーブル(nod-timing (string-array))の生成対象となった画像から検出したうなずき実行者を聞き手であると判定された場合の処理である。
 この場合、情報処理装置10は、ステップS428において、サーバに対して、聞き手視線先検出要求を出力する。
 これは、画像から検出したうなずき実行者(聞き手)の視線の先の人物(発話者)の検出要求である。
 サーバ20は、ステップS429において、情報処理装置10に、画像から検出したうなずき実行者(聞き手)の視線の先の人物(発話者)の検出情報を送信する。これは、情報処理装置10から受信した画像データを利用して実行する。
 情報処理装置10は、ステップS430において、発話者特定部111が、サーバ20から受信した画像から検出したうなずき実行者(聞き手)の視線の先の人物(発話者)の検出情報に基づいて、その視線先の人物を発話者であると判定する。
  (ステップS431)
 以下のステップS431~S434の処理は、先に図11を参照して説明したステップS408~S411の処理と同様の処理となる。
 ステップS431において、情報処理装置10は、サーバ20に対して、発話者情報取得要求を送信する。
  (ステップS432)
 次に、サーバ20は、ステップS432において、情報処理装置10に対して、発話者情報を送信する。
 サーバ20からの応答には、サーバ20側のユーザデータベースから取得した発話者ID対応のユーザ情報が含まれる。
 具体的には、発話者の以下の情報等によって構成される。
 性別(sex(string))
 年令(age(integer))
 身長(height(integer)
 身体的特徴(physical status (string))
 これらは、サーバ20側のユーザデータベースに登録済みのデータである。
  (ステップS433)
 次に、ステップS433において、情報処理装置10は、サーバ20に対して、発話者情報登録要求を送信する。
  (ステップS434)
 次に、サーバ20は、ステップS434において、情報処理装置10に対して、発話者情報登録完了通知を送信する。
 なお、先に図11を参照して説明したように、発話者情報としての登録情報には、以下の各データを含めることが好ましい。
 (a)顔写真
 (b)声質
 (c)口の動きの特徴
 (d)発話音の特徴
 (e)発話内容(発話内容の傾向)
 (f)性別
 (g)年齢
 (h)身長
 (i)身体的特徴
 例えばサーバ20は、これら(a)~(i)の発話者情報をデータヘースに登録する。
 図11、図12を参照して説明した処理は、音声認識処理や、うなずきタイミングの生成処理、読唇認識処理や、うなずき検出処理、また文字列の認識結果の照合、うなずきタイミングの照合処理等をクラウド側の装置(サーバ)において実行する構成とした場合の処理シーケンスである。
 一連の処理シーケンス中に含まれる様々な処理を、情報処理装置10側で実行するか、クランド(サーバ20)側で実行するかについては、様々な設定が可能である。
  [7.本開示の情報処理装置の具体的な利用例について]
 次に、上述した発話者特定処理を実行する本開示の情報処理装置の具体的な複数の利用例について説明する。
 以下の複数の利用例について説明する。
 (1)エージェント機器としての利用例
 (2)デジタルサイネージ、自動販売機としての利用例
 (3)車載機器としての利用例
 (4)会議室、学校での利用例
 (5)エンターテインメントにおける利用例
 (6)防犯カメラや監視カメラにおける利用例
 (1)エージェント機器としての利用例
 まず、エージェント機器としての利用例について説明する。
 エージェント機器の前に複数の人がいて、そのうちの一人がエージェント機器に対して発話をした場合、エージェント機器は発話者の唇の動きをカメラで撮影し、読唇術を使って発話内容を文字列に変換する。
 同時にマイクを使って入力された音声に対し音声認識を使って文字列に変換する。これらの文字列を比較することで、唇の動きを撮影した人物が発話者かどうかを判断することができる。
 発話者をカメラ撮影画像の中から特定することができると、エージェント機器は、発話者の特徴として、性別や年齢、身体的特徴の情報を推測することができ、発話者の要望に対して、より適切な回答を行うことができる。
 例えば、発話者が子供だと認識した場合は、子供に合わせた分かりやすい口調で回答したり、若くて体格の良い男性には、ボリュームのあるレストランを紹介したりすることが可能となる。
 また予め人物情報を顔写真と共にデータベースに登録しておくことで、発話者の顔写真から、データベースに登録された発話者の情報を参照することができ、趣味や好みなどより詳細な発話者のデータを引き出して、より発話者の期待に沿った答えをすることができる。
 また発話者の発話内容やしゃべり方の癖等の発話特徴情報を顔写真と共にデータベースに保存しておくことで以下の処理も可能となる。
 発話中に発話者が特定された後、音声認識や読唇認識エンジンに発話特徴情報を入力することで、発言者に合わせた認識を行うことができ、認識精度を向上させることができる。
 また家庭内に複数台のエージェント機器がある場合、エージェント機器の発話や、TVやラジオ音声の発話に対してエージェント機器が誤動作してしまうのを防ぐためにも発話者特定は有効である。
 (2)デジタルサイネージ、自動販売機としての利用例
 次に、デジタルサイネージ、自動販売機としての利用例について説明する。
 街中にあるデジタルサイネージや自動販売機の前には、複数の人がいるケースが多く、また事前登録ができない不特定多数の人である場合が多い。
 このような状況で本開示の処理に従って発話者を特定することで、以下のような処理が可能となる。
 デジタルサイネージでは、発話者の容姿から年齢や性別を判断し、発話者に合わせた表示を行うことができる。
 また自動販売機の場合は、発話者に合わせた商品を勧めることができる。
 さらに、発話者を特定することで、表示内容や購入商品に対して興味を持った人物や意見をした人物に対して、その発言内容と容姿情報を合わせて記録できるので、市場調査のためのデータ集めに役立つ。また同様の目的のため、お店などでは防犯カメラ等と上述の発話者特定処理を併用することで、店内の商品に対する客の発話内容を発話者の特徴と共に記録することができる。
 (3)車載機器としての利用例
 次に、車載機器としての利用例について説明する。
 カーナビゲーションのような音声で操作する機器において、上述した処理に従った発話者特定処理を行う構成とすることで、子供の発話などドライバー以外の音声には反応しないように、音声操作可能者を限定するような権限管理をすることができる。
 また音声で空調コントロールをする装置の場合、発話者を特定することで、発話者周辺だけ要望に沿った空調に調整することができる。
 (4)会議室、学校での利用例
 次に、会議室、学校での利用例について説明する。
 複数の人が発話するような会議のような場面で、部屋全体を撮影するカメラとマイクを使って発話者を特定することで、発話者情報と発話内容を合わせた議事録を自動で作成することができる。
 また、例えば保育園では発話者情報と発話内容の議事録が作成できると、容易に親に子供の発話内容を報告できて、保育士の負担を減らせる。もしくはクラウド上にそのデータを置くことで親はいつでも子供の発話内容を確認することができる。学校では各生徒の発言数をカウントすることで、一部の生徒だけ発言している授業なのか、多くの生徒が発言している授業なのかの判断に利用することができる。
 (5)エンターテインメントにおける利用例
 次に、エンターテインメントにおける利用例について説明する。
 パーティやスポーツ観戦のような不特定多数の人がいる広い場所で、発話者と話している話題を大型モニターなどに映し出すことで、興味のある会話をしている人を見つけたり、スポーツ観戦の臨場感を増したりすることができる。
 またTV撮影時に出演者の発話者を特定することができると、リアルタイムで出演者の発話内容を文字にして吹き出しのように表示することができる。
 (6)防犯カメラや監視カメラにおける利用例
 次に、防犯カメラや監視カメラにおける利用例について説明する。
 街中や店内にある防犯カメラや監視カメラで撮影された画像と、その周辺の音声入力を使って、犯罪行為の相談をしている人や、犯罪に関する特定のワードを発話している人を特定することが可能となる。これによって事件の発生を未然に防いだり、犯人特定に役立てたりすることができる。
 このように、本開示の発話者特定処理は、様々な分野で利用が可能である。
 本開示の処理では、事前に発話者の登録がなくても、不特定多数の人物の中から発話者が特定される。また発話者の唇の動きが撮影できないような場合でも、発話者の特定が可能となる。そして発話者が特定されることにより下記のような効果を得ることができる。
 (a)発話者の年齢や性別のような外的特徴情報の取得により、発話者に合わせたサービスの提供が可能となる。
 (b)発話者の発話内容や癖を記録し、認識機能の学習に利用することにより、音声認識や読唇認識精度の向上が可能となる。
 (c)特定の発話者のみサービスの提供を行うことにより、特定の人に管理者権限を持たせることが可能となる。
 (d)発話者の特徴と発言内容をログデータとして活用することにより、市場調査のデータやエンタメ用途としての利用や共謀罪の発見に役立てることが可能となる。
  [8.情報処理装置、および情報処理システムの構成例について]
 先に図11、図12を参照して説明したように、例えば、図4に示す情報処理装置10の各構成要素の処理機能は、すべて一つの装置、例えばユーザの所有するエージェント機器、あるいはスマホやPC等の装置内に構成することも可能であるが、その一部をサーバ等において実行する構成とすることも可能である。
 図13に、本開示の処理を実行するためのシステム構成の例を示す。
 図13(1)情報処理システム構成例1は、図4に示す情報処理装置のほぼ全ての機能を一つの装置、例えばユーザの所有するスマホやPC、あるいは音声入出力と画像入出力機能を持つエージェント機器等のユーザ端末である情報処理装置410内に構成した例である。
 ユーザ端末に相当する情報処理装置410は、例えば応答文生成時に外部アプリを利用する場合にのみ、アプリ実行サーバ420と通信を実行する。
 アプリ実行サーバ420は、例えば天気情報提供サーバ、交通情報提供サーバ、医療情報提供サーバ、観光情報提供サーバ等であり、ユーザ発話に対する応答を生成するための情報を提供可能なサーバ群によって構成される。
 一方、図13(2)情報処理システム構成例2は、図4に示す情報処理装置の機能の一部をユーザの所有するスマホやPC、エージェント機器等の情報処理端末である情報処理装置410内に構成し、一部を情報処理装置と通信可能なデータ処理サーバ460において実行する構成としたシステム例である。
 例えば、図4に示す装置中の音声入力部101、画像入力部105、音声出力部125、画像出力部126のみを情報処理端末側の情報処理装置410側に設け、その他の機能をすべてサーバ側で実行するといった構成等が可能である。
 具体的には、例えば以下のようなシステム構成が構築可能である。
 ユーザ端末等の情報処理端末に、音声入出力部と画像入出力部を構成する。
 一方、データ処理サーバは、ユーザ端末から受信する音声、画像に基づいて発話者特定処理を行う。
 あるいは、先に図11、図12を参照して説明したシーケンスのように、サーバは、発話者特定処理に必要な情報を生成して情報処理装置に提供し、情報処理装置側で最終的な発話者特定処理を実行するといった構成としてもよい。
 例えば、このような様々な構成が可能である。
 具体的な処理態様としては、例えば以下の処理態様が可能である。
 情報処理端末は、
 音声入力部と、
 画像入力部と、
 音声入力部を介して取得した音声と、画像入力部を介して取得したカメラ撮影画像をサーバに送信する通信部を有し、
 サーバは、
 情報処理端末から受信する発話者の音声の音声認識処理を実行する音声認識部と、
 情報処理端末から受信する前記カメラ撮影画像の解析を実行する画像認識部を有し、
 音声認識部は、
 発話者の発話内容を示す文字列を生成するとともに、文字列に基づく発話者と聞き手のうなずきタイミング推定データを生成し、
 画像認識部は、
 カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したうなずきタイミング実データを生成する構成であり、
 情報処理端末、またはサーバの少なくともいずれかにおいて、
 うなずきタイミング推定データと、うなずきタイミング実データとの一致度に基づく発話者特定処理を実行する。
 このような情報処理システムが構成可能である。
 なお、ユーザ端末等の情報処理端末側の機能と、サーバ側の機能の機能分轄態様は、様々な異なる設定が可能であり、また、1つの機能を双方で実行する構成も可能である。
  [9.情報処理装置のハードウェア構成例について]
 次に、図14を参照して、情報処理装置のハードウェア構成例について説明する。
 図14を参照して説明するハードウェアは、先に図4を参照して説明した情報処理装置のハードウェア構成例であり、また、図13を参照して説明したデータ処理サーバ460を構成する情報処理装置のハードウェア構成の一例である。
 CPU(Central Processing Unit)501は、ROM(Read Only Memory)502、または記憶部508に記憶されているプログラムに従って各種の処理を実行する制御部やデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。RAM(Random Access Memory)503には、CPU501が実行するプログラムやデータなどが記憶される。これらのCPU501、ROM502、およびRAM503は、バス504により相互に接続されている。
 CPU501はバス504を介して入出力インタフェース505に接続され、入出力インタフェース505には、各種スイッチ、キーボード、マウス、マイクロホン、センサーなどよりなる入力部506、ディスプレイ、スピーカーなどよりなる出力部507が接続されている。CPU501は、入力部506から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部507に出力する。
 入出力インタフェース505に接続されている記憶部508は、例えばハードディスク等からなり、CPU501が実行するプログラムや各種のデータを記憶する。通信部509は、Wi-Fi通信、ブルートゥース(登録商標)(BT)通信、その他インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
 入出力インタフェース505に接続されているドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア511を駆動し、データの記録あるいは読み取りを実行する。
  [10.本開示の構成のまとめ]
 以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
 なお、本明細書において開示した技術は、以下のような構成をとることができる。
 (1) 発話者の特定処理を実行する発話者特定部を有し、
 前記発話者特定部は、
 (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
 (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
 上記(a),(b)の少なくともいずれかの発話者特定処理を実行する情報処理装置。
 (2) 前記発話者特定部は、
 カメラ撮影画像から発話者の唇の動きを検出可能な場合、
 (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、
 を実行する(1)に記載の情報処理装置。
 (3) 前記発話者特定部は、
 カメラ撮影画像にから発話者の唇の動きを検出不可能な場合、
 (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
 を実行する(1)または(2)に記載の情報処理装置。
 (4) 前記発話者特定部は、
 発話音声に対する音声認識結果から得られる発話文字列に基づいて推定される発話者、または聞き手のうなずきタイミング推定データと、
 カメラ撮影画像に含まれるうなずき実行者のうなずきタイミング実データとの比較処理を実行し、
 カメラ撮影画像に含まれるうなずき実行者が、発話者であるか、聞き手であるかを判別する(1)~(3)いずれかに記載の情報処理装置。
 (5) 前記発話者特定部は、
 音声認識結果から得られる発話文字列に基づいて推定される発話者うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度が高い場合は、前記うなずき実行者が発話者であると判定し、
 音声認識結果から得られる発話文字列に基づいて推定される聞き手うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度が高い場合は、前記うなずき実行者が聞き手であると判定する(4)に記載の情報処理装置。
 (6) 前記発話者特定部は、
 前記うなずき実行者が聞き手であると判定した場合、
 前記うなずき実行者の視線方向にいる人物を発話者と判定する(5)に記載の情報処理装置。
 (7) 前記情報処理装置は、
 前記発話音声に対する音声認識処理を実行するとともに、前記発話者の唇の動きから発話を解析する読唇認識処理を実行する音声認識部を有し、
 前記発話者特定部は、
 前記音声認識処理部の生成した音声認識結果と読唇認識結果を入力して発話者特定処理を実行する(1)~(6)いずれかに記載の情報処理装置。
 (8) 前記音声認識部は、さらに、
 発話音声に対する音声認識結果から得られる発話文字列に基づいて、発話者、および聞き手のうなずきタイミング推定データを生成し、
 前記発話者特定部は、
 前記音声認識処理部の生成した発話者、および聞き手のうなずきタイミング推定データと、
 カメラ撮影画像に含まれるうなずき実行者のうなずきタイミング実データとの比較処理を実行し、
 カメラ撮影画像に含まれるうなずき実行者が、発話者であるか聞き手であるかを判別する(7)に記載の情報処理装置。
 (9) 前記情報処理装置は、
 カメラ撮影画像から、発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析処理を実行する画像認識部を有し、
 前記発話者特定部は、
 前記画像認識処理部の生成した解析情報を入力して発話者特定処理を実行する(1)~(8)いずれかに記載の情報処理装置。
 (10) 前記画像認識部は、
 カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したタイムテーブルを生成し、
 前記発話者特定部は、
 前記画像認識処理部の生成したうなずきタイミングタイムテーブルを利用して発話者特定処理を実行する(9)に記載の情報処理装置。
 (11) 前記情報処理装置は、
 前記発話音声に対する音声認識処理を実行する音声認識部と、
 前記発話者、または前記聞き手の少なくともいずれかの撮影画像の解析処理を実行する画像認識部を有し、
 前記音声認識部は、
 前記発話音声に対する音声認識処理を実行して得られる文字列に基づいて、発話者のうなずきタイミングと、聞き手のうなずきタイミングを推定し、推定したうなずきタイミングデータを記録した、
 発話者うなずきタイミング推定タイムテーブルと、
 聞き手うなずきタイミング推定タイムテーブル、
 を生成し、
 前記画像認識部は、
 カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録した、
 うなずきタイミングタイムテーブルを生成し、
 前記発話者特定部は、
 前記発話者うなずきタイミング推定タイムテーブルと、前記うなずきタイミングタイムテーブルとの一致度が高い場合は、前記うなずき実行者が発話者であると判定し、
 前記聞き手うなずきタイミング推定タイムテーブルと、前記うなずきタイミングタイムテーブルとの一致度が高い場合は、前記うなずき実行者が聞き手であると判定する(1)~(10)いずれかに記載の情報処理装置。
 (12) 情報処理端末とサーバを有する情報処理システムであり、
 前記情報処理端末は、
 音声入力部と、
 画像入力部と、
 前記音声入力部を介して取得した音声と、前記画像入力部を介して取得したカメラ撮影画像を前記サーバに送信する通信部を有し、
 前記サーバは、
 前記情報処理端末から受信する発話者の音声の音声認識処理を実行する音声認識部と、
 前記情報処理端末から受信する前記カメラ撮影画像の解析を実行する画像認識部を有し、
 前記音声認識部は、
 前記発話者の発話内容を示す文字列を生成するとともに、前記文字列に基づく発話者と聞き手のうなずきタイミング推定データを生成し、
 前記画像認識部は、
 前記カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したうなずきタイミング実データを生成し、
 前記情報処理端末、または前記サーバの少なくともいずれかにおいて、
 前記うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度に基づく発話者特定処理を実行する情報処理システム。
 (13) 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 発話者の特定処理を実行する発話者特定部を有し、
 前記発話者特定部が、
 (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
 (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
 上記(a),(b)の少なくともいずれかの発話者特定処理を実行する情報処理方法。
 (14) 情報処理端末とサーバを有する情報処理システムにおいて実行する情報処理方法であり、
 前記情報処理端末は、
 音声入力部を介して取得した音声と、画像入力部を介して取得したカメラ撮影画像を前記サーバに送信し、
 前記サーバは、
 前記情報処理端末から受信する前記音声から、発話者の音声の音声認識処理を実行し、発話者の発話内容を示す文字列を生成するとともに、前記文字列に基づく発話者と聞き手のうなずきタイミング推定データを生成し、
 前記情報処理端末から受信する前記カメラ撮影画像の解析を実行し、
 前記カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したうなずきタイミング実データを生成し、
 前記情報処理端末、または前記サーバの少なくともいずれかにおいて、
 前記うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度に基づく発話者特定処理を実行する情報処理方法。
 (15) 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 発話者の特定処理を実行する発話者特定部を有し、
 前記プログラムは、前記発話者特定部に、
 (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
 (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
 上記(a),(b)の少なくともいずれかの発話者特定処理を実行させるプログラム。
 また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 以上、説明したように、本開示の一実施例の構成によれば、様々な状況下において、高精度な発話者特定処理を実行する装置、方法が実現される。
 具体的には、例えば、発話者の特定処理を実行する発話者特定部が、(a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、(b)発話者、または聞き手の動作の解析結果に基づく発話者特定処理を実行する。例えば、音声認識結果として得られる発話文字列に基づいて推定される発話者、または聞き手のうなずきタイミング推定データと、カメラ撮影画像に含まれるうなずき実行者のうなずきタイミング実データとの比較処理を実行し、その一致度に基づいて、カメラ撮影画像に含まれるうなずき実行者が、発話者であるか、聞き手であるかを判別する。
 本構成により、様々な状況下において、高精度な発話者特定処理を実行する装置、方法が実現される。
  10 情報処理装置
  11 カメラ
  12 マイク
  13 表示部
  14 スピーカー
  20 サーバ
  30 外部機器
 101 音声入力部
 102 音声認識部
 103 発話意味解析部
 105 画像入力部
 106 画像認識部
 111 発話者特定部
 112 発話者解析部
 113 発話者データ保存部
 114 記憶部(ユーザデータベース等)
 121 応答生成部
 122 システム発話音声合成部
 123 表示画像生成部
 124 出力(音声、画像)制御部
 125 音声出力部
 126 画像出力部
 410 情報処理装置
 420 アプリ実行サーサーバ
 460 データ処理サーバ
 501 CPU
 502 ROM
 503 RAM
 504 バス
 505 入出力インタフェース
 506 入力部
 507 出力部
 508 記憶部
 509 通信部
 510 ドライブ
 511 リムーバブルメディア

Claims (15)

  1.  発話者の特定処理を実行する発話者特定部を有し、
     前記発話者特定部は、
     (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
     (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
     上記(a),(b)の少なくともいずれかの発話者特定処理を実行する情報処理装置。
  2.  前記発話者特定部は、
     カメラ撮影画像から発話者の唇の動きを検出可能な場合、
     (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、
     を実行する請求項1に記載の情報処理装置。
  3.  前記発話者特定部は、
     カメラ撮影画像にから発話者の唇の動きを検出不可能な場合、
     (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
     を実行する請求項1に記載の情報処理装置。
  4.  前記発話者特定部は、
     発話音声に対する音声認識結果から得られる発話文字列に基づいて推定される発話者、または聞き手のうなずきタイミング推定データと、
     カメラ撮影画像に含まれるうなずき実行者のうなずきタイミング実データとの比較処理を実行し、
     カメラ撮影画像に含まれるうなずき実行者が、発話者であるか、聞き手であるかを判別する請求項1に記載の情報処理装置。
  5.  前記発話者特定部は、
     音声認識結果から得られる発話文字列に基づいて推定される発話者うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度が高い場合は、前記うなずき実行者が発話者であると判定し、
     音声認識結果から得られる発話文字列に基づいて推定される聞き手うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度が高い場合は、前記うなずき実行者が聞き手であると判定する請求項4に記載の情報処理装置。
  6.  前記発話者特定部は、
     前記うなずき実行者が聞き手であると判定した場合、
     前記うなずき実行者の視線方向にいる人物を発話者と判定する請求項5に記載の情報処理装置。
  7.  前記情報処理装置は、
     前記発話音声に対する音声認識処理を実行するとともに、前記発話者の唇の動きから発話を解析する読唇認識処理を実行する音声認識部を有し、
     前記発話者特定部は、
     前記音声認識処理部の生成した音声認識結果と読唇認識結果を入力して発話者特定処理を実行する請求項1に記載の情報処理装置。
  8.  前記音声認識部は、さらに、
     発話音声に対する音声認識結果から得られる発話文字列に基づいて、発話者、および聞き手のうなずきタイミング推定データを生成し、
     前記発話者特定部は、
     前記音声認識処理部の生成した発話者、および聞き手のうなずきタイミング推定データと、
     カメラ撮影画像に含まれるうなずき実行者のうなずきタイミング実データとの比較処理を実行し、
     カメラ撮影画像に含まれるうなずき実行者が、発話者であるか聞き手であるかを判別する請求項7に記載の情報処理装置。
  9.  前記情報処理装置は、
     カメラ撮影画像から、発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析処理を実行する画像認識部を有し、
     前記発話者特定部は、
     前記画像認識処理部の生成した解析情報を入力して発話者特定処理を実行する請求項1に記載の情報処理装置。
  10.  前記画像認識部は、
     カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したタイムテーブルを生成し、
     前記発話者特定部は、
     前記画像認識処理部の生成したうなずきタイミングタイムテーブルを利用して発話者特定処理を実行する請求項9に記載の情報処理装置。
  11.  前記情報処理装置は、
     前記発話音声に対する音声認識処理を実行する音声認識部と、
     前記発話者、または前記聞き手の少なくともいずれかの撮影画像の解析処理を実行する画像認識部を有し、
     前記音声認識部は、
     前記発話音声に対する音声認識処理を実行して得られる文字列に基づいて、発話者のうなずきタイミングと、聞き手のうなずきタイミングを推定し、推定したうなずきタイミングデータを記録した、
     発話者うなずきタイミング推定タイムテーブルと、
     聞き手うなずきタイミング推定タイムテーブル、
     を生成し、
     前記画像認識部は、
     カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録した、
     うなずきタイミングタイムテーブルを生成し、
     前記発話者特定部は、
     前記発話者うなずきタイミング推定タイムテーブルと、前記うなずきタイミングタイムテーブルとの一致度が高い場合は、前記うなずき実行者が発話者であると判定し、
     前記聞き手うなずきタイミング推定タイムテーブルと、前記うなずきタイミングタイムテーブルとの一致度が高い場合は、前記うなずき実行者が聞き手であると判定する請求項1に記載の情報処理装置。
  12.  情報処理端末とサーバを有する情報処理システムであり、
     前記情報処理端末は、
     音声入力部と、
     画像入力部と、
     前記音声入力部を介して取得した音声と、前記画像入力部を介して取得したカメラ撮影画像を前記サーバに送信する通信部を有し、
     前記サーバは、
     前記情報処理端末から受信する発話者の音声の音声認識処理を実行する音声認識部と、
     前記情報処理端末から受信する前記カメラ撮影画像の解析を実行する画像認識部を有し、
     前記音声認識部は、
     前記発話者の発話内容を示す文字列を生成するとともに、前記文字列に基づく発話者と聞き手のうなずきタイミング推定データを生成し、
     前記画像認識部は、
     前記カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したうなずきタイミング実データを生成し、
     前記情報処理端末、または前記サーバの少なくともいずれかにおいて、
     前記うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度に基づく発話者特定処理を実行する情報処理システム。
  13.  情報処理装置において実行する情報処理方法であり、
     前記情報処理装置は、
     発話者の特定処理を実行する発話者特定部を有し、
     前記発話者特定部が、
     (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
     (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
     上記(a),(b)の少なくともいずれかの発話者特定処理を実行する情報処理方法。
  14.  情報処理端末とサーバを有する情報処理システムにおいて実行する情報処理方法であり、
     前記情報処理端末は、
     音声入力部を介して取得した音声と、画像入力部を介して取得したカメラ撮影画像を前記サーバに送信し、
     前記サーバは、
     前記情報処理端末から受信する前記音声から、発話者の音声の音声認識処理を実行し、発話者の発話内容を示す文字列を生成するとともに、前記文字列に基づく発話者と聞き手のうなずきタイミング推定データを生成し、
     前記情報処理端末から受信する前記カメラ撮影画像の解析を実行し、
     前記カメラ撮影画像に含まれるうなずき実行者のうなずきタイミングを記録したうなずきタイミング実データを生成し、
     前記情報処理端末、または前記サーバの少なくともいずれかにおいて、
     前記うなずきタイミング推定データと、前記うなずきタイミング実データとの一致度に基づく発話者特定処理を実行する情報処理方法。
  15.  情報処理装置において情報処理を実行させるプログラムであり、
     前記情報処理装置は、
     発話者の特定処理を実行する発話者特定部を有し、
     前記プログラムは、前記発話者特定部に、
     (a)発話音声に対する音声認識結果と、発話者の唇の動きから発話を解析する読唇認識結果との比較結果に基づく発話者特定処理、または、
     (b)発話者の動作、または、前記発話者の発話を聞いている聞き手の動作の解析結果に基づく発話者特定処理、
     上記(a),(b)の少なくともいずれかの発話者特定処理を実行させるプログラム。
PCT/JP2018/042409 2018-02-01 2018-11-16 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム WO2019150708A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018016131 2018-02-01
JP2018-016131 2018-07-24

Publications (1)

Publication Number Publication Date
WO2019150708A1 true WO2019150708A1 (ja) 2019-08-08

Family

ID=67478706

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/042409 WO2019150708A1 (ja) 2018-02-01 2018-11-16 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム

Country Status (1)

Country Link
WO (1) WO2019150708A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111091824A (zh) * 2019-11-30 2020-05-01 华为技术有限公司 一种语音匹配方法及相关设备
CN111816182A (zh) * 2020-07-27 2020-10-23 上海又为智能科技有限公司 助听语音识别方法、装置及助听设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094104A (ja) * 2005-09-29 2007-04-12 Sony Corp 情報処理装置および方法、並びにプログラム
JP2011186351A (ja) * 2010-03-11 2011-09-22 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
JP2012059121A (ja) * 2010-09-10 2012-03-22 Softbank Mobile Corp 眼鏡型表示装置
JP2017116747A (ja) * 2015-12-24 2017-06-29 日本電信電話株式会社 音声処理システム、音声処理装置および音声処理プログラム
WO2017168936A1 (ja) * 2016-03-31 2017-10-05 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094104A (ja) * 2005-09-29 2007-04-12 Sony Corp 情報処理装置および方法、並びにプログラム
JP2011186351A (ja) * 2010-03-11 2011-09-22 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
JP2012059121A (ja) * 2010-09-10 2012-03-22 Softbank Mobile Corp 眼鏡型表示装置
JP2017116747A (ja) * 2015-12-24 2017-06-29 日本電信電話株式会社 音声処理システム、音声処理装置および音声処理プログラム
WO2017168936A1 (ja) * 2016-03-31 2017-10-05 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111091824A (zh) * 2019-11-30 2020-05-01 华为技术有限公司 一种语音匹配方法及相关设备
WO2021104110A1 (zh) * 2019-11-30 2021-06-03 华为技术有限公司 一种语音匹配方法及相关设备
CN111091824B (zh) * 2019-11-30 2022-10-04 华为技术有限公司 一种语音匹配方法及相关设备
CN111816182A (zh) * 2020-07-27 2020-10-23 上海又为智能科技有限公司 助听语音识别方法、装置及助听设备

Similar Documents

Publication Publication Date Title
US11875820B1 (en) Context driven device arbitration
US12125483B1 (en) Determining device groups
US11600291B1 (en) Device selection from audio data
US11823679B2 (en) Method and system of audio false keyphrase rejection using speaker recognition
CN111344780B (zh) 基于上下文的设备仲裁
US10621991B2 (en) Joint neural network for speaker recognition
US11687526B1 (en) Identifying user content
Minotto et al. Multimodal multi-channel on-line speaker diarization using sensor fusion through SVM
US20190341053A1 (en) Multi-modal speech attribution among n speakers
US10699706B1 (en) Systems and methods for device communications
CN115605948B (zh) 在多个潜在响应的电子装置之间的仲裁
JP2019533181A (ja) 通訳装置及び方法(device and method of translating a language)
KR20200090355A (ko) 실시간 번역 기반 멀티 채널 방송 시스템 및 이를 이용하는 방법
WO2019150708A1 (ja) 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
WO2019181218A1 (ja) 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
US20220161131A1 (en) Systems and devices for controlling network applications
KR20210042520A (ko) 전자 장치 및 이의 제어 방법
JP2013257418A (ja) 情報処理装置、および情報処理方法、並びにプログラム
US20190066676A1 (en) Information processing apparatus
JP2021076715A (ja) 音声取得装置、音声認識システム、情報処理方法、及び情報処理プログラム
US11430429B2 (en) Information processing apparatus and information processing method
WO2020017165A1 (ja) 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
US20210271358A1 (en) Information processing apparatus for executing in parallel plurality of pieces of processing
US20210082427A1 (en) Information processing apparatus and information processing method
CN112513845A (zh) 与语音使能设备的暂时账户关联

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18903250

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18903250

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP