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

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

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

<>
  • 特開-距離可視化装置およびそのプログラム 図1
  • 特開-距離可視化装置およびそのプログラム 図2
  • 特開-距離可視化装置およびそのプログラム 図3
  • 特開-距離可視化装置およびそのプログラム 図4
  • 特開-距離可視化装置およびそのプログラム 図5
  • 特開-距離可視化装置およびそのプログラム 図6
  • 特開-距離可視化装置およびそのプログラム 図7
  • 特開-距離可視化装置およびそのプログラム 図8
  • 特開-距離可視化装置およびそのプログラム 図9
  • 特開-距離可視化装置およびそのプログラム 図10
  • 特開-距離可視化装置およびそのプログラム 図11
  • 特開-距離可視化装置およびそのプログラム 図12
  • 特開-距離可視化装置およびそのプログラム 図13
  • 特開-距離可視化装置およびそのプログラム 図14
  • 特開-距離可視化装置およびそのプログラム 図15
  • 特開-距離可視化装置およびそのプログラム 図16
  • 特開-距離可視化装置およびそのプログラム 図17
  • 特開-距離可視化装置およびそのプログラム 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024068397
(43)【公開日】2024-05-20
(54)【発明の名称】距離可視化装置およびそのプログラム
(51)【国際特許分類】
   G06T 7/70 20170101AFI20240513BHJP
   G06T 7/00 20170101ALI20240513BHJP
   G06Q 50/26 20240101ALI20240513BHJP
