(57)【要約】【課題】仮想空間上の操作対象に対する命令をより会話に近い音声入力によって実現すること。【解決手段】ユーザによる自然言語による入力に基づいてテキストデータを取得し、テキストデータから実行させたいコマンドを抽出し、抽出したコマンドからプリミティブ型のコマンドを生成し、少なくともユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得し、生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力し、評価結果に基づいて選択肢を決定してコマンドを決定することを特徴とし、コマンド評価の際に、取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにした。【選択図】図２
2019063341.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成する機能をコンピュータに実現させるためのコマンド処理プログラムであって、
前記コンピュータに、
ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得機能と、
前記テキストデータから実行させたいコマンドを抽出する構文解析機能と、
前記構文解析機能で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析機能と、
少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得機能と、
前記コマンド解析機能で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価機能と、
前記コマンド評価機能における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定機能とを実現させることを特徴とし、
前記コマンド評価機能は、前記特定視点情報取得機能で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにした
コマンド処理プログラム。
【請求項２】
前記テキストデータ取得機能は、ユーザによる音声入力を音声認識してテキストデータを出力する音声認識機能である
請求項１記載の画像処理プログラム。
【請求項３】
前記テキストデータ取得機能は、音声入力時の時間情報も併せて取得し、
前記特定視点情報取得機能は、特定視点情報取得時の時間情報も併せて取得し、
前記コマンド評価機能は、音声認識処理でテキスト化したテキストデータの各要素が発声された時間と、同時刻における特定視点情報とを組み合わせて評価することで、プリミティブ型のコマンドにおける各選択肢の評価を行うようにした
請求項２に記載の画像処理プログラム。
【請求項４】
ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成する機能を備えたコマンド処理装置であって、
ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得部と、
前記テキストデータから実行させたいコマンドを抽出する構文解析部と、
前記構文解析部で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析部と、
少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得部と、
前記コマンド解析部で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価部と、
前記コマンド評価部における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定部とを備え、
前記コマンド評価部は、前記特定視点情報取得部で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにした
コマンド処理装置。
【請求項５】
ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成するコマンド処理方法であって、
ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得処理と、
前記テキストデータから実行させたいコマンドを抽出する構文解析処理と、
前記構文解析処理で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析処理と、
少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得処理と、
前記コマンド解析処理で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価処理と、
前記コマンド評価処理における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定処理とを含み、
前記コマンド評価処理は、前記特定視点情報取得処理で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う処理を含むようにした
コマンド処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態の少なくとも１つは、仮想空間における操作対象に対して音声入力等の自然言語入力によって命令を実行させるためのコマンド処理プログラム、画像コマンド処理装置、及び画像コマンド処理方法に関する。
【背景技術】
【０００２】
従来、ユーザからの声による入力を音声認識処理によって認識して指示対象に対して命令を入力するコマンド処理が行われている。このような音声入力の場合であっても、音声によらずテキスト入力の場合であっても、命令を受けた処理側において自然言語を処理する必要が生じる。
【０００３】
自然言語を入力とする場合、例えば場所を指し示す言葉として「そこの」「あそこの」といった曖昧な表現がされることがあり、これらの言葉の曖昧さを適切に処理する必要がある。また、コマンドの対象物が複数存在するときに、一意に対象物を特定できないような言葉の表現に基づく場合であっても、複数の中からコマンドで指定された対象物を適切に選択する処理を行う必要がある。
【０００４】
曖昧な表現を処理するものとしては、例えば、特許文献１が挙げられる。この特許文献１では、曖昧な表現を類似する表現に置き換えて対処する手法が開示されている。また、対象物が複数存在する場合に対処するものとして、例えば、特許文献２が挙げられる。この特許文献２では、対象物が複数存在する場合に、指示対象となる対象物の同定を対象物の相対的な距離関係を用いて行うようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−１３４４３０号公報
【特許文献２】特開平０４−３０６７６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ビデオゲーム等における仮想空間上において、ユーザが自然言語による命令を入力して命令内容をコンピュータ制御される操作対象に対して実行させたいというニーズがある。例えば、ＦＰＳ（First Person shooter：ゲームの仮想空間内を本人視点で任意に移動できるようにゲーム画面を構成したゲームのことをいう。）などのように、仮想空間上においてユーザの視点でゲームの進行が制御される場合に、仮想空間内においてコンピュータ制御の対象としてのノンプレイヤキャラクタ等に対してユーザが音声で命令できるようにしたいというニーズがある。ユーザとしては日常会話の感覚で音声入力を行いたいところであるが、対象が複数存在するために対象を正確に指定しなければいけなかったり、曖昧な表現のみで対象を特定しえない状況だったりすると、ユーザの音声入力によって命令を実行できずに再度言い直して命令を入力する必要が生じるため、ゲームへの没入感が損なわれるおそれがある。特許文献１、２によれば、特定の状況における自然言語処理に効果を発揮するが、特定の状況に限定されずに様々な状況下において日常会話の感覚で音声入力を行ってもコマンド処理が可能なコマンド処理プログラム等が望まれていた。
【０００７】
本発明の少なくとも１つの実施形態の目的は、上記問題を解決し、曖昧な表現を含む日常会話の感覚で音声入力を行っても適切にコマンド処理を実行可能なコマンド処理プログラム、画像コマンド処理装置、及び画像コマンド処理方法を提供することである。
【課題を解決するための手段】
【０００８】
非限定的な観点によると、本発明の一実施形態に係るコマンド処理プログラムは、ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成する機能をコンピュータに実現させるためのコマンド処理プログラムであって、前記コンピュータに、ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得機能と、前記テキストデータから実行させたいコマンドを抽出する構文解析機能と、前記構文解析機能で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析機能と、少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得機能と、前記コマンド解析機能で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価機能と、前記コマンド評価機能における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定機能とを実現させることを特徴とし、前記コマンド評価機能は、前記特定視点情報取得機能で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにしたことを特徴とする。
【０００９】
非限定的な観点によると、本発明の一実施形態に係るコマンド処理装置は、ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成する機能を備えたコマンド処理装置であって、ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得部と、前記テキストデータから実行させたいコマンドを抽出する構文解析部と、前記構文解析部で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析部と、少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得部と、前記コマンド解析部で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価部と、前記コマンド評価部における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定部とを備え、前記コマンド評価部は、前記特定視点情報取得部で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにしたことを特徴とする。
【００１０】
非限定的な観点によると、本発明の一実施形態に係るコマンド処理方法は、ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成するコマンド処理方法であって、ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得処理と、前記テキストデータから実行させたいコマンドを抽出する構文解析処理と、前記構文解析処理で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析処理と、少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得処理と、前記コマンド解析処理で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価処理と、前記コマンド評価処理における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定処理とを含み、前記コマンド評価処理は、前記特定視点情報取得処理で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う処理を含むようにしたことを特徴とする。
【発明の効果】
【００１１】
本願の各実施形態により１または２以上の不足が解決される。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態の少なくとも一つに対応するビデオゲーム処理システムの構成の例を示すブロック図である。
【図２】本発明の実施形態の少なくとも一つに対応するサーバの構成を示すブロック図である。
【図３】本発明の実施形態の少なくとも一つに対応するゲーム処理の例を示すフローチャートである。
【図４】本発明の実施形態の少なくとも一つに対応するゲーム処理におけるサーバ側の動作の例を示すフローチャートである。
【図５】本発明の実施形態の少なくとも一つに対応するゲーム処理におけるユーザ端末側の動作の例を示すフローチャートである。
【図６】本発明の実施形態の少なくとも一つに対応するビデオゲーム処理システムにおいて、音声入力からコマンド決定までの各処理を実行する場合の処理を説明するための説明図である。
【図７】本発明の実施形態の少なくとも一つに対応するゲーム処理におけるゲーム画面の一例を示す画面図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態の例について図面を参照して説明する。なお、以下で説明する各実施形態の例における各種構成要素は、矛盾等が生じない範囲で適宜組み合わせ可能である。また、ある実施形態の例として説明した内容については、他の実施形態においてその説明を省略している場合がある。また、各実施形態の特徴部分に関係しない動作や処理については、その内容を省略している場合がある。さらに、以下で説明する各種フローを構成する各種処理の順序は、処理内容に矛盾等が生じない範囲で順不同である。
【００１４】
［第１の実施形態］
以下において、本発明の一実施形態に係るコマンド処理装置としての機能を備えたビデオゲーム処理システム１００について説明を行う。図１は、本発明の一実施の形態におけるビデオゲーム処理システム１００の構成の例を示すブロック図である。図１に示すように、ビデオゲーム処理システム１００は、サーバ１０と、ビデオゲーム処理システムのユーザが使用するユーザ端末２０，２０１〜２０Ｎ（Ｎは任意の整数）とを含む。なお、ビデオゲーム処理システム１００の構成はこれに限定されず、単一のユーザ端末を複数のユーザが使用する構成としてもよいし、複数のサーバを備える構成としてもよい。
【００１５】
サーバ１０と複数のユーザ端末２０，２０１〜２０Ｎは、それぞれインターネットなどの通信ネットワーク３０に接続されている。なお、図示しないが、複数のユーザ端末２０，２０１〜２０Ｎは、通信業者によって管理される基地局と無線通信回線によるデータ通信を行うことによって、通信ネットワーク３０と接続する。
【００１６】
ビデオゲーム処理システム１００は、サーバ１０と複数のユーザ端末２０，２０１〜２０Ｎとを備えることにより、ユーザの操作に応じて各種処理を実行するための各種機能を実現する。
【００１７】
サーバ１０は、ビデオゲーム処理システム１００の管理者によって管理され、複数のユーザ端末２０，２０１〜２０Ｎに対して各種処理に関する情報を提供するための各種機能を有する。本例において、サーバ１０は、ＷＷＷサーバなどの情報処理装置によって構成され、各種情報を格納する記憶媒体を備える。なお、サーバ１０は、制御部や通信部などコンピュータとして各種処理を行うための一般的な構成を備えるが、ここでの説明は省略する。また、ビデオゲーム処理システム１００においては、複数のユーザ端末２０，２０１〜２０Ｎそれぞれにかかる処理負荷を軽減させるといった観点から、各種情報はサーバ１０が管理することが好ましい。ただし、各種情報を記憶する記憶部は、サーバ１０がアクセス可能な状態で記憶領域を備えていればよく、例えば専用の記憶領域をサーバ１０の外部に有する構成とされていてもよい。
【００１８】
複数のユーザ端末２０，２０１〜２０Ｎは、それぞれ、ユーザによって管理され、例えば携帯電話端末やＰＤＡ（Personal Digital Assistants）、携帯型ゲーム装置などのネットワーク配信型のゲームを行うことが可能な通信端末によって構成される。なお、ビデオゲーム処理システム１００が含み得るユーザ端末の構成は上述した例に限定されず、ユーザがビデオゲームを認識し得る構成であればよい。ユーザ端末の構成の他の例には、スマートウォッチなどの所謂ウェアラブルデバイスや、ウェアラブルデバイスと通信端末等との組み合わせがある。
【００１９】
また、複数のユーザ端末２０，２０１〜２０Ｎは、それぞれ、通信ネットワーク３０に接続し、サーバ１０との通信を行うことにより各種処理を実行するためのハードウェア（例えば、座標に応じたブラウザ画面やゲーム画面を表示する表示装置など）およびソフトウェアを備える。なお、複数のユーザ端末２０，２０１〜２０Ｎそれぞれは、サーバ１０を介さずに互いに直接通信を行うこともできる構成とされていてもよい。
【００２０】
ビデオゲームのゲーム処理を行う過程においては、サーバ１０は適宜ユーザ端末２０に対して処理過程を送信するものとし、ユーザ端末２０側では、受信した処理過程の内容に基づいたゲーム画面を表示装置の表示画面に表示させるものとする。ゲーム画面の生成は、サーバ１０側で行ってもよいし、ユーザ端末２０側で行ってもよい。
【００２１】
ここで、ゲーム画面とは、仮想空間（あるいはゲーム空間）を表す画面を意味する。なお、本例では、ゲーム画面を構成する各種要素を画像と称する場合がある。ゲーム画面の構成はビデオゲームの状況をユーザが認識し得る構成であれば特に限定されない。
【００２２】
また、ゲーム画面を表示装置の表示画面に表示させるとは、通信ネットワーク３０を用いた通信により、ユーザ端末２０等が備える表示装置にゲーム画面を出力させることを意味する。表示装置にゲーム画面を表示させるための構成の例には、サーバ側で生成した情報（出力情報）を端末側に送信する構成がある。なお、出力情報の構成は特に限定されず、例えば画像を圧縮した情報でもよいし、端末側で画像を生成させるための情報であってもよい。画像を圧縮した情報の例には、クラウドゲームで使用されるもの（例えば、ＭＰＥＧ）がある。また、端末側で画像を生成させるための情報には、オンラインゲームで使用されるもの（例えば、オブジェクトの位置情報）がある。
【００２３】
図２は、サーバ１０の構成の例であるサーバ１０Ａの構成を示すブロック図である。図２に示すように、サーバ１０Ａは、音声認識処理部１１と、翻訳部１２と、構文解析部１３と、コマンド解析部１４と、コマンド評価部１５と、コマンド決定部１６と、特定視点情報取得部１７とを少なくとも備える。
【００２４】
音声認識処理部１１は、ユーザによる音声入力に含まれる自然言語の文章をテキストデータ化する音声認識処理を実行する機能を有する。この音声認識処理部１１における音声認識処理は、例えば、大語彙連続音声認識（LVCSR：Large Vocabulary Continuous Speech Recognition）によって実行されるものであり、様々な大語彙連続音声認識エンジンが既に提案されており、既知の大語彙連続音声認識エンジンを採用することも可能である。
【００２５】
翻訳部１２は、音声認識処理部１１においてテキストデータ化したユーザによる入力を、命令実行主体であるプログラムにおいて実行するコマンドと対応付け可能な言語に翻訳する機能を有する。例えば、音声入力を日本語において行うときに、命令実行主体であるプログラムが英語に基づいてコマンドを決定するものである場合には、日本語のテキストデータを英語のテキストデータに翻訳する必要がある。なお、命令実行主体であるプログラムにおいてコマンドとの対応付けが可能な言語で音声入力を行う場合には、この翻訳部１２を機能させる必要はない。
【００２６】
構文解析部１３は、翻訳部１２からの翻訳後のテキストデータ（翻訳の必要がない言語の場合には音声認識処理部１１からのテキストデータ）の各単語及び構文を解析して、命令実行主体に対するコマンドを抽出する機能を有する。具体的には、テキストデータを解析して、コマンド（Command：動詞）、オブジェクト（Object：名詞）、述語（Predicates：形容詞）、否定（Negation：〜ない、などの否定的な表現）、場所（Location：上、左、右、上、下、下、などの場所を表す表現）、絶対位置（AbsoluteLocation：ここ、それ、あそこ、そこ、などの絶対的位置を示す表現）、絶対オブジェクト（AbsoluteObject：これ、それ、そう、これ、それ、などの絶対的なオブジェクトを示す表現）、絶対的決定（AbsoluteDetermination：これ、その、あの、This <名詞>、That <名詞>、などの絶対的な決定を示す表現）、記述語（Descriptor：つまり、ある、などの記述的表現）、前置詞（Preposition：そして、後、などの前置詞）などに分類して、命令実行主体に対するコマンドを抽出する。すなわち、動詞の形で表現されたコマンド、名詞の形で表現された対象物、対象物の場所などの場所の情報、などを抽出して、具体的な命令内容を抽出する。
【００２７】
また、構文解析部１３において、名詞、動詞、形容詞、副詞などを同義語と認知される可能性の高い集合にグループ化した語彙データベースを予め作成して記憶させておき、テキストデータで指定された対象物に対応する同義語を語彙データベースから読み出して対象物に当て嵌めてコマンドを抽出するようにしてもよい。例えば、仮想空間内において照明装置に該当する対象物がランプしか存在しない状況において、ユーザが「照明装置」という表現を使用した場合、語彙データベースを参照して、「照明装置」と「ランプ」が同義語として分類されていれば、この構文解析部１３で抽出するコマンドでは、「照明装置」を「ランプ」に置き換えてコマンドを抽出するようにする。
【００２８】
コマンド解析部１４は、構文解析部１３で抽出したコマンドを解析して、プリミティブ型のコマンドを生成する機能を有する。ここで、プリミティブ型のコマンドとは、演算処理時における処理要素を１つしか含まないコマンドのことをいう。例えば、「りんごをテーブルに置け」というコマンドは、「りんごを探す」、「りんごの場所まで移動する」、「りんごをつかむ」、「テーブルを探す」、「テーブルの場所まで移動する」、「テーブルにりんごを置く」という複数のプリミティブ型のコマンドを順次実行することで実現される。このように、構文解析部１３で抽出したコマンドを更に解析してプリミティブ型のコマンドを生成する。
【００２９】
コマンド評価部１５は、コマンド解析部１４で生成したプリミティブ型の各コマンドについて、それぞれのプリミティブ型コマンドにおける対象物、場所などについて複数の候補が考えられる場合に、何れを選択することがユーザの要望に最も近いかを評価する機能を有する。評価方法は様々な方法が考えられる。例えば、ビヘイビア・ツリー（Behavior Tree）によってプリミティブ型コマンドをツリー構造で表現し、同一層において複数の選択肢が存在する場合に、最適な選択肢を選択可能な評価基準を持たせるようにしてもよい。また、ユーティリティベースの人工知能（Utility-based AI）によって、各選択肢を選択した場合の効用（Utility）について予め定めた評価手法に基づいて点数（スコア）を算出して評価するようにしてもよい。また、何れの選択肢を選択すべきかの評価に際し、操作対象の現在位置、直近の命令内容、直近の操作対象物などの情報を利用して状況に応じて何れの選択肢を選択することが正解であるかを予め学習させた学習モデルに基づいて、選択肢の評価を行うようにしてもよい。また、学習モデルに対してユーザから適宜正解を与えることで学習を行うようにして、ユーザの入力の癖等を学習してユーザの好みを反映させることで利便性を高めるようにしてもよい。
【００３０】
また、コマンド評価部１５は、後述する特定視点情報取得部１７で取得した特定視点情報をプリミティブ型コマンドにおける対象物、場所などの選択肢の評価に用いる機能を有する。ここで、特定視点情報とは、ユーザの視点方向を表すカメラアングルの方向、操作対象のキャラクタの視点方向、コンピュータ制御されたノンプレイヤキャラクタの視点方向など、仮想空間内において視点方向を変えることが可能なユーザ又はキャラクタの視点方向をいう。また、視点情報のみならず、仮想空間上に表現された手によって指し示した方向の情報など、方向性を有する情報を含むようにしてもよい。特定視点情報を選択肢の評価に用いるというのは、例えば、ゲーム画面がユーザの視点からの様子を表現したＦＰＳのような画面構成であるゲームにおいて、ユーザが「あそこのりんご」と表現したとき、選択肢としてのりんごが仮想空間上に複数存在する場合、ユーザからりんごまでの距離などの情報も評価項目であるが、ユーザの視点方向に存在するりんごは選択肢の可能性が高いものであるとして評価を高くするという手法が考えられる。特に、ＶＲ（virtual reality：仮想現実）用のゴーグル式のディスプレイ装置を装着してプレイするゲームのような場合には、ユーザが実際に首を回して周囲を確認するといった状態を表現する画像が表示されるようになるため、視点方向に存在する対象物は選択肢となる可能性が高くなるように評価する必要性がある。
【００３１】
コマンド決定部１６は、コマンド評価部１５の評価結果に基づいて、命令実行主体に対するコマンドを決定する機能を有する。複数の選択肢の分岐が存在する場合に、最も評価の高い選択肢のコマンドに決定して、命令実行主体に対するコマンドを出力して処理を開始する。なお、コマンド解析部１４で解析して生成したプリミティブ型コマンドにおける対象物、場所などに複数の候補が存在せずに一意に決定可能である場合には、コマンド評価部１５での評価は行わずに、コマンド決定部１６においてコマンド解析部１４で生成したプリミティブ型コマンドをそのまま出力して処理を開始するようにする。
【００３２】
特定視点情報取得部１７は、仮想空間内において視点方向を変えることが可能なユーザ又はキャラクタの視点方向の情報を取得する機能を有する。特定視点情報としては、例えば、ユーザの視点方向を表すカメラアングルの方向、操作対象のキャラクタの視点方向、ノンプレイヤキャラクタの視点方向などが挙げられる。また、視点情報のみならず、仮想空間上に表現された手によって指し示した方向の情報など、方向性を有する情報を含むようにしてもよい。
【００３３】
特定視点情報の取得は、随時取得するものであってもよいし、ユーザが音声入力を行う際に取得するものであってもよいが、特定視点情報を取得する際には、併せて特定視点情報取得時の時間情報を併せて取得するようにする。例えば、「そこのりんごをあそこのテーブルに置け」という命令を音声で入力する際に、「そこのりんご」と発声した際の特定視点情報と、「あそこのテーブル」と発声した際の特定視点情報を、それぞれ時間情報を併せて取得し、同時に、音声入力を受付ける際にも時間情報を併せて取得するようにする。このような情報を取得していれば、「そこのりんごをあそこのテーブルに置け」という曖昧な表現の命令であっても、特定視点情報及び時間情報を対象物の特定の根拠として命令を実行することが可能となる。すなわち、音声認識処理でテキスト化した単語、熟語などの各要素が発声された時間を時間情報によって特定し、同時刻における特定視点情報を組み合わせることで、曖昧な表現からでも対象物の特定が可能となる。
【００３４】
図３は、ビデオゲーム処理システム１００が実行するゲーム処理の例を示すフローチャートである。以下、サーバ１０Ａとユーザ端末２０（端末２０）とが、ゲーム処理を実行する場合を例にして説明する。
【００３５】
ゲーム処理は、例えば、仮想空間上における命令実行主体であるキャラクタ（操作対象）に対して音声で命令を入力可能な状態において開始される。ゲーム処理開始後は、例えば、ユーザ端末２０において音声による操作指示がなされたときに、ユーザ端末２０は、当該音声入力を取得してサーバ１０Ａに音声入力のデータを送信する（ステップＳ１１）。サーバ１０Ａは、取得した音声入力データについて音声認識処理を実行して音声をテキスト化したテキストデータを取得する（ステップＳ１２）。サーバ１０Ａは、実行するコマンドと対応付け可能な言語にテキストデータを翻訳する（ステップＳ１３）。サーバ１０Ａは、翻訳後のテキストデータについて構文解析処理を行って、命令内容を表したコマンドを抽出する（ステップＳ１４）。サーバ１０Ａは、コマンド解析処理を実行することで、構文解析処理で抽出したコマンドからプリミティブ型のコマンドを生成する（ステップＳ１５）。サーバ１０Ａは、プリミティブ型のコマンドにおいて複数の選択肢が含まれる場合には、コマンド評価処理において各選択肢の評価を行って出力する（ステップＳ１６）。コマンド評価処理においては、特定視点情報も選択肢の評価に用いられる。そして、サーバ１０Ａは、評価結果に基づいて、命令実行主体であるキャラクタに対するコマンドを決定して出力し（ステップＳ１７）、処理を終了する。その後、命令実行主体であるキャラクタが、決定されたコマンドに基づく処理を実行することになる。
【００３６】
図４は、ゲーム処理におけるサーバ１０Ａ側の動作の例を示すフローチャートである。ここでは、ビデオゲーム処理システム１００におけるサーバ１０Ａの動作について説明する。
【００３７】
サーバ１０Ａは、音声による操作指示がなされたときに、当該音声入力を音声入力データとして取得する（ステップＳ１０１）。取得した音声入力データについて音声認識処理を実行して音声をテキスト化したテキストデータを取得する（ステップＳ１０２）。実行するコマンドと対応付け可能な言語にテキストデータを翻訳する（ステップＳ１０３）。翻訳後のテキストデータについて構文解析処理を行って、命令内容を表したコマンドを抽出する（ステップＳ１０４）。コマンド解析処理を実行することで、構文解析処理で抽出したコマンドからプリミティブ型のコマンドを生成する（ステップＳ１０５）。プリミティブ型のコマンドにおいて複数の選択肢が含まれる場合には、コマンド評価処理において各選択肢の評価を行って出力する（ステップＳ１０６）。コマンド評価処理においては、特定視点情報も選択肢の評価に用いられる。そして、評価結果に基づいて、命令実行主体であるキャラクタに対するコマンドを決定して出力し（ステップＳ１０７）、処理を終了する。
【００３８】
図５は、ユーザ端末２０がゲーム処理を実行する場合のユーザ端末２０側の動作の例を示すフローチャートである。以下、ユーザ端末２０が、単体でゲーム処理を実行する場合を例にして説明する。なお、ユーザ端末２０の構成については、サーバ１０から各種情報を受信することを除きサーバ１０の構成と同様の機能を備えるものであるため、重複説明を避ける観点から記載を省略する。
【００３９】
ユーザ端末２０は、音声による操作指示がなされたときに、当該音声入力を音声入力データとして取得する（ステップＳ２０１）。取得した音声入力データについて音声認識処理を実行して音声をテキスト化したテキストデータを取得する（ステップＳ２０２）。実行するコマンドと対応付け可能な言語にテキストデータを翻訳する（ステップＳ２０３）。翻訳後のテキストデータについて構文解析処理を行って、命令内容を表したコマンドを抽出する（ステップＳ２０４）。コマンド解析処理を実行することで、構文解析処理で抽出したコマンドからプリミティブ型のコマンドを生成する（ステップＳ２０５）。プリミティブ型のコマンドにおいて複数の選択肢が含まれる場合には、コマンド評価処理において各選択肢の評価を行って出力する（ステップＳ２０６）。コマンド評価処理においては、特定視点情報も選択肢の評価に用いられる。そして、評価結果に基づいて、命令実行主体であるキャラクタに対するコマンドを決定して出力し（ステップＳ２０７）、処理を終了する。
【００４０】
図６は、本発明の実施形態の少なくとも一つに対応するビデオゲーム処理システムにおいて、音声入力からコマンド決定までの各処理を実行する場合の処理を説明するための説明図である。先ず、ユーザが、「小さなランプの後ろにある茶色のテーブルの上にある緑色のリンゴを大きなバナナの後ろのピンクの椅子の前の青い台の上に置け（日本語による入力）。」とマイクに対して発声して音声入力を行うと、音声認識処理によって、同内容のテキストデータが生成される。また、一例として、実行するコマンドと対応付け可能な言語が英語である場合、上記の日本語によるテキストデータを「Put the green apple that is on the brown table that is behind the small lamp on the blue platform behind the big banana and in front of the pink chair.」というように、英語のテキストデータとなるように翻訳する。
【００４１】
次に、英語のテキストデータについて構文解析処理を行って、実行すべきコマンドを抽出する。図６に示すように、コマンドは「put」であることを抽出し、対象物は「apple［green］」であることを抽出し、対象物の場所は「[on] table [brown],[behind] lamp [small]」であることを抽出し、「put」する対象となる場所は「[on] platform [blue],[behind] banana [big],[front] chair [pink]」であることを抽出する。
【００４２】
コマンド解析処理によって、構文解析処理で抽出したコマンドからプリミティブ型のコマンドを生成する。図６では、１１ステップからなるプリミティブ型のコマンドが生成されている。そして、生成したプリミティブ型のコマンドについてコマンド評価処理を行う。プリミティブ型のコマンドにおける対象物に複数の選択肢が存在する場合に、各選択肢を選択することについて評価を行う。評価の際には、特定視点情報としてユーザの視点情報も用いられるため、「小さなランプの後ろ」といった表現や、「ピンクの椅子の前」といった表現に基づいて対象物を特定する際に、ユーザの視点から見た際の位置関係を利用して対象物の選択肢を評価することが可能となる。
【００４３】
図７は、本発明の実施形態の少なくとも一つに対応するゲーム処理におけるゲーム画面の一例を示す画面図である。この図７は、３次元の仮想空間上に、ユーザの命令を実行するキャラクタを配置し、このキャラクタに対して音声入力によって各種の操作を実行させることで課題をクリアしていくゲームを想定したゲーム画面であり、ＦＰＳのようなユーザ視点の構成からなるゲーム画面である。この図７に示すゲーム画面の状況において、例えば、ユーザが「そこのりんごをあそこのテーブルに置け」という命令を音声で入力したとすると、りんごは２つ存在し、テーブルも２つ存在するため、この命令だけでは、対象物及び対象の場所を一意に特定することはできない。しかし、音声入力のタイミングにおいて、「そこのりんご」と発声した際のユーザの視点情報が図７に示すゲーム画面の状況であり、「あそこのテーブル」と発声した際のユーザの視点情報が四角いテーブルに向かう視点方向であり、これらの特定視点情報をそれぞれ時間情報と併せて取得し、同時に、音声入力を取得する際にも時間情報を併せて取得するようにしたとする。このように特定視点情報を選択肢の特定の評価に加えることで、「そこのりんごをあそこのテーブルに置け」という曖昧な表現の命令であっても、図７に示す視点情報の時の正面に位置するりんごを四角いテーブルの上に載せるという選択肢の組み合わせのコマンドを選択することが可能となる。なお、特定視点情報をどの程度コマンドの評価に反映させるかについては様々な設定が可能であり、特定視点情報を非常に優先度高く評価するようにしてもよいし、特定視点情報を参考程度に評価するようにしてもよく、ビデオゲーム等の要求に応じて適宜設定可能である。
【００４４】
図７に示すように、仮想空間上にユーザの命令を実行するキャラクタを配置し、このキャラクタに対して音声入力によって各種の操作を実行させるビデオゲームとしては、例えば、３次元仮想空間上で行うパズルゲームなどが考えられる。扉の開閉、スイッチのオンオフ、対象物の移動、キャラクタへの移動先の指定、など、様々な３次元仮想空間上の課題を処理することでゲームクリアとなるパズルゲームにおいて、本例のコマンド処理を適用することで、操作対象に対する命令をより会話に近い音声入力によって実現するパズルゲームを実現することが可能となる。
【００４５】
以上に説明したように、第１の実施形態の一側面として、ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成する機能を備えたコマンド処理装置として機能するサーバ１０Ａが、音声認識処理部１１と、翻訳部１２と、構文解析部１３と、コマンド解析部１４と、コマンド評価部１５と、コマンド決定部１６と、特定視点情報取得部１７とを備え、ユーザによる自然言語による入力に基づいてテキストデータを取得し、テキストデータから実行させたいコマンドを抽出し、抽出したコマンドからプリミティブ型のコマンドを生成し、少なくともユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得し、生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力し、評価結果に基づいて選択肢を決定してコマンドを決定することを特徴とし、コマンド評価の際に、取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにしたので、曖昧な表現を含む日常会話の感覚で音声入力を行っても適切にコマンド処理を実行することができる。
【００４６】
すなわち、曖昧な表現を含む日常会話の感覚で音声入力を行った場合、コマンドで扱う対象物を一意に特定できない場合が生じるが、その複数の選択肢の中から最適な選択肢を選択するための情報として、ユーザの視点情報などを含む特定視点情報を用いるようにしたので、曖昧な表現に特定視点情報を加味して選択肢の評価を行う機能を持たせることで、曖昧な表現の場合にも最適な選択肢を選択することが可能となる。
【００４７】
なお、第１の実施形態においては、ユーザが声によって入力する音声入力の場合を例として説明を行ったが、キーボード等に基づいて直接テキスト入力を行う場合においても同様の効果を発揮するものである。その場合、図２における音声認識処理部１１を、音声データからテキストデータを生成するのか、ユーザから直接テキストデータを取得するのかを問わず、広い意味においてテキストデータを取得するテキストデータ取得部に置き換えれば、他の構成が同様に機能することで、第１の実施形態と同様の効果が得られる。すなわち、会話に近い曖昧な表現を含むテキストデータの直接の入力の場合であっても、適切に対象物を特定してコマンド処理を実行することが可能となる。
【００４８】
以上に説明したように、本願の各実施形態により１または２以上の不足が解決される。なお、夫々の実施形態による効果は、非限定的な効果または効果の一例である。
【００４９】
なお、上述した各実施形態では、複数のユーザ端末２０，２０１〜２０Ｎとサーバ１０は、自己が備える記憶装置に記憶されている各種制御プログラム（例えば、ビデオゲーム処理プログラム）に従って、上述した各種の処理を実行する。
【００５０】
また、システム１００の構成は上述した各実施形態の例として説明した構成に限定されず、例えばユーザ端末が実行する処理として説明した処理の一部または全部をサーバ１０が実行する構成としてもよいし、サーバ１０が実行する処理として説明した処理の一部または全部を複数のユーザ端末２０，２０１〜２０Ｎの何れか（例えば、ユーザ端末２０）が実行する構成としてもよい。また、サーバ１０が備える記憶部の一部または全部を複数のユーザ端末２０，２０１〜２０Ｎの何れかが備える構成としてもよい。すなわち、システム１００におけるユーザ端末２０とサーバ１０のどちらか一方が備える機能の一部または全部を、他の一方が備える構成とされていてもよい。
【００５１】
また、プログラムが、上述した各実施形態の例として説明した機能の一部または全部を、通信ネットワークを含まない装置単体に実現させる構成としてもよい。
【００５２】
なお、ビデオゲームの進行に応じてとは、ビデオゲームで発生し得る種々の進行あるいは変化等が生じたことを特定の処理の契機や基準とすることを意味する。特定の処理の例としては、判定処理や情報更新処理などがある。また、ビデオゲームで発生し得る種々の進行あるいは変化等の例としては、時間の進行、ゲーム要素値の変化、特定のステータス若しくはフラグの更新、あるいはユーザによる操作入力などがある。
【産業上の利用可能性】
【００５３】
本発明の実施形態の一つによれば、仮想空間上の操作対象に対する命令をより会話に近い音声入力によって実現することに有用である。
【符号の説明】
【００５４】
１０              サーバ
１１              音声認識処理部
１２              翻訳部
１３              構文解析部
１４              コマンド解析部
１５              コマンド評価部
１６              コマンド決定部
１７              特定視点情報取得部
２０，２０１〜２０Ｎ        ユーザ端末
３０              通信ネットワーク
１００            ビデオゲーム処理システム
【図１】
2019063341.tif 000003
【図２】
2019063341.tif 000004
【図３】
2019063341.tif 000005
【図４】
2019063341.tif 000006
【図５】
2019063341.tif 000007
【図６】
2019063341.tif 000008
【図７】
2019063341.tif 000009
【手続補正書】
【提出日】平成31年2月8日(2019.2.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成する機能をコンピュータに実現させるためのコマンド処理プログラムであって、
前記コンピュータに、
ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得機能と、
前記テキストデータから実行させたいコマンドを抽出する構文解析機能と、
前記構文解析機能で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析機能と、
少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得機能と、
前記コマンド解析機能で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価機能と、
前記コマンド評価機能における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定機能とを実現させることを特徴とし、
前記コマンド評価機能は、前記特定視点情報取得機能で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにした
コマンド処理プログラム。
【請求項２】
前記テキストデータ取得機能は、ユーザによる音声入力を音声認識してテキストデータを出力する音声認識機能である
請求項１記載のコマンド処理プログラム。
【請求項３】
前記テキストデータ取得機能は、音声入力時の時間情報も併せて取得し、
前記特定視点情報取得機能は、特定視点情報取得時の時間情報も併せて取得し、
前記コマンド評価機能は、音声認識処理でテキスト化したテキストデータの各要素が発声された時間と、同時刻における特定視点情報とを組み合わせて評価することで、プリミティブ型のコマンドにおける各選択肢の評価を行うようにした
請求項２に記載のコマンド処理プログラム。
【請求項４】
ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成する機能を備えたコマンド処理装置であって、
ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得部と、
前記テキストデータから実行させたいコマンドを抽出する構文解析部と、
前記構文解析部で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析部と、
少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得部と、
前記コマンド解析部で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価部と、
前記コマンド評価部における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定部とを備え、
前記コマンド評価部は、前記特定視点情報取得部で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う機能を含むようにした
コマンド処理装置。
【請求項５】
ユーザによる自然言語による入力に基づいて仮想空間上の操作対象に対する指示を実行するためのコマンドを生成するコマンド処理方法であって、
ユーザによる自然言語による入力に基づいてテキストデータを得るテキストデータ取得処理と、
前記テキストデータから実行させたいコマンドを抽出する構文解析処理と、
前記構文解析処理で抽出したコマンドからプリミティブ型のコマンドを生成するコマンド解析処理と、
少なくとも前記ユーザによる自然言語による入力操作時の仮想空間内での特定視点情報を取得する特定視点情報取得処理と、
前記コマンド解析処理で生成したプリミティブ型のコマンドが複数の選択肢を含む場合に、各選択肢について所定の評価基準に基づく評価を行って出力するコマンド評価処理と、
前記コマンド評価処理における評価結果に基づいて選択肢を決定してコマンドを決定するコマンド決定処理とを含み、
前記コマンド評価処理は、前記特定視点情報取得処理で取得した特定視点情報を用いてプリミティブ型のコマンドにおける各選択肢の評価を行う処理を含むようにした
コマンド処理方法。