<第1の実施形態>
本発明の第1の実施形態を、図面を参照しながら詳細に説明する。
図1は、本発明の第1の実施形態に係る画像処理装置100の構造の例を示すブロック図である。
画像処理装置100は、クエリ画像受信部101と、選択部102と、回転部103と、辞書受信部104と、辞書記憶部105と、照合部106と、決定部107と、算出部108とを含む。
クエリ画像受信部101は、類似する強度を有する画素を含む連結領域を含む画像を受信する。連結領域の強度は、概して、連結領域に含まれない画素の強度とは異なり得る。以下の記載において、クエリ画像は、「クエリ画像」又は「入力画像」と表記される。クエリ画像は、望遠鏡及びカメラによって宇宙空間の写真を撮影することで得た天体画像であってもよい。この場合、上述の連結領域は、星の画像領域であってもよい。クエリ画像は、上記の例に限定されない。入力画像は、例えば、粒子(例えば、蛍光粒子)の顕微鏡画像であってもよく、それらは、顕微鏡及びカメラによって蛍光粒子を撮影することにより得られる。この場合、上述の連結領域は、入力画像内の、粒子の画像領域である。入力画像は、顕微鏡画像から切り出された部分であってよい。
本実施形態及び本発明の他の実施形態では、入力画像において、それぞれの粒子の像の位置(すなわち、座標)は、与えられておらず未知である。入力画像における粒子の位置は、例えば、三次元空間における、その粒子の中心を表す点の位置(すなわち、座標)である。粒子の理想的な大きさは、以下で説明する入力画像及び辞書画像において、同じであればよい。
クエリ画像受信部101は、例えばクエリ画像を撮影したカメラ(図示せず)から、又は、カメラによって撮影されたクエリ画像を記憶するサーバ装置(図示せず)から、入力画像(すなわち、クエリ画像)を受信してもよい。
選択部102は、クエリ画像受信部101が受信した入力画像から、粒子の画像領域を含む、又は、粒子の画像領域を複数含む領域(以後、「抽出領域」と表記する)を選択する(例えば、抽出する)。選択部102は、連結領域に含まれる画素の強度と、連結領域に含まれる画素数とに基づいて、粒子の画像領域(以後、「粒子領域」と表記する)として、入力画像内における連結領域を抽出してもよい。
より具体的には、選択部102は、粒子の画像領域(以下、画像内の粒子の領域を「粒子領域」と表記)の典型的な強度と、背景領域(すなわち、粒子領域以外の領域)の典型的な強度との間の値に設定されている強度閾値を用いて、粒子の領域の画素の候補である、粒子候補画素を抽出してもよい。粒子領域の典型的な強度及び背景領域の典型的な強度は、実験的に導出されていればよい。以下の記載において、粒子領域の画素の候補を、「粒子候補画素」と表記する。
粒子領域の典型的な強度が強度閾値より大きい場合、選択部102は、強度閾値以上の強度をもつ画素を、粒子候補画素として抽出してもよい。粒子領域の代表強度が強度閾値より小さい場合、選択部102は、強度閾値以下の強度をもつ画素を、粒子候補画素として抽出してもよい。
選択部102は、粒子候補画素の連結領域を生成してもよい。選択部102が、粒子候補画素の2つ以上の連結領域を生成してもよい。
選択部102は、生成した連結領域から、連結領域に含まれる画素数に基づいて、粒子領域を選択してもよい。選択部102は、粒子領域として、第1の大きさ閾値より大きい数の粒子画素を含む連結領域を選択してもよい。選択部102は、粒子領域として、第1の大きさ閾値より大きく、かつ、第1の大きさ閾値より大きい第2の大きさ閾値を超えない数の粒子画素を含む連結領域を選択してもよい。選択部102は、連結領域に含まれる画素の数に基づいて、連結領域を複数の連結領域に分割してもよい。
選択部102は、粒子領域を、2種類の粒子領域のうちの1つに分類してもよい。例えば、選択部102は、第1の大きさ閾値より大きく、かつ、第3の大きさ閾値を超えない数の画素を含む粒子領域を、1つの粒子を表す粒子領域(以後、「単粒子領域」と表記する)として分類する。第3の閾値は、第1の大きさ閾値より大きく、第2の大きさ閾値を超えない数に設定される。選択部102は、第3の大きさ閾値より大きく、かつ、第2の大きさ閾値を超えない数の画素を含む粒子領域を、2つの粒子を表す粒子領域(以後、「2粒子領域」と表記する)として分類してもよい。
2つ以上の連結領域が粒子領域として選択された場合、選択部102は、粒子領域から、2つの単粒子領域(すなわち、単粒子領域に分類した2つの粒子領域)を選択してもよい。選択部102は、選択した2つの単粒子領域を含む領域を抽出してもよい。選択部102は、単粒子領域の全ての可能なペアが選択されるまで、2つの単粒子領域を選択し、選択した2つの単粒子領域を含む領域を抽出することを繰り返してもよい。選択部は、選択される2つの単粒子領域の間の距離を、距離閾値以内に制限してもよい。
粒子領域として2つ以上の連結領域が選択された場合、選択部102は、さらに、粒子領域から、2粒子領域(すなわち、2粒子領域に分類された粒子領域)を選択してもよい。選択部102は、選択した2粒子領域を含む領域を抽出してもよい。選択部102は、全ての2粒子領域を選択するまで、2粒子領域を選択し、選択した2粒子領域を含む領域を抽出することを繰り返してもよい。
選択部102は、上述の抽出領域として、選択された単粒子領域又は選択した2粒子領域の外接矩形を抽出してもよい。選択部102は、抽出領域として、所定幅のマージンに囲まれた外接矩形を含む矩形を抽出してもよい。抽出領域の範囲は、上述の例に限定されない。以下の説明において、選択された単粒子領域や選択された2粒子領域を、「候補領域」とも表記される。
選択部102は、候補領域以外の連結領域の画素の強度を、予め設定された、背景領域の強度に変えることによって、選択した単粒子領域及び選択した2粒子領域以外の連結領域を、抽出領域から除いてもよい。予め設定された、背景領域の強度は、上述の、背景領域の典型的な強度であってもよい。
画像処理装置100の操作者は、画像処理装置100のキーボード及び/又はマウスなどの入力装置(図示せず)を用いることによって、粒子領域を含む領域を指示してもよい。選択部102は、操作者が指示した領域を抽出してもよい。
選択部102は、上述の、入力画像からの抽出領域にそれぞれ相当する、2つ以上の抽出領域を抽出してもよい。
回転部103は、入力画像の粒子位置を通る線を推定する。回転部103は、入力画像から抽出された抽出画像において、その線を推定してもよい。回転部103は、抽出画像において推定した線の方向が、辞書画像の真の粒子位置を通る線の方向と適合するように(言い換えると、辞書画像の真の粒子位置を通る線の方向になる又は同じであるように)、抽出画像を回転させる。辞書画像及び真の粒子位置を含む辞書画像を、以下に詳細に説明する。以下に説明するように、水平線が、辞書画像の真の粒子位置を通る。真の粒子位置を、粒子の真の位置とも表記する。
例えば、回転部103は、抽出領域内に含む候補領域の重心を通り、かつ、抽出領域内の候補領域に関して最小の慣性モーメントを有する線が水平となるように、選択部102が抽出した抽出領域を回転させる。以下の説明において、回転させられた抽出領域を、「回転領域画像」と表記する。この場合、回転部103は、入力画像の粒子位置を通る線として、抽出領域に含まれる候補領域の重心を通り、かつ、選択された抽出領域内の候補領域に関して最小の慣性モーメントを有する線を推定する。
より具体的には、回転部103は、候補領域の重心を抽出する。回転部103は、選択された領域の重心を通り、かつ、選択された領域に関して最小の慣性モーメントを有する線を算出する。回転部103は、算出した線の、水平線に対する角度を算出する。回転部103は、点(例えば、選択した領域の重心)を中心に、算出された角度で逆に回転させる変換を算出する。回転部103は、算出した変換に従って抽出領域を回転させて、回転領域画像を生成する。
回転部103は、算出した変換に従って入力画像を回転させればよい。回転部103は、選択部102が候補領域を含む抽出領域を抽出するのと同じ方法で、候補領域を含む回転させた入力画像から回転領域画像を抽出すればよい。
画像(元画像)を回転させるとき、回転部103は、元画像から回転させた画像を、補間によって生成してもよい。より具体的には、回転部103はまず、算出した角度で回転させる回転の変換の後の、元画像の各画素の座標を算出すればよい。回転部103は、回転させた画像の各画素の強度を、その画像の画素の、算出された座標と強度とに基づいて、補間によって算出してもよい。
辞書受信部104は、真の粒子位置と共に、粒子画像(本発明の実施形態の説明では、「辞書画像」と表記する)を受信する。粒子画像は、粒子の画像領域をそれぞれ含む画像である。辞書画像は、真の粒子位置がそれぞれ与えられている粒子画像である。辞書画像に与えられている真の粒子位置は、辞書画像における粒子の位置を表す。辞書画像における粒子の位置は、例えば、粒子の点(例えば、中心)を表す座標であってもよい。座標は、辞書画像に固定された座標系で表されていればよい。
辞書画像は、例えば、粒子の動き又は粒子の移動のシミュレーションによって生成された画像であってもよい。本実施形態では、各辞書画像の2つの粒子をつなぐ線が水平であると仮定する。言い換えると、本実施形態の辞書画像の各々は、2つの粒子の画像領域を含む。水平の線分が、2つの粒子の中心を表す点をつなぐことができる。辞書画像は、辞書画像の各々が、水平線に配置された2つの粒子を含むように、生成されてもよい。2つの粒子の粒子領域は、辞書画像において1つの粒子領域となるように重なっていてもよい。2つの粒子の粒子領域は、2つに分離していてもよい。
辞書画像は、2つの粒子の間の距離において相違する。辞書画像では、2つの粒子の間の距離の中で、最も小さい差が、辞書画像の画素の大きさよりも小さくてもよい。辞書画像の各々は、2つの粒子の、粒子領域又は複数の粒子領域と、その粒子領域又は複数の粒子領域を取り囲む背景領域とを含む。
辞書画像の各々は、2つの粒子の粒子位置の間の距離が、予め設定されている距離から選択され、かつ、粒子位置の間の距離が同じであるときに粒子位置が同じであるように、合成されていてもよい。
辞書受信部104は、粒子の真の粒子位置と共に受信した辞書画像を、辞書記憶部105に格納する。辞書受信部104は、受信した辞書画像のそれぞれについて、辞書画像における2つの粒子の真の粒子位置と、その辞書画像とを関連付ければよい。辞書受信部104は、辞書画像における粒子の真の粒子位置とそれぞれ関連付けられている辞書画像を、辞書記憶部105に格納してもよい。
辞書記憶部105は、辞書受信部104が受信した、辞書画像と、辞書画像の真の粒子位置とを記憶する。辞書画像は、粒子画像のダウンサンプリングの、例えばノイズやぼけなどの攪乱を含んでいてもよい。
照合部106は、回転部103から受信した回転領域画像を、辞書記憶部105の辞書画像の各々と照合する。
より具体的には、照合部106は、選択されていない辞書画像から、辞書画像を選択する。照合部106は、辞書記憶部105から、選択した辞書画像を読み出す。
照合部106は、テンプレートマッチングを用いて、例えば、互いに重畳する回転画像の領域と選択され辞書画像の領域との間の類似度を表すマッチングスコアに基づいて、回転領域画像と選択した辞書画像とが互いに最もよく適合する場合の、回転領域画像及び選択した辞書画像の間の相対位置を探索する。
照合部106は、回転領域画像と選択された辞書画像との間における可能な相対位置の全てについて、回転領域画像と選択された画像との重畳領域のマッチングスコアを算出してもよい。照合部106は、回転領域画像と選択された辞書画像との間における可能な相対位置の全てについて算出したマッチングスコアの中から、最も良いスコアを検出してもよい。照合部106は、回転領域画像及び選択した画像の重畳領域から最良スコアを算出した場合の、回転領域画像と選択された辞書画像との間における相対的な関係を検出してもよい。辞書画像内のある辞書画像に対するマッチングスコアの最も良いスコアを、「近さスコア」と称する。
辞書画像の各々の大きさが、回転領域画像の大きさより大きい場合、照合部106は、辞書画像を全て選択するまで、複数の辞書画像から1つの辞書画像を選択し、選択した辞書画像の全域にわたって回転領域画像をスライドさせて、回転領域画像と選択した辞書画像との重畳領域から近さスコアが算出される相対位置を見つけることを繰り返せばよい。近さスコアが算出された相対位置を、「マッチング位置」と表記する。
マッチング位置は、回転領域画像と選択された辞書画像とがマッチング位置において互いに重畳する場合の、回転領域画像に固定された点の位置に対応する位置の、選択された辞書画像の点の座標によって表すことができる。固定された点は、回転領域画像において定義されている、画像座標系の原点でああってもよい。選択された辞書画像の点の座標は、選択された辞書画像に固定されている画像座標系によって表すことができる。
決定部107は、辞書画像の中で、最も良い近さスコアを有する辞書画像を選択することによって、最もよく適合する辞書画像を決定する。決定部107は、さらに、最もよく適合する辞書画像のマッチング位置を選択することによって、最も良い相対位置を決定する。決定部107は、さらに、最もよく適合する辞書画像と回転領域画像とが、最もよく適合する相対位置において重畳する場合に、最もよく適合する辞書画像から、回転領域画像と重畳する領域を抽出することによって、最もよく適合する領域を抽出してもよい。
算出部108は、最もよく適合する辞書画像の真の粒子位置と、最も良いマッチング位置と、回転部103によって算出された回転の変換と、選択部102によって抽出された抽出領域の位置とに基づいて、入力画像における粒子の位置を算出する(すなわち、推定する)。
入力画像における粒子の座標を導出するために、算出部108は、最もよく適合する辞書画像の粒子の真の位置(すなわち、座標)を、辞書記憶部105から読み出す。算出部108は、最もよく適合する辞書画像における粒子の、与えられた座標(すなわち、真の位置)と、最も良いマッチング位置とに基づいて、回転領域画像における粒子の座標を算出する。算出部108は、最もよく適合する辞書画像と回転領域画像とが、最も良いマッチング位置において重畳する場合に、最もよく適合する辞書画像の真の粒子位置に位置する点の、回転領域画像における座標を算出することによって、回転領域画像における粒子の座標を推定する。
算出部108は、回転部103による回転の変換の逆変換に従って、回転領域画像における、推定された座標を、選択部102によって抽出された抽出領域における粒子の座標に変換する。算出部108は、入力画像における抽出領域の位置に基づいて、抽出領域における粒子の座標を、入力画像(すなわち、クエリ画像)における座標(すなわち、粒子位置)に変換する。
出力部109は、入力画像内における、算出された粒子位置を示す位置情報を出力する。出力部109は、算出された粒子位置にある粒子の位置をそれぞれ示すマークを、入力画像に描いてもよく、マークが描かれた入力画像を出力してもよい。出力部109は、算出された粒子位置を表すテストデータを出力してもよい。
上の説明では、回転部103は、入力画像から抽出された抽出領域を回転させるが、回転部103は、辞書画像において粒子の位置を表す点を通る線の角度が、抽出領域における重心を通り、かつ、最小の慣性モーメントを有する線に対してゼロになるように、辞書画像を回転させてもよく、抽出領域の画像と辞書画像とを回転させてもよい。
上述の説明では、水平の線が、辞書画像の各々の、真の粒子位置にある点を通る。辞書画像の各々の、真の粒子位置にある点を通る線は、水平でなくてもよい。この場合、回転部103は、入力画像における推定された線の方向が、照合部106が回転領域画像と照合させる辞書画像の、真の粒子位置にある点を通る線の方向と同じになるように、抽出画像を回転させてよい。
図17は、本発明の第1の実施形態に係る粒子位置の推定の手順に関する画像を模式的に示す図である。
クエリ画像受信部101は、入力画像を受信する。選択部102は、受信した入力画像からクエリ画像パッチ(すなわち、上述の抽出領域)を抽出する。回転部103は、クエリ画像パッチから粒子の候補領域を抽出する。回転部103は、抽出領域において、重心を通り、かつ、抽出候補領域の最小の慣性モーメントを有する線が水平となるように、クエリ画像パッチを回転させる。
辞書記憶部105は、粒子画像(すなわち、上述の辞書画像)及び真の粒子位置を記憶する。辞書記憶部105に格納されている粒子画像は、例えばノイズやぼけである、ダウンサンプリングの攪乱を含む。照合部106は、回転させたクエリ画像パッチを、辞書記憶部の粒子画像の各々と照合する。照合部106は、照合の結果として、粒子画像の各々に対する、回転させたクエリ画像パッチのマッチングスコアを算出する。決定部107は、全ての辞書画像の中から最も良い近さスコアを選択することによって、最もよく適合する辞書画像を決定する。算出部108は、最もよく適合する辞書画像の真の粒子位置に基づいて、クエリ画像における粒子位置を推定する。
図2は、クエリ生成フェーズにおける画像処理装置100の動作の例を示すフローチャートである。クエリ生成フェーズは、クエリ画像を受信すること、クエリ画像から領域を抽出すること、抽出領域を回転させること、及び、回転させた抽出領域の画像と辞書画像とを照合することを含む。
図3は、画像処理装置100のクエリ生成フェーズにおける動作状態の部(すなわち、動作している部)の例を示すブロック図である。クエリ生成フェーズにおける動作状態の部には、クエリ画像受信部101、選択部102及び回転部103が含まれる。図3においては、動作状態の部が実線によって示され、他の部は破線によって示されている。
図2によれば、クエリ画像受信部101は、粒子画像である入力画像を受信する(ステップS101)。入力画像は、入力画像を撮影した顕微鏡(図示せず)によって入力されてもよい。入力画像は、また、入力画像を撮影した望遠鏡(図示せず)によって入力されてもよい。入力画像は、また、粒子画像を記憶する記憶装置(図示せず)から読みされてもよい。
次に、選択部102が、定義されている閾値よりも大きい強度をもつ画素(すなわち、粒子候補画素)を取り囲む、領域又は複数の領域を抽出する(ステップS102A)。選択部102は、選択されていない抽出領域の中から、抽出領域(すなわち、選択領域)を選択する(ステップS102B)。
そして、回転部103は、線の周囲の慣性モーメントが最小であるように、粒子候補画素の質量中心(すなわち、重心)を通る線を導出する(ステップS103)。
回転部103は、導出された線が水平になるように、選択領域を回転させる(ステップS104)。選択部102は、同じ計算を2回以上行わないように、選択した領域を「選択済み」としてマークする(ステップS105)。全ての抽出領域が選択されたわけではない場合(ステップS106においてNO)、画像処理装置の動作は、ステップS102Bに戻る。全ての抽出領域が選択された場合(ステップS106においてYES)、図2の動作は終了する。
図4は、訓練フェーズにおける画像処理装置100の動作の例を示すフローチャートである。
図5は、訓練フェーズにおける画像処理装置100の動作状態の部の例を示すブロック図である。訓練フェーズにおける動作状態の部は、辞書受信部104及び辞書記憶部105である。図5においては、動作状態の部は実線によって示され、他の部は破線によって描かれている。
図4によれば、辞書受信部104は、粒子画像(すなわち、辞書画像)を、辞書画像の、与えられた粒子位置(すなわち、粒子の位置)と共に受信する(ステップS201)。そして、辞書受信部104は、辞書画像を、粒子位置と共に、辞書記憶部105に格納する(ステップS202)。辞書画像は、辞書画像を撮影した顕微鏡(図示せず)によって入力されてもよい。辞書画像は、また、その画像を撮影した望遠鏡(図示せず)によって入力されてもよい。辞書画像は、また、粒子のシミュレーション画像を生成するシミュレータによって入力されてもよい。入力される辞書画像は、また、辞書画像を記憶している記憶装置(図示せず)から読み出されてもよい。全ての辞書画像が辞書記憶部105に格納されているわけではない場合(ステップS203においてNO)、画像処理装置の動作は、ステップS201に戻る。全ての辞書画像が格納された場合、図4に示す動作は終了する。
図6は、照合フェーズにおける画像処理装置100の動作の例を示すフローチャートである。
図7は、画像処理装置100の照合フェーズにおける動作状態の部の例を示すブロック図である。
図6によれば、照合部106は、粒子位置が与えられていない、回転領域画像を、回転部103から受信する(ステップS301)。回転部103は、回転画像を照合部106に送信してもよい。
そして、照合部106は、複数の辞書画像から、1つの辞書画像を選択する(ステップS302)。照合部106は、回転領域画像を、選択した辞書画像と照合する(ステップS302)。照合部106は、例えば回転領域画像と選択辞書画像との重畳する領域の間の類似度を表すマッチングスコアに基づいて、回転領域画像が選択辞書画像と最もよく適合する位置であるマッチング位置に対して、回転領域画像と選択辞書画像との間の可能な全ての相対位置において、回転領域画像が選択辞書画像と最もよく適合する位置であるマッチング位置を探索してもよい。照合部106は、回転領域画像及び選択辞書画像に対して、最も良いマッチングスコアが導出される位置である、最も良いマッチング位置を検出する。
照合部106が、回転領域画像及び選択辞書画像に対して、最も良いマッチング位置と最も良いマッチングスコアとを記録する(ステップS303)。全ての辞書画像が回転領域画像と照合されているわけではない場合(ステップS305においてNO)、画像処理装置100の動作はステップS302に戻り、全ての辞書画像が回転領域画像と照合されるまで(ステップS305においてYES)、ステップS303及びS304の動作が繰り返される。
照合部106は、マッチングスコアとして、正規化相互相関を算出してもよい。正規化相互相関を算出するための数式の例を、以下に記載する、数1及び数2に示す。数1及び数2に示す数式において、S(x,y)は、辞書画像における(x,y)によって表される座標の位置(例えば、画素)におけるスコアであり、d(x,y)は、例えば、辞書画像の位置(x,y)における画素の強度であり、q(x,y)は、例えば、回転入力画像の位置(x,y)における画素の強度である。
数2に示す数式の例は、ゼロ平均正規化相互相関のマッチングスコアを算出するための数式である。数2において、mdは、辞書画像における平均強度であり、mqは、回転入力画像における平均強度である。
全ての辞書画像が回転領域画像と照合された場合(ステップS305においてYES)、決定部107は、全ての辞書画像の最も良いマッチングスコアの中から最も良いスコアを特定することによって、最もよく適合する辞書画像を決定する(ステップS306)。決定部107は、最もよく適合する辞書画像から最も良いマッチング位置において回転領域画像と重畳している領域を抽出することによって、最もよく適合する辞書画像における最もよく適合する領域を抽出する。
そして、算出部108は、決定部107によって抽出された最もよく適合する領域における、与えられた粒子位置と、ステップS104における回転の角度と、ステップS102Aにおいて入力画像から抽出領域が抽出された位置と、等に基づいて、入力画像における粒子位置を算出する(ステップS307)。
照合フェーズの後、出力部109が、位置情報を出力する。
本実施形態によれば、誤ったモデル仮定に起因する、対象位置の推定の不正確さを回避することができる。その理由は、算出部108が、複数の相対位置における、真の位置が与えられている粒子の領域を含む粒子画像に対する入力画像の類似度に基づいて、入力画像における粒子の位置を算出するからである。
<第2の実施形態>
本発明の第2の実施形態を、図面を参照しながら詳細に説明する。
図8は、本発明の第2の実施形態に係る画像処理装置200の構造の例を示すブロック図である。
画像処理装置200は、第1の実施形態の画像処理装置100に含まれる構成要素と同じ構成要素を含む。以下で説明する違いを除き、これらの構成要素の詳細な説明は省略する。画像処理装置200は、グループ化部201をさらに含む。
グループ化部201は、辞書画像における2つの粒子間の距離に基づいて、複数の辞書画像のサブグループへのグループ化を実行する。グループ化部201は、2つの粒子の位置を表す真の粒子位置の間の距離を算出することによって、2つの粒子の間の距離を推定してもよい。
本実施形態の決定部107は、回転領域画像と辞書画像の各々とのマッチングスコアに基づいて、サブグループのうちの1つに対する投票を行う。決定部107は、サブグループの各々に投票されたマッチングスコアの合計を算出してもよい。決定部107は、複数のサブグループに関するマッチングスコアの合計の中で、最も良い合計を有するサブグループを決定する(すなわち、特定する)。
本実施形態に係る画像処理装置200の動作を、図面を参照しながら詳細に説明する。
図9は、クエリ生成フェーズにおける画像処理装置200の動作状態の部の例を示すブロック図である。クエリ生成フェーズにおける動作状態の部には、クエリ画像受信部101、選択部102及び回転部103が含まれる。動作状態の部は実線によって描かれ、他の部は破線によって描かれている。
図2は、クエリ生成フェーズにおける画像処理装置200の動作の例を示すフローチャートである。画像処理装置200のクエリ生成フェーズにおける動作は、第1の実施形態に係る画像処理装置100のクエリ生成フェーズにおける動作と同じである。したがって、画像処理装置200のクエリ生成における動作の詳細な説明は省略する。
図10は、訓練フェーズにおける画像処理装置200の動作状態の部の例を示すブロック図である。訓練フェーズでは、画像処理装置200において動作する部は、辞書受信部104、グループ化部201及び辞書記憶部105である。図10においては、動作状態の部は実線によって示され、他の部は破線によって示されている。
図11は、訓練フェーズにおける画像処理装置200の動作の例を示すフローチャートである。
辞書受信部104は、画像(すなわち、辞書画像)を、その画像の真の粒子位置と共に受信する。画像の真の粒子位置は、予め与えられおり既知である(ステップS401)。図11に示すステップS401は、図4に示す、第1の実施形態のステップS201と同じである。
第1の実施形態と同様に、上述の辞書画像を含む辞書画像の各々は、2つの粒子の画像領域を含む。辞書画像の各々に対して、2つの粒子の真の粒子位置が与えられている。本実施形態では、同じサブグループに分類されている辞書画像の真の粒子位置は、共通である。
2つの粒子位置のうちの一方(第1の位置)は、各辞書画像に共通であってよい。2つの粒子位置のうちの他方(第2の位置)は、第1の位置を通る水平線上にあり、かつ、第1の位置の、予め決められた側(例えば、左側又は右側)にあってよい。辞書画像は、以下のとおりに生成されてもよい。
辞書画像は、複数の辞書画像のうちのある辞書画像(第1の辞書画像)の粒子位置と、複数の辞書画像のうちの他の辞書画像(第2の辞書画像)の粒子位置とが、第1の辞書画像の粒子位置の間の距離が第2の辞書画像の粒子位置の間の距離と同じである場合に、同じであるように、辞書画像生成装置(不図示であるが、画像処理装置200と通信可能に接続されている)によって合成されてもよい。より具体的には、辞書画像生成装置は、予め設定されている複数の距離から、辞書画像における粒子位置間の距離を選択してもよい。辞書画像生成装置は、2つの粒子位置のうちの一方は、辞書画像の各々で共通(例えば、予め決められた位置)であり、2つの粒子位置のうちの他方は、選択した距離に応じて設定されるように、辞書画像を合成してもよい。
辞書画像生成装置は、2つの粒子の領域を含む元画像(例えば、顕微鏡画像)を、2つの粒子位置を通る線が、回転された元画像の各々において水平になるように、回転させてもよい。2つの粒子位置は、操作者によって示されても、入力されてもよい。辞書画像生成装置は、2つの粒子位置のうちの一方(第1の位置)が、予め決められた位置にあり、2つの粒子位置のうちの他方が、第1の位置の、予め決められた側にあるように、回転された元画像から辞書画像を抽出してもよい。
ステップS401の詳細な説明は省略する。
グループ化部201は、真の粒子位置をもつ辞書画像を、辞書受信部104から受信する。グループ化部201は、辞書画像における2つの粒子の間の距離に基づいて、辞書画像をサブグループのうちの1つに分類する(ステップS402)。グループ化部201は、受信した辞書画像における2つの粒子の間の距離として、受信した辞書画像における2つの粒子位置の間の距離を算出してもよい。
サブグループの各々は、距離の複数の区間の中のある区間と関連付けられ、そして、その区間表す代表距離と関連付けられている。複数の区間は、互いに重ならないように準備される。区間の代表距離は、その区間の、最大値、最小値、中心、又は、他の距離であってもよい。
辞書画像の2つの粒子位置の間の距離が、複数の区間のうちのある区間に含まれる場合、グループ化部201は、2つの粒子位置の間の距離を含む区間に関連付けられているサブグループに、その辞書画像を分類する。辞書画像は、2つの粒子の粒子位置が、2つの粒子の間の距離が同じである複数の辞書画像について同じであるように、生成されればよい。グループ化部201は、辞書画像を、辞書画像が分類されるサブグループと、辞書画像とともに受信した真の粒子位置とに関連付ければよい。
全ての辞書画像が分類されているわけではない場合(ステップS403においてNO)、画像処理装置200の動作は、ステップS401に戻る。
全ての辞書画像がサブグループに分類された後(ステップS403においてYES)、グループ化部201は、1つのサブグループと真の粒子位置とにそれぞれ関連付けられている全ての辞書画像を、辞書記憶部105に格納する(ステップS404)。
図12は、照合フェーズにおける画像処理装置200の動作状態の部の例を示すブロック図である。照合フェーズでは、画像処理装置200内で動作している動作状態の部は、辞書記憶部105、照合部106、決定部107及び算出部108である。図12においては、動作状態の部は実線によって描かれ、他の部は破線によって描かれている。
図13は、照合フェーズにおける画像処理装置200の動作の例を示すフローチャートである。
図13に示すステップS301からS306は、図6に示した第1の実施形態のステップS301からS306と同じである。これらのステップの詳細な説明は省略する。ステップS501、S502及びS503の動作を以下に詳細に記載する。
ステップS303において、照合部106は、ステップS301において受信した回転領域画像とステップS302において選択して辞書記憶部105から読み出した辞書画像とに関する最も良いマッチングスコアを導き、最も良いマッチングスコアが導出された位置である、最も良いマッチング位置を検出する。ステップS304において、照合部106は、検出された最も良いマッチング位置と、導出された最も良いマッチングスコアとを記録する。
決定部107は、そして、ステップS304において記録された最も良いマッチングスコアを用いて、ステップS302において選択された辞書画像が分類されているサブグループに投票する(ステップS501)。
回転領域画像と辞書画像とが、マッチングスコアが導出された相対位置においてよく適合するほど、マッチングスコアがより大きい場合、決定部107は、最も良いマッチングスコアをサブカテゴリの合計スコア(すなわち、投票スコア)に加算することによって、最も良いマッチングスコアを用いてサブカテゴリに投票してもよい。回転領域画像と辞書画像とが、マッチングスコアが導出された相対位置においてよりよく適合するほど、マッチングスコアがより小さい場合、決定部107は、マッチングスコアが大きいほど変換されたスコアが小さくなるように、最も良いマッチングスコアをスコアに変換してもよい。決定部107は、変換されたスコアをサブカテゴリの合計スコアに加算することによって、変換されたスコアを用いてサブカテゴリに投票してもよい。
決定部107は、ステップS304で記録された最も良いマッチングスコアを用いて、辞書画像における最も良いマッチング位置に投票する(ステップS502)。最も良いマッチングスコアを用いて最も良いマッチング位置に投票する場合、決定部107は、最も良いマッチングスコア用いて、最も良いマッチング位置の座標に投票してもよい。決定部107は、最も良いマッチングスコアを用いて、最も良いマッチング位置を含む領域に投票してもよい。その領域は、回転領域画像と辞書画像との相対位置の空間を分割することによって生成された領域の1つである。
回転領域画像と辞書画像とが、マッチングスコアが導出された相対位置においてよりよく適合するほど、マッチングスコアがより大きい場合、決定部107は、最も良いマッチングスコアを最も良いマッチング位置の合計スコア(すなわち、投票スコア)に加算することによって、最も良いマッチングスコアを用いて最も良いマッチング位置に投票してもよい。回転領域画像と辞書画像とが、マッチングスコアが導出された相対位置においてよりよく適合するほど、マッチマッチングスコアがより小さい場合、決定部107は、最も良いマッチングスコアがより小さいほど変換されたスコアがより大きいように、最も良いマッチングスコアをスコアに変換してもよい。決定部107は、変換されたスコアを最も良いマッチング位置における合計スコアに加算することによって、最も良いマッチングスコアを用いて最も良いマッチング位置に投票してもよい。
ステップS502において、決定部107は、サブグループの各々について独立に、最も良いマッチング位置の合計スコアを算出してもよい。言い換えると、決定部107は、複数のサブグループのサブグループについての、最も良いマッチング位置の合計スコアを、回転領域画像とそのサブグループに分類されている辞書画像との間のマッチングスコアを用いて、算出してもよい。
全ての辞書画像が回転領域画像と照合された場合(ステップS305においてYES)、決定部107は、ステップS501における投票の結果に基づいて、最もよく適合する辞書画像の真の粒子位置を決定する。決定部107は、ステップS501において算出された最も良い(すなわち、最も高い)合計スコア(投票スコア)を有するサブグループを選択することと、合計スコアが最も良いサブグループに分類された辞書画像の真の粒子位置を、最もよく適合する辞書画像の真の粒子位置として推定することとによって、最もよく適合する辞書画像の真の粒子位置を決定してもよい。上述のように、本実施形態では、同じサブグループに分類された辞書画像は、共通の真の粒子位置を有する。
決定部107は、ステップS502における投票の結果に基づいて、回転領域画像と決定されたサブグループに分類された辞書画像との間における、最も良いマッチング位置を決定する。決定部107は、最も良い(すなわち、最も高い)合計スコアを有する、最も良いマッチング位置を選択することによって、回転領域画像と決定されたサブグループに分類された辞書画像との間における、最も良いマッチング位置を決定してもよい(ステップS503)。
算出部108が、そして、最も高い投票(すなわち、最も高い合計スコア)を有するサブグループの真の粒子位置と、最も高い投票を有する最も良いマッチング位置と、ステップS104における回転の変換と、S102Aにおいて抽出領域が抽出された位置とを用いて、入力画像の粒子位置を算出する(ステップS306)。算出部108は、本発明の第1の実施形態に係る画像処理装置100の算出部108と同じ方法で、入力画像の粒子位置を算出してもよい。
照合フェーズの後、出力部109が、位置情報を出力する。
本実施形態に係る画像処理装置は、入力画像の真の粒子位置をより正確に推定することができる。その理由は、決定部107が、投票結果に基づいて、辞書画像の真の粒子位置と最も良いマッチング位置とを決定するからであり、そのために、ノイズに起因する誤照合が減少するからである。
<第3の実施形態>
本発明の第3の実施形態を、図面を参照しながら詳細に説明する。
図14は、本発明の第3の実施形態に係る画像処理装置300の構造の例を示すブロック図である。
画像処理装置300は、第2の実施形態の画像処理装置200に含まれる構成要素と同じ構成要素を含む。以下で説明する違いを除き、それらの構成要素の詳細な説明は省略する。画像処理装置300は、生成部301をさらに含む。
生成部301は、算出部108が算出した、元の入力画像内おける粒子位置を明確に示す、変更画像を生成する。生成部301は、粒子位置を含む領域が目立つように、粒子位置を含む領域内の画素の強度を変更することによって変更画像を生成してもよい。
生成部301は、入力画像において、画素の強度が変更される領域(以下、「変更領域」と称する)を、算出部108が算出した粒子位置に基づいて決定してもよい。より具体的には、生成部301は、変更領域のそれぞれが粒子位置のうちのひとつを含むように、変更領域を決定してもよい。変更領域は、中心が粒子位置のうちのひとつにある円形領域であってもよい。その円形領域は、入力画像の粒子領域の典型的な半径よりも小さくない、予め設定された半径を有していてもよい。粒子領域の代表半径は、理論的に決定されていてもよい。粒子領域の代表半径は、実験的に決定されていてもよい。生成部301によって決定される領域は、上述の例に限定されない。
生成部301は、入力画像の決定された領域に含まれる画素の強度を変更することによって、画像(すなわち、変更画像)を生成してもよい。生成部301は、変更した領域に含まれる画素の強度のコントラストを強めることによって、変更画像を生成してもよい。生成部301は、変更領域に含まれる画素の強度を増加させることによって、変更画像を生成してもよい。生成部301は、入力画像において、変更領域に含まれる画素の強度を減少させることによって、変更画像を生成し得る。生成部301は、上述の例以外の方法によって、変更画像を生成してもよい。生成部301は、入力画像において粒子位置が明確になるように、入力画像の決定領域を変更することによって、変更画像を生成してもよい。
この実施形態による画像処理装置の動作を、図面を参照しながら詳細に説明する。
図2は、クエリ生成フェーズにおける画像処理装置300の動作の例を示すフローチャートである。クエリ生成フェーズにおける画像処理装置300の動作は、クエリ生成フェーズにおける第1の実施形態に係る画像処理装置100の動作と同じである。そのため、クエリ生成フェーズにおける画像処理装置300の動作の詳細な説明は省略する。
図11は、訓練フェーズにおける画像処理装置300の動作の例を示すフローチャートである。訓練フェーズにおける画像処理装置300の動作は、訓練フェーズにおける第2の実施形態に係る画像処理装置200の動作と同じである。訓練フェーズにおける画像処理装置300の動作の詳細な説明は省略する。
図13は、照合フェーズにおける画像処理装置300の動作の例を示すフローチャートである。照合フェーズにおける画像処理装置300の動作は、照合フェーズにおける第2の実施形態に係る画像処理装置200の動作と同じである。照合フェーズにおける画像処理装置300の動作の詳細な説明は省略する。
照合フェーズの後、画像処理装置300は、画像生成フェーズにおける動作を実行する。
図15は、画像生成フェーズにおける画像処理装置300の動作状態の部の例を示すブロック図である。画像生成フェーズにおいて、動作状態の部に、生成部301が含まれる。図15では、生成部301は実線によって示され、生成部301以外の部は破線によって描かれている。
図16は、生成フェーズにおける画像処理装置300の動作の例を示すフローチャートである。
生成部301は、クエリ画像受信部101から入力画像を受信する。生成部301は、画素の強度が変更される領域である変更領域を決定する(ステップS601)。上述のように、変更領域のそれぞれは、粒子位置の1つを含む。
そして、生成部301は、ステップS601において決定された変更領域に含まれる画素の強度を変更することによって、変更画像を生成する(ステップS602)。
生成フェーズの後、出力部109は、位置情報として、生成部301によって生成された変更画像を出力する。
図18は、第3の実施形態に係る画像処理装置300Aの構造の第2の例を示すブロック図である。画像処理装置300Aは、画像処理装置300の変形である。画像処理装置300Aは、第1の実施形態の画像処理装置100の構成要素を含む。画像処理装置300Aは、生成部301をさらに含む。生成部301は、上述の第3の実施形態の生成部301と同じである。出力部109は、上述の第3の実施形態の出力部109と同じである。画像処理装置300Aの他の構成要素は、第1の実施形態の画像処理装置100の構成要素と同じである。
本発明の本実施形態の画像処理装置300は、本発明の第2の実施形態の画像処理装置200の効果と同様の効果を有する。
本実施形態によれば、粒子位置を目立たせることが可能である。その理由は、生成部301が、それぞれ、粒子位置の1つを含み、かつ、それぞれ、強度が変更された画素を含む、変更領域を含む変更画像を生成するからである。
<第4の実施形態>
本発明の第4の実施形態を、図面を参照しながら詳細に説明する。
図19は、本発明の第4の実施形態による画像処理装置の構造の例を示すブロック図である。
図19における画像処理装置400は、照合部106及び算出部108を含む。照合部106は、複数の相対位置において、粒子の領域を含む粒子画像に対する、入力画像の類似度を推定する。粒子画像における粒子の真の位置は、与えられている。算出部108は、類似度と真の位置とに基づいて、入力画像における粒子の位置を算出する。
本実施形態によれば、誤ったモデル仮定に起因する、対象位置の推定の不正確さを回避することができる。その理由は、複数の相対位置において、粒子画像における真の位置が与えられている粒子の領域を含む粒子画像に対する、入力画像の類似度に基づいて、算出部108が、入力画像における粒子の位置を算出するからである。
<他の実施形態>
本発明の実施形態に係る画像処理装置の各々は、例えば、専用ハードウェア(例えば、回路又は複数の回路)、プロセッサとメモリとを含むコンピュータ、又は、専用ハードウェアとコンピュータとの組み合わせなどの、回路構成によって実現することができる。
図20は、本発明の実施形態に係る画像処理装置の各々として動作することができるコンピュータの構造の例を示すブロック図である。
図20によれば、コンピュータ1000は、プロセッサ1001、メモリ1002、記憶装置1003及びI/O(入力/出力)インタフェース1004を含む。コンピュータ1000は、記憶媒体1005にアクセスすることができる。メモリ1002及び記憶装置1003は、RAM(Random Access Memory)又はハードディスクドライブにより実現できる。記憶媒体1005は、例えばRAM、ハードディスクドライブ等の記憶装置、ROM(Read Only Memory)、又は、可搬記録媒体等あってもよい。記憶装置1003が、記憶媒体1005として機能してもよい。プロセッサ1001は、メモリ1002及び記憶装置1003からデータ及びプログラムを読み出すことができ、メモリ1002及び記憶装置1003にデータ及びプログラムを書き込むことができる。プロセッサ1001は、入力装置(図示せず)、クエリ画像及びモデル画像を提供する装置、決定結果を表示する装置に、I/Oインタフェース1004を介してアクセスすることができる。プロセッサ1001は、記憶媒体1005にアクセスすることができる。記憶媒体1005は、コンピュータ1000を本発明の実施形態のいずれか1つに係る画像処理装置として動作させるプログラムを記憶している。
プロセッサ1001は、記憶媒体1005に格納されているプログラムを、メモリ1002にロードする。プロセッサ1001は、メモリ1002に格納されているプログラムを実行することによって、本発明の実施形態のいずれか1つに係る画像処理装置として動作する。
クエリ画像受信部101、選択部102、回転部103、辞書受信部104、照合部106、決定部107、算出部108、出力部109、グループ化部201及び生成部301は、記憶媒体1005から読み出され、メモリ1002にロードされた上述のプログラムによって制御される、プロセッサ1001によって実現できる。
辞書記憶部105は、メモリ1002、及び/又は、例えばハードディスクドライブ等の記憶装置1003によって実現できる。
上述のように、クエリ画像受信部101、選択部102、回転部103、辞書受信部104、辞書記憶部105、照合部106、決定部107、算出部108、出力部109、グループ化部201及び生成部301のうちの少なくとも1つは、専用ハードウェアによって実現できる。
本発明の実施形態の各々に含まれる部のいずれか1つ又は複数は、専用ハードウェア(例えば、回路構成)として実現されていても良い。本発明の実施形態の各々に含まれる部のいずれか1つ又は複数は、プログラムがロードされたメモリと、メモリにロードされたプログラムによって制御されるプロセッサとを含む、コンピュータによって実現されていてもよい。
図21は、本発明の第1の実施形態に係る画像処理装置のハードウェア構造の例のブロック図である。図21によれば、画像処理装置100は、クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、照合回路2106、決定回路2107、算出回路2108及び出力回路2109を含んで実現される。
クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108及び出力回路2109は、1つの回路又は複数の回路として実現され得る。クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108及び出力回路2109は、1つの装置又は複数の装置において実現され得る。
クエリ画像受信回路2101は、クエリ画像受信部101として動作する。選択回路2102は、選択部102として動作する。回転回路2103は、回転部103として動作する。辞書受信回路2104は、辞書受信部104として動作する。辞書記憶装置2105は、辞書記憶部105として動作する。照合回路2106は、照合部106として動作する。決定回路2107は、決定部107として動作する。算出回路2108は、算出部108として動作する。出力回路2109は、出力部109として動作する。
図22は、本発明の第2の実施形態による画像処理装置のハードウェア構造の例のブロック図である。図22によれば、画像処理装置200は、クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、照合回路2106、決定回路2107、算出回路2108、出力回路2109及びグループ化回路2201を含んで実現される。
クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108、出力回路2109及びグループ化回路2201は、1つの回路又は複数の回路として実現され得る。クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108、出力回路2109及びグループ化回路2201は、1つの装置又は複数の装置において実現され得る。
クエリ画像受信回路2101は、クエリ画像受信部101として動作する。選択回路2102は、選択部102として動作する。回転回路2103は、回転部103として動作する。辞書受信回路2104は、辞書受信部104として動作する。辞書記憶装置2105は、辞書記憶部105として動作する。照合回路2106は、照合部106として動作する。決定回路2107は、決定部107として動作する。算出回路2108は、算出部108として動作する。出力回路2109は、出力部109として動作する。グループ化回路2201は、グループ化部201として動作する。
図23は、本発明の第3の実施形態に係る画像処理装置のハードウェア構造の第1の例のブロック図である。図23によれば、画像処理装置300は、クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、照合回路2106、決定回路2107、算出回路2108、出力回路2109、グループ化回路2201及び生成回路2301を含んで実現される。
クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108、出力回路2109、グループ化回路2201及び生成回路2301は、1つの回路又は複数の回路として実現され得る。クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108、出力回路2109、グループ化回路2201及び生成回路2301は、1つの装置又は複数の装置において実現され得る。
クエリ画像受信回路2101は、クエリ画像受信部101として動作する。選択回路2102は、選択部102として動作する。回転回路2103は、回転部103として動作する。辞書受信回路2104は、辞書受信部104として動作する。辞書記憶装置2105は、辞書記憶部105として動作する。照合回路2106は、照合部106として動作する。決定回路2107は、決定部107として動作する。算出回路2108は、算出部108として動作する。出力回路2109は、出力部109として動作する。グループ化回路2201は、グループ化部201として動作する。生成回路2301は、生成部301として動作する。
図24は、本発明の第3の実施形態に係る画像処理装置のハードウェア構造の第2の例のブロック図である。図24によれば、画像処理装置300Aは、クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、照合回路2106、決定回路2107、算出回路2108、出力回路2109及び生成回路2301を含んで実現される。
クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108、出力回路2109及び生成回路2301は、1つの回路又は複数の回路として実現され得る。クエリ画像受信回路2101、選択回路2102、回転回路2103、辞書受信回路2104、辞書記憶装置2105、照合回路2106、決定回路2107、算出回路2108、出力回路2109及び生成回路2301は、1つの装置又は複数の装置において実現され得る。
クエリ画像受信回路2101は、クエリ画像受信部101として動作する。選択回路2102は、選択部102として動作する。回転回路2103は、回転部103として動作する。辞書受信回路2104は、辞書受信部104として動作する。辞書記憶装置2105は、辞書記憶部105として動作する。照合回路2106は、照合部106として動作する。決定回路2107は、決定部107として動作する。算出回路2108は、算出部108として動作する。出力回路2109は、出力部109として動作する。生成回路2301は、生成部301として動作する。
図25は、本発明の第4の実施形態による画像処理装置のハードウェア構造の例のブロック図である。図25によれば、画像処理装置400は、照合回路2106及び算出回路2108を含んで実現される。
照合回路2106及び算出回路2108は、1つの回路又は複数の回路として実現され得る。照合回路2106及び算出回路2108は、1つの装置又は複数の装置において実現され得る。
本発明を、その実施形態を参照しながら、詳細に示して説明したが、本発明は、これらの実施形態に限定されない。特許請求の範囲によって規定される本発明の趣旨およびスコープから逸脱することなく、形態や細部に様々な変更がなされてよいということは、当業者には理解できるであろう。