(57)【要約】      （修正有）【課題】移動体により撮像された動画像シーンの危険程度判定となった手がかりを知ることができ、より効果的な操作ができる移動体の情報処理装置を提供する。【解決手段】情報処理装置は、動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、被写体の位置を検知する検知手段１７１と、移動体から被写体までの距離および移動体に対する被写体の速度を求める画像処理手段１７２と、機械学習によって、動画像のシーンの危険の程度を測定する測定手段１７３と、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む書き込み手段１７４とを含む。【選択図】図６
2019139468.tif 000002
【特許請求の範囲】
【請求項１】
移動体により撮像された動画像から、機械学習によって、前記動画像に写っている被写体について、前記被写体が人であるかまたは人以外の物であるかを検知し、前記動画像における前記被写体の位置を検知する検知手段と、
前記動画像および前記動画像における前記被写体の位置から、前記移動体から前記被写体までの距離および前記移動体に対する前記被写体の速度を求める画像処理手段と、
前記動画像、前記被写体が人であるかまたは人以外の物であるかの検知の結果、前記動画像における前記被写体の位置、前記移動体から前記被写体までの距離および前記移動体に対する前記被写体の速度から、機械学習によって、前記動画像のシーンの危険の程度を測定する測定手段と、
前記動画像に、前記被写体が人であるかまたは人以外の物であるかの検知の結果、前記動画像における前記被写体の位置、前記移動体から前記被写体までの距離、前記移動体に対する前記被写体の速度および前記動画像の前記シーンの危険の程度を示す文字または画像を書き込む書き込み手段と
を含む情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記検知手段は、ニューラルネットワークを用いた機械学習によって、前記被写体が人であるかまたは人以外の物であるかを検知し、前記動画像における前記被写体の位置を検知し、
前記測定手段は、ニューラルネットワークを用いた機械学習によって、前記移動体と前記被写体との接触の危険の程度を測定する
情報処理装置。
【請求項３】
請求項１に記載の情報処理装置において、
前記画像処理手段は、前記被写体が人であると検知された場合、前記移動体に対する前記被写体の向きまたは前記移動体に対する前記被写体の顔の向きを求める
情報処理装置。
【請求項４】
請求項１に記載の情報処理装置において、
前記移動体と前記被写体との接触の危険の程度が所定の閾値以上である場合、前記移動体に停止または減速を指令する指令手段をさらに含む
情報処理装置。
【請求項５】
請求項１に記載の情報処理装置において、
前記移動体からストリーミングで送信されてくる前記動画像を受信する受信手段をさらに含み、
前記検知手段、前記画像処理手段および前記測定手段は、それぞれ、受信された前記動画像で検知するか、画像処理するか、または測定する
情報処理装置。
【請求項６】
請求項１に記載の情報処理装置において、
前記移動体への停止または減速の指示が外部から入力された場合、停止または減速が指示された時を含む所定の長さの時間の前記動画像を記録する記録手段をさらに含む
情報処理装置。
【請求項７】
移動体により撮像された動画像から、機械学習によって、前記動画像に写っている被写体について、前記被写体が人であるかまたは人以外の物であるかを検知し、前記動画像における前記被写体の位置を検知する検知ステップと、
前記動画像および前記動画像における前記被写体の位置から、前記移動体から前記被写体までの距離および前記移動体に対する前記被写体の速度を求める画像処理ステップと、
前記動画像、前記被写体が人であるかまたは人以外の物であるかの検知の結果、前記動画像における前記被写体の位置、前記移動体から前記被写体までの距離および前記移動体に対する前記被写体の速度から、機械学習によって、前記動画像のシーンの危険の程度を測定する測定ステップと、
前記動画像に、前記被写体が人であるかまたは人以外の物であるかの検知の結果、前記動画像における前記被写体の位置、前記移動体から前記被写体までの距離、前記移動体に対する前記被写体の速度および前記動画像の前記シーンの危険の程度を示す文字または画像を書き込む書き込みステップと
を含む情報処理方法。
【請求項８】
移動体により撮像された動画像から、機械学習によって、前記動画像に写っている被写体について、前記被写体が人であるかまたは人以外の物であるかを検知し、前記動画像における前記被写体の位置を検知する検知ステップと、
前記動画像および前記動画像における前記被写体の位置から、前記移動体から前記被写体までの距離および前記移動体に対する前記被写体の速度を求める画像処理ステップと、
前記動画像、前記被写体が人であるかまたは人以外の物であるかの検知の結果、前記動画像における前記被写体の位置、前記移動体から前記被写体までの距離および前記移動体に対する前記被写体の速度から、機械学習によって、前記動画像のシーンの危険の程度を測定する測定ステップと、
前記動画像に、前記被写体が人であるかまたは人以外の物であるかの検知の結果、前記動画像における前記被写体の位置、前記移動体から前記被写体までの距離、前記移動体に対する前記被写体の速度および前記動画像の前記シーンの危険の程度を示す文字または画像を書き込む書き込みステップと
を含む情報処理をコンピュータに行わせるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、情報処理方法およびプログラムに関し、特に、移動体の走行の制御に用いる情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
建物内の床面の清掃にロボットなどの移動体が使用されるようになってきた。公共の建物や病院などの人がいる領域の清掃では、人との衝突を回避しなければならない。人との衝突の回避は、走行する車両について、各種提案されている。
【０００３】
車両走行において、画像からニューラルネットで物体が歩行者であるか判別し、衝突危険度を判定するようにしているものもある（例えば、特許文献２参照）。
【０００４】
画像からニューラルネットで歩行者が路上に侵入しようとしているか判別するようにしているものもある（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１４８８３５号公報
【特許文献２】特開２００８−２１０３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ニューラルネットを用いた処理では、どうしてそのような判定になったのか処理の経過が不明であり、どうしてそのような判定になったかを利用者が知ることはできなかった。
【０００７】
本発明は、このような状況に鑑みてなされたものであり、使用者が、動画像のシーンの危険の程度を求める処理で、どうしてそのような判定になったかの手がかりを知ることができるようにして、より効果的な操作をすることができるようにするものである。
【課題を解決するための手段】
【０００８】
本発明の一側面の情報処理装置は、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する検知手段と、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求める画像処理手段と、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定する測定手段と、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む書き込み手段とを含む。
【０００９】
検知手段が、ニューラルネットワークを用いた機械学習によって、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知し、測定手段が、ニューラルネットワークを用いた機械学習によって、移動体と被写体との接触の危険の程度を測定するようにすることができる。
【００１０】
画像処理手段が、被写体が人であると検知された場合、移動体に対する被写体の向きまたは移動体に対する被写体の顔の向きを求めるようにすることができる。
【００１１】
移動体と被写体との接触の危険の程度が所定の閾値以上である場合、移動体に停止または減速を指令する指令手段をさらに設けることができる。
【００１２】
移動体からストリーミングで送信されてくる動画像を受信する受信手段をさらに設け、検知手段、画像処理手段および測定手段が、それぞれ、受信された動画像で検知するか、画像処理するか、または測定するようにすることができる。
【００１３】
移動体への停止または減速の指示が外部から入力された場合、停止または減速が指示された時を含む所定の長さの時間の動画像を記録する記録手段をさらに設けることができる。
【００１４】
本発明の一側面の情報処理方法は、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する検知ステップと、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求める画像処理ステップと、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定する測定ステップと、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む書き込みステップとを含む。
【００１５】
本発明の一側面のプログラムは、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する検知ステップと、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求める画像処理ステップと、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定する測定ステップと、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む書き込みステップとを含む情報処理をコンピュータに行わせる。
【００１６】
本発明の一側面においては、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知し、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求め、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定し、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込むようにしたので、文字または画像が書き込まれた動画像を表示させれば、使用者が動画像を見ることで、被写体が人であるかまたは人以外の物であるかの検知の状態、動画像における被写体の位置の検知の状態、移動体から被写体までの距離および移動体に対する被写体の速度並びに動画像のシーンとして現在の状況全体の危険の程度を知ることができるので、使用者が、動画像のシーンの危険の程度を求める処理で、どうしてそのような判定になったかの手がかりを知ることができる。これにより、例えば、移動体に停止または減速を指令するなど、より効果的な操作をすることができる。このように、使用者が、動画像のシーンの危険の程度を求める処理で、どうしてそのような判定になったかの手がかりを知ることができるので、より効果的な操作をすることができる。
【発明の効果】
【００１７】
以上のように、本発明によれば、使用者が、動画像のシーンの危険の程度を求める処理で、どうしてそのような判定になったかの手がかりを知ることができるので、より効果的な操作をすることができる。
【図面の簡単な説明】
【００１８】
【図１】清掃システム１１の構成の一例を示す図である。
【図２】清掃ロボット２２の外形の一例を示す図である。
【図３】清掃ロボット２２のハードウェアの構成の一例を示すブロック図である。
【図４】制御モジュール４２が制御プログラムを実行することにより実現される機能の構成の一例を説明するブロック図である。
【図５】ＡＩサーバ２１のハードウェアの構成の一例を示すブロック図である。
【図６】ＡＩサーバ２１がプログラムを実行することにより実現される機能の構成の一例を示すブロック図である。
【図７】起動の処理を説明するフローチャートである。
【図８】走行制御の処理の詳細を説明するフローチャートである。
【図９】ＡＩサーバ２１による清掃ロボット２２の走行制御の処理を説明するフローチャートである。
【図１０】ＡＩサーバ２１による清掃ロボット２２の走行制御の処理を説明するフローチャートである。
【図１１】危険度の測定の処理の詳細を説明するフローチャートである。
【図１２】タッチパネルモニタ２５に表示される動画像の例を示す図である。
【図１３】タッチパネルモニタ２５に表示される動画像の例を示す図である。
【図１４】タッチパネルモニタ２５に表示される動画像の例を示す図である。
【図１５】タッチパネルモニタ２５に表示される動画像の例を示す図である。
【図１６】監視者からの指示に応じた処理を説明するフローチャートである。
【図１７】タッチパネルモニタ２５に表示される動画像の例を示す図である。
【図１８】タッチパネルモニタ２５に表示される動画像の例を示す図である。
【図１９】終了の処理を説明するフローチャートである。
【図２０】追加学習のスケジューリングの処理を説明するフローチャートである。
【図２１】追加学習の処理を説明するフローチャートである。
【発明を実施するための形態】
【００１９】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２０】
本発明の一側面の情報処理装置は、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する検知手段（例えば、図６の物体検知ＡＩ部１７１）と、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求める画像処理手段（例えば、図６の画像処理部１７２）と、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定する測定手段（例えば、図６の危険度測定ＡＩ部１７３）と、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む書き込み手段（例えば、図６の描画部１７４）とを含む。
【００２１】
本発明の一側面の情報処理方法は、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する検知ステップ（例えば、図１１のステップＳ５１の手続き）と、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求める画像処理ステップ（例えば、図１１のステップＳ５２の手続き）と、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定する測定ステップ（例えば、図１１のステップＳ５３の手続き）と、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む書き込みステップ（例えば、図１１のステップＳ５４の手続き）とを含む。
【００２２】
本発明の一側面のプログラムは、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する検知ステップ（例えば、図１１のステップＳ５１の手続き）と、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求める画像処理ステップ（例えば、図１１のステップＳ５２の手続き）と、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定する測定ステップ（例えば、図１１のステップＳ５３の手続き）と、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む書き込みステップ（例えば、図１１のステップＳ５４の手続き）とを含む情報処理をコンピュータに行わせる。
【００２３】
以下、図１乃至図２１を参照して、本発明の実施の形態を説明する。
【００２４】
図１は、清掃システム１１の構成の一例を示す図である。清掃システム１１は、病院や公共施設などの建物の屋内の床を清掃する。清掃システム１１は、自律的に走行して、清掃を行う清掃ロボットを制御して、清掃ロボットに清掃をさせる。清掃システム１１は、ＡＩ（Artificial Intelligence）サーバ２１、清掃ロボット２２−１および２２−２、ハブ２３、アクセスポイント２４−１乃至２４−３並びにタッチパネルモニタ２５−１および２５−２を含み構成される。
【００２５】
ＡＩサーバ２１は、動画像から、動画像のシーンにおける危険の程度を測定する。ここで動画像のシーンとは、動画像における一区切りであって、所定の状態または所定の動作をしている所定の被写体がある、所定の場所が写されている一区切りをいう。例えば、ＡＩサーバ２１は、動画像から、動画像に写っている被写体と清掃ロボット２２−１および２２−２との接触の危険の程度を測定する。ＡＩサーバ２１は、測定された危険の程度が所定の閾値以上である場合、清掃ロボット２２−１および２２−２の停止または減速を指令する。清掃ロボット２２−１および２２−２は、自律的に走行して、床面の清掃を行う。清掃ロボット２２−１および２２−２は、走行する先の動画像を撮像する。
【００２６】
すなわち、ＡＩサーバ２１は、走行する先の動画像を撮像する清掃ロボット２２−１および２２−２から送信されてくる動画像の撮像データを処理して、動画像に写っている被写体との接触の危険の程度を測定し、測定された危険の程度が所定の閾値以上である場合、清掃ロボット２２−１および２２−２の停止または減速を指令する。
【００２７】
ハブ２３は、スター型のネットワークトポロジ（物理トポロジ）を採用するネットワークにおける集線装置である。ハブ２３は、ＡＩサーバ２１とアクセスポイント２４−１乃至２４−３のそれぞれとを接続する。
【００２８】
アクセスポイント２４−１乃至２４−３は、それぞれ、清掃ロボット２２−１および２２−２のそれぞれに、無線ＬＡＮ（Local Area Network）の所定の規格の無線通信で接続するための無線通信機である。清掃ロボット２２−１および２２−２は、走行する先の動画像を撮像し、ハブ２３およびアクセスポイント２４−１乃至２４−３を介して、ＡＩサーバ２１に動画像を表示させる撮像データを送信する。
【００２９】
タッチパネルモニタ２５−１および２５−２は、表示機能および入力機能を備える。タッチパネルモニタ２５−１および２５−２は、タッチスクリーンとも称され、ＡＩサーバ２１からの画像データにより所定の画像を表示する。また、タッチパネルモニタ２５−１および２５−２のそれぞれの画面の前面には、表示されている画像を透過させ、接触された位置を入力する位置入力装置であるタッチパネルが設けられている。タッチパネルモニタ２５−１および２５−２のそれぞれのタッチパネルが触られて操作されると、触られた位置を示す信号がＡＩサーバ２１に送られる。
【００３０】
ＡＩサーバ２１は、清掃ロボット２２−１および２２−２から送信されてくる撮像データにより、動画像をタッチパネルモニタ２５−１および２５−２に表示させる。清掃ロボット２２−１および２２−２の走行を監視している監視者は、タッチパネルモニタ２５−１および２５−２に表示されている動画像を監視する。監視者は、タッチパネルモニタ２５−１および２５−２に表示されている動画像から、清掃ロボット２２−１または２２−２と患者や通行人などの人が接触する危険があると判断した場合、タッチパネルモニタ２５−１または２５−２にタッチして、清掃ロボット２２−１または２２−２を停止させるか、または減速させる。
【００３１】
清掃ロボット２２は、病院や公共施設などの建物の屋内を走行するので、速度は人が歩く程度であり、道路を走行する自動車などに比較して遅いので、監視者が、タッチパネルモニタ２５の画像を見て、停止または減速を指示すれば、被写体との接触などの危険を回避することができる。
【００３２】
なお、以下、清掃ロボット２２−１および２２−２を個々に区別する必要がない場合、単に、清掃ロボット２２と称する。また、以下、アクセスポイント２４−１乃至２４−３を個々に区別する必要がない場合、単に、アクセスポイント２４と称する。さらに、以下、タッチパネルモニタ２５−１および２５−２を個々に区別する必要がない場合、単に、タッチパネルモニタ２５と称する。
【００３３】
図１には、２つの清掃ロボット２２を示したが、単数または複数の任意の数の清掃ロボット２２を用いることができる。また、図１には、３つのアクセスポイント２４を示したが、単数または複数の任意の数のアクセスポイント２４を設けることができる。さらにまた、図１には、２つのタッチパネルモニタ２５を示したが、単数または複数の任意の数のタッチパネルモニタ２５を設けることができる。
【００３４】
図２は、清掃ロボット２２の外形の一例を示す図である。清掃ロボット２２の本体４１には、走行のための車輪やモータ、清掃のためのブラシやブラシを駆動するためのモータおよびバッテリなどの電源などが設けられている。清掃ロボット２２の本体４１の上面前方には、制御モジュール４２が設けられている。制御モジュール４２は、タブレット型のパーソナルコンピュータまたは専用のコンピュータなどからなる。制御モジュール４２は、アクセスポイント２４およびハブ２３を介して、ＡＩサーバ２１と通信する。制御モジュール４２は、停止などの各種の指令を本体４１に送り、本体４１の動作を制御する。
【００３５】
清掃ロボット２２の本体４１の前面側には、カメラ４３が設けられている。カメラ４３は、清掃ロボット２２の前方の動画像を撮像する。すなわち、カメラ４３は、清掃ロボット２２が走行する先の動画像を撮像する。カメラ４３で撮像された動画像の撮像データは、制御モジュール４２により、ＡＩサーバ２１に送信される。
【００３６】
次に、清掃ロボット２２のハードウェアの構成について説明する。
【００３７】
図３は、清掃ロボット２２のハードウェアの構成の一例を示すブロック図である。清掃ロボット２２は、制御モジュール４２、カメラ４３、走行動作制御部５１、センサ５２、駆動部５３、モータ５４、車輪５５、清掃動作制御部６１、センサ６２、駆動部６３、モータ６４およびブラシ６５を含み構成される。制御モジュール４２は、スピーカ７１、表示部７２、タッチパネル７３、通信部７４および記憶部７５を含む。スピーカ７１は、いわゆるラウドスピーカであり、各種の音声を出力する（放音する）。例えば、スピーカ７１は、病院や公共施設などの建物の屋内を通行している人に対してメッセージを示す音声を出力する。表示部７２は、液晶表示装置や有機EL（Electro-luminescence）表示装置などからなり、各種の画像や文字などを表示する。例えば、表示部７２は、病院や公共施設などの建物の屋内を通行している人に対してメッセージを示す画像や文字を表示する。タッチパネル７３は、表示部７２の表示面に設けられ、表示部７２に表示されている画像を透過させ、接触された位置を入力する。例えば、タッチパネル７３は、起動の時にオペレータからの指示などを入力する。通信部７４は、無線ＬＡＮの所定の規格により、アクセスポイント２４と無線通信する。記憶部７５は、フラッシュメモリなどの不揮発性メモリなどからなり、各種のデータを記憶する。
【００３８】
走行動作制御部５１は、専用のプロセッサなどからなり、センサ５２または制御モジュール４２からの信号により、駆動部５３を制御することで、清掃ロボット２２の走行を制御する。センサ５２は、赤外線や超音波を利用した距離センサや３次元の加速度センサなどからなり、清掃ロボット２２の姿勢や周囲の人や物を検知して、その検知結果を示す信号を走行動作制御部５１に供給する。駆動部５３は、インバータなどであり、図示せぬバッテリなどの電源によって、モータ５４を駆動する。モータ５４は、清掃ロボット２２の底面の４隅などに設けられている車輪５５を回転させたり、車輪５５の向きを変えたりする。
【００３９】
清掃動作制御部６１は、専用のプロセッサなどからなり、センサ６２からの信号により、駆駆動部６３を制御することで、清掃ロボット２２による清掃の動作を制御する。センサ６２は、掃除のときの音を感知するマイク、またはごみの有無や量を感知するピエゾセンサや光センサなどからなり、床のごみや清掃の動作の状態を感知して、その検知結果を示す信号を清掃動作制御部６１に供給する。駆動部６３は、インバータなどであり、図示せぬバッテリなどの電源によって、モータ６４を駆動する。モータ６４は、清掃ロボット２２の底面などに設けられているブラシ６５を回転させたり、ごみを吸い込む吸引装置を動作させたりする。
【００４０】
次に、制御モジュール４２の機能について説明する。
【００４１】
図４は、制御モジュール４２が制御プログラムを実行することにより実現される機能の構成の一例を説明するブロック図である。制御モジュール４２が制御プログラムを実行すると、撮像制御部８１、符号化部８２、通信制御部８３、フラグ設定部８４、記憶制御部８５、指示部８６および音声出力制御部８７が実現される。
【００４２】
撮像制御部８１は、カメラ４３による動画像の撮像を制御する。符号化部８２は、カメラ４３により撮像された動画像をH.262/MPEG（Moving Picture Experts Group）-2 Part 2やMPEG-4 AVC（Advanced Video Coding）/H.264などの方式により、符号化して、撮像データを生成する。通信制御部８３は、通信部７４による通信を制御する。通信制御部８３は、送信制御部９１および受信制御部９２を含む。送信制御部９１は、通信部７４を制御することで、動画像の撮像データの送信など、アクセスポイント２４を介したＡＩサーバ２１への各種のデータの送信を制御する。受信制御部９２は、通信部７４を制御することで、停止を指示する制御信号の受信など、アクセスポイント２４を介してＡＩサーバ２１から送信されてくる各種のデータの受信を制御する。
【００４３】
フラグ設定部８４は、記憶部７５の所定のアドレスのデータのビットを０または１に設定することで、清掃ロボット２２が停止していることを示す停止フラグなど各種のフラグを設定する。記憶制御部８５は、記憶部７５への音声のデータの記憶を制御する。指示部８６は、タッチパネル７３からの操作に応じた信号やＡＩサーバ２１から停止を指示する制御信号などに応じて、走行動作制御部５１に停止や減速などを指示する。指示部８６は、判定部９３を含む。判定部９３は、ＡＩサーバ２１から送信されてきた制御信号が停止を指示するものであるか、減速を指示するものであるかなどを判定する。
【００４４】
音声出力制御部８７は、ＡＩサーバ２１から送信されてくる制御信号であって、音声の出力を指示する制御信号を受信した場合、記憶部７５に記憶されている音声データを読み出して、音声データによる音声をスピーカ７１に出力させる。
【００４５】
次に、ＡＩサーバ２１のハードウェアについて説明する。
【００４６】
図５は、ＡＩサーバ２１のハードウェアの構成の一例を示すブロック図である。
【００４７】
ＡＩサーバ２１において、CPU（Central Processing Unit）１２１，ROM（Read Only Memory）１２２，RAM（Random Access Memory）１２３は、バス１２４により相互に接続されている。
【００４８】
バス１２４には、さらに、入出力インタフェース１２５が接続されている。入出力インタフェース１２５には、必要に応じて接続されるキーボードまたはマウスなどよりなる入力部１２６、必要に応じて接続されるディスプレイなどよりなる出力部１２７、ハードディスクや不揮発性のメモリなどよりなる記録部１２８、ネットワークインタフェースなどよりなる通信部１２９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１３１を駆動するドライブ１３０が接続されている。
【００４９】
また、入出力インタフェース１２５には、図示せぬGPU（Graphics Processing Unit）を介して、タッチパネルモニタ２５が接続されている。
【００５０】
以上のように構成されるＡＩサーバ２１（コンピュータ）では、CPU１２１が、例えば、記録部１２８に記録されているプログラムを、入出力インタフェース１２５及びバス１２４を介して、RAM１２３にロードして実行することにより、後述する一連の処理が行われる。
【００５１】
ＡＩサーバ２１（CPU１２１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア１３１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【００５２】
そして、プログラムは、リムーバブルメディア１３１をドライブ１３０に装着することにより、入出力インタフェース１２５を介して、記録部１２８に記録することで、コンピュータにインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部１２９で受信し、記録部１２８に記録することで、コンピュータにインストールすることができる。その他、プログラムは、ROM１２２や記録部１２８にあらかじめ記憶または記録しておくことで、コンピュータにあらかじめインストールしておくことができる。
【００５３】
すなわち、ＡＩサーバ２１（コンピュータ）では、インストールされたプログラムを実行することにより、図６を参照して後述する機能が実現される。
【００５４】
図６は、ＡＩサーバ２１がプログラムを実行することにより実現される機能の構成の一例を示すブロック図である。ＡＩサーバ２１がプログラムを実行することにより、危険度測定部１６１、撮像データバッファ１６２、復号部１６３、学習データ記録制御部１６４、学習スケジューラ１６５、判定部１６６、指令部１６７、通信制御部１６８、入力制御部１６９および表示制御部１７０が実現される。危険度測定部１６１は、清掃ロボット２２から送信されてくる動画像の撮像データから、機械学習によって、動画像のシーンの危険の程度を測定する。また、危険度測定部１６１は、清掃ロボット２２から送信されてくる動画像の撮像データから、機械学習によって、動画像に写っている被写体との接触の危険の程度を測定する。また、危険度測定部１６１は、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度を測定する。危険度測定部１６１は、物体検知ＡＩ部１７１、画像処理部１７２、危険度測定ＡＩ部１７３および描画部１７４を含む。
【００５５】
なお、危険度測定部１６１は、図示せぬGPUに計算を実行させて、動画像のシーンの危険の程度を測定するようにしてもよい。また、危険度測定部１６１は、図示せぬAIチップに計算を実行させて、動画像のシーンの危険の程度を測定するようにしてもよい。なお、危険度測定部１６１は、清掃ロボット２２の数だけ実現されるようにしてもよい。例えば、図１に示されるように、清掃システム１１において、清掃ロボット２２−１および２２−２が清掃する場合、図示は省略するが、プログラムを実行するＡＩサーバ２１は、清掃ロボット２２−１用の危険度測定部１６１−１と、清掃ロボット２２−２用の危険度測定部１６１−２とを実現させる。
【００５６】
物体検知ＡＩ部１７１は、清掃ロボット２２により撮像された動画像の撮像データから、ニューラルネットワークを用いた機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する。
【００５７】
例えば、物体検知ＡＩ部１７１は、ディープラーニングを利用した物体検出を行うYOLO（You Only Look Once），R-CNN（Regions with Convolutional Neural Network），Faster R-CNNまたはFCN（Fully Convolutional Network）などの畳み込みニューラルネットワークによる機械学習によって、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する。例えば、YOLOを採用する物体検知ＡＩ部１７１は、動画像の全体からクラス確率および物体のバウンディングボックス座標を推論する。例えば、R-CNNを採用する物体検知ＡＩ部１７１は、選択的探索法から得られる物体領域候補内の画像を、事前に学習しておいたCNN（Convolutional Neural Network）に入力して、画像特徴を抽出し、抽出された画像特徴を線形サポートベクトルマシンに入力して物体クラスを予測する。
【００５８】
なお、物体検知ＡＩ部１７１は、学習済みモデルを使用して、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する。
【００５９】
また、物体検知ＡＩ部１７１は、図示せぬGPUに計算を実行させて、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知するようにしてもよい。なお、物体検知ＡＩ部１７１は、図示せぬAIチップに計算を実行させて、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知するようにしてもよい。さらにまた、物体検知ＡＩ部１７１は、清掃ロボット２２の数だけ実現されるようにしてもよい。例えば、図１に示されるように、清掃システム１１において、清掃ロボット２２−１および２２−２が清掃する場合、図示は省略するが、プログラムを実行するＡＩサーバ２１は、清掃ロボット２２−１用の物体検知ＡＩ部１７１−１と、清掃ロボット２２−２用の物体検知ＡＩ部１７１−２とを実現させる。
【００６０】
画像処理部１７２は、画像処理により、動画像および動画像における被写体の位置から、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度を求める。また、画像処理部１７２は、画像処理により、物体検知ＡＩ部１７１において被写体が人であると検知された場合、清掃ロボット２２に対する被写体の向きまたは清掃ロボット２２に対する被写体の顔の向きを求める。例えば、画像処理部１７２は、動画像および動画像における被写体の位置から、平面射影変換またはリセクションの処理により、清掃ロボット２２から被写体までの距離を求める。例えば、画像処理部１７２は、動画像および動画像における被写体の位置から、背景差分法またはオプティカルフローにより、清掃ロボット２２に対する被写体の速度を求める。
【００６１】
例えば、画像処理部１７２は、目、鼻および口などの特徴点（領域）から左目端点、右目端点、鼻頂点、口左端、口右端および顎の先の６つの点を検出して、顔の回転角度を求めることで、清掃ロボット２２に対する被写体の顔の向きを求める。また、例えば、画像処理部１７２は、動画像における、被写体の身体の特徴量を抽出し、正規化した特徴量からSVM（Support Vector Machine）およびクラス識別器により被写体の身体の向きを検出する。
【００６２】
なお、物体検知ＡＩ部１７１または画像処理部１７２は、人である被写体が健常者、患者または子供であるか否か、人である被写体が立ち話をしているか否か、人である被写体が松葉杖をついているか否か、人である被写体が点滴スタンドを持っているか否かなどを検出するようにしてもよい。
【００６３】
危険度測定ＡＩ部１７３は、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度から、ニューラルネットワークを用いた機械学習によって、動画像のシーンの危険の程度を測定する。また、危険度測定ＡＩ部１７３は、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度から、ニューラルネットワークを用いた機械学習によって、清掃ロボット２２と被写体との接触の危険の程度を測定する。
【００６４】
例えば、危険度測定ＡＩ部１７３は、Deep CNNなどの畳み込みニューラルネットワークによる機械学習によって、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度から、動画像のシーンの危険の程度を測定する。例えば、危険度測定ＡＩ部１７３は、Deep CNNなどの畳み込みニューラルネットワークによる機械学習によって、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度から、清掃ロボット２２と被写体との接触の危険の程度を測定する。
【００６５】
なお、危険度測定ＡＩ部１７３は、学習済みモデルを使用して、動画像のシーンの危険の程度および清掃ロボット２２と被写体との接触の危険の程度を測定する。
【００６６】
描画部１７４は、動画像に、動画像のシーンの危険の程度を示す文字または画像を書き込む。また、描画部１７４は、動画像に、清掃ロボット２２と被写体との接触の危険の程度を示す文字または画像を書き込む。すなわち、描画部１７４は、動画像の撮像データに、動画像のシーンの危険の程度を示す文字または画像および清掃ロボット２２と被写体との接触の危険の程度を示す文字または画像を表示させるデータを書き込む。より詳細には、描画部１７４は、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離、清掃ロボット２２に対する被写体の速度または動画像のシーンの危険の程度若しくは清掃ロボット２２と被写体との接触の危険の程度を示す文字または画像を描画する。
【００６７】
さらに、描画部１７４は、動画像に、動画像のシーンの危険の程度または被写体との接触の危険の程度に応じた停止または減速などの清掃ロボット２２への指令を示す文字または画像を書き込む。
【００６８】
撮像データバッファ１６２は、RAM１２３の記憶領域または記録部１２８の記録領域を用いて、清掃ロボット２２からの撮像データを一時的に格納する。例えば、撮像データバッファ１６２は、リングバッファとされる。復号部１６３は、清掃ロボット２２からの撮像データであって、符号化部８２で符号化されている撮像データを復号する。学習データ記録制御部１６４は、タッチパネルモニタ２５への操作によって監視者から清掃ロボット２２の停止または減速が指示された場合、撮像データバッファ１６２から撮像データを取得して、停止が指示された時を含む所定の長さの時間の動画像の撮像データを記録部１２８に記録させる。学習スケジューラ１６５は、記録部１２８に記録された動画像の撮像データによる危険度測定部１６１の学習の実行を予約する。学習スケジューラ１６５は、危険度測定部１６１の学習のジョブをスケジューリングすることで予約する。また、学習スケジューラ１６５は、監視者またはオペレータからのタッチパネルモニタ２５または入力部１２６への操作による指示に応じて、危険度測定部１６１の学習のジョブのスケジューリングにおける、学習の実行の可否および学習が実行される時刻を決定する。
【００６９】
判定部１６６は、危険度測定ＡＩ部１７３で測定された清掃ロボット２２と被写体との接触の危険の程度から、清掃ロボット２２に停止を指令するか否か、清掃ロボット２２に減速を指令するか否かなどを判定する。指令部１６７は、通信部１２９から清掃ロボット２２に制御信号を送信させることで、清掃ロボット２２に停止、減速または加速を指令する。通信制御部１６８は、通信部１２９による通信を制御する。通信制御部１６８は、送信制御部１７５および受信制御部１７６を含む。送信制御部１７５は、通信部１２９を制御することで、停止を指示する制御信号の送信など、アクセスポイント２４を介した清掃ロボット２２への各種のデータの送信を制御する。受信制御部１７６は、通信部１２９を制御することで、動画像の撮像データの受信など、アクセスポイント２４を介して清掃ロボット２２から送信されてくる各種のデータの受信を制御する。
【００７０】
入力制御部１６９は、タッチパネルモニタ２５のタッチパネルを制御し、監視者がタッチパネルモニタ２５のタッチパネルを操作した場合にタッチパネルモニタ２５から送信されてくる、操作に応じた信号を取得する。表示制御部１７０は、タッチパネルモニタ２５のモニタを制御し、清掃ロボット２２から送信されてくる動画像をタッチパネルモニタ２５に表示させる。
【００７１】
次に、フローチャートを参照して、清掃システム１１において行われる処理を説明する。
【００７２】
図７は、起動の処理を説明するフローチャートである。ステップＳ１０１において、監視者またはオペレータの操作により、制御モジュール４２が起動させられる。ステップＳ１０２において、制御モジュール４２は、ＡＩサーバ２１に接続する。ステップＳ２０１において、ＡＩサーバ２１は、制御モジュール４２と接続する。例えば、制御モジュール４２の通信制御部８３は、通信部７４に、TCP（Transmission Control Protocol）により、ハブ２３およびアクセスポイント２４を介して、通信制御部１６８に制御される通信部１２９とコネクションを確立させる。なお、制御モジュール４２とＡＩサーバ２１とは、UDP（User Datagram Protocol）により接続するようにしてもよい。
【００７３】
ステップＳ１０３において、指示部８６の判定部９３は、通信制御部８３からコネクションが確立しているか否かを示すステータス情報を取得して、ステータス情報を参照して、制御モジュール４２がＡＩサーバ２１に接続しているか否かを判定する。ステップＳ１０３において、制御モジュール４２がＡＩサーバ２１に接続していないと判定された場合、手続きはステップＳ１０４に進み、判定部９３は、制御モジュール４２に内蔵されているタイマにより、ステップＳ１０２の手続きからの経過時間を計り、例えば１秒間経過したか否かにより、タイムアウトしたか否かを判定する。例えば、ステップＳ１０４において、判定部９３は、ステップＳ１０２の手続きからの1秒間経過していない場合、タイムアウトしていないと判定し、ステップＳ１０２の手続きからの1秒間以上経過した場合、タイムアウトしたと判定する。
【００７４】
ステップＳ１０４において、タイムアウトしていないと判定された場合、手続きはステップＳ１０３に戻り、上述した処理が繰り返される。ステップＳ１０４において、タイムアウトしたと判定された場合、手続きはステップＳ１０５に進み、判定部９３は、フラグ設定部８４により設定される停止フラグであって、清掃ロボット２２が停止していることを示す停止フラグが立っているか否かを判定する。ステップＳ１０５において、停止フラグが立っていると判定された場合、手続きはステップＳ１０２に戻り、上述した処理が繰り返される。
【００７５】
ステップＳ１０５において、停止フラグが立っていないと判定された場合、手続きはステップＳ１０６に進み、制御モジュール４２は、清掃ロボット２２を停止させる。すなわち、制御モジュール４２の指示部８６は、走行動作制御部５１に停止を指示する。ステップＳ１０５の後、手続きはステップＳ１０２に戻り、上述した処理が繰り返される。
【００７６】
ステップＳ１０３において、制御モジュール４２がＡＩサーバ２１に接続していると判定された場合、手続きはステップＳ１０７に進み、撮像制御部８１は、カメラ４３を制御して、カメラ４３に動画像の撮像を開始させる。カメラ４３は、動画像のデータを制御モジュール４２に供給する。ステップＳ１０８において、制御モジュール４２による走行制御の処理が開始され、起動の処理は終了する。
【００７７】
図８は、ステップＳ１０８の走行制御の処理の詳細を説明するフローチャートである。ステップＳ１１において、指示部８６は、走行動作制御部５１および清掃動作制御部６１から清掃ロボット２２の動作状態を示すデータ（以下、動作状態データと称する。）を取得する。ステップＳ１２において、指示部８６の判定部９３は、動作状態データを参照して、清掃ロボット２２が停止しているか否かを判定する。ステップＳ１２において、清掃ロボット２２が停止していると判定された場合、手続きはステップＳ１３に進み、フラグ設定部８４は、停止フラグを立てる。ステップＳ１２において、清掃ロボット２２が停止していないと判定された場合、手続きはステップＳ１４に進み、フラグ設定部８４は、停止フラグを倒す。
【００７８】
ステップＳ１３またはステップＳ１４の後、手続きはステップＳ１５に進み、通信制御部８３の受信制御部９２は、通信部７４に、ＡＩサーバ２１から送信されてくる制御信号を受信させる。ステップＳ１６において、指示部８６の判定部９３は、受信した制御信号により停止が指示されたか否かを判定する。ステップＳ１６において、停止が指示されたと判定された場合、手続きはステップＳ１７に進み、指示部８６は、走行動作制御部５１に停止を指示して、清掃ロボット２２を停止させ、手続きはステップＳ１１に戻り、上述した処理が繰り返される。
【００７９】
ステップＳ１６において、停止が指示されていないと判定された場合、手続きはステップＳ１８に進み、指示部８６の判定部９３は、受信した制御信号により減速が指示されたか否かを判定する。ステップＳ１８において、減速が指示されたと判定された場合、手続きはステップＳ１９に進み、指示部８６は、走行動作制御部５１に減速を指示して、清掃ロボット２２を減速させ、手続きはステップＳ１１に戻り、上述した処理が繰り返される。
【００８０】
ステップＳ１８において、減速が指示されていないと判定された場合、手続きはステップＳ２０に進み、指示部８６の判定部９３は、受信した制御信号により加速が指示されたか否かを判定する。ステップＳ２０において、加速が指示されたと判定された場合、手続きはステップＳ２１に進み、指示部８６は、走行動作制御部５１に加速および通常走行を指示して、清掃ロボット２２を加速させて通常走行させ、手続きはステップＳ１１に戻り、上述した処理が繰り返される。
【００８１】
ステップＳ２０において、加速が指示されていないと判定された場合、手続きはステップＳ２２に進み、指示部８６の判定部９３は、受信した制御信号により停止フラグが要求されたか否かを判定する。ステップＳ２２において、停止フラグが要求されたと判定された場合、手続きはステップＳ２３に進み、フラグ設定部８４は、停止フラグを読み出して、通信制御部８３の送信制御部９１は、通信部７４に、読み出した停止フラグをＡＩサーバ２１宛に送信させる。ステップＳ２３の後、手続きはステップＳ１１に戻り、上述した処理が繰り返される。
【００８２】
ステップＳ２２において、停止フラグが要求されていないと判定された場合、手続きはステップＳ２４に進み、指示部８６の判定部９３は、受信した制御信号により音声の出力が要求されたか否かを判定する。ステップＳ２４において、音声の出力が要求されたと判定された場合、手続きはステップＳ２５に進み、音声出力制御部８７は、記憶部７５から音声データを読み出して、読み出した音声データによりスピーカ７１に音声を出力させる。ステップＳ２３の後またはステップＳ２４において、音声の出力が要求されていないと判定された場合、手続きはステップＳ１１に戻り、上述した処理が繰り返される。
【００８３】
次に、図９および図１０のフローチャートを参照して、ＡＩサーバ２１による清掃ロボット２２の走行制御の処理を説明する。ステップＳ１２１において、清掃ロボット２２は、撮像データをストリーミングでＡＩサーバ２１に送信する。すなわち、ステップＳ１２１において、符号化部８２は、カメラ４３の撮像により得られた動画像のデータを符号化して、ストリーミングデータである撮像データを生成し、通信制御部８３の送信制御部９１は、通信部７４に、ＡＩサーバ２１宛に、ストリーミングデータである撮像データを送信させる。
【００８４】
ステップＳ２２１において、ＡＩサーバ２１は、ストリーミングデータである撮像データを受信する。より詳細には、通信制御部１６８の受信制御部１７６は、通信部１２９に、清掃ロボット２２から送信されてきた撮像データを受信させる。撮像データバッファ１６２は、受信した撮像データを一時的に格納する。危険度測定部１６１は、撮像データバッファ１６２から順に撮像データを読み出す。
【００８５】
ステップＳ２２２において、危険度の測定の処理が行われる。
【００８６】
ここで、図１１のフローチャートを参照して、危険度の測定の処理の詳細を説明する。ステップＳ５１において、危険度測定部１６１の物体検知ＡＩ部１７１は、清掃ロボット２２により撮像された動画像の撮像データから、ニューラルネットワークを用いた機械学習によって、動画像に写っている被写体について、被写体の種類と画像中の被写体の位置とを検知する。言い換えれば、物体検知ＡＩ部１７１は、移動体である清掃ロボット２２により撮像された動画像から、ニューラルネットワークを用いた機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する。
【００８７】
ステップＳ５２において、危険度測定部１６１の画像処理部１７２は、画像処理により、撮像データ、被写体の種類および画像中の被写体の位置から、清掃ロボット２２から被写体までの距離や被写体の移動速度など被写体の属性を求める。すなわち、画像処理部１７２は、画像処理により、動画像および動画像における被写体の位置から、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度を求める。また、画像処理部１７２は、画像処理により、ステップＳ５１において被写体が人であると検知された場合、清掃ロボット２２に対する被写体の向きまたは清掃ロボット２２に対する被写体の顔の向きを求める。
【００８８】
ステップＳ５３において、危険度測定部１６１の危険度測定ＡＩ部１７３は、撮像データ、被写体の種類、画像中の被写体の位置および被写体の属性から、危険度を測定する。例えば、危険度測定ＡＩ部１７３は、撮像データ、被写体の種類、画像中の被写体の位置および被写体の属性から、動画像のシーンの危険の程度である危険度を測定する。また、例えば、危険度測定ＡＩ部１７３は、撮像データ、被写体の種類、画像中の被写体の位置および被写体の属性から、清掃ロボット２２と被写体との接触の危険の程度である危険度を測定する。ここで、例えば、危険度は、０％乃至１００％の範囲で表される。０％である危険度は、清掃ロボット２２と被写体との接触の危険がないことを示す。１００％である危険度は、清掃ロボット２２と被写体との接触の可能性が極めて大きいことを示す。例えば、危険度は、清掃ロボット２２が階段などの段差から転落する危険の程度を示す。また、例えば、危険度は、ロボット２２の近くの扉が開いて、扉の陰にいる人が扉と接触する危険の程度を示す。さらに例えば、危険度は、ロボット２２が床面に落とされた物（落下物）を清掃で巻き込んでしまう危険の程度を示す。
【００８９】
言い換えると、危険度測定ＡＩ部１７３は、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度から、ニューラルネットワークを用いた機械学習によって、動画像のシーンの危険の程度を測定する。危険度測定ＡＩ部１７３は、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度から、ニューラルネットワークを用いた機械学習によって、清掃ロボット２２と被写体との接触の危険の程度および動画像のシーンの危険の程度を測定する。
【００９０】
ステップＳ５４において、危険度測定部１６１の描画部１７４は、撮像データに、被写体の位置を示す枠、被写体の種類、被写体の属性、測定の結果である危険度および危険度に応じた制御信号を示す画像または文字を描画するデータを書き込み、危険度の測定の処理は終了する。すなわち、ステップＳ５４において描画部１７４は、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離、清掃ロボット２２に対する被写体の速度または清掃ロボット２２と被写体との接触の危険の程度を示す文字または画像を描画する。
【００９１】
図９に戻り、ステップＳ２２３において、ＡＩサーバ２１は、タッチパネルモニタ２５に、危険度の測定の結果が書き込まれた撮像データで動画像を表示させる。
【００９２】
図１２は、タッチパネルモニタ２５に表示される動画像の例を示す図である。タッチパネルモニタ２５は、動画像と、被写体が人であるかまたは人以外の物であるかが検知された被写体の位置を示す枠２０１、被写体の種類および被写体の種類の正しさの確率を示す「Person:0.89」などの種類表示２０２、清掃ロボット２２から被写体までの距離をｃｍ単位で示す「70」などの距離表示２０３を表示させる。また、タッチパネルモニタ２５は、画面の右上に、清掃ロボット２２の状態を示す画像であるステータスモニタ２０４を表示させる。ステータスモニタ２０４には、「ROBOT1」などの清掃ロボット２２の名称、「East Bldg 1F」などの清掃ロボット２２の現在位置、「Degree of Risk 20%」などの動画像のシーンの危険の程度が文字で表示される。また、ステータスモニタ２０４には、清掃ロボット２２が通常の走行状態であることを示すランプ表示２１１、清掃ロボット２２が減速していることを示すランプ表示２１２、および清掃ロボット２２が停止していることを示すランプ表示２１３が配置されている。ランプ表示２１１、ランプ表示２１２およびランプ表示２１３は、交通信号を模した画像であり、いずれか１つがアクティブ（輝度が高くなる）になるように表示される画像である。例えば、ランプ表示２１１、ランプ表示２１２およびランプ表示２１３は、それぞれ、緑色、黄色、赤色のそれぞれに表示される。
【００９３】
例えば、図１２に示されるように、ランプ表示２１１がアクティブに表示され、ランプ表示２１２およびランプ表示２１３が非アクティブ（輝度が低くなる）に表示されている場合、ランプ表示２１１、ランプ表示２１２およびランプ表示２１３は、清掃ロボット２２が通常の走行状態であることを示す。
【００９４】
タッチパネルモニタ２５は、画面の左下に、「Stop」と表示され、停止を指示するためのボタン２０５および「Attention」と表示され、「注意してください。ロボットが通ります。」などの音声の出力を指示するためのボタン２０６を表示させる。さらに、タッチパネルモニタ２５は、画面の右下に、距離等表示２０７に「停止：０％：７０ｃｍ」などと表示する。
【００９５】
図９に戻り、ステップＳ２２４において、判定部１６６は、ステップＳ５３において測定された危険度が４０％以上６０％未満であるか否かを判定する。例えば、ステップＳ２２４において、判定部１６６は、動画像のシーンの危険度が４０％以上６０％未満であるか否かを判定する。ステップＳ２２４において、危険度が４０％以上６０％未満であると判定された場合、手続きはステップＳ２２５に進み、指令部１６７は、減速を指示する制御信号を清掃ロボット２２に送信する。この場合、通信制御部１６８の送信制御部１７５は、通信部１２９に、減速を指示する制御信号を清掃ロボット２２宛に送信させる。また、この場合、指令部１６７は、スピーカである出力部１２７に、所定のビープ音などの音を出力させて、減速したことを監視者に知らせる。
【００９６】
ステップＳ２２４において、危険度が４０％以上６０％未満でないと判定された場合、手続きはステップＳ２２６に進み、判定部１６６は、ステップＳ５３において測定された危険度が６０％以上であるか否かを判定する。例えば、ステップＳ２２６において、判定部１６６は、動画像のシーンの危険度が６０％以上であるか否かを判定する。ステップＳ２２６において、危険度が６０％以上であると判定された場合、手続きはステップＳ２２７に進み、指令部１６７は、停止を指示する制御信号を清掃ロボット２２に送信する。この場合、通信制御部１６８の送信制御部１７５は、通信部１２９に、停止を指示する制御信号を清掃ロボット２２宛に送信させる。
【００９７】
この場合、例えば、図１３に示されるように、ＡＩサーバ２１は、タッチパネルモニタ２５に、ボタン２０５およびランプ表示２１３をアクティブに表示させ、ランプ表示２１１およびランプ表示２１２を非アクティブに表示させることで、清掃ロボット２２が停止していることを表示する。また、ＡＩサーバ２１は、タッチパネルモニタ２５に、動画像の周囲を、アクティブに表示されるボタン２０５およびランプ表示２１３の赤色と同じ赤色で表示させる。
【００９８】
さらに、ＡＩサーバ２１は、タッチパネルモニタ２５に、「AUTO:STOP」および「Please TOUCH the monitor to release the robot if AI Server is mistaking」などのメッセージ２３１を表示させる。
【００９９】
ステップＳ２２８において、判定部１６６は、ステップＳ５１における、被写体が人であるかまたは人以外の物であるかの検知の結果から、被写体が人であるか否かを判定する。ステップＳ２２８において、被写体が人であると判定された場合、手続きはステップＳ２２９に進み、指令部１６７は、音声の出力を指示する制御信号を清掃ロボット２２に送信する。この場合、通信制御部１６８の送信制御部１７５は、通信部１２９に、音声の出力を指示する制御信号を清掃ロボット２２宛に送信させる。清掃ロボット２２が音声の出力を指示する制御信号を受信すると、清掃ロボット２２の音声出力制御部８７は、記憶部７５から音声データを読み出して、読み出した音声データによりスピーカ７１に「注意してください。ロボットが通ります。」などの音声を出力させる。
【０１００】
なお、減速した場合、「注意してください。ロボットが通ります。」などの音声を出力させるようにしてもよい。この場合、例えば、図１４に示されるように、ＡＩサーバ２１は、タッチパネルモニタ２５に、ボタン２０６およびランプ表示２１２をアクティブに表示させ、ランプ表示２１１およびランプ表示２１３を非アクティブに表示させることで、清掃ロボット２２が減速していることを表示する。また、ＡＩサーバ２１は、タッチパネルモニタ２５に、動画像の周囲を、アクティブに表示されるボタン２０６およびランプ表示２１２の黄色と同じ黄色で表示させる。
【０１０１】
さらに、ＡＩサーバ２１は、タッチパネルモニタ２５に、「AUTO: Attention please. The robot will pass.」および「Please TOUCH the monitor to release the robot if AI Server is mistaking」などのメッセージ２３１を表示させる。
【０１０２】
なお、監視者がタッチパネルモニタ２５に表示されているボタン２０６をタッチすることで、清掃ロボット２２を減速させて、「注意してください。ロボットが通ります。」などの音声を出力させることもできる。この場合、例えば、図１５に示されるように、ＡＩサーバ２１は、タッチパネルモニタ２５に、ボタン２０６およびランプ表示２１２をアクティブに表示させ、ランプ表示２１１およびランプ表示２１３を非アクティブに表示させることで、清掃ロボット２２が減速していることを表示する。また、ＡＩサーバ２１は、タッチパネルモニタ２５に、動画像の周囲を、アクティブに表示されるボタン２０６およびランプ表示２１２の黄色と同じ黄色で表示させる。
【０１０３】
また、ＡＩサーバ２１は、タッチパネルモニタ２５に、「「MANUAL: Attention please. The robot will pass.」などのメッセージ２３１を表示させる。
【０１０４】
ステップＳ２３０において、判定部１６６は、音声の出力が３回繰り返されたか否かを判定し、音声の出力が３回繰り返されたと判定された場合、清掃ロボット２２に制御を戻して清掃ロボット２２に人を回避させるために、手続きはステップＳ２３１に進み、指令部１６７は、加速を指示する制御信号を清掃ロボット２２に送信する。この場合、通信制御部１６８の送信制御部１７５は、通信部１２９に、加速を指示する制御信号を清掃ロボット２２宛に送信させる。
【０１０５】
ステップＳ２３１の後、ステップＳ２３０において、音声の出力が３回繰り返されていないと判定された場合、または、ステップＳ２２５の後、ＡＩサーバ２１による清掃ロボット２２の走行制御の処理は、ステップＳ１２１およびステップＳ２２１に戻り、上述した手続きが繰り返される。
【０１０６】
清掃システム１１においては、監視者は、ステップＳ２２３の手続きでタッチパネルモニタ２５に表示されている画像を見て、清掃ロボット２２の走行を監視し、動画像のシーンとして現在の状況全体に危険を感じた場合、または、被写体との接触などの危険を感じた場合、タッチパネルモニタ２５の画面、すなわちタッチパネルを触ることで、清掃ロボット２２の停止または減速を指示する。
【０１０７】
図１６のフローチャートを参照して、監視者からの指示に応じた処理を説明する。ステップＳ８１において、入力制御部１６９は、タッチパネルモニタ２５のタッチパネルから送信されてくる信号を取得することで、ボタン２０５にタッチする、ボタン２０６にタッチするまたは画面のいずれかの位置にタッチするなどの、監視者のタッチパネルモニタ２５のタッチパネルへの操作による指示を取得する。
【０１０８】
ステップＳ８２において、判定部１６６は、非アクティブ状態のボタン２０５がタッチされるか、または画面のいずれかの位置がタッチされて、監視者から停止が指示されたか否かを判定する。ステップＳ８２において、監視者から停止が指示されたと判定された場合、手続きはステップＳ８３に進み、指令部１６７は、停止を指示する制御信号を清掃ロボット２２に送信する。この場合、通信制御部１６８の送信制御部１７５は、通信部１２９に、停止を指示する制御信号を清掃ロボット２２宛に送信させる。
【０１０９】
この場合、例えば、図１７に示されるように、ＡＩサーバ２１は、タッチパネルモニタ２５に、ボタン２０５およびランプ表示２１３をアクティブに表示させ、ランプ表示２１１およびランプ表示２１２を非アクティブに表示させることで、清掃ロボット２２が停止していることを表示する。また、ＡＩサーバ２１は、タッチパネルモニタ２５に、動画像の周囲を、アクティブに表示されるボタン２０５およびランプ表示２１３の赤色と同じ赤色で表示させる。
【０１１０】
さらに、ＡＩサーバ２１は、タッチパネルモニタ２５に、「MANUAL:STOP」などのメッセージ２３１を表示させる。
【０１１１】
なお、動画像のシーンにおいて、複数の人や複数の物である被写体が写っている場合には、被写体毎に、被写体の種類と画像中の被写体の位置とが検知され、被写体毎に、清掃ロボット２２から被写体までの距離や被写体の移動速度など被写体の属性が求められ、動画像のシーンの危険の程度である危険度が測定される。
【０１１２】
図１８は、動画像に複数の人や複数の物である被写体が写っている場合のタッチパネルモニタ２５に表示される動画像の例を示す図である。なお、図１７と同様の部分には同一の符号を付してあり、その説明は省略する。
【０１１３】
図１８に示される例において、タッチパネルモニタ２５は、動画像と、被写体が人であるかまたは人以外の物であるかが検知された被写体の位置を示す枠２０１−１乃至２０１−５、被写体の種類および被写体の種類の正しさの確率を示す種類表示２０２−１乃至２０２−５、清掃ロボット２２から被写体までの距離をｃｍ単位で示す距離表示２０３−１乃至２０３−５を表示させる。例えば、タッチパネルモニタ２５には、人であることが検知された被写体の位置を示す枠２０１−１、枠２０１−１で示される位置の被写体の種類が人であり、被写体の種類が人であることの正しさの確率を示す「Person:0.89」である種類表示２０２−１、清掃ロボット２２から枠２０１−１で示される位置の人である被写体までの距離をｃｍ単位で示す「260」などの距離表示２０３−１が表示される。また、例えば、タッチパネルモニタ２５には、人であることが検知された被写体の位置を示す枠２０１−２、枠２０１−２で示される位置の被写体の種類が人であり、被写体の種類が人であることの正しさの確率を示す「Person:0.93」である種類表示２０２−２、清掃ロボット２２から枠２０１−２で示される位置の人である被写体までの距離をｃｍ単位で示す「270」などの距離表示２０３−２が表示される。
【０１１４】
さらに、例えば、タッチパネルモニタ２５には、ごみ入れであることが検知された被写体の位置を示す枠２０１−３、枠２０１−３で示される位置の被写体の種類がごみ入れであり、被写体の種類がごみ入れであることの正しさの確率を示す「Bin:0.82」である種類表示２０２−３、清掃ロボット２２から枠２０１−３で示される位置のごみ入れである被写体までの距離をｃｍ単位で示す「180」などの距離表示２０３−３が表示される。さらにまた、例えば、タッチパネルモニタ２５には、扉であることが検知された被写体の位置を示す枠２０１−４、枠２０１−４で示される位置の被写体の種類が扉であり、被写体の種類が扉であることの正しさの確率を示す「Door:0.79」である種類表示２０２−４、清掃ロボット２２から枠２０１−４で示される位置の扉である被写体までの距離をｃｍ単位で示す「320」などの距離表示２０３−４が表示される。
【０１１５】
また、例えば、タッチパネルモニタ２５には、照明であることが検知された被写体の位置を示す枠２０１−５、枠２０１−５で示される位置の被写体の種類が照明であり、被写体の種類が照明であることの正しさの確率を示す「Light:0.69」である種類表示２０２−５、清掃ロボット２２から枠２０１−５で示される位置の照明である被写体までの距離をｃｍ単位で示す「300」などの距離表示２０３−５が表示される。
【０１１６】
ステータスモニタ２０４には、「ROBOT1」などの清掃ロボット２２の名称、「East Bldg 1F」などの清掃ロボット２２の現在位置、「Degree of Risk 87%」などの動画像のシーンの危険の程度が文字で表示される。
【０１１７】
図１８に示されるように、動画像に複数の人や複数の物である被写体が写っている場合、動画像のシーンの危険の程度に影響の大きい被写体の枠２０１が、太線や二重線とされるか、または赤色にされるなど強調表示される。すなわち、描画部１７４は、動画像のシーンの危険の程度に影響の大きい被写体の枠２０１を強調表示して、動画像に描画する。
【０１１８】
例えば、動画像に複数の人や複数の物である被写体が写っている場合、動画像のシーンの被写体のうち、危険の程度が最も高い被写体の位置を示す枠２０１が強調表示される。すなわち、例えば、動画像に複数の人や複数の物である被写体が写っている場合、清掃ロボット２２との接触の危険の程度が最も高い被写体（携帯電話機を見ながら歩いている人）の位置を示す枠２０１−１が強調表示される。
【０１１９】
また、例えば、動画像に複数の人や複数の物である被写体が写っている場合、動画像のシーンの被写体のうち、危険の程度が高い順に所定の数の被写体の位置を示す枠２０１が強調表示される。すなわち、例えば、動画像に複数の人や複数の物である被写体が写っている場合、清掃ロボット２２との接触の危険の程度が最も高い被写体（携帯電話機を見ながら歩いている人）の位置を示す枠２０１−１と清掃ロボット２２との接触の危険の程度が２番目高い被写体（近くにあるごみ入れ）の位置を示す枠２０１−２とが強調表示される。
【０１２０】
すなわち、動画像に複数の人や複数の物である被写体が写っている場合、動画像のシーンのうちの、危険状態にある被写体の枠２０１が、太線や二重線とされるか、または赤色にされるなど強調表示される。
【０１２１】
このようにすることで、タッチパネルモニタ２５−１および２５−２に表示されている動画像を監視している監視者は、動画像に写っている複数の被写体のうち、どの被写体が危険であるかを即座に認識することができる。
【０１２２】
図１６に戻り、ステップＳ８４において、学習データ記録制御部１６４は、停止が指示された時点の前の５秒間および後の５秒間の動画像の撮像データを記録部１２８に記録させる。すなわち、学習データ記録制御部１６４は、監視者から停止が指示された場合、停止が指示された時を含む所定の長さの時間の動画像を記録部１２８に記録させる。このとき、学習データ記録制御部１６４は、停止が指示されたことを示すデータを、停止が指示された時点を基準に前の５秒間および後の５秒間の動画像の撮像データに関連付けて記録部１２８に記録させる。ステップＳ８５において、学習スケジューラ１６５は、追加学習を予約する。すなわち、学習スケジューラ１６５は、記録部１２８に記録された動画像の撮像データによる危険度測定部１６１の学習の実行を予約する。
【０１２３】
ステップＳ８２において、監視者から停止が指示されていないと判定された場合、手続きはステップＳ８６に進み、判定部１６６は、非アクティブ状態のボタン２０６がタッチされて、監視者から減速が指示されたか否かを判定する。ステップＳ８６において、監視者から減速が指示されたと判定された場合、手続きはステップＳ８７に進み、指令部１６７は、減速を指示する制御信号を清掃ロボット２２に送信する。この場合、通信制御部１６８の送信制御部１７５は、通信部１２９に、減速を指示する制御信号を清掃ロボット２２宛に送信させる。
【０１２４】
ステップＳ８８において、学習データ記録制御部１６４は、減速が指示された時点の前の５秒間および後の５秒間の動画像の撮像データを記録部１２８に記録させる。すなわち、学習データ記録制御部１６４は、監視者から減速が指示された場合、減速が指示された時を含む所定の長さの時間の動画像を記録部１２８に記録させる。このとき、学習データ記録制御部１６４は、減速が指示されたことを示すデータを、減速が指示された時点を基準に前の５秒間および後の５秒間の動画像の撮像データに関連付けて記録部１２８に記録させる。ステップＳ８９において、学習スケジューラ１６５は、追加学習を予約する。すなわち、学習スケジューラ１６５は、記録部１２８に記録された動画像の撮像データによる危険度測定部１６１の学習の実行を予約する。
【０１２５】
ステップＳ８６において、監視者から減速が指示されていないと判定された場合、手続きはステップＳ９０に進み、アクティブ状態のボタン２０５またはアクティブ状態のボタン２０６がタッチされて、監視者から加速が指示されたか否かを判定する。ステップＳ９０において、監視者から加速が指示されたと判定された場合、手続きはステップＳ９１に進み、指令部１６７は、加速を指示する制御信号を清掃ロボット２２に送信する。この場合、通信制御部１６８の送信制御部１７５は、通信部１２９に、加速を指示する制御信号を清掃ロボット２２宛に送信させる。
【０１２６】
例えば、図１３に示されるように、ＡＩサーバ２１が、タッチパネルモニタ２５に、ボタン２０５およびランプ表示２１３をアクティブに表示させ、ランプ表示２１１およびランプ表示２１２を非アクティブに表示させることで、清掃ロボット２２が停止していることを表示し、「AUTO:STOP」および「Please TOUCH the monitor to release the robot if AI Server is mistaking」などのメッセージ２３１を表示させている場合、監視者が、タッチパネルモニタ２５に表示されている動画像を見て、ポスターに示されている人の画像を人であると危険度測定部１６１が誤認したと判断したとき、監視者は、アクティブに表示されているボタン２０５をタッチすることで、清掃ロボット２２の加速を指示する。
【０１２７】
ステップＳ８５、ステップＳ８９またはステップＳ９１の後、手続きはステップＳ８１に戻り、監視者からの指示に応じた処理が繰り返される。
【０１２８】
図１９は、終了の処理を説明するフローチャートである。ステップＳ１８１において、指示部８６の判定部９３は、清掃動作制御部６１から清掃作業の状態を示すステータス情報を取得して、清掃ロボット２２の清掃の作業が終了したか否かを判定する。ステップＳ１８１において、清掃の作業が終了していないと判定された場合、判定の処理が繰り返される。
【０１２９】
ステップＳ１８１において、清掃の作業が終了したと判定された場合、手続きはステップＳ１８２に進み、指示部８６は、ＡＩサーバ２１に作業の終了を通知する。すなわち、通信制御部８３の送信制御部９１は、指示部８６からの指示により、通信部７４に、ＡＩサーバ２１宛に作業の終了の通知を送信させる。
【０１３０】
ステップＳ２８１において、通信制御部１６８の受信制御部１７６は、通信部１２９に、清掃ロボット２２からの作業の終了の通知を受信させる。ステップＳ２８２において、通信制御部１６８の受信制御部１７６は、通信部１２９に、ストリーミングデータである撮像データの受信を停止させる。
【０１３１】
ステップＳ１８３において、通信制御部８３の送信制御部９１は、ストリーミングデータである撮像データの送信を停止する。ステップＳ１８４において、撮像制御部８１は、カメラ４３に撮像を停止させる。この場合、符号化部８２は、動画像のデータの符号化を停止する。
【０１３２】
ステップＳ１８５において、指示部８６は、ＡＩサーバ２１に電源オフを通知する。すなわち、通信制御部８３の送信制御部９１は、指示部８６からの指示により、通信部７４に、ＡＩサーバ２１宛に電源オフの通知を送信させる。
【０１３３】
ステップＳ２８３において、通信制御部１６８の受信制御部１７６は、通信部１２９に、清掃ロボット２２からの電源オフの通知を受信させる。ステップＳ２８４において、判定部１６６は、清掃ロボット２２からの電源オフの通知を受信したか否かにより、清掃ロボット２２の電源がオフしたか否かを判定する。ステップＳ２８４において、清掃ロボット２２の電源がオフしていないと判定された場合、手続きはステップＳ２８３に戻り、上述した処理が繰り返される。
【０１３４】
ステップＳ２８４において、清掃ロボット２２の電源がオフしたと判定された場合、手続きはステップＳ２８５に進み、危険度測定部１６１は、終了を通知してきた清掃ロボット２２に対する監視の処理を終了する。
【０１３５】
ステップＳ１８６において、監視者またはオペレータの操作により、制御モジュール４２が停止させられる。ステップＳ１８７において、監視者またはオペレータの操作により、清掃ロボット２２の電源がオフされ、終了の処理は終了する。
【０１３６】
次に、ステップＳ８５またはステップＳ８９で予約された追加学習のスケジューリングの処理を図２０のフローチャートを参照して説明する。ステップＳ３０１において、学習スケジューラ１６５は、ディスプレイである出力部１２７またはタッチパネルモニタ２５に、追加学習を実行するか否かを選択するためのボタンやメニューおよび日付や時刻などを配置した表や画像などにより追加学習の予定を表示させる。ステップＳ３０２において、学習スケジューラ１６５は、監視者によるタッチパネルモニタ２５への操作またはオペレータによるキーボード若しくはマウスである入力部１２６への操作から、追加学習を実行するか否かの指示を取得する。例えば、学習スケジューラ１６５は、ディスプレイである出力部１２７またはタッチパネルモニタ２５に表示されている表や画像に配置されている、監視者またはオペレータにボタンやメニューを選択させることにより、追加学習を実行するか否かの指示を取得する。
【０１３７】
ステップＳ３０３において、学習スケジューラ１６５は、監視者またはオペレータから指示された追加学習を実行するか否かを示すデータを追加学習スケジュールデータとして記録部１２８に記録する。
【０１３８】
ステップＳ３０４において、学習スケジューラ１６５は、監視者によるタッチパネルモニタ２５への操作またはオペレータによるキーボード若しくはマウスである入力部１２６への操作から、追加学習を実行する日付および時刻の指示を取得する。例えば、学習スケジューラ１６５は、ディスプレイである出力部１２７またはタッチパネルモニタ２５に、ディスプレイである出力部１２７またはタッチパネルモニタ２５に表示されている表や画像に配置されている、監視者またはオペレータに日付および時刻を選択させることにより、追加学習を実行する日付および時刻の指示を取得する。
【０１３９】
ステップＳ３０５において、学習スケジューラ１６５は、監視者またはオペレータから指示された追加学習を実行する日付および時刻を示すデータを追加学習スケジュールデータに追加して、記録部１２８に記録して、追加学習のスケジューリングの処理は終了する。
【０１４０】
次に、図３０のフローチャートを参照して、一定の期間ごとに実行される追加学習の処理を説明する。ステップＳ３２１において、学習スケジューラ１６５は、記録部１２８に記録されている追加学習スケジュールデータから、追加学習を実行するか否かの指示並びに追加学習を実行する日付および時刻を読み出す。ステップＳ３２２において、学習スケジューラ１６５は、追加学習スケジュールデータから読み出された追加学習を実行するか否かの指示から、追加学習の実行が指示されているか否かを判定する。ステップＳ３２２において、追加学習の実行が指示されていると判定された場合、手続きはステップＳ３２３に進み、学習スケジューラ１６５は、ＡＩサーバ２１に設けられている図示せぬ計時部から、追加学習の処理が実行されている時点の今日の日付および現在時刻を取得する。
【０１４１】
ステップＳ３２４において、学習スケジューラ１６５は、追加学習スケジュールデータから読み出された追加学習を実行する日付および時刻と、追加学習の処理が実行されている時点の今日の日付および現在時刻とを比較することにより、追加学習を実行する日付および時刻になったか否かを判定する。ステップＳ３２４において、追加学習を実行する日付および時刻になったと判定された場合、手続きはステップＳ３２５に進み、学習スケジューラ１６５は、危険度測定部１６１に指示することにより、物体検知ＡＩ部１７１および危険度測定ＡＩ部１７３を学習モードにさせる。例えば、学習モードにおいて、学習スケジューラ１６５は、物体検知ＡＩ部１７１および危険度測定ＡＩ部１７３に、バッチサイズやエポック（学習回数）を設定する。また、例えば、学習モードにおいて、学習スケジューラ１６５は、物体検知ＡＩ部１７１および危険度測定ＡＩ部１７３の学習に用いる最適化関数および損失関数を選択する。
【０１４２】
ステップＳ３２６において、物体検知ＡＩ部１７１および危険度測定ＡＩ部１７３は、学習スケジューラ１６５からの指示により、ステップＳ８４またはステップＳ８８の手続きで記録部１２８に記録されている監視者により停止または減速が指示されたときの動画像および動画像に関連付けられている停止または減速が指示されたことを示すデータにより、学習して、追加学習の処理は終了する。
【０１４３】
例えば、物体検知ＡＩ部１７１および危険度測定ＡＩ部１７３は、バッチ手法により、学習する。また、例えば、物体検知ＡＩ部１７１および危険度測定ＡＩ部１７３は、記録部１２８に記録されている監視者により停止または減速が指示されたときの動画像および動画像に関連付けられている停止または減速が指示されたことを示すデータを用いて、誤差逆伝搬法などの勾配計算法により、教師あり学習を行う。
【０１４４】
ステップＳ３２２において、追加学習の実行が指示されていないと判定された場合、またはステップＳ３２４において、追加学習を実行する日付および時刻になっていないと判定された場合、学習をさせる必要はないので、学習をすることなく、追加学習の処理は終了する。
【０１４５】
このように、より確実に衝突を回避して、より簡単に、学習ができる。また、接触の危険の程度を求める処理の経過を知ることができるようにして、より効果的な修正または学習をすることができる。
【０１４６】
以上のように、ＡＩサーバ２１は、建物内の床上を自律的に走行し、走行する先の動画像を撮像する清掃ロボット２２から送信されてくる動画像から、機械学習によって、動画像に写っている被写体との接触の危険の程度を測定する危険度測定部１６１と、動画像のタッチパネルモニタ２５への表示を制御する表示制御部１７０と、表示している動画像を監視している監視者からの操作による、停止の指示を取得する入力制御部１６９と、測定された危険の程度が所定の閾値以上である場合または監視者から停止が指示された場合、清掃ロボット２２に停止を指令する指令部１６７と、監視者から停止が指示された場合、停止が指示された時を含む所定の長さの時間の動画像を記録部１２８に記録させる学習データ記録制御部１６４と、記録部１２８に記録された動画像による危険度測定部１６１の学習の実行を予約する学習スケジューラ１６５とを含む。
【０１４７】
入力制御部１６９が、監視者からの操作による、減速の指示を取得し、指令部１６７が、減速が指示された場合、清掃ロボット２２に減速を指令し、学習データ記録制御部１６４が、監視者から減速が指示された場合、減速が指示された時を含む所定の長さの時間の動画像を記録手段に記録させるようにすることができる。このようにすることで、より簡単に、学習ができるようになる。
【０１４８】
学習スケジューラ１６５が、危険度測定部１６１の学習のジョブをスケジューリングすることで予約するようにすることができる。このようにすることで、より簡単に、学習ができるようになる。
【０１４９】
学習スケジューラ１６５が、監視者またはオペレータからの操作による指示に応じて、危険度測定部１６１の学習のジョブのスケジューリングにおける、学習の実行の可否および学習が実行される時刻を決定するようにすることができる。このようにすることで、より簡単に、学習ができるようになる。
【０１５０】
動画像に、清掃ロボット２２と被写体との接触の危険の程度を示す文字または画像を書き込む描画部１７４をさらに設け、表示制御部１７０が、清掃ロボット２２と被写体との接触の危険の程度を示す文字または画像が書き込まれた動画像のタッチパネルモニタ２５への表示を制御するようにすることができる。このようにすることで、より確実に衝突を回避できるようになる。
【０１５１】
危険度測定部１６１が、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度を測定し、描画部１７４が、動画像に、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度を示す文字または画像を書き込み、表示制御部１７０が、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度を示す文字または画像が書き込まれた動画像のタッチパネルモニタ２５への表示を制御するようにすることができる。このようにすることで、より確実に衝突を回避できるようになる。
【０１５２】
危険度測定部１６１が、被写体が人であるかまたは人以外の物であるかを検知し、指令部１６７が、被写体が人であると検知された場合、清掃ロボット２２に所定の音声の出力を指令するようにすることができる。このようにすることで、より確実に衝突を回避できるようになる。
【０１５３】
このように、建物内の床上を自律的に走行し、走行する先の動画像を撮像する清掃ロボット２２から送信されてくる動画像から、機械学習によって、動画像に写っている被写体との接触の危険の程度を測定し、動画像をタッチパネルモニタ２５に表示し、表示している動画像を監視している監視者からの操作による、停止の指示を取得し、測定された危険の程度が所定の閾値以上である場合または監視者から停止が指示された場合、清掃ロボット２２に停止を指令するようにしたので、仮に、動画像に写っている被写体との接触の危険の程度の測定が誤ったとしても、表示している動画像を監視している監視者が停止を指示するので、より確実に衝突を回避することができる。また、監視者から停止が指示された場合、停止が指示された時を含む所定の長さの時間の動画像が記録部１２８に記録され、記録部１２８に記録された動画像による危険度測定部１６１の学習の実行が予約されるので、仮に、動画像に写っている被写体との接触の危険の程度の測定が誤った場合でも、その状況に合わせた学習データをいちいち用意する必要がなく、簡単に学習させることができるので、学習の後には、より確実に衝突を回避することができる。このように、より確実に衝突を回避して、より簡単に、学習ができる。
【０１５４】
このように、より確実に衝突を回避して、より簡単に、学習ができる。
【０１５５】
また、ＡＩサーバ２１は、清掃ロボット２２により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知する物体検知ＡＩ部１７１と、動画像および動画像における被写体の位置から、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度を求める画像処理部１７２と、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、清掃ロボット２２から被写体までの距離および清掃ロボット２２に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定する危険度測定ＡＩ部１７３と、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込む描画部１７４とを含む。
【０１５６】
物体検知ＡＩ部１７１が、ニューラルネットワークを用いた機械学習によって、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知し、危険度測定ＡＩ部１７３が、ニューラルネットワークを用いた機械学習によって、清掃ロボット２２と被写体との接触の危険の程度を測定するようにすることができる。
【０１５７】
画像処理部１７２が、被写体が人であると検知された場合、清掃ロボット２２に対する被写体の向きまたは清掃ロボット２２に対する被写体の顔の向きを求めるようにすることができる。
【０１５８】
清掃ロボット２２と被写体との接触の危険の程度が所定の閾値以上である場合、清掃ロボット２２に停止または減速を指令する指令部１６７をさらに設けることができる。
【０１５９】
清掃ロボット２２からストリーミングで送信されてくる動画像を受信する通信部１２９をさらに設け、物体検知ＡＩ部１７１、画像処理部１７２および危険度測定ＡＩ部１７３は、それぞれ、受信された動画像で検知するか、画像処理するか、または測定するようにすることができる。
【０１６０】
清掃ロボット２２への停止または減速の指示が外部から入力された場合、停止または減速が指示された時を含む所定の長さの時間の動画像を記録する記録部１２８をさらに設けることかできる。
【０１６１】
このように、物体検知ＡＩ部１７１が、移動体により撮像された動画像から、機械学習によって、動画像に写っている被写体について、被写体が人であるかまたは人以外の物であるかを検知し、動画像における被写体の位置を検知し、画像処理部１７２が、動画像および動画像における被写体の位置から、移動体から被写体までの距離および移動体に対する被写体の速度を求め、危険度測定ＡＩ部１７３が、動画像、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離および移動体に対する被写体の速度から、機械学習によって、動画像のシーンの危険の程度を測定し、描画部１７４が、動画像に、被写体が人であるかまたは人以外の物であるかの検知の結果、動画像における被写体の位置、移動体から被写体までの距離、移動体に対する被写体の速度および動画像のシーンの危険の程度を示す文字または画像を書き込むようにしたので、文字または画像が書き込まれた動画像を表示させれば、使用者が動画像を見ることで、被写体が人であるかまたは人以外の物であるかの検知の状態、動画像における被写体の位置の検知の状態、移動体から被写体までの距離および移動体に対する被写体の速度並びに動画像のシーンとして現在の状況全体の危険の程度を知ることができるので、使用者が、動画像のシーンの危険の程度を求める処理で、どうしてそのような判定になったかの手がかりを知ることができる。これにより、例えば、移動体に停止または減速を指令するなど、より効果的な操作をすることができる。このように、使用者が、動画像のシーンの危険の程度を求める処理で、どうしてそのような判定になったかの手がかりを知ることができるので、より効果的な操作をすることができる。
【０１６２】
また、追加学習のスケジューリングをする場合、監視者またはオペレータが学習に用いる動画像を必要な領域にトリミングして、物体検知ＡＩ部１７１および危険度測定ＡＩ部１７３に学習させるようにしてもよい。
【０１６３】
なお、ＡＩサーバ２１が清掃ロボット２２の走行を制御すると説明したが、これに限らず、書類や薬品、食品または機器などを搬送する搬送ロボットを制御することもできる。さらに、ＡＩサーバ２１は、屋内や屋外を移動する自動車若しくは電車などの車両またはマルチコプターなどの無人航空機などの移動体を制御することもできる。
【０１６４】
また、ＡＩサーバ２１が制御モジュール４２に停止または減速を指令する制御信号を送信して、制御モジュール４２が走行動作制御部５１に指令することで、清掃ロボット２２が停止または減速すると説明したが、これに限らず、清掃ロボット２２のハードウェアの停止ボタンまたは減速ボタンを機械的な機構により押圧する押圧機構であって、ネットワーク上の信号により動作する押圧機構を設けて、ＡＩサーバ２１が信号を送信することにより、清掃ロボット２２のハードウェアの停止ボタンまたは減速ボタンが押圧されるようにして、清掃ロボット２２の走行を制御するようにしてもよい。
【０１６５】
なお、ＡＩサーバ２１が清掃ロボット２２に走行の停止または減速を指令すると説明したが、これに限らず、清掃ロボット２２の清掃の動作を停止させたり、清掃の特定の機能、例えばブラシ６５を停止させたりするようにしてもよい。
【０１６６】
また、ステップＳ２２４において、判定部１６６は、ステップＳ５３において測定された危険度が４０％以上６０％未満であるか否かを判定し、ステップＳ２２６において、判定部１６６は、ステップＳ５３において測定された危険度が６０％以上であるか否かを判定すると説明したがこれに限らず、ステップＳ２２４において、判定部１６６は、ステップＳ５３において測定された危険度が５０％以上８０％未満であるか否かを判定し、ステップＳ２２６において、判定部１６６は、ステップＳ５３において測定された危険度が８０％以上であるか否かを判定するなど、判定の閾値を所望の値とすることができる。
【０１６７】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１６８】
１１  清掃システム，  ２１  ＡＩサーバ，  ２２，２２−１および２２−２  清掃ロボット，  ２３  ハブ，  ２４，２４−１乃至２４−３  アクセスポイント，  ２５，２５−１および２５−２  タッチパネルモニタ，  ４１  本体，  ４２  制御モジュール，  ４３  カメラ，  ５１  走行動作制御部，  ５２  センサ，  ５３  駆動部，  ５４  モータ，  ５５  車輪，  ６１  清掃動作制御部，  ６２  センサ，  ６３  駆動部，  ６４  モータ，  ６５  ブラシ，  ７１  スピーカ，  ７２  表示部，  ７３  タッチパネル，  ７４  通信部，  ７５  記憶部，  ８１  撮像制御部，  ８２  符号化部，  ８３  通信制御部，  ８４  フラグ設定部，  ８５  記憶制御部，  ８６  指示部，  ８７  音声出力制御部，  ９１  送信制御部，  ９２  受信制御部，  ９３  判定部，  １２１  CPU，  １２２  ROM，  １２３  RAM，  １２６  入力部，  １２７  出力部，  １２８  記録部，  １２９  通信部，  １３１  リムーバブルメディア，  １６１  危険度測定部，  １６２  撮像データバッファ，  １６３  復号部，  １６４  学習データ記録制御部，  １６５  学習スケジューラ，  １６６  判定部，  １６７  指令部，  １６８  通信制御部，  １６９  入力制御部，  １７０  表示制御部，  １７１  物体検知ＡＩ部，  １７２  画像処理部，  １７３  危険度測定ＡＩ部，  １７４  描画部，  １７５  送信制御部，  １７６  受信制御部，  ２０１，２０１−１乃至２０１−５  枠，  ２０２，２０２−１乃至２０２−５  種類表示，  ２０３，２０３−１乃至２０３−５  距離表示，  ２０４  ステータスモニタ，  ２０５および２０６  ボタン，  ２０７  距離等表示，  ２１１，２１２および２１３  ランプ表示，  ２３１  メッセージ
【図１】
2019139468.tif 000003
【図２】
2019139468.tif 000004
【図３】
2019139468.tif 000005
【図４】
2019139468.tif 000006
【図５】
2019139468.tif 000007
【図６】
2019139468.tif 000008
【図７】
2019139468.tif 000009
【図８】
2019139468.tif 000010
【図９】
2019139468.tif 000011
【図１０】
2019139468.tif 000012
【図１１】
2019139468.tif 000013
【図１２】
2019139468.tif 000014
【図１３】
2019139468.tif 000015
【図１４】
2019139468.tif 000016
【図１５】
2019139468.tif 000017
【図１６】
2019139468.tif 000018
【図１７】
2019139468.tif 000019
【図１８】
2019139468.tif 000020
【図１９】
2019139468.tif 000021
【図２０】
2019139468.tif 000022
【図２１】
2019139468.tif 000023