(57)【要約】 【課題】  互いに一部が重複している複数の画像を合成して広範囲な画像を得る際に、少ない計算量で目的の広範囲な画像を得る。【解決手段】  まず、画素の密度が高く、同一の対象が記録された部分を互いに含む複数の第１の画像を準備する（Ｓ２）。次に、第１の画像をそれぞれ解像度変換して、画素の密度が低い第２の画像を生成する（Ｓ４）。そして、同一の対象が記録された部分に基づいて、第２の画像同士の相対位置を計算する（Ｓ６）。その後、各第２の画像が記録している領域の和の領域内において、画像生成領域を決定する（Ｓ８）。そして、各第２の画像のうち画像生成領域内に含まれる部分である第１の部分画像を決定する（Ｓ１０）。その後、第１の画像の一部であって、それぞれ第１の部分画像に対応する第２の部分画像を決定する（Ｓ１２）。最後に、第３の画像を第２の部分画像に基づいて生成する（Ｓ１４）。【選択図】  図２
2004334843.tif 000002
【特許請求の範囲】
【請求項１】
共通する画像を互いに含む複数の原画像からパノラマ画像を生成する方法であって、
（ａ）前記原画像よりも解像度の低い低解像度画像を前記各原画像から生成する工程と、
（ｂ）前記共有されている画像領域から特定される前記低解像度画像の互いの重なりの状態を特定することにより、前記パノラマ画像を生成することができる生成可能領域を決定する工程と、
（ｃ）前記生成可能領域内において、前記低解像度画像の１個分の領域を超える領域を、前記パノラマ画像を生成する画像生成領域として決定する工程と、
（ｄ）前記複数の原画像から、前記画像生成領域に対応する領域を有する前記パノラマ画像を生成する工程と、を有する方法。
【請求項２】
複数の原画像から合成画像を生成する画像の生成方法であって、
生成すべき前記合成画像に含まれ、かつ前記複数の原画像のいずれかに含まれる複数の部分原画像を決定し、
前記合成画像を生成するための所定の処理を、前記原画像のうち前記部分原画像を含む所定の処理領域以外の部分については行わずに、前記処理領域について行って、前記複数の部分原画像に基づいて前記合成画像を生成する、画像の生成方法。
【請求項３】
請求項２記載の画像生成方法であって、
前記処理領域は、
前記原画像に含まれ前記部分画像の外周から所定の距離の範囲内にある領域と、
前記部分原画像の領域と、を含む、画像の生成方法。
【請求項４】
請求項２記載の画像生成方法であって、
前記処理領域は、前記部分原画像の領域に等しい、画像の生成方法。
【請求項５】
請求項４記載の画像生成方法であって、
前記合成画像は、画像を構成する画素の密度が前記低解像度画像よりも高く、前記原画像の１個分の領域を超える領域を有する、方法。
【請求項６】
請求項４記載の画像の生成方法であって、
前記合成画像を生成するための所定の処理は、画素の階調値の計算であり、
前記合成画像を生成する工程は、
前記合成画像に含まれない画素の階調値を計算せずに、
前記合成画像を構成する各画素の階調値を、前記複数の部分原画像を構成する各画素の階調値に基づいて計算する工程を含む、画像の生成方法。
【請求項７】
請求項４記載の画像の生成方法であって、
前記複数の原画像は、同一の対象が記録された部分を互いに含み、
前記部分原画像を決定する工程は、
（ａ）前記複数の原画像について解像度の変換を行って、前記原画像よりも解像度の低い複数の低解像度画像を生成する工程と、
（ｂ）前記低解像度画像のうち前記同一の対象が記録された部分に基づいて、前記複数の低解像度画像の領域から、前記各低解像度画像の領域の和の領域を決定する工程と、
（ｃ）前記和の領域内に、前記低解像度画像の１個分の領域を超える画像生成領域を決定する工程と、
（ｄ）前記部分原画像として、前記各低解像度画像のうち前記画像生成領域に含まれる低解像度部分画像に対応する前記各原画像の部分を決定する工程と、を含む、方法。
【請求項８】
請求項７記載の画像生成方法であって、
前記部分原画像は、前記解像度の変換を行った場合には、それぞれ前記低解像度部分画像の一つと等しい画像を生成することができる画像であり、
前記工程（ｄ）は、
前記低解像度部分画像と前記低解像度画像との関係と、前記複数の原画像と、に基づいて前記部分原画像を決定する工程を含む、方法。
【請求項９】
請求項７記載の画像の生成方法であって、
前記低解像度画像は、画素のピッチが前記原画像の画素のピッチの３０％〜８０％である、画像の生成方法。
【請求項１０】
請求項７記載の画像の生成方法であって、
前記工程（ｂ）は、
（ｂ１）前記同一の対象が記録された部分に基づいて、前記複数の低解像度画像同士の相対位置を計算する工程を含み、
前記工程（ｃ）は、
（ｃ１）前記相対位置にしたがって前記複数の低解像度画像を、前記和の領域として表示部に表示する工程と、
（ｃ２）前記画像生成領域を仮に設定する工程と、
（ｃ３）前記仮に設定された画像生成領域を前記複数の低解像度画像と重ねて前記表示部に表示する工程と、
（ｃ４）前記画像生成領域を設定しなおす工程と、
（ｃ５）前記設定しなおされた画像生成領域を前記画像生成領域として決定する工程と、を含む画像の生成方法。
【請求項１１】
請求項１０記載の画像の生成方法であって、
前記工程（ｂ１）は、
（ｂ２）前記複数の低解像度画像同士の概略の相対位置に関するユーザの指示を受け取る工程と、
（ｂ３）前記ユーザによって指示された相対位置に基づいて、前記同一の対象が記録された部分同士のずれが所定の範囲内となるように、前記複数の低解像度画像同士の相対位置を計算する工程と、を含む、を含む画像の生成方法。
【請求項１２】
請求項１１記載の画像の生成方法であって、
前記工程（ｂ２）は、前記複数の低解像度画像のうちの少なくとも二つを表示部に表示する工程を含み、
前記複数の低解像度画像同士の相対位置に関する指示の少なくとも一部は、ユーザが、前記表示部に表示された少なくとも二つの低解像度画像のうちの一つを、他の低解像度画像の上に、一部が重なるように移動させることによってなされる、画像の生成方法。
【請求項１３】
請求項１１記載の画像の生成方法であって、
前記工程（ｂ２）は、
前記複数の低解像度画像同士の相対位置に関する指示として、前記複数の低解像度画像の所定の方向に沿った順番に関する指示を受け取る工程を含み、
前記工程（ｂ１）は、さらに、
（ｂ４）前記順番にしたがって、前記複数の低解像度画像同士の相対位置を決定する工程を含む、画像の生成方法。
【請求項１４】
共通する画像を互いに含む複数の原画像からパノラマ画像を生成する画像生成装置であって、
前記原画像よりも解像度の低い低解像度画像を前記各原画像から生成する低解像度画像生成部と、
前記共有されている画像領域から特定される前記低解像度画像の互いの重なりの状態を特定することにより、前記パノラマ画像を生成することができる生成可能領域を決定する生成可能領域決定部と、
前記生成可能領域内において、前記低解像度画像の１個分の領域を超える領域を、前記パノラマ画像を生成する画像生成領域として決定する生成領域決定部と、
前記複数の原画像から、前記画像生成領域に対応する領域を有する前記パノラマ画像を生成する拡張画像生成部と、を有する画像生成装置。
【請求項１５】
複数の原画像から合成画像を生成する画像生成装置であって、
生成すべき前記合成画像に含まれ、かつ前記複数の原画像のいずれかに含まれる複数の部分原画像を決定し、
前記合成画像を生成するための所定の処理を、前記原画像のうち前記部分原画像を含む所定の処理領域以外の部分については行わずに、前記処理領域について行って、前記複数の部分原画像に基づいて前記合成画像を生成する、画像生成装置。
【請求項１６】
請求項１５記載の画像生成装置であって、
前記処理領域は、
前記原画像に含まれ前記部分画像の外周から所定の距離の範囲内にある領域と、
前記部分原画像の領域と、を含む、画像の生成装置。
【請求項１７】
請求項１５記載の画像生成装置であって、
前記処理領域は、前記部分原画像の領域に等しい、画像生成装置。
【請求項１８】
請求項１７記載の画像生成装置であって、
前記合成画像は、画像を構成する画素の密度が前記低解像度画像よりも高く、前記原画像の１個分の領域を超える領域を有する、画像生成装置。
【請求項１９】
請求項１７記載の画像生成装置であって、
前記合成画像を生成するための所定の処理は、画素の階調値の計算であり、
前記合成画像を生成する際には、
前記合成画像に含まれない画素の階調値を計算せずに、
前記合成画像を構成する各画素の階調値を、前記複数の部分原画像を構成する各画素の階調値に基づいて計算する、画像生成装置。
【請求項２０】
請求項１７記載の画像生成装置であって、
前記複数の原画像は、同一の対象が記録された部分を互いに含み、
前記複数の原画像について解像度の変換を行って、前記原画像よりも解像度の低い複数の低解像度画像を生成する低解像度画像生成部と、
前記低解像度画像のうち前記同一の対象が記録された部分に基づいて、前記複数の低解像度画像から、前記各低解像度画像の領域の和の領域を決定する和領域決定部と、
前記和の領域内に、前記低解像度画像の１個分の領域を超える画像生成領域を決定する生成領域決定部と、
前記部分原画像として、前記各低解像度画像のうち前記画像生成領域に含まれる低解像度部分画像に対応する前記各原画像の部分を決定する部分画像生成部と、を含む、画像生成装置。
【請求項２１】
請求項２０記載の画像生成装置であって、
前記部分原画像は、前記解像度の変換を行った場合には、それぞれ前記低解像度部分画像の一つと等しい画像を生成することができる画像であり、
前記部分画像生成部は、
前記低解像度部分画像と前記低解像度画像との関係と、前記複数の原画像と、に基づいて前記部分原画像を決定する、画像生成装置。
【請求項２２】
請求項２０記載の画像生成装置であって、
前記低解像度画像は、画素のピッチが前記原画像の画素のピッチの３０％〜８０％である、画像生成装置。
【請求項２３】
請求項２０記載の画像生成装置であって、さらに、画像を表示することができる表示部を含み、
前記和領域決定部は、
前記同一の対象が記録された部分に基づいて、前記複数の低解像度画像同士の相対位置を計算することができ、
前記生成領域決定部は、
前記和の領域として、前記相対位置にしたがって前記複数の低解像度画像を表示部に表示することができ、
前記画像生成領域を仮に設定する指示を受け取ることができ、
前記仮に設定された画像生成領域を前記複数の低解像度画像と重ねて前記表示部に表示することができ、
前記画像生成領域を設定しなおす指示を受け取ることができ、
前記設定しなおされた画像生成領域を前記画像生成領域として決定する、画像生成装置。
【請求項２４】
請求項２３記載の画像生成装置であって、
前記和領域決定部は、
前記複数の低解像度画像同士の概略の相対位置に関するユーザの指示を受け取り、
前記ユーザによって指示された相対位置に基づいて、前記同一の対象が記録された部分同士のずれが所定の範囲内となるように、前記複数の低解像度画像同士の相対位置を計算する、画像生成装置。
【請求項２５】
請求項２４記載の画像生成装置であって、さらに、画像を表示することができる表示部を含み、
前記和領域決定部は、前記複数の低解像度画像のうちの少なくとも二つを前記表示部に表示し、
前記複数の低解像度画像同士の相対位置に関する指示の少なくとも一部は、ユーザが、前記表示部に表示された少なくとも二つの低解像度画像のうちの一つを、他の低解像度画像の上に、一部が重なるように移動させることによってなされる、画像生成装置。
【請求項２６】
請求項２４記載の画像生成装置であって、
前記和領域決定部は、
前記複数の低解像度画像同士の相対位置に関する指示として、前記複数の低解像度画像の所定の方向に沿った順番に関する指示を受け取り、
前記順番にしたがって、前記複数の低解像度画像同士の相対位置を決定する、画像生成装置。
【請求項２７】
共通する画像を互いに含む複数の原画像からパノラマ画像を生成するためのコンピュータプログラムであって、
前記原画像よりも解像度の低い低解像度画像を前記各原画像から生成する機能と、
前記共有されている画像領域から特定される前記低解像度画像の互いの重なりの状態を特定することにより、前記パノラマ画像を生成することができる生成可能領域を決定する機能と、
前記生成可能領域内において、前記低解像度画像の１個分の領域を超える領域を、前記パノラマ画像を生成する画像生成領域として決定する機能と、
前記複数の原画像から、前記画像生成領域に対応する領域を有する前記パノラマ画像を生成する機能と、をコンピュータに実現させるコンピュータプログラム。
【請求項２８】
複数の原画像から合成画像を生成するためのコンピュータプログラムであって、
生成すべき前記合成画像に含まれ、かつ前記複数の原画像のいずれかに含まれる複数の部分原画像を決定する第１の機能と、
前記合成画像を生成するための所定の処理を、前記原画像のうち前記部分原画像を含む所定の処理領域以外の部分については行わずに、前記処理領域について行って、前記複数の部分原画像に基づいて前記合成画像を生成する第２の機能と、をコンピュータに実現させるコンピュータプログラム。
【請求項２９】
請求項２８記載のコンピュータプログラムであって、
前記処理領域は、
前記原画像に含まれ前記部分画像の外周から所定の距離の範囲内にある領域と、
前記部分原画像の領域と、を含む、コンピュータプログラム。
【請求項３０】
請求項２８記載のコンピュータプログラムであって、
前記処理領域は、前記部分原画像の領域に等しい、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、互いに一部が重複している複数の画像を合成して広範囲な画像を得る技術に関し、特に、少ない処理量で広範囲な画像を得ることを目的とする。
【背景技術】
【０００２】
従来より、互いに一部が重複している複数のデジタル写真を合成して広範囲なパノラマ画像を得る技術が存在する。たとえば、特許文献１においては、合成した画像の中から特定の範囲の画像を抽出して、パノラマ画像とする技術が開示されている。また、その他の関連技術として特許文献２がある。
【０００３】
【特許文献１】特開平９−９１４０７号公報
【０００４】
【特許文献２】特許第３３０２２３６号公報
【０００５】
しかし、上記の技術においては、複数のデジタル画像の合成に要する処理量が膨大となる。このため、コンピュータのメモリを大量に消費し、また、処理に長い時間を要する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
この発明は、従来技術における上述の課題を解決するためになされたものであり、互いに一部が重複している複数の画像を合成して画像を得る際に、少ない処理量で画像を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述の課題の少なくとも一部を解決するため、本発明では、共通する画像を互いに含む複数の原画像からパノラマ画像を生成する際に以下のような処理を行う。すなわち、まず、原画像よりも解像度の低い低解像度画像を各原画像から生成する。そして、共有されている画像領域から特定される低解像度画像の互いの重なりの状態を特定することにより、パノラマ画像を生成することができる生成可能領域を決定する。その後、生成可能領域内において、低解像度画像の１個分の領域を超える領域を、パノラマ画像を生成する画像生成領域として決定する。そして、複数の原画像から、画像生成領域に対応する領域を有するパノラマ画像を生成する。このような態様とすれば、互いに一部が重複している複数の画像を合成して広範囲な画像を得る際に、少ない処理量で広範囲な画像を得ることができる。
【０００８】
また、複数の原画像から合成画像を生成する際に、以下のような態様を採用することもできる。すなわち、まず、生成すべき合成画像に含まれ、かつ複数の原画像のいずれかに含まれる複数の部分原画像を決定する。そして、合成画像を生成するための所定の処理を、原画像のうち部分原画像を含む所定の処理領域以外の部分については行わずに、処理領域について行って、複数の部分原画像に基づいて合成画像を生成する。このような態様としても、少ない処理量で新たな画像を得ることができる。
【０００９】
なお、処理領域は、原画像に含まれ部分画像の外周から部分画像の外側に向かって所定の距離の範囲内にある領域と、部分原画像の領域と、を含む領域とすることができる。また、処理領域は、部分原画像の領域に等しい領域とすることもできる。
【００１０】
また、複数の原画像が、同一の対象が記録された部分を互いに含む場合には、部分原画像を決定する際に、以下のような処理を行うこともできる。すなわち、まず、複数の原画像について解像度の変換を行って、原画像よりも解像度の低い複数の低解像度画像を生成する。そして、低解像度画像のうち同一の対象が記録された部分に基づいて、複数の低解像度画像の領域から、各低解像度画像の領域の和の領域（和集合の領域）を決定する。その後、和の領域内に、低解像度画像の１個分の領域を超える画像生成領域を決定する。そして、部分原画像として、各低解像度画像のうち画像生成領域に含まれる低解像度部分画像に対応する各原画像の部分を決定する。
【００１１】
このような態様においては、低解像度画像を使用して、まず新たな画像の生成に必要な部分を決定する。そして、その必要な部分の画像に基づいて新たな画像を生成している。このため、不必要な部分も含めてすべての画像について合成を行う場合に比べて、少ない処理量で新たな画像を得ることができる。
【００１２】
また、和の領域を決定する際には、同一の対象が記録された部分に基づいて、複数の低解像度画像同士の相対位置を計算することが好ましい。そして、画像生成領域を決定する際には、以下のような態様とすることが好ましい。すなわち、まず、相対位置にしたがって複数の低解像度画像を、和の領域として表示部に表示する。そして、画像生成領域を仮に設定する。その後、仮に設定された画像生成領域を複数の低解像度画像と重ねて表示部に表示する。そして、所定の場合には、画像生成領域を設定しなおす。その後、設定しなおされた画像生成領域を画像生成領域として決定する。このようにすれば、和の領域内における画像生成領域の範囲や広さを考慮しつつ、画像生成領域を設定することができる。
【００１３】
低解像度画像同士の相対位置を計算する際には、以下のような態様とすることが好ましい。まず、複数の低解像度画像同士の概略の相対位置に関するユーザの指示を受け取る。そして、ユーザによって指示された相対位置に基づいて、同一の対象が記録された部分同士のずれが所定の範囲内となるように、複数の低解像度画像同士の相対位置を計算する。このような態様とすれば、このような態様とすれば、低解像度画像同士の相対位置を決定する際の計算量を少なくすることができる。
【００１４】
上述の課題の少なくとも一部を解決するため、本発明では、画像を生成する際に以下のような処理を行うこともできる。すなわち、まず、生成すべき合成画像に含まれ、かつ複数の原画像のいずれかに含まれる複数の部分原画像を決定する。そして、合成画像を生成するための所定の処理を、原画像のうち部分原画像以外の部分については行わずに、複数の部分原画像について行って、複数の部分原画像に基づいて合成画像を生成する。このような態様とすれば、少ない処理量で新たな画像を得ることができる。
【００１５】
なお、以下のような態様とすることも好ましい。すなわち、まず、複数の原画像として、画像を構成する画素の密度が比較的高く、同一の対象が記録された部分を互いに含む複数の第１の画像を準備する。そして、第１の画像についてそれぞれ解像度の変換を行って、画像を構成する画素の密度が比較的低く、同一の対象が記録された部分を互いに含む複数の第２の画像を生成する。その後、同一の対象が記録された部分に基づいて、複数の第２の画像同士の相対位置を計算する。そして、各第２の画像の領域の和の領域内に含まれる領域であって、複数の第２の画像のうちの任意の一つの領域を越える領域である画像生成領域を決定する。その後、各第２の画像のうち画像生成領域内に含まれる画像である複数の第１の部分画像を決定する。
【００１６】
そして、第１の部分画像と第２の画像との関係と、複数の第１の画像と、に基づいて、複数の部分原画像としての複数の第２の部分画像を決定する。この第２の部分画像は、複数の第１の画像のいずれかに含まれ、解像度の変換を行った場合にはそれぞれ第１の部分画像の一つと等しい画像を生成することができる画像である。その後、合成画像として、画像を構成する画素の密度が比較的高く、複数の第１の画像のうちの任意の一つの領域を越える領域を有する第３の画像を、複数の第２の部分画像に基づいて生成する。
【００１７】
このような態様においては、まず新たな画像の生成に必要な部分を決定し、その部分の画像に基づいて新たな画像を生成している。このため、不必要な部分も含めてすべての画像について合成を行う場合に比べて、少ない処理量で新たな画像を得ることができる。
【００１８】
なお、合成画像を生成するための所定の処理は、たとえば、画素の階調値の計算とすることができる。そして、第３の画像を生成する際には、第３の画像に含まれない画素の階調値を計算せずに、第３の画像を構成する各画素の階調値を、複数の第２の部分画像を構成する各画素の階調値に基づいて計算することが好ましい。このような態様とすれば、第３の画像の生成に必要のない計算を行わないことで、処理量を少なくすることができる。
【００１９】
また、画像生成領域を決定する際には、以下のようにすることが好ましい。すなわち、複数の第２の画像を複数の第２の画像の相対位置にしたがって表示部に表示する。そして、画像生成領域を仮に設定する。その後、仮に設定された画像生成領域を複数の第２の画像と重ねて表示部に表示する。そして、所定の場合には、仮に設定された画像生成領域の設定を取り消す。また、他の場合には、仮に設定された画像生成領域を画像生成領域として決定する。このようにすれば、第２の画像の相対位置を考慮しつつ、画像生成領域を設定することができる。
【００２０】
なお、第２の画像同士の相対位置を計算する際には、複数の第２の画像同士の相対位置に関するユーザの指示を受け取ることが好ましい。このような態様とすれば、第２の画像同士の相対位置を決定する際の処理量を少なくすることができる。
【００２１】
なお、第２の画像同士の相対位置に関するユーザの指示を受け取る際には、  複数の第２の画像のうちの少なくとも二つを表示部に表示することが好ましい。そして、複数の第２の画像同士の相対位置に関する指示の少なくとも一部は、ユーザが、表示部に表示された少なくとも二つの第２の画像のうちの一つを、他の第２の画像の上に、一部が重なるように移動させることによってなされることが好ましい。このような態様とすれば、簡単な手順で、第２の画像同士の相対位置の決定に有効な指示を与えることができる。
【００２２】
また、第２の画像同士の相対位置に関するユーザの指示を受け取る際に、複数の第２の画像同士の相対位置に関する指示として、複数の第２の画像の所定の方向に沿った順番に関する指示を受け取る態様とすることができる。その場合には、複数の第２の画像同士の相対位置を計算する際には、その順番にしたがって、複数の第２の画像同士の相対位置を決定する。このような態様は、第１の画像が、所定の対象を撮像範囲を一方向に順にずらしつつ撮像して得た複数の画像である場合に、特に有効である。
【００２３】
なお、第２の画像は、画素のピッチが第１の画像の画素のピッチの３０％〜８０％であることが好ましい。このような態様とすれば、第２の画像同士の相対位置を計算する際の処理量を少なくすることができる。
【００２４】
なお、本発明は、以下に示すような種々の態様で実現することが可能である。
（１）画像生成方法、画像処理方法、画像データ生成方法。
（２）画像生成装置、画像処理装置、画像データ生成装置。
（３）上記の装置や方法を実現するためのコンピュータプログラム。
（４）上記の装置や方法を実現するためのコンピュータプログラムを記録した記録媒体。
（５）上記の装置や方法を実現するためのコンピュータプログラムを含み搬送波内に具現化されたデータ信号。
【発明を実施するための最良の形態】
【００２５】
以下で、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１実施例：
Ａ−１．装置構成：
Ａ−２．画像処理：
Ｂ．第２実施例：
Ｃ．第３実施例：
Ｄ．変形例：
【００２６】
Ａ．第１実施例：
Ａ−１．装置構成：
図１は、本発明の実施例である画像処理装置の概略構成を示す説明図である。この画像処理装置は、画像データに対して所定の画像処理を行うパーソナルコンピュータ１００と、パーソナルコンピュータ１００に情報を入力する装置としてのキーボード１２０、マウス１３０およびＣＤ−Ｒ／ＲＷドライブ１４０と、情報を出力する装置としてのディスプレイ１１０およびプリンタ２２と、を備えている。コンピュータ１００では、所定のオペレーティングシステムの下で、アプリケーションプログラム９５が動作している。このアプリケーションプログラム９５が実行されることで、コンピュータ１００のＣＰＵ１０２は様々な機能を実現する。
【００２７】
画像のレタッチなどを行うアプリケーションプログラム９５が実行され、キーボード１２０やマウス１３０からユーザーの指示が入力されると、ＣＰＵ１０２は、ＣＤ−Ｒ／ＲＷドライブ１４０内のＣＤ−ＲＷからメモリ内に画像データを読み込む。ＣＰＵ１０２は、画像データに対して所定の画像処理を行って、ビデオドライバを介して画像をディスプレイ１１０に表示する。また、ＣＰＵ１０２は、画像処理を行った画像データを、プリンタドライバを介してプリンタ２２に印刷させることもできる。
【００２８】
Ａ−２．画像処理：
図２は、動画データの複数のフレーム画像から静止画を表す静止画データを生成する手順を示すフローチャートである。アプリケーションプログラム９５が実行され、キーボード１２０やマウス１３０からユーザーの指示が入力されると、ＣＰＵ１０２は、まず、ステップＳ２で、ＣＤ−Ｒ／ＲＷドライブ１４０上のＣＤ−Ｒ／ＲＷから複数の原画像データを取得する。ここでは、原画像データＦ１、Ｆ２を読み出すものとする。このように、ユーザーの指示を受け取って複数の原画像データを取得する機能は、ＣＰＵ１０２の機能部である原画像データ取得部１０２ａ（図１参照）によって実現される。
【００２９】
図３は、原画像データＦ１、Ｆ２の画像の範囲と撮影された風景との関係を示す説明図である。原画像データは、デジタルカメラなどの撮像機器で、静止している対象、例えば風景や静物などを撮影した画像のデータである。原画像データの画像は複数の画素から構成されており、各画素は、色を表す階調値を有している。たとえば、各画素は、レッド、グリーン、ブルーの３色についてそれぞれ階調値を有している。
【００３０】
また、原画像データは、その撮像機器で一度に撮影できる範囲を超える範囲に存在する対象を、複数枚の画像に分けて撮影した画像のデータである。その結果、ステップＳ２で取得される複数の原画像データは、それぞれが表す静止画中に同一の対象を含むが、各画面（フレーム）中で撮影対象の位置がずれている。たとえば、図３の例においては、原画像データＦ１は、山Ｍｔ１，Ｍｔ２、空Ｓｋおよび海Ｓａを含む風景のうち比較的左側の範囲を撮影した画像のデータであり、原画像データＦ２は、同じ風景のうち比較的右側の範囲を撮影した画像のデータである。そして、原画像データＦ１とＦ２とは、同一の対象である山Ｍｔ１，Ｍｔ２および空Ｓｋの一部の画像を、共通して含んでいる。破線で示した部分Ｓｃが、原画像データＦ１とＦ２の画像のうち同一の対象が記録された部分である。
【００３１】
図２のステップＳ４では、ステップＳ２で取得した原画像データについて解像度変換を行い、画素の密度が低い低解像度データを生成する。ここでは、原画像データＦ１、Ｆ２から、それぞれ低解像度データＦＬ１，ＦＬ２を生成するものとする。このようにして得られた低解像度データＦＬ１とＦＬ２も、同一の対象である山Ｍｔ１，Ｍｔ２および空Ｓｋの一部の画像を、共通して含んでいる。
【００３２】
なお、低解像度データＦＬ１，ＦＬ２の画素の密度は、原画像データＦ１、Ｆ２の画素の密度の５０％であるものとする。このようにして低解像度データを生成する機能は、ＣＰＵ１０２の機能部である低解像度データ生成部１０２ｂ（図１参照）によって実現される。
【００３３】
なお、「画素の密度が低い」は、以下のような意味である。すなわち、第１の画像と第２の画像とがともに画像中に同一の対象物を含んでいる場合に、第２の画像がその対象物を表すのに要している画素の数が、第１の画像がその対象物を表すのに要している画素の数よりも少ないとき、第２の画像は第１の画像よりも「画素の密度が低い」ものとする。一方、第２の画像がその対象物を表すのに要している画素の数が、第１の画像がその対象物を表すのに要している画素の数よりも多いとき、第２の画像は第１の画像よりも「画素の密度が高い」ものとする。
【００３４】
そして、第１の画像がある対象物を表すのに要している画素の数と、第２の画像がその対象物を表すのに要している画素の数と、をそれぞれ同じ画素の並びの方向に沿って数えたとき、第２の画像における画素の数が、第１の画像における画素の数のｐ％であるとき、「第２の画像の画素のピッチは第１の画像の画素のピッチのｐ％である」という。
【００３５】
図４は、低解像度データの相対位置を特定する方法を示す説明図である。図２のステップＳ６では、低解像度データＦＬ１とＦＬ２の画像のうち同一の対象が記録された部分に基づいて、低解像度データＦＬ１，ＦＬ２の画像の相対位置を計算する。各低解像度データの画像の相対位置の特定は、以下のようにして行われる。なお、図４において破線で示した部分ＳｃＬが、低解像度データＦＬ１とＦＬ２の画像のうち同一の対象が記録された部分である。
【００３６】
まず、各画像が含む同一の対象が記録された部分に、特徴点を設定する。図４において、特徴点を各低解像度データＦＬ１，ＦＬ２中の黒い丸Ｓｐ１〜Ｓｐ３で示す。特徴点は、一般の画像中において頻繁に現れることのないような特徴的な画像部分に配することができる。たとえば、図４においては、各低解像度データＦＬ１，ＦＬ２には、ともに同一の対象としての二つの山Ｍｔ１，Ｍｔ２と空Ｓｋが写っている。特徴点は、たとえば、山Ｍｔ１，Ｍｔ２の頂上（Ｓｐ１，Ｓｐ３）や山Ｍｔ１と山Ｍｔ２の輪郭が交わっている点（Ｓｐ２）とすることができる。
【００３７】
特徴点を抽出する際には、より具体的には、以下のような手法を適用することができる。すなわち、まず、各画素の階調値に対して微分やＳｏｂｅｌなどによるエッジ抽出フィルタを適用して画像のエッジを抽出する。そして、抽出したエッジに対してＳＲＡ（Ｓｉｄｅ  ｅｆｆｅｃｔ  ｒｅｓａｍｐｌｉｎｇ  Ａｌｇｏｒｉｔｈｍ）を適用して、得られた点を特徴点とする。
【００３８】
図５は、ステップＳ６で低解像度データＦＬ１，ＦＬ２の画像の相対位置を計算する際の、ユーザインターフェイス画面を示す説明図である。ステップＳ６においては、ディスプレイ１１０（図１参照）に、低解像度データＦＬ１，ＦＬ２の画像が示される。ユーザはマウス１３０を操作して、矢印Ａｄで示すように、低解像度データＦＬ１，ＦＬ２の一方の画像を他方の画像の上にドラッグし、低解像度データＦＬ１，ＦＬ２の画像が共通して含む部分の画像ができるだけ一致するようにして重ねる。図５の例では、山Ｍｔ１，Ｍｔ２の輪郭ができるだけ重なるように低解像度データＦＬ２の画像を低解像度データＦＬ１の画像の上にドラッグしている。なお、図５において、Ｃｓはマウスカーソルである。
【００３９】
ユーザが、マウス１３０を操作して低解像度データＦＬ１，ＦＬ２の画像を重ねると、その後、ＣＰＵ１０２は、特徴点Ｓｐ１〜Ｓｐ３同士の位置のずれが所定の範囲内となるように画像の移動、回転ならびに拡大または縮小を行い、低解像度データＦＬ１，ＦＬ２の画像の相対位置を決定する。なお、画像の移動、回転ならびに拡大または縮小は、アフィン変換により行うことができる。その結果、低解像度データＦＬ１，ＦＬ２の画像の相対位置は、図４下段に示すように特定される。
【００４０】
なお、本明細書において「相対位置の特定」というときには、画像の移動および回転を行って画像の相対位置を特定する態様だけでなく、画像の移動および回転に加えて画像の拡大または縮小を行って画像の相対位置を特定する態様も含む。「相対位置の計算」、「相対位置の特定」というときにも同様である。このようにして低解像度データの画像の相対位置を計算する機能は、ＣＰＵ１０２の機能部である相対位置決定部１０２ｃ（図１参照）によって実現される。
【００４１】
図６は、画像生成領域ＡＬｃを決定する際のユーザインターフェイス画面を示す説明図である。図２のステップＳ６で低解像度データＦＬ１，ＦＬ２の画像の相対位置が計算されると、次に、ステップＳ８で、画像生成領域ＡＬｃが決定される。
【００４２】
ステップＳ８では、ＣＰＵ１０２は、図６に示すように、ステップＳ６で計算された相対位置にしたがって低解像度データＦＬ１，ＦＬ２の画像をディスプレイ１１０に表示する。そして、ユーザは、マウス１３０を操作して、低解像度データＦＬ１，ＦＬ２が記録している画像の領域の和の領域Ｆａ内において、パノラマ画像を生成する領域である画像生成領域ＡＬｃを指定する。なお、領域Ｆａを越える領域が画像生成領域ＡＬｃとして指定された場合には、ディスプレイ１１０にエラーメッセージが表示され、その後、画像生成領域ＡＬｃの再指定を促す表示がなされる。
【００４３】
なお、図６においては、低解像度データＦＬ１，ＦＬ２が記録している領域の和の領域Ｆａを破線で示す。領域Ｆａを示す破線は、分かりやすいように、実際の領域の境界からずらして表示されている。この画像生成領域を決定する機能は、ＣＰＵ１０２の機能部である生成領域決定部１０２ｄ（図１参照）によって実現される。
【００４４】
図６に示すように、ユーザが指定した画像生成領域ＡＬｃは、低解像度データＦＬ１，ＦＬ２の画像の上に重ねて表示される。なお、図６の例では、画像生成領域ＡＬｃは、低解像度データＦＬ１，ＦＬ２のそれぞれ画像の領域を越える範囲を有する、横に長い長方形である。
【００４５】
なお、ユーザは、マウス１３０を操作して、画像生成領域ＡＬｃをいったん仮に指定した後、ディスプレイ１１０に表示されている「キャンセル」ボタン（図６下段参照）をマウス１３０でクリックすることで、画像生成領域ＡＬｃの指定を取り消しすことができる。そして、再度、画像生成領域ＡＬｃを指定し直すことができる。また、画像生成領域ＡＬｃを仮に指定した後、ディスプレイ１１０に表示されている「確定」ボタンをマウス１３０でクリックすることで、ユーザは、画像生成領域ＡＬｃを最終的に決定することができる。ステップＳ８では、このようにして画像生成領域ＡＬｃが決定される。
【００４６】
第１実施例では、低解像度データＦＬ１，ＦＬ２が記録している画像の領域の和の領域Ｆａ内において画像生成領域ＡＬｃを指定する。このため、低解像度データＦＬ１，ＦＬ２の各画素が有する階調値に基づいて、パノラマ画像の画素の階調値を正確に計算することができる。一方、領域Ｆａを超える範囲について画像生成領域ＡＬｃを指定した場合には、低解像度データＦＬ１，ＦＬ２の画像の領域を超える範囲については、その範囲についての階調値の情報がない状態から何らかの方法でその範囲の画素の階調値を決定しなければならない。このため、生成されるパノラマ画像の品質が低くなる。
【００４７】
第１実施例では、低解像度データＦＬ１の画像は、ディスプレイ１１０内において長辺ＦＬ１１，ＦＬ１２が水平となるように表示されるものとする。そして、画像生成領域ＡＬｃも、ディスプレイ１１０内において長辺ＡＬｃ１，ＡＬｃ２が水平となる形に、ユーザによって指定されるものとする。その結果、画像生成領域ＡＬｃの長辺ＡＬｃ１，ＡＬｃ２は、低解像度データＦＬ１の画像の長辺ＦＬ１１，ＦＬ１２と平行であり、低解像度データＦＬ２の画像の長辺ＦＬ２１，ＦＬ２２に対しては所定の角度を有する。
【００４８】
図２のステップＳ１０では、各低解像度データＦＬ１、ＦＬ２の画像のうち、画像生成領域ＡＬｃに含まれる部分である低解像度部分画像が計算される。低解像度データＦＬ１の画像のうち画像生成領域ＡＬｃに含まれる部分を低解像度部分画像ＡＬｐ１と呼び、低解像度データＦＬ２の画像のうち画像生成領域ＡＬｃに含まれる部分を低解像度部分画像ＡＬｐ２と呼ぶ。図６において、低解像度部分画像ＡＬｐ１、ＡＬｐ２をそれぞれ一点鎖線および二点差線で示す。なお、図６においては、低解像度部分画像ＡＬｐ１、ＡＬｐ２を示す一点鎖線および二点差線は、低解像度部分画像ＡＬｐ１とＡＬｐ２の重複部分が分かりやすくなるように、実際の画像の境界からずらして表示されている。この低解像度データの画像の領域内において低解像度部分画像を計算する機能は、ＣＰＵ１０２の機能部である第１の部分画像決定部１０２ｅ（図１参照）によって実現される。
【００４９】
図６から分かるように、低解像度部分画像ＡＬｐ１、ＡＬｐ２は重複部分を有している。また、横に長い長方形である画像生成領域ＡＬｃの長辺ＡＬｃ１，ＡＬｃ２は、低解像度データＦＬ１の画像の長辺ＦＬ１１，ＦＬ１２と平行である。このため、画像生成領域ＡＬｃの長辺ＡＬｃ１，ＡＬｃ２の一部である低解像度部分画像ＡＬｐ１の上辺ＡＬｐ１１および下辺ＡＬｐ１２も、低解像度データＦＬ１の画像の長辺ＦＬ１１，ＦＬ１２と平行である。
【００５０】
一方、横に長い長方形である画像生成領域ＡＬｃの長辺ＡＬｃ１，ＡＬｃ２は、低解像度データＦＬ２の画像の長辺ＦＬ２１，ＦＬ２２とは所定の角度を有する。このため、画像生成領域ＡＬｃの長辺ＡＬｃ１，ＡＬｃ２の一部である低解像度部分画像ＡＬｐ２の上辺ＡＬｐ２１および下辺ＡＬｐ２２も、低解像度データＦＬ２の画像の長辺ＦＬ２１，ＦＬ２２とは所定の角度を有する。
【００５１】
図７は、原画像データＦ１、Ｆ２の画像と部分画像Ａｐ１、Ａｐ２の関係を示す説明図である。図２のステップＳ１２では、原画像データＦ１、Ｆ２の画像の領域のうち低解像度部分画像ＡＬｐ１、ＡＬｐ２にそれぞれ対応する部分である部分画像Ａｐ１、Ａｐ２が計算される。部分画像Ａｐ１は、低解像度データＦＬ１の画像全体の領域中の部分画像Ａｐ１の相対位置に基づいて、原画像データＦ１の画像の一部から選択される。同様に、部分画像Ａｐ２は、低解像度データＦＬ２の画像全体の領域中の部分画像Ａｐ２の相対位置に基づいて、原画像データＦ２の画像の一部から選択される。この原画像データの画像から部分画像を決定する機能は、ＣＰＵ１０２の機能部である第２の部分画像決定部１０２ｆ（図１参照）によって実現される。
【００５２】
前述のように、低解像度部分画像ＡＬｐ１、ＡＬｐ２は共通する画像を一部に含む領域である。よって、部分画像Ａｐ１、Ａｐ２も共通する画像を一部に含む領域である。すなわち、部分画像Ａｐ１とＡｐ２も、山Ｍｔ１，Ｍｔ２および空Ｓｋの一部の画像を共通して含んでいる。また、それらの上に設定された特徴点Ｓｐ１〜Ｓｐ３もともに部分画像Ａｐ１とＡｐ２に含まれる。
【００５３】
低解像度部分画像ＡＬｐ１の上辺ＡＬｐ１１および下辺ＡＬｐ１２は、図６に示すように、全体の画像である低解像度データＦＬ１の画像の領域の長辺ＦＬ１１，ＦＬ１２と平行であった。よって、低解像度部分画像ＡＬｐ１に対応する部分画像Ａｐ１の上辺Ａｐ１１および下辺Ａｐ１２は、図７に示すように、全体の画像である原画像データＦ１の画像の領域の長辺Ｆ１１，Ｆ１２と平行である。なお、部分画像Ａｐ１を構成する画素の並びの方向を図７において多数の直線ＰＬ１で示す。また、最終的に生成されるパノラマ画像Ｆｃを破線で示し、およびパノラマ画像Ｆｃを構成する画素の並びの方向を多数の破線ＰＬｃで示す。
【００５４】
一方、低解像度部分画像ＡＬｐ２の上辺ＡＬｐ２１および下辺ＡＬｐ２２は、全体の画像である低解像度データＦＬ２の画像の領域の長辺ＦＬ２１，ＦＬ２２とは所定の角度を有していた。よって、低解像度部分画像ＡＬｐ２に対応する部分画像Ａｐ２の上辺Ａｐ２１および下辺Ａｐ２２は、全体の画像である原画像データＦ２の画像の領域の長辺Ｆ２１，Ｆ２２とは所定の角度を有している。なお、部分画像Ａｐ２を構成する画素の並びの方向を図７において多数の直線ＰＬ２で示す。
【００５５】
最終的に生成されるパノラマ画像Ｆｃは、その長辺Ｆｃ１，Ｆｃ２および短辺Ｆｃ３に沿って並ぶ画素で構成される。パノラマ画像Ｆｃの各画素は、原画像データＦ１、Ｆ２と同じく、色を表す階調値を有している。パノラマ画像Ｆｃの各画素の階調値は、原画像データＦ１の各画素のうち部分画像Ａｐ１を構成する画素の階調値と、原画像データＦ２の各画素のうち部分画像Ａｐ２を構成する画素の階調値と、から計算される。
【００５６】
最終的に生成するパノラマ画像Ｆｃの画素のピッチは原画像データＦ１，Ｆ２の画素のピッチと等しいものとする。そして、生成するパノラマ画像Ｆｃを構成する画素のうちの一部の画素の位置は、原画像データＦ１の画素の位置と重なるものとする。さらに、部分画像Ａｐ１の上辺Ａｐ１１および下辺Ａｐ１２は、最終的に生成するパノラマ画像Ｆｃの上辺Ｆｃ１および下辺Ｆｃ２の一部と一致する。このため、原画像データＦ１の各画素のうち部分画像Ａｐ１を構成する画素の階調値は、パノラマ画像Ｆｃを構成する画素の階調値の計算にそのまま使用される。
【００５７】
一方、部分画像Ａｐ２の上辺Ａｐ２１および下辺Ａｐ２２は、水平方向（原画像データＦ２の画像の領域の長辺Ｆ２１，Ｆ２２の方向と同じ）に対して所定の角度を有している。このため、部分画像Ａｐ２を部分画像Ａｐ１とからパノラマ画像Ｆｃを合成する前に、部分画像Ａｐ２に対して回転および拡大または縮小の変換を行う。この回転および拡大または縮小の変換は、図２のステップＳ６で低解像度データＦＬ１，ＦＬ２の画像の相対位置を計算する際に低解像度データＦＬ２の画像に対して行われたのと同じ変換である。
【００５８】
部分画像Ａｐ２に対して行う回転および拡大または縮小の変換を行う際には、以下の式（１）、（２）で表されるアフィン変換を部分画像Ａｐ２に対して行う。そして、部分画像Ａｐ２から変換部分画像Ａｐ２ｒを生成する。式（１）、（２）は、ｘ、ｙ座標上において、位置（ｘ０，ｙ０）を中心として、ｘ方向にａ倍、ｙ方向にｂ倍の拡大または縮小を行い、反時計回りにθだけ回転させる変換を行って、変換前の位置（ｘ、ｙ）から変換後の位置（Ｘ、Ｙ）を得る式である。
【００５９】
ｘ＝｛（Ｘ−ｘ０）ｃｏｓθ−（Ｙ−ｙ０）ｓｉｎθ｝／ａ＋ｘ０  ・・・（１）
【００６０】
ｙ＝｛（Ｙ−ｘ０）ｓｉｎθ−（Ｙ−ｙ０）ｃｏｓθ｝／ｂ＋ｙ０  ・・・（２）
【００６１】
上記の式（１）、（２）を用いて、部分画像Ａｐ２を構成する任意の位置（ｘ、ｙ）にある画素から変換後の位置（Ｘ、Ｙ）の画素の階調値を決定することができる。ただし、変換後の変換部分画像Ａｐ２ｒを構成する画素は、パノラマ画像Ｆｃを構成する各画素と同じ位置に設定される画素である。このため、さらに以下の処理を行う。
【００６２】
パノラマ画像Ｆｃを構成する各画素と同じ位置に設定される画素のうち、上記の式（１）、（２）で得られた位置（Ｘ、Ｙ）に最も近い位置にある画素の階調値を、「部分画像Ａｐ２を構成し位置（ｘ、ｙ）にある画素の階調値」と同じ値とする。このようにして、「パノラマ画像Ｆｃを構成する各画素と同じ位置に設定された各画素であって、部分画像Ａｐ２を構成する各画素に対応する画素」について、レッド、グリーン、ブルーの各色の階調値を与えることができる。
【００６３】
なお、上記のようにして部分画像Ａｐ２を構成する各画素に対応する画素について階調値を与える際には、以下のような調整も行われる。すなわち、部分画像Ａｐ２を構成するある画素の位置（ｘ１，ｙ１）に上記の式（１）、（２）を適用して得られた位置（Ｘ１、Ｙ１）と、部分画像Ａｐ２を構成する別の画素の位置（ｘ２，ｙ２）に上記の式（１）、（２）を適用して得られた位置（Ｘ２、Ｙ２）とがあるとする。このとき、パノラマ画像Ｆｃを構成する各画素と同じ位置に設定された画素のうち、位置（Ｘ１、Ｙ１）に最も近い画素と、位置（Ｘ２、Ｙ２）に最も近い画素と、が同一であったとする。このような場合には、同じ画素に二組の階調値を付与するわけにはいかない。よって、そのような場合には、位置（ｘ１，ｙ１）の画素の階調値と、位置（ｘ２，ｙ２）の画素の階調値と、の平均値を、その「最も近い位置にある画素」の階調値とする。
【００６４】
また、パノラマ画像Ｆｃを構成する各画素と同じ位置に設定された画素のうち、上記の手順によって階調値を与えられない画素が存在する場合もある。そのような場合には、所定の方法で、階調値を与えられた画素の階調値をもとに補間を行って階調値を与える。
【００６５】
以上で説明したような画像変換により、部分画像Ａｐ２と近似の画像を表示し、上辺Ａｐ２ｒ１および下辺Ａｐ２ｒ２に沿って並ぶ画素で構成される変換部分画像Ａｐ２ｒを生成することができる（図７参照）。なお、部分画像Ａｐ２を構成する画素の並びの方向を図７において多数の直線ＰＬ２ｒで示す。前述のように、部分画像Ａｐ１とＡｐ２は互いに重複する領域を有していることから、部分画像Ａｐ１と変換部分画像Ａｐ２ｒとは、互いに同じ対象を表す部分を有している。すなわち、部分画像Ａｐ１と変換部分画像Ａｐ２ｒとは、山Ｍｔ１，Ｍｔ２および空Ｓｋの一部の画像を共通して含んでいる。また、それらの上に設定された特徴点Ｓｐ１〜Ｓｐ３もともに部分画像Ａｐ１とＡｐ２に含まれる。
【００６６】
なお、この処理は、原画像データＦ２の画像のすべての領域に対して行われるのではなく、原画像データＦ２の画像のうちの部分画像Ａｐ２に対してのみ行われる。よって、原画像データＦ２の画像の領域に含まれるすべての画素について画像変換を行って階調値を計算する場合に比べて、計算量が少ない。その結果、コンピュータ１００がこの処理に要するメモリを少なくすることができ、また、計算時間を短くすることができる。
【００６７】
なお、図２のステップＳ６において、低解像度データＦＬ１，ＦＬ２の画像の相対位置を計算する際にも、同様の変換が実行される。しかし、ステップＳ６で取り扱う低解像度データＦＬ１，ＦＬ２は、原画像データＦ１，Ｆ２に比べて画素の密度が低く、画像を構成する画素の数が少ない。よって、ステップＳ６で低解像度データＦＬ２に対して回転ならびに拡大または縮小の変換を行って各画素の階調値を求める際の計算量は、原画像データＦ２に対して同様の変換を行って各画素の階調値を求める場合に比べて、計算量が少ない。
【００６８】
以上のような理由から、低解像度データの画素数を原画像データの画素数に対して所定の割合よりも低く設定すれば、図２のステップＳ６において低解像度データの相対位置を特定する際の計算量と、ステップＳ１４において部分画像の変換を行う際の計算量とを合わせても、原画像データに対して直接、回転ならびに拡大または縮小の変換を行う場合の計算量よりも少なくすることができる。第１実施例では、低解像度データの画像は、画素のピッチが原画像データの画像の画素のピッチの５０％である。このため、ステップＳ６とステップＳ１４の計算量とを合わせても、原画像データに対して直接、回転ならびに拡大または縮小の変換を行う場合の計算量よりも少ない。
【００６９】
図９は、部分画像Ａｐ１の各画素の階調値と、変換部分画像Ａｐ２ｒの各画素の階調値と、パノラマ画像Ｆｃの画素の階調値との関係を示す説明図である。図８のステップＳ３２で変換部分画像が生成されると、次に、ステップＳ３４では、部分画像と変換部分画像の相対位置が計算される。部分画像Ａｐ１と変換部分画像Ａｐ２ｒの相対位置は、図２のステップＳ６で得られた低解像度データＦＬ１，ＦＬ２の画像の相対位置に基づいて計算される。その結果、部分画像Ａｐ１と変換部分画像Ａｐ２ｒの相対位置は、図９に示すように特定される。
【００７０】
図８のステップＳ３６では、パノラマ画像Ｆｃの画素の階調値が計算される。合成されるパノラマ画像Ｆｃの画像の領域は３つの部分に分けられる。図９の中央に破線で示す境界Ｅｆ１２は、部分画像Ａｐ１の右側の辺であるＥｆ１と、変換部分画像Ａｐ２ｒの左側の辺であるＥｆ２と、の中間に位置する境界線である。ステップＳ３６では、部分画像Ａｐ１と変換部分画像Ａｐ２ｒの相対位置が特定されると、次に、この境界Ｅｆ１２が計算される。パノラマ画像Ｆｃの領域は、この境界Ｅｆ１２を中心として左右方向にそれぞれ距離Ｌｂの範囲を有する境界領域Ｆｃｐ１２と、境界領域Ｆｃｐ１２の左側に位置する左側領域Ｆｃｐ１と、境界領域Ｆｃｐ１２の右側に位置する右側領域Ｆｃｐ２と、に分けられる。
【００７１】
パノラマ画像Ｆｃの画素のうち左側領域Ｆｃｐ１の各画素の階調値Ｖｃは、それらの画素と重なる位置にある部分画像Ａｐ１の画素の階調値Ｖｂ１と等しい値とされる。そして、パノラマ画像Ｆｃの画素のうち右側領域Ｆｃｐ２の画素の階調値Ｖｃは、それらの画素と重なる位置にある変換部分画像Ａｐ２ｒの画素の階調値Ｖｂ２から計算される。また、パノラマ画像Ｆｃの画素のうち、境界領域Ｆｃｐ１２の画素の階調値Ｖｃは、それらの画素と重なる位置にある部分画像Ａｐ１の画素の階調値Ｖｂ１と変換部分画像Ａｐ２ｒの画素の階調値Ｖｂ２とから計算される。
【００７２】
生成するパノラマ画像Ｆｃを構成する画素は、そのうちの一部の画素が、原画像データＦ１の画素の位置と重なるように設定される。そして、左側領域Ｆｃｐ１の画像はすべて、原画像データＦ１の画像の一部である部分画像Ａｐ１に含まれる。よって、左側領域Ｆｃｐ１においては、パノラマ画像Ｆｃを構成する画素のうち、原画像データＦ１の画素の位置と重なる画素、すなわち、部分画像Ａｐ１の画素の位置と重なる画素については、部分画像Ａｐ１の画素の階調値Ｖｂ１が、そのままパノラマ画像Ｆｃの画素の階調値Ｖｃとされる。
【００７３】
また、パノラマ画像Ｆｃのうち、右側領域Ｆｃｐ２の画素の階調値は、以下のようにして計算される。すなわち、まず、部分画像Ａｐ１の画素の輝度の平均値Ｌｍ１と、部分画像Ａｐ２の画素の輝度の平均値Ｌｍ２が計算される。そして、Ｌｍ１とＬｍ２に基づいてΔＶが以下の式（３）で計算される。ここで、αは所定の係数である。
【００７４】
ΔＶ＝α（Ｌｍ１−Ｌｍ２）  ・・・  （３）
【００７５】
右側領域Ｆｃｐ２の画像はすべて、変換部分画像Ａｐ２ｒに含まれる。よって、右側領域Ｆｃｐ２の各画素の階調値Ｖｃは、変換部分画像Ａｐ２ｒの画素の階調値とΔＶとから、以下の式（４）により得られる。ここで、Ｖｂ２は、階調値を計算する対象である画素と一致する位置にある変換部分画像Ａｐ２ｒの画素の階調値である。
【００７６】
Ｖｃ＝Ｖｂ２＋ΔＶ  ・・・  （４）
【００７７】
すなわち、第１実施例では、部分画像Ａｐ１の画素の輝度の平均値Ｌｍ１と、部分画像Ａｐ２の画素の輝度の平均値Ｌｍ２とのずれΔＶを計算する。そして、そのずれを解消するように、変換部分画像Ａｐ２ｒの画素の階調値Ｖｂ２をΔＶだけシフトさせてパノラマ画像Ｆｃの右側領域Ｆｃｐ２の各画素の階調値Ｖｃとする。このため、異なる原画像データから生成された部分同士で全体の輝度が異なる場合にも、生成されるパノラマ画像Ｆｃが不自然な画像となってしまうことがない。
【００７８】
また、パノラマ画像Ｆｃのうち境界領域Ｆｃｐ１２は、部分画像Ａｐ１と変換部分画像Ａｐ２ｒの両方の領域に含まれる。境界領域Ｆｃｐ１２の画素の階調値Ｖｃは、部分画像Ａｐ１の画素の階調値Ｖｂ１と変換部分画像Ａｐ２ｒの画素の階調値Ｖｂ２から生成される。すなわち、上記の式（４）と同様に変換部分画像Ａｐ２ｒの画素の階調値Ｖｂ２の値をずらし、そのずらされた階調値（Ｖｂ２＋ΔＶ）と、部分画像Ａｐ１の画素の階調値Ｖｂ１と、が重み付けされて平均され、パノラマ画像Ｆｃの境界領域Ｆｃｐ１２内の画素の階調値Ｖｃが計算される。
【００７９】
具体的には、境界領域Ｆｃｐ１２の画素の階調値Ｖｃは、以下の式（５）で計算される。ここで、Ｗｆｐ１、Ｗｆｐ２は、（Ｗｆｐ１＋Ｗｆｐ２）が１となるような定数である。境界領域Ｆｃｐ１２の左端Ｅｆｓ２において、Ｗｆｐ１は１であり、Ｗｆｐ２は０である。そして、境界領域Ｆｃｐ１２中、右に行くにつれてＷｆｐ２は大きくなり、境界領域Ｆｃｐ１２の右端Ｅｆｓ１において、Ｗｆｐ１は０であり、Ｗｆｐ２は１である。Ｗｆｐ１の値を％でパノラマ画像Ｆｃの上側に示し、Ｗｆｐ２の値を％でパノラマ画像Ｆｃの下側に示す。
【００８０】
Ｖｃ＝（Ｗｆｐ１×Ｖｂ１）＋｛Ｗｆｐ２×（Ｖｂ２＋ΔＶ）｝  ・・・  （５）
【００８１】
たとえば、境界領域Ｆｃｐ１２の左端Ｅｆｓ２に位置する画素の階調値は、それら各画素と同じ位置にある部分画像Ａｐ１の画素の階調値と等しい。そして、境界領域Ｆｃｐ１２中、右に行くにつれて部分画像Ａｐ１の画素の階調値がパノラマ画像Ｆｃの画素の階調値に反映される割合は小さくなり、境界領域Ｆｃｐ１２の右端Ｅｆｓ１に位置する画素の階調値は、それら各画素と同じ位置にある変換部分画像Ａｐ２ｒの画素の階調値Ｖｂ２を前述のように改変したもの（Ｖｂ２＋ΔＶ）と等しくなる。
【００８２】
図８のステップＳ３６では、以上のようにして原画像データＦ１の画素の階調値と、変換部分画像Ａｐ２ｒの画素の階調値とからパノラマ画像Ｆｃの画素の階調値が計算される。そして、図８のフローチャートに示したパノラマ画像Ｆｃの画素の階調値を計算する処理が終了する。第１実施例では、このような方法でパノラマ画像Ｆｃの画素の階調値を計算するため、原画像データＦ１とＦ２の画像のつなぎ目が目立ちにくいパノラマ画像Ｆｃを得ることができる。
【００８３】
図１０は、以上のようにして生成されたパノラマ画像Ｆｃの範囲と、原画像データＦ１，Ｆ２の画像の範囲との関係を示す説明図である。図２のステップＳ１４では、パノラマ画像Ｆｃの画素の階調値が以上のようにして計算された後、ＣＰＵ１０２が、それらの画素の階調値のデータを含み、原画像データＦ１，Ｆ２の画像の範囲を越える範囲を有するパノラマ画像Ｆｃの画像データを生成する。このようにパノラマ画像Ｆｃの画素の階調値を計算し、パノラマ画像Ｆｃの画像データを生成する機能は、ＣＰＵ１０２の機能部である拡張画像生成部１０２ｇ（図１参照）によって実現される。
【００８４】
なお、この階調値の計算は、原画像データＦ１，Ｆ２の画像のすべての領域について行われるのではなく、部分画像Ａｐ１，Ａｐ２の領域内の画素、言い換えればパノラマ画像Ｆｃの領域内の画素についてのみ行われる。よって、原画像データＦ１、Ｆ２の画像の領域の画素について階調値を計算する場合に比べて、パノラマ画像を生成する際の計算量が少ない。その結果、コンピュータ１００がこの処理に要するメモリを少なくすることができ、また、計算時間を短くすることができる。
【００８５】
Ｂ．第２実施例：
第１実施例では、まず部分画像Ａｐ２から変換部分画像Ａｐ２ｒ全体を生成した後、パノラマ画像Ｆｃを生成していた。しかし、第２実施例では、事前に変換部分画像Ａｐ２ｒ全体を生成するのではなく、パノラマ画像Ｆｃを構成する各画素の階調値を計算する際に、同時に、対応する変換部分画像の画素の階調値を計算し、パノラマ画像Ｆｃを生成する。
【００８６】
図１１は、部分画像Ａｐ１，Ａｐ２の画素の階調値からパノラマ画像Ｆｃの画素の階調値を求める手順を示すフローチャートである。第２実施例においては、パノラマ画像Ｆｃの画素の階調値を求める際には、まず、ステップＳ７２で、パノラマ画像Ｆｃを構成する画素のうち階調値を計算する対象画素を選択する。
【００８７】
ステップＳ７４では、その対象画素が、左側領域Ｆｃｐ１、右側領域Ｆｃｐ２、境界領域Ｆｃｐ１２のいずれに属する画素であるか（図９参照）を判定する。対象画素が左側領域Ｆｃｐ１に属する画素である場合は、ステップＳ７６において、その対象画素と同じ位置にある部分画像Ａｐ１の画素の階調値を、対象画素の階調値Ｖｃとする。
【００８８】
ステップＳ７４において、対象画素が右側領域Ｆｃｐ２に属する画素であった場合は、ステップＳ７８で、その対象画素と同じ位置に設定した画素の階調値Ｖｂ２を、部分画像Ａｐ２の画素の階調値から計算する。たとえば、その対象画素と同じ位置に設定した画素の位置（Ｘ、Ｙ）に対して式（１）、（２）で表されるアフィン変換の逆変換を行い、位置（ｘ、ｙ）を求める。そして、部分画像Ａｐ２を構成する画素のうち位置（ｘ、ｙ）に最も近い位置にある画素の階調値を、位置（Ｘ、Ｙ）の画素の階調値Ｖｂ２とする。その後、ステップＳ８０で、式（４）にしたがって対象画素の階調値Ｖｃを計算する。
【００８９】
ステップＳ７４において、対象画素が境界領域Ｆｃｐ１２に属する画素であった場合は、ステップＳ８２で、その対象画素と同じ位置に設定した画素Ｐｓ１の階調値Ｖｂ２を、ステップＳ７８と同様の手順で、部分画像Ａｐ２の画素の階調値から計算する。その後、ステップＳ８４で、式（５）にしたがって対象画素の階調値Ｖｃを計算する。
【００９０】
ステップＳ８６では、パノラマ画像Ｆｃのすべての画素について階調値を計算したか否かを判定する。まだ、階調値を計算していない画素が存在し、判定結果がＮｏである場合には、ステップＳ７２に戻る。ステップＳ８６において、パノラマ画像Ｆｃのすべての画素について階調値を計算し終えたと判定され、判定結果がＹｅｓとなったときには、パノラマ画像Ｆｃの画素の階調値を求める処理を終了する。
【００９１】
以上で説明したような手順により、事前に部分画像Ａｐ２から変換部分画像Ａｐ２ｒ全体を生成することなく、パノラマ画像Ｆｃを構成する画素の階調値を計算することができる。このような処理においても、階調値を求める画素はパノラマ画像Ｆｃを構成する画素のみである。すなわち、原画像データが記録している画像の領域の和の領域すべてについて、画素の階調値を求めているわけではない。よって、パノラマ画像Ｆｃのデータを生成する際の計算量が少ない。
【００９２】
Ｃ．第３実施例：
第３実施例は、原画像データとパノラマ画像データの画素の関係と、原画像データの数と、が第１実施例とは異なる。他の点は第１実施例と同じである。
【００９３】
図１２は、第３実施例において、ディスプレイ１１０上で画像生成領域ＡＬｃを決定する際のユーザインターフェイス画面を示す説明図である。第３実施例では、原画像データＦ３，Ｆ４，Ｆ５から１個のパノラマ画像Ｆｃが合成される。原画像データＦ３，Ｆ４，Ｆ５は、山Ｍｔ１〜Ｍｔ４、海Ｓａ、空Ｓｋが見える風景を、それぞれフレームをずらして撮した３枚の画像のデータである。
【００９４】
第３実施例では、図２のステップＳ４で、原画像データＦ３，Ｆ４，Ｆ５から低解像度データＦＬ３，ＦＬ４，ＦＬ５が生成される。そして、ステップＳ６で、低解像度データＦＬ３，ＦＬ４，ＦＬ５の各画像の相対位置が計算される。たとえば、低解像度データＦＬ３の画像と低解像度データＦＬ４の画像の相対位置は、特徴点Ｓｐ３同士および特徴点Ｓｐ４同士のずれがそれぞれ所定の範囲内となるような相対位置に決定される。また、低解像度データＦＬ４の画像と低解像度データＦＬ５の画像の相対位置は、特徴点Ｓｐ５同士および特徴点Ｓｐ６同士のずれがそれぞれ所定の範囲内となるような相対位置に決定される。
【００９５】
第１実施例では、低解像度データＦＬ１，ＦＬ２の画像は、設定された特徴点Ｓｐ１〜Ｓｐ３のすべてについて、互いの位置のずれが所定の範囲内となるように、相対位置が確定された。しかし、相対位置の計算の際にはすべての特徴点が一致するような相対位置を求める必要はない。ただし、少なくとも２個以上の特徴点について、それぞれのずれ量が所定の範囲内となるような相対位置を求めることが好ましい。
【００９６】
図２のステップＳ８では、ユーザによって画像生成領域ＡＬｃが指定される。図１２に示すように、第３実施例においては、画像生成領域ＡＬｃの各辺は、低解像度データＦＬ３，ＦＬ４，ＦＬ５の各画像のいずれの辺とも平行ではない。その結果、最終的に生成するパノラマ画像Ｆｃの画素の並び方向と、原画像データＦ３，Ｆ４，Ｆ５の画像の画素の並び方向とは一致しない。よって、図２のステップＳ１２で生成される各部分画像の画素の並び方向は、最終的に生成するパノラマ画像Ｆｃの画素の並び方向と、一致しないことになる。
【００９７】
第３実施例においては、パノラマ画像Ｆｃの階調値を計算する際には、図８のステップＳ３２において、原画像データＦ３，Ｆ４，Ｆ５から生成されるすべての部分画像Ａｐ３，Ａｐ４，Ａｐ５について、第１実施例の部分画像Ａｐ２と同様にアフィン変換を行って、変換部分画像Ａｐ３ｒ，Ａｐ４ｒ，Ａｐ５ｒを生成する。そして、その後、ステップＳ３４において、各変換部分画像Ａｐ３ｒ，Ａｐ４ｒ，Ａｐ５ｒについて互いの相対位置を決定する。相対位置の決定の仕方については、低解像度データＦＬ３，ＦＬ４，ＦＬ５の相対位置の決定の仕方と同様である。その後、ステップＳ３６でパノラマ画像Ｆｃの階調値を計算する。
【００９８】
第３実施例においては、原画像データＦ３，Ｆ４，Ｆ５から生成されるすべての部分画像について、変換部分画像を生成している。このため、原画像データの画像の向きに拘束されることなく、自由な向きおよび形状のパノラマ画像を形成することができる。
【００９９】
Ｄ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１００】
第１実施例においては、低解像度部分画像ＡＬｐ１、ＡＬｐ２にそれぞれ対応する部分である部分画像Ａｐ１、Ａｐ２が、原画像データＦ１、Ｆ２から計算された。そして、生成されるパノラマ画像Ｆｃの辺Ｆｃ１、Ｆｃ２の方向（すなわち、画素の並びの方向ＰＬｃ）に対して、自己が有する画素の並びの方向ＰＬ２が所定の角度を有している部分画像Ａｐ２について、回転および拡大または縮小の変換が行われた。しかし、このような処理は、原画像データＦ２の画像の一部から選択された部分画像Ａｐ２についてのみ行うのではなく、他の部分も含む所定の処理領域について行うこともできる。
【０１０１】
図１３は、原画像データＦ１、Ｆ２の画像および部分画像Ａｐ１、Ａｐ２並びに処理領域Ａｐ１’、Ａｐ２’の関係を示す説明図である。図１３の左側に示す原画像データＦ１においては、部分画像Ａｐ１の領域と、パノラマ画像Ｆｃの生成に使用する処理領域Ａｐ１’とは、同じ領域である。これに対して、図１３の右側に示す原画像データＦ２においては、パノラマ画像Ｆｃの生成に使用するために所定の処理を行う処理領域Ａｐ２’は、部分画像Ａｐ２の領域と、部分画像Ａｐ２外の領域とを含む所定の領域である。
【０１０２】
処理領域Ａｐ２’は、原画像データＦ２に含まれ部分画像Ａｐ２の外周から所定の距離δの範囲内にある領域と、部分画像Ａｐ２の領域と、を含む領域である。図１３の態様においては、この処理領域Ａｐ２’について、回転および拡大または縮小の変換を行って、変換処理領域Ａｐ２ｒ’を生成する。その後、変換処理領域Ａｐ２ｒ’から、低解像度部分画像ＡＬｐ２に対応する部分である変換部分画像Ａｐ２ｒを取り出す。そして、変換部分画像Ａｐ２ｒを使用して、第１実施例に示したような方法でパノラマ画像Ｆｃの生成を行う。
【０１０３】
このような態様とすれば、部分画像Ａｐ２の領域を超えた領域の画像も考慮して回転および拡大または縮小の変換を行って、変換処理領域Ａｐ２ｒ’を生成することができる。このため、変換処理領域Ａｐ２ｒ’から取り出される変換部分画像Ａｐ２ｒの外周近傍の画像の品質を高くすることができる。
【０１０４】
なお、処理領域Ａｐ２’は、たとえば、部分画像Ａｐ２の外周から、主走査方向または副走査方向の画素の１辺の長さ３個分の距離の範囲内にある領域と、部分画像Ａｐ２の領域と、から生成することができる。また、処理領域Ａｐ２’は、たとえば、部分画像Ａｐ２の外周から画素の１辺の長さ２個分の距離の範囲内にある領域と、部分画像Ａｐ２の領域と、から生成することもできる。しかし、合成画像Ｆｃを生成するための所定の処理を行う処理領域は、このような態様に限らず、部分原画像を含む任意の領域とすることができる。そして、図１３の原画像データＦ１や第１実施例のように、所定の処理を行う処理領域を、部分原画像の領域に等しい領域とすることもできる。
【０１０５】
第１実施例では、生成するパノラマ画像の画素の密度と、原画像データの画素の密度とは同じであった。しかし、生成するパノラマ画像の画素の密度と、原画像データの画素の密度とは異なっていてもよい。生成するパノラマ画像の画素の密度と、原画像データの画素の密度とが異なっている場合には、図８のステップＳ３２において変換部分画像を生成する際に、変換部分画像を、生成するパノラマ画像の画素の密度と同じ画素の密度で生成すればよい。
【０１０６】
また、第１実施例では、低解像度データＦ１，Ｆ２の画素の密度は、原画像データの画素の密度の５０％であった。しかし、取得した画像（原画像データ）から解像度変換によって生成する画像（低解像度データ）の画素の密度は、これに限られるものではなく、取得した画像の画素の密度よりも低いものであればよい。ただし、解像度変換によって生成する画像の画素のピッチは、取得した画像の画素のピッチの３０％〜８０％であることが好ましく、取得した画像の画素のピッチの４０％〜６０％であることがさらに好ましい。
【０１０７】
また、解像度変換によって生成する画像の画素のピッチは１／ｎとすることも好ましい。ここで、ｎは正の整数である。このような態様とすれば、解像度変換を行う際の計算量を少なくすることができる。また、生成される画像の画質の劣化も少ない。
【０１０８】
さらに、共通する画像部分を含む複数の画像の相対位置を決定する際には、それらの画像が図１２に示すように一方向にほぼ１列に並ぶ場合には、ユーザは、マウスを使ってユーザインターフェイス画面上で各画像をドラッグする代わりに、それらの画像の並び順を表す数値や符号をキーボード１２０からコンピュータ１００に入力することとしてもよい。
【０１０９】
上記第１実施例では、部分画像のうちの一つである部分画像Ａｐ１については、画素の階調値をそのまま使用し、他方の部分画像Ａｐ２については、輝度の平均値が部分画像Ａｐ１の輝度の平均値に近づくように、階調値の調整を行っていた（式（４）参照）。しかし、階調値の調整は、基準となる部分画像の階調値に他の部分画像の階調値を合わせるような調整には限られない。すなわち、階調値の調整は、すべての部分画像について互いの輝度などの評価値ずれが所定の範囲内となるように、調整を行う態様とすることができる。
【０１１０】
上記実施例では、原画像データの各画素はレッド、グリーン、ブルーの階調値を有していた。しかし、原画像データの各画素はシアン、マゼンタ、イエロなどの、他の組み合わせの色の階調値を有する態様とすることもできる。
【０１１１】
上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェア（コンピュータプログラム）に置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。例えば、図１に示したような低解像度データ生成部、相対位置決定部などの機能部による処理をハードウェア回路で行うこととしてもよい。
【０１１２】
そのような機能を実現するコンピュータプログラムは、フロッピディスクやＣＤ−ＲＯＭ等の、コンピュータ読み取り可能な記録媒体に記録された形態で提供される。ホストコンピュータは、その記録媒体からコンピュータプログラムを読み取って内部記憶装置または外部記憶装置に転送する。あるいは、通信経路を介してプログラム供給装置からホストコンピュータにコンピュータプログラムを供給するようにしてもよい。コンピュータプログラムの機能を実現する時には、内部記憶装置に格納されたコンピュータプログラムがホストコンピュータのマイクロプロセッサによって実行される。また、記録媒体に記録されたコンピュータプログラムをホストコンピュータが直接実行するようにしてもよい。
【０１１３】
この明細書において、ホストコンピュータとは、ハードウェア装置とオペレーションシステムとを含む概念であり、オペレーションシステムの制御の下で動作するハードウェア装置を意味している。コンピュータプログラムは、このようなホストコンピュータに、上述の各部の機能を実現させる。なお、上述の機能の一部は、アプリケーションプログラムでなく、オペレーションシステムによって実現されていても良い。
【０１１４】
なお、この発明において、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスクやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種のＲＡＭやＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスク等のコンピュータに固定されている外部記憶装置も含んでいる。
【図面の簡単な説明】
【０１１５】
【図１】本発明の実施例である画像処理装置の概略構成を示す説明図。
【図２】動画データの複数のフレーム画像から静止画を表す静止画データを生成する手順を示すフローチャート。
【図３】原画像データＦ１、Ｆ２の画像の範囲と撮影された風景との関係を示す説明図。
【図４】低解像度データの相対位置を特定する方法を示す説明図。
【図５】ステップＳ６で低解像度データＦＬ１，ＦＬ２の画像の相対位置ずれを計算する際の、ユーザインターフェイス画面を示す説明図。
【図６】画像生成領域を決定する際のユーザインターフェイス画面を示す説明図。
【図７】原画像データＦ１、Ｆ２の画像と部分画像Ａｐ１、Ａｐ２の関係を示す説明図。
【図８】ステップＳ６内においてパノラマ画像Ｆｃの画素の階調値を計算する際の手順を示すフローチャート。
【図９】原画像データＦ１のうち部分画像Ａｐ１内にある画像の各画素の階調値と、変換部分画像Ａｐ２ｒの各画素の階調値と、パノラマ画像Ｆｃの画素の階調値との関係を示す説明図。
【図１０】パノラマ画像Ｆｃ１の範囲と、原画像データＦ１，Ｆ２の画像の範囲との関係を示す説明図。
【図１１】部分画像Ａｐ１，Ａｐ２の画素の階調値からパノラマ画像Ｆｃの画素の階調値を求める手順を示すフローチャート。
【図１２】第３実施例において、ディスプレイ１１０に表示された低解像度データＦＬ３，ＦＬ４，ＦＬ５に基づいて、画像生成領域ＡＬｃを決定する際のユーザインターフェイス画面を示す説明図。
【図１３】原画像データＦ１、Ｆ２の画像および部分画像Ａｐ１、Ａｐ２並びに処理領域Ａｐ１’、Ａｐ２’の関係を示す説明図。
【符号の説明】
【０１１６】
２２…プリンタ
９５…アプリケーションプログラム
１００…パーソナルコンピュータ
１０２…ＣＰＵ
１０２ａ…原画像データ取得部
１０２ｂ…低解像度データ生成部
１０２ｃ…相対位置決定部
１０２ｄ…生成領域決定部
１０２ｅ…第１の部分画像決定部
１０２ｆ…第２の部分画像決定部
１０２ｇ…拡張画像生成部
１１０…ディスプレイ
１２０…キーボード
１３０…マウス
１４０…Ｒ／ＲＷドライブ
ＡＬｃ…画像生成領域
ＡＬｃ１…画像生成領域の長辺（上辺）
ＡＬｃ２…画像生成領域の長辺（下辺）
Ａｄ…画像をドラッグする様子を示す矢印
ＡＬｐ１，Ａｌｐ２…低解像度部分画像
ＡＬｐ１１…低解像度部分画像ＡＬｐ１の上辺
ＡＬｐ１２…低解像度部分画像ＡＬｐ１の下辺
ＡＬｐ２１…低解像度部分画像ＡＬｐ２の上辺
ＡＬｐ２２…低解像度部分画像ＡＬｐ２の下辺
Ａｐ１，Ａｐ２…部分画像
Ａｐ１’，Ａｐ２’…処理領域
Ａｐ１１…部分画像Ａｐ１の上辺
Ａｐ１２…部分画像Ａｐ１の下辺
Ａｐ２１…部分画像Ａｐ２の上辺
Ａｐ２２…部分画像Ａｐ２の下辺
Ａｐ２ｒ…変換部分画像
Ａｐ２ｒ’…変換処理領域
Ｅｆ１２…部分画像Ａｐ１の右側の辺であるＥｆ１と、変換部分画像Ａｐ２ｒの左側の辺であるＥｆ２と、の中間に位置する境界線
Ｆ１、Ｆ２…原画像データ
Ｆ１１…原画像データＦ１の画像の長辺（上辺）
Ｆ１２…原画像データＦ１の画像の長辺（下辺）
Ｆ２１…原画像データＦ２の画像の長辺（上辺）
Ｆ２２…原画像データＦ２の画像の長辺（下辺）
Ｆｃ１…パノラマ画像Ｆｃの長辺（上辺）
Ｆｃ２…パノラマ画像Ｆｃの長辺（下辺）
Ｆｃ３…パノラマ画像Ｆｃの短辺
Ｆｃｐ１…パノラマ画像Ｆｃのうちの左側領域
Ｆｃｐ１２…パノラマ画像Ｆｃのうちの境界領域
Ｆｃｐ２…パノラマ画像Ｆｃのうちの右側領域
Ｅｆｓ１…境界領域Ｆｃｐ１２の右端
Ｅｆｓ２…境界領域Ｆｃｐ１２の左端
ＦＬ１〜ＦＬ５…低解像度データ
ＦＬ１１…低解像度データＦＬ１の画像の長辺（上辺）
ＦＬ１１…低解像度データＦＬ１の画像の長辺（下辺）
ＦＬ２１…低解像度データＦＬ２の画像の長辺（上辺）
ＦＬ２２…低解像度データＦＬ２の画像の長辺（下辺）
Ｆａ…低解像度データＦＬ１，ＦＬ２が記録している画像の領域の和の領域
Ｆｃ…パノラマ画像
Ｌｂ…境界Ｅｆ１２から境界領域Ｆｃｐ１２の端Ｅｆｓ１，Ｅｆｓ２までの距離
Ｍｔ１〜Ｍｔ４…風景の中の山
ＰＬ１，ＰＬ２，Ｐｌ２ｒ…画素の並びの方向を表す直線
Ｓａ…風景の中の海
Ｓｋ…風景の中の空
Ｓｐ１〜５…特徴点
Ｗｆｐ１…パノラマ画像Ｆｃの画素の階調値を計算する際に、部分画像Ａｐ１の画素の階調値Ｖｂ１に掛けられる重み
Ｗｆｐ２…パノラマ画像Ｆｃの画素の階調値を計算する際に、変換部分画像Ａｐ２ｒの画素の階調値をシフトさせた値（Ｖｂ２＋ΔＶ）に掛けられる重み
【図１】
2004334843.tif 000003
【図２】
2004334843.tif 000004
【図３】
2004334843.tif 000005
【図４】
2004334843.tif 000006
【図５】
2004334843.tif 000007
【図６】
2004334843.tif 000008
【図７】
2004334843.tif 000009
【図８】
2004334843.tif 000010
【図９】
2004334843.tif 000011
【図１０】
2004334843.tif 000012
【図１１】
2004334843.tif 000013
【図１２】
2004334843.tif 000014
【図１３】
2004334843.tif 000015