図2は、一実施形態に係る注目領域推定装置の機能ブロック図である。注視領域推定装置10は、検出部1、検索部2、候補抽出部3、分析推定部4及び記憶部5を備える。なお、図2では各部の間にデータ授受の流れを示す複数の矢印が描かれているが、実施形態によっては当該矢印で示されるうちの一部のデータ授受は省略される。各部の概略的な機能は以下の通りである。
検出部1では、入力映像の各フレームを読み込み、当該フレーム内における例えば読み物、読者、テーブル、椅子、ソファーといったような個別の対象(オブジェクト)を検出すると共に、当該検出された対象の領域を特定した結果としての検出対象の領域情報を、線L11,L12,L13でそれぞれ示すように検索部2、分析推定部4及び候補抽出部3へと出力する。
なお、実施形態によっては当該線L11,L12,L13で示されるうちの一部分の出力が省略されてもよい。また、入力映像の内容に応じて検出部1で検出されうる対象は様々であり、詳細を後述する通り検出される対象に応じた種々の実施形態が(特に、分析推定部4において)可能である。いずれの実施形態においても、注視領域推定装置10が推定結果を得るためには、少なくとも読み物の領域は検出部1において検出されている必要がある。
検索部2は、検出部1で抽出された対象領域のうち読み物の領域に対して画像検索を行うことで、当該読み物の領域がいずれの見開きページに該当するかの検索結果を得る。実施形態に応じて、当該検索結果は線L21で示すように注視領域推定装置10からの出力とされてもよいし、線L22で示すように候補抽出部3へと出力されてもよい。線L21,L22で示される両方の出力がなされてもよい。一実施形態では、検索部2における画像検索処理は、読者が読み物のページをめくっている様子が映された入力映像の時系列上の各フレームにおける検索結果を、当該ページめくりの方向を考慮して統合することによって、画像検索結果を得るような処理とすることができる。
記憶部5は、検索部2が上記の画像検索を行うために参照するデータベースであり、各見開きページの画像に対する特徴情報(例えば、各特徴点と各特徴点における局所特徴量の情報。なお、以下ではこれらを一例としての特徴情報として取り上げて説明する。)を記憶しておくことで、当該特徴情報を検索部2の参照に供する。記憶部5は注視領域推定装置10には含まれない外部サーバ等として構成されていてもよく、検索部2が当該外部サーバ等とネットワーク経由で通信して特徴情報を取得するようにしてもよい。
候補抽出部3は、検出部1で抽出された対象領域のうち読み物の領域の中の、どの領域が注目領域に該当するかの推定結果を分析推定部4で得るために用いる候補情報を抽出して、当該候補情報を分析推定部4へと出力する。
一実施形態では、候補抽出部3は線L22で示されるように検索部2での検索結果における見開きページの画像情報から顕著度マップを求め、当該求めた顕著度マップに基づく候補情報を分析推定部4へと出力する。別の一実施形態では、候補抽出部3は線L3で示されるように入力映像(検出部1に入力されたのと同様の入力映像)を入力として用いて、当該入力映像のフレームに対して視線推定技術を適用して得られる視線方向の推定結果に基づく候補情報を分析推定部4へと出力する。
分析推定部4は、検出部1で抽出した読み物の領域(左右の見開きページとして構成された領域)に関して、カメラ(検出部1に入力された映像を撮影したカメラ)の姿勢のもとでの左右ページの向き(すなわち、画像上での左右ページの向き)を、読み物の様々な姿勢に応じて分析し、当該分析した左右ページの向きと候補抽出部3で得られた候補情報とに基づいて、 読者が読み物の左右ページのどの部分に注目しているかを推定し、当該推定結果を注視領域推定装置10の出力として出力する。
一実施形態では、分析推定部4において左右ページの向きを分析する際に、線L4で示されるように入力映像(検出部1に入力されたのと同様の入力映像)を解析して得られる読み物の読者の人体関節の情報を用いるようにしてもよい。
以上、図2の各部の処理内容の概略を説明した。以下では当該各部の処理内容の詳細を説明する。
検出部1では、入力映像の各フレームに撮影されている各対象を検出すると共に、検出された各対象がフレーム内で占める領域の情報を得る。検出部1における当該検出には例えば前掲の非特許文献1に開示されているような既存手法を利用することができる。
図3は、検出部1の検出処理を適用した結果の模式例を示す図である。図3にて[1]には、図1に例示したのと同様のフレームF1から人物が矩形の領域PR1として、本(読み物)が矩形の領域BR1として、テーブルが矩形の領域TR1として、それぞれ検出された例が示されている。図3の[2]は、[1]のような検出結果を与えるデータ形式の例(ただし、[2]の例と[1]の例とは同じ検出結果に関するものではない)が表形式にて示されている。[2]ではすなわち、表の見出し欄に示されるように対象IDが付与された各対象に関してその検出される際の位置、大きさ、検出結果の類似度を与えることで検出結果が構成されている。ここで、位置は画像内の座標(x,y)で、大きさは矩形の幅w及び高さhで与えられている。[2]では3つの検出候補の対象として本、テーブル及び人物がそれぞれ所定閾値を超える類似度が求まったことから検出されたものとして判定され、フレーム内での矩形としての位置及び大きさが図示される通りに得られている。[2]ではまた、2つの検出候補の対象としてソファー及び椅子は、類似度が所定閾値以下となり検出されなかったものとして判定されており、従ってその位置及び大きさは「算出されず」(N/A)の状態となっている。
図3の[2]の例では5種類の対象が検出候補として設定されているが、任意数の任意種類の対象を検出部1における検出候補として設定しておくことができ、各対象につきフレーム内から検出されたか否かと、検出された場合はフレーム内において占める領域と、を検出結果として得ることができる。
図4は、一実施形態に係る検索部2の機能ブロック図である。検索部2は、ページ検索部21及び結果統合部22を備え、図4中に矢印で示される通り、当該符号の通りの順番で処理を行なうことにより時系列上で統合された結果としての検索結果を出力する。検索部2の各部21,22の概略的な動作は次の通りである。
まず、ページ検索部21は記憶部5に記憶されている読み物の見開きページ(以下、特段の断りがない限り「ページ」は「見開きページ」であるものとする)ごとの特徴情報を参照することで、各時刻t(t=1,2,3, ...)のフレームF(t)に関して、検出部1で得られた読み物の領域にある画像G(t)がいずれのページに該当するかの(暫定的な)検索結果HIT_tmp(t)を求め、当該暫定的な検索結果HIT_tmp(t)を結果統合部22へと出力する。ここで、検出部1で読み物の領域にある画像G(t)(フレームF(t)の一部分の画像)より特徴情報を抽出し、記憶部5に記憶されている各ページの特徴情報との間でマッチングを行うことにより、検索結果HIT_tmp(t)を、特徴情報の類似度が上位所定数にあるものとして、あるいは特徴情報の類似度が所定閾値より大きいものとして求めて、結果統合部22へと出力する。
そして、結果統合部22では、第一処理として、各時刻tにおいて得られているフレームF(t)の一部分の領域としての画像G(t)に関して、隣接時刻間において検出される動き(動きの有無と、動きがあると判定される場合には動きの方向)に基づいてページめくりに関する状態を判定する。当該状態判定は「状態ST1」右から左へめくっている、「状態ST2」左から右へめくっている、「状態ST3」めくっていない、の3つの状態のいずれに該当するかを判定する。
次いで、結果統合部22では、第二処理として、当該判定された状態に時系列上のページ検索結果が整合するように、ページ検索部21で得られた暫定結果としての検索結果HIT_tmp(t)をフィルタリングすることで、各時刻tの画像G(t)のうち「状態ST3」(めくっていない)にあるものに関しての最終的な検索結果HIT(t)を得て、図2及び図4に線L21,L22として示すように当該結果を出力する。なお、当該最終的な検索結果HIT(t)は複数のページ判定結果を含みうる暫定結果HIT_tmp(t)とは異なり、1つのページとして確定するものである。
以下、ページ検索部21及び結果統合部22の処理の詳細を説明する。
ページ検索部21に関しては、その検索を可能とする前提として、記憶部5に次のようなデータベースを構築しておく。すなわち、読み物の各ページの見開き画像集合を用意し、各画像に対し、特徴点を検出し、各特徴点から局所特徴量を算出する。そして、画像ごとに特徴点と局所特徴量のペアの集合を検索用のリファレンス量として記憶部5に保存しておく。一実施形態では、記憶部5に記憶させておく特徴点の抽出、特徴量の記述方法として、検出部1におけるものとは別種類のAccelarated KAZE (AKAZE)Featuresを利用することができる。Accelarated KAZE (AKAZE)Featuresの算出方法は前掲の非特許文献5に開示されている。
そして、ページ検索部21では、各時刻tのフレームF(t)に関して検出部1より検出された読み物の領域G(t)から、同様に特徴点検出及び局所特徴量の算出を行い、(すなわち、記憶部5に記憶されているのと同種の特徴点検出及び局所特徴量の算出を行い、)特徴点と特徴量の組(特徴情報)の集合を得る。ページ検索部21ではさらに、読み物の領域G(t)から当該算出して得た特徴情報と、記憶部5が見開きページ画像ごとに記憶している特徴情報との対応付け(マッチング)を行い、類似度が所定基準を満たすものを、暫定的なページ推定結果HIT_tmp(t)として得る。特徴情報のマッチングには、任意の既存の手法を利用してよい。例えばRANSAC等のロバストな手法を用いてもよい。
図5は、ページ検索部21における特徴情報のマッチングの模式例を示す図である。すわち、[1]に示すあるフレームF10から検出される読み物の領域BR10の画像G10における特徴情報と、[2]に示す記憶部5に記憶されている複数の見開きページの画像のうちの1つの画像GRにおける特徴情報との間で、線L01,L02,L03で示されるような3個の特徴情報がマッチングしたものとして示されている。(なお、当該3個のマッチングは例示に過ぎず、一般にはより多数の特徴情報がマッチングする。)
結果統合部22は、以下の手順1A〜手順5Aを順次に行なうことで暫定的なページ推定結果HIT_tmp(t)からフィルタリングされ統合されたもののとしての最終的なページ推定結果HIT(t)を得る。なお、手順1A,2Aが概略説明で前述した第一処理に、手順3A,4A,5Aが第二処理に相当する。
(手順1A)各時刻tのフレームF(t)の読み物の領域の画像G(t)の動き情報を求める。
(手順2A)上記求めた動き情報から各時刻tの画像G(t)におけるページめくりの状態を決定する。
(手順3A)ページ検索部21のページ推定結果HIT_tmp(t)に関して、ページめくりがない状態にある際の結果を時系列上で並べた表を作成する。
(手順4A)上記作成した表に対して、ページめくりの方向の情報を用いたフィルタリングを実施する。
(手順5A)上記フィルタリングされた表を統合することで、時刻tがページめくりのない状態にある間に関しての最終的なページ推定結果HIT(t)を得る。
以下、上記の手順1A〜5Aの詳細を順番に説明する。
手順1Aでは、一実施形態において、画像G(t)のオプティカルフローとしてその動き情報を算出することができる。時刻tの画像G(t)のオプティカルフローは、直近の過去時刻t-1の画像G(t-1)と当該画像G(t)との間で算出してもよいし、直後の未来時刻t+1の画像G(t+1)と当該画像G(t)との間で算出してもよい。なお、画像G(t)は検出部1でフレームF(t)の部分領域として検出され、一般には時刻によってその位置及び大きさが変動するものである。従って、隣接時刻の画像(G(t-1)又はG(t+1))と当該画像G(t)との間でオプティカルフローを算出する際は、フレーム画像内における範囲が重複する箇所に限定して算出するようにしてもよいし、このような限定を設けずに算出するようにしてもよい。あるいは、隣接時刻の画像(G(t-1)又はG(t+1))と当該画像G(t)との両者を包含するような所定矩形の範囲において算出するようにしてもよい。フレーム全体の範囲でオプティカルフローを算出して画像G(t)の部分の結果のみを取得するようにしてもよい。
具体的な隣接時刻画像間でのオプティカルフローの算出手法については、例えば前掲の非特許文献4に開示されるような既存手法を用いればよい。図6は当該算出されるオプティカルフローの模式例を示す図であり、[1]に示すような解析対象の映像フレームとしての画像から、[2]にその分布を示すようなx成分のオプティカルフローと、[3]にその分布を示すようなy成分のオプティカルフローとを、それぞれ算出することができる。
手順2Aでは、以上の手順1Aで求めた動き情報としてのx方向及びy方向のオプティカルフローに関して、画像G(t)の領域内でのx方向の代表値OFx及びy方向の代表値OFyを求めたうえで、フレームF(t)に対して検出部1で検出された人物(読者)の領域PR(t)と読み物の領域BR(t)(すなわち画像G(t)の領域)との位置関係を考慮することで、時刻tにおけるページめくり状態を判定することができる。オプティカルフローの各成分の代表値OFx,OFyに関しては、画像G(t)の領域内における平均値、最大値、最頻値などの、所定の統計的代表値として求めればよい。具体的なページめくり状態の判定は以下の通りである。
まず、x方向のオプティカルフローOFxの絶対値及びy方向のオプティカルフローOFyの絶対値の両方が所定閾値TH1以下である場合には、顕著な動きが存在しない状態であるため、前述した「状態ST3」(めくっていない状態)であるものと判定する。なお、ベクトル(OFx,OFz)の大きさが所定閾値TH10以下であるかによって「状態ST3」の該当を判定してもよい。
なお、「状態ST3」の該当を判定するための閾値TH1又は閾値TH10に関しては、固定値を用いてもよい。あるいは、より正確には当該閾値は、読者が実際にページをめくる際の速度とフレームF(t)を撮影しているカメラの撮影距離とに応じて定めるべきものであるため、このうち画像より推定可能なカメラの撮影距離を反映した可変の閾値としてもよい。例えば、検出部1で検出された人物(読者)の領域PR(t)の大きさ(面積、縦幅、横幅の少なくとも1つによって定量化される大きさ)が大きいほどカメラの撮影距離が近いものとして、当該閾値を大きくするような所定の計算式で閾値を定めてもよい。
こうして例えば、カメラの撮影距離が相対的に大きい例としての図7に示すようなフレームF20における人物領域PR20は、カメラの撮影距離が相対的に小さい例としての図3で示したようなフレームF1における人物領域PR1よりも大きさが小さいものとなるので、「状態3」の判定に関して図8のフレームF20で用いる閾値を図3のフレームF1で用いる閾値よりも小さいものとして設定してもよい。
次いで、当該「状態ST3」に該当するための閾値条件を満たさない場合には、「状態ST1」(右から左へめくっている)又は「状態ST2」(左から右へめくっている)のいずれかに該当するものとして、このいずれに該当するかの判定処理に移る。
当該状態ST1,ST2の判定処理においては、まず、図8に[1]〜[3]としてその例を示すようなフレームF(t)における検出部1で検出された人物領域PR(t)と読み物領域BR(t)との相対的な位置関係の場合分けを行ったうえで、当該場合分けに応じた判定を行う。すなわち、[1]のフレームF1は読み物領域BR1が人物領域PR1の右側にある場合の例であり、[2]のフレームF2は逆に読み物領域BR2が人物領域PR2の左側にある場合の例であり、[3]のフレームF3は読み物領域BR3が人物領域PR3と重なっている場合の例である。
当該3通りの場合分けに関しては、読み物領域BR(t)の中心のx座標BR(t)[x]と人物領域PR(t)の中心のx座標PR(t)[x]との大小関係に応じて例えば以下のように判定すればよい。
BR(t)[x]- PR(t)[x]>THxならば[1](読み物領域が人物領域の右側)
PR(t)[x]- BR(t)[x]>THxならば[2](読み物領域が人物領域の左側)
|BR(t)[x]- PR(t)[x]|≦THxならば[3](両領域は重なっている)
なお、上記の判定において、x座標はフレーム画像の横方向(水平方向)の位置を指定するものであり、横方向の右側向きを正方向として定めるものである。また、THxは判定用の正の閾値であり、固定値を用いてもよいし、読み物領域BR(t)の横幅が大きいほど大きい値となるような所定計算式で可変値として定めてもよい。
また、別実施形態として[1]〜[3]の位置関係の場合分けを、人物領域PR(t)の中心座標を始点とし物領域BR(t)の中心座標を終点とするベクトルに応じて所定規則で[1]〜[3]のいずれに該当するかを判定してもよい。この際、ベクトル終点位置に応じて[1]〜[3]が定まるような所定マップを参照して判定すればよい。
そして、上記のような図8に例示の[1]〜[3]の位置関係の場合分けに応じて、オプティカルフローの各成分の値に基づいて状態ST1,ST2を例えば以下のように判定することができる。
[1]の「読み物領域が人物領域の右側」にある場合は、オプティカルフローのx成分の値OFx及びy成分の値OFyのうち、絶対値が大きいものの値がマイナス(負)である場合に状態ST1「右から左へめくっている」と判定し、そうでない場合には状態ST2「左から右へめくっている」と判定することができる。また、[2]又は[3]の「読み物領域が人物領域の左側」にある場合又は「両領域が重なっている」場合は、これとは逆にオプティカルフローのx成分の値OFx及びy成分の値OFyのうち、絶対値が大きいものの値がマイナス(負)である場合に状態ST2「左から右へめくっている」と判定し、そうでない場合に状態ST1「右から左へめくっている」と判定することができる。上記の実施形態に対する別実施形態として、[1]の場合においてオプティカルフローのx成分の値OFx及びy成分の値OFyの両方が負(あるいは負であり且つ絶対値が閾値以上)である場合に状態ST1と判定し、オプティカルフローのx成分の値OFx及びy成分の値OFyの両方が正(あるいは正であり且つ絶対値が閾値以上)である場合に状態ST2と判定し、これら以外の場合は例外的に状態ST3と判定し、[2]又は[3]の場合は上記の実施形態と同様に[1]の場合と状態ST1,ST2の判定を逆としてもよい。以上のような実施形態以外にも、オプティカルフローの各成分の値に基づいた所定規則で状態ST1,ST2を判定してよい。
なお、上記の判定においてはフレーム座標(x,y)は、[1]〜[3]の場合分けの際と同様に水平右方向を+x方向と定め、さらに、垂直下方向を+y方向として定める。
また、上記の判定の別実施形態として、ベクトル(OFx,OFy)の値に応じた所定規則で状態ST1,ST2を判定してもよい。この際、ベクトル終点位置に応じて状態ST1,ST2が定まるような所定マップを参照して判定すればよい。
以上、手順2Aを終えると、図9に模式例を示すような、入力映像の時系列上のフレームF(t)に関しての、画像部分G(t)(読み物領域BR(t)の画像部分)におけるページめくり状態の時系列が得られることなる。すなわち、図9では[2]に凡例が示される通りの表記で[1]にページめくり状態の時刻t1〜t10間での時系列の例が示されている。
図10は、結果統合部22における第二処理としての手順3A〜手順5Aを説明するための模式例を示す図である。以下、図10を適宜参照しながら手順3A〜手順5Aを説明する。また、以下では、洋書などのような左開き(左側が綴じてあり、右から左へとページをめくることでページ数が増えていくもの)となっている読み物を前提として説明を行う。
手順3Aでは、上述の通り、ページ検索部21のページ推定結果HIT_tmp(t)に関して、ページめくりがない状態(すなわち、手順2Aで判定した状態ST3)にある際の結果を時系列上で並べた表を作成する。当該表においては、連続してページめくりがない状態となっている個別の区間の区別と、当該個別区間で隣接するもの同士での間のページめくり状態に関する情報と、を付与しておく。
例えば、図9のページめくり状態の時系列の例であれば、時刻t2〜t3間と、時刻t4〜t5間と、時刻t6〜t7間と、時刻t8〜t9間とのページ推定結果HIT_tmp(t)の表を作成する。この際、時刻t2〜t3間と、時刻t4〜t5間と、時刻t6〜t7間と、時刻t8〜t9間とがそれぞれ、一連のページめくりのない個別の区間T23,T45,T67,T89である旨の識別情報も含めて表を作成する。さらに、隣接区間の間でのページめくり状態の情報も当該表に付与しておく。例えば、図9のページめくりがない区間として隣接する区間T23と区間T45の間(時刻t3〜t4)では、ページめくり状態がST1「右から左へめくっている」である旨を表に対する付随情報として付与しておく。
図10の[1]は、手順3Aで作成される表の一部分の模式例を示す図である。ここでは、フレームID(すなわちフレームの時刻t)がN,N+1,N+2となる連続したページめくりのない状態にある区間(長さ3)と、これに対して後の時刻(M>N)で隣接しており、フレームIDがM,M+1,M+2となる連続したページめくりのない状態にある区間(長さ3)において、類似度の上位2件を結果1及び結果2として与えられたページ推定結果HIT_tmp(t)の例が示されている。また、これら区間の間(N<t<Mとなる時刻tの間)ではページめくりの方向は状態ST1「右から左へめくる」である旨が付随情報として与えられているものとする。
例えば、図9の区間T23が図10のフレームN,N+1,N+2であり、図9の区間T45が図10のフレームM,M+1,M+2であってもよい。この場合、当該隣接する区間T23,T45の間の区間(時刻t3〜t4間であり、フレームN〜M間)は状態ST1「右から左へめくる」となっている。
また、図10では類似度の上位2件を結果1及び結果2としてそのページ番号及び類似度の例が示されている。なお、ページ検索部21で当該検索されたページ番号は前述の通り見開きページの番号であるので、見開きページの番号がkである場合、通常の意味でのページ番号(左右のページを区別した通常のページ番号)は2k-1及び2kである。図10に例示する番号kはこのように見開きページを特定するものである。
なお、前述の通り、検出部1にて検出された読み物は「左開き」であるものとし、状態ST1「右から左へめくる」の読者の操作でページ番号が増え、逆に状態ST2「左から右へめくる」の読者の操作でページ番号が減るものであるという前提で説明を行う。
手順4Aでは、手順3Aで得た表において、隣接する区間の間でその間におけるページめくり状態(ST1,ST2)の方向を考慮し、当該方向に整合するように、当該隣接する区間の両方におけるページ推定結果HIT_tmp(t)(すなわち、手順3Aで得た表の値としてのページ検索結果)にフィルタリングを行う。
具体的には例えば、隣接する区間の間で対応する要素(表の値としてのページ検索結果)を比較し、そのページ数の大小関係が当該隣接する区間の間でのページめくり状態と整合していない場合、類似度の低い方の要素をフィルタリングして削除することができる。隣接する区間の間の対応する要素は、各区間において先頭フレームから数えた位置i(i=1, 2, ...)と、ページ推定結果HIT_tmp(t)における順位j(j=1, 2, ...)が共通のものを対応する要素として設定すればよい。図10の[2]には、[1]の表に対してこのようなフィルタリングを行うことで、整合しなかったもののうち類似度の低いものをフィルタリングして削除し、「N/A」(該当なし)に置き換えた結果が示されている。
例えば、(位置i、順位j)=(1,1)として互いに対応するフレームNの結果1「ページ3」とフレームMの結果1「ページ20」の間のページ数変化は、「3→20」と増加するものであり、当該区間の間のページめくり状態ST1「右から左へめくる」すなわち「ページ数が増加」に整合するものであるため、フィルタリング対象外となる。また例えば、(位置i、順位j)=(2,2)として互いに対応するフレームN+1の結果2「ページ30」(類似度0.2)とフレームM+1の結果2「ページ20」(類似度0.3)の間のページ数変化は、「30→20」と減少するものであり、当該区間の間のページめくり状態ST1「右から左へめくる」すなわち「ページ数が増加」に整合しないものである。従って、当該整合しない要素のうち、類似度が低い(0.2<0.3)方であるフレームN+1の結果2「ページ30」(類似度0.2)をフィルタリングして削除することで「N/A」(該当なし)に置き換えている。同様にして(位置i、順位j)=(3,1)で対応するうち類似度の低いフレームN+2の結果1「ページ26」が削除され、(位置i、順位j)=(2,1)で対応するうち類似度の低いフレームM+2の結果1「ページ2」が削除されている。
以上のようなフィルタリングは、隣接区間ごとに実施すればよい。例えば図9の例であれば、区間T23,T45間でフィルタリングし、区間T45,T67間でフィルタリングし、区間T67,T89間でフィルタリングすればよい。隣接区間の長さが異なる場合や、順位jの数が異なる場合など、(位置i、順位j)で対応する要素が存在しない箇所についてはフィルタリングは省略してよい。
手順5Aでは、以上の手順4Aでフィルタリングされた表に基づいて、状態ST3(ページをめくっていない)として連続している個別の区間ごとのページ番号の推定結果を出力する。具体的には、各区間内において表にフィルタリングされずに残っているページ番号ごとの信頼度を総和して得られるスコアの最大となるもの(最大尤度のもの)をページ番号の最終的な推定結果として出力すればよい。図10の例であれば、[2]のフィルタリングされた表のスコアを総和することにより、フレームIDがN,N+1,N+2の区間に関しては「ページ3」(最大値となる総合スコア=0.8+0.9+0.5)が推定結果として得られ、フレームIDがM,M+1,M+2の区間に関しては「ページ20」(最大値となる総合スコア=0.8+0.3+0.7)が推定結果として得られる。
以上、検索部2を説明した。
候補抽出部3では、概略説明で前述した通り候補情報を出力する。以下、注視領域推定装置10で推定する読み物の注視領域は、見開きページの左右いずれであるか、且つ、上下のいずれであるか、という区分で注視領域を推定するものとして説明を行う。すなわち、後述する分析推定部4からは、見開きページで読まれている読み物のうち、右上、右下、左上及び左下の4つの部分のいずれが注視領域であるかが出力されるものとする。候補抽出部3では、当該右上、右下、左上及び左下の4つの部分に関して注視度合いの暫定スコアを付与した結果を、候補情報として出力する。概略でも説明した通り、候補抽出部3では例えば以下の2つの実施形態でそれぞれ候補情報を出力することができる。
第一実施形態では、視線方向の推定で注目領域候補を抽出し、暫定スコアとしての候補情報を出力することができる。具体的には、フレーム画像F(t)に対して前掲の非特許文献2のような既存の視線推定技術を適用し、読者の視線方向を推定し、当該推定された方向に基づいて候補情報を出力することができる。ここで、当該既存手法の適用に際しては、フレーム画像F(t)における読者の目の領域を解析することで、視線方向が上向きであるほど値が大きくなるように、視線方向値gazeを出力させるようにする。
そして、当該上向きほど値が大きくなる視線方向値gazeが一定の閾値TH2以上として得られた場合、注目領域候補に見開きページの上半分を追加する。追加された注目領域候補にスコアを式(1)で付与する。逆に、視線方向値gazeが一定の閾値TH3以下になると、注目領域候補に見開きページの下半分を追加する。追加された注目領域候補にスコアを式(2)で付与する。
score=(gaze-TH2)*scale 式(1)
score=(TH3-gaze)*scale 式(2)
但し、scoreは注目領域候補のスコアであり、gazeは視線方向値であり、scaleは正規化の因子である。
すなわち、式(1)が用いられた場合には、前述の4つの部分のうち右上及び左上の領域にそれぞれ式(1)のスコア値が付与され、右下及び左下に関してはスコア値をゼロとしたものが候補情報として出力される。式(2)が用いられた場合には、前述の4つの部分のうち右下及び左下の領域にそれぞれ式(2)のスコア値が付与され、右上及び左上に関してはスコア値をゼロとしたものが候補情報として出力される。式(1)、(2)のいずれも用いられなかった場合には、前述の4つの部分の全てに関してスコア値をゼロとしたものが候補情報として出力される。
第二実施形態では、前掲の特許文献2等に開示の既存技術である顕著度マップを算出して、顕著度が一定の閾値TH4以上になる領域を注目領域候補としてスコア付与することで候補情報を出力する。具体的には、スコアを式(3)で付与することができる。
score=(salience-TH4)*scale 式(3)
但し、scoreは注目領域候補のスコアであり、salienceは顕著度であり、scaleは正規化の因子である。第一実施形態で述べたのと同様に、式(3)が適用されなかった部分に関してはスコア値をゼロとして候補情報を出力する。
図11は顕著度マップの模式例であり、[1]のような画像から[2]のような顕著度マップ(白色ほど顕著度が高く、黒色ほど顕著度が低い)が得られている。
なお、顕著度は右上、右下、左上及び左下の4つの部分に関しての平均値として、検索部2において当該フレームF(t)における読み物領域として検索された読み物の見開きページの画像から求めればよい。当該画像は、記憶部5に特徴情報と共に記憶しておけばよい。また、当該画像の右上、右下、左上及び左下の4つの部分に関して予め顕著度の平均値を計算して記憶部5に記憶しておいた値を参照する(図2中に線L22で示されるように参照する)ことで、候補抽出部3でのその都度の顕著度の計算を省略してもよい。
また、以上の第一及び第二実施形態の各スコアの和又は積によって、右上、右下、左上及び左下の4つの部分のスコアを計算したものを候補情報として出力してもよい。
分析推定部4では、第一処理として、概略説明で前述した通り、検出部1で抽出した読み物の領域BR(t)(左右の見開きページとして構成された領域)に関して、当該領域BR(t)のフレームF(t)内における向きに基づいて、左右のいずれの側のページが注目されているかを特定する。分析推定部4では第二処理として、当該左右のいずれの側かを特定したページの上側部分と下側部分について、候補抽出部3で得られている候補情報のスコアが大きい側を、最終的な注視領域の推定結果として出力する。例えば、第一処理で右側ページが注目されているものと特定され、第二処理では右側ページの上下のうち上側のスコアが大きかった場合、最終的な注視領域の推定結果は見開きページのうちの右上部分となる。(なお、第一処理では左右いずれかのページが注目しているものとして特定されたが、第二処理においてその上下のスコアが同じであり上下の注目度を区別できない場合には、左右いずれのページが注目対象であるかのみを出力すればよい。)
以下、第一処理としての左右のいずれのページが注目されているかの特定処理の各実施形態を説明する。
まず、検出部1でテーブルが領域TR(t)として検出されている場合に適用な実施形態を説明する。この場合、テーブル領域TR(t)と読み物領域BR(t)との位置関係に基づく以下のケースC1、ケースC2のような場合分けに応じて左右のいずれが注目領域であるかを特定する。
ケースC1(物理制限がある):読み物がテーブルの上に置かれてある。
ケース1の場合、読者が手で読み物を持っておらずテーブル上に放置して読んでいることが想定されるため、開いている左右ページのどちらに注目しているかを読み物領域BR(t)の傾きでは推定できない。従って、候補抽出部3で得られた4区分の領域の中でスコアが最も高い候補を注目領域にする。
ケースC2(物理制限がなし):読み物がテーブルと離れている。
ケース2の場合、読者が手で持って読んでいることが想定される読み物の傾きを判定し、当該傾きに基づいて左右のいずれの側が注目対象かを判定する。ここで、本発明では特に、次の考察を利用する。すなわち、人間(読者)は物理制約がなければ、自分が読みやすいように読み物を保持するため、基本的には開いている2ページのうち注目ページは人間から見て水平となるように保持するはずである、という考察である。
なお、ケースC1,C2の区別は、読み物領域BR(t)の中心座標とテーブル領域TR(t)の中心座標との距離に対する閾値判定で区別してもよいし、読み物領域BR(t)内におけるテーブル領域TR(t)の重複度合(重複部分の面積割合)に対する閾値判定で区別するようにしてもよい。
以下、ケースC2の傾き判定に基づく左右のいずれの側が注視対象であるかの特定処理の詳細を、手順1B〜3Bと分けて説明する。当該手順1B〜3Bはこの順番に実施すればよいが、手順1B,2Bは逆順でもよいし、並行して実施してもよい。
手順1Bでは、読み物領域BR(t)内に対してエッジ検出などの既存手法を適用することで、読み物の輪郭BE(t)を多角形として抽出する。すなわち、読み物領域BR(t)は矩形として読み物の以外の背景部分をも含んで検出された状態にあるので、当該読み物領域BR(t)において実際に読み物が形成している箇所を多角形として抽出する。図12に当該抽出の模式例を示す。図12では、フレームF30における読み物領域BR30内から、多角形(凹部分を含む6角形)としての読み物輪郭BE30が抽出されている。
手順2Bでは、読み物の角度を導出するための基準方向としての、テーブルの水平線を算出する。方法の一例として、図13の[1]に示すフレームF30のように、当該フレームF30から検出されたテーブル領域TR30内でテーブルの輪郭TE30を検出し、[2]に示すように当該輪郭TE30からテーブルの水平線TRL30を算出する。
図13の例では、テーブル面は円でありフレーム上では一般に楕円に近いものとして映ることから、テーブルの輪郭TE30を既存手法のエッジ検出及び当該検出エッジに対する楕円当てはめによって検出することができる。そして[2]に示すように、当該検出した楕円の長軸を水平線TRL30として算出することができる。
当該楕円長軸としての水平線検出により、図14に[1]〜[3]と分けて模式例を示すように、一般にカメラCが傾いて撮影している場合であっても水平方向を検出することができる。図14では[1]ではカメラCの方向D1はほぼ水平であり、楕円TE1から長軸としての水平線TRL1も画像上ほぼ水平線として検出されるが、[2],[3]ではそれぞれカメラCの方向D2,D3が傾いてテーブル領域などを撮影しているが、このように傾いて撮影されている場合であってもテーブルにおける水平線TRL2,TRL3をそれぞれ楕円TE2,TE3の長軸として求めることができる。
なお、以上ではテーブル面が楕円である場合の例を説明したが、その他の形状の場合でも所定図形を当てはめて対応する所定線分として水平線を検出すればよい。例えば、図15に模式例を示すようにテーブル面が矩形(長方形)である場合、当該矩形TE4をエッジ検出及び矩形当てはめによって検出し、当該矩形TE4の内接楕円ELを求め、当該内接楕円ELの長軸TR4として水平線を検出すればよい。
手順3Bでは、手順1Bで多角形として検出した読み物の輪郭BE(t)と、手順2Bで検出したテーブルの水平線TRL(t)とを参照して、輪郭BE(t)の左ページ側下辺LE(t)及び右ページ側下辺RE(t)が、それぞれ水平線TRL(t)との間でなす角度(水平度と呼ぶ)を比較する。そして、左ページ側下辺LE(t)における水平度LA(t)と、右ページ側下辺RE(t)における水平度RA(t)とを当該比較した結果、当該水平度の値が小さい側を注目領域として決定する。
図16は、読み物の(背表紙側ではなく)中身の見開きページが見えている状態を前提として、当該決定する模式例を示す図であり、読み物の輪郭BEは左側領域S1と右側領域S2とを包含しており、左側下辺S1及び右側下辺S2が形成されている。図16の例では、水平線RLと左側下辺S1とのなす角θ1の方が、水平線RLと右側下辺S2とのなす角θ2よりも小さいので、より水平に近い左側領域S1を注目領域として決定することができる。なお、図16の例では説明の便宜上、水平線RL、左側下辺S1及び右下下辺S2で共有される点Pが存在している位置関係にあるが、必ずしもこのような位置関係にある必要はない。水平線RL(水平線分)及び左側下辺S1が離れている場合や水平線RL(水平線分)及び右側下辺S2が離れている場合であっても全く同様に水平度を比較して左右のうち注目領域となる側を決定することができる。
なお、多角形として形成される読み物の輪郭BE(t)から左ページ側下辺LE(t)及び右ページ側下辺RE(t)を特定する際は、所定規則で特定すればよい。例えば図16に示すような6角形としての輪郭BE(t)が凹部となる2辺を有する場合は、当該凹部の向かい側で凸部を形成している2辺のうち画像上での左及び右側にある辺をそれぞれ左ページ側下辺LE(t)及び右ページ側下辺RE(t)として特定すればよい。また、輪郭BE(t)の形成する多角形の辺のうち、水平線TRL(t)に最も近い位置にある隣接2辺のうち画像上での左及び右側にある辺をそれぞれ左ページ側下辺LE(t)及び右ページ側下辺RE(t)として特定してもよい。また、輪郭BE(t)の形成する多角形の辺のうち、水平線TRL(t)に最も近い角度にある隣接2辺のうち画像上での左及び右側にある辺をそれぞれ左ページ側下辺LE(t)及び右ページ側下辺RE(t)として特定してもよい。また、水平線TRL(t)に対して垂直な線における+y方向(画像鉛直下方向)の向きで、最も+y方向の値が大きい側の隣接2辺のうち画像上での左及び右側にある辺をそれぞれ左ページ側下辺LE(t)及び右ページ側下辺RE(t)として特定してもよい。
以上、分析推定部4での第一処理としてテーブル領域TR(t)が検出部1で検出されている場合の各実施形態を説明した。以上ではテーブル領域TR(t)として説明したが、同様の検出(水平線検出)が可能なその他の所定の対象に関してテーブル領域TR(t)の場合と同様の処理を行なってもよいし、前掲の非特許文献6に開示される既存手法として、フレームF(t)内の人物の関節検出を行い、当該関節内の所定2点が形成する辺を水平線として用いてもよい。
図17は、テーブル以外でテーブルと同様の検出が可能な対象としての椅子の模式例であり、[1]のフレームF30内の椅子領域CR30(座面部分)に楕円当てはめをして楕円CE30を検出し、その長軸を水平線として決定することができ、また、[2]のフレームF31内の椅子領域CR31(座面部分)に四角形当てはめをして四角形CE31を検出し、当該四角形CE31に基づいて水平線を決定することができる。
図18は、関節検出から水平線検出を行う模式例を示す図であり、フレームF32内から人物(読者)の関節J32が検出される。当該関節内の所定の2点で水平線となるものを水平線として採用することができる。所定点として例えば、両肩の2点を結ぶ線分や、両膝の2点を結ぶ線分を水平線として採用することができる。
以上、本発明の注視領域推定装置10によれば、検索部2でそのページ番号が検索された読み物の特定の見開きページにおいて、分析推定部4で得られた右上、右下、左上及び左下の4つの部分のいずれが注目されているかを、入力映像F(t)から出力することができる。すなわち、注目しているページ番号の情報及び当該ページにおいて注目している領域の情報を、注視領域推定装置10は出力することができる。以下、本発明の説明上の補足事項を述べる。
(1)上記のように注視領域推定装置10では注目しているページ番号の情報及び当該ページにおいて注目している領域の情報を出力することができるが、このうち片方だけを出力するようにしてもよい。すなわち、検索部2で得られる見開きページの番号だけを出力するようにしてもよい。あるいは逆に、見開きページの番号は特定せずに、分析推定部4から右上、右下、左上及び左下の4つの部分のいずれが注目されているかの結果のみを出力するようにしてもよい。この場合、見開きページの画像がリファレンス情報として必要となる顕著度マップの実施形態は利用しないようにしてもよい。
(2)候補抽出部3では左右方向の2区分と上下方向の2区分とで右上、右下、左上及び左下の4つの部分に関しての候補情報を出力するものとしたが、上下方向に関しては3区分以上となるn区分で全く同様に候補情報を出力するようにしてもよい。この場合、分析推定部4では全く同様に、読み物の見開きページにおいて左右の2区分と、上下方向のn区分とで分割された合計2*n区分の部分のいずれが注目領域であるかを出力することができる。
(3)結果統合部22の簡略化された別実施形態として、手順4Aのフィルタリングを省略してもよい。この場合、ページめくりの方向は考慮しないが、ページめくりが行われていない区間ごとにいわば多数決で、見開きページの番号を検索することができる。
(4)候補抽出部3を省略して、分析推定部4から見開きページの左右のいずれのページが注目対象となっているかのみを出力するようにしてもよい。
(5)分析推定部4で求める水平線に関しては、以上説明したようにフレームF(t)を解析して動的に求める以外にも、映像における読者の撮影配置などが固定されていることが既知の場合は、予めフレーム内の所定位置・方向にある所定線分を水平線として設定しておき、以上説明したのと同様の左ページ側下辺LE(t)及び右ページ側下辺RE(t)との比較を行うようにしてもよい。
(6)分析推定部4では、図16で例示して説明したように左ページ側下辺LE(t)及び右ページ側下辺RE(t)と水平線との角度で左右の注目ページを決定したが、下辺に代えて上辺で同様に、その水平線との角度で左右の注目ページを決定するようにしてもよい。多角形としての輪郭BE(t)からの左右の上辺の決定に関しては、下辺の決定の場合と同様に所定規則で決定すればよい。
(7)以上の説明では、ページ検索部21では読み物の区別(例えば本の区別)は特定のものに決定していることを前提として、見開きページ数を検索するものとして説明していた。本発明は読み物の種類が複数ある場合(雑誌A、雑誌Bといったように複数の読み物がありうる場合)にも同様に適用可能である。この場合、読み物種類ごとに各見開きページ画像の特徴情報を記憶部5に記憶しておき、入力映像の最初の所定期間において多数決で、すなわち、最も類似すると判定されたページ数が最も多いような読み物が映像に映っていることをまず決定し、当該決定した後は以上と同様の検索処理を行なうことができる。
(8)結果統合部22における手順2Aにおいて、連続して動きがある区間となっているが、その中で向きが異なっている区間(状態ST1,ST2)が混在している場合は、当該区間内において最多数の状態が当該区間の動きに該当する(混在する別の向きの動きはノイズ等によるものである)ものとして、手順3A以降を実施すればよい。
(9)注視領域推定装置10は一般的な構成のコンピュータとして実現可能である。すなわち、CPU(中央演算装置)、当該CPUにワークエリアを提供する主記憶装置、ハードディスクやSSDその他で構成可能な補助記憶装置、キーボード、マウス、タッチパネルその他といったユーザからの入力を受け取る入力インタフェース、ネットワークに接続して通信を行うための通信インタフェース、表示を行うディスプレイ、カメラ及びこれらを接続するバスを備えるような、一般的なコンピュータによって注視領域推定装置10を構成することができる。さらに、図2に示す注視領域推定装置10の各部の処理はそれぞれ、当該処理を実行させるプログラムを読み込んで実行するCPUによって実現することができるが、任意の一部の処理を別途の専用回路等(GPUを含む)において実現するようにしてもよい。