(57)【特許請求の範囲】
【請求項１】
互いに重複する重複領域部分を有する複数の画像を合成する画像合成装置において、
互いに隣接する画像間の前記重複領域部分において、対応点座標に基づき座標変換パラメータを生成する座標変換パラメータ生成手段と、
前記互いに隣接する画像間の前記重複領域部分において、対応する領域の画素値に基づいて階調変換パラメータを生成するとともに、前記重複領域部分が複数箇所存在した場合には、その複数の重複領域部分それぞれにおける画像間の画素値の差分を前記複数箇所の重複領域部分それぞれに分散させることによって最適化された階調変換パラメータを生成する階調変換パラメータ生成手段と、
前記座標変換パラメータおよび前記階調変換パラメータに基づき前記複数の画像を合成する合成手段と
を備えることを特徴とする画像合成装置。
【請求項２】
前記複数の画像の組合せは、縦、横それぞれｍ枚の組合せからなることを特徴とする請求項１記載の画像合成装置。
【請求項３】
互いに重複する重複領域部分を有する複数の画像を合成する画像合成方法において、
互いに隣接する画像間の前記重複領域部分において、対応点座標に基づき座標変換パラメータを生成する座標変換パラメータ生成工程と、
前記互いに隣接する画像間の前記重複領域部分において、対応する領域の画素値に基づいて階調変換パラメータを生成するとともに、前記重複領域部分が複数箇所存在した場合には、その複数の重複領域部分それぞれにおける画像間の画素値の差分を前記複数箇所の重複領域部分それぞれに分散させることによって最適化された階調変換パラメータを生成する階調変換パラメータ生成工程と、
前記座標変換パラメータおよび前記階調変換パラメータに基づき前記複数の画像を合成する合成工程と
を有することを特徴とする画像合成方法。
【請求項４】
互いに重複する領域部分を有する複数の画像を合成する画像合成システムを構築するためのプログラムを格納した記憶媒体において、
前記プログラムは、
互いに隣接する画像間の前記重複領域部分において、対応点座標に基づき座標変換パラメータを生成する座標変換パラメータ生成モジュールと、
前記互いに隣接する画像間の前記重複領域部分において、対応する領域の画素値に基づいて階調変換パラメータを生成するとともに、前記重複領域部分が複数箇所存在した場合には、その複数の重複領域部分それぞれにおける画像間の画素値の差分を前記複数箇所の重複領域部分それぞれに分散させることによって最適化された階調変換パラメータを生成する階調変換パラメータ生成モジュールと、
前記補正モジュールの実行によって生成された前記座標変換パラメータおよび前記階調変換パラメータに基づき前記複数の画像を合成する合成モジュールと
を有することを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、互いに重複する領域部分を有する複数の画像を合成する画像合成装置、画像合成方法および画像合成システムを構築するためのプログラムを格納した記憶媒体に関する。
【０００２】
【従来の技術】
従来、被写体を互いに重複する領域部分を有する複数の画像に分割して撮像し、この撮像された複数の画像を合成してパノラマまたは高精細な画像を生成する際には、複数の画像の中の隣接する画像間のつなぎ目が整合するように、各画像の回転、倍率補正、並進などの画像操作により各画像を合成する手法が用いられている。
【０００３】
【発明が解決しようとする課題】
しかし、上述した従来の画像合成手法では、隣接する画像間のつなぎ目の整合性すなわち隣接する画像間のつなぎ目の位置合せを考慮するのみであり、合成する各画像に対する整合性を調整していないから、各隣接する画像間の中である隣接する画像間のつなぎ目を整合させることすなわちつなぎ目の位置合せを行うことができない場合がある。例えば、図１６（ａ）に示すように、互いに重複する領域部分を有する複数の画像３００，３０１，３０２，３０３を合成する場合、各画像３００，３０１，３０２，３０３間のつなぎ目が整合するように、各画像３００，３０１，３０２，３０３に対し回転、倍率補正、並進などの画像操作が行われる。しかし、図１６（ｂ）に示すように、これらの画像操作により画像３００−画像３０１、画像３００−画像３０２、画像３０１−画像３０３間のつなぎ目は整合されるが、画像３０２−画像３０３間のつなぎ目の整合性を取ることができないことがあり、このつなぎ目の不整合により領域６５０に見られるように画像３０２−画像３０３間の重複部分の画像の位置ずれが生じる。
【０００４】
また、つなぎ目が整合しない隣接画像間の数が増すと、つなぎ目が整合しない部分すなわち位置ずれが生じた画像が目立ち、合成画像の品質が著しく低下することになる。
【０００５】
さらに、従来の画像合成手法では、隣接する画像間に大きな輝度または色の差があるときには、隣接する画像間の輝度または色に対する整合性を取るすなわち階調合せを行うことができないから、輝度または色むらが生じた画像部分を含む合成画像が生成されることになり、高品質の合成画像を得ることはできない。
【０００６】
本発明の目的は、合成する複数の画像中の隣接する画像間の位置合せおよび階調合せを高精度に実行することができ、高品質の合成画像を得ることができる画像合成装置、画像合成方法および記憶媒体を提供することにある。
【００１２】
【課題を解決するための手段】
請求項１記載の発明は、互いに重複する重複領域部分を有する複数の画像を合成する画像合成装置において、互いに隣接する画像間の前記重複領域部分において、対応点座標に基づき座標変換パラメータを生成する座標変換パラメータ生成手段と、前記互いに隣接する画像間の前記重複領域部分において、対応する領域の画素値に基づいて階調変換パラメータを生成するとともに、前記重複領域部分が複数箇所存在した場合には、その複数の重複領域部分それぞれにおける画像間の画素値の差分を前記複数箇所の重複領域部分それぞれに分散させることによって最適化された階調変換パラメータを生成する階調変換パラメータ生成手段と、前記座標変換パラメータおよび前記階調変換パラメータに基づき前記複数の画像を合成する合成手段とを備えることを特徴とする。
【００１３】
請求項３記載の発明は、互いに重複する重複領域部分を有する複数の画像を合成する画像合成方法において、互いに隣接する画像間の前記重複領域部分において、対応点座標に基づき座標変換パラメータを生成する座標変換パラメータ生成工程と、前記互いに隣接する画像間の前記重複領域部分において、対応する領域の画素値に基づいて階調変換パラメータを生成するとともに、前記重複領域部分が複数箇所存在した場合には、その複数の重複領域部分それぞれにおける画像間の画素値の差分を前記複数箇所の重複領域部分それぞれに分散させることによって最適化された階調変換パラメータを生成する階調変換パラメータ生成工程と、前記座標変換パラメータおよび前記階調変換パラメータに基づき前記複数の画像を合成する合成工程とを有することを特徴とする。
【００１４】
請求項４記載の発明は、互いに重複する領域部分を有する複数の画像を合成する画像合成システムを構築するためのプログラムを格納した記憶媒体において、前記プログラムは、互いに隣接する画像間の前記重複領域部分において、対応点座標に基づき座標変換パラメータを生成する座標変換パラメータ生成モジュールと、前記互いに隣接する画像間の前記重複領域部分において、対応する領域の画素値に基づいて階調変換パラメータを生成するとともに、前記重複領域部分が複数箇所存在した場合には、その複数の重複領域部分それぞれにおける画像間の画素値の差分を前記複数箇所の重複領域部分それぞれに分散させることによって最適化された階調変換パラメータを生成する階調変換パラメータ生成モジュールと、前記補正モジュールの実行によって生成された前記座標変換パラメータおよび前記階調変換パラメータに基づき前記複数の画像を合成する合成モジュールとを有することを特徴とする。
【００３３】
【発明の実施の形態】
以下に本発明の実施の形態について図を参照しながら説明する。
【００３４】
（実施の第１形態）
図１は本発明の画像合成装置の実施の第１形態の基本構成を示すブロック図である。
【００３５】
画像合成装置は、図１に示すように、複数の画像を入力するための画像入力部１０１を備える。画像入力部１０１に入力される複数の画像は、１つの被写体を分割撮影することによって得られた、互いに重複する領域を有する複数の画像などである。画像入力部１０１に入力された複数の画像はメモリ１０２に保持され、メモリ１０２は、前記複数の画像とともに、後述する座標変換パラメータなど、前記複数の画像を合成する際に必要な情報を保持する。メモリ１０２に保持された複数の画像の中の互いに隣接する２つの画像は画像選択部１０３で選択され、選択された互いに隣接する２つの画像は隣接画像パラメータ生成部１０４に入力される。
【００３６】
隣接画像パラメータ生成部１０４は、入力された２つの画像間の位置合せのための座標変換パラメータ生成処理および入力された２つの画像間の階調合せのための階調変換パラメータ生成処理を行う。座標変換パラメータ生成処理では、入力された２つの画像間の複数の対応点座標を抽出し、抽出した各対応点座標に基づき座標変換パラメータを生成する。階調変換パラメータ生成処理では、２つの画像間の対応する領域の画素値に基づき階調変換パラメータを生成する。この各パラメータ生成処理の詳細内容については後述する。座標変換パラメータおよび階調変換パラメータは、入力された複数の画像の中の隣接する画像間の全てに対し生成される。
【００３７】
生成された座標変換パラメータおよび階調変換パラメータはメモリ１０２に一旦保持され、各画像間に対する座標変換パラメータおよび階調変換パラメータがメモリ１０２に保持されると、各座標変換パラメータおよび各階調変換パラメータが読み出されて全画像調整部１０５に入力される。全画像調整部１０５は、各画像間のつなぎ目位置および階調が整合するように、各座標変換パラメータおよび各階調変換パラメータの最適化処理を行う。この最適化処理の詳細内容については後述する。
【００３８】
最適化処理により処理された座標変換パラメータおよび階調変換パラメータは全画像合成部１０６に入力され、全画像合成部１０６は最適化処理により処理された座標変換パラメータおよび階調変換パラメータに基づき入力した複数の画像を合成する。合成された画像は合成画像メモリ１０７に保持され、合成画像メモリ１０７に保持された画像は画像表示部１０８に表示される。
【００３９】
次に、本実施の形態における画像合成処理について図２ないし図１０を参照しながら説明する。図２は図１の画像合成装置による画像合成処理の手順を示すフローチャート、図３は図２のステップＳ２０２およびステップＳ２０３における処理内容を説明するための図、図４は図２のステップＳ２０４における処理内容を説明するための図、図５は図２のステップＳ２０５における階調補正テーブルの生成に用いられる補正関数ｆの算出を説明するための図、図６は図２のステップＳ２０５で生成された階調補正テーブルの一例を示す図、図７は図２のステップＳ２０７における座標変換パラメータの最適化処理の一例を説明するための図、図８は図２のステップＳ２０８における画像合成処理の詳細を示すフローチャート、図９は図２のステップＳ２０８における各画像を合成する際の各画像の配置関係の一例を示す図、図１０は図１の画像合成装置により得られた合成画像の一例を示す図である。
【００４０】
画像入力部１０１に入力された複数の画像を合成するときには、図２に示すように、まずステップＳ２０１において画像選択部１０２でメモリ１０２に保持された複数の画像の中の互いに隣接する２つの画像を画像選択部１０３で選択する。
【００４１】
次いで、隣接画像パラメータ生成部１０４によりステップＳ２０２からステップＳ２０５までの処理を順に実行する。まず、ステップＳ２０２では、選択した２つの画像間の対応点を抽出し、この抽出した対応点の座標を算出する。この画像間の対応点の抽出方式としては、テンプレートマッチング方式を用いている。テンプレートマッチング方式においては、図３（ａ）に示すように、互いに隣接する２つの画像として画像７０１，７０２が選択されたとすると、画像７０１に矩形の領域からなるテンプレート７０３を設定し、画像７０２上でテンプレートをサーチしながら各位置におけるテンプレート７０３内の各画素と画像７０２上の対応する画素位置との差の絶対値を加算し、この加算した値により対応点の評価を行う。具体的には、画像７０１上の点７１０ａを中心とするテンプレート７０３を３×３の領域とし、このテンプレートを画像７０２上で１画素づつ移動させながら各位置における画素間の差の絶対値の和を比較し、最小値を与える位置を点７１０ａに対応する点７１０ｂとする。このように、画像７０１上に設定したテンプレートを用いた処理を行うことにより画像７０１，７０２間の複数の対応点が得られ、各対応点の座標が算出される。本例では、画像７０１−７０２間の複数の対応点として点７１０ａ−７１０ｂ、点７１１ａ−７１１ｂ、点７１２ａ−７１２ｂ、点７１３ａ−７１３ｂが得られ、各点の座標が求められる。なお、この対応点抽出を、画像をエッジ画像に変換して実行することも可能であり、また、縮小した画像などを用いることができることはいうまでもない。
【００４２】
続くステップＳ２０３では、各画像間の対応点の座標を用いて隣接する画像間の座標変換パラメータを生成する。この座標変換パラメータは、一方の画像を基準として他方の画像を合成する際に画像間のつなぎ目の位置合せを行うためのパラメータであって、例えば、図３（ａ）に示す画像７０１を基準として画像７０２を合成する際に画像７０１，７０２間のつなぎ目の位置合せを行うためのパラメータとして用いられる。隣接する画像間において一方の画像を基準として他方の画像を合成する際に行われる座標変換は、次の（１）式に基づき行われる。
【００４３】
【数１】
0004006056.tif 000002
この上記（１）式の関係を満足させるパラメータＭが座標変換パラメータであり、このパラメータＭは各画像間の対応点の座標を用いて最小二乗法などにより求められる。求められた座標変換パラメータはメモリ１０２に保持される。このようにして隣接する画像間のつなぎ目の位置合せを行うための座標変換パラメータが求められる。例えば画像７０１−７０２間の座標変換パラメータを用いて画像７０１を基準にして画像７０２を合成する場合、図３（ｂ）に示すように、画像７０１−７０２間の重複領域の中心線７３０を境界として、中心線７３０の左側の画像部分が画像７０１の画素で構成され、中心線７３０の右側の画像部分が画像７０２の画素で構成された合成画像が得られることになる。
【００４４】
次いで、ステップＳ２０４に進み、隣接する２つの画像と該画像間の座標変換パラメータとを用いて階調補正用サンプル点の画素値を抽出する。この処理では、まずサンプル点の抽出を行う。このサンプル点の抽出では、具体的には図４に示すように、画像７０１と画像７０２との間の重複領域の画像を用いて、画像７０１の重複領域において階調補正用サンプル点を設定する。本例では、画像７０１の重複領域における階調補正用サンプル点として点８０１ａ〜８０５ａを設定している。各サンプル点８０１ａ〜８０５ａが設定されると、各サンプル点８０１ａ〜８０５ａに対応する画像７０２上のサンプル点８０１ｂ〜８０５ｂの座標が、上記の（１）式に基づき算出される。例えば、サンプル点８０１ａの座標をｕ0 とし、これに対応する画像７０２上の点８０１ｂの座標をｕ1 とし、画像７０１−７０２間の座標変換パラメータをＭとすると、サンプル点８０１ａの座標ｕ0 および座標変換パラメータＭを上記（１）式に代入することにより、画像７０２上の対応サンプル点８０１ｂの座標ｕ1 が求められる。同様の手順で、他のサンプル点８０２ａ〜８０５ａに対する画像７０２上の対応サンプル点８０２ｂ〜８０５ｂの座標が求められる。隣接する画像間における各サンプル点が求められると、各サンプル点の画素値（レッド、グリーン、ブルー）が抽出され、抽出された各サンプル点の画素値はメモリ１０２に一旦保持される。
【００４５】
隣接する画像間における各サンプル点の画素値が抽出されると、ステップＳ２０５に進み、抽出した各サンプル点の画素値を用いて隣接する画像間の階調合わせを行うための階調補正テーブルを作成する。この階調補正テーブルの作成では、まず、隣接する画像の一方におけるサンプル点の画素値と他方におけるサンプル点の画素値との関係を近似的に表す補正関数ｆを生成し、次いで補正関数ｆに基づき隣接する２つの画像を合成する際に一方の画像の画素値に他方の画像の画素値を一致させるための階調変換パラメータを記述した階調補正テーブルを作成する。具体的には、図５に示すように、画像７０２（図４に示す）におけるサンプルデータ（サンプル点Ｐ0 の画素値）Ｉ1 を横軸に、画像７０１（図４に示す）におけるサンプルデータ（サンプル点Ｐ0 の画素値）Ｉ0 を縦軸にとり、プロットした各サンプル点の画素値の関係を近似的に表す補正関数ｆ（Ｉ0 ＝ｆ（Ｉ1 ））を最小二乗法などにより求める。この補正関数ｆは各色レッド、グリーン、ブルーの各色毎に求められ、各色の補正関数ｆが求められると、補正関数ｆに基づき画像７０１と画像７０２とを合成する際に画像７０１の画素値に画像７０２の画素値を一致させるための階調変換パラメータ値を記述した階調補正テーブルが作成される。例えば８ビット階調の場合には、階調補正テーブルとして、図６に示すようなテーブルが各色毎に得られ、階調補正テーブルには、補正前の各階調レベル毎に補正後の値が階調変換パラメータ値として記述されている。この各色毎に作成された階調補正テーブルはメモリ１０２に保持される。
【００４６】
次いで、ステップＳ２０６に進み、メモリ１０２に保持された入力画像における全ての隣接する画像間に対しステップＳ２０２からステップＳ２０５までの処理が終了したか否かを判定し、全ての隣接する画像間に対しステップＳ２０２からステップＳ２０５までの処理が終了していないときには、再度ステップＳ２０１に戻り、次の隣接する２つの画像の選択を行い、この画像間に対しステップＳ２０２からの処理を実行する。これに対し、全ての隣接する画像間に対しステップＳ２０２からステップＳ２０５までの処理が終了したときには、ステップＳ２０７に進む。
【００４７】
ステップＳ２０７では、全画像調整部１０５により、入力した全画像中の全ての隣接する画像間の座標変換パラメータおよび階調変換パラメータの最適化処理を行う。例えば図１６（ａ）に示す４つの画像３００，３０１，３０２，３０３が入力された場合、各画像３０１，３０２，３０３，３０４における各画像間の関係は次の（２）〜（５）式により表される。
【００４８】
ｕ1 ＝Ｍ1 ｕ0  …（２）
ｕ2 ＝Ｍ2 ｕ0  …（３）
ｕ3 ＝Ｍ3 ｕ1  …（４）
ｕ3 ＝Ｍ3'ｕ0  …（５）
ここで、ｕ0 ，ｕ1 ，ｕ2 ，ｕ3 は画像３００，３０１，３０２，３０３上の対応点の座標を表し、パラメータＭ1 ，Ｍ2 ，Ｍ3 ，Ｍ3'は画像３００−３０１間、画像３００−３０２間、画像３００−３０３間、画像３０２−３０３間の座標変換パラメータを表す。また、パラメータＭ1 ，Ｍ2 ，Ｍ3 ，Ｍ3'は、図７に示す関係にあり、この画像３０２−３０３間の座標変換パラメータＭ3'は次の（６）式で表される。
【００４９】
Ｍ3'＝Ｍ3 Ｍ1 Ｍ2-1  …（６）
従って、座標変換パラメータの最適化は、最小二乗法などにより次の（７）式で表す評価式Ｅを最小にするパラメータＭ1 ，Ｍ2 ，Ｍ3 を求めることにより実現される。
【００５０】
0004006056.tif 000003
このように、上記の（７）式で示す評価式Ｅを最小にするすなわち最適化されたパラメータＭ1 ，Ｍ2 ，Ｍ3 を用いることにより、図１０に示すように、画像３００−３０１間、画像３００−３０２間、画像３００−３０３間、画像３０２−３０３間のつなぎ目位置のずれがほぼない合成画像を得ることができる。この最適化されたパラメータＭ1 ，Ｍ2 ，Ｍ3 はメモリ１０２に一旦保持される。
【００５１】
次に、階調変換パラメータの最適化処理を図１６（ａ）に示す４つの画像３００，３０１，３０２，３０３が入力された場合を例に説明する。各画像３０１，３０２，３０３，３０４における各画像間の補正関数ｆ1 ，ｆ2 ，ｆ3 ，ｆ3'とすると、補正関数ｆ1 ，ｆ2 ，ｆ3 ，ｆ3'は次の（８）〜（１１）式により表される。
【００５２】
Ｉ0 ＝ｆ1 （Ｉ1 ）                                        …（８）
Ｉ0 ＝ｆ2 （Ｉ2 ）                                        …（９）
Ｉ1 ＝ｆ3 （Ｉ3 ）                                      …（１０）
Ｉ2 ＝ｆ3'（Ｉ3 ）                                      …（１１）
なお、Ｉ0 ，Ｉ1 ，Ｉ2 ，Ｉ3 は画像３００，３０１，３０２，３０３上のそれぞれのサンプル点の画素値を表し、各補正関数ｆ1 ，ｆ2 ，ｆ3 ，ｆ3'はレッド、グリーン、ブルーの各色毎に求められている。また、画像３０２−３０３間の補正関数ｆ3'は次の（１２）式で表されるものとする。
【００５３】
ｆ3'＝ｆ2-1 （ｆ1 （ｆ3 ））                            …（１２）
ここで、次の（１３）式で表す評価式Ｉを最小にする補正関数ｆ1 ，ｆ2 ，ｆ3 を求めることにより，各画像間の階調のずれをほぼなくすような最適な補正関数ｆ1 ，ｆ2 ，ｆ3 が得られる。
【００５４】
0004006056.tif 000004
このように、各補正関数ｆ1 ，ｆ2 ，ｆ3 は各色毎に最適化され、最適化された補正関数ｆ1 ，ｆ2 ，ｆ3 に基づき階調補正テーブルが作成される。この作成された階調補正テーブルは最適化された階調変換パラメータ値を記述したテーブルとなる。この各色毎に最適化された階調補正テーブルはメモリ１０２に一旦保持される。
【００５５】
座標変換パラメータおよび階調変換パラメータの最適化処理が終了すると、ステップＳ２０８に進み、全画像合成部１０６により、最適化された座標変換パラメータおよび階調変換パラメータに基づき入力した各画像を合成して１枚の合成画像を生成する。
【００５６】
この画像合成処理では、図８に示すように、まずステップＳ８０１においてメモリ１０２から入力された全画像の中から合成画像メモリ１０７に書き込む１枚の画像を選択し、続くステップＳ８０２で、選択した画像に対し最適化された座標変換パラメータおよび階調変換パラメータ（すなわち階調補正テーブル）をメモリ１０２から読み込む。
【００５７】
次いで、ステップＳ８０３に進み、最適化された座標変換パラメータの変換および最適化された階調変換パラメータ用いた階調補正テーブルの作成を行う。ここで、最適化された座標変換パラメータの変換とは、選択した画像に対する座標変換パラメータ（ステップＳ８０２で読み込んだ座標変換パラメータ）を、合成する画像の配置において左上隅に位置決めされる画像を基準とした値に変換することをいい、最適化された階調変換パラメータ用いた基準階調補正テーブルの作成とは、選択した画像に対する階調変換パラメータ（ステップＳ８０２で読み込んだ階調変換パラメータ）を、合成する画像の配置において左上隅に位置決めされる画像を基準とした値に変換し、この変換された階調変換パラメータ値を記述した階調補正テーブルを作成することをいう。
【００５８】
続くステップＳ８０４では、ステップＳ８０３の処理で得られた座標変換パラメータおよび階調補正テーブルに基づきステップＳ８０１で選択した画像が構成する合成画像部分の画像データを生成し、この画像データを合成画像メモリ１０７に書き込む。具体的には、ステップＳ８０３の処理で得られた座標変換パラメータに基づきステップＳ８０１で選択した画像を構成する画素の位置を決定し、この決定した画素の位置における画素値をステップＳ８０３の処理で得られた階調補正テーブルを参照しながら変換することにより、ステップＳ８０１で選択した画像が構成する合成画像部分の画像データを生成する。
【００５９】
次いで、ステップＳ８０５に進み、入力した全画像に対する画像データの書き込みが終了したか否かを判定し、入力した全画像に対する画像データの書き込みが終了していなければ、再度ステップＳ８０１に戻り、該ステップＳ８０１からの処理を繰り返し実行する。入力した全画像に対する画像データの書き込みが終了すると、本処理を終了する。
【００６０】
本合成処理において例えば、図１６（ａ）に示す４つの画像３００，３０１，３０２，３０３が入力された場合、図９に示すように、各画像３００，３０１，３０２，３０３を合成する際の配置において左上隅の画像すなわち画像３００が基準画像として設定されるとともに、各画像３００，３０１，３０２，３０３のそれぞれにより構成される合成画像領域部分（点線で区切られた各領域）が設定される。画像３００が選択されたときには、画像３００は基準画像となるから、画像３００に対する座標変換および階調変換を行うことなく画像３００により構成される合成画像領域部分の画像データが合成画像メモリ１０７に書き込まれる。
【００６１】
次いで、画像３０１が選択されると、画像３０１に対する座標変換パラメータおよび階調変換パラメータを左上隅の画像３００を基準とした値にそれぞれ変換され、これらのパラメータを用いて画像３０１により構成される合成画像領域部分の画像データが合成画像メモリ１０７に書き込まれる。ここで、画像３００を基準として変換された座標変換パラメータをＭ1aとし、画像３００を基準として変換された階調変換パラメータを記述した階調補正テーブルをＴ1aとし、座標変換パラメータＭ1aに基づき座標変換された画像３０１により構成される合成画像領域部分の画素の位置座標をｕg とし、位置座標ｕg で表される画像３０１の画素位置における画素値をＩ（Ｍ1aｕg ）とすると、画像３０１により構成される合成画像領域部分の位置座標ｕg で表される画素位置における画素値Ｉ（ｕg ）は、次の（１４）式により表される。
【００６２】
Ｉ（ｕg ）＝Ｔ1a［Ｉ（Ｍ1aｕg ）］                      …（１４）
この画像３０１に対する画像データと同様に、各画像３０２，３０３により構成される合成画像領域部分の画像データが合成画像メモリ１０７に書き込まれる。
【００６３】
このように、入力された各画像のそれぞれにより構成される合成画像領域部分の画像データが合成画像メモリ１０７に書き込まれると、画像表示部１０８に入力された各画像により構成された合成画像が表示されるとともに、この合成画像は必要に応じて記録媒体に記録される。例えば、図１６（ａ）に示す４つの画像３００，３０１，３０２，３０３から構成される合成画像としては、図１０に示すように、画像３００−３０１間、画像３００−３０２間、画像３００−３０３間、画像３０２−３０３間のつなぎ目位置のずれおよび階調のずれがほぼない合成画像が得られる。
【００６４】
以上により、本実施の形態では、入力した複数の画像中の隣接する画像間の座標変換パラメータおよび階調変換パラメータの補正を行い、補正した座標変換パラメータおよび階調変換パラメータに基づき入力した各画像を合成するから、複数の画像中の隣接する画像間の位置合せおよび階調合せを高精度に実行することができ、つなぎ目位置のずれおよび階調のずれがほぼない高品質の合成画像を得ることができる。
【００６５】
なお、本実施の形態における画像合成装置を、画像合成システム用プログラムをフロッピーディスク、ＣＤ−ＲＯＭなどの記憶媒体からパーソナルコンピュータなどの情報処理装置に供給し、このプログラムを実行することによって構成することも可能である。例えば、ＣＰＵ、ＲＡＭなどのメモリ、画像を入力するための画像入力インタフェース、ＣＲＴを備えるパーソナルコンピュータを用いて画像合成システム用プログラムを記憶媒体から読み出して実行することにより、上述の画像合成装置と同じ機能を有する画像合成システムを構築することができる。この場合、画像合成システム用プログラムは、互いに重複する部分を有する複数の画像を画像入力インタフェースを介して入力するためのモジュールと、入力された複数の画像をメモリに保持するためのモジュールと、メモリに保持された複数の画像の中の互いに隣接する２つの画像を選択するモジュールと、選択した２つの画像間の位置合せのための座標変換パラメータ生成処理および入力された２つの画像間の階調合せのための階調変換パラメータ生成処理を行うモジュールと、各画像間のつなぎ目位置および階調が整合するように、各座標変換パラメータおよび各階調変換パラメータの最適化処理を行うモジュールと、最適化処理により処理された座標変換パラメータおよび階調変換パラメータに基づき入力した複数の画像を合成するモジュールと、合成された画像をＣＲＴに表示するモジュールとを含む。
【００６６】
（実施の第２形態）
次に、本発明の実施の第２形態について図１１を参照しながら説明する。図１１は本発明の画像合成装置の実施の第２形態の基本構成を示すブロック図、図１２は図１１の画像合成装置により合成される各画像の配置の一例を示す図である。なお、上述の実施の第１形態と同じ構成部分には同一の符号を付し、その説明を簡略化または省略する。
【００６７】
本実施の形態における画像合成装置は、図１２に示すように、２次元平面上に配置されたｎ×ｍ枚の画像を合成する装置からなり、該装置は、図１１に示すように、全画像調整部１１０および全画像合成部１１１を備える。全画像調整部１１０は、入力した複数の画像の配置に応じて該複数の画像から任意の縦横それぞれ任意の枚数の画像からなる複数のユニットを選択し、選択した各ユニット毎に、それに含まれる隣接画像間のつなぎ目位置および階調が整合するように各座標変換パラメータおよび各階調変換パラメータの最適化処理を行う。この最適化処理の詳細内容については後述する。全画像合成部１１１は、最適化処理により処理された各ユニット毎の座標変換パラメータおよび階調変換パラメータに基づき入力した複数の画像を合成する合成処理を行う。この全画像合成部１１１による画像合成処理の詳細については後述する。
【００６８】
次に、全画像調整部１１０による処理内容について図１２ないし図１４を参照しながら説明する。図１３は図１の画像合成装置の全画像調整部による処理手順を示すフローチャート、図１４は図１３のステップＳ１３０３における階調変換パラメータの最適化処理を説明するための図である。
【００６９】
隣接画像パラメータ生成部１０４により、全ての隣接する画像間に対する座標変換パラメータおよび階調補正テーブル（階調変換パラメータ）が生成されると（上述の図２に示すステップＳ２０１〜Ｓ２０６）、全画像調整部１１０による処理が開始される。全画像調整部１１０では、図１３に示すように、まずステップＳ１３０１において、入力した複数の画像の配置に応じて該複数の画像から任意の縦横それぞれ任意の枚数の画像からなるユニットを選択する。例えば、図１２に示すように、２次元平面上に配置された縦３×横４枚の画像が入力された場合、縦横それぞれ２枚の組合せ画像を１つのユニットとして、入力した画像配置に基づき６つのユニットｕ４１０〜ｕ４１５が設定され、各ユニットｕ４１０〜ｕ４１５の内の１つのユニットが選択される。
【００７０】
次いで、ステップＳ１３０２に進み、ステップＳ１３０１で選択されたユニットに属する画像と対応する座標変換パラメータおよび階調補正テーブル（階調変換パラメータ）とをメモリ１０２から読み込み、読み込んだ座標変換パラメータおよび階調補正テーブル（階調変換パラメータ）の最適化処理を行う。
【００７１】
座標変換パラメータの最適化処理では、次の（１５）式で表す評価式Ｅを評価することにより座標変換パラメータの最適化を行う。
【００７２】
Ｅ＝（ｕ1 −Ｍ1 ｕ0 ）2 ＋（ｕ2 −Ｍ2 ｕ0 ）2 
＋（ｕ3 −Ｍ3 ｕ1 ）2 ＋（ｕ3 −Ｍ3'ｕ2 ）2 ＋αＢ  …（１５）
ここで、ｕ0 ，ｕ1 ，ｕ2 ，ｕ3 は選択したユニットに属する画像上の対応点の座標を表し、Ｍ1 ，Ｍ2 ，Ｍ3 ，Ｍ3'は選択したユニットに属する各画像間の座標変換パラメータを表す。また、Ｂは（ｕ1 −Ｍ1 ｕ0 ）2 、（ｕ2 −Ｍ2 ｕ0 ）2 、（ｕ3 −Ｍ3 ｕ1 ）2 および（ｕ3 −Ｍ3'ｕ2 ）2 のばらつきを表す値であり、αは任意に設定される値である。
【００７３】
上述の（１５）式で表す評価式Ｅに対する評価は最小二乗法などにより行われ、この評価の結果に応じて選択したユニットに対する座標変換パラメータが得られる。この得られた座標変換パラメータはメモリ１０２に保持される。例えば、図１２に示すユニットｕ４１０〜ｕ４１５のそれぞれに対する座標変換パラメータとして、パラメータＭ400a，Ｍ400b，Ｍ400c，Ｍ400dが得られ、各パラメータはメモリ１０２に保持される。
【００７４】
続くステップＳ１３０３では、階調変換パラメータの最適化処理を、座標変換パラメータの最適化処理と同様に、選択したユニット毎に実行する。
【００７５】
例えば、図１４に示すように、選択したユニットに４つの画像５００，５０１，５０２，５０３が属するとし、画像５００を基準として画像５０１の階調を合わせるための階調補正テーブルをＴ1 、画像５００を基準として画像５０２の階調を合わせるための階調補正テーブルをＴ2 、画像５０１を基準として画像５０３の階調を合わせるための階調補正テーブルをＴ3 とし、画像５０２−５０３間の対応する点（または領域）をＰ2 およびＰ3 とすると、画像５０２−５０３間の対応点（または領域）Ｐ2 ，Ｐ3 のそれぞれにおける画素値Ｉ2 ，Ｉ3 は、次の（１６）および（１７）式により画像５００の階調基準とした値Ｉ2'，Ｉ3' にそれぞれ変換される。
【００７６】
Ｉ2'＝Ｔ2 ［Ｉ2 ］                                      …（１６）
Ｉ3'＝Ｔ1 ［Ｔ3 ［Ｉ3 ］］                              …（１７）
各画素値Ｉ2'，Ｉ3'が得られると、各画素値Ｉ2'，Ｉ3'の差分ΔＩ（＝Ｉ3'−Ｉ2'）が算出される。この差分ΔＩすなわち画素値Ｉ2'，Ｉ3'の両者の差は理想的には「０」に等しくなるが、実際には誤差などにより「０」にならない。従って、画像５０２−５０３間のつなぎ目において階調の差が顕著に現れることがある。
【００７７】
そこで、本最適化処理においては、差分ΔＩを画像５００−５０１間、画像５００−５０２間、画像５０１−５０３間、画像５０２−５０３間の各画像間のつなぎ目すなわち４か所のつなぎ目に分散させるための処理が行われる。この処理においては、４か所のつなぎ目に差分ΔＩを分散させるために、この差分ΔＩの１／４をΔＩ´とし、このΔＩ´を用いて最適化された階調変換パラメータを記述した階調補正テーブルを作成するためのデータを新たに生成する。この階調補正テーブルの作成においては、画像５０２に対して、画素値Ｉ2 を図５の横軸に、画素値（Ｔ2 ［Ｉ2 ］＋ΔＩ´）を縦軸に対応させてそれぞれの画素値をプロットする。同様に画像５０３に対しては画素値Ｉ3 を図５の横軸に、画素値（Ｔ2 ［Ｉ2 ］＋２ΔＩ´）を縦軸に対応させてそれぞれの画素値をプロットし、画像５０１に対しては画素値（Ｔ3 ［Ｉ3 ］）を図５の横軸に、画素値（Ｔ2 ［Ｉ2 ］＋３ΔＩ´）を縦軸に対応させてそれぞれの画素値をプロットする。このプロットしたデータに基づき補正関数ｆを作成し、補正関数ｆに基づき各画像間の階調補正テーブルを新たに作成する。
【００７８】
この新たに作成された階調補正テーブルは、画像５００を基準として各画像５０１，５０２，５０３のそれぞれを合成する際に用いられる、各画像５００，５０１，５０２，５０３からなるユニットに対し最適化された階調補正テーブル、すなわち最適化された階調変換パラメータを記述した階調補正テーブルとなり、メモリ１０２に保持される。例えば、図１２に示すユニットｕ４１０〜ｕ４１５のそれぞれに対する階調補正テーブルとして、テーブルＴ400a，Ｔ400b，Ｔ400c，Ｔ400dが得られ、各テーブルはメモリ１０２に保持される。
【００７９】
なお、カラー画像を合成する際には、階調補正テーブルの最適化は各色毎に実行される。
【００８０】
次いで、ステップＳ１３０４に進み、設定された全てのユニットに対し最適化処理が終了したか否かを判定し、設定された全てのユニットに対する最適化処理が終了していなければ、再度ステップＳ１３０１に戻り、該ステップＳ１３０１からの処理を設定された全てのユニットに対する最適化処理が終了するまで繰り返す。設定された全てのユニットに対する最適化処理が終了すると、本処理を終了する。
【００８１】
全画像調整部１１０による最適化処理が終了すると、全画像合成部１１１による画像合成処理が開始され、最適化された座標変換パラメータおよび階調変換パラメータに基づき入力した各画像が合成されて１枚の合成画像が生成される。
【００８２】
この画像合成処理では、まず、メモリ１０２から入力された全画像の中から合成画像メモリ１０７に書き込む１枚の画像を選択し、続いて選択した画像に関連する最適化された座標変換パラメータおよび階調変換パラメータ（すなわち階調補正テーブル）をメモリ１０２から読み込み、座標変換パラメータに基づき選択した画像を構成する画素の位置を決定し、この決定した画素の位置における画素値を階調補正テーブルを参照しながら変換することにより、選択した画像が構成する合成画像部分の画像データを生成し、この生成した画像データを画像合成メモリ１０７に書き込む。この処理を入力したすべての画像に対し繰り返し実行することにより、合成画像が生成されることになる。よって、本実施の形態における画像合成処理は、基本的には実施の第１形態で示したフロー（図８に示す）と同じである。
【００８３】
次に、本画像合成処理の具体例について図１５を参照しながら説明する。図１５は図１１の画像合成装置の全画像合成部による画像合成処理を説明するための図である。
【００８４】
図１５を参照するに、入力された全画像の中から合成画像メモリ１０７に書き込む１枚の画像として画像６００が選択された場合、メモリ１０２から画像６００とともに、画像６００が属するユニットの最適化された座標変換パラメータおよび階調補正テーブルが読み込まれる。本例では、画像６００は４つのユニットに属するから、これら４つのユニットにおける最適化された座標変換パラメータＭ600a〜Ｍ600dおよび階調補正テーブルＴ600a〜Ｔ600dが読み込まれる。
【００８５】
画像６００が構成する合成画像部分の点Ｐを、合成画像の左上隅を原点Ｏとする座標（ｉ，ｊ）で表すとすると、点Ｐ（ｉ，ｊ）に対応する画像６００上の画素位置の座標が算出される。
【００８６】
点Ｐ（ｉ，ｊ）に対応する画像６００上の点の座標算出では、まず、点Ｐ（ｉ，ｊ）を通る水平、垂直の各ラインと描画領域のラインＬ６００，Ｌ６０１，Ｌ６０２，Ｌ６０３との交点をそれぞれｘ０，ｘ１，ｙ０，ｙ１として算出する。次いで、水平方向については長さＨ（＝ｘ１−ｘ０）と長さｄｘ（＝ｉ−ｘ０）との比ｄｘ／Ｈを重み係数Ｗｘとして算出し、垂直方向については長さＶ（＝ｙ１−ｙ０）と長さｄｙ（＝ｊ−ｙ０）との比ｄｙ／Ｖを重み係数Ｗｙとして算出する。続いて、算出した各重み係数Ｗｘ，Ｗｙと最適化された４つの座標変換パラメータＭ600a〜Ｍ600dとが次の（１８）式に代入され、点Ｐ（ｉ，ｊ）に対応する画像６００上の点の座標を算出するためのパラメータＭ600 が求められる。
【００８７】
0004006056.tif 000005
パラメータＭ600 により点Ｐ（ｉ，ｊ）に対応する画像６００上の点の座標が決定されることになる。
【００８８】
点Ｐ（ｉ，ｊ）に対応する画像６００上の点の座標が決定されると、この決定され画像６００上の点における画素値を４つの階調補正テーブルを参照しながら変換することにより、画像６００が構成する合成画像領域部分の点Ｐ（ｉ，ｊ）における画素値Ｉ（Ｐ）が得れる。具体的には、画素値Ｉ（Ｐ）は次の（１９）式から求められる。
【００８９】
0004006056.tif 000006
なお、本（１９）式中においては、Ｐ＝（ｉ，ｊ，１）と定義する。
【００９０】
このように、選択した画像６００に対し上記処理を実行することによって、選択した画像６００が構成する合成画像領域部分の画像データが生成され、この生成された画像データは画像合成メモリ１０７に書き込まれる。この処理を入力した全ての画像に対し繰り返し実行することにより、合成画像データが生成されることになる。画素値が生成される。
【００９１】
以上により、本実施の形態では、全画像調整部１１０により、入力した複数の画像の配置に応じて該複数の画像から任意の縦横それぞれ任意の枚数の画像からなる複数のユニットを選択し、選択した各ユニット毎に、それに含まれる隣接画像間のつなぎ目位置および階調が整合するように各座標変換パラメータおよび各階調変換パラメータの最適化処理を行い、全画像合成部１１１により、最適化処理により処理された各ユニット毎の座標変換パラメータおよび階調変換パラメータに基づき入力した複数の画像を合成する合成処理を行うから、２次元平面上に配置された任意の枚数の画像の合成に対応することができるとともに、画像間の位置合せおよび階調合せを高精度に実行することができ、つなぎ目位置のずれおよび階調のずれがほぼない高品質の合成画像を得ることができる。
【００９２】
なお、本実施の形態では、縦横それぞれ２枚の組合せ画像を１つのユニットとして設定しているが、これと異なる枚数の組合せ画像を１つのユニットとして設定することも可能である。
【００９３】
また、本実施の形態における画像合成装置を、画像合成システム用プログラムをフロッピーディスク、ＣＤ−ＲＯＭなどの記憶媒体からパーソナルコンピュータなどの情報処理装置に供給し、このプログラムを実行することによって構成することも可能である。例えば、ＣＰＵ、ＲＡＭなどのメモリ、画像を入力するための画像入力インタフェース、ＣＲＴを備えるパーソナルコンピュータを用いて画像合成システム用プログラムを記憶媒体から読み出して実行することにより、上述の画像合成装置と同じ機能を有する画像合成システムを構築することができる。この場合、画像合成システム用プログラムは、互いに重複する部分を有する複数の画像を画像入力インタフェースを介して入力するためのモジュールと、入力された複数の画像をメモリに保持するためのモジュールと、メモリに保持された複数の画像の中の互いに隣接する２つの画像を選択するモジュールと、選択した２つの画像間の位置合せのための座標変換パラメータ生成処理および入力された２つの画像間の階調合せのための階調変換パラメータ生成処理を行うモジュールと、入力した複数の画像の配置に応じて縦横それぞれ所定の枚数の画像の組合せからなる複数のユニットを設定し、各ユニットから１つのユニットを選択するモジュールと、選択したユニットに属する画像データおよび該画像の対応点座標および対応する領域の画素値に基づき座標変換パラメータおよび階調変換パラメータの最適化処理を行うモジュールと、全てのユニットにおける座標変換パラメータおよび階調変換パラメータの最適化処理が終了するまで、ユニットの選択および最適化処理を繰り返し実行するように制御するモジュールと、選択したユニット毎にその最適化した座標変換パラメータおよび階調変換パラメータを統合するモジュールと、統合した座標変換パラメータおよび階調変換パラメータに基づき複数の画像を合成するモジュールと、合成された画像をＣＲＴに表示するモジュールとを含む。
【００９４】
【発明の効果】
以上に説明したように、本発明によれば、互いに重複する重複領域部分を有する複数の画像を合成するにあたり、重複領域部分が複数箇所存在した場合でも、その複数の重複領域部分それぞれにおける画像間の画素値の差分を前記複数箇所の重複領域部分それぞれに分散させることによって最適化された階調変換パラメータを新たに生成することができるようにしたので、多数の画像を合成するような場合であっても、複数の画像間の互いに隣接する画像間の位置合せおよび階調合せを高精度に実行し、高品質の合成画像を得ることができる。
【図面の簡単な説明】
【図１】本発明の画像合成装置の実施の第１形態の基本構成を示すブロック図である。
【図２】図１の画像合成装置による画像合成処理の手順を示すフローチャートである。
【図３】図２のステップＳ２０２およびステップＳ２０３における処理内容を説明するための図である。
【図４】図２のステップＳ２０４における処理内容を説明するための図である。
【図５】図２のステップＳ２０５における階調補正テーブルの生成に用いられる補正関数ｆの算出を説明するための図である。
【図６】図２のステップＳ２０５で生成された階調補正テーブルの一例を示す図である。
【図７】図２のステップＳ２０７における座標変換パラメータの最適化処理の一例を説明するための図である。
【図８】図２のステップＳ２０８における画像合成処理の詳細を示すフローチャートである。
【図９】図２のステップＳ２０８における各画像を合成する際の各画像の配置関係の一例を示す図である。
【図１０】図１の画像合成装置により得られた合成画像の一例を示す図である。
【図１１】本発明の画像合成装置の実施の第２形態の基本構成を示すブロック図である。
【図１２】図１１の画像合成装置により合成される各画像の配置の一例を示す図である。
【図１３】図１の画像合成装置の全画像調整部による処理手順を示すフローチャートである。
【図１４】図１３のステップＳ１３０３における階調変換パラメータの最適化処理を説明するための図である。
【図１５】図１１の画像合成装置の全画像合成部による画像合成処理を説明するための図である。
【図１６】従来の画像合成手法による合成画像例を示す図である。
【符号の説明】
１０１  画像入力部
１０２  メモリ
１０３  画像選択部
１０４  隣接画像パラメータ生成部
１０５，１１０  全画像調整部
１０６，１１１  全画像合成部
１０７  合成画像メモリ
１０８  画像表示部
【図１】
0004006056.tif 000007
【図２】
0004006056.tif 000008
【図３】
0004006056.tif 000009
【図４】
0004006056.tif 000010
【図５】
0004006056.tif 000011
【図６】
0004006056.tif 000012
【図７】
0004006056.tif 000013
【図８】
0004006056.tif 000014
【図９】
0004006056.tif 000015
【図１０】
0004006056.tif 000016
【図１１】
0004006056.tif 000017
【図１２】
0004006056.tif 000018
【図１３】
0004006056.tif 000019
【図１４】
0004006056.tif 000020
【図１５】
0004006056.tif 000021
【図１６】
0004006056.tif 000022