(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023147481
(43)【公開日】2023-10-13
(54)【発明の名称】情報処理装置、情報処理システム、制御プログラムおよび制御方法
(51)【国際特許分類】
G06F 21/32 20130101AFI20231005BHJP
G10L 17/00 20130101ALI20231005BHJP
G06F 3/16 20060101ALI20231005BHJP
G06F 3/048 20130101ALI20231005BHJP
【FI】
G06F21/32
G10L17/00 200C
G10L17/00 200D
G06F3/16 650
G06F3/16 690
G06F3/048
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022054992
(22)【出願日】2022-03-30
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和2年度、国立研究開発法人科学技術振興機構、ムーンショット型研究開発事業「CA基盤構築及び階層的CA連携と操作者割り当ての研究開発」委託研究、産業技術力強化法第17条の適用を受ける特許出願。/ 令和2年度、国立研究開発法人科学技術振興機構、ムーンショット型研究開発事業「利用者モニタリングと経験管理の研究開発」委託研究、産業技術力強化法第17条の適用を受ける特許出願。
(71)【出願人】
【識別番号】393031586
【氏名又は名称】株式会社国際電気通信基礎技術研究所
(74)【代理人】
【識別番号】100090181
【弁理士】
【氏名又は名称】山田 義人
(72)【発明者】
【氏名】太田 陽
(72)【発明者】
【氏名】宮下 敬宏
(72)【発明者】
【氏名】内海 章
(72)【発明者】
【氏名】西村 祥吾
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA46
5E555AA48
5E555AA51
5E555BA01
5E555BB02
5E555BB04
5E555BC16
5E555CA12
5E555CA42
5E555CA47
5E555CB33
5E555CB64
5E555CB67
5E555DA23
5E555DB20
5E555DB32
5E555DB41
5E555DC11
5E555EA23
5E555FA00
(57)【要約】 (修正有)
【課題】認証方法を複雑化することなく、セキュリティを高くする情報処理装置、情報処理システム、制御プログラム及び制御方法を提供する。
【解決手段】情報処理装置は、操作者端末の操作者が所定のサービスの提供を受ける場合、操作者によって入力された操作者ID及びパスワードを用いて1つ目の認証処理を実行し、1つ目の認証に成功すると、パターン認証画面に含まれる対話エージェントの画像302を用いて、操作者または操作者のアバターの画像304に対して、複数の発言または問いかけを行う。これに対して、操作者は発話したり、アバターの画像の動作を制御したりする。情報処理装置はさらに、これらの操作パターンと、操作者が発話した音声から生成した韻律情報及び発話したときの操作者の感情を含む反応パターンを用いて2つ目の認証処理を実行する。
【選択図】
図8
【特許請求の範囲】
【請求項1】
ウェブサイトで所定のサービスを提供する情報処理装置であって、
前記所定のサービスを利用する操作者の操作者端末で入力されたIDおよびパスワードを認証する第1認証手段、
前記第1認証手段による認証に成功した場合に、対話エージェントに対する前記操作者の応答パターンを認証する第2認証手段、および
前記第2認証手段による認証に成功した場合に、前記所定のサービスの提供の開始を前記操作者端末に許可する許可手段を備え、
前記第2認証手段は、前記対話エージェントから前記操作者に複数の発話内容を発話した場合に、当該操作者が前記複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理装置。
【請求項2】
前記操作者端末からの撮影画像を受信する受信手段をさらに備え、
前記応答パターンは、前記操作者の顔画像から推定した当該操作者の感情を含む、請求項1記載の情報処理装置。
【請求項3】
前記応答パターンは、前記操作者の音声から認識した当該操作者の発話内容を含む、請求項1または2記載の情報処理装置。
【請求項4】
前記所定のサービスは、前記操作者のアバターとしてロボットを使用するサービスであり、
前記ロボットを動作させるUI画面を前記操作者端末に表示するUI表示手段、および
前記第2認証手段による認証処理を実行する場合に、前記対話エージェントおよび前記アバターを仮想空間にコンピュータグラフィックスで描画された画像を含む認証画面を前記操作者端末に表示する認証画面表示手段をさらに備え、
前記操作者は、前記複数の発話内容の各々に対応して音声で応答する場合に、前記UI画面と同じ画面を用いて前記コンピュータグラフィックスで描画された前記アバターの画像を動作させ、
前記応答パターンは、前記アバターの画像を動作させる前記操作者の操作内容を含む、請求項1から3までのいずれかに記載の情報処理装置。
【請求項5】
ウェブサイトで所定のサービスを提供する情報処理装置と、前記所定のサービスを利用する操作者の操作者端末を備える、情報処理システムであって、
前記情報処理装置は、
前記操作者端末で入力されたIDおよびパスワードを認証する第1認証手段、
前記第1認証手段による認証に成功した場合に、対話エージェントに対する前記操作者の応答パターンを認証する第2認証手段、および
前記第2認証手段による認証に成功した場合に、前記所定のサービスの提供の開始を前記操作者端末に許可する許可手段を備え、
前記第2認証手段は、前記対話エージェントから前記操作者に複数の発話内容を発話した場合に、当該操作者が前記複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理システム。
【請求項6】
ウェブサイトで所定のサービスを提供する情報処理装置の情報処理プログラムであって、
前記情報処理装置のプロセッサに、
前記所定のサービスを利用する操作者の操作者端末で入力されたIDおよびパスワードを認証する第1認証ステップ、
前記第1認証ステップにおいて認証に成功した場合に、対話エージェントに対する前記操作者の応答パターンを認証する第2認証ステップ、および
前記第2認証ステップにおいて認証に成功した場合に、前記所定のサービスの提供の開始を前記操作者端末に許可する許可ステップを実行させ、
前記第2認証ステップは、前記対話エージェントから前記操作者に複数の発話内容を発話した場合に、当該操作者が前記複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理プログラム。
【請求項7】
ウェブサイトで所定のサービスを提供する情報処理装置の情報処理方法であって、
(a)前記所定のサービスを利用する操作者の操作者端末で入力されたIDおよびパスワードを認証するステップ、
(b)前記ステップ(a)において認証に成功した場合に、対話エージェントに対する前記操作者の応答パターンを認証するステップ、および
(c)前記ステップ(b)において認証に成功した場合に、前記所定のサービスの提供の開始を前記操作者端末に許可するステップを含み、
前記ステップ(c)は、前記対話エージェントから前記操作者に複数の発話内容を発話した場合に、当該操作者が前記複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、情報処理装置、情報処理システム、制御プログラムおよび制御方法に関し、特にたとえば、2段階でユーザを認証する、情報処理装置、情報処理システム、制御プログラムおよび制御方法に関する。
【背景技術】
【0002】
この種の従来の情報処理装置の一例が特許文献1に開示されている。特許文献1に開示されるログイン認証システムでは、サーバは、ユーザ端末において入力されたユーザIDおよびログインパスワードが登録されたものか否かを判定する。また、サーバは、ユーザ端末のカメラを用いて撮影した画像データと事前に登録された顔写真データとを比較して同一人物の可能性を数値で得て、同一人物の可能性の数値が所定値以上か否かを判定する。サーバは、両方の所定要件を満たす場合に、ログインを許可する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記の特許文献1では、顔写真データを用いた認証も行うことで、ID・パスワード入力のみの構成と比べてセキュリティレベルを高めているが、たとえば、事前に入手したユーザの顔写真をカメラで撮影させることで、他人が顔写真データを用いた認証に成功する虞がある。また、ID・パスワード入力に加えて、秘密の質問に対する答えを入力する方法もあるが、第三者に推測される可能性がある。このため、秘密の質問に対する答えの入力に代えて、無意味な文字列を用いたパスコードを入力することも考えらえるが、ユーザがパスコードを記憶するのは困難であり、使い勝手が悪い。したがって、認証方法には改善の余地がある。
【0005】
それゆえに、この発明の主たる目的は、新規な、情報処理装置、情報処理システム、制御プログラムおよび制御方法を提供することである。
【0006】
また、この発明の他の目的は、認証方法を複雑化することなく、セキュリティを高くすることができる、情報処理装置、情報処理システム、制御プログラムおよび制御方法を提供することである。
【課題を解決するための手段】
【0007】
第1の発明は、ウェブサイトで所定のサービスを提供する情報処理装置であって、所定のサービスを利用する操作者の操作者端末で入力されたIDおよびパスワードを認証する第1認証手段、第1認証手段による認証に成功した場合に、対話エージェントに対する操作者の応答パターンを認証する第2認証手段、および第2認証手段による認証に成功した場合に、所定のサービスの提供の開始を操作者端末に許可する許可手段を備え、第2認証手段は、対話エージェントから操作者に複数の発話内容を発話した場合に、当該操作者が複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理装置である。
【0008】
第2の発明は、第1の発明に従属し、操作者端末からの撮影画像を受信する受信手段をさらに備え、応答パターンは、撮影画像に含まれる操作者の顔画像から推定した当該操作者の感情を含む。
【0009】
第3の発明は、第1または第2の発明に従属し、応答パターンは、操作者の音声から認識した当該操作者の発話内容を含む。
【0010】
第4の発明は、第1から第3の発明までのいずれかに従属し、所定のサービスは、操作者のアバターとしてロボットを使用するサービスであり、ロボットを動作させるUI画面を操作者端末に表示するUI表示手段、および第2認証手段による認証処理を実行する場合に、対話エージェントおよびアバターを仮想空間にコンピュータグラフィックスで描画された画像を含む認証画面を操作者端末に表示する認証画面表示手段をさらに備え、操作者は、複数の発話内容の各々に対応して音声で応答する場合に、UI画面と同じ画面を用いてコンピュータグラフィックスで描画されたアバターの画像を動作させ、応答パターンは、アバターの画像を動作させる操作者の操作内容を含む。
【0011】
第5の発明は、ウェブサイトで所定のサービスを提供する情報処理装置と、所定のサービスを利用する操作者の操作者端末を備える、情報処理システムであって、情報処理装置は、操作者端末で入力されたIDおよびパスワードを認証する第1認証手段、第1認証手段による認証に成功した場合に、対話エージェントに対する操作者の応答パターンを認証する第2認証手段、および第2認証手段による認証に成功した場合に、所定のサービスの提供の開始を操作者端末に許可する許可手段を備え、第2認証手段は、対話エージェントから操作者に複数の発話内容を発話した場合に、当該操作者が複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理システムである。
【0012】
第6の発明は、ウェブサイトで所定のサービスを提供する情報処理装置の情報処理プログラムであって、情報処理装置のプロセッサに、所定のサービスを利用する操作者の操作者端末で入力されたIDおよびパスワードを認証する第1認証ステップ、第1認証ステップにおいて認証に成功した場合に、対話エージェントに対する操作者の応答パターンを認証する第2認証ステップ、および第2認証ステップにおいて認証に成功した場合に、所定のサービスの提供の開始を操作者端末に許可する許可ステップを実行させ、第2認証ステップは、対話エージェントから操作者に複数の発話内容を発話した場合に、当該操作者が複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理プログラムである。
【0013】
第7の発明は、ウェブサイトで所定のサービスを提供する情報処理装置の情報処理方法であって、(a)所定のサービスを利用する操作者の操作者端末で入力されたIDおよびパスワードを認証するステップ、(b)ステップ(a)において認証に成功した場合に、対話エージェントに対する操作者の応答パターンを認証するステップ、および(c)ステップ(b)において認証に成功した場合に、所定のサービスの提供の開始を操作者端末に許可するステップを含み、ステップ(c)は、対話エージェントから操作者に複数の発話内容を発話した場合に、当該操作者が複数の発話内容の各々に対して音声で応答したときの当該操作者の音声の韻律情報を含む応答パターンの一致度に応じて認証する、情報処理方法である。
【発明の効果】
【0014】
この発明によれば、認証操作を複雑化させること無く、セキュリティを高くすることができる。
【0015】
この発明の上述の目的、その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0016】
【
図1】
図1はこの発明の一実施例の情報処理システムを示す図である。
【
図2】
図2は
図1に示すサーバの電気的な構成を示すブロック図である。
【
図3】
図3は
図1に示す操作者端末の電気的な構成を示すブロック図である。
【
図4】
図4は操作者端末に表示されるID・パスワード登録画面の一例を示す図である。
【
図5】
図5は操作者端末に表示されるパターン登録画面の一例を示す図である。
【
図6】
図6は操作者端末に表示されるUI画面の一例を示す図である。
【
図7】
図7は操作者端末に表示されるID・パスワード認証画面の一例を示す図である。
【
図8】
図8は操作者端末に表示されるパターン認証画面の一例を示す図である。
【
図9】
図9は
図2に示すサーバのRAMのメモリマップの一例を示す図である。
【
図10】
図10は
図3に示す操作者端末のRAMのメモリマップの一例を示す図である。
【
図11】
図11は
図2に示すサーバのCPUの登録処理の一例の一部を示すフロー図である。
【
図12】
図12は
図2に示すサーバのCPUの登録処理の一例の他の一部であって、
図11に後続するフロー図である。
【
図13】
図13は
図2に示すサーバのCPUの認証処理の一例の一部を示すフロー図である。
【
図14】
図14は
図2に示すサーバのCPUの認証処理の一例の他の一部であって、
図13に後続するフロー図である。
【発明を実施するための形態】
【0017】
図1を参照して、この第1実施例の情報処理システム10はサーバ12を含み、サーバ12は、ネットワーク14を介して、操作者端末16およびロボット18に通信可能に接続される。
【0018】
操作者端末16は、操作者によって操作され、主として、ロボット18を制御するために使用される。この実施例では、操作者は、サーバ12によって提供されるアバターを用いた所定のサービスを利用する者(サービスユーザ)である。ロボット18は、操作者のアバターとして機能する。
【0019】
なお、ロボット18が表示装置を備える場合には、当該表示装置に、操作者の顔画像(または、上半身の画像あるいは全身の画像)を表示したり、操作者に対応するキャラクタの画像を表示したりしてもよい。
【0020】
所定のサービスは、一例として、博物館、美術館、水族館、科学館または動物園などに配置されるロボット18を遠隔に存在する操作者のアバターとして機能させ、遠隔に存在する操作者は、ロボット18を通して、博物館、美術館、水族館、科学館または動物園などを見学する。この場合、博物館、美術館、水族館、科学館または動物園などに存在する案内人がロボット18とともに館内または園内を移動する。また、操作者は、ロボット18を通して案内人の説明を聞いたり、案内人と対話したりする。つまり、案内人は、操作者の対話相手である。
【0021】
また、所定のサービスの他の例は、映画館、コンサート会場または劇場に配置されるロボット18を遠隔に存在する操作者のアバターとして機能させ、遠隔に存在する操作者は、ロボット18を通して、映画館、コンサート会場または劇場などで映画、コンサート、ライブまたは演劇などを鑑賞する。この場合、ロボット18は座席等に固定的に配置される。また、対話相手は居ない。ただし、対話相手として案内人がロボット18に付いていてもよい。
【0022】
なお、
図1では、1台の操作者端末16および1台のロボット18を示してあるが、実際には、複数の操作者端末16および複数のロボット18が設けられる。以下、1台の操作者端末16および1台のロボット18を用いて説明するが、同じ内容が他の操作者端末16および他のロボット18にも当てはまる。
【0023】
サーバ12は、情報処理装置の一例であり、汎用のサーバを用いることができる。この実施例では、サーバ12は、アバターを用いた所定のサービスを提供するウェブサイトを運営する。サーバ12は、操作者データベース(以下、「操作者DB」という)12aに接続される。操作者DB12aは、サーバ12が提供するアバターを用いた所定のサービスを利用する操作者(または、サービスユーザ)を認証するための情報(以下、「認証情報」ということがある)を記憶する。
【0024】
なお、操作者DB12aは、サーバ12に内蔵されるHDDに設けてもよいし、ネットワーク14を介して通信可能に設けてもよい。
【0025】
ネットワーク14は、インターネットを含むIP網(または、IPネットワーク)と、このIP網にアクセスするためのアクセス網(または、アクセスネットワーク)とから構成される。アクセス網としては、公衆電話網、携帯電話網、有線LAN、無線LAN、CATV(Cable Television)等を用いることができる。
【0026】
操作者端末16は、サーバ12とは異なる他の情報処理装置であり、一例として、デスクトップ型PCであり、ブラウザ機能を備えている。他の実施例では、操作者端末16として、スマートフォン、タブレットPCまたはノート型PCなどの汎用の端末を用いることもできる。
【0027】
ロボット18は、自立行動可能なロボットであり、市販の据置型または移動型のロボットを用いることができる。一例として、据置型のロボットとしては、ヴイストン株式会社が製造販売するSota(TM)を使用することができる。また、移動型のロボットとしては、出願人が開発等したロボビー(登録商標)またはDouble Robotics, Incが販売するロボットDouble 3を使用することができる。
【0028】
図2は
図1に示したサーバ12の電気的な構成を示すブロック図である。
図2に示すように、サーバ12はCPU20を含み、CPU20は、内部バスを介して、RAM22、通信インタフェース(以下、「通信I/F」という)24および入出力インタフェース(以下、「入出力I/F」という)26に接続される。
【0029】
CPU20は、サーバ12の全体的な制御を司る。ただし、CPU20に代えて、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)を設けてもよい。RAM22は、サーバ12の主記憶装置であり、CPU20のワーク領域およびバッファ領域として用いられる。
【0030】
図示は省略するが、サーバ12は、HDDおよびROMのような補助記憶装置も備える。ただし、HDDおよびROMに代えて、または、HDDおよびROMに加えて、SSD等の不揮発性メモリが使用されてもよい。
【0031】
通信I/F24は、CPU20の制御の下、ネットワーク14を介して、操作者端末16およびロボット18などの外部のコンピュータとの間で、制御信号およびデータの送受信を行うために有線インタフェースを有する。ただし、通信I/F24としては、無線LANまたはBluetooth(登録商標)等の無線インタフェースを使用することもできる。
【0032】
入出力I/F26には、入力装置28および表示装置30が接続されている。入力装置28として、キーボードおよびコンピュータマウスが用いられる。表示装置30は、LCDまたは有機ELディスプレイである。
【0033】
入出力I/F26は、入力装置28から入力された操作データ(または、操作情報)をCPU20に出力するとともに、CPU20によって生成された画像データを表示装置30に出力して、画像データに対応する画面を表示装置30に表示させる。
【0034】
なお、
図2に示すサーバ12の電気的な構成は一例であり、限定される必要はない。
【0035】
図3は
図1に示した操作者端末16の電気的な構成を示すブロック図である。
図3に示すように、操作者端末16はCPU50を含み、CPU50は、内部バスを介して、RAM52、通信I/F54および入出力I/F56に接続される。
【0036】
CPU50は、操作者端末16の全体的な制御を司る。ただし、CPU50に代えて、CPU機能、GPU機能等の複数の機能を含むSoCを設けてもよい。RAM52は、操作者端末16の主記憶装置であり、CPU50のワーク領域およびバッファ領域として用いられる。
【0037】
図示は省略するが、操作者端末16は、HDDおよびROMのような補助記憶装置も備える。ただし、HDDおよびROMに代えて、または、HDDおよびROMに加えて、SSD等の不揮発性メモリが使用されてもよい。
【0038】
通信I/F54は、CPU50の制御の下、ネットワーク14を介して、サーバ12およびロボット18などの外部のコンピュータとの間で、制御信号およびデータの送受信を行うために有線インタフェースを有する。ただし、通信I/F54としては、無線LANまたはBluetooth(登録商標)等の無線インタフェースを使用することもできる。
【0039】
入出力I/F56には、入力装置58および表示装置60、マイク62およびスピーカ64が接続されている。入力装置58として、キーボードおよびコンピュータマウスが用いられる。さらに、タッチパネルが設けられる場合もある。表示装置60は、LCDまたは有機ELディスプレイである。
【0040】
ただし、操作者端末16として、スマートフォンが用いられる場合には、入力装置58は、タッチパネルおよびハードウェアのボタンである。タッチパネルは、汎用のタッチパネルであり、静電容量方式、電磁誘導方式、抵抗膜方式、赤外線方式など、任意の方式のものを用いることができる。
【0041】
入出力I/F56は、マイク62で検出された操作者の音声をデジタルの音声データに変換してCPU50に出力するとともに、CPU50によって出力される音声データをアナログの音声信号に変換してスピーカ64から出力させる。ただし、実施例では、CPU50から出力される音声データは、サーバ12またはロボット18から受信した音声データである。また、入出力I/F56は、入力装置58から入力された操作データ(または、操作情報)をCPU50に出力するとともに、CPU50によって生成された画像データを表示装置60に出力して、画像データに対応する画面または画像を表示装置60に表示させる。ただし、外部のコンピュータ(たとえば、サーバ12またはロボット18)から受信した画像データがCPU50によって出力される場合もある。
【0042】
また、操作者端末16は、センサI/F66およびカメラ68を備えている。CPU50は、バスおよびセンサI/F66を介してカメラ68に接続される。カメラ68は、CCDまたはCMOSのような撮像素子を用いたカメラである。
【0043】
なお、
図3に示す操作者端末16の電気的な構成は一例であり、限定される必要はない。
【0044】
また、操作者端末16がスマートフォンである場合には、携帯電話通信網、または、携帯電話網および公衆電話網を介して、通話するための通話回路を備えるが、この実施例では、そのような通話は行わないため、図示は省略してある。
【0045】
このような情報処理システム10では、操作者すなわちサービスユーザは、操作者端末16を用いて、ブラウザを起動し、サーバ12が運営する所定のサービスのウェブサイトにアクセスし、トップ画面のメニューを選択して、操作者IDおよびパスワードを登録する。
図4は操作者端末16の表示装置60に表示されるID・パスワード登録画面100の一例を示す図である。
【0046】
図4に示すように、ID・パスワード登録画面100には、表示領域102および104が縦に並んで設けられ、表示領域104の下方に、ボタン110および112が横に並んで設けられる。
【0047】
表示領域102は、入力された操作者IDを表示するための領域である。表示領域104は、入力されたパスワードを表示するための領域である。ただし、他人に見られるのを防止するために、パスワードは、米印のような記号に置き換えて表示される場合もある。
【0048】
一例として、操作者IDおよびパスワードは、使用可能な文字、数字および記号を用いて、操作者が任意に決定する。
【0049】
ボタン110は、操作者IDおよびパスワードを所定のサービスに登録するためのボタンである。ボタン110がオンされると、操作者IDおよびパスワードが1つ目の認証情報として、サーバ12に接続された操作者DB12aに記憶(登録)される。
【0050】
ボタン112は、操作者IDおよびパスワードを所定のサービスに登録するのをキャンセルするためのボタンである。ボタン112がオンされると、操作者IDおよびパスワードを所定のサービスに登録することがキャンセルされ、ID・パスワード登録画面100が非表示され、トップ画面に戻る。
【0051】
上述したように、1つ目の認証情報として、操作者IDおよびパスワードが所定のサービスに登録されると、2つ目の認証情報として、応答パターンが登録される。応答パターンを登録する場合、操作者端末16の表示装置60に、
図5に示すパターン登録画面150が表示されるとともに、
図6に示すUI画面200が表示される。操作者は、音声入力およびUI画面200の操作によって、ロボット18に対峙する人間または第1ロボット画像152(302)と対話する。
【0052】
図5に示すパターン登録画面150には、第1ロボット画像152および第2ロボット画像154が表示される。第1ロボット画像152は、仮想の対話エージェントである。第2ロボット画像154は、
図1に示したロボット18に対応する仮想のアバターである。第2ロボット画像154は、ロボット18と同じ外観を有する必要はないが、ロボット18と同じ動作を実行可能な外観を有する。
【0053】
第1ロボット画像152の動作および発話は、サーバ12のCPU20によって自動的に制御され、第2ロボット画像154の動作および発話は、操作者の操作に従って制御される。
【0054】
図6に示すUI画面200は、ロボット18を操作するための画面であり、応答パターンの登録時には、第2ロボット画像154すなわち仮想のアバターを操作するための画面である。ただし、UI画面200は、後述するように、応答パターンの認証時に、第2ロボット画像304すなわち仮想のアバターを操作するための画面でもある。
【0055】
UI画面200には、表示領域202、204および206が設けられる。表示領域202は、ロボット18に設けられたカメラで撮影された画像(カメラ映像)を表示するための領域である。したがって、登録時および認証時には、何も表示されない。
【0056】
表示領域204は、ロボット18の移動を制御するコマンド(以下、「動作コマンド」という)を入力するための複数のボタンを表示する。この実施例では、表示領域204には、ボタン210、212、214、216および218が表示される。ボタン210は、ロボット18を前進させるためのボタンである。ボタン212は、ロボット18を左折または左旋回させるためのボタンである。ボタン214は、ロボット18を右折または右旋回させるためのボタンである。ボタン216は、ロボット18を停止させるためのボタンである。ボタン218は、ロボット18を後進させるためのボタンである。
【0057】
詳細な説明は省略するが、ボタン210またはボタン218がオンされている状態で、ボタン212がオンされと、ロボット18は前進または後進しながら左に曲がる。また、ボタン210またはボタン218がオンされている状態で、ボタン214がオンされると、ロボット18は前進または後進しながら右に曲がる。ロボット18が停止している状態で、ボタン212がオンされると、ロボット18は反時計回りに進行方向を変える。また、ロボット18が停止している状態で、ボタン214がオンされると、ロボット18は時計回りに進行方向を変える。
【0058】
ただし、この実施例では、登録時(認証時)では、第2ロボット画像154の移動を制御することは無いため、ボタン210-218がオンされることはない。他の例では、登録時において、第2ロボット画像154の移動を制御するようにしてもよい。この場合、第2ロボット画像154は、現実世界においてロボット18が移動される場合と同様に、仮想空間において移動される。これらのことは、認証時においても同じである。
【0059】
応答パターンを登録する場合(認証する場合も同じ)には、コンピュータグラフィックス(CG)で描画された対話エージェントの画像すなわち第1ロボット画像152から、予め決定された、いくつかの発言または問いかけを行い、操作者は、発話したり、UI画面200を操作したりすることで、アバターすなわち第2ロボット画像154を通して応答し、インタラクションを行う。つまり、応答パターンを登録する場合(認証する場合も同じ)には、CGで描画されたアバターの画像がパターン登録画面150に表示される。このとき、サーバ12は、各発言または問いかけに対する操作者の操作パターンおよび反応パターンを2つ目の認証情報として、操作者DB12aに記憶(登録)する。
【0060】
この実施例では、対話エージェントは、合成音声を出力することで、いくつかの発言または問いかけを行うが、発言または問いかけの内容は、字幕または吹き出しを用いてテキストで表示してもよい。また、合成音声の出力およびテキストの表示の両方を行うようにしてもよい。後述するように、反応パターンの生成には、操作者の音声が用いられるため、対話エージェントの発言または問いかけをテキストで表示するだけの場合には、パターン登録画面150(後述する、パターン認証画面300も同じ)において、操作者に発話させるように誘導する必要がある。
【0061】
ただし、操作者の操作パターンは、第1ロボット画像152からの発言または問いかけに対する、操作者の発話内容および操作者の操作内容(第2ロボット画像154の動作)を意味する。ただし、操作者が第2ロボット画像154を動作させない場合もあるため、操作者の操作内容(第2ロボット画像154の動作)は操作パターンに含まれない場合もある。または、操作が無いことを操作パターンに含めるようにしてもよい。
【0062】
また、操作者の反応パターンは、操作者が発話する場合の操作者の不随意的な反応である。具体的には、不随意的な反応は、操作者の音声の韻律情報および操作者の感情である。
【0063】
操作者の音声の韻律情報を生成する手法は、深層学習を用いた方法または特開2008-15361号公報に開示された技術を用いることができる。この特開2008-15361号公報では、韻律情報は、時間長、ピッチ、エネルギー(パワー)情報などを含むことが開示されているが、さらに、抑揚、音調、リズムの情報を含む。ただし、これらの情報は時系列に従うデータである。また、韻律情報としては、これらすべての情報を認証に用いる必要はなく、いずれか1つまたは2つ以上が認証に用いられればよい。
【0064】
ただし、韻律情報は、サーバ12に通信可能に接続された他のコンピュータが生成するようにしてもよい。この場合には、サーバ12は、音声データを受信すると、受信した音声データを他のコンピュータに送信し、当該他のコンピュータから韻律情報を受信する。または、操作者端末16で操作者の音声データから韻律情報を生成し、韻律情報をサーバ12に送信するようにしてもよい。
【0065】
操作者の感情は、操作者端末16から送信される撮影画像すなわち撮影した操作者の顔画像から推定される。一例として、感情は、喜び、恐れ、悲しみ、嫌悪および怒りの5つに分類される。顔画像から人間の感情を推定する手法としては、公知の技術を用いることができる。たとえば、「小林 宏、原 文雄:ニューラルネットワークによる人の基本表情認識、計測自動制御学会論文集 Vol.29, No.1, 112/118(1993)」、「小谷中陽介、本間経康、酒井正夫、阿部健一:ニューラルネットワークを用いた顔表情認識、東北大医保健学科紀要 13(1):23~32, 2004」および「西銘 大喜、遠藤 聡志、當間 愛晃、山田 孝治、赤嶺 有平:畳み込みニューラルネットワークを用いた表情表現の獲得と顔特徴量の分析、人工知能学会論文誌 32巻5号FZ(2017年)」などに開示された技術を用いることができる。
【0066】
また、他の公知の技術では、顔画像から抽出した特徴点に基づいて人間の感情を推定する手法としては、特開2020-163660号公報に開示された技術を用いることもできる。
【0067】
なお、他の例では、音声から人間の感情を推定することもできる。音声から人間の感情を推定する手法としては、公知の技術を用いることができる。たとえば、特開2021-12285号および「森 大毅:音声から感情・態度の理解、電子情報通信学会誌 Vol. 101, No. 9, 2018」などに開示された技術を用いることができる。
【0068】
ただし、顔画像また音声に基づいて感情を推定する手法として公知の技術を用いる場合には、そのために必要な回路コンポーネントおよびデータがサーバ12に設けられる。また、顔画像また音声に基づいて感情を推定する装置(以下、「推定装置」という)をクラウド上に設けて、サーバ12は、推定装置に顔画像または音声を送信し、感情の推定結果を推定装置から受け取るようにしてもよい。または、操作者の感情は、操作者端末16で推定し、推定結果をサーバ12に送信するようにしてもよい。
【0069】
また、操作者の発話内容は、サーバ12によって、操作者端末16から送信される音声データを音声認識することで検出される。ただし、音声認識機能は、サーバ12に通信可能に接続された他のコンピュータが実行するようにしてもよい。この場合には、サーバ12は、音声データを受信すると、受信した音声データを他のコンピュータに送信し、当該他のコンピュータから音声認識の処理結果(テキスト文)を受信する。または、操作者端末16で操作者の音声データを音声認識し、音声認識の処理結果をサーバ12に送信するようにしてもよい。
【0070】
操作者の操作内容は、操作者端末16から送信される動作コマンドまたはボタン(ここでは、
図6に示したボタン220、222または224)の種類である。
【0071】
たとえば、対話エージェントが「こんにちは」と発話する。つまり、対話エージェントの「こんにちは」の音声データがサーバ12から操作者端末16に送信され、スピーカ64から出力される。以下、対話エージェントが発話する場合について同様である。このとき、操作者の感情は、喜びと推定される。
【0072】
これに対して、操作者は「こんばんは」と発話する。さらに、操作者の操作に応じて操作者のアバターは右手を挙げる。つまり、操作者はUI画面200のボタン224をオンし、「右手を挙げる」動作コマンドをサーバ12に送信する。したがって、サーバ12では、パターン登録画面150の第2ロボット画像154に右手を挙げさせる。
【0073】
次に、対話エージェントが「朝ごはんは何を食べましたか?」と発話する。これに対して、操作者の操作に応じて操作者のアバターは頷く。さらに、操作者は「納豆です」と発話する。このとき、操作者の感情は、喜びと推定される。
【0074】
続いて、対話エージェントが「はあ?もう一度言ってください」と発話する。これに対して、操作者は再度「納豆です」と発話する。このとき、操作者の感情は、嫌悪と推定される。
【0075】
上述したように、対話エージェントからのいくつかの発言または問い合わせは予め決定されており、対話エージェントの各発言または問い合わせに対する操作者の操作パターンおよび反応パターンが応答パターンとして操作者DB12aに記憶される。ただし、応答パターンは、操作者の操作者IDに紐づけて記憶される。この操作者DB12aに記憶された応答パターン(以下、「登録応答パターン」という)が、2つ目の認証情報として、アバターすなわちロボット18を使用する所定のサービスの提供を受ける場合に、認証処理に用いられる。
【0076】
また、操作者すなわちサービスユーザは、操作者端末16を用いて、ブラウザを起動し、サーバ12が運営する所定のサービスのウェブサイトにアクセスし、トップ画面のメニューを選択して、アバター(ロボット18)の使用を選択すると、アバターの使用に先立って、操作者の認証処理が実行される。認証処理は、1つ目の認証情報を用いて行わる1つ目の認証処理と2つ目の認証情報を用いて行われる2つ目の認証処理を含む。
【0077】
サーバ12は、認証処理を開始すると、まず、操作者IDおよびパスワードを認証する。つまり、1つ目の認証処理が実行される。
図7は操作者端末16の表示装置60に表示されるID・パスワード認証画面250の一例を示す図である。以下、ID・パスワード認証画面250および1つ目の認証処理について説明するが、上記の登録処理で説明した内容と同じ内容については簡単に説明する。
【0078】
図7に示すように、ID・パスワード認証画面250には、表示領域252および254が縦に並んで設けられ、表示領域254の下方に、ボタン260および262が横に並んで設けられる。
【0079】
表示領域252は、入力された操作者IDを表示するための領域である。表示領域254は、入力されたパスワードを表示するための領域である。ただし、他人に見られるのを防止するために、パスワードは、米印のような記号に置き換えて表示される場合もある。
【0080】
ボタン260は、操作者IDおよびパスワードを認証するためのボタンである。ボタン260がオンされると、サーバ12は、操作者DB12aに記憶された1つ目の認証情報を参照し、操作者IDおよびパスワードが正しいかどうかを判断する。操作者IDおよびパスワードが正しい場合には、1つ目の認証に成功する。一方、操作者IDまたは/およびパスワードが正しくない場合には、1つ目の認証に失敗する。認証に失敗した場合には、ID・パスワード認証画面250において、再度、操作者IDおよびパスワードが入力される。
【0081】
ボタン262は、操作者IDおよびパスワードの認証をキャンセルするためのボタンである。ボタン262がオンされると、操作者IDおよびパスワードの認証処理がキャンセルされ、ID・パスワード認証画面250が非表示され、トップ画面に戻る。
【0082】
上述したように、1つ目の認証処理に成功すると、サーバ12は、2つ目の認証処理を実行する。2つ目の認証処理を実行する場合、操作者端末16の表示装置60に、
図8に示すパターン認証画面300が表示されるとともに、
図6に示したUI画面200が表示される。以下、パターン認証画面300および2つ目の認証処理について説明するが、上記の登録処理で説明した内容と同じ内容については簡単に説明する。
【0083】
なお、2つ目の認証処理においても、操作者は、音声入力およびUI画面200の操作によって、対話エージェント(ここでは、第1ロボット画像302)と対話する。この点は、2つ目の登録処理を実行する場合と同じであるため、重複した説明は省略する。
【0084】
図8に示すパターン認証画面300には、第1ロボット画像302および第2ロボット画像304が表示される。第1ロボット画像302は、パターン登録画面150に表示される第1ロボット画像152と同じであり、第2ロボット画像304は、パターン登録画面150に表示される第2ロボット画像154と同じである。
【0085】
第1ロボット画像302の動作および発話は、サーバ12のCPU20によって自動的に制御され、第2ロボット画像154の動作および発話は、操作者の操作に従って制御される。
【0086】
対話パターンを認証する場合には、第1ロボット画像302から、予め決定された、いくつかの発言または問いかけを行い、操作者は、発話したり、UI画面200を操作したりすることで、第2ロボット画像304を通して応答し、インタラクションを行う。ただし、いくつかの発言または問いかけは、2つ目の登録処理のときの内容と同じである。
【0087】
2つ目の認証処理おいては、いくつかの発言または問いかけに対する操作者の応答パターン(以下、「認証応答パターン」という)が、2つの登録処理のときと同様の方法で取得される。そして、認証応答パターンと、操作者DB12aに記憶された登録応答パターンの一致度が高いと判断される場合に、2つ目の認証に成功する。一方、認証応答パターンと登録応答パターンの一致度が低いまたは一致しないと判断される場合に、2つ目の認証に失敗する。ただし、操作者の認証応答パターンと一致度が判断されるのは、当該操作者の操作者IDに紐づけられた登録応答パターンである。
【0088】
ただし、認証応答パターンと登録応答パターンに含まれる対話パターンが一致しない場合には、認証応答パターンと登録応答パターンの一致度が低いまたは一致しないと判断される。
【0089】
また、認証応答パターンと登録応答パターンに含まれる反応パターンのうち、操作者の感情が一致しない場合には、認証応答パターンと登録応答パターンは一致しないと判断される。
【0090】
さらに、認証応答パターンと登録応答パターンに含まれる反応パターンのうち、韻律情報の一致度は、たとえば、深層学習、DPマッチング法または隠れマルコフ法(Hidden Markov Model:HMM)により、検出する。複数の発言または問いかけに対して、操作者が発話したときの音声から生成された各韻律情報のうち、いずれか1つでも、一致度が所定の割合(たとえば、8割)未満である場合に、認証応答パターンと登録応答パターンは一致しないと判断される。
【0091】
つまり、認証応答パターンと登録応答パターンに含まれる、複数の発言または問いかけに対する、発話内容がすべて一致し、操作者の感情がすべて一致し、さらに、すべての韻律情報の一致度が所定の割合以上である場合に、認証応答パターンと登録応答パターンの一致度が高いと判断される。
【0092】
ただし、この実施例では、操作者が発話したときの音声から生成された各韻律情報のうち、いずれか1つでも、一致度が所定の割合(たとえば、8割)未満である場合に、認証応答パターンと登録応答パターンは一致しないと判断するが、これに限定される必要はない。他の例では、操作者が発話したときの音声から生成された各韻律情報のうち、いずれか2つ以上の一致度が所定の割合(たとえば、8割)以上である場合には、認証応答パターンと登録応答パターンの一致度が高いと判断されてもよい。また、操作者が発話したときの音声から生成された各韻律情報のうち、いずれか1つでも、一致度の割合が非常に高い場合(たとえば、9割を超える場合)には、認証応答パターンと登録応答パターンの一致度が高いと判断されてもよい。
【0093】
2つ目の認証にも成功すると、サーバ12は、操作者端末16とロボット18のセッションの開始を許可する。したがって、操作者端末16とロボット18は接続状態を確立し、ロボット18は操作者端末16の操作者のアバターとして機能する。このとき、操作者の音声はロボット18に送信され、ロボット18のスピーカから出力される。また、操作者は、操作者端末16の表示装置60に表示されたUI画面200を操作し、操作に応じた動作コマンドがロボット18に送信され、ロボット18は動作コマンドに従って移動したり、移動以外の動作を行なったりする。
【0094】
一方、1つ目の認証に成功しない場合または2つ目の認証に成功しない場合には、サーバ12は、操作者端末16とロボット18のセッションの開始を拒否する。
【0095】
図9はサーバ12に内蔵されるRAM22のメモリマップ400の一例を示す。
図9に示すように、RAM22は、プログラム記憶領域402およびデータ記憶領域404を含む。プログラム記憶領域402には、この実施例の情報処理プログラムが記憶されている。
【0096】
情報処理プログラムは、通信プログラム402a、登録プログラム402b、認証プログラム402c、音声認識プログラム402d、韻律情報生成プログラム402eおよび感情推定プログラム402fなどを含む。
【0097】
通信プログラム402aは、外部の機器、この実施例では、操作者端末16と有線または無線で通信(データの送信および受信)するためのプログラムである。
【0098】
登録プログラム402bは、操作者端末16の操作者の操作に従って、操作者IDおよびパスワードを登録する1つ目の登録処理および応答パターンを登録する2つ目の登録処理を実行するためのプログラムである。
【0099】
認証プログラム402cは、操作者端末16の操作者の操作に従って、操作者IDおよびパスワードを認証する1つ目の認証処理および応答パターンを認証する2つ目の認証処理を実行するためのプログラムである。
【0100】
音声認識プログラム402dは、操作者の音声(音声データ)を音声認識するためのプログラムである。
【0101】
韻律情報生成プログラム402eは、操作者の音声(音声データ)の韻律情報を生成するためのプログラムである。
【0102】
感情推定プログラム402fは、操作者の顔画像に基づいて当該操作者の感情を推定するためのプログラムである。
【0103】
図示は省略するが、プログラム記憶領域402には、サーバ12のオペレーティングシステムなどのミドルウェア、所定のサービスを提供するためのプログラムおよび表示画像データ404aなどの画像データを生成するためのプログラムも記憶される。
【0104】
また、データ記憶領域404には、表示画像データ404a、対話エージェント音声データ404b、操作者音声データ404c、操作者画像データ404d、動作コマンドデータ404e、登録ID・パスワードデータ404f、登録応答パターンデータ404g、認証ID・パスワードデータ404hおよび認証応答パターンデータ404iなどが記憶される。
【0105】
表示画像データ404aは、各種の画面(100、150、200、250、300など)を表示するための画像データであり、対話エージェントをCGで描画した画像である第1ロボット画像152、302および操作者のアバターをCGで描画した画像である第2ロボット画像154、304の画像データを含む。
【0106】
対話エージェント音声データ404bは、対話パターンの登録時および認証時に、予め用意された複数の発言および問い合わせについての合成音声のデータである。
【0107】
操作者音声データ404cは、操作者端末16から受信した操作者の音声データである。
【0108】
操作者画像データ404dは、操作者端末16から受信した撮影画像データである。
【0109】
動作コマンドデータ404eは、操作者端末16から受信した操作データ504aに含まれる動作コマンドデータである。
【0110】
登録ID・パスワードデータ404fは、第1の登録処理時に、操作者端末16から受信した操作データで決定(または、入力)される操作者IDおよびパスワードのデータである。
【0111】
登録応答パターンデータ404gは、第2の登録処理時に、操作者端末16から受信した操作パターンおよび反応パターンを時系列に従って記載した応答パターンについてのデータである。
【0112】
認証ID・パスワードデータ404hは、第1の認証処理時に、操作者端末16から受信した操作データで決定(または、入力)される操作者IDおよびパスワードのデータである。
【0113】
認証応答パターンデータ404iは、第2の認証処理時に、操作者端末16から受信した操作パターンおよび反応パターンを時系列に従って記載した応答パターンについてのデータである。
【0114】
図示は省略するが、データ記憶領域404には、情報処理を実行するために必要な他のデータが記憶されたり、情報処理を実行するために必要なタイマ(カウンタ)およびフラグが設けられたりする。
【0115】
図10は操作者端末16に内蔵されるRAM52のメモリマップ500の一例を示す。
図10に示すように、RAM52は、プログラム記憶領域502およびデータ記憶領域504を含む。プログラム記憶領域502には、この実施例の制御プログラムが記憶されている。
【0116】
制御プログラムは、通信プログラム502a、操作検出プログラム502b、撮影画像取得プログラム502c、画像表示プログラム502d、音検出プログラム502eおよび音出力プログラム502fなどを含む。
【0117】
通信プログラム502aは、外部の機器、この実施例では、サーバ12およびロボット18と有線または無線で通信(データの送信および受信)するためのプログラムである。
【0118】
操作検出プログラム502bは、操作者の操作に従って入力装置58から入力される操作データを検出し、データ記憶領域504に記憶するためのプログラムである。ただし、各画面(100、150、200、250、300)に設けられたボタンが操作された場合には、操作されたボタンに割り当てられた操作情報(動作コマンドを含む)のデータが操作データとして検出される。
【0119】
撮影画像取得プログラム502cは、カメラ68で撮影された撮影画像データを取得するためのプログラムである。
【0120】
画像表示プログラム502dは、サーバ12から受信した表示画像データ504bまたは/および操作者端末16で生成した表示画像データを表示装置60に出力するためのプログラムである。
【0121】
音検出プログラム502eは、マイク62から入力される操作者の音声を検出し、検出した音声に対応する操作者音声データ504dをデータ記憶領域504に一時的に記憶するためのプログラムである。
【0122】
音出力プログラム502fは、サーバ12から受信した対話エージェント音声データ504cを出力するためのプログラムである。ただし、ロボット18の操作中では、音出力プログラム502fは、ロボット18から受信した対話相手の音声データを出力するためのプログラムでもある。
【0123】
図示は省略するが、プログラム記憶領域502には、操作者端末16のオペレーティングシステムなどのミドルウェア、ブラウザ機能を実行するためのプログラムも記憶される。
【0124】
また、データ記憶領域504には、操作データ504a、表示画像データ504b、対話エージェント音声データ504c、操作者音声データ504dおよび操作者画像データ504eなどが記憶される。
【0125】
操作データ504aは、操作検出プログラム502bに従って検出された操作データである。操作データ504aは、サーバ12に送信されたり、操作者端末16の処理に利用されたりした後に消去される。
【0126】
表示画像データ504bは、サーバ12から受信した各種の画面(100、150、200、250、300など)を表示するための画像データであり、対話エージェントをCGで描画した画像である第1ロボット画像152、302および操作者のアバターをCGで描画した画像である第2ロボット画像154、304の画像データを含む。
【0127】
対話エージェント音声データ504cは、サーバ12から受信した対話パターンの登録時および認証時に、予め用意された複数の発言および問い合わせについての合成音声のデータである。対話エージェント音声データ504cは、スピーカ64から出力した後に消去される。
【0128】
操作者音声データ504dは、マイク62で検出された音声データであり、サーバ12に送信された後に消去される。
【0129】
操作者画像データ504eは、カメラ68から取得した撮影画像データであり、サーバ12に送信された後に消去される。
【0130】
図示は省略するが、データ記憶領域504には、制御処理を実行するために必要な他のデータが記憶されたり、制御処理を実行するために必要なタイマ(カウンタ)およびフラグが設けられたりする。
【0131】
図11および
図12は、サーバ12のCPU20の登録処理を示すフロー図である。図示は省略するが、CPU20は、登録処理と並行して、操作者端末16から送信される操作データ504a、操作者音声データ504dおよび操作者画像データ504eを受信する処理を実行する。
【0132】
また、図示は省略するが、操作者端末16のCPU50は、操作データ504aを検出したり、操作者音声データ504dを検出したり、操作者画像データ504eを取得したりして、各データをサーバ12に送信する処理を実行したり、サーバ12から送信された表示画像データ404aまたは/および対話エージェント音声データ404bを受信する処理を実行したりする。
【0133】
なお、サーバ12のCPU20は、サーバ12が運営するウェブサイトにアクセスしている操作者端末16毎に、登録処理を実行する。
【0134】
これらのことは、後述する認証処理(
図13および
図14参照)についても同じである。
【0135】
図11に示すように、サーバ12のCPU20は登録処理を開始すると、ステップS1で、
図4に示したようなID・パスワード登録画面100の表示画像データを操作者端末16に送信する。したがって、操作者端末16の表示装置60にID・パスワード登録画面100が表示される。
【0136】
次のステップS3では、操作者IDとパスワードの登録指示があるかどうかを判断する。ステップS3で“NO”であれば、つまり、操作者IDとパスワードの登録指示が無ければ、ステップS3に戻る。図示は省略するが、操作者の操作に応じて、操作者IDまたはパスワードの文字等が入力された場合には、文字等を記憶するとともに、文字等をID・パスワード登録画面100の表示領域102または表示領域104に表示する。
【0137】
一方、ステップS3で“YES”であれば、つまり、操作者IDとパスワードの登録指示が有れば、ステップS5で、操作者IDとパスワードすなわち登録ID・パスワードデータ404fを操作者DB12aに登録する。
【0138】
続いて、ステップS7で、
図5に示したようなパターン登録画面150の表示画像データを操作者端末16に送信する。次のステップS9では、変数nに初期値を設定する(n=1)。ただし、nは、応答パターンの登録処理において、対話エージェントが発話するべき発言または問いかけを識別するための変数である。
【0139】
図12に示すように、続くステップS11では、対話エージェントにn個目の発言または問いかけを発話させる。ここでは、CPU20は、n個目の発言または問いかけについての対話エージェント音声データ404bを操作者端末16に送信する。したがって、操作者端末16のスピーカ64から、n個目の発言または問いかけの音声すなわち第1ロボット画像152の音声が出力される。
【0140】
次のステップS13では、応答が有るかどうかを判断する。ここでは、操作者端末16から受信したデータに操作者音声データ504dすなわち操作者音声データ404cまたは操作データ504aすなわち動作コマンドデータ404eが含まれるかどうかを判断する。
【0141】
ステップS13で“NO”であれば、つまり、応答が無ければ、ステップS13に戻る。一方、ステップS13で“YES”であれば、つまり、応答が有れば、ステップS15で、操作者音声データ404cに従ってアバターの画像すなわち第2ロボット画像154を発話させ、ステップS17で、動作コマンドに従ってアバターの画像すなわち第2ロボット画像154を動作させる。
【0142】
ただし、操作者音声データ504dを受信していない場合には、ステップS15はスキップされ、操作データ504aを受信していない場合には、ステップS17はスキップされる。
【0143】
次のステップS19では、登録応答パターンデータ404gを生成(更新)する。ここでは、CPU20は、対話エージェントの発言または問いかけに対する、操作者の応答内容を、発話または問いかけの順に、操作パターンおよび反応パターンを記載したデータを生成(更新)する。上述したように、操作パターンは、操作者の発話内容および操作者の操作内容である。また、反応パターンは、操作者の音声から生成された韻律情報および操作者の顔画像から推定された感情である。
【0144】
上述したように、CPU20は、ステップS19において、受信した操作者音声データ504dすなわち操作者音声データ404cを音声認識し、操作者の発話内容をテキストに変換する。また、CPU20は、受信した操作者音声データ504dすなわち操作者音声データ404cの韻律情報を生成する。さらに、CPU20は、操作者音声データ504dとともに受信した操作者画像データ504eすなわち操作者画像データ404dに基づいて操作者の感情を推定する。
【0145】
そして、ステップS21で、変数nは最大値かどうかを判断する。つまり、CPU20は、対話エージェントが複数の発言または問いかけをすべて発話したかどうかを判断する。
【0146】
ステップS21で“NO”であれば、つまり、変数nが最大値でなければ、ステップS23で、変数nを1加算して、ステップS11に戻る。したがって、対話エージェントは、次の発言または問いかけを発話する。
【0147】
一方、ステップS21で“YES”であれば、つまり、変数nが最大値であれば、ステップS25で、ステップS5で登録した操作者IDに紐づけて、登録応答パターンデータ404gを操作者DB12aに登録して、登録処理を終了する。
【0148】
なお、
図11に示したステップS1-S5が1つ目の登録処理であり、
図11および
図12に示したステップS7-S25が2つ目の登録処理である。
【0149】
図13および
図14は、サーバ12のCPU20の認証処理を示すフロー図である。以下、認証処理について説明するが、上述した登録処理と同じ内容については簡単に説明することにする。
【0150】
図13に示すように、サーバ12のCPU20は認証処理を開始すると、ステップS51で、
図7に示したようなID・パスワード認証画面250の表示画像データを操作者端末16に送信する。したがって、操作者端末16の表示装置60にID・パスワード認証画面250が表示される。
【0151】
次のステップS53では、操作者IDとパスワードの認証指示があるかどうかを判断する。ステップS53で“NO”であれば、つまり、操作者IDとパスワードの認証指示が無ければ、ステップS53に戻る。図示は省略するが、操作者の操作に応じて、操作者IDまたはパスワードの文字等が入力された場合には、文字等を記憶するとともに、文字等をID・パスワード認証画面250の表示領域252または表示領域254に表示する。
【0152】
一方、ステップS53で“YES”であれば、つまり、操作者IDとパスワードの認証指示が有れば、ステップS55で、操作者IDとパスワードすなわち認証ID・パスワードデータ404hを認証する。ここでは、CPU20は、認証ID・パスワードデータ404hが操作者DB12aに登録された登録ID・パスワードデータ404fと一致するかどうかを判断する。
【0153】
そして、ステップS57で、認証成功かどうかを判断する。ステップS57で“NO”であれば、つまり、認証失敗であれば、ステップS51に戻る。つまり、操作者IDおよびパスワードの入力をやり直させる。ただし、所定回数(たとえば、3回)認証に失敗した場合には、CPU20は、ロボット18とのセッションの開始を拒否するようにしてよい。
【0154】
一方、ステップS57で“YES”であれば、つまり、認証成功であれば、ステップS59で、
図8に示したようなパターン認証画面300の表示画像データを操作者端末16に送信する。次のステップS61では、変数nに初期値を設定する(n=1)。
【0155】
図14に示すように、続くステップS63では、対話エージェントにn個目の発言または問いかけを発話させる。つまり、操作者端末16のスピーカ64から、n個目の発言または問いかけの音声すなわち第1ロボット画像302の音声が出力される。
【0156】
次のステップS65では、応答が有るかどうかを判断する。ステップS65で“NO”であれば、ステップS65に戻る。一方、ステップS65で“YES”であれば、ステップS67で、操作者音声データ404cに従ってアバターの画像すなわち第2ロボット画像304を発話させ、ステップS69で、動作コマンドに従ってアバターの画像すなわち第2ロボット画像304を動作させる。
【0157】
ただし、操作者音声データ504dを受信していない場合には、ステップS67はスキップされ、操作データ504aを受信していない場合には、ステップS69はスキップされる。
【0158】
次のステップS71では、認証応答パターンデータ404iを生成(更新)する。ここでは、CPU20は、対話エージェントの発言または問いかけに対する、操作者の応答内容を、発話または問いかけの順に、操作パターンおよび反応パターンを記載したデータを生成(更新)する。
【0159】
そして、ステップS73で、変数nは最大値かどうかを判断する。ステップS73で“NO”であれば、ステップS75で、変数nを1加算して、ステップS63に戻る。
【0160】
一方、ステップS73で“YES”であれば、ステップS77で、応答パターンを認証する。ここでは、CPU20は、認証応答パターンデータ404iと、ステップS57で認証成功したことを判断した操作者IDに紐づけて操作者DB12aに登録(記憶)されている登録応答パターンデータ404gの一致度が高いかどうかを判断する。この判断の方法は上述したとおりである。
【0161】
そして、ステップS79で、認証成功かどうかを判断する。ステップS79で“NO”であれば、つまり、認証失敗であれば、ステップS81で、操作者端末16にセッションの開始を拒否して、認証処理を終了する。一方、ステップS79で“YES”であれば、つまり、認証成功であれば、ステップS83で、操作者端末16にセッションの開始を許可して、認証処理を終了する。
【0162】
なお、
図13に示したステップS51-S57が1つ目の認証処理であり、
図13および
図14に示したステップS59-S79が2つ目の認証処理である。
【0163】
また、操作者端末16は、セッションの開始を許可されると、パターン認証画面300を閉じて、ロボット18との接続状態を確立し、操作者の操作に従って、ロボット18を制御する。ただし、操作者は、UI画面200を操作して、ロボット18を動作(移動を含む)させる。また、操作者が発話すると、操作者の音声はロボット18を通して出力され、ロボット18は発話する。ただし、操作者の音声を別の音声に変換して、ロボット18から出力することもできる。
【0164】
この実施例によれば、2段階認証を行う場合に、操作者IDおよびパスワードの認証に成功すると、アバターの画像を操作して対話エージェントの画像と対話することにより、操作者の操作パターンのみならず、操作時における操作者の反応パターンを認証するので、操作を複雑にする必要はない。また、反応パターンのような盗用し難い情報を認証に用いるので、セキュリティを高めることができる。
【0165】
また、この実施例では、操作者のアバターとして機能するロボットを使用する所定のサービスの提供を受けるための認証画面に表示されたアバターの画像を、当該ロボットを操作するUI画面を用いて操作することで、認証に成功した後は、同じUI画面を用いてロボットを操作することができる。したがって、操作者の操作を簡素化することができ、所定のサービスを利用し易い。
【0166】
なお、この実施例では、反応パターンのうち、操作者の感情は、操作者が発話しているときの操作者の顔画像に基づいて推定するようにしたが、対話エージェントが操作者に対して発言または問いかけを行ったときの操作者の顔画像に基づいて推定するようにしてもよい。
【0167】
また、この実施例では、応答パターンを認証する2つ目の認証処理では、操作者の発話内容、操作者の操作内容、操作者の音声の韻律情報および操作者の感情のすべての情報を認証するようにしたが、限定される必要はない。これらの情報のうちの一部すなわちいずれか1つ、2つまたは3つの情報を認証するようにしてもよい。この場合、2つ目の認証処理を実行する度に、認証する対象となる情報を変えてもよい。
【0168】
また、この実施例では、ロボットを使用する所定のサービスの提供を受けるための操作者すなわちサービスユーザの認証を行うため、操作パターンとして、アバターの画像を動作させる操作者の操作内容を含むようにしたが、ロボットを使用しない他の所定のサービスの提供を受けるためのサービスユーザの認証では、操作者の操作内容は含めなくてもよい。たとえば、他の所定のサービスは、ウェブ上の銀行またはクレジットカードのサービスなどである。この場合、対話パターンの認証処理においてパターン認証画面を表示する必要はなく、また、対話エージェントは人間であってもよい。
【0169】
また、上述の実施例で示したフロー図の各ステップは同じ結果が得られる場合には、処理する順番を変更することが可能である。
【0170】
さらに、上述の実施例で挙げた各種の画面、具体的数値はいずれも単なる例示であり、必要に応じて適宜変更可能である。
【符号の説明】
【0171】
10 …情報処理システム
12 …サーバ
14 …ネットワーク
16 …操作者端末
18 …ロボット
20、50 …CPU
22、52 …RAM
24、54 …通信I/F
26、56 …入出力I/F
28、58 …入力装置
30、60 …表示装置
62 …マイク
64 …スピーカ
66 …センサI/F
68 …カメラ