(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0014】
以下、添付図面に従って本発明に係る画像処理装置及び方法の実施例について詳説する。ただし、発明の範囲は以下の例に限定されるものではない。
【0015】
[実施例1]
以下に、実施例1に係る画像処理装置10について説明する。本実施例の第1多項式近似部103及び第1特徴量算出部104は、処理対象となる画像についての特徴量を算出することができる。算出された特徴量を用いることにより、対応算出部115が行う方法と同様に、画像の対応付けを行うことができる。本実施例において算出される特徴量は画像の回転にかかわらず不変であり、画像が回転している場合にもより高い精度で画像の関連付けを行うことができる。
【0016】
本実施例において画像処理装置10は、第1多項式近似部103及び第1特徴量算出部104が算出する特徴量を用いることにより、画像の位置合わせを行う。しかしながら、本発明は画像の位置合わせを行う技術には限定されない。例えば、第1多項式近似部103及び第1特徴量算出部104以外の各部が行う処理を、画像処理装置10とは異なる装置が実行してもよい。また、画像処理装置10は、画像の位置合わせを行うのではなく、算出した特徴量を用いることにより複数の画像の中から類似する画像の組を抽出することもできる。
【0017】
実施例1に係る画像処理装置10は、第1の画像及び第2の画像を取得し、位置合わせを行う。例えば第1の画像及び第2の画像は、同一被検体の略同一部位を撮影した二つの三次元画像でありうる。以下に、本実施例に係る画像処理装置が行う処理の概略を説明する。まず画像処理装置10は、第1の画像における複数の部分領域(ウィンドウ)の特徴量を算出する。次に画像処理装置10は、第2の画像についても同様に複数のウィンドウの特徴量を算出する。そして画像処理装置10は、算出された特徴量に基づいて、第1の画像内のウィンドウを、第2の画像内のウィンドウに対応付ける。さらに画像処理装置10は、この対応付けの結果に基づいて、第1の画像と第2の画像との間の位置合わせ処理を実行する。画像処理装置10はさらに、2つの画像を比較して観察する表示画像を生成することもできる。
【0018】
次に
図1を参照して、本実施例に係る画像処理装置10の構成を説明する。画像処理装置10は、第1画像取得部101、第1ウィンドウ画像取得部102、第1多項式近似部103、第1特徴量算出部104、及び特徴ウィンドウ選択部105を持つ。画像処理装置10はさらに、第2画像取得部111、第2ウィンドウ画像取得部112、第2多項式近似部113、第2特徴量算出部114、対応算出部115、及び画像生成部116を持つ。
【0019】
第1画像取得部101は、第1の画像を取得する(第2の入力手段)。第1画像取得部101は例えば、画像記録装置12のような記憶装置から第1の画像を取得することができる。第1画像取得部101はまた、画像撮影装置11のような画像生成装置から第1の画像を取得してもよい。そして第1画像取得部101は、取得した第1の画像を第1ウィンドウ画像取得部102および画像生成部116へと出力する。
【0020】
第1ウィンドウ画像取得部102は、第1画像取得部101から取得した第1の画像から複数の部分領域を切り出すことにより、第1のウィンドウ画像群を生成する(第1の設定手段及び第1の抽出手段)。
【0021】
第1多項式近似部103は、第1ウィンドウ画像取得部102が生成した第1のウィンドウ画像群のそれぞれについて、ウィンドウ画像を近似する多項式を算出する。そして第1多項式近似部103は、算出した多項式に関する情報を第1特徴量算出部104へと出力する。多項式に関する情報の具体的な内容については、後に詳しく説明する。
【0022】
第1特徴量算出部104は、第1多項式近似部103から取得した多項式に関する情報に基づき、第1のウィンドウ画像群に含まれるそれぞれのウィンドウ画像(処理画像)の特徴量を算出する(算出手段)。特徴量の算出方法については、後に詳しく説明する。そして第1特徴量算出部104は、算出した特徴量を特徴ウィンドウ選択部105へと出力する。
【0023】
特徴ウィンドウ選択部105は、第1特徴量算出部104が算出した特徴量に基づき、第1のウィンドウ画像群から特徴的なウィンドウ画像を選択する。そして特徴ウィンドウ選択部105は、選択結果を対応算出部115へと出力する。
【0024】
本実施例においては、第1ウィンドウ画像取得部102は複数のウィンドウ画像を生成する。そして特徴ウィンドウ選択部105は、複数のウィンドウ画像から位置合わせに適したウィンドウ画像を選択する。しかしながら実施例はこれに限定されない。例えば、第1ウィンドウ画像取得部102が生成したウィンドウ画像の全てを、特徴ウィンドウとして用いてもよい。この場合第1ウィンドウ画像取得部102が生成するウィンドウ画像は1つ以上であればよい。画像の位置合わせのためには、第1ウィンドウ画像取得部102は通常、画像の次元以上の数のウィンドウ画像を生成する。例えば第1の画像が3次元画像である場合、第1ウィンドウ画像取得部102は3つ以上のウィンドウ画像を生成すればよい。
【0025】
第2画像取得部111は、第2の画像を取得する。第2画像取得部111は例えば、画像記録装置12のような記憶装置から第2の画像を取得することができる。第2画像取得部111はまた、画像撮影装置11のような画像生成装置から第2の画像を取得してもよい。そして第2画像取得部111は、取得した第2の画像を第2ウィンドウ画像取得部112および画像生成部116へと出力する。
【0026】
第1ウィンドウ画像取得部102は、第2画像取得部111から取得した第2の画像から複数の部分領域を切り出すことにより、第2のウィンドウ画像群を生成する(第2の設定手段及び第2の抽出手段)。
【0027】
第2多項式近似部113は、第1多項式近似部103と同様に、第2ウィンドウ画像取得部112が生成した第2のウィンドウ画像群のそれぞれについて、ウィンドウ画像を近似する多項式を算出する。そして第2多項式近似部113は、算出した多項式に関する情報を第2特徴量算出部114へと出力する。
【0028】
第2特徴量算出部114は、第1特徴量算出部104と同様に、第2多項式近似部113から取得した多項式に関する情報に基づき、第2のウィンドウ画像群に含まれるそれぞれのウィンドウ画像の特徴量を算出する。そして第2特徴量算出部114は、算出した特徴量を対応算出部115へと出力する。
【0029】
対応算出部115は特徴ウィンドウ選択部105および第2特徴量算出部114から取得した情報に基づき、第1のウィンドウ画像群と第2のウィンドウ画像群との間の対応関係を算出する(対応付け手段)。対応算出部115が行う処理の詳細については後述する。そして対応算出部115は、算出した対応関係を画像生成部116へ出力する。
【0030】
画像生成部116は、対応算出部115が算出した対応関係と、第1画像取得部101が取得した第1の画像と、第2画像取得部111が取得した第2の画像と、に基づいて出力画像を生成する(位置合わせ手段及び第2の出力手段)。画像生成部116は、生成した出力画像を表示装置(不図示)に出力してもよい。
【0031】
図2は、本実施例に係る画像処理装置10を含む、本実施例に係る画像処理システムの構成を示す。本実施例に係る画像処理システムは、画像処理装置10、画像記録装置12、ローカルエリアネットワーク(LAN)840、及び画像撮影装置11を含む。
【0032】
画像撮影装置11は画像を撮影可能な装置であって、本実施例においては超音波画像撮影装置である。本実施例における画像撮影装置11は、超音波を送受信する不図示の超音波プローブを被検体に接触させることで、被検体の内部を超音波撮影する。本実施例で画像撮影装置11が撮影する画像は、被検体の所定の3次元領域を撮影した3次元のBモード超音波画像である。
【0033】
画像撮影装置11は、撮影した画像を画像記録装置12に格納する。画像記録装置12は、画像を読み書きすることができる装置である。画像記録装置12は、画像処理装置10からの要求に従って、格納している第1の画像及び第2の画像を読み出し及び送信することができる。画像撮影装置11及び画像記録装置12は、
図2においてはLAN840を介して画像処理装置10に接続されているが、画像処理装置10の共通バス818(後述)に直接又はインタフェースを介して接続されていてもよい。
【0034】
本実施例に係る画像処理装置10は、一般的なパーソナルコンピュータ(PC)を用いて実現することができる。もっとも、画像処理装置10は、
図1に示した各部の機能を実現する専用のハードウェア要素によって実現されてもよい。例えば、第1多項式近似部103と第1特徴量算出部104とは、画像を入力する第1の入力ユニットと、特徴量の演算を行う算出ハードウェアと、特徴量を出力する第1の出力ユニットと、で実現されてもよい。
【0035】
図2は、コンピュータによって実現されている画像処理装置10の電気的構成をさらに示す。画像処理装置10は、中央演算処理装置(CPU)811、主メモリ812、磁気ディスク813、表示メモリ814、モニタ815、マウス816、及びキーボード817を有する。CPU811は、主として画像処理装置10の各構成要素の動作を制御する。
【0036】
主メモリ812は、CPU811が実行する制御プログラムを格納したり、CPU811によるプログラム実行時の作業領域を提供したりする。磁気ディスク813は、オペレーティングシステム(OS)、周辺機器のデバイスドライブ、後述する位置合わせ処理等を行うためのプログラムを含む各種アプリケーションソフト等を格納する。すなわち、磁気ディスク813などの記憶媒体に格納されているコンピュータプログラムを主メモリ812に読み出し、このプログラムに従ってCPU811が画像処理装置10の各部を制御することにより、本実施例に係る処理は実現される。
【0037】
表示メモリ814は、モニタ815のための表示用データを一時記憶する。モニタ815は、例えばCRTモニタや液晶モニタ等であり、表示メモリ814に入力されたデータに基づいて画像を表示する。マウス816及びキーボード817は入力インタフェースであり、これらを用いてユーザはポインティング入力、文字入力、コマンド入力などを行う。これらの構成要素は、共通バス818により互いに通信可能に接続されている。
【0038】
次に、画像処理装置10が行う全体の処理を、
図3のフローチャートを用いて詳しく説明する。本実施例では、主メモリ812に格納されている各部の機能を実現するプログラムをCPU811が実行することにより実現される。また以下に説明する画像処理装置10が行う各処理の結果は、主メモリ812に格納されることにより記録される。
【0039】
(ステップS1010)第1の画像の取得
ステップS1010において第1画像取得部101は、第1の画像を取得する。第1の画像は、画像撮影装置11が被検体を撮影することによって得られた画像であり、画像記録装置12に記録されている。ここで第1の画像は、被検体の3次元領域を超音波撮影することによって得られた3次元画像である。第1の画像は、画像撮影装置11の基準座標系における複数の3次元位置座標ベクトルX
1,iと、それぞれの座標ベクトルに対応する強度値b
1,iとの組の集合である。ここで、強度値は画素値と同義であり、通常は画素についての色情報である。ここで、3次元位置座標ベクトルX
1,i=[x
1_i y
1_i z
1_i]
T (1≦i≦N
1)とする。また、1≦i≦N
1であり、N
1は第1の画像を構成する画素の数である。
【0040】
第1の画像は、互いに直交する3次元格子の格子点に対応する座標と、それぞれの座標における強度値との組の集合であってもよい。また第1の画像は、3次元の位置姿勢を有する2次元の平面画像が複数集合したものであってもよい。例えば、2次元の超音波プローブに位置姿勢センサを装着して複数の2次元画像を撮影することにより、後者の3次元画像を取得することができる。
【0041】
(ステップS1020)第1ウィンドウ画像群の生成
ステップS1020において、第1ウィンドウ画像取得部102は、第1画像取得部101から取得した第1の画像から複数の部分領域(ウィンドウ)を切り出すことにより、第1のウィンドウ画像群を生成する。この処理の具体的な内容を
図4を使って説明する。
【0042】
図4において第1の画像の領域900は、ステップS1010で取得した第1の画像の全体の領域である。本実施例における第1の画像は3次元画像であるが、説明の都合上、
図4において第1の画像は2次元画像として表されている。
【0043】
ステップS1020では、この第1の画像の領域900内(画像領域内)に、複数のウィンドウ領域901(第1の部分領域群)を設定する。以下で、複数のウィンドウ領域901を合わせてウィンドウ領域群と呼ぶ。
図4に示される例では、ウィンドウ領域901のそれぞれが等間隔で配置されている。また、それぞれのウィンドウ領域901の大きさは等しく、それぞれのウィンドウ領域901は互いに接するように配置されている。しかしながら、ウィンドウ領域の配置方法は
図4の例に限定されない。例えば、それぞれのウィンドウ領域901が互いに重なってもよいし、それぞれのウィンドウ領域901は互いに離れていてもよい。もっとも、ウィンドウ領域901の形状は任意である。
【0044】
第1ウィンドウ画像取得部102は、第1の画像から、それぞれのウィンドウ領域901内の画像を切り出す(抽出する)。切り出された画像を第1のウィンドウ画像と呼ぶ。このように、複数のウィンドウ領域901のそれぞれに対応する第1のウィンドウ画像を、第1ウィンドウ画像取得部102は生成する。以下で、複数の第1のウィンドウ画像を合わせて第1のウィンドウ画像群(第1の部分画像群)と呼ぶ。
【0045】
本実施例において、ウィンドウ領域群に含まれる各ウィンドウ領域901は、3次元空間において球形状を有する領域である。
図4においては説明の都合上、各ウィンドウ領域901は円形で表されている。ここで、各ウィンドウ領域は直径がd[mm]の球であるものとする。また、j番目のウィンドウの中心位置(以降でウィンドウ中心位置と呼ぶ)を、3次元ベクトルX
WC1,j=[x
WC1,j y
WC1,j z
WC1,j]
T (1≦j≦N
W1)で表す。N
W1は第1の画像から切り出されたウィンドウ画像の総数である。
【0046】
第1のウィンドウ画像のそれぞれは複数の画素を含む。それぞれの画素は、ウィンドウ内における画素の位置を表す3次元ベクトルと、強度値とによって表現される。ここで、j番目のウィンドウにおけるk番目の画素の位置を表す3次元ベクトルを、X
W1,j,k=[x
W1,j,k y
W1,j,k z
W1,j,k]
T (1≦j≦N
W1, 1≦k≦N
PN1,j)とする。3次元ベクトルX
W1,j,kは、各ウィンドウの中心位置X
WC1,jを原点(基準点)とした位置ベクトルであるものとする。また、3次元ベクトルX
W1,j,k(x
k)に対応する画素の強度値を、b
W1,j,k(b
k)(1≦j≦N
W1, 1≦k≦N
PN1,j)とする。j番目のウィンドウ画像の画素数は、N
PN1,j個(N個)である。
【0047】
第1ウィンドウ画像取得部102は、以上のように生成したそれぞれの第1のウィンドウ画像について、ウィンドウ中心位置X
WC1,j(1≦j≦N
W1)を記録する。また、それぞれの第1のウィンドウ画像について、画素位置X
W1,j,k(1≦j≦N
W1, 1≦k≦N
PN1,j)と、画素の強度値b
W1,j,k(1≦j≦N
W1, 1≦k≦N
PN1,j)との組を記録する。
【0048】
本実施例においては、3次元ベクトルX
W1,j,kを、各ウィンドウの中心位置X
WC1,jを原点(基準点)とした位置ベクトルとした。しかしながら、位置ベクトルの原点はウィンドウの中心に限定されない。むしろ位置ベクトルの原点は任意の位置に設定することができる。この場合、ウィンドウの中心位置の代わりに、位置ベクトルの原点の位置を、各ウィンドウ画像について記録すればよい。
【0049】
(ステップS1030)第1ウィンドウ画像群の多項式近似
ステップS1030において、第1多項式近似部103は、ステップS1020で生成された第1のウィンドウ画像のそれぞれについて、多項式を算出する。具体的には第1多項式近似部103は、第1のウィンドウ画像のそれぞれを取得する(第1の入力手段)。そして第1多項式近似部は、画素位置X
W1,j,kと画素の強度値b
W1,j,kとの関係を近似する多項式を、第1のウィンドウ画像のそれぞれについて算出する。ここで、1≦j≦N
W1、かつ1≦k≦N
PN1,jとする。そして第1多項式近似部103は、算出した多項式を示す情報を出力する。
【0050】
以下に、ステップS1030について詳細に説明する。変数をx,y,zとするN
degree次元の多項式は、下式(1)を用いて一般的に表現できる。本実施例において画像は3次元画像であるから、この多項式を用いて画像を近似することができる。画像が2次元画像であれば変数をx,yとしてもよいし、画像が4次元画像であれば変数をx,y,z,tとしてもよい。
【数1】
【0051】
式(1)においてp(x,y,z)は、座標(x,y,z)の画素について多項式によって求められる強度値(近似値)である。また、m(x,y,z)は座標値(x,y,z)に基づいて定まるベクトルを得る関数である。具体的にはm(x,y,z)は列ベクトルを示す。画像中のk番目の画素についての列ベクトルm(x
k,y
k,z
k)は、x
kly
kmz
kn(l+m+n≦N
degree, l,m,nは0以上の整数)を成分として有する。
【0052】
列ベクトルm(x,y,z)の各要素の値は、多項式を構成する複数の単項式について、係数を除いた(係数が乗じられていない)値である。言い換えれば列ベクトルm(x,y,z)は、ウィンドウ画像の各画素の座標値同士の積を要素として含む。さらに、a
lmnは、多項式を構成する単項式のうち、x
ly
mz
nの項の係数である。多項式を算出することは、係数a
lmnのそれぞれを算出することに相当する。
【0053】
具体的には第1多項式近似部103は、第1のウィンドウ画像群のうちのj番目のウィンドウ画像についての多項式の係数ベクトルa
W1,jを、式(2)の等式の二乗誤差が最小となるように算出する。
【数2】
式(2)において、x
W1,j,k, y
W1,j,k, z
W1,j,kのそれぞれは、第1のウィンドウ画像群のうちのj番目のウィンドウ画像についての、k番目の画素のx,y,z座標のそれぞれを示す。ここで、1≦k≦N
PN1,jである。p
j(x,y,z)は、座標(x,y,z)の画素について、j番目のウィンドウ画像についての多項式によって求められる強度値である。
【0054】
一例として、係数ベクトルa
W1,jは、以下のように求めることができる。j番目のウィンドウ画像について、1番目からN
PN1,j番目までの画素についての式(2)から、式(3)を導くことができる。
【数3】
ここで、行列M
W1,j及びベクトルb
W1,jを使うと、式(3)は、式(4)のように表現できる。
【数4】
ここで、ベクトルb
W1,jは、j番目のウィンドウ画像の各画素の強度値を成分として有するベクトルである。行列M
W1,jをj番目のウィンドウ画像に関する単項式行列と呼ぶ。ここで行列M
W1,jは、N
PN1行A列行列となる。Aは、多項式を構成する単項式の数、すなわち係数a
000, …, a
00Nの数であるものとする。具体的な処理としては、j番目のウィンドウ画像中(処理画像中)の1番目からN
PN1,j番目までの画素の位置X
W1,j,1, …,X
W1,j,NPN1から、単項式行列M
W1,jを生成すればよい。
【0055】
次に第1多項式近似部103は式(5)のように、単項式行列M
W1,jを、行列Q
W1,j(第1の行列)及び行列R
W1,j(第2の行列)へとQR分解する。
【数5】
ここで行列Q
W1,jは直交行列であり、行列R
W1,jは上三角行列である。QR分解は、ハウスホルダー法やグラムシュミット法などの公知の手法を用いて行うことができる。ここで直交行列とは、任意の2つの行ベクトルの内積が0となる行列のことを指す。直交行列QはN
PN1行A列行列となり、行列RはA行A列行列となる。第1の行列の各要素値は第1の情報によって示され、第2の行列の各要素値は第2の情報によって示される。
【0056】
最後に、式(4)及び式(5)から導かれる式(6)を用いて、後退代入法により係数a
W1,jを算出する。
【数6】
【0057】
このようにして、係数a
W1,jを持つ式(1)の近似多項式が求められる。第1多項式近似部103は、ステップS1020で生成した第1のウィンドウ画像群に含まれる全てのウィンドウ画像について、係数a
W1,j、行列Q
W1,j、及び行列R
W1,j(1≦j≦N
W1)を以上のように算出する。そして第1多項式近似部103は、算出された係数a
W1,j、行列Q
W1,j、及び行列R
W1,jを、ウィンドウ画像を近似する多項式に関する情報として記録する。
【0058】
(ステップS1040)第1ウィンドウ画像群についての特徴量の算出
ステップS1040において第1特徴量算出部104は、ステップS1030で算出された多項式に関する情報に基づいて、第1のウィンドウ画像群に含まれるそれぞれのウィンドウ画像の特徴量を算出する。具体的には第1特徴量算出部104は、それぞれのウィンドウ画像について、式(7)に従う積演算によりベクトルc
W1,j(1≦j≦N
W1)を算出する。
【数7】
【0059】
また、ベクトルc
W1,jの算出方法は式(7)に限られない。例えば式(5)の関係が近似的に成り立つため、ベクトルc
W1,jを式(8)に従う積演算により算出することもできる。式(7)と式(8)のいずれを用いても、略同一のベクトルc
W1,j(1≦j≦N
W1)を算出することができる(第1の演算手段)。
【数8】
【0060】
ここで、行列Q
W1,jは直交行列であるから、行列Q
TW1,jの各行は直交基底(直交ベクトル)となる。ところで、行列Q
TW1,jの各行は、それぞれの単項式の係数を除いた値、すなわちx
ly
mz
n(l+m+n≦N
degree, l,m,nは0以上の整数)のそれぞれに対応する。言い換えれば行列Q
TW1,jの各行は、複数の単項式のうちx
ly
mz
nの項に対応する基底となる。
【0061】
ベクトルc
W1,j=Q
TW1,jb
W1,jは、行列Q
TW1,jによって規定される直交空間における強度値ベクトルb
W1,jの座標値を示す。すなわち、x
ly
mz
nの項に対応するベクトルc
W1,jの成分c
W1,j,lmn(値c
lmn)は、x
ly
mz
nの項が強度値ベクトルb
W1,jに与える影響を示す。すなわちc
W1,j,lmnは、x
ly
mz
nの項の、近似多項式によって得られる強度値への貢献度(寄与度)を示す。それゆえc
W1,j,lmnは、x
ly
mz
nの項の近似精度に対する貢献度を表す。この値c
W1,j,lmnは、x
ly
mz
nの項に対応する特徴量と考えることができる。
【0062】
さらに第1特徴量算出部104は、近似精度に対するp次の項の貢献度を、x
ly
mz
nの項(l+m+n=p, l,m,nは0以上の整数)の近似精度に対する貢献度から求める(第2の演算手段)。着目次数についての貢献度は、着目次数を持つ1以上の単項式の貢献度から求めることができる。具体的には第1特徴量算出部104は、ベクトルc
W1,j(1≦j≦N
W1)の各要素を用いて、式(9)に従って特徴量ベクトルf
W1,j(1≦j≦N
W1)を算出する。本実施例においては式(9)のように、各項が近似精度に与える貢献度の平方の和を、各次数が近似精度に与える貢献度(寄与度)とする。
【数9】
【0063】
特徴量ベクトルf
W1,jは各次数についての貢献度を示す数値のセットとなる。この特徴量ベクトルf
W1,j(1≦j≦N
W1)の各要素は、ウィンドウ画像を近似する多項式の近似に対する各次数別の貢献度を意味する。具体的には、p番目の要素f
W1,j,p(値f
p)は、p次の項の貢献度を表す。この特徴量ベクトルf
W1,jウィンドウ画像の回転に対して不変となる。そのためこの特徴量ベクトルf
W1,jは、所定の点を中心に回転しているかもしれない複数の画像を位置合わせするために用いることができる。この値f
W1,j,pは、次数pに対応する特徴量と考えることができる。第1特徴量算出部104は、ステップS1030で算出された多項式のそれぞれについて以上の処理を実行することにより、特徴量ベクトルf
W1,j(1≦j≦N
W1)を算出する。そして第1特徴量算出部104は、算出された特徴量ベクトルを記録する(第1の出力手段)。
【0064】
本実施例によれば第1多項式近似部103は、それぞれのウィンドウ画像について多項式近似を行った。そして上述のように、多項式の係数a
W1,j、行列Q
W1,j、及び行列R
W1,jを記録した。しかしながら式(8)のように第1特徴量算出部104は、行列Q
W1,j及び強度値ベクトルb
W1,jから、ベクトルc
W1,j及び特徴量ベクトルf
W1,jを算出できる。したがって第1多項式近似部103が行列Q
W1,jを算出すれば、特徴量ベクトルf
W1,jを求めるためには十分である。行列Q
W1,jは単項式行列M
W1,jから導かれるため、実際には第1多項式近似部103が多項式の係数a
W1,jを求める、すなわち多項式近似を行うことは必須ではない。
【0065】
(ステップS1050)特徴ウィンドウ画像の選択
ステップS1050において特徴ウィンドウ選択部105は、ステップS1040で第1のウィンドウ画像のそれぞれについて算出された特徴量ベクトルに基づき、特徴ウィンドウ画像を選択する。この特徴ウィンドウ画像は、ステップS1100(後述)でウィンドウ間の対応を検出する際に用いられる。
【0066】
ステップS1050の処理は以下の手順で行う。まず、それぞれのウィンドウ画像(第1の着目部分画像)について、そのウィンドウ画像と他のウィンドウ画像(第1の着目部分画像以外の部分画像)との特徴量ベクトルの差分(差異)の最小値を算出する。具体的には、j番目のウィンドウ画像について、f
W1,jと、f
W1,1, …,f
W1,j-1, f
W1,j+1, …, f
W1,NW1のそれぞれとの間の差分を算出する。そして、算出した差分のうちの最小値を選択すればよい。
【0067】
特徴量ベクトルの差分の算出方法としては、任意の方法を用いることができる。たとえば、特徴量ベクトル間の差分ベクトルのL
1ノルムを、差分として算出してもよい。この時、特徴量ベクトルそのものを用いてL
1ノルムを求めてもよいし、予め特徴量ベクトルに正規化などの前処理を施してからL
1ノルムを算出してもよい。
【0068】
そして、それぞれのウィンドウ画像について求めた差分の最小値が所定の閾値以上である場合には、そのウィンドウ画像を特徴ウィンドウ画像として選択する。特徴ウィンドウ選択部105は、選択された特徴ウィンドウ画像の特徴量ベクトルと、特徴ウィンドウ画像の中心位置とを記録する。以下で、k番目の特徴ウィンドウ画像についての特徴量ベクトルをf
W1S,k、ウィンドウの中心位置をX
WC1S,k(1≦k≦N
W1S)と表記する。ただし、N
W1Sは選択されたウィンドウ画像の総数である。
【0069】
ステップS1050の処理において、特徴ウィンドウ選択部105は、第1の画像のウィンドウ画像群のうち、他のウィンドウ画像との特徴量の差が閾値以上である特徴ウィンドウ画像を選択することができる。選択された特徴ウィンドウに対して、対応するウィンドウ画像が第2のウィンドウ画像群から後述のように選択される。このような特徴ウィンドウ画像は、第1の画像の中でも他と区別可能な画像特徴を持つことが予想される。したがって、このような特徴ウィンドウ画像に対応するウィンドウ画像を第2のウィンドウ画像群から後述のように検出することは、より高精度な位置合わせにつながることが期待される。
【0070】
本実施例では以上のように特徴量ベクトルの差分および特徴ウィンドウ画像を決定したが、他のウィンドウ画像との際が大きいウィンドウ画像を選択するための任意の方法を、ステップS1050では用いることができる。例えば特徴ウィンドウ選択部105は、全ての他のウィンドウ画像との特徴量の差の最小値がより大きいウィンドウ画像を、所定数選択してもよい。
【0071】
(ステップS1060)第2の画像の取得
ステップS1060において第2画像取得部111は、第2の画像を取得する。第2の画像は、第1の画像と同様の画像である。第2の画像は、画像撮影装置11の基準座標系における複数の3次元位置座標ベクトルX
2,iと、それぞれの座標ベクトルに対応する強度値b
2,iとの組の集合である。ここで、3次元位置座標ベクトルX
2,i=[x
2_i y
2_i z
2_i]
T (1≦i≦N
2)とする。また、1≦i≦N
2であり、N
2は第1の画像を構成する画素の数である。第2の画像は、ある所定の時刻前から現在までに撮影された、3次元の位置姿勢を有する複数の2次元超音波画像の集合によって構成されていてもよい。
【0072】
(ステップS1070)第2ウィンドウ画像群の生成
ステップS1070において、第2ウィンドウ画像取得部112は、第2画像取得部111から取得した第2の画像から複数の部分領域(ウィンドウ、第2の部分領域群)を切り出す(抽出する)。こうして第2ウィンドウ画像取得部112は、第2のウィンドウ画像群(第2の部分画像群)を生成する。第2ウィンドウ画像取得部112の動作は、第1ウィンドウ画像取得部102と同様である。ここで、第2ウィンドウ画像のそれぞれの中心位置をX
WC2,j=[x
WC2,j y
WC2,j z
WC2,j]
T (1≦j≦N
W2)とする。ここで、N
W2は第2のウィンドウ画像の総数である。
【0073】
また、j番目のウィンドウ内におけるk番目の画素の位置を表す3次元ベクトルを、X
W2,j,k=[x
W2,j,k y
W2,j,k z
W2,j,k]
T (1≦j≦N
W2,1≦k≦N
PN2,j)とする。また、3次元ベクトルX
W2,j,kに対応する画素の強度値を、b
W2,j,k (1≦j≦N
W2, 1≦k≦N
PN2,j)とする。ここで、N
PN2,jはj番目のウィンドウ画像の画素数である。
【0074】
第2ウィンドウ画像取得部112が取得するウィンドウ画像の数は、第1ウィンドウ画像取得部102が取得するウィンドウ画像の数と一致していてもよいし、異なっていてもよい。第2ウィンドウ画像取得部112が設定するウィンドウ領域群の位置および大きさは、第1ウィンドウ画像取得部102が設定するウィンドウ領域群の位置および大きさと一致していてもよいし、異なっていてもよい。
【0075】
(ステップS1080)第2ウィンドウ画像群の多項式近似
ステップS1080において第2多項式近似部113は、ステップS1070で生成された第2のウィンドウ画像群に含まれる画像のそれぞれについて、多項式を算出する。ステップS1080における第2多項式近似部113の処理は、ステップS1030における第1多項式近似部103の処理と同様である。ステップS1080において第2多項式近似部113は、j番目のウィンドウ画像について、係数ベクトルa
W2,j、行列Q
W2,j、及び行列R
W2,j (1≦j≦N
W2)を、ステップS1070と同様にして算出及び記録する。
【0076】
(ステップS1090)第2ウィンドウ画像群の特徴量の算出
ステップS1090において第2特徴量算出部114は、第2のウィンドウ画像群に含まれる画像のそれぞれについて、ステップS1080で算出された多項式から特徴量を算出する。ステップS1090における特徴量の算出は、ステップS1050と同様に行うことができる。こうして第2特徴量算出部114は、j番目のウィンドウ画像についての特徴量ベクトルf
W2,j(1≦j≦N
W2)を算出して記録する。
【0077】
(ステップS1100)ウィンドウ間対応の算出
ステップS1100において対応算出部115は、ステップS1050で第1のウィンドウ画像群から選択された特徴ウィンドウ画像と、第2のウィンドウ画像群に含まれるウィンドウ画像とを対応づける。具体的には対応算出部115は、特徴ウィンドウ画像のそれぞれについて、類似するウィンドウ画像を第2のウィンドウ画像群から選択する。例えば対応算出部115は、特徴ウィンドウ画像のそれぞれについて、特徴量ベクトルf
W1S,k(1≦k≦N
W1S)に類似する特徴量ベクトルf
W2,j(1≦j≦N
W2)を有する画像を第2のウィンドウ画像群から探索すればよい。
【0078】
具体的には対応算出部115は、特徴量ベクトルf
W1S,k(1≦k≦N
W1S)のそれぞれについて、所定の基準において最も類似する特徴量ベクトルを、特徴量ベクトルf
W2,j(1≦j≦N
W2)から探索する。例えば、2つの特徴量ベクトル間の差分ベクトルのL
1ノルムがより小さい場合に、2つの特徴量ベクトルがより類似しているものとすることができる。この差分ベクトルは、特徴量ベクトルそのものの差分であってもよいし、正規化などの前処理を施された特徴量ベクトルの差分であってもよい。
【0079】
ステップS1100の処理により、それぞれの特徴ウィンドウ画像に対応する画像が、第2のウィンドウ画像群から選択される。ここで、k番目の特徴ウィンドウ画像に対応する、第2のウィンドウ画像群から選択された画像の特徴量ベクトルをf
W2S,k(1≦k≦N
W1S)とする。また、選択された画像の中心位置をX
WC2S,k(1≦k≦N
W1S)とする。対応算出部115は、これらの特徴ウィンドウ画像に対応する画像の特徴量ベクトル及び中心位置を記録する。
【0080】
(ステップS1110)画像間の位置姿勢の算出
ステップS1110において対応算出部115は、ステップS1100で求めた対応付けに基づき、第1の画像と第2の画像との間の位置姿勢の関係を算出する。すなわち、それぞれの特徴ウィンドウ画像の位置と、第2のウィンドウ画像から選択された対応するウィンドウ画像の位置と、の関係に従って対応算出部115は位置姿勢関係を算出する。
【0081】
具体的には、それぞれの特徴ウィンドウ画像の中心位置X
WC1S,k(1≦k≦N
W1S)と、対応するウィンドウ画像の中心位置X
WC2S,k(1≦k≦N
W1S)と、の関係に従って対応算出部115は位置姿勢関係を算出できる。一例として、対応算出部115は、X
WC1S,k(1≦k≦N
W1S)とX
WC2S,k(1≦k≦N
W1S)との間の関係を最も良く近似する剛体変換を求めてもよい。この剛体変換を用いることにより、特徴ウィンドウ画像の中心位置と、対応するウィンドウ画像の中心位置と、が近くなるように第1の画像と第2の画像とを位置合わせすることができる。この剛体変換処理は、特異値分解を用いるなどの公知の技術によって行うことができる。
【0082】
位置姿勢関係を算出するために用いられるのは、ウィンドウ画像の中心位置には限られず、ウィンドウ画像の位置を示す任意の情報を用いることができる。こうして求められた位置姿勢関係を用いて、特徴ウィンドウ画像が切り出されたウィンドウ領域と、対応するウィンドウ画像が切り出されたウィンドウ領域と、が近くなるように第1の画像と第2の画像とを位置合わせすることができる。
【0083】
位置姿勢関係を算出する場合、対応算出部115は、それぞれの特徴ウィンドウ画像と対応する画像との組を平等に扱ってもよい。しかしながら位置姿勢関係を算出する際に、対応算出部115は、特徴ウィンドウ画像と対応する画像との組に重み付けを行ってもよい。例えば対応算出部115は、ステップS1100で算出した特徴量ベクトル間の差分ベクトルのL
1ノルムに従う重み付けを、それぞれの特徴ウィンドウ画像と対応する画像との組に適用してもよい。具体的には対応算出部115は、特徴量ベクトル間の差分がより小さい場合に、特徴ウィンドウ画像と対応する画像との組に大きい重みを与えてもよい。この場合、より類似度が高いウィンドウ画像の組を重視して剛体変換を求めることができる。また対応算出部115は、RANSACなどの公知の外れ値除去方法を用いてもよい。この場合、より安定した精度で剛体変換を求めることができる。
【0084】
また、ステップS1110で対応算出部115は、剛体変換の代わりに、ステップS1100で求めた対応付けに基づく第1の画像と第2の画像との間の非線形な位置姿勢の関係を求めてもよい。例えば対応算出部115は、対応するウィンドウの中心位置X
WC1S,k(1≦k≦N
W1S)及びX
WC2S,k(1≦k≦N
W1S)を一致または略一致させる、非線形の変換関数を算出してもよい。この場合、非線形の変換関数としては放射基底関数(RBF)やB-Splineなどの公知のものを用いることができる。
【0085】
(ステップS1120)画像変換
ステップS1120において画像生成部116は、ステップS1110で算出した第1の画像と第2の画像の位置姿勢の関係に基づき、第2の画像を座標変換することにより第3の画像を生成する。具体的には、第2の画像を第1の画像に位置合わせすることにより第3の画像が生成される。
【0086】
(ステップS1130)画像表示
ステップS1130において画像生成部116は、第1の画像と第3の画像とを出力する。言い換えれば画像生成部116は、第1の画像と第2の画像とを位置合わせして出力することができる。出力された画像は、表示装置(不図示)を介してユーザに対して提示されてもよい。また出力された画像は、格納媒体(不図示)格納されてもよい。さらに出力された画像は、さらなる画像処理のために情報処理装置(不図示)に入力されてもよい。
【0087】
このとき、画像生成部116は第1の画像と第3の画像とをそのまま出力してもよい。また画像生成部116は、第1の画像及び第3の画像に対して処理を行うことにより得られる画像を出力してもよい。例えば画像生成部116は、第1の画像と第3の画像とのそれぞれについて、同じ切断面についての2次元の断面画像を生成してもよい。出力画像を生成する方法はこれに限られない。ユーザは、出力された画像により、第1の画像と第3の画像とを比較して観察することができる。
【0088】
(ステップS1140)終了判定
ステップS1140において実時間処理部110は、全体の処理を終了するか否かの判定を行う。例えば処理されるべき第2の画像が残っていない場合には、実時間処理部110は全体の処理を終了すると判定する。終了すると判定した場合には、画像処理装置10の処理の全体が終了する。一方、終了すると判定しなかった場合には、処理はステップS1060へと戻る。この場合、新たに取得される第2の画像を用いて、ステップS1060からステップS1140までの処理が行われる。
【0089】
以上に説明した本実施例における画像処理システムによれば、ウィンドウ画像から回転に不変な特徴量を抽出することができる。この特徴量を用いて、第1の画像及び第2の画像から抽出したウィンドウ画像を対応付けることができる。さらには、この対応付けを用いて第1の画像と第2の画像とを位置合わせすることができる。このため、第1の画像が第2の画像を回転した画像である場合でも、回転を考慮する(回転を探索的に推定する)必要なく、効率的に位置合わせを行うことができる。
【0090】
(変形例1−1)初期値がある場合に探索範囲を限定
実施例1のステップS1100で対応算出部115は、第2のウィンドウ画像群に含まれる全てのウィンドウ画像から、特徴ウィンドウ画像に類似するウィンドウ画像を検出した。しかしながら、実施例はこれに限られない。例えば第1の画像と第2の画像とが所定の誤差範囲内に位置合わせされている場合、以下のように処理を行ってもよい。すなわち、着目特徴ウィンドウ画像に対応するウィンドウ画像を検出する場合に、着目特徴ウィンドウ画像の近傍に位置するウィンドウ画像のみから対応するウィンドウ画像を検出してもよい。具体的には、着目特徴ウィンドウ画像の中心位置に対応する第2の画像の位置から所定範囲内にあるウィンドウ画像から、対応するウィンドウ画像を検出すればよい。この場合、所定範囲内にあるウィンドウ画像を対象として、着目特徴ウィンドウ画像との間で特徴量の比較を行えばよい。また同様にステップS1050において特徴ウィンドウ選択部105は、所定範囲内のウィンドウだけを対象として特徴量ベクトル間の比較を行うことにより、特徴ウィンドウ画像を選択してもよい。
【0091】
この方法によれば、第1の画像と第2の画像とが所定の誤差範囲内に位置合わせされている場合に、処理負荷を少なくすることができる。したがって、処理を高速化及び効率化することができる。また、互いに関連しないウィンドウ画像を対応付けする可能性が小さくなるため、より正確な位置合わせ結果が得られることが期待される。
【0092】
(変形例1−2)特徴点検出を用いてウィンドウ領域を設定
実施例1において第1ウィンドウ画像取得部102は、第1の画像の領域900の全体に対して、ウィンドウ領域を等間隔に設定した。しかしながら、実施例はこれに限られない。例えばステップS1020において第1ウィンドウ画像取得部102は、第1の画像から複数の特徴点を抽出し、それぞれの特徴点を中心とするウィンドウ領域を設定してもよい。特徴点とは例えば、強度値の変化が大きい部分、所定のパターンを有する部分、などでありうる。特徴点の抽出方法としてはHarris Corner Detectorなどの公知の方法を用いることができる。またステップS1070においても同様に、第2ウィンドウ画像取得部112は、第2の画像から複数の特徴点を抽出し、それぞれの特徴点を中心とするウィンドウ領域を設定してもよい。この方法によれば、画像中の特徴的な領域を含むウィンドウ画像についてのみ処理を行えばよいため、処理を高速化及び効率化できる。
【0093】
(変形例1−3)画像の多様性
実施例1では3次元の超音波画像を入力画像(第1の画像及び第2の画像)として用いた。しかしながら、実施例はこれに限られない。例えば、画像は2次元又は4次元の画像であってもよい。ここで4次元の画像とは、3次元画像の時系列の集合を指す。また、画像の種類はMRI画像、CT画像、などの他の医用画像であってもよい。さらには、カメラ画像や距離画像などの、医用画像以外の画像に対して、上述の方法を適用してもよい。
【0094】
入力画像として2次元の画像を用いる場合には、ステップS1020およびステップS1070で生成するウィンドウ画像を、例えば円形のような2次元の形状とすればよい。またステップS1030及びステップS1080では、xとyとを変数とする多項式でウィンドウ画像を近似すればよい。さらに、第1の画像と第2の画像とが同一種類の画像である必要はない。例えば、第1の画像がMRI画像であり、第2の画像がCT画像であってもよい。このように、入力される画像の次元及び画像の撮影方式は限定されない。
【0095】
[実施例2]ウィンドウ領域の固定
実施例1では、第1のウィンドウ画像群に含まれるウィンドウ画像のそれぞれについて単項式行列が生成された。また、第2のウィンドウ画像群に含まれるウィンドウ画像のそれぞれについても単項式行列が生成された。しかし、実施例はこれに限られない。実施例2では、第1の画像に対して、複数の同じ形状のウィンドウ領域が設定される。また、第2の画像に対しても、複数の同じ形状のウィンドウ領域が設定される。第1の画像に設定されるウィンドウ領域と第2の画像に設定されるウィンドウ領域とは、同じ形状であってもよい。この場合、それぞれのウィンドウ画像について、ウィンドウ画像を構成する画素の位置(ウィンドウ中心を基準とした画素の位置)は一致する。実施例2によれば、共通の単項式行列をそれぞれのウィンドウ画像に対して用いることができるため、処理を効率化できる。
【0096】
図5は、本実施例に係る画像処理システムの構成を示す。実施例1の画像処理システムに類似する要素には同一の符号が付されており、説明は省略される。第1ウィンドウ画像取得部202は、第1画像取得部101から取得した第1の画像に対して複数のウィンドウ領域を設定する。ここで、設定される複数のウィンドウ領域は同じ形状及び同じ画素数を有する。設定されたウィンドウ領域に従って、第1ウィンドウ画像取得部202は、実施例1と同様に、第1のウィンドウ画像群を生成する。
【0097】
単項式行列取得部203は、第1ウィンドウ画像取得部202が生成した第1のウィンドウ画像群について、単項式行列に関する情報を取得する。単項式行列取得部203が行う具体的な処理については後に詳しく説明する。
【0098】
第1特徴量算出部204は、第1ウィンドウ画像取得部202が生成した第1のウィンドウ画像と、単項式行列取得部203が取得した単項式行列に関する情報とに基づいて、第1のウィンドウ画像群に含まれるウィンドウ画像のそれぞれの特徴量を算出する。
【0099】
第2ウィンドウ画像取得部212は、第2画像取得部111から取得した第2の画像に対して複数のウィンドウ領域を設定する。ここで、設定される複数のウィンドウ領域は同じ形状及び同じ画素数を有する。また第2ウィンドウ画像取得部212が設定するウィンドウ領域は、第1ウィンドウ画像取得部202が設定するウィンドウ領域と同じ形状及び同じ画素数を有する。設定されたウィンドウ領域に従って、第2ウィンドウ画像取得部212は、実施例1と同様に、第2のウィンドウ画像群を生成する。
【0100】
第2特徴量算出部214は、第1ウィンドウ画像取得部212が生成した第2のウィンドウ画像と、単項式行列取得部213が取得した単項式行列に関する情報とに基づいて、第2の特徴量算出部214は第2のウィンドウ画像群に含まれるウィンドウ画像のそれぞれの特徴量を算出する。
【0101】
次に、本実施例に係る画像処理装置20が行う動作に関して、
図6のフローチャートを参照して詳しく説明する。ステップS2010の処理は、実施例1におけるステップS1010と同様の処理であり、説明は省略する。
【0102】
(ステップS2020)共通サイズの第1のウィンドウ画像群を生成
ステップS2020において、第1ウィンドウ画像取得部202は、第1画像取得部201から取得した第1の画像から複数の部分領域(ウィンドウ)を切り出すことにより、第1のウィンドウ画像群を生成する。この処理は、実施例1のステップS1020と同様であるが、それぞれのウィンドウ画像の大きさ及び形状を同一とする。ウィンドウ領域の大きさは、画像の解像度などに応じて適宜設定することができる。
【0103】
第1の画像を構成する画素の配置が、第1の画像の領域において空間的に均一でないことがある。この場合、内挿処理などの補間方法を用いて、画素の配置を均一にする。ステップS2020で生成されるウィンドウ画像のそれぞれにおいては、ウィンドウ画像を構成するそれぞれの画素は、基準点からみて同じ位置にある。したがって、それぞれのウィンドウ画像の画素数はN
PNと表すことができる。また、それぞれのウィンドウ画像における、基準点(例えばウィンドウ中心位置)を原点とするk番目の画素の位置ベクトルは、X
W,k(1≦k≦N
PN)と表すことができる。
【0104】
以上のように設定したウィンドウ領域に従って、第1ウィンドウ画像取得部202は複数のウィンドウ画像を生成する。具体的には、第1のウィンドウ画像群に含まれるウィンドウ画像のそれぞれについて、ウィンドウ中心位置と強度値とを記録する。j番目のウィンドウ画像の中心位置はX
WC1,j(1≦j≦N
W1)と表される。また、j番目のウィンドウ画像におけるk番目の画素の強度値はb
W1,j,k(1≦j≦N
W1, 1≦k≦N
PN)と表される。上述のように、それぞれの画素の位置ベクトルX
W,k(1≦k≦N
PN)もまた記録される。
【0105】
(ステップS2030)共通の単項式行列からQを算出する
ステップS2030において単項式行列取得部203は、ステップS2020で生成した位置ベクトルX
W1,k(1≦k≦N
PN)を用いて、単項式行列を生成する。実施例1で説明したように、j番目のウィンドウ画像についての単項式行列M
W1,jは、ベクトルm(x
W1,j,k, y
W1,j,k, z
W1,j,k)(1≦k≦N
PN1)によって構成される。またベクトルm(x
W1,j,k, y
W1,j,k, z
W1,j,k)は、式(1)に示されるように、j番目のウィンドウ画像のそれぞれの画素についての位置ベクトルX
W1,j,k=[x
W1,j,k, y
W1,j,k, z
W1,j,k]で表される。本実施例においてそれぞれのウィンドウ画像のk番目の画素の位置ベクトルは、共通のベクトルX
W,kを用いて表される。したがって、それぞれのウィンドウ画像についての単項式行列もまた、共通の単項式行列M
Wを用いて表される。
【0106】
このように単項式行列取得部203は、それぞれのウィンドウ画像に共通な単項式行列M
Wを算出する。さらに単項式行列取得部203は、実施例1と同様に、単項式行列M
WをQR分解することにより行列Q
W及びR
Wを生成する。単項式行列取得部203は、以上のように生成したM
W、Q
W、及びR
Wを、単項式行列に関する情報として記録する。
【0107】
(ステップS2040)第1のウィンドウ画像群の特徴量を算出
ステップS2040において第1特徴量算出部204は、第1のウィンドウ画像群に含まれるそれぞれのウィンドウ画像について、特徴量を算出する。具体的には、各ウィンドウ画像を構成する画素の強度値と、ステップS2030で生成された単項式行列に関する情報とに基づいて、ウィンドウ画像の特徴量を算出する。
【0108】
例えば第1特徴量算出部204は、式(8)に従ってベクトルc
W,jを計算できる。具体的には第1特徴量算出部204は、ステップS2020で記録されたウィンドウ画像の各画素の強度値b
W1,j,k(1≦j≦N
W1, 1≦k≦N
PN)と、ステップS2030で生成されたQ
Wとを用いて式(8)の計算を行う。その後第1特徴量算出部204は、実施例1と同様に、ベクトルc
W1,jを用いてウィンドウ画像の特徴量を算出できる。以上のように第1特徴量算出部204は、ステップS2020で生成した全てのウィンドウ画像について、特徴量ベクトルf
W1,j(1≦j≦N
W1)を算出して記録する。
【0109】
ステップS2050からステップS2060の処理は、実施例1のステップS1050からステップS1060の処理と同様であるから、説明は省略する。
【0110】
(ステップS2070)共通サイズの第2のウィンドウ画像群を生成
ステップS2070において、第2ウィンドウ画像取得部212は、第2画像取得部111から取得した第2の画像から複数の部分領域(ウィンドウ)を切り出すことにより、第2のウィンドウ画像群を生成する。この処理はステップS2020と同様である。ステップS2070で設定されるウィンドウ領域の大きさは、ステップS2070で設定されるウィンドウ領域の大きさに一致する。すなわち、第2のウィンドウ画像群に含まれるウィンドウ画像のそれぞれにおいて、基準点(例えばウィンドウ中心位置)を原点とするk番目の画素の位置ベクトルは、X
W,k(1≦k≦N
PN)と表すことができる。第2のウィンドウ画像群に含まれるウィンドウ画像の画素数N
PNは、第1のウィンドウ画像群に含まれるウィンドウ画像の画素数に一致する。
【0111】
もっとも、第1の画像から生成されるウィンドウ画像の数と、第2の画像から生成されるウィンドウ画像の数とは、異なっていてもよい。ステップS2020と同様に第2ウィンドウ画像取得部202は、第2の画像を構成する画素X
2,i(1≦i≦N
2)の配置が空間的に均一でない場合、内挿処理などの補間方法を用いて、画素の配置を均一にする。
【0112】
そして第2ウィンドウ画像取得部212は、第2のウィンドウ画像群に含まれる第2のウィンドウ画像のそれぞれについて、ウィンドウ中心位置X
WC2,j(1≦j≦N
W2)、及び画素の強度値b
W2,j,k(1≦j≦N
W2,1≦k≦N
PN2)を記録する。各ウィンドウ画像における画素の位置は、ステップS2020で記録されたX
W,k(1≦k≦N
PN)と同一であるから、画素位置の記録は省略できる。
【0113】
(ステップS2080)第2のウィンドウ画像群の特徴量を算出
ステップS2080において第2特徴量算出部214は、第2のウィンドウ画像群に含まれるそれぞれのウィンドウ画像について、特徴量を算出する。具体的には、各ウィンドウ画像を構成する画素の強度値と、ステップS2030で生成された単項式行列に関する情報とに基づいて、ウィンドウ画像の特徴量を算出する。
【0114】
例えば第2特徴量算出部214は、式(8)に従ってベクトルc
W,jを計算できる。具体的には第2特徴量算出部214は、ステップS2070で記録されたウィンドウ画像の各画素の強度値b
W2,j,k(1≦j≦N
W2, 1≦k≦N
PN)と、ステップS2030で生成されたQ
Wとを用いて式(8)の計算を行う。その後第2特徴量算出部214は、ステップS2040と同様に、ベクトルc
W1,jを用いてウィンドウ画像の特徴量を算出できる。以上のように第2特徴量算出部214は、ステップS2070で生成した全てのウィンドウ画像について、特徴量ベクトルf
W2,j(1≦j≦N
W2)を算出して記録する。
【0115】
ステップS2090からステップS2130の処理は、実施例1におけるステップS1100からステップS1140の処理と同様であり、説明は省略する。以上のように、本実施例における画像処理装置20は処理を行う。
【0116】
以上に説明した、本実施例における画像処理システムにおいては、ウィンドウ画像の特徴量の算出において、共通の単項式行列が用いられる。本実施例によれば、単項式行列に関する情報を繰り返し生成する必要がないために、処理負荷を軽減することができる。
【0117】
(変形例2−1)
実施例2においては、共通の大きさを有するウィンドウ画像が、第1の画像及び第2の画像から生成された。しかしながら、第1の画像から得られるウィンドウ画像と第2の画像から得られるウィンドウ画像とは、異なる大きさを有してもよい。また、第1の画像(及び第2の画像)からは、複数の形状のうち何れかを有するウィンドウ画像が生成されてもよい。例えば、画像の中心部から得られるウィンドウ画像と、画像の周辺部から得られるウィンドウ画像とが、異なる形状を有してもよい。
【0118】
また、ウィンドウ画像の形状は予め設定されていてもよい。単項式行列に関する情報M,Q,Rは、ウィンドウ画像の形状とウィンドウ画像における原点と、に応じて決定される。したがって、ウィンドウ画像の形状が予め設定されている場合、単項式行列に関する情報M,Q,Rもまた予め決定されていてもよい。この場合、実施例2におけるステップS2030の処理を省略することができる。例えば、画像処理装置20が用いるウィンドウの画素位置が常に固定である場合、その画素位置によって定まる単項式行列に関する情報を磁気ディスク813に予め記録しておいてもよい。この場合ステップS2040及びステップS2080において、磁気ディスク813に記録されている単項式行列に関する情報が読み込まれる。
【0119】
[実施例3](ウィンドウ画像の独立性に基づく対応付け)
実施例1では、第1のウィンドウ画像群に含まれるウィンドウ画像のそれぞれについて算出した特徴量を指標として、所定の閾値以上に類似する他のウィンドウ画像が存在しないウィンドウ画像が、特徴ウィンドウ画像として選択された。そして、特徴ウィンドウ画像のそれぞれに対して、第2のウィンドウ画像群に含まれる類似するウィンドウ画像が対応付けられた。しかしながら、実施例はこれに限られない。実施例3では、第1のウィンドウ画像群に含まれるそれぞれのウィンドウ画像の独立性が、算出された特徴量に基づいて算出される。そして、この独立性に基づいて、第1のウィンドウ画像群と第2のウィンドウ画像群とが対応付けられる。
【0120】
図7は本実施例に係る画像処理システムの構成を示す。
図7において実施例1の画像処理システムと同様の構成要素には同一の符号が付されており、その説明は省略される。
【0121】
独立度算出部305は、第1特徴量算出部104が算出した第1のウィンドウ画像群に含まれるウィンドウ画像のそれぞれについて、特徴量に基づいて独立度を算出する。対応算出部315は、第1特徴量算出部104が算出した特徴量と、第2特徴量算出部114が算出した特徴量と、独立度算出部305が算出した独立度とに基づいて、ウィンドウ画像間の対応を算出する。
【0122】
次に、本実施例に係る画像処理装置30が行う動作に関して、
図8のフローチャートを参照して詳しく説明する。ステップS3010からステップS3040の処理は、実施例1のステップS1010からステップS1040と同様であり、説明は省略する。
【0123】
(ステップS3050)独立度の算出
ステップS3050において独立度算出部305は、第1のウィンドウ画像群に含まれるウィンドウ画像の独立度g
j(1≦j≦N
W1)を算出する。ここでg
jは、j番目のウィンドウ画像の独立度を示す。具体的にはこの独立度は、ウィンドウ画像の特徴量f
W1,j(1≦j≦N
W1)に基づいて算出される。例えば独立度算出部305は、以下の式(10)に従って独立度を算出できる。
【数10】
式(10)において||f
W1,j-f
W1,i||
L1は、ベクトル(f
W1,j-f
W1,i)のL1ノルムを示す。式(10)によれば、j番目のウィンドウ画像についての独立度g
jは、特徴量ベクトルfが類似しているウィンドウ画像が存在する場合により小さくなる。一方で独立度g
jは、特徴量ベクトルfが類似しているウィンドウ画像が存在しない場合にはより小さくなる。すなわち、g
jが大きいことは、j番目のウィンドウ画像が他のウィンドウ画像に対して独立度が高いことを示す。独立度が高いということは、誤った対応付けの原因となる類似したウィンドウ画像が少ないことを意味する。独立度算出部305は、このように算出した独立度g
j(1≦j≦N
W1)を記録する。
【0124】
ステップS3060からステップS3090の処理は、実施例1のステップS1060からステップS1090の処理と同様であり、説明を省略する。
【0125】
(ステップS3100)独立度を考慮したウィンドウ間の対応付け
ステップS3100において対応算出部315は、第1のウィンドウ画像群に関する特徴量及び独立度、並びに第2のウィンドウ画像群に関する特徴量に基づき、第1のウィンドウ画像群と第2のウィンドウ画像群とを対応付ける。具体的には以下の処理を実行する。まず対応算出部315は、特徴量ベクトルf
W1,k(1≦k≦N
W1)のそれぞれについて、所定の基準において最も類似する特徴量ベクトルを、特徴量ベクトルf
W2,j(1≦j≦N
W2)から探索する。例えば、2つの特徴量ベクトル間の差分ベクトルのL
1ノルムがより小さい場合に、2つの特徴量ベクトルがより類似しているものとすることができる。この処理は、ステップS1100と同様に行うことができる。
【0126】
さらに対応算出部315は、類似している特徴量の差分が、独立度と比べて大きいか否かを判定する。特徴量の差分が独立度と比べて同等か又は小さい場合には、対応算出部315は2つの特徴量ベクトルを対応付けない。一方で特徴量の差分が独立度と比べて大きい場合には、対応算出部315は2つの特徴量ベクトルを対応付ける。
【0127】
第1のウィンドウ画像群に含まれるj番目のウィンドウ画像の特徴量ベクトルが、第2のウィンドウ画像群に含まれるk番目のウィンドウ画像の特徴量ベクトルに類似している場合について、処理の一例を示す。このとき対応算出部315は、特徴量ベクトルf
W1,jとf
W2,kとの差分ベクトルのL
1ノルムを算出する。L
1ノルムが、独立度g
j(1≦j≦N
W1)以下である場合には、対応算出部315は第1のウィンドウ画像群に含まれるj番目のウィンドウ画像と第2のウィンドウ画像群に含まれるk番目のウィンドウ画像とを対応付ける。一方で、L
1ノルムが、独立度g
j(1≦j≦N
W1)を超える場合には、対応算出部315は対応付けを行わない。ここで動作を最適化するために、独立度g
jに対して所定の係数を乗じてもよい。
【0128】
以上のようにして求められた対応付けを、対応算出部315は記録する。具体的には対応算出部315は、特徴量ベクトルf
W1S,k(1≦k≦N
W1S)と、対応付けられた特徴量ベクトルf
W2S,k(1≦k≦N
W1S)と、の組を記録する。また対応算出部315は、ウィンドウの中心位置X
WC1S,k(1≦k≦N
W1S)と、対応するウィンドウの中心位置X
WC2S,k(1≦k≦N
W1S)と、の組を記録する。
【0129】
L
1ノルムが独立度g
j(1≦j≦N
W1)を超える場合に対応算出部315は、独立度が低すぎることを示す情報とともにウィンドウ画像間の対応付けを記録してもよい。この場合、続くステップS3110において画像生成部116は、独立度が低すぎることを示す情報が付された対応付けを無視することができる。
【0130】
ステップS3110からステップS3140の処理は、実施例1のステップS1110からステップS1140の処理と同一であり、説明を省略する。
【0131】
本実施例においては第1のウィンドウ画像について独立度を算出した。しかしながら、第2のウィンドウ画像について独立度を算出し、対応付けを行うか否かの判断にこの独立度を用いてもよい。また、第1のウィンドウ画像と第2のウィンドウ画像との双方について独立度を算出し、双方の独立度を用いて対応付けを行うか否かの判断を行ってもよい。例えば、第1のウィンドウ画像の独立度の代わりに、第1のウィンドウ画像の独立度と第2のウィンドウ画像の独立度との和を用いてもよい。
【0132】
以上に説明した本実施例における画像処理システムによれば、第1のウィンドウ画像群に含まれるウィンドウ画像のそれぞれについて独立度が算出される。そして、この独立度を参照して、対応付けを行うか否かを切り換えられる。このため、独立度の低いウィンドウ画像については、対応付けが行われる可能性が小さくなる。また、独立度の高いウィンドウ画像については、積極的に対応付けが行われる。この結果、画像内の自己類似性を考慮して、適応的にウィンドウ画像を対応付けすることができる。この結果、互いに関連しないウィンドウ画像を対応付けする可能性が小さくなるため、より正確な位置合わせ結果が得られることが期待される。
【0133】
[実施例4]ウィンドウ画像の変形
実施例1では、第1の画像および第2の画像の画像領域に複数のウィンドウ中心が配置された。そして、このウィンドウ中心のそれぞれを中心とする球形の部分領域(ウィンドウ)が設定された。ウィンドウ画像群は、この設定されたウィンドウ内の画像を切り出すことによって生成された。実施例1は、第1の画像における球形の領域が、第2の画像における球形の領域に対応する場合により効果的である。すなわち、第1の画像と第2の画像との間で、被写体があまり変形していない場合に、実施例1はより有効である。しかしながら、第1の画像と第2の画像との間で、被写体が変形することがある。実施例4においては、第1の画像からに設定するウィンドウ領域の形状と、第2の画像に設定するウィンドウ領域の形状とを、異なる形状とする。本実施例によれば、第1の画像と第2の画像との間で被写体が変形している場合にも、より高い精度で画像の対応付けを行うことができる。
【0134】
図9は本実施例に係る画像処理システムの構成を示す。
図9において、実施例1の画像処理システムと共通する構成要素には同一の符号が付されており、これらの説明は省略する。
【0135】
第1ウィンドウ画像取得部402は、第1画像取得部101から取得した第1の画像から複数の部分領域(ウィンドウ)を切り出すことにより、第1のウィンドウ画像群を生成する。ここでウィンドウ領域の形状は必ずしも球形ではなくてもよい。例えばウィンドウ領域の形状は、球形を様々に偏平させることによって得られる楕円体の形状であってもよい。
【0136】
次に、本実施例に係る画像処理装置40が行う動作を、
図10のフローチャートを参照して詳しく説明する。ステップS4010の処理は実施例1のステップS1010と同様であり、説明は省略する。
【0137】
(ステップS4020)様々な楕円体のウィンドウ画像を生成
ステップS4020において、第1ウィンドウ画像取得部402は、第1画像取得部101から取得した第1の画像から複数の部分領域(ウィンドウ)を切り出すことにより、第1のウィンドウ画像群を生成する。ステップS4020において第1ウィンドウ画像取得部402が第1の画像から切り出すウィンドウ画像の形状を、
図11A〜
図11Iを参照して説明する。
【0138】
図11Aは、第1ウィンドウ画像取得部402が第1の画像に設定するウィンドウ領域の一例を示す。
図11Aに示されるウィンドウ領域910は、ウィンドウ中心911を中心とした球形領域である。しかしながら本実施例において第1ウィンドウ画像取得部402が設定するウィンドウ領域は、
図11Aに示されるものには限られない。例えば第1ウィンドウ画像取得部402は、
図11B〜
図11Iに示される形状のウィンドウ領域を設定してもよい。
図11B及び
図11Cに示される形状は、球形のウィンドウをある軸方向に偏平させた形状(楕円体)である。
図11D及び
図11Eに示される形状は、球形のウィンドウを
図11B及び
図11Cとは異なる軸方向に偏平させた楕円体である。また、球が偏平される方向は第1の画像の基準座標系における座標軸方向には限定されない。例えば
図11F〜
図11Iに示される形状は、球径のウィンドウを任意の方向に偏平させることによって得られる。またウィンドウ形状は必ずしも楕円体である必要はない。例えば、球形の形状を変形させて生成される任意の形状でありうる。
【0139】
本ステップにおいて第1ウィンドウ画像取得部402は、様々な形状のウィンドウ画像を、第1の画像から切り出すことにより、第1のウィンドウ画像群を生成する。例えば第1ウィンドウ画像取得部402は、第1の画像の全領域に対し、等間隔にN
W1center個のウィンドウの中心位置を設定する。そして第1ウィンドウ画像取得部402は、この位置を中心とするN
angle種類の楕円体領域を設定する。それぞれの種類の楕円体領域は、球を異なる方向に偏平させることによって得られる楕円体形状でありうる。設定されたウィンドウ領域に従ってウィンドウ画像を切り出すことにより、第1ウィンドウ画像取得部402は、全部でN
W1center×N
angle個のウィンドウ画像を生成する。
【0140】
そして第1ウィンドウ画像取得部402は、第1のウィンドウ画像群に含まれるウィンドウ画像のそれぞれについて、ウィンドウ中心位置と、ウィンドウに含まれる画素の位置と強度値との組と、を記録する。ここで、j番目のウィンドウ画像についてのウィンドウ中心位置はX
WC1,j(1≦j≦N
W1)で表される。また、j番目のウィンドウ画像におけるk番目の画素の位置はX
W1,j,k(1≦j≦N
W1,1≦k≦N
PN1,j)で表される。さらに、j番目のウィンドウ画像についてのk番目の画素の強度値はb
W1,j,k(1≦j≦N
W1,1≦k≦N
PN1,j)で表される。ただし、N
W1は第1のウィンドウ画像群に含まれるウィンドウ画像の数であり、本実施例の場合はN
W1=N
W1center×N
angleとなる。
【0141】
このとき第1ウィンドウ画像取得部402は、画素の位置X
W1,j,kを補正してもよい。例えば第1ウィンドウ画像取得部402は、第1のウィンドウ画像群に含まれるウィンドウ画像を、第2のウィンドウ画像群に含まれるウィンドウ画像と同じ形状となるように補正することができる。本実施例において第2のウィンドウ画像群は球形状を有する。第1ウィンドウ画像取得部402は、画素の位置X
W1,j,kを補正することにより、第1のウィンドウ画像群を球形状に補正できる。x軸方向の長さが半分となるように偏平されたウィンドウ領域から生成されたウィンドウ画像を補正する場合について考える。ここで、ウィンドウ画像における座標系の原点は、ウィンドウ画像の中心であるものとする。この場合ウィンドウ画像取得部402は、ウィンドウ画像に含まれる画素の位置について、x座標を2倍にすればよい。このようにウィンドウ画像の形状を補正することにより、被写体が第1の画像と第2の画像との間で変形している場合にも、より高い精度で画像の位置合わせを行うことができる。
【0142】
ステップS4030からステップS4140までの処理は、実施例1のステップS1030からステップS1140までの処理と同様であり、説明は省略する。
【0143】
以上の本実施例における画像処理システムによれば、第1のウィンドウ画像群として、球形を様々に偏平させることによって得られる形状のウィンドウ画像を生成する。そして、これらのウィンドウ画像の特徴量が算出される。本実施例によれば、第1の画像の被写体が第2の画像においては変形している場合にも、より高精度に位置合わせを行うことができる。
【0144】
(変形例4−1)被写体の変形量に応じてウィンドウ形状を変更
実施例4では、ステップS4020において、ウィンドウ領域の中心位置のそれぞれについて、所定の数のウィンドウ領域が設定された。しかしながら、実施例はこれに限られない。例えば、被写体の変形特性が予め与えられている場合には、ウィンドウ領域の形状を変形特性に応じて決定することができる。また、被写体の変形特性が推定できる場合にも、ウィンドウ領域の形状を変形特性に応じて決定することができる。
【0145】
例えば、画像中で被写体が所定の方向に圧縮又は伸張されている場合、この方向に偏平されたウィンドウ領域が設定されてもよい。圧縮又は伸張の程度に依存して、ウィンドウ領域の偏平量が決定されてもよい。さらに、画像中の部位毎に変形量が推定又は取得できる場合には、この変形量に基づいて画像中の部位毎に異なる形状のウィンドウ領域を設定してもよい。さらには、被写体に著しい変形が生じていることが推定できる部分からは、ウィンドウ画像が生成されないようにすることもできる。
【0146】
以上の方法によれば、第1の画像と第2の画像との間での被写体の変形量に応じてウィンドウ画像の形状を決定することができる。このため、生成されたウィンドウ画像を用いると、より正確に位置合わせを行うことが可能となる。
【0147】
[その他の実施例]
なお、上述した本実施の形態における記述は、本発明に係る好適な画像処理装置の一例であり、本発明はこれに限定されるものではない。例えば上述の各実施例において、各構成要素は複数の構成要素に分割されていてもよい。また、複数の構成要素の機能が1つの構成要素によって実現されてもよい。上述の実施例においては、第1の画像を処理するための構成要素と、第2の画像を処理するための構成要素とは異なっている。例えば実施例1においては、第1の画像からは構成要素101〜104によって特徴量が算出される。また、第2の画像からは構成要素111〜114によって特徴量が算出される。しかしながら、構成要素101〜104が、第2の画像についての特徴量を算出してもよい。
【0148】
本発明の態様は、上述の実施形態の機能を実行するためにメモリデバイス上に記録されたプログラムを読み出し及び実行するシステム又は装置のコンピュータ(又はCPU若しくはMPUのようなデバイス)によって、並びに、方法であって、方法における工程が上述の実施形態の機能を実行するために例えばメモリデバイス上に記録されたプログラムを読み出し及び実行することによってシステム又は装置のコンピュータによって実行される、方法によって、また実現されることができる。この目的のためにプログラムは、例えばネットワークを介して、又はメモリデバイスとして働く様々な形式の記録媒体(例えばコンピュータ読み取り可能な媒体)から、コンピュータへと提供される。
【0149】
本発明が例示的な実施形態を参照して説明されたが、本発明は開示された例示的な実施形態に限定されないことは理解されるであろう。以下の請求の範囲には、このような修正並びに均等な構造及び機能を包含するように、最も広い解釈が与えられる。
【0150】
本願は、日本国特許出願第2011−213381号の利益を主張し、その全体が本明細書に参照として組み込まれる。