JP4867705B2 - 画像処理装置及び画像処理プログラム - Google Patents

画像処理装置及び画像処理プログラム Download PDF

Info

Publication number
JP4867705B2
JP4867705B2 JP2007043361A JP2007043361A JP4867705B2 JP 4867705 B2 JP4867705 B2 JP 4867705B2 JP 2007043361 A JP2007043361 A JP 2007043361A JP 2007043361 A JP2007043361 A JP 2007043361A JP 4867705 B2 JP4867705 B2 JP 4867705B2
Authority
JP
Japan
Prior art keywords
equation
calculation module
image
equivalent
integer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007043361A
Other languages
English (en)
Other versions
JP2008209971A (ja
Inventor
俊一 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2007043361A priority Critical patent/JP4867705B2/ja
Publication of JP2008209971A publication Critical patent/JP2008209971A/ja
Application granted granted Critical
Publication of JP4867705B2 publication Critical patent/JP4867705B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本発明は、画像処理装置及び画像処理プログラムに関する。
複数の画像の位置合わせを行うこと、つまり複数の画像内で対応する一部の画像を重ね合わせることによって1枚の画像を生成することにより様々な応用が考えられる。
例えば、次の3つのような応用がある。
(1)画像を貼り合わせてモザイク画像を作成する。
(2)ステレオ画像のマッチングを取ることによって、3次元空間認識を行う。
(3)動画像の動き補償ベクトルを求めることによって、動画像圧縮率を高めることができる。
特に、位置合わせの精度をサブピクセル精度とすることによって、モザイク画像の画質、3次元空間認識の精度、あるいは、動画像圧縮率をさらに高めることができる。
例えば、特許文献1には、画像の位置合わせをサブピクセル精度で行う技術が記載されている。すなわち、N次元類似度を考慮することで、画像間対応パラメータを少ない計算量で安定かつ高速に高精度で同時に推定できるようにした、画像のサブピクセルマッチングにおける多パラメータ高精度同時推定方法及び多パラメータ高精度同時推定プログラムを提供することを課題とし、離散的な位置で得られた画像間のN次元類似度値が、ある1つのパラメータ軸に対して平行な直線上で最大又は最小となるサブサンプリング位置を求め、求められた前記サブサンプリング位置に最も近似するN次元超平面を各パラメータ軸毎に求め、求められた超平面の交点からサブサンプリンググリッド推定位置を求めることが開示されている。
また、これらに関連する技術として、例えば、特許文献2には、画像が撮像装置の特性やノイズなどの影響で変形を受けていても精度が低下しない、サブピクセル精度の位置合わせ手法の提供をすることを課題とし、フィッティング範囲設定手段において、入力画像の微分値の大きな画素の連なりをフィッティング範囲と設定し、関数フィッティング手段において、各フィッティング範囲に対し、単峰性の関数でフィッティングしエッジ位置をサブピクセル精度で求め、次に、ピクセル精度位置合わせ手段において位置合わせを行う。対応候補曲線生成手段において、ある一方の画像上のエッジ点に対して、他方の画像上の対応する複数のエッジ点を曲線で結び対応候補曲線とし、位置ずれ算出手段において、全ての対応候補曲線が交差する点若しくは最も密集する点を求め、その座標を一方の画像からもう一方の画像に対するサブピクセル精度の変位とみなすことが開示されている。
また、例えば、特許文献3には、2枚の画像に基づいてパッチ毎にオプティカルフローを算出した後、オプティカルフローの信頼度に応じて、信頼度の低い領域と信頼度の高い領域とに分け、信頼度の低い領域のオプティカルフローを、その4近傍又は8近傍の領域のオプティカルフローに対してそれらの信頼度に応じた重み付けを行った結果を用いて補間するようにしたオプティカルフロー推定方法が開示されている。
再表2004−063991号公報 特許第2897772号公報 特許第3435084号公報
本発明は、このような背景技術の状況の中でなされたもので、演算負荷量を削減して、整数グリッド選択を柔軟にし、かつ、サブピクセル精度の移動位置推定精度を高めるようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
[1] 複数の画像を入力する画像入力手段と、
前記画像入力手段によって入力された画像間の整数グリッド上の相違度又は類似度を算出する相違度算出手段と、
サブ量子化精度での相違度又は類似度を求める関数となる2次曲面の係数を算出する係数算出手段と、
前記係数算出手段によって算出された係数のサブ量子化精度での推定を行う推定手段
を具備し、
前記係数算出手段は、近似の場合に前記各整数グリッド位置に関する重み付けを行い、該重み付けは、各整数グリッドを中心とするボロノイ分割領域の面積又は超体積である
ことを特徴とする画像処理装置。
] 前記ボロノイ分割を行う領域は、2次曲面で近似を行いたい領域内のみに限定する
ことを特徴とする[]に記載の画像処理装置。
] (52)式と同等のものが存在するか否かを判断する判断手段
Figure 0004867705
をさらに具備し、
前記判断手段によって存在しないと判断された場合には、前記ボロノイ分割を行う領域を広げる
ことを特徴とする[]に記載の画像処理装置。
] 前記領域を広げる場合は、全軸で対称となるように1整数グリッドずつ広げる
ことを特徴とする[]に記載の画像処理装置。
] 整数グリッド上で、整数の範囲で相違度が最小となる点を探索する探索手段
をさらに具備することを特徴とする[]に記載の画像処理装置。
] 前記相違度算出手段によって算出される相違度又は類似度は、N次元であり、N変数の2次曲面を推定するものであり
さらに、
(25)式における行列Aと同等のものが半正定値であるか否かを検証する検証手段と、
Figure 0004867705
Moor−Penroseの一般化逆行列と同等のものを算出する一般化逆行列算出手段と、
サブ量子化精度での変換係数を算出する変換係数算出手段
を具備することを特徴とする[1]に記載の画像処理装置。
] 前記相違度算出手段によって算出される相違度又は類似度は、N次元であり、N変数の2次曲面を推定するものであり
さらに、
(25)式における行列Aと同等のものが正定値であるか否かを検証する検証手段と、
Figure 0004867705
サブ量子化精度での変換係数を算出する変換係数算出手段
を具備することを特徴とする[1]に記載の画像処理装置。
] 前記相違度算出手段によって算出される相違度又は類似度は、平行移動であり、2変数の2次曲面の係数を推定するものであり
さらに、
(8)式と同等のものが成り立つか否かを検証する検証手段と、
Figure 0004867705
(9)式と同等のものを算出する算出手段
Figure 0004867705
を具備することを特徴とする[1]に記載の画像処理装置。
] さらに、
(10)式と同等のものを検証する検証手段と、
Figure 0004867705
(12)式と同等のものを算出する算出手段
Figure 0004867705
を具備することを特徴とする[6]、[7]又は[8]に記載の画像処理装置。
10] 相違度又は類似度を算出する整数グリッド位置を固定として、予め(53)式と同等のもの又は(54)式と同等のものを計算し、(55)式と同等のもの又は(56)式と同等のもので2次曲面の係数を推定する
Figure 0004867705
Figure 0004867705
Figure 0004867705
Figure 0004867705
ことを特徴とする[1]に記載の画像処理装置。
11] 相違度又は類似度を算出する整数グリッド位置は、縦3×横3の9点とし、(35)式と同等のものと等価の式を用いて、2次曲面の係数を推定する
Figure 0004867705
ことを特徴とする[1]に記載の画像処理装置。
12] 相違度又は類似度を算出する整数グリッド位置は、縦3×横3の9点とし、(40)式と同等のものと等価の式を用いて、2次曲面の係数を推定する
Figure 0004867705
ことを特徴とする[1]に記載の画像処理装置。
13] さらに、
相違度又は類似度を算出した整数グリッド位置を入力するグリッド位置入力手段と、
行列Bを算出する行列算出手段と、
連立一次方程式(19)式と同等のものを計算する計算手段
Figure 0004867705
を具備することを特徴とする[10]、[11]又は[12]に記載の画像処理装置。
14] さらに、
行列Bと同等のもののランクを算出する又は(71)式と同等のものの正則性を検証する検証手段と、
Figure 0004867705
相違度を算出する整数グリッドを増加させる整数グリッド増加手段
を具備することを特徴とする[13]に記載の画像処理装置。
15] さらに、
整数グリッド位置と、行列(53)式と同等のもの又は行列(54)式と同等のものの関係を保持する関係保持手段と、
入力された整数グリッド位置が前記関係保持手段に保持されているか否かを判断する判断手段
Figure 0004867705
Figure 0004867705
を具備し、
前記係数算出手段は、テーブル内の行列(53)式と同等のもの又は行列(54)式と同等のものを用いて、2次曲面の係数を算出する
ことを特徴とする[1]に記載の画像処理装置。
16] 前記判断手段によって、入力された整数グリッド位置が前記関係保持手段に保持されていないと判断された場合、整数グリッドを増加させる整数グリッド増加手段
をさらに具備することを特徴とする[15]に記載の画像処理装置。
17] 前記推定手段は、画像ブロックの整数移動位置の相違度又は類似度を複数算出し、それを用いてサブピクセル精度の動きベクトルを推定する
ことを特徴とする[1]に記載の画像処理装置。
18] さらに、
全ての変換係数を0.5グリッド分ずらす画像を作成する画像作成手段
を具備し、
前記推定手段は、前記画像作成手段によって生成された画像で求めた位置と、ずらす前の画像で求めた位置とから、(45)式と同等のもので位置を求める
Figure 0004867705
ことを特徴とする[1]に記載の画像処理装置。
19] さらに、
一つ以上の変換係数を0.5グリッド分ずらす画像を作成する画像作成手段
を具備し、
前記推定手段は、前記画像作成手段によって生成された画像で求めた位置と、ずらす前の画像で求めた位置とから、(47)式と同等のもの、(48)式と同等のもの又は(49)式と同等のものを用いた式で位置を求める
Figure 0004867705
Figure 0004867705
Figure 0004867705
ことを特徴とする[1]に記載の画像処理装置。
20] 画像処理システムを、
複数の画像を入力する画像入力手段と、
前記画像入力手段によって入力された画像間の整数グリッド上の相違度又は類似度を算出する相違度算出手段と、
サブ量子化精度での相違度又は類似度を求める関数となる2次曲面の係数を算出する係数算出手段と、
前記係数算出手段によって算出された係数のサブ量子化精度での推定を行う推定手段
として機能させ
前記係数算出手段は、近似の場合に前記各整数グリッド位置に関する重み付けを行い、該重み付けは、各整数グリッドを中心とするボロノイ分割領域の面積又は超体積である
ことを特徴とする画像処理プログラム。
本発明にかかる画像処理装置及び画像処理プログラムによれば、本構成を有していない場合に比較して、演算負荷量を削減して、整数グリッド選択を柔軟にし、かつ、サブピクセル精度の移動位置推定精度を高めることができる。
<1.前提>
本実施の形態は、2枚以上の画像の位置合わせをサブピクセル精度(あるいはサブ量子化インデクス精度)で行うものである。
まず、本実施の形態を説明する前に、特許文献1に記載されている技術を中心にして画像の位置合わせに関する技術の説明を行う。
特許文献1に記載されている技術の前提を説明する。以下に示す前提は本実施の形態の前提でもある。
2枚の画像f(u,v)と、画像g(u,v)が入力されたとする。また、画像f(u,v)内の領域Wを定義する。
画像g(u,v)をu方向にx、v方向にy移動させると、g(u−x,v−y)となる。このとき、領域W内における画像f(u,v)と画像g(u−x,v−y)の差(相違度)ができるだけ小さくなるようにしたい。このような移動量(x,y)を求めることが特許文献1に記載の技術(画像位置合わせ技術)の目的である。
相違度Rは移動量(x,y)の関数R(x,y)として表すことができる。
相違度関数の例としては、画素値の2乗誤差、絶対誤差が考えられる。
画素値の2乗誤差を用いる場合の相違度関数RSSD(x,y)は(1)式のように表すことができる。ただし、SSDは、Sum of Squared Differencesの略である。
Figure 0004867705
画素値の絶対誤差を用いる場合の相違度関数RASD(x,y)は(2)式のように表すことができる。ただし、ASDは、Sum of Absolute Differencesの略である。
Figure 0004867705
あるいは差(相違度)を小さくするということは、類似度を大きくするということであるとみなすこともできる。この場合、類似度としては、正規化相関係数が考えられる。相違度ではなくて類似度を用いる場合は、類似度を最大化する移動量を求めればよい。以下の説明では相違度を例として説明し、相違度を最小化する方法を述べるが、類似度を用いる場合には、単に最小化を最大化と読み替えればよい。
画素値の正規化相関係数を用いる場合の相違度関数RZNCC(x,y)は(3)式のように表すことができる。ただし、ZNCCは、Zero−mean Normalized Cross−Correlationの略である。
Figure 0004867705
これらのどの相違度(あるいは類似度)を用いてもよい。そこで、以下、RSSD(x,y)を最小化する(x,y)の求め方を示す。以下、RSSD(x,y)を単にR(x,y)と記述する。
特許文献1に記載の技術は、x,yを整数以下の精度まで求める手法を示している。
特許文献1に記載の技術の前提として、x,yが整数の精度では最適な位置を求めることができているとする。
このような整数精度で最適化されたx,yを、X,Yとする。
特許文献1には明記されていないが、このようなx,yの組み合わせを発見することは可能である。一例を挙げると、あらゆる整数の(x,y)の組み合わせに関してR(x,y)を調べて、Rが最小となる(x,y)を採用すればよい。(x,y)の範囲は、画像fと画像gが重なりを持つ範囲内に限定されるため、有限である。
あるいは、階層的に行うなどの種々の高速化手法を用いてもよい。
以上の前提に立つことで、課題を下記のように書き換えることができる。
課題:「R(X+x,Y+y)を最小化する。ただし、−1<x<1、かつ、−1<y<1」
ここで、X,Yは、単なるオフセットである。毎回記述することは煩雑となるため、ここでは画像fと画像gは既に整数精度で移動位置が最適化されているものとみなす。このようにすると、X=0,Y=0とできるため、前記課題を、
課題:「R(x,y)を最小化する。ただし、−1<x<1、かつ、−1<y<1」
のように簡易に記述することが可能である。以下、この前提を用いる。
<2.特許文献1に記載の技術>
特許文献1に記載の技術の概略は、以下の通りである。
(1)x,yが整数の場合のRの値をまず求める。以下、x,yが整数となるような位置を整数グリッドと称する。
(2)上記整数グリッド位置のRの値を用いて、Rが最小となるx,y(−1<x<1、−1<y<1)を求める。
ここで、用いる整数グリッドを図16に示す。
特許文献1に記載の技術では、まずx=0の直線において、Rを最小とするyの値を推定する。これをy(0)とする。特許文献1に記載の技術では、R(0,−1)、R(0,0)、R(0,1)の3点を通る放物線関数を決定して、その放物線関数を最小とする位置をy(0)とする。
次に、s=1の直線において、Rを最小とするyの値を推定する。これをy(1)とする。y(1)を求めるとき、まず、R(1、−3)〜R(1,3)の中で最小となる点を発見する。その点を中心とした3点のRの値を抽出して、その3点を通る放物線関数を決定する。さらに、その放物線関数を最小とする位置をy(1)とする。
次にx=−1の直線において、Rを最小とするyの値を推定する。これをy(−1)とする。y(−1)の求め方はy(1)と同様である。
さらに、y=0の直線においてRを最小とするxの値x(0)、y=1の直線においてRを最小とするxの値s(1)、及び、y=1の直線においてRを最小とするxの値x(−1)を求める。
さらに、
直線1 (0,y(0)),(1,y(1)),(−1,y(−1))を通る直線
直線2 (x(0),0),(x(1),1),(x(−1).−1)を通る直線
を求める。上記3点が直線上に並んでいない場合、最小2乗法で直線を決める。
さらに、直線1と直線2の交点を求める。この交点が求めるサブピクセル精度位置(x,y)である。
特許文献1に記載の技術を用いて推定したサブピクセル精度移動位置を図17に示す。つまり、図17に示した直線1と直線2とが交わる点が特許文献1に記載の技術が推定した移動位置ということになる。
<3.実施の形態が解決しようとする課題>
特許文献1に記載の技術では、以下に示すような課題が存在する。
(1)x,y=±3の範囲の計25整数グリッドのRの値を取得しているため、演算処理量が多い。
つまり、1グリッドのRの値を算出するためには、(1)式に示されるように、領域Wの画素数分だけ演算を行わなければならないため、演算負荷が大きい。
(2)x=±1又はy=±1の場合に、最小値を求める負荷がかかる。
(3)x,y=±3の範囲に限定しているため、最小値がこの範囲外にある場合、推定精度が低下する。
(4)各直線上(x=0,x=1,x=−1,y=0,y=−1,y=1等)で、最小値を求めるためには、各直線上で最低3点のRの値が必要である(放物線を推定するには3点が必要である)。つまり、整数グリッドの選択基準に柔軟性がない。
(5)相違度空間Rが2次元ガウス関数で近似できる場合に前述のような直線の交点が最適であることが示されているが、実際の画像でこのような近似が成り立つ保証はなく、精度が落ちる虞がある。
そこで、本実施の形態は、特許文献1に記載の技術よりも演算負荷量を削減して、かつ、整数グリッド選択を柔軟にし、かつ、サブピクセル精度の移動位置推定精度を高めるようにするものである。
<4.実施の形態>
<4.1.実施の形態の基本的アーキテクチャ>
<4.1.1.2次元移動位置>
本実施の形態は、相違度空間Rにおける相違度を2変数の2次曲面にマッピングし、その2次曲面を最小化する移動量を求めるものである。
すなわち、いま、(57)式として、相違度Rをxとyの(4)式に示す関数(2次曲面)で近似する。
Figure 0004867705
Figure 0004867705
この関数Rを最小化するx,yの必要条件は、δR/δx=0、及び、δR/δy=0であるから、(5)式のようになる。
Figure 0004867705
結局、(6)式を解けばよいことになる。
Figure 0004867705
この(6)式を以下の条件1〜4に分けて解く。
(条件1)
2次曲面(4)が最小値を1点だけ持つためには、行列式である(7)式が正定値(positive definite)であればよい。
Figure 0004867705
すなわち、(8)式が成り立てばよい。
Figure 0004867705
このときは、単純に(6)式を解けばよい。すなわち、(9)式のようになる。
Figure 0004867705
なお、量子化精度は、1画素であってもよく、2画素以上であってもよい。
(条件2)
次に、Aの行列式が0で、かつ最小値が存在する場合を考える。この場合は、(10)式となる。
Figure 0004867705
このとき、行列Aが正則ではないので、Sの最小値を与えるtが無限に存在することになる((6)式が不定の方程式となる)。ここでは、tのノルムが最小のものを採用する。なぜならば、整数に限定した場合に(0,0)が最小となるようにしているため、これは妥当な考え方である。つまり、直線の(11)式の中で、ノルムが最小の(x,y)を求める。
Figure 0004867705
解は、(12)式のようになる。
Figure 0004867705
(条件3)
次に、a=b=c=0、すなわち、A=O(ゼロ行列)のときは、(58)式とすればよい。
Figure 0004867705
(条件4)
その他の場合、最小値を持つことはない。この場合、(58)式を採用する。
ここで、Moore−Penroseの一般化逆行列を用いて前記(6)式を解く方法を考慮する。係数行列のMoore−Penroseの一般化逆行列を用いて線形方程式を解く場合、かつ、係数行列が正則ではない場合、ノルムが最小の解を求めることになる。よって、Moore−Penroseの一般化逆行列を用いることによって、上記の(条件1)〜(条件3)を包含することが可能となる。
以上をまとめる。
a≧0、かつ、b≧0、かつ、ab−c≧0のとき((条件1)〜(条件3)の場合)、(13)式として前記(6)式を解けばよい。
Figure 0004867705
それ以外のとき(条件4の場合)、(58)式とする。
さらに、計算で得られた(59)式が、x>1、x<−1、又は、y>1、y<−1となる場合がありうる。このときは、安定化のため(58)式としてもよいと考えられる。
Figure 0004867705
ただし、前述した説明では、前記(4)式の係数a〜eを示していない。
次の問題は、前記(4)式の係数a〜eの推定である(fは前記(6)式の中にないため、不要)が、これは以下のようにする。
まず、(60)式を整数グリッドであるとする。
Figure 0004867705
これら複数個の整数グリッドを用いて、相違度R(x,y)を計算する。以下、表示を簡単にするため、R=R(x,y)とする。
以下、(14)式とする。
Figure 0004867705
このとき、Rは、(15)式のように書ける。
Figure 0004867705
そこで、(16)式とする。複数の点(i=0,1,2...)で(15)式を求めることができるので、(17)式とできる。
Figure 0004867705
Figure 0004867705
ここで、(18)式とすれば、連立1次方程式(19)式を形成することができる。
Figure 0004867705
Figure 0004867705
aは未知数6個のベクトルであるため、行列Bのランクが6以上であれば解くことができる。整数グリッドの位置は、行列Bのランクが6以上であれば何でもよい。このように、本実施の形態では、整数グリッドの位置を非常に自由に取ることができる。
一般的には、整数グリッドが2次元状に分布するように、整数グリッドの個数を6以上取ればよい。このとき行列Bの行数は6以上となるので、最小2乗法で解くことができる。
Figure 0004867705
(20)式において、aの最終要素fを算出する必要はないため、最終行の乗算は行わなくともよい。
<4.1.2.重み付け>
さらに、(20)式では、各画素位置iに関する重みを一定として最小2乗法を適用したが、各整数グリッド位置iに関する重み付けを行うことも可能である。
整数グリッド位置iに関する重みをw>0とする。
さらに、(21)式とすると、最小2乗近似は、(22)式とすればよい。
Figure 0004867705
Figure 0004867705
行列Wが単位行列である場合、すなわちW=I(単位行列)の場合、重み付けを行わないときに一致する。
以下、重み係数設定の一つの手法を示す。
まず、各整数グリッドの値は相違度空間を代表していると考える。代表している相違度空間の面積(又は超体積)を重み係数とすればよいと考える。
ここでは、各整数グリッドを中心として相違度空間を領域πの中で、ボロノイ分割する。分割された各領域の面積(又は超体積)を重み係数とする。
ボロノイ分割とは、近い整数グリッド間の垂直2等分線で空間分割を行う方法である。N次元空間であれば、垂直超2等分平面で分割することになる。
ここで、相違度空間の範囲は、2次曲面で近似を行いたい範囲に限定することで精度を高めることができる。例えば、小数点以下の画素位置を推定したい場合、2次曲面で近似を行いたい範囲を−1≦x≦1、−1≦y≦1とする。この範囲をπとする。πを、−1≦x≦1、−1≦y≦1の領域を考える。この領域内において、図18に示すように9点(図18に示す格子上の0〜8が該当)の整数グリッドがあるとする。この9点を中心とするボロノイ分割結果は、図19に示すようになる。
図19から分かるように、
(1)整数グリッド0を中心とする領域の面積は、1
(2)整数グリッド1、2、3、4を中心とする領域の面積は、1/2
(3)整数グリッド5、6、7、8を中心とする領域の面積は、1/4
となる。この結果より、図20に示すように重み係数を設定するとすると、w=0.5,w=0.25となる。
このようにボロノイ分割して重み係数を決定すると、重み付けを行わない場合(すなわちW=Iの場合)には計算ができる場合であっても、重みが0となってしまって、(61)式が正則にならない場合がありうる。例えば、πが−1≦x≦1、−1≦y≦1の領域で、整数グリッドが、(0,0)、(0,2)、(0,−2)、(2,0)、(−2,0)、(2,2)、(−2,2)、(2,−2)、(−2,−2)の場合(図21参照)中心以外の重みが0となるため、上記のようなことがありうる。
Figure 0004867705
このときは領域πを−2≦x≦2、−2≦y≦2に広げてやればよい。
例えば、計画性なくπの領域を広げると、精度が悪くなるため、(61)式が正則であるという条件下で、できるだけπは小さな領域に限定することが望ましい。そのためには、領域πを−p≦x≦p、−p≦y≦pとして、pを1から順に、2、3と増加させていき、(61)式が正則になった時点で終了すればよい。
なお、重み係数設定方法はこれに限らない。予め固定しておいてもよい。あるいは、整数グリッド位置と重み係数の関係をテーブルに保持しておいてもよい。あるいは、整数グリッド位置と前記(54)式の関係をテーブルに保持しておいてもよい。もちろん、テーブル構造に限る必要はなく、リンク構造等であってもよく、これらの対応関係を記憶できる記憶手段であればよい。以下、記憶手段としてテーブル構造を主として説明する。
<4.1.3.多次元への拡張>
前述の説明では、fとgの関係を平行移動に限った場合であり、求めるベクトルは2次元であった。ここでは、これをN次元へ拡張する。
fとgの間の変換は、平行移動以外にも様々なものが考えられる。その際に、変換を表現する変換係数をベクトルとしてみなせば、前節までの平行移動ベクトルと同様に考えることができる。
例えば、回転を含めれば3次元となる。相似変換(回転+相似拡大)では4次元、縦横の拡縮を入れると5次元、アフィン変換では6次元、射影変換では8次元のベクトルを求めればよい。
2次元の場合に求めたベクトルtをここでは、N次元ベクトルhに拡張する。hは、射影変換行列の各要素をベクトル化したものと捉えてよい。
回転と移動の3次元の変換であれば、hは、2次元の移動ベクトルと、回転角を要素として持つと考えればよい。hの各要素は、擬似的に量子化された整数グリッドを持つものとする。例えば回転角であれば、「10度を1グリッドとして量子化する」などと定めればよい。
ちなみに、同様に平行移動に関しても、1画素を1グリッドとする必然性はないので、任意のp画素を1グリッドとすることができる。「任意のp画素を1グリッドとすることができる。」というのは、前節までの2次元の場合でも成り立つ。
一般には、ベクトルhは、射影変換行列の各要素をベクトル化したものと捉えてよい。いま、(62)式とする。
Figure 0004867705
まず、2次元の場合の例を前記ベクトルhを用いて記述しなおす。(63)式を用いて、(23)式のように変形することができる。
Figure 0004867705
Figure 0004867705
2次元のときは、(23)式のように書くことができる。これをそのままN次元に拡張する。すなわち、Rを(24)式の2次曲面で近似する。
Figure 0004867705
ただし、行列AはN×Nの対称行列、dはN次元のベクトル、fはスカラー値とできる。行列A、ベクトルd、ベクトルhは(25)式で与えられる。
Figure 0004867705
Rを最小化する必要条件は、(26)式とすればよい。
Figure 0004867705
Aは対称行列なので、(27)式とできる。
Figure 0004867705
この(27)式を解くには、
(1)行列Aが半正定値(Aの固有値が全て0以上)のとき、(28)式とすればよい。
Figure 0004867705
ただし、(28)式内のAは、Moore−Penroseの一般化逆行列である。
(2)前記(1)以外のとき、(29)式とすればよい。
Figure 0004867705
さらに、
(3)あるiで、h>1 or h<−1のとき、h=0としてもよい。
次に、行列Aとベクトルdの算出方法を述べる。
未知ベクトルaを(30)式のように定義する。
Figure 0004867705
(30)式は、N(N+1)/2+N=N(N+3)/2次元ベクトルとなる。
前記(24)式を(30)式のベクトルaを用いて記述しなおすと、(31)式となる。
Figure 0004867705
ここで、整数グリッド番号をiとして、番号iの整数グリッドのときの相違度をRとする。また、整数グリッドiのときのベクトルhを、(64)式とする。
Figure 0004867705
各整数グリッド点毎に(31)式を得ることができるため、(32)式として、前記(18)式を用いて、Bとrを求めて、前記(20)式又は前記(22)式を適用すれば、ベクトルaを求めることができる。
Figure 0004867705
<4.2.具体的演算例>
<4.2.1.重み付けなし>
前述した説明に関して、具体的な数値例を示す。
ここでは2次元の例を示す。
また、相違度を算出する整数グリッドを(65)式に示す9つとする。
Figure 0004867705
図22は、(65)式に示す整数グリッドを図示したものである。
この整数グリッドの場合に、Bは(33)式となる。
Figure 0004867705
また、(66)式となる。
Figure 0004867705
ここで、前記(53)式を計算すると、(34)式のようになる。
Figure 0004867705
よって、係数ベクトルaは、(35)式で求めればよい。
Figure 0004867705
fは算出の必要がないため、(35)式の最終行の乗算は省くことができる。(36)式に示すように、式が簡単になる。
Figure 0004867705
この(36)式を利用して、以下の手順でtを求める。
(1)a>0、b>0、ab−c>0のとき、(37)式を用いる。
Figure 0004867705
(2)a>0、b>0、ab−c=0のとき、前記(12)式を用いる。
(3)上記以外のとき、t=(0,0)とする。
<4.2.2.重み付け有り>
次に重み付けを行う場合の例を示す。グリッド点は前節と同じとする。すなわち行列Bは同じである。また、前記(66)式となる。
ここでは、重み付け行列Wを(38)式のように決める。
Figure 0004867705
例えば、w=0.5,w=0.25とすると、(39)式のように計算できる。
Figure 0004867705
前節と同様にfが算出不要なので、(40)式のようになる。
Figure 0004867705
(40)式に示されるように、非常に単純な演算となる。このa〜eを用いて前節と同様にtを計算すればよい。
さらに、(40)式では、行列の要素に0が存在しているため、全てを計算する必要はない。よって、(41)式、(42)式、(43)式、(44)式に示すように書きなおすこともできる。
Figure 0004867705
Figure 0004867705
Figure 0004867705
Figure 0004867705
ここで、この手法を用いて、2次曲面を推定した例を示しておく。
例えば、一般的な実験用画像である画像Barbaraの1/10縮小画像を用いて人工的に(−0.3,−0.2)画素ずれた画像を作成した。この画像をずらして、真のSSD値を測定した。
この場合、SSDの値は、図23に示すように変化する。
さらに、前記画像を1画素単位でずらして求めた9つの整数グリッド点情報を用いて、2次曲面を推定した。
近似2次曲面は図24に示すようになる。推定結果を破線で示す。
図24に示されるように、真のSSD値と推定2次曲面がほとんど一致していることが分かる。
この場合の最小を与える(x,y)の推定位置は、(−0.278,−0.186)となる。真の値は(−0.3,−0.2)であり、実用上十分な精度が得られていることが分かる。
さらに、分かりやすいように等SSD線を図25に示す。
<4.3.高精度化方式>
特許文献1には、放物線でRを近似したときに発生する位置誤差を解消する方式の例が示されている。
これは、放物線による近似では、画素の移動距離が整数グリッドと±0.25の差があるときに最も誤差が大きくなる現象を回避するものである。具体的には、0.5画素ずらした画像を(例えば線形補間で)作成し、その画像を用いて推定を行う。この推定誤差は、ずらさない画像の推定誤差と逆位相となるため、双方の結果の平均値を取ることによって、誤差をキャンセルする。
この高精度化方式を適用する場合、従来例では、1次元の推定をまず行うため、x方向に0.5画素ずれた画像を用いてx方向の誤差キャンセルを行う。また、y方向に0.5画素ずれた画像を用いてy方向の誤差キャンセルを行う。すなわち、N次元パラメタを推定する場合、N個の0.5画素ずれた画像を作成する必要がある。
本実施の形態に関しても、この高精度化方式が適用可能である。ただし、本手法ではN次元を一気に推定するため、1個だけ(全てのパラメタに関して0.5インデクスずれた)画像を作成して、その画像を用いて推定した結果との平均値を取ればよい。特許文献1に記載の技術と比較して、補間画像作成数を1/Nとすることが可能である。この手法を「高精度化1手法」とする。
全てのh(i=1,2,...,N)に関して0.5グリッド(画素)ずれた画像をgから線形補間等で作成する。この画像を用いて位置合わせを行った結果を、hとする。また、元々のg画像を用いて求めたhをhとする。最終的に求めるhは、(45)式のようになる。もちろん、hは、0.5グリッドのシフト分を補償済みの値とする。
Figure 0004867705
あるいは、本実施の形態でも1次元のN方向の補間画像を用いた高精度化も考えられる。複数の補間結果を用いることができるため、さらに精度を上げることができる。
あるiに対してのみ0.5グリッド(画素)ずれた画像をgから線形補間等で作成する。この画像を用いて位置合わせを行った結果を、(67)式とする。
Figure 0004867705
また、元々のg画像を用いて求めたhを(68)式とする。
Figure 0004867705
このとき、最終的に求める(69)式は、(46)式として求められる。
Figure 0004867705
Figure 0004867705
これは、「シフトしていない画像の要素の平均値」と、「シフトした画像の要素」との平均値を求めるものである。2次元の場合は、(47)式となる。この手法を「高精度化2手法」とする。
Figure 0004867705
高精度化2手法では、ベクトルの各要素毎に、「シフトしていない画像の平均値」と、「シフトした画像の平均値」を求めていたが、平均値を求めるときには、「シフトした画像」と、「その他の画像の要素を適当に選択したとき」との平均値であれば何でもよい。つまり、(48)式、(49)式、(50)式のようになる。
(48)式、(49)式で関数average()は、変数jを変化させて平均値を計算した結果を示す。つまり、iは変化させない。また、jの変化の範囲は様々にすることができる。
Figure 0004867705
Figure 0004867705
Figure 0004867705
以下、図面に基づき本発明を実現するにあたってのより具体的な各種の実施の形態を説明する。
<4.4.第1の実施の形態>
図1は、第1の実施の形態の概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはプログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、プログラム、システム及び方法の説明をも兼ねている。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示等)を含む。
また、システムとは、複数のコンピュータ、ハードウェア、装置等がネットワーク等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。
まずは、2次元で整数グリッドが固定の場合の例を示す。
第1の実施の形態では、図22に示された9点の固定の整数グリッドを用いる。既に整数の範囲では中心の整数グリッドにおける相違度が最小であるとする。
この例では、重みを付けていてもよいし、重みを付けていなくてもよい。
第1の実施の形態は、図1に示すように、整数グリッド上の相違度算出モジュール11、2次曲面係数算出モジュール12、位置算出モジュール13を有している。整数グリッド上の相違度算出モジュール11は2次曲面係数算出モジュール12に、2次曲面係数算出モジュール12は整数グリッド上の相違度算出モジュール11、位置算出モジュール13に、位置算出モジュール13は2次曲面係数算出モジュール12に、接続されている。
まず、整数グリッド上の相違度算出モジュール11は、入力画像1及び入力画像2を入力する。画像を入力するとは、具体的には、スキャナによって画像を入力すること、ファックスによって通信回線を介して外部機器から画像を入力すること、記憶媒体から画像を入力すること等がある。
整数グリッド上の相違度算出モジュール11では、画像1の領域Wを整数範囲で動かして、整数グリッド上の9点の相違度を算出する。ここで、既に整数の範囲では中心の整数グリッドにおける相違度が最小であるとする。算出方法は例えば前記(1)式を用いる。出力は前記(18)式に示されるベクトルrである。
2次曲面係数算出モジュール12では、2次曲面係数a,b,c,d,eを算出する。例えば、前記(40)式を用いればよい。重みを付けない場合は、前記(36)式を利用すればよい。
位置算出モジュール13では、まず前記(8)式が成り立つかどうかを検証する。
前記(8)式が成り立つ場合、前記(9)式を用いて、最終的な位置tを求める。
前記(8)式が成り立たない場合、かつ、前記(10)式が成り立つ場合、前記(12)式を用いて、最終的な位置tを求める。
前記以外の場合、(70)式とする。
Figure 0004867705
あるいは、以下のように簡単化してもよい。
前記(8)式が成り立つ場合、前記(9)式を用いて、最終的な位置tを求める。
前記以外の場合、(70)式とする。
<4.5.第2の実施の形態>
第2の実施の形態は、2次元で整数グリッドが可変の場合に対応できるものである。
第1の実施の形態では、前記(53)式を予め計算しておくことができたが、整数グリッド位置が可変の場合は、予め計算しておくことができない。そこで、毎回、行列Bを算出するようにしたものである。
第2−1の実施の形態は、図2に示すように、整数グリッド上の相違度算出モジュール21、2次曲面係数算出モジュール22、位置算出モジュール23、行列B算出モジュール24、(53)式算出モジュール25を有している。整数グリッド上の相違度算出モジュール21は2次曲面係数算出モジュール22、行列B算出モジュール24に、2次曲面係数算出モジュール22は整数グリッド上の相違度算出モジュール21、(53)式算出モジュール25、位置算出モジュール23に、位置算出モジュール23は2次曲面係数算出モジュール22に、行列B算出モジュール24は整数グリッド上の相違度算出モジュール21、(53)式算出モジュール25に、(53)式算出モジュール25は2次曲面係数算出モジュール22、行列B算出モジュール24に、それぞれ接続されている。
整数グリッド上の相違度算出モジュール21は、処理結果である整数グリッド位置を行列B算出モジュール24へ渡す以外は、第1の実施の形態の整数グリッド上の相違度算出モジュール11と同様である。
2次曲面係数算出モジュール22は、(53)式算出モジュール25からの処理結果を受け取る以外は、第1の実施の形態の2次曲面係数算出モジュール12と同様である。
位置算出モジュール23は、第1の実施の形態の位置算出モジュール13と同様である。
行列B算出モジュール24は、行列Bを、前記(16)式、前記(18)式を用いて算出する。
(53)式算出モジュール25は、通常の行列演算手法を用いて、前記(53)式を算出する。
又は、図3に示すように、整数グリッド位置から重み行列Wを算出し、さらに前記(54)式を算出してもよい。
図3に示す第2−2の実施の形態は、整数グリッド上の相違度算出モジュール31、2次曲面係数算出モジュール32、位置算出モジュール33、行列B算出モジュール34、重み行列W算出モジュール35、(54)式算出モジュール36を有している。整数グリッド上の相違度算出モジュール31は2次曲面係数算出モジュール32、行列B算出モジュール34、重み行列W算出モジュール35に、2次曲面係数算出モジュール32は整数グリッド上の相違度算出モジュール31、(54)式算出モジュール36、位置算出モジュール33に、位置算出モジュール33は2次曲面係数算出モジュール32に、行列B算出モジュール34は整数グリッド上の相違度算出モジュール31、(54)式算出モジュール36に、重み行列W算出モジュール35は整数グリッド上の相違度算出モジュール31、(54)式算出モジュール36に、(54)式算出モジュール36は行列B算出モジュール34、重み行列W算出モジュール35、2次曲面係数算出モジュール32に、それぞれ接続されている。
整数グリッド上の相違度算出モジュール31は、重み行列W算出モジュール35にも処理結果である整数グリッド位置を渡す以外は、第2−1の実施の形態の整数グリッド上の相違度算出モジュール21と同様である。
2次曲面係数算出モジュール32、位置算出モジュール33、行列B算出モジュール34は、それぞれ第2−1の実施の形態の2次曲面係数算出モジュール22、位置算出モジュール23、行列B算出モジュール24と同様である。
(54)式算出モジュール36は、重み行列W算出モジュール35から処理結果である重み行列Wを受け取る以外は、第2−1の実施の形態の(53)式算出モジュール25と同様である。
重み行列W算出モジュール35は、整数グリッド位置から重み行列Wを算出し、その重み行列Wを(54)式算出モジュール36へ渡す。
<4.6.第3の実施の形態>
前述の第2の実施の形態は、前記(71)式が正則であることが保証されている場合である。前記(71)式が正則であることが保証されていない場合は第3の実施の形態のような構成をとる必要がある。
第3の実施の形態は、図4に示すように、整数グリッド上の相違度算出モジュール41、2次曲面係数算出モジュール42、位置算出モジュール43、行列B算出モジュール44、(71)式正則性検証モジュール45、(53)式算出モジュール46を有している。整数グリッド上の相違度算出モジュール41は2次曲面係数算出モジュール42、行列B算出モジュール44、(71)式正則性検証モジュール45に、2次曲面係数算出モジュール42は整数グリッド上の相違度算出モジュール41、(53)式算出モジュール46、位置算出モジュール43に、位置算出モジュール43は2次曲面係数算出モジュール42に、行列B算出モジュール44は整数グリッド上の相違度算出モジュール41、(71)式正則性検証モジュール45に、(71)式正則性検証モジュール45は整数グリッド上の相違度算出モジュール41、行列B算出モジュール44、(53)式算出モジュール46に、(53)式算出モジュール46は(71)式正則性検証モジュール45、2次曲面係数算出モジュール42に、それぞれ接続されている。
整数グリッド上の相違度算出モジュール41、2次曲面係数算出モジュール42、位置算出モジュール43、行列B算出モジュール44、(53)式算出モジュール46は、それぞれ、図2に示した第2−1の実施の形態の整数グリッド上の相違度算出モジュール21、2次曲面係数算出モジュール22、位置算出モジュール23、行列B算出モジュール24、(53)式算出モジュール25に対応する。
図4に示すように、行列B算出モジュール44が行列Bを算出した後に、(71)式正則性検証モジュール45が前記(71)式の正則性を検証する。又は、(71)式正則性検証モジュール45は、行列Bのランクが6以上であることを検証するとしてもよい。
前記(71)式が正則な場合は、図2に示した第2−1の実施の形態と同様である。
前記(71)式が正則ではない場合は、(71)式正則性検証モジュール45は整数グリッドを増加させる。整数グリッドは前記(71)式が正則になるまで増加させることになる。整数グリッドを増加させる場合、もし、以前の整数グリッドが1直線上に並んでいる場合には、その直線以外の点を増加させることで、Bのランクを増加させることができる。
又は、図5に示すように、第3の実施の形態を変形したものであってもよい。
図5に示す第3の実施の形態は、整数グリッド上の相違度算出モジュール51、2次曲面係数算出モジュール52、位置算出モジュール53、行列B、W算出モジュール54、(72)式正則性検証モジュール55、(54)式算出モジュール56を有している。整数グリッド上の相違度算出モジュール51は2次曲面係数算出モジュール52、行列B、W算出モジュール54、(72)式正則性検証モジュール55に、2次曲面係数算出モジュール52は整数グリッド上の相違度算出モジュール51、位置算出モジュール53、(54)式算出モジュール56に、位置算出モジュール53は2次曲面係数算出モジュール52に、行列B、W算出モジュール54は整数グリッド上の相違度算出モジュール51、(72)式正則性検証モジュール55に、(72)式正則性検証モジュール55は整数グリッド上の相違度算出モジュール51、行列B、W算出モジュール54、(54)式算出モジュール56に、(54)式算出モジュール56は(72)式正則性検証モジュール55、2次曲面係数算出モジュール52に、それぞれ接続されている。
整数グリッド上の相違度算出モジュール51、2次曲面係数算出モジュール52、位置算出モジュール53、(54)式算出モジュール56は、それぞれ、図3に示した第2−2の実施の形態の整数グリッド上の相違度算出モジュール31、2次曲面係数算出モジュール32、位置算出モジュール33、(54)式算出モジュール36に対応する。また、行列B、W算出モジュール54は、行列B算出モジュール34、重み行列W算出モジュール35に対応する。
整数グリッド位置から、行列B、W算出モジュール54は重み行列Wも算出し、さらに、(72)式正則性検証モジュール55は前記(72)式の正則性を検証する。
前記(72)式が正則な場合は、図3に示した第2−2の実施の形態と同様である。
前記(72)式が正則ではない場合は、整数グリッドを増加させるか、2次曲面近似領域πを広げる。
<4.7.第4の実施の形態>
前述の第2の実施の形態の(53)式算出モジュール25、第3の実施の形態の(53)式算出モジュール46は、毎回(53)式を計算していたが、前記(53)式は、整数グリッド位置が決まれば、一意に決定することができるものである。
そこで、代表的な整数グリッド位置に対して、前記(53)式を予め算出しておくこともできる。
第4の実施の形態は、図6に示すように、整数グリッド上の相違度算出モジュール61、2次曲面係数算出モジュール62、位置算出モジュール63、整数グリッド位置と(53)式のテーブル64、行列B算出モジュール65、(71)式正則性検証モジュール66、(53)式算出モジュール67を有している。整数グリッド上の相違度算出モジュール61は2次曲面係数算出モジュール62、整数グリッド位置と(53)式のテーブル64、(71)式正則性検証モジュール66に、2次曲面係数算出モジュール62は整数グリッド上の相違度算出モジュール61、整数グリッド位置と(53)式のテーブル64、(53)式算出モジュール67、位置算出モジュール63に、位置算出モジュール63は2次曲面係数算出モジュール62に、整数グリッド位置と(53)式のテーブル64は整数グリッド上の相違度算出モジュール61、行列B算出モジュール65、2次曲面係数算出モジュール62に、行列B算出モジュール65は整数グリッド位置と(53)式のテーブル64、(71)式正則性検証モジュール66に、(71)式正則性検証モジュール66は整数グリッド上の相違度算出モジュール61、行列B算出モジュール65、(53)式算出モジュール67に、(53)式算出モジュール67は(71)式正則性検証モジュール66、2次曲面係数算出モジュール62に、それぞれ接続されている。
整数グリッド上の相違度算出モジュール61、2次曲面係数算出モジュール62、位置算出モジュール63、行列B算出モジュール65、(71)式正則性検証モジュール66、(53)式算出モジュール67は、それぞれ、図4に示した第3の実施の形態の整数グリッド上の相違度算出モジュール41、2次曲面係数算出モジュール42、位置算出モジュール43、行列B算出モジュール44、(71)式正則性検証モジュール45、(53)式算出モジュール46に対応する。
図6に示すように、整数グリッド位置と(53)式のテーブル64に、整数グリッド位置と、前記(53)式のテーブルを予め用意しておく。
入力整数グリッド位置がテーブル内にある場合には、そのテーブルから前記(53)式を読み出して、2次曲面を算出すればよい。つまり、2次曲面係数算出モジュール62が整数グリッド位置と(53)式のテーブル64から前記(53)式の算出結果を受け取る。行列B算出モジュール65、(71)式正則性検証モジュール66、(53)式算出モジュール67による処理は省略される。
入力整数グリッド位置がテーブル内にない場合、図4に示した第3の実施の形態と同様の動作となる。つまり、行列B算出モジュール65、(71)式正則性検証モジュール66、(53)式算出モジュール67による処理が、図4に示した第3の実施の形態と同様に行われる。
又は、図7に示すように、第4の実施の形態を変形したものであってもよい。
図7に示す第4の実施の形態は、整数グリッド上の相違度算出モジュール71、2次曲面係数算出モジュール72、位置算出モジュール73、整数グリッド位置と(54)式のテーブル74、行列B、W算出モジュール75、(72)式正則性検証モジュール76、(54)式算出モジュール77を有している。整数グリッド上の相違度算出モジュール71は2次曲面係数算出モジュール72、整数グリッド位置と(54)式のテーブル74、(72)式正則性検証モジュール76に、2次曲面係数算出モジュール72は整数グリッド上の相違度算出モジュール71、位置算出モジュール73、(54)式のテーブル74、(54)式算出モジュール77に、位置算出モジュール73は2次曲面係数算出モジュール72に、整数グリッド位置と(54)式のテーブル74は整数グリッド上の相違度算出モジュール71、2次曲面係数算出モジュール72、行列B、W算出モジュール75に、行列B、W算出モジュール75は整数グリッド位置と(54)式のテーブル74、(72)式正則性検証モジュール76に、(72)式正則性検証モジュール76は行列B、W算出モジュール75、整数グリッド上の相違度算出モジュール71、(54)式算出モジュール77に、(54)式算出モジュール77は2次曲面係数算出モジュール72、(72)式正則性検証モジュール76にそれぞれ接続されている。
整数グリッド上の相違度算出モジュール71、2次曲面係数算出モジュール72、位置算出モジュール73、行列B、W算出モジュール75、(72)式正則性検証モジュール76、(54)式算出モジュール77は、それぞれ、図5に示した第3の実施の形態の整数グリッド上の相違度算出モジュール51、2次曲面係数算出モジュール52、位置算出モジュール53、行列B、W算出モジュール54、(72)式正則性検証モジュール55、(54)式算出モジュール56に対応する。
整数グリッド位置と(54)式のテーブル74に、整数グリッド位置と、重み係数行列である前記(54)式のテーブルを予め用意しておく。整数グリッド位置と(54)式のテーブル74は、図6に示した整数グリッド位置と(53)式のテーブル64と同様の処理を行う。
つまり、入力整数グリッド位置がテーブル内にある場合には、そのテーブルから前記(54)式を読み出して、2次曲面を算出すればよい。つまり、2次曲面係数算出モジュール72が整数グリッド位置と(54)式のテーブル74から前記(54)式の算出結果を受け取る。行列B、W算出モジュール75、(72)式正則性検証モジュール76、(54)式算出モジュール77による処理は省略される。
入力整数グリッド位置がテーブル内にない場合、図5に示した第3の実施の形態と同様の動作となる。つまり、行列B、W算出モジュール75、(72)式正則性検証モジュール76、(54)式算出モジュール77による処理が、図5に示した第3の実施の形態と同様に行われる。
さらに、図8に示すように、第4の実施の形態を変形したものであってもよい。
図8に示す第4の実施の形態は、整数グリッド上の相違度算出モジュール81、2次曲面係数算出モジュール82、位置算出モジュール83、整数グリッド位置と(53)式のテーブル84を有している。整数グリッド上の相違度算出モジュール81は2次曲面係数算出モジュール82、整数グリッド位置と(53)式のテーブル84に、2次曲面係数算出モジュール82は整数グリッド上の相違度算出モジュール81、整数グリッド位置と(53)式のテーブル84、位置算出モジュール83に、位置算出モジュール83は2次曲面係数算出モジュール82に、整数グリッド位置と(53)式のテーブル84は整数グリッド上の相違度算出モジュール81、2次曲面係数算出モジュール82に、それぞれ接続されている。
整数グリッド上の相違度算出モジュール81、2次曲面係数算出モジュール82、位置算出モジュール83は、それぞれ、図4に示した第3の実施の形態の整数グリッド上の相違度算出モジュール41、2次曲面係数算出モジュール42、位置算出モジュール43に対応する。
整数グリッド位置と(53)式のテーブル84は、図6で示した整数グリッド位置と(53)式のテーブル64と同様に、整数グリッド位置と前記(53)式との対応関係を記憶するテーブルである。
図8に示すように、整数グリッド位置と(53)式のテーブル84は、テーブル内の整数グリッド位置に合うように、整数グリッドを増加させ、その値を整数グリッド上の相違度算出モジュール81にフィードバックさせてもよい。テーブルに記述のない余った整数グリッドは捨てて計算すればよい。
そして、整数グリッド位置がテーブル内に存在すれば、対応する前記(53)式の算出結果を2次曲面係数算出モジュール82に渡す。
さらに、図9に示すように、第4の実施の形態を変形したものであってもよい。
図9に示す第4の実施の形態は、整数グリッド上の相違度算出モジュール91、2次曲面係数算出モジュール92、位置算出モジュール93、整数グリッド位置と(54)式のテーブル94を有している。整数グリッド上の相違度算出モジュール91は2次曲面係数算出モジュール92、整数グリッド位置と(54)式のテーブル94に、2次曲面係数算出モジュール92は整数グリッド上の相違度算出モジュール91、整数グリッド位置と(54)式のテーブル94、位置算出モジュール93に、位置算出モジュール93は2次曲面係数算出モジュール92に、整数グリッド位置と(54)式のテーブル94は整数グリッド上の相違度算出モジュール91、2次曲面係数算出モジュール92に、それぞれ接続されている。
整数グリッド上の相違度算出モジュール91、2次曲面係数算出モジュール92、位置算出モジュール93は、それぞれ、図5に示した第3の実施の形態の整数グリッド上の相違度算出モジュール51、2次曲面係数算出モジュール52、位置算出モジュール53に対応する。
整数グリッド位置と(54)式のテーブル94は、図7で示した整数グリッド位置と(54)式のテーブル74と同様に、整数グリッド位置と前記(54)式との対応関係を記憶するテーブルである。整数グリッド位置と(54)式のテーブル94は、図7に示した整数グリッド位置と(54)式のテーブル74と同様の処理を行う。
つまり、整数グリッド位置と(54)式のテーブル94は、テーブル内の整数グリッド位置に合うように、整数グリッドを増加させ、その値を整数グリッド上の相違度算出モジュール91にフィードバックさせてもよい。テーブルに記述のない余った整数グリッドは捨てて計算すればよい。
そして、整数グリッド位置がテーブル内に存在すれば、対応する前記(54)式の算出結果を2次曲面係数算出モジュール92に渡す。
<4.8.第5の実施の形態>
<4.1.3>で示したように、多次元に拡張することも可能である。これまでの2次曲面係数は、a,b,c,d,eであったが、多次元拡張する場合には、(73)式を求めればよい。
Figure 0004867705
ただし係数fは算出不要である。
さらに、<4.1.3>では、行列Aが半正定値(Aの固有値が全て0以上)のとき、(74)式を用いてhを求めることをしたが、もっと単純にしてもよい。
Figure 0004867705
すなわち、行列Aが正定値(Aの固有値が全て0より大)のとき、(74)式を用いてhを求めるようにしてもよい。
実際の計算上は、逆行列を求めて乗算するよりも、他の高速手法で連立方程式を求めたほうが早いため、(74)の式を忠実に処理する必要はない。
<4.9.第6の実施の形態>
さらに高精度化方式を実装してもよい。
第6の実施の形態は、第1の実施の形態に高精度化方式を実装したものである。
第6の実施の形態は、図10に示すように、上下、左右方向画素ずらしモジュール101、第1の実施の形態の構成102、第1の実施の形態の構成103、(51)式算出モジュール104を有している。上下、左右方向画素ずらしモジュール101は第1の実施の形態の構成103に、第1の実施の形態の構成102は(51)式算出モジュール104に、第1の実施の形態の構成103は上下、左右方向画素ずらしモジュール101、(51)式算出モジュール104に、(51)式算出モジュール104は第1の実施の形態の構成102、第1の実施の形態の構成103に、それぞれ接続されている。
上下、左右方向画素ずらしモジュール101は、入力画像2を上下、左右方向にそれぞれ0.5画素ずらした画像を作成する。
この画像と入力画像1を用いて、第1の実施の形態の構成103は、第1の実施の形態による処理を行い、tsを求める。
また、第1の実施の形態の構成102は、入力画像1と入力画像2とから第1の実施の形態と同様にして、toを求める。
そして、第1の実施の形態の構成102からのto、第1の実施の形態の構成103からのtsを用いて、(51)式算出モジュール104が最終的な移動位置を(51)式で求める。
Figure 0004867705
ここでは、変換が2次元の例を示したが、N次元の場合でも同様である。前記(45)式を用いて、最終的なhを求めればよい。
あるいは、前記(47)式、前記(48)式、又は前記(49)式を用いてもよい。これらの式を用いる場合、2次元であれば、上下方向に0.5画素ずらした画像を1種、左右方向に0.5画素ずらした画像を1種作成することになる。図11では、前記(46)式を用いる第6の実施の形態の変形例を示している。
第6の実施の形態の変形例は、図11に示すように、上下方向画素ずらしモジュール111、左右方向画素ずらしモジュール112、第1の実施の形態の構成113、第1の実施の形態の構成114、第1の実施の形態の構成115、(46)式算出モジュール116を有している。上下方向画素ずらしモジュール111は第1の実施の形態の構成114に、左右方向画素ずらしモジュール112は第1の実施の形態の構成115に、第1の実施の形態の構成113は(46)式算出モジュール116に、第1の実施の形態の構成114は上下方向画素ずらしモジュール111、(46)式算出モジュール116に、第1の実施の形態の構成115は左右方向画素ずらしモジュール112、(46)式算出モジュール116に、(46)式算出モジュール116は第1の実施の形態の構成113、第1の実施の形態の構成114、第1の実施の形態の構成115に、それぞれ接続されている。
上下方向画素ずらしモジュール111は、入力画像2を上下方向にそれぞれ0.5画素ずらした画像を作成する。
この画像と入力画像1を用いて、第1の実施の形態の構成114は、第1の実施の形態による処理を行い、tsを求める。
左右方向画素ずらしモジュール112は、入力画像2を左右方向にそれぞれ0.5画素ずらした画像を作成する。
この画像と入力画像1を用いて、第1の実施の形態の構成115は、第1の実施の形態による処理を行い、tsを求める。
また、第1の実施の形態の構成113は、入力画像1と入力画像2から第1の実施の形態と同様にして、toを求める。
そして、第1の実施の形態の構成113からのto、第1の実施の形態の構成114からのts、第1の実施の形態の構成115からのtsを用いて、(46)式算出モジュール116が最終的な移動位置を前記(46)式で求める。
<4.10.第7の実施の形態>
さらに、具体的な応用例を示す。
特許文献3には、画像を重ね合わせて、パノラマ合成を行う技術の例が記載されている。
特許文献3記載の技術では、13×13の領域毎に、Lucas−Kanade法と呼ばれる画像位置合わせ技術を用いて、例えば図12に示すような2枚の画像(画像A121、画像B122)の位置合わせをサブピクセル単位で行う。このような領域が複数存在していれば、2枚の画像で各領域の中心点の対応を取ることができる。このように対応が取れている点ペアが4点以上あれば、特許文献3記載の数式16に示されるような射影変換を求めることができる。この射影変換を用いて、2枚の画像(画像A121、画像B122)のパノラマ合成(合成画像123)をすることができる。
Lucas−Kanade法の代わりに、前述の実施の形態の手法を用いることで、同等の処理を行うことができる。
なお、Lucas−Kanade法は勾配法の一種である。勾配法は2画像間の2乗誤差を最小化させる特性をもつ手法である。本実施の形態は、2画像間の距離(相違度)に様々な手法を用いることができるため、Lucas−Kanade法のような勾配法よりも柔軟で優れていると言える。
<4.11.第8の実施の形態>
別の応用例を示す。動画圧縮への応用例である。
動画圧縮では、局所的な領域(マクロブロック)毎に、隣接するフレーム内で似ている領域を探索し、似ている領域への動きベクトルを符号化することによって、圧縮率を上げる処理が行われる。これは、主に動き補償方式で採用されている。
H.264(ITU−T勧告H.264)等では、上記動きベクトルの単位がサブピクセルとなっている。すなわち、1画素よりも小さな単位で動きベクトルを推定する。本実施の形態を動きベクトル推定に用いることができる。
まず、図13に示すように、画像A131のマクロブロック内の画像と似ている(相違度が小さい)画像B132内の領域を探索する。
最初、この探索は、整数画素単位で行う。
整数画素単位で相違度が最小となる動きベクトルが求まったとする。
次に、その周囲8画素の相違度を算出する。
第1の実施の形態の手法を用いて、サブピクセル単位の動きベクトルを算出することが可能となる。
サブピクセル単位は、1/8等の単位で量子化する必要がある場合には、tの各要素をその単位(例えば1/8)で量子化(丸め処理)すればよい。
<4.12.実施の形態の補足>
以上の実施の形態で、中心の整数グリッドが最小の相違度となるように予め移動させておくことを前提としてきたが、これは必ずしも必要ない。
中心の整数グリッドが整数の範囲で最小であれば、精度が高まるというだけであるため、この前提を外してもよい。
行列Aの行列式が0の場合には、改めて、最小の相違度となる整数グリッドを探してもよい。
<5.本実施の形態による効果>
<5.1.演算量>
<5.1.1.グリッド点の量>
グリッド点の量は、特許文献1に記載の技術で25点であるのに対し、本実施の形態では9点でも構わない。
ここで、グリッド点の量が全体の処理負荷を決定する。なぜなら、1グリッドの相違度を算出するためには領域Wの画素数分程度の積和演算量が必要であるからである。Wの画素数は少ない場合でも100画素程度ある。通常、1000画素程度である。それに対して移動位置を算出するアルゴリズムに必要な演算負荷は数十回の積和演算である。
よって、グリッド点の量に起因する演算量は、9/25程度に改善される。しかもこの演算量が支配的なので、全体の演算量も同程度に改善される。
<5.1.2.最小値算出負荷>
本実施の形態では、直線毎に最小値を算出する負荷がない。また、x=±1の直線上でy=±3の範囲に最小値がない場合や、y=±1の直線上でx=±3の範囲に最小値がない場合でも推定可能である。
<5.2.グリッド点設定の柔軟性>
本実施の形態では、グリッド点は、行列Bのランクが6以上であれば何でもよい。非常に柔軟に設定可能である。つまり、たまたま存在しているグリッド点の相違度を利用して位置合わせが可能である。例えば、階層的に位置合わせを行う場合、グリッド点の位置が非均等となる可能性が高いが、そのような場合でも利用可能である。
階層的に位置合わせを行う方式の例としては、信学技報(IE81−54)古閑他「会議テレビ信号の動き補償フレーム間符号化」を挙げることができる。
<5.3.推定精度>
推定精度に関して、実験を行った結果を示す。
実験画像では、サブピクセル単位で画素位置を人工的にずらして評価を行う。512×512画素の画像を用いて、これに標準偏差σ=7のガウシアンフィルタ(入力光学系のPSFを想定している)をかけて帯域制限した後に10対1にサブサンプリングして1/10の縮小を行う。こうして作成した縮小画像の中心の30×30画素を用いて実験を行った。なお、サブサンプリング位置を1画素ずらすことによって、縮小画像では0.1画素の画素移動を発生させることができる。
実験時には、画素位置移動を−0.5〜0.5の範囲で0.1刻みで発生させる。各手法で位置移動を推定して、推定値のRMSEを算出する。
実験結果を図14に示す。横軸に画像の種類を示し、縦軸にRMSEを示している。各画像に、特許文献1記載の技術、本実施の形態、特許文献1記載の技術を高精度化したもの、本実施の形態の高精度化1、本実施の形態の高精度化2の結果を示している。複数の画像でRMSEを計測した結果が図14である。
さらに、各画像のRMSEをさらに平均したものが図15に示した表である。
特許文献1記載の技術よりも本実施の形態の精度が高い(RMSEが小さい)ことが分かる。本実施の形態の演算負荷は特許文献1記載の技術の演算負荷の9/25であることを考慮すると、本実施の形態の効果は高い。
さらに、高精度化を行った場合、特許文献1記載の技術と本実施の形態の結果は同じ程度である。演算負荷上は、特許文献1記載の技術では2回補間画像を作成するのに対し、本実施の形態では1回の補間画像の作成で済む。本実施の形態の効果は高い。
さらに高精度化2では、本実施の形態で2回の補間画像を作成した場合の例である。この場合、特許文献1記載の技術よりもさらに高い推定精度を得ることができる。
以上示したように、本実施の形態は特許文献1記載の技術よりも、低演算負荷で、かつ、サブピクセル位置合わせ精度が高いという顕著なメリットがある。
なお、数式を用いて説明したが、数式には、その数式と同等のものを含む。同等のものとは、その数式そのものの他に、最終的な結果に影響を及ぼさない程度の数式の変形、または数式をアルゴリズミックな解法で解くこと等が含まれる。
図26を参照して、前述の実施の形態のハードウェア構成例について説明する。図26に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成されるものであり、スキャナ等のデータ読み取り部2617と、プリンタなどのデータ出力部2618を備えたハードウェア構成例を示している。
CPU(Central Processing Unit)2601は、上述の実施の形態において説明した各種のモジュール、すなわち、整数グリッド上の相違度算出モジュール11、2次曲面係数算出モジュール12、位置算出モジュール13等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
ROM(Read Only Memory)2602は、CPU2601が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)2603は、CPU2601の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス2604により相互に接続されている。
ホストバス2604は、ブリッジ2605を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス2606に接続されている。
キーボード2608、マウス等のポインティングデバイス2609は、操作者により操作される入力デバイスである。ディスプレイ2610は、液晶表示装置又はCRT(Cathode Ray Tube)などからなり、各種情報をテキストやイメージ情報として表示する。
HDD(Hard Disk Drive)2611は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU2601によって実行するプログラムや情報を記録又は再生させる。ハードディスクは、入力された画像や合成画像などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
ドライブ2612は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体2613に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース2607、外部バス2606、ブリッジ2605、及びホストバス2604を介して接続されているRAM2603に供給する。リムーバブル記録媒体2613も、ハードディスクと同様のデータ記録領域として利用可能である。
接続ポート2614は、外部接続機器2615を接続するポートであり、USB、IEEE1394等の接続部を持つ。接続ポート2614は、インタフェース2607、及び外部バス2606、ブリッジ2605、ホストバス2604等を介してCPU2601等に接続されている。通信部2616は、ネットワークに接続され、外部とのデータ通信処理を実行する。データ読み取り部2617は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部2618は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
なお、図26に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図26に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図26に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(多機能複写機とも呼ばれ、スキャナ、プリンタ、複写機、ファックス等の機能を有している)などに組み込まれていてもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、上記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM)、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)等が含まれる。
そして、上記のプログラム又はその一部は、上記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組合せ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、上記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
第1の実施の形態の構成例についての概念的なモジュール構成図である。 第2−1の実施の形態の構成例についての概念的なモジュール構成図である。 第2−2の実施の形態の別の構成例についての概念的なモジュール構成図である。 第3の実施の形態の構成例についての概念的なモジュール構成図である。 第3の実施の形態の別の構成例についての概念的なモジュール構成図である。 第4の実施の形態の構成例についての概念的なモジュール構成図である。 第4の実施の形態の別の構成例についての概念的なモジュール構成図である。 第4の実施の形態の別の構成例についての概念的なモジュール構成図である。 第4の実施の形態の別の構成例についての概念的なモジュール構成図である。 第6の実施の形態の構成例についての概念的なモジュール構成図である。 第6の実施の形態の別の構成例についての概念的なモジュール構成図である。 第7の実施の形態による合成処理例を示す説明図である。 第8の実施の形態による処理例を示す説明図である。 実験結果の例を示すグラフである。 実験結果の例を示す表である。 整数グリッドの例を示す説明図である。 サブピクセル精度での移動位置の例を示す説明図である。 重み係数を設定する例を示す説明図である。 ボロノイ分割結果の例を示す説明図である。 重み係数を設定する例を示す説明図である。 重み係数を設定する例を示す説明図である。 整数グリッドの例を示す説明図である。 SSD値の変化の例を示す説明図である。 近似2次曲面の例を示す説明図である。 等SSD線の例を示す説明図である。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
符号の説明
11…整数グリッド上の相違度算出モジュール
12…2次曲面係数算出モジュール
13…位置算出モジュール
21…整数グリッド上の相違度算出モジュール
22…2次曲面係数算出モジュール
23…位置算出モジュール
24…行列B算出モジュール
25…(53)式算出モジュール
31…整数グリッド上の相違度算出モジュール
32…2次曲面係数算出モジュール
33…位置算出モジュール
34…行列B算出モジュール
35…重み行列W算出モジュール
36…(54)式算出モジュール
41…整数グリッド上の相違度算出モジュール
42…2次曲面係数算出モジュール
43…位置算出モジュール
44…行列B算出モジュール
45…(71)式正則性検証モジュール
46…(53)式算出モジュール
51…整数グリッド上の相違度算出モジュール
52…2次曲面係数算出モジュール
53…位置算出モジュール
54…行列B、W算出モジュール
55…(72)式正則性検証モジュール
56…(54)式算出モジュール
61…整数グリッド上の相違度算出モジュール
62…2次曲面係数算出モジュール
63…位置算出モジュール
64…整数グリッド位置と(53)式のテーブル
65…行列B算出モジュール
66…(71)式正則性検証モジュール
67…(53)式算出モジュール
71…整数グリッド上の相違度算出モジュール
72…2次曲面係数算出モジュール
73…位置算出モジュール
74…整数グリッド位置と(54)式のテーブル
75…行列B、W算出モジュール
76…(72)式正則性検証モジュール
77…(54)式算出モジュール
81…整数グリッド上の相違度算出モジュール
82…2次曲面係数算出モジュール
83…位置算出モジュール
84…整数グリッド位置と(53)式のテーブル
91…整数グリッド上の相違度算出モジュール
92…2次曲面係数算出モジュール
93…位置算出モジュール
94…整数グリッド位置と(54)式のテーブル
101…上下、左右方向画素ずらしモジュール
102…第1の実施の形態の構成
103…第1の実施の形態の構成
104…(51)式算出モジュール
111…上下方向画素ずらしモジュール
112…左右方向画素ずらしモジュール
113…第1の実施の形態の構成
114…第1の実施の形態の構成
115…第1の実施の形態の構成
116…(46)式算出モジュール

