(57)【要約】【課題】撮像画像の使用枚数を増加させることなく、ダイナミックレンジの拡大された高解像度画像を生成する。【解決手段】撮像位置決定装置１０が設定した撮像位置で撮像された複数の撮像画像データを取得して高解像度画像データを生成するダイナミックレンジ拡大超解像処理部３５と、上記撮像画像データの１画素に相当する形状の基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、上記撮像画像データの１画素に相当する形状の中心に位置する、上記高解像度画像データの１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように、撮像画像データの撮像位置を設定し、かつ複数種類の１つの撮像条件で撮像する撮像画像データについては、上記基準画素領域の全体に対して、上記中心領域が均一に配置される第１撮像位置を設定する撮像位置計算部１２を備えている撮像位置決定装置１０とを備えている。【選択図】図２
2010073035.tif 000002
【特許請求の範囲】
【請求項１】
同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置であって、
上記複数の低解像度画像の撮像位置を設定する撮像位置決定手段と、
上記撮像位置決定手段が設定した撮像位置で撮像された上記複数の低解像度画像を取得して上記高解像度画像を生成する高解像度画像生成手段とを備え、
上記撮像位置決定手段は、
上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、
上記低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように、上記複数の低解像度画像の撮像位置を設定し、かつ
上記複数種類のうち、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置を設定する第１撮像位置設定手段を備えていることを特徴とする画像生成装置。
【請求項２】
上記第１撮像位置設定手段は、マトリクス状に配列された上記基準画素領域の１つに含まれる、上記中心領域間の距離を算出すると共に、当該基準画素領域に含まれる中心領域と、当該基準画素領域に隣接する基準画素領域に含まれる各中心領域との距離を算出し、算出した距離の最小値が最大となるように上記第１撮像位置を設定することを特徴とする請求項１に記載の画像生成装置。
【請求項３】
上記第１撮像位置以外の撮像位置を、上記基準画素領域内に総撮像回数に等しい数の中心領域をマトリクス状に配置したときの、各中心領域のそれぞれに対応する第２撮像位置から選択して設定する第２撮像位置設定手段を備えていることを特徴とする請求項１または２に記載の画像生成装置。
【請求項４】
上記第２撮像位置のうち上記第２撮像位置設定手段によって選択されなかった撮像位置から、上記第１撮像位置と最短距離にある撮像位置を選択し、該選択した撮像位置と、上記第１撮像位置とを重み付け平均して該第１撮像位置を補正する重み付け撮像位置設定手段を備えていることを特徴とする請求項３に記載の画像生成装置。
【請求項５】
上記撮像条件は、露光時間、絞り、光学フィルタ、および撮像感度の少なくとも１つであることを特徴とする請求項１から４の何れか１項に記載の画像生成装置。
【請求項６】
上記撮像条件は、上記撮像対象の明度、反射率、および上記撮像対象に照射される照明の強度の少なくとも一つに応じて設定されていることを特徴とする請求項１から５の何れか１項に記載の画像生成装置。
【請求項７】
同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置であって、
上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、
上記複数の低解像度画像は、該低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように撮像されたものであると共に、
上記複数種類のうちの１つの撮像条件で撮像する低解像度画像は、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置されるように撮像されたものであることを特徴とする画像生成装置。
【請求項８】
同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置の画像生成方法であって、
上記複数の低解像度画像の撮像位置を設定する撮像位置設定ステップと、
上記撮像位置設定ステップで設定された撮像位置で撮像された上記複数の低解像度画像を取得して上記高解像度画像を生成する高解像度画像生成ステップとを含み、
上記撮像位置設定ステップは、
上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、
上記低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように、上記複数の低解像度画像の撮像位置を設定し、かつ
上記複数種類のうち、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置を設定する第１撮像位置設定ステップを含むことを特徴とする画像生成方法。
【請求項９】
請求項１から６の何れか１項に記載の画像生成装置を動作させる画像生成プログラムであって、コンピュータを上記各手段として機能させるための画像生成プログラム。
【請求項１０】
請求項９に記載の画像生成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置等に関する。
【背景技術】
【０００２】
エリアセンサ等の撮像装置で撮像された画像の解像度は、当該撮像装置が有する撮像素子の密度に依存している。撮像装置のユーザは、より解像度の高い画像を撮像できる撮像装置を求めており、カメラメーカ各社は、解像度に対するユーザの要求に応じるために、撮像素子密度の高い高解像度カメラを次々と発売している。
【０００３】
しかしながら、撮像素子の高密度化にも限界はあり、また高密度化することにより撮像装置の製造コストが増大するという問題もある。そこで、同一の撮像対象に対して、少しずつ撮像位置をずらしながら複数回の撮像を行ない、撮像して得られた複数の撮像画像データを合成して、該撮像画像データよりも解像度の高い高解像度画像データを生成する高解像度化技術が従来から用いられている。
【０００４】
なお、「撮像位置をずらす」とは、撮像装置の撮像面（撮像素子が配列して構成される面）と撮像対象の被撮像面とが平行な状態を保ったまま、該平行な方向に上記撮像面と被撮像面との相対位置を変化させることを指す。これにより、撮像画像データのそれぞれは、撮像対象の異なる領域を反映させたものとなる。つまり、高解像度画像データは、撮像領域がずれた複数の撮像画像データに基づいて生成される。
【０００５】
画像の高解像度化技術は、一般的にイメージシフト処理と超解像処理との二種類に分けられる。イメージシフト処理では、同一の撮像対象について少しずつ撮像位置をずらしながら複数回の撮像を行なう。そして、複数の撮像画像データのそれぞれに含まれる画素と、高解像度画像データの画素との位置の対応を求め、撮像画像データの各画素の輝度値を高解像度画像データの各画素にマッピングすることにより、複数の撮像画像データを反映させた高解像度画像データを生成する。
【０００６】
なお、イメージシフト処理では、撮像画像データの全画素を高解像度画像データの画素にマッピングする必要があるため、撮像画像データの撮像位置及び撮像枚数は固定とする必要がある。したがって、イメージシフト処理では、低い計算コストで高解像度画像データを生成できるという利点を有している反面、解像度を飛躍的に向上させることは難しいという難点も有している。
【０００７】
一方、超解像処理では、まずイメージシフト処理と同様に、同一の撮像対象について少しずつ撮像位置をずらしながら複数回の撮像を行なう。そして、超解像処理では、高解像度画像データを推定し、推定した高解像度画像と、上記複数回の撮像にて得られた複数の撮像画像データとの差が小さくなるように上記仮定した高解像度画像データを更新する。
【０００８】
このような方式の超解像処理は、再構成型超解像処理と呼ばれている。再構成型超解像処理としては、例えばＭＬ（Maximum-likelihood）法、ＭＡＰ（Maximum A Posterior）法や、ＰＯＣＳ（Projection On to Convex Set）法等が一般に知られており、下記の非特許文献１及び特許文献１にも開示されている。
【０００９】
再構成型超解像処理では、使用する低解像度画像データ（撮像画像データ）の枚数に制限がないため、解像度を飛躍的に向上させることができる。その反面、再構成型超解像処理では、高解像度画像データの更新に繰り返し演算が用いられるので、イメージシフト処理と比べて、一般に計算コストが高くなる。
【００１０】
以下では、従来行なわれていた超解像処理についてより詳細に説明する。超解像処理（再構成型）は、生成される高解像度画像に対して定義される評価関数の最適化問題として定式化される。つまり、超解像処理は、「推定された撮像画像データ（高解像度画像データ）」と「観測された撮像画像データ（撮像画像データ）」との二乗誤差に基づく評価関数（誤差項）の最適化問題に帰着される。なお、超解像処理は、未知数の非常に大きな最適化計算であるため、その評価関数の最適化には例えば最急降下法などの繰返し計算法がよく利用される。
【００１１】
また、高解像度画像データの特性が既知である場合には、その高解像度画像データの特性に基づく評価関数（拘束項）を評価関数（誤差項）に付加してもよい。例えば、高解像度画像データのエッジ成分が小さいことが予めわかっている場合には、高解像度画像データにラプラシアンフィルタを乗じた画像データに基づく評価関数（拘束項）を付加すればよい。これにより、高解像度画像データのエッジ成分が小さいということを超解像処理に反映させることができるので、高解像度化の精度を向上させることができる。
【００１２】
ここで、従来の超解像処理方法における処理の流れについて図１７に基づいて説明する。図１７は、従来の超解像処理方法の一例を示すフローチャートである。ここでは、撮像位置を少しずつずらしながら同一の撮像対象を撮像して得られたｍ枚の撮像画像データから、１枚の高解像度画像データを生成することを想定している（ｍは正数）。なお、ｍは、撮像画像データを何倍に高解像度化するかに応じて決定される。具体的には、撮像画像データをｎ倍に高解像度化する場合には、例えばＮ２枚の撮像画像データがあればよい。
【００１３】
なお、撮像画像データがＮ２枚より少ない場合であってもＮ倍の高解像度化を行なうことは可能であるが、この場合には、Ｎ２枚の撮像画像データを用いる場合と比べて高解像度化の精度は低くなる。逆に、Ｎ２枚より多い撮像画像データを用いてＮ倍の高解像度化を行なうことによって、Ｎ２枚の撮像画像データを用いる場合と比べて高解像度化の精度を向上させることも可能である。
【００１４】
ここで、上記撮像画像データを取得する際の撮像対象の撮像方法について、図１８に基づいて説明する。図１８は、超解像処理に用いる撮像画像データの撮像方法を示す模式図である。なお、同図では簡単のため、９枚の撮像画像データを用いて１枚の高解像度画像データを生成する例、すなわちｍ＝９であり、撮像画像データを３倍に高解像度化する例を示している。
【００１５】
図１８の（ａ）〜（ｉ）は、ある撮像位置における１つの撮像素子の撮像領域を示す基準撮像領域Ｔ１と、該基準撮像領域Ｔ１から撮像位置を移動させたときの上記撮像素子の撮像領域Ｐ１１〜Ｐ９１との位置関係を示している。つまり、図１８では、Ｐ１１〜Ｐ９１、およびＴ１の矩形のサイズが、撮像素子１つの撮像領域を示している。
【００１６】
また、撮像領域Ｐ１１〜Ｐ９１の中心には、高解像度画像データの１画素に相当するサイズの矩形Ｐ１３〜Ｐ９３が図示されている。これは、撮像領域Ｐ１１〜Ｐ９１で取得された輝度値データが、高解像度画像データ上において、矩形Ｐ１３〜Ｐ９３で示す位置に反映されることを示している。同図では、３倍に高解像度化を行なうことを想定しているので、矩形Ｐ１３〜Ｐ９３の一辺の長さを、撮像領域Ｐ１１〜Ｐ９１の一辺の長さの１／３としている。
【００１７】
撮像画像データを３倍に高解像度化する場合には、図示のように、基準撮像領域Ｔ１に対して、該基準撮像領域Ｔの１／３の幅、すなわち、撮像画像データの１画素が撮像する撮像領域の１／３幅で撮像領域が移動するように撮像位置を移動させながら、各撮像位置にて１回ずつ撮像を行なえばよい。
【００１８】
これにより、図示のように、基準撮像領域Ｔを３×３のマトリクスに分割した各領域に９つの矩形Ｐ１３〜Ｐ９３が配列することになる。つまり、撮像素子１つ分の撮像領域である基準撮像領域Ｔを３×３のマトリクスに分割した各領域に、撮像領域Ｐ１１〜Ｐ９１で撮像した輝度値データを反映させることによって、画素数が９倍、すなわち３倍の解像度を有する高解像度画像データを生成することができる。
【００１９】
なお、撮像対象の形状及び色彩を正確に反映させた高解像度画像データを生成するためには、各撮像画像データを同一の撮像条件にて撮像する必要がある。ここで、撮像条件とは、露光時間（シャッタースピード）、照明強度、撮像感度、使用するフィルタ、及びアイリスの少なくとも１つを指す。
【００２０】
ここで、フローチャートの説明に戻る。従来の超解像処理方法では、上記のようにして撮像された１枚目からｍ枚目までのｍ枚の撮像画像データｙｍを取得する（Ｓ１０１）。なお、ｙｍは、上記１枚目からｍ枚目までのｍ枚の撮像画像データをベクトルとして表現したものであり、下記の数式（１）で表される。
【００２１】
【数１】
2010073035.tif 000003
【００２２】
なお、画像データのベクトル表現とは、上記数式（１）のように画像データの構成要素を一列に並べた１行のベクトルとして表現したものを指す。例えば、画像データを構成する要素のサイズが横Ｗ×縦Ｈである場合には、当該画像データは、１行×（Ｗ×Ｈ）列のベクトルとして表現される。
【００２３】
ここで、上述のように、超解像処理は、「推定された撮像画像データ（高解像度画像データ）」と「観測された撮像画像データ（撮像画像データ）」との二乗誤差に基づく評価関数（誤差項）の最適化問題に帰着される。すなわち、超解像処理を行なうためには、複数の撮像画像データと、当該複数の撮像画像データから推定される高解像度画像データとが必要である。
【００２４】
しかしながら、撮像画像データｙｍを取得した段階では、撮像画像データｙｍから推定される高解像度画像データを取得することはできない。そこで、次のステップでは初期高解像度画像データｈを取得する（Ｓ１０２）。初期高解像度画像データｈは、撮像画像データよりも解像度が高い（画像を構成する画素数が多い）画像データである。なお、初期高解像度画像データｈは、高解像度画像データをベクトルとして表現したものである。
【００２５】
初期高解像度画像データｈには予め初期値を設定しておけばよい。なお、撮像画像データを３倍に高解像度化する場合には、撮像画像データよりも解像度が高い高解像度画像データの各画素のサイズは、撮像画像データの各画素のサイズの１／３倍になる。
【００２６】
なお、初期高解像度画像データは、超解像処理によって撮像画像データとの差異が小さくなるように更新されるので、高解像度画像データの初期値、すなわち初期高解像度画像データの各画素の輝度値は、どのような値であってもよい。例えば、画像の全面が均一の灰色画像や黒画像、または白画像を初期高解像度画像データとして用いることができる。また、撮像画像データの中から選択した任意の１枚を初期高解像度画像データとして用いてもよい。
【００２７】
ここで、初期高解像度画像データｈと撮像画像データｙｍとでは、各画素のサイズ及び画素数が異なり、また撮像対象の撮像位置も異なっている。このため、高解像度画像データｈと撮像画像データｙｍとの差分を直接に計算することはできない。そこで、Ｓ１０１及びＳ１０２にて撮像画像データｙｍ及び高解像度画像データｈを取得すると、高解像度画像データｈを撮像画像データｙｍに位置合わせすると共に低解像度化して、ｍ枚の擬似低解像度画像データＢｍｈを生成する（Ｓ１０３）。
【００２８】
なお、Ｂｍは、高解像度画像データｈを撮像画像データｙｍに位置合わせすると共に低解像度化する行列である。Ｂｍは、下記の数式（２）に示すように、Ｍ１〜ＭｍとＣとの積で表される行列である。そして、行列Ｍ１〜Ｍｍは、高解像度画像データｈを撮像画像データｙｍの撮像位置に位置合わせした後、撮像画像データｙｍの各画素位置に相当する画素の輝度値をサンプリングする処理を示す行列である。また、Ｃは、観測モデル（撮像装置のカメラモデル）においてボケの原因となる点広がり関数（ＰＳＦ：Point Spread Function）を用いたコンボリューション（畳み込んで画像をぼかす処理）を表す行列である。
【００２９】
【数２】
2010073035.tif 000004
【００３０】
次に、上記Ｓ１０３にて生成した擬似低解像度画像データＢｍｈと撮像画像データｙｍとの差分を計算し、差分画像データＸｍを算出する（Ｓ１０４）。この差分画像データＸｍが「推定された撮像画像データ（高解像度画像データ）」と「観測された撮像画像データ（撮像画像データ）」との誤差である。
【００３１】
続いて、上記算出した差分画像データＸｍを評価関数に代入して、高解像度化の精度（高解像度画像データと撮像画像データとが相違している程度）を示す評価値Ｅを求める（Ｓ１０５）。評価関数としては、公知の様々なものを適用することができるが、例えば下記の数式（３）に示す評価関数を用いることによって、評価値Ｅを求めることができる。
【００３２】
【数３】
2010073035.tif 000005
【００３３】
上記数式（３）は、ＭＡＰ法と呼ばれる超解像処理手法にて使用される評価関数である。数式（３）は、誤差項と拘束項とから成る数式であり、数式（３）の右辺におけるＢｍｈ−ｙｍすなわち差分画像データＸｍが誤差項である。そして、数式（３）の右辺におけるｗ、Ｌ、及びｈの文字が含まれている項が拘束項である。なお、Ｌは高解像度画像データｈの事前確率情報を表す行列であり、ｗは拘束項の強さを表すパラメータである。このような拘束項を評価関数に組み込むことにより、高解像度画像データの事前確率情報を反映させて、より高精度な超解像処理を行なうことができる。
【００３４】
この数式（３）に差分画像データＸｍを代入して得られる値が評価値Ｅである。高解像度画像データｈが撮像画像データｙｍを正確に反映させているほど誤差項の値が小さくなり、それに伴って評価値Ｅも小さくなる。したがって、超解像処理は、評価値Ｅを最小化する高解像度画像データｈを探索する処理であるということができる。
【００３５】
次に、上記算出した評価値Ｅの値と、予め設定した閾値とを比較する（Ｓ１０６）。そして、評価値Ｅの値が上記閾値よりも小さい場合（Ｓ１０６でＹＥＳ）には、当該評価値Ｅの算出に用いた高解像度画像データｈを、超解像処理の結果として得られた最終的な高解像度画像データｈとして超解像処理を終了する。
【００３６】
なお、上記閾値は、要求される高解像度化の精度に応じて適宜変更することができる。例えば、より高い精度の高解像度化が要求される場合には、上記閾値を小さく設定すればよく、高解像度化精度は余り要求されないが、迅速な処理速度が要求される場合には、上記閾値を大きく設定すればよい。すなわち、上記閾値は、超解像処理の精度を決定するための値であり、超解像処理に要求される様々な条件に合わせて適宜設定することができる。
【００３７】
一方、評価値Ｅの値が上記閾値以上である場合（Ｓ１０６でＮＯ）には、評価値Ｅの値が小さくなるように繰り返し演算を行って、高解像度画像データｈを更新する（Ｓ１０７）。例えば、下記の数式（４）を用いることによって、高解像度画像データｈを更新することができる。
【００３８】
【数４】
2010073035.tif 000006
【００３９】
数式（４）は、最急降下法にて用いられる数式である。数式（４）によれば、高解像度画像データｈｋから、差分画像データに予め定めた重みβを掛け合わせた値を引くことにより、新規の高解像度画像データｈｋ＋１が生成されるようになっている。この演算を繰り返すことによって、評価値Ｅの値がより小さくなる高解像度画像データｈが生成される。なお、繰り返し演算は、最急降下法に限られず、公知の繰り返し演算手法を適用することもできる。
【００４０】
このようにして更新された高解像度画像データｈは、再度Ｓ１０３にて擬似的に低解像度化され、Ｓ１０４及びＳ１０５にて評価値Ｅの算出に用いられる。そして、Ｓ１０６にて再度評価値と閾値との比較が行なわれる。すなわち、超解像処理では、評価値Ｅの値が閾値よりも小さくなるまでＳ１０３〜Ｓ１０７の処理が繰り返し行なわれる。そして、評価値Ｅの値が閾値よりも小さくなったときの高解像度画像データｈを、超解像処理の結果として得られた最終的な高解像度画像データｈとして超解像処理を終了する。これにより、所望の倍率及び所望の精度で高解像度化された高解像度画像データｈを得ることができる。
【００４１】
以上が、従来行なわれていた超解像処理の手法である。このような超解像処理や、イメージシフト処理によって、複数の低解像度画像データから高解像度画像データを生成することができ、これにより、撮像装置の解像度を超える、精細な画像データを生成することが可能になる。
【非特許文献１】"画像の超解像度化処理"、杉本茂樹、奥富正敏、日本ロボット学会誌Vol.23,No.3,pp.305-309,2005
【特許文献１】特開２００６−１２７２４１号公報（２００６年５月１１日公開）
【非特許文献２】"多重絞りカラー画像の解析"、浅田尚紀、松山隆司、望月孝俊、情報処理学会論文誌Vol.32,No.10,pp.1338-1348,Oct.1991
【特許文献２】特開平０２−１７４４７０号公報（１９９０年７月５日公開）
【特許文献３】特開２００７−４９２２８号公報（２００７年２月２２日公開）
【発明の開示】
【発明が解決しようとする課題】
【００４２】
ところで、撮像素子は人の目に比べて、一度に捉えることのできる光の範囲（ダイナミックレンジ）が狭い。そのため、明暗差の大きい撮像対象を撮像した場合、撮像して得られた撮像画像データにおいて、明るい部分では階調がなくなる白とびや、暗い部分では一様に黒くなる黒つぶれが生じることがある。そして、白とびや黒つぶれが発生した箇所は撮像対象の色彩や形状を表すデータとはならない。
【００４３】
したがって、超解像処理やイメージシフト処理に用いる複数の低解像度画像データ（撮像画像データ）の中に、白とびや黒つぶれが生じたものが含まれている場合には、撮像対象の形状や色彩が高解像度画像データに正確に反映されず、そのため高解像度化処理の精度が低下する。従って、明暗差の大きい撮像対象を撮像する場合、高解像度化処理の精度の低下を防ぐために、なんらかの対策を打つ必要がある。
【００４４】
ここで、従来、撮像素子の実質的なダイナミックレンジを拡大する技術、すなわち、異なる撮像条件にて撮像して得られた複数の撮像画像データを画像処理して、ダイナミックレンジを拡大する技術が知られている。例えば、非特許文献２や、特許文献２、及び特許文献３には、露光時間の異なる複数の画像を用いて合成処理を行なうことにより、ダイナミックレンジを拡大することが記載されている。
【００４５】
上記の文献で記載されている方法によれば、ダイナミックレンジを拡大する対象となる撮像対象を、短時間露光及び長時間露光の２種類の露光時間で撮像する。そして、２種類の露光時間で撮像した各画像について、白とび画素、黒つぶれ画素等の不適正露光領域を検出し、それらの領域を短時間露光画像、もしくは長時間露光画像で置き換えるようにしている。
【００４６】
しかしながら、上記従来の方法では、置き換える対象となる画素は撮像位置が同じである必要がある。すなわち、上記従来の方法では、画素レベルで撮像位置が一致した一組の画像を用いる必要がある。撮像位置がずれた画像データで上記従来の方法を用いた場合には、画素の置き換えを行った箇所が、置き換えを行っていない箇所と不連続になってしまうからである。
【００４７】
このため、撮像位置をずらしながら撮像を行なう超解像処理においては、上記従来のダイナミックレンジ拡大方法を適用することは考えられていなかった。つまり、明暗差の大きい撮像対象を撮像する場合における高解像度化処理の精度の低下を防ぐための対策として上記従来のダイナミックレンジ拡大方法を採用することはできない。
【００４８】
本発明は、上記の問題に鑑みてなされたものであり、その第１の目的は、ダイナミックレンジの拡大された高解像度画像を生成することができる画像生成装置等を実現することにある。
【００４９】
また、ダイナミックレンジを拡大するためには、複数の撮像条件で撮像を行なう必要があるが、複数の撮像条件で撮像を行なう場合には、撮像条件の種類の数だけ撮像画像データの使用枚数が増え、これにより撮像時間が倍増するという問題がある。
【００５０】
ここで、撮像時間を低減するには、撮像画像データの使用枚数を減らすことが考えられるが、単純に使用枚数を減らしてしまうと、その分だけ撮像画像データの情報が欠落し、高解像化処理によって得られる高解像度画像データの品質を損なうおそれがある。
【００５１】
本発明は、上記の問題に鑑みてなされたものであり、その第２の目的は、撮像画像データの使用枚数を増加させることなく、ダイナミックレンジの拡大された高解像度画像データを生成することができる画像生成装置等を実現することにある。
【課題を解決するための手段】
【００５２】
本発明に係る画像生成装置は、上記課題を解決するために、同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置であって、上記複数の低解像度画像の撮像位置を設定する撮像位置決定手段と、上記撮像位置決定手段が設定した撮像位置で撮像された上記複数の低解像度画像を取得して上記高解像度画像を生成する高解像度画像生成手段とを備え、上記撮像位置決定手段は、上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、上記低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように、上記複数の低解像度画像の撮像位置を設定し、かつ上記複数種類のうち、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置を設定する第１撮像位置設定手段を備えていることを特徴としている。
【００５３】
また本発明に係る画像生成方法は、上記課題を解決するために、同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置の画像生成方法であって、上記複数の低解像度画像の撮像位置を設定する撮像位置設定ステップと、上記撮像位置設定ステップで設定された撮像位置で撮像された上記複数の低解像度画像を取得して上記高解像度画像を生成する高解像度画像生成ステップとを含み、上記撮像位置設定ステップは、上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、上記低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように、上記複数の低解像度画像の撮像位置を設定し、かつ上記複数種類のうち、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置を設定する第１撮像位置設定ステップを含むことを特徴としている。
【００５４】
上記の構成によれば、複数種類の撮像条件のいずれかで撮像した低解像度画像から、解像度を上げた１つの高解像度画像が生成される。すなわち、上記の構成によって生成される高解像度画像には、複数種類の撮像条件による低解像度画像が反映される。これにより、１種類の撮像条件のみで撮像された低解像度画像を用いる場合と比べて、高解像度画像のダイナミックレンジを拡大することができる。
【００５５】
なお、複数種類の撮像条件のいずれかで撮像した低解像度画像から高解像度画像を生成する場合には、撮像条件の違いを補うために正規化処理を行なえばよい。すなわち、複数種類の撮像条件のいずれか１つを選択し、選択した撮像条件で全ての低解像度画像を撮像したとみなすことができるように、各低解像度画像の輝度値を補正する正規化処理を行なうことにより、異なる撮像条件で撮像した低解像度画像から、ダイナミックレンジの拡大された１つの高解像度画像を生成することができる。
【００５６】
また、上記の構成によれば、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された基準画素領域の全体に対して、中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置が設定される。
【００５７】
ここで、本発明は、同一の撮像対象を、撮像位置を異ならせながら撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する技術を前提としている。
【００５８】
この技術においては、低解像度画像の１画素に相当する形状を有する基準画素領域が配置された基準撮像位置（図１８のＴ１）を仮想的に設定した場合に、低解像度画像の１画素に相当する領域（図１８のＰ１１〜Ｐ９１）の中心に位置する、高解像度画像の１画素に相当する中心領域（図１８のＰ１３〜Ｐ９３）が、基準画素領域内に含まれるように、撮像位置が設定される。
【００５９】
このように撮像位置を設定することにより、基準画素領域は、低解像度画像の１画素の輝度値データを生成する撮像素子の１画素によって、異なる位置から複数回撮像されることになる。この輝度値データを高解像度画像の１画素に相当する中心領域の輝度値データに反映させることによって、基準画素領域内の輝度値データ数を増やす、すなわち解像度を向上させることができる。
【００６０】
なお、図１８の例では、低解像度画像の１画素に相当する領域および基準画素領域を１つのみ図示しているが、実際の撮像装置では、撮像素子がマトリクス状に配列しているので、低解像度画像の１画素に相当する領域および基準画素領域もマトリクス状に配列することになる。
【００６１】
ここで、複数の低解像度画像を撮像するときに、撮像位置ごとに撮像条件を変える場合には、同じ撮像条件で撮像した低解像度画像に対応する中心領域が、マトリクス状に配列した基準画素領域内で密集することがある。
【００６２】
例えば、図１８の例において、（ａ）、（ｃ）、（ｅ）、（ｇ）、（ｉ）の５つを第１撮像条件で撮像し、残りを第２撮像条件で撮像した場合には、Ｐ１３、Ｐ３３、Ｐ５３、Ｐ７３、Ｐ９３の撮像条件が全て第１撮像条件になり、Ｐ２３、Ｐ４３、Ｐ６３、Ｐ８３の撮像条件が全て第２撮像条件になる。このような配置の中心領域を含む基準画素領域がマトリクス状に配列するので、Ｐ１３の左、左上、および上の３方向にも、第１撮像条件の中心領域が配置されることになる。同様に、Ｐ３３、Ｐ７３、Ｐ９３についても３方向に隣接する中心領域の撮像条件は第１撮像条件となる。つまり、この場合には、マトリクス状に配列した基準画素領域において、第１撮像条件の中心領域が４つ集まった密集領域が形成される。
【００６３】
このような密集領域が形成された場合に、第１撮像条件で撮像した低解像度画像に例えばハレーションが発生したときには、この密集領域の輝度値データがまとめて欠落するおそれがある。広い領域で輝度値データが欠落した場合には、欠落部分を補間したとしても、補間に用いられる輝度値データが、欠落部分から離れた位置となるので、生成される高解像度画像の高解像度化精度は著しく低下してしまう。
【００６４】
このような問題を解決するためには、例えば同じ撮像位置で撮像条件を変えて複数回撮像を行なうことにより、複数組の低解像度画像セットを生成して、各低解像度画像セットを合成した合成撮像画像セットを用いることが考えられる。なお、１組の撮像画像セットは、何れも同じ撮像条件で撮像されたものであり、１つの撮像画像セットによって１枚の高解像度画像を生成することができるものとする。
【００６５】
このように、複数組の低解像度画像セットを用いる場合には、低解像度画像セットの中にハレーションが発生した低解像度画像が含まれていたとしても、その低解像度画像の輝度値データを、他の低解像度画像セットに含まれる低解像度画像データで置換することができるので、高解像度化精度を低下させることがない。
【００６６】
しかしながら、複数組の低解像度画像セットを用いる場合には、用いる組数分だけ撮像に要する時間が倍増するという難点がある。
【００６７】
そこで、上記の構成によれば、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置を設定している。
【００６８】
これにより、複数の撮像条件のいずれかで例えばハレーションが発生した場合であっても、中心領域が均一に配置される第１撮像位置で撮像した低解像度画像の輝度値データによって欠落した輝度値データを補間することができる。つまり、均一に配置された中心領域から輝度値データを補間する場合には、欠落部分の補間に、該欠落部分と近い位置の輝度値データが用いられるので、高解像度画像の高解像度化精度の低下を抑えることができる。
【００６９】
すなわち、上記の構成によれば、撮像枚数を増加させることなく、また高解像度化精度を低下させることなく、ダイナミックレンジの拡大された高解像度画像を生成することができる。
【００７０】
また、上記第１撮像位置設定手段は、マトリクス状に配列された上記基準画素領域の１つに含まれる、上記中心領域間の距離を算出すると共に、当該基準画素領域に含まれる中心領域と、当該基準画素領域に隣接する基準画素領域に含まれる各中心領域との距離を算出し、算出した距離の最小値が最大となるように上記第１撮像位置を設定することが好ましい。
【００７１】
上記の構成によれば、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置を演算で求めることができる。
【００７２】
また、上記画像生成装置は、上記第１撮像位置以外の撮像位置を、上記基準画素領域内に総撮像回数に等しい数の中心領域をマトリクス状に配置したときの、各中心領域のそれぞれに対応する第２撮像位置から選択して設定する第２撮像位置設定手段を備えていることが好ましい。
【００７３】
上述のように、高解像度画像の各画素は、低解像度画像の各画素に基づいて求められる。そして、高解像度画像の各画素は、マトリクス状に配列しているので、上記中心領域は、マトリクス状に配置されていることが好ましい。
【００７４】
そこで、上記の構成によれば、まず、総撮像回数に等しい数の中心領域を均一またはほぼ均一に配置したときの、各中心領域のそれぞれに対応する第２撮像位置を設定している。図１８の例では、全ての低解像度画像が、この第２撮像位置で撮像されている。
【００７５】
ここで、全ての低解像度画像をこの第２撮像位置で撮像した場合には、上述のように、同じ撮像条件に対応する中心領域が密集するという問題がある。そこで、上記の構成によれば、第１撮像位置以外の撮像位置を第２撮像位置から選択して設定している。
【００７６】
これにより、中心領域の一部をマトリクス状の配置とすることができると共に、中心領域の別の一部をマトリクス状に配列された上記基準画素領域の全体に対して分散した配置とすることができる。したがって、撮像枚数を増加させることなく、また高解像度化精度を低下させることなく、ダイナミックレンジの拡大された高解像度画像を生成することができると共に、高解像度画像の精度を高めることができる。
【００７７】
また、上記画像生成装置は、上記第２撮像位置のうち上記第２撮像位置設定手段によって選択されなかった撮像位置から、上記第１撮像位置と最短距離にある撮像位置を選択し、該選択した撮像位置と、上記第１撮像位置とを重み付け平均して該第１撮像位置を補正する重み付け撮像位置設定手段を備えていることが好ましい。
【００７８】
上記の構成によれば、第１撮像位置が、第１撮像位置と第２撮像位置との間の、重みに応じた位置に補正される。ここで、上述のように、第１撮像位置は、中心領域をマトリクス状に配列された基準画素領域の全体に対して分散した配置とするための撮像位置であり、第２撮像位置は、中心領域をマトリクス状の配置とするための撮像位置である。
【００７９】
そして、上記の構成によれば、重みを設定することにより、第１撮像位置を第２撮像位置寄りに補正することができる。これにより、必要に応じて、中心領域をマトリクス状に配列された基準画素領域の全体に対して分散させることを重視した撮像位置を設定することもできるし、中心領域をマトリクス状の配置とすることを重視した撮像位置を設定することもできる。なお、第１および第２撮像位置は、何れもメリットとデメリットとを有しているので、必要に応じて重みを変更できるように構成することがさらに好ましい。
【００８０】
また、上記撮像条件は、露光時間、絞り、光学フィルタ、および撮像感度の少なくとも１つであることが好ましい。
【００８１】
上記のような撮像条件を異ならせた複数の低解像度画像を用いることにより、高解像度画像のダイナミックレンジを拡大することができる。
【００８２】
また、上記撮像条件は、上記撮像対象の明度、反射率、および上記撮像対象に照射される照明の強度の少なくとも一つに応じて設定されていることが好ましい。
【００８３】
上述のように、複数の撮像条件で撮像を行なうのは、高解像度画像のダイナミックレンジを拡大するためである。したがって、撮像条件は、ダイナミックレンジを効率よく拡大できるように設定されていることが好ましいが、撮像対象や撮像対象に照射される照明の強度が変われば、好適な撮像条件の設定もそれに応じて変わることになる。
【００８４】
そこで、上記の構成によれば、撮像対象の明度、反射率、および上記撮像対象に照射される照明の強度の少なくとも一つに応じて設定された撮像条件を用いるようにしている。これにより、ダイナミックレンジを効率よく拡大することができる。
【００８５】
例えば、撮像対象の明度、反射率、および上記撮像対象に照射される照明の強度が高いほど、露光時間を短く設定することによって、低解像度画像におけるハレーションの発生を防ぎ、ダイナミックレンジを効率よく拡大することができる。
【００８６】
また、第１撮像位置で撮像された低解像度画像の各画素の輝度値は、ハレーション等によって欠落した輝度値データの補間に用いられるので、第１撮像位置で撮像された低解像度画像には、他の撮像条件と比べてハレーション等が発生し難い撮像条件を割り当てることが好ましい。
【００８７】
また、本発明の上記とは別の画像生成装置は、上記課題を解決するために、同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置であって、上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、上記複数の低解像度画像は、該低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように撮像されたものであると共に、上記複数種類のうちの１つの撮像条件で撮像する低解像度画像は、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置されるように撮像されたものであることを特徴としている。
【００８８】
上記の構成によれば、高解像度画像に複数種類の撮像条件による低解像度画像が反映されるので、１種類の撮像条件のみで撮像された低解像度画像を用いる場合と比べて、高解像度画像のダイナミックレンジを拡大することができる。
【００８９】
また、上記の構成によれば、何れかの撮像条件で撮像された低解像度画像にハレーション等が発生した場合であっても、中心領域が均一に配置される第１撮像位置で撮像した低解像度画像の輝度値データによって欠落した輝度値データを補間することができるので、高解像度画像の高解像度化精度の低下を抑えることができる。
【００９０】
すなわち、上記の構成によれば、使用する低解像度画像の数を増加させることなく、また高解像度化精度を低下させることなく、ダイナミックレンジの拡大された高解像度画像を生成することができる。
【００９１】
なお、上記画像生成装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記画像生成装置の各手段として動作させることにより、上記画像生成装置をコンピュータにて実現させる制御プログラム、及びそれを記録したコンピュータ読み取り可能な記録媒体も本発明の範疇に入る。
【発明の効果】
【００９２】
以上のように、本発明に係る画像生成装置は、複数の低解像度画像の撮像位置を設定する撮像位置決定手段と、上記撮像位置決定手段が設定した撮像位置で撮像された上記複数の低解像度画像を取得して上記高解像度画像を生成する高解像度画像生成手段とを備え、上記撮像位置決定手段は、上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、上記低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように、上記複数の低解像度画像の撮像位置を設定し、かつ上記複数種類のうち、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置を設定する第１撮像位置設定手段を備えている構成である。
【００９３】
また、以上のように、本発明に係る画像生成方法は複数の低解像度画像の撮像位置を設定する撮像位置設定ステップと、上記撮像位置設定ステップで設定された撮像位置で撮像された上記複数の低解像度画像を取得して上記高解像度画像を生成する高解像度画像生成ステップとを含み、上記撮像位置設定ステップは、上記低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、上記低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように、上記複数の低解像度画像の撮像位置を設定し、かつ上記複数種類のうち、少なくとも１つの撮像条件で撮像する低解像度画像については、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置である第１撮像位置を設定する第１撮像位置設定ステップを含む構成である。
【００９４】
また、以上のように、本発明に係る、上記とは別の画像生成装置は、同一の撮像対象を、撮像位置を異ならせながら、複数種類の撮像条件のいずれかで撮像した複数の低解像度画像から、解像度を上げた１つの高解像度画像を生成する画像生成装置であって、低解像度画像の１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、上記複数の低解像度画像は、該低解像度画像の１画素に相当する形状の中心に位置する、上記高解像度画像の１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように撮像されたものであると共に、上記複数種類のうちの１つの撮像条件で撮像する低解像度画像は、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置されるように撮像されたものである。
【００９５】
したがって、撮像枚数を増加させることなく、また高解像度化精度を低下させることなく、ダイナミックレンジの拡大された高解像度画像を生成することができるという効果を奏する。
【発明を実施するための最良の形態】
【００９６】
本発明の一実施形態について図１から図１６に基づいて説明すると以下の通りである。
【００９７】
〔画像処理システムの構成〕
本実施形態の画像処理システム（画像生成装置）１の構成について、図２に基づいて説明する。図２は、画像処理システム１の要部構成を示すブロック図である。図示のように、画像処理システム１は、撮像位置決定装置（撮像位置決定手段）１０と、撮像装置２０と、制御装置３０とを含む構成である。
【００９８】
撮像位置決定装置１０は、撮像装置２０が撮像対象を撮像するときの撮像位置を決定するものである。また、撮像装置２０は、制御装置３０の指示に従って撮像対象の撮像を行なう装置であり、制御装置３０は、撮像装置２０の動作制御を行なうと共に、撮像装置２０が取得した撮像対象の画像データ（以下、撮像画像データと呼ぶ）に超解像処理を施して、高解像度画像データを生成する。
【００９９】
本発明は、撮像装置２０が撮像対象の撮像を行なうときの撮像位置を、撮像位置決定装置１０で決定することによって、撮像回数を増加させることなく、ダイナミックレンジの拡大された高解像度画像データを生成する点に主な特徴がある。以下において、画像処理システム１の各構成である撮像位置決定装置１０、撮像装置２０および制御装置３０の詳細について説明する。
【０１００】
まず、撮像位置決定装置１０について説明する。撮像位置決定装置１０は、図示のように記憶部１１と、撮像位置計算部１２を備えている。
【０１０１】
記憶部１１は、撮像装置２０の撮像条件と、該撮像条件で撮像する撮像画像データの枚数とを対応付けた撮像情報を記憶している。すなわち、画像処理システム１では、複数の撮像条件で、それぞれ所定回数の撮像が行なわれ、この撮像で得られた撮像画像データを用いて高解像度画像データが生成される。また、記憶部１１には、上記撮像情報の他に、各撮像条件における撮像位置を示す組合せ別撮像位置が記憶される。さらに、該組合せ別撮像位置に重み付けを行なうための組合せ別重みが記憶される。なお、これらの情報の詳細については後述する。
【０１０２】
以下では、撮像条件として露光時間（シャッタースピード）を用いる例について説明する。ただし、撮像条件は、この例に限られず、撮像感度、使用する光学フィルタ、及びアイリス（絞り）を示すデータ、および、これらを組み合わせたデータを用いることもできる。
【０１０３】
なお、これらの撮像条件は、撮像対象の明度、反射率、および撮像時の照明強度の少なくとも１つに応じて設定されたものであることが好ましい。すなわち、撮像対象の明度、反射率、および撮像時の照明強度が高い場合には、撮像画像データにハレーションが発生しやすいので、このような場合には、露光時間を短めに設定することが好ましい。同様に、撮像対象の明度、反射率、および撮像時の照明強度が低い場合には、露光時間を長めに設定することが好ましい。
【０１０４】
撮像位置計算部１２は、撮像装置２０が撮像対象を撮像する撮像位置を決定する。撮像位置計算部１２は、記憶部１１に格納されている上記撮像情報等を参照し、撮像条件ごとの撮像画像データの撮像位置を決定する。そして、撮像位置計算部１２は、撮像条件と該撮像条件における撮像位置とを対応づけて撮像条件保存部３２に保存する。なお、撮像位置計算部１２が行なう処理の詳細については後述する。
【０１０５】
次に撮像装置２０について説明する。撮像装置２０は、図示のように、レンズ２１、撮像素子２２、及びアクチュエータ２３を備えている。すなわち、撮像装置２０では、撮像対象から反射した光を、レンズ２１を介して撮像装置２０内の撮像素子２２に光学的に結像させるようになっている。そして、撮像素子２２が、光学的に結像した撮像対象の像を空間的に離散化させてサンプリングし、画像信号に変換することにより、撮像対象の像が画像データとして取得されるようになっている。
【０１０６】
撮像素子２２としては、例えばＣＣＤ（charge-coupled device）やＣＭＯＳ（complementary mental-oxide semiconductor）等を用いることができる。なお、ここでは撮像装置２０は、マトリクス状に配列した複数の撮像素子２２にて撮像を行なうエリアセンサであることを想定している。
【０１０７】
アクチュエータ２３は、撮像対象と撮像素子２２との相対位置を変化させるものである。アクチュエータ２３は撮像装置２０の筐体の内壁に固定されており、撮像素子２２はアクチュエータ２３によって支持されている。すなわち、アクチュエータ２３は、撮像対象とレンズ２１とを結ぶ光軸に対して垂直な平面（撮像対象の被撮像面に平行な平面）において撮像素子２２を２次元的に移動させることによって、撮像対象と撮像素子２２との相対位置を変化させるようになっている。
【０１０８】
つまり、アクチュエータ２３が、撮像対象と撮像素子２２との相対位置を変化させることにより、撮像装置２０が撮像対象を撮像する撮像位置（撮像領域の撮像対象上の位置）が変化するようになっている。このため、撮像位置は、撮像対象の被撮像面に対して平行な２次元平面上の座標として表現することができる。ここでは、アクチュエータ制御部３６が２次元座標を指定することにより、アクチュエータ２３は指定された２次元座標で特定される位置に撮像素子を移動させるものとする。なお、アクチュエータ２３は、撮像素子２２を２次元のみならず、回転を含む３次元で移動させるものであってもよい。
【０１０９】
アクチュエータ２３としては、例えばピエゾアクチュエータやステッピングモータ等を使用することができる。アクチュエータ２３は、撮像対象と撮像素子２２との相対位置を変化させることができるものであればよく、特に限定されないが、ここではピエゾアクチュエータを用いるものとする。
【０１１０】
次に、制御装置３０について説明する。本実施形態に係る制御装置３０が行なう超解像処理によれば、撮像画像データに白とびや黒つぶれが発生している場合であっても精度の高い高解像度画像データを生成することができる。また、制御装置３０にて実行される超解像処理によれば、従来の超解像処理と比べて広いダイナミックレンジを有する高解像度画像データが生成される。
【０１１１】
図示のように、制御装置３０は、撮像制御部３１、撮像条件保存部３２、低解像度画像保存部３３、高解像度画像保存部３４、およびダイナミックレンジ拡大超解像処理部（以下、ＤＲ拡大超解像処理部と称する）３５を備えており、これらの構成により、上記のような制御装置３０の機能が実現されている。
【０１１２】
撮像制御部３１は、図示のように、アクチュエータ制御部３６及び撮像タイミング制御部３７を備えている。アクチュエータ制御部３６は、アクチュエータ２３を移動させることによって撮像装置２０の撮像位置を制御する。具体的には、アクチュエータ制御部３６は、アクチュエータ２３の移動開始及び停止のタイミング、移動速度、及び移動距離等の制御を行なう。このようなアクチュエータ制御部３６の制御により、撮像装置２０において、図１８を用いて説明したような撮像位置において撮像を行なうことができる。
【０１１３】
撮像タイミング制御部３７は、撮像装置２０の撮像開始及び停止のタイミングを制御する。具体的には、撮像タイミング制御部３７は、アクチュエータ制御部３６から送られてくる、撮像装置２０の現在の撮像位置を示す情報と、撮像条件保存部３２に格納されている撮像条件と、当該撮像条件に対応する撮像位置とに基づいて撮像装置２０へ制御信号を送ることにより、各撮像位置における撮像時間、すなわち露光時間を制御する。
【０１１４】
画像処理システム１では、撮像タイミング制御部３７の指示によって、ある撮像位置にて撮像が行なわれると、撮像装置２０は、撮像して得られた撮像画像データに、該撮像画像データを識別可能な識別子（例えば画像番号）を付して低解像度画像保存部３３に格納する。
【０１１５】
この繰り返しによって、撮像位置決定装置１０が決定した各撮像位置において、該撮像位置に対応する撮像条件で撮像対象が撮像される。そして、撮像によって得られた撮像画像データが識別子を付されて低解像度画像保存部３３に格納される。撮像条件保存部３２には、撮像条件と撮像位置とが対応付けて格納されているので、上記識別子を用いることによって、各撮像画像データの撮像位置と撮像条件とを特定することができる。
【０１１６】
なお、以下では、１枚の高解像度画像データを生成するために用いられる撮像画像データの枚数をｍ（ｍは正数）とし、１枚の高解像度画像データに対応するｍ枚一組の撮像画像データを撮像画像セットとして説明を行なう。
【０１１７】
詳細については後述するが、画像処理システム１では、露光時間の異なる複数の撮像画像セットを用いることによって、超解像処理にて生成される高解像度画像データのダイナミックレンジを拡大させることもできる。ここでは、撮像画像セットの数をｎ（ｎは正数）とする。この場合には、低解像度画像保存部３３には、ｍ×ｎ枚の撮像画像データｙｍｎが格納されることになる。
【０１１８】
また、詳細については後述するが、画像処理システム１では、露光時間の異なる複数の撮像画像データからなる１組の撮像画像セットを用いることによって、超解像処理にて生成される高解像度画像データのダイナミックレンジを拡大させることもできる。この場合には、低解像度画像保存部３３には、ｍ枚の撮像画像データｙｍが格納されることになる。
【０１１９】
高解像度画像保存部３４は、低解像度画像保存部３３に格納されている撮像画像データｙｍまたはｙｍｎを用いて超解像処理を行なうことによって生成された高解像度画像データｈを格納する。なお、上記従来の超解像処理と同様に、超解像処理を行なうためには初期高解像度画像データを用いる必要があるため、超解像処理を行なう前に、予め高解像度画像保存部３４に初期高解像度画像データを格納しておく。
【０１２０】
初期高解像度画像データは、超解像処理にて生成したい解像度の画像であればよく、特に限定されない。例えば、撮像画像データの解像度を３倍にする場合には、各画素のサイズが撮像画像データの１／３となる全面が均一の黒画像や白画像、または灰色画像を初期高解像度画像データとして用いることができる。
【０１２１】
ＤＲ拡大超解像処理部３５は、低解像度画像保存部３３に格納された撮像画像データを高解像度化して高解像度画像データを生成する超解像処理を行なう。具体的には、ＤＲ拡大超解像処理部３５は、低解像度画像保存部３３に格納された撮像画像データと、高解像度画像保存部３４に格納された高解像度画像データ４２とに基づいて、新規の高解像度画像データを生成し、生成した高解像度画像データを高解像度画像保存部３４に格納する。なお、ＤＲ拡大超解像処理部３５が実行する超解像処理の詳細については後述する。
【０１２２】
〔複数組の撮像画像セットを用いる場合の例〕
画像処理システム１では、撮像位置決定装置１０が撮像画像データの撮像位置を適切に設定することにより、超解像処理に用いる撮像画像データの枚数を増加させることなく、ダイナミックレンジが拡大された高解像度画像データを生成することができるようになっている。
【０１２３】
ここでは、まず、上記構成の前提となる構成、すなわち超解像処理に用いる撮像画像データの枚数を増加させる（複数組の撮像画像セットを用いる）ことによって、ダイナミックレンジが拡大された高解像度画像データを生成する例について説明する。
【０１２４】
上述のように、異なる撮像位置で撮像されたＮ２枚の撮像画像データを用いることによって、撮像画像データのＮ倍の解像度を有する高解像度画像データを生成することができる。なお、上記Ｎ２枚の撮像画像データは、何れも同じ撮像条件で撮像したものである。つまり、１組の撮像画像セットに含まれる各撮像画像データは、何れも同じ撮像条件で撮像されたものであり、異なる撮像画像セットに含まれる各撮像画像データは、何れも異なる撮像条件で撮像されたものということになる。
【０１２５】
ＤＲ拡大超解像処理部３５は、互いに異なる撮像条件での撮像によって得られた複数組の撮像画像セットを用いて１枚の高解像度画像データを生成することにより、１組の撮像画像セットを用いる場合と比べて、高解像度画像データのダイナミックレンジを拡大することが可能である。この場合には、低解像度画像保存部３３に格納されるｍ×ｎ枚の撮像画像データｙｍｎを用いて高解像度画像データの生成が行われる。
【０１２６】
〔ＤＲ拡大超解像処理部の詳細構成〕
続いて、ＤＲ拡大超解像処理部３５の詳細な構成について図３に基づいて説明する。図３は、ＤＲ拡大超解像処理部３５の要部構成を示すブロック図である。図示のように、ＤＲ拡大超解像処理部３５は、正規化処理部４３、画像合成部４４、差分画像生成部４５、擬似低解像度画像生成部４６、領域抽出部４７、画像更新部４８を備えている。
【０１２７】
正規化処理部４３は、撮像画像セットの中に、異なる撮像条件にて撮像されたものが含まれている場合に、上記撮像画像セットに含まれる全ての撮像画像データが、上記異なる撮像条件の１つの撮像条件にて撮像されたものとして処理できるように、各撮像画像データの各画素の輝度値を補正し正規化する。正規化処理部４３が行なう正規化処理により、異なる撮像条件で撮像して得られた撮像画像データを含む撮像画像セットを用いて超解像処理を行なうことが可能になる。
【０１２８】
具体的には、正規化処理部４３は、低解像度画像保存部３３に格納されているｍ×ｎ枚の撮像画像データｙｍｎを、撮像条件保存部３２に保存されている上記ｍ×ｎ枚の撮像画像データｙｍｎの撮像に用いられた撮像条件に基づいて正規化処理を行なう。
【０１２９】
また、正規化処理部４３が行なう正規化処理には、撮像条件の１つを基準として、他の撮像条件で撮像された撮像データの各画素の輝度値を補正する手法を採用できる。
【０１３０】
例えば、撮像画像データＡ，Ｂ，Ｃがあり、各撮像画像データの露光時間がそれぞれａ，ｂ，ｃ（ａ＜ｂ＜ｃ）である場合を考える。この場合に、露光時間ａを基準にすると、撮像画像データＢ及びＣの輝度値を例えば下記の数式（５）にて表すことができる。
【０１３１】
【数５】
2010073035.tif 000007
【０１３２】
すなわち、露光時間がｂの撮像画像データＢは、露光時間がａの撮像画像データＡに対して、露光時間がｂ／ａ倍になっているので、輝度値もｂ／ａ倍になっていると予想される。同様に、露光時間がｃの撮像画像データＣは、露光時間がａの撮像画像データＡに対して、露光時間がｃ／ａ倍になっているので、輝度値もｃ／ａ倍になっていると予想される。
【０１３３】
したがって、露光時間がａの撮像画像データＡを基準にした場合には、露光時間がｂの撮像画像データの輝度値をａ／ｂ倍に補正し、露光時間がｃ秒の撮像画像データの輝度値をａ／ｃ倍に補正することによって、撮像画像データＡ〜Ｃの輝度値を全て同等とすることができる。なお、基準とする露光時間は、撮像画像データＡ〜Ｃの中から任意のものを選択することができる。
【０１３４】
なお、正規化の方法は、上記の例に限られない。例えば、撮像画像データの輝度値の平均値を求め、該求めた平均値に基づいて、各撮像画像データの輝度値が同程度となるように補正を行なうことによって正規化を行ってもよい。また、露光時間以外にも、使用する撮像装置、照明強度、撮像感度、使用するフィルタ、及びアイリス等の撮像条件が異なっている場合にも、超解像処理に用いる全ての撮像画像データが、上記異なる撮像条件の１つの撮像条件にて撮像されたされたものとして処理できるように、各撮像画像データの各画素の輝度値を補正（正規化）する。
【０１３５】
画像合成部４４は、正規化処理部４３が正規化した、撮像条件の異なる複数組の撮像画像セットを合成して合成撮像画像データを生成する。具体的には、画像合成部４４は、各撮像画像セットに含まれるｍ枚の撮像画像データについて、撮像位置が対応するもの同士を合成し合成撮像画像データを生成する。これにより、ｍ枚の合成撮像画像データからなる撮像画像セットを１セット得ることができる。
【０１３６】
合成撮像画像データは、複数の異なる撮像条件で撮像して得られた撮像画像データを反映しているので、合成撮像画像データを用いて超解像処理を行なうことにより、生成される高解像度画像データのダイナミックレンジを拡大させることができる。なお、合成撮像画像データの生成方法については後述する。
【０１３７】
差分画像生成部４５は、撮像画像データと擬似低解像度画像データとの差分を差分画像データとして算出し、算出した差分画像データを画像更新部４８に送る。なお、撮像画像セットが複数の場合（ｎ≧２）には、差分画像生成部４５は、画像合成部４４が生成した合成撮像画像データと擬似低解像度画像データとの差分を差分画像データとして算出する。また、擬似低解像度画像データは、擬似低解像度画像生成部４６が生成したものを用いる。
【０１３８】
擬似低解像度画像生成部４６は、高解像度画像保存部３４に格納されている高解像度画像データを読み出し、読み出した高解像度画像データの解像度が撮像画像データと同じ解像度となるように低解像度化する。また、擬似低解像度画像生成部４６は、高解像度画像データに対してＰＳＦによる変換を行い、撮像画像データのそれぞれに位置合わせされた複数（ｍ枚）の擬似低解像度画像データを生成する。擬似低解像度画像データは、差分画像生成部４５に送られて、差分画像データの生成に用いられる。
【０１３９】
領域抽出部４７は、低解像度画像保存部３３に格納された撮像画像データにおける超解像処理に不適な不適正露光領域を検出する。不適正露光領域とは、撮像装置２０の有効なダイナミックレンジの範囲外の輝度値を有する領域であり、黒つぶれや白とびが発生している可能性が高い領域である。このような領域が含まれている撮像画像データを超解像処理に用いると、超解像処理の精度が低下したり、繰り返し演算に要する処理時間が長くなったりするという問題が生じる。
【０１４０】
具体的には、領域抽出部４７は、ｍ×ｎ枚の撮像画像データのそれぞれについて、輝度値が予め定めた正常範囲から外れている第１領域を抽出し、抽出した領域の各撮像画像データ上の位置を記憶する。また、ここでは、撮像画像データにおいて、上記抽出された第１領域以外の領域を第２領域と呼ぶ。すなわち、領域抽出部４７が第１領域を抽出することにより、各撮像画像データは、正常範囲外の輝度値を有する第１領域と、正常範囲内の輝度値を有する第２領域とに分けられる。
【０１４１】
なお、上記正常範囲は、適正露光とみなすことのできる輝度値の上限値と下限値とで規定される輝度値の範囲である。上限値を越えた輝度値を示す領域は、白とびなどのハレーションが発生していると考えられる領域であり、下限値より小さい輝度値を示す領域は、黒くつぶれた状態となっていると考えられる領域である。したがって、上記正常範囲内の輝度値を有する第２領域は、撮像装置２０の有効なダイナミックレンジの範囲内での撮像によって得られた輝度値を有する領域ということになる。
【０１４２】
また、領域抽出は、画素単位で行ってもよいし、複数の画素を１ブロックとするブロック単位で行ってもよい。例えばｘ×ｙ画素の領域（ｘ、ｙは正数）を１ブロックとして撮像画像データを複数のブロックに分割し、各ブロックに含まれる画素の輝度値の平均値に基づいて各ブロックが第１領域に分類されるか否かを判断するようにしてもよい。
【０１４３】
そして、領域抽出部４７が、上記抽出した領域を記憶する記憶方法は、各撮像画像データの全画素について、第１領域か第２領域かが示されているものであればよいが、以下のように記憶しておくことにより、後続の処理を高速化することが可能になる。
【０１４４】
すなわち、領域抽出部４７は、ｍ×ｎ枚の撮像画像データと同じサイズのメモリ空間Ｚｍｎを設定する。そして、撮像画像データにおいて第１領域であると判断された画素に対応する上記メモリ空間Ｚｍｎ上の画素位置には１をセットし、第２領域であると判断された画素に対応する上記メモリ空間Ｚｍｎ上の画素位置には２５５をセットする。これにより、メモリ空間Ｚｍｎでは、白とびまたは黒つぶれしている画素の位置には１の値が格納され、ダイナミックレンジ内の画素の位置には２５５の値が格納される。
【０１４５】
なお、ここでは、輝度値が１〜２５５までの２５６階調であることを想定しているので、第２領域と判断された画素位置に２５５との値を適用し、第１領域と判断された画素位置に１との値を適用している。この処理は、第１領域と判断された画素の高解像度画像データに対する寄与を第２領域と判断された画素よりも小さくすることを目的とするものであるから、この目的が達成される範囲内で、設定する輝度値は適宜変更することができる。
【０１４６】
ここでは、領域抽出部４７が上記のようにして生成したデータを抽出領域データＺｍｎと呼ぶ。抽出領域データＺｍｎは、画像更新部４８にて差分画像データの重み付けに用いられると共に、画像合成部４４にて画像合成に用いられる。
【０１４７】
すなわち、画像合成部４４では、撮像位置が同じで露光時間が異なる撮像画像データを１つの画像データに統合するときに、抽出領域データＺｍｎを参照することにより、合成撮像画像データに含まれる第１領域が少なくなるように統合を行なう。そして、複数組の撮像画像セットを用いる場合には、画像合成部４４が合成撮像画像データを生成したときに、領域抽出部４７は、抽出領域データＺｍｎを、合成撮像画像データの各画素が第１領域に属するか第２領域に属するかを示す抽出領域データＺｍに更新する。
【０１４８】
具体的には、画像合成部４４は、抽出領域データＺｍｎを参照して、撮像位置が同じで露光時間が異なる撮像画像データの各画素が第１領域に属するか第２領域に属するかを判定する。そして、同一位置の画素において、第１領域に属する画素と第２領域に属する画素とが検出された場合には、画像合成部４４は合成撮像画像データにおける上記位置の画素の輝度値として、第２領域に属する画素の輝度値を採用する。また、画像合成部４４は、上記位置の画素値を第２領域として抽出領域データＺｍを更新する。
【０１４９】
なお、同一位置の画素において、第２領域に属する画素が複数検出された場合には、例えば最も露光時間が長い画素の輝度値を採用すればよい。また、同一位置の画素において、第１領域に属する画素のみが検出された場合には、いずれか１つの画素の輝度値を採用する。したがって、例えば最も露光時間の長い撮像画像セットを基準とし、この撮像画像セットに含まれる画素のうち、第１領域に属する画素を、他の撮像画像セットの同じ位置の画素であって、第２領域に属する画素の輝度値と置き換えるようにすればよい。
【０１５０】
これにより、ｍ×ｎ枚の正規化後撮像画像データがｍ枚の合成撮像画像データに統合されると共に、ｍ×ｎ枚の正規化後撮像画像データに基づいて生成された抽出領域データＺｍｎがｍ枚の合成撮像画像データに対応する抽出領域データＺｍに更新される。なお、抽出領域データＺｍでは抽出領域データＺｍｎと同様に、第１領域の画素の位置には１の値が格納され、第２領域の画素の位置には２５５の値が格納される。
【０１５１】
このような合成処理により生成された合成撮像画像データには、複数の露光時間で撮像して得られた撮像画像データが反映されているので、撮像画像データと比べてダイナミックレンジが拡大されている。したがって、上記合成撮像画像データを用いて超解像処理を行なうことにより、撮像画像データを用いて超解像処理を行なう場合と比べて、ダイナミックレンジの広い高解像度画像データを生成することができる。
【０１５２】
さらに、このような合成処理により生成された合成撮像画像データでは、可能であれば、第１領域の画素の輝度値が、他の撮像画像データにおいて位置が同じである第２領域の画素の輝度値に置き換えられている。したがって、上記合成撮像画像データを用いて超解像処理を行なうことにより、撮像画像データを用いて超解像処理を行なう場合と比べて、超解像処理に有用なデータの割合が高くなるので、超解像処理の精度を向上することができ、また超解像処理の演算時間も短縮することができる。
【０１５３】
画像更新部４８は、領域抽出部４７が生成した抽出領域データＺｍに基づいて、差分画像生成部４５が算出した差分画像データに対して、第１画像領域と第２画像領域に対応する重み付けを行い、重み付け差分画像データを生成し、当該重み付け差分画像データを用いて高解像度画像データの更新を行なう。画像更新部４８が重み付けを行なうことにより、正常範囲外の輝度値を有する第１領域が超解像処理に与える影響が低減されるので、撮像画像データに白とびや黒つぶれが発生している場合であっても、高精度な超解像処理を行なうことができる。そして、画像更新部４８は、更新後の高解像度画像データを高解像度画像保存部３４に格納する。
【０１５４】
なお、重み付けは、超解像処理に対する第１画像領域の寄与が第２画像領域の寄与に対して小さくなるように行なわれるものであればよく、特に限定されない。ここでは、抽出領域データＺｍにおいて、第１領域の画素の位置には１の値が格納され、第２領域の画素の位置には２５５の値が格納されるようになっている。そこで、抽出領域データＺｍに１／２５５を乗じた値を重みとして、上記差分画像データに乗じる。
【０１５５】
これにより、差分画像データにおいて、合成画像データにて第１領域となっている領域の画素の輝度値が１／２５５となる。一方、差分画像データにおいて、合成画像データにて第２領域となっている領域の画素の輝度値について補正は行なわれない。したがって、上記構成によれば、合成画像データにて第１領域となっている領域の画素の寄与を、合成画像データにて第２領域となっている領域の画素の寄与に比べて十分に低くすることができる。
【０１５６】
なお、ここでは、差分画像データに抽出領域データＺｍを乗じることによって重み付けを行なう例について説明したが、抽出領域データＺｍや抽出領域データＺｍｎを用いずに重み付けを行なうこともできる。例えば、画像更新部４８が、正規化後撮像画像データ、または撮像画像データの各画素位置の輝度値を参照して、差分画像データの各画素の輝度値が、第１領域の画素に基づいて算出されたものであるか第２領域の画素に基づいて算出されたものであるかの判定を行い、該判定結果に基づいて重みを付与するようにしてもよい。
【０１５７】
また、ここでは、第１領域と第２領域との２つの領域に関して重み付けを行なう例を説明したが、３以上の領域に分割してもよい。例えば、撮像装置２０の有効ダイナミックレンジ範囲において入射光量と出力が線形でない場合には、３以上の領域に分割し、各領域に応じた重みを付与することが好ましい。
【０１５８】
具体例を挙げれば、輝度値が０〜２５５までの２５６階調である場合には、輝度値が０〜２の範囲の重みを０とし、輝度値が３〜７の範囲及び、輝度値が２４８〜２５２の範囲の重みを第２領域の重みの１／４とし、輝度値が２５３〜２５５の範囲の重みを０とすればよい。このように、輝度値が有効ダイナミックレンジに近い領域ほど、超解像処理への寄与が大きくなるように、段階的に重み付けを行なうことにより、撮像画像データを正確に反映させた高精度な高解像度画像データを生成することができる。
【０１５９】
〔超解像処理部におけるダイナミックレンジ拡大超解像処理の流れ〕
次に、ＤＲ拡大超解像処理部３５において実行される超解像処理について、図４に基づいて説明する。図４は、ＤＲ拡大超解像処理部３５において実行される超解像処理の一例を示すフローチャートである。以下の説明において、ｍ×ｎ枚の撮像画像データｙｍｎが撮像装置２０によって撮像され撮像条件保存部３２に格納されているものとする。なお、ここでは、簡単のため、撮像条件として露光時間のみを変更する例について説明するが、露光時間以外の撮像条件も変更してもかまわない。さらに、ここでは複数組の撮像画像セットを用いて超解像処理を行なう例を説明するが、少なくとも１組の撮像画像セットがあれば超解像処理を行なうことができる。
【０１６０】
まず、領域抽出部４７及び正規化処理部４３は、上記格納されたｍ×ｎ枚の撮像画像データｙｍｎを取得すると共に、撮像条件保存部３２からｍ×ｎ枚の撮像画像データｙｍｎの撮像に用いられた撮像条件を読み出す（Ｓ２０１）。
【０１６１】
領域抽出部４７は、撮像画像データｙｍｎを取得すると、ｍ×ｎ枚の撮像画像データｙｍｎのそれぞれから、撮像画像データｙｍｎの輝度値分布に基づいて、白とび領域や黒つぶれ領域等の不適正露光領域を特定し、これを第１領域として抽出する（Ｓ２０２）。そして、領域抽出部４７は、ｍ×ｎ枚の正規化した撮像画像データの各画素が第１領域に属するか、第２領域に属するかを示す抽出領域データＺｍｎを生成する。
【０１６２】
一方、正規化処理部４３は、上記取得した撮像条件から、各撮像画像データｙｍｎの露光時間を取得し、該取得した露光時間に基づいて撮像画像データｙｍｎを正規化する（Ｓ２０３）。そして、正規化処理部４３は、正規化によって生成した撮像画像データｙｍｎを画像合成部４４に送る。
【０１６３】
画像合成部４４は、撮像画像データｙｍｎを受け取ると、各撮像画像セットにおいて、同じ撮像位置で撮像して得られた撮像画像データを合成してｍ枚１セットの合成撮像画像データｙｍを生成し、該生成したｍ枚の合成撮像画像データｙｍを差分画像生成部４５に送る（Ｓ２０４）。また、画像合成部４４は、領域抽出部４７に指示して、ｍ×ｎ枚の撮像画像データｙｍｎに対応する抽出領域データＺｍｎを、ｍ枚の合成撮像画像データｙｍに対応する抽出領域データＺｍに更新させる。なお、撮像セット数が１である場合、Ｓ２０４の処理は省略可能である。
【０１６４】
ここで、画像処理システム１は、合成撮像画像データを用いて超解像処理を行なうが、合成撮像画像データを用いてイメージシフト処理を行なうようにしてもよい。合成撮像画像データを用いてイメージシフト処理を行なう場合には、撮像画像データを用いてイメージシフト処理を行なう場合と比べて、ダイナミックレンジの広い高解像度画像データを生成することができる。なお、イメージシフト処理は、合成撮像画像データの各画素の輝度値を、高解像度画像データの各画素にマッピングすることによって行なわれる。
【０１６５】
画像合成部４４が合成撮像画像データｙｍの生成を終了した後、または撮像セット数が１である場合には、擬似低解像度画像生成部４６は、高解像度画像保存部３４に格納されている初期高解像度画像データｈを取得する（Ｓ２０５）。
【０１６６】
続いて、擬似低解像度画像生成部４６は、上記取得した初期高解像度画像データｈを、ｍ枚の撮像画像データのそれぞれと位置合わせすると共に、光学的劣化要因やダウンサンプリング等の要因を考慮して低解像度化を行ない、擬似低解像度画像データを生成する（Ｓ２０６）。
【０１６７】
具体的には、擬似低解像度画像生成部４６は、初期高解像度画像データｈに数式（２）で示したＢｍを乗じて、擬似低解像度画像データＢｍｈを生成する。なお、初期高解像度画像データｈは１枚であるが、擬似低解像度画像データＢｍｈは、撮像画像データのそれぞれに位置合わせされているので、擬似低解像度画像データＢｍｈの枚数はｍ枚になる。そして、擬似低解像度画像生成部４６は、上記生成した擬似低解像度画像データＢｍｈを差分画像生成部４５に送る。
【０１６８】
差分画像生成部４５は、擬似低解像度画像データＢｍｈを受け取ると、受け取った擬似低解像度画像データＢｍｈから、画像合成部４４が生成した合成撮像画像データｙｍを引いて、ｍ枚の差分画像データＸｍを算出する（Ｓ２０７）。そして、差分画像生成部４５は、該算出したｍ枚の差分画像データＸｍを重み付け画像更新部４８に送る。なお、撮像画像データが１セットのみである場合には、差分画像生成部４５は、擬似低解像度画像データＢｍｈから撮像画像データｙｍを引いて、ｍ枚の差分画像データＸｍを算出する。
【０１６９】
画像更新部４８、差分画像データＸｍを受け取ると、領域抽出部４７が生成した抽出領域データＺｍに基づいて重み付けを行なう（Ｓ２０８）。具体的には、画像更新部４８は、差分画像データＸｍにαＺｍを乗じることによって、差分画像データＸｍの各画素の輝度値を補正した重み付け差分画像データＸｍαＺｍを生成する。なお、αは抽出領域データＺｍに乗じる重みであり、αの値は必要に応じて適宜設定することができる。
【０１７０】
例えば、ここでは、抽出領域データＺｍにおいて、第１領域の画素の輝度値を１とし、第２領域の画素の輝度値を２５５とすることを想定しているので、αの値を１／２５５に設定すればよい。これにより、重み付け差分画像データＸｍαＺｍにおける第１領域の画素の輝度値が全て１以下の値に補正される一方、第２領域の画素の輝度値は差分画像データＸｍと同じになる。したがって、第１領域に属する画素の輝度値の寄与を第２領域の画素と比べて低くすることができ、これにより超解像処理の精度を向上させることができる。
【０１７１】
さらに画像更新部４８は、重み付けを行なうことにより生成した重み付け差分画像データＸｍαＺｍを評価関数に代入して、評価値Ｅを算出する（Ｓ２０９）。なお、評価関数は、例えば上記従来の超解像処理と同様に、上記数式（３）を用いることができる。そして、画像更新部４８は、上記算出した評価値Ｅと予め設定した閾値と比較する（Ｓ２１０）。なお、上記従来の超解像処理と同様に、上記閾値は、要求される高解像度化の精度に応じて適宜変更することができる。
【０１７２】
評価値Ｅの値が上記閾値よりも小さい場合（Ｓ２１０においてＹＥＳ）には、画像更新部４８は、超解像処理を終了する。そして、このときに高解像度画像保存部３４に格納されている高解像度画像データｈが、超解像処理の結果となる高解像度画像データということになる。
【０１７３】
一方、評価値Ｅの値が上記閾値以上である場合（Ｓ２１０においてＮＯ）には、画像更新部４８は、評価値Ｅの値が小さくなるように、当該評価値Ｅの算出に用いた高解像度画像データｈを更新する（Ｓ２１１）。画像更新部４８は、例えば上記従来の超解像処理と同様に、上記数式（４）を用いることによって、高解像度画像データｈを更新することができる。画像更新部４８は、更新した高解像度画像データｈを高解像度画像保存部３４に格納する。
【０１７４】
その後、再びＳ２０６から２１０までの処理が繰り返される。そして、ＤＲ拡大超解像処理部３５では、評価値Ｅの値が上記閾値よりも小さくなるまでＳ２０６から２１０までの処理が繰り返される。これにより、所望の倍率で高解像度化がなされた所望の精度の高解像度画像データｈを得ることができる。
【０１７５】
なお、上記のフローチャートは、本発明の超解像処理の一例を示すものであり、本発明は、この例に限定されない。例えば、超解像処理に用いる全ての撮像画像データを同じ撮像条件で撮像した場合には、Ｓ２０３の正規化処理は省略してもよい。
【０１７６】
また、上述のように、高解像度画像データｈから擬似低解像度画像データＢｍｈを生成するときには、ＰＳＦの畳み込み処理が行なわれる。このＰＳＦの畳み込み処理により、重み付けによって輝度値の値が十分小さい値に補正された画素の輝度値は、当該画素の周囲に位置する画素の輝度値の影響によって補間更新される。したがって、白とびや黒つぶれが発生した第１領域の画素の画素値についても、Ｓ２０６から２１０までの処理が繰り返されることによって撮像対象の形状及び色彩を反映させた値に近づいてゆく。
【０１７７】
すなわち、撮像画像データが１セットｍ枚のみのときに撮像画像データに第１領域が含まれている場合には、超解像画像処理に有効なデータが減少するが、このような場合においても、高解像画像データｈは、全く更新されないわけではない。
【０１７８】
また、超解像処理に用いられる撮像画像セットに含まれる撮像画像データの各々が異なる撮像条件で撮像されていてもかまわない。もちろん、撮像画像データが１セットｍ枚のみの場合においても、撮像画像データの各撮像条件が異なっていてもかまわない。
【０１７９】
〔複数の撮像画像セットを用いる場合の問題点とその解決手段〕
上記のように、複数の撮像画像セットを用いることにより、高解像度画像データのダイナミックレンジを拡大することができる。しかしながら、複数の露光時間で撮像を行なう場合には、露光時間の種類の数だけ、撮像時間が倍増するという問題がある。
【０１８０】
例えば、前述の超解像処理において、３倍の解像度の高解像度画像データを得るには、９回の撮像を行なう必要がある。この場合に、露光時間を１００ミリ秒に設定すると、９００ミリ秒で撮像は終了する。しかしながら、露光時間を１００ミリ秒、２００ミリ秒、３００ミリ秒の３通りに設定した場合には、撮像終了までに最短でも５４００ミリ秒の時間を要する。
【０１８１】
この問題を解消するべく、本実施形態では、撮像位置決定装置１０を用いて撮像画像データの撮像位置を決定するようにしている。これにより、複数の露光時間で撮像を行ないつつ、撮像回数を減らすことができる。これにより、撮像時間の増加を抑えながら、ダイナミックレンジが拡大された高解像度画像データを生成することができる。以下では、撮像位置決定装置１０の詳細について説明する。
【０１８２】
〔撮像位置決定装置の詳細〕
図１は、撮像位置決定装置１０の要部構成を示すブロック図である。図示のように、記憶部１１は、撮像情報記憶部１３と、組合せ別撮像位置記憶部１４と、組合せ別重み記憶部１５とを含む構成である。
【０１８３】
撮像情報記憶部１３には、撮像画像データを撮像する際の撮像条件と、当該撮像条件における撮像枚数とが対応付けられた撮像情報が予め記憶される。
【０１８４】
ここで、図５を用いて、撮像情報記憶部１３が記憶している撮像情報の具体例について説明する。図５は、撮像情報記憶部１３が記憶している撮像情報の一例を示すデータテーブルである。同図に示すように、撮像情報は、撮像画像群によって特定される撮像情報の識別子を示す「撮像画像群番号」、撮像条件を示す「撮像条件／露光時間」、当該撮像条件で撮像する撮像枚数を示す「撮像枚数」、当該撮像条件で撮像する撮像画像データの識別子を示す「画像番号」、当該撮像条件の他の撮像条件に対する優先度を示す「優先度」の項目を含む。
【０１８５】
なお、ここでは、撮像条件として露光時間のみを変えることを想定しているので、撮像情報には、「露光時間」を示す情報が含まれているが、露光時間以外の撮像条件を変える場合には、その撮像条件が撮像情報として撮像情報記憶部１３に格納される。
【０１８６】
図５の撮像情報では、“撮像画像群Ｇ１”および“撮像画像群Ｇ２”の２つのレコードが含まれている。また、“撮像画像群Ｇ１”および“撮像画像群Ｇ２”のレコードでは、それぞれ、優先度として“１”および“２”が設定されている。
【０１８７】
なお、優先度は、撮像位置を決めるときに用いられる。つまり、撮像位置決定装置１０は、優先度が高い順に撮像画像群の撮像位置を決定する。また、撮像位置決定装置１０は、優先度が高い撮像画像群に由来する画素が、高解像度画像データ上において均等に配列するようにする。本実施形態では、優先度は、１が最も優先度が高いことを意味し、２以上の優先度は、数が大きくなるにつれて、順に優先度が下がるものとする。
【０１８８】
ここでは、ハレーションによる白とびの影響を除外することを主眼としているので、白とびが発生し難い撮像条件で撮像された撮像画像群（露光時間の短い撮像画像群）の優先度を高くしている。これは、高解像度画像データにおいて、白とびが発生していない撮像画像データに由来する画素が均等に配列することによって、白とびが発生している撮像画像データに由来する画素の輝度値を適切に補間することが可能であるからである。なお、優先度は必要に応じて適宜設定することができる。
【０１８９】
組合せ別撮像位置記憶部１４は、組合せ別撮像位置算出部（第１撮像位置設定手段）１７および条件別撮像位置選択部（第２撮像位置設定手段）１８が決定する撮像位置を記憶しておくものである。組合せ別撮像位置記憶部１４は、撮像位置が決定するまでの一定期間の記憶を担うワーキングエリアであってもよいし、永続的に撮像位置を記憶しておくようなものであってもよい。
【０１９０】
組合せ別重み記憶部１５は、重み付け撮像位置決定部１９が決定する撮像位置をより適切な位置に補正するために用いる重みを記憶するものである。重みの詳細については後述する。
【０１９１】
また、図示のように、撮像位置計算部１２は、組合せ別撮像位置算出部１７と、条件別撮像位置選択部１８と、重み付け撮像位置決定部（重み付け撮像位置設定手段）１９とを備えている。
【０１９２】
組合せ別撮像位置算出部１７は、撮像情報記憶部１３に格納されている各撮像画像群の撮像位置を決定する。そして、条件別撮像位置選択部１８は、組合せ別撮像位置算出部１７が算出した撮像位置に基づいて、各撮像条件に対応する撮像位置を決定する。
【０１９３】
例えば、９つの撮像位置で撮像を行なう場合に、第１の撮像条件で撮像を行なう４つの撮像位置と、第２の撮像条件で撮像を行なう５つの撮像位置とを決定するときには、組合せ別撮像位置算出部１７および条件別撮像位置選択部１８は、以下のような手順で撮像位置を決定する。
【０１９４】
まず、組合せ別撮像位置算出部１７は、撮像情報記憶部１３に格納されている撮像画像群の中から最も優先度の高い撮像画像群を選択し、選択した撮像画像群の撮像位置を決定する。例えば、図５の例では、撮像画像群Ｇ１の優先度が最も高いので、組合せ別撮像位置算出部１７は、撮像画像群Ｇ１に含まれる４枚の撮像画像について、その撮像位置を決定する。
【０１９５】
なお、詳細については後述するが、このときに、組合せ別撮像位置算出部１７は、撮像位置がなるべく等間隔に分散する位置になるように撮像位置を決定する。撮像位置決定装置１０の主な特徴点は、この撮像位置の決定方法にある。
【０１９６】
続いて、組合せ別撮像位置算出部１７は、撮像情報記憶部１３に格納されている撮像画像群の中から次に優先度の高い撮像画像群を選択し、選択した撮像画像群の撮像位置の候補を決定する。例えば、図５の例では、組合せ別撮像位置算出部１７は、優先度が次に高い撮像画像群Ｇ２に含まれる９枚の撮像画像について、その撮像位置を決定する。
【０１９７】
このように、撮像情報記憶部１３に格納されている全ての撮像画像群について、組合せ別撮像位置算出部１７が撮像位置を決定すると、条件別撮像位置選択部１８は、組合せ別撮像位置算出部１７が決定した９つの撮像位置から、組合せ別撮像位置算出部１７が決定した４つの撮像位置のそれぞれから最短距離に位置する４つの撮像位置を除いた５つの撮像位置を第２の撮像条件で撮像を行なう撮像位置として決定する。これにより、第１の撮像条件で撮像を行なう撮像位置と第２の撮像条件で撮像を行なう撮像位置とが決定される。
【０１９８】
重み付け撮像位置決定部１９は、組合せ別撮像位置算出部１７が決定した撮像位置を補正する。例えば、図５の例では、重み付け撮像位置決定部１９は、組合せ別撮像位置算出部１７が決定した４つの撮像位置を、該４つの撮像位置と、９つの撮像位置から選択された上記４つの撮像位置（５つの撮像位置として選択されなかった撮像位置）のそれぞれから最短距離に位置する４つの撮像位置とを結ぶ線分上の予め設定された重みに応じた位置に補正する。この重みは、組合せ別重み記憶部１５に予め格納されている。なお、この重みに基づく撮像位置の決定方法の詳細については後述する。
【０１９９】
〔撮像位置の分散についての考え方〕
ダイナミックレンジを拡大するためには、異なる撮像条件（露光条件）下で撮像した撮像画像データを用いることが必要である。しかし、撮像画像データの使用枚数が増えると、撮像に要する時間が増大してしまうので、撮像画像データの使用枚数は増加させないことが好ましい。
【０２００】
ここで、例えば、図６のような高解像度画像データが生成されるような撮像位置で撮像を行なうことにより、撮像画像データの使用枚数を増加させずにダイナミックレンジを拡大することができる。
【０２０１】
図６は、高解像度画像データにおいて、異なる撮像条件で撮像された撮像画像データに由来する画素の配置の一例を示す図であり、同図（ａ）は高解像度画像データの生成に用いられた撮像画像データにハレーション等が発生していない状態を示し、同図（ｂ）は高解像度画像データの生成に用いられた撮像画像データのうち、露光時間が長い撮像画像データにハレーションが発生している状態を示している。
【０２０２】
なお、図６では、露光時間ａで撮像された４枚の撮像画像データと露光時間ｂで撮像された５枚の撮像画像データとを用いて超解像処理を行ない、撮像画像データの３倍の解像度を有する高解像度画像データを生成した例を示している（ａ＜ｂ）。図１８に基づいて説明したように、高解像度画像データの各画素は、撮像画像データの各画素に基づいて生成される。図６では、露光時間ａで撮像された撮像画像データに由来する画素と、露光時間ｂで撮像された撮像画像データに由来する画素とを色分けして示している。
【０２０３】
また、図１８で説明したように、３倍に高解像度化する場合には、撮像画像データの１画素の１／３ピッチで撮像位置を８方向に移動させながら、各撮像位置にて１回ずつ撮像を行ない、このピッチが高解像度画像データの１画素分の幅となる。
【０２０４】
つまり、図６のような高解像度画像データを生成するために、画素Ｔ２を露光時間ｂで撮像した後、撮像位置を同図の右向きに撮像画像データの１画素の１／３ピッチ移動させて露光時間ａで撮像が行なわれ、さらに撮像位置を同図の右向きに撮像画像データの１画素の１／３ピッチ移動させて露光時間ｂで撮像が行なわれたことになる。
【０２０５】
このように、高解像度画像データの各画素は、該画素の元になる各撮像画像データに対応しており、高解像度画像データの各画素の位置は、該画素の元になる各撮像画像データの撮像位置に対応している。
【０２０６】
ここで、図６の例では、露光時間ｂで撮像された撮像画像データに由来する画素が、４つ集まっている箇所が存在する。このような箇所があったとしても、各撮像画像データが第１領域（白とび、黒つぶれ等が発生した領域）を含まず、第２領域（撮像対象の形状、色彩等が正常に反映された領域）のみを含む場合、特に問題は無い。
【０２０７】
ここで、高解像度画像データの生成に用いられる何れかの撮像画像データにおいて、第１領域が含まれる場合、その撮像画像データに対応する高解像画像データの画素において情報が欠落することになる。
【０２０８】
例えば、露光時間ｂで撮像して得られた撮像画像データは、ｂ＞ａであることから、露光時間ａで撮像して得られた撮像画像データに白とびの領域が含まれていない場合であっても、露光時間ｂで撮像して得られた撮像画像データには、白とびの領域が含まれる可能性がある。
【０２０９】
特に、撮像条件の設定の仕方によっては、一方の撮像条件で撮像された撮像画像データに第１領域の画素が大量に発生することがある。例えば、図６の例ように、一方の露光時間が長い場合には、長い露光時間で撮像された撮像画像データの広い領域で白とびが発生することがある。
【０２１０】
図６の（ｂ）は、露光時間ａで撮像した撮像画像データは、すべて第２領域であり、露光時間ｂで撮像して得られた撮像画像データがすべて第１領域（白とび）である場合の高解像画像データについて示している。同図では「ｊ（ジェイ）」の符号を付した領域は、白とびになっている領域を表している。これは、当該領域に対応する撮像画像データが、すべて第１領域（白とび）であったために、当該撮像画像データの情報が、高解像画像データの画素の生成になんら寄与していなかったことを示している。
【０２１１】
なお、撮像画像データの第１領域（白とび）の以外の、第２領域の部分を用いることによって、高解像度画像データの白とび部分の画素を推定することは可能である。しかしながら、この場合には、本来推定の基準になるべき撮像画像データの部分とは異なる部分、つまり第１領域に分類される画素と離れた位置にある第２領域に分類される画素に基づいて推定を行なうことになる。
【０２１２】
なぜならば、撮像画像データに白とびや黒つぶれの領域では、高解像画像データの生成に有効な画像情報が欠落しており、このような領域は、超解像処理になんら寄与しないからである。よって、このような場合、推定の精度が低下し、ひいては高解像画像データの品質の低下につながる。
【０２１３】
このような推定精度の低下は、撮像画像データが第１領域を含むことにより、有効な撮像画像データの画素に粗密が生じることにより起こるといえる。特に、図６（ｂ）のように、一方の露光時間が長く、長い露光時間で撮像された撮像画像データの広い領域で白とびが発生した場合には、有効な撮像画像データの画素に粗密が生じることが著しい。
【０２１４】
従って、撮像画像データのある画素が第１領域に分類されるものであっても、その替わりに推定の基準になる第２領域に分類される画素が極端に離れないように撮像位置を定める必要がある。つまり、高解像度画像データにおいて、同じ撮像条件で撮像した撮像画像データに由来する画素が密集しないように、各撮像条件で撮像を行なうときの撮像位置を決定する必要があり、撮像位置の分散の度合いを考慮した撮像位置決定手法が必要になる。また、このような手法で決定した撮像位置を重み付け処理によって補正することによって、より好適な撮像位置が得られる。
【０２１５】
〔撮像位置を分散する手法〕
以下では、撮像位置決定装置１０が実行する、重み付けや、撮像位置の分散の度合いを考慮した撮像位置決定手法について説明していく。まず、図７から図９を用いて各撮像条件における撮像位置を分散する手法について説明する。撮像位置を分散するには、撮像位置の位置関係を把握することが重要である。
【０２１６】
まず、図７を用いて撮像位置の位置関係を把握する手法について説明する。図７は、撮像位置の位置関係を把握する手法を示す説明図である。図７では、一例として４つの撮像位置の位置関係を示している。なお、図７において、ＫＬは、基準となる撮像素子１つの撮像領域（基準画素領域）を示し、ＶＬ０〜ＶＬ３は位置関係を把握する対象となる４つの撮像位置（撮像領域）の中心を示している。
【０２１７】
ここで、高解像度画像データの元になる撮像画像データを取得するための撮像位置は、撮像素子１つの幅を越えない範囲内、より詳細には、各撮像位置における撮像領域の中心に、高解像度画像データの１画素に相当する領域を配置したときに、該領域が基準画素領域内に含まれる範囲内で設定される。例えば、図１８の例においても、Ｐ１３〜Ｐ９３は何れもＴ１の内部に含まれている。したがって、ＶＬ０〜ＶＬ３もＫＬの枠内となる。
【０２１８】
ＫＬの枠内において、撮像位置を分散させるためには、ＶＬ０〜ＶＬ３の相互の距離（両矢印が付されているＶＬ０−ＶＬ１、ＶＬ０−ＶＬ２、ＶＬ０−ＶＬ３、ＶＬ１−ＶＬ２、ＶＬ１−ＶＬ３およびＶＬ２−ＶＬ３の６通り）を求め、その最小値が最大になるような撮像位置を決定すればよいが、ＫＬの枠内のみの位置関係を考慮した場合には、ＫＬの枠内の撮像位置と、ＫＬに隣接する撮像素子の撮像位置とが近接することがある。
【０２１９】
例えば、図６の高解像度画像データでは、１つの撮像素子に対応する３×３の９つの画素において、４つの短時間露光画素と５つの長時間露光画素とがそれぞれ分散して配置されている。しかしながら、図６の例では隣接する撮像素子における撮像位置が考慮されていないので、高解像度画像データの全体から見れば、撮像位置が均一に分散されていない箇所が生じている。
【０２２０】
そこで、撮像位置決定装置１０では、隣接する撮像素子における撮像位置も考慮して、高解像度画像データの全体から見て撮像位置が均一に分散するように撮像位置を決定する。これにより、高解像度画像データに同じ撮像条件で撮像した撮像画像データに由来する画素が密集しないようにすることができ、撮像画像データの枚数を増やさずとも高精度な高解像度画像データを生成することができる。
【０２２１】
図７（ｂ）では、ＫＬに隣接する撮像素子ＫＲの撮像位置ＶＲ０〜ＶＲ３を示している。図示のように、隣接する撮像素子ＫＲの撮像位置ＶＲ０〜ＶＲ３を考慮すれば、ＶＬ１との距離を求めるべき撮像位置が４つ追加されることになる（両矢印が付されているＶＬ１−ＶＲ０、ＶＬ１−ＶＲ１、ＶＬ１−ＶＲ２およびＶＬ１−ＶＲ３の４通り）また、ＶＬ０、ＶＬ２、ＶＬ３についても同様であるから、合計で１６箇所の距離を求める必要がある。
【０２２２】
また、撮像素子ＫＬの右方向に隣接する撮像素子は、撮像素子ＫＲだけではないので、撮像素子ＫＬの右方向以外の方向に隣接する撮像素子についても、撮像位置の位置関係を調べることになる。
【０２２３】
なお、全体で撮像素子ＫＬの周囲８方向に撮像素子が隣接する８つの場合が考えられるが、対称性により、位置関係を調べるのは半分の４つの場合だけでよい。なぜならば、撮像素子ＫＬの右に隣接する撮像素子ＫＲの撮像位置の位置関係を調べることと、撮像素子ＫＬの左に隣接する撮像素子の撮像位置の位置関係を調べることとは同じことだからである。
【０２２４】
以上のように、撮像素子ＫＬの枠内の撮像位置は、該枠内の撮像位置間の距離の最小値を最大化し、また撮像素子ＫＬの枠内の撮像位置と、撮像素子ＫＬに隣接する撮像素子の枠内の各撮像位置との距離の最小値を最大化する、という条件に基づいて決定される。
【０２２５】
続いて、図８および９を用いて、これらの距離を具体的に求め、撮像位置を決定する手法を以下に説明する。以下で説明するのは、図６で示したような、露光時間ａで４枚、露光時間ｂで５枚の撮像を行って得た計９枚の撮像画像データを用いて超解像処理を行なう場合についてである。
【０２２６】
まず、図８を用いて、撮像素子の枠内における撮像位置間の距離の求め方について説明する。図８は、撮像素子の枠内に含まれる４つの撮像位置を２次元座標で表した説明図である。ここでは、ＶＢ０をｘ−ｙ座標平面上の原点とする２次元座標系を導入して説明する。そして、上記２次元座標系において、撮像素子ＫＢが占める領域を、撮像位置ＶＢ０を基準とする位置に平行移動したのが領域ＲＢである。また、同図では、左右方向右向きをｘ軸の正の向きとし、左右方向左向きをｙ軸の正の向きとする。また、ここでは、簡単のため撮像素子ＫＢは一辺の長さがｈの正方形状であるとする。
【０２２７】
ここで、撮像位置ＶＢ０、ＶＢ１、ＶＢ２、ＶＢ３の２次元座標を、それぞれ、（０，０）、（ｘ１，ｙ１）、（ｘ２，ｙ２）および（ｘ３，ｙ３）とすると、撮像位置ＶＢ０、ＶＢ１、ＶＢ２、ＶＢ３の相互の距離は、以下の数式（６−１）〜（６−６）によって表現できる。
【０２２８】
【数６】
2010073035.tif 000008
【０２２９】
なお、上記数式におけるＢは、撮像素子ＫＢについての距離であることを示し、ｐおよびｑは、撮像位置ＶＢｐ、ＶＢｑの間の距離であることを示している。
【０２３０】
次に、図９を用いて、撮像素子ＫＢの枠内の撮像位置と、撮像素子ＫＢに隣接する撮像素子の枠内の撮像位置との距離の求め方について説明する。図９は、撮像素子と、当該撮像素子に隣接する撮像素子との位置関係を２次元座標で表した説明図である。
【０２３１】
前述のとおり、求めるべき撮像位置間の距離は、ある撮像素子に対して左、左下、左上、下の４方向に隣接する撮像素子の撮像位置との間の距離である。同図では、撮像素子ＫＢの左に撮像素子Ｋ１、左下に撮像素子Ｋ２、下に撮像素子Ｋ３、下に撮像素子Ｋ３が位置しているものとし、領域Ｒ１、領域Ｒ２、領域Ｒ３は、撮像素子Ｋ１〜Ｋ３に対応する領域である。
【０２３２】
図９（ａ）に示すように、領域Ｒ１には、撮像素子Ｋ１の撮像位置Ｖ１０、Ｖ１１、Ｖ１２、Ｖ１３が含まれる。撮像位置Ｖ１０、Ｖ１１、Ｖ１２、Ｖ１３は、それぞれ、撮像位置ＶＢ０、ＶＢ１、ＶＢ２、ＶＢ３をｘ軸の負の方向にｈだけ移動させたものであるので、撮像位置Ｖ１０、Ｖ１１、Ｖ１２、Ｖ１３の２次元座標は、それぞれ、（−ｈ，０）、（ｘ１−ｈ，ｙ１）、（ｘ２−ｈ，ｙ２）および（ｘ３−ｈ，ｙ３）となる。
【０２３３】
前述の例に倣って、領域ＲＢに含まれる撮像位置ＶＢ０、ＶＢ１、ＶＢ２、ＶＢ３と、領域Ｒ１に含まれる撮像位置Ｖ１０、Ｖ１１、Ｖ１２、Ｖ１３との間の距離を、ｄ１ｐｑと表記する。ｄ１ｐｑの添え字の意味については、１は、領域ＲＢと領域Ｒ１とに含まれる撮像位置についての距離であることを示し、ｐおよびｑは、撮像位置ＶＢｐ、Ｖ１ｑの間の距離であることを示している。
【０２３４】
ここで、領域ＲＢの撮像位置ＶＢ０、ＶＢ１、ＶＢ２、ＶＢ３と、領域Ｒ１の撮像位置Ｖ１０、Ｖ１１、Ｖ１２、Ｖ１３とを結ぶ線分は全部で１６本あるが、１６本の線分すべてについて距離を求めなくてもよい。次の理由により、その中の９本の線分について距離を求めれば足りる。すなわち、ｐ＝ｑの場合、ｄ１ｐｑ＝ｈである。また、ｑ＝０の場合、ｄＢｐ０＜ｄ１ｐ０となる。したがって、このようなｄ１ｐ０は、考慮しなくてもよい。すると、求めるべき距離は以下の９つ数式（７−１）〜（７−９）で表されたものだけになる。このように、予め計算すべき対象を絞り込んでおくことで、撮像位置を決定するために撮像位置計算部１２が実行する計算の量を減らすことができる。
【０２３５】
【数７】
2010073035.tif 000009
【０２３６】
同様に、図９の（ｂ）に示す領域ＲＢと領域ＲＢの左下に隣接する領域Ｒ２との間における撮像位置間の距離、図９の（ｃ）に示す領域ＲＢと領域ＲＢの下に隣接する領域Ｒ３との間における撮像位置間の距離、および、図９の（ｄ）に示す領域Ｒ２と領域Ｒ３との間における撮像位置間の距離を求めることができる。
【０２３７】
このような演算を行なうことによって、６＋（４×９）＝４２通りの距離が求まる。そして、４２通りの距離の最小値が、最大になるような撮像位置を求めるには、次の数式（８）で表される評価式について非線形最適化処理を行なえばよい。この数式（８）は、ｋ箇所の撮像位置、すなわち２ｋ次元ベクトルの変数を持つ連続関数であるため、数値解法によって、その解を求めることができる。
【０２３８】
【数８】
2010073035.tif 000010
【０２３９】
以上により、高解像度画像データの全体から見て分散した撮像位置を求めることができる。なお、ここでは１つの撮像素子の枠内に含まれる４つの撮像位置を決定する例を示したが、同様の手法にて任意の数の撮像位置を決定することができる。例えば、図６の例において、露光時間ｂで撮像する５つの撮像位置を決める場合には、求めるべき距離の総数は２２８個になるが、この場合にも同じ計算方法が適用できる。
【０２４０】
以上において説明した撮像位置を分散する手法は、一般的に次のように表現できる。すなわち、１つの撮像素子の枠内でｋ回の撮像を行なう場合に、注目した撮像素子の枠内における各撮像位置間の距離ｄＢｍｎは、撮像位置の各々を、（ｘ０、ｙ０）＝（０，０）、（ｘ１、ｙ１）、…、（ｘｋ、ｙｋ）とすると、撮像素子の枠内における撮像位置間の距離は、次の数式（９）で表現できる。
【０２４１】
【数９】
2010073035.tif 000011
【０２４２】
なお、上記数式（９）において、ｍ≠ｎであり、ｍ、ｎ＝｛１、…、ｋ｝である。
【０２４３】
また、上記注目した撮像素子の枠内の撮像位置と、当該撮像素子に隣接する撮像素子の枠内に含まれる各撮像位置との相互の距離ｄｉｍｎは、次の数式（１０）で表現できる。
【０２４４】
【数１０】
2010073035.tif 000012
【０２４５】
そして、これらの距離ｄＢｍｎおよびｄｉｍｎについて数式（８）で表される評価式を解くことにより、分散した撮像位置を決定することができる。
【０２４６】
以上のように、撮像位置決定装置１０は、撮像画像データの１画素に相当する形状を有する基準画素領域がマトリクス状に配列された基準撮像位置を仮想的に設定した場合に、撮像画像データの１画素に相当する形状の中心に位置する、高解像度画像データの１画素に相当する形状を有する中心領域が、上記基準画素領域内に含まれるように撮像位置を設定する。また、少なくとも１つの撮像条件で撮像する撮像画像データについては、マトリクス状に配列された上記基準画素領域の全体に対して、上記中心領域が均一またはほぼ均一な位置に配置される撮像位置を設定する。
【０２４７】
これにより、高解像度画像データ上において、同じ撮像条件で撮像した撮像画像データに基づいて生成される画素が均等に配置されるので、何れかの撮像条件で撮像した撮像画像データにハレーション等が生じた場合であっても、近隣の画素で補間処理を行なうことができるので、高解像度画像データの精度低下を防ぐことができる。
【０２４８】
〔撮像位置決定処理の流れ〕
次に、図１０に示すフローチャートを参照しながら、撮像位置決定装置１０が、重み付けや、撮像位置の分散を考慮して撮像位置を決定する場合の動作について説明する。図１０は、撮像位置決定装置１０が撮像位置を決定する処理である撮像位置決定処理の一例を示すフローチャートである。
【０２４９】
なお、ここでは、露光時間ａで４枚、露光時間ｂで５枚の撮像を行って得た計９枚の撮像画像データを用いて超解像処理を行なう場合について説明する。すなわち、以下では、図５に示したレコードが、撮像情報記憶部１３に記憶されているものとする。
【０２５０】
まず、撮像位置決定装置１０において、撮像位置決定処理が開始されると、撮像位置計算部１２の組合せ別撮像位置算出部１７は、撮像情報記憶部１３に記憶されている撮像情報から、優先度が最も高い撮像画像群を特定し、特定した撮像画像群の撮像枚数を読み出す（Ｓ３０１）。図５の例では、優先度が最も高い撮像画像群Ｇ１の撮像枚数である「４」が読み出される。
【０２５１】
続いて、組合せ別撮像位置算出部１７は、上記読み出した撮像枚数の撮像を行なうときの撮像位置が略均等になる撮像位置を計算する（Ｓ３０２）。この撮像位置の算出方法は、上記〔撮像位置を分散する手法〕で説明したとおりである。ここでは、各撮像素子の枠内において、４つの撮像位置が決定されるので、図１１ような撮像位置が決定される。
【０２５２】
図１１は、９回の撮像を行なう場合に、９回のうち４回の撮像を行なう撮像位置が均等になるように決定した撮像位置を示す図である。なお、同図において、Ｋは撮像素子を示し、Ｐａは撮像位置を高解像度画像データの画素で示したものである。したがって、Ｐ１の一辺の長さは、撮像素子Ｋの一辺の長さの１／３ということになる。図示のように、Ｐ１は、撮像素子Ｋを２×２の４分割して得られる各矩形の中央に位置しており、高解像度画像データの全面に均等に配置されている。
【０２５３】
そして、組合せ別撮像位置算出部１７は、算出した４つの撮像位置を組合せ別撮像位置記憶部１４に記憶する。なお、上述のように、図５の例では露光時間の短い撮像画像群の優先度を高くしている。つまり、Ｓ３０１で読み出された撮像枚数は、露光時間ａで撮像する撮像枚数を示している。以下では、Ｓ３０２で計算された露光時間ａに対応する４つの撮像位置を、撮像位置群Ｐａと呼ぶ。
【０２５４】
次に、組合せ別撮像位置算出部１７は、撮像情報記憶部１３に記憶されている撮像情報から、優先度が低い方の撮像画像群を特定し、特定した撮像画像群の撮像枚数を読み出す。図５の例では、撮像画像群Ｇ２の撮像枚数である「９」が読み出される。続いて、組合せ別撮像位置算出部１７は、上記読み出した撮像枚数の撮像を行なうときの撮像位置が略均等になる撮像位置を計算する（Ｓ３０３）。ここでは、各撮像素子の枠内において、９つの撮像位置が決定されるので、図１２のような撮像位置が決定される。
【０２５５】
図１２は、９回の撮像を行なう撮像位置が均等になるように決定した撮像位置を示す図である。なお、同図において、Ｋは撮像素子を示し、Ｐａｂは上記決定された撮像位置に対応する高解像度画像データの画素を示している。図示のように、Ｐａｂは、撮像素子Ｋを３×３の９分割した位置となっており、高解像度画像データの全面に均等に配置されている。
【０２５６】
そして、組合せ別撮像位置算出部１７は、算出した９つの撮像位置を組合せ別撮像位置記憶部１４に記憶する。なお、上述のように、ここでは超解像処理に９枚の撮像画像データを用いることを想定している。つまり、Ｓ３０１で読み出された撮像枚数「９」は、露光時間ａおよびｂで撮像する撮像枚数を示している。以下では、Ｓ３０３で計算された露光時間ａおよびｂに対応する９つの撮像位置を、撮像位置群Ｐａｂと呼ぶ。
【０２５７】
Ｓ３０２において、露光時間ａで撮像する４枚の撮像画像データの撮像位置は決定済みであるから、次に、条件別撮像位置選択部１８は、露光時間ｂで撮像する５枚の撮像画像データの撮像位置を決定する（Ｓ３０４）。具体的には、条件別撮像位置選択部１８は、組合せ別撮像位置記憶部１４に記憶された９つの撮像位置の中から、５つの撮像位置が９つの撮像位置の中で略均等な配置となるように撮像位置を選択する。以下では、Ｓ３０４で選択された露光時間ｂに対応する５つの撮像位置を、撮像位置群Ｐｂと呼ぶ。
【０２５８】
例えば、図１３のようにして撮像素子群Ｐｂの５つの撮像位置を決定することができる。図１３は、９回の撮像を行なう撮像位置が均等になるように決定した撮像位置から選択した９つの撮像位置から選択された５つの撮像位置に対応する高解像度画像データの画素の配置を示す図である。
【０２５９】
なお、同図において、Ｋは撮像素子を示し、Ｐｂは上記選択された撮像位置に対応する高解像度画像データの画素を示している。条件別撮像位置選択部１８は、図示のように、基準画素領域内に９つの中心領域をマトリクス状に配置したときの、９つの中心領域のそれぞれに対応する撮像位置から５つの撮像位置、すなわち、撮像位置群Ｐｂを選択して設定する。
【０２６０】
図示のように、条件別撮像位置選択部１８よって設定されたＰｂは、撮像素子Ｋを３×３の９分割して得られる矩形の中央、左上、左下、右上、および右下に位置している。また同図では、９つの撮像位置のうち、５つの撮像位置として選択されなかった４つの撮像位置に対応する高解像度画像データの画素をＰａ’で示している。この画素Ｐａ’に対応する撮像位置群を撮像位置群Ｐａ’と呼ぶ。
【０２６１】
なお、図１０の例では、撮像位置群Ｐａを決定した後に撮像位置群Ｐａ’および撮像位置群Ｐｂを決定する例を示しているが、撮像位置群Ｐａ’および撮像位置群Ｐｂを先に決定してもよいし、これらの撮像位置群を決定する処理を平行して行なうようにしてもよい。
【０２６２】
以上のようにして、組合せ別撮像位置算出部１７が露光時間ａに対応する４つの撮像位置からなる撮像位置群Ｐａを決定し、条件別撮像位置選択部１８が露光時間ｂに対応する５つの撮像位置からなる撮像位置群Ｐｂおよび４つの撮像位置からなる撮像位置群Ｐａ’を決定して、組合せ別撮像位置記憶部１４に記憶すると、その旨が重み付け撮像位置決定部１９に通知される。
【０２６３】
通知を受けた重み付け撮像位置決定部１９は、組合せ別撮像位置記憶部１４に記憶されている撮像位置群Ｐａと、Ｐａ’とを読み出す。そして、重み付け撮像位置決定部１９は、撮像位置群ＰａとＰａ’との、重み付け平均によって求めた４つの撮像位置を露光時間ａに対応する最終的な撮像位置として決定する（Ｓ３０５）。
【０２６４】
具体的には、重み付け撮像位置決定部１９は、Ｓ３０２で求めた露光時間ａに対応する４つの撮像位置（撮像位置群Ｐａ）のそれぞれと、撮像位置群Ｐａ’に含まれる撮像位置のそれぞれとの距離（例えば、撮像位置の中心を示す２次元座標間の距離）を求め、撮像位置群Ｐａに含まれる撮像位置のそれぞれについて、その撮像位置と最も近い位置の撮像位置群Ｐａ’に含まれる撮像位置を特定する。
【０２６５】
つまり、ここでは撮像位置群Ｐａに含まれる撮像位置と、撮像位置群Ｐａ’に含まれる撮像位置とで、最近傍となる撮像位置のペアが特定される。この例では、撮像位置群ＰａおよびＰａ’は、それぞれ４つの撮像位置で構成されているので、４組のペアが特定される。なお、１つの撮像位置に対して、同じ距離の撮像位置が複数存在する場合には、同じ距離の撮像位置から１つの撮像位置を選択し、撮像位置群Ｐａに含まれる各撮像位置と、撮像位置群Ｐａ’に含まれる各撮像位置とが一対一となるペアを特定する。
【０２６６】
そして、重み付け撮像位置決定部１９は、上記特定した最近傍となる撮像位置のペアについて、組合せ別重み記憶部１５に格納されている重みを用いて重み付けを行なうことによって、撮像位置群Ｐａの各撮像位置を補正して、露光時間ａに対応する４つの最終的な撮像位置を決定する。
【０２６７】
つまり、重み付け撮像位置決定部１９は、撮像位置群Ｐａの撮像位置と、撮像位置群Ｐａ’の撮像位置の中で、上記撮像位置群Ｐａの撮像位置と最近傍となる撮像位置とを結ぶ線分上に最終的な撮像位置を決定する。そして、この線分上の位置を決めるのが重みということになる。
【０２６８】
ここで、撮像位置群Ｐａは、隣接する撮像素子における撮像位置の分散も考慮して決められているので、撮像位置群Ｐａを露光時間ａに対応する撮像位置として決定した場合には、高解像度画像データにおいて、露光時間ａで撮像された撮像画像データに由来する画素が均一に分布する（図１１参照）。
【０２６９】
つまり、撮像位置群Ｐａを適用した場合には、露光時間ｂで撮像された撮像画像データにハレーションが発生して白とび画素が生じたとしても、露光時間ｂよりも短い露光時間ａで撮像された撮像画像データに由来する画素が均一に分布することから、高解像度画像データにおいて、白とび画素を近隣の画素で補間することができる。
【０２７０】
一方、撮像位置群Ｐａは、図１８で説明したような一般的な撮像位置である撮像位置群Ｐａ’からずれているので、白とび等の発生を考慮しなければ、撮像位置群Ｐａを露光時間ａに対応する撮像位置として決定した場合には、撮像位置群Ｐａ’を露光時間ａに対応する撮像位置として決定した場合と比べて、高解像度画像データの精度が落ちることも考えられる。
【０２７１】
そこで、重み付け撮像位置決定部１９は、白とびや黒つぶれ画素の補間と、高解像度画像データの精度とのバランスを適切に設定するために、重み付けを行なって、撮像位置ＰａとＰａ’との間で最終的な撮像位置を決定する。つまり、白とびや黒つぶれ画素の補間を重視する場合には、撮像位置群Ｐａの重みが大きく設定される。一方、白とびや黒つぶれ画素の補間の必要性が低い場合には、撮像位置群Ｐａ’の重みが大きく設定される。
【０２７２】
重み付けを行なった後の最終的な撮像位置は、例えば図１４に示すような態様となる。図１４は、最終的に決定された撮像位置の一例を示す図である。同図のＰａは、露光時間ａで撮像する撮像位置に対応する高解像度画像データの画素を示し、同図のＰｂは、露光時間ｂで撮像する撮像位置に対応する高解像度画像データの画素を示している。
【０２７３】
図１４の例では、白とび画素の補間を重視する例を示しており、撮像位置群Ｐａの重みが１、撮像位置群Ｐａ’の重みが０に設定されている。この場合には、図示のように、撮像位置群Ｐａ’は考慮されず、撮像位置群Ｐａがそのまま露光時間ａに対応する撮像位置として決定される。
【０２７４】
無論、重みの設定は、上記の例に限られない。例えば、撮像位置群Ｐａの重みを０．５、撮像位置群Ｐａ’の重みを０．５に設定してもよい。この場合には、撮像位置群Ｐａと撮像位置群Ｐａ’との中間地点が露光時間ａに対応する撮像位置として決定される。つまり、重みは、重み付けの対象となる各撮像位置群の重みの総和が１になるように設定されていればよい。
【０２７５】
なお、本実施形態では、撮像位置群Ｐａの重みを１、撮像位置群Ｐａ’の重みを０に固定することを想定しているが、重みは変更できるように構成することが好ましい。これにより、例えば生成した高解像度画像データの外観（エッジの出方、ボヤケ方等）を確認した後、その確認結果に応じて重みを変更することによって、最適な重みを決定し、より高精度な高解像度画像データを生成することも可能になる。
【０２７６】
以上の処理により、全ての撮像位置が決定されるので、重み付け撮像位置決定部１９は、決定した撮像位置と、該撮像位置に置ける撮像条件（この例では露光時間がａかｂかを示す情報）とを対応付けて撮像条件保存部３２に格納する。そして、撮像条件保存部３２に格納されている撮像条件に基づいて撮像制御部３１が撮像装置２０を駆動することによって、撮像位置決定装置１０が決定した撮像位置で撮像が行なわれ、撮像画像データが取得される。
【０２７７】
撮像条件は、例えば図１５に示すようなデータ構造とすることもできる。図１５は、撮像条件のデータ構造の一例を示す図である。図示のように、撮像条件には、撮像画像データの識別子である画像番号、撮像条件（この例では露光時間）、撮像位置を示す撮像Ｘ座標および撮像Ｙ座標の項目が含まれている。
【０２７８】
なお、図１５の例では、撮像条件として具体的な数値が示されている。この数値は、撮像位置決定装置１０が設定してもよいし、他の装置（例えば制御装置３０）で設定してもよい。この数値を画像処理システム１のユーザが入力、設定、および変更することができるように構成することが好ましい。
【０２７９】
画像処理システム１では、撮像制御部３１が、このようなデータを用いて撮像装置２０を駆動することによって、図１４に示すような撮像位置で撮像が行なわれ、撮像画像データが取得される。そして、取得された撮像画像データを上述のダイナミックレンジ拡大超解像処理に供することにより、ダイナミックレンジの拡大された高解像度画像データを生成する。
【０２８０】
〔超解像処理について〕
上述のダイナミックレンジ拡大超解像処理では、複数の撮像画像セットを用いる例について説明したが、撮像位置決定装置１０は１組の撮像画像セットの撮像位置を決定するものである。したがって、撮像位置決定装置１０が決定した撮像位置で撮像された撮像画像データを用いて超解像処理を行なう場合の処理は、上述した処理と部分的に異なったものとなる。ここでは、撮像位置決定装置１０が決定した撮像位置で撮像された撮像画像データを用いて超解像処理を行なう場合の処理について、図３に基づいて説明する。
【０２８１】
撮像位置決定装置１０が撮像条件保存部３２に撮像条件を格納し、この撮像条件に基づいて撮像された撮像画像データが低解像度画像保存部３３に格納されると、正規化処理部４３は、撮像条件保存部３２に格納されている撮像条件に基づいて、低解像度画像保存部３３に格納された撮像画像データの正規化を行なう。撮像位置決定装置１０は、１枚の高解像度画像データを生成するために必要な１セットの撮像画像データの撮像に用いられる撮像位置を決定するので、ここではこの１セットの撮像画像データ間で正規化が行なわれる。
【０２８２】
正規化が行なわれた後は、領域抽出部４７によって領域抽出を行なって高解像度画像データを生成するようにしてもよいし、一般的な超解像処理と同様の手順で高解像度画像データを生成することも可能である。この場合には、擬似低解像度画像生成部４６が、高解像度画像保存部３４に格納されている高解像度画像データを低解像度化した擬似低解像度画像データと、上記正規化後の撮像画像データとの差分画像データが差分画像生成部４５によって生成される。そして、この差分画像データを評価関数に代入して評価値を求め、評価値が小さくなるように高解像度画像データを更新する処理を繰り返すことにより、高解像度画像データを生成することができる。
【０２８３】
〔撮像条件が３通り以上の場合について〕
上記では、撮像条件が２通りの場合に撮像位置を決定する例ついて説明したが、撮像位置決定装置１０は、撮像条件が３通り以上の場合にも撮像位置を決定することができる。ここでは、撮像条件が３通りの場合に撮像位置を決定する例について図１６に基づいて説明する。図１６は、撮像位置決定装置１０において、撮像条件が３通りであるときに、撮像位置を決定する場合における処理の流れの一例を示すフローチャートである。
【０２８４】
ここでは、撮像情報記憶部１３には、撮像情報として、“撮像画像群Ｇ１１”、“撮像画像群Ｇ１２”および“撮像画像群Ｇ１３”が記憶されているものとする。また、 “撮像画像群Ｇ１１”の「撮像枚数」には“Ａ”枚が、「優先度」には“１”が設定されているものとする。そして、“撮像画像群Ｇ１２”の「撮像枚数」には“Ａ＋Ｂ＋Ｃ”枚が、「優先度」には“３”が設定されているものとし、“撮像画像群Ｇ１３”の「撮像枚数」には“Ｃ”枚が、「優先度」には“２”が設定されているものとする。
【０２８５】
また、撮像画像群Ｇ１１は露光時間ａで撮像を行ない、撮像画像群Ｇ１２は露光時間ｂで撮像を行ない、撮像画像群Ｇ１３は露光時間ｃで撮像を行なうものとする。露光時間の大小関係は、ａ＜ｂ＜ｃである。
【０２８６】
このように、撮像条件を３つにした場合には、撮像条件が２つの場合と比べてダイナミックレンジをより拡大することができる。すなわち、露光時間ｂで撮像された撮像画像データの一部領域が白とびしている場合には、より露光時間が短い露光時間ａで撮像された撮像画像データを用いることによって白とび画素の輝度値を補間することができる。同様に、露光時間ｂで撮像された撮像画像データの一部領域が黒つぶれしている場合には、より露光時間が短い露光時間ａで撮像された撮像画像データを用いることによって黒つぶれ画素の輝度値を補間することができる。
【０２８７】
まず、撮像位置決定装置１０において、撮像位置決定処理が開始されると、撮像位置計算部１２の組合せ別撮像位置算出部１７は、撮像情報記憶部１３に記憶されている撮像情報から、優先度が最も高い撮像画像群を特定し、特定した撮像画像群の撮像枚数を読み出す。この例では、優先度が最も高い撮像画像群Ｇ１１の撮像枚数である“Ａ”が読み出される。
【０２８８】
そして、組合せ別撮像位置算出部１７は、上記読み出した撮像枚数の撮像を行なうときの撮像位置が分散する撮像位置を求める（Ｓ４０１）。この撮像位置の算出方法は、上記〔撮像位置を分散する手法〕で説明したとおりである。以下の説明では、Ｓ４０１で求めたＡ個の撮像位置を撮像位置群Ｐａと呼ぶ。組合せ別撮像位置算出部１７は、求めた撮像位置を組合せ別撮像位置記憶部１４に記憶する。
【０２８９】
次に、組合せ別撮像位置算出部１７は、撮像情報記憶部１３に記憶されている撮像情報から、優先度が２番目に高い撮像画像群を特定し、特定した撮像画像群の撮像枚数を読み出す。この例では、撮像画像群Ｇ１３の撮像枚数である“Ｃ”が読み出される。
【０２９０】
そして、組合せ別撮像位置算出部１７は、上記読み出した撮像枚数の撮像を行なうときの撮像位置が分散する撮像位置を計算する（Ｓ４０２）。この撮像位置の算出方法は、上記〔撮像位置を分散する手法〕で説明したとおりである。以下の説明では、Ｓ４０２で求めたＣ個の撮像位置を撮像位置群Ｐｃと呼ぶ。組合せ別撮像位置算出部１７は、求めた撮像位置を組合せ別撮像位置記憶部１４に記憶する。
【０２９１】
さらに、組合せ別撮像位置算出部１７は、撮像情報記憶部１３に記憶されている撮像情報から、優先度が最も低い撮像画像群を特定し、特定した撮像画像群の撮像枚数を読み出す。この例では、撮像画像群Ｇ１２の撮像枚数である“Ａ＋Ｂ＋Ｃ”が読み出される。
【０２９２】
そして、組合せ別撮像位置算出部１７は、上記読み出した撮像枚数の撮像を行なうときの撮像位置が分散する撮像位置を計算する（Ｓ４０３）。この撮像位置の算出方法は、上記〔撮像位置を分散する手法〕で説明したとおりである。以下の説明では、Ｓ４０３で求めたＡ＋Ｂ＋Ｃ個の撮像位置を撮像位置群Ｐａｂｃと呼ぶ。組合せ別撮像位置算出部１７は、求めた撮像位置を組合せ別撮像位置記憶部１４に記憶する。
【０２９３】
以上のようにして、組合せ別撮像位置算出部１７が撮像画像群Ｇ１１〜１３に対応する撮像位置群を求めると、条件別撮像位置選択部１８は、上記撮像位置群Ｐａｂｃから、撮像位置群Ｐａに含まれる各撮像位置と距離が近いＡ個の撮像位置を選択してこれを撮像位置群Ｐａ’とする。また、条件別撮像位置選択部１８は、残りのＢ＋Ｃ個の撮像位置を撮像位置群Ｐｂｃとする（Ｓ４０４）。
【０２９４】
続いて、条件別撮像位置選択部１８は、上記求めた撮像位置群Ｐｂｃから、撮像位置群Ｐｃに含まれる各撮像位置と距離が近いＣ個の撮像位置を選択してこれを撮像位置群Ｐｃ’とする。また、条件別撮像位置選択部１８は、残りのＢ＋Ｃ個の撮像位置を撮像位置群Ｐｂとする（Ｓ４０４）。この撮像位置群Ｐｂに対しては重み付けが行なわれず、このまま露光時間ｂで撮像を行なう撮像位置として決定される。
【０２９５】
一方、露光時間ａまたはｃで撮像を行なう撮像位置については、重み付けによって最終的な撮像位置が決定される。すなわち、組合せ別撮像位置算出部１７および条件別撮像位置選択部１８は、撮像画像群Ｐａ、Ｐｃ、Ｐａ’、Ｐｃ’の各撮像位置を決定した後、その旨を重み付け撮像位置決定部１９に伝達する。
【０２９６】
そして、伝達を受けた重み付け撮像位置決定部１９は、撮像画像群ＰａとＰａ’とで重み付けを行なって露光時間ａで撮像するＡ個の最終的な撮像位置を算出する。また、重み付け撮像位置決定部１９は、撮像画像群ＰｃとＰｃ’とで重み付けを行なって露光時間ｃで撮像するＣ個の最終的な撮像位置を算出する（Ｓ４０６）。
【０２９７】
以上の処理により、露光時間ａで撮像するＡ個の撮像位置と、露光時間ｂで撮像するＢ個の撮像位置と、露光時間ｃで撮像するＣ個の撮像位置とが求められ、これらの撮像位置が撮像条件保存部３２に格納されて、撮像位置決定処理は終了する。
【０２９８】
このように、撮像条件が３種類である場合も、撮像条件が２種類である場合と同様に、まず、優先度の高い撮像条件で撮像する撮像位置（図１０の撮像位置群Ｐａ、図１６の撮像位置群Ｐａ、Ｐｃ）が上記〔撮像位置を分散する手法〕で説明した方法によって求められる。
【０２９９】
そして、優先度の低い撮像条件で撮像する撮像位置（図１０および図１６の撮像位置群Ｐｂ）は、通常の撮像位置（図１２、図１３参照）となる。また、この通常の撮像位置のうち、撮像位置として決定されなかったもの（図１０の撮像位置群Ｐａ’、図１６の撮像位置群Ｐａ’、Ｐｃ’）と、上記〔撮像位置を分散する手法〕で説明した方法によって求められた撮像位置（図１０の撮像位置群Ｐａ、図１６の撮像位置群Ｐａ、Ｐｃ）とでペアが形成される。そして、形成されたペア間で重み付けを行なうことによって、最終的な撮像位置が決定される。
【０３００】
なお、図１０の例では、撮像位置群Ｐａｂの中から撮像位置群Ｐｂを決定し、決定されなかった撮像位置を撮像位置群Ｐａ’としており、図１６の例では、撮像位置群Ｐａｂｃの中から撮像位置群Ｐａに対応する位置のものを撮像位置群Ｐａ’として決定し、さらに撮像位置群Ｐｂｃの中から撮像位置群Ｐｃに対応する位置のものを撮像位置群Ｐｃ’として決定している。そして、選択されなかった撮像位置を撮像位置群Ｐｂとしている。
【０３０１】
つまり、図１０の例と図１６の例とでは、優先度の低い撮像条件に対応する撮像位置の決定プロセスが逆転している。この処理では、図１８や図１２、図１３に示すような一般的な撮像位置の中から、優先度の低い撮像条件に対応する撮像位置と、優先度の高い撮像条件に対応する撮像位置とが選択されればよいので、何れのプロセスを採用しても構わない。
【０３０２】
〔その他の高解像度化処理への適用〕
上記では、撮像位置決定装置１０によって決定された撮像位置で撮像した撮像画像データを用いて超解像処理を行なう例について説明したが、この撮像画像データは、超解像処理以外の高解像度化手法においても利用することが可能である。
【０３０３】
例えば、補間による高解像度化の手法について適用することができる。補間によって撮像画像データを高解像度化する場合には、高解像画像データの各画素データを周囲の撮像画像データの画素データに基づいて生成する補間処理を行なう。
【０３０４】
ここで、周囲の撮像画像データにおいて白とび領域等の有効な画像情報が欠落した領域が含まれる場合には、高解像度画像データの画素データが、離れた位置にある撮像画素データの画素から算出される。このような場合には、補間処理の精度が低下してしまう。
【０３０５】
これに対し、以上に説明した撮像位置決定方法を用いて、撮像位置が分散するように撮像位置を決定して得た撮像画像データを用いる場合には、補間処理の対象となる画素がほぼ均一に分散するので、補間処理の精度の低下を防ぐことができる。なお、この場合には、複数の露光時間で撮像を行なって得た撮像画像データを用いるので、撮像画像データの輝度値を正規化した後で補間処理が行なわれる。
【０３０６】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【０３０７】
〔ソフトウェアで構成する場合の例〕
最後に、撮像位置決定装置１０の各ブロック、特に組合せ別撮像位置算出部１７、条件別撮像位置選択部１８および重み付け撮像位置決定部１９は、ハードウェアロジックによって構成してもよいし、次のようにＣＰＵを用いてソフトウェアによって実現してもよい。
【０３０８】
すなわち、撮像位置決定装置１０は、各機能を実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである撮像位置決定装置１０の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記撮像位置決定装置１０に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０３０９】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などを用いることができる。
【０３１０】
また、撮像位置決定装置１０を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【産業上の利用可能性】
【０３１１】
本発明によれば、撮像回数を増加させることなく、効率的に高解像画像データのダイナミックレンジを拡大することができる。このため、高解像度化処理を行なう画像処理システムに広く適用できる。
【図面の簡単な説明】
【０３１２】
【図１】本発明の実施の形態を示すものであり、撮像位置決定装置の要部構成を示すブロック図である。
【図２】上記撮像位置決定装置を含む画像処理システムの要部構成を示すブロック図である。
【図３】上記画像処理システムに含まれるＤＲ拡大超解像処理部の要部構成を示すブロック図である。
【図４】上記ＤＲ拡大超解像処理部において実行される超解像処理の一例を示すフローチャートである。
【図５】上記撮像位置決定装置の撮像情報記憶部が記憶している撮像情報の一例を示すデータテーブルである。
【図６】高解像度画像データにおいて、異なる撮像条件で撮像された撮像画像データに由来する画素の配置の一例を示す図であり、同図（ａ）は高解像度画像データの生成に用いられた撮像画像データにハレーション等が発生していない状態を示し、同図（ｂ）は高解像度画像データの生成に用いられた撮像画像データのうち、露光時間が長い撮像画像データにハレーションが発生している状態を示している。
【図７】撮像位置の位置関係を把握する手法を示す説明図である。
【図８】撮像素子の枠内に含まれる４つの撮像位置を２次元座標で表した説明図である。
【図９】撮像素子と、当該撮像素子に隣接する撮像素子との位置関係を２次元座標で表した説明図である。
【図１０】上記撮像位置決定装置が撮像位置を決定する処理である撮像位置決定処理の一例を示すフローチャートである。
【図１１】９回の撮像を行なう場合に、９回のうち４回の撮像を行なう撮像位置が均等になるように決定した撮像位置を示す図である。
【図１２】９回の撮像を行なう撮像位置が均等になるように決定した撮像位置を示す図である。
【図１３】９回の撮像を行なう撮像位置が均等になるように決定した撮像位置から選択した９つの撮像位置から選択された５つの撮像位置に対応する高解像度画像データの画素の配置を示す図である。
【図１４】上記撮像位置決定装置によって最終的に決定された撮像位置の一例を示す図である。
【図１５】上記撮像位置決定装置によって生成される撮像条件のデータ構造の一例を示す図である。
【図１６】上記撮像位置決定装置において、撮像条件が３通りの場合に撮像位置を決定する場合における処理の流れの一例を示すフローチャートである。
【図１７】従来の超解像処理方法の一例を示すフローチャートである。
【図１８】超解像処理に用いる撮像画像データの撮像方法を示す模式図である。
【符号の説明】
【０３１３】
１  画像処理システム（画像生成装置）
１０  撮像位置決定装置（撮像位置決定手段）
１７  組合せ別撮像位置決定部（第１撮像位置設定手段）
１８  条件別撮像位置選択部（第２撮像位置設定手段）
１９  重み付け撮像位置決定部（重み付け撮像位置設定手段）
３５  ダイナミックレンジ拡大超解像処理部（高解像度画像生成手段）
【図１】
2010073035.tif 000013
【図２】
2010073035.tif 000014
【図３】
2010073035.tif 000015
【図４】
2010073035.tif 000016
【図５】
2010073035.tif 000017
【図６】
2010073035.tif 000018
【図７】
2010073035.tif 000019
【図８】
2010073035.tif 000020
【図９】
2010073035.tif 000021
【図１０】
2010073035.tif 000022
【図１１】
2010073035.tif 000023
【図１２】
2010073035.tif 000024
【図１３】
2010073035.tif 000025
【図１４】
2010073035.tif 000026
【図１５】
2010073035.tif 000027
【図１６】
2010073035.tif 000028
【図１７】
2010073035.tif 000029
【図１８】
2010073035.tif 000030