(57)【要約】【課題】待ち行列の待ち人数が少ない場合であっても待ち時間の予測精度の低下を低減して適切に待ち時間を予測する。【解決手段】情報処理装置は、所定範囲内にある物体の数をカウントする第１のカウント手段と、所定時間内に所定範囲内の所定位置を通過した物体の数をカウントする第２のカウント手段と、第１のカウント手段によりカウントされた前記物体の数が所定の閾値以上か否かを判定する判定手段と、物体の数が所定の閾値以上であると判定された場合、所定時間内に所定位置を通過した物体の数に基づいて第１の通過頻度を算出し、所定の閾値未満であると判定された場合、第１の通過頻度とは異なる第２の通過頻度を算出する第１の算出手段と、第１のカウント手段によりカウントされた物体の数と、第１の算出手段により算出された第１の通過頻度または第２の通過頻度のいずれかとに基づいて、所定範囲における待ち時間を算出する第２の算出手段とを備える。【選択図】図１
2018205872.tif 000002
【特許請求の範囲】
【請求項１】
所定範囲内にある物体の数をカウントする第１のカウント手段と、
所定時間内に前記所定範囲内の所定位置を通過した物体の数をカウントする第２のカウント手段と、
前記第１のカウント手段によりカウントされた前記物体の数が所定の閾値以上か否かを判定する判定手段と、
前記判定手段により前記物体の数が前記所定の閾値以上であると判定された場合、前記第２のカウント手段によりカウントされた、前記所定時間内に前記所定位置を通過した物体の数に基づいて第１の通過頻度を算出し、前記判定手段により前記物体の数が前記所定の閾値未満であると判定された場合、前記第１の通過頻度とは異なる第２の通過頻度を算出する第１の算出手段と、
前記第１のカウント手段によりカウントされた前記物体の数と、前記第１の算出手段により算出された前記第１の通過頻度または前記第２の通過頻度のいずれかとに基づいて、前記所定範囲における待ち時間を算出する第２の算出手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、さらに、
前記第１のカウント手段によりカウントされた前記物体の数と、前記第１の算出手段により算出された前記第１の通過頻度と、前記第２の算出手段により算出された前記待ち時間とを関連付けて記憶する記憶手段をさらに備える
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１の算出手段は、前記記憶手段に記憶された前記物体の数と前記待ち時間に基づいて、前記第２の通過頻度を算出する、
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第１の算出手段は、前記記憶手段に記憶された複数の前記第１の通過頻度の平均値を前記第２の通過頻度として算出する、
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記第１の算出手段は、前記記憶手段に最後に記憶された前記第１の通過頻度を前記第２の通過頻度として算出する、
ことを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記第１の算出手段は、前記第１の通過頻度が０として算出されるべき場合、前記記憶手段に記憶された前記第１の通過頻度を前記第２の通過頻度として算出する、
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記情報処理装置は、さらに、
前記記憶手段に記憶された前記物体の数と前記待ち時間に基づいて、前記所定の閾値を算出する第３の算出手段を備える、
ことを特徴とする請求項２から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記判定手段は、前記第１のカウント手段によりカウントされた前記物体の数が、前記所定の閾値より小さい第２の閾値以上か否かをさらに判定し、
前記第１の算出手段は、前記判定手段により前記物体の数が前記第２の閾値未満であると判定された場合、前記第１の通過頻度および前記第２の通過頻度のいずれとも異なる第３の通過頻度を算出して前記第２の算出手段へ出力する、
ことを特徴とする請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記第１のカウント手段は、撮像装置により撮像された画像の中の物体の数をカウントする、
ことを特徴とする請求項１から８のいずれか１項に記載の情報処理装置。
【請求項１０】
所定範囲内にある物体の数をカウントするステップと、
所定時間内に、前記所定範囲内の所定位置を通過した物体の数をカウントするステップと、
カウントされた前記所定範囲内にある前記物体の数が所定の閾値以上か否かを判定するステップと、
前記物体の数が前記所定の閾値以上であると判定された場合、カウントされた、前記所定時間内に前記所定位置を通過した物体の数に基づいて第１の通過頻度を算出し、カウントされた前記所定範囲内にある物体の数が前記所定の閾値未満であると判定された場合、前記第１の通過頻度とは異なる第２の通過頻度を算出するステップと、
カウントされた前記所定範囲内にある前記物体の数と、前記第１の通過頻度または前記第２の通過頻度のいずれかとに基づいて、前記所定範囲における待ち時間を算出するステップと、
を有することを特徴とする情報処理方法。
【請求項１１】
コンピュータを、請求項１から９のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
従来、待ち行列の待ち時間を予測するための技術として、各種方法が提案されている。
例えば特許文献１は、テーマパークなどの施設（アトラクション）の待ち時間を提供する待ち時間情報提供システムを開示する。具体的には、この待ち時間情報提供システムは、テーマパーク内の施設の現在の行列人数に、他の施設の混雑情報、過去の平均入場者数、天気予報、テーマパークへ向かう道路の混雑情報等の統計情報や予測情報を演算要素として加えて総合時間情報を演算する。特許文献１記載の技術によれば、このように得られた総合時間情報を、単位時間当たりの施設の処理人数で除算することにより、ユーザが施設に到着した際の待ち時間がリアルタイムで演算される。
【０００３】
上記のようなテーマパーク内の施設の待ち時間の演算においては、除算に用いられるべき単位時間当たりの処理人数、すなわち待ち行列から退出した人数は、通常稼働中においては施設ごとほぼ一定であるものと仮定できる。
一方、例えばタクシー乗車の待ち行列のようなサービス時間が一定でない待ち行列の待ち時間を予測する場合は、単位時間当たりの待ち行列からの退出人数は一定とならない。このため、過去の一定時間の統計から単位時間当たりの待ち行列からの退出人数を随時算出する必要がある。
例えば、待ち行列中の所定箇所にセンサやカメラを設置し、一定時間内に所定箇所を通過した人体の数をカウントすることで、単位時間当たりの待ち行列からの退出人数を算出することができる。カメラにより待ち行列を撮像した撮像画像を解析して、推定待ち人数（待ち行列長）をカウントし、カウントされた待ち行列長を、算出された単位時間当たりの待ち行列からの退出人数で除算すれば、待ち時間を予測することができると考えられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２８７３６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、待ち時間予測において、待ち人数が少なく、単位時間当たりの退出人数が少ない場合に、待ち行列長中の待ち人数が誤ってカウントされてしまうと、予測される待ち時間の値が発散して、予測精度が低下してしまう。その具体例を以下に説明する。
例えば、タクシー乗車の待ち行列中の待ち人数が誤ってカウントされる場合を考える。撮像画像から検知された係員２人をタクシー乗車の待ち行列の待ち人数として加算してしまうと、本来は待ち行列内の待ち人数を０人とすべきところ、待ち人数を２人と誤ってカウントすることになる。
【０００６】
この際に、例えば、単位時間当たりの待ち行列からの退出人数が０．１（人／分）であるとすると、待ち行列内の待ち人数は本来０人であるから、待ち時間は０分（０／０．１＝０）と予測されるべきところ、２０分（２／０．１＝２０）と算出される。すなわち、実際の待ち時間から大きく相違する非常に長い待ち時間が誤って予測されてしまう。
そして、このような誤った待ち時間の値の発散は、待ち行列の人数が少なくなって、分子である誤ってカウントされた待ち行列長に比べて分母である単位時間当たりの退出人数（退出率）の値がより小さくなるほど顕著となる。このため、待ち時間の予測精度を低下させてしまうおそれがある。
【０００７】
発明は上記課題に鑑みてなされたものであり、その目的は、待ち行列の待ち人数が少ない場合であっても、待ち時間の予測精度の低下を低減して適切に待ち時間を予測することの可能な情報処理装置、情報処理方法およびプログラムを提供することにある。  
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明に係る情報処理装置のある態様によれば、所定範囲内にある物体の数をカウントする第１のカウント手段と、所定時間内に前記所定範囲内の所定位置を通過した物体の数をカウントする第２のカウント手段と、前記第１のカウント手段によりカウントされた前記物体の数が所定の閾値以上か否かを判定する判定手段と、前記判定手段により前記物体の数が前記所定の閾値以上であると判定された場合、前記第２のカウント手段によりカウントされた、前記所定時間内に前記所定位置を通過した物体の数に基づいて第１の通過頻度を算出し、前記判定手段により前記物体の数が前記所定の閾値未満であると判定された場合、前記第１の通過頻度とは異なる第２の通過頻度を算出する第１の算出手段と、前記第１のカウント手段によりカウントされた前記物体の数と、前記第１の算出手段により算出された前記第１の通過頻度または前記第２の通過頻度のいずれかとに基づいて、前記所定範囲における待ち時間を算出する第２の算出手段と、を備えることを特徴とする情報処理装置が提供される。
【発明の効果】
【０００９】
本発明によれば、待ち行列の待ち人数が少ない場合であっても、待ち時間の予測精度の低下を抑制してより好ましく待ち時間を予測することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の各実施形態に係る待ち時間予測システムのハードウエア構成および機能構成の一例を示す図である。
【図２】各実施形態に係る待ち時間予測システムの適用の一例を示す図である。
【図３】待ち行列の待ち人数に対する予測待ち時間の対応の一例を示すグラフである。
【図４】図３のグラフにおいて待ち人数が閾値未満の場合に通過頻度の平均値を用いて予測待ち時間を算出した場合の一例を示すグラフである。
【図５】実施形態１に係る待ち時間予測処理の処理手順の一例を示すフローチャートである。
【図６】実施形態２において通過頻度が０の場合の通過頻度の算出方法を説明する図である。
【図７】実施形態２に係る待ち時間予測処理の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明を実施するための実施形態について詳細に説明する。なお、以下に説明する実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１２】
（実施形態１）
本実施形態においては、待ち行列を構成する待ち人数と、過去の一定時間の統計から算出された通過頻度とから、待ち行列の後方における待ち時間を予測する。ここで、「通過頻度」とは、待ち行列中の人物の待ち行列からの退出頻度（サービスが提供される頻度）を示す指標である。本実施形態では、この通過頻度は、単位時間当たり通過頻度（第１の通過頻度）と、これとは異なる条件で算出される通過頻度（第２の通過頻度：例えば、後述する平均通過頻度、最後の通過頻度等）とを含む。
具体的には、本実施形態では、待ち時間を安定的に推定可能な待ち人数の閾値を設ける。そして、待ち行列中の待ち人数が閾値未満の場合には、単位時間当たりの待ち行列からの退出人数（第１の通過頻度）に替えて、異なる条件で通過頻度（第２の通過頻度）を算出し、この異なる通過頻度を用いて待ち時間を予測する。これにより、待ち行列の待ち人数が少ない場合であっても、待ち時間の予測値が発散することなく、待ち時間予測処理の高精度化が実現される。
なお、以下、本実施形態では、人体が待ち行列を構成する場合を例として説明するが、本実施形態はこの場合に限定されず、他のオブジェクト、例えば、自動車等の車両、動物等が待ち行列を構成する場合にも適用可能である。
【００１３】
＜本実施形態のシステム構成＞
図１は、本実施形態に係る待ち時間予測システムのハードウエア構成および機能構成の一例を示す図である。
図１の待ち時間予測システムは、撮像装置１０と、情報処理装置２０と、ネットワーク３０とを備える。撮像装置および情報処理装置２０は、ネットワーク３０を介して接続され、相互に情報の授受を行う。
【００１４】
撮像装置１０は、ネットワーク３０を介して撮像画像を情報処理装置２０へ送信する。なお、本実施形態における撮像装置１０は、画像を撮像するカメラであり、例えば、監視に用いられる監視カメラなどであってよい。
この撮像装置１０は、壁面や天井等に設置することができ、１枚以上の画像を含む動画像を撮像するカメラであってもよい。また、撮像装置１０は、例えば、ＩＥＥＥ８０２．３ａｆやＩＥＥＥ８０２．３ａｔ等の規格に準拠するＰｏＥ（Ｐｏｗｅｒ  Ｏｖｅｒ  Ｅｔｈｅｒｎｅｔ）（登録商標）に対応して給電されてもよい。あるいは撮像装置１０は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ケーブル等を介して給電されてもよく、個別の電源を備えてもよい。
【００１５】
撮像装置１０は、撮像部１０１、通信部１０２、ＣＰＵ１０３、および記憶部１０４を備える。
撮像部１０１は、撮像光学系を構成するレンズ群及び撮像素子を備える。レンズ群は、入射光を結像するための光学レンズを有し、入射光を撮像素子に集光させる。撮像素子は、光をアナログ画像信号に変換する素子であり、例えば、ＣＣＤ、ＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）等で構成することができる。撮像部１０１は、撮像素子から得られるアナログ画像信号に画像処理を施し、信号を符号化して符号化画像信号を出力する。
【００１６】
通信部１０２は、撮像装置１０と、情報処理装置２０を含む外部機器との間の無線または有線の通信インタフェースを提供する。すなわち、通信部１０２は、無線通信により情報処理装置２０等の外部機器と通信してよい。この無線通信は、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｚ−Ｗａｖｅ（商標）、ＺｉｇＢｅｅ（登録商標）、ＵＷＢ（Ｕｌｔｒａ  Ｗｉｄｅ  Ｂａｎｄ）等の無線ＰＡＮ（Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む。また、Ｗｉ−Ｆｉ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）（登録商標）等の無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）や、ＷｉＭＡＸ（登録商標）等の無線ＭＡＮ（Ｍｅｔｒｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む。さらに、ＬＴＥ／３Ｇ等の無線ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む。
また、通信部１０２は、有線のＬＡＮで情報処理装置２０等の外部機器と通信してもよい。この有線ＬＡＮとしては、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）等の通信規格を満足する複数のルータ、スイッチ、ケーブル等の構成が挙げられる。なお、通信部１０２は外部機器と通信を可能であればよく、通信の規格、規模、構成は上記に限定されない。
【００１７】
ＣＰＵ１０３は、撮像装置１０の各部における演算や論理判断等の処理を行う演算処理部であり、システムバスを介して各構成部（１０１、１０２、および１０４）を制御する。撮像装置１０の機能や処理は、ＣＰＵ１０３が記憶部１０４に格納されているプログラムを読み出し、このプログラムを実行することにより実現されてもよい。
記憶部１０４は、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の電気的に消去可能な不揮発性メモリで構成される。記憶部１０４は、さらに、ＣＰＵ１０３の主メモリ、ワークメモリとして機能するＲＡＭ、外部メモリ、着脱可能な記憶媒体等を含んでもよい。この記憶部１０４には、ＣＰＵが使用する各種情報が記録される。記憶部１０４には、例えば、撮像部１０１により撮像された撮像画像を記憶してもよい。
【００１８】
次に、情報処理装置２０について説明する。
情報処理装置２０は、例えば、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）であってもよく、タブレット端末、スマートフォン等の携帯用端末であってもよい。
情報処理装置２０は、通信部２０１、ＣＰＵ２０２、記憶部２０３、表示部２０４、および入力部２０５を備える。情報処理装置２０は、さらに、通過検知部２０６、カウント部２０７、閾値算出部２０８、通過頻度算出部２０９、および待ち時間算出部２１０を沿備える。
【００１９】
通信部２０１は、撮像装置１０の通信部１０２と同様、情報処理装置２０と、撮像装置１０を含む外部機器との間の無線または有線の通信インタフェースを提供する。通信部２０１は、ネットワーク３０を介して撮像装置１０から撮像画像を受信するとともに、情報処理装置２０と撮像装置１０との間で各種情報の通信を行う。
ＣＰＵ２０２は、撮像装置１０のＣＰＵ１０３と同様、情報処理装置２０の各部における演算や論理判断等の処理を行う演算処理部であり、システムバスを介して各構成部（２０１、２０３〜２１０）を制御する。
記憶部２０３は、撮像装置１０の記憶部１０４と同様、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の電気的に消去可能な不揮発性メモリで構成される。記憶部２０３は、さらに、ＣＰＵ２０２の主メモリ、ワークメモリとして機能するＲＡＭ、外部メモリ、着脱可能な記憶媒体等を含んでもよい。記憶部２０３は、後述する、待ち時間算出に使用した待ち人数カウントや、通過頻度、予測待ち時間などの情報を関連付けて記録蓄積する。
【００２０】
表示部２０４は、撮像装置１０から受信した撮像画像を表示したり、撮像装置１０に設定された設定情報、待ち時間算出部２１０で算出された待ち時間、その他各種情報を適宜表示装置上に表示する。なお、図１には情報処理装置２０内に表示部２０４を備える構成が示されているが、本実施形態はこれに限定されない。例えば、表示部２０４は情報処理装置２０に備えられずに、情報処理装置２０が通信部２０１を介して、外部装置としての表示部（不図示）を制御するものとしてもよい。
入力部２０５は、マウス入力、キーボード入力、タッチ入力等の各種ユーザインタフェースを介してユーザからの指示入力を受け付ける。この入力部２０５に、例えば、撮像装置１０の設定を変更する指示が入力されると、ＣＰＵ２０２が入力された情報に基づいて、撮像装置１０の設定を変更するための制御命令を生成し、通信部２０１を介して撮像装置１０へ生成された制御命令を出力する。このように、入力部２０５へ入力された情報に基づいて、情報処理装置２０は、撮像装置１０の設定を適宜変更することができる。
【００２１】
ここで、図２を参照して、本実施形態における待ち行列中の待ち人数のカウントおよび待ち行列中の所定位置の通過検知を説明する。
待ち行列の待ち時間は、過去の一定時間の統計から算出された通過頻度と、撮像装置１０により撮像された画像を解析することで推定される待ち行列長を示す待ち人数とから、予測することができる。このとき、予測待ち時間は、物体数を人とすると下記の式で算出できる。
ＷＴｐ＝ＱＬ／ＴＨ
（ただし、ＷＴｐ：予測待ち時間；ＱＬ：待ち人数；ＴＨ：通過頻度）
【００２２】
図２は、本実施形態に係る待ち時間予測システムを、実環境に適用した一例として、タクシー乗車の待ち行列に適用した場合を示す。
図２において、破線２２は、監視カメラである撮像装置１０によりタクシー２１に乗車するための待ち行列を撮像する範囲であり、待ち行列内で待ち人数のカウントを行う範囲を表す。
待ち行列からタクシー２１に向かう方向に設定される検知線２３は、情報処理装置２０の通過検知部２０６が待ち行列中の人物の通過を検知するために仮想的に設定される検知線である。待ち行列を構成する人物は、矢印２４が示す待ち行列の進行方向（通過検知を行う方向）に順次移動し、タクシー２１に乗車するまでに必ず検知線２３を通過することになる。この検知線２３は、待ち行列に並ぶ人物がタクシー２１に乗車するまでに通過する位置であれば任意の場所に設定されてよいが、通常、図２に示すように、待ち行列を構成する人体に対してサービスが提供される待ち行列の先頭部に設定されてよい。検知線２３を待ち行列の進行方向２４とは逆方向に通過する人物は、通過人数にカウントされない。
【００２３】
図１に戻り、情報処理装置２０の通過検知部２０６は、撮像画像内で待ち時間を予測すべき待ち行列中に予め設定された所定位置（検知線２３）を人体が通過した事象を検知し、通過頻度算出部２０９に出力する。なお、待ち行列中の人物が検知線２３を通過した事象は、赤外線などによる通過センサで検知してもよく、あるいは撮像画像から人体の通過を検知する画像解析機能を持ったカメラを用いてもよい。この場合、通過検知部２０６は、情報処理装置２０の外部に設けられ、取得した通過検知結果を情報処理装置２０の通過頻度算出部２０９に送信してもよい。また、撮像装置１０で撮像された映像を情報処理装置２０（コンピュータ）内のソフトウェアで画像解析することで人体の通過を検知してもよく、上記を任意に組み合わせてもよい。
【００２４】
情報処理装置２０のカウント部２０７は、撮像装置１０から受信される撮像画像を解析し、所定範囲内（図２に示される撮像装置１０の撮像範囲２２内）の人体を検出し、検出された人体の数を待ち人数としてカウントする。カウント部２０７によりカウントされた人体の数は、待ち行列の行列長を示すものであり、閾値算出部２０８および待ち時間算出部２１０に出力されるとともに、記憶部２０３に記憶蓄積される。
待ち人数をカウントする範囲２２は、情報処理装置２０の入力部２０５からのユーザ入力により、予め待ち行列が撮像可能な範囲に設定されてよい。また、待ち人数をカウントする範囲２２の設定条件によって、一つまたは複数の撮像装置１０を使用して、待ち人数をカウントしてもよい。
【００２５】
情報処理装置２０の閾値算出部２０８は、待ち人数の閾値を算出する。具体的には、記憶部２０３に記憶蓄積される待ち行列の過去の待ち人数と、当該待ち人数がカウントされた際に待ち時間算出部２１０により算出された予測待ち時間との統計値から、待ち人数の閾値を算出することができる。あるいは、この待ち人数の閾値は、予め初期値として設定され記憶部２０３に記憶されてもよい。
この待ち人数の閾値は、カウント部２０７によりカウントされた待ち人数が当該閾値以上であれば、待ち時間算出部２１０により算出される推定待ち時間が安定する（発散しない）ものと推定可能な閾値である。閾値算出部２０８は、さらに、カウント部２０７によりカウントされた人体の数が、算出された待ち人数の閾値以上であるか、あるいは閾値未満であるかを判定し、判定結果を通過頻度算出部２０９へ出力する。閾値算出部２０８が、算出された待ち人数の閾値とカウントされた待ち人数とを比較することにより、複数の通過頻度の算出方法のうち所定の通過頻度の算出方法が決定される。なお、この閾値は、カウントされた待ち人数に替えて、あるいはこれに加えて、待ち行列の行列長自体についての長さの閾値として設定されてもよい。この閾値算出の詳細は、図３および図４を参照して後述する。
【００２６】
情報処理装置２０の通過頻度算出部２０９は、閾値算出部２０８から入力される判定結果に基づいて、カウントされた人体の数が待ち人数の閾値以上である場合と閾値未満である場合とで、異なる条件で通過頻度を算出する。
具体的には、通過頻度算出部２０９は、カウントされた人体の数が待ち人数の閾値以上である場合には、予め設定された所定時間内に通過検知部２０６により何人の人体が検知線２３を通過したものと検知されたかを算出する。この単位時間当たりの通過が検知された人体の数が通過頻度として算出され、待ち時間算出部２１０へ出力されると共に、記憶部２０３に記憶蓄積される。
【００２７】
一方、通過頻度算出部２０９は、カウントされた人体の数が待ち人数の閾値未満である場合には、所定時間内にその通過が検知された人体の数に替えて、異なる通過頻度を算出する。例えば、この場合、通過頻度算出部２０９は、記憶部２０３に記憶蓄積された過去の通過頻度の平均値を通過頻度として算出してもよい。通過頻度算出部２０９により算出された通過頻度は、待ち時間算出部２１０に出力されるとともに、記憶部２０３に記憶蓄積される。この場合の平均通過頻度は、例えば、過去に記憶部２０３に記憶蓄積された予測待ち時間の平均の逆数として算出することができる。
このように、カウントされた待ち人数が閾値未満である、すなわち待ち人数が所定人数より少ない場合に、本実施形態においては、単位時間当たりの通過頻度に替えて、統計上安定的となる異なる通過頻度を算出する。
【００２８】
情報処理装置２０の待ち時間算出部２１０は、記憶部２０３に記憶される、カウントされた待ち人数と、対応する通過頻度とを読み出す。待ち時間算出部２１０は、このカウント部２０７によりカウントされた待ち人数と、通過頻度算出部２０９から入力される通過頻度とに基づいて、待ち行列の待ち時間を算出する。
具体的には、待ち時間算出部２１０は、カウント部２０７によりカウントされた待ち人数を、通過頻度算出部２０９により算出された通過頻度（第１の通過頻度または第２の通過頻度のいずれか）で除算することにより、待ち行列の予測待ち時間を算出する。待ち時間算出部２１０により算出された待ち時間は、記憶部２０３に記憶蓄積されるとともに、表示部２０４に適宜表示出力される。待ち時間算出のタイミングは、入力部２０５から設定された間隔に応じて決定されてよい。
【００２９】
上記のとおり、通過頻度算出部２０９により算出される通過頻度は、カウントされた待ち人数が閾値以上の場合は単位時間当たりの通過頻度であり、閾値未満の場合は、単位時間当たりの通過頻度とは異なる、例えば平均通過頻度となる。このため、本実施形態においては、待ち時間算出部２１０は、カウントされた待ち人数が閾値以上の場合、待ち人数のカウント値を単位時間当たりの通過頻度で除算し、閾値未満の場合、待ち人数のカウント値を平均通過頻度で除算することになる。
【００３０】
＜本実施形態における閾値算出の詳細＞
以下、図３および図４を参照して、本実施形態において閾値算出部２０８が実行する閾値処理の詳細を説明する。
図３は、記憶部２０３に蓄積された予測待ち時間と、当該予測待ち時間の算出に使用された待ち人数とを一例としてプロットしたグラフであり、横軸が待ち人数、縦軸が予測待ち時間を表している。図３においては、待ち人数が１０人以下の場合に、分布３２に示されるように、対応する予測待ち時間の値が発散し、予測待ち時間が安定しないことが分かる。この原因の一つは、係員などタクシー待ちの人物とは異なる人物を、待ち人数として検出してカウントしてしまうからである。
【００３１】
閾値算出部２０８は、この予測待ち時間を安定的に算出できないと推定できる待ち人数を閾値として設定する。一例として、図３においては６人とする。
なお、カウントされた待ち人数が閾値以下の場合に使用される通過頻度（平均通過頻度）の算出には、図３にプロットされる過去の予測待ち時間のデータに対して近似式を用いて得られる傾き３１を使用することができる。この傾き３１は、１人あたりの平均待ち時間を示し、平均通過頻度はこの傾き３１が示す平均待ち時間の逆数として算出されることになる。
【００３２】
閾値算出部２０８は、カウントされた待ち人数が閾値（例えば６人）以下の場合、この傾き３１によって求めた平均待ち時間を用いて、少ない待ち人数の場合の予測待ち時間を算出する。例えば、閾値以下の場合で平均待ち時間が１０秒、待ち人数が２人の場合は、平均通過頻度は、１／１０となり、予測待ち時間は２０秒として算出される。
なお、この平均待ち時間の算出においては、待ち時間が算出される度に平均待ち時間を更新してもよいし、ある周期的なタイミングで更新してもよい。あるいは、平均待ち時間は、ある所定期間内に算出された過去の平均待ち時間のデータから算出された固定値でもよい。
【００３３】
図４は、カウントされた待ち人数が閾値以下の場合に平均待ち時間を使用した平均通過頻度を用いて予測待ち時間を算出した場合の予測待ち時間と、当該予測待ち時間の算出に使用された待ち人数とを一例としてプロットしたグラフである。図４の横軸が待ち人数、縦軸が予測待ち時間を表している。
図３において待ち人数の閾値以下の場合の予測待ち時間の分布３２が発散していることと比較すると、図４においては、待ち人数の閾値以下の予測待ち時間が補正されて、傾き４１の近傍に分布していることがわかる。
【００３４】
＜本実施形態における待ち時間予測処理の処理フロー＞
図５は、本実施形態に係る情報処理装置２０が実行する待ち時間予測処理の一例を示すフローチャートである。図５に示す処理は、例えば、撮像装置１０および情報処理装置２０により構成される待ち時間予測システムが起動された時点から開始されるが、図５に示す処理の開始タイミングは上記に限定されない。情報処理装置２０は、ＣＰＵ２０２が必要なプログラムを記憶部２０３から読み出して実行することにより、図５に示す処理を実行することができる。
ただし、図１に示す各要素のうち少なくとも一部が専用のハードウエアとして動作することで図５の処理が実現されるようにしてもよい。この場合、専用のハードウエアは、ＣＰＵ２０２の制御に基づいて動作する。
【００３５】
Ｓ１で、ＣＰＵ２０２は、待ち行列中の待ち人数をカウントすべきカウント範囲を、カウント部２０７へ初期設定する。このカウント範囲は、ユーザが入力部２０５から入力した設定情報に基づいて設定されてよい。同様に、ＣＰＵ２０２は、待ち時間予測を実行するタイミングを、通過頻度算出部２０９、待ち時間算出部２１０、および表示部２０４へ初期設定する。なお、これらのユーザ入力による初期設定は必ずしも毎回行う必要はなく、記憶部２０３に予め記憶された値をＣＰＵ２０２が自動的に読み込んで初期設定を実行してもよい。
ここで、平均通過頻度の算出（後述するＳ６）において使用するための予測待ち時間や待ち人数の閾値の蓄積データが不足している場合がある。この場合は、ＣＰＵ２０２は、初期値として、例えば平均待ち時間１０秒、閾値１０人といったデータを初期値として通過頻度算出部２０９へ設定し、その後、初期値データを更新していけばよい。
【００３６】
Ｓ２で、通過検知部２０６は、赤外線などによる通過センサからのセンサ信号や撮像装置１０での画像解析結果を取得し、待ち行列中の人体が検知線２３を通過したことを検知する。
Ｓ３で、カウント部２０７は、Ｓ１で設定されたカウント範囲内に存在する人体の数（待ち人数）をカウントする。
Ｓ４で、閾値算出部２０８は、Ｓ３でカウントされた待ち人数を、待ち人数の閾値と比較することにより閾値判定を実行し、その閾値判定結果を通過頻度算出部２０９へ出力する。Ｓ３でカウントされた待ち人数が閾値以上である場合（Ｓ４：Ｙｅｓ）、Ｓ５へ進む。一方、Ｓ３でカウントされた待ち人数が閾値未満である場合（Ｓ４：Ｎｏ）、Ｓ６へ進む。
【００３７】
Ｓ４で待ち人数が閾値以上の場合、Ｓ５で、通過頻度算出部２０９は、通常の通過頻度算出処理を行う。具体的には、Ｓ５で、通過頻度算出部２０９は、通過検知部２０６により取得された検知線２３を通過した人体の検知結果から、行列の進行方向２４に、予め設定された所定時間内における人体の通過頻度を算出する。この通過頻度の算出は、Ｓ１で設定された待ち時間予測タイミングに応じて実行されてよい。算出された通過頻度は記憶部２０３に記憶される。
一方、Ｓ４で待ち人数が閾値未満の場合、Ｓ６で、通過頻度算出部２０９は、平均通過頻度算出を行う。この平均通過頻度は、上述したように、記憶部２０３に記憶蓄積されている予測待ち時間と対応する待ち人数との蓄積データから統計的に算出される。
【００３８】
Ｓ７で、待ち時間算出部２１０は、カウント部２０７により算出された待ち行列中の待ち人数（行列長）と、通過頻度算出部２０９により算出された通過頻度とから、待ち時間を算出する。この待ち時間の算出は、Ｓ１で設定された待ち時間予測タイミングに応じて実行されてよい。算出された待ち時間は、予測待ち時間として、記憶部２０３に記憶される。なお、待ち時間予測システムの起動時など、通過頻度が０になってしまう場合を考慮して、通過頻度の０以外の初期値をあらかじめ設定しておけばよい。
【００３９】
Ｓ８で、表示部２０４は、Ｓ７で求めた予測待ち時間を表示装置上に表示する。なお、Ｓ１で表示部２０４に設定されたタイミングに応じて、過去の予測待ち時間や通過頻度などのデータを表示してもよい。また、通過頻度が０の場合には、予め設定した表示をするようにしておけばよい。
Ｓ９で、待ち時間算出部２１０あるいはＣＰＵ２０２は、待ち時間予測処理を終了するか否かを判断する。待ち時間の予測の処理を続けて実行する場合（Ｓ９：Ｙｅｓ）、Ｓ２へ戻り、一方終了する場合（Ｓ９：Ｎｏ）は、待ち時間予測処理を終了する。
【００４０】
以上説明したように、本実施形態によれば、閾値算出部２０８が、待ち行列中でカウントされた待ち人数と、待ち人数の閾値とを比較する。この待ち人数の閾値は、予め取得された待ち人数と予測待ち時間との統計データから、予測待ち時間を安定的に推定可能な閾値を測定することで算出することができる。
そして、カウントされた待ち人数が閾値未満の場合には、通過頻度算出部２０９は、単位時間当たりの通過頻度に替えて、待ち人数と予測待ち時間の蓄積データを用いて、安定的な通過頻度を算出する。すなわち、待ち人数（待ち行列長）に応じて、待ち時間を予測するための通過頻度の算出方法を変更する。
このように動作することにより、本実施形態によれば、待ち行列中の待ち人数が少ない場合であっても、予測される待ち時間の値が発散することがない。したがって、例えば、待ち人数のカウントにおいて係員などの誤検知を行った場合でも、待ち行列の待ち時間予測における予測精度の低下が有効に防止される。
【００４１】
（実施形態２）
以下、図６および図７を参照して、情報処理装置、情報処理方法およびプログラムの実施形態２を、上記の実施形態１と異なる点についてのみ詳細に説明する。本実施形態は、通過頻度算出部２０９が実行する通過頻度の算出において、待ち行列中の人物の検知線２３の通過が最後に検知された時刻からしばらくの間、新たな通過の検知がなされない場合を考慮して、通過頻度を算出する。これにより、例えば、夜間等、サービス提供間隔が予め設定した通過頻度算出のための単位時間を上回る場合であっても、待ち時間を適切に予測することが容易となる。
【００４２】
図６は、実施形態２における通過頻度の算出を説明する図である。
待ち行列中の人物の検知線２３の通過が最後に検知された時刻からしばらくの間、新たな通過の検知がなされない場合を考える。実施形態１によれば、通常の通過頻度（図５のＳ５）は、予め設定された時間間隔（Ｔ）内における検知線２３を通過した人数を用いて算出される。この場合、図６に示すように、現在から時間（Ｔ）分を遡った期間６１内には、検知線２３を通過した人物がいないため０となる。
【００４３】
このように、時間間隔（Ｔ）の間に検知線２３を通過した人数が０人とカウントされた場合、通過頻度は０／Ｔ＝０となる。待ち時間算出部２１０が予測待ち時間を算出する際に、通過頻度が０では分母にすることができないため、予測待ち時間を適切に更新できなくなってしまう。
そこで、実施形態２に係る通過頻度算出部２０９は、最後に通過検知された時刻（Ｔlast）から以降、新たな人物が検知線２３を通過したことが検知されない場合、すなわちＴlast＞Ｔである場合、最後の通過頻度を使用する。すなわち、通過頻度算出部２０９は、最後の通過者６２が検知された時点で使用された通過頻度（ＴＨ１）を使用する。
なお、この最後の通過頻度（ＴＨ１）を用いて、設定された時間間隔（Ｔ）の値を適宜調整してもよい。待ち時間算出部２１０は、この最後に使用された通過頻度（ＴＨ１）を用いて予測待ち時間を算出する。
【００４４】
図７は、実施形態２に係る待ち時間予測処理の一例を示すフローチャートである。図７において、実施形態１と同一の処理に対しては図５の処理と同一の符号を付し、その説明を省略する。
Ｓ５で、通過頻度算出部２０９は、一旦、図５のＳ５と同様に、単位時間当たりの通過頻度を算出する。
Ｓ１０で、実施形態２に係る通過頻度算出部２０９は、Ｓ５で算出された通過頻度が０か否かを判定する。通過頻度が０でない場合（Ｓ１０：Ｙｅｓ）、図５を参照して説明した実施形態１と同様の処理、すなわちカウントされた待ち人数が閾値未満の場合に平均通過頻度を算出して（Ｓ６）、Ｓ７に進む。一方、Ｓ５で算出された通過頻度が０の場合（Ｓ１０：Ｎｏ）、Ｓ１１に進む。
【００４５】
Ｓ１１で、実施形態２に係る通過頻度算出部２０９は、最後の予測待ち時間に使用された通過頻度を記憶部２０３より取得して待ち時間算出部２１０へ出力するとともに、今回の待ち時間算出に用いられるべき通過頻度として記憶部２０３に記憶する。Ｓ７〜Ｓ９の処理は実施形態１と同様であるため、その説明を省略する。
以上説明したように、本実施形態によれば、待ち行列中の人物の検知線２３の通過が最後に検知された時刻からしばらくの間、新たな通過の検知がなされず、通過頻度が０となる場合に、最後に使用された通過頻度を使用する。これにより、通過頻度が０となる場合にも適切に待ち時間を予測することができ、待ち行列の待ち時間予測における予測精度の低下が有効に防止される。
【００４６】
＜変形例＞  
上記実施形態において、図５および図７中のＳ４において、カウントされた待ち人数が閾値以下の場合、通過頻度算出部２０９は、Ｓ６で平均通過頻度を算出することに替えて、上記の最後の通過頻度（ＴＨ１）を待ち時間算出部２１０に出力してもよい。
あるいは、複数の閾値（閾値１、閾値２、・・・）を設定し、閾値算出部２０８により、少ない閾値未満と判定された場合に、最後の通過頻度（ＴＨ１）を使用してもよい。例えば、待ち人数が２人以下の場合は最後の通過頻度（ＴＨ１）を使用し、３~７人は平均通過頻度を使用し、８人以上は通常の通過頻度の算出を使用すればよい。このように待ち人数の閾値を複数設け、それぞれ異なる通過頻度を算出するように閾値算出部２０８を構成することができる。例えば、最後の通過頻度（ＴＨ１）が使用され、その後ある時間間隔に１、２人が検知線２３を通過したと検知された場合であって、しばらく時間が経過して１、２人が待ち人数にカウントされた場合は、同じ条件と推定するのが有効であるためである。
【００４７】
なお、図１に示した機能ブロックの構成は一例であり、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、いずれかの機能ブロックが複数の機能を行うブロックに分かれてもよい。また、図１に示す機能ブロックの少なくとも一部がハードウエアとして実装されてもよい。ハードウエアにより実装する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからＦＰＧＡ（Field-Programmable Gate Array）上に自動的に専用回路を生成すればよい。また、ＦＰＧＡと同様にして、Ｇａｔｅ  Ａｒｒａｙ回路を形成し、ハードウエアとして実装されるようにしてもよく、ＡＳＩＣ（Application Specific Integrated Circuit）により実現するようにしてもよい。
【００４８】
＜他の実施形態＞
なお、上述した各実施形態は、その複数を組み合わせて実現することが可能である。
また、本発明は、上述の実施形態の１以上の機能を実現するプログラムによっても実現可能である。すなわち、そのプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータ（またはＣＰＵやＭＰＵ等）における１つ以上のプロセッサーがプログラムを読出し実行する処理により実現可能である。また、そのプログラムをコンピュータ可読な記録媒体に記録して提供してもよい。
また、コンピュータが読みだしたプログラムを実行することにより、実施形態の機能が実現されるものに限定されない。例えば、プログラムの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって上記した実施形態の機能が実現されてもよい。
【符号の説明】
【００４９】
１０…撮像装置、２０…情報処理装置、３０…ネットワーク、１０１…撮像部、１０２…通信部、１０３…ＣＰＵ、１０４…記憶部、２０１…通信部、２０２…ＣＰＵ、２０３…記憶部、２０４…表示部、２０５…入力部、２０６…通過検知部、２０７…カウント部、２０８…閾値算出部、２０９…通過頻度算出部、２１０…待ち時間算出部
【図１】
2018205872.tif 000003
【図２】
2018205872.tif 000004
【図３】
2018205872.tif 000005
【図４】
2018205872.tif 000006
【図５】
2018205872.tif 000007
【図６】
2018205872.tif 000008
【図７】
2018205872.tif 000009