Claims (20)

  1. 複数の画像を入力する画像入力手段と、
    前記画像入力手段によって入力された画像間の整数グリッド上の相違度又は類似度を算出する相違度算出手段と、
    サブ量子化精度での相違度又は類似度を求める関数となる2次曲面の係数を算出する係数算出手段と、
    前記係数算出手段によって算出された係数のサブ量子化精度での推定を行う推定手段
    を具備し、
    前記係数算出手段は、近似の場合に前記各整数グリッド位置に関する重み付けを行い、該重み付けは、各整数グリッドを中心とするボロノイ分割領域の面積又は超体積である
    ことを特徴とする画像処理装置。
  2. 前記ボロノイ分割を行う領域は、2次曲面で近似を行いたい領域内のみに限定する
    ことを特徴とする請求項に記載の画像処理装置。
  3. (52)式と同等のものが存在するか否かを判断する判断手段
    Figure 0004867705
    をさらに具備し、
    前記判断手段によって存在しないと判断された場合には、前記ボロノイ分割を行う領域を広げる
    ことを特徴とする請求項に記載の画像処理装置。
  4. 前記領域を広げる場合は、全軸で対称となるように1整数グリッドずつ広げる
    ことを特徴とする請求項に記載の画像処理装置。
  5. 整数グリッド上で、整数の範囲で相違度が最小となる点を探索する探索手段
    をさらに具備することを特徴とする請求項に記載の画像処理装置。
  6. 前記相違度算出手段によって算出される相違度又は類似度は、N次元であり、N変数の2次曲面の係数を推定するものであり
    さらに、
    (25)式における行列Aと同等のものが半正定値であるか否かを検証する検証手段と、
    Figure 0004867705
    Moor−Penroseの一般化逆行列と同等のものを算出する一般化逆行列算出手段と、
    サブ量子化精度での変換係数を算出する変換係数算出手段
    を具備することを特徴とする請求項1に記載の画像処理装置。
  7. 前記相違度算出手段によって算出される相違度又は類似度は、N次元であり、N変数の2次曲面の係数を推定するものであり
    さらに、
    (25)式における行列Aと同等のものが正定値であるか否かを検証する検証手段と、
    Figure 0004867705
    サブ量子化精度での変換係数を算出する変換係数算出手段
    を具備することを特徴とする請求項1に記載の画像処理装置。
  8. 前記相違度算出手段によって算出される相違度又は類似度は、平行移動であり、2変数の2次曲面の係数を推定するものであり
    さらに、
    (8)式と同等のものが成り立つか否かを検証する検証手段と、
    Figure 0004867705
    (9)式と同等のものを算出する算出手段
    Figure 0004867705
    を具備することを特徴とする請求項1に記載の画像処理装置。
  9. さらに、
    (10)式と同等のものを検証する検証手段と、
    Figure 0004867705
    (12)式と同等のものを算出する算出手段
    Figure 0004867705
    を具備することを特徴とする請求項6、7又は8に記載の画像処理装置。
  10. 相違度又は類似度を算出する整数グリッド位置を固定として、予め(53)式と同等のもの又は(54)式と同等のものを計算し、(55)式と同等のもの又は(56)式と同等のもので2次曲面の係数を推定する
    Figure 0004867705
    Figure 0004867705
    Figure 0004867705
    Figure 0004867705
    ことを特徴とする請求項1に記載の画像処理装置。
  11. 相違度又は類似度を算出する整数グリッド位置は、縦3×横3の9点とし、(35)式と同等のものと等価の式を用いて、2次曲面の係数を推定する
    Figure 0004867705
    ことを特徴とする請求項1に記載の画像処理装置。
  12. 相違度又は類似度を算出する整数グリッド位置は、縦3×横3の9点とし、(40)式と同等のものと等価の式を用いて、2次曲面の係数を推定する
    Figure 0004867705
    ことを特徴とする請求項1に記載の画像処理装置。
  13. さらに、
    相違度又は類似度を算出した整数グリッド位置を入力するグリッド位置入力手段と、
    行列Bを算出する行列算出手段と、
    連立一次方程式(19)式と同等のものを計算する計算手段
    Figure 0004867705
    を具備することを特徴とする請求項10、11又は12に記載の画像処理装置。
  14. さらに、
    行列Bと同等のもののランクを算出する又は(71)式と同等のものの正則性を検証する検証手段と、
    Figure 0004867705
    相違度を算出する整数グリッドを増加させる整数グリッド増加手段
    を具備することを特徴とする請求項13に記載の画像処理装置。
  15. さらに、
    整数グリッド位置と、行列(53)式と同等のもの又は行列(54)式と同等のものの関係を保持する関係保持手段と、
    入力された整数グリッド位置が前記関係保持手段に保持されているか否かを判断する判断手段
    Figure 0004867705
    Figure 0004867705
    を具備し、
    前記係数算出手段は、テーブル内の行列(53)式と同等のもの又は行列(54)式と同等のものを用いて、2次曲面の係数を算出する
    ことを特徴とする請求項1に記載の画像処理装置。
  16. 前記判断手段によって、入力された整数グリッド位置が前記関係保持手段に保持されていないと判断された場合、整数グリッドを増加させる整数グリッド増加手段
    をさらに具備することを特徴とする請求項15に記載の画像処理装置。
  17. 前記推定手段は、画像ブロックの整数移動位置の相違度又は類似度を複数算出し、それを用いてサブピクセル精度の動きベクトルを推定する
    ことを特徴とする請求項1に記載の画像処理装置。
  18. さらに、
    全ての変換係数を0.5グリッド分ずらす画像を作成する画像作成手段
    を具備し、
    前記推定手段は、前記画像作成手段によって生成された画像で求めた位置と、ずらす前の画像で求めた位置とから、(45)式と同等のもので位置を求める
    Figure 0004867705
    ことを特徴とする請求項1に記載の画像処理装置。
  19. さらに、
    一つ以上の変換係数を0.5グリッド分ずらす画像を作成する画像作成手段
    を具備し、
    前記推定手段は、前記画像作成手段によって生成された画像で求めた位置と、ずらす前の画像で求めた位置とから、(47)式と同等のもの、(48)式と同等のもの又は(49)式と同等のものを用いた式で位置を求める
    Figure 0004867705
    Figure 0004867705
    Figure 0004867705
    ことを特徴とする請求項1に記載の画像処理装置。
  20. 画像処理システムを、
    複数の画像を入力する画像入力手段と、
    前記画像入力手段によって入力された画像間の整数グリッド上の相違度又は類似度を算出する相違度算出手段と、
    サブ量子化精度での相違度又は類似度を求める関数となる2次曲面の係数を算出する係数算出手段と、
    前記係数算出手段によって算出された係数のサブ量子化精度での推定を行う推定手段
    として機能させ
    前記係数算出手段は、近似の場合に前記各整数グリッド位置に関する重み付けを行い、該重み付けは、各整数グリッドを中心とするボロノイ分割領域の面積又は超体積である
    ことを特徴とする画像処理プログラム。
