(57)【要約】【課題】位置合わせの基準となる対象物の発光特性、その対象物の撮影条件にかかわらず、複数の撮影画像の位置合わせを精度良く行うことができる画像処理装置を提供する。【解決手段】領域画素データ積算部１０３において、フィルタ画像１０１に対して演算領域設定部１０２から出力された演算領域を相対的にシフトさせ、各シフト位置において、逐次演算領域の輝度値を全て足し合わせた領域積算データを算出し、シフト量算出部１０４にて、各シフト位置の領域積算データの中で最大値を求め、最大値に対応するシフト位置を位置合わせのシフト量として算出する。そして、位置補正部１０５にて、算出したシフト量を基にフィルタ画像１０１をシフトさせ、出力画像１０６として出力する。【選択図】図１
2006227895.tif 000002
【特許請求の範囲】
【請求項１】
複数画像の位置合わせ処理を行う画像処理装置であって、
位置合わせを行うべき画像それぞれに対して、位置合わせのための演算処理を行う画素領域である演算領域を設定する演算領域設定部と、
処理対象画像における前記演算領域の画素の輝度値を加算した領域積算データを、前記演算領域を前記処理対象画像に対して相対的に移動させた複数のシフト位置で算出する領域画素データ積算部と、
前記領域画素データ積算部において算出した複数の前記領域積算データの中の最大値又は最小値に対応する前記シフト位置を示すシフト量を算出するシフト量算出部と、
前記シフト量算出部において算出した前記シフト量に基づいて、前記処理対象画像の補正画像を生成する位置補正部と、を備える画像処理装置。
【請求項２】
請求項１記載の画像処理装置であって、
前記演算領域設定部が設定する前記演算領域は、前記処理対象画像における位置合わせの基準となる対象物の領域である画像処理装置。
【請求項３】
請求項１又は２記載の画像処理装置であって、
前記演算領域設定部が設定する前記演算領域は、前記演算領域を求めるための画像データである演算領域算出画像を２値化して得られた画像データの、一方の画素値が占める領域である画像処理装置。
【請求項４】
請求項３記載の画像処理装置であって、
前記演算領域算出画像は、前記処理対象画像における位置合わせの基準となる対象物に光を照射した時の影を撮影した画像である画像処理装置。
【請求項５】
請求項３記載の画像処理装置であって、
前記演算領域算出画像は、前記処理対象画像における位置合わせの基準となる全ての対象物が撮影されている画像である画像処理装置。
【請求項６】
請求項５記載の画像処理装置であって、
前記位置合わせを行うべき画像は、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、
前記演算領域算出画像は、前記複数のフィルタの全通過帯域を通過するフィルタを用いて、又はフィルタを用いずに撮影した画像である画像処理装置。
【請求項７】
請求項１記載の画像処理装置であって、
前記位置合わせを行うべき画像は、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、
前記演算領域設定部は、撮影される対象物の画像パターンの形状を示すマスクパターンを有し、前記撮影画像の複数の画像を重ね合わせて各画像の対応する画素の輝度値を加算した画像データを作成し、該画像データにおいて予め与えられた閾値に基づいて抽出した領域の重心位置とマスクパターンの重心位置が一致するようにマスクパターンを配置し、該マスクパターンの領域を演算領域とする画像処理装置。
【請求項８】
請求項１ないし７のいずれか１項記載の画像処理装置であって、
前記領域画素データ積算部は、前記演算領域設定部によって設定される前記演算領域のうち、前記相対的に移動させる範囲に応じて定められる前記演算領域の前記輝度値を加算する画像処理装置。
【請求項９】
請求項８記載の画像処理装置であって、
前記領域画素データ積算部は、前記処理対象画像の周辺部分を除く部分に対応する前記演算領域の前記輝度値を加算する画像処理装置。
【請求項１０】
請求項１ないし７のいずれか１項記載の画像処理装置であって、
前記演算領域設定部は、前記相対的に移動させる範囲に応じて定められる範囲に、前記演算領域を設定する画像処理装置。
【請求項１１】
請求項１０記載の画像処理装置であって、
前記演算領域を設定する領域は、前記処理対象画像の周辺部分を除く部分に対応する領域である画像処理装置。
【請求項１２】
請求項１ないし１１のいずれか１項記載の画像処理装置であって、
前記領域画素データ積算部は、１画素よりも大きい間隔で、前記演算領域を前記処理対象画像に対して相対的に移動させる画像処理装置。
【請求項１３】
請求項１ないし１２のいずれか１項記載の画像処理装置であって、
前記領域画素データ積算部は、前記シフト位置に対応する格納アドレスを持ったテーブルを有し、そのアドレス位置に、そのシフト位置における領域積算データを記憶する画像処理装置。
【請求項１４】
請求項１ないし１３のいずれか１項記載の画像処理装置であって、
前記領域画素データ積算部は、前記演算領域の画素の輝度値を加算した結果から予め与えた一定値を減算した値を前記領域積算データとする画像処理装置。
【請求項１５】
請求項１ないし１４のいずれか１項記載の画像処理装置であって、
前記領域画素データ積算部は、前記処理対象画像における前記演算領域の繋がっている領域毎に平均輝度値を算出し、算出した各領域の平均輝度値を全て加算した値を領域積算データとする画像処理装置。
【請求項１６】
請求項１ないし１５のいずれか１項記載の画像処理装置であって、
前記シフト量算出部は、前記領域画素データ積算部で算出した領域積算データの最大値又は最小値が複数ある場合、最大値又は最小値に対応する複数のシフト量の平均値をシフト量とする画像処理装置。
【請求項１７】
請求項１ないし１６のいずれか１項記載の画像処理装置であって、
前記シフト量算出部は、１画素よりも大きい間隔で前記演算領域を前記処理対象画像に対して相対的に移動させたときのシフト量の最大値又は最小値を前記領域画素データ積算部に出力する画像処理装置。
【請求項１８】
請求項１７記載の画像処理装置であって、
前記領域画素データ積算部は、前記シフト量算出部から入力されるシフト量の最大値又は最小値に対応する移動位置近傍で、より狭い範囲でかつより小さい間隔で前記演算領域を前記処理対象画像に対して相対的に移動させた場合の前記領域積算データを再度算出する画像処理装置。
【請求項１９】
請求項１８記載の画像処理装置であって
前記領域画素データ積算部は、前記領域積算データを再度算出する場合、既算出の移動位置における前記領域積算データの算出を省略する画像処理装置。
【請求項２０】
請求項１ないし１９のいずれか１項記載の画像処理装置であって、
前記領域画素データ積算部で算出した前記領域積算データに基づいて、前記処理対象画像の位置合わせの可否を判定する判断部をさらに備える画像処理装置。
【請求項２１】
請求項２０記載の画像処理装置であって、
前記判断部は、前記領域画素データ積算部で算出した前記領域積算データの中で最大値と最小値を求め、求めた最大値と最小値との比に基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２２】
請求項２０記載の画像処理装置であって、
前記判断部は、前記領域画素データ積算部で算出した前記領域積算データの中で最大値又は最小値を求め、求めた最大値又は最小値に対して所定の割合の値を持つシフト位置を抽出し、抽出したシフト位置の分布に基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２３】
請求項２２記載の画像処理装置であって、
前記判断部は、前記抽出したシフト位置の存在範囲の大きさに基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２４】
請求項２２記載の画像処理装置であって、
前記判断部は、前記抽出したシフト位置の存在範囲の縦幅又は横幅の少なくとも一方の大きさに基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２５】
請求項２２記載の画像処理装置であって、
前記判断部は、前記抽出したシフト位置の存在範囲の縦幅と横幅の和に基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２６】
請求項２２記載の画像処理装置であって、
前記判断部は、前記抽出したシフト位置の存在範囲の縦幅と横幅の積に基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２７】
請求項２２記載の画像処理装置であって、
前記判断部は、前記抽出したシフト位置の存在範囲の縦幅と横幅の差に基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２８】
請求項２２記載の画像処理装置であって、
前記判断部は、前記抽出したシフト位置の存在範囲の縦幅と横幅の比に基づいて前記処理対象画像の位置合わせの可否を判定する画像処理装置。
【請求項２９】
請求項２０ないし請求項２８のいずれか１項記載の画像処理装置であって、
前記位置合わせを行うべき画像は、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、
前記判断部は、位置合わせ不可と判定した場合、同じフィルタを用い、撮影位置を変えて撮影した画像に変更して位置合わせ処理を繰り返す画像処理装置。
【請求項３０】
請求項１ないし２９のいずれか１項記載の画像処理装置であって、
前記領域画素データ積算部は、第２の移動範囲において前記演算領域を前記処理対象画像に対して相対的に移動させた複数のシフト位置で、前記領域積算データを算出するものであり、
前記シフト量算出部は、前記第２の移動範囲における前記領域積算データの最大値又は最小値を求め、求めた最大値又は最小値に対応するシフト位置が、前記第２の移動範囲より小さい第１の移動範囲内にある場合は、前記最大値又は最小値に対応するシフト位置を示すシフト量を前記シフト量として出力し、前記第１の移動範囲外にある場合は、前記シフト量を０として出力する画像処理装置。
【請求項３１】
請求項３０記載の画像処理装置であって、
前記領域画素データ積算部は、前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第２の移動範囲の最大シフト位置である場合、前記第２の移動範囲を一定量拡大する画像処理装置。
【請求項３２】
請求項３１記載の画像処理装置であって、
前記領域画素データ積算部は、前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第２の移動範囲の最大シフト位置である場合、そのシフト位置に対応するシフト量の方向にのみ前記第２の移動範囲を一定量拡大する画像処理装置。
【請求項３３】
請求項３０ないし３２のいずれか１項記載の画像処理装置であって、
前記位置合わせを行うべき画像は、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、
前記領域画素データ積算部において求めた前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第１の移動範囲外にある場合、同じフィルタを用い、撮影位置を変えて撮影した画像に変更して位置合わせ処理を繰り返す画像処理装置。
【請求項３４】
請求項３０記載の画像処理装置であって、
前記シフト量算出部は、前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第１の移動範囲外にある場合で、かつ前記第２の移動範囲の最大シフト位置でない場合は、そのシフト位置を示すシフト量を前記シフト量として出力する画像処理装置。
【請求項３５】
請求項１ないし３４のいずれか１項記載の画像処理装置であって、
前記位置合わせを行うべき画像は、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像である画像処理装置。
【請求項３６】
請求項３５記載の画像処理装置であって、
前記位置合わせを行うべき画像は、複数の異なる撮影位置において同一のフィルタを用いて撮影した画像を含み、
前記領域画素データ積算部は、複数枚の画像の前記領域積算データを記憶しておく機能を有し、
前記領域画素データ積算部では、それぞれのフィルタ画像に対して前記演算領域を相対的にずらし、ずらした各位置における領域積算データを求め、各フィルタ画像の領域積算データを記憶しておき、
前記シフト量算出部は、同一のフィルタを用いて撮影した画像毎に記憶している前記領域積算データの中でそれぞれ最大値と最小値を求め、求めた最大値と最小値との比に基づいて特定の画像を選択し、その画像の前記シフト量を算出する画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数画像の位置合わせ処理を行う画像処理装置に関し、特に、同一の撮影対象を複数回撮影して得た画像間の位置ずれを補正する技術に関するものである。
【背景技術】
【０００２】
複数の画像間の位置ずれを補正する位置合わせ手法としては、画像間の相関を評価し、相関が最も大きい位置に画像を合わせる手法が一般的によく知られている。そして、画像間の相関の評価には、残差が用いられる。残差は、２枚の画像を重ね合わせたときの重なった画素の輝度値の差の絶対値を累積加算した値であり、２枚の画像のミスマッチ度合いを示している。したがって、重ね合わせる位置を変更しつつ、各位置で残差を求め、残差が最小となる位置を検出することで、位置合わせの位置を求めることができる。
【０００３】
このような位置合わせ処理に関する技術が記載された文献として、特許文献１がある。特許文献１には、基準となる画像に対して位置合わせ対象となる画像を最もうまく重ね合わせることができる位置を求める画像の位置合わせ方法であって、基準画像と対象画像との位置合わせのよさの指標として、基準画像と対象画像が重なり合う部分である重複領域における残差をその重複領域に含まれる要素数により正規化した類似測度を用い、対象画像の基準画像に対する各重なり位置の候補における類似測度のうち、最良の類似測度が得られた重なり位置の候補を基準画像に対するその対象画像の位置合わせ位置とする位置合わせ方法が記載されている。
【０００４】
図２０は、この位置合わせ処理を示すフローチャートである。図２０において、まず、位置合わせ処理の対象となる対象画像及び位置合わせ処理の基準となる基準画像の画像データを読み込む（ステップＡ０）。また、基準画像に対して対象画像がとりうる位置を示す位置パラメータの候補の集合（位置パラメータ候補群）も読み込む（ステップＡ１）。そして、最良類似測度を与えた位置パラメータ候補、その位置パラメータ候補により得られた重複領域の要素数及び類似測度の各項目を記憶しておく最良類似測度メモリを初期化する（ステップＡ２）。
【０００５】
続いて、読み込んだ位置パラメータ候補群の中から１つの位置パラメータ候補を選択し（ステップＡ３）、この選択された位置パラメータ候補を対象画像に適用した際に対象画像と基準画像が重なり合う部分である重複領域を求めて設定する（ステップＡ４）。そして、その重複領域に含まれる要素数を計算し（ステップＡ５）、記憶しておく。さらに、記憶した重複領域の要素数と、今までの算出した最良類似測度とから閾値を求め、設定する（ステップＡ６）。この閾値は、重複領域の要素数と最良類似測度を乗じた値であり、重複領域における残差を計算する以下の手続きにおいて、手続きを途中で打切るかどうかを判断するために利用される。
【０００６】
次に、重複領域における残差を求めるにあたり、残差計算の途中経過（部分残差）を格納する残差メモリを初期化する（ステップＡ７）。そして、重複領域内の要素に対応する、基準画像と対象画像の画素の輝度値から残差を求め、残差メモリを更新していく（ステップＡ８、Ａ９）。更新された残差メモリ内の値は、ステップＡ６で設定した閾値と比較され（ステップＡ１０）、残差メモリ内の値が閾値を上回っている場合には、重複領域に対する残差を求める手続きを中断し、ステップＡ３に戻って、位置パラメータ候補群内の次の位置パラメータ候補に対して、ステップＡ３以降と同様の処理を行う。
【０００７】
一方、残差メモリ内の値が閾値未満の場合には、重複領域内の次の要素を選択し、同様に残差メモリの値を更新する処理を引き続き行う。重複領域内の全ての要素に対して残差メモリ内の値を更新する処理を終えた場合は、得られた結果に基づき、最良類似測度メモリ内の位置パラメータ、その位置パラメータを対象画像に適用した場合に得られる重複領域の残差、その重複領域に含まれる要素数のそれぞれを、更新する（ステップＡ１１）。
【０００８】
そして、ステップＡ３に戻って、位置パラメータ候補群の次の位置パラメータ候補を選択し、ステップＡ３以降の処理を繰り返す。位置パラメータ候補群内の全ての位置パラメータ候補を選択し、それらに対して上記の処理を適用し終えると、最良類似測度メモリには、位置パラメータ候補群内で最良の類似測度を与えた位置パラメータと、その位置パラメータにより得られる重複領域の類似測度と、その重複領域の要素数とが格納されていることになる。そして、これらの値を位置合わせ結果とする。
【０００９】
以上のように、画像間の重ね合わせのよさを評価する指標として基準画像と対象画像との重複領域における残差をその重複領域に含まれる要素数により正規化した類似測度を用いることにより、画像間の位置関係によって重なり部分の大きさや形状が変化する場合にも正確な位置合わせが行える。また、対象画像の基準画像に対するある重なり位置における類似測度を算出するに際して、両画像の重複部分の要素数と今までの最良類似測度とを乗じた値を、今回の類似測度算出で使用する閾値の値として設定し、重複領域における計算途中の残差が閾値を超過した場合には、それまでの最良値を更新できないことが判明するため、残差計算を打切ることで、全体の計算量が削減され、高速な位置合わせを可能としている。さらに、正規化した残差である類似測度は画像の重なり部分の大きさや形状に影響されない値であるので、画像の各画素が有効画素であるのか、無効画素であるのかを示す情報を保持する画像マスクを予め用意しておき、類似測度を求める際に、画像マスクを参照し、基準画像と対象画像の重複領域で双方が有効画素である要素のみを用いることで、画像中の特定の範囲だけを画像処理の対象とした位置合わせも可能としている。
【００１０】
【特許文献１】特開平１０−４９６８１号公報  第２図
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記した位置合わせ処理は、基準画像と対象画像が同一の対象を同一の撮影条件で撮影して得たものであることを前提としており、１つの撮影対象を通過帯域の異なるフィルタを介して撮影した複数の画像間の位置ずれの補正には適用が困難である。すなわち、一般に対象物は様々な発光特性を持っており、通過帯域の異なるフィルタを介して撮影した画像は、同一対象物の明るさが異なるものとなる。したがって、画像間における相関の評価が困難になり、場合によっては、一対の画像を重ね合わせて求めた残差の最小値の位置が必ずしもマッチング位置と限らなくなる。
【００１２】
本発明は、上記事情に鑑みなされたもので、位置合わせの基準となる対象物の発光特性、その対象物の撮影条件にかかわらず、複数の撮影画像の位置合わせを精度良く行うことができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の画像処理装置は、複数画像の位置合わせ処理を行う画像処理装置であって、位置合わせを行うべき画像それぞれに対して、位置合わせのための演算処理を行う画素領域である演算領域を設定する演算領域設定部と、処理対象画像における前記演算領域の画素の輝度値を加算した領域積算データを、前記演算領域を前記処理対象画像に対して相対的に移動させた複数のシフト位置で算出する領域画素データ積算部と、前記領域画素データ積算部において算出した複数の前記領域積算データの中の最大値又は最小値に対応する前記シフト位置を示すシフト量を算出するシフト量算出部と、前記シフト量算出部において算出した前記シフト量に基づいて、前記処理対象画像の補正画像を生成する位置補正部と、を備えるものである。
【００１４】
本発明によれば、位置合わせの基準となる対象物の発光特性、その対象物の撮影条件にかかわらず、複数の撮影画像の位置合わせを精度良く行うことができる。
【００１５】
本発明の画像処理装置は、前記演算領域設定部が設定する前記演算領域が、前記処理対象画像における位置合わせの基準となる対象物の領域であるものを含む。
【００１６】
本発明の画像処理装置は、前記演算領域設定部が設定する前記演算領域が、前記演算領域を求めるための画像データである演算領域算出画像を２値化して得られた画像データの、一方の画素値が占める領域であるものを含む。
【００１７】
本発明の画像処理装置は、前記演算領域算出画像が、前記処理対象画像における位置合わせの基準となる対象物に光を照射した時の影を撮影した画像であるものを含む。
【００１８】
本発明の画像処理装置は、前記演算領域算出画像が、前記処理対象画像における位置合わせの基準となる全ての対象物が撮影されている画像である画像処理装置。
【００１９】
本発明の画像処理装置は、前記位置合わせを行うべき画像が、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、前記演算領域算出画像が、前記複数のフィルタの全通過帯域を通過するフィルタを用いて、又はフィルタを用いずに撮影した画像であるものを含む。
【００２０】
本発明の画像処理装置は、前記位置合わせを行うべき画像が、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、前記演算領域設定部が、撮影される対象物の画像パターンの形状を示すマスクパターンを有し、前記撮影画像の複数の画像を重ね合わせて各画像の対応する画素の輝度値を加算した画像データを作成し、該画像データにおいて予め与えられた閾値に基づいて抽出した領域の重心位置とマスクパターンの重心位置が一致するようにマスクパターンを配置し、該マスクパターンの領域を演算領域とするものを含む。
【００２１】
本発明の画像処理装置は、前記領域画素データ積算部が、前記演算領域設定部によって設定される前記演算領域のうち、前記相対的に移動させる範囲に応じて定められる前記演算領域の前記輝度値を加算するものを含む。
【００２２】
本発明の画像処理装置は、前記領域画素データ積算部が、前記処理対象画像の周辺部分を除く部分に対応する前記演算領域の前記輝度値を加算するものを含む。
【００２３】
本発明の画像処理装置は、前記演算領域設定部が、前記相対的に移動させる範囲に応じて定められる範囲に、前記演算領域を設定するものを含む。
【００２４】
本発明の画像処理装置は、前記演算領域を設定する領域が、前記処理対象画像の周辺部分を除く部分に対応する領域であるものを含む。
【００２５】
本発明の画像処理装置は、前記領域画素データ積算部が、１画素よりも大きい間隔で、前記演算領域を前記処理対象画像に対して相対的に移動させるものを含む。
【００２６】
本発明の画像処理装置は、前記領域画素データ積算部が、前記シフト位置に対応する格納アドレスを持ったテーブルを有し、そのアドレス位置に、そのシフト位置における領域積算データを記憶するものを含む。
【００２７】
本発明の画像処理装置は、前記領域画素データ積算部が、前記演算領域の画素の輝度値を加算した結果から予め与えた一定値を減算した値を前記領域積算データとするものを含む。
【００２８】
本発明の画像処理装置は、前記領域画素データ積算部が、前記処理対象画像における前記演算領域の繋がっている領域毎に平均輝度値を算出し、算出した各領域の平均輝度値を全て加算した値を領域積算データとするものを含む。
【００２９】
本発明の画像処理装置は、前記シフト量算出部が、前記領域画素データ積算部で算出した領域積算データの最大値又は最小値が複数ある場合、最大値又は最小値に対応する複数のシフト量の平均値をシフト量とするものを含む。
【００３０】
本発明の画像処理装置は、前記シフト量算出部が、１画素よりも大きい間隔で前記演算領域を前記処理対象画像に対して相対的に移動させたときのシフト量の最大値又は最小値を前記領域画素データ積算部に出力するものを含む。
【００３１】
本発明の画像処理装置は、前記領域画素データ積算部が、前記シフト量算出部から入力されるシフト量の最大値又は最小値に対応する移動位置近傍で、より狭い範囲でかつより小さい間隔で前記演算領域を前記処理対象画像に対して相対的に移動させた場合の前記領域積算データを再度算出するものを含む。本発明によれば、少ない演算量で高速に位置合わせを行うことができる。
【００３２】
本発明の画像処理装置は、前記領域画素データ積算部が、前記領域積算データを再度算出する場合、既算出の移動位置における前記領域積算データの算出を省略するものを含む。
【００３３】
本発明の画像処理装置は、前記領域画素データ積算部で算出した前記領域積算データに基づいて、前記処理対象画像の位置合わせの可否を判定する判断部をさらに備えるものを含む。本発明によれば、位置合わせ処理に対し誤動作を起こす可能性があるフィルタ画像が入力された場合、位置合わせを行わないようにすることができる。
【００３４】
本発明の画像処理装置は、前記判断部が、前記領域画素データ積算部で算出した前記領域積算データの中で最大値と最小値を求め、求めた最大値と最小値との比に基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００３５】
本発明の画像処理装置は、前記判断部が、前記領域画素データ積算部で算出した前記領域積算データの中で最大値又は最小値を求め、求めた最大値又は最小値に対して所定の割合の値を持つシフト位置を抽出し、抽出したシフト位置の分布に基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００３６】
本発明の画像処理装置は、前記判断部が、前記抽出したシフト位置の存在範囲の大きさに基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００３７】
本発明の画像処理装置は、前記判断部が、前記抽出したシフト位置の存在範囲の縦幅又は横幅の少なくとも一方の大きさに基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００３８】
本発明の画像処理装置は、前記判断部が、前記抽出したシフト位置の存在範囲の縦幅と横幅の和に基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００３９】
本発明の画像処理装置は、前記判断部が、前記抽出したシフト位置の存在範囲の縦幅と横幅の積に基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００４０】
本発明の画像処理装置は、前記判断部が、前記抽出したシフト位置の存在範囲の縦幅と横幅の差に基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００４１】
本発明の画像処理装置は、前記判断部が、前記抽出したシフト位置の存在範囲の縦幅と横幅の比に基づいて前記処理対象画像の位置合わせの可否を判定するものを含む。
【００４２】
本発明の画像処理装置は、前記位置合わせを行うべき画像が、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、前記判断部が、位置合わせ不可と判定した場合、同じフィルタを用い、撮影位置を変えて撮影した画像に変更して位置合わせ処理を繰り返すものを含む。
【００４３】
本発明の画像処理装置は、前記領域画素データ積算部が、第２の移動範囲において前記演算領域を前記処理対象画像に対して相対的に移動させた複数のシフト位置で、前記領域積算データを算出するものであり、前記シフト量算出部が、前記第２の移動範囲における前記領域積算データの最大値又は最小値を求め、求めた最大値又は最小値に対応するシフト位置が、前記第２の移動範囲より小さい第１の移動範囲内にある場合は、前記最大値又は最小値に対応するシフト位置を示すシフト量を前記シフト量として出力し、前記第１の移動範囲外にある場合は、前記シフト量を０として出力するものを含む。本発明によれば、第１の移動範囲よりも大きくシフトしている画像に対して、誤った位置合わせを行なわないようにすることができる。
【００４４】
本発明の画像処理装置は、前記領域画素データ積算部が、前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第２の移動範囲の最大シフト位置である場合、前記第２の移動範囲を一定量拡大するものを含む。
【００４５】
本発明の画像処理装置は、前記領域画素データ積算部が、前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第２の移動範囲の最大シフト位置である場合、そのシフト位置に対応するシフト量の方向にのみ前記第２の移動範囲を一定量拡大するものを含む。
【００４６】
本発明の画像処理装置は、前記位置合わせを行うべき画像が、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であり、前記領域画素データ積算部において求めた前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第１の移動範囲外にある場合、同じフィルタを用い、撮影位置を変えて撮影した画像に変更して位置合わせ処理を繰り返すものを含む。
【００４７】
本発明の画像処理装置は、前記シフト量算出部が、前記第２の移動範囲における前記領域積算データの最大値又は最小値に対応するシフト位置が前記第１の移動範囲外にある場合で、かつ前記第２の移動範囲の最大シフト位置でない場合は、そのシフト位置を示すシフト量を前記シフト量として出力するものを含む。
【００４８】
本発明の画像処理装置は、前記位置合わせを行うべき画像が、通過帯域の異なる複数のフィルタを切り換えて撮影された撮影画像であるものを含む。本発明によれば、位置合わせ対象画像が様々な発光特性を持った対象物を通過帯域の異なる複数のフィルタを切り替えて撮影した画像であっても、確実に位置合わせを行うことができる。
【００４９】
本発明の画像処理装置は、前記位置合わせを行うべき画像が、複数の異なる撮影位置において同一のフィルタを用いて撮影した画像を含み、前記領域画素データ積算部が、複数枚の画像の前記領域積算データを記憶しておく機能を有し、前記領域画素データ積算部では、それぞれのフィルタ画像に対して前記演算領域を相対的にずらし、ずらした各位置における領域積算データを求め、各フィルタ画像の領域積算データを記憶しておき、前記シフト量算出部が、同一のフィルタを用いて撮影した画像毎に記憶している前記領域積算データの中でそれぞれ最大値と最小値を求め、求めた最大値と最小値との比に基づいて特定の画像を選択し、その画像の前記シフト量を算出するものを含む。本発明によれば、最も精度良く位置合せを行うことができるフィルタ画像を用いて位置合わせ処理を行うことになり、さらに精度良く位置合わせをおこなうことができる。
【発明の効果】
【００５０】
本発明によれば、位置合わせの基準となる対象物の発光特性、その対象物の撮影条件にかかわらず、複数の撮影画像の位置合わせを精度良く行うことができる。
【発明を実施するための最良の形態】
【００５１】
以下、本発明の実施の形態について、図面を用いて説明する。ここでは、特定の複数の波長帯域の光を透過させるバンドパスフィルタを用いて発光波長の異なる蛍光物質の測定を行う蛍光顕微鏡における、各バンドパスフィルタを用いて撮影された画像の位置合わせを行う場合を例として説明する。
【００５２】
（第１の実施の形態）
図１は、本発明の第１の実施の形態の画像処理装置の要部概略構成を示すブロック図である。図１の画像処理装置は、演算領域設定部１０２と、領域画素データ積算部１０３と、シフト量算出部１０４と、位置補正部１０５を含んで構成される。これらの各要素は、所定のプログラムをインストールしたコンピュータを用いて実現することができる。
【００５３】
画像処理装置に入力されるフィルタ画像１０１は、発光波長の異なる蛍光物質を、バンドパスフィルタを通してＣＣＤエリアセンサで撮影し、デジタル化した画像データである。ここでは、励起光により様々な色を発光する蛍光物質を直径１０μｍの球状のマイクロビーズ（以下ビーズとする。）とし、フィルタ画像１０１内にビーズが１個あるいは複数個存在しているものとする。また、フィルタ画像１０１は、２５６階調でデジタル化され、輝度が高いほど各画素の値が大きくなるものとする。図２は、フィルタ画像１０１の一例を示したものである。図２に示すように様々な色を発光しているビーズの輝度値は大きく（明るい）、背景の輝度値は小さく（暗い）なる。また、撮影に用いたバンドパスフィルタが通す波長の光を多く発光しているビーズほど輝度値が大きくなる。
【００５４】
演算領域設定部１０２は、領域設定データ記憶部１０２１と演算領域算出部１０２２を含んで構成され、フィルタ画像１０１に対して位置合わせの演算を行う特定領域（以下、演算領域と称す）を設定し、該演算領域を領域画素データ積算部１０３に出力する。演算領域は、処理対象画像であるフィルタ画像１０１における位置合わせの基準となる対象物であるビーズの領域である。
【００５５】
領域設定データ記憶部１０２１は、フィルタ画像中に存在するビーズの形状及び位置情報を示す領域設定データを予め記憶するものであり、記憶された領域設定データは演算領域算出部１０２２に出力される。演算領域算出部１０２２は、領域設定データに基づいて演算領域を算出し、領域画素データ積算部１０３に出力する。
【００５６】
領域画素データ積算部１０３は、フィルタ画像１０１と演算領域算出部１０２２が出力する演算領域を用いて、フィルタ画像１０１の演算領域における画素の輝度値の積算処理を行う。輝度値の積算処理は、フィルタ画像１０１に対して演算領域を相対的にずらして複数回行い、ずらした各位置（以下、シフト位置と称す）における輝度値の積算値（以下、領域積算データと称す）は、シフト量算出部１０４に出力される。
【００５７】
シフト量算出部１０４は、領域画素データ積算部１０３から出力された各シフト位置における領域積算データの中で最大値を求め、最大値に対応するシフト位置を示すシフト量を位置補正部１０５に出力する。この例では、処理対象画像が発光ビーズを位置合わせの基準となる対象物であるので、領域積算データの中で最大値を求めたが、処理対象画像の種類及び基準となる対象物の種類によっては、最小値を求める場合もある。例えば、処理対象画像において、基準となる対象物の領域の輝度値が小さく（暗く）、背景領域の輝度値が大きい（明るい）場合である。
【００５８】
位置補正部１０５は、シフト量算出部１０４から出力されたシフト量に応じて、フィルタ画像１０１全体をシフトさせた補正画像を出力画像１０６として出力する。この出力画像１０６は、撮影対象の位置が一定の位置にシフトされた画像であるので、複数の入力画像に対応する出力画像をそのまま重ね合わせることにより、位置ずれのない重ね合わせ画像を得ることができる。
【００５９】
次に、以上のように構成された本発明の第１の実施の形態の画像処理装置の動作について図３から図１１を用いて詳細に説明する。
【００６０】
図３は、本発明の第１の実施の形態の画像処理装置が行う画像処理を説明するためのフローチャートである。図３のフローチャートはステップＳ１０１ないしステップＳ１０６からなり、ステップＳ１０１は演算領域設定工程を、ステップＳ１０２ないしステップＳ１０４からなるステップＳ１０２０は領域画素データ積算工程を、ステップＳ１０５はシフト量算出工程を、ステップＳ１０６は位置補正工程を、それぞれ示す。
【００６１】
（ステップＳ１０１）
まず、演算領域算出部１０２２にて、入力されたフィルタ画像１０１に対して位置合わせの演算を行う演算領域を、領域設定データ記憶部１０２１に記憶されている情報を基に算出する。演算領域とは、位置合わせの基準となる対象物が撮影されている領域であり、ここではビーズが撮影されている位置である。
【００６２】
領域設定データ記憶部１０２１には、ビーズの形状情報と位置情報が予め記憶されている。ビーズの形状情報は、画像中にビーズのみが存在する２値のデジタル画像データ（以下、パターン画像と称す）であり、ビーズ領域を１、その他の領域を０とする。パターン画像のサイズは、ビーズ全体が収まる大きさを確保すればよく、ビーズの直径が１０画素の場合は、縦横ともに１０画素の画像メモリを用意する。ビーズの位置情報は、フィルタ画像中のビーズ位置とパターン画像が一致した際のパターン画像の中心位置に対応するフィルタ画像上の座標とし、フィルタ画像中のビーズ個数分のＸ，Ｙ座標を記憶しておくメモリを用意し、各ビーズの座標を記憶しておく。
【００６３】
演算領域算出部１０２２は、フィルタ画像１０１と同サイズの０で初期化された２値のデジタル画像データ（以下、演算領域画像と称す）を用意しておき、領域設定データ記憶部１０２１に記憶されている座標位置にパターン画像を重ね合わせ、重ね合った各画素において論理和演算を行い、演算結果を演算領域画像に書き込む処理を繰り返す。
【００６４】
図４は、図２に示すフィルタ画像における演算領域である。演算領域を参照する際には、演算領域画像中の画素値が１となっている領域を調べればよい。こうして作成された演算領域画像を演算領域として設定し、領域画素データ積算部１０３に出力する。
【００６５】
なお、ここでは球状のビーズを用いた例を示したが、パターン画像を対象物の形状に合わせて作成することにより、円形に限らず複雑な形状の対象物や、大きさの異なる対象物に対しても演算領域を設定することが可能である。また、対象物が回転しているものに対しても、形状情報及び位置情報に加え、回転角度情報を記憶しておき、演算領域画像を作成する際に、パターン画像を回転して配置すればよい。さらに、演算領域画像を予め作成して領域設定データ記憶部１０２１に記憶させておき、演算領域算出部１０２２では、記憶されている演算領域画像をそのまま領域画素データ積算部１０３に出力してもよい。
【００６６】
（ステップＳ１０２）
次に、領域画素データ積算部１０３において、予め与えられている移動範囲（以下、第１の移動範囲と称す）で、フィルタ画像１０１に対して演算領域算出部１０２２から出力された演算領域を相対的に１画素ずつずらすシフト処理を行う。なお、最初は、基準位置（シフト量は０）である。また、第１の移動範囲内でシフトする順序は任意であるが、ここでは基準位置から螺旋上にシフトした位置とする。
【００６７】
第１の移動範囲は、フィルタ画像の位置合わせを行う際に取りうると考えられる最大シフト量を含むような範囲を設定すればよく、フィルタ画像に対して演算領域画像をそのまま重ね合わせた位置を基準位置とし、基準位置から最大シフト量を上下左右に取った範囲と設定する。ここでは、最大シフト量を１０とし、基準位置から上下左右にそれぞれ１０画素の広がりを持つ正方形の範囲が第１の移動範囲として設定されているものとする。これにより、基準位置からのずれが１０画素以内のフィルタ画像ならば位置合わせが可能となる。またシフト位置は、画像の横軸をＸ軸、縦軸をＹ軸で表し各々右方向及び下方向に行くほど値が大きくなるものとし、基準位置を（０，０）とする。したがって、シフトさせる正方形の範囲の四隅は、それぞれ左上位置が（−１０，−１０）、右上位置が（１０，−１０）、左下位置が（−１０，１０）、右下位置が（１０，１０）となる。
【００６８】
（ステップＳ１０３）
次に、引き続き領域画素データ積算部１０３において、フィルタ画像１０１と基準位置の演算領域画像（シフト量０）又はシフトされた演算領域画像を重ね合わせ、演算領域と重なるフィルタ画像１０１の画素の輝度値を全て足し合わせた領域積算データを算出する。
【００６９】
この場合、演算領域が演算領域画像の周辺付近に存在するとフィルタ画像とシフトされた演算領域を重ね合わせたとき、演算領域がフィルタ画像からはみ出ることがある。これを図示したものが図５である。図５に示すように、フィルタ画像からはみ出した演算領域においては、輝度値が存在しないため輝度値を積算することができず、シフト位置によって積算される画素総数が異なってしまうことになる。このような状態を避けるためには、演算領域のシフトによりフィルタ画像の外にはみ出ることがない範囲に存在する演算領域においてのみ、輝度値の積算を行えばよい。はみ出さない範囲の演算領域は、演算領域画像のふちから最大シフト量内側に狭めた領域に存在するか否かによって判断可能である。
【００７０】
また、ステップＳ１０１において演算領域を設定する際に、シフト処理によりはみ出さない範囲の外側にある演算領域を除いて演算領域画像を生成することによっても、このような状態を避けることができる。具体的には、演算領域画像において範囲外にある演算領域を示す画素値の１を０に変更すればよい。演算領域を設定する範囲は、最大シフト量以上に内側に狭めた範囲としてもよい。このような範囲とすると、レンズ特性などの理由で処理対象画像の周辺が歪み、位置合わせを行う際に最適でない場合に、これら最適でない領域に存在するビーズ等の基準対象物を演算から除くことができ、より精度の高い位置合わせを行うことができる。この際の範囲は、画像の中心から一定の距離をもつ範囲とすればよい。
【００７１】
（ステップＳ１０４）
これらステップＳ１０２、ステップＳ１０３の工程を第１の移動範囲の各シフト位置で繰り返し、第１の移動範囲の各シフト位置の領域積算データを逐次算出し、算出した領域積算データをシフト量算出部１０４に出力する。
【００７２】
この際、各シフト位置の領域積算データを記憶するメモリは、ずらしたシフト量に対応する格納アドレスをもったテーブルとし、そのアドレス位置にずらした各シフト位置における領域積算データを記憶するようにする。こうすることにより、テーブルに格納された領域積算データがどのシフト位置で算出された値なのかを知りたい場合、アドレスを参照することで求めることが可能である。
【００７３】
以下、ステップＳ１０２において最大シフト量を１０とし、第１の移動範囲を全シフト範囲とした場合について、具体的な記憶動作の説明を行う。最大シフト量を１０とした場合とした場合、算出される領域積算データの個数は（１０＋１＋１０）×（１０＋１＋１０）で４４１個となり格納するテーブルのアドレスを０〜４４０まで準備する。そして、シフト位置（ｘ１，ｙ１）とした際の、格納アドレスＡｄ１は、Ａｄ１＝（ｙ１＋１０）×２１＋（ｘ１＋１０）で求めることができる。また、格納アドレスＡｄ２に格納されている領域積算データのシフト位置（ｘ２，ｙ２）を求める際には、ｘ２は、Ａｄ２を（１０＋１＋１０）で割った余りから１０を引いた値を、ｙ２は、Ａｄ２を（１０＋１＋１０）で割った商の整数値から１０を引いた値を、それぞれ用いればよい。
【００７４】
（ステップＳ１０５）
次に、シフト量算出部１０４では、領域画素データ積算部１０３から出力された各シフト位置の領域積算データの中で最大値を求め、最大値に対応するシフト位置を示すシフト量（この例ではシフト位置が基準位置からの移動量を示すので、シフト位置とシフト量が一致する。）を、位置合わせのシフト量として位置補正部１０５に出力する。
【００７５】
以下、この処理の原理を説明する。図２に示したようにビーズは発光しているためフィルタ画像中のビーズ領域は背景領域に比べ輝度値が高くなっている。したがって、ビーズ領域を演算領域とし、フィルタ画像における演算領域において輝度値を積算していくと、ビーズ領域を多く含んだ領域で積算した方が積算値は大きくなる。図６は、図２に示すフィルタ画像において、ビーズＢ及びビーズＤを含むＸ軸と平行な線上の画素の輝度値を示したものである。図６より、演算領域がフィルタ画像内のビーズ領域に最もよく重なり合った際、積算値が最も大きくなり、重なりが少なくなるほど輝度値の小さい背景部分が混入するため積算値が小さくなる、ということが分かる。このことにより、各シフト位置の領域積算データの中で最大値を求め、最大値に対応するシフト位置を求めることで、最適な位置合わせのシフト量を得ることができる。
【００７６】
また、バントパスフィルタを変えて撮影したフィルタ画像においても、ビーズ領域の輝度値は背景領域の輝度値より高いので、領域積算データの最大値に対応するシフト位置を求めることで、フィルタ画像毎のパラメータ調節を行うことなく位置合わせのシフト量を得ることができる。
【００７７】
さらに、対象物が様々な発光特性を持っていた場合においても、同様にシフト量を得ることが可能である。このとき、撮影に用いたバントパスフィルタを通す波長を持たないビーズがフィルタ画像内に存在することがあるが、このようなビーズが発光していない演算領域においては、各シフト位置の輝度値の積算値はすべて背景領域の輝度値を積算したものになるため、ビーズが発光していない演算領域における各シフト位置の積算値は同値となり、他の発光しているビーズの演算領域の積算値に影響を与えないので、ビーズの有無を調べる判断処理を別途用意する必要がなく、有効なビーズのみ用いた位置合わせを行うことができる。
【００７８】
また、ビーズ周辺の局所的な演算領域で積算を行っているので、光源の配置位置により光が強く当たる箇所と弱く当たる箇所ができ、撮影されたフィルタ画像において輝度むらが発生し、光が強く当たっている背景領域の輝度値のほうが、光が弱く当たっているビーズの輝度値よりも高くなってしまう、また同じ背景領域でもバントパスフィルタ毎に輝度むらの程度が変化する、ということが起きた場合においても、ビーズ周辺を局所的にみれば必ずビーズ領域が背景領域に比べ輝度値が大きくなっているため輝度むらの影響を受けず、最適な位置合わせのシフト量を得ることができる。
【００７９】
また、演算領域の積算値を用いることで次に示すような利点がある。一般的に人間がフィルタ画像を見ながら位置合わせを行う際には、ビーズと背景の境界がはっきりしない暗いビーズよりも、ずれ具合がよく分かる背景領域と輝度差がある明るいビーズに、より重点をおいて位置合わせを行うことで良い結果が得られるが、コンピュータで演算を行う際にも同様のことが言え、ビーズ領域と背景領域の輝度値の差が大きいほど、位置が一致した場合としていない場合の演算結果の差が大きくでるので、輝度値の差が大きい領域に重み付けをして位置合わせを行った方が概して良い結果が得られる。
【００８０】
そして、本発明の画像処理においては、位置合わせの評価に用いる領域積算データを算出するにあたり輝度値の大きい画素ほど大きな値が領域積算データに積算されるため、新たな処理を追加することなく、同様に明るいビーズに重み付けがなされた処理を実現している。なお、この重みについては、積算する輝度値に上限を持たし、上限以上の輝度値の場合は、上限の値をその画素の輝度値として積算することで調節が可能であり、上限の値を背景領域の輝度値よりも大きく、かつフィルタ画像の最大輝度値よりも小さい値で設定すればよい。上限の値が小さいほど、暗いビーズ領域の輝度値がより反映された結果となる。
【００８１】
なお、演算領域データの中で最大値が複数あった場合は、最大値に対応する複数のシフト位置を平均して求めた位置をシフト量とする。これは、ビーズ領域に対し演算領域が小さいもしくは大きい場合に起こり、演算領域をシフトさせても積算する輝度値が変わらないときに発生する。図７は、ビーズ領域に対し演算領域が大きい場合を示す図である。図７において背景領域の輝度値が均一だった場合、演算領域とビーズ領域間の斜線部分の範囲にビーズ領域が含まれるように演算領域をシフトさせても演算積算データは同値になる。このような場合は、複数の最大値を持つ領域の中心をずらす位置とすればよく、複数のシフト位置における平均位置を求めればよい。
【００８２】
（ステップＳ１０６）
次に、位置補正部１０５で、シフト量算出部１０４から入力されるシフト量を基にフィルタ画像１０１をシフトさせて補正フィルタ画像を生成する。なお、シフト量算出部１０４から入力されるシフト量は、入力されたフィルタ画像１０１に対して演算領域をずらしたシフト位置であるため、シフト位置の符号をプラスマイナスで逆転させた値で、フィルタ画像１０１をシフトさせる。例えば、シフト量算出部１０４から出力されたシフト量が（４，５）であった場合、フィルタ画像１０１の各画素（ｘ，ｙ）は、（ｘ−４，ｙ−５）にシフトされることになる。そして、全画素においてシフトした結果を出力画像１０６として出力する。この出力画像１０６は、撮影対象の位置が一定の位置にシフトされた画像となる。したがって、ステップＳ１０１ないしステップＳ１０６の工程の処理を全てのフィルタ画像に対して行うことにより得られた複数の出力画像をそのまま重ね合わせた画像は、発光しているビーズが重なり合うように位置合わせがなされた画像となる。
【００８３】
以上のように、本発明の第１の実施の形態の画像処理装置によれば、複数のバンドパスフィルタを通して撮影された相対的な位置ずれをもつ各フィルタ画像に対して、フィルタ画像と演算領域の位置を相対的にずらしながら各位置における領域積算データを逐次算出し、算出した領域積算データの中で最大値を求め、最大値に対応する位置をシフト量とし、該シフト量を基にフィルタ画像の位置合わせを行うことにより、様々な発光特性を持った対象物を複数のバンドパスフィルタを通して撮影した画像であっても、確実に位置合わせを行うことができる。
【００８４】
なお、以上の説明では、ステップＳ１０１において、領域設定データ記憶部１０２１に記憶されているビーズの形状情報と位置情報を基に、演算領域算出部１０２２にて演算領域を算出したが、領域設定データ記憶部１０２１にビーズを撮影した画像を演算領域算出画像として記憶させておき、演算領域算出部１０２２では、演算領域算出画像に対してビーズ位置が特定できるように２値化処理を行い、得られた２値データのビーズ画素を演算領域として設定してもよい。このように、ビーズを撮影した画像から演算領域を設定することで、位置合わせの基準となる対象物であるビーズの位置が変化しても、フレキシブルに対応できるようになる。
【００８５】
以下、演算領域算出画像を用いる場合の具体的な処理について説明する。演算領域算出画像としては、例えば、ビーズに光を当てることによってできた影を撮影したものを用いることができる。このようにビーズの影を撮影することで、ビーズの発光特性に関係なく全ビーズを撮影することができる。図８は、紙面の裏側から光を照射した状態で撮影した画像の一例であり、ビーズは影を撮影した状態となるので、背景領域に比べビーズ領域が暗くなっている。
【００８６】
この演算領域算出画像から演算領域を求める処理は次のように行う。予めビーズ領域と背景領域を分離できる閾値を設定しておき、この閾値に基づき２値化処理を演算領域算出画像に施すことにより、２値化画像を得る。すなわち、閾値以上の画素を０、それ以外の画素を１として２値化した画像を得る。そして、この作成した演算領域画像を演算領域として設定する。この場合、ビーズ領域は、背景領域に比べ暗いので、画素値が１となる。
【００８７】
なお、ビーズ領域と背景領域を分離する閾値は、演算領域算出画像から求めることもできる。図９は、図８に示した演算領域算出画像の輝度分布を示したものである。横軸が輝度値を表わし、左が低輝度、右が高輝度を表わす。縦軸は各輝度における画素の総数を示している。背景領域は明るいので高輝度側に分布し、ビーズ領域は背景に比べ暗いので低輝度側に分布する。したがって、ビーズ領域と背景領域を分離するためには、図中の破線で示す２つの分布からなる谷の階調を閾値として設定すればよい。また、演算領域算出画像の明るさが局所的に変化している場合は、演算領域算出画像を複数の領域に分割し、分割した各領域毎に輝度分布を作成し谷階調を閾値として求め、求めた閾値で２値化処理を行えばよい。分割する大きさは、演算領域算出画像の大きさに応じて設定すればよく、１３６０×１０２４画素程度の画像の場合、１００×１００画素で分割すればよい。
【００８８】
前述した２値化処理は一例であり、例えばテンプレートマッチング処理でビーズ位置を検出し、検出したビーズ位置を演算領域として設定してもよい。テンプレートマッチング処理では、演算領域算出画像から検出する対象物のみを切り取った画像をテンプレート画像として持ち、演算領域算出画像とテンプレート画像を重ね合わせ、重なり合った各画素において差分値を求め、テンプレート画像全体の差分結果を全て個別に２乗した後、加算する。この加算した値は両画像の相関関係を示し、両者が同じ画像であるときは小さな値となり、両者が異なったときは大きな値となる。したがって、予め一致したと判断できる加算値を閾値として持ち、求めた加算値が閾値より小さい場合はパターンを検出したものと判定し、閾値より大きい場合はパターンが存在しないと判定することができる。そして、この判定処理を、テンプレート画像を１画素ずつずらしながら同様の判定を行い、これを繰り返して、演算領域算出画像全体に対して順次行う。
【００８９】
図１０は、前述したテンプレートマッチング処理を示した図である。テンプレートマッチング処理は、ビーズ領域を有するテンプレート画像を初期位置１００１で演算領域算出画像に重ね合わせ、その位置から順次矢印方向に判定を行っていく。そして、位置１００２等においてビーズを検出する。
【００９０】
このように、テンプレートマッチング処理を行うことで、もし演算領域算出画像中にゴミが混入していたとしてもゴミは無視され、ビーズ領域のみ抽出した演算領域を得ることができる。
【００９１】
なお、演算領域算出画像として、蛍光物質の測定に用いる複数のバントパスフィルタの全波長を透過させるバントパスフィルタを用いて撮影した画像、又はバントパスフィルタを用いずに撮影した画像を用いてもよい。こうすることで、ビーズの発光特性に関係なく、発光している全ビーズが撮影された画像を得ることができる。この演算領域算出画像では、ビーズが発光している光を撮影するため、ビーズ領域が背景領域に比べ明るくなる。これは、ビーズ領域と背景領域の明るさが、図８に示すビーズに光が当たった際にできる影を撮影した演算領域算出画像と逆になっているだけなので、前述した２値化処理又はテンプレートマッチング処理を用いて同様に演算領域を得ることができる。
【００９２】
演算領域算出画像としては、ビーズに光を当てることによってできた影を撮影したものに限らず、撮影した複数のフィルタ画像から作成したものを用いることもできる。この場合、演算領域設定部１０２において、予めビーズの形状を示すマスクパターンを持っておき、複数のフィルタ画像を重ね合わせて各フィルタ画像の対応する画素の輝度値を加算した画像データを作成し、これを演算領域算出画像とする。そして、作成した演算領域算出画像において予め与えられた閾値以上の輝度値をもつ領域を抽出し、抽出した領域の重心位置とマスクパターンの重心位置が一致するようにマスクパターンを配置し、配置したマスクパターンの領域を演算領域として設定する。このマスクパターンは、ステップＳ１０１で用いたビーズの形状情報を示すパターン画像と同様に画像として記憶しておく。
【００９３】
図１１を用いて演算領域算出画像の作成処理の動作説明を行う。図１１は、３枚のフィルタ画像を重ね合わせ、ビーズが存在する領域を切り抜いたものである。フィルタ画像間に位置ずれがある場合、図１１に示したようにビーズがずれた位置で重なり合う。ビーズ領域は、背景領域にくらべ明るいので、この３枚のフィルタ画像を重ね合わせて各画素を加算すると、３つのビーズ領域が共に重なり合った領域が重ねあわせた画像の中で最も輝度の高い領域となる。この重なり領域を、フィルタ画像を重なり合わせて作成した演算領域算出画像において閾値以上の輝度値を持つ画素を求めることで抽出し、この領域の重心位置を求める。そして、求めた重心位置とマスクパターンの重心が一致するようにマスクパターンを配置し、この領域を演算領域として設定する。こうすることで、各位置ずれがあるフィルタ画像の中心に演算領域を持っていくことができ、位置合わせ処理において全フィルタ画像において最短の位置に位置合わせを行うことができる。
【００９４】
なお、前述した閾値は、演算領域算出画像を複数の領域に分割し、分割した各領域において輝度分布を作成し、輝度分布の画素数を上位から積算した値が輝度分布の総画素数の所定割合、例えば２％となる階調を設定する。分割する大きさは、演算領域算出画像の大きさやビーズの大きさに応じて設定すればよく、１３６０×１０２４画素程度の画像の場合、例えば５０×５０画素で分割する。こうすることで、最も輝度の高い重なり領域を抽出することができる。なお、２％は一例であり、演算領域算出画像に合わせて分割した領域の総画素数に占める重なり領域の画素数の割合を設定してもよい。
【００９５】
また、本発明の第１の実施の形態では、領域画素データ積算部１０３において、フィルタ画像１０１における演算領域の輝度値を足し合わせて領域積算データを求めているが、輝度値を足し合わせた積算結果から一定値を減算する機能を追加し、領域積算データの値を減少させた値をシフト量算出部１０４に出力してもよい。この減算する処理は、演算領域の輝度値を積算する際に足し合わせる輝度値を減算しても良いし、演算領域の全画素の輝度値を積算した領域積算データから減算してもよい。こうすることで、領域積算データの値を小さくすることができ、予め用意する領域積算データを記憶するメモリを小さくすることができる。なお、減算する一定値は、もっともメモリを小さくすることができる値を設定すればよく、前者の場合はフィルタ画像１０１における各画素の輝度値の最小値を設定すればよい。また、後者の場合はフィルタ画像１０１の輝度値の最小値に演算領域の画素数を乗じた値を設定すればよい。
【００９６】
さらに、領域画素データ積算部１０３において、フィルタ画像１０１における演算領域の画素が繋がっている領域毎に平均輝度値を算出し、算出した各領域の平均輝度値を全て足し合わせた値を領域積算データとしてもよい。この演算領域の画素が繋がっている領域とは、それぞれのビーズ領域であり、各ビーズの平均輝度値を算出することと等しい。この処理により、領域積算データの値を小さくでき、予め用意する領域積算データを記憶するメモリを小さくすることができる。また、前述した輝度値を足し合わせた積算結果から一定値を減算する機能と併用することで、さらにメモリの節約が可能になる。
【００９７】
また、以上の説明では、領域画素データ積算部１０３において、予め与えられている第１の移動範囲で、フィルタ画像１０１に対して演算領域算出部１０２２から出力された演算領域を相対的に１画素ずつずらすシフト処理としたが、１画素よりも大きい間隔をあけてずらしてもよい。この場合、位置合わせのシフト量の単位が１画素よりも大きくなり位置合わせ精度は落ちるが、演算量が減少するので高速に処理を行うことができる。例えば、シフト量を２画素とした場合、１画素の場合と比べ、縦方向と横方向でそれぞれ領域積算データを求める回数が半分となるので、全体の領域積算データを求める演算量は４分の１となる。この処理は、１画素単位の精度が必要とされてはおらず、精度よりも処理時間に重みが置かれている場合に有効である。
【００９８】
（第２の実施の形態）
図１２は、本発明の第２の実施の形態の画像処理装置の要部概略構成を示すブロック図である。図１２の画像処理装置は、演算領域設定部１０２と、領域画素データ積算部１０３と、シフト量算出部１０４と、位置補正部１０５を含んで構成される。第１の実施の形態で説明したのと同じ構成のものについては同じ符号を付し、説明を省略する。図１に示す第１の実施の形態の画像処理装置の構成と異なる点は、シフト量算出部１０４で算出したシフト量を領域画素データ積算部１０３に出力させるようにした点である。
【００９９】
この画像処理装置では、まず、領域画素データ積算部１０３で領域積算データを算出するに際して、１画素よりも大きい間隔で、演算領域を前記処理対象画像に対して相対的に移動させる。すなわち、シフト位置を大まかにして領域積算データを算出する。そして、シフト量算出部１０４から領域積算データが最大値を示すシフト位置を得た後、そのシフト位置の近傍でより狭い間隔で演算領域を移動させて、再度領域積算データを算出する。したがって、領域積算データが最大となるシフト位置を求める処理を減らすことができる
【０１００】
次に、本発明の第２の実施の形態の画像処理装置の動作について図１３を用いて詳細に説明する。図１３は、本発明の第２の実施の形態の画像処理装置が行う画像処理を説明するためのフローチャートである。図１３のフローチャートは、ステップＳ２０１ないしステップＳ２０７からなり、ステップＳ２０１は演算領域設定工程を、ステップＳ２０２ないしステップＳ２０４からなるステップＳ２０２０は領域画素データ積算工程を、ステップＳ２０５及びステップＳ２０６からなるステップＳ２０５０はシフト量算出工程を、ステップＳ２０７は位置補正工程を、それぞれ示す。
【０１０１】
（ステップＳ２０１）
まず、演算領域算出部１０２２にて、入力されたフィルタ画像１０１に対して位置合わせの演算を行う演算領域を、領域設定データ記憶部１０２１に記憶されている情報を基に算出する。なお、演算領域の算出方法は、図３のステップＳ１０１で説明したものと同様であるため、ここでは説明を省略する。
【０１０２】
（ステップＳ２０２）
次に、領域画素データ積算部１０３において、予め与えられている第１の移動範囲で、フィルタ画像１０１に対して演算領域算出部１０２２から出力された演算領域を相対的に１画素よりも大きい間隔を空けてずらすシフト処理を行う。ここでは、まずこの間隔を４画素として説明を行う。
【０１０３】
（ステップＳ２０３）
次に、引き続き領域画素データ積算部１０３において、フィルタ画像１０１と基準位置の演算領域画像又はシフトされた演算領域画像を重ね合わせ、演算領域と重なるフィルタ画像１０１の画素の輝度値を全て足し合わせた領域積算データを算出する。なお、領域積算データの算出方法は、図３のステップＳ１０３で説明したものと同様であるため、ここでは説明を省略する。
【０１０４】
（ステップＳ２０４）
これらステップＳ２０２、ステップＳ２０３の工程を第１の移動範囲の各シフト位置で繰り返し、第１の移動範囲の各シフト位置の領域積算データを逐次算出し、算出した各シフト位置の領域積算データをシフト量算出部１０４に出力する。
【０１０５】
（ステップＳ２０５）
次に、シフト量算出部１０４で、領域画素データ積算部１０３から出力された各シフト位置の領域積算データの中で最大値を求め、最大値に対応するシフト位置（シフト量）を求める。
【０１０６】
（ステップＳ２０６）
そして、シフト量算出部１０４でシフト位置を求めた際の、シフト間隔（フィルタ画像１０１に対する演算領域の移動間隔）が１画素かどうかの判定を行う。１画素だった場合は、シフト量算出部１０４で求めたシフト位置をそのまま、位置合わせのシフト量として位置補正部１０５に出力する。一方、１画素以外の場合は、シフト量算出部１０４で求めたシフト位置を領域画素データ積算部１０３に出力し、再度ステップＳ２０２ないしステップＳ２０５の工程を繰り返す。
【０１０７】
なお、ステップＳ２０２を再度行う際は、シフト間隔を前回のシフト間隔の半分を設定する。この例では、最初のシフト間隔が４画素であるので、２回目はシフト間隔を２画素に、３回目は１画素に設定される。また、フィルタ画像１０１に対して演算領域を相対的にずらす第１の移動範囲は、シフト量算出部１０４から出力されたシフト位置を中心とし上下左右に前回のずらす間隔を持った範囲とする。したがって、この例では２回目は、シフト位置から上下左右に４画素とった正方形の範囲となり、３回目はシフト位置から上下左右に２画素とった正方形の範囲となる。
【０１０８】
（ステップＳ２０７）
次に、位置補正部１０５で、シフト量算出部１０４から出力されたシフト量を基にフィルタ画像１０１をシフトさせて補正フィルタ画像を生成する。なお、フィルタ画像のシフト方法は、図３のステップＳ１０６で説明したものと同様であるため、ここでは説明を省略する。
【０１０９】
以上のように、本発明の第２の実施の形態の画像処理装置によれば、フィルタ画像に対して演算領域を１画素よりも大きい間隔をあけてずらし、その際のフィルタ画像のずれ量を示すシフト位置を大まかに求めた後、順にフィルタ画像に対して演算領域のずらす間隔を小さくしながら前の処理で求めたシフト位置の近傍に限定された領域内で、より正確なシフト位置を求めるようにすることで、フィルタ画像に対して演算領域をずらす第１の移動範囲のすべてのシフト位置において領域積算データを求めずにすみ、演算量を大幅に減らすことができ、高速化が行える。
【０１１０】
また、ステップＳ２０２ないしステップＳ２０５の工程を繰り返し行う際、領域画素データ積算部１０３において、求めようとするシフト位置の領域積算データがメモリ上に既に存在する場合、積算処理を行わずにメモリ上の領域積算データを用いるようにしてもよい。こうすることで、フィルタ画像に対して演算領域のずらす間隔を小さくしながら順に演算領域を算出する処理を繰り返した際、同じ位置の演算領域データを何度も求めることを防ぎ、高速化が図れる。
【０１１１】
（第３の実施の形態）
図１４は、本発明の第３の実施の形態の画像処理装置の要部概略構成を示すブロック図である。図１４の画像処理装置は、演算領域設定部１０２と、領域画素データ積算部１０３と、シフト量算出部１０４と、位置補正部１０５と、判断部３０７を含んで構成される。第１の実施の形態で説明したのと同じ構成のものについては同じ符号を付し、説明を省略する。図１に示す第１の実施の形態の画像処理装置の構成と異なる点は、判断部３０７が新たに追加された点である。判断部３０７は、領域画素データ積算部１０３から出力された領域積算データに基づいて、入力されたフィルタ画像１０１の位置合わせの可否を判定し、その判定結果をシフト量算出部１０４に出力するものである。
【０１１２】
次に、本発明の第３の実施の形態の画像処理装置の動作について図１５を用いて詳細に説明する。図１５は、本発明の第３の実施の形態の画像処理装置が行う画像処理を説明するためのフローチャートである。図１５のフローチャートは、ステップＳ３０１ないしステップＳ３０８からなり、ステップＳ３０１は演算領域設定工程を、ステップＳ３０２ないしステップＳ３０４からなるステップＳ３０２０は領域画素データ積算工程を、ステップＳ３０５ないしステップＳ３０７からなるステップＳ３０５０はシフト量算出工程を、ステップＳ３０８は位置補正工程を、それぞれ示す。
【０１１３】
（ステップＳ３０１）
まず、演算領域算出部１０２２にて、入力されたフィルタ画像１０１に対して位置合わせの演算を行う演算領域を、領域設定データ記憶部１０２１に記憶されている情報を基に算出する。なお、演算領域の算出方法は、図３のステップＳ１０１で説明したものと同様であるため、ここでは説明を省略する。
【０１１４】
（ステップＳ３０２）
次に、領域画素データ積算部１０３において、予め与えられている第１の移動範囲で、フィルタ画像１０１に対して演算領域算出部１０２２から入力された演算領域を相対的に１画素ずつずらすシフト処理を行う。なお、このシフト処理は、図３のステップＳ１０２で説明したものと同様であるため、ここでは説明を省略する。
【０１１５】
（ステップＳ３０３）
次に、引き続き領域画素データ積算部１０３において、フィルタ画像１０１と基準位置の演算領域画像又はシフトされた演算領域画像を重ね合わせ、演算領域と重なるフィルタ画像１０１の画素の輝度値を全て足し合わせた領域積算データを算出する。なお、演算領域の算出方法は、図３のステップＳ１０３で説明したものと同様であるため、ここでは説明を省略する。
【０１１６】
（ステップＳ３０４）
これらステップＳ３０２、ステップＳ３０３の工程を予め与えられている第１の移動範囲の各シフト位置で繰り返し、第１の移動範囲における各シフト位置の領域積算データを逐次算出し、算出した各シフト位置の領域積算データをシフト量算出部１０４及び判断部３０７に出力する。
【０１１７】
（ステップＳ３０５）
次に、判断部３０７において、領域画素データ積算部１０３から出力された領域積算データに基づいて、入力されたフィルタ画像１０１の位置合わせの可否を判定する。
【０１１８】
（ステップＳ３０６）
判断部３０７による判定の結果、入力されたフィルタ画像１０１の位置合わせが可能な場合には、シフト量算出部１０４において、領域画素データ積算部１０３から出力された各シフト位置の領域積算データの中で最大値を求め、最大値に対応するシフト位置を、シフト量として位置補正部１０５に出力する。
【０１１９】
（ステップＳ３０７）
一方、判断部３０７による判定の結果、入力されたフィルタ画像１０１における位置合わせが不可能な場合には、シフト量算出部１０４において、全く位置合せを行わないようにシフト量を０として位置補正部１０５に出力する。
【０１２０】
（ステップＳ３０８）
次に、位置補正部１０５で、シフト量算出部１０４から入力されたシフト量を基にフィルタ画像１０１をシフトさせて補正フィルタ画像を生成する。なお、このシフト方法は、図３のステップＳ１０６で説明したものと同様であるため、ここでは説明を省略する。
【０１２１】
以上のように、本発明の第３の実施の形態の画像処理装置によれば、判断部３０７において、領域画素データ積算部１０３から出力された領域積算データに基づいて、入力されたフィルタ画像１０１の位置合わせの可否を判定し、位置合わせが可能な場合は、シフト量算出部１０４において領域積算データからシフト量を算出し、位置補正部１０５で位置合わせのためのシフト処理を行う。一方、位置補正が不可能な場合は、シフト量算出部１０４においてシフト量を０として、位置補正部１０５でシフト処理を行わないようにすることにより、誤った位置合わせ処理を防ぐことができる。
【０１２２】
以下、判断部３０７における判定処理について詳細に説明する。
【０１２３】
誤った位置合わせを起こす原因として、入力されたフィルタ画像１０１に位置合わせのための基準となるビーズがフィルタ画像内に存在しない、又はビーズが存在してもほとんど発光しておらずビーズの輝度レベルが背景の輝度レベルとほとんど変わらない、といったことが考えられる。これは、撮影に用いたバンドパスフィルタが、ビーズが発光している波長の光を通さない場合に起こる。このような場合は、何処で位置が合うかの判断ができないため、位置合わせ処理を行わないほうがよい。
【０１２４】
そこで、判断部３０７では、領域画素データ積算部１０３から出力された各シフト位置の領域積算データの中で最大値と最小値を求め、求めた最大値と最小値の比に基づいて位置合わせの可否を判定する。
【０１２５】
例えば、最大値を最小値で除算した値（以下、最大最小除算値と称す）が、予め与えられている閾値よりも小さい場合、フィルタ画像１０１の位置補正が不可能であると判定し、それ以外の場合、フィルタ画像１０１の位置補正が可能であると判定する。図２に示したようにフィルタ画像においてビーズ領域は背景領域に比べ輝度値が大きくなっているので、ビーズ領域と背景領域の輝度レベルの差が大きいほど最大最小除算値が大きくなり、逆に、輝度レベルの差が小さくなるほど最大最小除算値は小さくなる。また、ビーズ領域と背景領域の輝度レベルが同じ場合、最大最小除算値は１．０となる。したがって、最大最小除算値を求めることで、ビーズ領域と背景領域の輝度レベルの差を評価することができ、最大最小除算値が閾値よりも小さい場合、フィルタ画像１０１の位置合わせが不可能であると判定することができる。
【０１２６】
なお、ここで予め与えておく閾値は、１．０以上の小数値であり、フィルタ画像のビーズ領域と背景領域の輝度レベルの差に応じて設定すればよく、予め複数枚のフィルタ画像を用いて最大最小除算値を算出し、位置合わせが成功した際の最大最小除算値の中で、最も小さい値を設定しておけばよい。
【０１２７】
最大最小除算値を用いた判定は、前述した、位置合わせのための基準となるビーズがフィルタ画像内に存在しない、又はビーズが存在してもほとんど発光していない場合以外においても、ビーズ領域と背景領域の輝度レベルの差が小さくなる場合に有効であり、例えば、露光時間を長くしすぎて画像全体の輝度値が飽和してしまった場合においても、誤った位置合わせ処理を防ぐことができる。
【０１２８】
さらに、ビーズが強く発光していても全演算領域における割合が少ない場合、例えば、１００個のビーズのうち１個のビーズしか発光していなかった場合は、位置合わせは画像全体を評価して行うものであり１個の場合は信頼性が乏しいので、概して位置合わせを行わないほうが良いが、このような場合においても最大最小除算値が小さくなるので、フィルタ画像の位置合わせが不可能であると判定することができる。逆に、ビーズ全体の発光量が少なく、ビーズ領域と背景領域の輝度差があまり無くとも、全演算領域に占める割合が多い場合は信頼性が向上するので、概して位置合せを行った方がよいが、このような場合は、最大最小除算値が大きくなるのでフィルタ画像の位置補正が可能であると判定することができる。
【０１２９】
また、他にも誤った位置合わせを起こす原因として、撮影中に装置の振動が起こり、フィルタ画像内のビーズの形状が変形してしまう場合も考えられる。振動が起こった際のフィルタ画像を図１６に示す。図１６では、横揺れが起こり、ビーズが横長になっている。このような場合、どのシフト位置がマッチングしている位置なのかを特定できないため、位置合わせ処理を行わないほうがよい。
【０１３０】
そこで、判断部３０７では、領域画素データ積算部１０３から出力された各シフト位置の領域積算データにおいて、該領域積算データの中で最大値を示す値に対して所定の割合以上の値を持つシフト位置を抽出し、抽出したシフト位置の分布に基づいて前記処理対象画像の位置合わせの可否を判定する。例えば、抽出したシフト位置が占める領域（以下、所定割合領域と称す）から特徴量を算出し、算出した特徴量が予め与えている条件を満たす場合、フィルタ画像１０１の位置合わせが不可能であると判定し、それ以外の場合、フィルタ画像１０１の位置補正が可能であると判定する。
【０１３１】
図１７は、位置合わせが可能な振動が無い場合の所定割合領域を説明する図である。図１７（ａ）は、各シフト位置の領域積算データを２次元平面に表示しており、フィルタ画像に対する演算領域のシフト量を、横軸をＸ方向のシフト量、縦軸をＹ方向のシフト量とし、位置合わせ可能な場合における所定割合領域を図示したものである。また図１７（ｂ）は、図１７（ａ）のＸ軸上における領域積算データを示しており、横軸をＸ方向のシフト量、縦軸を領域積算データの値とし、領域積算データの中で最大値を持つシフト位置と所定の割合以上の値を持つ位置を図示している。所定の割合は、所定割合領域の特徴が現れる値を設定すればよくここでは８割とする。
【０１３２】
このように、領域積算データの中で最大値を示す値に対して所定の割合以上の値を持つシフト位置を所定割合領域として求めることで、対象物の明るさが変化し領域積算データの最大値が変化しても、所定割合領域の形状は全く同じになる。図１７（ｂ）において、領域積算データは、演算領域とフィルタ画像内のビーズ領域の重なりが少なくなるほど値が小さくなるので、最大値の位置から遠ざかるほど値が小さくなっている。したがって、所定割合領域を抽出した場合、図１７（ａ）に示すように最大値の位置を中心とした円となる。
【０１３３】
しかしながら、振動したフィルタ画像の場合では、ビーズが楕円になるため、所定の割合以上の値を持つ位置の所定割合領域を抽出した場合、所定割合領域はビーズの形状と同様に楕円になる。これは、演算領域がビーズ領域内に含まれてしまい、長径方向に演算領域をシフトしても演算領域の全画素がビーズ領域となるため、所定の割合以上の値を持つシフト位置が、位置合わせ可能な振動がない場合と比べて長くなるからである。図１８は図１６に示した振動している際に撮影されたフィルタ画像の所定割合領域を図示したものである。
【０１３４】
以上の説明からわかるように、所定割合領域において位置合わせ可能な場合の形状との差異を求めることで位置合わせの可否を判定することが可能である。形状の差異は、所定割合領域の形状を示す特徴量を算出し、算出した特徴量を用いて判定を行う。
【０１３５】
所定割合領域の形状を示す特徴量としては、所定割合領域の面積の大きさを用いることができる。そして、予め位置合わせ可能な場合の面積値が取りうる範囲を求めておき、その範囲外にある場合、フィルタ画像の位置合わせが不可能であると判定する。所定割合領域の面積値は、所定割合領域におけるシフト位置の個数をカウントすることで求めることができる。
【０１３６】
また、特徴量として、所定割合領域の縦幅と横幅を用いることもできる。そして、予め位置合わせ可能な場合の縦幅と横幅の範囲を求めておき、その縦幅と横幅の片方、もしくは両方がその範囲外にある場合、フィルタ画像の位置合わせが不可能であると判定する。縦幅と横幅は、所定割合領域におけるシフト位置のＸ，Ｙ座標に対しそれぞれ最大値と最小値を求め、縦幅はＹ座標の最大値から最小値を引いた値の絶対値、横幅はＸ座標の最大値から最小値を引いた値の絶対値とすることで求めることができる。
【０１３７】
さらに、特徴量として、所定割合領域の縦幅と横幅を演算した値を用いることもできる。例えば、縦幅と横幅の和、又は縦幅と横幅の積を用いる。これら値により、所定割合領域の大きさの評価を行うことができる。
【０１３８】
また、縦幅と横幅の差、又は縦幅と横幅の比を用いることもできる。これら値により、所定割合領域の真円度を評価することができ、縦幅と横幅の差では真円度をシフト位置の絶対量で評価することができ、縦幅と横幅の比では真円度を比で評価することができる。
【０１３９】
なお、所定割合領域の形状を示す特徴量として面積値、縦幅、横幅、又は縦幅と横幅を演算した値を複数同時に用いて、判定を行ってもよい。さらに、判断部３０７において、前述した最大最小除算値を用いる方法と、所定割合領域の形状を示す特徴量を用いる方法を同時に用いて判定を行ってもよい。この場合、両方法共に位置合わせ可能であると判定された場合のみ、判断部３０７の出力として位置合わせが可能とする。
【０１４０】
また、第３の実施の形態の画像処理装置において、判断部３０７で位置合わせが不可能と判定され位置合わせ処理が行われなかった場合、撮影位置を変えてフィルタ画像を撮り直し、撮り直したフィルタ画像に対して、再度、位置合わせ処理を、フィルタ画像の位置合わせが行われる、もしくは指定回数になるまで複数回繰り返してもよい。指定回数とは、位置合わせ処理の繰り返しの限界回数であり、何度撮影しても位置合わせを行うことができない場合、処理を終了させるために設定しておく。こうすることで、位置合わせ処理におけるリトライを自動化することが可能である。
【０１４１】
（第４の実施の形態）
次に、本発明の第４の実施の形態の画像処理装置について説明する。本発明の第４の実施の形態の画像処理装置の構成を示すブロック図は、図１と同じであるが、領域画素データ積算部１０３とシフト量算出部１０４の動作が異なっている。すなわち、入力されたフィルタ画像１０１が予め与えられている第１の移動範囲よりも大きくシフトしている場合、誤った位置合わせを行わないようにしたものである。
【０１４２】
本発明の第４の実施の形態の画像処理装置の領域画素データ積算部１０３は、予め与えられている第１の移動範囲より大きい所定の範囲（以下、第２の移動範囲と称す）でフィルタ画像１０１に対して演算領域を相対的にずらす機能を持ち、この第２の移動範囲内における各シフト位置の領域積算データを図３に示すステップＳ１０２ならびにステップＳ１０５と同様にして逐次算出する。
【０１４３】
図１９は、予め与えられている第１の移動範囲と第２の移動範囲を図示したものである。第２の移動範囲のサイズは、第１の移動範囲より大きいサイズにしておけばよく、第１の移動範囲と第２の移動範囲の中心が一致するように設定しておく。ただし、第２の移動範囲が大きすぎると大きさに応じて演算量が増加するので、ここでは１辺の長さが第１の移動範囲の１．２倍になるように設定することとする。この倍率は、一例でありフィルタ画像におけるずれ量に応じて設定すればよく、ずれ量が大きいほど大きい倍率を設定する。
【０１４４】
本発明の第４の実施の形態のシフト量算出部１０４では、図３に示すステップＳ１０５と同様にして領域画素データ積算部１０３から出力された各シフト位置の領域積算データの中で最大値を求め、最大値に対応するシフト位置を、位置合わせのシフト量として位置補正部１０５に出力する。ただし、最大値に対応するシフト位置が第１の移動範囲よりも外にあった場合、これは第１の移動範囲内にフィルタ画像１０１を一致させるシフト位置が存在しなかったことを示しているので、フィルタ画像１０１の位置合せを行わないようにシフト量を０とし、位置補正部１０５に出力する。
【０１４５】
以上のように、本発明の第４の実施の形態の画像処理装置によれば、第１の移動範囲よりも大きくシフトしているフィルタ画像に対して、誤った位置合わせを行なわないようにすることができる。さらに、算出したシフト量からどの程度第１の移動範囲より大きくフィルタ画像がシフトしているのかという情報を得ることができる。そして、この情報を用いて、予め第１の移動範囲を設定する際の調節を行うことも可能である。
【０１４６】
なお、本発明の第４の実施の形態の画像処理装置のシフト量算出部１０４において、求めたシフト位置が、第２の移動範囲の最大シフト位置であった場合、所定の第２の移動範囲を一定量拡大する処理を行ってもよい。具体的に説明すると、最大値に対応するシフト位置が図１９に示す第２の移動範囲の外周位置となる場合、第２の移動範囲を中心から均等に一定量拡大させる。なお拡大後の第２の移動範囲は、再度、求めたシフト位置が第２の移動範囲の最大シフト位置にならないように設定すればよく、一例として、元の第２の移動範囲における一辺の１．２倍を設定することとする。
【０１４７】
また、各シフト位置で求めた領域積算データにおいて、図１７（ｂ）に示すように最大値のシフト位置から遠ざかるほど領域積算データは小さくなるため、最大値のシフト位置が第２の移動範囲の外周位置にある場合、外周位置の外に、より大きな値となる領域積算データが存在する可能性があることが言え、逆に、最大値のシフト位置が第２の移動範囲の外周位置ではない場合は、その最大値のシフト位置が、最も一致する位置ということが言える。したがって、求めたシフト量が第２の移動範囲の最大シフト量であった場合、所定の第２の移動範囲を一定量拡大することにより、さらに大きくシフトしているフィルタ画像のシフト量を求めることが可能である。
【０１４８】
また、シフト量算出部１０４において、求めたシフト位置が第２の移動範囲の最大シフト位置であった場合、所定の第２の移動範囲を、求めたシフト位置をシフト量としたときにシフトさせる方向にのみ一定量拡大してもよい。具体的に説明すると、最大値に対応するシフト位置が図１９に示す第２の移動範囲の右側の外周位置となる場合、第２の移動範囲を右側方向にのみ一定量拡大させるようにする。第２の移動範囲が大きくなるほど演算量が増加するが、拡大させる方向を限定することで、第２の移動範囲を必要最小限の大きさで拡大させることができる。
【０１４９】
また、前述したとおり、最大値のシフト位置が第２の移動範囲の外周位置ではない場合は、その最大値のシフト位置が最も一致する位置ということが言えるため、シフト量算出部１０４において求めたシフト位置が第２の移動範囲の最大シフト位置でない場合、求めたシフト位置が領域画素データ積算部１０３に予め与えられている第１の移動範囲より外にあっても、求めたシフト位置を位置合わせのシフト量とし位置合わせを行ってもよい。こうすることで、領域画素データ積算部１０３に予め与えられている第１の移動範囲が狭く設定されていても、位置合わせが可能である。
【０１５０】
さらに、本発明の第４の実施の形態４の画像処理装置において、位置合わせ処理が行われなかった場合、撮影位置を変えてフィルタ画像を撮り直し、撮り直したフィルタ画像に対して、再度、位置合わせ処理を、フィルタ画像の位置合わせが行われる、もしくは指定回数になるまで複数回繰り返してもよい。指定回数とは、位置合わせ処理の繰り返しの限界回数であり、何度撮影しても位置合わせを行うことができない場合、処理を終了させるために設定しておく。こうすることで、位置合わせ処理におけるリトライを自動化することが可能である。
【０１５１】
（第５の実施の形態）
次に、本発明の第４の実施の形態の画像処理装置について説明する。本発明の第５の実施の形態５の画像処理装置の構成を示すブロック図は、図１と同じであるが、領域画素データ積算部１０３とシフト量算出部１０４の動作が異なっている。すなわち、複数の異なる撮影位置において同一のバントパスフィルタを用いて複数枚のフィルタ画像を撮影し、撮影したフィルタ画像のうち最も結果がよくなるフィルタ画像を用いて位置合わせを行うようにしたものである。
【０１５２】
まず、複数の異なる撮影位置において同一のバントパスフィルタを用いて複数枚のフィルタ画像を撮影する。この際の撮影するフィルタ画像の枚数は３枚程度で十分である。
【０１５３】
そして、本発明の第５の実施の形態の画像処理装置の領域画素データ積算部１０３は、複数枚のフィルタ画像に対する領域積算データを記憶しておく機能をさらに持ち、それぞれのフィルタ画像に対して演算領域を相対的にずらし、ずらした各シフト位置において領域積算データを求め、フィルタ画像毎に各シフト位置において求めた領域積算データを記憶しておく。
【０１５４】
そして、本発明の第５の実施の形態の画像処理装置のシフト量算出部１０４では、フィルタ画像毎に記憶している領域積算データの中でそれぞれ最大値と最小値を求め、最大値を最小値で除算した値が最も大きい値を持つフィルタ画像の領域積算データからシフト量を算出し、算出したシフト量を位置補正部１０５に出力する。領域積算データからシフト量を算出する方法は、図３のステップＳ１０５で説明したものと同様であるため、ここでは説明を省略する。
【０１５５】
以上のように、本発明の第５の実施の形態の画像処理装置によれば、前述したとおり領域積算データの中の最大値と最小値を除算した値は、ビーズ領域と背景領域の輝度レベルの差が大きいほど大きくなり、ビーズ領域と背景領域の輝度レベルの差が大きいほど位置合わせを精度良く行えるので、最大値を最小値で除算した値が最も大きい値を持つフィルタ画像の領域積算データからシフト量を算出することで、さらに精度の高い位置合わせを行うことができる。
【産業上の利用可能性】
【０１５６】
本発明の画像処理装置は、複数の特定の波長帯域の光を透過させるバンドパスフィルタを通して撮影したそれぞれの画像における位置ずれに対して、対象物の発光特性に影響されずに精度良く位置合わせを行うことができ、複数のバンドパスフィルタを用いて発光波長の異なる蛍光物質の測定を行う各種処理装置に利用可能である。
【図面の簡単な説明】
【０１５７】
【図１】本発明の第１の実施の形態の画像処理装置の要部概略構成を示すブロック図
【図２】本発明の第１の実施の形態の画像処理装置に入力されるフィルタ画像の一例を示す図
【図３】本発明の第１の実施の形態の画像処理装置が行う画像処理を説明するフローチャート
【図４】本発明の第１の実施の形態の画像処理装置に入力されるフィルタ画像における演算領域を示す図
【図５】本発明の第１の実施の形態の画像処理装置に入力されるフィルタ画像からはみ出した演算領域を示す図
【図６】本発明の第１の実施の形態の画像処理装置に入力されるフィルタ画像のＸ軸と平行な線上の画素の輝度値を示す図
【図７】本発明の第１の実施の形態の画像処理装置に入力されるフィルタ画像のビーズ領域に対し演算領域が大きい場合の一例を示す図
【図８】本発明の第１の実施の形態の画像処理装置の演算領域設定部に記憶されるビーズに光を当てることによってできた影を撮影した演算領域算出画像の一例を示す図
【図９】本発明の第１の実施の形態の画像処理装置の演算領域設定部に記憶されるビーズに光を当てることによってできた影を撮影した演算領域算出画像の一例の輝度分布を示す図
【図１０】本発明の第１の実施の形態の画像処理装置の演算領域設定のためのテンプレートマッチング処理を示す図
【図１１】本発明の第１の実施の形態の画像処理装置の演算領域設定のための演算領域算出画像の作成処理を説明する図
【図１２】本発明の第２の実施の形態の画像処理装置の要部概略構成を示すブロック図
【図１３】本発明の第２の実施の形態の画像処理装置が行う画像処理を説明するフローチャート
【図１４】本発明の第３の実施の形態の画像処理装置の要部概略構成を示すブロック図
【図１５】本発明の第３の実施の形態の画像処理装置が行う画像処理を説明するフローチャート
【図１６】位置合わせを行うフィルタ画像の撮影時に振動が起こった場合の画像の一例を示す図
【図１７】位置合わせが可能なフィルタ画像の抽出したシフト領域の分布を説明する図
【図１８】図１６に示す振動が起こった際のフィルタ画像の抽出したシフト領域の範囲を示す図
【図１９】領域積算データを求める処理を行うために演算領域を相対的に移動する第１の移動範囲と第２の移動範囲との関係を示す図
【図２０】従来の画像位置合わせ方法における位置合わせ処理のフローチャート
【符号の説明】
【０１５８】
１０１  フィルタ画像
１０２  演算領域設定部
１０３  領域画素データ積算部
１０４  シフト量算出部
１０５  位置補正部
１０６  出力画像
３０７  判断部
１００１  最初のパターンマッチング位置
１００２  パターンを検出した位置
１０２１  領域設定データ記憶部
１０２２  演算領域算出部
【図１】
2006227895.tif 000003
【図３】
2006227895.tif 000004
【図５】
2006227895.tif 000005
【図６】
2006227895.tif 000006
【図７】
2006227895.tif 000007
【図８】
2006227895.tif 000008
【図９】
2006227895.tif 000009
【図１０】
2006227895.tif 000010
【図１１】
2006227895.tif 000011
【図１２】
2006227895.tif 000012
【図１３】
2006227895.tif 000013
【図１４】
2006227895.tif 000014
【図１５】
2006227895.tif 000015
【図１７】
2006227895.tif 000016
【図１８】
2006227895.tif 000017
【図１９】
2006227895.tif 000018
【図２０】
2006227895.tif 000019
【図２】
2006227895.tif 000020
【図４】
2006227895.tif 000021
【図１６】
2006227895.tif 000022