(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-16
(45)【発行日】2024-07-24
(54)【発明の名称】監視カメラ、画像符号化方法、移動先予測枠表示方法およびプログラム
(51)【国際特許分類】
H04N 19/115 20140101AFI20240717BHJP
H04N 19/167 20140101ALI20240717BHJP
H04N 19/174 20140101ALI20240717BHJP
H04N 19/85 20140101ALI20240717BHJP
【FI】
H04N19/115
H04N19/167
H04N19/174
H04N19/85
(21)【出願番号】P 2020046845
(22)【出願日】2020-03-17
【審査請求日】2023-03-14
(73)【特許権者】
【識別番号】320008672
【氏名又は名称】i-PRO株式会社
(74)【代理人】
【識別番号】110002000
【氏名又は名称】弁理士法人栄光事務所
(72)【発明者】
【氏名】古賀 雅士
(72)【発明者】
【氏名】池田 淳
(72)【発明者】
【氏名】▲樋▼口 学
【審査官】岩井 健二
(56)【参考文献】
【文献】国際公開第2016/013298(WO,A1)
【文献】特許第6573297(JP,B1)
【文献】特開2019-092154(JP,A)
【文献】特開2006-014121(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
人工知能を搭載する監視カメラであって、
撮像エリアを第1の所定時間ごとに撮像する撮像部と、
前記人工知能を用いて、前記撮像エリアが撮像された撮像画像中の移動物体を前記第1の所定時間より長い第2の所定時間ごとに検出する検出部と、
過去に撮像された撮像画像に基づいて検出された前記移動物体の検出位置および検出時刻を関連付けて記憶する記憶部と、
前記移動物体の最新の検出位置および過去の検出位置に基づいて、
前記移動物体の最新の検出位置を検出するタイミングから前記第2の所定時間の経過後である次の検出タイミングにおいて前記撮像部により撮像される撮像画像中の前記移動物体の移動先の位置を予測し、前記移動物体の移動先の位置の予測結果を示す予測枠に基づく符号化指示を生成するプロセッサと、
前記符号化指示に基づいて、
少なくとも前記
第2の所定時間ごとに前記移動物体が検出された撮像画像を符号化するエンコーダと、を備え
、
前記エンコーダは、前記予測枠内の画像の符号量を所定値より大きく、かつ前記予測枠外の画像の符号量を前記所定値より小さくして符号化する、
監視カメラ。
【請求項2】
前記プロセッサは、前記予測枠の位置を、前記撮像画像を取得した時点の前記移動物体の検出位置として前記記憶部に蓄積する、
請求項1に記載の監視カメラ。
【請求項3】
前記プロセッサは、前記移動物体の最新の検出位置および過去の検出位置と前記移動物体の移動速度とに基づいて、前記予測枠の大きさを変更する、
請求項1に記載の監視カメラ。
【請求項4】
前記プロセッサは、前記移動速度に基づいて前記予測枠の大きさを前記移動速度に比例して拡大するよう変更する、
請求項
3に記載の監視カメラ。
【請求項5】
前記プロセッサは、前記移動物体の最新の検出位置および過去の検出位置と前記移動物体の移動方向とに基づいて、前記予測枠の大きさを変更する、
請求項1に記載の監視カメラ。
【請求項6】
前記プロセッサは、前記移動方向に基づいて前記移動物体が前記監視カメラから遠のく方向に移動していると判定した場合に、前記予測枠の大きさを縮小するよう変更する、
請求項
5に記載の監視カメラ。
【請求項7】
前記プロセッサは、前記移動方向に基づいて前記移動物体が前記監視カメラから近づく方向に移動していると判定した場合に、前記予測枠の大きさを拡大するよう変更する、
請求項
5に記載の監視カメラ。
【請求項8】
前記プロセッサは、前記予測枠内の画像の符号量を、前記予測枠内の端部から中心に向かって徐々に大きくなるよう符号化する旨の前記符号化指示を前記エンコーダに送る、
請求項
1に記載の監視カメラ。
【請求項9】
人工知能を搭載する監視カメラにより実行される画像符号化方法であって、
撮像エリアを第1の所定時間ごとに撮像するステップと、
前記人工知能を用いて、前記撮像エリアが撮像された撮像画像中の移動物体を前記第1の所定時間より長い第2の所定時間ごとに検出するステップと、
過去に撮像された撮像画像に基づいて検出された前記移動物体の検出位置および検出時刻を関連付けて記憶するステップと、
前記移動物体の最新の検出位置および過去の検出位置に基づいて、
前記移動物体の最新の検出位置を検出するタイミングから前記第2の所定時間の経過後である次の検出タイミングにおいて撮像される撮像画像中の前記移動物体の移動先の位置を予測し、前記移動物体の移動先の位置の予測結果を示す予測枠に基づく符号化指示を生成するステップと、
前記符号化指示に基づいて、
少なくとも前記
第2の所定時間ごとに前記移動物体が検出された撮像画像を符号化するステップと、を有
し、
前記符号化の際には、前記予測枠内の画像の符号量を所定値より大きく、かつ前記予測枠外の画像の符号量を前記所定値より小さくして符号化する、
画像符号化方法。
【請求項10】
コンピュータである、人工知能を搭載する監視カメラに、
撮像エリアを第1の所定時間ごとに撮像するステップと、
前記人工知能を用いて、前記撮像エリアが撮像された撮像画像中の移動物体を前記第1の所定時間より長い第2の所定時間ごとに検出するステップと、
過去に撮像された撮像画像に基づいて検出された前記移動物体の検出位置および検出時刻を関連付けて記憶するステップと、
前記移動物体の最新の検出位置および過去の検出位置に基づいて、
前記移動物体の最新の検出位置を検出するタイミングから前記第2の所定時間の経過後である次の検出タイミングにおいて撮像される撮像画像中の前記移動物体の移動先の位置を予測し、前記移動物体の移動先の位置の予測結果を示す予測枠に基づく符号化指示を生成するステップと、
前記符号化指示に基づいて、
少なくとも前記
第2の所定時間ごとに前記移動物体が検出された撮像画像を符号化するステップと、を実行させ
、
前記符号化の際には、前記予測枠内の画像の符号量を所定値より大きく、かつ前記予測枠外の画像の符号量を前記所定値より小さくして符号化す
る、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、監視カメラ、画像符号化方法、移動先予測枠表示方法およびプログラムに関する。
【背景技術】
【0002】
特許文献1には、撮影方向を変更可能であって、監視領域に侵入した物体を追尾撮影する監視装置が開示されている。監視装置は、物体の位置を検出し、物体の位置の検出結果に基づいて、予め定めた指定時間後における物体の予測位置を算出し、撮影方向を制御して予測位置に向ける。また、監視装置は、物体の位置の検出結果から求めた物体の移動速度に応じて、指定時間を異ならせる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1では、撮影された移動物体(例えば車両、人物等)の画像を用いて移動物体の追尾を行うことの開示はあるが、追尾に用いた移動物体の画像を効率的に符号化(例えばデータ圧縮)することは考慮されていない。例えば、監視カメラが撮影する4K等の高精細な画像データはデータサイズが大きく、監視カメラから外部装置(例えばレコーダ)に配信する際には画像データの効率的なデータ圧縮が望まれる。一方で、監視者は監視中に撮影された画像中の移動物体を注目しがちで、移動がない背景部分は高圧縮されても監視業務への影響は少ないと考えられる。このため、撮影された画像中において、移動物体は低圧縮、背景部分は高圧縮されることで、画像データの効率的かつ高精度なデータ圧縮が可能と期待されている。従って、移動物体が撮影された画像データに上述したデータ圧縮を行うという観点において、従来の技術に対して改善の余地があったと言える。
【0005】
本開示は、上述した従来の事情に鑑みて案出され、画角内の撮像エリアを移動するターゲットを捉えた撮像画像を効率的かつ高精度に符号化する監視カメラ、画像符号化方法およびプログラムを提供することを目的とする。
【0006】
本開示は、上述した従来の事情に鑑みて案出され、画角内の撮像エリアを移動するターゲットの移動先の位置を示す移動先予測枠を撮像画像中に的確に表示する監視カメラ、移動先予測枠表示方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示は、人工知能を搭載する監視カメラであって、撮像エリアを第1の所定時間ごとに撮像する撮像部と、前記人工知能を用いて、前記撮像エリアが撮像された撮像画像中の移動物体を前記第1の所定時間より長い第2の所定時間ごとに検出する検出部と、過去に撮像された撮像画像に基づいて検出された前記移動物体の検出位置および検出時刻を関連付けて記憶する記憶部と、前記移動物体の最新の検出位置および過去の検出位置に基づいて、前記移動物体の最新の検出位置を検出するタイミングから前記第2の所定時間の経過後である次の検出タイミングにおいて前記撮像部により撮像される撮像画像中の前記移動物体の移動先の位置を予測し、前記移動物体の移動先の位置の予測結果を示す予測枠に基づく符号化指示を生成するプロセッサと、前記符号化指示に基づいて、少なくとも前記第2の所定時間ごとに前記移動物体が検出された撮像画像を符号化するエンコーダと、を備え、前記エンコーダは、前記予測枠内の画像の符号量を所定値より大きく、かつ前記予測枠外の画像の符号量を前記所定値より小さくして符号化する、監視カメラを提供する。
【0008】
また、本開示は、人工知能を搭載する監視カメラにより実行される画像符号化方法であって、撮像エリアを第1の所定時間ごとに撮像するステップと、前記人工知能を用いて、前記撮像エリアが撮像された撮像画像中の移動物体を前記第1の所定時間より長い第2の所定時間ごとに検出するステップと、過去に撮像された撮像画像に基づいて検出された前記移動物体の検出位置および検出時刻を関連付けて記憶するステップと、前記移動物体の最新の検出位置および過去の検出位置に基づいて、前記移動物体の最新の検出位置を検出するタイミングから前記第2の所定時間の経過後である次の検出タイミングにおいて撮像される撮像画像中の前記移動物体の移動先の位置を予測し、前記移動物体の移動先の位置の予測結果を示す予測枠に基づく符号化指示を生成するステップと、前記符号化指示に基づいて、少なくとも前記第2の所定時間ごとに前記移動物体が検出された撮像画像を符号化するステップと、を有し、前記符号化の際には、前記予測枠内の画像の符号量を所定値より大きく、かつ前記予測枠外の画像の符号量を前記所定値より小さくして符号化する、画像符号化方法を提供する。
【0009】
また、本開示は、コンピュータである、人工知能を搭載する監視カメラに、撮像エリアを第1の所定時間ごとに撮像するステップと、前記人工知能を用いて、前記撮像エリアが撮像された撮像画像中の移動物体を前記第1の所定時間より長い第2の所定時間ごとに検出するステップと、過去に撮像された撮像画像に基づいて検出された前記移動物体の検出位置および検出時刻を関連付けて記憶するステップと、前記移動物体の最新の検出位置および過去の検出位置に基づいて、前記移動物体の最新の検出位置を検出するタイミングから前記第2の所定時間の経過後である次の検出タイミングにおいて撮像される撮像画像中の前記移動物体の移動先の位置を予測し、前記移動物体の移動先の位置の予測結果を示す予測枠に基づく符号化指示を生成するステップと、前記符号化指示に基づいて、少なくとも前記第2の所定時間ごとに前記移動物体が検出された撮像画像を符号化するステップと、を実行させ、前記符号化の際には、前記予測枠内の画像の符号量を所定値より大きく、かつ前記予測枠外の画像の符号量を前記所定値より小さくして符号化する、プログラムを提供する。
【0013】
なお、これらの包括的または具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム、または、記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【0014】
本開示の一態様における更なる利点および効果は、明細書および図面から明らかにされる。かかる利点および/または効果は、いくつかの実施の形態ならびに明細書および図面に記載された特徴によってそれぞれ提供されるが、1つまたはそれ以上の同一の特徴を得るために必ずしも全てが提供される必要はない。
【発明の効果】
【0015】
本開示によれば、画角内の撮像エリアを移動するターゲットを捉えた撮像画像を効率的かつ高精度に符号化できる。
【0016】
本開示によれば、画角内の撮像エリアを移動するターゲットの移動先の位置を示す移動先予測枠を撮像画像中に的確に表示できる。
【図面の簡単な説明】
【0017】
【
図1】実施の形態1に係る監視カメラシステムのシステム構成例を示す図
【
図2】実施の形態1に係る監視カメラのハードウェア構成例を示すブロック図
【
図3】実施の形態1において、イメージセンサ、AI検出、エンコーダの各出力タイミングと、3フレームごとに取得される撮像画像のフレーム中の人物の移動先予測枠との関係例を示す図
【
図4】実施の形態1に係る監視カメラの動作手順例を時系列に示すフローチャート
【
図5】移動先予測枠内のエリアごとに異なる符号量の割り当て例を示す図
【
図6】実施の形態2において、3フレームごとに取得される撮像画像のフレーム中の人物の移動先予測枠の一例を時系列に示す図
【
図7】実施の形態2に係る監視カメラの動作手順例を時系列に示すフローチャート
【
図8】実施の形態3において、3フレームごとに取得される撮像画像のフレーム中の人物の移動先予測枠の一例を時系列に示す図
【
図9】実施の形態3に係る監視カメラの動作手順例を時系列に示すフローチャート
【
図10】撮像エリア内を人物が移動する場合に、AIによる人物の検出結果と人物の実際の位置とがずれる現象の一例を示す図
【発明を実施するための形態】
【0018】
(本開示に至る技術的な経緯)
先ず、本開示に至る技術的な経緯を、
図10を参照して説明する。
図10は、撮像エリア内を人物PSzが移動する場合に、AIによる人物PSzの検出結果と人物PSzの実際の位置とがずれる現象の一例を示す図である。
図10において、人物PSzは、紙面の奥側から手前側に向かう方向DR1に沿って移動しているとする。
【0019】
昨今、人工知能(AI:Artificial Intelligents)を用いて撮像画像中の対象物(例えば人物PSz)を検出する技術が知られている。
図10の説明において、撮像画像の更新周期(言い換えると、フレームレート)は33ms(ミリ秒)とし、人工知能(以下、「AI」と略記する)により撮像画像中の人物PSzを検出するために要する時間は100msとする。つまり、AIによる人物PSzの検出には、3フレームの取得に要する時間とほぼ同等の時間がかかる。
【0020】
例えば
図10に示すように、時刻(t-1)にイメージセンサから取得された撮像画像が入力された場合、AIによる人物PSzの検出結果は、時刻(t-1)から3フレーム後の時刻tに得られる。同様に、時刻tにイメージセンサから取得された撮像画像が入力された場合、AIによる人物PSzの検出結果は、時刻tから3フレーム後の時刻(t+1)に得られる。なお上述したように、イメージセンサから撮像画像は33msごとに取得されるが、AIによる人物PSzの検出結果は100msごとに取得される。このため、例えば時刻(t-1)から時刻tまでの2フレームの撮像画像はAIによる検出の対象とはならない。
【0021】
従って、
図10に示されるように、人物PSzが方向DR1に沿って移動している場合、人物PSzは時刻(t-1)の位置と時刻tの位置とが異なっていると考えられるため、人物PSzの検出結果(つまり検出された位置)と人物PSzの実際の位置とがずれてしまうという課題があった。具体的には、
図10を参照すると、人物PSzが方向DR1に移動しているために、時刻tで得られる人物PSzの検出結果(つまり、人物PSzの時刻(t-1)での画像のAIによる検出結果が示す人物PSzの位置)と時刻tの人物PSzの実際の位置(つまり、人物PSzの時刻tでの位置)とにずれがあった。
【0022】
上述したように、監視カメラが撮影する4K等の高精細な画像データはデータサイズが大きいため、監視カメラから外部装置(例えばレコーダ)に配信する際には画像データの効率的なデータ圧縮が望まれる。従って、撮影された画像中において、移動物体(例えば人物PSz)の位置は低圧縮(つまり符号化処理時の符号量を大きく割り当て)し、移動物体がいない背景部分は高圧縮(つまり符号化処理時の符号量を小さく割り当て)することで、画像データの効率的かつ高精度なデータ圧縮が可能と考えられる。
【0023】
しかし、
図10を参照して説明したように、人物PSzが移動しているとAIによる人物PSzの検出結果と人物PSzの実際の位置とがずれてしまうという課題があるため、AIによる検出結果を用いて符号割り当てを変えると、誤った場所を人物として低圧縮化、もしくは誤った場所を背景として高圧縮化してしまい、効率的かつ高精度なデータ圧縮が困難であると考えられる。
【0024】
そこで、以下の各実施の形態では、画角内の撮像エリアを移動するターゲットを捉えた撮像画像を効率的かつ高精度に符号化する監視カメラ、画像符号化方法およびプログラムの例を説明する。また、以下の各実施の形態では、画角内の撮像エリアを移動するターゲットの移動先の位置を示す移動先予測枠を撮像画像中に的確に表示する監視カメラ、移動先予測枠表示方法およびプログラムの例を説明する。
【0025】
以下、適宜図面を参照しながら、本開示に係る監視カメラ、画像符号化方法、移動先予測枠およびプログラムを具体的に開示した実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明あるいは実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になることを避け、当業者の理解を容易にするためである。なお、添付図面および以下の説明は、当業者が本開示を十分に理解するために提供されるものであり、これらにより特許請求の範囲に記載の主題を限定することは意図されていない。
【0026】
(実施の形態1)
図1は、実施の形態1に係る監視カメラシステム100のシステム構成例を示す図である。監視カメラシステム100は、監視カメラ1と、1台以上のレコーダRC1と、1台以上の監視用コンピュータPC1と、を含む構成である。レコーダRC1にはモニタMN1が接続される。同様に、監視用コンピュータPC1にはディスプレイDP1が接続される。監視カメラ1とレコーダRC1と監視用コンピュータPC1とは、ネットワークNW1を介して互いにデータを送受信可能に接続される。
【0027】
ネットワークNW1は、例えばWi-Fi(登録商標)等の無線LAN(Local Area Network)、Bluetooth(登録商標)およびWiGig(Wireless Gigabit)のいずれかに準じた無線ネットワークであるが、これらに限定されなくてよい。なお、ネットワークNW1は、USB(Univesal Serial Bus)ケーブル、あるいは有線LAN等の有線ネットワークでもよい。以下の説明において、監視カメラ1により撮像された画像(以下、「撮像画像」と称する)には、撮像画像データだけでなく、その撮像画像を撮像した監視カメラ1のカメラID(Identification)と撮像日時の情報とが含まれる。
【0028】
監視カメラ1は、例えば、道路の路側に設置されたポール(図示略)、駐車場、店舗等の建物内の自動ドア付近の天井等の各所に設置されている。監視カメラ1は、所定幅の画角内の撮像エリア(言い換えると、監視エリア)に進入する移動物体等の被写体を撮像する。また、監視カメラ1は、人工知能(AI)を搭載しており、搭載された人工知能を用いて、撮像画像からオブジェクト(例えば移動物体)を検出する。移動物体は、監視カメラ1による監視対象物であり、例えば人物、人物の顔、車両、オートバイ等の二輪車、自転車、三輪車、キックスケーターである。なお、移動物体はこれらの例示したものに限定されないし、オブジェクトは移動物体に限定されない。
【0029】
監視カメラ1には、AIの学習モデルが学習モデルメモリ15Bに記憶されている(
図2参照)。この学習モデルは、監視カメラ1に搭載されているAIの機能を特徴付けるパラメータ群である。すなわち、学習モデルは、監視カメラ1に搭載されているAIの検出対象であるオブジェクトを決定するパラメータ群である。学習モデルは、例えば、監視カメラ1に構築されたAI構造(例えばニューラルネットワークN1)を決定するパラメータ群であってもよい。ニューラルネットワークN1を決定するパラメータ群には、例えば、ニューラルネットワークN1のユニット間の接続関係を示す情報または重み係数等が含まれる。学習モデルは、監視用コンピュータPC1等の外部装置から監視カメラ1に送られ、監視カメラ1に予め記憶される。
【0030】
監視カメラ1は、検出対象となるオブジェクトごとに対応するニューラルネットワークN1を構築して、対応するオブジェクトを検出可能である。例えば、監視カメラ1は、人物(具体的には、人物の全身)を検出するためのニューラルネットワーク、人物の顔を検出するためのニューラルネットワーク、車両を検出するためのニューラルネットワークを構築し、対応するオブジェクトの検出を実行可能である。
図1に示すニューラルネットワークN1は、上述した3つの例示した個々のニューラルネットワークを総称したものである。
【0031】
レコーダRC1は、監視カメラ1により生成されたエリア動画データ(後述参照)を、ネットワークNW1を介して受信するとそのエリア動画データを蓄積日時および監視カメラ1のIDと関連付けて蓄積する。なお、エリア動画データには、動画データの他に、生成元である監視カメラ1のIDおよび生成日時の情報が含まれている。なお、
図1では図示が省略されているが、複数台のレコーダRC1がネットワークNW1に接続されて構わない。
【0032】
モニタMN1は、例えばLCD(Liquid Crystal Display)あるいは有機EL(Electroluminescence)を用いて構成された表示デバイスである。モニタMN1は、例えばレコーダRC1に蓄積されたエリア動画データがユーザ(例えば監視カメラシステム100の運営者)の操作により再生指示された場合に、レコーダRC1から送られたエリア動画データを表示(再生)する。
【0033】
監視用コンピュータPC1は、例えば、パーソナルコンピュータ、スマートフォン、タブレット端末、あるいは高性能なスペックを有するサーバコンピュータマシン等の情報処理装置である。監視用コンピュータPC1は、監視カメラ1が撮像する撮像エリア(言い換えると、監視エリア)のエリア動画データを、ネットワークNW1を介して監視カメラ1から受信してディスプレイDP1に表示する。監視用コンピュータPC1は、例えばユーザ(上述参照)の操作を受け付け、ユーザの操作に応じて、監視カメラ1ごとのエリア動画データをディスプレイDP1に表示(再生)する。
【0034】
ディスプレイDP1は、例えばLCDあるいは有機ELを用いて構成された表示デバイスである。ディスプレイDP1は、例えば監視用コンピュータPC1により受信されたエリア動画データがユーザ(上述参照)の操作により再生指示された場合に、監視用コンピュータPC1から送られたエリア動画データを表示(再生)する。なお、ディスプレイDP1は、監視用コンピュータPC1に含まれてもよい。
【0035】
図2は、実施の形態1に係る監視カメラ1のハードウェア構成例を示すブロック図である。
図2には、監視カメラ1の他に、監視カメラ1に挿抜される外部記憶媒体M1も示してある。外部記憶媒体M1は、例えばSDカード等の記憶媒体である。
【0036】
監視カメラ1は、レンズ11と、イメージセンサ12と、メモリ13と、プロセッサ14と、AI処理部15と、通信IF回路17と、外部記憶媒体IF19と、IR照明部20と、を含む構成である。プロセッサ14は、エンコーダ14Aおよびデコーダ14Bを有する。
【0037】
撮像部の一例としてのレンズ11は、例えばフォーカスレンズおよびズームレンズを含み、被写体により反射された光である入射光ICL1を入射してイメージセンサ12の受光面(言い換えると、撮像面)に被写体の光学像を結像する。レンズ11には、監視カメラ1の設置場所または撮影用途等に応じて、様々な焦点距離または撮影範囲のレンズを用いることができる。
【0038】
撮像部の一例としてのイメージセンサ12は、受光面(言い換えると、撮像面)に受けた光を電気信号に変換するための光電変換を行う。イメージセンサ12は、例えば、CCD(Charge Coupled Device)またはCMOS(Complementary Metal Oxide Semiconductor)を用いて構成される。イメージセンサ12は、受光面(言い換えると、撮像面)に受けた光に応じた電気信号(アナログ信号)を第1の所定時間(例えば1/30(秒))ごとにプロセッサ14に送る。つまり、監視カメラ1のフレームレートは、例えば30fps(frame per second)となる。なお、この値は一例であって、フレームレートは30fpsに限定されない。このアナログ信号は、撮像部の一例としてのプロセッサ14により、デジタル形式の撮像画像のデータに変換される。これにより、プロセッサ14によって撮像画像のデータが生成される。なお、このアナログ信号からデジタル形式への撮像画像のデータ変換はイメージセンサ12により実行されてもよい。このように、プロセッサ14は、デジタル形式の撮像画像のデータを第1の所定時間(例えば1/30(秒))ごとに取得できる。
【0039】
メモリ13は、例えばRAM(Random Access Memory)とROM(Read Only Memory)とを用いて構成され、監視カメラ1の動作の実行に必要なプログラム、更には、動作中に生成されたデータもしくは情報を一時的に保持する。RAMは、例えば、監視カメラ1の動作時に使用されるワークメモリである。ROMは、例えば、監視カメラ1を制御するための本開示に係るプログラムを予め記憶して保持する。言い換えると、プロセッサ14は、ROMに記憶されているプログラムを実行することで、コンピュータである監視カメラ1に、本開示に係る画像符号化方法、対象物予測枠表示方法に関する各種の処理を実行可能である。
【0040】
また、記憶部の一例としてのメモリ13は、過去にイメージセンサ12により撮像された撮像画像に基づいてAI処理部15により検出された移動物体(例えば人物)の検出位置および検出時刻を関連付けて記憶(蓄積)する。例えば、メモリ13は、移動物体の種別(例えば人物)とAI処理部15による検出対象となった撮像画像中の検出位置および検出時刻とを関連付けて記憶する。
【0041】
プロセッサ14は、例えばCPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphical Processing Unit)もしくはFPGA(Field Programmable Gate Array)を用いて構成される。プロセッサ14は、監視カメラ1の全体的な動作を司るコントローラとして機能し、監視カメラ1の各部の動作を統括するための制御処理、監視カメラ1の各部との間のデータの入出力処理、データの演算処理およびデータの記憶処理を行う。プロセッサ14は、メモリ13に記憶されたプログラムおよびデータに従って動作する。プロセッサ14は、動作時にメモリ13を使用し、プロセッサ14が生成または取得したデータもしくは情報をメモリ13に一時的に保存する。プロセッサ14は、エンコーダ14Aおよびデコーダ14Bを有する。
【0042】
また、撮像部の一例としてのプロセッサ14は、イメージセンサ12から出力された電気信号に既定の信号処理を施すことで、デジタル形式の撮像画像のデータを生成してAI処理部15に送る。上述したように、プロセッサ14は、デジタル形式の撮像画像のデータを第1の所定時間(例えば1/30(秒))ごとに取得できるので、取得された撮像画像のデータをAI処理部15に送る。
【0043】
また、プロセッサ14は、タイマ(図示略)を有し、タイマの出力に基づいて現在時刻を把握可能であり、夜間(言い換えると、日没付近~明け方付近)にはIR光の照射を指示する制御信号をIR照明部20に送る。
【0044】
また、プロセッサ14は、AI処理部15の処理結果(例えば、同一画角の撮像画像中の移動物体の最新(現在)の検出位置と過去の検出位置)に基づいて、撮像画像中の移動物体(例えば人物)の移動ベクトルを算出する。プロセッサ14は、この移動ベクトルを用いて、最新(現在)に撮像された撮像画像を対象としてAI処理部15が100ms後に検出するであろう移動物体(例えば人物)の位置(言い換えると、移動先)を予測する。プロセッサ14は、この予測結果を、移動物体(例えば人物)の移動先予測枠(予測枠の一例)として求める。この移動先予測枠の算出の処理例については、
図3を参照して詳細を説明する。
【0045】
また、プロセッサ14は、移動先予測枠の算出結果に基づいて、エンコーダ14Aで行われる撮像画像の符号化処理に関する符号化指示を生成する。この符号化指示には、AI処理部15の処理結果に基づいて算出される移動物体(例えば人物)の移動ベクトルに基づく移動先予測枠WK1,WK2の位置と、その移動先予測枠WK1,WK2内の画像の符号量を所定値(例えば初期値あるいは通常使用値)より大きくしかつ移動先予測枠WK1,WK2外の画像の符号量を所定値(上述参照)より小さくする旨の命令とが含まれる。プロセッサ14は、エンコーダ14Aにより符号化処理された複数枚の撮像画像のフレームに基づいて、撮像エリアのエリア動画データを生成する。プロセッサ14は、このエリア動画データを、通信IF回路17を介してネットワークNW1に送信する。このエリア動画データは、ネットワークNW1を介して監視用コンピュータPC1あるいはレコーダRC1に送られる。
【0046】
エンコーダ14Aは、プロセッサ14からの符号化指示に基づいて、撮像画像を符号化(データ圧縮)する。具体的には、エンコーダ16は、1枚の撮像画像に対し、撮像画像中で移動先予測枠WK1,WK2内の画像部分の符号量を所定値(例えば初期値あるいは通常使用値)より大きくして符号化し、かつ同じ撮像画像中で移動先予測枠WK1,WK2外の画像部分の符号量を所定値(上述参照)より小さくして符号化する。これにより、撮像画像中で、ユーザが注目しがちな移動物体の部分は低圧縮(つまり符号量が大きく割り当てられて符号化)され、かつ変化が少ない背景部分は高圧縮(つまり符号量が小さく割り当てられて符号化)されるので、効率的かつ高精度なデータ圧縮が可能となる。なお、エンコーダ14Aは、プロセッサ14とは異なる構成であってもよい。
【0047】
デコーダ14Bは、ネットワークNW1を介して通信IF回路17が受信したデータを受け取ると、そのデータをデコードしてプロセッサ14に渡す。なお、デコーダ14Bは、プロセッサ14とは異なる構成であってもよい。
【0048】
検出部の一例としてのAI処理部15は、人工知能を用いて、プロセッサ14から送られた撮像画像のデータの中から、検出対象となるオブジェクト(例えば人物等の移動物体)を検出する。AI処理部15は、例えばCPU、DSP、GPUあるいはFPGA等のプロセッサと、フラッシュメモリ等のメモリとを用いて構成される。AI処理部15は、AI演算処理部15Aと、学習モデルメモリ15Bとを有する。
【0049】
AI演算処理部15Aは、学習モデルメモリ15Bに記憶された学習モデルに基づいたAI(人工知能)を形成する。例えば、AI演算処理部15Aは、学習モデルに基づいたニューラルネットワークN1(
図1参照)を形成する。AI演算処理部15Aは、プロセッサ14により生成された撮像画像のデータを入力し、学習モデルに基づいたニューラルネットワークN1によって、入力された撮像画像のデータの中から、検出対象となるオブジェクト(例えば人物等の移動物体)を検出する。
【0050】
学習モデルメモリ15Bは、例えばRAM、ROM、フラッシュメモリ等のメモリによって構成される。学習モデルメモリ15Bは、予め学習処理によって生成されたオブジェクトごとの検出処理用の学習モデルを格納している。AI演算処理部15Aは、学習モデルメモリ15Bからオブジェクトごとの学習モデルを実行して対応するニューラルネットワークN1を形成することで、撮像画像に映るオブジェクト(例えば人物等の移動物体)を検出できる。
【0051】
通信部の一例としての通信IF回路17は、ネットワークNW1を介して接続された監視用コンピュータPC1あるいはレコーダRC1との間でデータ通信(送受信)を行う。通信IF回路17は、例えばエンコーダ16により符号化処理がなされた撮像画像のデータを、ネットワークNW1を介してレコーダRC1あるいは監視用コンピュータPC1に送る。また、通信IF回路17は、監視用コンピュータPC1から送られたデータあるいは情報を、ネットワークNW1を介して受信する。
【0052】
外部記憶媒体IF19には、SDカード等の外部記憶媒体M1が挿抜される。
【0053】
IR照明部20は、プロセッサ14からの制御信号(例えばIR光の照射開始の指示)に基づいて、例えば夜間等に撮像エリアに向けて近赤外の波長帯域を有するIR光RD1の照射を開始する。IR照明部20は、プロセッサ14からの制御信号(例えばIR光RD1の照射終了の指示)に基づいて、例えば明け方等に撮像エリアへのIR光RD1の照射を終了する。また、IR照明部20は、プロセッサ14からの制御信号(例えばIR光RD1の強度の調整の指示)に基づいて、現在照射しているIR光RD1の強度を強めたりもしくは弱めたりして照射する。
【0054】
図3は、実施の形態1において、イメージセンサ12、AI検出、エンコーダ14Aの各出力タイミングと、3フレームごとに取得される撮像画像のフレーム中の人物の移動先予測枠との関係例を示す図である。
図3の説明では、移動物体の一例として人物の全身を挙げて説明するが、人物の全身に限定されないことは言うまでもない。また、
図3では移動態様を歩行として説明するが、移動態様は歩行に限定されないことは言うまでもない。
【0055】
図3において、横軸は時間を示しており、イメージセンサ12からは、監視カメラ1のフレームレートに対応して1/30(秒)ごとに1枚の撮像画像のデータがプロセッサ14に出力される。一方、AI処理部15からは、AIの性能にもよるが、例えば100ms(言い換えると、3フレーム分の処理時間)ごとに撮像画像中の移動物体(例えば人物)の検出結果が得られる。AIによる移動物体の検出には数フレーム分の処理時間がかかると考えられ、
図3の例ではAIによる検出に3フレーム分の時間を要している。また、エンコーダ14Aからは、イメージセンサ12の出力と同期して1/30(秒)ごとに符号化処理が行われる。
【0056】
図3の最下段には、AIの検出出力が得られる100msごとの撮像画像(つまり、イメージセンサ12から取得された撮像画像)のフレームが4枚分図示されており、t=1の100ms後がt=2となり、同様に、t=2の100ms後がt=3となり、t=3の100ms後がt=4となっている。以下、t=1の撮像画像をフレームIMG1、t=2の撮像画像をフレームIMG4、t=3の撮像画像をフレームIMG7、t=4の撮像画像をフレームIMG10と称する。
【0057】
t=1のフレームIMG1では、移動物体としての人物PS1が静止している。t=1以降に人物PS1は移動を開始し、t=2のフレームIMG4では人物PS1はt=1の位置から少し移動し、t=3のフレームIMG7では人物PS1はt=2の位置からさらに移動し、t=4のフレームIMG10では人物PS1はt=3の位置からさらに移動している。
【0058】
実施の形態1に係る監視カメラ1は、イメージセンサ12から撮像画像のデータを1/30(秒)ごとにプロセッサ14で取得するとともに、この取得された3フレーム分の撮像画像のうち1枚の撮像画像中の移動物体の有無をAI処理部15で判別する。
【0059】
[t=1について]
具体的には、AI処理部15は、イメージセンサ12から得られたt=1のフレームIMG1を入力してフレームIMG1中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG1中の人物PS1の検出結果はt=2で得られる(フレームIMG4参照)。つまり、
図3のt=2のフレームIMG4では、便宜的にt=2で撮像された人物PS1(黒塗りつぶし)とともに、t=1のフレームIMG1に基づくAI検出出力に相当する人物AI1(ドットハッチ)とが示されている。但し、t=2で実際にイメージセンサ12から取得される撮像画像のフレームIMG4には、人物AI1は映っていない。
【0060】
監視カメラ1は、t=1のフレームIMG1をエンコーダ14Aで符号化処理する。なお、監視カメラ1は、t=1からt=2に至るまでの2フレームについても同様にイメージセンサ12から取得してエンコーダ14Aで符号化処理する。なお、t=1からt=2,t=2からt=3,t=3からt=4に至るまでのそれぞれの期間中の2フレームについては、AI処理部15による人物の検出処理は実行されなくてもよいし、
図3では図示を省略しているが同様に実行されてもよい。
【0061】
[t=2について]
また、AI処理部15は、イメージセンサ12から得られたt=2のフレームIMG4を入力してフレームIMG4中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG4中の人物PS1の検出結果はt=3で得られる(フレームIMG7参照)。つまり、
図3のt=3のフレームIMG7では、便宜的にt=3で撮像された人物PS1(黒塗りつぶし)とともに、t=1,2の各フレームIMG1,IMG4に基づくAI検出出力に相当する人物AI1,AI2(ドットハッチ)とが示されている。但し、t=3で実際にイメージセンサ12から取得される撮像画像のフレームIMG7には、人物AI1,AI2は映っていない。
【0062】
監視カメラ1は、t=2のフレームIMG4をエンコーダ14Aで符号化処理する。なお、監視カメラ1は、t=2からt=3に至るまでの2フレームについても同様にイメージセンサ12から取得してエンコーダ14Aで符号化処理する。また、監視カメラ1は、t=2で得られた、t=1のフレームIMG1に基づくAI検出出力である人物PS1の検出位置(つまり、人物AI1の位置を示すフレームIMG1の座標)および検出時刻(つまり、t=1)と移動物体の個別IDとを関連付けてメモリ13に蓄積する。個別IDは、複数のフレーム間で撮影されている物体が同一物であることを示すものであり、物体の位置情報や色などの特徴量から判断される。
【0063】
[t=3について]
また、AI処理部15は、イメージセンサ12から得られたt=3のフレームIMG7を入力してフレームIMG7中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG7中の人物PS1の検出結果はt=4で得られる(フレームIMG10参照)。つまり、
図3のt=4のフレームIMG10では、便宜的にt=4で撮像された人物PS1(黒塗りつぶし)とともに、t=2,3の各フレームIMG4,IMG7に基づくAI検出出力に相当する人物AI2,AI3(ドットハッチ)とが示されている。但し、t=4で実際にイメージセンサ12から取得される撮像画像のフレームIMG10には、人物AI2,AI3は映っていない。
【0064】
さらに、プロセッサ14は、最新(つまり現在であるt=3)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=2)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI1の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルを算出する。プロセッサ14は、この移動ベクトルの算出結果とフレームIMG4中の移動物体(例えば人物PS1)の検出位置(座標)とを用いて、最新(つまり現在であるt=3)のフレームIMG7において、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK1として求める。プロセッサ14は、移動先予測枠WK1の算出結果に基づいて、フレームIMG7の移動先予測枠WK1内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK1外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG7を符号化処理する。
【0065】
監視カメラ1は、t=3のフレームIMG7をエンコーダ14Aで符号化処理する。なお、監視カメラ1は、t=3からt=4に至るまでの2フレームについても同様にイメージセンサ12から取得してエンコーダ14Aで符号化処理する。また、監視カメラ1は、t=3で得られた、t=2のフレームIMG4に基づくAI検出出力である人物PS1の検出位置(つまり、人物AI2の位置を示すフレームIMG4の座標)および検出時刻(つまり、t=2)と移動物体の個別ID(上述参照)とを関連付けてメモリ13に蓄積する。
【0066】
[t=4について]
また、AI処理部15は、イメージセンサ12から得られたt=4のフレームIMG10を入力してフレームIMG10中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG10中の人物PS1の検出結果はt=4の次の100msの時点で得られる。
【0067】
さらに、プロセッサ14は、最新(つまり現在であるt=4)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI3の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=3)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルを算出する。プロセッサ14は、この移動ベクトルの算出結果とフレームIMG7中の移動物体(例えば人物PS1)の検出位置(座標)とを用いて、最新(つまり現在であるt=4)のフレームIMG10において、移動物体(例えば人物PS1)の位置(言い換えると、t=3からの移動先)を予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK2として求める。プロセッサ14は、移動先予測枠WK2の算出結果に基づいて、フレームIMG10の移動先予測枠WK2内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK2外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG10を符号化処理する。
【0068】
監視カメラ1は、t=4のフレームIMG10をエンコーダ14Aで符号化処理する。また、監視カメラ1は、t=4で得られた、t=3のフレームIMG7に基づくAI検出出力である人物PS1の検出位置(つまり、人物AI3の位置を示すフレームIMG7の座標)および検出時刻(つまり、t=3)と移動物体の種別(例えば人物)とを関連付けてメモリ13に蓄積する。
【0069】
次に、実施の形態1に係る監視カメラ1の動作手順について、
図4を参照して説明する。
図4は、実施の形態1に係る監視カメラの動作手順例を時系列に示すフローチャートである。
図4の説明において、必要に応じて
図3を参照し、説明を分かり易くするために、
図3のt=2のタイミング以降の処理を説明する。
【0070】
図4において、AI処理部15は、イメージセンサ12から得られた時点(例えばt=2のフレームIMG4)を入力してフレームIMG4中の移動物体(例えば人物PS1)を検出する(St1、t=2)。AI処理部15は、AIによる検出の対象物である移動物体(例えば人物PS1)の検出結果(具体的には、人物PS1のフレームIMG4中の位置を示す座標)を、t=2から100ms後のt=3の時点で取得する(St2、t=3)。つまり、AI処理部15は、ステップSt2の時点(t=3)に、現在(t=3)から見ると時刻(t-1)に相当するt=2の移動物体(例えば人物PS1)の検出結果(具体的には、人物PS1のフレームIMG4中の位置を示す座標)を得る。
【0071】
プロセッサ14は、メモリ13に蓄積されている過去の(例えば直近の過去である、現在(t=3)から見ると時刻(t-2)に相当するt=1)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI1の位置)を読み出して取得する(St3、t=3)。プロセッサ14は、ステップSt2で検出された最新(つまり現在であるt=3)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)と、ステップSt3で取得された過去の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI1の位置)とを用いて、移動物体(例えば人物PS1)のフレーム間の移動方向を示す移動ベクトルを算出する(St4、t=3)。
【0072】
プロセッサ14は、ステップSt4で算出された移動ベクトルとステップSt2で検出されたフレームIMG4中の移動物体(例えば人物PS1)の検出位置(座標)とを用いて、最新(つまり現在であるt=3)のフレームIMG7において、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を予測する(St5、t=3)。
【0073】
プロセッサ14は、この予測結果である位置の座標を、移動物体(例えば人物PS1)の移動先予測枠WK1として求める。プロセッサ14は、移動先予測枠WK1の算出結果に基づいて、フレームIMG7の移動先予測枠WK1内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK1外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する(St6)。つまり、プロセッサ14は、移動先予測枠WK1内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK1外の画像部分の符号量を所定値より小さくするように、エンコーダ14Aの符号化処理時のパラメータを変更する。エンコーダ14Aは、この符号化指示に従って、フレームIMG7を符号化処理する。
【0074】
また、監視カメラ1は、t=3で得られた、t=2のフレームIMG4に基づくAI検出出力である人物PS1の検出位置(つまり、人物AI2の位置を示すフレームIMG4の座標)および検出時刻(つまり、t=2)と移動物体の個別IDとを関連付けてメモリ13に蓄積する(St7)。ステップSt7の後、監視カメラ1の処理はステップSt1に戻り、100ms間隔でステップSt1~ステップSt7までの処理が同様に繰り返される。
【0075】
図5は、移動先予測枠WK1内のエリアごとに異なる符号量の割り当て例を示す図である。
図5には、移動先予測枠WK1と、分布曲線PTY1とが対応付けて示されている。分布曲線PTY1は、移動先予測枠WK1内のエリアAR1,AR2,AR3ごとにエンコーダ14Aに割り当てられる符号化処理時の符号量(パラメータの一例)の大小の特性例を示す。
【0076】
移動先予測枠WK1内において、移動物体(例えば人物PS1)が検出される確率は端部(エッジ)から中心に向かって高くなると考えられる。言い換えると、移動先予測枠WK1内において、移動物体(例えば人物PS1)が検出される確率は中心から端部(エッジ)に向かって低くなると考えられる。このため、実施の形態1に係る監視カメラ1は、
図4のステップSt5において、移動先予測枠WK1内の画像の符号化処理時の符号量を、エリアAR3,AR2,AR1の順に大きくするように設定してもよい。これにより、監視カメラ1は、同じ移動先予測枠WK1内であっても、移動物体が実際に検知される確率が高いと考えられるエリアごとに符号量の重み付け(傾斜)を付けた符号量を設定することで、ユーザが注目しがちな移動物体の画質を劣化させないよう、かつ、符号化したデータのデータ量が大きくなりすぎないよう効率的に符号化処理できる。なお、
図5に示す移動先予測枠内のエリアごとに符号量の重み付け(傾斜)を付けた符号量の設定は、後述する実施の形態2,3においても同様に適用可能であってよい。
【0077】
以上により、実施の形態1に係る監視カメラ1は、人工知能を搭載し、撮像エリアを第1の所定時間(例えば1/30(秒))ごとに撮像し、人工知能を用いて、撮像エリアが撮像された撮像画像中の移動物体を第1の所定時間より長い第2の所定時間(例えば100ミリ秒)ごとに検出する。監視カメラ1は、過去に撮像された撮像画像に基づいて検出された移動物体の検出位置および検出時刻を関連付けてメモリ13に記憶する。監視カメラ1は、移動物体の最新(例えばt=3)の検出位置(例えば人物AI2の位置)および過去の検出位置(例えば人物AI1の位置)に基づいて、最新(例えばt=3)の撮像画像中の移動物体の移動先の位置を予測し、移動物体の移動先の位置の予測結果を示す移動先予測枠に基づく符号化指示を生成する。監視カメラ1は、符号化指示に基づいて、最新(例えばt=3)の撮像画像を符号化する。
【0078】
これにより、監視カメラ1は、監視カメラ1の画角内の撮像エリアを移動するターゲット(例えば人物PS1等の移動物体)を捉えた撮像画像を効率的かつ高精度に符号化できる。つまり、監視カメラ1は、撮像画像中において、ユーザに注目され易い移動先予測枠内の移動物体(例えば人物PS1)を低圧縮(つまり符号化処理時の符号量を大きく割り当て)でき、さらに、移動先予測枠外の背景部分を高圧縮(つまり符号化処理時の符号量を小さく割り当て)することで、撮像画像のデータを効率的かつ高精度に圧縮できる。
【0079】
また、監視カメラ1は、予測結果である移動先予測枠の位置(例えば人物AI2の位置を示す座標)を、その映像を取得した時(例えばt=2)のの移動物体の検出位置としてメモリ13に蓄積する。これにより、監視カメラ1は、AI処理部15の検出対象物である移動物体(例えば人物PS1)の移動ベクトルを、複数フレームの取得時刻と各時刻における同一IDの移動物体の検出位置を用いて高精度に算出できる。
【0080】
また、監視カメラ1は、予測結果である移動先予測枠に基づいて、最新(例えばt=3)の撮像画像中の移動先予測枠(例えば移動先予測枠WK1)内の画像の符号量を所定値より大きく、かつ移動先予測枠(例えば移動先予測枠WK1)外の画像の符号量を所定値より小さくして符号化する旨の符号化指示をエンコーダ14Aに送る。これにより、監視カメラ1は、移動先予測枠(例えば移動先予測枠WK1)内の画像(つまり移動物体の画像)を高解像度となるように圧縮でき、移動先予測枠(例えば移動先予測枠WK1)外の画像を低解像度となるように圧縮できるので、効率的かつ高精度な画像符号化を行える。
【0081】
また、監視カメラ1は、移動先予測枠(例えば移動先予測枠WK1)内の画像の符号量を、移動先予測枠内の端部から中心に向かって徐々に大きくなるよう符号化する旨の符号化指示をエンコーダ14Aに送る。これにより、監視カメラ1は、同じ移動先予測枠WK1内であっても、移動物体が実際に検知される確率が高いと考えられるエリアごとに符号量の重み付け(傾斜)を付ける符号量を設定することで、ユーザが注目しがちな移動物体の画質を劣化させないよう、かつ、符号化したデータのデータ量が大きくなりすぎないよう効率的に符号化処理できる。
【0082】
また、実施の形態1に係る監視カメラ1は、人工知能を搭載し、撮像エリアを第1の所定時間(例えば1/30(秒))ごとに撮像し、人工知能を用いて、撮像エリアが撮像された撮像画像中の移動物体を第1の所定時間より長い第2の所定時間(例えば100ミリ秒)ごとに検出する。監視カメラ1は、過去に撮像された撮像画像に基づいて検出された移動物体の検出位置および検出時刻を関連付けてメモリ13に記憶する。監視カメラ1は、移動物体の最新(例えばt=3)の検出位置(例えば人物AI2の位置)および過去の検出位置(例えば人物AIの位置)に基づいて、最新(例えばt=3)の撮像画像中の移動物体の移動先の位置を予測し、移動物体の移動先の位置の予測結果を示す移動先予測枠を最新(例えばt=3)の撮像画像にプロセッサ14において重畳する。監視カメラ1は、移動先予測枠が重畳された最新の撮像画像を外部装置(例えば監視用コンピュータPC1)に表示させる。
【0083】
これにより、監視カメラ1は、監視カメラ1の画角内の撮像エリアを移動するターゲット(例えば人物PS1等の移動物体)の移動先の位置を示す移動先予測枠を撮像画像中に的確に表示できる。従って、この撮像画像を閲覧したユーザは、撮像画像中において、移動物体(例えば人物PS1)の移動先を視覚的かつ直感的に把握できるので、監視業務の効率化を図ることができる。
【0084】
(実施の形態2)
実施の形態2では、監視カメラは、移動物体の最新の検出位置および過去の検出位置だけでなく移動物体の移動速度も加味して、最新の撮像画像中の移動物体が存在すると予測される移動先予測枠の大きさを変更する。
【0085】
ここでいう移動速度とは、撮像画像中の物体の移動速度(単位時間あたりに物体が何ピクセル移動したか)を表す。人物等の移動物体の移動速度が変化した場合、例えば、人物が加速をし続けた場合、その人物を囲うはずの移動先予測枠より人物が先を行くことになる。つまり、実施の形態1の方法では移動先予測枠の位置が移動物体の実際に検出される位置と合わない可能性がある。さらに、移動速度が大きいほど、実際の物体の位置と移動先予測枠の位置のずれが大きくなる。この課題を解決するため、実施の形態2では、監視カメラは、移動先予測枠を移動速度に合わせて拡大する。一方、人物等の移動物体の移動速度が遅い場合、実際の物体の位置と移動先予測枠のずれはそれほど大きくならず、移動先予測枠の大きさは変える必然性が乏しいと考えられる(
図6参照)。この場合には、監視カメラは、実施の形態1と同様な移動先予測枠の大きさ(サイズ)をそのまま採用するよう決定する。
【0086】
実施の形態2に係る監視カメラシステム100および監視カメラ1の内部構成は、実施の形態1に係る監視カメラシステム100および監視カメラ1の内部構成と同一である。このため、実施の形態2において、実施の形態1と重複する構成には同一の符号を付与して説明を簡略化あるいは省略し、異なる内容について説明する。
【0087】
図6は、実施の形態2において、3フレームごとに取得される撮像画像のフレームIMG1,IMG4,IMG7,IMG7A,IMG10,IMG10A中の人物PS1の移動先予測枠の一例を時系列に示す図である。
図6では、
図3と同様に、AIの検出出力が得られる100msごとの撮像画像(つまり、イメージセンサ12から取得された撮像画像)のフレームIMG1,IMG4,IMG7,IMG7A,IMG10,IMG10Aが図示されている。つまり、t=1の100ms後がt=2となり、同様に、t=2の100ms後がt=3となり、t=3の100ms後がt=4となっている。なお、
図6の説明において、
図3に示される要素と同一の要素については同一の符号を付与して説明を簡略化あるいは省略し、異なる内容について説明する。また、
図6では移動物体の一例として人物PS1を挙げ、移動態様を歩行として説明するが、移動態様は歩行に限定されないことは言うまでもない。
【0088】
[t=3について:早歩き(移動速度が速い)パターン]
AI処理部15は、イメージセンサ12から得られたt=3のフレームIMG7を入力してフレームIMG7中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG7中の人物PS1の検出結果はt=4で得られる(フレームIMG10参照)。つまり、
図6のt=4のフレームIMG10では、便宜的にt=4で撮像された人物PS1(黒塗りつぶし)とともに、t=2,3の各フレームIMG4,IMG7に基づくAI検出出力に相当する人物AI2,AI3(ドットハッチ)とが示されている。但し、t=4で実際にイメージセンサ12から取得される撮像画像のフレームIMG10には、人物AI2,AI3は映っていない。
【0089】
さらに、プロセッサ14は、最新(つまり現在であるt=3)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=2)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI1の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動速度を算出する。プロセッサ14は、この移動ベクトルおよび移動速度の算出結果を用いて、最新(つまり現在であるt=3)にイメージセンサ12から取得されたフレームIMG7において、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を、移動速度を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK3として求める。例えば、プロセッサ14は、移動速度が大きい場合(例えば所定値より大きい移動速度で早歩きしている)には、通常歩行時の移動先予測枠(例えば
図3の移動先予測枠WK1)よりも速度に比例した分だけ拡大した移動先予測枠WK3の位置を算出する。プロセッサ14は、移動先予測枠WK3の算出結果に基づいて、フレームIMG7の移動先予測枠WK3内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK3外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG7を符号化処理する。
【0090】
[t=4について:早歩き(移動速度が速い)パターン]
AI処理部15は、イメージセンサ12から得られたt=4のフレームIMG10を入力してフレームIMG10中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG10中の人物PS1の検出結果はt=4の次の100ms後に得られる。
【0091】
さらに、プロセッサ14は、最新(つまり現在であるt=4)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI3の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=3)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動速度を算出する。プロセッサ14は、この移動ベクトルおよび移動速度の算出結果を用いて、最新(つまり現在であるt=4)にイメージセンサ12から取得されたフレームIMG10において、移動物体(例えば人物PS1)の位置(言い換えると、t=3からの移動先)を、移動速度を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK4として求める。例えば、プロセッサ14は、移動速度がt=3よりもさらに大きい場合(例えば所定の速度以上で早歩きしている)には、t=3の移動先予測枠WK3よりも拡大した移動先予測枠WK4の位置を算出する。プロセッサ14は、移動先予測枠WK4の算出結果に基づいて、フレームIMG10の移動先予測枠WK4内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK4外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG10を符号化処理する。
【0092】
[t=3について:ゆっくり歩行(移動速度が遅い)パターン]
AI処理部15は、イメージセンサ12から得られたt=3のフレームIMG7Aを入力してフレームIMG7A中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG7A中の人物PS1の検出結果はt=4で得られる(フレームIMG10A参照)。つまり、
図6のt=4のフレームIMG10Aでは、便宜的にt=4で撮像された人物PS1(黒塗りつぶし)とともに、t=2,3の各フレームIMG4,IMG7Aに基づくAI検出出力に相当する人物AI2,AI3(ドットハッチ)とが示されている。但し、t=4で実際にイメージセンサ12から取得される撮像画像のフレームIMG10Aには、人物AI2,AI3は映っていない。
【0093】
さらに、プロセッサ14は、最新(つまり現在であるt=3)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=2)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI1の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動速度を算出する。プロセッサ14は、この移動ベクトルおよび移動速度の算出結果を用いて、最新(つまり現在であるt=3)にイメージセンサ12から取得されたフレームIMG7Aにおいて、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を、移動速度を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK5として求める。例えば、プロセッサ14は、移動速度が遅い場合には、実施の形態1に係る移動先予測枠WK1と同様の大きさを有する移動先予測枠WK5の位置を算出する。プロセッサ14は、移動先予測枠WK5の算出結果に基づいて、フレームIMG7Aの移動先予測枠WK5内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK5外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG7Aを符号化処理する。
【0094】
[t=4について:ゆっくり歩行(移動速度が遅い)パターン]
AI処理部15は、イメージセンサ12から得られたt=4のフレームIMG10Aを入力してフレームIMG10A中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG10A中の人物PS1の検出結果はt=4で得られる(フレームIMG10A参照)。
【0095】
さらに、プロセッサ14は、最新(つまり現在であるt=4)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI3の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=3)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動速度を算出する。プロセッサ14は、この移動ベクトルおよび移動速度の算出結果を用いて、最新(つまり現在であるt=4)にイメージセンサ12から取得されたフレームIMG10Aにおいて、移動物体(例えば人物PS1)の位置(言い換えると、t=3からの移動先)を、移動速度を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK6として求める。例えば、プロセッサ14は、移動速度が遅い場合には、実施の形態1に係る移動先予測枠WK2と同様の大きさを有する移動先予測枠WK6の位置を算出する。プロセッサ14は、移動先予測枠WK6の算出結果に基づいて、フレームIMG10Aの移動先予測枠WK6内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK6外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG10Aを符号化処理する。
【0096】
次に、実施の形態2に係る監視カメラ1の動作手順について、
図7を参照して説明する。
図7は、実施の形態2に係る監視カメラ1の動作手順例を時系列に示すフローチャートである。
図7の説明において、必要に応じて
図6を参照し、説明を分かり易くするために、
図6のt=2のタイミング以降の処理を説明する。また、
図7の説明において、
図4と重複する処理と同一の処理については同一のステップ番号を付与して説明を簡略化あるいは省略し、異なる内容について説明する。
【0097】
図7において、プロセッサ14は、ステップSt4で算出された移動ベクトルおよび移動速度とステップSt2で検出されたフレームIMG4中の移動物体(例えば人物PS1)の検出位置(座標)とを用いて、最新(つまり現在であるt=3)にイメージセンサ12から取得されたフレームIMG7において、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を、移動速度を加味して予測する(St11、t=3)。
【0098】
例えば、プロセッサ14は、移動速度が大きい場合(例えば所定の速度以上で早歩きしている)には、通常歩行時の移動先予測枠(例えば
図3の移動先予測枠WK1)よりも速度に比例した分だけ拡大した移動先予測枠WK3の位置を算出する。一方、例えば、プロセッサ14は、移動速度が遅い場合には、実施の形態1に係る移動先予測枠(例えば移動先予測枠WK1)と同様の大きさを有する移動先予測枠(例えば移動先予測枠WK5)の位置を算出する(St11、t=3)。プロセッサ14は、この予測結果である位置の座標を、移動物体(例えば人物PS1)の移動先予測枠(例えば移動先予測枠WK3あるいは移動先予測枠WK5)として求める。ステップSt11以降の処理は
図4と同一であるため、説明を省略する。
【0099】
以上により、実施の形態2に係る監視カメラ1は、移動物体(例えば人物PS1)の最新の検出位置および過去の検出位置と移動物体の移動速度とに基づいて、移動先予測枠の大きさを変更する。これにより、監視カメラ1は、移動物体(例えば人物PS1)が早歩きで移動している等のように、移動物体(例えば人物PS1)の移動速度も加味して移動先予測枠をより適切に決定できるので、予測位置が実際の位置とずれることを防ぎ、より効率的かつ高精度に画像符号化を実行できる。
【0100】
また、監視カメラ1は、移動物体(例えば人物PS1)の移動速度に比例して移動先予測枠(例えば移動先予測枠WK3,WK4)の大きさを拡大するよう変更する。これにより、監視カメラ1は、徐々に移動速度が増加する傾向にある移動物体(例えば人物PS1)の移動パターンに合わせて適応的に移動先予測枠(例えば移動先予測枠WK3,WK4)を決定できるので、より効率的かつ高精度に画像符号化を実行できる。
【0101】
なお、実施の形態2において、監視カメラ1(具体的にはプロセッサ14)は、移動物体(例えば人物PS1)の移動速度が早歩きのように所定値以上である場合にその移動速度に応じて、移動先予測枠の拡大率を異なるように変更してもよい。例えば、監視カメラ1は、人物PS1が時速4km/hで早歩きしている場合には、移動先予測枠の拡大率を1.3倍にして移動先予測枠の位置を算出してよい。また、監視カメラ1は、人物PS1が時速3km/hで早歩きしている場合には、移動先予測枠の拡大率を1.1倍にして移動先予測枠の位置を算出してよい。これにより、監視カメラ1は、例えば同じ早歩きでも人物PS1の身長あるいは歩幅、歩き方の相違にも対応して人物PS1の移動パターンに適応的に移動先予測枠を算出できて、より効率的かつ高精度な符号化処理を行える。
【0102】
(実施の形態3)
実施の形態3では、監視カメラは、移動物体の最新の検出位置および過去の検出位置だけでなく移動物体の移動方向も加味して、最新の撮像画像中の移動物体が存在すると予測される移動先予測枠の大きさを変更する。
【0103】
ここでいう移動方向とは、例えば人物等の移動物体が監視カメラから遠のく方向と、監視カメラに近づく方向とが考えられる。つまり、人物等の移動物体が監視カメラから遠のくと、撮像画像中の移動物体は徐々に小さくなるように撮像される。一方、人物等の移動物体が監視カメラに近づくと、撮像画像中の移動物体は徐々に大きくなるように撮像される(
図8参照)。
【0104】
実施の形態3に係る監視カメラシステム100および監視カメラ1の内部構成は、実施の形態1に係る監視カメラシステム100および監視カメラ1の内部構成と同一である。このため、実施の形態3において、実施の形態1と重複する構成には同一の符号を付与して説明を簡略化あるいは省略し、異なる内容について説明する。
【0105】
図8は、実施の形態3において、3フレームごとに取得される撮像画像のフレームIMG1,IMG4B,IMG4C,IMG7B,IMG7C,IMG10B,IMG10C中の人物PS1の移動先予測枠の一例を時系列に示す図である。
図8では、
図3と同様に、AIの検出出力が得られる100msごとの撮像画像(つまり、イメージセンサ12から取得された撮像画像)のフレームIMG1,IMG4B,IMG4C,IMG7B,IMG7C,IMG10B,IMG10Cが図示されている。つまり、t=1の100ms後がt=2となり、同様に、t=2の100ms後がt=3となり、t=3の100ms後がt=4となっている。なお、
図8の説明において、
図3に示される要素と同一の要素については同一の符号を付与して説明を簡略化あるいは省略し、異なる内容について説明する。また、
図8では移動物体の一例として人物PS1を挙げ、移動態様を歩行として説明するが、移動態様は歩行に限定されないことは言うまでもない。
【0106】
[t=2について:奥行き移動パターン]
AI処理部15は、イメージセンサ12から得られたt=2のフレームIMG4Bを入力してフレームIMG4B中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG4B中の人物PS1の検出結果はt=3で得られる(フレームIMG7B参照)。つまり、
図8のt=3のフレームIMG7Bでは、便宜的にt=3で撮像された人物PS1(黒塗りつぶし)とともに、t=1,2のフレームIMG1,IMG4Bに基づくAI検出出力に相当する人物AI1,AI2(ドットハッチ)とが示されている。但し、t=3で実際にイメージセンサ12から取得される撮像画像のフレームIMG7Bには、人物AI1,AI2は映っていない。
【0107】
監視カメラ1は、t=2のフレームIMG4Bをエンコーダ14Aで符号化処理する。なお、監視カメラ1は、t=2からt=3に至るまでの2フレームについても同様にイメージセンサ12から取得してエンコーダ14Aで符号化処理する。
【0108】
[t=3について:奥行き移動パターン]
AI処理部15は、イメージセンサ12から得られたt=3のフレームIMG7Bを入力してフレームIMG7B中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG7B中の人物PS1の検出結果はt=4で得られる(フレームIMG10B参照)。つまり、
図8のt=4のフレームIMG10Bでは、便宜的にt=4で撮像された人物PS1(黒塗りつぶし)とともに、t=2,3の各フレームIMG4B,IMG7Bに基づくAI検出出力に相当する人物AI2,AI3(ドットハッチ)とが示されている。但し、t=4で実際にイメージセンサ12から取得される撮像画像のフレームIMG10Bには、人物AI2,AI3は映っていない。
【0109】
さらに、プロセッサ14は、最新(つまり現在であるt=3)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=2)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI1の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動方向を算出する。プロセッサ14は、この移動ベクトルおよび移動方向の算出結果を用いて、最新(つまり現在であるt=3)にイメージセンサ12から取得されたフレームIMG7Bにおいて、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を、移動方向を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK7として求める。例えば、プロセッサ14は、人物PS1が徐々に小さくなる傾向を示す場合(言い換えると、人物PS1が監視カメラ1から遠のく方向に移動している)には、通常歩行時の移動先予測枠(例えば
図3の移動先予測枠WK1)よりも移動物体のサイズに合わせて縮小した移動先予測枠WK7の位置を算出する。プロセッサ14は、移動先予測枠WK7の算出結果に基づいて、フレームIMG7Bの移動先予測枠WK7内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK7外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG7Bを符号化処理する。
【0110】
[t=4について:奥行き移動パターン]
AI処理部15は、イメージセンサ12から得られたt=4のフレームIMG10Bを入力してフレームIMG10B中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG10B中の人物PS1の検出結果はt=4の次の100ms後に得られる。
【0111】
さらに、プロセッサ14は、最新(つまり現在であるt=4)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI3の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=3)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動方向を算出する。プロセッサ14は、この移動ベクトルおよび移動方向の算出結果を用いて、最新(つまり現在であるt=4)にイメージセンサ12から取得されたフレームIMG10Bにおいて、移動物体(例えば人物PS1)の位置(言い換えると、t=3からの移動先)を、移動方向を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK8として求める。例えば、プロセッサ14は、人物PS1がさらに徐々に小さくなる傾向を示す場合(言い換えると、人物PS1が監視カメラ1からより遠のく方向に移動している)には、t=3の移動先予測枠WK7よりもさらに縮小した移動先予測枠WK8の位置を算出する。プロセッサ14は、移動先予測枠WK8の算出結果に基づいて、フレームIMG10Bの移動先予測枠WK8内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK8外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG10Bを符号化処理する。
【0112】
[t=2について:手前移動パターン]
AI処理部15は、イメージセンサ12から得られたt=2のフレームIMG4Cを入力してフレームIMG4C中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG4C中の人物PS1の検出結果はt=3で得られる(フレームIMG7C参照)。つまり、
図8のt=3のフレームIMG7Cでは、便宜的にt=3で撮像された人物PS1(黒塗りつぶし)とともに、t=1,2のフレームIMG1,IMG4Cに基づくAI検出出力に相当する人物AI1,AI2(ドットハッチ)とが示されている。但し、t=3で実際にイメージセンサ12から取得される撮像画像のフレームIMG7Cには、人物AI1,AI2は映っていない。
【0113】
監視カメラ1は、t=2のフレームIMG4Cをエンコーダ14Aで符号化処理する。なお、監視カメラ1は、t=2からt=3に至るまでの2フレームについても同様にイメージセンサ12から取得してエンコーダ14Aで符号化処理する。
【0114】
[t=3について:手前移動パターン]
AI処理部15は、イメージセンサ12から得られたt=3のフレームIMG7Cを入力してフレームIMG7C中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG7C中の人物PS1の検出結果はt=4で得られる(フレームIMG10C参照)。つまり、
図8のt=4のフレームIMG10Cでは、便宜的にt=4で撮像された人物PS1(黒塗りつぶし)とともに、t=2,3の各フレームIMG4C,IMG7Cに基づくAI検出出力に相当する人物AI2,AI3(ドットハッチ)とが示されている。但し、t=4で実際にイメージセンサ12から取得される撮像画像のフレームIMG10Cには、人物AI2,AI3は映っていない。
【0115】
さらに、プロセッサ14は、最新(つまり現在であるt=3)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=2)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI1の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動方向を算出する。プロセッサ14は、この移動ベクトルおよび移動方向の算出結果を用いて、最新(つまり現在であるt=3)にイメージセンサ12から取得されたフレームIMG7Cにおいて、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を、移動方向を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK9として求める。例えば、プロセッサ14は、人物PS1が徐々に大きくなる傾向を示す場合(言い換えると、人物PS1が監視カメラ1に近づく方向に移動している)には、通常歩行時の移動先予測枠(例えば
図3の移動先予測枠WK1)よりも移動物体のサイズに合わせて拡大した移動先予測枠WK9の位置を算出する。プロセッサ14は、移動先予測枠WK9の算出結果に基づいて、フレームIMG7Cの移動先予測枠WK9内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK9外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG7Cを符号化処理する。
【0116】
[t=4について:手前移動パターン]
AI処理部15は、イメージセンサ12から得られたt=4のフレームIMG10Cを入力してフレームIMG10C中の移動物体(例えば人物PS1)を検出する。AI処理部15によるフレームIMG10C中の人物PS1の検出結果はt=4の次の100ms後に得られる。
【0117】
さらに、プロセッサ14は、最新(つまり現在であるt=4)の時点でAI処理部15により検出された移動物体(例えば人物PS1)の検出位置(つまり人物AI3の位置)とメモリ13に蓄積された過去(例えば直近の過去であるt=3)の同じ移動物体(例えば人物PS1)の検出位置(つまり人物AI2の位置)とに基づいて、その移動物体(例えば人物PS1)の移動ベクトルおよび移動方向を算出する。プロセッサ14は、この移動ベクトルおよび移動方向の算出結果を用いて、最新(つまり現在であるt=4)にイメージセンサ12から取得されたフレームIMG10Cにおいて、移動物体(例えば人物PS1)の位置(言い換えると、t=3からの移動先)を、移動方向を加味して予測する。プロセッサ14は、この予測結果である位置を、移動物体(例えば人物PS1)の移動先予測枠WK10として求める。例えば、プロセッサ14は、人物PS1がさらに徐々に大きくなる傾向を示す場合(言い換えると、人物PS1が監視カメラ1により近づく方向に移動している)には、t=3の移動先予測枠WK9よりもさらに拡大した移動先予測枠WK10の位置を算出する。プロセッサ14は、移動先予測枠WK10の算出結果に基づいて、フレームIMG10Cの移動先予測枠WK10内の画像部分の符号量を所定値より大きくしかつ移動先予測枠WK10外の画像部分の符号量を所定値より小さくして符号化処理する旨の符号化指示を生成する。エンコーダ14Aは、この符号化指示に従って、フレームIMG10Cを符号化処理する。
【0118】
次に、実施の形態3に係る監視カメラ1の動作手順について、
図9を参照して説明する。
図9は、実施の形態3に係る監視カメラ1の動作手順例を時系列に示すフローチャートである。
図9の説明において、必要に応じて
図8を参照し、説明を分かり易くするために、
図8のt=2のタイミング以降の処理を説明する。また、
図9の説明において、
図4と重複する処理と同一の処理については同一のステップ番号を付与して説明を簡略化あるいは省略し、異なる内容について説明する。
【0119】
図9において、プロセッサ14は、ステップSt4で算出された移動ベクトルおよび移動方向とステップSt2で検出されたフレームIMG4B,IMG4C中の移動物体(例えば人物PS1)の検出位置(座標)とを用いて、最新(つまり現在であるt=3)にイメージセンサ12から取得されたフレームIMG7B、IMG7Cにおいて、移動物体(例えば人物PS1)の位置(言い換えると、t=2からの移動先)を、移動方向を加味して予測する(St21、t=3)。
【0120】
例えば、プロセッサ14は、移動方向がt=1よりも奥行き方向を示す場合には、通常歩行時(例えば監視カメラ1との距離がほぼ一定に保たれる時)の移動先予測枠(例えば
図3の移動先予測枠WK1)よりも移動物体のサイズに合わせて縮小した移動先予測枠(例えば移動先予測枠WK7)の位置を算出する。一方、例えば、プロセッサ14は、移動方向がt=1よりも手前方向を示す場合には、通常歩行時(例えば監視カメラ1との距離がほぼ一定に保たれる時)の移動先予測枠(例えば
図3の移動先予測枠WK1)よりも移動物体のサイズに合わせて拡大した移動先予測枠(例えば移動先予測枠WK8)の位置を算出する(St21)。プロセッサ14は、この予測結果である位置の座標を、移動物体(例えば人物PS1)の移動先予測枠(例えば移動先予測枠WK7あるいは移動先予測枠WK8)として求める。ステップSt21以降の処理は
図4と同一であるため、説明を省略する。
【0121】
以上により、実施の形態3に係る監視カメラ1は、移動物体の最新の検出位置および過去の検出位置と移動物体の移動方向とに基づいて、移動先予測枠の大きさを変更する。これにより、監視カメラ1は、移動物体(例えば人物PS1)の移動方向に合わせて移動先予測枠を適応的に決定できるので、より効率的かつ高精度に画像符号化を実行できる。
【0122】
また、監視カメラ1は、移動物体の移動方向に基づいて移動物体が監視カメラ1から遠のく方向に移動していると判定した場合に、移動先予測枠の大きさを徐々に縮小するよう変更する。移動物体が監視カメラ1から遠のく方向に移動していると、監視カメラ1により撮像される撮像画像中の移動物体は徐々に小さくなっていく。監視カメラ1は、この原理を利用して、監視カメラ1から遠ざかる移動物体の移動先予測枠をより適切に決定できるので、必要以上に大きな移動先予測枠を設ける必要がなくなり、より効率的かつ高精度に画像符号化を実行できる。
【0123】
また、監視カメラ1は、移動物体の移動方向に基づいて移動物体が監視カメラ1から近づく方向に移動していると判定した場合に、移動先予測枠の大きさを徐々に拡大するよう変更する。移動物体が監視カメラ1に近づく方向に移動していると、監視カメラ1により撮像される撮像画像中の移動物体は徐々に大きくなっていく。監視カメラ1は、この原理を利用して、監視カメラ1に近づく移動物体の移動先予測枠をより適切に決定できるので、移動先予測枠の大きさが実際の物体より小さくなる可能性を低減でき、より効率的かつ高精度に画像符号化を実行できる。
【0124】
以上、図面を参照しながら各種の実施の形態について説明したが、本開示はかかる例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例、修正例、置換例、付加例、削除例、均等例に想到し得ることは明らかであり、それらについても当然に本開示の技術的範囲に属するものと了解される。また、発明の趣旨を逸脱しない範囲において、上述した各種の実施の形態における各構成要素を任意に組み合わせてもよい。
【0125】
なお、実施の形態1,2,3はそれぞれ独立した内容でもよいし、実施の形態1,2,3を適宜組み合わせて構成してもよい。
【産業上の利用可能性】
【0126】
本開示は、画角内の撮像エリアを移動するターゲットを捉えた撮像画像を効率的かつ高精度に符号化する監視カメラ、画像符号化方法およびプログラムとして有用である。
【符号の説明】
【0127】
1 監視カメラ
11 レンズ
12 イメージセンサ
13 メモリ
14 プロセッサ
14A エンコーダ
14B デコーダ
15 AI処理部
15A AI演算処理部
15B 学習モデルメモリ
17 通信IF回路
19 外部記憶媒体IF
20 IR照明部
100 監視カメラシステム
M1 外部記憶媒体