JP2007043361A 2007-02-23 2007-02-23 画像処理装置及び画像処理プログラム Expired - Fee Related JP4867705B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007043361A JP4867705B2 (ja) 2007-02-23 2007-02-23 画像処理装置及び画像処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007043361A JP4867705B2 (ja) 2007-02-23 2007-02-23 画像処理装置及び画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2008209971A JP2008209971A (ja) 2008-09-11
JP4867705B2 true JP4867705B2 (ja) 2012-02-01

Family

ID=39786247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007043361A Expired - Fee Related JP4867705B2 (ja) 2007-02-23 2007-02-23 画像処理装置及び画像処理プログラム

Country Status (1)

Country Link
JP (1) JP4867705B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5848539B2 (ja) * 2011-07-26 2016-01-27 日立アロカメディカル株式会社 超音波データ処理装置
JP6978854B2 (ja) * 2017-05-15 2021-12-08 キヤノン株式会社 リソグラフィ装置、および物品製造方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05120436A (ja) * 1991-10-25 1993-05-18 Yaskawa Electric Corp テンプレートマツチング方法
JP3870491B2 (ja) * 1997-07-02 2007-01-17 松下電器産業株式会社 画像間対応検出方法およびその装置
WO2004063991A1 (ja) * 2003-01-14 2004-07-29 The Circle For The Promotion Of Science And Engineering 画像のサブピクセルマッチングにおける多パラメータ高精度同時推定方法及び多パラメータ高精度同時推定プログラム

