(57)【要約】【課題】  設定領域単位で検出数が閾値以上であるのか、設定領域全体で検出数が閾値以上であるのか、をユーザに分かりやすく通知するため技術を提供すること。【解決手段】  撮像画像上の設定領域から検出されたオブジェクトの数が閾値以上の場合には、第１の警告を通知する。撮像画像上のそれぞれの設定領域から検出されたオブジェクトの数の合計値が閾値以上の場合には、第１の警告とは異なる第２の警告を通知する。【選択図】  図４
2019220025.tif 000002
【特許請求の範囲】
【請求項１】
撮像画像上の設定領域から検出されたオブジェクトの数が閾値以上の場合には、第１の警告を通知する第１の通知手段と、
前記撮像画像上のそれぞれの設定領域から検出されたオブジェクトの数の合計値が閾値以上の場合には、前記第１の警告とは異なる第２の警告を通知する第２の通知手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記第１の通知手段は、前記設定領域から検出されたオブジェクトの数が該設定領域に対する閾値以上の場合には、前記第１の警告を通知することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１の通知手段による前記第１の警告の通知は、前記設定領域の表示制御を含むことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記第１の通知手段による前記第１の警告の通知は、前記設定領域から検出されたオブジェクトの数の表示制御を含むことを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記第１の通知手段による前記第１の警告の通知は、前記設定領域に対する閾値の表示制御を含むことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記第１の通知手段による前記第１の警告の通知は、前記設定領域に対応する音声の出力を含むことを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記第２の通知手段は、前記合計値が、前記それぞれの設定領域の集合に対する閾値以上の場合には、前記第２の警告を通知することを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
前記第２の通知手段による前記第２の警告の通知は、前記合計値の表示制御を含むことを特徴とする請求項１乃至７の何れか１項に記載の画像処理装置。
【請求項９】
前記第２の通知手段による前記第２の警告の通知は、前記それぞれの設定領域の集合に対する閾値の表示制御を含むことを特徴とする請求項１乃至８の何れか１項に記載の画像処理装置。
【請求項１０】
前記第２の通知手段による前記第２の警告の通知は、前記それぞれの設定領域の集合に対応する音声の出力を含むことを特徴とする請求項１乃至９の何れか１項に記載の画像処理装置。
【請求項１１】
前記画像処理装置は更に、前記それぞれの設定領域の集合に対する閾値と前記設定領域のサイズとに基づいて該設定領域に対する閾値を求める手段を備えることを特徴とする請求項１乃至１０の何れか１項に記載の画像処理装置。
【請求項１２】
前記画像処理装置は更に、前記それぞれの設定領域に対する閾値の合計値を、前記それぞれの設定領域の集合に対する閾値として求める手段を備えることを特徴とする請求項１乃至１０の何れか１項に記載の画像処理装置。
【請求項１３】
前記画像処理装置は更に、前記それぞれの設定領域の集合に対する閾値と、前記それぞれの設定領域に写るオブジェクトの上限数と、に基づいて、該設定領域に対する閾値を求める手段を備えることを特徴とする請求項１乃至１０の何れか１項に記載の画像処理装置。
【請求項１４】
前記画像処理装置は更に、前記それぞれの設定領域に対応する閾値、前記それぞれの設定領域の集合に対応する閾値、をユーザによる操作に応じて設定する手段を備えることを特徴とする請求項１乃至１３の何れか１項に記載の画像処理装置。
【請求項１５】
前記合計値は、前記設定領域同士の重複部分から検出されたオブジェクトの数を含まないことを特徴とする請求項１乃至１４の何れか１項に記載の画像処理装置。
【請求項１６】
画像処理装置が行う画像処理方法であって、
前記画像処理装置の第１の通知手段が、撮像画像上の設定領域から検出されたオブジェクトの数が閾値以上の場合には、第１の警告を通知する第１の通知工程と、
前記画像処理装置の第２の通知手段が、前記撮像画像上のそれぞれの設定領域から検出されたオブジェクトの数の合計値が閾値以上の場合には、前記第１の警告とは異なる第２の警告を通知する第２の通知工程と
を備えることを特徴とする画像処理方法。
【請求項１７】
コンピュータを、請求項１乃至１５の何れか１項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像からのオブジェクトの検知技術に関するものである。
【背景技術】
【０００２】
従来より、人体検出によって検出された人体の情報に応じてアラートを通知する技術がある。例えば、特許文献１には、検出した人物が単独で作業しているかどうかを判定し、単独で作業している人物が存在したときにアラートを通知する技術が開示されている。特許文献２には、検出した人体の行動に応じて、アラートに優先度をつけて通知する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2017-84289号公報
【特許文献２】特開2018-82281号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術では、複数の検出領域での検出人数と検出領域全体の検出人数の合計に閾値が設定されていたとき、どれで閾値以上となったために発生したアラートなのかが分からなかった。
【０００５】
本発明では、設定領域単位で検出数が閾値以上であるのか、設定領域全体で検出数が閾値以上であるのか、をユーザに分かりやすく通知するため技術を提供する。
【課題を解決するための手段】
【０００６】
本発明の一様態は、撮像画像上の設定領域から検出されたオブジェクトの数が閾値以上の場合には、第１の警告を通知する第１の通知手段と、前記撮像画像上のそれぞれの設定領域から検出されたオブジェクトの数の合計値が閾値以上の場合には、前記第１の警告とは異なる第２の警告を通知する第２の通知手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明の構成によれば、設定領域単位で検出数が閾値以上であるのか、設定領域全体で検出数が閾値以上であるのか、をユーザに分かりやすく通知することができる。
【図面の簡単な説明】
【０００８】
【図１】画像処理装置２００のハードウェア構成例を示すブロック図である。
【図２】システムの構成例を示す図である。
【図３】ＧＵＩの表示例を示す図である。
【図４】画像処理装置２００の機能構成例を示すブロック図である。
【図５】画像処理装置２００が行う処理のフローチャートである。
【図６】閾値設定部４０４による閾値の設定処理のフローチャートである。
【図７】ＧＵＩの表示例を示す図である。
【図８】アラート判定部４０５の動作例を示す図である。
【図９】画像処理装置の機能構成例を示すブロック図である。
【図１０】第２の実施形態を説明する図である。
【図１１】第２の実施形態を説明する図である。
【図１２】閾値の算出方法を説明する図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照し、本発明の実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施形態の１つである。
【００１０】
［第１の実施形態］
本実施形態では、撮像画像における人体検出領域（設定領域）から検出された人体の数が閾値以上の場合と、該撮像画像におけるそれぞれの人体検出領域から検出された人体の数の合計値が閾値以上の場合とで独立した警告（アラート）を通知する。
【００１１】
先ず、本実施形態に係るシステムの構成例について図２を用いて説明する。図２に示す如く、本実施形態に係るシステムは、撮像装置２０２、記憶装置２０３、画像処理装置２００、表示装置２０１を有し、撮像装置２０２、記憶装置２０３、表示装置２０１は画像処理装置２００に接続されている。装置間の接続形態は特定の接続形態に限らない。
【００１２】
先ず、撮像装置２０２について説明する。撮像装置２０２は、監視カメラなどのネットワークカメラであり、撮像範囲内を撮像した各フレームの撮像画像を順次、画像処理装置２００に対して送信する。撮像装置２０２が動画像を撮像する装置であれば、該動画像を構成する各フレームの撮像画像を画像処理装置２００に対して送信する。また、撮像装置２０２が定期的若しくは不定期的に静止画像を撮像する装置であれば、該定期的若しくは不定期的に撮像した静止画像のそれぞれを各フレームの撮像画像として画像処理装置２００に対して送信する。
【００１３】
このような撮像装置２０２には、例えば、デジタルスチルカメラやデジタルビデオカメラ、カメラ機能を備えたスマートフォンやタブレット端末、工業用カメラ、車載カメラ、ウェアラブルカメラ等が適用可能である。
【００１４】
なお、画像処理装置２００に各フレームの撮像画像を供給する方法は上記の方法に限らない。例えば、撮像装置２０２が撮像した各フレームの撮像画像を記憶装置２０３に格納しておき、該記憶装置２０３に格納されている各フレームの撮像画像を画像処理装置２００に対して供給するようにしても良い。また、撮像装置２０２が撮像した各フレームの撮像画像を記憶装置２０３以外の装置（例えばサーバ装置）に一端格納してから、該装置から画像処理装置２００に対して該各フレームの撮像画像を送信するようにしても良い。
【００１５】
次に、画像処理装置２００について説明する。画像処理装置２００は、ＰＣ（パーソナルコンピュータ）、スマートフォン、タブレット型端末装置などのコンピュータ装置である。画像処理装置２００のハードウェア構成例について、図１のブロック図を用いて説明する。
【００１６】
ＣＰＵ１００は、ＲＯＭ１０１やＲＡＭ１０２に格納されているコンピュータプログラムやデータを用いて画像処理装置２００全体の動作制御を行うと共に、画像処理装置２００が行うものとして後述する各処理を実行若しくは制御する。ＲＯＭ１０１には、画像処理装置２００の設定データや起動プログラムなど、書換不要の情報が格納されている。
【００１７】
ＲＡＭ１０２は、ＲＯＭ１０１やストレージ装置１０３からロードされたコンピュータプログラムやデータ、通信Ｉ／Ｆ（インターフェース）１０６を介して外部（撮像装置２０２や記憶装置２０３）から受信した撮像画像、を格納するためのエリアを有する。さらにＲＡＭ１０２は、ＣＰＵ１００が各種の処理を実行する際に用いるワークエリアを有する。このようにＲＡＭ１０２は、各種のエリアを適宜提供することができる。
【００１８】
ストレージ装置１０３は、ハードディスクドライブ装置やソリッドステートドライブなどの大容量情報記憶装置である。ストレージ装置１０３には、ＯＳ（オペレーティングシステム）や、画像処理装置２００が行うものとして後述する各処理をＣＰＵ１００に実行若しくは制御させるためのコンピュータプログラムやデータが保存されている。ストレージ装置１０３に保存されているデータには、以下の説明において既知の情報として取り扱うもの（例えばユーザ２０４が入力装置１０４を用いて後述する設定操作により設定する情報）が含まれている。また、ストレージ装置１０３には、ＲＡＭ１０２が保持するものとして上述したデータの一部若しくは全部を保存することもできる。
【００１９】
ストレージ装置１０３に保存されているコンピュータプログラムやデータは、ＣＰＵ１００による制御に従って適宜ＲＡＭ１０２にロードされ、ＣＰＵ１００による処理対象となる。
【００２０】
ＣＰＵ１００は、画像処理装置２００の電源ＯＮ等の起動時、ＲＯＭ１０１に格納されている起動用プログラムを実行する。この起動用プログラムは、ストレージ装置１０３に保存されているＯＳを読み出し、ＲＡＭ１０２に展開するためのものである。ＣＰＵ１００は、ＯＳの起動後、後述する入力装置１０４を介してユーザ２０４により本実施形態に係る後述の処理を起動する旨の指示がなされると、ストレージ装置１０３から本実施形態に係る処理プログラムを読み出してＲＡＭ１０２に展開する。これにより、ＣＰＵ１００は、本実施形態の処理を実行可能な状態となる。また、ＣＰＵ１００は、本実施形態の処理プログラムの動作に用いられる各種データについてもＲＡＭ１０２上に格納して読み書きを行う。
【００２１】
入力装置１０４は、キーボード、マウス、タッチパネル画面などのユーザインターフェースであり、ユーザ２０４が操作することで各種の指示をＣＰＵ１００に対して入力することができる。
【００２２】
Ｉ／Ｆ１０５は、上記の表示装置２０１を画像処理装置２００に接続するためのインターフェースとして機能するものであり、画像処理装置２００による処理結果はＩ／Ｆ１０５を介して表示装置２０１において画像や文字として表示されることになる。
【００２３】
通信Ｉ／Ｆ１０６は、上記の撮像装置２０２や記憶装置２０３を画像処理装置２００に接続するためのインターフェースとして機能するものである。撮像装置２０２や記憶装置２０３から送信された各フレームの撮像画像は、通信Ｉ／Ｆ１０６を介してＲＡＭ１０２やストレージ装置１０３に格納される。例えば、撮像装置２０２や記憶装置２０３をＬＡＮを介して画像処理装置２００に接続する場合、通信Ｉ／Ｆ１０６はＬＡＮインターフェースである。なお、通信Ｉ／Ｆ１０６には、撮像装置２０２や記憶装置２０３以外の装置やネットワークを接続しても良い。
【００２４】
本実施形態の処理プログラムは通信Ｉ／Ｆ１０６を介して外部から取得しても良い。また、図２に示した撮像装置２０２、記憶装置２０３、表示装置２０１のうち１つ以上を画像処理装置２００と一体化させても良い。
【００２５】
また、画像処理装置２００と撮像装置２０２もしくは記憶装置２０３との間は、ＬＡＮなどのネットワークデバイス以外に、例えば、ＵＳＢ等により接続されていても構わない。
【００２６】
次に、本実施形態に係る画像処理装置２００の機能構成例について、図４のブロック図を用いて説明する。以下では、図４の各機能部を処理の主体として説明する場合があるが、実際には、各機能部に対応するコンピュータプログラムをＣＰＵ１００が実行することで該機能部に対応する機能が実現される。しかし、図４の各機能部はコンピュータプログラムで実装されることに限らず、一部若しくは全部をハードウェアで実装しても良い。
【００２７】
画像取得部４００は、ストレージ装置１０３、撮像装置２０２、記憶装置２０３などから撮像画像を取得する。画像取得部４００による撮像画像の取得元は特定の取得元に限らない。
【００２８】
検出領域取得部４０１は、該撮像画像上で人体を検出する領域（人体検出領域）を規定する情報（人体検出領域情報）を取得する。本実施形態では、人体検出領域は撮像画像上の複数箇所に設定されるものとする。人体検出領域情報は、それぞれの人体検出領域を規定する情報であり、例えば、該それぞれの人体検出領域の左上隅の画像座標及び右下隅の画像座標を表す。この人体検出領域情報は予め生成されてストレージ装置１０３に保存されており、検出領域取得部４０１は、該ストレージ装置１０３から該人体検出領域情報を取得する。
【００２９】
人体検出部４０２は、撮像画像上で人体検出領域情報にて規定されるそれぞれの人体検出領域から人体を検出する。画像から人体を検出するための技術については周知であるため、これに係る詳細な説明は省略する。
【００３０】
検出結果取得部４０３は、人体検出部４０２によるそれぞれの人体の検出結果を取得する。人体の検出結果には、撮像画像から検出した人体の画像領域を規定する情報（例えば、人体の画像領域の左上隅の画像座標及び右下隅の画像座標）が含まれている。そして検出結果取得部４０３は、人体検出領域ごとに、該人体検出領域から検出した人体の数を計数する。
【００３１】
閾値設定部４０４は、人体検出領域ごとの閾値、全体の人体検出領域（人体検出領域の集合）に対する閾値、をユーザからの操作に応じて設定する。
【００３２】
アラート判定部４０５は、検出結果取得部４０３が人体検出領域ごとに計数した人体の数と、閾値設定部４０４が設定したそれぞれの閾値と、に基づいて、アラートを通知するか否かを判断する。
【００３３】
アラート通知部４０６は、アラート判定部４０５による判定結果に応じたアラートを通知する。つまりアラート通知部４０６は、人体検出領域から検出された人体の数が閾値以上の場合と、それぞれの人体検出領域から検出された人体の数の合計値が閾値以上の場合と、で独立したアラートを通知する。
【００３４】
次に、人体検出領域から検出された人体の数が閾値以上の場合と、それぞれの人体検出領域から検出された人体の数の合計値が閾値以上の場合と、で独立したアラートを通知するために画像処理装置２００が行う処理について説明する。以下ではこの処理について、図５のフローチャートに従って説明する。
【００３５】
ステップＳ５００では、画像取得部４００は、ストレージ装置１０３、撮像装置２０２、記憶装置２０３などから撮像画像を取得し、人体検出部４０２は、該撮像画像上で人体検出領域情報にて規定されるそれぞれの人体検出領域から人体を検出する。
【００３６】
ステップＳ５０１では、検出結果取得部４０３は、人体検出部４０２によるそれぞれの人体の検出結果を取得し、人体検出領域ごとに、該人体検出領域から検出した人体の数（検出数）を計数する。そしてＣＰＵ１００は、図３に例示するＧＵＩ（グラフィカルユーザインターフェース）３９０を表示装置２０１の表示画面上に表示する。
【００３７】
ＧＵＩ３９０の表示領域３８０には画像取得部４００が取得した撮像画像が表示されており、該撮像画像上には人体検出領域情報が規定する３つの人体検出領域（人体検出領域Ａ，Ｂ，Ｃ）のそれぞれの枠３０２ａ、３０４ａ、３０６ａが重ねて表示されている。
【００３８】
また、枠３０２ａ内の領域３０３ａには、該枠３０２ａに対応する人体検出領域Ａから検出された人体の数である「３」が表示されている。また、枠３０４ａ内の領域３０５ａには、該枠３０４ａに対応する人体検出領域Ｂから検出された人体の数である「２」が表示されている。また、枠３０６ａ内の領域３０７ａには、該枠３０６ａに対応する人体検出領域Ｃから検出された人体の数である「４」が表示されている。また、表示領域３８０内の領域３０１ａには、人体検出領域Ａから検出された人体の数「３」と、人体検出領域Ｂから検出された人体の数「２」と、人体検出領域Ｃから検出された人体の数「４」と、の合計値である「９」が表示されている。
【００３９】
また、ＧＵＩ３９０の表示領域３００は、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値と、人体検出領域Ａ，Ｂ，Ｃのそれぞれに対する閾値と、を表示／設定するための領域である。領域３０１ｂには、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「７」が表示されており、この閾値はユーザが入力装置１０４を操作して変更することができる。領域３０２ｂには、人体検出領域Ａに対する閾値「２」が表示されており、この閾値はユーザが入力装置１０４を操作して変更することができる。領域３０４ｂには、人体検出領域Ｂに対する閾値「３」が表示されており、この閾値はユーザが入力装置１０４を操作して変更することができる。領域３０６ｂには、人体検出領域Ｃに対する閾値「５」が表示されており、この閾値はユーザが入力装置１０４を操作して変更することができる。ユーザが入力装置１０４を用いて領域３０１ｂ、３０２ｂ、３０４ｂ、３０６ｂに表示されている閾値を変更すると、閾値設定部４０４は、該閾値を該変更に応じて更新する。
【００４０】
次に、撮像画像上のそれぞれの人体検出領域（図３の場合は人体検出領域Ａ，Ｂ，Ｃ）についてステップＳ５０２及びステップＳ５０３を含む処理ブロック５９０を実行するすべく、処理ブロック５９０を人体検出領域の数（図３の場合は「３」）だけ繰り返す。そして、全ての人体検出領域について処理ブロック５９０を実行した場合には、処理はステップＳ５０４に進む。
【００４１】
ステップＳ５０２では、アラート判定部４０５は、撮像画像上のそれぞれの人体検出領域から未選択の人体検出領域を１つ、選択人体検出領域として選択する。そしてアラート判定部４０５は、該選択人体検出領域から検出した人体の数が、該選択人体検出領域について設定されている閾値以上か否かを判断する。
【００４２】
この判断の結果、選択人体検出領域から検出した人体の数が、該選択人体検出領域について設定されている閾値以上の場合には、処理はステップＳ５０３に進み、閾値未満の場合には、処理はステップＳ５０２に戻る。なお、ステップＳ５０２で全ての人体検出領域を選択人体検出領域として選択した場合（全ての人体検出領域について処理ブロック５９０を実行した場合）には、処理はステップＳ５０４に進む。
【００４３】
図３の例では、人体検出領域Ａを選択人体検出領域として選択した場合、該人体検出領域Ａから検出した人体の数「３」は、該人体検出領域Ａについて設定されている閾値「２」以上となっているので、処理はステップＳ５０３に進む。
【００４４】
ステップＳ５０３では、アラート通知部４０６は、選択人体検出領域に対応するアラートを通知する。選択人体検出領域に対応するアラートの通知方法には様々な通知方法があり、特定の通知方法に限らない。図３では人体検出領域Ａからの検出数「３」が人体検出領域Ａに対して設定されている閾値「２」以上となっている。そのため、人体検出領域Ａの枠３０２ａの表示色、領域３０３ａの表示色（背景色）、人体検出領域Ａの閾値を表示している領域３０２ｂの表示色（背景色）を変更している。なお、人体検出領域Ａの枠３０２ａの表示色、領域３０３ａの表示色（背景色）、人体検出領域Ａの閾値を表示している領域３０２ｂの表示色（背景色）、の全てを変更しても良いし、このうち１つ若しくは２つを変更しても良い。
【００４５】
また、選択人体検出領域に対応するアラートを表示（表示制御）にて行う場合に、どのような情報をどのような表示形態で表示するのかについては特定の表示形態に限らない。また、選択人体検出領域に対応するアラートを音声にて行っても良い。つまり、選択人体検出領域に対応する音声を不図示のスピーカを介して出力するようにしても良い。
【００４６】
ステップＳ５０４では、アラート判定部４０５は、先に求めた「それぞれの人体検出領域から検出された人体の数の合計値」（図３の場合、領域３０１ａに表示するために求めた合計値「９」）を取得する。
【００４７】
そしてステップＳ５０５では、アラート判定部４０５は、ステップＳ５０４にて取得した合計値が、全体の人体検出領域に対する閾値以上か否かを判断する。この判断の結果、ステップＳ５０４にて取得した合計値が、全体の人体検出領域に対する閾値以上の場合には、処理はステップＳ５０６に進み、閾値未満の場合には、図５のフローチャートに従った処理は終了する。
【００４８】
図３の例では、人体検出領域Ａから検出された人体の数「３」、人体検出領域Ｂから検出された人体の数「２」、人体検出領域Ｃから検出された人体の数「４」、の合計値「９」が、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「７」以上となっている。然るに、ステップＳ５０６に進む。
【００４９】
ステップＳ５０６では、アラート通知部４０６は、全体の人体検出領域に対応するアラートを通知する。全体の人体検出領域に対応するアラートの通知方法には様々な通知方法があり、特定の通知方法に限らないが、ステップＳ５０６では、ステップＳ５０３におけるアラートとは異なるアラートの通知を行う。
【００５０】
図３の例では、合計値「９」が、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「７」以上となっているため、領域３０１ａ表示色（背景色）、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値を表示している領域３０１ｂの表示色（背景色）を変更している。なお、領域３０１ａ表示色（背景色）、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値を表示している領域３０１ｂの表示色（背景色）、の全てを変更しても良いし、このうち１つを変更しても良い。
【００５１】
なお、全体の人体検出領域に対応するアラートを表示（表示制御）にて行う場合に、どのような情報をどのような表示形態で表示するのかについては特定の表示形態に限らない。例えば、領域３０１ａの背景色に加えて若しくは代えて該領域３０１ａの枠の表示色を変更しても良いし、撮像画像を囲む枠の表示色を変更しても良い。また、全体の人体検出領域に対応するアラートを音声にて行っても良い。つまり、全体の人体検出領域に対応する音声を不図示のスピーカを介して出力するようにしても良い。
【００５２】
また、ステップＳ５０３におけるアラートの通知、ステップＳ５０６におけるアラートの通知、では枠や領域の強調表示を行ってもよいし、アラートが発生した人体検出領域、もしくは人体検出領域全体かどうかに応じたメッセージを表示してもよい。
【００５３】
＜変形例１＞
閾値設定部４０４による閾値の設定処理には様々な設定処理が適用可能である。本変形例では、その一例を説明する。本変形例における、閾値設定部４０４による閾値の設定処理について、図６のフローチャートに従って説明する。
【００５４】
図６のフローチャートに従った処理の開始前に、ユーザが入力装置１０４を操作して閾値設定用のＧＵＩを表示装置２０１に表示させる指示を入力したことで、表示装置２０１の表示画面には、図７に例示する閾値設定用のＧＵＩ７００が表示されている。
【００５５】
ＧＵＩ７００において領域７０１には人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「７」が表示されており、領域７０２には人体検出領域Ａに対する閾値「２」が表示されており、領域７０３には人体検出領域Ｂに対する閾値「３」が表示されている。また、領域７０４には人体検出領域Ｃに対する閾値「５」が表示されている。ＧＵＩ７００を最初に起動したときには領域７０１〜７０４のそれぞれには、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値の初期値、人体検出領域Ａに対する閾値の初期値、人体検出領域Ｂに対する閾値の初期値、人体検出領域Ｃに対する閾値の初期値が表示される。
【００５６】
ステップＳ６００では、閾値設定部４０４は、入力装置１０４としてのポインティングデバイス（マウスなど）の、表示装置２０１の表示画面上におけるカーソルフォーカス位置を取得する。
【００５７】
ステップＳ６０１では、閾値設定部４０４は、領域７０１〜７０４（閾値設定項目）のうち何れかが選択されたか否かを判断する。例えば、ユーザが入力装置１０４としてのマウスを操作してカーソルフォーカス位置を領域７０１〜７０４のうち領域７０１の内部に移動させてからクリック操作を行うと、領域７０１が選択されたと判断する。
【００５８】
このような判断の結果、領域７０１〜７０４（閾値設定項目）のうち何れかが選択された場合には、処理はステップＳ６０２に進み、領域７０１〜７０４（閾値設定項目）の何れも選択されていない場合には、図６のフローチャートに従った処理は終了する。
【００５９】
なお、領域７０１〜７０４（閾値設定項目）の何れも選択されていない場合には、閾値設定を終了するか否かを確認するべく、閾値設定の終了を指示するボタンを含む画面を表示装置２０１の表示画面上に表示するようにしても良い。この場合、ユーザが入力装置１０４を操作することで該ボタンが指示された場合に、図６のフローチャートに従った処理を終了する。
【００６０】
ステップＳ６０２では、閾値設定部４０４は、選択された領域が、領域７０２〜７０４（閾値設定項目）の何れか（人体検出領域Ａ，Ｂ，Ｃの何れかに対応する閾値を設定するための領域）であるか否かを判断する。
【００６１】
この判断の結果、選択された領域が、領域７０２〜７０４（閾値設定項目）の何れかであれば、処理はステップＳ６０３に進む。一方、選択された領域が領域７０２〜７０４（閾値設定項目）の何れでもない（つまり選択された領域が、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値を設定するための領域７０１である）場合には、処理はステップＳ６０４に進む。
【００６２】
ステップＳ６０３では、閾値設定部４０４は、選択された領域（領域７０２〜７０４のうち選択された領域）に対してユーザが入力装置１０４を操作して入力した数を、該領域に対応する閾値として設定する。例えば、ユーザが入力装置１０４を操作して領域７０２を選択し、該領域７０２内に数値を入力し、確定操作を行うと、閾値設定部４０４は、該領域７０２内に入力された数値を人体検出領域Ａに対する閾値として設定する。そして処理はステップＳ６００に進む。
【００６３】
一方、ステップＳ６０４では、閾値設定部４０４は、選択された領域７０１に対してユーザが入力装置１０４を操作して入力した数を、該領域に対応する閾値として設定する。例えば、ユーザが入力装置１０４を操作して領域７０１を選択し、該領域７０１内に数値を入力し、確定操作を行うと、閾値設定部４０４は、該領域７０１内に入力された数値を人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値として設定する。そして処理はステップＳ６００に進む。
【００６４】
このような処理により、図７に示したような、領域と閾値との対応関係を設定することができるため、ＣＰＵ１００は、このような領域と閾値との対応関係をストレージ装置１０３に格納し、アラート判定部４０５による閾値との大小判定に用いる。
【００６５】
＜変形例２＞
２つ以上の人体検出領域の一部が重なっている場合におけるアラート判定部４０５の動作について説明する。以下では一例として図８（ａ）の左側に示す如く、撮像画像に対して人体検出領域８０１ａ（人体検出領域Ａ）及び人体検出領域８０２ａ（人体検出領域Ｂ）が設定されており、人体検出領域Ａと人体検出領域Ｂとが部分的に重なっているケースについて説明する。また図８（ａ）の右側に示す如く、人体検出領域Ａ，Ｂ全体に対する閾値として、領域８００ｂに示す如く「６」が設定されている。また、人体検出領域Ａに対する閾値として、領域８０１ｂに示す如く「４」が設定されており、人体検出領域Ｂに対する閾値として、領域８０２ｂに示す如く「２」が設定されている。
【００６６】
図８（ｂ）は、撮像画像に対して人体検出を行った結果として表示装置２０１の表示画面上に表示される表示領域３８０内の表示内容例を示す図である。領域８０１ｃには人体検出領域８０１ａから検出された人体の数「４」が表示されており、領域８０２ｃには人体検出領域８０２ａから検出された人体の数「２」が表示されている。
【００６７】
上記の通り、人体検出領域Ａと人体検出領域Ｂとは一部が重なっており、図８（ｂ）ではこの重なっている部分から一人の人体が検出されている。この場合、アラート判定部４０５は、ステップＳ５０４において、人体検出領域Ａから検出された人体の数と人体検出領域Ｂから検出された人体の数との合計値を取得する。そしてステップＳ５０５ではアラート判定部４０５は、該合計値から、人体検出領域Ａと人体検出領域Ｂとの重複領域から検出された人体の数を引いた値（非重複合計値）が、人体検出領域Ａ，Ｂ全体に対する閾値以上か否かを判断する。この判断の結果、非重複合計値が、人体検出領域Ａ，Ｂ全体に対する閾値以上の場合には、処理はステップＳ５０６に進み、閾値未満の場合には、図５のフローチャートに従った処理は終了する。
【００６８】
図８の例ではアラート判定部４０５は人体検出領域８０１ａからの検出数「４」と人体検出領域８０２ａからの検出数「２」との合計値「６」から人体検出領域Ａと人体検出領域Ｂとの重複領域からの検出数「１」を引いた値「５」を非重複合計値として求める。そしてアラート判定部４０５は、該非重複合計値「５」が人体検出領域Ａ，Ｂ全体に対する閾値「６」以上か否かを判断する。非重複合計値「５」は、人体検出領域Ａ，Ｂ全体に対する閾値「６」未満であるから、図５のフローチャートに従った処理は終了する。領域８００ｃには、この非重複合計値が表示される。
【００６９】
このように、アラート判定部４０５は、上記の合計値から人体検出領域同士（設定領域同士）の重複部分から検出された人体の数を引いた値を非重複合計値として求め、該非重複合計値が全体の人体検出領域に対する閾値以上か否かを判断する。そして閾値以上の場合には、処理はステップＳ５０６に進み、閾値未満の場合には、図５のフローチャートに従った処理は終了する。この処理は、人体検出領域が３個以上重なっているケースに対しても適用可能である。
【００７０】
［第２の実施形態］
以下では、第１の実施形態との差分について説明し、以下で特に触れない限りは第１の実施形態と同様であるものとする。本実施形態では、第１の実施形態に係る構成に加え、ユーザが閾値を設定する際に補助を行う構成を有する。
【００７１】
本実施形態に係る画像処理装置の機能構成例について、図９のブロック図を用いて説明する。以下では、図９の各機能部を処理の主体として説明する場合があるが、実際には、各機能部に対応するコンピュータプログラムをＣＰＵ１００が実行することで該機能部に対応する機能が実現される。しかし、図９の各機能部はコンピュータプログラムで実装されることに限らず、一部若しくは全部をハードウェアで実装しても良い。
【００７２】
図９において図４に示した機能部と同様の機能部には図４と同様の参照番号を付しており、該機能部に係る説明は省略する。図９に示した構成は、図４に示した構成に閾値算出部９００を加えたものである。閾値算出部９００は、アラート判定部４０５で使用する人体検出領域ごとの閾値若しくは全体の人体検出領域に対する閾値を算出する。
【００７３】
本実施形態では、図６のフローチャートに従った処理の開始前にユーザが入力装置１０４を操作して閾値設定用のＧＵＩを表示装置２０１に表示させる指示を入力したことで、表示装置２０１の表示画面にはＧＵＩ７００に加えて自動設定ボタンが表示される。
【００７４】
例えば図１０の左側に示す如く、第１の実施形態と同様にして人体検出領域Ａ，Ｂ，Ｃのそれぞれに対する閾値「３」、「３」、「５」を設定したものの、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値は未だ設定していないとする。このときユーザが入力装置１０４を操作して自動設定ボタン１０００を指示すると、閾値算出部９００は、人体検出領域Ａ，Ｂ，Ｃのそれぞれに対する閾値「３」、「３」、「５」の合計値「１１」を人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値として算出する。そしてＣＰＵ１００は、図１０の右側に示す如く、人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値として算出した合計値「１１」を、対応する領域７０１に表示する。なお、領域７０１に閾値を表示した後、ユーザが入力装置１０４を操作して第１の実施形態と同様に、この閾値を変更しても良い。また、領域７０１に表示するものは、合計値に適当な係数（例えば０．８）を乗じたものであっても良いし、各人体検出領域の閾値に該人体検出領域のサイズや位置などに応じた重みを乗じて合計したものであっても良い。
【００７５】
また例えば図１１の左側に示す如く、第１の実施形態と同様にして人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「２０」を設定したものの、人体検出領域Ａ，Ｂ，Ｃのそれぞれに対する閾値は未だ設定していないとする。ここで、人体検出領域Ａ，Ｂ，Ｃは図１１の下側に示す如く、それぞれ人体検出領域１１００ａ、１１０１ａ、１１０２ａに対応している。そして、人体検出領域１１０２ａのサイズ（面積：画素数）＞人体検出領域１１００ａのサイズ＞人体検出領域１１０１ａのサイズであるものとする。
【００７６】
このときユーザが入力装置１０４を操作して自動設定ボタン１０００を指示すると、閾値算出部９００は、以下の式を計算することで、人体検出領域Ａ，Ｂ，Ｃのそれぞれに対する閾値を算出する。
【００７７】
人体検出領域Ａに対する閾値＝人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値×人体検出領域Ａのサイズ／（人体検出領域Ａのサイズ＋人体検出領域Ｂのサイズ＋人体検出領域Ｃのサイズ）
人体検出領域Ｂに対する閾値＝人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値×人体検出領域Ｂのサイズ／（人体検出領域Ａのサイズ＋人体検出領域Ｂのサイズ＋人体検出領域Ｃのサイズ）
人体検出領域Ｃに対する閾値＝人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値×人体検出領域Ｃのサイズ／（人体検出領域Ａのサイズ＋人体検出領域Ｂのサイズ＋人体検出領域Ｃのサイズ）
そしてＣＰＵ１００は、図１１の右側に示す如く、人体検出領域Ａ，Ｂ，Ｃのそれぞれに対する閾値「６」、「４」、「１０」を、対応する領域７０２〜７０４に表示する。図１１の例では、人体検出領域Ａのサイズは、（人体検出領域Ａのサイズ＋人体検出領域Ｂのサイズ＋人体検出領域Ｃのサイズ）の３０％である。然るに人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「２０」の３０％である「６」が人体検出領域Ａに対する閾値として求められる。また、図１１の例では、人体検出領域Ｂのサイズは、（人体検出領域Ａのサイズ＋人体検出領域Ｂのサイズ＋人体検出領域Ｃのサイズ）の２０％である。然るに人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「２０」の２０％である「４」が人体検出領域Ｂに対する閾値として求められる。また、図１１の例では、人体検出領域Ｃのサイズは、（人体検出領域Ａのサイズ＋人体検出領域Ｂのサイズ＋人体検出領域Ｃのサイズ）の５０％である。然るに人体検出領域Ａ，Ｂ，Ｃ全体に対する閾値「２０」の５０％である「１０」が人体検出領域Ｃに対する閾値として求められる。
【００７８】
なお、領域７０２〜７０４に閾値を表示した後、ユーザが入力装置１０４を操作して第１の実施形態と同様に、この閾値を変更しても良い。また、人体検出領域同士が重なっていた場合には、人体検出領域ごとの閾値を調整する処理を行ってもよい。
【００７９】
＜変形例１＞
本実施形態に係る閾値算出部９００は、それぞれの人体検出領域中に写る人体の上限数に基づいて、人体検出領域ごとの閾値、全体の人体検出領域に対する閾値、を求める。本変形例に係る閾値の算出方法について、図１２を例に取り説明する。
【００８０】
図１２では、床平面に対して見下ろした画角で撮像装置によって撮像した撮像画像１２９０に、人体検出領域１２００及び人体検出領域１２０１（それぞれのサイズは同じ）が設定されている。この場合、人体検出領域１２００内の画像は、人体検出領域１２０１内の画像よりも遠方を撮像した画像であるから、例えば人体検出領域１２００内に人体枠１２００ａのサイズで写る人物は、人体検出領域１２０１内では人体枠１２０１ａのサイズで写る。ここで、人体枠とは、人体検出領域内に写る人体のサイズの目安となる枠である。人体枠のサイズは、ユーザが撮像画像の目視結果に基づいて入力装置１０４を操作して調整してもよいし、閾値算出部９００が、撮像装置の設置位置、高さ、角度の情報から算出してもよい。または、事前に撮像画像から人体検出を行い、該撮像画像上の様々な位置における人体検出領域内の人体サイズを該人体検出領域に対応する人体枠のサイズとして求めておいても良い。
【００８１】
本変形例では閾値算出部９００は、全体の人体検出領域に対する閾値（ここでは人体検出領域１２００、１２０１全体に対する閾値）が設定されている場合、人体検出領域１２００に対する閾値、人体検出領域１２０１に対する閾値は以下の式に従って算出する。
【００８２】
人体検出領域１２００に対する閾値＝（人体検出領域１２００、１２０１全体に対する閾値）×（人体検出領域１２００内に写る人体の上限数）／（人体検出領域１２００内に写る人体の上限数＋人体検出領域１２０１内に写る人物の上限数）
人体検出領域１２０１に対する閾値＝（人体検出領域１２００、１２０１全体に対する閾値）×（人体検出領域１２０１内に写る人体の上限数）／（人体検出領域１２００内に写る人体の上限数＋人体検出領域１２０１内に写る人物の上限数）
なお、人体検出領域内に写る人体の上限数については、様々な方法で取得することができる。例えば、２００画素×１００画素のサイズを有する人体検出領域に対応する人体枠のサイズが５０画素×５０画素であった場合、該人体検出領域内に写る人体の上限数は２００／５０×１００／５０＝８と計算できる。
【００８３】
また、人体検出領域内に写る人体のサイズが、人体検出領域の位置によって変化する場合には、その変化度合も考慮して「人体検出領域内に写る人体の上限数」を算出してもよい。その他、人体検出領域同士が重なっている場合は、重なっている部分のみ別途人体枠を設定するなどして調整してもよい。
【００８４】
なお、上記の各実施形態や各変形例において説明したＧＵＩの構成やその操作方法、各種の情報の設定方法や設定順序、人体検出領域の位置、サイズ、個数については上記のものに限らない。また、処理の順序についても上記のものに限らない。また、人体は検出するオブジェクトの一例に過ぎず、他の種のオブジェクトを人体に加えて若しくは代えて検出対象としても良い。
【００８５】
なお、以上説明した各実施形態や各変形例の一部若しくは全部を適宜組み合わせて使用しても構わないし、以上説明した各実施形態や各変形例の一部若しくは全部を選択的に使用しても構わない。
【００８６】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８７】
４００：画像取得部  ４０１：検出領域取得部  ４０２：人体検出部  ４０３：検出結果取得部  ４０４：閾値設定部  ４０５：アラート判定部  ４０６：アラート通知部
【図１】
2019220025.tif 000003
【図２】
2019220025.tif 000004
【図３】
2019220025.tif 000005
【図４】
2019220025.tif 000006
【図５】
2019220025.tif 000007
【図６】
2019220025.tif 000008
【図７】
2019220025.tif 000009
【図８】
2019220025.tif 000010
【図９】
2019220025.tif 000011
【図１０】
2019220025.tif 000012
【図１１】
2019220025.tif 000013
【図１２】
2019220025.tif 000014