(57)【要約】【課題】  撮影情報と画像とで、撮影条件につての整合性を一致させること。【解決手段】  撮影情報を参照し、画像方向を示す情報を抽出する（Ｓ１０３）。そして撮影画像のデータを用いて画像方向を求める（Ｓ１０５）。そしてそれぞれの画像方向を比較（Ｓ１０６）し、比較結果が一致していない場合には、比較結果が一致するように、撮影画像、もしくは抽出した画像方向の何れかを変更する（Ｓ１０８，Ｓ１１０）。【選択図】    図３
2006109175.tif 000002
【特許請求の範囲】
【請求項１】
画像処理方法であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影条件を構成する複数の条件のうち所定の条件を示す情報を抽出する抽出工程と、
前記撮影画像のデータを用いて、前記所定の条件を示す情報を求める計算工程と、
前記計算工程で計算した情報と、前記抽出工程で抽出した情報とを比較する比較工程と、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像、もしくは前記抽出工程で抽出した情報の何れかを変更する変更工程と
を備えることを特徴とする画像処理方法。
【請求項２】
前記変更工程では、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像、もしくは前記抽出工程で抽出した情報の何れを変更するのかの選択指示を受け付ける受付工程を備え、
前記受付工程で受け付けた選択指示で選択された方を変更することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
画像処理方法であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像を撮影した撮影装置の撮影時におけるロール値を示す情報を抽出する抽出工程と、
前記撮影画像のデータを用いて、前記撮影装置の撮影時におけるロール値を求める計算工程と、
前記計算工程で計算したロール値と、前記抽出工程で抽出した情報が示すロール値とを比較する比較工程と、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を回転させる、もしくは前記抽出工程で抽出した情報が示すロール値を変更する変更工程と
を備えることを特徴とする画像処理方法。
【請求項４】
前記変更工程では、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を回転させるのか、もしくは前記抽出工程で抽出した情報が示すロール値を変更するのかの選択指示を受け付ける受付工程を備え、
前記受付工程で受け付けた選択指示で選択された方の処理を行うことを特徴とする請求項３に記載の画像処理方法。
【請求項５】
画像処理方法であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像におけるシーンを特定する情報を抽出する抽出工程と、
前記撮影画像のデータを用いて、前記撮影画像におけるシーンを求める計算工程と、
前記計算工程で求めたシーンと、前記抽出工程で抽出した情報が示すシーンとを比較する比較工程と、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を補正する、もしくは前記抽出工程で抽出した情報を変更する変更工程と
を備えることを特徴とする画像処理方法。
【請求項６】
前記変更工程では、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を補正するのか、もしくは前記抽出工程で抽出した情報を変更するのかの選択指示を受け付ける受付工程を備え、
前記受付工程受け付けた選択指示で選択された方の処理を行うことを特徴とする請求項５に記載の画像処理方法。
【請求項７】
画像処理装置であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影条件を構成する複数の条件のうち所定の条件を示す情報を抽出する抽出手段と、
前記撮影画像のデータを用いて、前記所定の条件を示す情報を求める計算手段と、
前記計算手段が計算した情報と、前記抽出手段が抽出した情報とを比較する比較手段と、
前記比較手段による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像、もしくは前記抽出手段が抽出した情報の何れかを変更する変更手段と
を備えることを特徴とする画像処理装置。
【請求項８】
画像処理装置であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像を撮影した撮影装置の撮影時におけるロール値を示す情報を抽出する抽出手段と、
前記撮影画像のデータを用いて、前記撮影装置の撮影時におけるロール値を求める計算手段と、
前記計算手段が計算したロール値と、前記抽出手段が抽出した情報が示すロール値とを比較する比較手段と、
前記比較手段による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を回転させる、もしくは前記抽出手段が抽出した情報が示すロール値を変更する変更手段と
を備えることを特徴とする画像処理装置。
【請求項９】
画像処理装置であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像におけるシーンを特定する情報を抽出する抽出手段と、
前記撮影画像のデータを用いて、前記撮影画像におけるシーンを求める計算手段と、
前記計算手段が求めたシーンと、前記抽出手段が抽出した情報が示すシーンとを比較する比較手段と、
前記比較手段による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を補正する、もしくは前記抽出手段が抽出した情報を変更する変更手段と
を備えることを特徴とする画像処理装置。
【請求項１０】
前記シーンを特定する情報は、夜景を示す画像またはポートレートであることを特徴とする請求項５に記載の画像処理方法。
【請求項１１】
コンピュータに請求項１乃至６の何れか１項又は請求項１０に記載の画像処理方法を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影画像を処理するための技術に関するものである。
【背景技術】
【０００２】
近年、デジタルカメラの普及によって、撮影画像のデジタル化が容易になっている。加えて印刷装置、特にインクジェット方式の高画質化が進み、ユーザが撮影したデジタル画像から写真調の印刷結果を得ることができるようになった。更に、パーソナルコンピュータ上で各種アプリケーションソフトウェアを使用して撮影した画像データを編集、加工処理することも容易になっている。
【０００３】
このような背景から、撮影した画像をきれいに且つ簡単に印刷できる環境の開発が更に進められている。そのひとつとして、デジタルカメラで撮影したときの撮影条件、時間、機種などの様々な情報を撮影情報として画像データに付加し、そのデータをもとに最適な画像処理を行う方法が多く提案されている（例えば特許文献１を参照）。
【特許文献１】特開２００３-０８７７１７
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし実際には撮影情報と撮影された画像データとが一致していないために間違った処理を行うことがある。これは撮影情報が必ずしも撮影時の状況を反映できないからである。
【０００５】
例えば、デジタルカメラの一機能として、撮影時の縦横の姿勢、つまり画角を検知するものがある。これはカメラにフォトインタラプター、傾きセンサー、重力センサー、加速度センサー、メカ的なセンサーをカメラに内蔵し、撮影時の姿勢を計測するものである。
【０００６】
これによって撮影時の縦横の姿勢を撮影情報として格納しておき、縦長な画角で撮影された撮影画像データをパーソナルコンピュータで表示するときに自動的に回転させて表示するといった機能を実現することが可能になる。
【０００７】
この機能は高級機には搭載されているが、低価格普及機、カメラ付き携帯などにはまだ搭載されていない。更に画像の方向を格納する機能が搭載されているにもかかわらず、ユーザがこの機能をoffにして撮影することもある。また、急にカメラを動かしたり回転して撮影した場合には、正確に撮影方向を認識できない場合がある。したがって、撮影された画像の方向と格納された撮影データが一致していない場合が多く存在する。
【０００８】
この結果、画像を表示する際に画像の方向を元に表示方向を自動的に修正して表示できるアプリケーションを利用していても、表示方向と画角を一致させることができない場合が発生するという問題があった。
【０００９】
さらに、デジタルカメラには撮影モードの設定が可能であり、ユーザは、AUTO、ポートレート、風景、夜景などのモードを選択して撮影を行える。しかし、ユーザがあるモードを選択して撮影を行い、そのままのモードで使い続けてしまうといったことが起こる。例えば、風景モードで風景に適した撮影を行った後で、人物をそのモードのまま撮影してしまうといったことがある。
【００１０】
この様な場合、撮影情報を元に自動的に画像処理を行うと、ポートレートモードとして処理されるべき画像であるにもかかわらず、風景モードとして処理されてしまい、処理の不整合が発生するといった問題があった。
【００１１】
本発明は以上の問題に鑑みて成されたものであり、撮影情報と画像とで、撮影条件につての整合性を一致させるための技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の目的を達成するために、例えば本発明の画像処理方法は以下の構成を備える。
【００１３】
即ち、画像処理方法であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影条件を構成する複数の条件のうち所定の条件を示す情報を抽出する抽出工程と、
前記撮影画像のデータを用いて、前記所定の条件を示す情報を求める計算工程と、
前記計算工程で計算した情報と、前記抽出工程で抽出した情報とを比較する比較工程と、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像、もしくは前記抽出工程で抽出した情報の何れかを変更する変更工程と
を備えることを特徴とする。
【００１４】
本発明の目的を達成するために、例えば本発明の画像処理方法は以下の構成を備える。
【００１５】
即ち、画像処理方法であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像を撮影した撮影装置の撮影時におけるロール値を示す情報を抽出する抽出工程と、
前記撮影画像のデータを用いて、前記撮影装置の撮影時におけるロール値を求める計算工程と、
前記計算工程で計算したロール値と、前記抽出工程で抽出した情報が示すロール値とを比較する比較工程と、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を回転させる、もしくは前記抽出工程で抽出した情報が示すロール値を変更する変更工程と
を備えることを特徴とする。
【００１６】
本発明の目的を達成するために、例えば本発明の画像処理方法は以下の構成を備える。
【００１７】
即ち、画像処理方法であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像におけるシーンを特定する情報を抽出する抽出工程と、
前記撮影画像のデータを用いて、前記撮影画像におけるシーンを求める計算工程と、
前記計算工程で求めたシーンと、前記抽出工程で抽出した情報が示すシーンとを比較する比較工程と、
前記比較工程による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を補正する、もしくは前記抽出工程で抽出した情報を変更する変更工程と
を備えることを特徴とする。
【００１８】
本発明の目的を達成するために、例えば本発明の画像処理装置は以下の構成を備える。
【００１９】
即ち、画像処理装置であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影条件を構成する複数の条件のうち所定の条件を示す情報を抽出する抽出手段と、
前記撮影画像のデータを用いて、前記所定の条件を示す情報を求める計算手段と、
前記計算手段が計算した情報と、前記抽出手段が抽出した情報とを比較する比較手段と、
前記比較手段による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像、もしくは前記抽出手段が抽出した情報の何れかを変更する変更手段と
を備えることを特徴とする。
【００２０】
本発明の目的を達成するために、例えば本発明の画像処理装置は以下の構成を備える。
【００２１】
即ち、画像処理装置であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像を撮影した撮影装置の撮影時におけるロール値を示す情報を抽出する抽出手段と、
前記撮影画像のデータを用いて、前記撮影装置の撮影時におけるロール値を求める計算手段と、
前記計算手段が計算したロール値と、前記抽出手段が抽出した情報が示すロール値とを比較する比較手段と、
前記比較手段による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を回転させる、もしくは前記抽出手段が抽出した情報が示すロール値を変更する変更手段と
を備えることを特徴とする。
【００２２】
本発明の目的を達成するために、例えば本発明の画像処理装置は以下の構成を備える。
【００２３】
即ち、画像処理装置であって、
撮影画像に添付された、当該撮影画像の撮影時における撮影条件を示す情報を参照し、当該撮影画像におけるシーンを特定する情報を抽出する抽出手段と、
前記撮影画像のデータを用いて、前記撮影画像におけるシーンを求める計算手段と、
前記計算手段が求めたシーンと、前記抽出手段が抽出した情報が示すシーンとを比較する比較手段と、
前記比較手段による比較結果が一致していない場合には、当該比較結果が一致するように、前記撮影画像を補正する、もしくは前記抽出手段が抽出した情報を変更する変更手段と
を備えることを特徴とする。
【発明の効果】
【００２４】
本発明の構成により、撮影情報と画像とで、撮影条件につての整合性を一致させることができる。
【発明を実施するための最良の形態】
【００２５】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００２６】
［第１の実施形態］
図１は、本実施形態に係る画像処理装置の基本構成を示すブロック図である。１０１は画像処理装置本体で、ＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）等の汎用の汎用コンピュータである。このコンピュータ１０１は基本的には以下の各部により構成されている。
【００２７】
１０２はＣＰＵで、ＲＯＭ１０３やＲＡＭ１０４に格納されているプログラムやデータを用いてコンピュータ全体の制御を行うと共に、本実施形態に係る画像処理装置が行うべき後述の各処理を行う。
【００２８】
１０３はＲＯＭで、ＢＩＯＳ（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）と呼ばれる周辺機器の入出力を制御するプログラムが格納されている。ＣＰＵ１０２はコンピュータの電源投入時にこのプログラムを実行し、ＲＡＭ１０４やその他の入出力装置の初期化を行う。
【００２９】
１０４はＲＡＭで、ＣＰＵ１０２が各処理を行う際に使用するワークエリアを備えると共に、２次記憶装置１０５からロードされたプログラムやデータを一時的に記憶するためのエリアを備える。また、インターフェース１０８を介して受信したデータを一時的に記憶するためのエリアを備える。
【００３０】
１０５は２次記憶装置で、ハードディスクドライブ装置等の大容量情報記憶装置であり、ここにＯＳ（オペレーティングシステム）や、本実施形態に係る画像処理装置が行うべき処理として後述する各処理をＣＰＵ１０２に実行させるためのプログラムやデータが保存されており、これらの一部、もしくは全部はＣＰＵ１０２の制御に基づいてＲＡＭ１０４にロードされ、ＣＰＵ１０２の処理対象となる。
【００３１】
１０６は表示装置で、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ１０２による処理結果を画像や文字などでもって表示することができる。
【００３２】
１０７は入力装置で、キーボードやマウスなどのポインティングデバイスにより構成されており、各種の指示をＣＰＵ１０２に対して入力することができると共に、各種のデータ入力を行うこともできる。
【００３３】
１０８はＩ／Ｆで、ここに後述する各周辺機器を接続することができ、本実施形態に係る画像処理装置は、各周辺機器とこのＩ／Ｆ１０８を介してデータ通信を行うことができる。Ｉ／Ｆ１０８としては、パラレルポートとも呼ばれるＩＥＥＥ１２８４やＳＣＳＩ（ｓｍａｌｌ  ｃｏｍｐｕｔｅｒ  ｓｙｓｔｅｍ  ｉｎｔｅｒｆａｃｅ）、更にはＵＳＢ（ｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  ｂｕｓ）、ＩＥＥＥ１３９４といったシリアルバスなどが使用できる。どのインターフェースを使用するかは画像処理装置１０１の構成、外部周辺機器の対応によって決まる。
【００３４】
１５０は上述の各部を繋ぐバスである。
【００３５】
次に、Ｉ／Ｆ１０８に接続する周辺機器について説明する。周辺機器には、デジタルスチルカメラ１０９、メモリカードリーダ／ライタ１１０、プリンター１１１がある。
【００３６】
デジタルスチルカメラ１０９は周知の通り撮影装置であり、撮影した撮影画像データをデジタルスチルカメラ１０９内部に挿入している不図示の記録メディアに保持している。
【００３７】
この保持している撮影画像データは、Ｉ／Ｆ１０８にこのデジタルスチルカメラ１０９を接続し、入力装置１０７により取り込み指示を入力することで、ＣＰＵ１０２による制御に従って、デジタルスチルカメラ１０９からコンピュータ１０１のＲＡＭ１０４もしくは２次記憶装置１０５にダウンロードすることができる。
【００３８】
また、上記記録メディアをデジタルスチルカメラ１０９から取り出し、メモリカードリーダ／ライタ１１０に挿入し、そしてＩ／Ｆ１０８にこのメモリカードリーダ／ライタ１１０を接続し、入力装置１０７により取り込み指示を入力することで、ＣＰＵ１０２による制御に従ってメモリカードリーダ／ライタ１１０に記録メディアに記録されている撮影画像データを読み出させることができ、これにより、メモリカードリーダ／ライタ１１０からコンピュータ１０１のＲＡＭ１０４もしくは２次記憶装置１０５にダウンロードすることができる。
【００３９】
また、コンピュータ１０１に一反ダウンロードした撮影画像は、プリンター１１１によって記録媒体上に印刷することもできる。
【００４０】
なお、本実施形態に係る画像処理装置の基本構成はこれに限定するものではなく、例えばＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどの記憶媒体に記録されているプログラムやデータを読み出してＲＡＭ１０４や２次記憶装置１０５にロードするための装置を更に所定のインターフェースを介してバス１５０に接続するようにしても良い。
【００４１】
＜撮影画像のフォーマット＞
図２は、本実施形態に係る撮影画像のフォーマットを示す図である。このフォーマットは上記記録メディアに格納する際のフォーマット、あるいは画像処理装置１０１に転送する際のフォーマットである。
【００４２】
デジタルスチルカメラ１０９は、１つの画像を撮影すると、この撮影画像のデータを含む画像ファイルを作成する。２０１は、この画像ファイル全体を示す。画像ファイル２０１内は撮影情報領域２０２と撮影画像データ領域２０３とに大別される。撮影情報領域２０２には、後述する撮影情報が記録され、撮影画像データ領域２０３には、撮影画像のデータが記録される。即ち、撮影画像のデータは、撮影情報を添付する形態で上記記録メディアに格納されている、あるいは画像処理装置１０１に転送される。
【００４３】
一般的には、領域２０２内のデータ（撮影情報）の量はさほど大きくないので非圧縮で保持し、領域２０３内のデータ（撮影画像のデータ）の量は大きくなるので圧縮で保持するので、この画像ファイル２０１は所謂ハイブリッドな構成をとる。しかし、各領域における圧縮／非圧縮についてはこれに限定するものではなく、撮影画像データが非圧縮であっても、逆に撮影情報が圧縮されていても問題ない。
【００４４】
先ず、領域２０２に記録されている撮影情報について説明する。
【００４５】
領域２０２にはデジタルスチルカメラ１０９で撮影したときの撮影条件、例えば、撮影する画像の縦／横の画素数、露出条件、ストロボ発行の有無、ホワイトバランスの条件、撮影モード、撮影時刻等の「複数の撮影条件を示す情報」が記録されている。よって図２の場合、領域２０２には、領域２０３に記録されている撮影画像データを撮影したときの撮影条件を示す情報が記録されている。
【００４６】
撮影情報は、その撮影情報に対応するＩＤ番号、データ形式、データ長、オフセット値、撮影情報固有のデータで構成される。例えば、ＪＥＩＤＡ（ｊａｐａｎ  ｅｌｅｃｔｒｏｎｉｃ  ｉｎｄｕｓｔｒｙ  ｄｅｖｅｌｏｐｍｅｎｔ  ａｓｓｏｃｉａｔｉｏｎ）の定めるＥｘｉｆ（ｅｘｃｈａｎｇｅａｂｌｅ  ｉｍａｇｅ  ｆｏｒｍａｔ）などが使用できる。
【００４７】
ＥｘｉｆではＩＤがＴａｇとして定義されおり、例えばＴａｇ＝２７４が画像方向（Ｏｒｉｅｎｔａｔｉｏｎ）となっている。画像方向の値は、１：上左（０番目の行（Ｘ方向）が画像の上、０番目の列（Ｙ方向）が左側）、６：右上（０番目の行が画像の右側、０番目の列が上）、８：左下（０番目の行が画像の左側、０番目の列（Ｙ方向）が下）（その他は省略）と定義されている。よって、本実施形態に係る画像ファイルのフォーマットがＥｘｉｆに従っている場合に、領域２０２内の撮影情報において、ＩＤ＝２７４の撮影条件（１，６，８の何れか）を参照すれば、撮影時における画像方向を得ることができる。
【００４８】
このように、領域２０２に記録される各撮影条件には固有のＩＤが付けられており、ＩＤを指定すると、これに対応する撮影条件は１つに特定されるので、これをこの領域２０２から抽出し、参照することができる。図２の例では、ＩＤ＝３を指定すると、これに対応する撮影条件は「撮影モード」であるので、「撮影モード」を参照することで、領域２０３に記録されている撮影画像データを撮影した際の撮影モードが何であったかを得ることができる。
【００４９】
一方、領域２０３には上述の通り、撮影画像のデータが記録されるのであるが、この画像データにはＲＧＢデータやＹＣＣ（輝度色差）データを用いることができる。例えば、領域２０３に記録されている撮影画像データがＹＣＣデータである場合、画像処理装置１０１側ではこのＹＣＣデータをＲＧＢデータに変換して用いる。本実施形態では、領域２０３に記録される画像はＪＰＥＧ圧縮されているものとするが、圧縮方式はＪＰＥＧ圧縮方式に限定するものではなく、他の圧縮方式を用いても良いし、上述の通り、必ずしも圧縮されていることに限定しなくても良い。
【００５０】
＜本実施形態に係る画像処理装置が行うメインの処理＞
図３は、本実施形態に係る画像処理装置が行う処理のフローチャートである。同図のフローチャートに従った処理は大まかには、表示装置１０６の表示画面上に一覧表示された撮影画像のうちユーザに選択された撮影画像について、この撮影画像に対する撮影情報と、撮影画像から求められる「この撮影情報に該当する情報」とを比較し、その比較の結果が一致していない場合には一致させるべく、撮影情報、撮影画像データの何れを変更するのかをユーザに問い合わせる処理のフローチャートである。
【００５１】
尚、同図のフローチャートに従った処理をＣＰＵ１０２に実行させるためのプログラムやデータは２次記憶装置１０５に保存されており、これをＣＰＵ１０２の制御によってＲＡＭ１０４に読み出し、ＣＰＵ１０２がこれを実行することで、本実施形態に係る画像処理装置は以下説明する各処理を行うことになる。
【００５２】
また、同図のフローチャートに従った処理の前段で、ＲＡＭ１０４には、デジタルスチルカメラ１０９から、複数の画像ファイル（図２に示したフォーマットに従った画像ファイル）がＲＡＭ１０４にダウンロードされているものとする。
【００５３】
先ずステップＳ１０１では、ＣＰＵ１０２はＲＡＭ１０４にダウンロードされた各画像ファイルの領域２０３を参照し、各画像ファイルに記録されている撮影画像のデータを読み出し、復号し、更に、画像データがＹＣＣフォーマットである場合にはこれをＲＧＢフォーマットに変換し、ユーザにどの画像を以下の処理の対象とするのかを選択させる為に、復号後の撮影画像（ＲＧＢ画像データ）をサムネイルサイズで表示装置１０６の表示画面上に一覧表示する。表示の形態は特に限定するものではないし、サムネイルサイズの画像を得る手段についても特に限定するものではない。
【００５４】
ユーザは入力装置１０７を用いて１つ以上の撮影画像を選択し、選択が終了したら、その旨の指示を入力装置１０７を用いて入力するので、ＣＰＵ１０２がこの指示を検知すると、選択された撮影画像のリストを作成する。このリストとして本実施形態では、選択された画像ファイルのファイル名のリストとするが、特に限定するものではない。また本実施形態では、人の顔が含まれている撮影画像が選択されたものとして説明する。
【００５５】
次に、ステップＳ１０２では、ＣＰＵ１０２は、ステップＳ１０１で作成したリストの先頭の画像ファイル名を参照し、該当する画像ファイルをＲＡＭ１０４に読み出す。なお、ステップＳ１０２における処理が２回目以降である場合（処理がステップＳ１１１からステップＳ１０２に移行して、ステップＳ１０２における処理を実行する場合、今回のステップＳ１０２における処理は２回目以降の処理となる）には、前回読み出された画像ファイルの次の順にリストに登録されている画像ファイルを読み出すことになる。
【００５６】
次に、ステップＳ１０３における処理と、ステップＳ１０４，Ｓ１０５による処理とを並行して行う。なお、ステップＳ１０３における処理と、ステップＳ１０４，Ｓ１０５による処理とを並行に行うことに限定するものではなく、シリアルに行うようにしても良い。先ずステップＳ１０３における処理について説明する。
【００５７】
ステップＳ１０３では、ステップＳ１０２で参照した画像ファイル内の領域２０２内に記録されている撮影情報を解析する。図４は、ステップＳ１０３における撮影情報解析処理の詳細を示すフローチャートである。
【００５８】
先ずステップＳ２００では、ステップＳ１０２で参照した画像ファイル内の領域２０２内に撮影情報が記録されているのか否かをチェックする。一般的にデジタルスチルカメラ１０９で撮影された撮影画像データには撮影情報が付加されているが、アプリケーションで編集、加工などをするとこの撮影情報が消去される場合がある。
【００５９】
そしてそのチェックの結果、撮影情報が記録されていなかった場合には処理をステップＳ２０７に進め、撮影情報エラーとしてステップＳ１０３における処理を終了する。
【００６０】
一方、ステップＳ１０２で参照した画像ファイル内の領域２０２内に撮影情報が記録されている場合には処理をステップＳ２００からステップＳ２０１に進め、この撮影情報から読み出すべき情報をＲＡＭ１０４中の所定のエリアに読み出すために、この所定のエリアをＲＡＭ１０４中に確保する処理を行う。このエリアの確保については、例えばこの撮影情報のデータサイズ分を確保するようにすれば、少なくとも、撮影情報からどれだけの情報を読み出しても、エリア不足にはならない。
【００６１】
ここで、確保できなかった場合には処理をステップＳ２０２からステップＳ２０７に進め、撮影情報エラーとしてステップＳ１０３における処理を終了する。
【００６２】
一方、確保できた場合には処理をステップＳ２０２からステップＳ２０３に進め、撮影情報に含まれている撮影条件を、対応するＩＤと共に１つ読み出す。ここで、ステップＳ２０３において読み出しができなかった場合、即ち、撮影情報に含まれる全てのＩＤ、撮影条件を読み出した場合には本フローチャートに従った処理を終了する。
【００６３】
一方、まだ全てのＩＤ、撮影条件を読み出していない場合には処理をステップＳ２０４に進め、ステップＳ２０３で読み出したＩＤが「撮影情報から読み出すべき撮影条件のＩＤ」であるか否かをチェックする。なお、「撮影情報から読み出すべき撮影条件のＩＤ」は予め撮影情報ＩＤテーブルとして作成され、２次記憶装置１０５に保存されており、本処理の前段で予めＲＡＭ１０４にロードしているものとする。そしてこのテーブルを検索し、ステップＳ２０３で読み出したＩＤがこのテーブルに登録されているか否かをチェックする。
【００６４】
ここでは説明を簡単にするためにその一例として、「撮影情報から読み出すべき撮影条件のＩＤ」を「０」と「１」とする。即ち図２の例では、「露光」と「ストロボ」の撮影条件が「撮影情報から読み出すべき撮影条件」となる。
【００６５】
そしてステップＳ２０４におけるチェックの結果、ステップＳ２０３で読み出したＩＤが「０」の場合には処理をステップＳ２０５に進め、ＩＤ＝０に対応する撮影条件の情報をこの撮影情報から抽出してステップＳ２０１で確保したエリアに読み出す。
【００６６】
また、ステップＳ２０４におけるチェックの結果、ステップＳ２０３で読み出したＩＤが「１」の場合には処理をステップＳ２０６に進め、ＩＤ＝１に対応する撮影条件の情報をこの撮影情報から抽出してステップＳ２０１で確保したエリアに読み出す。
【００６７】
また、ステップＳ２０４におけるチェックの結果、ステップＳ２０３で読み出したＩＤが「０」、「１」の何れでもない場合には処理をステップＳ２０３に戻し、次のＩＤを読み出し、以降の処理を繰り返す。
【００６８】
この解析処理では、期待するすべての撮影条件が必ずしもすべて得られるとは限らない。これはデジタルスチルカメラ１０９の機種によって対応している撮影条件の種類が異なっているからである。このため収集できた撮影条件を利用して後の処理を実行しなければならない。
【００６９】
なお、本実施形態では、「撮影情報から読み出すべき撮影条件」を「画像方向」であるとする。従って、画像ファイルのフォーマットがＥｘｉｆに準拠している場合には、撮影情報に含まれる全てのＩＤのうちＩＤ＝２７４を検索し、検索したＩＤ＝２７４の撮影条件をステップＳ２０１で確保したエリアに読み出すことになる。
【００７０】
図３に戻って、次に、ステップＳ１０４，Ｓ１０５における処理について説明する。ステップＳ１０４では、ステップＳ１０２で参照した画像ファイル内の領域２０３に記録されている撮影画像のデータを読み出し、復号し、更に、画像データがＹＣＣフォーマットである場合にはこれをＲＧＢフォーマットに変換する。
【００７１】
そして次にステップＳ１０５では、復号後の撮影画像（ＲＧＢデータ）中で、人の顔を検出する処理を行う。ステップＳ１０５における顔検出手段としては、すでに様々な手法が提案されている。
【００７２】
特開２００２−１８３７３１によれば、入力画像から目領域を検出し、目領域周辺を顔候補領域とする。そして、この顔候補領域に対して、画素毎の輝度勾配、および輝度勾配の重みを算出し、これらの値が、あらかじめ設定されている理想的な顔基準画像の勾配、および勾配の重みと比較した時に、各勾配間の平均角度が所定の閾値以下であった場合、入力画像は顔領域を有すると判定する方法が記載されている。
【００７３】
また、特開２００３−３０６６７によれば、まず画像中から肌色領域を検出し、同領域内において、人間の虹彩色画素を検出することにより、目の位置を検出することが可能であるとしている。
【００７４】
さらに、特開平８−６３５９７によれば、複数の顔の形状をしたテンプレートと画像とのマッチング度を計算し、マッチング度が最も高いテンプレートを選択し、最も高かったマッチング度があらかじめ定められた閾値以上であれば、選択されたテンプレート内の領域を顔候補領域とする。同テンプレートを用いるこことで、目の位置を検出することが可能であるとしている。
【００７５】
さらに、特開２０００−１０５８２９によれば、まず、鼻画像パターンをテンプレートとし、画像全体、あるいは画像中の指定された領域を走査し最もマッチする位置を鼻の位置として出力する。次に、画像の鼻の位置よりも上の領域を目が存在する領域と考え、目画像パターンをテンプレートとして目存在領域を走査してマッチングをとり、ある閾値よりもマッチ度が大きい画素の集合である目存在候補位置集合を求める。さらに、目存在候補位置集合に含まれる連続した領域をクラスタとして分割し、各クラスタと鼻位置との距離を算出する。その距離が最も短くなるクラスタを目が存在するクラスタと決定することで、器官位置の検出が可能であるとしている。
【００７６】
その他、顔および器官位置を検出する方法としては、特開平８-７７３３４、特開２００１-２１６５１５、特開平５-１９７７９３、特開平１１-５３５２５、特開２０００-１３２６８８、特開２０００-２３５６４８、特開平１１-２５０２６７、特登録２５４１６８８など、数多くの手法が提案されている。
【００７７】
本実施形態では画像中の顔領域の検出、及び、この領域の画像における位置を求める方法については上記何れの文献による技術を用いても良いし、またそれらを組み合わせた技術を用いても良い。また、上記文献による技術に限定するものではなく、その技術については特に限定するものではない。
【００７８】
図７Ａ〜図７Ｃは、デジタルスチルカメラ１０９を様々な回転角度に配置した場合に撮影された、画像ファイル内の領域２０３に記録されている撮影画像からステップＳ１０５における顔検出処理によって検出された顔領域を示す図である。
【００７９】
図７Ａは、デジタルスチルカメラ１０９を回転させずに（ロール値＝０）撮影される撮影画像からステップＳ１０５における顔検出処理によって検出された顔領域を示す図である。
【００８０】
図７Ａにおいて７０１はデジタルスチルカメラ１０９を回転させずに人を撮影した場合に撮影される撮影画像であって、７０２はステップＳ１０５において検出される顔領域である。また、ＬＴはこの顔領域７０２の左上隅における座標（原点は撮影画像７０１の左上隅とする）、ＲＢはこの顔領域７０２の右下隅における座標を示すもので、顔検出処理で得られた座標である。ここで座標ＬＴを（ｘ１，ｙ１）、座標ＲＢを（ｘ２，ｙ２）とする。
【００８１】
ここで、デジタルスチルカメラ１０９を回転させずに撮影される撮影画像における顔領域のＬＴ、ＲＢには以下のような関係がある。
【００８２】
ｘ２＞ｘ１
ｙ２＞ｙ１
このように、デジタルスチルカメラ１０９を回転させずに撮影を行った場合、デジタルスチルカメラ１０９に撮影方向を検出する為のセンサが備わっている場合には、撮影画像７０１に添付される撮影情報中の「画像方向」にはこのセンサの計測結果である「デジタルスチルカメラ１０９が回転していない」ことを示す「１」なるデータが登録される。例えば画像ファイルがＥｘｉｆに準拠している場合には、撮影情報中のＩＤ＝２７４における撮影条件が「画像方向」であるので、２７４なるＩＤと共に「画像方向」を示す「１」なるデータを登録する。
【００８３】
図７Ｂは、デジタルスチルカメラ１０９を反時計方向に９０度回転させて（ロール値＝２７０）撮影される撮影画像からステップＳ１０５における顔検出処理によって検出された顔領域を示す図である。
【００８４】
図７Ｂにおいて７０３はデジタルスチルカメラ１０９を反時計方向に９０度回転させて撮影される撮影画像であって、７０４はステップＳ１０５において検出される顔領域である。デジタルスチルカメラ１０９を反時計方向に９０度回転させて撮影される撮影画像における顔領域のＬＴ、ＲＢには以下のような関係がある。
【００８５】
ｘ２＞ｘ１
ｙ２＜ｙ１
このように、デジタルスチルカメラ１０９を反時計方向に９０度回転させて撮影を行った場合、デジタルスチルカメラ１０９に撮影方向を検出する為のセンサが備わっている場合には、撮影画像７０１に添付される撮影情報中の「画像方向」にはこのセンサの計測結果である「デジタルスチルカメラ１０９が反時計方向に９０度回転している」ことを示す「６」なるデータが登録される。例えば画像ファイルがＥｘｉｆに準拠している場合には、撮影情報中のＩＤ＝２７４における撮影条件が「画像方向」であるので、２７４なるＩＤと共に「画像方向」を示す「６」なるデータを登録する。
【００８６】
図７Ｃは、デジタルスチルカメラ１０９を時計方向に９０度回転させて（ロール値＝９０）撮影される撮影画像からステップＳ１０５における顔検出処理によって検出された顔領域を示す図である。
【００８７】
図７Ｃにおいて７０５はデジタルスチルカメラ１０９を時計方向に９０度回転させて撮影される撮影画像であって、７０６はステップＳ１０５において検出される顔領域である。デジタルスチルカメラ１０９を時計方向に９０度回転させて撮影される撮影画像における顔領域のＬＴ、ＲＢには以下のような関係がある。
【００８８】
ｘ２＜ｘ１
ｙ２＞ｙ１
このように、デジタルスチルカメラ１０９を時計方向に９０度回転させて撮影を行った場合、デジタルスチルカメラ１０９に撮影方向を検出する為のセンサが備わっている場合には、撮影画像７０１に添付される撮影情報中の「画像方向」にはこのセンサの計測結果である「デジタルスチルカメラ１０９が時計方向に９０度回転している」ことを示す「８」なるデータが登録される。例えば画像ファイルがＥｘｉｆに準拠している場合には、撮影情報中のＩＤ＝２７４における撮影条件が「画像方向」であるので、２７４なるＩＤと共に「画像方向」を示す「８」なるデータを登録する。
【００８９】
以上のことから以下の２点が分かる。
【００９０】
・  撮影画像から顔領域を検出し、そして検出した顔領域におけるＬＴ、ＲＢの各座標値を参照し、ｘ１，ｙ１，ｘ２，ｙ２の互いの関係が上記関係式の何れに該当するのかをチェックすれば、撮影画像内における被写体の向きが分かるので、その結果、この撮影画像を撮影したデジタルスチルカメラ１０９の回転方向が分かる。例えば顔領域のＬＴ、ＲＢを参照し、ｘ２＞ｘ１，ｙ２＜ｙ１である場合には、デジタルスチルカメラ１０９は反時計方向に９０度回転していることが分かる。このように、撮影画像から、デジタルスチルカメラ１０９の回転方向を求めることができる。
【００９１】
・  デジタルスチルカメラ１０９に撮影方向を計測するセンサが備わっている場合には、デジタルスチルカメラ１０９側でセンサの計測結果である撮影方向を示す情報を「画像方向」として上述のようにＩＤ＝２７４と共に撮影情報に含め、撮影画像に添付して画像ファイルとして本実施形態に係る画像処理装置１０１に転送されるので、本実施形態に係る画像処理装置１０１は、画像ファイル中の撮影情報内の「画像方向」を参照すれば、この撮影画像の撮影時における実際のデジタルスチルカメラ１０９の方向を獲得することができる。なお、デジタルスチルカメラ１０９に撮影方向を計測するセンサが備わっていない場合には、撮影情報中の「画像方向」には、デフォルトのデータ「１」が登録されるか、もしくは何も登録されない。
【００９２】
しかし、従来技術として説明したとおり、種々の原因により、撮影時における実際のデジタルスチルカメラ１０９の撮影方向と、撮影画像から求められるデジタルスチルカメラ１０９の撮影方向とが一致しない場合がある。そこで、本実施形態では、撮影情報中の「画像方向」のデータを参照し、このデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とを比較し、異なっている場合には、「画像方向」のデータが示す「撮影方向」と撮影画像から求められる「撮影方向」とが一致するように、ユーザに撮影情報中の「画像方向」のデータ、撮影画像の何れを操作するのかを選択させるためのインターフェースを提供する。
【００９３】
よって、図３に戻って、ステップＳ１０６では、撮影情報中の「画像方向」のデータを参照し、このデータが示す「撮影方向」（ロール値）と、撮影画像から求められる「撮影方向」（ロール値）とを比較し、一致しているか否かを判定する。そして一致している場合には、処理をステップＳ１１１に進め、リストに登録されている全ての画像ファイルについてステップＳ１０２以降の処理を行う。処理を行っていないものがある場合には処理をステップＳ１０２に戻し、ステップＳ１０１で作成したリストに登録されている各画像ファイルのうち、次の画像ファイルについてステップＳ１０２以降の処理を行う。
【００９４】
一方、ステップＳ１０６における判定処理で、一致していないと判定した場合には、処理をステップＳ１０７に進め、一致していないので、一致するように撮影画像を回転させるのか否かをユーザに選択させるためのインターフェースを表示装置１０６の表示画面上に表示する。図８Ａは、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致するように撮影画像を回転させるのか否かをユーザに選択させるためのインターフェースの表示例を示す図である。
【００９５】
同図において８０１はこのインターフェースとしてのウィンドウを示す。ここでユーザが「はい」のボタン画像を入力装置１０７を用いて指示すると、処理をステップＳ１０７からステップＳ１０８に進め、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致するように、撮影画像を回転させ、回転後の撮影画像を回転前の撮影画像の代わりに保存する。
【００９６】
例えば図７Ｂに示した撮影画像７０３に添付されている撮影情報中の「画像方向」のデータが登録されていない、もしくは「０」のデータが登録されている場合、ステップS１０５における顔検出処理によって検出されたＬＴ、ＲＢの座標値の関係を参照するとｘ２＞ｘ１、ｙ２＜ｙ１であるので、デジタルスチルカメラ１０９は反時計方向に９０度回転していることになり、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致していないことになる。そこでこのような場合には、撮影画像７０３を反時計方向に９０度回転させることで、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致することになる。撮影画像に添付されている撮影情報中の「画像方向」のデータが登録されていない、もしくは「０」のデータが登録されている場合の例として、例えば、デジタルカメラに角度センサーが装備されていない場合や、センサーが正常に作動しなくて角度を測定できない場合がある。
【００９７】
一方、ユーザが「いいえ」のボタン画像を入力装置１０７を用いて指示すると、処理をステップＳ１０７からステップＳ１０９に進め、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致するように撮影情報中の「画像方向」のデータを変更するのか否かをユーザに選択させるためのインターフェースを表示装置１０６の表示画面上に表示する。
【００９８】
図８Ｂは、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致するように撮影情報中の「画像方向」のデータを変更するのか否かをユーザに選択させるためのインターフェースの表示例を示す図である。
【００９９】
同図において８０２はこのインターフェースとしてのウィンドウを示す。ここでユーザが「はい」のボタン画像を入力装置１０７を用いて指示すると、処理をステップＳ１０９からステップＳ１１０に進め、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致するように、撮影情報中の「画像方向」のデータを変更し、変更前の「画像方向」に上書きする。
【０１００】
例えば図７Ｂに示した撮影画像７０３に添付されている撮影情報中の「画像方向」のデータが登録されていない、もしくは「０」のデータが登録されている場合、ＬＴ、ＲＢの座標値の関係を参照するとｘ２＞ｘ１、ｙ２＜ｙ１であるので、デジタルスチルカメラ１０９は反時計方向に９０度回転していることになり、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致していないことになる。そこでこのような場合には、撮影情報中の「画像方向」のデータを「６」に変更することで、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致することになる。
【０１０１】
なお本実施形態ではステップＳ１０８，Ｓ１０９では元のデータに上書きするようにしているが、上書きするのか否か、しない場合には新たなファイル名で保存するのかをユーザに問い合わせるためのウィンドウを表示装置１０６の表示画面上に表示するようにしても良い。
【０１０２】
また、図３のフローチャートにおいて、ステップＳ１０７，Ｓ１０９をまとめて、「撮影情報、撮影画像の何れを変更するのか？」をユーザに選択させるためのインターフェースを表示するようにしても良い。
【０１０３】
図５はこのインターフェースの表示例を示す図である。同図において８０３がこのインターフェースとしてのウィンドウであり、８０４，８０５がそれぞれ「画像を回転させる」ことを選択するためのラジオボタン、「撮影情報を変更させる」ことを選択するためのラジオボタンである。同図ではラジオボタン８０４が選択されている。
【０１０４】
８０６は上記ラジオボタン８０４，もしくはラジオボタン８０５に何れかで選択した方の変更を指示するためのボタン画像である。
【０１０５】
よってこのインターフェースにおいてユーザが入力装置１０７を用いてラジオボタン８０５を指示する（「撮影情報を変更する」を選択する）と、ステップＳ１１０における処理を行い、ラジオボタン８０４を選択する（「撮影画像を回転させる」を選択する）と、ステップＳ１０８における処理を行う。
【０１０６】
以上の説明により、本実施形態によって、撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致していない場合には、撮影画像、撮影情報中の「画像方向」のデータの何れかを変更し、一致させることができる。またこれにより、撮影情報を元に自動画像補正を行う時に補正の不適合をなくすことが可能になる。
【０１０７】
［第２の実施形態］
第１の実施形態では、撮影情報に記録されている撮影条件と、撮像画像から求められる撮影条件とを比較し、一致していなければ何れか一方を変更させるという技術の一例として、この撮影条件を「画像方向」とした場合について説明した。
【０１０８】
本実施形態ではこのような技術の別の例として、この撮影条件を「シーン」とした場合について説明する。
【０１０９】
なお、本実施形態に係る画像処理装置の基本構成については第１の実施形態と同じであるとする。また、本実施形態に係る画像処理装置が行う処理のフローチャートは基本的には図３に示したフローチャートと同じであるが、ステップＳ１０５における画像解析処理、ステップＳ１０６における比較対象、ステップＳ１０７〜Ｓ１１０における変更内容が異なるのみである。
【０１１０】
以下、本実施形態に係る画像処理装置が行う処理について説明する。
【０１１１】
図６は、本実施形態に係るステップＳ１０５における処理のフローチャートである。ステップＳ４０１では、先ずステップＳ１０４で復号した撮影画像を所定のサイズの画像に縮小し、縮小画像（サムネイル画像）を作成する。本実施形態では、ステップＳ１０４で復号した撮影画像の画素数が所定の画素数よりも多い場合に、この画像のサムネイル画像を作成するのであるが、そのサイズは例えば、１６０画素×１２０画素とする。なお、サムネイル画像を作成する処理は必須なものではない。
【０１１２】
次に、このサムネイル画像に対して色空間変換処理を行う。例えばサムネイル画像がＲＧＢ画像データであるとすると、これをＹＣＣ（輝度色差）、ＨＳＶ（Ｈｕｅ：色相、Ｓａｔｕｒａｔｉｏｎ：彩度、Ｖａｌｕｅ：輝度）、ＸＹＺ，ＬＡＢ色空間の何れかの色空間の画像データに変換する。本実施形態では、ＨＳＶ色空間への変換を行ったとして説明する。
【０１１３】
よって、ステップＳ４０１では、「ＨＳＶ色空間におけるサムネイル画像」を生成したことになる。
【０１１４】
次にステップＳ４０２では、ステップＳ４０１で生成したサムネイル画像から、Ｈ成分、Ｖ成分についてのヒストグラムを生成する。即ち、Ｈ成分の各値（Ｈ、Ｓ、Ｖの各成分が８ビットで表現される場合には、値の範囲は０〜２５５）を有する画素の数、Ｖ成分の各値を有する画素の数を示すものを生成する。
【０１１５】
次にステップＳ４０３では、ヒストグラムの解析処理を行う。
【０１１６】
先ずＶ成分について生成したヒストグラムの解析処理について説明する。ここで、ステップＳ４０１で生成したサムネイル画像が、図９Ａに示した夜景の撮像画像９０１に基づいて生成されたものである場合、夜景の画像には全体的に黒い部分が多く、また、被写体部分も暗い。従ってステップＳ４０１で生成したサムネイル画像に対する輝度成分（Ｖ成分）の分布としては、分布９０２に示す如く、Ｖ成分値の低いものに画素数が多くなる。
【０１１７】
図９Ｂは、ステップＳ４０１で生成したサムネイル画像が、図９Ａに示した夜景の撮像画像９０１に基づいて生成されたものである場合に、このサムネイル画像から求めた、Ｖ成分についてのヒストグラムの一例を示す図である。図９Ａは、夜景の撮像画像９０１の一例を示す図である。図９Ｂにおいて横軸がＶ成分値で、同図の場合、Ｖ成分が８ビットで表現されているので、Ｖ成分値の範囲は０〜２５５となっている。縦軸は画素の個数を表しており、同図のヒストグラムにより、各Ｖ成分値を有する画素の数を得ることができる。
【０１１８】
よって、ステップＳ４０３では、ステップＳ４０１で生成したサムネイル画像が夜景の画像であるのか否かを判定するために、このヒストグラムを参照し、比較的輝度値の低い範囲内のＶ成分値（例えばＶ成分値が０〜１００の範囲）を有する画素の個数の合計が所定個数以上であるか否かをチェックする。なお、ステップＳ４０１で生成したサムネイル画像が夜景の画像であるのか否かを判定するために、ヒストグラムをどのようにして用いるのかについては特に限定するものではなく、このほかにも例えば、ヒストグラムの形状によって判定するようにしても良い。
【０１１９】
一方、ステップＳ４０１で生成したサムネイル画像が、図７Ａに示したような人物の拡大写真といったポートレートに基づいて生成されたものである場合、このサムネイル画像には、肌色成分が多く含まれることになる。従ってこのようなサムネイル画像について生成されたＨ成分のヒストグラムを参照すれば、肌色成分を有する画素の数が多い。
【０１２０】
よって、ステップＳ４０３では、ステップＳ４０１で生成したサムネイル画像がポートレートであるのか否かを判定するために、Ｈ成分のヒストグラムを参照し、肌色成分のＨ成分値を有する画素の個数の合計が所定個数以上であるか否かをチェックする。なお、ステップＳ４０１で生成したサムネイル画像がポートレートであるのか否かを判定するために、ヒストグラムをどのようにして用いるのかについては特に限定するものではなく、このほかにも例えば、ヒストグラムの形状によって判定するようにしても良い。
【０１２１】
このように、ステップＳ４０３では、Ｖ成分のヒストグラムを用いて撮影画像が夜景の画像であるか否か、Ｈ成分のヒストグラムを用いて撮影画像がポートレートであるか否かをチェックすることができる。
【０１２２】
そして処理をステップＳ４０４に進め、撮影画像が夜景の画像である場合には処理をステップＳ４０５に進め、その旨を示すデータをＲＡＭ１０４中の所定のエリアに記録する。
【０１２３】
また、撮影画像がポートレートである場合には処理をステップＳ４０４，Ｓ４０６を介してステップＳ４０７に進め、その旨を示すデータをＲＡＭ１０４中の所定のエリアに記録する。
【０１２４】
そして本フローチャートに従った処理を終了し、処理をステップＳ１０６に進める。
【０１２５】
また、本実施形態に係るステップＳ１０３における処理について説明する。本実施形態では撮影情報から、「シーン」に係る撮影条件を抽出する。従って、撮影情報中の「撮影モード」を対象にする。画像ファイルがＥｘｉｆに準拠している場合には、Ｔａｇ（ＩＤ）＝３４８５０の露出プログラム（ＥｘｐｏｓｕｒｅＰｒｏｇｒａｍ）を参照する。
【０１２６】
Ｔａｇ（ＩＤ）＝３４８５０の露出プログラム（ＥｘｐｏｓｕｒｅＰｒｏｇｒａｍ）には、カメラの撮影時に使用した露出プログラムのクラスを示す値が格納されている。例えば値が３のときは露出優先、７はポートレートモードを示す。
【０１２７】
さらにはメーカ独自のＥｘｉｆ情報を使用できればさらに詳細な「シーン」を解析することができる。例えばフラッシュの動作モードがある。フラッシュの動作モードがスローシンクロモードであれば夜景を撮影したものと判断できる。
【０１２８】
よってステップＳ１０３では、「シーン」に係る情報（換言すれば、「シーン」を特定できる情報）を撮影情報から検索して読み出す。その処理については基本的には図４に示したフローチャートに従った処理となる。尚その際には撮影情報ＩＤテーブルには、「シーン」に係る情報のＩＤが登録されており、ステップＳ２０３で読み出したＩＤがこの登録されているＩＤと一致した場合には、このＩＤに対応する情報（即ち、「シーン」に係る情報）をステップＳ２０１で確保したエリアに読み出す。
【０１２９】
図３に戻って、次にステップＳ１０６では、ステップＳ１０３で読み出した「シーン」を特定する情報と、ステップＳ１０５において撮影画像から求めた「シーン」を特定する情報とを比較し、互いに同じシーンを示しているのか否かをチェックする（ステップＳ１０６）。
【０１３０】
そして一致している場合には第１の実施形態と同じである。一致していない場合には処理をステップＳ１０７に進め、第１の実施形態と同様に、画像を変更するか否かをユーザに選択させるためのインターフェースを表示し、ユーザが「はい」のボタン画像を入力装置１０７を用いて指示すると、処理をステップＳ１０７からステップＳ１０８に進め、ステップＳ１０３で読み出した「シーン」を特定する情報と、ステップＳ１０５において撮影画像から求めた「シーン」を特定する情報とが一致するように、撮影画像に対して補正処理を行う。例えば、ステップＳ１０３で読み出した「シーン」を特定する情報が「夜景の画像ではない（例えばポートレート）」ことを示す情報であって、ステップＳ１０５において撮影画像から求めた「シーン」を特定する情報が「夜景を示す画像」であることを示す場合には、撮影画像の輝度を上げる為にこの撮影画像に対してトーン補正を行うようにしたりすれば良いし、逆に、ステップＳ１０３で読み出した「シーン」を特定する情報が「夜景を示す画像」であることを示す情報であって、ステップＳ１０５において撮影画像から求めた「シーン」を特定する情報が「夜景の画像ではない（例えばポートレート）」である場合には、撮影画像における肌色成分の彩度を上げる彩度補正を行うようにすれば良い。なお、撮影画像に対する処理はこれに限定するものではない。
【０１３１】
以上の処理によって、撮影情報に記録されている「シーン」を特定する情報と、実際に画像中のシーンとが一致しているのか否かをチェックすることができ、一致していない場合には、この情報、もしくは画像の何れを変更するのかをユーザに選択させることができる。
【０１３２】
なお、画像の変更はユーザが行うようにしてもよく、その場合、ステップＳ１０８で画像の色成分などを変更するためのＧＵＩを表示装置１０６の表示画面上に表示するようにしても良い。
【０１３３】
また、本実施形態では、撮影画像がポートレートであるか否かについてのチェックにはＨ成分のヒストグラムを用いていたが、第１の実施形態で説明した顔検出処理を行い、顔領域として求まった矩形のサイズが撮影画像全体のサイズに比べて所定の割合以上（例えば７５％以上）であれば、ポートレートであると判定するようにしても良い。
【０１３４】
また本実施形態ではシーンが夜景、ポートレートの何れかであったが、これ以外のシーンであっても良いことはいうまでもない。
【０１３５】
また、以上の実施形態では、撮影画像から得られる情報と、この撮影画像に添付されている撮影情報から得られる情報とを比較し、一致していない場合には一致させるべく、撮影情報、撮影画像の何れかを変更するという技術の一例として、画像方向やシーンを用いたが、比較する対象については特に限定するものではない。また、この「一致」については、単に比較対象の情報が示す値が全く同じであるということに限定するものではなく、ある許容範囲内で同じであっても良い。
【０１３６】
また、比較対象の情報が意味するところでもって一致するか否かをチェックするようにしても良い。
【０１３７】
［その他の実施形態］
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、カメラのＣＰＵやＭＰＵが記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１３８】
また、カメラが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、カメラ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３９】
さらに、記録媒体から読み出されたプログラムコードが、カメラに挿入された機能拡張カードやカメラに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４０】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャート（機能構成）に対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１４１】
【図１】本発明の第１の実施形態に係る画像処理装置の基本構成を示すブロック図である。
【図２】本発明の第１の実施形態に係る撮影画像のフォーマットを示す図である。
【図３】本発明の第１の実施形態に係る画像処理装置が行う処理のフローチャートである。
【図４】ステップＳ１０３における撮影情報解析処理の詳細を示すフローチャートである。
【図５】「撮影情報、撮影画像の何れを変更するのか？」をユーザに選択させるためのインターフェースの表示例を示す図である。
【図６】本発明の第１の実施形態に係るステップＳ１０５における処理のフローチャートである。
【図７Ａ】デジタルスチルカメラ１０９を回転させずに（ロール値＝０）撮影される撮影画像からステップＳ１０５における顔検出処理によって検出された顔領域を示す図である。
【図７Ｂ】デジタルスチルカメラ１０９を反時計方向に９０度回転させて（ロール値＝２７０）撮影される撮影画像からステップＳ１０５における顔検出処理によって検出された顔領域を示す図である。
【図７Ｃ】デジタルスチルカメラ１０９を時計方向に９０度回転させて（ロール値＝９０）撮影される撮影画像からステップＳ１０５における顔検出処理によって検出された顔領域を示す図である。
【図８Ａ】撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致するように撮影画像を回転させるのか否かをユーザに選択させるためのインターフェースの表示例を示す図である。
【図８Ｂ】撮影情報中の「画像方向」のデータが示す「撮影方向」と、撮影画像から求められる「撮影方向」とが一致するように撮影情報中の「画像方向」のデータを変更するのか否かをユーザに選択させるためのインターフェースの表示例を示す図である。
【図９Ａ】夜景の撮像画像９０１の一例を示す図である。
【図９Ｂ】ステップＳ４０１で生成したサムネイル画像が、図９Ａに示した夜景の撮像画像９０１に基づいて生成されたものである場合に、このサムネイル画像から求めた、Ｖ成分についてのヒストグラムの一例を示す図である。
【図１】
2006109175.tif 000003
【図２】
2006109175.tif 000004
【図３】
2006109175.tif 000005
【図４】
2006109175.tif 000006
【図５】
2006109175.tif 000007
【図６】
2006109175.tif 000008
【図７Ａ】
2006109175.tif 000009
【図７Ｂ】
2006109175.tif 000010
【図７Ｃ】
2006109175.tif 000011
【図８Ａ】
2006109175.tif 000012
【図８Ｂ】
2006109175.tif 000013
【図９Ａ】
2006109175.tif 000014
【図９Ｂ】
2006109175.tif 000015