(57)【要約】      （修正有）【課題】画像からユーザ所望の物体を特定しつつ、その物体を用いて画像検索を行う情報処理方法、プログラム及び情報処理装置を提供する。【解決手段】情報処理装置において情報処理方法は、情報処理装置（ユーザ端末１０Ａ、１０Ｂ、サーバ２０Ａ〜２０Ｄ）に含まれる１又は複数のプロセッサが、テキストデータを自然言語処理して解析された１又は複数の単語を含む単語データを取得することと、単語データに基づいて特定された物体画像であって、画像内の所定物体を含む物体画像を取得することと、物体画像に類似する類似画像を検索すること、を実行する。【選択図】図１
2020013594.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に含まれる１又は複数のプロセッサが、
テキストデータを自然言語処理して解析された１又は複数の単語を含む単語データを取得することと、
前記単語データに基づいて特定された物体画像であって、画像内の所定物体を含む物体画像を取得することと、
前記物体画像に類似する類似画像を検索すること、を実行する情報処理方法。
【請求項２】
前記１又は複数のプロセッサが、
入力された音声を音声認識処理して前記テキストデータを取得すること、をさらに実行する請求項１に記載の情報処理方法。
【請求項３】
前記類似画像を検索することは、
前記単語データにさらに基づいて、前記類似画像を検索することを含む、請求項１又は２に記載の情報処理方法。
【請求項４】
前記１又は複数のプロセッサが、
前記画像内で検出された前記所定物体に関する物体関連データを取得すること、をさらに実行し、
前記類似画像を検索することは、
前記単語データ及び前記物体関連データの少なくとも１つに基づいて、前記類似画像を検索することを含む、請求項１又は２に記載の情報処理方法。
【請求項５】
前記類似画像を検索することは、
所定項目において、前記単語データに含まれるデータと、前記物体関連データに含まれるデータとが異なる場合、両データとも検索に使用しない、又はいずれかのデータを検索に使用することを含む、請求項４に記載の情報処理方法。
【請求項６】
前記類似画像は、電子商取引プラットフォームにおける商品データベースに登録された商品を示す画像を含む、請求項１乃至５いずれか一項に記載の情報処理方法。
【請求項７】
前記１又は複数のプロセッサが、
前記単語データに基づいて、前記電子商取引プラットフォームにおける処理を実行すること、をさらに実行する、請求項６に記載の情報処理方法。
【請求項８】
前記単語データを取得することは、
前記テキストデータを与えるユーザが所有する物体を含むリストがメモリに格納されている場合、前記リスト内の物体に関するデータに基づいて、前記単語データに含まれる単語を修正することを含む、請求項１乃至７いずれか一項に記載の情報処理方法。
【請求項９】
情報処理装置に含まれる１又は複数のプロセッサに、
テキストデータを自然言語処理して解析された１又は複数の単語を含む単語データを取得することと、
前記単語データに基づいて特定された物体画像であって、画像内の所定物体を含む物体画像を取得することと、
前記物体画像に類似する類似画像を検索すること、を実行させるプログラム。
【請求項１０】
１又は複数のプロセッサを含む情報処理装置であって、
前記１又は複数のプロセッサが、
テキストデータを自然言語処理して解析された１又は複数の単語を含む単語データを取得することと、
前記単語データに基づいて特定された物体画像であって、画像内の所定物体を含む物体画像を取得することと、
前記物体画像に類似する類似画像を検索すること、を実行する情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理方法、プログラム、及び情報処理装置に関する。
【背景技術】
【０００２】
画像データに含まれる物体を検出する技術は様々な方法により実現されている。例えば、映像データに含まれる領域のうち対象領域に存在する対象の物体を特定し、特定された物体についての指定情報を特定する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第６５３４７１５号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術では、物体が画像データに含まれるときに、ユーザ所望の物体を特定しつつ、その物体画像を用いて画像検索を行うことができなかった。
【０００５】
本開示は、画像データからユーザ所望の物体を特定しつつ、その物体を用いて画像検索を行うことが可能な情報処理方法、プログラム、及び情報処理装置を提供することを目的の一つとする。
【課題を解決するための手段】
【０００６】
本開示の一実施形態に係る情報処理方法は情報処理装置に含まれる１又は複数のプロセッサが、テキストデータを自然言語処理して解析された１又は複数の単語を含む単語データを取得することと、前記単語データに基づいて特定された物体画像であって、画像内の所定物体を含む物体画像を取得することと、前記物体画像に類似する類似画像を検索すること、を実行する。
【発明の効果】
【０００７】
開示の技術によれば、画像データからユーザ所望の物体を特定しつつ、その物体を用いて画像検索を行うことが可能となる。
【図面の簡単な説明】
【０００８】
【図１】実施形態における情報処理システム１の各構成例を示す図である。
【図２】実施形態に係るユーザ端末１０の一例を示すブロック図である。
【図３】実施形態に係るサーバ２０の一例を示すブロック図である。
【図４】実施形態に係る画像関連データ１３３の一例を示す図である。
【図５】実施形態に係るテキスト関連データ１３４の一例を示す図である。
【図６】実施形態に係る物体データ２３３の一例を示す図である。
【図７】実施形態に係る情報処理システム１の処理の一例を示すシーケンス図である。
【図８】実施形態に係るユーザ端末１０における画面遷移の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本開示の実施形態について図面を参照しつつ詳細に説明する。なお、同一の要素には同一の符号を付し、重複する説明を省略する。
【００１０】
［実施形態］
実施形態では、物体を撮像した画像データから、ユーザ所望の物体を特定し、この特定された物体を用いて画像検索する装置又はシステムについて説明する。実施形態では、ユーザは検索対象の物体に関する情報を発話し、この音声について音声認識及び自然言語の処理が実行される。また、構文解析された単語データが用いられ、画像内の物体が特定される。さらに、構文解析された単語データは、特定された物体とともに、画像検索に用いられてもよい。これにより、画像からユーザ所望の物体を特定しつつ、その物体画像を用いて画像検索を行うことができる。なお、取得される単語データは、ユーザにより入力されたテキストデータから自然言語処理が行われて取得されてもよい。
【００１１】
＜システムの適用例＞
図１は、実施形態における情報処理システム１の各構成例を示す図である。図１に示す例では、各ユーザが利用する各情報処理装置１０Ａ、１０Ｂ・・・と、音声認識処理を実行するサーバ２０Ａと、自然言語解析（又は構文解析）を実行するサーバ２０Ｂと、画像から物体を検出するサーバ２０Ｃと、電子商取引プラットフォームを管理するサーバ２０Ｄとが、ネットワークＮを介して接続される。なお、各サーバ２０Ａ〜Ｄの少なくとも２つは、一つのサーバに統合されてもよい。
【００１２】
情報処理装置１０Ａは、例えば、スマートフォン、携帯電話（フィーチャーフォン）、コンピュータ、ＰＤＡ（Personal Digital Assistant）などであり、内蔵又は外付けて撮像装置を有する。
【００１３】
情報処理装置１０Ｂは、例えば、ウェアラブル端末（限定でなく例として、メガネ型デバイスなど）である。ウェアラブル端末は、ユーザが装着する電子デバイスである。ウェアラブル端末は、例えば、メガネ型端末（スマートグラス）、コンタクトレンズ型端末（スマートコンタクトレンズ）、拡張現実（ＡＲ: Augmented Reality）技術を用いたヘッドマウントディスプレイ、義眼、ブレイン・マシン・インタフェース等であってもよい。また、ウェアラブル端末はスマートスピーカー、ロボット等、ユーザが装着できない端末でもよい。本実施形態においては、ウェアラブル端末がメガネ型端末（スマートグラス）である場合を例に説明する。なお、情報処理装置１０Ａ及び１０Ｂを区別しないときは、情報処理装置１０と表記する。情報処理装置１０は、ユーザが利用する端末であるため、ユーザ端末１０とも表記する。情報処理装置１０は、マイクや撮像装置と接続可能な処理装置であればよい。
【００１４】
情報処理装置２０Ａは、例えばサーバであり、１又は複数の装置により構成されてもよい。また、情報処理装置２０Ａは、音声認識を行うサーバであり、情報処理装置２０Ｂは、自然言語処理を行うサーバであり、情報処理装置２０Ｃは、物体検出を行うサーバであり、情報処理装置２０Ｄは、電子商取引プラットフォームを管理するサーバである。以下、情報処理装置２０Ａ〜Ｄを区別しないときは、情報処理装置２０又はサーバ２０とも表記する。
【００１５】
図１に示す例では、ユーザ端末１０Ａは、カメラを起動し、シャツＧ１を撮影し、ユーザの音声を入力する。例えば、ユーザは、「襟付きの白い長袖シャツ」と発話したとする。このとき、ユーザ端末１０Ａは、音声データをサーバ２０Ａに送信し、この音声データのテキストデータを受信する。ユーザ端末１０Ａは、テキストデータをサーバ２０Ｂに送信し、自然言語処理が実行され、構文解析された単語データを受信する。ユーザ端末１０Ａは、単語データと画像データとをサーバ２０Ｃに送信し、物体検出が行われる。
【００１６】
ユーザ端末１０Ａは、特定された物体（Ｇ１）を少なくとも用いて、画像検索を行うよう制御する。また、ユーザ端末１０Ａは、取得していた単語データを画像検索に用いてもよい。このとき、ユーザ端末１０Ａは、物体画像と単語データとをサーバ２０Ｄに送信し、検索結果を受信するようにしてもよい。
【００１７】
上記例で、最初の発話の音声データ（例えば、Ｈｅｙ，○○、検索アプリを使って、襟付きの〜）により、「Ｈｅｙ，○○」で、音声処理アプリケーションが起動され、音声認識、自然言語処理後の単語データ「検索アプリ」により、検索アプリケーションが起動されてもよい。検索アプリケーションが起動されると、撮影中の一画像データ内の物体と、「襟付きの〜」に含まれる単語データとを用いて、画像検索が実行されてもよい。なお、音声処理アプリケーションの起動中は、「Ｈｅｙ，○○」と発言しなくても検索アプリケーションが機能する構成でもよい。
【００１８】
なお、ユーザがユーザ端末１０Ｂを用いて靴Ｇ２を画像検索する場合も、ユーザ端末１０Ｂは、ユーザ端末１０Ａと同様に、上述した処理を実行する。
【００１９】
これにより、画像データからユーザ所望の物体を特定しつつ、その物体画像を用いて画像検索を行うことが可能となる。また、物体の特定に用いた単語データを、特定された物体に対する画像検索時にも用いることにより、単語データにより検索対象の絞り込みが可能になり、検索精度、検索速度を向上させることが可能になる。また、単語データを再利用することにより、絞り込み用のデータをユーザに選択させたり入力させたりしなくてもよく、サーバ２０はこれらの処理をしなくて済むため、サーバ２０の処理負荷を軽減させることも可能である。
【００２０】
＜構成の一例＞
図２は、実施形態に係るユーザ端末１０の一例を示すブロック図である。ユーザ端末１０は典型的には、１つ又は複数の処理装置（ＣＰＵ）１１０、１つ又は複数のネットワーク又は他の通信インタフェース１２０、メモリ１３０、ユーザインタフェース１５０、撮像装置１６０、及びこれらの構成要素を相互接続するための１つ又は複数の通信バス１７０を含む。
【００２１】
ユーザインタフェース１５０は、例えば、ディスプレイ装置１５１及び入力装置（キーボード及び／又はマウス、又は他の何らかのポインティングデバイス、音を入力可能なマイク等）１５２を備えるユーザインタフェース１５０である。また、ユーザインタフェース１５０は、タッチパネルでもよい。また、ユーザ端末１０がウェアラブル端末１０Ｂの場合、ディスプレイ措置１５１はレンズ、入力装置１５２はマイク等でもよい。
【００２２】
撮像装置１６０は、画像（静止画像及び動画像を含む）を撮像するためのデバイスである。例えば、撮像装置１６０は、ＣＣＤイメージセンサ、ＣＭＯＳイメージセンサ、レンズ等の撮像素子を含んでいてもよい。
【００２３】
メモリ１３０は、例えば、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ ＲＡＭ又は他のランダムアクセス固体記憶装置などの高速ランダムアクセスメモリであり、また、１つ又は複数の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリデバイス、又は他の不揮発性固体記憶装置などの不揮発性メモリでもよい。
【００２４】
また、メモリ１３０の他の例として、ＣＰＵ１１０から遠隔に設置される１つ又は複数の記憶装置でもよい。ある実施形態において、メモリ１３０は次のプログラム、モジュール及びデータ構造、又はそれらのサブセットを格納する。
【００２５】
オペレーティングシステム１３１は、例えば、様々な基本的なシステムサービスを処理するとともにハードウェアを用いてタスクを実行するためのプロシージャを含む。
【００２６】
ネットワーク通信モジュール１３２は、例えば、ユーザ端末１０を他のコンピュータに、１つ又は複数のネットワーク通信インタフェース１２０及び、インターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの１つ又は複数の通信ネットワークを介して接続するために使用される。
【００２７】
画像関連データ１３３は、撮影中に撮像された画像データに関連して取得可能なデータである。例えば、画像関連データ１３３は、画像データを識別するための画像ＩＤ、ブランド名、物体のカテゴリ、画像データ内の物体の位置、物体の色、物体の材質（テクスチャ）などを含む（例えば図４参照）。これらのデータは、画像データから物体検出をする際に取得可能である。
【００２８】
テキスト関連データ１３４は、ユーザにより入力されたテキストデータに関連して取得可能なデータである。例えば、テキストデータは、ユーザの音声データを音声認識して取得されたり、ユーザにより入力装置１５２を操作されることで取得されたりする。例えば、テキスト関連データ１３４は、音声データを識別するための音声ＩＤ、音声データ、音声データが音声認識されたテキストデータ、テキストデータが構文解析された１又は複数の単語データなどを含む（例えば図５参照）。
【００２９】
検索制御モジュール１３５は、テキスト関連データ１３４に基づいて、撮像装置１６０により撮像された画像データ内の所定物体を特定し、その所定物体に類似する類似物体を含む類似画像を検索することを制御する。例えば、検索制御モジュール１３５は、検索手順を表示制御モジュール１３６に指示して画面に表示させ、検索結果をユーザに通知する。
【００３０】
表示制御モジュール１３６は、物体検索に関する画面を表示制御する（例えば図８参照）。例えば、表示制御モジュール１３６は、検索結果として、類似物体に関する情報を画面に表示制御する。一例として、表示制御モジュール１３６は、撮影中の画面に対し、物体に関する情報を、ＡＲ技術を用いて重畳表示するよう制御してもよい。これにより、検索結果をユーザに知らせることができる。
【００３１】
また、取引制御モジュール１３７は、電子商取引プラットフォームにおいて商品の売買を制御し、例えば、出品や購入の手続き処理を制御する。なお、画像検索は、電子商取引プラットフォームにおける商品データベースに格納されている商品画像を検索してもよい。これにより、電子商取引プラットフォームとデータ連携して検索処理を効率化することができる。
【００３２】
なお、１つ又は複数の処理装置（ＣＰＵ）１１０は、メモリ１３０から、必要に応じて各モジュールを読み出して実行する。例えば、１つ又は複数の処理装置（ＣＰＵ）１１０は、メモリ１３０に格納されているネットワーク通信モジュール１３２を実行することで、通信部（送信部、受信部を含む）を構成してもよい。また、１つ又は複数の処理装置（ＣＰＵ）１１０は、メモリ１３０に格納されている検索制御モジュール１３５、表示制御モジュール１３６、取引制御モジュール１３７をそれぞれ実行することで、検索制御部、表示制御部、取引制御部を構成してもよい。
【００３３】
他の実施形態において、検索制御モジュール１３５、表示制御モジュール１３６、取引制御モジュール１３７は、ユーザ端末１０のメモリ１３０に格納されるスタンドアロンアプリケーションであってもよい。スタンドアロンアプリケーションとしては、限定はされないが、検索制御アプリケーション、表示制御アプリケーション、取引制御アプリケーションが挙げられる。さらに他の実施形態において、検索制御モジュール１３５、表示制御モジュール１３６、取引制御モジュール１３７は別のアプリケーションへのアドオン又はプラグインであってもよい。
【００３４】
上記に示した要素の各々は、先述の記憶装置の１つ又は複数に格納され得る。上記に示したモジュールの各々は、上述される機能を実行するための命令のセットに対応する。上記に示したモジュール又はプログラム（すなわち、命令のセット）は別個のソフトウェアプログラム、プロシージャ又はモジュールとして実装される必要はないとともに、従ってこれらのモジュールの様々なサブセットは様々な実施形態で組み合わされるか、或いは再構成されてもよい。ある実施形態において、メモリ１３０は上記に示されるモジュール及びデータ構造のサブセットを格納し得る。さらには、メモリ１３０は上述されない追加的なモジュール及びデータ構造を格納し得る。
【００３５】
図３は、実施形態に係るサーバ２０の一例を示すブロック図である。サーバ２０は典型的には、１つ又は複数の処理装置（ＣＰＵ）２１０、１つ又は複数のネットワーク又は他の通信インタフェース２２０、メモリ２３０、及びこれらの構成要素を相互接続するための１つ又は複数の通信バス２７０を含む。図３に示すサーバ２０は、図１に示すサーバＡ〜Ｄを含むサーバとして説明するが、少なくとも１つの機能を有する別個のサーバとして構成されてもよい。
【００３６】
サーバ２０は、場合によりユーザインタフェース２５０を含んでもよく、これとしては、ディスプレイ装置（図示せず）、及びキーボード及び／又はマウス（又は他の何らかのポインティングデバイス等の入力装置。図示せず）を挙げることができる。
【００３７】
メモリ２３０は、例えば、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ ＲＡＭ又は他のランダムアクセス固体記憶装置などの高速ランダムアクセスメモリであり、また、１つ又は複数の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリデバイス、又は他の不揮発性固体記憶装置などの不揮発性メモリでもよい。
【００３８】
また、メモリ２３０の他の例は、ＣＰＵ２１０から遠隔に設置される１つ又は複数の記憶装置を挙げることができる。ある実施形態において、メモリ２３０は次のプログラム、モジュール及びデータ構造、又はそれらのサブセットを格納する。
【００３９】
オペレーティングシステム２３１は、例えば、様々な基本的なシステムサービスを処理するとともにハードウェアを用いてタスクを実行するためのプロシージャを含む。
【００４０】
ネットワーク通信モジュール２３２は、例えば、サーバ２０を他のコンピュータに、１つ又は複数の通信ネットワークインタフェース２２０及びインターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの１つ又は複数の通信ネットワークを介して接続するために使用される。
【００４１】
物体データ２３３は、検索先となり得る物体の情報が格納される。例えば、物体データ２３３は、物体を特定するための物体ＩＤ、物体を含む画像データ、物体の名称、物体の属性、金額等を含む（例えば、図６参照）。
【００４２】
音声認識モジュール２３４は、各ユーザ端末１０から送信された音声データを音声認識ＡＰＩ（Application Programming Interface）を介して取得し、この音声データに対して音声認識し、認識結果のテキストデータを、音声データの送信元のユーザ端末１０に送信する。
【００４３】
自然言語処理モジュール２３５は、各ユーザ端末１０から送信されたテキストデータを自然言語処理ＡＰＩを介して取得し、このテキストデータに対して自然言語処理を実行し、構文解析された１又は複数の単語を含む単語データを、テキストデータの送信元のユーザ端末１０に送信する。自然言語処理は、例えば、Google Natural Language、Microsoft Text Analytics、又はIBM Natural Language Classifierなどを適用可能である。
【００４４】
物体検出モジュール２３６は、各ユーザ端末１０から送信された画像データを物体検出ＡＰＩを介して取得し、この画像データに対し、物体検出処理を実行し、物体検出の結果データを、画像データの送信元のユーザ端末１０に送信する。結果データには、検出された物体の物体名、カテゴリ、素材、色等の少なくとも１つが含まれてもよい。
【００４５】
検出処理モジュール２３７は、各ユーザ端末１０から物体画像を取得し、物体データ２３３に格納される物体の中から、取得した物体画像に含まれる物体に類似する物体を含む画像データを検索し、検索結果データを、物体画像を送信したユーザ端末１０に送信する。
【００４６】
検出処理モジュール２３７は、テキストデータを自然言語処理して解析された１又は複数の単語を含む単語データを取得する。また、検出処理モジュール２３７は、取得された単語データに基づいて特定された物体画像であって、画像内の所定物体を含む物体画像を取得する。次に、検出処理モジュール２３７は、所定物体に類似する類似物体を含む類似画像を検索する。
【００４７】
例えば、検出処理モジュール２３７は、取得された画像内に複数の物体が含まれる場合などに、ユーザにより入力されたテキストデータ（例えばブランド名や商品カテゴリ等）を用いて、ユーザ所望の物体を特定する。ユーザ所望の物体は、１つに限られず、複数の物体やこれらの組み合わせ（例えば応接セット）でもよい。
【００４８】
特定された物体は、矩形抽出されてもよい。物体を特定するのに用いられる単語データには、位置（例えば一番手前等）、素材（例えばストライプ）、色、サイズ（例えば、〜より大きい等）などのデータを含んでもよい。なお、上述の物体特定処理や検索処理は、サーバ２０Ｄが行ってもよいし、ユーザ端末１０が行ってもよい。
【００４９】
これにより、取得された画像からユーザ所望の物体を特定しつつ、その物体画像を用いて画像検索を行うことが可能になる。例えば、ユーザは、画像内の位置や、色等を音声又はテキストで入力することにより、検索対象の物体を、画像データ内から特定し、この物体画像を用いて検索を行うことが可能になる。
【００５０】
また、検出処理モジュール２３７は、入力された音声を音声認識処理してテキストデータを取得してもよい。例えば、入力装置１５２に含まれるマイクは、ユーザの発話を音声データに変換して入力する。この音声データが、サーバ２０Ａなどにより音声認識されてテキストデータに変換される。
【００５１】
これにより、ユーザは、音声を用いることで、物体を特定するためのデータを容易にユーザ端末１０に入力することができる。
【００５２】
また、検出処理モジュール２３７は、単語データにさらに基づいて、類似物体を含む類似画像を検索してもよい。例えば、検出処理モジュール２３７は、物体特定に用いた単語データを、類似画像を検索するときにも用いてもよい。
【００５３】
これにより、取得された画像からユーザ所望の物体を特定し、特定された物体画像以外にもユーザ所望のデータを用いて画像検索を行うことが可能となる。また、物体の特定に用いた単語データを、特定された物体に対する画像検索時にも用いることにより、単語データにより検索対象の絞り込みが可能になり、検索精度、検索速度を向上させることが可能になる。また、単語データを再利用することにより、絞り込み用のデータをユーザに選択させたり入力させたりしなくてもよく、サーバ２０はこれらの処理をしなくて済むため、サーバ２０の処理負荷を軽減させることも可能である。
【００５４】
また、検出処理モジュール２３７は、画像内で検出された物体に関する物体関連データを取得してもよい。物体関連データは、例えば、物体検出時に取得可能な物体名、カテゴリ、素材、色等を含む。また、検出処理モジュール２３７は、単語データ及び物体関連データの少なくとも１つに基づいて、類似物体を検索してもよい。例えば、検出処理モジュール２３７は、構文解析により取得された単語データと、物体検出時に取得された物体関連データとを用いて、検索対象をフィルタリングして検索する。
【００５５】
これにより、画像からユーザ所望の物体を特定し、特定された物体画像以外にもユーザ所望のデータ及び／又は物体に関するデータを用いて画像検索を行うことが可能となる。また、物体の特定に用いた単語データと、物体検出時に取得されるデータとを、特定された物体に対する画像検索時にも用いることにより、さらなる検索対象の絞り込みが可能になり、検索精度、検索速度をさらに向上させることが可能になる。また、単語データや物体に関するデータを検索に利用することにより、絞り込み用のデータをユーザに選択させたり入力させたりしなくてもよく、サーバ２０はこれらの処理をしなくて済むため、サーバ２０の処理負荷を軽減させることも可能である。
【００５６】
また、検出処理モジュール２３７は、所定項目において、単語データに含まれるデータと、物体関連データに含まれるデータとが異なる場合、両データとも検索に使用しない、又はいずれかのデータを検索に使用すると決定してもよい。例えば、検出処理モジュール２３７は、ユーザの音声データにより取得された単語データが「赤」を示し、物体検出時に取得された単語データが「青」を示す場合、両者とも検索に用いない、又はいずれか一方を検索に用いると決定してもよい。また、検出処理モジュール２３７は、より詳細な情報（例えば修飾語が付与された情報）を有する方を用いるように決定しておいてもよい。例えば、「赤」と「濃い赤」では「濃い赤」が用いられる。
【００５７】
なお、いずれか一方が用いられる場合、所定項目ごとにどちらを用いるかが決定されていればよい。例えば、所定項目が色の場合、画像認識の精度の信頼性が高いため、物体関連データを用い、所定項目が素材の場合、テクスチャ認識の精度を考慮して、単語データを用いることが設定される。
【００５８】
これにより、所定項目において不一致のデータがある場合の処理を規定しておくことで、スムースな検索処理を実現することが可能になる。
【００５９】
また、類似物体は、電子商取引プラットフォームにおける商品データベースに登録された商品を含んでもよい。例えば、特定された物体を用いて、電子商取引プラットフォームに出品中の商品画像が検索されてもよい。
【００６０】
これにより、電子商取引プラットフォームと連携することで、ユーザに検索の付加価値を与えることが可能になる。また、電子商取引プラットフォームが既に保有している商品データベースを用いることで、サーバで管理するデータ量を軽減することが可能にあり、メモリ量削減に寄与することが可能になる。
【００６１】
また、検出処理モジュール２３７は、単語データに基づいて、電子商取引プラットフォームにおける処理を実行してもよい。例えば、単語データに、出品する又は購入するなどの電子商取引に関する単語が含まれていれば、検出処理モジュール２３７は、電子商取引モジュール２３８に、単語データにより特定された処理を依頼する。
【００６２】
これにより、電子商取引プラットフォームにおける商取引の処理を実行することが可能になり、ユーザの利便性が向上する。
【００６３】
また、検出処理モジュール２３７は、ユーザが所有する物体を含むリストがメモリに格納されている場合、リスト内の物体に関するデータに基づいて、単語データに含まれる単語を修正してもよい。例えば、検出処理モジュール２３７は、電子商取引プラットフォームにおいてユーザ保有の物品のリスト（例えば持ち物リスト）がユーザごとに存在する場合、このリスト内の物品の情報を解析する。検出処理モジュール２３７は、解析結果、このユーザは、スニーカーを多く保有していると把握できた場合は、単語データが「靴」であっても、「スニーカー」に修正してもよい。
【００６４】
これにより、ユーザの趣向に合わせて単語データを修正することで、ユーザの趣向により合わせて検索を行うことが可能になる。
【００６５】
また、検出処理モジュール２３７は、持ち物リスト内の商品と比較することで、画像データ内の物体を特定してもよい。例えば、ユーザにが、「先月購入した財布と同じくらいの大きさ」などと発話することで、音声認識、自然言語処理が行われ、持ち物リスト内の財布を特定することが可能になる。検索制御モジュール１３５は、特定した持ち物リスト内の財布のサイズデータを取得し、このサイズデータを用いて画像データ内の物体検出された財布を特定してもよい。また、検索制御モジュール１３５は、ものを計測するアプリケーション（例えば、Ａｐｐｌｅ（登録商標）  Ｓｔｏｒｅ等により取得可能なＡＲ  Ｍｅａｓｕｒｅアプリケーション）を用いて物体のサイズを計測して、このサイズを物体特定に用いてもよい。
【００６６】
また、検出処理モジュール２３７は、画像内に同じ物体を含む領域が複数含まれる場合は、単語データに含まれる数で物体を特定してもよい、例えば同じ椅子が３つ画像内に含まれる場合、検出処理モジュール２３７は、単語データが示す数「３」に基づいて、この椅子を特定する。また、検索制御モジュール１３５は、３つの椅子のいずれかを用いて画像検索してもよく、また、それぞれの椅子を用いて画像検索してもよい。これにより、物体特定のバリエーションを増やすことができる。
【００６７】
また、検出処理モジュール２３７は、物体画像に加え、単語データ及び／又は物体関連データを取得した場合、これらのデータを用いて検索対象をフィルタリングし、検索効率を向上させる。例えば、検出処理モジュール２３７は、単語データ及び／又は物体関連データからカテゴリやブランドを取得できれば、カテゴリやブランドで物体を絞り込んでから、画像検索を行ってもよい。これにより、物体の絞り込みを実行し、検索精度及び検索時間の向上を図ることができる。
【００６８】
電子商取引モジュール２３８は、商品やサービスの売買処理を実行する。例えば、電子商取引モジュール２３８は、商品やサービスの出品処理を実行したり、販売処理を実行したりする。
【００６９】
上記に示した要素の各々は先述される記憶装置の１つ又は複数に格納され得る。上記に示したモジュールの各々は、上述される機能を実行するための命令のセットに対応する。上記に示したモジュール又はプログラム（すなわち、命令のセット）は別個のソフトウェアプログラム、プロシージャ又はモジュールとして実装される必要はないとともに、従ってこれらのモジュールの様々なサブセットが様々な実施形態で組み合わされるか、或いは再構成され得る。ある実施形態において、メモリ２３０は上記に示されるモジュール及びデータ構造のサブセットを格納し得る。さらには、メモリ２３０は上述されない追加的なモジュール及びデータ構造を格納し得る。
【００７０】
なお、１つ又は複数の処理装置（ＣＰＵ）２１０は、メモリ２３０から、必要に応じて各モジュールを読み出して実行する。例えば、１つ又は複数の処理装置（ＣＰＵ）２１０は、メモリ２３０に格納されているネットワーク通信モジュール２３２を実行することで、通信部（送信部、受信部を含む）を構成してもよい。また、１つ又は複数の処理装置（ＣＰＵ）２１０は、メモリ２３０に格納されている音声認識モジュール２３４、自然言語処理モジュール２３５、物体検出モジュール２３６、検索処理モジュール２３７、電子商取引モジュール２３８をそれぞれ実行することで、音声認識部、自然言語処理部、物体検出部、検索処理部、電子商取引部を構成してもよい。
【００７１】
図３は「サーバ」を示すが、図３は、本明細書に記載される実施形態の構造的な概略としてよりも、サーバのセットに存在し得る様々な特徴についての説明が意図されている。実際には、当業者により認識されるとおり、別個に示される項目が組み合わされ得るであろうとともに、ある項目が別個にされ得るであろう。例えば、図３において別個に示される項目は単一サーバ上に実装され得るであろうとともに、単一の項目が１台又は複数のサーバにより実装され得るであろう。
【００７２】
＜データ構造の一例＞
図４は、実施形態に係る画像関連データ１３３の一例を示す図である。図４に示す例では、画像関連データ１３３は、画像ＩＤに関連付けて、画像データ、ブランド、カテゴリ、位置、色、・・・などを含む。画像関連データ１３３の一例として、画像ＩＤ「Ｔ−０００１００」には、画像データ「Ｄ１」、ブランド「ＡＡＡ」、カテゴリ「シャツ」、位置「（ｘ１、ｙ１）」、色「白」などのデータが関連付けられる。なお、他にも、素材などのデータが画像関連データに関連付けられてもよい。
【００７３】
図５は、実施形態に係るテキスト関連データ１３４の一例を示す図である。図５に示す例では、テキスト関連データ１３４は、音声ＩＤに関連付けて、音声データ、テキストデータ、単語１、単語２、・・・などのデータを含む。テキスト関連データ１３４の一例として、音声ＩＤ「Ｓ−０００１００」には、音声データ「Ｄ２」、テキストデータ「あかいくつを・・・」、単語１「あかい」、単語「くつ」などが関連付けられる。
【００７４】
図６は、実施形態に係る物体データ２３３の一例を示す図である。図６に示す例では、物体データ２３３は、電子商取引における商品データであり、商品を登録したユーザのユーザＩＤごとに、商品に関する情報が関連付けられる。例えば、ユーザＩＤごとに、商品ＩＤ、画像、ブランド、金額、カテゴリ、色などが関連付けられる。物体データ２３３の一例として、ユーザＩＤ「Ｕ１０」に、商品ＩＤ「００００１」、画像「Ｄ１０」、ブランド「ＡＡＡ」、金額「￥５，０００」、カテゴリ「シャツ」、色「白」などが関連付けられる。
【００７５】
上述したデータ構造は、あくまでも一例であって、この例に限られない。例えば図６に示す物体データ２３３は、画像ＩＤがあれば物体画像を特定できるため、物体画像は別のデータベースに記憶しておけばよく、ユーザＩＤなどを不要としてもよい。
【００７６】
＜動作説明＞
次に、実施形態に係る情報処理システム１の動作について説明する。図７は、実施形態に係る情報処理システム１の処理の一例を示すシーケンス図である。図７に示す例では、サーバ２０Ａが音声認識モジュール２３４、サーバ２０Ｂが自然言語処理モジュール２３５、サーバ２０Ｃが物体検出モジュール２３６、サーバ２０Ｄが検索処理モジュール２３７、電子商取引モジュール２３８を有するとする。
【００７７】
（ステップＳ１０２）
ユーザは、ユーザ端末１０に向かって、「Ｈｅｙ  ○○、検索アプリであの赤いメ社の靴はいくら？」と発話する。
【００７８】
（ステップＳ１０４）
ユーザ端末１０は、マイクから、「Ｈｅｙ  ○○、検索アプリであの赤いメ社の靴はいくら？」を音声データで取得する。
【００７９】
（ステップＳ１０６）
ユーザ端末１０のネットワーク通信モジュール（送信部）１３２は、マイクから取得された音声データをサーバ２０Ａに送信する。
【００８０】
（ステップＳ１０８）
サーバ２０Ａのネットワーク通信モジュール（受信部）２３２は、音声データを受信し、音声認識モジュール２３４は、音声データの「Ｈｅｙ  ○○、検索アプリであの赤いメ社の靴はいくら？」をテキストデータに変換する。
【００８１】
（ステップＳ１１０）
サーバ２０Ａのネットワーク通信モジュール（送信部）２３２は、「Ｈｅｙ  ○○、検索アプリであの赤いメ社の靴はいくら？」のテキストデータをユーザ端末１０に送信する。
【００８２】
（ステップＳ１１２）
ユーザ端末１０のネットワーク通信モジュール（受信部）１３２は、テキストデータを受信し、ユーザ端末１０は、テキストデータの一部「Ｈｅｙ  ○○」をウェイクワードとして、取得したテキストデータを表示する。
【００８３】
（ステップＳ１１４）
ユーザは、ユーザ端末１０の画面に表示されたテキストデータを確認し、例えば、ＯＫボタンなどの確認結果を入力する。
【００８４】
（ステップＳ１１６）
ユーザ端末１０のネットワーク通信モジュール（送信部）１３２は、テキストデータをサーバ２０Ｂに送信する。
【００８５】
（ステップＳ１１８）
サーバ２０Ｂのネットワーク通信モジュール（受信部）２３２は、テキストデータを受信し、自然言語処理モジュール２３５は、テキストデータを構文解析する。ここで、起動するアプリ「検索」、色「赤い」、キーワード「メ社」、カテゴリ「靴」、使用するＵＩ「いくら？」が単語データとして取得される。
【００８６】
（ステップＳ１２０）
サーバ２０Ｂのネットワーク通信モジュール（送信部）２３２は、解析済みのテキストデータである単語データを、ユーザ端末１０に送信する。
【００８７】
（ステップＳ１２２）
ユーザ端末１０のネットワーク通信モジュール１３２（受信部）は、解析済みのテキストデータを受信し、ユーザ端末１０の検索制御モジュール１３５は、検索アプリが「検索」であるため、検索アプリケーションを起動する。
【００８８】
（ステップＳ１２４）
ユーザ端末１０の検索制御モジュール１３５は、解析済みのテキストデータを、起動中の検索アプリケーションに渡す。
【００８９】
（ステップＳ１２６）
ユーザ端末１０は、解析済みのテキストデータを表示する。
【００９０】
（ステップＳ１２８）
ユーザは、ユーザ端末１０の画面に表示された解析済みのテキストデータを確認し、例えば、ＯＫボタンなどの確認結果を入力する。なお、ステップＳ１２６及びステップＳ１２８はオプションの処理である。
【００９１】
（ステップＳ１３０）
ユーザ端末１０は、カメラ（撮像装置１６０）やＷｅｂページ、端末内のメディアから画像データを取得する。なお、物体を撮影中にステップＳ１０２の音声が入力されてもよい。また、取得された画像データは、画面に表示されてもよい。
【００９２】
（ステップＳ１３２）
ユーザ端末１０のネットワーク通信モジュール（送信部）１３２は、解析済みテキストデータ、画像データをサーバ２０Ｃに送信する。
【００９３】
（ステップＳ１３４）
サーバ２０Ｃのネットワーク通信モジュール（受信部）２３２は、解析済みテキストデータと画像データとを受信し、物体検出モジュール２３６は、画像データにより示される画像内の１又は複数の物体を検出する。
【００９４】
（ステップＳ１３６）
サーバ２０Ｃの物体検出モジュール２３６は、検出した複数の物体に対し、カテゴリ「靴」に基づいてカテゴリ検索を行って検索対象を絞る。
【００９５】
（ステップＳ１３８）
サーバ２０Ｃの物体検出モジュール２３６は、色「赤い」をもとに色推定を行い、赤い靴のみの矩形領域を取得する。
【００９６】
（ステップＳ１４０）
サーバ２０Ｃの物体検出モジュール２３６は、画像データに対し、取得された矩形領域を切り取る。この矩形領域が物体画像になり得る。
【００９７】
（ステップＳ１４２）
サーバ２０Ｃの物体検出モジュール２３６は、矩形領域（物体画像）と、解析済みテキストデータの一部である色「赤い」、キーワード「メ社」、カテゴリ「靴」をもとに、データベース内から類似商品を検索させ、商品情報を取得するようサーバ２０Ｄに要求する。なお、ステップＳ１３４〜１４２の処理は、ユーザ端末１０が実行してもよい。
【００９８】
（ステップＳ１４４）
サーバ２０Ｄのネットワーク通信モジュール（受信部）２３２は、矩形領域と解析済みテキストデータとを受信し、検索処理モジュール２３７は、取得された矩形領域と解析済みテキストデータとを用いて、類似商品を検索する。
【００９９】
（ステップＳ１４６）
サーバ２０Ｄの検索処理モジュール２３７は、検索された類似商品の商品情報（価格、色、素材、サイズなど）を、サーバ２０Ｃに送信するよう制御する。
【０１００】
（ステップＳ１４８）
サーバ２０Ｃのネットワーク通信モジュール（送信部）２３２は、取得された商品情報をユーザ端末１０に送信する。
【０１０１】
（ステップＳ１５０）
ユーザ端末１０の表示制御モジュール１３６は、使用するＵＩについて、「いくら」に基づいて価格表示に最適化されたＵＩを取得する。
【０１０２】
（ステップＳ１５２）
ユーザ端末１０の表示制御モジュール１３６は、取得したＵＩを用いて商品情報を表示するよう制御する。例えば、表示制御モジュール１３６は、類似商品の平均価格を表示し、残りのデータ項目はオプションとして表示するよう制御してもよい。
【０１０３】
（ステップＳ１５４）
ユーザは、ユーザ端末１０の画面を見ることで、赤い靴の価格（平均価格等）を把握することができる。
【０１０４】
以上、本開示技術は、取得された画像からユーザ所望の物体を特定しつつ、その物体画像を用いて画像検索を行うことが可能となる。また、物体の特定に用いた単語データを、特定された物体に対する画像検索時にも用いることにより、単語データにより検索対象の絞り込みが可能になり、検索精度、検索速度を向上させることが可能になる。また、単語データを再利用することにより、絞り込み用のデータをユーザに選択させたり入力させたりしなくてもよく、サーバ２０はこれらの処理をしなくて済むため、サーバ２０の処理負荷を軽減させることも可能である。また、音声で検索対象を特定できるため、アクセシビリティをより向上させることが可能である。また、ＡＩアシスタントやボイスコマンドのウェイクワードと組み合わせることで、利便性が高く、ホームや他のアプリからでも起動させることが可能である。
【０１０５】
＜画面例＞
次に、ユーザ端末１０の画面に表示される例について説明する。図８は、実施形態に係るユーザ端末１０における画面遷移の一例を示す図である。図８に示す左上の画面例では、画面内の靴Ｇ２が撮像されている。なお、図８に示す画面は表示制御モジュール１３６により表示制御される。
【０１０６】
次に、ユーザが、「あの赤いメ社の靴はいくら？」と発話したとする。ユーザ端末１０のマイクは、この音声を入力し、音声データとして取得する。さらに、この音声データが音声認識されてテキストデータに変換され、図８に示す右上画面にテキストデータが表示される。このとき、ユーザが発話した内容が適切か否かを確認するために、画面上に「ＯＫ」ボタン、もう一度発話させるための「もう一度」ボタンが表示される。
【０１０７】
次に、ユーザ端末１０の画面では、靴Ｇ２に基づいて商品検索が行われた結果を示す金額情報が表示される。図８に示す右下画面には、靴Ｇ２に対する検索結果として「￥５，０００」が表示される。なお、本実施形態では、図８に示す例以外にも、例えば、「あの赤いメ社の靴の素材は？」とユーザが発話すれば、赤い靴に類似する靴に関連付けられた素材に関する情報が画面に表示され、「あの赤いメ社の靴のブランドは？」とユーザが発話すれば、赤い靴に類似する靴に関連付けられたブランドに関する情報が画面に表示される。
【０１０８】
なお、開示技術は、上述した各実施形態に限定されるものではなく、開示技術の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。このため、上記各実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。例えば、上述した各処理ステップは処理内容に矛盾を生じない範囲で任意に順番を変更し、または並列に実行することができる。
【０１０９】
本開示の各実施形態のプログラムは、コンピュータに読み取り可能な記憶媒体に記憶された状態で提供されてもよい。 記憶媒体は、「一時的でない有形の媒体」に、プログラムを記憶可能である。プログラムは、限定でなく例として、ソフトウェアプログラムやコンピュータプログラムを含む。
【０１１０】
［変形例］
また、上述した各実施形態における変形例を以下に示す。
【０１１１】
＜変形例１＞
変形例１では、ユーザのジェスチャや物体を指定する操作（例えばタップ操作）を認識し、これらにより画像内の物体を特定する処理を、上述した実施形態に組み合わせる。これにより、より高度な類似物体の検索を行うことを可能にする。ジェスチャ認識については、所定のジェスチャに対し、ユーザ端末１０で実行されるコマンドや、サーバ２０で実行されるコマンドを割り当てておけばよい。例えば、親指を立てるジェスチャを、検索処理を実行するコマンドに割り当てるなどである。
【０１１２】
＜変形例２＞
変形例２では、電子商取引プラットフォームと連携する場合、類似商品の検索だけではなく、電子商取引に関する処理にも応用してもよい。例えば、ユーザは、「この赤いスニーカーはいくらで売れる？」と発話すれば、検索処理モジュール２３７は、類似商品の販売実績に基づいて売却価格帯を分析し、ユーザ端末１０に分析結果を表示させたりすることが可能である。
【０１１３】
また、ユーザが「この赤いスニーカーを買いたい」と発話すれば、検索処理モジュール２３７は、電子商取引の購入完了前までの処理に進むことが可能である。また、ユーザが「この赤いスニーカーを売りたい」と発話すれば、検索処理モジュール２３７は、電子商取引の出品時に必要な情報を、類似商品の商品情報を用いて自動で入力し、出品処理に進むことが可能である。この場合、ユーザは続けて、「概要は〇〇〇、価格は〇〇〇、以上、出品」と発話することで、検索処理モジュール２３７は、出品処理を完了させることができる。
【０１１４】
また、ユーザは、「この赤いスニーカーのコーディネートを知りたい」と発話すれば、検索処理モジュール２３７は、赤いスニーカーのコーディネートを検索して、ユーザ端末１０に表示させることができる。また、ユーザは、「この赤いスニーカーのサイズは？」と発話すれば、検索処理モジュール２３７は、類似商品のスニーカーの商品情報に基づいて、スニーカーのサイズ情報を取得し、ユーザ端末１０に表示させることができる。すなわち、ユーザが発話する動詞に基づいて、ユーザ端末１０はユーザインタフェースを変更してもよい。
【０１１５】
＜変形例３＞
変形例３では、自然言語処理モジュール２３５においてユーザの感情を推定し、ユーザの感情データを、単語データに付与することも可能である。この場合、検索処理モジュール２３７は、ユーザの感情データを用いて検索処理を実行してもよい。例えば、ユーザが食べ物の画像から加盟店を探したい場合、感情が「元気」な場合は、検索処理モジュール２３７は、賑やかな場所（レストラン）を検索し、感情が「元気がない」場合は、落ち着いた雰囲気の飲食店を検索するようにする。
【０１１６】
＜変形例４＞
変形例４では、ユーザ端末１０は、撮影中に撮像された画像データだけではなく、過去に撮像され保存されている画像データ（静止画像や動画像）、又は他のアプリケーションが保有している画像データを用いて、それらの画像データにより示される画像内にある所定物体を特定してもよい。また、検索元の物体がデジタルコンテンツに含まれる場合でも、ユーザ端末１０がスクリーンショットで静止画像を取得し、画像検索を行うことも可能である。ただし、デジタルコンテンツが物体に関する情報を充分に持っていた場合は、テキストデータを入力させたり、音声を入力させたりしなくてもよい。
【０１１７】
＜変形例５＞
変形例５では、音声データを自動翻訳し、外国でも使用可能にする。例えば、ユーザ端末１０は、ＧＰＳ機能等により取得した現在の位置情報やユーザにより入力された国情報等を音声データとともに音声認識モジュール２３４を含むサーバ２０に送信する。音声認識モジュール２３４は、取得した位置情報や国情報に応じた言語で音声データを自動翻訳し、翻訳後のテキストデータを用いて後段の処理を実行させることが可能である。また、位置情報が取得可能な場合、検索処理モジュール２３７は、位置情報から特定の加盟店などを絞り込んでもよい。例えば、画像内に複数の店舗が含まれている場合に、所定の加盟店のみを絞り込むことが可能になる。
【０１１８】
＜変形例６＞
変形例６では、物体検出モジュール２３６は、画像内の特徴点群から物体を推定するだけではなく、３次元空間内の特徴点群から物体を推定する方法でもよい。すなわち、物体検出の方法は、二次元画像でも三次元画像でもよい。
【０１１９】
＜変形例７＞
変形例７では、サーバ２０の各機能モジュールの少なくとも１つをユーザ端末１０に有するように実装してもよい。例えば、ユーザ端末１０が、音声認識モジュール２３４を有するようにしたり、物体検出モジュール２３６を有するようにしたり、検索処理モジュール２３７を有するようにしたりすることも可能である。
【符号の説明】
【０１２０】
１  情報処理システム
１０、１０Ａ、１０Ｂ  情報処理装置（ユーザ端末）
２０、２０Ａ、２０Ｂ、２０Ｃ、２０Ｄ  情報処理装置（サーバ）
１１０、２１０  処理装置（ＣＰＵ）
１２０、２２０  ネットワーク通信インタフェース
１３０、２３０  メモリ
１３１、２３１  オペレーティングシステム
１３２、２３２  ネットワーク通信モジュール
１３３  画像関連データ
１３４  テキスト関連データ
１３５  検索制御制御モジュール
１３６  表示制御モジュール
１３７  取引制御モジュール
１５０  ユーザインタフェース
１６０  撮像装置
１７０、２７０  通信バス
２３３  物体データ
２３４  音声認識モジュール
２３５  自然言語処理モジュール
２３６  物体検出モジュール
２３７  検索処理モジュール
２３８  電子商取引モジュール
【図１】
2020013594.tif 000003
【図２】
2020013594.tif 000004
【図３】
2020013594.tif 000005
【図４】
2020013594.tif 000006
【図５】
2020013594.tif 000007
【図６】
2020013594.tif 000008
【図７】
2020013594.tif 000009
【図８】
2020013594.tif 000010