以下、図面を参照して、本発明の実施形態による画像差異検出装置を説明する。本実施形態は、2枚以上の画像から、画像内の各領域における変化(または差異)を適切に検出するものであり、医用での異常検出や航空・衛星画像からの変化検出にも適用可能とするものである。
<第1実施形態>
第1実施形態による画像差異検出装置を説明する。以下では動画像符号化を用いた衛星画像間の変化点検出を例にあげて説明する。図1は第1実施形態の構成を示すブロック図である。図2は、図1に示す画像差異検出装置10の処理動作を示すフローチャートである。図1に示す画像差異検出装置10は、コンピュータ装置で構成し、変化検出対象サイズ入力部1、符号化パラメータ決定部2、符号化部3、変化検出部4、画像入力部5を備える。ここでは、画像Aに対して、画像Bではどの領域に変化があるか(2つの画像間において差異がどの空間領域にあるか)を検出する動作について説明する。なお以下では、用いる符号化方式はHEVC、符号化パラメータとしては符号化サイズをそれぞれ一例とする。
次に、図1に示す画像差異検出装置10の処理動作を説明する。まず、変化検出対象サイズ入力部1は、外部から検出したい変化対象の大きさ(例えば、画素サイズ)を入力し符号化パラメータ決定部2に対して出力する(ステップS1)。変化対象の大きさは、一例として画素サイズが挙げられるが、画像上の範囲を指定する視標であれば画素サイズに限るものではない。続いて、符号化パラメータ決定部2は、入力した変化対象の大きさに応じて符号化パラメータ、例えば各符号化サイズを決定する(ステップS2)。各符号化サイズとは、MPEG等のMB(マクロブロック)やHEVCのCU(符号化ユニット)、PU(予測ユニット)、TU(変換ユニット)などのサイズがあげられ、ここではLCU(Largest CU)サイズを例として説明する。符号化パラメータ決定部2は決定したLCUサイズを符号化部3に対して出力する。
一方、画像入力部5は、外部から変化検出対象の少なくとも2枚の画像A(第1の画像)、画像B(第2の画像)を入力する(ステップS3)。画像A、Bは、撮影日時は異なるが、撮影範囲の空間領域はほぼ同じであり、画像Aは、画像Bより前の日時に取得した画像である。この画像A、Bは、符号化部3に対して出力される。これを受けて、符号化部3では入力されたLCUサイズで画像Aおよび画像BのHEVCイントラ符号化を行う(ステップS4)。
次に、図1に示す変化検出部4において、各LCUで変化があるか(差異があるか)否かを検出する処理について説明する。まず、変化検出部4は、検出対象画像における対象LCUにおいて、四方(上下左右)のLCUと、対象LCUとの発生符号量を比較し、以下の条件X((1)〜(8))のいずれかを満たすか否かを確認する(ステップS5)。
(1)max(R(N−1)/R(N),R(N)/R(N−1))>R_Th1
(2)max(R(N+1)/R(N),R(N)/R(N+1))>R_Th1
(3)max(R(N−x)/R(N),R(N)/R(N−x))>R_Th1
(4)max(R(N+x)/R(N),R(N)/R(N+x))>R_Th1
(5)min(R(N−1)/R(N),R(N)/R(N−1))<R_Th2
(6)min(R(N+1)/R(N),R(N)/R(N+1))<R_Th2
(7)min(R(N−x)/R(N),R(N)/R(N−x))<R_Th2
(8)min(R(N+x)/R(N),R(N)/R(N+x))<R_Th2
ここで、RはLCUの発生符号量、max(R(N−1)、R(N))はR(N−1)、R(N)の大きい値、min(R(N−1), R(N))はR(N−1)、R(N)の小さい値を意味し、R_Th1はR_Th1>1、R_Th2は0<R_Th2≦1を満たす閾値である。また、Nは画像BにおけるN番目のLCUを意味しN−1は対象の左LCU、N+1は右LCU、N−xは上LCU、N+xは下LCUをそれぞれ意味する。
このときの符号量比の算出対象は、画像Bである。
対象LCUが条件Xを全て満たさない(上下左右の隣接LCUの発生符号量と、対象LCUの発生符号量が大きく異ならない)場合、変化検出部4は、対象LCUでは変化なしとして、変化検出部4内に対象LCUの検出結果を蓄積する(ステップS7)。
一方、条件Xのいずれかを満たす場合、変化検出部4は、画像Aにおける対象LCUと空間的に同位置のLCUの発生符号量との比較を行う。そして、変化検出部4は、画像Bの対象LCUと画像Aの空間的に同位置のLCUの発生符号量を比較し、以下の条件Y((9)、(10))のいずれかを満たすか否かを確認する(ステップS6)。
(9)max(R_A(N)/R_B(N),R_B(N)/R_A(N))>R_Th3
(10)min(R_A(N)/R_B(N),R_B(N)/R_A(N))<R_Th4
ここで、R_Bは対象LCUの発生符号量、R_Aは対象LCUと空間的に同位置LCUの発生符号量を意味し、R_Th3はR_Th3>1、R_Th4は0<R_Th4≦1を満たす閾値である。
対象LCUが条件Yを全て満たさない(対象LCUの発生符号量と比較用画像の空間的同位置LCUの発生符号量が大きく異ならない)場合、変化検出部4は、は、対象LCUでは変化なしとして、変化検出部内に対象LCUの検出結果を蓄積する(ステップS7)。
一方、条件Yのいずれかを満たす場合、変化検出部4は、対象LCUでは変化ありとして、検出結果を同様に蓄積する(ステップS7)。そして、画像Bにおける全てのLCUに対して前述の処理が完了した時点で、対象画像(ここでは、画像B)の変化検出結果を出力し、終了となる(ステップS8)。入力画像が、画像A、画像Bの2枚でなく、画像Bが2枚以上である場合は、それぞれの検出結果が出力されることになる。
<第2実施形態>
次に、第2実施形態による画像差異検出装置を説明する。図3は第2実施形態の構成を示すブロック図である。この図において、図1に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図1に示す装置と異なる点は、変化検出対象種別入力部6が新たに設けられている点である。図4は、図3に示す画像差異検出装置10の処理動作を示すフローチャートである。この図において、図2に示す処理動作と同一の部分には同一の符号を付し、その説明を省略する。この図に示す処理動作が図2に示す処理動作と異なる点は、ステップS4a、ステップS9、S10が設けられている点である。
第1実施形態では変化検出対象サイズのみを符号化パラメータ決定部2に入力していたが、第2実施形態ではこれに加え、変化検出対象種別入力部6が外部から入力した変化検出対象とする種別(衛星画像等なら雲、建物、海など)である変化検出対象種別も同時に入力する(ステップS9)。そして、その種別に応じて符号化時に用いる量子化マトリクス等を決定する(ステップS10)。これを受けて、符号化パラメータ決定部2は、指定された符号化サイズおよび量子化マトリクスで画像Aおよび画像Bを符号化する(ステップS4a)。この追加された処理動作は、検出の高精度化につなげるものである。例えば、エッジが顕著な変化検出対象を指定した場合は、高周波成分が強調されるような量子化マトリクスを選定する。
<第3実施形態>
次に、第3実施形態による画像差異検出装置を説明する。図5は第3実施形態の構成を示すブロック図である。この図において、図1に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図1に示す装置と異なる点は、符号化結果調整部7が新たに設けられている点である。図6は、図5に示す画像差異検出装置10の処理動作を示すフローチャートである。この図において、図2に示す処理動作と同一の部分には同一の符号を付し、その説明を省略する。この図に示す処理動作が図2に示す処理動作尾と異なる点は、ステップS11が設けられている点である。
第3実施形態では第1実施形態と同様の処理であるが、変化検出部4で用いる画像A、BのLCU毎の発生符号量に符号化結果調整部7が重みをつける(調整する)点が異なる。具体的には符号化結果調整部7の処理が追加されている処理であるため、該当部分のみ説明をする。
画像Aと画像Bの特性(精細感、色味など)がほぼ同じ、例えば一般的な30fpsなどの映像の場合は、画像Aと画像Bの発生符号量は大きく異なることはない。しかし、撮影日や、撮影環境(屋外だと太陽光の条件や大気の状況など)が異なる場合、ほぼ同じ部位や地点を撮影した画像であっても、画像同士で発生符号量が大きく異なる。これらの画像でLCU毎の変化検出を行ってもほぼ全てのLCUが変化ありとして検出されてしまい、真の変化を検出することは困難となる。そこで、画像同士で発生符号量が異なる場合は、各LCUの符号量を調整する必要が生じる。本実施形態はその調整を行うものである。
まず、符号化部3で画像A、Bの符号化を行い(ステップS4)、画像毎の発生符号量r_A、r_Bを算出する。この値を使い、画像B内LCUの発生符号量R_Bを以下のように調整する(ステップS11)。
R_B’=(r_A/r_B)×R_B×K
ここでR_B’はフロー後段の変化検出部4で用いる、調整後の符号量となる。また、Kは任意で与えられる0より大きい定数であり、画像全体やLCU毎の符号化情報に応じてKを自動調整することも考えられる。変化検出部4では第1実施形態に示す通り、R_AとR_B’とを用い、変化検出処理を行う。
<第4実施形態>
次に、第4実施形態による画像差異検出装置を説明する。図7は第4実施形態の構成を示すブロック図である。この図において、図5に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図5に示す装置と異なる点は、符号化結果調整部7の出力に基づいて、変化検出結果を出力する点である。
第4実施形態は第3実施形態の符号化結果調整部7からの出力で、変化検出部4を介さず変化検出結果を出力するものである。例えば、画像Aと画像Bの符号量を比較し、以下(11)、(12)を満たす場合は、画像Aと画像Bは特性が非常に大きく異なり、全てが変化と検出されるため、変化検出部4を介さず、画像全体として変化あり、または変化検出不能と判断し、それを出力結果とするものである。
(11)max(r_A/r_B)>r_Th1
(12)min(r_A/r_B)<r_Th2
ここで、r_Th1はr_Th1>1を、r_Th2は0<r_Th2≦1を満たす閾値である。
<第5実施形態>
次に、第5実施形態による画像差異検出装置を説明する。図8は第5実施形態の構成を示すブロック図である。この図において、図1に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図1に示す装置と異なる点は、画像解析部8が新たに設けられている点である。図9は、図8に示す画像差異検出装置10の処理動作を示すフローチャートである。ここでは、画像Aに対して、画像Bではどの領域に変化があるか(差異がどの空間領域にあるか)を検出する処理動作について説明する。
次に、図8及び図9に示す画像差異検出装置10の処理動作を説明する。まず、画像解析部8は、画像入力部5より画像Aと画像Bを、変化検出対象サイズ入力部1より所望の変化検出対象サイズを入力し、画像Aと画像Bそれぞれに対して画像解析を実施する(ステップS21)。画像解析部8は、変化検出対象サイズをもとに分割するブロックサイズを特定し、そのブロックサイズごとにブロック内の各色成分の分散値(アクティビティ)を計算する。ここではアクティビティを例にするが、各色成分の平均値や最大値などでも適用可能である。そして、画像解析部8は、画像Aと画像Bにおける空間的に対応するブロック同士でアクティビティの平均値の比率(差分でもよい)を出力し、符号化パラメータ決定部に移行する。
次に、符号化パラメータ決定部2は、入力した変化検出対象サイズにより符号化サイズ等を決定するとともに、画像解析部8より出力されたアクティビティ比率より画像Aと画像Bに適用する量子化値等のパターンを決定する。後段の符号化をH.264/AVCやHEVCを利用する場合は、量子化マトリクスのパターンを決定することも可能である。
また、各色成分の解析結果をもとに、量子化パラメータ値や量子化マトリクスを色成分ごとに異なるものを適用することもできる。例えば、ブロックn(n=0、1、…、N)の各色成分のアクティビティをaA(n)、aB(n)とすると、画像内のアクティビティ平均値の比率arは、
ar=ΣaA(n)/ΣaB(n)
と示される。ここで、arの値をもとに、画像Aと画像Bそれぞれに適用する量子化パラメータQPAとQPBを決定する(ステップS22)。あらかじめ定めた基準量子化パラメータを画像Aまたは画像Bのいずれかにそのまま適用し、他方をarより算出される量子化パラメータ差分eに変換する。
例えば、基準量子化パラメータをQPAとすると、
QPB=QPA−e
e=f(ar)
と示される。fはアクティビティ比率を量子化パラメータ差分に変換する関数である。アクティビティの比率arが大きい場合に、eが大きくなるような傾向を持つ関数形である。
次に、符号化部3は、この量子化値等を用いて画像Aと画像Bそれぞれを符号化し、前述符号化サイズのブロックごとの符号量を出力する(ステップS23)。符号化の手段は、前述のH.264/AVCやHEVCだけではなく、MPEG−2やJPEGなど任意の動画像・静止画像の符号化手段が適用可能である。
次に、変化検出部4は、各符号化サイズの符号量を比較し、所定のしきい値との比較等により、各ブロックが変化領域か否かの情報を出力する(ステップS24)。出力する情報は変化領域か否か、の2判定だけではなく、判定不可なども加えた2つ以上の判定結果でもよい。
上述のように、本実施形態では、アクティビティの比率または差分に基いて、各画像の符号化時に適用する量子化パラメータを決定している。これにより、撮影環境や撮影時間の影響による変化検出の誤判定を抑制できる。
すなわち、ほぼ同じ場所を撮影した画像でも、撮影環境や時間の影響で、符号化の結果として出力される符号量が大きく異なる。例えば、晴天のときと曇りのときとでは、全体的な画像の色合いが異なる。このため、符号量をそのまま比較すると、撮影環境や撮影時間の影響により、変化検出の誤判定が生じる。本実施形態では、ブロック内の各色成分の分散値をアクティビティとして計算し、このアクティビティの比率または差分に基いて、量子化パラメータを決定している。量子化パラメータは、符号量を決定する主要素であり、この量子化パラメータをアクティビティの比率または差分に基いて補正することで、変化検出の誤判定を抑制できる。
<第6実施形態>
次に、第6実施形態による画像差異検出装置を説明する。図10は第6実施形態の構成を示すブロック図である。この図において、図8に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図8に示す装置と異なる点は、画像解析部8の出力が変化検出部4に入力される点である。図11は、図10に示す画像差異検出装置10の処理動作を示すフローチャートである。第5実施形態では画像解析部8より出力された画像解析情報を符号化パラメータの決定に利用していたが、第6実施形態では符号化情報を用いて変化領域を検出する際にこの画像解析情報を用いる。
本実施形態の変化検出部4は、画像解析部8より出力した画像Aと画像Bのブロックごとのアクティビティ比率を入力し、画像Aと画像Bそれぞれの符号化情報の補正を行う。
具体例としては、画像Aと画像Bの所定符号化サイズのブロックごとの符号量の情報に対して、アクティビティ比率の情報をもとに符号量のスケーリングを行う。そしてスケーリング後の符号量値を用いて、所定のしきい値との比較を実施し、各ブロックが変化領域か否かを判定して出力する。当該ブロックのスケーリング計算手順としては、当該ブロックのアクティビティ比率のみを用いてもよいし、指定の周囲領域のアクティビティ比率を考慮して算出してもよい。
例えば、符号化部3で画像A、Bの符号化を行い、画像毎の発生符号量rA、rBを算出したと仮定する。第5実施形態の零時と同様に、アクティビティ比率arを求めたとすると、この値を使い、画像B内ブロックごとの発生符号量RBを以下のように調整する。
RB’=RB×K
K=g(ar)
ここで、gはアクティビティ比率を符号量のスケーリング係数に変換する関数である。
アクティビティの比率arが大きい場合に、Kが大きくなるような傾向を持つ関数形である。
この処理動作を図11を参照して説明する。まず、画像解析部8は、画像Aおよび画像Bの変化抽出対象サイズの情報をもとに画像解析を実施する(ステップS21)。続いて、符号化部3は、指定された符号化パラメータにて画像Aおよび画像Bを符号化する(ステップS23)。
次に、変化検出部4は、画像解析結果をもとに、画像Aおよび画像Bの符号化情報の補正を実施する(ステップS25)。そして、変化検出部4は、補正後の画像Aおよび画像Bの符号化情報をもとに画像Aに対する画像Bの変化領域を特定する(ステップS24)。
上述のように、本実施形態では、アクティビティの比率または差分に基いて、各画像の符号量を調整している。これにより、撮影環境や撮影時間の影響による変化検出の誤判定を抑制できる。
すなわち、ほぼ同じ場所を撮影した画像でも、撮影環境や時間の影響で、符号化の結果として出力される符号量が大きく異なる。例えば、晴天のときと曇りのときとでは、全体的な画像の色合いが異なる。このため、符号量をそのまま比較すると、撮影環境や撮影時間の影響により、変化検出の誤判定が生じる。本実施形態では、ブロック内の各色成分の分散値をアクティビティとして計算し、このアクティビティの比率または差分に基いて、符号量をスケーリングして、調整している。これにより、撮影環境や時間の影響による変化検出の誤判定を抑制できる。
<第7実施形態>
次に、第7実施形態による画像差異検出装置を説明する。図12は第7実施形態の構成を示すブロック図である。この図において、図8に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図8に示す装置と異なる点は、符号化変化検出対象領域抽出処理部9が設けられている点である。図13は、図12に示す画像差異検出装置10の処理動作を示すフローチャートである。第5実施形態では画像解析部8より出力された画像解析情報を符号化パラメータの決定に利用していたが、本実施形態では、符号化パラメータ決定部2、符号化部3、変化検出部4の一連の処理(変化点抽出処理)を行う前に、符号化変化検出対象領域抽出処理部9によりその処理の対象とする画像領域を、当画像解析情報を用いて特定する。
符号化変化検出対象領域抽出処理部9では、画像解析部8より出力した画像Aと画像Bのブロックごとのアクティビティ比率を入力し、アクティビティ比率が所定のしきい値より大きい領域については後段の符号化による変化点抽出処理の対象外とする。対象外にする方法としては、
(1)対象外の領域が省かれるよう画像の切り出しや分割を行う
(2)対象外の領域を指定の色で塗りつぶす
(3)画像は変化させず、後段の変化検出部にて変化領域と必ず判定されるよう、対象外領域にのみ適用される符号化パラメータや変化検出のためのしきい値へと反映させるなどの方法が考えられる。
(1)の場合、分割や切り出しをされた画像ごとに符号化による変化点抽出処理を行う。符号化部ブロックサイズが小さい場合は、切り出しや分割により細かい画像が多数生成されてしまうことから、対象外と判定される領域がある一定面積以上存在する場合には、対象外でない領域も含めて対象外とみなして、分割数等を削減することも可能である。
(2)の場合、第5実施形態と同様の符号化による変化点抽出処理を行う。
(3)の場合、符号化パラメータ決定部2において、対象外領域においてのみ、符号量差分に対するしきい値を0もしくは非常に小さな値にする。
この処理動作を図13を参照して説明する。まず、画像解析部8は、画像Aおよび画像Bの変化抽出対象サイズの情報をもとに画像解析を実施する(ステップS21)。続いて、符号化変化検出対象領域抽出処理部9は、画像解析結果をもとに、以降の符号化による変化抽出を行う領域を特定する。
次に、符号化部3は、特定後の画像領域を対象に、領域個々に設定した符号化パラメータにて画像AおよびBを符号化(必要に応じて、画像の分割などを実施)する(ステップS27)。そして、変化検出部4は、算出された画像A・画像Bの符号化情報および画像解析結果による領域抽出の結果をもとに画像Aに対する画像Bの変化領域を特定する(ステップS28)。
上述のように、本実施形態では、アクティビティの比率または差分に基いて、変化点抽出処理の対象となる領域を決定している。これにより、撮影環境や撮影時間の影響による変化検出の誤判定を抑制できる。
すなわち、ほぼ同じ場所を撮影した画像でも、撮影環境や時間の影響で、符号化の結果として出力される符号量が大きく異なる。例えば、晴天のときと曇りのときとでは、全体的な画像の色合いが異なる。更に、雲で多く領域が覆われているような場合には、符号量の差異が大きくなる。そこで、本実施形態では、アクティビティの比率または差分に基いて、変化点抽出処理の対象となる領域を決定するようにしている。これにより、雲がかかっているような画像と雲がかかっていない画像のように、ほぼ同じ地域を撮影していても、符号量が大きく変化するような画像は、変化検出の対象から除外できる。これにより、撮影環境や時間の影響による変化検出の誤判定を抑制できる。
<第8実施形態>
次に、第8実施形態による画像差異検出装置を説明する。図14は第8実施形態の構成を示すブロック図である。この図において、図1に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図1に示す装置と異なる点は、開始点候補入力部11が新たに設けられている点である。図15は、図14に示す画像差異検出装置10の処理動作を示すフローチャートである。
本実施形態では、変化領域特定の際、符号化部3は、異なる開始点で画像A、画像Bを符号化し、符号化処理を各画像に対して2回以上実行する。開始点候補入力部11には、開始点の候補が入力される。変化検出部4は、複数回の符号化処理の結果を総合して、変化領域を特定する。符号化方式としては、HEVC、H.264、MPEG2、MPEG、JPEG等のような、1画面を複数のブロックに分割し、ブロック単位でのイントラ又はインター予測と直交符号により予測符号化し、このブロック毎の符号化データを可変長符号により圧縮符号化するものを用いる。符号化部3では、ブロック毎の符号化のみを行えば良い。
一例としては、ずらし幅として、符号化の単位となるブロックサイズの縦横1/2の画素数が考えられる。 例えば、8×8ブロックが符号化の一単位とすると、開始点をずれさない場合には位置(0,0)を開始点となり、縦横1/2ブロックサイズずらす場合には、位置(4,4)が開始点となる。この場合、開始点候補入力部11には、開始点(0,0)と開始点(4,4)が開始点候補として入力される。そして、符号化部3は、開始点(0,0)と開始点(4,4)からとの2つのパターンで符号化を行う。そして、変化検出部4は、開始点(0,0)としたときの符号化処理結果と、開始点(4,4)としたときの符号化処理結果とを総合して変化領域を特定する。
次に、図14に示す画像差異検出装置10の処理動作を、図15のフローチャートを用いて説明する。まず、開始点候補入力部11には、画像A、画像Bの符号化の開始点(最左上の画素位置)の候補を2つ以上あらかじめ入力し、2つ以上の開始点の候補を設定しておく。
符号化部3は、この開始点の全候補について、それぞれを開始点とした画像Aと画像Bの符号化を実施し(ステップS101)、出力された符号化情報(符号量等)を記憶領域に保管する(ステップS102)。例えば、開始点候補が2つとし、それぞれ(0,0)と(4,4)とする。前者は、画像の最左上の画素位置から符号化を開始し、後者は、画像の最左上の画素位置から右下方向に縦横4画素ずつずらした位置から符号化を開始する。これにより、ブロックの境界が4画素ずつずれることになる。符号化部3は、開始点の全候補について、符号化処理が完了するまで、処理を繰り返す(ステップS103)。
ステップS101からステップS103の処理により、符号化部3で、全ての開始点の候補で画像Aと画像Bの符号化が実施されたら、続いて、変化検出部4は、各画像の各開始点候補の符号化情報から、当該画像が変化領域か否かを判定する(ステップS104)。変化検出部4は、全ての画素位置について、変化領域か否かを判定する処理を繰り返す(ステップS105)。
ステップS104からステップS105の処理により、変化領域が検出されたら、最後に、変化検出部4は、画像全体の変化領域判定結果を出力する(ステップS106)。
ここで、図15におけるステップS104では、変化検出部4は、画像Aと画像Bの各画素位置について、その画素が属する各開始点候補における符号化情報を特定し、その符号化情報の差分計算等により、当画素が変化ありか否かを判定する。この処理の詳細を、図16及び図17のフローチャートで説明する。
図16は、ステップS104における変化領域か否かを判定する処理の一例を示すフローチャートである。ここでは、ある画素xについて、変化ありか否かを判定する処理を説明する。
まず、変化検出部4は、開始点候補nにて当該画素xを含むブロックを特定し(ステップS111)、そのブロックが保有する符号化情報を特定する(ステップS112)。ここでは符号量Rを例にとり、画像AをRA(n,x)、画像BをRB(n,x)と表現する。変化検出部4は、その符号量RA(n,x)とRB(n,x)の差としきい値rTHを比較し、符号量差分がしきい値rTH以上か否かを判定する(ステップS113)。すなわち、変化検出部4は、符号量差分としきい値rTHを比較し、以下の条件式を満たすかどうか、すべての開始点候補について調べる(ステップS114)。
|RA(n,x)−RB(n,x)|≧rTH
ただし、この例では、あるひとつの開始点候補にて上式を満たした段階で(ステップS113:Yes)、変化検出部4は、残りの開始点候補の調査はやめ、当該画素を変化ありとして出力する(ステップS115)。すべての開始点候補について、上式を満たさない場合は、変化検出部4は、当該画素を変化なしとして出力する(ステップS116)。
図17は、ステップS104における変化領域か否かを判定する処理の他の例を示すフローチャートである。ここでは、ある画素xについて、変化ありか否かを判定する処理を説明する。
ステップS121からステップS122の処理は、図16に示したステップS111からステップS112までの処理と同じである。この例では、ステップS123で、変化検出部4は、その符号量差分としきい値rTHを比較し、符号量差分がしきい値rTH未満か否かを判定する。すなわち、変化検出部4は、符号量差分としきい値rTHを比較し、以下の条件式を満たすかどうか、すべての開始点候補について調べる。
|RA(n,x)−RB(n,x)|<rTH
ただし、あるひとつの開始点候補にて上式を満たした段階で、残りの開始点候補の調査はやめ、当該画素を変化なしとして出力する(ステップS125)。すべての開始点候補について、上式を満たさない場合は、当該画素を変化ありとして出力する(ステップS126)。
<第9実施形態>
次に、第9実施形態による画像差異検出装置を説明する。図18は第9実施形態の構成を示すブロック図である。この図において、図1に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図1に示す装置と異なる点は、ブロック特性分類部12と、領域ごと利用符号化情報・しきい値入力部13とが新たに設けられている点である。図19は、図18に示す画像差異検出装置10の処理動作を示すフローチャートである。
図18におけるブロック特性分類部12は、平坦領域、複雑領域等、ブロック毎の特性をカテゴリに分類する。変化検出部4は、例えば、平坦領域では符号量絶対値のみを用いて変化を検出し、複雑領域では符号量絶対値と符号量分散値を用いて変化を検出する等、カテゴリに応じて制約条件を設け、変化検出に用いる符号化情報と判断基準を変化させる。また、このとき、ブロック特性分類部12は、平坦領域か複雑領域か等のカテゴリに応じて、しきい値を変化させる。また、分類されたカテゴリは、その度合いに応じて段階を設定してもよい。例えば、平坦領域の場合、平坦1、平坦2、・・・のように平坦の度合いが強くなる毎に添え字を大きくする等である。
次に、図18示す画像差異検出装置10の処理動作を、図19のフローチャートを用いて説明する。まず、符号化部3は、画像Aおよび画像Bを符号化し(ステップS201)、各画像の符号化情報を記憶領域に保管する(ステップS202)。符号化方式としては、HEVC、H.264、MPEG2、MPEG、JPEG等のような、1画面を複数のブロックに分割し、ブロック単位でのイントラ又はインター予測と直交符号により予測符号化し、このブロック毎の符号化データを可変長符号により圧縮符号化するものを用いる。符号化部3では、ブロック毎の符号化のみを行えば良い。
次に、ブロック特性分類部12は、その符号化情報を用いて、画像Aおよび画像Bにおける各ブロック領域を、その領域特性に応じた2つ以上のカテゴリに分類する。ここでは、符号化情報として符号量を例にとり、この符号量を用いて、ブロックを平坦な領域か複雑な領域か2つのカテゴリに分類すると仮定する。
まず、ブロック特性分類部12は、画像Aの各ブロックの符号量を入力して、1次元データの非階層クラスタリングを実施する。クラスタリングの方法としては、例えば、k−means法などがあげられる。ブロック特性分類部12は、k−means法などにより符号量データ群を2つのクラスタに分類し、重心の符号量値が小さいクラスタ(小クラスタ)と大きいクラスタ(大クラスタ)に分別する(ステップS203)。つまり、画像Aのあるブロックyの符号量をRA(y)、k−means法で算出された小クラスタの重心符号量をrA1、大クラスタの重心符号量をrA2と置いた時、ブロック特性分類部12は、下記のようにクラスタリングを行う。
If RA(y)≦(rA1+rA2)/2 :ブロックyは小クラスタ
Else :ブロックyは大クラスタ
ブロック特性分類部12は、上述と同様の処理を、画像Bに対しても同様に実施する。
次に、ブロック特性分類部12は、ブロックyを平坦領域か複雑領域かを判定する(ステップS204)。例えば、ブロック特性分類部12は、画像Aと画像Bのクラスタ種類を確認し、以下のようにして、平坦領域と複雑領域とに分類する。
If RA(y)≦(rA1+rA2)/2
&& RB(y)≦(rB1+rB2)/2 : ブロックyは平坦領域
Else : ブロックyは複雑領域
なお、平坦領域か複雑領域かを、優先度の高低をつけて、いずれかに分類する方法としては、上記の方法以外に、画像Aや画像Bがもつ外部情報(撮影時間や画質など)をキーにして、画像Aと画像Bに優先度を定め、クラスタ種類が異なる場合には、その優先度をもとに領域特性を定める方法が考えられる。
ステップS204の処理は、全てのブロックについて完了するまで、繰り返して行われる(ステップS205)。
続いて、変化検出部4は、ブロックが平坦特性か否かを判定する。(ステップS206)。そして、変化検出部4は、当該ブロックが平坦特性なら(ステップS206:Yes)、平坦特性用の変化判定を実施し(ステップS207)、当該ブロックが複雑特性なら(ステップS206:No)、複雑特性用の変化判定を実施する(ステップS208)。
ステップS206からステップS208の処理は、全てのブロックについて完了するまで、繰り返して行われる(ステップS209)。
ここで、ステップS207の平坦特性用の変化判定、および、ステップS208の複雑特性用の変化判定は、以下のようにして行うことができる。
(1)平坦領域は符号量値および符号量分散値を指標として用い、複雑領域は符号量値のみを用いる場合
平坦領域における変化判定のしきい値をそれぞれ、符号量しきい値r’TH、符号量分散しきい値vTH、複雑領域における変化判定のしきい値を、符号量しきい値r’’THとする。このとき、ブロックyが平坦領域の場合は、以下の判定式により、変化があるか否かを判定する。
If |RA(y)−RB(y)|≦r’TH
&& VA(y)≦vTH
&& VB(y)≦vTH : ブロックyは変化なし
Else : ブロックyは変化あり
また、ブロックyが複雑領域の場合は、以下の判定式により、変化があるか否かを判定する。
If |RA(y)−RB(y)|≦r’’TH : ブロックyは変化なし
Else : ブロックyは変化あり
ここで、VA(y)、VB(y)は、画像Aおよび画像Bのブロックyにおける周辺ブロックとの符号量の分散値である。例えば、ブロックyを中心とした上下左右p個の隣接ブロック((2p+1)*(2p+1)個のブロック)の符号量値の中で分散を計算する。pはあらかじめ外部より指定する。
(2)平坦領域、複雑領域ともに符号量値のみを指標として用いる場合
平坦領域における変化判定のしきい値を符号量しきい値r’TH、複雑領域における変化判定のしきい値を、符号量しきい値r’’THとする。このとき、ブロックyが平坦領域の場合は、以下の判定式により、変化があるか否かを判定する。
If |RA(y)−RB(y)|≦r’TH : ブロックyは変化なし
Else : ブロックyは変化あり
ブロックyが複雑領域の場合は、以下の判定式により、変化があるか否かを判定する。
If |RA(y)−RB(y)|≦r’’TH : ブロックyは変化なし
Else : ブロックyは変化あり
一例として、当該ブロックが平坦領域であれば、変化検出部4は、あらかじめ定めた平坦領域向けの符号化情報を変化判定指標とそれに対応するしきい値を用いて変化判定を行う。また、当該ブロックが複雑領域であれば、変化検出部4は、変化判定指標としきい値のいずれか、もしくは両方を、平坦領域とは異なるものを用いる。
ステップS206からステップS209の処理により、変化領域が検出されたら、最後に、変化検出部4は、画像全体の変化領域判定結果を出力する(ステップS210)。
<第10実施形態>
次に、第10実施形態による画像差異検出装置を説明する。図20は第10実施形態の構成を示すブロック図である。図20に示すように、第11実施形態による画像差異検出装置110は、画像入力部101と、符号化部102と、ブロックごと符号化情報特定部103と、複雑さ指標値算出部104と、変化検出部105とを備える。図21は、図20に示す画像差異検出装置10の処理動作を示すフローチャートである。
本実施形態では、画像入力部101から非圧縮の画像Aと画像Bを入力し、符号化部102で符号化を実施する。画像A、Bは、撮影日時は異なるが、撮影範囲の空間領域はほぼ同じである。そして、ブロックごと符号化情報特定部103で、符号化途中で算出される各種符号化情報を特定し、複雑さ指標値算出部104で符号化情報から複雑さ指標値を算出する。そして、変化検出部105は、この複雑さ指標値を用いて、変化領域を特定する。
次に、図20に示す画像差異検出装置10の処理動作を、図21のフローチャートを用いて説明する。まず、画像入力部101は、画像Aと画像Bを入力し、符号化部102は、画像Aおよび画像Bを符号化する(ステップS301)。符号化にはHEVC、H.264、JPEGなどが用いられる。次に、ブロックごと符号化情報特定部103は、符号化途中で算出される各種符号化情報を記録し、ログとしてメモリ領域に保管する。複雑さ指標値を算出するための符号化情報としては、以下のものを用いることが考えられる。
・ブロック(CU、CTU)における符号量
・ブロック(CU、CTU)における2値化ビット値幅(ビン)
・ブロック(CU、CTU)におけるDCT係数
続いて、複雑さ指標値算出部104は、この符号化情報から、複雑さ指標値を算出する。複雑さ指標値としては、以下の様な情報、もしくはこれらの加重和などが指標値として考えられる。
・ブロック(CU、CTU)における総符号量
・ブロック(CU、CTU)におけるDCT係数に関与する符号量
・ブロック(CU、CTU)におけるY/Cb/Crそれぞれの符号量
・ブロック(CU、CTU)における2値化ビット値幅(ビン)
・ブロック(CU、CTU)におけるDCT係数値または有意係数個数
次に、変化検出部105は、この複雑さ指標値を用いて、変化検出を行う(ステップS303)。なお、変化の検出方法は、前述の実施形態と同様である。
このように、前述の第1実施形態から第9実施形態では、変化領域を特定するのに、発生符号量を比較している。これに対して、この第9実施形態では、複雑さ指標値を比較している。
<第11実施形態>
次に、第11実施形態による画像差異検出装置を説明する。図22は第11実施形態の構成を示すブロック図である。図23は、図22に示す画像差異検出装置210の処理動作を示すフローチャートである。図22に示す画像差異検出装置210は、コンピュータ装置で構成し、符号化データ入力部201、可変長符号復号部202、ブロックごと符号化情報特定部203、複雑さ指標値算出部204、共通領域特定部205、複雑さ指標値補正部206、変化検出部207、位置情報メタデータ入力部208、線形和係数入力部209を備える。
前述までの実施形態では、画像Aおよび画像Bとして、非圧縮の画像を入力している。
これに対して、この実施形態では、符号化データ入力部201は、符号化された画像Aおよび画像Bのデータを入力する。画像A、Bは、撮影日時は異なるが、撮影範囲の空間領域はほぼ同じである。符号化方式としては、HEVC、H.264、MPEG2、MPEG、JPEG等である。そして、可変長符号復号部202は、符号化された画像A及び画像Bのデータから、可変長符号の復号を行い、ブロックごと符号化情報特定部203で、復号途中で算出される各種符号化情報を特定する。そして、複雑さ指標値算出部204は、復号途中で算出される各種符号化情報から、各ブロックのテクスチャの複雑差を模擬する複雑さ指標値を算出する。
また、位置情報メタデータ入力部208は、外部情報として、グローバルな位置情報をメタデータとして入力する。共通領域特定部205は、画像Aと画像Bとで同一の被写体を共通領域として特定する。複雑さ指標値補正部206は、画像Aおよび画像Bの共通領域上での複雑さ指標値を算出する。複雑さ指標値補正部206は、共通領域上での複雑さ指標値を算出するための線形和演算を行うフィルタを有している。線形和係数入力部209は、この線形和演算の係数を入力する。同一の被写体とは、位置情報が保存される画像ファイル間において、画像ファイル間の位置情報により同一と判断される領域である。すなわち、同一の被写体とは、ほぼ同一空間と判断される領域である。また、画像ファイルに保存される位置情報は、別途取得されてもよい。また、画像ファイルは、衛星画像、航空写真、市販されるデジタルカメラや携帯電話機等で撮影される画像であってもよい。
次に、図22に示す画像差異検出装置10の処理動作を、図23のフローチャートを用いて説明する。
まず、符号化データ入力部201は、符号化された画像AおよびBのデータを入力する。可変長符号復号部202は、そのデータの可変長符号の復号を行う(ステップS401)。次に、ブロックごと符号化情報特定部203は、各符号化ブロックが保有する符号化情報を特定し(ステップS402)、複雑さ指標値算出部204は、その符号化情報をもとにして複雑さ指標値を算出する(ステップS403)。
入力する画像AおよびBの符号化方式としては、HEVC、H.264、JPEGなどが考えらえる。これらの符号化方式では、1画面を複数のブロックに分割し、ブロック単位のイントラ又はインター予測とDCT等の直交符号により予測符号化を行い、このブロック毎の符号化データを可変長符号により圧縮符号化している。可変長符号としては、HEVCやH.264では、二値算術符号を用いている。JPEGでは、ハフマンコードを用いている。したがって、上述のステップS401からステップS403の処理は、符号化方式に応じて、具体的には、以下のような処理となる。
(1)HEVCまたはH.264にて符号化されたデータの場合
図24は、HEVCまたはH.264にて符号化されたデータの場合の処理動作を示すフローチャートである。まず、可変長符号復号部202は、算術符号(CABAC)を復号し、2値信号を取得する(ステップS501)。そして、各シンタクス要素を取得し、この2値信号を多値信号に変換する(ステップS502)。次に、ブロックごと符号化情報特定部203は、各符号化ブロック(CU、CTU)が保有する符号化情報を特定する(ステップS503)。この符号化情報としては、例えば、以下の様なものが考えられる。
・ブロック(CU、CTU)における符号量
・ブロック(CU、CTU)における2値化ビット値幅(ビン)
・ブロック(CU、CTU)におけるDCT係数
続いて、複雑さ指標値算出部204は、この符号化情報をもとに、被写体を構成するブロックの構造を反映する指標値である複雑さ指標値を算出する(ステップS504)。複雑さ指標値としては、例えば、以下の様なもの、もしくはこれらの加重和などが考えられる。
・ブロック(CU、CTU)における総符号量
・ブロック(CU、CTU)におけるDCT係数に関与する符号量
・ブロック(CU、CTU)におけるY/Cb/Crそれぞれの符号量
・ブロック(CU、CTU)における2値化ビット値幅(ビン)
・ブロック(CU、CTU)におけるDCT係数値または有意係数個数
(2)JPEGにて符号化されたデータの場合
図25は、JPEGにて符号化されたデータの場合の処理動作を示すフローチャートである。まず、可変長符号復号部202は、ハフマン符号を復号し、多値信号を出力する(ステップS601)。次に、ブロックごと符号化情報特定部203は、各ブロック(8x8)のデータ境界を特定する(ステップS602)。続いて、複雑さ指標値算出部204は、各ブロックが保持しているDCTの係数値、もしくは、有意係数の個数などを複雑さ指標として出力する(ステップS603)。
図23において、ステップS401からステップS403で、複雑さ指標値が算出されたら、共通領域特定部205は、位置情報メタデータ入力部208から位置情報メタデータを入力し、両画像間にて位置的に対応する画素位置を外部情報(メタデータ等)を用いて特定し、両画像間の共通領域を導出する(ステップS404)。このメタデータとしては、衛星画像などの場合には、その画像中の各座標が緯度経度もしくはUTM座標系等で示される地理上の位置情報が考えられる。
続いて、複雑さ指標値補正部206は、対応する画素位置を含む符号化ブロックを各画像にて特定し、ブロック間の位置差分(ずれ)の分だけ、前記の複雑さ指標値を補正する(ステップS405)。
図26は、ステップS405での共通領域における複雑さ指標値の補正処理を示すフローチャートである。また、図27は、共通領域における複雑さ指標値の補正処理の説明図である。
まず、複雑さ指標値補正部206は、画像Aおよび画像Bの各ブロックにおけるテクスチャの複雑さを示す複雑さ指標値を入力する(ステップS701)。図27に示すように、画像AのブロックをGA(s)としたとき、その複雑さ指標値をCA(GA(s))とする。ここでsは画像左上からラスタスキャン順にブロックの順列を定めた際の番号を示す。同様に画像Bの場合をCB(GB(s))と定める。
次に、複雑さ指標値補正部206は、外部情報により特定した各画像間の共通領域(地理的に重複する領域)を特定する(ステップS702)。共通領域は画素の領域(範囲)として示される。仮に画像Aと画像Bの共通領域は、画像Aでは、k1≦x≦k2、l1≦y≦l2、画像Bでは、m1≦x≦m2、n1≦y≦n2とする。ここで、x,yは縦横の画素位置である。
続いて、複雑さ指標値補正部206は、共通領域のみを画像として符号化すると想定した際の符号化ブロック位置と、画像Aおよび画像Bのそれぞれの符号化データ上で実際に符号化されている符号化ブロック位置との位置差分(差分画素数)を特定する(ステップS703)。ここでは、図27に示すように、画像Aのブロック位置差分画素数を(PA,QA)とする。
最後に、複雑さ指標値補正部206は、フィルタ演算により共通領域の各ブロック位置における複雑さ指標値を算出し、複雑さ指標値の補正を行う(ステップS704)。補正後の画像Aの共通領域におけるブロックtの複雑さ指標値をCA’(t)とすると、CA’(t)は、以下のように、記述される。
CA’(t)=Σα(s,PA,QA)*CA(GA(s))
ここで、αは、差分画素数に応じた係数である。つまり、この例では、補正後の複雑さ指標値は、もともとの複雑さ指標値群の線形和で算出される。画像Bについても同様の手順によって、補正後の複雑さ指標値を算出する。なお、線形和係数αは、画素位置に応じて0≦α(s,PA,QA)≦1を変動するように定め、かつ、Σα=1となるように外部より与える。
なお、位置差分に基づいて画像Aおよび画像Bの複雑さ指標値の補正を行う際の線形演算の係数は、前述の位置差分に対応する係数を線形和係数入力部109から、ブロックに起因する位置ずれを補正するための係数を入力して設定すれば良い。また、複雑さ指標値補正部206において線形演算を行う係数として予め複数用意しておき、位置差分に対応する係数をその中から選定しても良い。また、CAからCA’へのフィルタ演算には、非線形演算が用いられてもよい。フィルタ係数は、画像差異検出装置10に予め記憶されていてもよい。この場合、複雑さ指標値補正部206は、このフィルタ係数を用いてフィルタ演算を行ってもよい。この時、異なるフィルタ演算(例えば、非線形演算)が用いられてもよい。
図27に示すように、共通領域におけるブロックtの複雑さ指標値をCA’(t)は、画像AのブロックGA(s)の複雑さ指標値CA(GA(s))に対して、差分画素数(PA,QA)を基に線形演算を行うことで求められる。同様に、共通領域におけるブロックtの複雑さ指標値をCB’(t)は、画像BのブロックGB(s)の複雑さ指標値をCB(GB(s))に対して、差分画素数(PB,QB)を基に線形演算を行うことで求められる。
図23において、ステップS405で、画像Aおよび画像Bの複雑さ指標値を補正したら、変化検出部207は、補正後の複雑さ指標値を用いて、画像Aおよび画像Bとで同一となる領域を特定し、変化検出を行う(ステップS406)。補正後の複雑さ指標値を用いて変化検出を行う処理は、前述の実施形態と同様である。
なお、各実施形態では、撮影した時刻が異なる複数の画像の変化を検出するものとなっているが、撮影した場所、時刻に限定されず複数の画像の差異を検出する用途にも適用可能である。
以上説明したように、衛星画像、航空画像、医療画像等において、撮影日時が異なる同一空間領域の画像同士を比較することにより、変化領域(差異がある位置)を高速に検出することができるようになる。
本実施形態では、符号化された画像Aおよび画像Bから画像の変化を検出する際に、全ての符号の復号を行わず、復号途中の情報から複雑さ指標値を求めて、変化領域を検出している。すなわち、一般的な画像の符号化方式では、1画面を複数のブロックに分割し、ブロック単位のイントラ又はインター予測と直交符号により予測符号化をする段階と、このブロック毎の符号化データを可変長符号により圧縮符号化する段階とを有している。したがって、画像を復号するには、可変長符号の復号段階と、直交符号の復号段階とが必要であり、演算量が膨大になる。本実施形態では、可変長符号の復号だけを行った段階の情報から複雑さ指標値を求めて、変化領域を検出している。このため、演算量が大幅に削減され、高速動作が可能になる。
なお、各実施形態の符号化方式としてはHEVC以外、例えばAVC、MPEG、MPEG−2、JPEG等を用いることも可能である。さらにマクロブロックや符号化サイズより大きいまたは小さいサイズで分割した領域毎に実施することも可能であり、同様の効果を奏する。また、符号化情報としては、発生符号量の代わりに、各領域のアクティビティ平均値・最大値、DCTで得られるDC係数および、各符号化モード等、符号化の結果で得られる各情報を用いることも可能であり、同様の効果を奏する。
また、前述した説明では撮影した時刻が異なる複数の画像の変化を検出するものとなっているが、前述した画像差異検出装置は、撮影した場所、時刻に限定されず複数の画像の差異を検出する用途にも適用可能である。
また、前述した説明においては、矩形の小領域(ブロック)に分割する符号化方式を用いて、差異がある小領域を特定するようにしたが、領域の特定は必須ではなく、単に2つの画像に差異があることを符号量の違いによって検出するようにしてもよい。
また、本実施形態は符号量を比較することで変化の判断を行う。比較を行う画像がほぼ同じ地点から撮影されたものであっても精細感などが異なると全体として情報量が大きく変わってしまうため「全体の符号量を近づける処理」を行うことを前提として行っている。
また、本実施形態は符号化を行う規格によらず使用することができるが、その中でも「可変ビットレート」であることが更に効果的である。
また、前述した画像差異検出装置は、他の技術と合わせて使用することも可能である。
また、前述した実施形態の変化の判定は、変化の判定のみならず、通常の符号化とセットで使うことも可能である。したがって、前述の画像差異検出装置は、他の目的を達成するものであってもよい。
以上説明したように、衛星画像、航空画像、医療画像等において、撮影日時が異なる同一空間領域の画像同士を比較することによりし、変化領域(差異がある位置)を高速に検出することができるようになる。
画像間の変化を検出する従来技術と比較して、符号量を視標として用いる本実施形態は高速にかつ演算量を削減することができる。従来技術と同様の環境で、従来技術と本実施形態とを比較をした際、結果が出力されるまで要する時間が大幅に短縮される結果が得られた。
<第12実施形態>
第12実施形態では、画像差異検出装置が複数の画像に基づいて参照画像を生成する点が、第1〜第11実施形態と相違する。第12実施形態では、第1〜第11実施形態との相違点についてのみ説明する。
図28は、第12実施形態における、画像差異検出装置310の構成の例を示すブロック図である。画像差異検出装置310は、画像間の差異の有無を判定する装置である。画像差異検出装置310は、画像生成装置として、対象画像との差異の有無を判定する対象である参照画像を複数の画像を合成して生成する。画像差異検出装置310は、画像入力部320と、参照画像生成部330と、変化検出部340と、記憶部350とを備える。画像入力部320と参照画像生成部330と変化検出部340とのうち一部又は全部は、例えば、CPU(Central Processing Unit)等のプロセッサが、記憶部に記憶されたプログラムを実行することにより実現されてもよいし、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)等のハードウェアを用いて実現されてもよい。
画像入力部320は、対象画像取得部321と、素材画像取得部322とを備える。対象画像取得部321は、ほぼ同一の空間領域が撮像された時系列の画像のうち、対象画像を取得する。対象画像取得部321は、取得された対象画像を変化検出部340に送信する。素材画像取得部322は、時系列の画像のうち参照画像の素材となる画像(以下「素材画像」という)を取得する。素材画像は、複数であって、対象画像以外の画像である。複数とは少なくとも2枚以上である。素材画像取得部322は、取得された複数の素材画像を参照画像生成部330に送信する。
参照画像生成部330は、時間方向のフィルタ処理であるテンポラルフィルタ処理を複数の素材画像に施すことによって、参照画像を生成する。参照画像生成部330は、制御情報取得部331と、適用決定部332と、メディアンフィルタ処理部333とを備える。制御情報取得部331は、複数の素材画像を合成するフィルタ処理の制御情報(以下「制御情報」という。)を取得する。制御情報は、例えば、素材画像間における差異の有無を表す情報と、素材画像における雲等の被覆体の画像の有無を表す情報と、素材画像における車両等の移動体の画像の有無を表す情報とのうち少なくとも一つである。制御情報は、どのような方法を用いて定められてもよいが、例えば特許文献1に開示された検出方法等を用いて定められる。
適用決定部332は、ほぼ同一の空間領域が撮像された複数の素材画像を、素材画像取得部322から取得する。適用決定部332は、制御情報を制御情報取得部331から取得する。適用決定部332は、時間方向のメディアンフィルタであるテンポラルフィルタを適用する素材画像を、制御情報に基づいて決定する。適用決定部332は、水蒸気や撮像条件の影響による画像のぼやけ、画像のキズ、画像のゆがみ等の画像劣化事象が発生していない素材画像を、テンポラルフィルタを適用する複数の素材画像と決定してもよい。適用決定部332は、テンポラルフィルタを適用する素材画像として決定された素材画像を表す情報を、メディアンフィルタ処理部333に送信する。
メディアンフィルタ処理部333は、複数の素材画像を素材画像取得部322から取得する。メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像として決定された複数の素材画像にメディアンフィルタ処理を施すことによって、複数の素材画像を合成して参照画像を生成する。メディアンフィルタ処理部333は、生成された参照画像を変化検出部340に送信する。
変化検出部340は、対象画像と参照画像との差異の有無を判定する。対象画像及び参照画像が衛星画像等である場合、変化検出部340は、対象画像と参照画像との差異の有無を判定することによって、ほぼ同一の空間領域における地物の変化を検出する。変化検出部340が対象画像と参照画像との差異の有無を判定する方法は、特定の方法に限定されない。変化検出部340は、第1〜第11実施形態の少なくとも一つにおいて説明した判定方法を用いて、対象画像と参照画像との差異の有無を判定してもよい。
変化検出部340は、対象画像と参照画像との差異の有無を、従来の変化検出手法を用いて判定してもよい。例えば、変化検出部340は、対象画像と参照画像との差異の有無を、対象画像及び参照画像の間の画素値の差に基づいて判定してもよい。変化検出部340は、対象画像と参照画像との差異の有無の判定結果を表す情報を外部に出力する。
記憶部350は、磁気ハードディスク装置や半導体記憶装置等の不揮発性の記録媒体(非一時的な記録媒体)を有する記憶装置である。記憶部350は、画像間の差異の有無を判定するための画像差異検出プログラムを記憶する。記憶部350は、画像を生成するための画像生成プログラムを記憶する。記憶部350は、時間に関する情報である撮像日時等の撮像条件の情報に対応付けて、時系列の画像を記憶する。
図29は、第12実施形態における、時系列の画像の第1例を示す図である。適用決定部332は、ほぼ同一の空間領域が撮像された時系列の画像400−0〜400−3を取得する。時系列の画像400は、例えば、航空画像又は衛星画像である。画像400−0は対象画像である。画像400−1の撮像日時は、画像400−0の撮像日時の1カ月前である。画像400−2の撮像日時は、画像400−0の撮像日時の2カ月前である。画像400−3の撮像日時は、画像400−0の撮像日時の3カ月前である。画像400−1〜400−3は、素材画像である。画像400−0は、地物410−0の画像を含む。画像400−1は、地物410−1の画像を含む。画像400−2は、地物410−2の画像を含む。
制御情報取得部331は、素材画像間における差異の有無を表す情報を、制御情報として取得する。図29では、制御情報取得部331は、画像400−1と画像400−2との間に差異がないことを表す情報を取得する。制御情報取得部331は、画像400−2と画像400−3との間に差異があることを表す情報を取得してもよい。適用決定部332は、素材画像間に差異がないと判定された画像400−1及び画像400−2を、メディアンフィルタを適用する素材画像として決定する。すなわち、適用決定部332は、画像400−1及び画像400−2との間に差異があると判定された画像400−3を、メディアンフィルタを適用する対象から除外する。
メディアンフィルタ処理部333は、異なる素材画像の間における空間的にほぼ同じ位置の画素値の中央値のうち、選択された素材画像の画素値の中央値に基づいて参照画像を生成する。メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像として決定された画像400−1及び画像400−2の画素値に、式(1)に示されたメディアンフィルタ処理を施す。
h=median(g(−1), g(−2)) …(1)
ここで、hは、参照画像である画像420の画素値を表す。g(−1)は、画像400−1の画素値を表す。g(−2)は、画像400−2の画素値を表す。関数medianは、引数の画素値の中央値を出力する関数である。関数medianは、画素値の要素数が偶数である場合、中央値に近い2個の要素のうち大きい値又は小さい値を中央値としてもよい。関数medianは、画素値の要素数が偶数である場合、中央値に近い2個の要素の平均値を中央値としてもよい。
メディアンフィルタ処理部333は、式(1)に示されたメディアンフィルタ処理によって、地物430の画像を含む画像420を生成する。変化検出部340は、画像400−0の撮像日時から画像400−1の撮像日時(1カ月前)までの地物の変化を、画像400−0の画素値f(0)と画像420の画素値hとの間の差異の有無に基づいて検出する。
図30は、第12実施形態における、時系列の画像の第2例を示す図である。適用決定部332は、ほぼ同一の空間領域が撮像された時系列の画像500−0〜500−3を取得する。時系列の画像500は、例えば、航空画像又は衛星画像である。画像500−0は対象画像である。画像500−1の撮像日時は、画像500−0の撮像日時の1カ月前である。画像500−2の撮像日時は、画像500−0の撮像日時の2カ月前である。画像500−3の撮像日時は、画像500−0の撮像日時の3カ月前である。画像500−1〜500−3は、素材画像である。画像500−0は、地物520の画像を含む。画像500−1は、車両等の移動体510の画像を含む。
制御情報取得部331は、素材画像における車両等の移動体の画像の有無を表す情報を、制御情報として取得する。図30では、制御情報取得部331は、画像500−1が移動体510の画像を含むことを表す情報を取得する。適用決定部332は、移動体510の画像を含まないと判定された画像500−2及び画像500−3を、メディアンフィルタを適用する素材画像として決定する。
メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像として決定された画像500−2及び画像500−3の画素値に、式(2)に示されたメディアンフィルタ処理を施す。
h=median(g(−2), g(−3)) …(2)
ここで、hは、参照画像である画像530の画素値を表す。g(−2)は、画像500−2の画素値を表す。g(−3)は、画像500−3の画素値を表す。関数medianは、引数の画素値の中央値を出力する関数である。メディアンフィルタ処理部333は、式(2)に示されたメディアンフィルタ処理によって、移動体510の画像を含まない画像530を生成する。変化検出部340は、画像500−0の撮像日時から画像500−1の撮像日時(1カ月前)までの地物の変化を、画像500−0の画素値f(0)と画像530の画素値hとの間の差異の有無に基づいて検出する。
図31は、第12実施形態における、時系列の画像の第3例を示す図である。適用決定部332は、ほぼ同一の空間領域が撮像された時系列の画像600−0〜600−3を取得する。時系列の画像600は、例えば、航空画像又は衛星画像である。画像600−0は対象画像である。画像600−1の撮像日時は、画像600−0の撮像日時の1カ月前である。画像600−2の撮像日時は、画像600−0の撮像日時の2カ月前である。画像600−3の撮像日時は、画像600−0の撮像日時の3カ月前である。画像600−1〜600−3は、素材画像である。画像600−1は、地物610−1の画像を含む。画像600−2は、地上を覆う雲等の被覆体620の画像を含む。画像600−3は、地物610−3の画像を含む。
制御情報取得部331は、素材画像における雲等の被覆体の画像の有無を表す情報を、制御情報として取得する。被覆体が雲である場合、雲の画像の有無を表す情報は、例えば、過去における空間領域ごとの雲の状況を表す気象情報の記録に基づいて定められてもよい。図31では、制御情報取得部331は、画像600−2が被覆体620の画像を含むことを表す情報を取得する。適用決定部332は、被覆体620の画像を含まないと判定された画像600−1及び画像600−3を、メディアンフィルタを適用する素材画像として決定する。
メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像として決定された画像600−1及び画像600−3の画素値に、式(3)に示されたメディアンフィルタ処理を施す。
h=median(g(−1), g(−3)) …(3)
ここで、hは、参照画像である画像630の画素値を表す。g(−1)は、画像600−1の画素値を表す。g(−3)は、画像600−3の画素値を表す。関数medianは、引数の画素値の中央値を出力する関数である。メディアンフィルタ処理部333は、式(3)に示されたメディアンフィルタ処理によって、被覆体620の画像を含まない参照画像630を生成する。変化検出部340は、画像600−0の撮像日時から画像600−1の撮像日時(1カ月前)までの地物の変化を、画像600−0の画素値f(0)と参照画像630の画素値hとの間の差異の有無に基づいて検出する。
なお、適用決定部332は、時間方向のメディアンフィルタであるテンポラルフィルタを適用する素材画像を、複数の制御情報の組み合わせに基づいて決定してもよい。例えば、適用決定部332は、素材画像間に差異があると判定された画像と、被覆体又は移動体の画像を含むと判定された画像とのいずれも、テンポラルフィルタを適用する対象から除外してよい。
次に、第12実施形態における、画像差異検出装置の動作の例を説明する。
図32は、第12実施形態における、画像差異検出装置の動作の例を示すフローチャートである。画像入力部320は、対象画像と複数の素材画像とを取得する(ステップS801)。制御情報取得部331は、素材画像間における差異の有無を表す情報と、素材画像における雲等の被覆体の画像の有無を表す情報と、素材画像における車両等の移動体の画像の有無を表す情報とのうち少なくとも一つを、制御情報として取得する(ステップS802a)。
適用決定部332は、メディアンフィルタを適用する素材画像を、制御情報に基づいて決定する(ステップS803a)。メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像として決定された複数の素材画像にメディアンフィルタ処理を施すことによって、複数の素材画像から参照画像を生成する(ステップS804a)。変化検出部340は、対象画像と参照画像との差異の有無を判定する(ステップS805a)。
以上のように、第12実施形態の画像差異検出装置310は、対象画像取得部321と、素材画像取得部322と、参照画像生成部330とを備える。対象画像取得部321は、対象画像を取得する。素材画像取得部322は、複数の素材画像を合成する時間方向のメディアンフィルタを適用する複数の素材画像を取得する。参照画像生成部330は、対象画像との差異の有無を判定する対象である参照画像を、複数の素材画像を合成して生成する。これによって、第12実施形態の画像差異検出装置310は、画像間の差異の有無の判定精度を向上させるための画像を生成することが可能である。
対象画像取得部321は、第1実施形態の変化検出部4や第11実施形態の変化検出部4のように変化検出部340が符号化量に基づいて差異の有無を判定する場合、第1実施形態や第11実施形態のように、対象画像を符号化部3に送信する。参照画像生成部330は、第1実施形態の変化検出部4や第11実施形態の変化検出部4のように変化検出部340が符号化量に基づいて差異の有無を判定する場合には、第1実施形態や第11実施形態のように符号化部3に参照画像を送信する。
<第13実施形態>
第13実施形態では、画像内に複数の領域が含まれている点が、第12実施形態と相違する。第13実施形態では、第12実施形態との相違点についてのみ説明する。
図33は、第13実施形態における、時系列の画像の例を示す図である。画像差異検出装置310は、対象LCUの領域との差異の有無を判定する対象である参照画像内の同位置LCUの領域を、複数の画像内の少なくとも一部の領域を合成して生成してもよい。適用決定部332は、ほぼ同一の空間領域が撮像された時系列の画像700−0〜700−3を取得する。時系列の画像700は、例えば、航空画像又は衛星画像である。画像700−0は対象画像である。画像700−1の撮像日時は、画像700−0の撮像日時の1カ月前である。画像700−2の撮像日時は、画像700−0の撮像日時の2カ月前である。画像700−3の撮像日時は、画像700−0の撮像日時の3カ月前である。画像700−1〜700−3は、素材画像である。
画像700は、一例として、領域710と領域720と領域730と領域740とを含む。画像700−0の領域710−0は、地物711−0の画像を含む。画像700−0の領域720−0は、地物721−0の画像を含む。画像700−0の領域730−0は、地物731−0の画像を含む。画像700−1の領域710−1は、地物711−1の画像を含む。画像700−1の領域720−1は、地物721−1の画像を含む。画像700−1の領域730−1は、移動体731の画像を含む。画像700−1の領域740−1は、地物741−1の画像を含む。画像700−2の領域710−2は、地物711−2の画像を含む。画像700−2の領域720−2は、地物721−2の画像を含む。画像700−2の領域740−2は、被覆体742の画像を含む。画像700−3の領域710−3は、地物711−3の画像を含む。画像700−3の領域740−3は、地物741−3の画像を含む。
まず、制御情報が素材画像内の領域間における差異の有無を表す情報である場合について説明する。
制御情報取得部331は、素材画像内の領域間における差異の有無を表す情報を、制御情報として取得する。図33では、適用決定部332は、画像700−2の領域720−2との間に差異があると判定された画像700−3の領域720−3を、メディアンフィルタを適用する対象から除外する。
適用決定部332は、画像700−2の領域720−2との間に差異がないと判定された画像700−1の領域720−1を、メディアンフィルタを適用する対象と定める。適用決定部332は、画像700−1の領域720−1との間に差異がないと判定された画像700−2の領域720−2を、メディアンフィルタを適用する対象と定める。他の領域についても同様に、適用決定部332は、対象から除外されていない画像700の領域を、メディアンフィルタを適用する素材画像の領域と決定する。
メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像の領域の画素値に、式(4)〜式(7)に示されたメディアンフィルタ処理を施す。
h1=median(g1(−1), g1(−2), g1(−3)) …(4)
h2=median(g2(−1), g2(−2)) …(5)
h3=median(g3(−1), g3(−2), g3(−3)) …(6)
h4=median(g4(−1), g4(−2), g4(−3)) …(7)
ここで、添え字(1)は、領域710の画素値であることを表す。添え字(2)は、領域720の画素値であることを表す。添え字(3)は、領域730の画素値であることを表す。添え字(4)は、領域740の画素値であることを表す。以下では、添え字(x)は1〜4のいずれかである。hxは、参照画像である画像750の領域の画素値を表す。gx(−1)は、画像700−1の領域の画素値を表す。gx(−2)は、画像700−2の領域の画素値を表す。gx(−3)は、画像700−3の領域の画素値を表す。関数medianは、引数の画素値の中央値を出力する関数である。
メディアンフィルタ処理部333は、複数の素材画像を領域ごとに合成して、画像750を生成する。すなわち、メディアンフィルタ処理部333は、式(4)〜式(7)に示されたメディアンフィルタ処理によって、領域ごとに画像750を生成する。変化検出部340は、画像700−0の撮像日時から画像700−1の撮像日時(1カ月前)までの地物の変化を、画像700−0の領域の画素値f(0)と画像750の領域の画素値hとの間の差異の有無に基づいて検出する。
次に、制御情報が素材画像内の領域における雲等の被覆体の画像の有無を表す情報である場合について説明する。
制御情報取得部331は、素材画像内の領域における雲等の被覆体の画像の有無を表す情報を、制御情報として取得する。図33では、適用決定部332は、被覆体742の画像があると判定された画像700−2の領域740−2を、メディアンフィルタを適用する対象から除外する。適用決定部332は、対象から除外されていない画像700の領域を、メディアンフィルタを適用する素材画像の領域と決定する。
メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像の領域の画素値に、式(8)〜式(11)に示されたメディアンフィルタ処理を施す。
h1=median(g1(−1), g1(−2), g1(−3)) …(8)
h2=median(g2(−1), g2(−2), g2(−3)) …(9)
h3=median(g3(−1), g3(−2), g3(−3)) …(10)
h4=median(g4(−1), g4(−3)) …(11)
ここで、各記号は、式(4)〜式(7)と同様である。メディアンフィルタ処理部333は、式(8)〜式(11)に示されたメディアンフィルタ処理によって、領域ごとに画像750を生成する。変化検出部340は、画像700−0の撮像日時から画像700−1の撮像日時(1カ月前)までの地物の変化を、画像700−0の領域の画素値f(0)と画像750の領域の画素値hとの間の差異の有無に基づいて検出する。
次に、制御情報が素材画像内の領域における車両等の移動体の画像の有無を表す情報である場合について説明する。
制御情報取得部331は、素材画像内の領域における車両等の移動体の画像の有無を表す情報を、制御情報として取得する。図33では、適用決定部332は、移動体731の画像があると判定された画像700−1の領域730−1を、メディアンフィルタを適用する対象から除外する。適用決定部332は、対象から除外されていない画像700の領域を、メディアンフィルタを適用する素材画像の領域と決定する。
メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像の領域の画素値に、式(8)〜式(11)に示されたメディアンフィルタ処理を施す。
h1=median(g1(−1), g1(−2), g1(−3)) …(12)
h2=median(g2(−1), g2(−2), g2(−3)) …(13)
h3=median(g3(−2), g3(−3)) …(14)
h4=median(g4(−1), g1(−2), g4(−3)) …(15)
ここで、各記号は、式(4)〜式(7)と同様である。メディアンフィルタ処理部333は、式(12)〜式(15)に示されたメディアンフィルタ処理によって、領域ごとに画像750を生成する。変化検出部340は、画像700−0の撮像日時から画像700−1の撮像日時(1カ月前)までの地物の変化を、画像700−0の領域の画素値f(0)と画像750の領域の画素値hとの間の差異の有無に基づいて検出する。
次に、制御情報が、(i)素材画像内の領域間における差異の有無を表す情報と、(ii)素材画像内の領域における雲等の被覆体の画像の有無を表す情報と、(iii)素材画像内の領域における車両等の移動体の画像の有無を表す情報との組み合わせである場合について説明する。
制御情報取得部331は、複数の制御情報(i)〜(iii)を取得する。適用決定部332は、時間方向のメディアンフィルタであるテンポラルフィルタを適用する素材画像を、複数の制御情報(i)〜(iii)の組み合わせに基づいて決定してもよい。例えば、適用決定部332は、素材画像内の領域間に差異があると判定された画像の領域と、被覆体又は移動体の画像を含むと判定された画像内の領域とのいずれも、テンポラルフィルタを適用する対象から除外してよい。
メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像の領域の画素値に、式(8)〜式(11)に示されたメディアンフィルタ処理を施す。
h1=median(g1(−1), g1(−2), g1(−3)) …(16)
h2=median(g2(−1), g2(−2)) …(17)
h3=median(g3(−2), g3(−3)) …(18)
h4=median(g4(−1), g4(−3)) …(19)
ここで、各記号は、式(4)〜式(7)と同様である。メディアンフィルタ処理部333は、式(16)〜式(19)に示されたメディアンフィルタ処理によって、領域ごとに画像750を生成する。変化検出部340は、画像700−0の撮像日時から画像700−1の撮像日時(1カ月前)までの地物の変化を、画像700−0の領域の画素値f(0)と画像750の領域の画素値hとの間の差異の有無に基づいて検出する。
次に、第13実施形態における、画像差異検出装置の動作の例を説明する。
図34は、第13実施形態における、画像差異検出装置の動作の例を示すフローチャートである。画像入力部320は、対象画像と複数の素材画像とを取得する(ステップS801)。制御情報取得部331は、素材画像内の領域間における差異の有無を表す情報と、素材画像内の領域における雲等の被覆体の画像の有無を表す情報と、素材画像内の領域における車両等の移動体の画像の有無を表す情報とのうち少なくとも一つを、制御情報として取得する(ステップS802b)。
適用決定部332は、メディアンフィルタを適用する素材画像内の領域を、制御情報に基づいて決定する(ステップS803b)。メディアンフィルタ処理部333は、メディアンフィルタを適用する素材画像として決定された複数の素材画像内の領域にメディアンフィルタ処理を施すことによって、複数の素材画像から参照画像を生成する(ステップS804b)。変化検出部340は、対象画像と参照画像との差異の有無を領域ごとに判定する(ステップS805b)。
以上のように、第13実施形態の画像差異検出装置310は、対象画像取得部321と、素材画像取得部322と、参照画像生成部330とを備える。対象画像取得部321は、対象画像を取得する。素材画像取得部322は、複数の素材画像を合成する時間方向のメディアンフィルタを適用する複数の素材画像を取得する。参照画像生成部330は、対象画像内の領域との差異の有無を判定する対象である参照画像内の領域を、複数の素材画像内の領域を合成して生成する。これによって、第13実施形態の画像差異検出装置310は、画像内の少なくとも一部の領域間の差異の有無の判定精度を向上させるための画像を生成することが可能である。
<第14実施形態>
第14実施形態では、画像差異検出装置が線形フィルタを用いて参照画像を生成する点が、第12実施形態と相違する。第14実施形態では、第12実施形態との相違点についてのみ説明する。
図35は、第14実施形態における、画像差異検出装置の構成の例を示すブロック図である。参照画像生成部330は、時間方向の線形フィルタであるテンポラルフィルタ処理を複数の素材画像に施すことによって参照画像を生成する。参照画像生成部330は、制御情報取得部331と、適用決定部334と、線形フィルタ処理部335とを備える。
制御情報取得部331は、制御情報を取得する。制御情報は、例えば、素材画像間における差異の有無を表す情報と、素材画像における雲等の被覆体の画像の有無を表す情報と、素材画像における車両等の移動体の画像の有無を表す情報と、時系列の画像の撮像日時を表す情報とである。
適用決定部334は、ほぼ同一の空間領域が撮像された複数の素材画像を、素材画像取得部322から取得する。適用決定部334は、制御情報を制御情報取得部331から取得する。適用決定部334は、線形フィルタ処理部335が画像に施す線形フィルタ処理(積和演算)における重み係数(重み付け)を、制御情報に基づいて決定する。適用決定部334は、水蒸気や撮像条件の影響による画像のぼやけ、画像のキズ、画像のゆがみ等の画像劣化事象が素材画像に発生しているか否かに応じた制御情報に基づいて、重み係数を決定してもよい。
線形フィルタ処理部335は、複数の素材画像を素材画像取得部322から取得する。線形フィルタ処理部335は、異なる素材画像の間における空間的にほぼ同じ位置の画素値の重み係数のうち、選択された素材画像の画素値の重み係数に基づいて参照画像を生成する。線形フィルタ処理部335は、複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像を合成して参照画像を生成する。線形フィルタ処理部335は、式(20)に示された線形フィルタ処理を画像に施す。
h=p×g(−1)+q×g(−2)+r×g(−3) …(20)
ここで、pは、画像400−1の画素値g(−1)に乗算される重み係数である。qは、画像400−2の画素値g(−2)に乗算される重み係数である。rは、画像400−3の画素値g(−3)に乗算される重み係数である。重み係数p、q及びrの和は1でもよい。重み係数p、q及びrのうち1個以上の重み係数は、0でもよい。
まず、制御情報が素材画像内の領域間における差異の有無を表す情報である場合について説明する。
制御情報取得部331は、素材画像間における差異の有無を表す情報を、制御情報として取得する。図29に示された時系列の画像に対して、適用決定部334は、素材画像間に差異がないと判定された画像400−1及び画像400−2の重み係数よりも、素材画像間に差異があると判定された画像400−3の重み係数を小さくする。例えば、適用決定部334は、素材画像間に差異がないと判定された画像400−1及び画像400−2に施される線形フィルタ処理における重み係数よりも、素材画像間に差異があると判定された画像400−3に施される線形フィルタ処理における重み係数を小さくする。適用決定部334は、式(21)に示すように重み係数を決定する。
p=q>>r …(21)
適用決定部334は、時間方向の線形フィルタであるテンポラルフィルタを適用する素材画像の重み係数を、2個の制御情報の組み合わせに基づいて決定してもよい。例えば、適用決定部334は、撮像日時が古い素材画像の重み係数を、式(22)に示すように小さくしてもよい。適用決定部334は、決定された重み係数を表す情報を、線形フィルタ処理部335に送信する。
p≧q>>r …(22)
線形フィルタ処理部335は、式(21)又は式(22)に示された重み係数に基づいて複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する。線形フィルタ処理部335は、生成された参照画像を変化検出部340に送信する。
次に、制御情報が素材画像内の領域における車両等の移動体の画像の有無を表す情報である場合について説明する。
制御情報取得部331は、素材画像における車両等の移動体の画像の有無を表す情報を、制御情報として取得する。図30に示された時系列の画像に対して、適用決定部334は、移動体510の画像を含まないと判定された画像500−2及び画像500−3の重み係数よりも、移動体510の画像を含むと判定された画像500−1の重み係数を小さくする。例えば、適用決定部334は、移動体510の画像を含まないと判定された画像500−2及び画像500−3に施される線形フィルタ処理における重み係数よりも、移動体510の画像を含むと判定された画像500−1に施される線形フィルタ処理における重み係数を小さくする。適用決定部334は、式(23)に示すように重み係数を決定する。
q=r>>p …(23)
適用決定部334は、撮像日時が古い素材画像の重み係数を、式(24)に示すように小さくしてもよい。適用決定部334は、決定された重み係数を表す情報を、線形フィルタ処理部335に送信する。
q≧r>>p …(24)
線形フィルタ処理部335は、式(23)又は式(24)に示された重み係数に基づいて複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する。線形フィルタ処理部335は、生成された参照画像を変化検出部340に送信する。
次に、制御情報が素材画像内の領域における雲等の被覆体の画像の有無を表す情報である場合について説明する。
制御情報取得部331は、素材画像における雲等の被覆体の画像の有無を表す情報を、制御情報として取得する。図31に示された時系列の画像に対して、適用決定部334は、被覆体620の画像を含まないと判定された画像600−1及び画像600−3の重み係数よりも、被覆体620の画像を含むと判定された画像600−2の重み係数を小さくする。例えば、適用決定部334は、被覆体620の画像を含まないと判定された画像600−1及び画像600−3に施される線形フィルタ処理における重み係数よりも、被覆体620の画像を含むと判定された画像600−2に施される線形フィルタ処理における重み係数を小さくする。適用決定部334は、式(25)に示すように重み係数を決定する。
p=r>>q …(25)
適用決定部334は、撮像日時が古い素材画像の重み係数を、式(26)に示すように小さくしてもよい。適用決定部334は、決定された重み係数を表す情報を、線形フィルタ処理部335に送信する。
p≧r>>q …(26)
線形フィルタ処理部335は、式(25)又は式(26)に示された重み係数に基づいて複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する。線形フィルタ処理部335は、生成された参照画像を変化検出部340に送信する。
次に、制御情報が、(i)素材画像内の領域間における差異の有無を表す情報と、(ii)素材画像内の領域における雲等の被覆体の画像の有無を表す情報と、(iii)素材画像内の領域における車両等の移動体の画像の有無を表す情報と、(iv)素材画像の撮像日時を表す情報との組み合わせである場合について説明する。
適用決定部334は、時間方向の線形フィルタであるテンポラルフィルタを適用する素材画像の重み係数を、2個以上の制御情報の組み合わせに基づいて決定してもよい。例えば、適用決定部334は、素材画像間に差異があると判定された画像の重み係数と、被覆体又は移動体の画像を含むと判定された画像の重み係数と、撮像日時が古い画像の重み係数とを小さくしてもよい。例えば、適用決定部334は、同じ季節に撮像された素材画像の重み係数を、異なる季節に撮像された素材画像の重み係数と比較して大きくしてもよい。
次に、第14実施形態における、画像差異検出装置の動作の例を説明する。
図36は、第14実施形態における、画像差異検出装置の動作の第1例を示すフローチャートである。画像入力部320は、対象画像と複数の素材画像とを取得する(ステップS901)。制御情報取得部331は、素材画像間における差異の有無を表す情報と、素材画像における雲等の被覆体の画像の有無を表す情報と、素材画像における車両等の移動体の画像の有無を表す情報と、素材画像の撮像日時を表す情報とのうち少なくとも一つを、制御情報として取得する(ステップS902a)。
適用決定部334は、線形フィルタを適用する素材画像を、制御情報に基づいて決定する(ステップS903a)。線形フィルタ処理部335は、線形フィルタを適用する素材画像として決定された複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する(ステップS904a)。変化検出部340は、対象画像と参照画像との差異の有無を判定する(ステップS905a)。
以上のように、第14実施形態の画像差異検出装置310は、対象画像取得部321と、素材画像取得部322と、参照画像生成部330とを備える。対象画像取得部321は、対象画像を取得する。素材画像取得部322は、複数の素材画像を合成する時間方向の線形フィルタを適用する複数の素材画像を取得する。参照画像生成部330は、対象画像との差異の有無を判定する対象である参照画像を、複数の素材画像を合成して生成する。これによって、第14実施形態の画像差異検出装置310は、画像間の差異の有無の判定精度を向上させるための画像を生成することが可能である。
<第15実施形態>
第15実施形態では、画像内に複数の領域が含まれている点が、第14実施形態と相違する。第15実施形態では、第14実施形態との相違点についてのみ説明する。
適用決定部334は、線形フィルタ処理部335が画像内の領域に施す線形フィルタ処理(積和演算)における重み係数を、制御情報に基づいて決定する。線形フィルタ処理部335は、式(27)に示された線形フィルタ処理を、領域ごとに画像に施す。
hx=px×gx(−1)+qx×gx(−2)+rx×gx(−3) …(27)
ここで、添え字(x)は1〜4のいずれかである。p1〜p4は、画像700−1の領域の画素値g1(−1)〜g4(−1)に乗算される重み係数である。q1〜q4は、画像700−2の領域の画素値g1(−2)〜g4(−2)に乗算される重み係数である。r1〜r4は、画像700−3の領域710−3の画素値g1(−3)〜g4(−3)に乗算される重み係数である。重み係数px、qx及びrxの和は1でもよい。重み係数px、qx及びrxのうち1個以上の重み係数は、0でもよい。
まず、制御情報が素材画像内の領域間における差異の有無を表す情報である場合について説明する。
制御情報取得部331は、素材画像内の領域間における差異の有無を表す情報を、制御情報として取得する。図33に示された時系列の画像に対して、適用決定部334は、例えば、素材画像間に差異がないと判定された領域720−1及び領域720−2の重み係数よりも、素材画像間に差異があると判定された領域720−3の重み係数を小さくする。適用決定部334は、式(28)〜式(31)に示すように重み係数を決定する。式(28)、式(30)及び式(31)では、重み係数の和は1である。
p1=q1=r1 …(28)
p2=q2>>r2 …(29)
p3=q3=r3 …(30)
p4=q4=r4 …(31)
適用決定部334は、時間方向の線形フィルタであるテンポラルフィルタを適用する素材画像を、2個の制御情報の組み合わせに基づいて決定してもよい。例えば、適用決定部334は、撮像日時が古い素材画像の重み係数を、式(32)〜式(35)に示すように小さくしてもよい。
p1≧q1≧r1 …(32)
p2≧q2>>r2 …(33)
p3≧q3≧r3 …(34)
p4≧q4≧r4 …(35)
線形フィルタ処理部335は、式(28)〜式(31)と式(32)〜式(35)とのうちいずれかに示された重み係数に基づいて複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する。線形フィルタ処理部335は、生成された参照画像を変化検出部340に送信する。
次に、制御情報が素材画像内の領域における雲等の被覆体の画像の有無を表す情報である場合について説明する。
制御情報取得部331は、被覆体の画像の有無の有無を表す情報を、制御情報として取得する。図33に示された時系列の画像に対して、適用決定部334は、被覆体742の画像を含まないと判定された画像700−1及び画像700−3の重み係数よりも、被覆体742の画像を含むと判定された画像700−2の重み係数を小さくする。適用決定部334は、式(36)〜式(39)に示すように重み係数を決定する。式(36)〜式(38)では、重み係数の和は1である。
p1=q1=r1 …(36)
p2=q2=r2 …(37)
p3=q3=r3 …(38)
p4=r4>>q4 …(39)
適用決定部334は、時間方向の線形フィルタであるテンポラルフィルタを適用する素材画像を、2個の制御情報の組み合わせに基づいて決定してもよい。例えば、適用決定部334は、撮像日時が古い素材画像の重み係数を、式(40)〜式(43)に示すように小さくしてもよい。
p1≧q1≧r1 …(40)
p2≧q2≧r2 …(41)
p3≧q3≧r3 …(42)
p4≧r4>>q4 …(43)
線形フィルタ処理部335は、式(36)〜式(39)と式(40)〜式(43)とのうちいずれかに示す重み係数に基づいて複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する。線形フィルタ処理部335は、生成された参照画像を変化検出部340に送信する。
次に、制御情報が素材画像内の領域における車両等の移動体の画像の有無を表す情報である場合について説明する。
制御情報取得部331は、被覆体の画像の有無の有無を表す情報を、制御情報として取得する。図33に示された時系列の画像に対して、適用決定部334は、移動体731の画像を含まないと判定された画像700−2及び画像700−3の重み係数よりも、移動体731の画像を含むと判定された画像700−1の重み係数を小さくする。適用決定部334は、式(44)〜式(47)に示すように重み係数を決定する。式(44)、式(45)及び式(47)では、重み係数の和は1である。
p1=q1=r1 …(44)
p2=q2=r2 …(45)
q3=r3>>p3 …(46)
p4=q4=r4 …(47)
適用決定部334は、時間方向の線形フィルタであるテンポラルフィルタを適用する素材画像の重み係数を、2個の制御情報の組み合わせに基づいて決定してもよい。例えば、適用決定部334は、撮像日時が古い素材画像の重み係数を、式(48)〜式(51)に示すように小さくしてもよい。
p1≧q1≧r1 …(48)
p2≧q2≧r2 …(49)
q3≧r3>>p3 …(50)
p4≧q4≧r4 …(51)
線形フィルタ処理部335は、式(44)〜式(47)と式(48)〜式(51)とのうちいずれかに示す重み係数に基づいて複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する。線形フィルタ処理部335は、生成された参照画像を変化検出部340に送信する。
次に、制御情報が、(i)素材画像内の領域間における差異の有無を表す情報と、(ii)素材画像内の領域における雲等の被覆体の画像の有無を表す情報と、(iii)素材画像内の領域における車両等の移動体の画像の有無を表す情報と、(iv)素材画像の撮像日時を表す情報との組み合わせである場合について説明する。
適用決定部334は、時間方向の線形フィルタであるテンポラルフィルタを適用する素材画像の重み係数を、2個以上の制御情報の組み合わせに基づいて決定してもよい。例えば、適用決定部334は、素材画像間に差異があると判定された画像の重み係数と、被覆体又は移動体の画像を含むと判定された画像の重み係数と、撮像日時が古い画像の重み係数とを小さくしてもよい。
p1≧q1≧r1 …(52)
p2≧q2≧r2 …(53)
q3≧r3>>p3 …(54)
p4≧r4>>q4 …(55)
線形フィルタ処理部335は、式(52)〜式(55)に示す重み係数に基づいて複数の素材画像に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する。線形フィルタ処理部335は、生成された参照画像を変化検出部340に送信する。
次に、第15実施形態における、画像差異検出装置の動作の例を説明する。
図37は、第15実施形態における、画像差異検出装置の動作の例を示すフローチャートである。画像入力部320は、対象画像と複数の素材画像とを取得する(ステップS901)。制御情報取得部331は、素材画像内の領域間における差異の有無を表す情報と、素材画像内の領域における雲等の被覆体の画像の有無を表す情報と、素材画像内の領域における車両等の移動体の画像の有無を表す情報と、素材画像の撮像日時を表す情報とのうち少なくとも一つを、制御情報として取得する(ステップS902b)。
適用決定部334は、線形フィルタを適用する素材画像内の領域を、制御情報に基づいて決定する(ステップS803b)。線形フィルタ処理部335は、線形フィルタを適用する素材画像として決定された複数の素材画像内の領域に線形フィルタ処理を施すことによって、複数の素材画像から参照画像を生成する(ステップS904b)。変化検出部340は、対象画像と参照画像との差異の有無を領域ごとに判定する(ステップS905b)。
以上のように、第15実施形態の画像差異検出装置310は、対象画像取得部321と、素材画像取得部322と、参照画像生成部330とを備える。対象画像取得部321は、対象画像を取得する。素材画像取得部322は、複数の素材画像を合成する時間方向の線形フィルタを適用する複数の素材画像を取得する。参照画像生成部330は、対象画像内の領域との差異の有無を判定する対象である参照画像内の領域を、複数の素材画像内の領域を合成して生成する。これによって、第15実施形態の画像差異検出装置310は、画像内の少なくとも一部の領域間の差異の有無の判定精度を向上させるための画像を生成することが可能である。
上述した実施形態における画像差異検出装置及び画像生成装置の少なくとも一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、複数の実施形態の構成を組み合わせることによって一つの実施形態として実現されてもよい。
上記の実施形態では、素材画像等の画像(映像)の形式は、参照画像を合成することができる形式であれば、特定の形式に制限されない。例えば、素材画像は、単一の時系列の画像を構成する複数の画像(フレーム)でもよいし、複数の時系列の画像を構成する複数の画像でもよい。例えば、素材画像は、視点合成画像でもよい。
上記の実施形態では、複数の素材画像を合成するフィルタは、単一の時系列の画像の画像間で時間方向に適用されてもよいし、複数の時系列の画像の画像間で空間方向に適用されてもよい。フィルタは、選択された素材画像に応じて変更されてもよい。複数のフィルタは、時系列の画像を構成する複数の画像に適用される場合、組み合わされてもよい。