Also Published As

Publication number Publication date
JP2008209971A (ja) 2008-09-11

Similar Documents

Publication Publication Date Title
JP4461165B2 (ja) 画像処理装置、方法およびプログラム
Yu et al. Robust video stabilization by optimization in cnn weight space
US7251366B1 (en) Fast high-accuracy multi-dimensional pattern inspection
US9679357B2 (en) Image processing device, and an image processing method
US8923638B2 (en) Algorithm selection for structure from motion
US20060193535A1 (en) Image matching method and image interpolation method using the same
EP2633682B1 (en) Methods and systems for processing a video for stabilization and retargeting
US8885941B2 (en) System and method for estimating spatially varying defocus blur in a digital image
KR101634562B1 (ko) 저해상도 비디오로부터 고해상도 비디오를 생성하는 방법
US20110037894A1 (en) Enhanced image and video super-resolution processing
JP3557982B2 (ja) オプティカルフロー推定方法
CN108921801B (zh) 用于生成图像的方法和装置
JP2005506626A (ja) 動き推定ユニット及び方法並びにかような動き推定ユニットを備えた画像処理装置
Huang et al. Stablenet: semi-online, multi-scale deep video stabilization
JP4867705B2 (ja) 画像処理装置及び画像処理プログラム
JP4560023B2 (ja) 画像マッチング装置、画像マッチングプログラム及び画像マッチング方法
Mégret et al. Bidirectional composition on lie groups for gradient-based image alignment
TWI764387B (zh) 產生重建影像的方法
Zhou et al. Phase-based frame rate up-conversion for depth video
JP4821653B2 (ja) 画像処理装置及び画像処理プログラム
JP4507677B2 (ja) 画像処理方法および装置、並びにプログラム
Zheng et al. Motion estimation via hierarchical block matching and graph cut
Huang et al. DMCVS: Decomposed motion compensation‐based video stabilization
Valtonen Örnhag Efficient Radial Distortion Correction for Planar Motion
JP2934151B2 (ja) 動きベクトル探索方法と装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110928

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111018

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111031

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141125

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees