(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025018054
(43)【公開日】2025-02-06
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理システム
(51)【国際特許分類】
G06T 7/62 20170101AFI20250130BHJP
H04N 7/18 20060101ALI20250130BHJP
【FI】
G06T7/62
H04N7/18 U
H04N7/18 K
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023121452
(22)【出願日】2023-07-26
(71)【出願人】
【識別番号】000003757
【氏名又は名称】東芝ライテック株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】高柳 佳幸
(72)【発明者】
【氏名】高原 雄一郎
(72)【発明者】
【氏名】西垣 英則
(72)【発明者】
【氏名】山根木 明子
(72)【発明者】
【氏名】森 雄一
(72)【発明者】
【氏名】木村 祐二
【テーマコード(参考)】
5C054
5L096
【Fターム(参考)】
5C054CC02
5C054EA01
5C054EA07
5C054FC07
5C054FC12
5C054FC14
5C054GB01
5L096BA02
5L096CA02
5L096FA59
5L096FA69
5L096FA70
5L096HA08
(57)【要約】
【課題】物体の体積推定に関するコストの増大を抑制可能にする。
【解決手段】情報処理装置は、撮影部により撮影された画像を保存する画像保存部と、前記画像保存部により保存された画像から物体を検出する物体検出部と、前記物体検出部の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの前記一の物体の座標情報と、前記各フレームでの前記一の物体の大きさを示す情報とに基づいて、前記一の物体の体積を推定する推定部と、を有する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
撮影部により撮影された画像を保存する画像保存部と;
前記画像保存部により保存された画像から物体を検出する物体検出部と;
前記物体検出部の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの前記一の物体の座標情報と、前記各フレームでの前記一の物体の大きさを示す情報とに基づいて、前記一の物体の体積を推定する推定部と;
を有する情報処理装置。
【請求項2】
前記推定部は、
前記画像において移動中の前記一の物体が含まれる前記各フレームでの前記一の物体の座標情報と、前記各フレームでの前記一の物体の大きさを示す情報とに基づいて、前記一の物体の体積を推定する
請求項1に記載の情報処理装置。
【請求項3】
前記画像保存部は、
撮影範囲が固定された前記撮影部により撮影された画像を保存し、
前記推定部は、
固定された前記撮影範囲を撮像した前記画像において移動中の前記一の物体が含まれる前記各フレームでの前記一の物体の座標情報と、前記各フレームでの前記一の物体の大きさを示す情報とに基づいて、前記一の物体の体積を推定する
請求項2に記載の情報処理装置。
【請求項4】
撮影部により撮影された画像を保存する画像保存工程と;
前記画像保存工程により保存された画像から物体を検出する物体検出工程と;
前記物体検出工程の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの前記一の物体の座標情報と、前記各フレームでの前記一の物体の大きさを示す情報とに基づいて、前記一の物体の体積を推定する推定工程と;
を含む情報処理方法。
【請求項5】
画像を撮影する撮影部を有する照明装置と;
前記撮影部により撮影された画像を保存する画像保存部と;
前記画像保存部により保存された画像から物体を検出する物体検出部と;
前記物体検出部の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの前記一の物体の座標情報と、前記各フレームでの前記一の物体の大きさを示す情報とに基づいて、前記一の物体の体積を推定する推定部と;
を有する情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、情報処理方法及び情報処理システムに関する。
【背景技術】
【0002】
従来、カメラにより撮像された画像を用いた非接触の物体検出技術が提供されている(例えば、特許文献1参照)。また、例えば、ステレオカメラを用いた多眼撮影法により撮影された画像を用いた解析技術が提供されている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特表2022-524787号公報
【特許文献2】特開平11-211438号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術には改善の余地がある。例えば、従来技術では、多眼撮影法による物体検出では画角を共有する範囲に複数のカメラを設置する必要があり、物体の体積を推定するために画角を共有する複数のカメラを設置する必要がある。このように、従来技術では、物体の体積推定に関するコストの観点については改善の余地がある。
【0005】
本発明は、物体の体積推定に関するコストの増大を抑制可能にする情報処理装置、情報処理方法及び情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本実施形態の情報処理装置は、撮影部により撮影された画像を保存する画像保存部と、前記画像保存部により保存された画像から物体を検出する物体検出部と、前記物体検出部の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの前記一の物体の座標情報と、前記各フレームでの前記一の物体の大きさを示す情報とに基づいて、前記一の物体の体積を推定する推定部と、を有する。
【発明の効果】
【0007】
本発明によれば、物体の体積推定に関するコストの増大を抑制可能にすることができる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施形態に係る情報処理システムを示す図である。
【
図2】
図2は、実施形態に係る照明装置の一例を示す斜視図である。
【
図3】
図3は、実施形態に係る照明装置の構成を示すブロック図である。
【
図4】
図4は、実施形態に係るサーバ装置の構成を示すブロック図である。
【
図5】
図5は、実施形態に係るAI情報記憶部の一例を示す図である。
【
図6】
図6は、撮影機能を有する照明装置による撮影の一例を示す図である。
【
図7】
図7は、照明装置により撮影された物体を含む画像の一例を示す図である。
【
図8】
図8は、物体の体積推定処理の一例を示すフローチャートである。
【
図9】
図9は、撮影機能を有する照明装置による撮影の一例を示す図である。
【
図10】
図10は、照明装置により撮影された人物を含む画像の一例を示す図である。
【
図11】
図11は、物体の有無判定処理の一例を示すフローチャートである。
【
図12】
図12は、検出に関するコストの一例を示す図である。
【
図13】
図13は、物体の検出処理の制御の一例を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下で説明する実施形態に係る情報処理装置(例えばサーバ装置300。以下同様)は、撮影部(例えばカメラ21。以下同様)により撮影された画像を保存する画像保存部(例えば記憶部320。以下同様)と、画像保存部により保存された画像から物体を検出する物体検出部(例えば第1検出部332。以下同様)と、物体検出部の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する推定部336と、を有する。
【0010】
また、以下で説明する実施形態に係る情報処理装置において、推定部336は、画像において移動中の一の物体が含まれる各フレームでの一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する。
【0011】
また、以下で説明する実施形態に係る情報処理装置において、画像保存部は、撮影範囲が固定された撮影部により撮影された画像を保存し、推定部336は、固定された撮影範囲を撮像した画像において移動中の一の物体が含まれる各フレームでの一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する。
【0012】
また、以下で説明する実施形態に係る情報処理システム1は、画像を撮影する撮影部を有する照明装置100と、撮影部により撮影された画像を保存する画像保存部と、画像保存部により保存された画像から物体を検出する物体検出部と、物体検出部の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する推定部336と、を有する。
【0013】
[実施形態]
[情報処理システムの構成]
ここから、実施形態に係る情報処理システム1の装置構成及び各装置の機能について説明する。まず、実施形態に係る情報処理システム1の装置構成を
図1に基づいて説明する。
図1は、実施形態に係る情報処理システムを示す図である。
【0014】
図1に示す情報処理システム1は、照明装置100と、中継器200と、サーバ装置300と、端末装置400とを有する。情報処理システム1には、複数の照明装置100や、複数の中継器200や、複数のサーバ装置300や、複数の端末装置400が含まれてもよい。照明装置100は、中継器200とLAN(Local Area Network)等を介して、有線または無線により通信可能に接続される。照明装置100は、中継器200を介してサーバ装置300と通信する。
【0015】
照明装置100は、カメラ付き照明である。例えば、照明装置100は、カメラの構成が照明器具に一体となった装置である。照明装置100は、光源31及びカメラ21を備えるエッジである。例えば、照明装置100は、画像の撮影に関する処理を実行する情報処理装置(コンピュータ)である。なお、本願でいう画像は、動画像(映像)及び静止画像を含む概念である。
【0016】
例えば、照明装置100は、工場や倉庫等の構造物の天井に設置され、点灯により構造物の内部空間を照明する照明装置である。
図1では、荷物等の物体SBが管理される工場や倉庫等の内部空間に照明装置100が設けられる場合を示す。ここで、照明装置100について、
図2を用いて説明する。
図2は、実施形態に係る照明装置の一例を示す斜視図である。実施形態に係る照明装置100は、天井直付けタイプの照明装置であり、いわゆるベースライトである。
図2に示す例において、照明装置100は、カメラユニット20と照明ユニット30とを有する。なお、照明装置100は、ベースライトに限られず、シーリングライトやダウンライト、スポットライトなどであってもよい。
【0017】
カメラユニット20は、照明装置100の周囲の所定の領域を撮影する撮影装置である。
図1では、カメラユニット20は、カメラ21の画角に対応する撮影範囲ARを撮影する。例えば、撮影範囲ARは、カメラ21の撮影範囲を示す。例えば、カメラユニット20は、撮影範囲ARを対象として、動画像(映像)または静止画像等の画像を撮影する。
【0018】
例えば、カメラユニット20は、撮影範囲AR内に物体SBが位置する場合、物体SBを含む画像を撮影する。また、カメラユニット20は、その空間で管理される荷物などの物体SBを運搬する主体(「運搬主体」ともいう)が撮影範囲AR内に位置する場合、運搬主体(「運搬者」、「移動物体」ともいう)を含む画像を撮影する。例えば、物体SB等は移動物体(運搬主体)に対して、被運搬対象(被移動物体)となる。例えば、カメラユニット20は、撮影範囲AR内に運搬主体の一例である人物(「人」ともいう)である人HMが位置する場合、人HMを含む画像を撮影する。
【0019】
なお、運搬主体は、物体SBを運搬可能であれば、人に限らず、様々な機器(移動体)が含まれてもよい。例えば、カメラユニット20は、撮影範囲AR内に運搬主体の一例であるフォークリフトFLが位置する場合、フォークリフトFLを含む画像を撮影する。なお、
図1では、人以外の運搬主体の一例としてフォークリフトを図示するが、人以外の運搬主体は、フォークリフトに限らず、無人搬送車(Automatic Guided Vehicle)、自律移動ロボット、台車等の様々な機器(移動体)であってもよい。すなわち、運搬主体は、物体SBを運搬可能、すなわち、物体SBの位置を変更可能であれば、人に限らず、様々な機器であってもよい。
【0020】
中継器200は、中継処理を行う機能を有する装置である。例えば、中継器200は、照明装置100が設置された施設内のネットワークと、インターネット等の外部ネットワークとを接続するいわゆるゲートウェイである。
【0021】
サーバ装置300は、後述する各種の情報処理を実行する情報処理装置である。サーバ装置300は、クライアントサーバシステムのサーバとして用いられる装置である。例えば、サーバ装置300は、いわゆるクラウドサーバとして機能する情報処理装置(コンピュータ)である。サーバ装置300は、カメラ21により撮影された画像から物体を検出する物体検出処理を実行する。サーバ装置300は、カメラ21により撮影された画像から人等の運搬主体を検出する処理を実行する。サーバ装置300は、各種の検出の処理を制御したり、各種の検出の結果を基に処理を実行したりするが、詳細は後述する。
【0022】
サーバ装置300は、中継器200と、端末装置400とインターネット等の所定の通信網(ネットワーク)を介して、有線または無線により通信可能に接続される。なお、サーバ装置300は、情報の送受信が可能であれば、中継器200や端末装置400とどのように接続されてもよく、有線により通信可能に接続されてもよいし、無線により通信可能に接続されてもよい。例えば、サーバ装置300は、任意の装置(ゲートウェイ装置等)を介して端末装置400と通信してもよい。
【0023】
端末装置400は、情報を表示する機能を有する装置である。例えば、端末装置400は、ユーザが利用する情報処理装置(コンピュータ)である。例えば、端末装置400は、所定のネットワークを介して任意のサーバ装置300と通信を行うことができる携帯端末装置である。
図1では、端末装置400がノートPC(Personal Computer)である場合を示す。なお、端末装置400は、ノートPCのみならず、スマートフォンやタブレット等のスマートデバイスやデスクトップPC等のコンピュータであってもよい。
【0024】
端末装置400は、サーバ装置300から提供される情報を表示する。例えば、端末装置400は、情報を要求する情報(要求情報)をサーバ装置300へ送信し、サーバ装置300から受信した情報を表示する。例えば、端末装置400は、情報を指定する要求情報をサーバ装置300へ送信し、サーバ装置300から受信した情報を表示する。例えば、端末装置400は、レポート情報等を含むコンテンツを表示する。
【0025】
[照明装置の構成例]
次に、
図3を用いて、実施形態に係る照明装置100の構成について説明する。
図3は、実施形態に係る照明装置の構成を示すブロック図である。例えば、照明装置100は、カメラ付き照明装置として機能する情報処理装置(コンピュータ)である。
図3に示すように、照明装置100は、通信部10と、カメラユニット20と、照明ユニット30と、制御部40と、記憶部50とを有する。
【0026】
通信部10は、中継器200等の他の装置との間で情報の送受信を行う。通信部10は、例えば、所定の通信回路またはNIC(Network Interface Card)等によって実現される。通信部10による通信方式は、例えば、ローカルエリアネットワーク(LAN)などの無線通信であってよい。なお、通信部10による通信方式は、任意の通信方式であってよく、例えば、有線通信、赤外線通信等であってもよい。
【0027】
カメラユニット20は、カメラ21と、カメラ制御部22と、記憶部23とを有する。カメラ21は、例えばCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)など、電子的に画像を取得する撮像素子を備え、所定の画角に対応する画像を撮影する。例えば、カメラ21は、撮影範囲(
図1では撮影範囲AR)が固定されており、固定された撮影範囲の画像を撮像する。
【0028】
カメラ制御部22は、カメラ21による撮影を制御する。また、カメラ制御部22は、カメラ21により撮影された画像を制御部40に出力する。
【0029】
記憶部23は、カメラユニット20の各種制御を実現するためのプログラムやデータを記憶する。記憶部23は、カメラ21が撮影した画像、またはカメラ21により撮影された画像(画像データ)を記憶してもよい。記憶部23は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置によって実装される。
【0030】
照明ユニット30は、光源31と、照明制御部32と、記憶部33とを有する。光源31は、例えば、LED(Light Emitting Diode)等の半導体発光素子を有する。光源31は、照明制御部32から出力された制御信号に応じた態様で点灯または消灯する。
【0031】
照明制御部32は、光源31の点灯および消灯を制御する。照明制御部32は、消灯する光源31を点灯し、あるいは点灯する光源31を消灯する。光源31の調光が可能な照明ユニット30の場合、照明制御部32は、光源31の調光度を制御してもよい。
【0032】
記憶部33は、照明ユニット30の各種制御を実現するためのプログラムやデータを記憶する。記憶部33は、例えば、RAM、フラッシュメモリなどの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置によって実装される。なお、記憶部33は、後述する記憶部50に設けられていてもよい。
【0033】
記憶部50は、情報処理に関する各種情報を記憶する。記憶部50は、制御部40の各種制御を実現するためのプログラムを記憶する。記憶部50は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。例えば、記憶部50は、記憶部23に記憶される情報や記憶部33に記憶される情報を記憶してもよい。
【0034】
制御部40は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、内部メモリに記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部40は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現することができる。制御部40は、取得部41と、処理部42と、送信部43とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部40の内部構成は、
図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【0035】
取得部41は、各種情報を取得する。取得部41は、カメラユニット20から各種情報を取得する。取得部41は、カメラユニット20が撮像した画像をカメラユニット20から取得する。取得部41は、照明ユニット30から各種情報を取得する。取得部41は、記憶部50から各種情報を取得する。取得部41は、外部の情報処理装置から各種情報を取得する。取得部41は、通信部10を介して外部の情報処理装置から各種情報を受信する。取得部41は、中継器200から情報を受信する。取得部41は、中継器200を介してサーバ装置300から情報を受信する。
【0036】
処理部42は、カメラユニット20で撮影された画像を処理し、所定の処理を実行する。処理部42は、画像処理を行う。処理部42は、記憶部50に各種情報を格納する。ここで、処理部42は、端末装置400からの設定等に応じた態様で、カメラ21が撮影した画像を格納する。例えば、処理部42は、1週間分の画像のみを記憶部50に格納し、撮影から1週間を過ぎた画像については、消去してもよい。また、処理部42は、画像をクラウドにアップロードする設定が行われた場合は、撮像された画像を記憶部50には登録せずに、サーバ装置300に対してアップロードさせてもよい。
【0037】
送信部43は、通信部10を介して外部装置に各種情報を送信する。送信部43は、中継器200に各種情報を送信する。送信部43は、カメラユニット20により撮影した画像を外部装置に送信する。送信部43は、中継器200を介してサーバ装置300や端末装置400に画像を送信する。
【0038】
[サーバ装置の構成例]
次に、
図4を用いて、実施形態に係るサーバ装置300の構成について説明する。
図4は、実施形態に係るサーバ装置の構成を示すブロック図である。
図4に示すように、サーバ装置300は、通信部310と、記憶部320と、制御部330とを有する。
【0039】
通信部310は、例えば、所定の通信回路またはNIC等によって実現される。例えば、通信部310は、中継器200、端末装置400等の外部装置と通信可能である。例えば、通信部310は、情報処理システム1の管理者が利用する端末装置400と通信可能である。
【0040】
記憶部320は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部320は、情報処理に関する各種情報を記憶する。記憶部320は、カメラ21により撮影された動画像(映像)または静止画像等の画像を保存する画像保存部として機能する。すなわち、記憶部320は、カメラ21により撮影された画像を保存する。記憶部320は、撮影範囲が固定されたカメラ21により撮影された画像を保存する。例えば、実施形態に係る記憶部320は、
図4に示すように、AI情報記憶部321と、画像情報記憶部322と、処理用情報記憶部323とを有する。
【0041】
なお、記憶部320は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、記憶部320は、上記以外にも照明装置100、中継器200等から受信した各種情報を記憶する。
【0042】
AI情報記憶部321は、処理に用いるAI(人工知能)に関する情報を記憶する。例えば、AI情報記憶部321は、AIに関する技術により機械学習により学習されたモデルに関する情報を記憶する。例えば、AI情報記憶部321は、学習処理により学習(生成)された学習済みモデル(モデル)の情報(モデルデータ)を記憶する。
図5は、実施形態に係るAI情報記憶部の一例を示す図である。
図5に示した例では、AI情報記憶部321は、「モデルID」、「用途」、「モデルデータ」といった項目が含まれる。
【0043】
「モデルID」は、モデルを識別するための識別情報を示す。「用途」は、対応するモデルの用途を示す。「モデルデータ」は、モデルのデータを示す。
図5等では「モデルデータ」に「MDT1」といった概念的な情報が格納される例を示したが、実際には、モデルの構成(ネットワーク構成)の情報やパラメータに関する情報等、そのモデルを構成する種々の情報が含まれる。例えば、「モデルデータ」には、ネットワークの各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。
【0044】
図5では、モデルID「M1」により識別されるモデル(モデルM1)は、用途が「物体検出」であることを示す。すなわち、モデルM1は、入力された画像中に含まれる物体を示す情報を出力するモデルであることを示す。例えば、モデルM1は、入力された画像について、検出した物体の色及び形状等の特徴量、及びその物体が画像中で占める領域(セグメンテーション)を示す情報を出力する。例えば、モデルM1は、入力された画像について、検出した物体の色及び形状等の特徴量に基づく物体を示すラベル(例えば物体の種類を示す情報)、及びその物体が画像中で占める領域(セグメンテーション)を示す情報を出力する。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。なお、モデルM1は、人やフォークリフト等の運搬主体以外の物体を検知するモデルであってもよいし、人やフォークリフト等の運搬主体も物体として検知するモデルであってもよい。モデルM1が人やフォークリフト等の運搬主体も物体として検知するモデルである場合、サーバ装置300は、モデルM1を用いた検出結果のうち、人やフォークリフト等の運搬主体に該当する検出結果を除外した情報を、物体検出処理の結果として用いてもよい。
【0045】
また、モデルID「M2」により識別されるモデル(モデルM2)は、用途が「人検出」であることを示す。すなわち、モデルM2は、入力された画像中に含まれる人(人物)を示す情報を出力するモデルであることを示す。例えば、モデルM2は、入力された画像について、検出した人の色及び形状等の特徴量、及びその人が画像中で占める領域(セグメンテーション)を示す情報を出力する。例えば、モデルM2は、入力された画像について、検出した人の色及び形状等の特徴量に基づく人を示すラベル(例えば運搬主体を識別する運搬主体ID等)、及びその人が画像中で占める領域(セグメンテーション)を示す情報を出力する。また、モデルM2のモデルデータは、モデルデータMDT2であることを示す。
【0046】
また、モデルID「M3」により識別されるモデル(モデルM3)は、用途が「フォークリフト検出」であることを示す。すなわち、モデルM3は、入力された画像中に含まれるフォークリフトを示す情報を出力するモデルであることを示す。例えば、モデルM3は、入力された画像について、検出したフォークリフトの色及び形状等の特徴量、及びそのフォークリフトが画像中で占める領域(セグメンテーション)を示す情報を出力する。例えば、モデルM3は、入力された画像について、検出したフォークリフトの色及び形状等の特徴量に基づくフォークリフトを示すラベル(例えば運搬主体を識別する運搬主体ID等)、及びそのフォークリフトが画像中で占める領域(セグメンテーション)を示す情報を出力する。また、モデルM3のモデルデータは、モデルデータMDT3であることを示す。
【0047】
なお、
図5では、人以外の運搬主体としてフォークリフトを検出する場合を一例として説明するが、運搬主体が例えば無人搬送車等のフォークリフト以外の機器である場合、その運動主体を検出するモデルが用いられてもよい。この場合、AI情報記憶部321は、無人搬送車を検出するモデル(例えばモデルM4)等を記憶してもよい。
【0048】
なお、AI情報記憶部321は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、AI情報記憶部321は、人、フォークリフト、無人搬送車等を含む運搬主体(移動体)を検出するモデル(例えばモデルM5)等を記憶してもよい。
【0049】
例えば、AI情報記憶部321は、学習に用いたデータ(学習データ)を学習済みモデル(モデル)に対応付けて記憶してもよい。例えば、学習データには、データ(入力情報)とそのデータに対応する正解情報(出力情報)等、対応するモデルの学習に用いられたデータに関する種々の情報が含まれる。この場合、サーバ装置300がAI情報記憶部321に記憶された学習データを用いた学習処理を実行して、AI情報記憶部321に記憶されるモデルを生成してもよい。
【0050】
例えば、AI情報記憶部321は、各モデルを用いる場合のコストを示す情報を記憶してもよい。この場合、例えば、AI情報記憶部321は、物体を検知するモデルM1を用いるコスト(解析コスト)が大きいことを示す情報を記憶してもよい。例えば、AI情報記憶部321は、人(人物)を検知するモデルM2を用いるコストが小さいことを示す情報を記憶してもよい。例えば、AI情報記憶部321は、フォークリフトを検知するモデルM3を用いるコストが小さいことを示す情報を記憶してもよい。
【0051】
画像情報記憶部322は、動画像(映像)や静止画像等の各種の画像に関する情報を記憶する。画像情報記憶部322は、照明装置100により撮影された動画像や静止画像等の画像を記憶する。例えば、画像情報記憶部322には、動画像や静止画像等の画像のそのものに限らず、これらの格納場所を示すファイルパス名などが格納されてもよい。なお、画像情報記憶部322は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
【0052】
処理用情報記憶部323は、各種の情報処理に用いる情報を記憶する。処理用情報記憶部323は、生成処理に用いる情報を記憶する。例えば、処理用情報記憶部323は、追従データの生成処理に用いる情報を記憶する。例えば、処理用情報記憶部323は、提供するレポート情報の生成処理に用いる情報を記憶する。
【0053】
処理用情報記憶部323は、推定処理に用いる情報を記憶する。例えば、処理用情報記憶部323は、物体の体積推定処理に用いる情報を記憶する。処理用情報記憶部323は、判定処理に用いる情報を記憶する。例えば、処理用情報記憶部323は、物体の有無の判定処理に用いる情報を記憶する。なお、処理用情報記憶部323は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
【0054】
制御部330は、例えば、CPUやMPU等によって、内部メモリに記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部330は、例えば、ASICやFPGA等の集積回路により実現することができる。制御部330は、取得部331と、第1検出部332と、第2検出部333と、制御処理部334と、生成部335と、推定部336と、判定部337と、提供部338とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部330の内部構成は、
図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【0055】
取得部331は、各種情報を取得する。取得部331は、記憶部320から各種情報を取得する。取得部331は、通信部310を介して外部装置から各種情報を受信する。取得部331は、中継器200から情報を受信する。例えば、取得部331は、照明装置100が収集した情報を中継器200から受信してもよい。取得部331は、カメラ21により撮影された画像を取得する。
【0056】
第1検出部332は、取得部331により取得された画像から物体を検出する物体検出処理を実行する物体検出処理部として機能する。第1検出部332は、記憶部320により保存された画像から物体を検出する。第1検出部332は、物体検出モデルであるモデルM1を用いて物体検出処理を実行する。第1検出部332は、物体検出処理の検出結果を示す情報を生成する。
【0057】
第2検出部333は、取得部331により取得された画像から人を検出する人検出部として機能する。第2検出部333は、人検出モデルであるモデルM2を用いて人検出処理(「人物検出処理」ともいう)を実行する。第2検出部333は、人検出処理の検出結果を示す情報を生成する。
【0058】
なお、第2検出部333は、人(人物)に限らず、各種の運搬主体を検出する運搬主体検出処理を実行してもよい。例えば、第2検出部333は、フォークリフト検出モデルであるモデルM3を用いてフォークリフト検出処理を実行する。
【0059】
制御処理部334は、各種の検出を制御する制御処理を実行する。例えば、制御処理部334は、取得部331により取得された各種情報に基づいて、制御処理を実行する。制御処理部334は、記憶部320に記憶された各種情報に基づいて、制御処理を実行する。制御処理部334は、外部装置から受信された各種情報に基づいて、制御処理を実行する。
【0060】
制御処理部334は、第1検出部332及び第2検出部333による検出を制御する。制御処理部334は、カメラ21の撮影範囲に関する状況が所定の条件を満たすか否かに応じて、第1検出部332による物体検出処理の実行状態を制御する。制御処理部334は、状況が所定の条件を満たす場合、第1検出部332に物体検出処理を実行させ、状況が所定の条件を満たさない場合、第1検出部332に物体検出処理の実行を停止させる。制御処理部334は、カメラ21の撮影範囲に物体を運搬する運搬主体が位置する場合、所定の条件を満たすと判定する。制御処理部334は、第2検出部333により人が検出された場合、所定の条件を満たすと判定する。
【0061】
生成部335は、種々の情報を生成する生成処理を実行する。生成部335は、生成処理により生成した情報を記憶部320に格納する。生成部335は、外部装置から受信された各種情報に基づいて、生成処理を実行する。例えば、生成部335は、取得部331により取得された各種情報に基づいて、生成処理を実行する。例えば、生成部335は、記憶部320に記憶された各種情報に基づいて、生成処理を実行する。
【0062】
生成部335は、第1検出部332及び第2検出部333による検出結果に基づいて、生成処理を実行する。生成部335は、推定部336により推定された情報を用いて、生成処理を実行する。生成部335は、判定部337により判定された情報を用いて、生成処理を実行する。生成部335は、記憶部320により保存された画像に含まれる物体と、物体を運搬する運搬主体とを追従した追従データを生成する。生成部335は、記憶部320により保存された映像の各フレーム(静止画像)で検出された物体の位置の変化(変遷)に基づいて、物体を追従した追従データを生成する。また、生成部335は、記憶部320により保存された映像の各フレーム(静止画像)で検出された運搬主体の位置の変化(変遷)に基づいて、運搬主体を追従した追従データを生成する。
【0063】
生成部335は、レポート情報等の各種の情報を生成する。生成部335は、端末装置400に表示させるレポート情報を含むコンテンツ等の各種情報を生成する。例えば、生成部335は、画像生成や画像処理等に関する種々の技術を適宜用いて、端末装置400へ提供するレポート情報等を含むコンテンツ(画面)を生成する。例えば、生成部335は、Java(登録商標)等の種々の技術を適宜用いて、端末装置400へ提供する画面(コンテンツ)を生成する。なお、生成部335は、CSS(Cascading Style Sheets)やJavaScript(登録商標)やHTML(Hyper Text Markup Language)の形式に基づいて、端末装置400へ提供するレポート情報等を含むコンテンツを生成してもよい。また、例えば、生成部335は、JPEG(Joint Photographic Experts Group)やGIF(Graphics Interchange Format)やPNG(Portable Network Graphics)など様々な形式でコンテンツを生成してもよい。
【0064】
推定部336は、種々の情報を推定する推定処理を実行する。推定部336は、推定処理により推定した情報を記憶部320に格納する。推定部336は、外部装置から受信された各種情報に基づいて、推定処理を実行する。例えば、推定部336は、取得部331により取得された各種情報に基づいて、推定処理を実行する。例えば、推定部336は、記憶部320に記憶された各種情報に基づいて、推定処理を実行する。
【0065】
推定部336は、第1検出部332及び第2検出部333による検出結果に基づいて、推定処理を実行する。推定部336は、生成部335により生成された情報を用いて、推定処理を実行する。推定部336は、判定部337により判定された情報を用いて、推定処理を実行する。
【0066】
推定部336は、第1検出部332の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレーム(静止画像)での一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する。推定部336は、画像において移動中の一の物体が含まれる各フレームでの一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する。
【0067】
推定部336は、固定された撮影範囲を撮像した画像において移動中の一の物体が含まれる各フレームでの一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する。
【0068】
判定部337は、種々の情報を判定する判定処理を実行する。判定部337は、判定処理により判定した情報を記憶部320に格納する。判定部337は、外部装置から受信された各種情報に基づいて、判定処理を実行する。例えば、判定部337は、取得部331により取得された各種情報に基づいて、判定処理を実行する。例えば、判定部337は、記憶部320に記憶された各種情報に基づいて、判定処理を実行する。
【0069】
判定部337は、第1検出部332及び第2検出部333による検出結果に基づいて、判定処理を実行する。判定部337は、生成部335により生成された情報を用いて、判定処理を実行する。判定部337は、推定部336により推定された情報を用いて、判定処理を実行する。
【0070】
判定部337は、生成部335により生成された追従データに基づいて、カメラ21の撮影範囲内における物体の有無を判定する。判定部337は、運搬主体による運搬により位置が変更される被移動対象物である物体が、カメラ21の撮影範囲内に位置するか否かを判定する。
【0071】
判定部337は、追従データが示す物体の位置の変遷と、運搬主体の位置の変遷との比較に基づいて、カメラ21の視野に対して死角となる位置に物体が位置するか否かを判定する。判定部337は、人、人の操作に応じて移動する移動体、及び自動で移動する移動体のいずれかである運搬主体により運搬された物体が、カメラ21の撮影範囲内に位置するか否かを判定する。
【0072】
提供部338は、各種情報を外部装置に送信する提供処理を実行する。提供部338は、通信部310を介して外部装置に各種情報を送信する。提供部338は、端末装置400または中継器200に各種情報を送信する。提供部338は、生成部335により生成された情報を端末装置400に送信する。提供部338は、端末装置400が表示する情報を端末装置400に送信する。提供部338は、生成部335によりレポート情報を端末装置400に送信する。提供部338は、第1検出部332による物体の検出結果と、第2検出部333による人の検出結果とに基づいて、検知結果を示すレポート情報を提供する。
【0073】
[情報処理システムにおける処理例]
ここから、上述した内容を前提として、各種の処理例についての詳細を説明する。なお、以下では、情報処理システム1またはサーバ装置300を処理主体として記載する場合、その処理は、情報処理システム1に含まれる装置構成に応じて、情報処理システム1に含まれるいずれの装置が行ってもよい。例えば、情報処理システム1の装置構成等に応じて、サーバ装置300に限らず、照明装置100、中継器200、端末装置400等が以下に示す処理を実行してもよい。
【0074】
[物体の体積の推定処理例]
例えば、情報処理システム1は、カメラ21により撮影された画像に含まれる物体の体積を推定する処理(「第1の処理」ともいう)を実行する。以下、第1の処理に関連する課題、情報処理システム1が実行する第1の処理の一例等について説明する。
【0075】
従来のステレオカメラを用いた多眼撮影法による物体検出では画角を共有する範囲に複数のカメラを設置する必要があり、物体の体積を推定するために画角を共有する複数のカメラを設置する必要があり、カメラの設置コスト等の増大が生じるという課題がある。
【0076】
そこで、情報処理システム1では、1つのカメラ21のみを用いて、物体の体積を推定する第1の処理を実行する。サーバ装置300は、1つのカメラ21により撮影された画像から物体を検出する物体検出処理の検出結果の解析により同一の物体と推定された一の物体が含まれる各フレームでの一の物体の座標情報と、各フレームでの一の物体の大きさを示す情報とに基づいて、一の物体の体積を推定する。例えば、情報処理システム1は、1台のカメラ21付きの照明装置100で工場や倉庫等の内部空間の映像を撮影し、物体を検知する。情報処理システム1は、物体検知とともに検知した物体を追従し、画像ごとに検出した物体を紐づけて物体の位置と大きさの情報を収集する。情報処理システム1は、収集した情報から物体の体積を推定する。
【0077】
この点について
図6及び
図7を用いて一例を説明する。
図6は、撮影機能を有する照明装置による撮影の一例を示す図である。
図7は、照明装置により撮影された物体を含む画像の一例を示す図である。
【0078】
図6及び
図7に示す例では、段ボールである物体SB1がカメラ21の撮影範囲ARを床面に沿った一方向(例えば右から左)に移動する場合を一例として示す。なお、
図6及び
図7では、物体SB1の位置に応じて、物体SB1-1、物体SB1-2、物体SB1-3として示すが、物体SB1-1、物体SB1-2、物体SB1-3等を特に区別せずに説明する場合、物体SB1と記載する。
【0079】
図6では、物体SB1は、物体SB1-1に示す位置、物体SB1-2に示す位置、物体SB1-3に示す位置の順に位置が変更される(移動する)。例えば、
図6では、物体SB1は、人等の運搬主体により床面に沿って運搬させる(移動する)。
【0080】
図7中のフレームFR11は、物体SB1が
図6中の物体SB1-1に示す位置にある場合に撮影されたフレーム(静止画像)に対応する。また、
図7中のフレームFR12は、フレームFR11よりも後の時点のフレームに対応し、物体SB1が
図6中の物体SB1-2に示す位置にある場合に撮影されたフレーム(静止画像)に対応する。また、
図7中のフレームFR13は、フレームFR12よりも後の時点のフレームに対応し、物体SB1が
図6中の物体SB1-3に示す位置にある場合に撮影されたフレーム(静止画像)に対応する。
【0081】
図6及び
図7では、サーバ装置300は、1つのカメラ21により撮影されたフレームFR11~FR13等を含む画像から物体を検出する物体検出処理を実行する。そして、サーバ装置300は、物体検出結果の解析により、フレームFR11に含まれる物体SB1-1、フレームFR12に含まれる物体SB1-2、及びフレームFR13に含まれる物体SB1-3を同一の物体SB1と推定する。
【0082】
そして、サーバ装置300は、物体SB1が含まれる各フレームFR11~FR13での物体SB1の座標情報と、各フレームFR11~FR13での物体SB1の大きさを示す情報とに基づいて、物体SB1の体積を推定する。
【0083】
ここで、
図7に示すように、物体の位置が画像(フレームFR11~FR13等)の中央に近づくほど、画像内の物体SB1の面積が小さくなる。そこで、サーバ装置300は、画像内の物体SB1の座標位置と、物体SB1のX方向及びY方向の2方向の各々の長さの変化量、すなわち2次元方向(X方向及びY方向)の面積の変化量から、物体の形状を推定し、推定した形状を基に体積を推定する。
【0084】
ここから、情報処理システム1における第1の処理の流れについて説明する。
図8は、物体の体積推定処理の一例を示すフローチャートである。なお、以下では、情報処理システム1を処理主体として説明するが、
図8に示す処理は、情報処理システム1に含まれる装置構成に応じて、照明装置100、中継器200、サーバ装置300、端末装置400等のいずれの装置が行ってもよい。
【0085】
情報処理システム1は、映像の物体検出解析を開始する(ステップS101)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いた物体検出処理を開始する。
【0086】
情報処理システム1は、画像をAIに読みこむ(ステップS102)。例えば、サーバ装置300は、モデルM1等に画像を入力する。
【0087】
情報処理システム1は、物体検出解析を実施する(ステップS103)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いた物体検出処理を実行する。
【0088】
情報処理システム1は、物体を検出していない場合(ステップS104:No)、ステップS105~S108の処理を実行せずに、ステップS109の処理を実行する。例えば、サーバ装置300は、対象とするフレーム(静止画像等)で物体を検出していない場合、ステップS109の処理を実行する。
【0089】
情報処理システム1は、物体を検出した場合(ステップS104:Yes)、物体の色及び形状等の特徴量を記録する(ステップS105)。例えば、サーバ装置300は、対象とするフレーム(静止画像等)で物体を検出した場合、そのフレームで検出した物体の色及び形状等の特徴量を記憶部320に記憶する。
【0090】
情報処理システム1は、類似の物体を検出済みではない場合(ステップS106:No)、ステップS107~S108の処理を実行せずに、ステップS109の処理を実行する。例えば、サーバ装置300は、対象とするフレームよりも前のフレームで類似の物体を検出済みではない場合、ステップS109の処理を実行する。
【0091】
情報処理システム1は、類似の物体を検出済みである場合(ステップS106:Yes)、同一の物体と推定する(ステップS107)。例えば、サーバ装置300は、記憶部320に特徴量を記憶した物体のうち、検出した物体と特徴量が類似する物体がある場合、類似の物体を検出済みであると判定し、同一の物体と推定する。
【0092】
そして、情報処理システム1は、物体情報を記録する(ステップS108)。例えば、サーバ装置300は、対象とするフレームで検出した物体と、そのフレームよりも前のフレームで検出した同一の物体とを対応付けた物体情報を記憶部320に記憶する。例えば、サーバ装置300は、対象とするフレームで検出した物体を識別する情報(物体ID)を、そのフレームよりも前のフレームで検出した同一の物体を識別する情報(物体ID)と同じにすることにより、各フレームで同一の物体を識別可能にしてもよい。例えば、物体情報には、対象とするフレームで検出した物体の特徴量、物体がフレーム(静止画像)に占める領域(座標データ、縦方向の長さ及び横Y方向の長さ等)を示す情報等の処理に用いる様々な情報が含まれる。
【0093】
情報処理システム1は、次のフレームがある場合(ステップS109:Yes)、ステップS103に戻って処理を繰り返す。例えば、サーバ装置300は、対象としたフレームよりも後のフレームがある場合、ステップS103に戻って処理を繰り返す。なお、サーバ装置300は、フレーム(静止画像)ごとに画像をAIに読みこむ場合、ステップS102に戻って処理を繰り返してもよい。
【0094】
情報処理システム1は、次のフレームがない場合(ステップS109:No)、物体情報を呼び出す(ステップS110)。例えば、サーバ装置300は、対象としたフレームよりも後のフレームがない場合、記憶部320に記憶した物体情報のうち、体積が未算出の物体の物体情報を取得する。
【0095】
そして、情報処理システム1は、物体の座標データと物体のX方向及びY方向の長さから形状を推定する(ステップS111)。例えば、サーバ装置300は、物体が位置する空間の床面に沿う一方向をX方向、床面に沿いその一方向に直交する方向をY方向として、それらの長さから物体の形状を推定する。
【0096】
そして、情報処理システム1は、物体の高さを推定する(ステップS112)。例えば、サーバ装置300は、物体が位置する空間の床面に直交する方向(例えば重力方向等)をZ方向(高さ方向)として、その方向における物体の長さ(高さ)を推定する。
【0097】
そして、情報処理システム1は、物体の体積を推定する(ステップS113)。例えば、サーバ装置300は、物体について推定したX方向の長さ、Y方向の長さ、及びZ方向の長さ(高さ)を基に、その物体の体積を推定する。例えば、サーバ装置300は、物体のX方向の長さ、Y方向の長さ、及びZ方向の長さ(高さ)を乗算した算出した値を、物体の体積と推定する。
【0098】
そして、情報処理システム1は、物体の体積を記録する(ステップS114)。例えば、サーバ装置300は、推定した物体の体積を、その物体を識別する情報(物体ID等)に対応付けて記憶部320に記録する。また、サーバ装置300は、体積を推定した物体を識別する情報(物体ID等)に、その物体が体積推定済みであることを示す情報(フラグ等)を対応付けて記憶部320に記録してもよい。
【0099】
情報処理システム1は、体積未計算の物体がある場合(ステップS115:Yes)、ステップS110に戻って処理を繰り返す。例えば、サーバ装置300は、体積未計算の物体がある場合、ステップS110に戻って処理を繰り返す。
【0100】
情報処理システム1は、体積未計算の物体がない場合(ステップS115:No)、第1の処理を終了する。
【0101】
上述したように、情報処理システム1は、カメラ21付きの照明装置100を用いて天井から床面方向を撮影して、AI等の技術で解析して映像内の物体を検出する。例えば、情報処理システム1は、物体の特徴量を記録し次のフレームで同様の物体があった場合、1フレーム前の物体と同一の物体と推定する。すなわち、情報処理システム1は、物体を追従する。情報処理システム1は、物体追従を行うことで、人の手で運ぶ、台車で運ぶ、フォークリフトで運ぶ等により映像内を移動する物体を画角内の複数の角度から撮影することができる。
【0102】
これにより、情報処理システム1は、疑似的に複数のカメラで同一の物体を撮影した際と同様の物体情報を1つのカメラ21のみを用いて取得することができる。また、情報処理システム1は、天井から俯瞰映像として物体を撮影しているため、画像内の物体の位置から物体を撮影した角度を推定することができる。そのため、情報処理システム1は、この角度情報と各角度で撮影された物体のサイズから物体の高さ方向を推定することができる。これにより、情報処理システム1は、1つのカメラ21のみの映像で物体の体積を推定することができる。したがって、情報処理システム1は、物体の体積推定に関するコストの増大を抑制可能にすることができる。
【0103】
このように、情報処理システム1は、物体の体積を推定することにより、工場や倉庫等の内部空間における平置きスペースを最適化するための情報を収集することができる。
【0104】
なお、上記は一例に過ぎず、情報処理システム1は、様々な情報を用いて物体の体積を推定してもよい。例えば、情報処理システム1は、カメラ21に関するパラメータを用いて物体の体積を推定してもよい。情報処理システム1は、カメラ21のレンズ情報等のカメラ21に関する情報を用いてもよい。例えば、情報処理システム1は、カメラ21の位置、カメラ21画像内の物体の隅のXY座標、物体の画像内中心座標、画像の座標とカメラ21に対する実際の位置の角度(画角)との対応表等を用いてもよい。
【0105】
また、情報処理システム1は、物体の素材を推定してもよい。例えば、情報処理システム1は、物体の特徴量を基に物体の素材を推定してもよい。例えば、情報処理システム1は、推定した物体の色の情報を用いて、物体の素材を推定してもよい。例えば、情報処理システム1は、推定した物体の形状の情報を用いて、物体の素材を推定してもよい。例えば、情報処理システム1は、推定した物体の素材の情報を用いて、物体の体積を推定してもよい。
【0106】
また、例えば、情報処理システム1は、各フレームFR11~FR13での物体SB1の座標情報を基に、各フレームFR11~FR13での物体SB1の位置と、カメラ21の位置との間の距離を算出する。この場合、情報処理システム1は、各フレームFR11~FR13での物体SB1とカメラ21との間の距離、および物体SB1の2次元方向(X方向及びY方向)の大きさ(面積)に基づいて、その2次元方向に直交する方向(Z方向)の物体SB1の長さを推定してもよい。そして、情報処理システム1は、物体SB1の2次元方向(X方向及びY方向)の大きさ、及び2次元方向に直交する方向(Z方向)の物体SB1の長さを用いて、物体SB1の体積を推定してもよい。
【0107】
例えば、情報処理システム1は、照明装置100のカメラ21の配置位置から床面までの距離を示す情報を用いてもよい。この場合、情報処理システム1は、例えばサーバ装置300の記憶部320に照明装置100のカメラ21の配置位置から鉛直方向(重力方向)における床面までの距離(「床面距離」ともいう)を示す配置情報を格納し、記憶部320に記憶された配置情報を用いてもよい。情報処理システム1は、フレームFR11~FR13等を含む画像に基づいて、照明装置100のカメラ21と物体SB1との間の距離を推定する。
【0108】
情報処理システム1は、画像認識技術に関する技術を用いて、照明装置100のカメラ21と物体SB1との鉛直方向における長さ(「物体距離」ともいう)を推定する。情報処理システム1は、フレームFR11~FR13等を含む画像と、任意の距離推定アルゴリズムを用いて、照明装置100のカメラ21と物体SB1との鉛直方向における長さ(物体距離)を推定する。
【0109】
例えば、情報処理システム1は、各フレームFR11~FR13での物体SB1の座標情報と、各フレームFR11~FR13での照明装置100のカメラ21と物体SB1との間の距離を基に、照明装置100のカメラ21と物体SB1との鉛直方向における長さ(物体距離)を推定する。情報処理システム1は、床面距離から物体距離を差し引いた値を、物体SB1の高さと推定してもよい。また、情報処理システム1は、物体SB1を人が手に持って運搬している場合、床面距離から物体距離及び人の運搬位置を示す値(例えば人の胸部位置に対応する値)を差し引いた値を、その物体の高さと推定してもよい。
【0110】
[物体の有無の判定処理例]
例えば、情報処理システム1は、カメラ21により撮影された画像を用いて、カメラ21の撮影範囲における物体の有無を判定する処理(「第2の処理」ともいう)を実行する。以下、第2の処理に関連する課題、情報処理システム1が実行する第2の処理の一例等について説明する。
【0111】
従来のカメラ等を用いた物体検出では、カメラが撮影した画像(映像)で物体を検知する場合、カメラの死角に入ってしまうと物体を検知できなくなってしまう。特に工場や倉庫などの物体そのものが多い環境では、カメラを設置しても検出したい物体が他の物体の影に入ってしまい、正確な物量を把握できないといった課題がある。この解決策として、死角部分を撮影用でカメラを設置するなどの対応も可能ではあるが、この場合複数のカメラ映像を解析する必要があるほか、カメラの設置コストの増加による管理コストの増加などの課題がある。
【0112】
そこで、情報処理システム1では、物体の有無を判定する第2の処理を実行する。サーバ装置300は、カメラ21により撮影された画像に含まれる物体と、物体を運搬する運搬主体とを追従した追従データを生成し、生成した追従データに基づいて、カメラ21の撮影範囲内における物体の有無を判定する。
【0113】
この点について
図9及び
図10を用いて一例を説明する。
図9は、撮影機能を有する照明装置による撮影の一例を示す図である。
図10は、照明装置により撮影された人物を含む画像の一例を示す図である。
【0114】
図9及び
図10に示す例では、段ボールである物体SB2を運搬主体である人HM2がカメラ21の撮影範囲ARを床面に沿った一方向(例えば左から右)に移動させ、物体SB2をカメラ21からの死角に置いて人HM2のみが移動する場合を一例として示す。なお、
図9及び
図10では、人HM2の位置に応じて、人HM2-1、人HM2-2、人HM2-3として示すが、人HM2-1、人HM2-2、人HM2-3等を特に区別せずに説明する場合、人HM2と記載する。また、
図9及び
図10では、物体SB2の位置に応じて、物体SB2-1、物体SB2-2、物体SB2-3として示すが、物体SB2-1、物体SB2-2、物体SB2-3等を特に区別せずに説明する場合、物体SB2と記載する。
【0115】
図9では、人HM2は、人HM2-1に示す位置、人HM2-2に示す位置、人HM2-3に示す位置の順に位置を変更する(移動する)。
図9に示すように、人HM2は、人HM2-1に示す位置、及び人HM2-2に示す位置では物体SB2を持ち運んでおり、人HM2-3に示す位置では物体SB2を持っていない状態となる。
【0116】
また、
図9では、物体SB2は、物体SB2-1に示す位置、物体SB2-2に示す位置、物体SB2-3に示す位置の順に位置が変更される(移動する)。
図9に示すように、物体SB2は、物体SB2-1に示す位置、及び物体SB2-2に示す位置では人HM2に運搬されている物体SB2を持ち運んでいる状態を示す。また、
図9に示すように、物体SB2は、物体SB2-3に示す位置では、物体SB2-3を点線で示すように、人HM2に運搬されておらず、カメラ21からの死角となる位置に置かれた状態となる。
【0117】
図10中のフレームFR21は、物体SB2が人HM2-1に運搬されており、
図9中の物体SB2-1に示す位置にある場合に撮影されたフレーム(静止画像)に対応する。また、
図10中のフレームFR22は、フレームFR21よりも後の時点のフレームに対応し、物体SB2が人HM2-2に運搬されており、
図9中の物体SB2-2に示す位置にある場合に撮影されたフレーム(静止画像)に対応する。また、
図10中のフレームFR23は、フレームFR22よりも後の時点のフレームに対応し、物体SB2が
図9中の物体SB2-3に示すカメラ21からの死角となる位置に置かれ、人HM2-3のみが移動している場合に撮影されたフレーム(静止画像)に対応する。
【0118】
図9及び
図10では、サーバ装置300は、カメラ21により撮影されたフレームFR21~FR23等を含む画像から物体を検出する物体検出処理を実行する。そして、サーバ装置300は、物体検出結果の解析により、フレームFR21~FR23等を含む画像に含まれる物体SB2と、物体SB2を運搬する運搬主体である人HM2とを追従した追従データを生成する。
【0119】
例えば、サーバ装置300は、物体検出結果の解析により、フレームFR21~FR23等を含む画像を用いて、人HM2が人HM2-1に対応する位置、人HM2-2に対応する位置、人HM2-3に対応する位置の順に位置が変更されたことを示す追従データを生成する。例えば、サーバ装置300は、物体検出結果の解析により、フレームFR21~FR23等を含む画像を用いて、物体SB2が人HM2により運搬され、物体SB2-1に対応する位置から物体SB2-2に対応する位置に位置が変更され、その後に画像内に含まれなくなったことを示す追従データを生成する。
【0120】
そして、サーバ装置300は、生成した追従データに基づいて、カメラ21の撮影範囲AR内における物体SB2の有無を判定する。例えば、サーバ装置300は、物体SB2-1に対応する位置から物体SB2-2に対応する位置までは、物体SB2が人HM2とともに移動し、その後人HM2のみが人HM2-3に対応する位置に位置が変更された情報を基に、カメラ21の撮影範囲AR内における物体SB2の有無を判定する。この場合、サーバ装置300は、人HM2が人HM2-2に対応する位置から人HM2-3に対応する位置に移動するまでの間に、カメラ21の撮影範囲ARにおいてカメラ21からの死角となる位置に物体SB2が置かれたと判定し、カメラ21の撮影範囲AR内に物体SB2が有ると判定する。
【0121】
ここから、情報処理システム1における第1の処理の流れについて説明する。
図11は、物体の有無判定処理の一例を示すフローチャートである。なお、以下では、情報処理システム1を処理主体として説明するが、
図11に示す処理は、情報処理システム1に含まれる装置構成に応じて、照明装置100、中継器200、サーバ装置300、端末装置400等のいずれの装置が行ってもよい。また、
図8等で上述した内容と同等の点については適宜説明を省略する。
【0122】
情報処理システム1は、映像の物体検出解析を開始する(ステップS201)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いた物体検出処理を開始する。
【0123】
情報処理システム1は、画像をAIに読みこむ(ステップS202)。例えば、サーバ装置300は、モデルM1~M3等に画像を入力する。そして、
図11では、情報処理システム1は、人検出に対応するステップS203~S208の処理、物体検出に対応するステップS209~S215の処理、フォークリフト検出に対応するステップS216~S220の処理を並列して実行する。
【0124】
情報処理システム1は、人物検出解析を実施する(ステップS203)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いた人物検出処理を実行する。例えば、サーバ装置300は、人(人物)を検出する人検出モデルであるモデルM2を用いて人物検出処理を実行する。
【0125】
情報処理システム1は、人物を検出していない場合(ステップS204:No)、ステップS205~S208の処理を実行せずに、ステップS221の処理を実行する。例えば、サーバ装置300は、対象とするフレーム(静止画像等)で人物を検出していない場合、ステップS221の処理を実行する。
【0126】
情報処理システム1は、人物を検出した場合(ステップS204:Yes)、人物の色及び形状等の特徴量を記録する(ステップS205)。例えば、サーバ装置300は、対象とするフレーム(静止画像等)で人物を検出した場合、そのフレームで検出した人物の色及び形状等の特徴量を記憶部320に記憶する。
【0127】
情報処理システム1は、類似の物体を検出済みではない場合(ステップS206:No)、ステップS207~S208の処理を実行せずに、ステップS221の処理を実行する。例えば、サーバ装置300は、対象とするフレームよりも前のフレームで類似の人物を検出済みではない場合、ステップS221の処理を実行する。
【0128】
情報処理システム1は、類似の物体を検出済みである場合(ステップS206:Yes)、同一の物体と推定する(ステップS207)。例えば、サーバ装置300は、記憶部320に特徴量を記憶した人物のうち、検出した人物と特徴量が類似する人物がある場合、類似の人物を検出済みであると判定し、同一の人物と推定する。
【0129】
そして、情報処理システム1は、人物情報及び追従データを記録する(ステップS208)。例えば、サーバ装置300は、対象とするフレームで検出した人物と、そのフレームよりも前のフレームで検出した同一の人物とを対応付けた人物情報を記憶部320に記憶する。例えば、サーバ装置300は、対象とするフレームで検出した人物を識別する情報(人物ID等の運搬主体ID)を、そのフレームよりも前のフレームで検出した同一の人物を識別する情報(人物ID等の運搬主体ID)と同じにすることにより、各フレームで同一の人物を識別可能にしてもよい。例えば、人物情報には、対象とするフレームで検出した人物の特徴量、人物がフレーム(静止画像)に占める領域(座標データ、縦方向の長さ及び横Y方向の長さ等)を示す情報等の処理に用いる様々な情報が含まれる。また、例えば、追従データには、追従対象となる人物についての位置の変更の変遷(移動経路)を示す情報等の追従対象の移動に関する様々な情報が含まれる。
【0130】
情報処理システム1は、物体検出解析を実施する(ステップS209)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いた物体検出処理を実行する。例えば、サーバ装置300は、物体を検出する物体検出モデルであるモデルM1を用いて物体検出処理を実行する。
【0131】
情報処理システム1は、物体を検出していない場合(ステップS210:No)、ステップS211~S214の処理を実行せずに、ステップS221の処理を実行する。例えば、サーバ装置300は、対象とするフレーム(静止画像等)で物体を検出していない場合、ステップS221の処理を実行する。
【0132】
情報処理システム1は、物体を検出した場合(ステップS210:Yes)、物体の色及び形状等の特徴量を記録する(ステップS211)。例えば、サーバ装置300は、対象とするフレーム(静止画像等)で物体を検出した場合、そのフレームで検出した物体の色及び形状等の特徴量を記憶部320に記憶する。
【0133】
情報処理システム1は、類似の物体を検出済みではない場合(ステップS212:No)、ステップS213~S214の処理を実行せずに、ステップS221の処理を実行する。例えば、サーバ装置300は、対象とするフレームよりも前のフレームで類似の物体を検出済みではない場合、ステップS221の処理を実行する。
【0134】
情報処理システム1は、類似の物体を検出済みである場合(ステップS212:Yes)、同一の物体と推定する(ステップS213)。例えば、サーバ装置300は、記憶部320に特徴量を記憶した物体のうち、検出した物体と特徴量が類似する物体がある場合、類似の物体を検出済みであると判定し、同一の物体と推定する。
【0135】
そして、情報処理システム1は、物体情報及び追従データを記録する(ステップS214)。例えば、サーバ装置300は、対象とするフレームで検出した物体と、そのフレームよりも前のフレームで検出した同一の物体とを対応付けた物体情報を記憶部320に記憶する。例えば、サーバ装置300は、対象とするフレームで検出した物体を識別する情報(物体ID)を、そのフレームよりも前のフレームで検出した同一の物体を識別する情報(物体ID)と同じにすることにより、各フレームで同一の物体を識別可能にしてもよい。例えば、物体情報には、対象とするフレームで検出した物体の特徴量、物体がフレーム(静止画像)に占める領域(座標データ、縦方向の長さ及び横Y方向の長さ等)を示す情報等の処理に用いる様々な情報が含まれる。また、例えば、追従データには、追従対象となる物体についての位置の変更の変遷(移動経路)を示す情報等の追従対象の移動に関する様々な情報が含まれる。
【0136】
情報処理システム1は、フォークリフト検出解析を実施する(ステップS215)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いたフォークリフト検出処理を実行する。例えば、サーバ装置300は、フォークリフトを検出するフォークリフト検出モデルであるモデルM3を用いてフォークリフト検出処理を実行する。
【0137】
情報処理システム1は、フォークリフトを検出していない場合(ステップS216:No)、ステップS217~S214の処理を実行せずに、ステップS221の処理を実行する。例えば、サーバ装置300は、対象とするフレーム(静止画像等)でフォークリフトを検出していない場合、ステップS221の処理を実行する。
【0138】
情報処理システム1は、フォークリフトを検出した場合(ステップS216:Yes)、フォークリフトの色及び形状等の特徴量を記録する(ステップS217)。例えば、サーバ装置300は、対象とするフレーム(静止画像等)でフォークリフトを検出した場合、そのフレームで検出したフォークリフトの色及び形状等の特徴量を記憶部320に記憶する。
【0139】
情報処理システム1は、類似の物体を検出済みではない場合(ステップS218:No)、ステップS219~S220の処理を実行せずに、ステップS221の処理を実行する。例えば、サーバ装置300は、対象とするフレームよりも前のフレームで類似のフォークリフトを検出済みではない場合、ステップS221の処理を実行する。
【0140】
情報処理システム1は、類似の物体を検出済みである場合(ステップS218:Yes)、同一の物体と推定する(ステップS219)。例えば、サーバ装置300は、記憶部320に特徴量を記憶したフォークリフトのうち、検出したフォークリフトと特徴量が類似するフォークリフトがある場合、類似のフォークリフトを検出済みであると判定し、同一のフォークリフトと推定する。
【0141】
そして、情報処理システム1は、フォークリフト情報及び追従データを記録する(ステップS220)。例えば、サーバ装置300は、対象とするフレームで検出したフォークリフトと、そのフレームよりも前のフレームで検出した同一のフォークリフトとを対応付けたフォークリフト情報を記憶部320に記憶する。例えば、サーバ装置300は、対象とするフレームで検出したフォークリフトを識別する情報(フォークリフトID等の運搬主体ID)を、そのフレームよりも前のフレームで検出した同一のフォークリフトを識別する情報(フォークリフトID等の運搬主体ID)と同じにすることにより、各フレームで同一のフォークリフトを識別可能にしてもよい。例えば、フォークリフト情報には、対象とするフレームで検出したフォークリフトの特徴量、フォークリフトがフレーム(静止画像)に占める領域(座標データ、縦方向の長さ及び横Y方向の長さ等)を示す情報等の処理に用いる様々な情報が含まれる。また、例えば、追従データには、追従対象となるフォークリフトについての位置の変更の変遷(移動経路)を示す情報等の追従対象の移動に関する様々な情報が含まれる。
【0142】
例えば、情報処理システム1は、対象とするフレームについて、各検出処理が終了後にステップS221の処理を実行する。
図11では、情報処理システム1は、対象としているフレームについて、ステップS203~S208の処理、ステップS209~S215の処理、ステップS216~S220の処理の全てがステップS221に到達した場合にステップS221の処理を実行する。
【0143】
情報処理システム1は、次のフレームがある場合(ステップS221:Yes)、ステップS202に戻って処理を繰り返す。例えば、サーバ装置300は、対象としたフレームよりも後のフレームがある場合、ステップS202に戻って処理を繰り返す。なお、サーバ装置300は、各フレーム(静止画像)を含む映像を一括してAIに読みこむ場合、ステップS202の後に戻って、S203以降の処理を繰り返してもよい。
【0144】
情報処理システム1は、次のフレームがない場合(ステップS221:No)、データを格納する(ステップS222)。例えば、サーバ装置300は、対象としたフレームよりも後のフレームがない場合、ステップS220までの処理で取得した情報を記憶部320に記憶する。
【0145】
情報処理システム1は、物体の検知結果がない場合(ステップS223:No)、第2の処理を終了する。情報処理システム1は、物体の検知結果がある場合(ステップS223:Yes)、物体情報を呼び出す(ステップS224)。例えば、サーバ装置300は、記憶部320に記憶したデータに物体の検知結果がある場合、記憶部320に記憶した物体情報のうち、体積が未分類の物体の物体情報を取得する。
【0146】
そして、情報処理システム1は、物体と同時に移動する運搬者の検知結果があるか否かを判定する(ステップS225)。例えば、サーバ装置300は、記憶部320に記憶したデータを解析し、物体と同時に移動する運搬者(運搬主体)の検知結果があるか否かを判定する。
【0147】
情報処理システム1は、物体と同時に移動する運搬者の検知結果があると判定した場合(ステップS225:Yes)、検知開始から終了まで同時に移動したか否かを判定する(ステップS226)。例えば、サーバ装置300は、物体と同時に移動する運搬者(運搬主体)の検知結果があると判定した場合、記憶部320に記憶したデータを解析し、物体と運搬者(運搬主体)とが検知開始から終了まで同時に移動したか否かを判定する。
【0148】
情報処理システム1は、検知開始から終了まで同時に移動していないと判定した場合(ステップS226:No)、同時に検知開始したか否かを判定する(ステップS227)。例えば、サーバ装置300は、検知開始から終了まで同時に移動していないと判定した場合、記憶部320に記憶したデータを解析し、物体と運搬主体とが同時に検知開始したか否かを判定する。なお、情報処理システム1は、ステップS227を行わなくてもよく、この場合、情報処理システム1は、ステップS226がNoの場合、ステップS228の処理を実行してもよい。
【0149】
情報処理システム1は、同時に検知開始していないと判定した場合(ステップS227:No)、同時に検知終了したか否かを判定する(ステップS228)。例えば、サーバ装置300は、同時に検知開始していないと判定した場合、記憶部320に記憶したデータを解析し、物体と運搬主体とが同時に検知終了したか否かを判定する。
【0150】
情報処理システム1は、物体と運搬主体とが同時に検知終了していないと判定した場合(ステップS228:No)、画面内の物体として記録し、画面内の物体として分類する(ステップS229)。例えば、サーバ装置300は、物体と運搬主体とが同時に検知終了していないと判定した場合、その物体をカメラ21の撮影範囲AR内にあると判定する。そして、サーバ装置300は、その物体を画面内の物体として記録し、その物体画面内の物体として分類する。情報処理システム1は、ステップS229で分類した物体を識別する情報(物体ID等)に、その物体が分類済みであることを示す情報(フラグ等)を対応付けて記憶部320に記録してもよい。そして、情報処理システム1は、ステップS229後にステップS231の処理を実行する。
【0151】
情報処理システム1は、物体と運搬主体とが同時に検知終了したと判定した場合(ステップS228:Yes)、画面外の物体として記録し、画面外の物体として分類する(ステップS230)。例えば、サーバ装置300は、物体と運搬主体とが同時に検知終了したと判定した場合、その物体をカメラ21の撮影範囲AR外にあると判定する。そして、サーバ装置300は、その物体を画面外の物体として記録し、その物体画面外の物体として分類する。情報処理システム1は、ステップS230で分類した物体を識別する情報(物体ID等)に、その物体が分類済みであることを示す情報(フラグ等)を対応付けて記憶部320に記録してもよい。そして、情報処理システム1は、ステップS230後にステップS231の処理を実行する。
【0152】
また、情報処理システム1は、物体と同時に移動する運搬者の検知結果がないと判定した場合(ステップS225:No)、ステップS229の処理を実行する。例えば、サーバ装置300は、物体と同時に移動する運搬者の検知結果がないと判定した場合、その物体を画面内の物体として記録し、その物体画面内の物体として分類する。
【0153】
情報処理システム1は、検知開始から終了まで同時に移動していると判定した場合(ステップS226:Yes)、ステップS230の処理を実行する。例えば、サーバ装置300は、検知開始から終了まで同時に移動していると判定した場合、その物体を画面外の物体として記録し、その物体画面外の物体として分類する。
【0154】
情報処理システム1は、同時に検知開始したと判定した場合(ステップS227:Yes)、ステップS229の処理を実行する。例えば、サーバ装置300は、同時に検知開始したと判定した場合、その物体を画面内の物体として記録し、その物体画面内の物体として分類する。
【0155】
情報処理システム1は、ステップS229の処理またはステップS230の処理の後に、未分類の物体情報があるか否かを判定する(ステップS231)。情報処理システム1は、未分類の物体情報がある場合(ステップS231:Yes)、ステップS224に戻って処理を繰り返す。例えば、サーバ装置300は、未分類の物体情報がある場合、ステップS224に戻って処理を繰り返す。
【0156】
情報処理システム1は、未分類の物体情報がない場合(ステップS231:No)、第2の処理を終了する。
【0157】
上述したように、情報処理システム1は、映像内の物体検知を行う際に、複数のフレーム間で物体を追従することで死角に入った物体の工場や倉庫の建屋内に置かれている物体として分類(カウント)する。これにより、情報処理システム1は、最小限のカメラ台数で建屋全体の物体の量を把握することができる。したがって、情報処理システム1は、物体検知に関するコストの増大を抑制可能にすることができる。例えば、情報処理システム1は、工場・倉庫等において、天井に設置したカメラ21で撮影した俯瞰画像を解析し、画像内の物体の量をAI解析等の技術を用いて自動的に集計を行ことができ、その集計方法の精度を向上させることができる。
【0158】
例えば、情報処理システム1は、画像解析を行う際に物体検知と合わせて人物検知またはフォークリフト検知も実施し、それぞれを追従することで、荷物が搬入されたことを検知することができる。例えば、情報処理システム1は、物体と人物が同時に移動して、物体のみ移動が停止、人物が画面外に移動した場合、その荷物が搬入されたとみなすことができる。また、情報処理システム1は、物体が画面内で検知されなくなった場合、荷物が死角に入ったとみなして、死角に置かれた荷物として物体の量(大きさ、面積、体積等)の情報を記録ことができる。
【0159】
また、例えば、情報処理システム1は、搬入の動作とは逆に荷物を持たない人物またはフォークリフトが画面内に進入し、物体と一緒に画面外から出た場合は搬出として、画面内の物体の量を減らす処理をすることができる。また、情報処理システム1は、死角に置いてある荷物についても、同様に画面内で検出が開始した人物またはフォークリフトと一緒に動く物体を搬出されている物体とみなし、画面外に出たタイミングで荷物が搬出されたとして、画像の物体の量を減らすことができる。このように、情報処理システム1は、画面内に映っている物体以外の物体も量を検出できるため、工場や倉庫等の空間内の荷物の量を最小限のカメラで把握することが可能となる。
【0160】
上述したように、情報処理システム1は、天井に設置したカメラ21で工場または倉庫の俯瞰映像を撮影して、その映像を記録する。情報処理システム1は、映像をAI等で解析し画像内の物体、人物、フォークリフトを検出する。情報処理システム1は、フレームごとに検出した物体、人物、フォークリフトの特徴量と座標を記録し、前後のフレームで検出した物体、人物、フォークリフトの情報から対象が同一かどうかをAIまたはアルゴリズム等で判定し、同一とみなされた場合はその情報に基づいて対象の追従データを作成する。情報処理システム1は、物体、人物、フォークリフトの追従データをフレームごとに比較することにより、上述したような処理(第2の処理)を実行する。情報処理システム1は、上述した処理により、荷物の搬入・搬出、通過等を判別することができ、画面内の物体の量を最小限のカメラ台数で把握することができる。このように、情報処理システム1は、撮像範囲内の物体の有無を適切に判定することができる。
【0161】
[物体の検出処理の制御例]
例えば、情報処理システム1は、カメラ21の撮影範囲に関する状況に応じて物体の検出処理を制御する処理(「第3の処理」ともいう)を実行する。以下、第3の処理に関連する課題、情報処理システム1が実行する第3の処理の一例等について説明する。
【0162】
従来、物体を検知するためはカメラ映像をAI(モデル)等で常時解析し続ける必要がある。しかしながら、物体検知処理は、
図12に示すように、人物検出等の特定の対象物を検出する場合に比べて、画像解析に要する時間が長く、解析機器のスペックを上げたり、または処理機器の台数を増やしたりする等の対応が必要である。
図12は、検出に関するコストの一例を示す図である。例えば、
図12は、人物検出AIおよび物体検出AIの処理機器の環境を示す。
【0163】
例えば、
図12中の第1コストCS1は、人物検出AI、すなわち人検出モデル(例えばモデルM2等)を用いて人物を検出する人検出処理におけるコストを示す。第1コストCS1に示すように、人検出処理では、例えば検出する対象物が限定されるため、解析機器のスペックは並でよく、分散して処理する場合でも処理台数が少数で済む。このように、人検出処理は、解析コストが小さく済む。
【0164】
例えば、
図12中の第2コストCS2は、物体検出AI、すなわち物体検出モデル(例えばモデルM1等)を用いて物体を検出する物体検出処理におけるコストを示す。第2コストCS2に示すように、物体検出処理では、例えば検出する対象物として想定される物体が多数あるため、解析機器のスペックは人検出処理よりも高くする必要があり、分散して処理する場合でも人検出処理よりも処理台数を多くする必要がある。すなわち、物体検出処理は、人検出処理に比べて解析コストが大きくなる。このように、物体検出処理に要する解析コストが大きいため、物体検知処理を常時実行し続けると、解析コストが高くなるという課題がある。
【0165】
そこで、情報処理システム1では、カメラ21により撮影された画像から物体を検出する物体検出処理の実行状態を、カメラ21の撮影範囲に関する状況が所定の条件を満たすか否かに応じて制御する。例えば、情報処理システム1では、解析コストが低コストの人検出処理を常時実行し、人検出処理により人物が検出された場合に、物体検出処理を実行してもよい。この場合、例えば、情報処理システム1では、人検出処理により人物が検出されていない場合、物体検出処理を停止する。
【0166】
このように、情報処理システム1は、カメラ21の撮影範囲ARに関する状況が所定の条件を満たす場合、第1検出部332に物体検出処理を実行させ、カメラ21の撮影範囲ARに関する状況が所定の条件を満たさない場合、第1検出部332に物体検出処理の実行を停止させる。例えば、情報処理システム1は、カメラ21の撮影範囲ARに物体を運搬する運搬主体が位置する場合、所定の条件を満たすと判定する。例えば、情報処理システム1は、カメラ21が撮影した画像から人を検出する第2検出部333により人が検出された場合、所定の条件を満たすと判定する。
【0167】
ここから、情報処理システム1における第3の処理の流れについて説明する。
図13は、物体の検出処理の制御の一例を示すフローチャートである。なお、以下では、情報処理システム1を処理主体として説明するが、
図8に示す処理は、情報処理システム1に含まれる装置構成に応じて、照明装置100、中継器200、サーバ装置300、端末装置400等のいずれの装置が行ってもよい。
【0168】
図13は、画像内に人が出現した場合、すなわち人検出処理により人物が検出される場合の処理を示す。例えば、情報処理システム1は、
図13に示す処理の開始時点では、物体検出処理を停止中である。
【0169】
情報処理システム1は、人物検出AIが人を検出する(ステップS301)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いた人検出処理により人を検出する。例えば、サーバ装置300は、人(人物)を検出する人検出モデルであるモデルM2を用いて人物検出処理を実行し、人を検出する。
【0170】
情報処理システム1は、物体検出AIを起動する(ステップS302)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を用いた物体検出処理を開始する。
【0171】
情報処理システム1は、物体検出AIでカメラ映像を解析する(ステップS303)。例えば、サーバ装置300は、カメラ21により撮影された映像(画像)を対象として、物体を検出する物体検出モデルであるモデルM1を用いて物体検出処理を実行し、カメラ21により撮影された映像(画像)の解析を行う。
【0172】
情報処理システム1は、人物検出が継続している場合(ステップS304:Yes)、ステップS303の処理を繰り返す。例えば、サーバ装置300は、人検出処理により人を検出している場合、物体検出処理を継続する。
【0173】
情報処理システム1は、人物検出が継続していない場合(ステップS304:No)、物体検出AIを停止して、処理を終了する。例えば、サーバ装置300は、人検出処理により人を検出されなくなった場合、物体検出処理を停止して、
図13に示す処理を終了する。
【0174】
このように、情報処理システム1は、人物検出AIを常時稼働させて、カメラ映像を解析する。情報処理システム1は、カメラ映像に人が現れると、人物検出AIが人を検出する。情報処理システム1は、人を検出すると、物体検出AIを起動する。情報処理システム1は、人物検出が継続している間、物体検出AIでカメラ映像を解析する。情報処理システム1は、カメラ映像から人が消えると、物体検出AIを停止させる。
【0175】
上述したように、情報処理システム1は、人物を検知する人検出処理を常時実行し、人物が検出されている場合のみ物体検出処理を実行する。人物検出AI等による人検出処理は解析時間が短く、常時稼働しても物体検知AI等による物体検出処理よりも解析コストが小さい。これにより、情報処理システム1は、物体検出処理の実行時間を短くし、物体検出処理の実行による稼働コストの増大を抑制することができる。したがって、情報処理システム1は、物体検知に関するコストの増大を抑制可能にすることができる。
【0176】
なお、上記は一例に過ぎず、情報処理システム1は、様々な情報を用いて物体検出処理を制御してもよい。例えば、情報処理システム1は、センサ情報に基づいて、所定のトリガ条件が満たされたか否かを判定して満たされた場合に物体検出処理を実行してもよい。この場合、情報処理システム1は、センサ情報に基づいて、所定のトリガ条件が満たされたか否かを判定して満たされていない場合は、物体検出処理を停止してもよい。例えば、情報処理システム1は、色情報が変化したことを所定の条件として、所定の条件を満たす場合に、物体検出処理を実行してもよい。例えば、情報処理システム1は、照明装置100が点灯したことを所定の条件として、所定の条件を満たす場合に、物体検出処理を実行してもよい。
【0177】
なお、停止は、物体検出処理を行わない場合に限らず、物体検出処理を制限することが含まれる。例えば、上述した物体検出処理の停止及び開始は、物体検出処理に対応するインスタンスの停止及び起動であってもよい。また、上述した物体検出処理の停止及び開始は、物体検出処理に対応する仮想マシンの停止及び起動であってもよい。停止は、トリガ条件が満たされた範囲の動画像だけを処理範囲にすることであってもよい。また、トリガ条件が満たされたときだけ、動画像の全体を処理範囲にし、停止は、トリガ条件が満たされていない間に、処理範囲を一部だけに制限することであってもよい。
【0178】
ここまで、第1の処理~第3の処理について、情報処理システム1またはサーバ装置300を処理主体として説明したが、第1の処理~第3の処理の各々は、情報処理システム1に含まれる装置構成に応じて、サーバ装置300、照明装置100、中継器200、端末装置400等のいずれの装置が行ってもよい。
【0179】
また、上述した第1の処理~第3の処理は、各処理が組み合わせ可能であれば、任意の組み合わせで実行されてもよい。例えば、情報処理システム1は、第1の処理と第2の処理とを組み合わせて実行してもよい。この場合、情報処理システム1は、第1の処理及び第2の処理を並列して実行してもよい。例えば、情報処理システム1は、物体の体積を推定しつつ、物体の有無を判定してもよい。
【0180】
例えば、情報処理システム1は、第1の処理と第3の処理とを組み合わせて実行してもよい。この場合、情報処理システム1は、第3の処理で物体検知処理を開始した後に撮影された画像を用いて、第1の処理を実行し、物体の体積を推定してもよい。また、例えば、情報処理システム1は、第2の処理と第3の処理とを組み合わせて実行してもよい。この場合、情報処理システム1は、第3の処理で物体検知処理を開始した後に撮影された画像を用いて、第2の処理を実行し、物体の有無を判定してもよい。また、例えば、情報処理システム1は、第1の処理~第3の処理の全てを組み合わせて実行してもよい。情報処理システム1は、第3の処理で物体検知処理を開始した後に撮影された画像を用いて、第1の処理及び第2の処理を並列して実行してもよい。例えば、情報処理システム1は、第3の処理で物体検知処理を開始した後に撮影された画像を用いて、物体の体積を推定しつつ、物体の有無を判定してもよい。
【0181】
また、例えば、情報処理システム1は、第1の処理~第3の処理のうち少なくとも1つのみを実行してもよい。例えば、上述した例において、情報処理システム1が第1の処理のみを実行する場合、サーバ装置300は、第2検出部333、制御処理部334、判定部337を有しなくてもよい。また、例えば、上述した例において、情報処理システム1が第2の処理のみを実行する場合、サーバ装置300は、第2検出部333、制御処理部334、推定部336を有しなくてもよい。また、例えば、上述した例において、情報処理システム1が第3の処理のみを実行する場合、サーバ装置300は、推定部336、判定部337を有しなくてもよい。
【0182】
[レポート情報の提供]
情報処理システム1は、上述した第1の処理~第3の処理等の各種の処理を基に収集した情報を用いて、各種の情報提供を行ってもよい。この点についての一例を説明する。以下では、情報処理システム1に含まれる装置のうち、サーバ装置300が情報提供を行う場合を一例として説明する。
【0183】
例えば、サーバ装置300は、上述した各種処理に基づくレポート情報を端末装置400へ提供する。サーバ装置300は、レポート情報を、照明装置100が設置された工場や倉庫等を管理する管理者が利用する端末装置400へ提供する。サーバ装置300は、第1検出部332による物体の検出結果と、第2検出部333による人の検出結果とに基づいて、検知結果を示すレポート情報を提供する。
【0184】
例えば、サーバ装置300は、第1検出部332、第2検出部333等による各種の検出処理の結果(検知結果)を示すレポート情報を提供する。例えば、サーバ装置300は、時間帯ごとの検知結果を示すレポート情報を提供する。例えば、サーバ装置300は、工場や倉庫等の内部空間に位置すると推定された物体(の体積)の変化量や変化率を示すレポート情報を提供する。
【0185】
例えば、サーバ装置300は、死角に物体が位置する場合、死角に物体が位置することを通知(アラート)する情報を含むレポート情報を提供する。例えば、サーバ装置300は、トリガ条件の判定結果と被移動物体の検知結果に応じたレポートを提供する。例えば、サーバ装置300は、物体を移動させる運搬主体(移動物体)の検知結果と、物体(被移動物体)の検知結果とを含むレポート情報を提供する。
【0186】
例えば、サーバ装置300は、工場や倉庫等の内部空間において荷物等の物体を置く為のスペースの利用状況を示す情報をレポート情報として提供してもよい。例えば、サーバ装置300は、工場や倉庫等における平置きスペース等の所定のエリア(「推定エリア」ともいう)の利用率を示す情報をレポート情報として提供してもよい。
【0187】
この場合、例えば、サーバ装置300は、工場や倉庫等における平置きスペース(推定エリア)の面積及び高さ方向の上限を示す値を用いて、推定エリアの利用可能体積を算出する。例えば、サーバ装置300は、推定エリアの床面に沿う方向(2次元方向)の一方(X方向)の長さをAとし、他方(Y方向)の長さをBとした場合、AとBを乗算して、推定エリアの面積(利用可能面積)をA×Bと算出する。そして、例えば、サーバ装置300は、推定エリアの2次元方向に直交する高さ方向(Z方向)の長さ(例えば上端)をCとした場合、AとBとCとを乗算して、推定エリアの利用可能体積をA×B×Cと算出する。
【0188】
また、例えば、サーバ装置300は、工場や倉庫等における推定エリアの位置する物体について推定した体積の合計値を、推定エリアで実際に利用されている体積(実利用体積)として算出する。例えば、サーバ装置300は、推定エリアに物体が積層されている場合、推定エリア(2次元方向)の一方(X方向)の積層された物体の一端から他端までの長さをaとし、他方(Y方向)の一端から他端までの長さをbとした場合、aとbとを乗算して、推定エリアで実際に利用されている面積(実利用面積)をa×bと算出する。そして、例えば、サーバ装置300は、推定エリアの2次元方向に直交する高さ方向(Z方向)の長さ(例えば上端)をcとした場合、aとbとcとを乗算して、推定エリアの実利用体積をa×b×cと算出する。
【0189】
この場合、サーバ装置300は、利用可能体積と実利用体積とに基づいて、工場や倉庫等における推定エリアを利用率として算出する。例えば、サーバ装置300は、利用可能体積で実利用体積を除した値、すなわち「実利用体積/利用可能体積」により算出した値を、工場や倉庫等における推定エリアを利用率として算出する。そして、サーバ装置300は、工場や倉庫等における推定エリアの利用率を示すレポート情報を提供する。
【0190】
[他のシステム構成例]
なお、上述した情報処理システム1の構成は一例に過ぎず、情報処理システム1は、所望の処理が可能であれば、任意の装置構成が採用可能である。例えば、情報処理システム1は、中継器200を有しない構成であってもよい。また、サーバ装置300が行う各種の処理は、サーバ装置300に限らず情報処理システム1に含まれる任意の装置が実行してもよい。例えば、サーバ装置300が行う各種の処理の少なくとも一部(例えば第1検出部332、第2検出部333等)の処理が、中継器200または照明装置100により実行されてもよい。このように、サーバ装置300が行う各種の処理は、情報処理システム1に含まれる複数の装置により分散して処理されてもよい。
【0191】
本発明の実施形態を説明したが、この実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。また、これらの実施形態やその変形は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【符号の説明】
【0192】
1 情報処理システム
100 照明装置
10 通信部
20 カメラユニット
30 照明ユニット
40 制御部
41 取得部
42 処理部
43 送信部
50 記憶部
200 中継器
300 サーバ装置(情報処理装置)
310 通信部
320 記憶部
321 AI情報記憶部
322 画像情報記憶部
323 処理用情報記憶部
330 制御部
331 取得部
332 第1検出部
333 第2検出部
334 制御処理部
335 生成部
336 推定部
337 判定部
338 提供部
400 端末装置