IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本放送協会の特許一覧

特許7596105視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム
<>
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図1
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図2
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図3
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図4
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図5
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図6
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図7
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図8
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図9
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図10
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図11
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図12
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図13
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図14
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図15
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図16
  • 特許-視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-29
(45)【発行日】2024-12-09
(54)【発明の名称】視聴状態推定装置、ロボットシステム、視聴状態推定方法及び視聴状態推定プログラム
(51)【国際特許分類】
   G06T 7/70 20170101AFI20241202BHJP
   G06T 7/00 20170101ALI20241202BHJP
   B25J 13/00 20060101ALI20241202BHJP
【FI】
G06T7/70 B
G06T7/00 660Z
B25J13/00 Z
【請求項の数】 10
(21)【出願番号】P 2020162380
(22)【出願日】2020-09-28
(65)【公開番号】P2022055029
(43)【公開日】2022-04-07
【審査請求日】2023-08-28
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100120891
【弁理士】
【氏名又は名称】林 一好
(72)【発明者】
【氏名】星 祐太
(72)【発明者】
【氏名】萩尾 勇太
(72)【発明者】
【氏名】上村 真利奈
(72)【発明者】
【氏名】金子 豊
【審査官】長谷川 素直
(56)【参考文献】
【文献】特開2015-082247(JP,A)
【文献】特開2018-005892(JP,A)
【文献】特開2018-180472(JP,A)
【文献】特開2016-100033(JP,A)
【文献】特開2020-119364(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
H04N 17/00
H04N 21/00-21/858
B25J 13/00
(57)【特許請求の範囲】
【請求項1】
ロボットの周囲を撮像した画像から合成された、全方位のパノラマ画像を取得するパノラマ画像部と、
前記パノラマ画像の各画素と対応した距離データを画素値とする距離パノラマ画像を生成する距離パノラマ画像部と、
前記パノラマ画像から、テレビ位置を検出するテレビ検出部と、
前記パノラマ画像から、視聴者の顔位置を検出する視聴者検出部と、
前記距離パノラマ画像から、前記テレビ位置及び前記顔位置における距離をそれぞれ取得する距離取得部と、
前記パノラマ画像のサイズ、前記テレビ位置及び前記顔位置に基づいて、前記ロボットから見たテレビと視聴者との間の角度を算出することにより、前記ロボット、前記視聴者及び前記テレビの位置関係を特定し、前記顔位置の画像から得られる前記視聴者の顔方向角度に基づいて、前記パノラマ画像から前記視聴者の視聴方向角度にある視聴方向画像を取得する視聴方向検出部と、
前記視聴方向画像に含まれる物体を検出し、当該物体の種類に基づいて、前記視聴者の状態を判定する視聴状態判定部と、を備える視聴状態推定装置。
【請求項2】
前記視聴方向検出部は、前記視聴者から視聴方向位置までの距離を、前記ロボットから前記視聴者までの距離と、前記ロボットから前記視聴方向位置までの距離との和で近似する請求項1に記載の視聴状態推定装置。
【請求項3】
前記視聴状態判定部は、前記視聴者の状態の一定時間内における統計情報に基づいて、視聴状態を算出する請求項1又は請求項2に記載の視聴状態推定装置。
【請求項4】
前記視聴状態判定部は、前記視聴状態として、前記テレビを視聴している割合を示す視聴度を算出する請求項3に記載の視聴状態推定装置。
【請求項5】
前記視聴状態判定部は、前記視聴状態として、前記テレビを見ている状態、及び他者を見ている状態含む複数の状態のいずれであるかを判定する請求項3に記載の視聴状態推定装置。
【請求項6】
請求項4に記載の視聴状態推定装置と、
前記視聴状態推定装置から出力された前記視聴度を、所定の閾値と比較した結果により、前記ロボットの動作を制御する動作制御部と、を備えるロボットシステム。
【請求項7】
前記動作制御部は、前記所定の閾値を複数設け、前記視聴度を当該複数の閾値と比較した結果により、前記ロボットの制御を段階的に変更する請求項6に記載のロボットシステム。
【請求項8】
請求項5に記載の視聴状態推定装置と、
前記視聴状態推定装置から出力された前記複数の状態の区分に応じて、前記ロボットの動作を制御する動作制御部と、を備えるロボットシステム。
【請求項9】
ロボットの周囲を撮像した画像から合成された、全方位のパノラマ画像を取得するパノラマ画像生成ステップと、
前記パノラマ画像の各画素と対応した距離データを画素値とする距離パノラマ画像を生成する距離パノラマ画像生成ステップと、
前記パノラマ画像から、テレビ位置を検出するテレビ検出ステップと、
前記パノラマ画像から、視聴者の顔位置を検出する視聴者検出ステップと、
前記距離パノラマ画像から、前記テレビ位置及び前記顔位置における距離をそれぞれ取得する距離取得ステップと、
前記パノラマ画像のサイズ、前記テレビ位置及び前記顔位置に基づいて、前記ロボットから見たテレビと視聴者との間の角度を算出することにより、前記ロボット、前記視聴者及び前記テレビの位置関係を特定し、前記顔位置の画像から得られる前記視聴者の顔方向角度に基づいて、前記パノラマ画像から前記視聴者の視聴方向角度にある視聴方向画像を取得する視聴方向検出ステップと、
前記視聴方向画像に含まれる物体を検出し、当該物体の種類に基づいて、前記視聴者の状態を判定する視聴状態判定ステップと、をコンピュータが実行する視聴状態推定方法。
【請求項10】
請求項1から請求項5のいずれかに記載の視聴状態推定装置としてコンピュータを機能させるための視聴状態推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、テレビ視聴者の状態を推定するための装置、方法及びプログラムに関する。
【背景技術】
【0002】
従来、視聴者と一緒にテレビ番組等の映像を視聴するロボットにおいて、視聴者の視聴状態に応じて動作を制御する技術が研究されている。
視聴状態を推定する技術として、例えば、テレビを視聴するような室内において、視聴者が向いている方向を検出するために、カメラを設置して観測する方法、又は視聴者に眼鏡型の視線方向取得装置を装着させて、視聴者の視線方向データを取得する方法がある。
【0003】
さらに、推定された視聴状態に応じた制御として、例えば、特許文献1では、ユーザの視線方向を検出し、画像投影デバイスから映像を投影する表示位置を決定すると共に、表示画像の幾何補正を行い表示させることで、ユーザが見やすい画像を表示する装置が提案されている。
また、特許文献2では、コンテンツを視聴中の視聴者を含む画像から、視聴状態を検出し、視聴しているコンテンツの開始時からの経過時間に関連付ける装置が提案されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2017-55178号公報
【文献】特許第6614547号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
視聴状態を推定する従来の方法のうち、天井、壁面、又はテレビの上等にカメラを設置した実験室のような特定の場所で、視聴者の映像から視線方向を推定する方法は、実験的に一定期間のみ実施されるものである。したがって、日常的な視聴環境において視聴者の視線方向を推定することは困難である。
また、眼鏡型の視線方向取得装置を視聴者の頭部に装着させる方法は、日常的な視聴状況とは異なり、装着することによる違和感が生じ視聴の負担ともなる。したがって、これも日常的な視聴環境においては困難な方法である。
【0006】
特許文献1の方法では、室内の天井部分の四隅に撮像デバイスが設けられ、撮像デバイスから取得される撮像画像に基づき、ユーザの視線方向が推定される。この場合、室内に撮像デバイスを設置する必要があるが、家庭の室内に設置することは困難である。また、室内全体を撮像するために撮像デバイスが複数台必要である。
【0007】
特許文献2の方法では、視聴者を含むカメラ画像から抽出した視聴者のバイタル情報に基づいて、視聴者の視聴状態を判定しているが、カメラをディスプレイ上部等に設置する必要があり、日常的な視聴状況とは異なってしまう。また、この方法では、視聴者がディスプレイではなく他者の方を向いて会話をしている等の情報は取得できず、実際には視聴していないときのバイタル情報をも反映させてしまい適切な視聴状態を判定できなくなってしまう。
【0008】
本発明は、追加のカメラ等の装置を用いることなく、ロボットにおいて視聴者の視聴状態を推定できる視聴状態推定装置、視聴状態推定方法及び視聴状態推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係る視聴状態推定装置は、ロボットの周囲を撮像した画像から合成された、全方位のパノラマ画像を取得するパノラマ画像部と、前記パノラマ画像の各画素と対応した距離データを画素値とする距離パノラマ画像を生成する距離パノラマ画像部と、前記パノラマ画像から、テレビ位置を検出するテレビ検出部と、前記パノラマ画像から、視聴者の顔位置を検出する視聴者検出部と、前記距離パノラマ画像から、前記テレビ位置及び前記顔位置における距離をそれぞれ取得する距離取得部と、前記パノラマ画像のサイズ、前記テレビ位置及び前記顔位置に基づいて、前記ロボットから見たテレビと視聴者との間の角度を算出することにより、前記ロボット、前記視聴者及び前記テレビの位置関係を特定し、前記顔位置の画像から得られる前記視聴者の顔方向角度に基づいて、前記パノラマ画像から前記視聴者の視聴方向角度にある視聴方向画像を取得する視聴方向検出部と、前記視聴方向画像に含まれる物体を検出し、当該物体の種類に基づいて、前記視聴者の状態を判定する視聴状態判定部と、を備える。
【0010】
前記視聴方向検出部は、前記視聴者から視聴方向位置までの距離を、前記ロボットから前記視聴者までの距離と、前記ロボットから前記視聴方向位置までの距離との和で近似してもよい。
【0011】
前記視聴状態判定部は、前記視聴者の状態の一定時間内における統計情報に基づいて、視聴状態を算出してもよい。
【0012】
前記視聴状態判定部は、前記視聴状態として、前記テレビを視聴している割合を示す視聴度を算出してもよい。
【0013】
前記視聴状態判定部は、前記視聴状態として、前記テレビを見ている状態、及び他者を見ている状態含む複数の状態を判定してもよい。
【0014】
本発明に係るロボットシステムは、前記視聴状態推定装置と、前記視聴状態推定装置から出力された前記視聴度を、所定の閾値と比較した結果により、前記ロボットの動作を制御する動作制御部と、を備える。
【0015】
前記動作制御部は、複数の閾値に基づいて、前記ロボットの制御を段階的に変更してもよい。
【0016】
本発明に係るロボットシステムは、前記視聴状態推定装置と、前記視聴状態推定装置から出力された前記複数の状態の区分に応じて、前記ロボットの動作を制御する動作制御部と、を備える。
【0017】
本発明に係る視聴状態推定方法は、ロボットの周囲を撮像した画像から合成された、全方位のパノラマ画像を取得するパノラマ画像生成ステップと、前記パノラマ画像の各画素と対応した距離データを画素値とする距離パノラマ画像を生成する距離パノラマ画像生成ステップと、前記パノラマ画像から、テレビ位置を検出するテレビ検出ステップと、前記パノラマ画像から、視聴者の顔位置を検出する視聴者検出ステップと、前記距離パノラマ画像から、前記テレビ位置及び前記顔位置における距離をそれぞれ取得する距離取得ステップと、前記パノラマ画像のサイズ、前記テレビ位置及び前記顔位置に基づいて、前記ロボットから見たテレビと視聴者との間の角度を算出することにより、前記ロボット、前記視聴者及び前記テレビの位置関係を特定し、前記顔位置の画像から得られる前記視聴者の顔方向角度に基づいて、前記パノラマ画像から前記視聴者の視聴方向角度にある視聴方向画像を取得する視聴方向検出ステップと、前記視聴方向画像に含まれる物体を検出し、当該物体の種類に基づいて、前記視聴者の状態を判定する視聴状態判定ステップと、をコンピュータが実行する。
【0018】
本発明に係る視聴状態推定プログラムは、前記視聴状態推定装置としてコンピュータを機能させるためのものである。
【発明の効果】
【0019】
本発明によれば、追加のカメラ等の装置を用いることなく、ロボットにおいて視聴者の視聴状態を推定できる。
【図面の簡単な説明】
【0020】
図1】実施形態における視聴状態推定装置が組み込まれたロボットの利用シーンを説明する図である。
図2】実施形態における視聴状態推定装置の機能構成を示すブロック図である。
図3】実施形態における合成位置データを例示する図である。
図4】実施形態における距離パノラマ画像部の機能構成を示す図である。
図5】実施形態における距離画像合成部の動作内容を例示する図である。
図6】実施形態における重複区間算出部の動作内容を例示する図である。
図7】実施形態における距離画像データベースを例示する図である。
図8】実施形態における距離パノラマ画像データベースを例示する図である。
図9】実施形態における視聴者検出部の機能構成を示す図である。
図10】実施形態における視聴方向検出部の機能構成を示す図である。
図11】実施形態におけるロボット、テレビ、視聴者の位置関係を示す図である。
図12】実施形態におけるテレビ-視聴者間の角度の算出方法を説明する図である。
図13】実施形態における顔方向角度を説明する図である。
図14】実施形態におけるロボット、視聴者、及び視聴方向位置の位置関係を示す図である。
図15】実施形態における視聴方向画像の取得方法を例示する図である。
図16】実施形態における視聴状態判定部の機能構成を示す図である。
図17】実施形態における視聴度の算出例を示す図である。
【発明を実施するための形態】
【0021】
以下、本発明の実施形態の一例について説明する。
図1は、本実施形態における視聴状態推定装置10が組み込まれたロボット1の利用シーンを説明する図である。
【0022】
ロボット1は、例えば、テレビを視聴する視聴者の側にある卓上等に設置される。ロボット1は、視聴状態推定装置10の他、撮像部20及び距離検出部30を備え、さらに、視聴状態推定装置10により推定された視聴状態に応じて発話等の動作を行う動作制御部40を備える。
【0023】
視聴状態推定装置10は、撮像部20から得られるロボット周囲の画像データと、距離検出部30から得られる距離データとを取得し、後述の手法により、ロボット1からテレビまでの距離、ロボット1から視聴者までの距離、視聴者の視聴方向を求め、さらに、視聴者の視聴方向の画像を取得することで視聴状態を推定する。
【0024】
撮像部20は、ロボット1に搭載され、画像を取得するためのカメラであり、モータにより水平方向に回転し、ロボット1の周囲を撮影するものであってよい。
なお、撮像部20は、回転しつつ画像を取得する手法に限らず、例えば、複数個のカメラからなるカメラアレイをロボット1に搭載して画像を取得するものであってもよい。
【0025】
距離検出部30は、照射部から照射した赤外線光と、対象物に反射して受光部へ到達した光に基づいて距離データを取得する。赤外線の照射方式は、例えば、パターン方式又はTOF(Time Of Flight)方式による。距離検出部30は、撮像部20により画像を取得した際に、時刻同期して、また、画像の各画素に対応する方向の距離データを取得する。
【0026】
ここで、視聴状態は、例えば、テレビを見ている、他者を見ている、その他を見ている等、視聴方向の区分を示す。
動作制御部40は、視聴状態推定装置10により推定された視聴状態に応じて、ロボット1による発話等の動作を変化させる。
【0027】
図2は、本実施形態における視聴状態推定装置10の機能構成を示すブロック図である。
視聴状態推定装置10は、制御部、記憶部、及び入出力インタフェース等を備えた情報処理装置(コンピュータ)であり、記憶部に格納されたソフトウェア(視聴状態推定プログラム)を制御部が実行することにより、次の各機能部として動作する。
視聴状態推定装置10は、パノラマ画像部11と、距離パノラマ画像部12と、視聴者検出部13と、テレビ検出部14と、距離取得部15と、視聴方向検出部16と、視聴状態判定部17とを備える。
【0028】
パノラマ画像部11は、撮像部20により取得したロボット1の周囲の複数枚の画像を重ね合わせて、ロボット1から見た水平全方位のパノラマ画像を生成する。なお、パノラマ画像を生成するためのソフトウェアとして、オープンソースOpenCV・Stitcherクラスを利用できるが、生成手法はこれに限られない。
【0029】
また、パノラマ画像部11は、複数枚の画像を合成した際の合成位置データDcを出力する。
図3は、本実施形態における合成位置データDcを例示する図である。
合成位置データDcは、パノラマ画像を生成するとき、画像を張り合わせた複数枚の画像の番号と、合成位置の座標とで構成される。
例えば、1番目の画像の座標(150,10)に2番目の画像の座標(0,0)が張り合わされ、n番目の画像の座標(x,y)に1番目の画像の座標(0,0)が張り合わされる。
また、この例では、同期して取得された距離画像の番号が対応付けられている。
【0030】
距離パノラマ画像部12は、距離検出部30で取得した距離データを用いて、パノラマ画像部11で生成されるパノラマ画像と同様に、距離データを画素値とした距離パノラマ画像を生成する。
【0031】
図4は、本実施形態における距離パノラマ画像部12の機能構成を示す図である。
距離パノラマ画像部12は、距離画像合成部121と、重複区間算出部122とを備え、合成位置データDcが入力され、距離パノラマ画像データDpを出力する。
【0032】
距離画像合成部121は、パノラマ画像部11から入力された合成位置データDcを用いて、パノラマ画像部11で合成された複数枚の画像と同位置に、距離検出部30より得られた複数枚の距離画像を合成する。
ここで、撮像された画像の各画素に対応する距離データは、距離画像データベース12Aに保存されている。なお、距離画像データベース12Aは、視聴状態推定装置10の記憶部に格納されてもよいし、ロボット1の各部がアクセス可能な共通の記憶部に設けられてもよい。
【0033】
重複区間算出部122は、合成した距離画像が重複する区間(画素)において、重複している複数個の距離データを平均し、画素毎の距離データを決定する。
なお、距離データの決定方法はこれに限られず、いずれかの距離画像のデータを代表として決定してもよい。
【0034】
図5は、本実施形態における距離画像合成部121の動作内容を例示する図である。
例えば、撮像部20で画像1と画像2とが順に取得され、画像2を画像1における合成位置Pc1(150,0)で合成した場合、距離画像合成部121は、画像1及び画像2と同時に取得された距離画像1及び距離画像2も同様に合成し、距離画像データベース12Aから取得した距離データを各画素にマッピングする。
【0035】
図6は、本実施形態における重複区間算出部122の動作内容を例示する図である。
例えば、前述の図5のように距離画像1と距離画像2とを合成するとき、距離画像1における座標P(150,159)の距離データが1.50、距離画像2における座標P(0,159)の距離データが1.60であったとする。この場合、重複区間算出部122は、平均値(1.50+1.60)/2=1.55を、距離パノラマ画像の位置(150,159)における距離データとして決定する。
あるいは、重複区間算出部122は、距離画像2のP(0,159)の距離データ1.60を、距離パノラマ画像の距離データとして採用してもよい。
【0036】
同様に、重複区間算出部122は、重複区間の全体について、各画素に対応する距離データを決定する。
決定された距離データは、記憶部の距離パノラマ画像データベース12Bに記憶される。
【0037】
図7は、本実施形態における距離画像データベース12Aを例示する図である。
距離画像データベース12Aでは、距離画像番号n毎に、距離画像内の位置(座標x,y)と、距離データlとが対応付けられ、各距離画像における各画素の距離データが格納されている。
【0038】
図8は、本実施形態における距離パノラマ画像データベース12Bを例示する図である。
距離パノラマ画像データベース12Bには、パノラマ画像の画像番号n、位置(座標x,y)、距離データlで構成される距離パノラマ画像データが格納されている。
【0039】
視聴者検出部13は、パノラマ画像部11により生成されたパノラマ画像から、視聴者の顔位置を検出し、パノラマ画像上の顔位置を取得する。
【0040】
図9は、本実施形態における視聴者検出部13の機能構成を示す図である。
視聴者検出部13は、人検出部131と、顔検出部132とを備える。
【0041】
人検出部131は、パノラマ画像部11より取得したパノラマ画像から人検出を行う。人検出の手段として、例えば、オープンソースのOpenCV(Haarcascade検出器fullbodyモデル)又はFaster-RCNN等のソフトウェアを利用できるが、検出手法はこれらに限られない。
人検出部131は、人を検出した場合、視聴者フラグf=1を、人を検出しなかった場合、視聴者フラグf=0を出力する。
【0042】
顔検出部132は、人検出部131により人、すなわち視聴者が検出されたとき(f=1)、パノラマ画像部11により生成されたパノラマ画像から顔検出を行い、パノラマ画像上の顔位置を取得する。一方、視聴者が検出されなかったとき(f=0)には、顔検出部132は、顔検出を行わないこととし、撮像部20から新たな画像を取得する処理に進み高速化を図る。
顔検出の手段には、例えば、オープンソースのOpenCV(Haar-cascade検出器)又はOpenFace等のソフトウェアを利用できるが、検出手法はこれらに限られない。
【0043】
ここで、顔位置は、顔部分が四角枠で検出され、顔検出部132は、四角枠の始点Psf(xsf,ysf)及び終点Pef(xef,yef)から中心点P(x,y)を算出する。顔の中心点Pは、顔位置の距離取得に用いられる。
顔検出部132は、顔を検出した場合に顔フラグf=1を、顔を検出しなかった場合に顔フラグf=0を出力する。
【0044】
テレビ検出部14は、パノラマ画像部11により生成されたパノラマ画像からテレビ検出を行い、パノラマ画像上のテレビ位置を取得する。
テレビ検出の手段には、例えば、オープンソースのFaster-RCNN等のソフトウェアを利用できるが、検出手法はこれに限られない。
【0045】
ここで、テレビ位置は、テレビ部分が四角枠で検出され、テレビ検出部14は、四角枠の始点Pstv(xstv,ystv)及び終点Petv(xetv,yetv)から中心点Ptv(xtv,ytv)を算出する。テレビの中心点Ptvは、テレビ位置の距離取得に用いられる。
テレビ検出部14は、テレビを検出した場合にテレビフラグftv=1を、テレビを検出しなかった場合にテレビフラグftv=0を出力する。
【0046】
距離取得部15は、検出された視聴者及びテレビの各位置における距離データを距離パノラマ画像から取得する。
具体的には、距離取得部15は、顔検出部132から顔中心点Pと、テレビ検出部14からテレビ中心点Ptvとを取得し、距離パノラマ画像データベース12Bに格納している距離データのうち、ロボット1から視聴者の顔までの距離dと、ロボット1からテレビまでの距離dtvとを取得する。
例えば、顔中心点Pが(1000,200)の場合、距離パノラマ画像における点(1000,200)における距離データldを取得し、d=lとする。テレビ中心点Ptvが(3000,150)の場合、パノラマ距離画像における点(3000,150)における距離データlを取得し、dtv=lとする。
【0047】
視聴方向検出部16は、ロボット1から視聴者の顔までの距離、ロボット1からテレビまでの距離、及びロボット1から見た視聴者とテレビとの間の角度を取得することにより、ロボット1、視聴者及びテレビの位置関係を特定し、視聴者の顔方向角度から視聴方向及び視聴画像を取得する。
【0048】
図10は、本実施形態における視聴方向検出部16の機能構成を示す図である。
視聴方向検出部16は、テレビ-視聴者間角度算出部161と、テレビ-視聴者間距離算出部162と、ロボット-テレビ間角度算出部163と、顔方向角度取得部164と、視聴方向角度算出部165と、視聴方向画像取得部166とを備える。
【0049】
図11は、本実施形態におけるロボット1、テレビ、視聴者の位置関係を示す図である。
ロボット1(点A)、視聴者(点B)及びテレビ(点C)からなる三角形において、BC=r、AB=r、AC=rが固定されている。
また、ロボット1から見た視聴者とテレビとの間の角度(∠BAC)=θ、視聴者から見たロボットとテレビとの間の角度∠ABC=θ、テレビから見たロボット1と視聴者との間の角度∠ACB=θtvが固定されている。
【0050】
この位置関係において、視聴者がロボット1から顔方向角度θ’ずれた方向に顔を向けている場合、視聴者は、視聴方向位置(点D)を見ていると仮定する。ここで、AD=AC=rと仮定する。また、BD=r’である。
このとき、ロボット1から見た視聴者と視聴方向位置との間の角度∠BAD=θ’となる。
【0051】
テレビ-視聴者間角度算出部161は、ロボット1から見たテレビと視聴者との間の角度θを算出する。
図12は、本実施形態におけるテレビ-視聴者間の角度θの算出方法を説明する図である。
【0052】
まず、テレビ-視聴者間角度算出部161は、顔中心点P(x,y)及びテレビ中心点Ptv(xtv,ytv)から、パノラマ画像におけるテレビと視聴者との間の画素数dを次のように算出する。
=|xtv-x
次に、テレビ-視聴者間角度算出部161は、パノラマ画像のサイズ(X,Y)から、パノラマ画像におけるテレビと視聴者との間の画素数dを次のように算出する。
=|X-d
【0053】
そして、テレビ-視聴者間角度算出部161は、テレビと視聴者との間の画素数dとdとを比較し、
d=min(d,d
とする。
【0054】
テレビ-視聴者間角度算出部161は、パノラマ画像におけるx軸のサイズXをロボット1の周囲の角度360度に換算し、テレビと視聴者との間の画素数dから、ロボット1から見たテレビと視聴者との間の角度θを次のように算出する。
θ=d×角度a
角度a=360/X
【0055】
例えば、パノラマ画像において、x軸のサイズX=4320、テレビ位置のx軸値xtv=3541、顔位置のx軸値x=713であったとき、ロボット1から見たテレビと視聴者との間の角度θは、次のように算出される。
=3541-713=2828
=4320-2828=1492
d=d=1492
θ=1492×360/4320≒124度
【0056】
テレビ-視聴者間距離算出部162は、ロボット1から見たテレビと視聴者との間の角度θ、ロボット1から視聴者までの距離r=d、ロボット1からテレビまでの距離r=dtvを用いて、テレビと視聴者との間の距離rを次のように算出する。
r=√(r +r -2rcosθ
【0057】
ロボット-テレビ間角度算出部163は、ロボット1とテレビとの間の角度θを、余弦定理を用いて次のように算出する。
=r+r -2rrcosθ
θ=cos-1[(r+r -r )/(2rr)]
【0058】
顔方向角度取得部164は、顔検出部132により検出された顔画像に基づいて、ロボット1から見た視聴者の顔方向角度θ’を推定し、時刻Tと共に取得する。
【0059】
図13は、本実施形態における顔方向角度θ’を説明する図である。
顔方向角度θ’は、視聴者の顔がロボット1に正対している状態(A)を基準とし、(B)のように基準の方向(y軸)から、視聴者の顔が向いている方向(y軸)までの角度である。
なお、顔方向角度θ’を推定するためには、例えば、オープンソースのOpenFace等のソフトウェアを利用できるが、推定手法はこれに限られない。
【0060】
視聴方向角度算出部165は、ロボット1から見た視聴者と、視聴者が見ている先(視聴方向位置)との間の視聴方向角度θ’を、余弦定理を用いて次のように算出する。
=r’+r -2r’rcosθ
r’=r +r -2rcosθ
θ’=cos-1[(r/r)-(r’/r)cosθ’]
ここで、視聴者から視聴方向位置までの距離r’は、例えば、次のように近似して求めることができる。
【0061】
図14は、本実施形態におけるロボット1、視聴者、及び視聴方向位置の位置関係を示す図である。
ここで、ロボット1(点A)は、例えば、視聴者(点B)とテレビとの間のテーブル等に置かれており、視聴方向位置を点Dとしたとき、点Aと線分BDとの距離が十分に近いこととする。
この場合、点Aから線分BDへ下した垂線の足をEとし、BE=r’,DE=r’とすると、
r’=|r -r |/|r’-r’|
に対して、
’≒r,r’≒r
と近似でき、すなわち、
r’=r+r
と算出される。
【0062】
視聴方向画像取得部166は、視聴方向角度θ’、テレビ-視聴者間角度θ、パノラマ画像におけるテレビ中心点Ptv(xtv,ytv)を用いて、視聴方向位置P(x)を次のように算出し、視聴方向画像を取得する。
=xtv-(θ’-θに相当する画素数)
【0063】
このとき、視聴方向画像取得部166は、例えば、撮像部20の水平画角θを画角画素数dに変換し、視聴方向位置P(x)を中心に(x-(d/2)、x+(d/2))、又は(x-(d/2)、x+(d/2)-1)等の範囲の画像を取得する。
=(X/360)×θ
あるいは、視聴方向画像取得部166は、撮像部20による撮像画像のサイズ(画素数)が既知の場合に、この画素数をdとして用いてもよい。
【0064】
図15は、本実施形態における視聴方向画像の取得方法を例示する図である。
例えば、カメラの水平画角θ=40、パノラマ画像のx軸のサイズX=4320、テレビ中心点のx座標xtv=3800、θ’-θ=0の場合、d=(4320/360)×40=480、x=3800-0=3800となるので、視聴方向画像取得部166は、(3800-240、3800+240)=(3560、4040)の範囲の画像を取得する。
また、例えば、θ’-θ=35の場合、d=(4320/360)×40=480、x=3800-((4320/360)×35)=3380となるので、視聴方向画像取得部166は、(3380-240、3380+240)=(3140、3620)の範囲の画像を取得する。
【0065】
また、視聴方向画像取得部166は、テレビ中心点Ptvではなく、視聴者の顔中心点P(x,y)を用いて、次のように視聴方向位置P(x)を算出してもよい。
=x-(θ’に相当する画素数)
【0066】
視聴状態判定部17は、視聴方向画像を一定時間取得し統計処理することにより、視聴者がテレビを視聴しているか否かといった視聴状態を判定する。
本実施形態では、視聴状態として視聴度を定義する。
視聴度は、テレビ視聴時におけるユーザの視聴度合いの指標であり、値が大きいほどテレビを視聴していること、逆に、値が小さいほどテレビを視聴していないことを示す。
【0067】
図16は、本実施形態における視聴状態判定部17の機能構成を示す図である。
視聴状態判定部17は、視聴方向物体検出部171と、視聴度算出部172とを備え、視聴方向画像が入力されることにより、視聴度Iを出力する。
【0068】
視聴方向物体検出部171は、入力された視聴方向画像から物体検出を行い、キーワードを抽出する。物体検出の手段として、例えば、オープンソースのFaster-RCNN等のソフトウェアを利用できるが、検出手法はこれに限られない。
【0069】
視聴度算出部172は、視聴方向物体検出部171で抽出されたキーワードを用いて、視聴者が実際にテレビを視聴している度合いを表す指標として、視聴度I(T)を算出する。
【0070】
図17は、本実施形態における視聴度I(T)の算出例を示す図である。
時刻Tにおいて、視聴方向物体検出部171により「テレビ」、「テレビジョン」、「モニタ」等の映像視聴デバイスを示す種類のキーワードが抽出された場合、視聴度算出部172は、視聴状態を「テレビ」とする。また、一緒にテレビを視聴している人が検出された場合、視聴度算出部172は、視聴状態を「他者」とする。これら以外の場合の視聴状態は、「その他」と定義される。
【0071】
本実施形態では、一定時間Tにおいて、検出回数に占める「テレビ」の視聴状態の割合を視聴度Iとした。図17の例では、視聴度I=0.6であり、他者又はその他に視線を移しつつも、テレビに注目していることが分かる。
【0072】
この場合、動作制御部40は、例えば、ロボットが視聴者へ話し掛けるための閾値を0.5とし、視聴度Iが所定以上に高いことから、ロボット1が視聴者へ話し掛ける制御を行ってもよい。
また、例えば、算出した視聴度Iが0.8等、「テレビ」の視聴状態割合が特に高かったときは、集中してテレビを視聴している可能性が高いため、動作制御部40は、ロボット1が視聴者に話し掛けるのを控えるように制御してもよい。
【0073】
逆に、Iが0.3、すなわちテレビ方向を視聴している時間が10分当たり3分間程度のように、テレビの視聴状態割合が低かったときは、テレビへの関心を抱かせるために、動作制御部40は、ロボット1が視聴者への話し掛けや身振り手振りを用いた動作を行うように制御してもよい。
例えば、視聴者がテレビ方向を見ていないときに、ロボット1が視聴者や周囲を見まわす動作をしながら、「この場所にぜひとも行ってみたい。」、「チャンネルを変えてみますか?」等、テレビへの関与を促す発話をする。
このように、閾値を段階的に設定し、例えば、Iが高い時は発話のみ、Iが低い時は発話と共に身振り手振りによる動作を実施する等、動作制御部40は、視聴者毎に適宜ロボット1を制御してよい。
【0074】
また、視聴状態として、「テレビ」、「他者」、「その他」といった視聴方向を示す複数種類の区分が取得された場合、動作制御部40は、この区分に応じてロボット1の動作を変更してもよい。例えば、テレビ番組の内容に関して、開示、質問、確認、情報、応答等の発話種別それぞれの発話頻度が次のように調整されてもよい。
【0075】
視聴方向が「テレビ」であることが多い場合、視聴者はテレビを注視している状態と考えられるので、動作制御部40は、視聴者の中止状態を妨げるような、回答を求める質問又は確認の発話頻度を低くする。
視聴方向が「他者」であることが多い場合、視聴者は他者とのコミュニケーションを多く取っている状態と考えられるので、動作制御部40は、他者とのコミュニケーションの邪魔をしないように、全ての発話種別の発話頻度を低くする。
視聴方向が「その他」であることが多い場合、視聴者はテレビを注視していないし、他者とのコミュニケーションも取っていないと考えられるので、動作制御部40は、テレビ視聴への関心を促すため、開示又は質問の発話頻度を高くする。
【0076】
本実施形態によれば、視聴状態推定装置10は、ロボット1の周囲全方位のパノラマ画像から視聴者の顔及びテレビを検出し、両者の画像上の距離とパノラマ画像のサイズとから、ロボット1から見たテレビと視聴者との間の角度を算出する。さらに、視聴状態推定装置10は、検出したテレビ及び視聴者のロボット1からの距離を測定することにより、ロボット1、視聴者及びテレビの位置関係を特定する。そして、視聴状態推定装置10は、顔位置の画像から得られる視聴者の顔方向角度に基づいて、パノラマ画像から視聴者の視聴方向角度にある視聴方向画像に含まれる物体を検出し、この物体の種類に基づいて、視聴者の状態を判定する。
【0077】
したがって、視聴状態推定装置10は、家庭内の天井等にカメラ等の撮像デバイスを設置することなく、また、視聴者に視線方向取得装置を装着させることなく、卓上等に設置したロボット1において、パノラマ画像に基づいて、視聴方向画像内の物体を検出することで視聴者の視聴状態を推定できる。
この結果、ロボット1は、視聴者がテレビを視聴しているときは話し掛けない配慮をしたり、テレビを視聴していないときはテレビへの関与を促す発話や、身振り手振りの仕草をしたりといった、視聴状態に応じた動作を実現できる。
【0078】
視聴状態推定装置10は、視聴者から視聴方向位置までの距離を、ロボット1から視聴者までの距離と、ロボット1から視聴方向位置までの距離との和で近似することにより、容易に視聴方向位置を特定して、視聴状態を推定できる。
【0079】
視聴状態推定装置10は、視聴者の状態の一定時間内における統計情報に基づいて、視聴状態を算出するので、視聴方向位置の算出誤差を低減し、判定される視聴状態の信頼性を向上できる。
【0080】
視聴状態推定装置10は、視聴状態として、テレビを視聴している割合を示す視聴度を算出するので、動作制御部40は、視聴者が実際にテレビを注視している度合いを把握し、この度合いに応じてロボット1の動作を視聴者の状態に適切に合わせることができる。
このとき、動作制御部40は、算出された視聴度を所定の閾値と比較した結果により、容易にロボット1の動作を制御できる。
また、動作制御部40は、複数の閾値に基づいて制御を段階的に変更することにより、ロボット1の動作バリエーションを視聴者の状態に合わせて適切に設定できる。
【0081】
視聴状態推定装置10は、視聴状態として、テレビを見ている状態、及び他者を見ている状態含む複数の状態を判定するので、動作制御部40は、視聴者が見ている物体の種類を把握し、この種類に応じてロボット1の動作を視聴者の状態に適切に合わせることができる。
【0082】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
【0083】
前述の実施形態では、視聴状態推定装置10は、視聴方向画像の物体検出により視聴者が見ている物体の種類を推定したが、テレビを見ているか否かに関しては、視聴者の顔方向角度に基づいて判定されてもよい。
具体的には、例えば、顔方向角度θ’が、
θ-α<θ’<θ+α
の条件を満たす場合に、視聴者がテレビの方向を向いていると判断してもよい。なお、αは、テレビの大きさ及び視聴者からの距離に基づいて設定される調整角度(例えば、テレビの視角の半分)である。
【0084】
また、前述の実施形態では、顔方向角度θ’に基づいて視聴方向角度θ’を算出したが、算出方法はこれに限られない。
例えば、θ’が適切に取得できない場合には、
θ’=cos-1[(r +r -r’)/(2r’r)]
のように、θ’を用いずにθ’を求めてもよい。
【0085】
また、前述の実施形態では、ロボット1から視聴方向位置までの距離をロボット1からテレビまでの距離rと等しいとしたが、仮定する条件はこれに限られない。
例えば、θ’の正負又は値の範囲等に基づいて、該当の距離にrを用いたり、rを用いたり、あるいは他の値を用いたりと、状況に応じて適宜設定されてもよい。
【0086】
本実施形態では、主に視聴状態推定装置10の構成と動作について説明したが、本発明はこれに限られず、各構成要素を備え、視聴状態を推定するための方法、又はプログラムとして構成されてもよい。
【0087】
さらに、視聴状態推定装置10の機能を実現するためのプログラムをコンピュータで読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。
【0088】
ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータで読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0089】
さらに「コンピュータで読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでもよい。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【符号の説明】
【0090】
1 ロボット
10 視聴状態推定装置
11 パノラマ画像部
12 距離パノラマ画像部
12A 距離画像データベース
12B 距離パノラマ画像データベース
13 視聴者検出部
14 テレビ検出部
15 距離取得部
16 視聴方向検出部
17 視聴状態判定部
20 撮像部
30 距離検出部
40 動作制御部
121 距離画像合成部
122 重複区間算出部
131 人検出部
132 顔検出部
161 テレビ-視聴者間角度算出部
162 テレビ-視聴者間距離算出部
163 ロボット-テレビ間角度算出部
164 顔方向角度取得部
165 視聴方向角度算出部
166 視聴方向画像取得部
171 視聴方向物体検出部
172 視聴度算出部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17