【FI】
G06T7/70 A
G06T7/00 660B
G06Q50/26 300
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022178820
(22)【出願日】2022-11-08
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り (1)令和4年5月24日に日本放送協会放送技術研究所が開催した「技研公開2022」のプレス公開において発表 (2)令和4年5月26日から29日に日本放送協会放送技術研究所が開催した「技研公開2022」において発表
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】菊地 幸大
(72)【発明者】
【氏名】遠藤 伶
(72)【発明者】
【氏名】西出 彩花
【テーマコード(参考)】
5L049
5L050
5L096
【Fターム(参考)】
5L049CC35
5L050CC35
5L096BA02
5L096CA04
5L096DA04
5L096EA02
5L096FA26
5L096FA62
5L096FA66
5L096FA69
5L096GA51
5L096HA11
5L096KA04
(57)【要約】
【課題】ソーシャルディスタンスを確保するために好適な身体的距離を可視化することが可能な距離可視化装置を提供する。
【解決手段】距離可視化装置3は、センサによって測定された人物の接地位置の床平面の座標リストから、人物ごとに最も近い人物との距離を算出する相対位置算出部31と、人物ごとの距離を可視化した距離可視化図形を描画する距離可視化図形描画部320と、座標リストを参照して、距離可視化図形描画部で描画された人物ごとの距離可視化図形を床平面に対応する二次元座標上に配置した図形配置画像を生成する図形配置部33と、図形配置画像を、プロジェクタPの投影面に射影変換した投影画像を生成する投影画像変換部34と、を備える。
【選択図】図12
【特許請求の範囲】
【請求項1】
センサによって測定された人物の接地位置の床平面の座標リストから、人物間の距離を可視化した図形をプロジェクタで投影するための投影画像を生成する距離可視化装置であって、
前記座標リストから、人物ごとに最も近い人物との距離を算出する相対位置算出部と、
前記相対位置算出部で算出された人物ごとの距離を可視化した距離可視化図形を描画する距離可視化図形描画部と、
前記座標リストを参照して、前記距離可視化図形描画部で描画された人物ごとの距離可視化図形を床平面に対応する二次元座標上に配置した図形配置画像を生成する図形配置部と、
前記図形配置画像を、前記プロジェクタの投影面に射影変換した前記投影画像を生成する投影画像変換部と、
を備えることを特徴とする距離可視化装置。
【請求項2】
前記相対位置算出部は、さらに、人物ごとに最も近い人物との方向を算出するものであって、
前記相対位置算出部で算出された人物ごとの方向に対して、前記距離に応じて前記人物を誘導する方向に対応する位置に方向誘導図形を描画する方向誘導図形描画部と、
人物ごとに、前記距離可視化図形と前記方向誘導図形とを合成する合成部と、をさらに備え、
前記図形配置部は、前記距離可視化図形の代わりに、前記合成部で合成された図形を床平面に対応する二次元座標上に配置して前記図形配置画像を生成することを特徴とする請求項1に記載の距離可視化装置。
【請求項3】
前記距離可視化図形描画部は、前記距離を予め定めた基準で区分した区分ごとに異なる距離可視化図形を描画することを特徴とする請求項2に記載の距離可視化装置。
【請求項4】
前記方向誘導図形描画部は、前記距離を予め定めた基準で区分した区分ごとに異なる方向誘導図形を描画することを特徴とする請求項2に記載の距離可視化装置。
【請求項5】
前記距離可視化図形描画部は、前記距離可視化図形を予め定めた半径の円とし、前記距離を予め定めた基準で区分した区分ごとに、前記円の色またはパターンを変えて描画することを特徴とする請求項2に記載の距離可視化装置。
【請求項6】
コンピュータを、請求項1から請求項5のいずれか一項に記載の距離可視化装置として機能させるための距離可視化プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロジェクションマッピングによる人物間の距離を可視化する距離可視化装置およびそのプログラムに関する。
【背景技術】
【0002】
近年、新型コロナ感染症をはじめ、接触や飛沫による感染症の拡大を抑えるため、人の密集を避け、適切な身体的距離(ソーシャルディスタンス)を確保することが推奨されている。とくに、人が集まる店舗、施設、イベント会場などでは、看板による周知、立ち位置をマーキングする(特許文献1参照)などの施策がとられている。
しかし、これらの施策は実際の密集状態に応じた注意喚起を行うことができない。
そこで、超音波センサを用いた距離センシング技術によって、超音波センサを携帯した人同士の距離を測定し、接近状態となった場合にアラームを発することで、適切なソーシャルディスタンスの確保を促す手法が開示されている(非特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2021-185406号公報
【非特許文献】
【0004】
【非特許文献1】“従業員のソーシャルディスタンスを瞬時に測定できる、超音波センサの実力”,[online],2020年7月29日,TDK株式会社,[令和4年10月17日検索]、インターネット<URL:https://www.tdk.com/ja/featured_stories/entry_018.html>
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、超音波センサを用いた手法は、超音波センサを人に携帯させる必要があり、超音波センサの配布にコストがかかってしまう。
さらに、この手法は、超音波センサを携帯していない人との密集状態を検知できないという問題がある。
【0006】
そこで、本発明は、特殊なデバイスを携帯せずに、人の密集状態を検知し、ソーシャルディスタンスを確保するために好適な身体的距離を可視化することが可能な距離可視化装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0007】
前記課題を解決するため、本発明に係る距離可視化装置は、センサによって測定された人物の接地位置の床平面の座標リストから、人物間の距離を可視化した図形をプロジェクタで投影するための投影画像を生成する距離可視化装置であって、相対位置算出部と、距離可視化図形描画部と、図形配置部と、投影画像変換部と、を備える構成とした。
【0008】
かかる構成において、距離可視化装置は、相対位置算出部によって、座標リストから、人物ごとに最も近い人物との距離を算出する。
そして、距離可視化装置は、距離可視化図形描画部によって、相対位置算出部で算出された人物ごとの距離を可視化した円などの距離可視化図形を描画する。
そして、距離可視化装置は、図形配置部によって、座標リストを参照して、距離可視化図形描画部で描画された人物ごとの距離可視化図形を床平面に対応する二次元座標上に配置した図形配置画像を生成する。これによって、図形配置画像には、検出対象の空間に存在する人物の接地位置に対応した図形が人数分配置されることになる。
【0009】
そして、距離可視化装置は、投影画像変換部によって、図形配置画像を、プロジェクタの投影面に射影変換した投影画像を生成する。
この投影画像がプロジェクタから投影されることで、床平面の人物の位置に対応して歪のない距離可視化図形がマッピングされることになる。
【0010】
なお、距離可視化装置の相対位置算出部は、さらに、人物ごとに最も近い人物との方向を算出することとし、距離可視化装置は、方向誘導図形描画部と、合成部と、をさらに備える構成としてもよい。
そして、距離可視化装置は、方向誘導図形描画部によって、相対位置算出部で算出された人物ごとの方向に対して、距離に応じて人物を誘導する方向に対応する位置に方向誘導図形を描画する。
そして、距離可視化装置は、合成部によって、人物ごとに、距離可視化図形と方向誘導図形とを合成する。
そして、距離可視化装置は、図形配置部によって、座標リストを参照して、合成部で合成された図形を床平面に対応する二次元座標上に配置して図形配置画像を生成する。
これによって、図形配置画像には、人物の接地位置に対応して、距離を可視化した距離可視化図形と、方向を誘導する方向誘導図形とが人数分配置されることになる。
【0011】
そして、距離可視化装置は、投影画像変換部によって、図形配置画像を、プロジェクタの投影面に射影変換した投影画像を生成する。
この投影画像がプロジェクタから投影されることで、床平面の人物の位置に対応して歪のない距離可視化図形および方向誘導図形がマッピングされることになる。
なお、距離可視化装置は、コンピュータを、前記した各部として機能させるための距離可視化プログラムで動作させることができる。
【発明の効果】
【0012】
本発明によれば、特殊なデバイスを携帯せずに、人の密集状態を検知し、ソーシャルディスタンスを確保するために好適な身体的距離を可視化したプロジェクタ用の画像を生成することができる。
【図面の簡単な説明】
【0013】
図1】本発明の実施形態に係る距離可視化装置を含んだプロジェクションマッピングシステムの全体構成を模式的に示す斜視図である。
図2】参考例の実施形態に係る接地位置推定モデル学習装置の構成を示すブロック構成図である。
図3】参考例の実施形態に係る接地位置推定モデル学習装置に入力する訓練データを説明する説明図であって、(a)は物体画像、(b)は正解データの例を示す図である。
図4】参考例の実施形態に係る接地位置推定モデル学習装置の接地位置マスク部でランダムに生成する訓練データの例を説明するための説明図である。
図5】参考例の実施形態に係る接地位置推定モデル学習装置で学習するニューラルネットワークの構造の例を示すニューラルネットワーク構造図である。
図6】参考例の実施形態に係る接地位置推定モデル学習装置で学習するニューラルネットワークの出力値を説明するための説明図である。
図7】参考例の実施形態に係る接地位置推定モデル学習装置の動作を示すフローチャートである。
図8】参考例の実施形態に係る接地位置推定装置の構成を示すブロック構成図である。
図9】参考例の実施形態に係る接地位置推定装置の位置補正部における物体の移動量に基づく補正を説明するための説明図であって、(a)は時刻t-1,tの物体の位置関係、(b)は補正内容を説明するための説明図である。
図10】参考例の実施形態に係る接地位置推定装置の位置補正部における物体の上部領域と接地位置との相対位置に基づく補正を説明するための説明図であって、(a)は時刻t-1,tの単純平均による位置補正、(b)は平均相対位置による位置補正を説明するための説明図である。
図11】参考例の実施形態に係る接地位置推定装置の動作を示すフローチャートである。
図12】本発明の実施形態に係る距離可視化装置の構成を示すブロック構成図である。
図13】床平面における物体の位置、物体同士の距離および方向を説明するための説明図である。
図14】本発明の実施形態に係る距離可視化装置の距離可視化図形描画部が描画する図形の例を示す図であって、(a)は距離ラベル(疎)、(b)は距離ラベル(密)、(c)は距離ラベル(過密)に対応する距離可視化図形を示す。
図15】本発明の実施形に係る距離可視化装置の方向誘導図形描画部が描画する図形の例を示す図であって、(a)は距離ラベル(疎)、(b)は距離ラベル(密)、(c)は距離ラベル(過密)に対応する方向誘導図形を示す。
図16】本発明の実施形態に係る距離可視化装置の合成部が生成する図形の例を示す図であって、(a)は距離ラベル(疎)、(b)は距離ラベル(密)、(c)は距離ラベル(過密)に対応する合成図形を示す。
図17】本発明の実施形に係る距離可視化装置がプロジェクタによって投影する投影画像の例を示す図であって、(a)は距離ラベル(疎)、(b)は距離ラベル(密)、(c)は距離ラベル(過密)に対応する投影画像である。
図18】本発明の実施形態に係る距離可視化装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態について図面を参照して説明する。
<プロジェクションマッピングシステム>
まず、図1を参照して、本発明の実施形態に係る距離可視化装置を含んだプロジェクションマッピングシステムの全体構成について説明する。
【0015】
プロジェクションマッピングシステム100は、センサSが検出した物体(以下、人物Hとする)の接地位置を推定し、物体間の距離を可視化した図形をプロジェクタPから投影するシステムである。ここでは、プロジェクションマッピングシステム100は、物体の検出空間において、感染症対策として、一番近い人物H同士で、距離がどの程度離れているかを示す距離可視化図形Gと、人物Hの頭部の方向を誘導する方向誘導図形Gとを投影することで、人物の密状態を回避するように人物の動きを誘導する。
例えば、図1の例では、人物Hの接地位置を中心として、半径1m程度の円(距離可視化図形G)と、その円周上にキャラクタの図形(方向誘導図形G)とが投影された状態を示している。
【0016】
ここで、人物H,Hと人物H,Hとがそれぞれ一番近いとする。この場合、プロジェクションマッピングシステム100は、人物H,Hが所定距離以上離れていれば、距離可視化図形Gとして安全を示す予め定めた図形(図中、一点鎖線の円)と、方向誘導図形Gとして安全を示す予め定めたキャラクタとを投影する。また、プロジェクションマッピングシステム100は、人物H,Hが所定距離以内に近づいていれば、距離可視化図形Gとして危険を示す予め定めた図形(図中、実線の円)と、方向誘導図形Gとして危険を示す予め定めたキャラクタとを投影する。なお、距離可視化図形Gおよび方向誘導図形Gは、安全であれば青色、危険であれば赤色のように色分けしてもよい。
これによって、人物Hは、距離可視化図形Gにより、自分と周りの人物との距離を把握することができ、近すぎる場合、方向誘導図形Gの方向に移動することで、安全な距離を確保することができる。
【0017】
図1に示すように、プロジェクションマッピングシステム100は、センサSと、接地位置推定装置2と、距離可視化装置3と、プロジェクタPと、を備える。なお、ここでは、接地位置推定装置2および距離可視化装置3を、他の構成と同一図面上で記載するように配置しているが、この位置に限定されるものではない。
【0018】
センサSは、検出対象である物体を斜め上方から俯瞰する位置に配置され、物体を検出するための装置である。例えば、センサSは、可視光カメラ、IR(赤外線)カメラ、温度センサ、距離センサなどである。ここでは、センサSとして、8Kカメラ等の可視光カメラを用いた例で説明する。
センサSは、取得したセンサ情報である画像を接地位置推定装置2に出力する。
【0019】
接地位置推定装置2は、センサSが出力するセンサ情報から、AI(ニューラルネットワーク)を用いて、物体(人物)の接地位置を推定するものである。なお、接地位置は、物体の検出空間における予め定めた床面の二次元座標上の位置である。
接地位置推定装置2は、推定した物体の数に応じた接地位置を座標リストとして、距離可視化装置3に出力する。
【0020】
距離可視化装置3は、予め学習済みのAI(ニューラルネットワーク)を用いて推定された接地位置の座標リストから、物体(人物)間の距離を可視化した情報を生成するものである。ここでは、距離可視化装置3は、接地位置推定装置2が推定した接地位置の座標リストを用いる。
距離可視化装置3は、物体間の距離の可視化情報として、物体の検出空間における床面に投影する画像を生成する。
距離可視化装置3は、生成した投影画像をプロジェクタPに出力する。
【0021】
プロジェクタPは、画像を投影する投影装置である。ここでは、プロジェクタPは、距離可視化装置3が生成した投影画像を予め定めた物体の検出空間における床面に投影する。
以上の構成によって、プロジェクションマッピングシステム100は、人物の床面における接地位置を推定して、人物同士の距離に応じた図形を投影することができる。
【0022】
以下、プロジェクションマッピングシステム100を構成する接地位置推定装置2および距離可視化装置3の構成および動作について、さらに詳細に説明する。
また、ここでは、接地位置推定装置2の説明の前に、接地位置推定装置2で用いるAI(ニューラルネットワーク)を学習する接地位置推定モデル学習装置の構成および動作について先に説明しておく。
【0023】
<接地位置推定モデル学習装置の構成>
図2を参照して、参考例の実施形態に係る接地位置推定モデル学習装置1の構成について説明する。
接地位置推定モデル学習装置1は、センサの情報(画像)から物体(人物)の接地位置を推定するニューラルネットワークのモデル(接地位置推定モデル)を学習するものである。
接地位置推定モデル学習装置1は、訓練データ読込部10と、接地位置マスク部11と、記憶部12と、位置推定部13と、誤差算出部14と、パラメータ更新部15と、を備える。
【0024】
訓練データ読込部10は、物体を含んだ物体画像と、物体画像内の物体の予め定めた上部領域と物体の接地位置とを含む正解データとを、接地位置推定モデルを学習するための訓練データとして読み込むものである。
訓練データ読込部10は、訓練データDを記憶した記憶装置(不図示)から、訓練データDを読み込む。
【0025】
ここでは、訓練データDは、人物が映った画像(物体画像D)と、画像上の物体の位置を示す情報(正解データD)とをペアとするデータである。
物体画像Dは、人物が任意の位置に映った画像である。例えば、物体画像Dは、図3(a)に示すように、人物Hが任意の位置に映った画像である。
正解データDは、物体画像Dに映った人物の上部領域の位置と接地位置とを表す画像上の座標である。なお、正解データDは、物体画像Dに映った人物の数だけ存在する。
物体の上部領域の位置は、物体画像Dのxy座標上における物体の予め定めた上部の領域のxy座標の最小値および最大値である。物体の上部とは、床面から離れた物体の予め定めた部位であって、物体が人物であれば、頭部、上半身等である。ここでは、物体の上部を人物の頭部とする。
【0026】
接地位置は、物体画像Dのxy座標上における人物と床面とが接する位置である。
例えば、正解データDは、図3(b)に示すように、人物Hの頭部の矩形領域のxy座標の最小値(xmin,ymin)と最大値(xmax,ymax)とを物体の上部領域の位置とし、人物Hと床面とが接する位置(xgrounded,ygrounded)を接地位置とするデータである。
なお、正解データDは、(xmin,ymin),(xmax,ymax),(xgrounded,ygrounded)は、予め手動で設定しておく。
訓練データ読込部10は、読み込んだ訓練データを接地位置マスク部11に出力する。
【0027】
接地位置マスク部11は、正解データである接地位置をマスク画像で覆った画像を生成し、正解データと対応付けて訓練データを増加させるものである。
ここでは、接地位置マスク部11は、訓練データ読込部10で読み込んだ訓練データの物体画像Dの接地位置をランダムにマスクする。
接地位置マスク部11は、訓練データの正解データDに含まれる接地位置を基準にとする所定範囲内のランダムな位置に、マスク画像を合成する。
マスク画像は、単純に黒や白一色の矩形の画像であってもよいし、物体画像Dから切り抜いた同一物体(人物)の画像であってもよい。なお、物体として人物の接地位置を推定するモデルを学習することを目的とし、人物の手前に物体が人物であることが多い場合、接地位置マスク部11は、人物の画像をマスク画像とすることが好ましい。
【0028】
例えば、接地位置マスク部11は、図4に示すように、人物Hの接地位置を覆う位置にマスク画像Mを合成することで、新たな物体画像D′を生成する。なお、新たな物体画像D′に対応する正解データは、マスク画像を合成する前の物体画像Dに対応付けられている正解データと同じである。なお、人物Hの接地位置を覆う位置は、接地位置を隠す位置であればどこでもよく、マスク画像の中心部分、マスク画像の端部分等、ランダムな位置で接地位置を隠すことが好ましい。
これによって、接地位置マスク部11は、接地位置が覆われた状態でも正解データが既知の物体画像を生成することができる。
また、接地位置マスク部11は、物体画像にマスク画像をランダムに合成することで、訓練データDを増加させることができる。
接地位置マスク部11は、外部から入力した訓練データDと増加させた訓練データとを位置推定部13に出力する。
【0029】
記憶部12は、ニューラルネットワークのモデル(具体的には、そのパラメータ)を記憶するものである。この記憶部12は、半導体メモリ等の一般的な記憶媒体で構成することができる。ここでは、記憶部12は、接地位置推定モデルNを記憶する。
【0030】
接地位置推定モデルNは、画像から物体(人物)の位置を推定するニューラルネットワーク、具体的にはそのパラメータである。接地位置推定モデルNは、学習対象のモデルであって、パラメータには、予め初期値を設定しておく。
【0031】
図5に、接地位置推定モデルNの具体例を示す。
図5に示すように、接地位置推定モデルNは、特徴抽出部N1と推定部N2とで構成される。
特徴抽出部N1は、画像から特徴量を抽出するものである。なお、図5の特徴抽出部N1は、非特許文献1に記載のYOLOXをベースとした畳み込み層で構成されたネットワーク構造である。もちろん、特徴抽出部N1は、SSD、Faster-RCNNなどの一般的な物体検出で用いられるモデルを用いてもよい。
【0032】
推定部N2は、特徴抽出部N1が抽出した特徴量から物体の位置を推定するものである。推定部N2は、推定する対象ごとに線形結合層で構成されたネットワーク構造である。
接地位置推定モデルNの入力は、[himage×wimage×3]の画像データである。himageは画像の高さ、wimageは画像の幅である。3はチャンネル(例えば、RGB)数である。このチャンネル数は、センサSがIRカメラ等であれば“1”とすればよい。ここでは、入力する物体画像を[640×640×3]の画像とした例を示している。
【0033】
接地位置推定モデルNの出力は、上部領域信頼度O1、上部領域O2、接地位置O3、接地位置予測誤差O4である。
なお、上部領域信頼度O1は[Nout×1]、上部領域O2は[Nout×4]、接地位置O3は[Nout×2]、接地位置予測誤差O4は[Nout×1]のデータサイズである。Noutは、ニューラルネットワークの出力サイズであって、採用するネットワーク構造によって異なるが、ここでは、YOLOXをベールとした場合の“8400”とする。
すなわち、接地位置推定モデルNは、画像内に物体がいくつ映っていようがNout個の物体検出結果を出力する。
【0034】
ここで、図6を参照して、接地位置推定モデルNの出力について説明する。
上部領域信頼度O1は、上部領域の推定結果の信頼度を示す値Rであって、値Rは0~1の実数である。上部領域信頼度O1は、その値が大きいほど、推定結果が高いことを表す。
上部領域O2は、物体(人物H)の上部領域(非回転の矩形領域)の位置および大きさを示す情報であって、画像上のxy座標の最小値(xmin,ymin)と最大値(xmax,ymax)である。
接地位置O3は、物体(人物H)が床面と接している位置を示す情報であって、画像上のxy座標の座標値(xgrounded,ygrounded)である。
接地位置予測誤差O4は、推定した接地位置の予測誤差であって、実際の接地位置からどの程度ずれている可能性があるかを示す。接地位置予測誤差の値dは0以上の実数である。例えば、値dが“3”の場合、最大3ピクセル程度、推定した接地位置が実際の接地位置からずれている可能性があることを表す。
図2に戻って、接地位置推定モデル学習装置1の構成について説明を続ける。
【0035】
位置推定部13は、記憶部12に記憶されている接地位置推定モデルNを用いて、接地位置マスク部11で増加された訓練データ(元の訓練データを含む)の物体画像から、物体(人物)の位置を推定するものである。
なお、位置推定部13は、訓練データの物体画像を、接地位置推定モデルNの入力のサイズに縮小して、接地位置推定モデルNの演算を行う。この場合、訓練データの正解データについても、画像サイズの縮小比に応じて座標変換を行っておく。
【0036】
例えば、訓練データDの物体画像Dが8K画像(7680×4320)の場合、位置推定部13は、8K画像のアスペクト比(16:9)を維持したまま、8K画像を640×360に縮小し、縮小画像の下部に640×(640-360)の黒画像を付加して、接地位置推定モデルNへの入力とする。
また、位置推定部13は、訓練データDの正解データDについて、各座標値を640/7680倍することで、縮小画像上の座標値に変換する。
位置推定部13は、接地位置推定モデルNの出力と、縮小画像上の座標値に変換した正解データとを、それぞれNout個、誤差算出部14に出力する。
【0037】
誤差算出部14は、位置推定部13で推定された物体の位置(上部領域,接地位置)と正解データとの誤差を算出するものである。
誤差算出部14は、位置推定部13から出力されるNout個の結果のうち、推定された物体の上部領域(図6の(xmin,ymin),(xmax,ymax))と正解データである物体の上部領域(図3の(xmin,ymin),(xmax,ymax))とが重なる場合の推定結果を正解とみなし、重ならない場合の推定結果を不正解とみなす。
領域が重なるか否かは、画像の重なりの割合を表す指標であるIoU(Intersection over union)を用いることができる。ここでは、IoUが“0”以上の場合に領域が重なっていると判定する。
【0038】
具体的には、推定結果である物体の上部領域のxy座標の最小最大値を(x min,y min),(x max,y max)、正解データである物体の上部領域のxy座標の最小最大値を(x min,y min),(x max,y max)としたとき、IoUは、以下の式(1)で求めることができる。なお、min(a,b)はaとbのうち小さい方の値を返す関数である。また、max(a,b)はaとbのうち大きい方の値を返す関数である。
【0039】
【数1】
【0040】
誤差算出部14は、物体の上部領域の重なりに基づいて、接地位置推定モデルNの4つの出力(上部領域信頼度O1,上部領域O2,接地位置O3,接地位置予測誤差O4:図6参照)の誤差を算出する。
【0041】
上部領域信頼度O1の誤差は、Nout個の出力すべてに対して計算される。なお、正解データが複数の場合、その複数の正解データとNout個の出力すべての総当たりで誤差が計算される。
すなわち、誤差算出部14は、Nout個の出力すべてに対して、物体の上部領域の正解データ(1つとは限らない)との重なりの度合いとなるIoUを計算する。
そして、誤差算出部14は、物体の上部領域の正解データそれぞれに対し、IoUの値が高かった(重なりの度合いが多い)予め定めた数(Nassign個)の接地位置推定モデルNの出力を割り当てる。
そして、誤差算出部14は、いずれかの上部領域の正解データに割り当てられた出力の上部領域信頼度には最大信頼度“1”、いずれかの上部領域の正解データに割り当てられなかった上部領域信頼度には最小信頼度“0”をそれぞれ正解データとして上部領域信頼度O1の誤差計算を行う。この誤差計算には、一般的な交差エントロピ誤差を用いることができる。
なお、Nassignは、Nout個の出力のIoUのうち、上位10件のIoUの値の合計から求められる値である。すなわち、合計値が“1”を上回る場合、Nassignは合計値の小数点以下を切り捨てた数、合計値が“1”以下の場合、Nassignは“1”である。
【0042】
上部領域O2の誤差は、IoUにより推定結果が正解であると判定された出力に対してのみ計算される。誤差算出部14は、IoUにより正解とみなされた物体の上部領域O2に対応した正解データの上部領域をその出力の正解とみなし、1-IoUを誤差として算出する。
【0043】
接地位置O3の誤差は、IoUにより推定結果が正解であると判定された出力に対してのみ計算される。誤差算出部14は、出力された上部領域O2と重なる正解データである上部領域に対応した正解データである接地位置をその出力の正解とみなし、誤差計算を行う。この誤差計算には、一般的な平均二乗誤差を用いることができる。
【0044】
接地位置予測誤差O4の誤差は、IoUにより推定結果が正解であると判定された出力に対してのみ計算される。誤差算出部14は、出力された接地位置O3と、正解データである接地位置との距離を正解とみなし、誤差計算を行う。この誤差計算には、一般的な平均二乗誤差を用いることができる。
誤差算出部14は、算出した誤差をパラメータ更新部15に出力する。
【0045】
パラメータ更新部15は、誤差算出部14で算出された誤差を小さくするように、接地位置推定モデルNのパラメータを更新するものである。
パラメータ更新部15におけるパラメータの更新には、例えば、確率的勾配降下法(SGD:Stochastic Gradient Descent)、Adam(Adaptive moment estimation)等、一般的なニューラルネットワークの最適化手法を用いることができる。
パラメータ更新部15は、確率的勾配降下法等によって、記憶部12に記憶されている接地位置推定モデルNのパラメータを更新する。
【0046】
パラメータ更新部15が予め定めた回数のパラメータ更新を行ったか、パラメータを更新しても誤差が小さくならなかった等の予め定めた学習の終了条件を満たした段階で、接地位置推定モデル学習装置1は、学習を終了する。また、終了条件を満たさなかった場合、接地位置推定モデル学習装置1は、訓練データ読込部10に対して、次の訓練データDの読み込みを指示し、学習を継続する。
例えば、パラメータ更新部15は、用意した訓練データDを180セット読み込んでパラメータ更新を行った場合に、学習を終了する。ここでは、180セットは、訓練データDの物体画像Dが100枚の場合、180×100回パラメータ更新を行うことを意味する。
【0047】
以上説明したように構成することで、接地位置推定モデル学習装置1は、センサの情報から物体(人物)の接地位置を推定するニューラルネットワークのモデル(接地位置推定モデルN)を学習することができる。
なお、接地位置推定モデル学習装置1は、コンピュータを、前記した各部として機能させるための接地位置推定モデル学習プログラムで動作させることができる。
【0048】
<接地位置推定モデル学習装置の動作>
次に、図7を参照(構成については適宜図2参照)して、接地位置推定モデル学習装置1の動作について説明する。なお、記憶部12には、初期値が設定された接地位置推定モデルNが記憶されているものとする。
【0049】
ステップS10において、訓練データ読込部10は、物体(人物)が映った画像(物体画像D)と、画像上の物体の位置(上部領域,接地位置)を示す情報(正解データD)とをペアとする訓練データDを読み込む。
ステップS11において、接地位置マスク部11は、訓練データの正解データDに含まれる接地位置を基準にとする所定範囲内のランダムな位置に、マスク画像を合成することで、訓練データDを増加させる。
【0050】
ステップS12において、位置推定部13は、記憶部12に記憶されている接地位置推定モデルNを用いて、ステップS11で増加された訓練データの物体画像から、物体(人物)の位置(上部領域,接地位置)を推定する。
ステップS13において、誤差算出部14は、位置推定部13で推定された物体の位置(上部領域,接地位置)と正解データとの誤差を算出する。なお、ここでは、接地位置推定モデルNが出力する上部領域信頼度および接地位置予測誤差についても誤差を算出する。
ステップS14において、パラメータ更新部15は、ステップS13で算出された誤差を小さくするように、接地位置推定モデルNのパラメータを更新する。
【0051】
ステップS15において、パラメータ更新部15は、予め定めた学習の終了条件を満たしか否かを判定する。
ここで、学習の終了条件を満たさなかった場合(ステップS15でNo)、接地位置推定モデル学習装置1は、ステップS10に戻って動作を続ける。
一方、学習の終了条件を満たした場合(ステップS15でYes)、接地位置推定モデル学習装置1は、動作を終了する。
以上の動作によって、接地位置推定モデル学習装置1は、接地位置推定モデルNを学習することができる。
【0052】
<接地位置推定装置の構成>
次に、図8を参照して、参考例の実施形態に係る接地位置推定装置2の構成について説明する。
接地位置推定装置2は、センサ情報取得部20と、初期設定部21と、記憶部22と、情報切出部23と、位置推定部24と、推定結果統合部25と、位置補正部26と、射影変換部27と、位置情報出力部28と、を備える。
【0053】
センサ情報取得部20は、センサSから、センサ情報を取得するものである。ここでは、センサSとして、8Kカメラ(可視光カメラ)を用いることとし、センサ情報取得部20は、センサ情報としてフレームごとに8K画像を取得する。この場合、センサ情報は、[himage(画像の高さ)×wimage(画像の幅)×3]の画像である。
センサ情報取得部20は、取得したセンサ情報を情報切出部23に出力する。なお、センサ情報取得部20は、初期設定段階では、センサ情報を初期設定部21に出力する。
【0054】
初期設定部21は、センサSのセンサ情報であるカメラ画像上の座標(通常、左上を原点とする二次元座標)を、現実空間である予め定めた床平面の二次元座標に変換(射影変換)するためのパラメータを算出するものである。
初期設定部21は、現実空間の床平面の座標位置が既知の4点の座標(床面座標)と、その4点がカメラ画像上に映った画像上の4点(画像座標)とから、射影変換のパラメータ(射影変換パラメータPr)を算出する。
初期設定部21は、算出した射影変換パラメータPrを記憶部22に記憶する。
【0055】
記憶部22は、初期設定部21で算出された射影変換パラメータPrと、図2で説明した接地位置推定モデル学習装置1で学習された学習済のニューラルネットワークのモデル(接地位置推定モデルN)とを記憶するものである。この記憶部12は、半導体メモリ等の一般的な記憶媒体で構成することができる。
【0056】
情報切出部23は、センサ情報取得部20から入力されたセンサ情報から、予め定めた位置および大きさの領域を切り出すものである。
ここで、切り出し領域は、センサSによる物体検出空間のうち、予め物体の存在が想定される領域とする。例えば、人物が歩く通路上の領域、人物の密集が想定される領域等である。
なお、切り出し領域は、1つである必要はなく、複数あっても構わない。また、これらの領域は、部分的に重複しても構わない。
【0057】
情報切出部23の入力は[himage×wimage×3]の画像データであり、出力は[Ncrop×hcrop×wcrop×3]の画像データである。ここで、Ncropは、切り出し領域の個数、hcropは切り出し領域の画像の高さ、wcropは切り出し領域の画像の幅である。なお、hcropおよびwcropは、切り出し領域ごとに異なっていてもよい。
このとき、himage×wimage>Ncrop×hcrop×wcropであれば、センサ情報全体を処理する場合よりも計算コストが抑えられることになる。
情報切出部23は、切り出した領域(切り出し画像)を切り出し位置(例えば、左上座標)とともに、位置推定部24に出力する。
【0058】
なお、接地位置推定装置2でセンサ情報のすべてを処理する十分な計算資源があれば、情報切出部23は、センサ情報取得部20から入力されたセンサ情報をそのまま位置推定部24に出力してもよい。また、情報切出部23は、複数の切り出し領域とともに、センサ情報を1つの切り出し領域として位置推定部24に出力してもよい。
【0059】
位置推定部24は、記憶部22に記憶されている学習済の接地位置推定モデルNを用いて、情報切出部23で切り出された切り出し画像から、物体(人物)の接地位置を推定するものである。
なお、位置推定部24は、切り出し画像を、接地位置推定モデルNの入力のサイズに縮小して、接地位置推定モデルNの演算を行う。接地位置推定モデルNを図5で説明したネットワーク構成であるとした場合、位置推定部24は、切り出し画像を切り出し画像のアスペクト比を維持したまま、必要に応じて黒画像を付加して640×640に縮小する。
【0060】
位置推定部24は、接地位置推定モデルNの出力うち、上部領域信頼度O1が予め定めた閾値を上回る結果を推定結果とする。
すなわち、閾値を上回った物体の上部領域の個数をNobjectとしたとき、位置推定部24は、上部領域信頼度O1として[Nobject×1]、上部領域O2として[Nobject×4]、接地位置O3として[Nobject×2]、接地位置予測誤差O4として[Nobject×1]のデータを推定結果とする。
【0061】
なお、位置推定部24は、上部領域O2,接地位置O3の各座標については、画像の縮小率に応じて拡大し、切り出し位置の座標に加算する。また、位置推定部24は、接地位置予測誤差O4については、画像の縮小率に応じて拡大する。これによって、位置推定部24は、推定結果をセンサ情報の画像座標上の位置や大きさに変換する。
位置推定部24は、すべての切り出し画像に対して行った推定結果を推定結果統合部25に出力する。
【0062】
推定結果統合部25は、位置推定部24の推定結果から、同じ物体(人物)の情報を1つに統合するものである。
推定結果統合部25は、推定結果で、物体の上部領域が同じ位置であるとみなせる物体の推定結果の内で、上部領域信頼度の低い方を削除する。
この上部領域が同じ位置であるとみなせるか否かの判定は、IoU(式(1)参照)が特定の値を超えるか否かにより判定することができる。例えば、推定結果統合部25は、2つの推定結果について、上部領域のIoUが0.5を超えた場合に、2つの物体が同じ物体であるとみなす。
【0063】
なお、ここでは、同じ物体について、上部領域信頼度の低い方を削除することとしたが、接地位置予測誤差の大きい方を削除することとしてもよい。あるいは、上部領域信頼度および接地位置予測誤差の両方を考慮して削除を行ってもよい。
推定結果統合部25は、統合した推定結果を位置補正部26に出力する。
【0064】
位置補正部26は、推定結果統合部25で統合された推定結果のうち接地位置を、予め定めた時間だけ過去の推定結果と最新の推定結果とに基づいて補正するものである。なお、位置補正部26は、図示を省略したメモリに、予め定めた時間だけ過去の推定結果を保持しておく。
ここでは、過去の推定結果のうち、接地位置の推定結果が信頼できるものを用いる。この推定結果が信頼できるか否かは、接地位置予測誤差を用いて判定することができる。
接地位置予測誤差は、センサSに近い物体ほど大きい値が出やすい。そこで、センサSからの近さによらずに同じような値にするため、物体の上部領域の大きさを用いて正規化したものを用いる。
【0065】
例えば、位置補正部26は、物体の上部領域の横幅の長さや、長辺(横幅および高さの長い方)で、接地位置予測誤差を割った値を予測誤差割合(≒信頼度)として利用する。
すなわち、ある推定結果Aで、物体の上部領域の画像上のxy座標の最小値を(x min,y min)、最大値を(x max,y max)、接地位置予測誤差をerr groundedとしたとき、位置補正部26は、以下の式(2)により予測誤差割合を算出する。なお、min(a,b)はaとbのうち小さい方の値を返す関数である。
【0066】
【数2】
【0067】
位置補正部26は、予測誤差割合が予め定閾値(例えば、0.4)を下回るものを過去の信頼できる推定結果とする。
なお、何フレーム分を過去とするかは任意あるが、例えば、1~2秒分の過去フレームの画像から推定された推定結果を用いる。
ここでは、位置補正部26は、過去の推定結果のうち、接地位置が信頼できる推定結果を用いて、2つの補正により、最新(現フレーム)の推定結果の接地位置を補正する。
【0068】
1つ目の補正は、物体の上部領域の移動量に基づいて最新の接地位置を補正するものである。
位置補正部26は、最新の推定結果を含まない過去の信頼できる推定結果と、最新の推定結果との間で、上部領域および接地位置の移動量を算出する。
そして、位置補正部26は、物体の上部領域の移動量の最小値(平均値でもよい)を、接地位置の移動量が超えないように補正する。
ここで、図9を参照して、1つ目の補正について具体的に説明する。
まず、ある推定結果Aの物体の上部領域の中心(x center,y center)を、物体の上部領域の最小最大値(x min,y min),(x max,y max)の中心として、以下の式(3)により定義する。
【0069】
【数3】
【0070】
位置補正部26は、ある最新の推定結果Aに関して、過去の信頼できる推定結果のうちで、物体の上部領域の移動量が最小となる推定結果をA′としたとき、図9(a)に示す物体の上部領域の移動量m top、接地位置の移動量m groundedを、以下の式(4)で算出する。
【0071】
【数4】
【0072】
そして、位置補正部26は、最新の推定結果Aに対して、以下の式(5)による補正を行い、補正後の接地位置(x adjustMove,y adjustMove)を算出する。なお、min(a,b)はaとbのうち小さい方の値を返す関数である。
【0073】
【数5】
【0074】
ただし、位置補正部26は、接地位置の移動量m groundedが、物体の上部領域の移動量m topよりも小さい場合は、この補正を行いこととする。これによって、人間のしゃがむなどの姿勢変化が合った場合に、接地位置が本来の値よりもずれることを防止することができる。
【0075】
2つ目の補正は、物体の上部領域からの相対位置に基づいて、接地位置を補正するものである。
位置補正部26は、最新の推定結果を含む過去の信頼できる推定結果それぞれに対し、物体の上部領域の中心位置から接地位置までの差分を算出する。この差分は、センサSに近い物体ほど大きい値となるため、位置補正部26は、物体の上部領域の大きさを用いて正規化する。
そして、位置補正部26は、物体の上部領域の中心位置と大きさとから、平均正規化相対位置を用いて、最新の接地位置を補正する。
具体的には、ある推定結果Aの物体の上部領域のサイズs topを、以下の式(6)により定義する。
【0076】
【数6】
【0077】
最新の推定結果を含む過去の信頼できるNrecords個の推定結果の集合Rとしたとき、位置補正部26は、ある最新の推定結果Aに関して、平均正規化相対位置(x rel,y rel)を以下の式(7)により算出する。
【0078】
【数7】
【0079】
ここで、wは過去の推定結果のそれぞれの重みを表し、単に平均を求める場合は、w=1/Nrecordsである。なお、この重みwは、例えば、古い記録ほど低くしたり、上部領域信頼度が高いほど高くしたりなど、調整してもよい。ただし、重みwの合計は1になるようにする必要がある。
位置補正部26は、この平均正規化相対位置(x rel,y rel)を用いて、以下の式(8)により補正し、補正された接地位置(x adjustRel,y adjustRel)を算出する。
【0080】
【数8】
【0081】
例えば、接地位置を時間方向に単純平均で平滑化した場合、図10(a)に示すように、図中〇印のような過去の接地位置に影響を受けた補正を行う場合がある。
しかし、位置補正部26は、物体の上部領域からの相対位置に基づいて、接地位置を補正することで、図10(b)に示すように、最新の上部領域の位置を基準として補正が行われることなり、より補正精度を高めることができる。
【0082】
なお、この相対位置による補正は、人間の姿勢が変わらないことを前提としている。そこで、位置補正部26は、最新の推定結果の予測誤差割合(前記式(2))が十分に小さい場合は、この補正を省略するか、補正量を小さくすることとしてもよい。
また、ここでは、位置補正部26は、物体の上部領域の移動量に基づいて最新の接地位置を補正(1つ目の補正)した後、上部領域からの相対位置に基づいて接地位置を補正(2つ目の補正)した。しかし、この2つの補正は、順番を入れ替えてもよいし、いずれか一方の補正のみを行うこととしてもよい。
位置補正部26は、補正後の接地位置を射影変換部27に出力する。
【0083】
射影変換部27は、位置補正部26で補正された接地位置を、現実空間である予め定めた床平面の二次元座標に変換するものである。
射影変換部27は、記憶部22に記憶されている射影変換パラメータPrを用いて、カメラ画像上の座標である接地位置を、現実空間の床平面の二次元座標に変換する。
射影変換部27は、射影変換後の接地位置を位置情報出力部28に出力する。
【0084】
位置情報出力部28は、射影変換部27で変換された物体ごとの接地位置の座標(床平面の二次元座標)を座標リストとして、外部に出力するものである。
ここでは、位置情報出力部28は、座標リストを距離可視化装置3に出力する。なお、位置情報出力部28が座標リストを距離可視化装置3に伝送する通信方式は、特に限定するものではないが、OSC(Open Sound Control)プロトコル、Websocket等、公知の機器間通信(ソケット通信)プロトコルを使用することができる。
【0085】
以上説明したように構成することで、接地位置推定装置2は、学習済のニューラルネットワークのモデル(接地位置推定モデルN)を用いて、センサSの情報から、オクルージョンに対して堅強に物体(人物)の接地位置を推定することができる。
なお、接地位置推定装置2は、コンピュータを、前記した各部として機能させるための接地位置推定プログラムで動作させることができる。
【0086】
<接地位置推定装置の動作>
次に、図11を参照(構成については適宜図8参照)して、接地位置推定装置2の動作について説明する。なお、記憶部22には、学習済の接地位置推定モデルNが記憶されているものとする。
【0087】
ステップS20において、初期設定部21は初期設定を行う。ここでは、初期設定部21は、センサSのセンサ情報であるカメラ画像上の座標を、現実空間である予め定めた床平面の二次元座標に射影変換するためのパラメータ(射影変換パラメータPr)を算出する。
ステップS21において、センサ情報取得部20は、センサSから、センサ情報を取得する。ここでは、センサ情報取得部20は、センサSである8Kカメラ(可視光カメラ)から8K画像を取得する。
【0088】
ステップS22において、情報切出部23は、ステップS2で取得したセンサ情報から、予め定めた位置および大きさの領域(切り出し領域)を1以上切り出す。
ステップS23において、位置推定部24は、記憶部22に記憶されている学習済の接地位置推定モデルNを用いて、ステップS22で切り出された切り出し領域から、物体(人物)の接地位置を推定する。
【0089】
ステップS24において、位置推定部24は、ステップS22で切り出した切り出し領域のうち、まだ、物体(人物)の接地位置を推定していない切り出し領域があるか否かを判定する。
接地位置を推定していない切り出し領域がある場合(ステップS24でYes)、接地位置推定装置2は、ステップS23に戻って、位置推定部24による推定を繰り返す。
一方、すべての切り出し領域から接地位置を推定した場合(ステップS24でNo)、ステップS25において、推定結果統合部25は、ステップS23の推定結果から、同じ物体(人物)の情報を1つに統合する。例えば、推定結果統合部25は、接地位置推定モデルNの出力うち、IoUの値により物体の上部領域が同じ位置であるとみなせるか否かを判定し、同じ位置とみなした物体の情報を1つだけ残すことで、推定結果を統合する。
【0090】
ステップS26において、位置補正部26は、ステップS25で統合された推定結果のうち接地位置を、過去および最新の推定結果に基づいて補正する。
ステップS27において、射影変換部27は、位置補正部26で補正された接地位置を、現実空間である予め定めた床平面の二次元座標に変換する。このとき、射影変換部27は、ステップS20で算出された射影変換パラメータPrを用いて、カメラ画像上の座標である接地位置を、床平面の二次元座標に変換する。
ステップS28において、位置情報出力部28は、ステップS27で変換された接地位置の座標(床平面の二次元座標)を座標リストとして、外部(距離可視化装置3)に出力する。
【0091】
ステップS29において、接地位置推定装置2は、図示を省略したボタンの押下等による予め定めた終了の指示がなされたか否かを判定する。
ここで、まだ終了が指示されていない場合(ステップS29でNo)、接地位置推定装置2は、ステップS21に戻って動作を継続する。
一方、終了が指示された場合(ステップS29でYes)、接地位置推定装置2は、動作を終了する。
以上の動作によって、接地位置推定装置2は、学習済のニューラルネットワークのモデル(接地位置推定モデルN)を用いて、センサSの情報から、オクルージョンに対して堅強に物体(人物)の接地位置を推定することができる。
【0092】
以上、参考例の実施形態に係る接地位置推定モデル学習装置1および接地位置推定装置2の構成および動作について説明したが、接地位置推定モデル学習装置1および接地位置推定装置2は、この実施形態に限定されるものではない。
【0093】
<距離可視化装置の構成>
次に、図12を参照して、本発明の実施形態に係る距離可視化装置3の構成について説明する。
距離可視化装置3は、位置情報入力部30と、相対位置算出部31と、コンテンツ生成部32と、図形配置部33と、投影画像変換部34と、投影画像出力部35と、を備える。
【0094】
位置情報入力部30は、物体(人物)の接地位置の座標(床平面の二次元座標)を座標リストとして入力するものである。
ここでは、位置情報入力部30は、接地位置推定装置2から出力される座標リストを入力する。なお、位置情報入力部30は、接地位置推定装置2の位置情報出力部28(図8)との間で、予め定めたプロトコル、例えば、OSCプロトコルで、座標リストを入力する。
座標リストは、検出された人物の数をNとしたとき、例えば、x座標を示す[posX x … x]、y座標を示す[posY y … y]である。
位置情報入力部30は、入力した座標リストを相対位置算出部31および図形配置部33に出力する。
【0095】
相対位置算出部31は、位置情報入力部30で入力された座標リストから、人物ごとに最も近い人物との距離と方向とを算出するものである。
相対位置算出部31は、人物ごとに最も近い人物との距離のリスト(距離リスト)と方向のリスト(方向リスト)と生成する。
なお、距離リストは、算出した距離をそのまま用いてもよいが、ここでは、予め定めた基準(閾値)で区分した区分ごとに、異なる値を用いる。例えば、2つの閾値T,T(T<T)を設け、距離がT以上であれば「疎(1)」、距離がTとTとの間であれば「密(2)」、距離がT以下であれば「過密(3)」とラベリングした値を用いる
【0096】
ここで、図13を参照して、人物が3人の場合を例に説明する。この場合、相対位置算出部31には、座標リストとして、例えば、人物H,H,Hの順に、x座標を示す[posX x]、y座標を示す[posY y]が入力される。
ここで、相対位置算出部31は、すべての人物H間の距離を算出し、最も近い人物の方向を算出する。
例えば、人物Hから人物Hが最も近い場合、人物Hについて最も近い人物Hとの距離Lおよび方向Dは、以下の式(9)となる。
【0097】
【数9】
【0098】
なお、相対位置算出部31は、他の人物H,Hにおいても同様に、それぞれ最も近い人物との距離L,Lおよび方向D,Dを算出する。
そして、相対位置算出部31は、距離リストとして、ラベリングした値を用いて[labeledLength 2 1 2]を生成する。この場合、距離L,Lが「密(2)」、距離Lが「疎(1)」にラベリングされた状態を示している。
また、相対位置算出部31は、方向リストとして、[direction D]を生成する。
なお、相対位置算出部31は、座標リストに座標が1つしか存在しない場合、距離を「疎(1)」とする距離リスト[labeledLength 1]、方向を任意の角度(例えば0度)とする方向リスト[direction 0]を生成する。
【0099】
図12に戻って、距離可視化装置3の構成について説明を続ける。
相対位置算出部31は、生成した距離リストおよび方向リストをコンテンツ生成部32に出力する。
【0100】
コンテンツ生成部32は、相対位置算出部31で算出された人物ごとの最も近い人物との距離および方向のリスト(距離リスト、方向リスト)から、床面に投影するコンテンツを生成するものである。
コンテンツ生成部32は、距離可視化図形描画部320と、方向誘導図形描画部321と、合成部322と、を備える。
【0101】
距離可視化図形描画部320は、距離リストに記載された順に、相対位置算出部31で算出された人物ごとの距離を可視化した図形(距離可視化図形)を描画するものである。ここでは、距離可視化図形描画部320は、距離を可視化する図形として、予め定めた基準で区分し、ラベリングされた距離ごとに異なる図形を、図示を省略したメモリ上に描画する。
例えば、距離可視化図形描画部320は、図14(a)~(c)に示すように、距離可視化図形として、画像中心を円の中心とする円を描画した画像を生成する。円は、人物を中心としたとき、その人物からの距離をすべての方向において把握することができる図形である。なお、円の半径は、プロジェクタPで床面に投影された際に予め定めた半径(例えば、1m程度)となる大きさとする。
【0102】
ここでは、距離可視化図形描画部320は、距離リストでラベルが「疎(1)」の場合、図14(a)に示すように、一点鎖線の距離可視化図形GA1を描画する。また、距離可視化図形描画部320は、距離リストでラベルが「密(2)」の場合、図14(b)に示すように、破線の距離可視化図形GA2を描画する。また、距離可視化図形描画部320は、距離リストでラベルが「過密(3)」の場合、図14(c)に示すように、実線の距離可視化図形GA3を描画する。なお、ここでは、距離可視化図形の線パターンを異なる形状としているが、色で区別することとしてもよい。例えば、距離リストでラベルが「疎(1)」であれば“青”、ラベルが「密(2)」であれば“黄”、ラベルが「過密(3)」であれば“赤”の円とする。
距離可視化図形描画部320は、距離リストの記載順に描画した距離可視化図形を合成部322に出力する。
なお、距離可視化図形描画部320は、距離リストに変更がなければ、図形を更新する必要はない。
【0103】
方向誘導図形描画部321は、距離リストおよび方向リストに記載された順に、相対位置算出部31で算出された人物ごとの距離および方向に応じて人物の進行方向を誘導する図形(方向誘導図形)を描画するものである。ここでは、方向誘導図形描画部321は、進行方向を誘導する図形として、距離ごとに異なる図形が方向別の異なる位置に配置されるように、図示を省略したメモリ上に描画する。
【0104】
例えば、方向誘導図形描画部321は、図15(a)~(c)に示すように、方向誘導図形として、キャラクタを描画する。キャラクタは、距離可視化図形の外側に配置される図形である。このキャラクタは、アニメーションのキャラクタ、動物等なんでもよいが、距離に応じて表情やパターンを変えることが好ましい。なお、キャラクタの大きさは、プロジェクタPで床面に投影された際に予め定めた大きさ(例えば、0.4m程度)となる大きさとする。
【0105】
ここでは、方向誘導図形描画部321は、距離リストでラベルが「疎(1)」の場合、図15(a)に示すように、方向リストで示される方向θを初期位置として、プロジェクタPで床面に投影された際に予め定めた半径(例えば、1.2m程度)の円軌道でキャラクタGB1が回転するアニメーションを生成する。もちろん、キャラクタGB1の位置を固定した静止画を生成することとしても構わない。
【0106】
また、方向誘導図形描画部321は、距離リストでラベルが「密(2)」の場合、図15(b)に示すように、方向リストで示される方向θから90度回転し、回転中心から予め定めた距離(例えば、1.2m程度)だけ離した位置に、キャラクタGB2を描画した静止画を生成する。
【0107】
また、方向誘導図形描画部321は、距離リストでラベルが「過密(3)」の場合、図15(c)に示すように、方向リストで示される方向θから180度回転し回転中心から予め定めた距離(例えば、1.2m程度)だけ離した位置に、キャラクタGB3を描画した静止画を生成する。
方向誘導図形描画部321は、距離リストの記載順に描画した距離可視化図形を合成部322に出力する。
なお、方向誘導図形描画部321は、距離リストおよび方向リストに変更がなければ、図形を更新する必要はない。
【0108】
合成部322は、距離可視化図形描画部320で描画された距離可視化図形と、方向誘導図形描画部321で生成された方向誘導図形と、を合成するものである。
合成部322は、フレームごとに距離可視化図形と方向誘導図形とを合成した合成図形を生成する。
【0109】
例えば、合成部322は、図16(a)に示すように、図14(a)に示した距離可視化図形GA1と、図15(a)に示したキャラクタGB1とをアニメーションのフレームごとに合成する。
また、合成部322は、図16(b)に示すように、図14(b)に示した距離可視化図形GA2と、図15(b)に示したキャラクタGB2とをフレームに同期して合成する。
また、合成部322は、図16(c)に示すように、図14(c)に示した距離可視化図形GA3と、図15(c)に示したキャラクタGB3とをフレームに同期して合成する。
合成部322は、合成した図形(合成図形)を図形配置部33に出力する。
【0110】
図形配置部33は、合成部322で合成された合成図形を床平面に対応する二次元座標上に配置した図形配置画像を生成するものである。
図形配置部33は、合成図形を、座標リストで示される位置に配置する。
すなわち、図形配置部33は、座標リストの順に、個々の合成図形の中心が座標リストの位置となるように、合成図形を配置した図形配置画像を生成する。
これによって、床平面の二次元座標上の人物の位置に対応した位置に、個々の合成図形が配置された図形配置画像が生成される。
図形配置部33は、合成図形を配置した図形配置画像を投影画像変換部34に出力する。
【0111】
投影画像変換部34は、床平面の二次元座標上に図形配置部33で生成された図形配置画像をプロジェクタPの投影面に射影変換した投影画像を生成するものである。
投影画像変換部34は、プロジェクタPの投影画像の4点の座標と、床平面の二次元座標上の4点の座標とから、予め測定した射影変換パラメータにより、図形配置部33で生成された画像を、プロジェクタPの投影画像に変換する。
投影画像変換部34は、変換後の投影画像を投影画像出力部35に出力する。
【0112】
投影画像出力部35は、投影画像変換部34で変換された投影画像をプロジェクタPに出力するものである。
投影画像出力部35から出力される投影画像をプロジェクタPが投影することで、人物の位置に、人物間の距離に対応した図形が投影されることになる。
【0113】
以上説明したように構成することで、距離可視化装置3は、物体(人物)の接地位置のリスト(座標リスト)から、人物間の距離を可視化してプロジェクタPで投影することができる。
なお、距離可視化装置3は、コンピュータを、前記した各部として機能させるための距離可視化プログラムで動作させることができる。
【0114】
ここで、図17を参照して、距離可視化装置3が人物間の距離を可視化した図形について具体的に説明する。
図17(a)は、人物H,Hが最も近くで予め定めた閾値(疎の基準となる閾値)よりも離れた位置「疎(1)」に存在している状態を示している。
この場合、距離可視化装置3は、人物H,Hのそれぞれの接地位置を中心として、距離が十分に保たれていることを示す一点鎖線(あるいは青色)の距離可視化図形GA1を投影する。そして、距離可視化装置3は、距離可視化図形GA1の円周の外を動き回るキャラクタGB1を投影する。
このように、距離可視化図形GA1が交差せずに離間しているため、人物Hは、一定の距離を確保していることを視認することができる。
【0115】
図17(b)は、人物H,Hが最も近くで予め定めた2つの閾値(疎の基準となる閾値と過密の基準となる閾値)の間の距離だけ離れた位置「密(2)」に存在している状態を示している。
この場合、距離可視化装置3は、人物H,Hのそれぞれの接地位置を中心として、距離が十分に保たれていないことを示す破線(あるいは黄色)の距離可視化図形GA2を投影する。そして、距離可視化装置3は、距離可視化図形GA2の円周の外で、人物H,Hのそれぞれの相対する方向から90°回転した方向に、キャラクタGB2を投影する。
このように、距離可視化図形GA2が交差しているため、人物Hは、一定の距離を確保していないことを視認することができる。また、距離可視化装置3は、キャラクタGB2によって、人物同士を離れる方向に誘導することができる。
【0116】
図17(c)は、人物H,Hが最も近くで予め定めた閾値(過密の基準となる閾値)よりも近い位置「過密(3)」に存在している状態を示している。
この場合、距離可視化装置3は、人物H,Hのそれぞれの接地位置を中心として、距離が近すぎることを示す実線(あるいは赤色)の距離可視化図形GA3を投影する。そして、距離可視化装置3は、距離可視化図形GA3の円周の外で、人物H,Hのそれぞれの相対する方向から180°回転した方向に、キャラクタGB3を投影する。
このように、距離可視化図形GA3が交差しているため、人物Hは、一定の距離を確保していないことを視認することができる。また、予め過密を示す距離可視化図形GA3によって、人物Hは、過密状態であることを視認することができる。また、距離可視化装置3は、キャラクタGB3によって、離れる方向を誘導することができる。
【0117】
<距離可視化装置の動作>
次に、図18を参照(構成については適宜図12参照)して、距離可視化装置3の動作について説明する。
【0118】
ステップS30において、位置情報入力部30は、接地位置推定装置2(図8参照)から出力される物体(人物)の接地位置のリストである座標リストを入力する。
ステップS31において、位置情報入力部30は、座標リストに座標が1つ以上存在するか否かを判定する。
ここで、座標が1つ以上存在する場合(ステップS31でYes)、距離可視化装置3は、ステップS32に動作を進める。
一方、座標が存在しない場合(ステップS31でNo)、距離可視化装置3は、動作を終了する。
【0119】
ステップS32において、相対位置算出部31は、ステップS30で入力した座標リストから、人物ごとの最も近い人物との距離のリスト(距離リスト)と方向のリスト(方向リスト)と生成する。なお、座標リストに人物の座標が1つしか存在していない場合、相対位置算出部31は、距離を「疎(1)」とする距離リスト、方向を任意の角度(例えば0度)とする方向リストを生成する。
【0120】
ステップS33において、コンテンツ生成部32の距離可視化図形描画部320は、ステップS32で生成された距離リストに記載された順に、距離を可視化した図形(距離可視化図形)を描画する。
ステップS34において、コンテンツ生成部32の方向誘導図形描画部321は、ステップS32で生成された距離リストおよび方向リストに記載された順に、距離および方向に応じて人物の進行方向を誘導する図形(方向誘導図形)を描画する。
ステップS35において、コンテンツ生成部32の合成部322は、ステップS33で描画された距離可視化図形と、ステップS34で描画された方向誘導図形と、を合成する。
【0121】
ステップS36において、コンテンツ生成部32は、距離リストに含まれる人物で未処理の人物が存在するか否かを判定する。
ここで、未処理の人物が存在する場合(ステップS36でYes)、距離可視化装置3は、ステップS33に戻って、動作を継続する。
一方、未処理の人物が存在しない場合(ステップS36でNo)、ステップS37において、図形配置部33は、座標リストを参照して、ステップS35で人物の数だけ生成された合成図形を予め定めた床平面の二次元座標上に配置して合成画像を生成する。
【0122】
ステップS38において、投影画像変換部34は、ステップS37で生成された合成画像を、射影変換し、床平面の二次元座標上に投影するためのプロジェクタPの投影画像を生成する。
ステップS39において、投影画像出力部35は、ステップS38で生成された投影画像をプロジェクタPに出力する。
そして、距離可視化装置3は、ステップS30に動作を戻す。
以上の動作によって、距離可視化装置3は、物体(人物)の接地位置のリスト(座標リスト)から、人物間の距離を可視化してプロジェクタPで投影することができる。
【0123】
以上、本発明の実施形態に係る距離可視化装置3の構成および動作について説明したが、距離可視化装置3は、この実施形態に限定されるものではない。
ここでは、距離可視化装置3は、接地位置推定装置2で推定された、予め学習済みのAIを用いて推定された接地位置の座標リストを入力することとした。
しかし、座標リストは、必ずしもAIで推定されたものを使用する必要はなく、例えば、一般的なセンサ(距離センサ等)によって測定されたものを用いてもよい。
【0124】
また、ここでは、距離可視化装置3は、距離を可視化する距離可視化図形とともに、人物の進行方向を誘導する方向誘導図形を投影することとした。
しかし、距離可視化装置3は、距離可視化図形のみを投影する簡易な構成としても構わない。その場合、距離可視化装置3は、方向誘導図形描画部321および合成部322を構成から省略すればよい。また、その場合、距離可視化装置3の相対位置算出部31は、距離リストのみを算出する構成とすればよい。
【符号の説明】
【0125】
1 接地位置推定モデル学習装置
10 訓練データ読込部
11 接地位置マスク部
12 記憶部
13 位置推定部
14 誤差算出部
15 パラメータ更新部
2 接地位置推定装置
20 センサ情報取得部
21 初期設定部
22 記憶部
23 情報切出部
24 位置推定部
25 推定結果統合部
26 位置補正部
27 射影変換部
28 位置情報出力部
3 距離可視化装置
30 位置情報入力部
31 相対位置算出部
32 コンテンツ生成部
320 距離可視化図形描画部
321 方向誘導図形描画部
322 合成部
33 図形配置部
34 投影画像変換部
35 投影画像出力部
100 プロジェクションマッピングシステム
S センサ
P プロジェクタ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18