(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-02
(45)【発行日】2023-10-11
(54)【発明の名称】動きセグメント化のための方法およびシステム
(51)【国際特許分類】
G06T 7/215 20170101AFI20231003BHJP
H04N 23/60 20230101ALI20231003BHJP
H04N 23/71 20230101ALI20231003BHJP
【FI】
G06T7/215
H04N23/60 500
H04N23/71
【外国語出願】
(21)【出願番号】P 2021160375
(22)【出願日】2021-09-30
【審査請求日】2022-11-25
(32)【優先日】2020-10-14
(33)【優先権主張国・地域又は機関】EP
【早期審査対象出願】
(73)【特許権者】
【識別番号】502208205
【氏名又は名称】アクシス アーベー
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】イェンソン, ジミー
(72)【発明者】
【氏名】イェップソン カーリン, ヨーアン
【審査官】山田 辰美
(56)【参考文献】
【文献】特開2009-159598(JP,A)
【文献】国際公開第2019/193702(WO,A1)
【文献】特開2011-101336(JP,A)
【文献】特開2018-182569(JP,A)
【文献】米国特許出願公開第2018/0315199(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
H04N 23/60
H04N 23/71
(57)【特許請求の範囲】
【請求項1】
ビデオストリームにおける動きセグメント化の方法(100)であって、
a)カメラ(301)から画像フレームのシーケンス(400)を取得する(101)ことと、
b)前記画像フレームのシーケンス(400)からの第1の画像フレーム(401)を複数の画像ブロック(403)に分割する(102)ことと、
c)前記複数の画像ブロック(403)の各画像ブロックについて、前記画像ブロックを、前記画像フレームのシーケンス(400)からの第2の画像フレーム(402)の対応する基準画像ブロック(404)と比較する(103)ことであって、これにより、前記画像ブロック(403)と前記基準画像ブロック(404)との間の不同性の尺度を提供する、前記画像ブロックを比較する(103)ことと、
d)閾値より小さい不同性の尺度を有する画像ブロックについて、全く運動がないかまたは制限された運動があるブロックであるとして前記画像ブロックを廃棄し(104a)、前記閾値より大きい不同性の尺度を有する画像ブロックについて、運動があるブロックであるとして前記画像ブロックを維持し(104b)、前記画像ブロックを新しい複数の画像ブロック(405)にさらに分割することと、
e)停止条件が満たされる(105a)まで、ステップc)~d)を反復することと、
f)前記新しい複数の画像ブロックに基づいて、前記画像フレームのシーケンス(400)内の運動エリア(408)を示す動きマスク(407)を生成する(106)ことと、
g)前記動きマスク(407)に基づいて、
ノイズフィルタリング、露出、および着色のうちの1つ以上を含むさらなる画像処理を実施する(107)ことと
を含む、ビデオストリームにおける動きセグメント化の方法(100)。
【請求項2】
前記動きマスク(407)は、ステップc)~d)の最後の反復の前記新しい複数の画像ブロックに対応する、請求項1に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項3】
前記第2の画像フレーム(402)は前記第1の画像フレーム(401)に時間的に先行する画像フレームであるか、または、前記第2の画像フレーム(402)は基準画像フレームである、請求項1または2に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項4】
前記画像ブロックを、前記第2の画像フレーム(402)の対応する基準画像ブロックと比較する前記ステップは、ピクセル間比較またはピクセルの群の平均の比較または前記画像ブロック内の全てのピクセルの和の比較を含む、請求項1~3のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項5】
前記画像ブロックを新しい複数の画像ブロックにさらに分割する前記ステップは、選択される数の画像ブロックについてのみ実施され、不同性の最大尺度を有する前記画像ブロックが選択される、請求項1~4のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項6】
ステップc)は、選択される数の画像ブロックについてのみ実施され、1つまたは複数の予め規定された画像エリア内の前記画像ブロックが優先順位付けされる、請求項1~5のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項7】
ステップc)は、選択される数の画像ブロックについてのみ実施され、前記画像ブロックが、前記画像ブロックの予め規定された画像特徴に基づいて優先順位付けされる、請求項1~6のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項8】
前記第1の画像フレーム(401)を複数の画像ブロック(403)に分割する前記ステップは、前記第1の画像フレームを分析することなく、予め規定されたまたは構成可能な画像ブロックサイズに基づいて実施される、請求項1~7のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項9】
少なくとも前記第1の画像フレーム(401)、好ましくはまた前記第2の画像フレーム(402)は、未処理画像センサーデータである、請求項1~8のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項10】
前記停止条件(105)は、ステップc)~d)の予め規定された回数の反復であるか、または、前記停止条件(105)は最大処理時間である、請求項1~9のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項11】
前記方法(100)は、一連の選択された画像フレームについて反復され、実質的にリアルタイムに実施される、請求項1~10のいずれか一項に記載のビデオストリームにおける動きセグメント化の方法(100)。
【請求項12】
命令を有するコンピュータプログラムであって、前記命令は、コンピューティングデバイスまたはコンピューティングシステムによって実行されると、請求項1~
11のいずれか一項に記載されるビデオストリームにおける動きセグメント化の方法を、前記コンピューティングデバイスまたはコンピューティングシステムに実施させる、コンピュータプログラム。
【請求項13】
画像フレームにおける動きセグメント化の方法(200)であって、
a)第1の画像フレーム(401)を複数の画像ブロック(403)に分割する(201)ステップと、
b)前記複数の画像ブロック(403)の各画像ブロックについて、前記画像ブロック(403)を、第2の画像フレーム(402)の対応する基準画像ブロック(404)と比較する(202)ステップであって、それにより、前記画像ブロック(403)と前記基準画像ブロック(404)との間の不同性の尺度を提供する、前記画像ブロック(403)を比較する(202)ステップと、
c)閾値より小さい不同性の尺度を有する画像ブロックについて、全く運動がないかまたは制限された運動があるブロックであるとして前記画像ブロックを廃棄し(203a)、前記閾値より大きい不同性の尺度を有する画像ブロックについて、運動があるブロックであるとして前記画像ブロックを維持し(203b)、前記画像ブロックを新しい複数の画像ブロックにさらに分割するステップと、
d)停止条件が満たされる(204a)まで、ステップb)~c)を反復し、ステップb)~c)の最後の反復後の前記新しい複数の画像ブロックに基づいて前記画像フレームの運動エリアを示す、結果として得られる動きセグメント化を提供する(205)ステップと
を含む、画像フレームにおける動きセグメント化の方法(200)。
【請求項14】
画像処理システム(300)であって、
画像フレームのシーケンス(400)を取り込むための少なくとも1つのカメラ(301)と、
処理ユニットまたはハードウェアアクセラレータ(303、304)とを備え、前記処理ユニットまたはハードウェアアクセラレータ(303、304)は、
i.前記カメラ(301)から前記画像フレームのシーケンス(400)を取得するステップと、
ii.前記画像フレームのシーケンス(400)からの第1の画像フレーム(401)を複数の画像ブロック(403)に分割するステップと、
iii.前記複数の画像ブロック(403)の各画像ブロックについて、前記画像ブロック(403)を、前記画像フレームのシーケンス(400)からの第2の画像フレーム(402)の対応する基準画像ブロック(404)と比較するステップであって、前記画像ブロック(403)と前記基準画像ブロック(404)との間の不同性の尺度を提供する、前記画像ブロック(403)を比較するステップと、
iv.閾値より小さい不同性の尺度を有する画像ブロックについて、全く運動がないかまたは制限された運動があるブロックであるとして前記画像ブロックを廃棄し、前記閾値より大きい不同性の尺度を有する画像ブロックについて、運動があるブロックであるとして前記画像ブロックを維持し、前記画像ブロックを新しい複数の画像ブロック(405)にさらに分割するステップと、
v.停止条件が満たされるまでステップiii)~iv)を反復し、前記新しい複数の画像ブロックに基づいて前記画像フレームのシーケンス(400)の運動エリアを示す、結果として得られる動きセグメント化を提供するステップと
を実施するように構成される、画像処理システム(300)。
【請求項15】
前記処理ユニットまたはハードウェアアクセラレータ(303、304)あるいはさらなる処理ユニットは、
vi.前記新しい複数の画像ブロックに基づいて、動きマスク(407)を生成するステップと、
vii.前記少なくとも1つのカメラ(301)の設定を調整するステップ
、および/または
、前記動きマスク(407)に基づいて
、ノイズフィルタリング、露出、および着色のうちの1つ以上を含むさらなる画像処理を実施するステップと
を実施するように構成される、請求項
14に記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像フレームにおける、特にカメラの画像センサからの画像フレームのシーケンスにおける動きセグメント化のためのコンピュータ実装式方法およびシステムに関する。同じ目的のためのコンピュータプログラムも開示される。
【背景技術】
【0002】
画像処理は、任意の画像に適用される任意の処理を一般に指す。処理は、種々のタイプの関数およびアルゴリズムを使用して画像をフィルタリングすることまたは強調することを一般に含む。画像は、典型的には、ビデオカメラによって取り込まれる画像または静止画像であり、また、例えば、監視カメラ、デジタルネットワークカメラ、パン/チルト/ズーム(PTZ:pan/tilt/zoom)カメラ、室外カメラ等を含むことができる。
【0003】
カメラからの画像フレームのシーケンス、例えば、ビデオストリームにおける画像フレームのシーケンスを処理するとき、画像シーケンス内のどのエリアが動きを含むかおよびどのエリアが動きを含まないかを知ることは有利である場合がある。或る例として、ノイズフィルタリングの場合、異なるエリアがどの程度厳しいレベルでフィルタリングされるべきであるかを制御するために、画像のどの部分が動いているかを知ることは、有利またはさらに重要である場合がある。
【0004】
画像処理における典型的な問題は、所与の目的のために、適切なレベルで運動を正しく判定することである。画像フレームのシーケンスにおいて運動を判定するための方法の一例は、隣接画像フレーム間のピクセルごとの比較を含む。直前の画像フレームに対して或る閾値より大きく異なるピクセルは、動きを含むものとして規定される。この方法は正確であるとすることができるが、尺度は、典型的には、ノイズに敏感でもある。プロセスは、計算的に重く、したがって、ビデオのリアルタイム処理にとって必ずしも適切ではない。他の既存の方法は、オブジェクトが動いているか否かを判定するために、オブジェクトを識別し追跡することに焦点を当てる。そのような方法は、オブジェクトを識別し追跡するときの困難さ、および、変化する背景による不正確さ等の他の欠点を有する場合がある。
【0005】
したがって、画像フレームの処理における運動検出の、改善されかつ効率的な解決策についての必要性が存在し、方法は、動きセグメント化の処理リソース、必要とされる速度、および/または異なる精度レベル等の条件に容易に適合することができる。
【発明の概要】
【0006】
本開示の1つの目的は、画像フレームにおける動きセグメント化のための方法およびシステムを提供することであり、方法およびシステムは、動作条件、動きセグメント化における必要とされる精度、および/または利用可能な処理リソースに適合することができる、実質的にリアルタイムの動きセグメント化を実施するのに特に適する。本開示の第1の態様は、ビデオストリームにおける動きセグメント化のコンピュータ実装式方法に関し、方法は、
a)カメラから画像フレームのシーケンスを取得するステップと、
b)画像フレームのシーケンスからの第1の画像フレームを複数の画像ブロックに分割するステップと、
c)複数の画像ブロックの各画像ブロックについて、画像ブロックを、画像フレームのシーケンスからの第2の画像フレームの対応する基準画像ブロックと比較するステップであって、それにより、画像ブロックと基準画像ブロックとの間の不同性の尺度を提供する、比較するステップと、
d)閾値より小さい不同性の尺度を有する画像ブロックについて:全く運動がないかまたは制限された運動があるブロックであるとして画像ブロックを廃棄し;閾値より大きい不同性の尺度を有する画像ブロックについて:運動があるブロックであるとして画像ブロックを維持し、画像ブロックを新しい複数の画像ブロックにさらに分割するステップと、
e)停止条件が満たされるまで、ステップc)~d)を反復するステップと、
f)新しい複数の画像ブロックに基づいて、画像フレームのシーケンス内の運動エリアを示す動きマスクを生成するステップと、
g)動きマスクに基づいて、ノイズフィルタリング、露出、および/または着色等のさらなる画像処理を実施するステップとを含む。
【0007】
各ピクセルを比較することによって、第1の画像フレームと第2の画像フレームとの間の運動を判定する代わりに、画像は、別々に処理される複数の画像ブロックに分割される。好ましくは、異なる時間に取り込まれる画像フレームの対応するブロックを比較するために、同じ分割が第1の画像フレームおよび第2の画像フレームに適用される。当業者によって理解されることになるように、第1の画像フレームの画像ブロックを第2の画像フレームの対応する基準画像ブロックと比較するステップは、例えば、平均ピクセル比較を含む、幾つかの考えられる比較方法を含むことができる。ブロックレベルでの比較は、画像ブロックと基準画像ブロックとの間の不同性の尺度の提供を含む。不同性の尺度は、その後、不同性閾値と比較される。不同性の尺度が、閾値であって、画像ブロックの境界内で、第1の画像フレームと第2の画像フレームとの間に運動が全く存在しないかまたはほとんど存在しないことを示す、閾値より小さい場合、画像ブロックは、全く運動がないかまたは制限された運動がある画像ブロックとして分類され、画像ブロックは、さらなる分析から廃棄される。不同性の尺度が、閾値であって、画像ブロックの境界内で、第1の画像フレームと第2の画像フレームとの間に運動が存在することを示す、閾値より大きい場合、画像ブロックは、運動がある画像ブロックとして分類され、画像ブロックは、さらなる分析のためにループ内に維持される。全ての画像ブロックが、運動がある、あるいは、まったく運動がないかまたは制限された運動がある画像ブロックとして分類されると、運動がある画像ブロックは、新しい複数のより小さい画像ブロックにさらに分割される。第1の画像フレームの画像ブロックと第2の画像フレームの画像ブロックとの比較は、その後、上記で説明した新しい複数の画像ブロックについて実施することができる。画像ブロックを分割するステップ、閾値と比較するステップ、および画像ブロックを分類するステップは、停止条件が満たされるまで反復することができる。停止条件は、例えば、予め規定された回数の反復が実施されたこと、または、最大処理時間が動きセグメント化のタスクのために使用されたこと、であるとすることができる。
【0008】
動きセグメント化の現在開示されている方法の1つの利点は、それが、処理リソース、動きマスクを提供するための必要とされる速度および時間、および動きセグメント化がどれほど詳細である必要があるか等の条件に対して柔軟にかつ容易に適合可能であることである。或る例として、閾値レベルを調整することによって、廃棄されることになる画像ブロックの数および維持されることになる画像ブロックの数が影響を受けることができる。これが、例えば、ノイズ感度を調整するために有用である場合があるが、それを、より少数のまたはより多くの画像ブロックを廃棄する手段として、同時に使用することができる。さらなる例は、複数のまたは新しい複数の画像ブロックへの分割に関する。各画像ブロックを4つ(2×2)の新しいブロックに分割することは、或る用途にとって適する場合があり、一方、他の用途の場合、画像ブロックを、9(3×3)のまたは16(4×4)の新しい画像ブロックに分割することがより有用である。そのような決定は、例えば、廃棄されるブロックの数、動きマスクが送出される必要がある前の残りのプロセス時間、不同性の一般的なレベル等に応じて、動きセグメント化プロセス中に調整することもできる。
【0009】
そのため、動きセグメント化の現在開示されている方法は、柔軟性があると共に、方法がそこで使用される用途によって必要とされる程度に速い反復方法を提供する。方法は、おおよその結果を伴って即座に実施することができる、または、より長い時間の間に実施され、したがって、より詳細な動きマスクを提供することができる。幾つかの用途において、画像フレームの処理は、リアルタイムまたは実質的にリアルタイムであるとすることができる。したがって、動きセグメント化の現在開示されている方法は、実質的にリアルタイムに実施することができ、生成される動きマスクは、例えば、ノイズフィルタリングのために、または、露出時間および利得等の、カメラおよび/または画像センサの設定を制御するために使用される。露出制御の目的は、動きぼけを回避するために、シーン内の最も速い移動オブジェクトに露出を適合させることであるとすることができる。そのため、画像処理方法は、画像センサから取得される画像フレームのシーケンスについて反復して実施することができる。
【0010】
本開示は、画像処理システムにさらに関し、画像処理システムは、
順次画像フレームを取り込むための少なくとも1つのカメラと、
処理ユニットまたはハードウェアアクセラレータとを備え、処理ユニットまたはハードウェアアクセラレータは、
i.カメラから画像フレームのシーケンスを取得するステップと、
ii.画像フレームのシーケンスからの第1の画像フレームを複数の画像ブロックに分割するステップと、
iii.複数の画像ブロックの各画像ブロックについて、画像ブロックを、画像フレームのシーケンスからの第2の画像フレームの対応する基準画像ブロックと比較するステップであって、画像ブロックと基準画像ブロックとの間の不同性の尺度を提供する、比較するステップと、
iv.閾値より小さい不同性の尺度を有する画像ブロックについて:全く運動がないかまたは制限された運動があるブロックであるとして画像ブロックを廃棄し;閾値より大きい不同性の尺度を有する画像ブロックについて:運動があるブロックであるとして画像ブロックを維持し、画像ブロックを新しい複数の画像ブロックにさらに分割するステップと、
v.停止条件が満たされるまでステップiii)~iv)を反復し、新しい複数の画像ブロックに基づいて画像フレームのシーケンスの運動エリアを示す、結果として得られる動きセグメント化を提供するステップと
を実施するように構成される。
【0011】
本発明は、命令を有するコンピュータプログラムにさらに関し、命令は、コンピューティングデバイスまたはコンピューティングシステムによって実行されると、ビデオストリームにおける動きセグメント化の現在開示されている方法または画像フレームにおける動きセグメント化の方法の任意の実施形態を、コンピューティングデバイスまたはシステムに実施させる。本文脈におけるコンピュータプログラムは、幅広く解釈され、また、例えば、PC上で実行されるコンピュータプログラム、あるいは、監視システムまたはネットワーク内に配置されたモニタリングデバイスを備える任意のシステムの一部として実行されるように適合されるコンピュータプログラムを含むものとする。
【0012】
本発明は、動き検出のための現在開示されている方法およびシステムに対して例示的であり制限的でない添付図面を参照して以下で説明される。
【図面の簡単な説明】
【0013】
【
図1】ビデオストリームにおける動きセグメント化の現在開示されている方法の一実施形態のフローチャートである。
【
図2】画像フレームにおける動きセグメント化の現在開示されている方法の一実施形態のフローチャートである。
【
図3】動きセグメント化のための現在開示されている画像処理システムの或る実施形態の概略図である。
【
図4】動きセグメント化のための現在開示されている画像処理システムのさらなる実施形態の概略図である。
【
図5】2つの画像フレーム間で動きを検出するプロセスの或る例を示す図である。
【
図6】一連の画像フレーム内の2つの画像フレーム間の動きを検出するプロセスのさらなる例を示す図である。
【発明を実施するための形態】
【0014】
本開示は、第1の実施形態によれば、ビデオストリームにおける動きセグメント化の方法に関する。本開示の文脈におけるビデオストリームは、画像フレームのシーケンスと考えることができる。動きセグメント化の方法は、画像フレームのシーケンス内の画像フレームの任意の2つの画像フレームに適用することができる。第2の画像フレームは、第1の画像フレームに時間的に先行する画像である、または、基準画像フレームであるとすることができる。基準画像フレームは、背景画像または生成された画像であるとすることができる。さらに、基準画像フレームは移動平均であるとすることができ、全く運動がないかまたは制限された運動があるエリアは更新されない。そのような基準画像フレームは、空間的にフィルタリングされた基準画像フレームであるとすることもできる。本開示の文脈における空間的にフィルタリングされた基準画像の使用は、ビデオストリームにおける動きセグメント化の現在開示されている方法と比較して、信号対ノイズ比(SNR)を改善することができる。画像フレームのシーケンスは、典型的には、デジタルカメラ等のカメラから取得されることになる。したがって、方法は、任意選択で、任意の適切なカメラまたはモニタリングカメラであるとすることができるカメラから画像フレームのシーケンスを取得する第1のステップを含むことができる。画像フレームは、その結果、順次カメラ画像であるとすることができる。
【0015】
方法は、画像フレームのシーケンスからの第1の画像フレームを複数の画像ブロックに分割するステップをさらに含む。画像ブロックは、これに関して、第1の画像フレームのサブエリアと考えることができる。或る例として、第1の画像フレームを、4つの画像ブロックに分割することができる。
【0016】
さらなるステップにおいて、複数の画像ブロックの各画像ブロックについて、画像ブロックは、画像フレームのシーケンスからの第2の画像フレームの対応する基準画像ブロックと比較される。実際には、これは、第2の画像フレームも、対応する基準画像ブロックに分割されることを意味する。画像ブロックおよび基準画像ブロックは、順次にまたは並列に1つずつ比較される。方法は、各画像ブロックと対応する基準画像との間の不同性の尺度を提供するステップをさらに含むことができる。以下でさらに詳細に説明される異なる画像分析技法が、このために利用可能である。不同性の尺度は、画像ブロック対における考えられる動きに関する情報を提供することができる。閾値より小さい不同性の尺度を有する画像ブロックについて、全く運動が存在しないかまたは制限された運動が存在することを仮定することができる。したがって、これらの画像ブロックを、廃棄し、さらなる分析から排除することができる。閾値より大きい不同性の尺度を有する画像ブロックについて、画像ブロック内に運動が存在すること、または、ノイズ以外の何か他のものが、第1の画像フレームと第2の画像フレームとの間の画像ブロック内で起こったことを仮定することができる。したがって、これらの画像ブロックは、さらなる分析のために維持することができる。
【0017】
方法における次のステップは、閾値より大きい不同性の尺度を有する画像ブロックを新しい複数の画像ブロックにさらに分割することである。これは、閾値より小さい不同性の尺度を有する画像ブロックについて、さらなるブロック分割が必要とされない、すなわち、閾値より大きい不同性の尺度を有する画像ブロックのみが分割されることも意味する。閾値より小さい不同性の尺度を有する画像ブロックは、全く運動がないかまたは制限された運動があるブロックとして廃棄され、分類される。本開示の文脈における(閾値より)「大きい(greater)」は、「以上(greater or equal)」を指すことができる、すなわち、不同性の尺度が閾値と同じである場合を含む。同様に、(閾値より)「小さい(less)」は、不同性の尺度が閾値と同じである場合を含むかまたは排除することができる。分割は、画像ブロックの新しい対が比較されるように、第1の画像フレームと第2のフレームの両方について行われる。新しい複数の画像ブロックは、ここで、上記で説明した比較において言及された画像ブロックに取って代わる。そのため、1つのラウンドのステップd)における結果として得られる「新しい複数の画像ブロック(new plurality of image blocks)」は、次のラウンドのステップc)の比較のために使用される「画像ブロック(image blocks)」であるとすることができる。換言すれば、シーケンスは、1)画像フレームが複数の画像ブロックに分割されること、2)一部の画像ブロックが、比較に基づいて選択され、その後、新しい複数の画像ブロックにさらに分割されること、3)分割および比較が反復されるにつれて、全ての新しいラウンドについて、1つのラウンドの「新しい複数の画像ブロック(new plurality of image blocks)」が、次のラウンドで比較される「画像ブロック(image blocks)」に「なる(become)」ことと考えることができる。新しいラウンドの比較は、新しい複数の画像ブロックについて開始し、再び、閾値より小さい不同性の尺度を有する画像ブロックは、全く運動がないかまたは制限された運動があるブロックとして廃棄され、一方、閾値より大きい不同性の尺度を有する画像ブロックは、動きがあるブロックであるとして維持される。これらのブロックは、その後、停止条件が満たされるまで、さらに分割することができる等である。停止条件は、例えば、所定の回数の反復が実施されたこと、または、最大処理時間が、動きセグメント化のタスクのために使用されたこと、または、任意の他の有用な停止条件であるとすることができる。
【0018】
最後の反復後に閾値より大きい不同性の尺度を有する画像ブロック、すなわち、最小の分析ブロックサイズにおいて運動を有する画像ブロックに基づいて、動きマスクを生成することができる。動きマスクに基づいて、ノイズフィルタリング、露出、着色、および/または画像センサおよび/またはカメラの設定を制御すること等の他のタスクを実施することができる。
【0019】
本開示は、第2の実施形態によれば、画像フレームおける動きセグメント化の方法に関し、方法は、
a)第1の画像フレームを複数の画像ブロックに分割するステップと、
b)複数の画像ブロックの各画像ブロックについて、画像ブロックを、第2の画像フレームの対応する基準画像ブロックと比較するステップであって、それにより、画像ブロックと基準画像ブロックとの間の不同性の尺度を提供する、比較するステップと、
c)閾値より小さい不同性の尺度を有する画像ブロックについて:全く運動がないかまたは制限された運動があるブロックであるとして画像ブロックを廃棄し;閾値より大きい不同性の尺度を有する画像ブロックについて:運動があるブロックであるとして画像ブロックを維持し、画像ブロックを新しい複数の画像ブロックにさらに分割するステップと、
d)停止条件が満たされるまで、ステップb)~c)を反復し;最後の反復後に新しい複数の画像ブロックに基づいて画像フレームの運動エリアを示す、結果として得られる動きセグメント化を提供するステップとを含む。
【0020】
本開示の範囲内で、開示される任意の実施形態は、上記で説明した、ビデオストリームにおける動きセグメント化の方法および画像フレームにおける動きセグメント化の方法のうちの任意の方法に適用することができる。
【0021】
実施形態のうちの任意の実施形態において、少なくとも第1の画像フレーム、好ましくはまた第2の画像フレームは、未処理画像センサーデータである。開示される動きセグメント化方法を即座に実施する柔軟性および可能性は、方法を、未処理画像データに作用させ、画像フレームのさらなる処理のために、生成される動きマスクを使用するのに適したものにする。
【0022】
画像ブロック、ブロック分割
本開示の文脈における「画像ブロック(image block)は、画像フレーム又は」他の画像ブロックのサブエリアを指す。画像フレームは、1920×1080ピクセルまたは3840×2160ピクセル等の所与の数のピクセルを有する。本開示によれば、画像フレームは画像ブロックに分割することができる。1920×1080ピクセルの画像フレームが、例えば、4つの等しい画像ブロックに分割される場合、各ブロックは480×270ピクセルであることになる。動きセグメント化の現在開示されている方法の一実施形態において、画像フレームを複数の画像ブロックに分割するステップ(および同様に、画像ブロックを新しい複数の画像ブロックにさらに分割するステップ)は、画像ブロック間に全くオーバーラップを含まないかまたは実質的に全くオーバーラップを含まない。
図5の例に示すように、第1の画像フレーム(401)は4つの画像ブロック(403a;403b;403c;403d)に分割される。見てわかるように、4つの画像ブロック(403a;403b;403c;403d)は、オーバーラップが存在しないため、第1の画像フレームを共に構成する。しかしながら、オーバーラップする画像ブロックを使用することおよび/または画像ブロック間にギャップを有することは、動きセグメント化の現在開示されている方法についてのオプションとして排除されない。分割は、1ピクセルより大きい新しい画像ブロックをもたらす任意の適切な分割であうとすることができる。好ましくは、画像フレームは、2~10の画像ブロックに分割される。さらなる分割において、各画像ブロックは、2~10の新しい画像ブロックにさらに分割することができる等である。一実施形態において、画像フレームまたは画像ブロックは、縁ブロックによって囲まれる中央ブロックを常に有するために、3×3ブロックに常に分割される。代替の実施形態において、画像フレームまたは画像ブロックは2×2ブロックに常に分割される。さらにより単純な分割は、画像フレームまたは画像ブロックを2つの半分、すなわち、1×2/2×1ブロックに分割することであることになる。一実施形態によれば、画像ブロックは等しいサイズを有する。代替的に、画像フレームおよび/または画像ブロックは、画像ブロックであって、ブロックのサイズが画像フレーム/画像ブロックの特性に依存する、画像ブロックに分割される。或る例として、背景が所与のカラーを有し、それが、例えば、全体的に青い空の場合に当てはまる場合があることを想定することができる。したがって、そのような領域についての画像ブロックは、分割プロセスにおける画像フレームの他の部分より大きくなるように構成することができる。同様に、画像フレームの事前分析に基づいて、詳細な運動が画像フレームの一部のエリアにおいて予想することができる場合、ブロックサイズは、そのような領域についてより小さく設定することができる。さらに、関心領域等の予め規定された領域を、周囲(背景)領域と異なって処理することができる。関心領域は、関心領域の分割のためのより小さいブロックサイズを用いて設定することができる。
【0023】
一実施形態によれば、画像フレームを画像ブロックに分割する(または、画像ブロックを新しい画像ブロックにさらに分割する)ステップは、画像フレームまたは画像ブロックのコンテンツを考慮することなく実施される。ピクセルによって表されるエリアの単純で所定の分割を適用することによって、現在開示されている方法の分割部分を非常に高速に行うことができる。したがって、動きセグメント化の現在開示されている方法の一実施形態によれば、第1の画像フレームを複数の画像ブロックに分割するステップおよび/または画像ブロックを新しい画像ブロックにさらに分割するステップは、第1のカメラ画像の分析なしで、予め規定されたまたは構成可能な画像ブロックサイズに基づいて実施される。
【0024】
「画像ブロックの対(pair of image blocks)」または「画像ブロック対(image block pair)」は、1つの画像フレームの画像ブロックおよび別の画像フレームの対応する画像ブロックを指す。例えば、第1の画像フレームが2×2画像ブロックに分割され、第2の画像フレームが2×2基準画像ブロックに分割される場合、4つの画像ブロック対が存在する。その概念は
図5で実地に説明される。この例における画像ブロックの対は、403a/404a、403b/404b、403c/404c、および403d/404dである。
【0025】
比較および閾値レベル
好ましくは、画像ブロックおよび基準画像ブロックは、1つずつ比較される。処理は、比較が互いに独立であるため、並列に実行することができる。各画像ブロックと対応する基準画像との間の不同性の尺度を提供するステップにおいて、異なる技法及び手法を、当業者が理解するように使用することができる。動きセグメント化の現在開示されている方法の一実施形態によれば、不同性の尺度は、予め規定された不同性の尺度である。一例は、比較される画像ブロックについて平均ピクセル値を計算または抽出し、対応する基準画像ブロックの平均ピクセル値と比較することである。値の間の差が或る閾値より大きい場合、画像は、運動があるブロックとして分類することができる。別の方法は、ピクセル間比較であることになる。ピクセル差を累積することによるピクセル差の和または差分2乗和は、さらなる代替法であるとすることができる。したがって、一実施形態において、画像ブロックを第2のカメラ画像の対応する基準画像ブロックと比較するステップは、ピクセル間比較またはピクセルの群の平均の比較または画像ブロック内の全てのピクセルの和の比較を含む。さらなるオプションは、画像ブロックのヒストグラムの比較であるとすることができる。一般に、画像ブロック間の不同性を測定するステップは、本開示において提供される例に限定されない。
【0026】
動きセグメント化の現在開示されている方法によれば、不同性の尺度を、閾値と比較することができる。閾値は、画像フレーム内の仮定されたまたは測定された一般的なノイズレベルに基づいて設定することができる。ノイズレベルは、典型的には、画像センサタイプおよびピクセル強度等のパラメータに依存する。
【0027】
一実施形態によれば、使用される閾値レベルは、反復の間に調整することができる。これは、ノイズレベルに適合するために行うことができるが、同様に、より少ない数かまたはより多くの数の運動が方法によって取り込まれるように、動き(motion)に関する感度を調整するために行うことができる。
【0028】
動きマスク
現在開示されている動きセグメント化は、どのエリアが動きを含むかおよびどのエリアが動きを含まないかを示す動きマスクを生成することができる。そのため、動きマスクは、バイナリー動きマスクであるとすることができる。代替的に、動きマスクは、異なるエリア内の動きのレベルに関する情報をオペレータまたはユーザーに提供するために、幾つかの動きのレベルを含むことができる。動きマスクは、例えば、ヒートマップとして提示することができる。動きマスクは、ノイズフィルタリングに対する、または、露出制御等の他の画像処理アルゴリズムに対する入力として使用することができる。
【0029】
動きマスクは、最後の反復の新しい複数の画像ブロックを動きマスクが反映するように生成することができる。各反復において、幾つかの画像ブロックを、全く運動がないかまたは制限された運動があるブロックであるとして廃棄することができる。その結果、これは、その後、動きマスクにおいて反映される。さらなる反復が実施されるにつれて、より洗練されたレベルでのさらなる画像ブロックが、制限された運動があるかまたは全く運動がないブロックとして分類される。停止条件が満たされ、反復が停止するときに、制限された運動があるかまたは全く運動がないブロックとして分類されなかった画像ブロックは、運動がある画像ブロックとして分類することができ、それを、動きマスクに反映することができる。
【0030】
さらなる改善および実施形態
述べたように、画像ブロックおよび対応する基準画像ブロックが比較され、画像ブロックと基準画像ブロックとの間の不同性の尺度が計算または抽出されると、一部の画像ブロックは、新しい画像ブロックに分割される。一実施形態において、閾値より大きい不同性の尺度を有する画像ブロックを分割するステップは、閾値より大きい不同性の尺度を有する全ての画像ブロックについて行われない。制限された処理リソースを有する、すなわち、動きマスクがさらに高速に提供されなければならないシステムにおいて、現在開示されているアルゴリズムを使用してさらに分割され処理されるべきである制限された数の画像ブロックのみを選択することが可能である。一実施形態によれば、最大数の画像ブロックを設定することができ、画像ブロックを、その後、さらなる分割および反復のために、不同性の最大尺度を有する画像ブロックが選択されるように優先順位をつけることができる。さらなる分割のために画像ブロックの数を制御する代替法は、閾値を調整することである。一実施形態において、閾値は、画像ブロックの対についての不同性の尺度に基づいて各反復後に調整される。
【0031】
さらに分割され処理されるべきである制限された数の画像ブロックを選択するときのさらなる可能性は、或る領域に優先順位をつけることである。例えば、画像フレームの或る領域内の運動が、結果として得られる動きマスクにおいて示されることが、重要性が高い(または、低い)ことが考えられる。或る例として、画像の中央領域は、周辺領域より動きマスクについて重要であるとすることができる。これらのエリアを、その後、他のエリアより高い(または低い)優先度に関連付けることができる。一実施形態において、ステップc)(すなわち、複数の画像ブロックの各画像ブロックについて、画像ブロックを、画像フレームのシーケンスからの第2の画像フレームの対応する基準画像ブロックと比較することであって、それにより、画像ブロックと基準画像ブロックとの間の不同性の尺度を提供する、比較すること)は、選択された数の画像ブロックについて実施されるだけであり、1つまたは複数の予め規定された画像エリア内の画像ブロックが優先順位をつけられる。代替的に、ステップc)は、選択された数の画像ブロックについて実施されるだけであり、画像ブロックは、画像ブロックの予め規定されたカラーおよび/またはパターン等の予め規定された画像特徴に基づいて優先順位をつけられる。
【0032】
画像処理システム
本開示は、画像処理システムまたは動きセグメント化システムにさらに関する。システムは、ビデオストリームにおける動きセグメント化の現在開示されている方法または画像フレームにおける動きセグメント化の方法のうちの任意の実施形態を実施するように構成される処理ユニットおよび/またはハードウェアアクセラレータを備える。一実施形態によれば、処理ユニットおよび/またはハードウェアアクセラレータは、
i.画像センサから画像フレームのシーケンスを取得するステップと、
ii.画像フレームのシーケンスからの第1の画像フレームを複数の画像ブロックに分割するステップと、
iii.複数の画像ブロックの各画像ブロックについて、画像ブロックを、画像フレームのシーケンスからの第2の画像フレームの対応する基準画像ブロックと比較するステップであって、画像ブロックと基準画像ブロックとの間の不同性の尺度を提供する、比較するステップと、
iv.閾値より小さい不同性の尺度を有する画像ブロックについて:全く運動がないかまたは制限された運動があるブロックであるとして画像ブロックを廃棄し;閾値より大きい不同性の尺度を有する画像ブロックについて:運動があるブロックであるとして画像ブロックを維持し、画像ブロックを新しい複数の画像ブロックにさらに分割するステップと、
v.停止条件が満たされるまでステップiii)~iv)を反復し、新しい複数の画像ブロックに基づいて画像フレームのシーケンスの運動エリアを示す、結果として得られる動きセグメント化を提供するステップと
を実施するように構成される。
【0033】
画像処理は、画像センサ、および、典型的には、画像センサを備えるカメラをさらに備えることができる。
【0034】
処理ユニットまたはハードウェアアクセラレータあるいはさらなる処理ユニットは、
vi.新しい複数の画像ブロックに基づいて、動きマスクを生成するステップと、
vii.少なくとも1つのカメラの設定を調整するステップおよび/または動きマスクに基づいて、ノイズフィルタリング、露出、および/または着色等のさらなる画像処理を実施するステップと
を実施するようにさらに構成される。
【0035】
図面の詳細な説明
本発明は、添付図面を参照して、以下でより詳細に説明される。図面は、例示的であり、動き検出のための現在開示されている方法およびシステムの特徴の一部を示すことを意図され、現在開示されている発明に対して制限的であると解釈されない。
【0036】
図1は、ビデオストリームにおける動きセグメント化の現在開示されている方法(100)の一実施形態のフローチャートを示す。方法は、カメラから画像フレームのシーケンスを取得する(101)ステップと;画像フレームのシーケンスからの第1の画像フレームを複数の画像ブロックに分割する(102)ステップと;複数の画像ブロックの各画像ブロックについて、画像ブロックを、画像フレームのシーケンスからの第2の画像フレームの対応する基準画像ブロックと比較する(103)ステップであって、それにより、画像ブロックと基準画像ブロックとの間の不同性の尺度を提供する、比較する(103)ステップと;閾値より小さい不同性の尺度を有する画像ブロックについて:全く運動がないかまたは制限された運動があるブロックであるとして画像ブロックを廃棄し(104a);閾値より大きい不同性の尺度を有する画像ブロックについて:運動があるブロックであるとして画像ブロックを維持し(104b)、画像ブロックを新しい複数の画像ブロックにさらに分割するステップとを含む。画像フレームを分割するステップまたは画像ブロックをさらに分割するステップ、画像ブロックを比較するステップおよび画像ブロックを分類するステップは、停止条件が満たされる(105a)まで反復される。したがって、停止条件が満たされない(105b)場合、画像ブロックを対応する基準画像ブロックと比較する(103)ステップにおいて、新しい複数の画像ブロックが、画像ブロックとして使用される。方法は、画像フレームのシーケンス内の運動エリアを示す動きマスクを生成する(106)ステップと、動きマスクに基づいて、ノイズフィルタリング、露出、および/または着色等のさらなる画像処理を実施する(107)ステップとをさらに含む。
【0037】
図2は、画像フレームにおける動きセグメント化の現在開示されている方法(200)の一実施形態のフローチャートを示す。方法は、第1の画像フレームを複数の画像ブロックに分割する(201)ステップと;複数の画像ブロックの各画像ブロックについて、画像ブロックを、第2の画像フレームの対応する基準画像ブロックと比較する(202)ステップであって、それにより、画像ブロックと基準画像ブロックとの間の不同性の尺度を提供する、比較する(202)ステップと;閾値より小さい不同性の尺度を有する画像ブロックについて:全く運動がないかまたは制限された運動があるブロックであるとして画像ブロックを廃棄し(203a);閾値より大きい不同性の尺度を有する画像ブロックについて:運動があるブロックであるとして画像ブロックを維持し(203b)、画像ブロックを新しい複数の画像ブロックにさらに分割するステップとを含む。画像ブロックを分割するステップ、画像ブロックを比較するステップ、および画像ブロックを分類するステップは、停止条件が満たされる(204a)まで反復される。停止条件が満たされる(204a)と、最後の反復後に新しい複数の画像ブロックに基づいて画像フレームの運動エリアを示す、結果として得られる動きセグメント化が提供される(205)。
【0038】
図3は、動きセグメント化のための現在開示されている画像処理システムの或る実施形態の或る例を示す。この例において、動きセグメント化のためのシステム(300)は、順次画像フレームを取り込むためのカメラ(301)を備える。カメラ(301)は画像センサ(302)を備える。システム(300)は、動きセグメント化(305)、デモザイシング(306)、およびノイズフィルタリング(307)の、現在開示されている方法を含む、種々の画像処理タスクを実施するように構成される画像処理パイプライン(IPP:image processing pipeline)の形態のハードウェアブロック(303)をさらに備える。その例において、CPU(304)の形態のさらなる処理ユニットは、(1つの)露出アルゴリズム(複数可)(308)を実施し、画像センサ(302)および/またはカメラ(301)の設定を制御するように構成される。
【0039】
図4は、動きセグメント化のための現在開示されている画像処理システム(300)のさらなる実施形態を示す。この例において、動きセグメント化のためのシステム(300)は、順次画像フレームを取り込むためのカメラ(301)を備える。カメラ(301)は画像センサ(302)を備える。システム(300)は、画像センサ(302)からの未処理画像データに対して(on)動きセグメント化(305)の現在開示されている方法を実施するように構成される中央処理ユニット(CPU)の形態の処理ユニット(303)をさらに備える。動きセグメント化(305)は、露出アルゴリズム(308)において使用される動きマスクの形態の関心領域(ROI:region of interest)マスクを提供する。システム(300)は、種々の画像処理タスクを実施するためのハードウェアブロック(304)(IPP)をさらに備える。この例において、IPPにおける動きセグメント化のための、アクセラレータ等の専用ハードウェアは存在しない。代わりに、動きセグメント化(305)はCPUにおいて実施される。動きセグメント化アルゴリズムは、露出アルゴリズム(308)によって使用される、関心領域を含む動きマスクを生成する。
【0040】
図5は、2つの画像フレーム(401;402)間で動きを検出するプロセスの或る例を示す。分割、比較、および分類の第1のラウンドは、ページの上半分に示される。見てわかるように、シーン内のオブジェクト(409)は、第1の画像フレーム(401)と、基準フレームとして、代替的に考えることができる、第2の画像フレーム(402)との間で移動する。第1の画像フレーム(401)は4つの画像ブロック(403a;403b;403c;403d)に分割される。第2の画像フレーム(402)は4つの対応する画像ブロック(404a;404b;404c;404d)に分割される。4つの画像ブロックは1つずつ比較される。その例において、これは、画像ブロック403aが画像ブロック404aと比較され、画像ブロック403bが画像ブロック404bと比較される等であることを意味する。その例において、画像ブロックの対の2つ(403a/404aおよび403b/404b)は不同性(または閾値より大きい不同性)を有する。2つの他の対(403c/404cおよび403d/404d)の場合、動きが存在しない。ページの下半分において、画像ブロック対(403a/404a)の1つが、ここでさらに処理される。典型的には、動きがある画像ブロックの第2の対(403b/404b)は、同様に、維持され、さらに処理されることになり、それは、その例において省かれる。動きのない対(403c/404cおよび403d/404d)は廃棄される。ページの下半分において、画像ブロック403aおよび404aは、ここで新しい複数の画像ブロックにさらに分割される。第1の画像フレーム(401)から導出された画像ブロック403aは、4つの新しい画像ブロック(405a;405b;405c;405d)に分割される。第2の画像フレーム(402)から導出された画像ブロック403aは、4つの新しい画像ブロック(406a;406b;406c;406d)に分割される。画像ブロックを1つずつ比較するステップは、ここで、新しい複数の画像ブロックについて実施される。見てわかるように、画像ブロックと画像ブロック(405aと406a、405bと406bと等)の比較において、対応する画像ブロックの対の2つ(405c/406cおよび405d/406d)は動きがあり、一方、対応する画像ブロックの他の2つの対(405a/406aおよび405b/406b)は動きがない。この反復プロセスに基づいて、運動エリア(408)を含む結果として得られる動きマスク(407)を生成することができる。
図5の例において、結果として得られる動きマスク(407)は例として考えるものとする。見てわかるように、動きマスクの粒度は、分割の2つのラウンド後の画像ブロック(405a~405d/406a~406d)のサイズと比較して高い。結果として得られる動きマスク(407)は、幾つかの反復後に、動きがある残りの画像ブロックに対応することができる幾つかの黒の正方形によって構成される。例は、分割の2つのラウンドを示すだけである。しかしながら、結果として得られる動きマスク(407)は、
図5の粒度の差を説明するさらなる反復後に示されている。
【0041】
図6は、画像フレームのシーケンス(400)内の2つの画像フレーム(401;402)間の動きを検出するプロセスのさらなる例を示す。第2の画像フレーム(402)は、第1の画像フレーム(401)に時間的に先行する画像フレームであるとすることができる、または、その逆も同様である。ページの上半分を見てわかるように、描写されるシーン内のオブジェクト(409)は、第1の画像フレーム(401)と第2の画像フレーム(402)との間で移動する。分割、比較、および分類の第1のラウンドにおいて、第1の画像フレーム(401)は4つの画像ブロック(403a;403b;403c;403d)に分割される。第2の画像フレーム(402)は4つの対応する画像ブロック(404a;404b;404c;404d)に分割される。4つの画像ブロックを1つずつ比較するステップにおいて、対の2つ(403a/404aおよび403c/404c)が、動きがあることが見出される。対の他の2つ(403b/404bおよび403d/404d)は、動きがなく、したがって、図の破線エリアで示すように廃棄される。動きがある対(403a/404aおよび403c/404c)は、第2のラウンドにおいて、維持され、新しい複数の画像ブロックにさらに分割される。第1の画像フレームから導出された画像ブロック403aは、4つの新しい画像ブロック(405a;405b;405c;405d)に分割される。第1の画像フレーム(401)から同様に導出された画像ブロック403cは、4つの新しい画像ブロック(405e;405f;405g;405h)に分割される。第2の画像フレーム(402)から導出された画像ブロック404aは、4つの新しい画像ブロック(406a;406b;406c;406d)に分割される。第2の画像フレーム(402)から同様に導出された画像ブロック404cは、4つの新しい画像ブロック(406e;406f;406g;406h)に分割される。画像ブロックを1つずつ比較するステップは、ここで、新しい複数の画像ブロックについて実施される。見てわかるように、第2のラウンドにおいて、対応する画像ブロックの対の5つ(405a/406a;405b/406b;405e/406e;405g/406g;405h/406h)は、動きがないため廃棄され、一方、対応する画像ブロックの対の3つの対(405b/406b;405d/406d;405f/406f)は動きがある。最後の反復後の、維持された画像ブロックおよび廃棄された画像ブロックに基づいて、動きマスクを生成することができる。