【手続補正書】
【提出日】平成16年6月1日(2004.6.1)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【書類名】      明細書
【発明の名称】  画像データ処理装置、画像データセットを記録した媒体、画像データ処理プログラムを記録した媒体および画像データ処理方法
【特許請求の範囲】
【請求項１】  画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段と、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段とを具備することを特徴とする画像データ処理装置。
【請求項２】  画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段とを具備することを特徴とする画像データ処理装置。
【請求項３】  画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段と、
取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現手段とを具備することを特徴とする画像データ処理装置。
【請求項４】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現手段とを具備することを特徴とする画像データ処理装置。
【請求項５】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記パラメータは画像処理の種別あるいは程度を表すものであることを特徴とする画像データ処理装置。
【請求項６】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記パラメータは画像処理の種別ごとに複数あることを特徴とする画像データ処理装置。
【請求項７】  上記請求項１または請求項３のいずれかに記載の画像データ処理装置において、上記パラメータは複数保存可能であり、複数あるパラメータから選択的に実行可能であることを特徴とする画像データ処理装置。
【請求項８】  上記請求項１〜請求項３、請求項６および請求項７のいずれかに記載の画像データ処理装置において、上記パラメータは、所定の順序通りに画像処理を行う為の実行順序情報を含むものであることを特徴とする画像データ処理装置。
【請求項９】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記パラメータは選択可能な複数の組に分かれており、実行時に選択した組のパラメータに基づいて画像処理を実施することを特徴とする画像データ処理装置。
【請求項１０】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記パラメータは複数の組に分かれており、画素の状況に対応したパラメータの組を使い分けることを特徴とする画像データ処理装置。
【請求項１１】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記データ保存手段は、記憶領域を階層構造として区画化可能であり、上記画像データとパラメータをこの階層構造で区分けすることを特徴とする画像データ処理装置。
【請求項１２】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記データ保存手段は、上記パラメータと共に上記画像データのサムネールデータを関連付けて保存することを特徴とする画像データ処理装置。
【請求項１３】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記画像データは、上記パラメータとは異なる記憶装置上で管理されることを特徴とする画像データ処理装置。
【請求項１４】  上記請求項１〜請求項３のいずれかに記載の画像データ処理装置において、上記パラメータ設定手段は、上記画像データを統計的に解析した結果に基づいて画像処理内容を設定することを特徴とする画像データ処理装置。
【請求項１５】  上記請求項１または請求項３のいずれかに記載の画像データ処理装置において、上記画像処理再現手段は、上記パラメータが表す画像処理を実施する画像処理部を選択して実施させることを特徴とする画像データ処理装置。
【請求項１６】  画像データと、
対応する画像データに対して所定の画像処理を実施することが可能なように同画像処理内容を表すパラメータと、
上記パラメータが表す画像処理の内容を上記画像データに実施することが可能なように上記画像データと上記パラメータを関連付ける関連付け情報とを記録した画像データセットを記録した媒体。
【請求項１７】  コンピュータにて画像データに画像処理を実施させる画像データ処理プログラムを記録した媒体であって、
画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定ステップと、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存ステップと、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得ステップとを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項１８】  コンピュータにて画像データに画像処理を実施させる画像データ処理プログラムを記録した媒体であって、
画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定ステップと、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存ステップとを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項１９】  コンピュータにて画像データに画像処理を実施させる画像データ処理プログラムを記録した媒体であって、
画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得ステップと、
取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現ステップとを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２０】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現ステップを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２１】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは画像処理の種別あるいは程度を表すものであることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２２】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは画像処理の種別ごとに複数あることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２３】  上記請求項１７または請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは複数保存可能であり、複数あるパラメータから選択的に実行可能であることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２４】  上記請求項１７〜請求項１９、請求項２２および請求項２３のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは、所定の順序通りに画像処理を行う為の実行順序情報を含むものであることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２５】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは選択可能な複数の組に分かれており、実行条件に応じた組のパラメータに基づいて画像処理を実施することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２６】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは複数の組に分かれており、画素の状況に対応したパラメータの組を使い分けることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２７】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記データ保存ステップでは、階層構造として区画化可能な記憶領域を利用し、上記画像データとパラメータをこの階層構造で区分けすることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２８】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記データ保存ステップでは、上記パラメータと共に上記画像データのサムネールデータを関連付けて保存することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項２９】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記データ保存ステップと上記データ取得ステップでは、上記画像データを上記パラメータとは異なる記憶装置上で読み書きすることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項３０】  上記請求項１７〜請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータ設定ステップでは、上記画像データを統計的に解析し、その結果に基づいて画像処理内容を設定することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項３１】  上記請求項１７または請求項１９のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記画像処理再現ステップでは、上記パラメータが表す画像処理を実施する画像処理プログラムを選択して実施させることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項３２】  画像データに実施する所定の画像処理の内容を表すパラメータを設定し、上記画像データと上記パラメータとを関連付ける関連付け情報を保存しつつ、
上記関連付け情報を参照して上記画像データと上記パラメータを取得することを特徴とすることを特徴とする画像データ処理方法。
【請求項３３】  画像データに実施する所定の画像処理の内容を表すパラメータを設定し、上記画像データと上記パラメータとを関連付ける関連付け情報を保存することを特徴とする画像データ処理方法。
【請求項３４】  画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、
上記関連付け情報を参照して上記画像データと上記パラメータを取得し、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得ることを特徴とする画像データ処理方法。
【請求項３５】  上記請求項３２に記載の画像データ処理方法において、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得ることを特徴とする画像データ処理方法。
【請求項３６】  上記請求項３２に記載の画像データ処理方法において、上記パラメータと共に上記画像データのサムネールデータを関連付けて保存することを特徴とする画像データ処理方法。
【請求項３７】  上記請求項３２〜請求項３４のいずれかに記載の画像データ処理方法において、上記画像データは、上記パラメータとは異なる記憶装置上で管理されることを特徴とする画像データ処理方法。
【請求項３８】  上記請求項３２〜請求項３４のいずれかに記載の画像データ処理方法において、上記画像データを統計的に解析し、その結果に基づいて画像処理内容を設定することを特徴とする画像データ処理方法。
【請求項３９】上記請求項３２〜請求項３４のいずれかに記載の画像データ処理方法において、上記パラメータが表す画像処理を実施する画像処理部を選択して実施させることを特徴とする画像データ処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データを適宜修整して利用可能な画像データ処理装置、画像データセットを記録した媒体、画像データ処理プログラムを記録した媒体および画像データ処理方法に関する。
【０００２】
【従来の技術】
近年、デジタルスチルカメラが急速に利用されはじめている。ディジタルスチルカメラで撮影した場合、画像をデータとして管理できるようになり、修整などが簡単に行われるようになっている。例えば、画像が暗く写った場合に明るく修整するとか、空の色をより青くして美しくさせるということも、画像データであれば容易に行える。
【０００３】
このような処理は画像処理として広く利用されているが、入力される画像データに処理を施せば新たな画像データとなり、これが元の記憶領域に上書きされていくことになる。
【０００４】
【発明が解決しようとする課題】
上述した従来の画像データ処理装置においては、次のような課題があった。
まず、オリジナルの画像データが変更されてしまうが、オリジナルの画像データを重視するものにとっては利用しがたい。むろん、オリジナルの画像データを保存しておいた上で別名で保存するといった処理を行うことも可能であるが、煩雑であるし、必要な記憶領域が増えてしまう。また、そのような場合のオリジナルと修整後の画像データを個別に管理していくこと自体も極めて煩雑である。
【０００５】
また、ある種の画像フォーマットにおいては書き換えを行うたびに画質が劣化していくものもあるため、この意味ではたとえ修整がわずかであっても画質は劣化してしまう。
本発明は、上記課題にかんがみてなされたもので、画像データのオリジナル性を確保しながらも、容易に画像処理した結果を参照することが可能な画像データ処理装置、画像データセットを記録した媒体、画像データ処理プログラムを記録した媒体および画像データ処理方法の提供を目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、請求項１にかかる発明は、画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段と、上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段とを具備する構成としてある。
【０００７】
また、請求項２にかかる発明は、画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段とを具備する構成としてあるとともに、請求項３にかかる発明は、画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段とを具備する構成としてある。
【０００８】
上記のように構成した請求項１にかかる発明においては、パラメータ設定手段にて画像データに実施する所定の画像処理の内容を表すパラメータを設定すると、データ保存手段は上記画像データと上記パラメータとを関連付ける関連付け情報を保存する。そして、データ取得手段にて上記関連付け情報を参照して上記画像データと上記パラメータを取得する。その後、請求項４に示す画像処理再現手段は取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る。
【０００９】
すなわち、画像データに関連づけて画像処理内容を表すパラメータを記憶する。例えば、画像処理した場合でも元の画像データを変更せずにパラメータとして管理するようにし、必要なときにパラメータに基づいて画像処理した画像データを得る。そして、このような画像処理した結果を利用可能としながらも元の画像データはそのままにしておくことになる。
請求項２にかかる発明や請求項３にかかる発明は、この発明全体をそれぞれ部分的に実施している。
【００１０】
また、上記のように構成した請求項５においては、上記パラメータで画像処理の種別あるいは程度を表している。これにより、画像処理の内容をより具体的に示すようにしている。むろん、複数の画像処理の種別であるとか程度も表している。
さらに、上記のように構成した請求項６にかかる発明においては、上記パラメータは画像処理の種別ごとに複数用意されているので、ある画像処理の種別において必ずしも一つの内容に限らず、複数の内容を残すことが可能となる。例えば、一つの画像処理がシャープネスを調整するものであるとして、シャープネスの強調度合いの強いものを表すパラメータと弱い強調度合いを表すパラメータとを保存し、再現時にいずれかを選択する。再現された画像データを印刷する場合、印刷装置の解像度によって最適なシャープネスの強調度合いが変化することもあり、このような場合に対応してパラメータを複数残しておくことも可能である。
【００１１】
さらに、上記のように構成した請求項７にかかる発明においては、複数保存可能なパラメータから選択的に実行可能である。これにより、例えば、画像処理に十分な時間を得られる場合と、極めて短時間に処理しなければならない場合に必ずしも同一の画質が要求されるとは言えないので、後者について低負荷で実現しうる画像処理を実施させるということが可能となる。従って、スライドショーの場合は、スライドショーの実行に即したパラメータに対応する画像処理が実行されるし、印刷を実行するときにはこれに対応するパラメータに即して画像処理が実行される。むろん、この選択は実行条件を決めておき、実行時にその条件に見合うものを選択して実行させるようにしても良いし、ユーザーが指定して行うようにしても良い。
【００１２】
さらに、上記のように構成した請求項８にかかる発明においては、複数のパラメータがあることを前提にしつつ、パラメータの実行順序情報をも備えることにより、当該実行順序情報に従って画像処理を行わせると、画像処理が時系列的に行われるのに対応し、各操作毎にパラメータを残しておけば、かかるパラメータは複数の時系列的な履歴を表すことになる。従って、途中の画像処理過程を忠実に経て再現することになる。むろん、必ずしもすべてを実行する必要はなく、途中で止めて再現過程を再現することも可能である。
【００１３】
さらに、上記のように構成した請求項９にかかる発明においては、パラメータが複数の組に分かれており、それぞれを任意に選択できるようにしてあり、実行時の状況に応じて選択した組のパラメータに基づいて画像処理を実施する。
すなわち、単に一通りの画像処理結果だけでなく、複数の画像処理結果から選択することを可能ならしめる。例えば、ディスプレイで表示するときに美しく表示させる画像処理と、印刷時に美しく印刷させる画像処理が異なることは多々ある。このような場合、ディスプレイでの表示のためのパラメータと、印刷のためのパラメータとをともに記憶できれば好都合だからである。また、出力先のみならず出力する大きさに対応したり、複数のユーザーが一つの画像データを共有する場合なども各大きさ毎やユーザー毎にパラメータの組を用意できて好適である。
【００１４】
さらに、上記のように構成した請求項１０にかかる発明においては、上記パラメータは複数の組に分かれており、画素の状況に対応した画像処理を適用する。すなわち、画像データに対して一律でなく適用し、例えば、画素の位置であるとか、画素の色に応じてパラメータの組を使い分ける。画素の位置としては画像の中央部分とか、予め指定された特定の範囲であるとか、上半分と下半分というように領域を区分してそれぞれに異なる組のパラメータを適用する。また、画素の色としては、肌色の領域や、空色の領域や、夕焼けの領域というように分ければ概ね被写体に応じた最適なパラメータを適用できることになる。
【００１５】
さらに、上記のように構成した請求項１１にかかる発明においては、記憶領域を階層構造として区画化し、上記画像データとパラメータをこの階層構造で区分けしており、区分けしたその区画自体でも関連づけを表すことになる。また、画像データとパラメータとの対応付けは、同じ区画にパラメータを記憶しても良いし、対応する階層構造を別の領域に設けて同パラメータを記憶するようにしてもよい。
【００１６】
さらに、上記のように構成した請求項１２にかかる発明においては、パラメータを対応づけるのと同列のレベルで予め小容量のサムネールを対応づけており、パラメータを管理するのと並行した処理でサムネールデータも管理できる。
さらに、上記のように構成した請求項１３にかかる発明においては、上記画像データと上記パラメータとを異なる記憶装置上で管理している。例えば、複数の着脱可能な記憶領域において画像データを管理することもあり、この場合、記憶領域によっては必ずしも書き込み可能であるとは限らない。そこで、書き込み不能な記憶領域については、書き込み可能な記憶領域において上記パラメータを管理するということができる。
【００１７】
また、書き込みは不能ではないものの、書き込みに不適な記憶領域というものもある。例えば、ネットワークを介して数人で共有することも多く、誰かが勝手に共有の画像データを書き換えてしまうのは避けるべきである。このような場合、書き込み不適な記憶領域としての共有領域とともに書き込み可能な記憶領域で画像データを管理しつつ、書き込みに不適な記憶領域の画像データについては書き込み可能な記憶領域において上記パラメータを管理する構成とする。むろん、ネットワークや共有領域以外にも同様の問題が生じることはあり、いずれの場合でも書き込みに適した記憶領域において上記パラメータを管理する。
【００１８】
さらに、上記のように構成した請求項１４にかかる発明においては、パラメータが表す画像処理の内容を、パラメータ設定手段が画像データを統計的に解析した結果に基づいて設定する。すなわち、自動処理化に対応する。
さらに、上記のように構成した請求項１５にかかる発明においては、画像処理結果を再現するに際して行う画像処理は、画像処理再現手段がパラメータに基づいて対応する画像処理部を選択して実施させる。画像処理を実現する手段はコンピュータ上で実現する例を取っても様々な方法を選択可能であり、内部・外部を問うことなく選択させることによって実現しうる。より具体的にはバージョンの異なる画像処理に対応した画像処理部を選択したり、コンピュータのオペレーティングシステムなどが提供する画像処理部を選択して起動させたり、必要な画像処理部をネットワークなどから探し出してきて起動させることができる。
【００１９】
このように画像データに対して画像処理を実施して変化させてしまうことなく、その画像処理内容を表すパラメータを関連付けて保存する手法は、必ずしも実体のある装置に限られる必要はなく、その方法としても機能することは容易に理解できる。すなわち、必ずしも実体のある装置に限らず、その方法としても有効であることに相違はない。
また、このような画像データ処理装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものである。従って、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。
【００２０】
発明の思想の具現化例として画像データ処理装置のソフトウェアとなる場合には、かかるソフトウェアを記録した記録媒体上においても当然に存在し、利用されるといわざるをえないし、当該ソフトウェア自体としても発明は成立する。従って、本発明で叙述した媒体としての各発明は、それぞれ記録しているプログラム自体に一対一で対応するものである。
むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。その他、供給方法として通信回線を利用して行なう場合でも本発明が利用されていることにはかわりない。
【００２１】
さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものではなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。
また、このようにして画像データを再現できるようになる上で、かかる画像データセットを記録した媒体は必要不可欠であり、本発明はこのような形態としても実現されうる。
【００２２】
【発明の効果】
以上説明したように本発明は、画像データに画像処理を施すにあたって元の画像データを残しつつ画像処理結果を容易に利用することが可能な画像データ処理装置を提供することができる。
また、請求項２にかかる発明によれば、これを実現するために少なくともパラメータを画像データに関連付けさせた画像データセットを作成することができ、請求項３にかかる発明によれば、かかる画像データセットが存在すれば設定された所望の画像処理結果を再現できる。
【００２３】
さらに、請求項５にかかる発明によれば、画像処理の内容をより具体的に表すことができるようになる。また、これによって再現性もより確保しやすくなる。
さらに、請求項６にかかる発明によれば、実質的に複数の対応の再現結果を用意でき、状況に応じた再現結果を選択することができる。
さらに、請求項７にかかる発明によれば、実行条件などを顧慮して最適な画像処理結果を提供できるようになる。
【００２４】
さらに、請求項８にかかる発明によれば、実行順序を再現することによって不可逆的な画像処理によるバリエーションを増やしたり、画像処理過程を再現することが可能となる。
さらに、請求項９にかかる発明によれば、個別に用意したパラメータだけで複数の画像処理結果を得られることになるため、ファイル容量をさほど増やすことなく、複数の画像データを提供することができる。
さらに、請求項１０にかかる発明によれば、画素の状況に応じてより適切な画像処理を適用させることが可能となる。
【００２５】
さらに、請求項１１にかかる発明によれば、階層構造を利用して関連づけなどを容易にできるようになる。
さらに、請求項１２にかかる発明によれば、サムネールデータを利用して処理の負担を軽減できる。
さらに、請求項１３にかかる発明によれば、画像データの保存状況に即して最適な対応が可能であり、特に書き込み不能な領域や書き込みが好ましくない画像データとパラメータとの対応付けも実現できるようになる。
【００２６】
さらに、請求項１４にかかる発明によれば、パラメータの設定を自動化することが可能となる。
さらに、請求項１５にかかる発明によれば、画像処理部を画像処理に対応して用意しておくことにより画像再現処理を簡易に実現でき、また、外部に存在する画像処理部なども容易に実施させることができるようになる。
さらに、請求項１６にかかる発明によれば、同様の効果を奏することが可能な画像データセットを記録した媒体を提供でき、請求項１７〜請求項３１にかかる発明によれば、同様の効果を奏することが可能な画像データ処理プログラムを記録した媒体を提供でき、請求項３２〜請求項３９にかかる発明によれば、画像データ処理方法を提供できる。
【００２７】
【発明の実施の形態】
＜第一の実施例＞
以下、図面にもとづいて本発明の実施形態を説明する。
図１は、本発明の一実施形態にかかる画像データ処理装置を対応概略構成図により示している。
デジタルスチルカメラなどで撮影した画像データは、コンピュータなどの外部記憶装置などを利用して管理することになる。かかる外部記憶装置などに該当するデータ保存手段Ａ１はこれらの複数の画像データとともにそれぞれに対応するパラメータを関連づけて記憶し、コンピュータによるデータベース管理などによって適宜変更、追加、削除などといった管理が行われる。
【００２８】
このような管理を行うため、データ保存手段Ａ１には、画像データ記憶領域Ａ１１とパラメータ記憶領域Ａ１２と関連付け情報記憶領域Ａ１３が確保されている。画像データ記憶領域Ａ１１には画像データが記憶されるが、一括したデータベース構造としても良いし、それぞれ個別のファイルを格納する領域としてもよい。パラメータ記憶領域Ａ１２は個別の画像データに対する画像処理の指示を示す情報であり、画像データと比べると比較的容量は小さい。この場合も、一括したデータベース構造としても良いし、それぞれ個別のファイルを生成してもよい。関連付け情報記憶領域Ａ１３はパラメータ記憶領域Ａ１２に記憶されるパラメータと画像データ記憶領域Ａ１１に記憶される画像データとを関連づける関連付け情報が記録される。このように関連させる手法は様々であり、一例としてパラメータのデータベース構造を形成しつつその索引情報として構成すれば、パラメータ記憶領域Ａ１２と関連付け情報記憶領域Ａ１３とは不可分一体的に実現される。なお、画像データ記憶領域Ａ１１については着脱自由な記録メディア等も当然に含まれるし、また、物理的に画像データ記憶領域Ａ１１とパラメータ記憶領域Ａ１２と関連付け情報記憶領域Ａ１３とが同一の装置である必要はない。さらに、画像データ記憶領域Ａ１１が複数の装置などからアクセスされる共有領域であっても良い。
【００２９】
また、コンピュータ自身における入出力機器およびコンピュータ自身の演算結果によって実現されるパラメータ設定手段Ａ２によって画像データの管理操作あるいは演算などによって画像処理の内容を表すパラメータを設定すると、このデータ保存手段Ａ１はデータベース管理を介して対応するパラメータと画像データとを関連付けて管理処理を実行することになり、この際に関連付け情報が生成される。このパラメータ設定手段Ａ２は結果的にパラメータを生成するものであり、ＧＵＩを介してユーザーからの画像処理の指示を受け付けてパラメータを設定する場合や、画像データを独自に検査して所定の目的に添う画像処理を実現するパラメータを設定する場合を含んでいる。関連付け情報は、様々なものを利用でき、対応テーブルを用意しても良いし、ファイル名を関連させても良いし、保存領域を一致させるなどして関連付けるものであってもよい。
【００３０】
このようにして上記データ保存手段Ａ１には、画像データとそれに実施すべき画像処理の内容を表すパラメータが関連付け情報によって関連づけがなされて保存されることになる。そして、データ取得手段Ａ４は、このデータ保存手段Ａ１は関連付け情報記憶領域Ａ１３の情報に基づいて対応する画像データとパラメータとを画像データ記憶領域Ａ１１とパラメータ記憶領域Ａ１２とから取得し、画像処理再現手段Ａ３に出力する。このデータ取得手段Ａ４も一般的にはＧＵＩを介してユーザーからの画像選択の指示を受け付けて取得する画像データを特定することになるが、特定する方法はこれに限られない。例えば、コンピュータなどでは外部のアプリケーションから所定の引数を与えられて対象とする画像データを特定され、これによって画像データを特定して取得しつつ画像処理再現手段Ａ３に引き渡すことも可能である。また、画像データを取得する態様は具体的なハードウェアによって変化し、メモリ上に展開されている状態で単に画像データを変数にセットするだけのような場合でも取得したものと同視できる。
【００３１】
画像処理再現手段Ａ３はパラメータに対応した修整処理を実現するものであり、複数の修整エンジンＡ３１〜Ａ３ｎを備える。各修整エンジンＡ３ｘは画像データとパラメータが与えられたときに同パラメータが表す各修整エンジンＡ３ｘに応じた修整を同画像データに施して新たに修整画像データを生成し、これを出力する。ここで画像データはオリジナルとして扱われ、修整画像データは新たに生成される。むろん、新たに生成した画像データによってオリジナルの画像データを上書きすることは自由であり、データ保存手段Ａ１における画像データ記憶領域Ａ１１に上書き保存してもよい。修整エンジンＡ３１〜Ａ３ｎは数種の変換結果が得られるという意味で複数存在するように表示しているが、実質的に一つの修整エンジンであってパラメータ次第で数種の変換結果が得られるものであっても良いし、個別の修整エンジンを用意してそれぞれ別個に変換結果が得られるものであっても良い。また、修整エンジンＡ３１〜Ａ３ｎはアプリケーション自体が内部に備えるものに限らず、外部に存在する修整エンジンＡ３１〜Ａ３ｎを選択するものであっても良い。
【００３２】
なお、データ保存手段Ａ１やパラメータ設定手段Ａ２や画像処理再現手段Ａ３やデータ取得手段Ａ４は単独のハードウェアでのみ実現可能なものではなく、汎用的なコンピュータシステム１０を利用して実現することが可能であり、そのようにソフトウェアで上記構成を実現する場合はそれぞれがデータ保存ステップＡ１、パラメータ設定ステップＡ２、データ取得ステップＡ４、画像再現処理ステップＡ３として実現される。
【００３３】
本実施形態においてはこのような画像データ処理装置を実現するハードウェアの一例としてコンピュータシステム１０を採用している。
図２は、同コンピュータシステム１０をブロック図により示している。
本コンピュータシステム１０は、画像データを直接的に入力する画像入力デバイスとして、スキャナ１１ａとデジタルスチルカメラ１１ｂとビデオカメラ１１ｃとを備えており、コンピュータ本体１２に接続されている。それぞれの入力デバイスは画像をドットマトリクス状の画素で表現した画像データを生成してコンピュータ本体１２に出力可能となっており、ここで同画像データはＲＧＢの三原色においてそれぞれ２５６階調表示することにより、約１６７０万色を表現可能となっている。
【００３４】
コンピュータ本体１２には、外部補助記憶装置としてのフロッピーディスクドライブ１３ａとハードディスク１３ｂとＣＤ−ＲＯＭドライブ１３ｃとが接続されており、ハードディスク１３ｂにはシステム関連の主要プログラムが記録されており、フロッピーディスクやＣＤ−ＲＯＭなどから適宜必要なプログラムなどを読み込み可能となっている。
また、コンピュータ本体１２を外部のネットワークなどに接続するための通信デバイスとしてモデム１４ａが接続されており、外部のネットワークに同公衆通信回線を介して接続し、ソフトウェアやデータをダウンロードして導入可能となっている。この例ではモデム１４ａにて電話回線を介して外部にアクセスするようにしているが、ＬＡＮアダプタを介してネットワークに対してアクセスする構成とすることも可能である。
【００３５】
ここで、外部補助記憶装置のうち、フロッピーディスクドライブ１３ａやＣＤ−ＲＯＭドライブ１３ｃについては、記録媒体自身が交換可能であり、この記録媒体に画像データが記録された状態で供給されることにより、画像入力デバイスの一手段ともなりうる。また、モデム１４ａやＬＡＮアダプタを介してネットワークにアクセスした場合、このネットワークから画像データが供給されることもあり、このような場合も画像入力デバイスの一手段となりうる。なお、ネットワークにアクセスするのは、データを取得する場合に限らず、プログラムの一部や、外部的に起動可能な別プログラムを取得する場合もある。これにより、修整エンジンの一部あるいは全部を外部から取得したり、外部にあるものに実行を委ねるということも可能である。
【００３６】
この他、コンピュータ本体１２の操作用にキーボード１５ａやポインティングデバイスとしてのマウス１５ｂも接続され、さらに、マルチメディア対応のためにスピーカ１８ａやマイク１８ｂを備えている。
さらに、画像出力デバイスとして、ディスプレイ１７ａとカラープリンタ１７ｂとを備えている。ディスプレイ１７ａについては水平方向に８００画素と垂直方向に６００画素の表示エリアを備えており、各画素毎に上述した１６７０万色の表示が可能となっている。むろん、この解像度は一例に過ぎず、６４０×４８０画素であったり、１０２４×７６８画素であるなど、適宜、変更可能である。
【００３７】
また、印刷装置としてのカラープリンタ１７ｂはインクジェットプリンタであり、ＣＭＹＫの四色の色インクを用いて記録媒体たる印刷用紙上にドットを付して画像を印刷可能となっている。画像密度は３６０×３６０ｄｐｉや７２０×７２０ｄｐｉといった高密度印刷が可能となっているが、階調表限については色インクを付すか否かといった２階調表現となっている。色インクについては、かかる四色のものに限らず、色の薄いライトシアンやライトマゼンタを加えた六色によってドットの目立ちを低減させることも可能であるし、インクジェット方式に限らずカラートナーを利用した静電写真方式などを採用することも可能である。
また、印刷装置は必ずしもカラープリンタである必要はなく、白黒のプリンタであっても良い。後述するように白黒再現においてはそれに応じた最適な画像処理がありえるし、かかる画像処理を画像データに施してしまうと再度カラーで再現したい場合には不都合なことが生じる。しかしながら、本発明においては、あくまでも元の画像データは残されることになり、そのような画像処理も容易に実行してしまうことが可能となる。
【００３８】
一方、このような画像入力デバイスを使用して画像を入力しつつ、画像出力デバイスに表示あるいは出力するため、コンピュータ本体１２内では所定のプログラムが実行されることになる。そのうち、基本プログラムとして稼働しているのはオペレーティングシステム（ＯＳ）１２ａであり、このオペレーティングシステム１２ａにはディスプレイ１７ａでの表示を行わせるディスプレイドライバ（ＤＳＰ  ＤＲＶ）１２ｂとカラープリンタ１７ｂに印刷出力を行わせるプリンタドライバ（ＰＲＴ  ＤＲＶ）１２ｃが組み込まれている。これらのドライバ１２ｂ，１２ｃの類はディスプレイ１７ａやカラープリンタ１７ｂの機種に依存しており、それぞれの機種に応じてオペレーティングシステム１２ａに対して追加変更可能である。また、機種に依存して標準処理以上の付加機能を実現することもできるようになっている。すなわち、オペレーティングシステム１２ａという標準システム上で共通化した処理体系を維持しつつ、許容される範囲内での各種の追加的処理を実現できる。
【００３９】
むろん、このようなプログラムを実行する前提として、コンピュータ本体１２内にはＣＰＵ１２ｅとＲＡＭ１２ｆとＲＯＭ１２ｇとＩ／Ｏ１２ｈなどが備えられており、演算処理を実行するＣＰＵ１２ｅがＲＡＭ１２ｆを一時的なワークエリアや設定記憶領域として使用したりプログラム領域として使用しながら、ＲＯＭ１２ｇに書き込まれた基本プログラムを適宜実行し、Ｉ／Ｏ１２ｈを介して接続されている外部機器及び内部機器などを制御している。
【００４０】
この基本プログラムとしてのオペレーティングシステム１２ａ上でアプリケーション１２ｄが実行される。アプリケーション１２ｄの処理内容は様々であり、操作デバイスとしてのキーボード１５ａやマウス１５ｂの操作を監視し、操作された場合には各種の外部機器を適切に制御して対応する演算処理などを実行し、さらには、処理結果をディスプレイ１７ａに表示したり、カラープリンタ１７ｂに出力したりすることになる。
【００４１】
かかるコンピュータシステム１０では、画像入力デバイスであるスキャナ１１ａなどで写真などを読み取って画像データを取得することができる他、デジタルスチルカメラ１１ｂで撮影した画像データを取得したり、ビデオカメラ１１ｃで撮影した動画としての画像データを取得することができる。また、予め撮影された各種の画像データがＣＤ−ＲＯＭソフトとして提供されることも多々あるし、予め画像データを一つの記憶領域に保存しておいた上で複数の人間がネットワークを介してアクセスすることも多い。
【００４２】
デジタルスチルカメラ１１ｂで撮影した画像データはハードディスク１３ｂにまとめて保存しておくことが多く、このような画像データはディスプレイ１７ａ上で鑑賞して楽しむばかりでなく、カラープリンタ１７ｂで出力して楽しむことも多い。画像データの利点として、写りが悪くても容易に修整できる点がある。
すなわち、カラープリンタ１７ｂで印刷するにあたって元の画像データのままでは写りが悪いなど、フォトレタッチなどで修整が行われる。このようにして、画像データの管理と画像の修整を行なう画像データ処理装置の必要性が生じ、アプリケーション１２ｄとコンピュータシステム１０とが有機一体化して画像データ処理装置を実現することになる。
【００４３】
この意味で、画像データ処理ソフトであるアプリケーション１２ｄは、デジタルスチルカメラ１１ｂで撮影された画像データをハードディスク１３ｂに記憶して管理したり、ＣＤ−ＲＯＭドライブ１３ｃを介してＣＤ−ＲＯＭによって供給される画像データを適宜入力できるようにして管理しつつ、後述するようにパラメータも併せて管理する。従って、この意味で関連するソフトウェアとハードウェアとによってデータ保存手段Ａ１を構成する。
【００４４】
また、このようにして記憶されている画像データについては、アプリケーション１２ｄによって処理対象を特定した上で上述したような対応するパラメータと共に内部の画像処理ルーチンによって画像処理することになり、この意味で関連するソフトウェアとハードウェアとによって画像処理再現手段Ａ３を構成する。
そして、アプリケーション１２ｄは、オペレーティングシステム１２ａを介してキーボード１５ａやマウス１５ｂの操作を入力しつつ所定の対応画面を生成してディスプレイ１７ａ上に表示するが、このようなＧＵＩ処理を経て対象とする画像データを選定し、実行する画像処理を特定していくという意味で関連するソフトウェアとハードウェアとによってパラメータ設定手段Ａ２を構成する。さらに、既に保存されている画像データを読み出したときに予め特定しておいた画像処理を実行可能とするようにパラメータを読み込む意味で関連するソフトウェアとハードウェアとによってデータ取得手段Ａ４を構成する。
【００４５】
なお、このようなソフトウェアは、ハードディスク１３ｂに記憶されており、コンピュータ本体１２にて読み込まれて稼働する。また、導入時にはＣＤ−ＲＯＭ１３ｃ−１であるとかフロッピーディスク１３ａ−１などの媒体に記録されてインストールされる。従って、これらの媒体は画像データ処理プログラムを記録した媒体を構成する。
図３は上記画像データ処理ソフトによる制御内容をブロック化して表しており、各種の総合的な制御を行うメイン制御部６０と、各種の共通的な制御を行う共通機能部２０と、画像データの管理を行うフィルムデータ管理部３０と、各画像データについて画像修整を実行する画像修整制御部４０と、一連の印刷処理を実行するＤＰＥ印刷制御部５０から構成されている。
【００４６】
メイン制御部６０は、後述する各種フローを適宜選択して実行するものであり、その他、他に分類されない各種の機能も実行する。そのうちの一つが環境設定部６０ａであり、本画像データ処理ソフトにおいて共通の設定などを設定情報ファイル６０ｂとしてハードディスク１３ｂ上に記録し、適宜他の機能部から読み出し可能としている。この設定情報ファイル６０ｂは、各種のデフォルト指定、例えば、新たな画像データの取り込み元の指定であるとか、後述するような印刷処理で次回に引き継ぐためのページのパラメータであるといったような類のものが記録されることになる。
【００４７】
共通機能部２０については、図４にその詳細ブロックを示しており、そのいくつかは他の機能部からも共通して呼び出せるようになっている。例えば、画像選択部２０ａはサムネール作成部２０ｉにて各画像データについてサムネールを作成させつつ画像表示部２０ｍにてディスプレイ１７ａに複数のサムネール画像を表示させ、その状態でキーボード１５ａやマウス１５ｂによる選択操作を受け付けることによって各画像についての選択の有無を入力する。むろん、選択操作に伴って表示を変えたりする場合には適宜画像表示部２０ｍにて表示を変更させるし、選択の結果は他の機能部に受け渡すことになる。また、表示指定部２０ｂは画面上での表示を指定するものであり、ＧＵＩ操作に応じてウィンドウ領域の大きさなどを変更したときに対応して画像の表示を適宜指定することになる。
【００４８】
ファイル編集部２０ｃは画像データの保存領域を適宜変更する操作などを実行し、検索部２０ｄは画像ファイルと併せて管理されるパラメータに基づいてコメントであるとか日付などによって検索を実行するものである。一括コメント部２０ｅでは複数の画像データに対するコメント付けを一括して処理するものであり、一括整理部２０ｆは画像データやパラメータを一括して同時に処理するものである。
【００４９】
画像処理部２０ｇと画像編集部２０ｈは、画像修整制御部４０が主に画像処理の自動実行をするにあたって各種のパラメータを生成するのに対して、実際に画像処理を実行する部分であり、さらに手動にて指定される画像処理も実行する。
この処理結果は原則的に仮のデータとして扱われ、実際の処理時にオリジナル画像データに変更を加える指定がなされている場合は元の画像データに反映される。また、表示や処理時間の便宜上から必ずしも元の画像データに基づいて実行する必要はなく、操作中はサムネールの画像データに基づいて画像処理部２０ｇや画像編集部２０ｈが各種の処理を実行する。
【００５０】
画像入力部２０ｊは画像データの記憶領域がファイル編集部２０ｃによって既に登録されている場合に、画像処理や印刷処理の際に同画像データを読み込んでくる処理を行い、また、画像データとして各種のデータフォーマットが存在するのに対応し画像出力部２０ｋは形式を変換して出力するといった処理を実行する。
次に、フィルムデータ管理部３０について説明する。図５は、本フィルムデータ管理部３０が管理する画像データである画像ファイル３０ａと、パラメータを含む写真データ３０ｂと、画像データのグループ化において利用するフィルムデータ３０ｃの管理構造をブロック図により示している。ここで、画像データはコンピュータシステム１０においてファイルとして扱われることにより、画像ファイルとして示しているし、パラメータはそれぞれの画像データに対応する各種の情報とともに写真データ３０ｂとして示している。また、フィルムデータ３０ｃは画像データをグループ化して管理するための情報であり、図６にはフィルムメタファとして示している。ここで写真データ３０ｂのデータベースは、コンピュータシステム１０上における書き換え可能な記憶領域に保存されるものとし、また、複数存在するフィルムメタファに関わらず一定の領域に保存される。むろん、物理的に複数のデータベースとすることは可能であるが、要は必ずしも画像データが現実に記憶されている媒体に形成される必要はないということである。
【００５１】
同図では、画像ファイルの物理的記録形態を同図の左方に示しており、オペレーティングシステム１２ａによってフォルダ単位で階層構造が形成され、各フォルダの中に画像ファイルを記憶するようになっている。本実施形態における画像データのグループ化は、物理的にはまさにこのフォルダ単位の階層構造を利用しており、このフォルダ単位で情報を付加して管理している。すなわち、フィルムデータ３０ｃを構成する最低限の情報は、任意につけることが可能なフィルム名、このフォルダの物理的配置情報としての実際の記憶領域を示すリンク先、作成した日付、コメント、媒体属性、媒体ラベル、フィルム属性、収容画像ファイル数などである。また、図に示すように各フォルダは管理上においてフィルムのパトローネと同視しており、別の視点からすれば実際の記憶領域を個別に意識することなくパトローネとして同一視してしまうので、エリアス管理にも近くなっている。なお、パトローネには物理的な記憶領域が交換可能な媒体であるか否かを示すマークを表示して利用者に分かりやすくしている。すなわち、画像ファイルがＣＤ−ＲＯＭによって供給されているような場合は交換可能であるが、この場合はＣＤ−ＲＯＭを交換することによって実際のＣＤ−ＲＯＭドライブ１３ｃに装着されていない場合もあり得る。このような場合にそのＣＤ−ＲＯＭが装着されていなければ非表示としまうのではなく、フィルムデータ３０ｃとして登録した以上は同データに基づいて表示が行われるし、その場合には交換可能なマークがあることによって操作者はＣＤ−ＲＯＭをセットしなければ参照できないことが容易に理解できるようになる。
【００５２】
この例では、交換可能なマークを示しているだけであるが、このようなマークを適宜変更して情報を表示するようにしても良い。例えば、交換可能な記憶領域であるとしてそのＣＤ−ＲＯＭが装着されている場合と装着されていない場合とでマークを変えても良い。また、ネットワークで複数人が共有する記憶領域に画像データが保存されている場合には、各人で勝手に書き換えてしまうと収拾がつかなくなるため、ネットワークドライブを表すマークを表示するようにしても良い。むろん、ネットワークドライブであれば書き込み可能であっても書き込み不能の扱いをするようにしても良い。なお、マークを変化させるのではなく、パトローネ自体の形状を変更するようにしても良い。
【００５３】
写真データ３０ｂの具体的構成は、図５および図６に示している。ここで、索引情報はファイル名とファイル日時とファイルサイズと撮影日時とから構成されており、画像ファイルを縮尺したサムネールデータをサムネールとして表示している。コメントは各画像ファイル毎に付すことができるようにしており、表示順序などを表す整理情報や、実際の記憶領域を示す位置情報や、マイク１８ｂなどを介して付された音声情報とともに写真データ３０ｂを構成している。
【００５４】
さらに、写真データ３０ｂは修整情報と特徴情報と色合せ情報も備えている。
上述したように本画像データ処理ソフトでは画像データの管理と画像の修整を行なうが、画像の修整によって元の画像データを直に変更してしまうのではなく、これらのパラメータによって修整する指針だけを修整情報として管理し、これに併せて特徴情報や色合わせ情報を管理できるようにしている。図７は修整情報を管理するための具体的な変数宣言例を示しており、トリミングに関する修整情報を表すトリミング開始Ｘ座標（ｍ＿ｘ１）とトリミング開始Ｙ座標（ｍ＿ｙ１）とトリミング終了Ｘ座標（ｍ＿ｘ２）とトリミング終了Ｙ座標（ｍ＿ｙ２）と、回転処理を実行する場合の回転角度（ｍ＿ｎＲｏｔａｔｉｏｎ）と、自動画像修整（ｍ＿ｎＡｐｆ）と、赤成分の強調度（ｍ＿ｎＲｅｄ）と、緑成分の強調度（ｍ＿ｎＧｒｅｅｎ）と、青成分の強調度（ｍ＿Ｂｌｕｅ）と、明るさ成分の強調度（ｍ＿ｎＢｒｉｇｈｔｎｅｓｓ）と、コントラストの強調度（ｍ＿ｎＣｏｎｔｒａｓｔ）とから構成されている。
【００５５】
ここで、本画像データ処理ソフトで実行可能な画像処理、特に自動画像修整にについて説明する。自動画像修整において核となるのは図８に示す画像修整制御部４０であり、画像特徴抽出部４０ａが画像データに基づいて画像の特徴を抽出すると、修整情報作成部４０ｂが修整に必要なパラメータを作成し、修整指定部４０ｃは同パラメータを使って上述した画像処理部２０ｇに対して実際の処理を実行させることになる。
【００５６】
図９はこの画像修整制御部４０が実行する概略の手続の流れを模式的に示しており、以下にこの流れを参照しつつ自動画像修整処理について説明する。
手順１では画像データを入力する。画像データはオペレーティングシステム１２ａを介して読み込み、所定のワークエリアに保存する。ただし、既にサムネールデータを作成してある場合には、写真データ３０ｂの中からサムネールデータを読み込んで画像データとする。特徴抽出は画像データの各画素についての集計処理であるため、画素の量に応じて演算時間は変化する。サムネールデータを使用するのはこのような画素の量の圧倒的な差異を考慮したものであり、本来の画像データを使用する場合に比べて処理時間を短くすることができる。なお、画像データ自体は一つのファイルであり、図１０に示すように先頭部分に画像のサイズであるとか色数などのプロファイルデータを備えるとともに、その後には個々の画素についてＲＧＢ２５６階調で表現するべく３バイトのエリアが画素数分だけ確保されている。
【００５７】
画像データをワークエリアに読み込んだら、手順２〜４にて図１１に示すようにして対象画素を移動させつつ同対象画素の画像データについて加工を行って集計処理を行う。集計処理の内容は画像の特徴量に応じて様々であるが、本実施形態においては、「コントラスト」、「明度」、「カラーバランス」、「彩度」、「シャープネス」の５つの特徴量を得るための集計処理を行う。また、全画素について集計処理を終えたら、手順５では集計結果に基づいて特徴量を算出する。
以下、これらの集計処理とともにそれに基づいて導出する特徴量について説明する。
【００５８】
コントラストは画像全体としての輝度の幅を示し、コントラストを修整したいと感じる場合、コントラストの幅を広げたいという要望が主である。ある画像の各画素における輝度の分布をヒストグラムとして集計したものを図１２で実線にて示している。実線に示す分布を取る場合、明るい画素の輝度と暗い画素の輝度との差が少ないが、輝度の分布が一点鎖線に示すように広がれば明るい画素の輝度と暗い画素の輝度との差が大きくなり、コントラストの幅が広がることになる。ここで、図１３はコントラストを拡大するための輝度変換を示している。変換元の輝度ｙと変換後の輝度Ｙとの間において、
Ｙ＝ａｙ＋ｂ
なる関係で変換させるとすると、変換元の最大輝度Ｙｍａｘと最小輝度Ｙｍｉｎの画素の差はａ＞１の場合において変換後において大きくなり、図１２に示すように輝度の分布が広がることになる。従って、このようなヒストグラムを作成するとして輝度の最大値から輝度の最小値までの間隔をコントラストの幅として集計処理することが必要である。ただし、この場合はあくまでも輝度の変換であり、画像データが輝度を要素として備えていれば直接に集計が可能であるが、上述したように画像データはＲＧＢ２５６階調で表現されてているので、直接には輝度の値を持っていない。輝度を求めるためにＬｕｖ表色空間に色変換する必要があるが、演算量などの問題から得策ではないため、テレビジョンなどの場合に利用されているＲＧＢから輝度を直に求める次式の変換式を利用する。
ｙ＝０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂ
すなわち、対象画素を移動させながら各画素の画像データである３バイトを読み込み、同式に基づいて輝度ｙを演算する。この場合、輝度ｙも２５６階調であらわすものとし、演算された輝度ｙに対する度数を１つずつ加えていくことになる。なお、白黒への変換はこの輝度を利用すればよく、求められた輝度の階調値をＲＧＢの各成分値に一致させることで実現する。また、セピア調などの単色カラーについては輝度の階調値を求めた後でＲＧＢの成分比に応じてＲＧＢの各成分値を求めればよい。
【００５９】
このようにして輝度分布のヒストグラムを得るのが手順２の画像データ集計処理であり、このヒストグラムに基づいて手順５の特徴量抽出処理では輝度分布の両端を求める。写真画像の輝度分布は図１４に示すように概ね山形に表れる。むろん、その位置、形状についてはさまざまである。輝度分布の幅はこの両端をどこに決めるかによって決定されるが、単に裾野が延びて分布数が「０」となる点を両端とすることはできない。裾野部分では分布数が「０」付近で変移する場合があるし、統計的に見れば限りなく「０」に近づきながら推移していくからである。
【００６０】
このため、分布範囲において最も輝度の大きい側と小さい側からある分布割合だけ内側に寄った部分を分布の両端とする。本実施形態においては、同図に示すように、この分布割合を０．５％に設定している。むろん、この割合については、適宜、変更することが可能である。このように、ある分布割合だけ上端と下端をカットすることにより、ノイズなどに起因して生じている白点や黒点を無視することもできる。すなわち、このような処理をしなければ一点でも白点や黒点があればそれが輝度分布の両端となるので、２５５階調の輝度値であれば、多くの場合において最下端は階調「０」であるし、最上端は階調「２５５」となるが、上端部分から０．５％の画素数だけ内側に入った部分を端部とすることにより、このようなことが無くなる。そして、実際に得られたヒストグラムに基づいて画素数に対する０．５％を演算し、再現可能な輝度分布における上端の輝度値と下端の輝度値から順番に内側に向かいながらそれぞれの分布数を累積し、０．５％の値となった輝度値が最大輝度Ｙｍａｘと最小輝度Ｙｍｉｎとなる。
【００６１】
輝度分布の幅Ｙｄｉｆは最大輝度Ｙｍａｘと最小輝度Ｙｍｉｎの差であり、
Ｙｄｉｆ＝Ｙｍａｘ−Ｙｍｉｎ
となる。
コントラストを拡大する画像処理としては、輝度の分布に応じて傾きａとオフセットｂを決定すればよい。例えば、
ａ＝２５５／（Ｙｍａｘ−Ｙｍｉｎ）
ｂ＝−ａ・Ｙｍｉｎあるいは２５５−ａ・Ｙｍａｘ
とおくとすると、せまい幅を持った輝度分布を再現可能な範囲まで広げることができる。ただし、再現可能な範囲を最大限に利用して輝度分布の拡大を図った場合、ハイライト部分が白く抜けてしまったり、ハイシャドウ部分が黒くつぶれてしまうことが起こる。これを防止するには再現可能な範囲の上端と下端に拡大しない範囲として輝度値で「５」ぐらいを残すようにすればよい。この結果、変換式のパラメータは次式のようになる。
ａ＝２４５／（Ｙｍａｘ−Ｙｍｉｎ）
ｂ＝５−ａ・Ｙｍｉｎあるいは２５０−ａ・Ｙｍａｘ
そして、この場合にはＹ＜Ｙｍｉｎと、Ｙ＞Ｙｍａｘの範囲においては変換を行わないようにするとよい。
【００６２】
また、このように変換するにあたって、毎回計算する必要はない。輝度の範囲が「０」〜「２５５」という値をとるとすれば、各輝度値について予め変換結果を予めておき、図１５に示すように変換テーブルを形成しておく。ただ、この場合はあくまでも輝度の変換であり、ＲＧＢ２５６階調の画像データの適用については別に考える必要がありそうである。しかしながら、実際には、変換前の画像データ（Ｒ0,Ｇ0,Ｂ0
）と変換後の画像データ（Ｒ1,Ｇ1,Ｂ1 ）との間には輝度と同じ変換関係を適用可能であり、
Ｒ1＝ａＲ0＋ｂ
Ｇ1＝ａＧ0＋ｂ
Ｂ1＝ａＢ0＋ｂ
なる関係で求めることができるから、結果として図１５に示す変換テーブルを利用して変換すればよいことが分かる。
【００６３】
すなわち、手順５にて特徴抽出する作業は上述した最大輝度Ｙｍａｘと最小輝度Ｙｍｉｎを求める作業が該当するし、手順６の修整情報作成処理ではこれらから輝度分布の幅Ｙｄｉｆを求めつつ変換式のパラメータａ，ｂを求めて変換テーブルを作成する処理が該当する。そして、手順７の修整指定処理ではこのような変換テーブルを指定して変換前の画像データ（Ｒ0,Ｇ0,Ｂ0
）から変換後の画像データ（Ｒ1,Ｇ1,Ｂ1 ）を生成させることになる。
【００６４】
次に、明度について説明する。ここでいう画像の特徴量としての明度は画像全体の明暗の指標を意味しており、上述したヒストグラムから求められる分布の中央値（メジアン）Ｙｍｅｄを使用する。従って、この場合における集計処理は手順２にてコントラストのための集計処理と同時に行われる。
一方、手順５にて特徴量を分析する際には明度の理想値であるＹｍｅｄ＿ｔａｒｇｅｔとの差（Ｙｍｅｄ＿ｔａｒｇｅｔ−Ｙｍｅｄ）を算出すればよい。なお、理想値Ｙｍｅｄ＿ｔａｒｇｅｔの実際の値は「１０６」を使用するが、固定的なものではない。また、好みを反映して変更できるようにしても良い。
【００６５】
この特徴量を利用して明度を修整する場合は次のようにする。中央値Ｙｍｅｄが理想値Ｙｍｅｄ＿ｔａｒｇｅｔと比較して大きいか小さいかで画像が明るいか否かを評価できる。例えば、中央値Ｙｍｅｄが「８５」であるとすれば理想値Ｙｍｅｄ＿ｔａｒｇｅｔの「１０６」よりも小さいので、第一次的に「暗い」と評価されるし、第二次的に暗さの程度は「１０６−８５」と数値的に表現される。
【００６６】
図１６は輝度のヒストグラムを示しているが、実線で示すように輝度分布の山が全体的に暗い側に寄っている場合には波線で示すように全体的に明るい側に山を移動させると良いし、逆に、図１７にて実線で示すように輝度分布の山が全体的に明るい側に寄っている場合には波線で示すように全体的に暗い側に山を移動させると良い。このような場合には図１３に示すような直線的な輝度の変換を施すのではなく、図１８に示すようないわゆるγ曲線を利用した輝度の変換を行えばよい。
【００６７】
γ曲線による補正ではγ＜１において全体的に明るくなるし、γ＞１において全体的に暗くなる。上の例では中央値Ｙｍｅｄが「２１」上がれば理想値Ｙｍｅｄ＿ｔａｒｇｅｔと一致することになるが、γ曲線を利用してぴったりと「２１」上げるというのは容易ではない。このため、図１９に示すように評価値である（Ｙｍｅｄ＿ｔａｒｇｅｔ−Ｙｍｅｄ）について「５」刻み毎に対応するγの値を設定しておけばよい。この例では評価値の変動量「５」に対応してγの値を「０．０５」ずつ変動させているが、両者の対応関係を適宜変更可能であることはいうまでもない。
【００６８】
また、コントラストの修整の場合と同様に自動的にγの値を設定することも可能である。例えば、
γ＝Ｙｍｅｄ／１０６
あるいは、
γ＝（Ｙｍｅｄ／１０６）**（１／２）
としてγの値を求めるようにしてもよい。むろん、γ曲線による輝度の変換についても図１５に示すような変換テーブルを形成しておけばよい。
すなわち、手順５にて特徴抽出する作業は中央値Ｙｍｅｄを求める作業が該当するし、手順６の修整情報作成処理ではこれからγ補正値を求めつつ変換テーブルを作成する処理が該当する。そして、手順７の修整指定処理ではこのような変換テーブルを指定して各画素の変換前の画像データ（Ｒ0,Ｇ0,Ｂ0
）から変換後の画像データ（Ｒ1,Ｇ1,Ｂ1 ）を生成させることになる。
【００６９】
次にカラーバランスについて説明する。ここでいうカラーバランスとは画像データを構成するＲ成分、Ｇ成分、Ｂ成分の間に一定のアンバランス傾向があるか否かを指すものとする。例えば、写真が赤っぽく見えるとして、それが撮影時の本当の状況を表しているのであれば構わないが、そうではない場合には何らかの悪影響が表れていると言える。ただし、このようなアンバランスは実際のところ本当の状況と比較しなければ分からないとも言えるので、事後的に評価すること自体が不可能であるとも考えられる。
【００７０】
本実施形態において、これを各色毎の度数分布の均一さから評価することにする。撮影時の状況によっては各色成分の度数分布が不均一となることの方が自然な状況もあり得、そのような場合においては色修整すべきではない。しかしながら、結果から逆を辿るとすると、各色成分の度数分布がある程度似ている状況では度数分布が均一となっているべきであろうし、度数分布が似ていなければ均一にすべきでないだろうと判断できる。
【００７１】
このため、手順２の画像データ集計処理においては、後で各色成分毎の度数分布の類似度をチェックするために、各色成分毎のヒストグラムを作成する。このとき、全階調値について度数分布を求めるのではなく、２５６階調の領域を８〜１６分割（ｎ分割）し、各領域に属する度数を集計していく。８分割する場合であれば、図２０に示すように、「０〜３１」、「３２〜６３」…「２２４〜２５５」という８つの領域について度数分布を求めていく。
【００７２】
一方、全画素を対象として各色成分毎に上述したヒストグラムを作成したら、手順５における特徴量の分析では各色毎に各領域に属する画素数（ｒ１、ｒ２…ｒｎ）、（ｇ１、ｇ２…ｇｎ）、（ｂ１，ｂ２…ｂｎ）（ここではｎ＝８）を成分としてベクトル化する。ＲＧＢのそれぞれについて、特徴ベクトルＶＲ，ＶＧ，ＶＢを次のように表すとし、
ＶＲ＝（ｒ１、ｒ２…ｒｎ）  Σｒｉ＝１
ＶＧ＝（ｇ１、ｇ２…ｇｎ）  Σｇｉ＝１
ＶＢ＝（ｂ１，ｂ２…ｂｎ）  Σｂｉ＝１
これらの特徴ベクトルの相互相関を求める。相互相関は、内積として
ｃｏｒｒ＿ｒｇ＝（ＶＲ・ＶＧ）／｜ＶＲ｜・｜ＶＧ｜
ｃｏｒｒ＿ｇｂ＝（ＶＧ・ＶＢ）／｜ＶＧ｜・｜ＶＢ｜
ｃｏｒｒ＿ｂｒ＝（ＶＢ・ＶＲ）／｜ＶＢ｜・｜ＶＲ｜
で表されるが、ベクトルの内積自体は両ベクトルの類似度を表すといえ、その値は「０」〜「１」となる。ここでは、その最小値ｃｏｒｒ＿ｘに基づいてカラーバランスを評価する。
【００７３】
なお、カラーバランスの修整はｎ分割した各領域毎に行うようにしても良いが、概略的には各色成分毎に全体的に明るくするか暗くするという対応で対処できるので、γ曲線を利用したＲＧＢ値の修整を行えばよい。
すなわち、手順５にて特徴抽出する作業は最小値ｃｏｒｒ＿ｘを求める作業が該当するし、手順６の修整情報作成処理ではこれに基づいてバランスを修整するためのγ補正値を求めつつ変換テーブルを作成する処理が該当する。そして、手順７の修整指定処理ではこのような変換テーブルを指定して各画素の変換前の画像データ（Ｒ0,Ｇ0,Ｂ0
）から変換後の画像データ（Ｒ1,Ｇ1,Ｂ1 ）を生成させることになる。
【００７４】
次に、彩度について説明する。ここでいう彩度は画像全体としての色鮮やかさを指すものとする。例えば、原色のものが色鮮やかに写っているかグレーっぽく写っているかといった評価である。彩度自体はＬｕｖ表色空間におけるｕｖ平面内での基準軸からの大きさで表されるものの、上述したように表色空間を変換する演算量は多大であるため、画素の彩度を簡略化して求めることにする。これには彩度の代替値Ｘとして次のように演算する。
Ｘ＝｜Ｇ＋Ｂ−２×Ｒ｜
本来的には彩度は、Ｒ＝Ｇ＝Ｂの場合に「０」となり、ＲＧＢの単色あるいはいずれか二色の所定割合による混合時において最大値となる。この性質から直に彩度を適切に表すのは可能であるものの、簡略化した上式によっても赤の単色および緑と青の混合色である黄であれば最大値の彩度となり、各成分が均一の場合に「０」となる。また、緑や青の単色についても最大値の半分程度には達している。むろん、
Ｘ’＝｜Ｒ＋Ｂ−２×Ｇ｜
Ｘ”＝｜Ｇ＋Ｒ−２×Ｂ｜
という式にも代替可能である。
【００７５】
手順２での画像データ集計処理では、この彩度の代替値Ｘについてのヒストグラムの分布を求めることになる。この彩度の代替値Ｘについてのヒストグラムの分布を求めるとすると彩度が最低値「０」〜最大値「５１１」の範囲で分布するので、概略的には図２１に示すような分布となる。
一方、手順５で特徴量を分析する際には、このヒストグラムに基づいて行う。
すなわち、集計されたヒストグラムに基づいてこの画像についての彩度指数というものを決定する。この彩度の代替値Ｘの分布から上位の「１６％」が占める範囲を求め、この範囲内での最低の彩度「Ｓ」がこの画像の彩度を表すものとする。
【００７６】
この彩度「Ｓ」が低ければ彩度強調を望むことになるが、自動修整する場合には次のようにする。
ＲＧＢ表色空間のように各成分が概略対等な関係にある色相成分の成分値であるときには、Ｒ＝Ｇ＝Ｂであればグレイであって無彩度となる。ＲＧＢの各成分における最小値となる成分については各画素の色相に影響を与えることなく単に彩度を低下させているにすぎないと考えれば、各成分における最小値をすべての成分値から減算し、その差分値を拡大することによって彩度を強調できるといえる。いま、画像データの各成分（Ｒ，Ｇ，Ｂ）における青（Ｂ）の成分値が最小値であったとすると、この彩度強調パラメータＳratio
を使用して次のように変換できる。
Ｒ’＝Ｂ＋（Ｒ−Ｂ）×Ｓratio
Ｇ’＝Ｂ＋（Ｇ−Ｂ）×Ｓratio
Ｂ’＝Ｂ
この例は無彩度の成分について単純に最小値の成分を他の成分値から減算する手法であるが、無彩度の成分を減算するにあたって他の手法も採用可能である。
特に、この変換を行う場合には彩度を強調すると輝度も向上して全体的に明るくなるという傾向がある。従って、各成分値から輝度の相当値を減算した差分値を対象として変換を行うことにする。
彩度強調が、
Ｒ’＝Ｒ＋△Ｒ
Ｇ’＝Ｇ＋△Ｇ
Ｂ’＝Ｂ＋△Ｂ
となるとすると、この加減値△Ｒ，△Ｇ，△Ｂは輝度との差分値に基づいて次式のように求める。すなわち、
△Ｒ＝（Ｒ−Ｙ）×Ｓratio
△Ｇ＝（Ｇ−Ｙ）×Ｓratio
△Ｂ＝（Ｂ−Ｙ）×Ｓratio
となり、この結果、
Ｒ’＝Ｒ＋（Ｒ−Ｙ）×Ｓratio
Ｇ’＝Ｇ＋（Ｇ−Ｙ）×Ｓratio
Ｂ’＝Ｂ＋（Ｂ−Ｙ）×Ｓratio
として変換可能となる。なお、輝度の保存は次式から明らかである。
Ｙ’＝Ｙ＋△Ｙ
△Ｙ＝０．３０△Ｒ＋０．５９△Ｇ＋０．１１△Ｂ
＝Ｓratio｛（０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂ）−Ｙ｝
＝０
すなわち、変換前後で輝度が保存され、彩度を強調しても全体的に明るくなることはない。また、入力がグレー（Ｒ＝Ｇ＝Ｂ）のときには、輝度Ｙ＝Ｒ＝Ｇ＝Ｂとなるので、加減値△Ｒ＝△Ｇ＝△Ｂ＝０となり、無彩色に色が付くこともない。
【００７７】
ここで、彩度強調パラメータＳratio は評価値Ｐｓａｔｕが小さくなるときに大きくなればよく、上述した最低の彩度「Ｓ」との関係で
Ｓ＜９２なら
Ｓ’＝−Ｓ×（１０／９２）＋５０
９２≦Ｓ＜１８４なら
Ｓ’＝−Ｓ×（１０／４６）＋６０
１８４≦Ｓ＜２３０なら
Ｓ’＝−Ｓ×（１０／２３）＋１００
２３０≦Ｓなら
Ｓ＝０
というように彩度強調指数Ｓ’を決定し、この彩度指数Ｓ’から彩度強調指数Ｓratio への変換を、
Ｓratio ＝（Ｓ＋１００）／１００
として求めればよい。この場合、彩度強調指数Ｓ＝０のときに彩度強調パラメータＳratio ＝１となって彩度強調されない。図２２はこの彩度「Ｓ」と彩度強調指数Ｓ’との関係を示している。
【００７８】
すなわち、手順５にて特徴抽出する作業は彩度「Ｓ」を求める作業が該当するし、手順６の修整情報作成処理では彩度指数Ｓ’を経て彩度強調指数Ｓratio を求める処理が該当する。そして、手順７の修整指定処理ではこのような彩度強調指数Ｓratio
を使用しながら各画素の変換前の画像データ（Ｒ0,Ｇ0,Ｂ0 ）から輝度を求めつつ変換後の画像データ（Ｒ1,Ｇ1,Ｂ1 ）を生成させることになる。
【００７９】
最後に、シャープネスについて説明する。画像の特徴量としてのシャープネスについては以下に述べるエッジ度で評価する。画像データがドットマトリクス状の画素から構成されるものとすると、画像のエッジ部分では隣接する画素間での画像データの差分は大きくなる。この差分は輝度勾配であり、これをエッジ度と呼ぶことにする。図２３に示すようなＸＹ直交座標を考察する場合、画像の変化度合いのベクトルはＸ軸方向成分とＹ軸方向成分とをそれぞれ求めれば演算可能となる。ドットマトリクス状の画素からなるディジタル画像においては、図２４に示すように縦軸方向と横軸方向に画素が隣接しており、その明るさをｆ（ｘ，ｙ）で表すものとする。この場合、ｆ（ｘ，ｙ）は輝度Ｙ（ｘ，ｙ）であってもよいし、ＲＧＢの各輝度であるＲ（ｘ，ｙ），Ｇ（ｘ，ｙ），Ｂ（ｘ，ｙ）であってもよい。図２４に示すものにおいて、Ｘ方向の差分値ｆｘとＹ方向の差分値ｆｙは、
ｆｘ＝ｆ（ｘ＋１，ｙ）−ｆ（ｘ，ｙ）
ｆｙ＝ｆ（ｘ，ｙ＋１）−ｆ（ｘ，ｙ）
のように表される。従って、これらを成分とするベクトルｇ（ｘ，ｙ）の大きさＤｄｉｆは、
Ｄｄｉｆ＝｜ｇ（ｘ，ｙ）｜＝（ｆｘ**２＋ｆｙ**２）**（１／２）
のように表される。エッジ度はこのＤｄｉｆで表される。なお、本来、画素は図２５に示すように縦横に升目状に配置されており、中央の画素に注目すると八つの隣接画素がある。従って、同様にそれぞれの隣接する画素との画像データの差分をベクトルで表し、このベクトルの和を画像の変化度合いと判断しても良い。
さらに、単に横並びのがその間でのみ比較するということも演算量の低減という面では効果がある。
【００８０】
以上のようにして各画素についてエッジ度が求められるとしても、全画素のエッジ度を求めて平均化するだけでは画像のシャープ度合いは求められない。図２６は空を飛ぶ飛行機の写真を示しており、背景の空については画像の変化度合いが大きくないことは容易に分かる。このような場合、空の部分をトリミングする状況を想定すると、中央の被写体である飛行機の画像データが変わらないにも関わらず、空の画素が多くなると平均値が下がって画像はシャープでないことになり、空の画素か少なくなると平均値が上がって画像はシャープであることになる。このような場合、本来の被写体である飛行機のシャープさに基づいて画像のシャープさを判断するのが普通であるから、平均化は好適ではないといえる。
【００８１】
このため、全画像のエッジ度を平均化するのではなく、画像の中の輪郭部分がどれくらいシャープであるかを判断すべく、輪郭部分だけのエッジ度を平均化することにする。より具体的には、対象画素を移動させながら手順２にて画像データを集計処理する際に、上述したようにエッジ度を算出した上であるしきい値Ｔｈ１と比較することにより、その画素がエッジ部分であるか否かを判定し、エッジ部分である場合にのみ、同エッジ度Ｄｄｉｆを積算する（ΣＤｄｉｆ）とともに、エッジ部分の画素数を積算する（ΣＥｄｇｅ＿Ｐｉｘｅｌ）。
【００８２】
一方、手順５で特徴抽出する際には、手順２にて積算しておいたエッジ度（ΣＤｄｉｆ）を画素数（ΣＥｄｇｅ＿Ｐｉｘｅｌ）で割り、エッジ部分におけるエッジ度の平均値Ｄｄｉｆ＿ａｖｅを算出する。むろん、このエッジ度の平均値Ｄｄｉｆ＿ａｖｅが大きいほどシャープな画像ということになる。エッジ度の平均値Ｄｄｉｆ＿ａｖｅが小さければエッジ強調を望むことになるが、本実施形態においては以下のようにする。まず、エッジ強調度Ｅenhance
をエッジ度の平均値Ｄｄｉｆ＿ａｖｅから求める。一例として、
Ｅenhance ＝４×Ｄｄｉｆ＿ａｖｅ／１００
といった演算式で構わない。
【００８３】
エッジ強調処理自体は図２７に示すようなアンシャープマスクを利用する。
エッジ強調度Ｅenhance を求めたら、全画素について図２７に示すようなアンシャープマスクを利用してエッジ強調処理を実行する。強調前の各画素の輝度Ｙに対して強調後の輝度Ｙ’は、
Ｙ’＝Ｙ＋Ｅenhance ・（Ｙ−Ｙunsharp ）
として演算される。ここで、Ｙunsharp は各画素の画像データに対してアンシャープマスク処理を施したものであり、アンシャープマスクは、中央の「１００」の値をマトリクス状の画像データにおける処理対象画素Ｙ（ｘ，ｙ）の重み付けとし、その周縁画素に対して同マスクの升目における数値に対応した重み付けをして積算するのに利用される。図２７に示すアンシャープマスクを利用するのであれば、
【００８４】
【数１】
2001056867.tif 000001
なる演算式に基づいて積算する。同式において、「３９６」とあるは重み付け係数の合計値である。また、Ｍｉｊはアンシャープマスクの升目に記載されている重み係数であり、Ｙ（ｘ，ｙ）は各画素の画像データであり、ｉｊについてはアンシャープマスクにおける横列と縦列の座標値で示している。
【００８５】
アンシャープマスクを利用して演算されるエッジ強調演算の意味するところは次のようになる。Ｙunsharp （ｘ，ｙ）は注目画素に対して周縁画素の重み付けを低くして加算したものであるから、いわゆる「なまった（アンシャープ）」画像データとしていることになる。このようにしてなまらせたものはいわゆるローパスフィルタをかけたものと同様の意味あいを持つ。従って、「Ｙ（ｘ，ｙ）−Ｙunsharp
（ｘ，ｙ）」とは本来の全成分から低周波成分を引いたことになってハイパスフィルタをかけたものと同様の意味あいを持つ。そして、ハイパスフィルタを通過したこの高周波成分に対してエッジ強調度Ｅenhance
を乗算して「Ｙ（ｘ，ｙ）」に加えれば同エッジ強調度Ｅenhance に比例して高周波成分を増したことになり、エッジが強調される結果となる。
【００８６】
なお、エッジの強調度合いは、アンシャープマスクの大きさによっても変化するため、エッジ強調度Ｅenhance をクラス分けするとともに対応するサイズのアンシャープマスクを用意しておき、対応するサイズのアンシャープマスクを利用するようにしても良い。また、エッジ強調が必要になるのは当然のことながら画像のエッジ部分であるから、上述したように隣接する画素同士の間で画像データが大きく異なる場所においてのみ演算するようにしてもよい。このようにすれば、殆どのエッジ部分でない画像データ部分でアンシャープマスクの演算を行う必要がなくなり、処理が激減する。
【００８７】
以上、シャープネスについてまとめると、手順５にて特徴抽出する作業はエッジ度の平均値Ｄｄｉｆ＿ａｖｅを求める作業が該当するし、手順６の修整情報作成処理ではエッジ強調度Ｅenhance
を求める処理が該当する。そして、手順７の修整指定処理ではこのようなエッジ強調度Ｅenhance を使用しながら各画素の変換前の画像データ（Ｒ0,Ｇ0,Ｂ0 ）から輝度強調された変換後の画像データ（Ｒ1,Ｇ1,Ｂ1
）を生成させることになる。
【００８８】
以上が本実施形態における画像修整制御部４０における処理を概略的に説明したものである。ただ、同様の修整処理であっても目標値を変えることによって修整結果が変化する。従って、スタンダードな自動画像修整処理の他、色を記憶色に近づけて「きれい」な感じにする自動画像修整処理や、シャープネス強調や彩度強調を強めにしたりする「ＤＰＥ」調の自動画像修整処理といったものを選択できるようにしておいても良い。記憶色に合わせる自動画像修整では、標準値としてユーザーの好みを設定できるようにしておくことにより、各人が「きれい」と感じるような自動画像修整を行えるようにすることもできる。
【００８９】
この画像修整制御部４０はいわゆる画像修整エンジンとして利用され、本画像データ処理ソフトにおいてはかかる画像修整エンジンを使用しつつ図２８〜図３３のフローチャートに従ってメイン制御部６０が画像修整処理を総括的に制御している。なお、ＪＰＥＧ方式データフォーマットは、書き換えを行う都度、画質が劣化してしまう。これはＪＰＥＧ特有の８×８のブロックを基準とする処理のゆえであるが、このブロックに起因する歪みの低減処理を合わせて行っている。
より具体的には、平滑化処理のフィルタを適用しており、ただしエッジ部分については平滑化しない手法である。このようなエッジ保存平滑化処理を弱めに架けることにより、エッジの箇所は強調される一方、８×８のブロック歪みやノイズについては平滑化されて滑らかになる。そして、折角、８×８ブロック歪みの低減をしても、ＪＰＥＧなど劣化する方式で保存しては再度歪んでしまうし、ＢＭＰ（ビットマップ）などの劣化しない方式では記録サイズが増大してしまう。一方、本実施形態のようにパラメータを管理する方式においては、表示や印刷という出力のときに低減処理を行うため、ベストな画質での画像表現が可能となっている。
【００９０】
このメイン制御部６０によって行われる一連の画像データ管理処理として同時プリント処理がある。図３４はこの同時プリント処理における画面表示を示している。この場合、メイン制御部６０は共通機能部２０の表示指定部２０ｂに対して適宜指令を出力してディスプレイ１７ａ上に同画面を表示させつつ、キーボード１５ａやマウス１５ｂの操作入力を受け付けることになる。
この同時プリント処理画面においては、画面上の左寄り部分が操作表示エリアとなっており、ここには一連のデータ処理の流れに沿ってタブが表示されている。この例では「写真の入力」、「写真の修整」、「プリント指定」、「印刷」というタブが表示され、それぞれの間に下向きの「△」マークを表示している。むろん、データ処理は「写真の入力」処理、「写真の修整」処理、「プリント指定」処理、「印刷」処理という順序を経て、所望の画像データを綺麗に印刷できるようになる。従来でも、同様の処理を実行することは当然に可能であったのだが、その場合には自分自身で手続の流れを想定して作業を進めていかなければならない。
【００９１】
すなわち、１：ファイルメニューの中から画像データをオープンし、２：ツールメニューの中から画像修整操作を指定して必要なパレットなどを表示させつつ所望の修整を行った後で保存し、３：ファイルメニューの中の印刷レイアウトで印刷したいフォーマットを指定し、４：ファイルメニューの中の印刷プレビューで確認し、５：最後にファイルメニューの中の印刷を実行する。むろん、複数の画像データを印刷したい場合には、この処理の中でファイルメニューの中から印刷対象を決定するという作業が必要になる。
【００９２】
これに対して、デジタルスチルカメラ１１ｂで撮影した写真を印刷しようとするのは通常の写真撮影の場合と比較するとＤＰＥにて同時プリントを指定することに対応するわけであり、一連のデータ処理を同時プリントの作業に対応させて進行させるようにし、アプリケーションに精通していなくても一連のデータ処理を実行可能となる。
図３４の同時プリント処理画面では「写真の入力」という表示をしているが、実質的にはフィルムデータ管理部３０による画像データ管理を行うことになる。
表示エリアの内の左寄り部分は操作表示エリアｄｐ１となっているが、残りの表示エリアは主表示エリアｄｐ２となり、さらにそのうちの左寄り部分が画像データをグループ化して表示するためのグループ表示領域ｄｐ３となっており、残りの部分はあるグループが選択された場合にそのグループに属する画像データをサムネールで表示するための画像表示領域ｄｐ４となっている。
【００９３】
このグループ表示領域ｄｐ３は上述したようなフォルダ単位に対応したフィルムメタファを表示するための領域であり、フィルムのパトローネを枠として表示しつつ、その中にフィルム名とコメントと日付と収容画像ファイル数を表示している。むろん、各フィルムメタファのプロパティを表示させれば、フィルム名、リンク先、日付、コメント、媒体属性、媒体ラベル、フィルム属性、収容画像ファイル数といった全ての情報を表示することになる。また、グループ表示領域ｄｐ３はＧＵＩを使用して適宜表示領域を増減させることができ、表示領域に表示しきれなくなればスクロール表示を付加したり、縮小表示するようになる。むろん、表示された複数のフィルムメタファの内のいずれか一つを選択操作することにより、画像表示領域ｄｐ４には選択されたフィルムメタファに対応するフォルダ内に保存された画像ファイル３０ａがサムネール表示されることになる。
【００９４】
本実施形態においては、オペレーティングシステム１２ａが採用しているフォルダの階層構造を利用して画像データの管理を行っているため、操作者がコンピュータシステム１０を直に操作してフォルダ内に画像ファイル３０ａを収容することも可能であり、この場合にはフォルダ内の画像ファイル３０ａの有無と写真データ３０ｂとにずれが生じる場合があるが、この場合にはフォルダ内の画像ファイル３０ａの有無を優先して写真データ３０ｂを適宜増減させることにする。
【００９５】
この意味でもフィルムメタファに対応するフォルダ内に存在する画像ファイル３０ａに基づいて対応する写真データ３０ｂがあるか否かを判断し、写真データ３０ｂがあればそのサムネールデータを使用して表示を行うし、写真データ３０ｂがなければサムネール作成部２０ｉにてサムネールデータを作成後、表示を行う。写真自体は縦長あるいは横長であり、一つのサムネール表示領域は両方を収容可能な正方形であるとともにその枠外には連番と実際のファイル名を表示している。
【００９６】
なお、同時プリントを選択する場合は、既にデータ管理を行っているものである場合のみならず、撮影したばかりの画像データを取り込んで印刷にかけるときもあるし、あらかじめ画像データ自体は一定の記憶領域に取り込んであって新たにデータ管理を開始する場合とが考えられる。撮影したばかりの画像データを取り込む手法は、例えば、デジタルスチルカメラ１１ｂからケーブル接続して取り込む場合であるとか、所定の交換可能な記録媒体を利用する場合であるとかが考えらえる。いずれにおいても、図３４に示す画面において主表示エリアの上部にコマンドボタンとして用意されている「新しいフィルム」を実行する。すると、図３５に示すように「いつもの入力」と「入力方法を選択」という二つのコマンドボタンを実行可能となるとともに、併せて「入力の設定」というコマンドボタンを実行可能となる。一般の操作者は単一のデジタルスチルカメラ１１ｂを持っているとすると画像データの取り込みは一定であると考えられ、あらかじめ「入力の設定」で選択しておいた画像データの転送手法を実行することになる。むろん、複数のデジタルスチルカメラ１１ｂを所有している場合であるとか、たまたま別の手法で取り込む必要がある場合もあるから「入力方法を選択」のコマンドボタンを実行させれば取り込み可能な複数の手法を表示して選択することになる。なお、これらの場合において外部アプリケーションを実行させる必要がある場合もあるが、これらは入力の設定にて設定しておくことによって適宜実行される。なお、入力の指定方法などは適宜変更可能であることはいうまでもない。
【００９７】
このような状態で、操作者はグループ表示領域に表示されるパトローネ内の表示を見てグループを判断しつつその画像データを画像表示領域に表示させ、さらに印刷対象としたい画像データを選択する。この選択操作は画像選択部２０ａによって受け付けられる。選択された画像データについてはそのサムネール表示領域の枠部分の色を変えて表示することにより、選択の有無が容易に判断できる。
そして、選択結果は以後の「写真の修整」はもとより、「プリント指定」を経て「印刷」の処理での出力対象として反映されることになる。なお、これらの場合に各処理で参照されるのは物理的配置情報であり、選択対象とした画像データを仮領域に移動させて実際の処理を行うわけではない。
【００９８】
「写真の入力」において印刷したい画像データを選択したとして、操作表示エリアでの表示に依れば次の処理が「写真の修整」であることが一目瞭然である。
この「写真の修整」では選択された画像データだけについて画像修整を実行することができる。図３６は自動画像修整を行う場合の主表示エリアでの表示を示している。同図には選択された画像データについて修整前の画像をサムネールで上段に表示し、上述した自動修整を施した修整後の画像をサムネールで下段に表示している。操作者は両者を見て比較し、どちらが良いか選択する。むろん、選択は好みの側のサムネールをマウス１５ｂでクリックすることにより行え、クリックした側については表示指定部２０ｂが枠部分を反転表示するなどして判別できるようにする。なお、デフォルトは修整前を選択状態としておき、マウスでクリックした側についてだけ修整後のものを選択状態としても良いし、殆どの場合は画質を修整されたものについて選択されるであろうとの想定のもとでデフォルトを修整後のものを選択状態とするようにしても良い。
【００９９】
この場面において、最下部には「実行」のコマンドボタンと、「キャンセル」のコマンドボタンが用意されており、「実行」のコマンドボタンをマウスでクリックすると、各画像データごとに用意されている写真データ３０ｂの修整情報が更新される。図７に示すように自動画像修整（ｍ＿ｎＡｐｆ）の管理パラメータが用意されており、修整後の画像データを選択して「実行」コマンドボタンをクリックしたときには同自動画像修整（ｍ＿ｎＡｐｆ）の管理パラメータにフラグをセットする。すなわち、修整後の画像データを選択するとしても、この元の画像データに置き換えて修整後の画像データを上書きしてしまうのではなく、単に管理パラメータのフラグをセットするにすぎない。しかし、以後の処理においてはこの管理パラメータを参照し、本画像データについては自動修整された画像データについて処理を実行すべきものと判断できるようになる。むろん、その際には画像データを読み込み、画像修整制御部４０によって自動画像修整しなければならない場合もあるが、写真データ３０ｂ内のサムネールデータについては修整後の画像データに基づくサムネールデータに更新しておき、表示程度であればこのサムネールデータを表示するだけでも良い。なお、画面下には「オリジナルデータに反映させる」というチェックボックスを用意してあり、このチェックボックスをチェックしておいたときには修整後の画像データで元の画像データを上書きする。
【０１００】
この例では、自動画像修整を選択的に実施するようにしているものの、かかる機能を利用しない手はなく、特に操作の未熟なものにおいてはかかる機能があっても選択操作を知りえないという問題もある。従って、写真の入力時にデフォルトで自動画像修整を行なってしまい、写真の修整という処理を表さないようにすることも便利である。
図３７は、そのような場合の画面表示の一例を示している。同図に示すものでは、操作として「写真の入力」の前に「フィルムの選択」という処理を加えるとともに、「写真の入力」の後は「プリント指定」の処理を実行するようにしている。図３４に示すもののように「写真の入力」の処理で新しいフィルムを選択できるようにしつつ、写真を選択するようにしても良いが、図３７に示すものでは最初に「フィルムの選択」の画面表示を行うことにより、パトローネ単位での写真データの選択であるとか新しいフィルムの選択を先に実行して分かりやすくしている。また、この画面表示では処理を進めたり戻したりするための指示を行うために画面右寄り部分の上段に「前のステップ」と「次のステップ」というコマンドボタンを用意し、「前のステップ」を実行させると処理を戻し、「次のステップ」を実行させると処理を先に進めるようにしている。さらに、画面上段部分には各段階の処理の簡単な説明を表示できるようにしている。例えば、「フィルム選択」の段階では「フィルムを選んで次に進んで下さい。新しいフィルムは『フィルムの追加』で作れます」と表示している。
【０１０１】
一方、手動画像修整を選択することも可能であり、修整度合いをＧＵＩを利用して指示することになる。すなわち、ＧＵＩ表示をマウス１５ｂで操作して手動修整の結果を反映させる。本実施形態においては、画像処理部２０ｇにおいて明るさとコントラストについて段階的な強調処理を実行可能で、その前提のもとに各強調程度を表すパラメータを用意してあり、選択された修整結果を表すパラメータを明るさ成分の強調度（ｍ＿ｎＢｒｉｇｈｔｎｅｓｓ）の管理パラメータと、コントラストの強調度（ｍ＿ｎＣｏｎｔｒａｓｔ）の管理パラメータとに反映させるようにしている。
【０１０２】
手動画像修整は、明るさとコントラストに限られるものではなく、赤成分と緑成分と青成分とにおいてそれぞれ強調処理を実行可能であり、それぞれの強調程度を表すパラメータが赤成分の強調度（ｍ＿ｎＲｅｄ）の管理パラメータと、緑成分の強調度（ｍ＿ｎＧｒｅｅｎ）の管理パラメータと、青成分の強調度（ｍ＿Ｂｌｕｅ）の管理パラメータとにそれぞれ反映されるようになっている。
画像修整は広い意味で画像データの表示に反映される各種の処理を含むものであり、広義の意味で画像のトリミングや回転も含めている。画像データを選択した状態でトリミングを実行させると図３８に示すように現時点での管理パラメータに基づく画像データを所定の大きさの枠内に表示する。ここで、マウス１５ｂを操作してトリミング開始位置とトリミング終了位置を指定し、「実行」コマンドボタンをクリックすると開始位置と終了位置を対角とする矩形領域以外を取り除いて表示する。むろん、この場合に元の画像データの一部を削除するわけではなく、トリミング開始Ｘ座標（ｍ＿ｘ１）とトリミング開始Ｙ座標（ｍ＿ｙ１）とトリミング終了Ｘ座標（ｍ＿ｘ２）とトリミング終了Ｙ座標（ｍ＿ｙ２）の管理パラメータに座標値を設定するだけであり、これに基づいてサムネール作成部２０ｉが新たにサムネールを作成し、写真データ３０ｂ内においてのみ更新する。
【０１０３】
一方、画面の回転も広い意味で画像修整と呼び、カメラを横にして写した縦型の写真を表示上でも縦長とする場合に利用する。図３９はこのような回転処理の場合の主表示エリアの表示画面を示しており、左上部分に元の画像データをサムネール表示するとともに、その下に９０度毎の三つの回転角度と、任意の回転角度を選択するための操作入力ボタンを用意してある。また、右中央部部分には選択された回転角度だけ回転させたサムネールを表示できるようになっている。むろん、選択された回転角度は回転角度（ｍ＿ｎＲｏｔａｔｉｏｎ）の管理パラメータにセットされる。
【０１０４】
図４０と図４１はこれらの画像修整を指定する際のメニュー操作を示している。図４０は自動画像修整を行う場合のメニュー操作例であり、メニューバー上で画像修整をクリックするとドロップダウンメニューが表示され、その中で自動画像修整を選択すると、更に詳細なオプションが表示される。むろん、このときに「きれい」をクリックすれば自動画像修整を「きれい」のオプションで起動させることになる。この場合、選択されている画像データの全てについて図３６に示すように表示される。また、図４１は手動画像修整を行う場合のメニュー操作例であり、画像修整をクリックしつつドロップダウンメニューの手動画像修整を選択すると、「明るさ・コントラスト」についての修整か「色強調」の修整かを選択可能となる。手動画像修整については自動画像修整を実行しても未だ改善されないようなものについて個別的に実行することが多いと考えられ、手動画像修整の対象とする画像データを選択しておいた上で起動した場合にのみこれらを実行できるようにしておく。
【０１０５】
この他、トリミングであるとか回転であるとか白黒変換やセピア変換についても画像データを選択しておいた上でこのドロップダウンメニューから画像処理を選択して実行させることになる。なお、白黒変換やセピア調変換は個別に行うものではあっても変換結果は画一的であり、手動画像修整のように操作者の主観で調整しなければならないものではない。従って、実際には白黒変換やセピア調変換については自動画像修整（ｍ＿ｎＡｐｆ）の管理パラメータをセットすることにしている。
【０１０６】
これまでは、同時プリントの処理を選択したときに画像データに対して各種の修整を行っていく過程でパラメータがセットされていく状況を説明した。次に、実際にこのような操作を実現するためのコンピュータシステム１０内での処理について説明する。
図２８〜図３１は各処理をフローチャートにより示している。図２８は自動画像修整を実行する場合の処理を示しており、自動画像修整を実行する画像データを読み込む際、ステップ１００にて写真データ３０ｂのデータベース構造を参照し、修整情報を読み取る。この修整情報は、上述した各種のパラメータを意味しており、これらのパラメータによって自動画像修整や手動画像修整を実行すべき旨の指定があれば以下の自動画像修整は行うことなく本処理を終了する。これは自動画像修整を重ねて実行する意味がないことと、手動画像修整によって好みが反映されている以上はこれを自動的に修整することはできないからである。
【０１０７】
次に、ステップ１１０にて画像データを読み込み、ステップ１１５にて画像の特徴を抽出し、ステップ１２０にて特徴情報の保存を行い、ステップ１２５にて自動修整の修整情報を作成し、ステップ１３０にて自動修整の画像処理を実行する。むろん、これらは図９にて説明したような手順１〜手順６に該当する。一方、トリミング開始Ｘ座標（ｍ＿ｘ１）とトリミング開始Ｙ座標（ｍ＿ｙ１）とトリミング終了Ｘ座標（ｍ＿ｘ２）とトリミング終了Ｙ座標（ｍ＿ｙ２）の管理パラメータにトリミングの位置情報が設定されている場合にはステップ１３５の判断を経てステップ１４０にてトリミングする画像処理を実行するし、回転角度（ｍ＿ｎＲｏｔａｔｉｏｎ）の管理パラメータに回転の修整情報が設定されている場合にはステップ１４５の判断を経てステップ１５０にて画像を回転させる回転の画像処理を実行することになる。
【０１０８】
以上の処理を経ることにより自動画像修整後の画像を得ることができるようになるため、ステップ１５５では図３６に示すように修整前と修整後のサムネールを表示するとともに、この自動画像修整処理の結果を採用するか否かの入力を待機することになる。すなわち、自動画像修整後のものの方が望ましければそれを選択状態とし、「実行」コマンドボタンをクリックする。この場合、ステップ１７０では「オリジナルデータに反映」というチェックボックスにおける選択状況を取り込み、チェックしてあると判断するとステップ１７５にて画像データを上書き保存することになる。
【０１０９】
オリジナルを書き換える場合には修整情報を参照することは必要なくなり、書き換えない場合にのみステップ１８０にて修整情報を保存する。一方、「標準」の画像自動処理では物足りないような場合には、図４０に示すように「きれい」だとか「ＤＰＥ調」などを選択したときには当該設定に応じた自動画像修整を実行させるべく、予めステップステップ１６５にて自動画像処理の動作条件値を変更し、ステップ１１５にて上述した処理を繰り返す。なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【０１１０】
むろん、自動画像修整はこれ以外にも様々な条件に対応する事が可能である。
従って、予め用意してある「ＤＰＥ調」などの選択以外にも「この辺りをもっと明るく．．．」とか「全体をもっと黄色に」といったユーザの指定に応じて上記動作条件値を変更し、上述した処理を繰り返すようにすることも可能である。この動作条件値はステップ１６５にて後発的に設定するばかりではなく、ステップ１２５にて最初に自動画像修整の修整情報を作成する時点でも当然に反映されている。
【０１１１】
次に、手動画像修整を実行する場合の処理を説明する。図２９は手動画像修整の処理を示しており、手動画像修整を実行されたときには、処理対象となっている画像データを読み込む前にステップ２００にて修整情報を読み込み、続いてステップ２０５にて同画像データを読み込む。続いてステップ２１０にて自動画像修整（ｍ＿ｎＡｐｆ）の管理パラメータを参照し、同管理パラメータが設定されている場合にはステップ２１０の判断を経てステップ２１５にて自動画像修整の画像処理を実行する。
【０１１２】
この後、ステップ２２０では、既に設定されている手動画像修整についての管理パラメータを読み込んで指定どおりの画像処理を実行し、その後でトリミングについての処理と回転についての処理をそれぞれ管理パラメータに基づいてステップ２２５〜２４０にて実行する。
以上の処理を経ることにより既に設定されている手動画像調整後の画像を得ることができるようになるため、ステップ２４５で上述したようにしてさらに手動調整の操作を実行すればステップ２５５にて修整情報を変更し、ステップ２２０〜２４０の処理を経て画像修整を実行する。
【０１１３】
また、「実行」のコマンドボタンをクリックされたら「確定」を意味するものと判断し、「オリジナルデータに反映」のチェックボックスにおける選択状況に応じてステップ２６５にて元の画像データを書き換えたりステップ２７０にて最終的な修整情報を表す管理パラメータを書き換えたりすることになる。なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【０１１４】
次に、トリミングを実行する場合の処理を説明する。図３０はトリミングの処理を示しており、処理対象となっている画像データを読み込む前にステップ３００にて修整情報を読み込み、続いてステップ３０５にて同画像データを読み込む。続いてステップ３１０にて自動画像修整（ｍ＿ｎＡｐｆ）の管理パラメータを参照し、同管理パラメータが設定されている場合にはステップ３１５にて自動画像修整の画像処理を実行する。また、ステップ３２０にて既に設定されている手動画像修整についての各種の管理パラメータを参照し、それぞれ管理パラメータが設定されている場合にはステップ３２５にて対応する画像処理を実行する。
【０１１５】
この後、ステップ３３０では既に設定されているトリミングについての管理パラメータを参照し、ステップ３３５にてトリミングの画像処理を実行するし、ステップ３４０では既に設定されている回転についての管理パラメータを参照し、ステップ３４５にて回転の画像処理を実行する。
以上の処理を経ることにより既に設定されている全ての画像修整後の画像を得ることができるようになるため、ステップ３５５では図３８に示す画面表示でトリミングの操作を受け付け、新たにトリミングの操作が行われた場合にはステップ３６０にて修整情報を変更し、ステップ３３５の処理を経て画像修整を実行する。なお、この場合はステップ３４０にて回転についての管理パラメータを参照するが、回転については重複するか否かを判断し、重複して実行するわけではない。
【０１１６】
この場合も、「実行」のコマンドボタンをクリックされたら「確定」を意味するものと判断し、「オリジナルデータに反映」のチェックボックスにおける選択状況に応じてステップ３６５にて元の画像データを書き換えたり、ステップ３７０にて最終的な修整情報を表す管理パラメータを書き換えたりすることになる。
なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【０１１７】
最後に、回転を実行する場合の処理を説明する。図３１は回転の処理を示しており、処理対象となっている画像データを読み込む前にステップ４００にて修整情報を読み込み、続いてステップ４０５にて同画像データを読み込む。続いてステップ４１０にて自動画像修整（ｍ＿ｎＡｐｆ）の管理パラメータを参照し、同管理パラメータが設定されている場合にはステップ４１５にて自動画像修整の画像処理を実行する。また、ステップ４２０にて既に設定されている手動画像修整についての各種の管理パラメータを参照し、それぞれ管理パラメータが設定されている場合にはステップ４２５にて対応する画像処理を実行する。
【０１１８】
この後、ステップ４３０では既に設定されているトリミングについての管理パラメータを参照し、ステップ４３５にてトリミングの画像処理を実行するし、ステップ４４０では既に設定されている回転角度（ｍ＿ｎＲｏｔａｔｉｏｎ）についての管理パラメータを参照し、ステップ４４５にて回転の画像処理を実行する。
以上の処理を経ることにより既に設定されている全ての画像修整後の画像を得ることができるようになるため、ステップ４５５では図３９に示す画面表示で回転の操作を受け付け、新たに回転の操作が行われた場合にはステップ４６０にて修整情報を変更し、ステップ４４５の処理を経て画像修整を実行する。
【０１１９】
この場合も、「実行」のコマンドボタンをクリックされたら「確定」を意味するものと判断し、「オリジナルデータに反映」のチェックボックスにおける選択状況に応じてステップ４６５にて元の画像データを書き換えたり、ステップ４７０にて最終的な修整情報を表す回転角度（ｍ＿ｎＲｏｔａｔｉｏｎ）の管理パラメータを書き換えたりすることになる。なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【０１２０】
このようにして管理パラメータを利用する一つのメリットとして元の画像データに変更を加える必要が無くなることがあげられ、元の画像データを活かすためには管理パラメータを修整する必要が生じてくる。
図４０や図４１に示すようにファイルメニューの画像修整を選択した際に表示されるドロップダウンメニューには、最下段に画像修整取消のコマンドが用意されており、同コマンドを選択して実行させると図３２のフローチャートに従って処理が実行される。
【０１２１】
この場合も画像データを選択した状態で画像修整取消を実行させるものとし、ステップ５００において当該画像データについての写真データ３０ｂの修整情報を読み込み、ステップ５０５において図４２に示す操作メニューを主表示エリアに表示して操作入力を待機する。この操作メニューでは取消対象として「自動画像修整」、「手動画像調整」、「回転」、「トリミング」、「白黒」、「セピア調」といった取消対象の項目とともにそれぞれの項目の前にチェックボックスを表示している。ここで、操作者は取り消したい画像修整項目の前のチェックボックスをマウス１５ｂでクリックすることによりチェックマークがトグル表示されるとともに、内部的にはそれぞれのチェックマークの有無をフラグで表して記憶する。また、下段には「実行」コマンドボタンと「キャンセル」コマンドボタンとを用意してあり、操作者は必要なチェックボックスをチェックしたら「実行」のコマンドボタンをクリックする。
【０１２２】
すると、ステップ５１０以下において各チェックボックスにチェックマークが付されているか否かを判断しながら対応する修整情報を削除していく。むろん、ここでいう修整情報の削除とは管理パラメータの修整に他ならず、元の画像データを加工するようなことは一切不要である。具体的に説明していくと、ステップ５１０では「自動画像修整」の項目にチェックマークが付されているか否かを判断し、付されていればステップ５１５にて「自動画像修整」の修整情報を削除する。次に、ステップ５２０では「白黒」の項目にチェックマークが付されているか否かを判断し、付されていればステップ５２５にて「白黒」の修整情報を削除する。次に、ステップ５３０では「セピア調」の項目にチェックマークが付されているか否かを判断し、付されていればステップ５３５にて「セピア調」の修整情報を削除する。次に、ステップ５４０では「手動画像調整」の項目にチェックマークが付されているか否かを判断し、付されていればステップ５４５にて「手動画像調整」の修整情報を削除する。手動画像調整には明度やコントラストや色強調といったものが含まれ、この例では全部を取り消すようにしているが、それらを個別に取り消せるようにしても良い。
【０１２３】
次に、ステップ５５０では「トリミング」の項目にチェックマークが付されているか否かを判断し、付されていればステップ５５５にて「トリミング」の修整情報を削除する。次に、ステップ５６０では「回転」の項目にチェックマークが付されているか否かを判断し、付されていればステップ５６５にて「回転」の修整情報を削除する。
以上の結果を経ていくつかの修整情報が削除された状態でステップ５７０ではその修整情報を保存する。ここでいう保存作業は、写真データ３０ｂの更新を意味し、図５に示す写真データ３０ｂのデータベース構造にアクセスして最新の修整情報に更新する。なお、図４２に示す操作メニューで「キャンセル」のコマンドボタンをクリックすると、内部的には全てのチェックマークを削除して以上の処理を実行するため、結局は何も修整情報を削除することなく本処理を終了することになる。なお、この例では一旦作成した修整情報を削除することによって元に戻す手法を採用しているが、修整情報自体に日時の情報を付加することにより一つの画像データについて時系列に対応した複数の修整情報を管理するようにしてもよい。このようにすれば、単に修整情報を削除することによって元に戻すだけでなく、任意の段階の修整情報まで遡って修整情報を削除することも可能であり、途中の段階で良好だった修整結果を復元するといったことも可能となる。
【０１２４】
これまで、各画像データに対応して用意されている管理パラメータを設定し、あるいは取り消す作業について説明したが、この管理パラメータを利用しつつ、実際に修整された画像データを利用できるようにする処理について図３３のフローチャートを参照しながら説明する。
修整された画像データを利用する場面は、表示指定部２０ｂによる指示に従ってサムネール作成部２０ｉがサムネールを更新して画面表示する場合であるとか、画像出力部２０ｋによって画像データのデータフォーマットの形式を変換して出力する場合であるとか、後述するようにＤＰＥ印刷制御部５０によって印刷を実行する場合にその元の印刷データを作成する場合などである。従って、それぞれの場合において微細な処理の相違はあるものの、概ね図３３のフローチャートと一致している。
【０１２５】
ステップ６００で対象となる画像データの修整情報を読み込むとともに、ステップ６０５で画像データを読み込み、以下の処理において修整情報に従いながら同画像データに基づいて画像修整を行っていき、この画像データを書き換えることなく新たな画像データを作成していく。ステップ６１０では自動画像修整の修整情報があるか判断し、ある場合にはステップ６１５にて自動画像修整を行なう。この場合、自動画像修整（ｍ＿ｎＡｐｆ）の管理パラメータには単に自動画像修整を行うという情報だけではなく、「標準」、「きれい」、「ＤＰＥ調」といったどの自動画像修整を行うのかを判断して処理を進める。また、白黒やセピア調への変換は修整結果が１通りにしか過ぎないことからこの自動画像修整の管理パラメータで表せるようにしており、同時あるいは択一的に実施する。
【０１２６】
続いてステップ６２０では手動調整の修整情報があるか否かを判断し、あればステップ６２５にて手動調整の画像処理を実行する。手動調整の修整情報は上述したように、明るさ成分の強調度（ｍ＿ｎＢｒｉｇｈｔｎｅｓｓ）と、コントラストの強調度（ｍ＿ｎＣｏｎｔｒａｓｔ）と、赤成分の強調度（ｍ＿ｎＲｅｄ）と、緑成分の強調度（ｍ＿ｎＧｒｅｅｎ）と、青成分の強調度（ｍ＿Ｂｌｕｅ）とから構成されており、いずれか一つでも修整情報があれば対応する画像処理を実行するし、明るさとコントラストについての修整情報と、色強調の修整情報とがある場合には、前者についての修整を行った上で後者の修整を行うことにする。むろん、かかる修整順序を反映した結果が得られる場合には一度の修整で実行することも可能である。
【０１２７】
この後、ステップ６３０ではトリミングの修整情報があるか判断し、ある場合にはステップ６３５にてトリミングの画像処理を実行する。トリミングの画像処理では、トリミング開始Ｘ座標（ｍ＿ｘ１）とトリミング開始Ｙ座標（ｍ＿ｙ１）とトリミング終了Ｘ座標（ｍ＿ｘ２）とトリミング終了Ｙ座標（ｍ＿ｙ２）に囲まれるエリアを残して周囲の画像データを削除することになる。
また、ステップ６４０では回転の修整情報があるか判断し、ある場合にはステップ６４５にて回転の画像処理を実行する。回転の画像処理では、回転角度（ｍ＿ｎＲｏｔａｔｉｏｎ）の管理パラメータに基づいて回転角度を参照し、画像データを回転させる処理を実行することになる。
【０１２８】
以上の画像処理は最初に元画像データをワークエリアに保存し直した上、そのワークエリア上の画像データに変更を加えていく。従って、元画像データには変更は加えられない。
以上は、操作者の選択操作に応じて実行されたりされなかったりするオプション的な画像処理であるが、ステップ６５０とステップ６５５ではハードウェア環境の相違に基づいて必須の画像処理を実行している。ステップ６５０では出力機器に応じた色再現の画像処理を実行する。カラー出力の再現機器では基準とのずれがあるのは否めない。すなわち、同じ画像データを入力しながら出力結果が相違することは多々ある。また、このずれを画一化して画像データと出力結果とが必ず標準状態と一致することは単純に費用対コストの面でも無理な話であり、それよりはずれを見越して修整するための色合わせ情報を利用するのが得策である。
【０１２９】
上述した画像データの場合であれば、撮影した側での色ずれ情報と出力する側での色ずれ情報があれば出力結果において大きな色ずれは発生しないと言える。
本実施形態においては、前者の色ずれ情報を色合わせ情報として写真データ３０ｂのデータベース構造内で管理するとともに、本コンピュータシステム１０とカラープリンタ１７ｂとにおいて生じる色ずれ情報として設定情報内で管理し、ステップ６５０において両者の色ずれ情報に基づいてワークエリア上の画像データを修整する。
【０１３０】
また、ステップ６５５では出力機器に応じた解像度の画像処理を実行するものであり、画像データの解像度に対して出力する際の解像度とを対比して対応する解像度変換を行う。例えば、カラーディスプレイ１７ａでの表示が７０ｄｐｉであってその大きさ通りに印刷しようとする場合、カラープリンタ１７ｂの解像度が７２０ｄｐｉであるとすると、縦横方向に１０倍の解像度変換が必要になる。
【０１３１】
図３４に示す同時プリントの処理の説明に戻ると、写真の修整の次に行われるのは「プリント指定」の処理である。既に、「写真の入力」と「写真の修整」を経ており、印刷したい画像データの選択と、それに施すべき画像処理が選択されている。この「プリント指定」では選択されている画像データをどのようなフォーマットで印刷するかを指定する。
図４３は「プリント指定」での主表示エリアでの表示を示しており、上段部分には横方向にスクロール可能な表示エリアを配してレイアウトのパターンを表示可能となっている。同図においては、「４枚ずつのレイアウト」、「アルバム印刷」、「シール印刷」のレイアウトが表示されている。むろん、これ以外にもレイアウトのパターンを実装することは可能である。また、オプションとして、切断する際の位置の目安となるトンボを印刷したり、日付を印刷したり、タイトルを印刷させるのを選択できるようにチェックボックスを設けている。さらに、用紙については「Ａ４」、「Ｂ５」、「シール」などに対応しており、これらについてはいずれかだけを排他的に選択できるラジオボタンを設けてある。
【０１３２】
印刷する際には、カラープリンタ１７ｂの機種に応じて印刷データを生成させる必要があるから、下段左方にはプリンタ装置の選択表示エリアを設けてある。
ここでプリンタ装置を選択することにより、それぞれに対応した設定情報が読み出され、上述した色ずれを修整したり、出力解像度を一致させることになる。
レイアウトの中には「アルバム印刷」のレイアウトが用意されており、「アルバム詳細」のコマンドボタンをクリックすると主表示エリアには図４４に示す操作画面が表示される。この表示画面においても上段部分には横方向にスクロール可能な表示エリアを配してアルバムのパターンを表示可能となっており、この例ではＡ４用紙を横二列縦四段に配して市松様に画像を印刷するものと、左側半分に縦四段に配して画像を印刷するものと、上下に二段に分けて画像を印刷するものとを示している。また、アルバム印刷用のオプションとして、コメントを印刷したり、日付を印刷したり、ページタイトルを印刷させるのを選択できるようにチェックボックスを設けてあるとともに、アルバム印刷においては日をおいて順次印刷していくことから通しのページ番号を印刷できるようにページ番号の指定覧も設けてある。なお、このページ番号は前回のアルバム印刷の後続ページ番号を自動的にセットするようにしても良い。そして、この表示通りで良ければ「ＯＫ」のコマンドボタンをクリックすればよいし、気に入らなければ「キャンセル」のコマンドボタンをクリックすればよい。
【０１３３】
図３４に示す同時プリントの最後の処理は「印刷」であるが、この主表示エリアには図４５に示すように現在指定されているプリンタ装置の機種と、印刷する用紙のサイズと、必要な枚数を含めて確認用のメッセージを表示し、さらに印刷を開始させるための「実行」のコマンドボタンと、「キャンセル」のコマンドボタンを用意してある。むろん、この状態で「実行」のコマンドボタンをクリックすれば印刷が開始される。カラープリンタ１７ｂによっては印刷に時間を要することが少なくないため、予め指定しておくべき操作を全て完了した上でこの「実行」ボタンをクリックすれば風呂上がりには印刷を全て完了させておくということが容易になる。
【０１３４】
ところで、図４６はこのような「プリント指定」と「印刷」の処理を実行するＤＰＥ印刷制御部５０の具体的構成を示している。印刷画像指定部５０ａは上述したようにして選択された画像データの指定を受け継ぐものであり、フレーム指定部５０ｂとレイアウト指定部５０ｃとによって「プリント指定」の処理を実行し、プリント指定部５０ｄによる制御の下で印刷スタイル作成部５０ｅと印刷画像処理部５０ｆとで実際の印刷データを生成する。一般に画像データはＲＧＢの多階調表示で表されている反面、印刷はＣＭＹＫの二階調表示が多い。このため、印刷画像処理部５０ｆは上述した指定に応じた画像処理を実行させた上でＲＧＢ→ＣＭＹＫの色空間の変更ととともに多階調→二階調の階調変換処理も併せて実行する。
【０１３５】
なお、一つの画像データに対して複数の修整情報を時系列的に保存するようにする場合、修整の削除を行う際には履歴を表示し、一つ一つ遡って削除するようにしていけばよい。むろん、事例列的な修整データがある場合には最古のものから順番に画像処理を施していって利用したい画像データを再現することになる。
また、修整を追加したい場合には新たに修整情報を生成し、以前の修整情報を残したまま保存する。
＜第二の実施例＞
一方、図４７は上述したフォルダ単位の階層構造をより具体的に示したものである。まず、フィルムデータ３０ｃについては、この画像データ処理装置の主要プログラムが格納される「ｍａｉｎ」フォルダ３１のデータベースファイルａｉ＿ｄｐｅ．ｄｂ０として保存されている。主要プログラムと同一フォルダであるので、どのパトローネがどのフォルダに対応するかは核となる重要な情報であり、ユーザーの任意の指定によって場所を変えてしまうことにより、結果的に散逸してしまうことを防止する。次に、ＣＤ−ＲＯＭ１３ｃ−１等の交換可能な記憶領域に保存された画像ファイル３０ａについては、パトローネ単位で写真データ３０ｂを管理するものとして、この写真データ３０ｂを「ｍａｉｎ」フォルダ３１の中に形成した「ｒｅｍｏｖａｂｌｅ」フォルダ３２にデータベースファイルｐｈｏｔｏ１．ｄｂ１，ｐｈｏｔｏ１．ｄｂ２，ｐｈｏｔｏ２．ｄｂ１，ｐｈｏｔｏ２．ｄｂ２として保存している。ここで、一つのパトローネに対してｐｈｏｔｏ１，ｐｈｏｔｏ２という名称が付されつつ、それぞれに拡張子ｄｂ１，ｄｂ２が付された二つのファイルを生成している。この二つのデータベースファイルのうち、拡張子がｄｂ２となっているものが写真データ３０ｂにおけるサムネールの専用のファイルであり、拡張子がｄｂ１となっているファイルに残りの写真データ３０ｂが格納されている。従って、この例では一組のデータベースファイルｐｈｏｔｏ１．ｄｂ１，ｐｈｏｔｏ１．ｄｂ２で写真データ３０ｂを構成している。
【０１３６】
一方、画像ファイル３０ａをハードディスク１３ｂ上に保存する場合は「ｍａｉｎ」フォルダ３１の中に形成した「ｆｉｌｍｓ」フォルダ３３内に保存される。ここで、「ｆｉｌｍｓ」フォルダ３３の中にはさらにパトローネごとに一つずつのフォルダが形成され、パトローネの名称として「海水浴」を設定したときには「海水浴」フォルダ３４となるし、パトローネの名称として「ハイキング」を設定したときには「ハイキング」フォルダ３５となる。そして、それぞれのフォルダ内には写真データ３０ｂとしてデータベースファイルａｉ＿ｄｐｅ．ｄｂ１，ａｉ＿ｄｐｅ．ｄｂ２が作成されるとともに、個別の画像ファイル３０ａがユニークな名称で保存されている。二つのデータベースファイルは先ほどと同様に拡張子がｄｂ２のものにサムネールデータが保存され、拡張子がｄｂ１のものに残りの写真データが保存されている。また、このデータベースファイルは同じディレクトリに保存される画像ファイル３０ａだけの情報が格納されている。むろん、「ハイキング」フォルダ３５についても全く同様である。
【０１３７】
また、処理の都合上、一時的に分離不明なものを保存しておくパトローネがあると便利であり、「その他」という名称のパトローネを用意してある。そして、この「その他」のパトローネに分類される画像ファイル３０ａは「ｆｉｌｍｓ」フォルダ３３の直下に上述した「海水浴」フォルダ３４や「ハイキング」フォルダ３５と同列で保存されている。ここでも当該ディレクトリに存在する画像ファイルを対象としたデータベースファイルａｉ＿ｄｐｅ．ｄｂ１，ａｉ＿ｄｐｅ．ｄｂ２が作成されている。
【０１３８】
このように画像ファイル３０ａの存在場所は、交換可能な記録媒体上かハードディスク１３ｂとなり、それぞれパトローネ単位で管理され、その存在場所は「ｍａｉｎ」フォルダ３１のデータベースファイルａｉ＿ｄｐｅ．ｄｂ０で集中管理されている。そして、データベースファイルａｉ＿ｄｐｅ．ｄｂ０内でリンク先としてその情報が格納されている。リンク先がハードディスク１３ｂ上であれば画像ファイル３０ａは写真データ３０ｂとともに一つのディレクトリが確保されて保存されるし、交換可能な記録媒体上であれば写真データ３０ｂだけを一つのディレクトリに集中して保存している。なお、写真データ３０ｂと画像ファイル３０ａとが同じディレクトリにない場合、すなわち交換可能な記録媒体上にある場合には写真データ３０ｂであるデータベースファイルｐｈｏｔｏ１．ｄｂ１，ｐｈｏｔｏ１．ｄｂ２のファイル名もフィルムデータ３０ｃに保存されている。これは、複数のパトローネの写真データ３０ｂが一つのディレクトリ上に保存されることになるためである。これに対して写真データ３０ｂと画像ファイル３０ａとが同じディレクトリにある場合、写真データ３０ｂであるａｉ＿ｄｐｅ．ｄｂ１，ａｉ＿ｄｐｅ．ｄｂ２の名称は特に重要ではない。これは、パトローネごとに一つのディレクトリが確保され、その中には一組のデータベースファイルａｉ＿ｄｐｅ．ｄｂ１，ａｉ＿ｄｐｅ．ｄｂ２しか存在しないためである。むろん、ディレクトリの名称がパトローネの名称に対応するため、パトローネの名称でその所在も特定される。
【０１３９】
ところで、画像ファイル３０ａと写真データ３０ｂをリンクさせる手法は様々である。上の例では複数の画像ファイル３０ａに対して一組のデータベースファイルを形成するようにしているが、ファイル単位で分散させることも可能である。図４８は一つの画像ファイル「０６１６０００ｘ．ｊｐｇ」に対して上述した修整情報や特徴情報や色合せ情報等を含む一つのアトリビュートファイル「０６１６０００ｘ．ＡＴＢ」を写真データ３０ｂとして生成している。この場合、一つのパトローネに対して一つのディレクトリを生成し、各ディレクトリに画像ファイル３０ａ群とアトリビュートファイル３０ｄ群とが保存される。画像ファイル３０ａを扱うに際しては、まず、各ディレクトリ内のアトリビュートファイル３０ｄと画像ファイル３０ａとが一対一で対応しているか判断し、一致していればアトリビュートファイル３０ｄ内のサムネールデータを使用して簡易的な表示や各種の操作の処理を実行する。この場合、フィルムデータ３０ｃに書き込まれたディレクトリの存在場所と各画像ファイル３０ａの名称とによってアトリビュートファイル３０ｄが特定されるので、これらの情報が画像ファイル３０ａと修整情報とのリンクの情報を構成する。
【０１４０】
また、データベースファイルを生成しない他の一例として、画像ファイル３０ａと写真データ３０ｂを一体化したファイルを生成することも可能である。図４９（ａ）はその場合のディレクトリ構造の一例を示しており、一つの画像ファイル「０６１６０００ｘ．ｊｐｇ」の存在を前提として写真データ３０ｂを含めた一つのファイル「０６１６０００ｘ．ＰＨＴ」を生成している。この場合は、画像ファイル３０ａが存在することを前提として写真データ３０ｂを付属させるような対応であるため、別ファイルとした場合のように対応が不一致となることはない。
【０１４１】
また、修整処理のバージョンアップが予見されるし、その他予見できない変更に対応するためにも予備の情報が必要となる。図４９（ｂ）には修整処理のバージョンアップに対応して画像修整エンジンのバージョンを示す情報を含める例を示している。ここでは、画像ファイル「ｘｘｘｘ．ｊｐｇ」と写真データ「ｘｘｘｘ．ＡＴＢ」に加えて画像修整エンジンのバージョンを示す情報ファイル「ｘｘｘｘ．ＥＮＧ」とを一体化して一つの統合されたファイル「ｘｘｘｘ．ＰＨＴ」を生成している。
【０１４２】
このようなフォルダ構造を採用した場合の具体的な処理を図５０に示している。上述したように、通常の修整処理結果はサムネールにのみ反映させておき、オリジナルの画像ファイル３０ａには修整を加えていない。従って、等倍表示や拡大表示の場合、あるいは印刷の場合に、実際の画像ファイル３０ａに修整処理を加える必要がある。むろん、修整結果は、一時的なワークの画像データ３０ａである。
【０１４３】
以上のようなファイル構成を前提として図５０のワーク画像ファイル生成処理について説明する。図３４の同時プリント処理を実行しているときには、その途中で修整結果をチェックするために画像ファイルを等倍あるいは拡大して表示する必要が生じる。また、最終的に印刷を実行する場合には修整結果を反映させた画像ファイルが必要である。図５０に示すワーク画像ファイル生成処理では、このような場合にワークの画像ファイルを生成する処理である。
【０１４４】
なお、この処理は一つのモジュールなどとして実現され、当該モジュールを呼び出すにあたってはあるパトローネが選択されている下で画像ファイルが指定されているものとする。従って、図５１に示すようにパトローネの選択情報は変数ＰＡＴＲＯＮＥに、また、各パトローネ内に保持されている画像ファイル３０ａのそれぞれについて選択の有無を示す変数ｆ＿ＰＩＣＴが用意されている。この変数ｆ＿ＰＩＣＴについては、１０００バイトの文字領域であるが、各バイトが一枚の画像ファイル３０ａごとの選択情報となっており、都合１０００枚の画像ファイル３０ａの選択の有無を指定できるようになっている。そして、引数を与えて任意の場所の１バイトを参照でき、その情報で各画像ファイル３０ａの選択の有無を判定するものとする。
【０１４５】
まず、ステップ７００では変数ＰＡＴＲＯＮＥから選択されているパトローネのフィルムデータ３０ｃを「ｍａｉｎ」フォルダ３１のデータベースファイルａｉ＿ｄｐｅ．ｄｂ０で参照する。該当するフィルムデータ３０ｃには当該パトローネについて媒体属性とリンク先が含まれている。従って、ステップ７００ではこのリンク先を取得し、ステップ７０５では媒体属性から交換可能な記録媒体、すなわちリムーバブルであるか否かを判断して処理を分岐させる。リムーバブルの場合は、まず、ステップ７０７にて対応すべきリムーバブル記録媒体を装填する。具体的には、リムーバブル記録媒体のリンク先であるパス名や媒体ラベルを取得し、ユーザーに示して所定のドライブにセットを促し、セットされたらそれが正しいかどうかを確認して間違っていたらやり直させる。これが完了したら、ステップ７１０にて「ｒｅｍｏｖａｂｌｅ」フォルダ３２内で対応するデータベースファイルを参照する。データベースファイルｐｈｏｔｏ１．ｄｂ１，ｐｈｏｔｏ１．ｄｂ２であれば、変数ｆ＿ＰＩＣＴにおける指定情報に基づいて指定された各画像ファイルの修整情報を当該データベースファイルから取得する。
【０１４６】
また、媒体属性に基づいてリムーバブルでない場合には、ステップ７１５にてパトローネの名称が付されたフォルダをｆｉｌｍｓフォルダ３３内で探し、該当するフォルダ内のデータベースファイルａｉ＿ｄｐｅ．ｄｂ１，ａｉ＿ｄｐｅ．ｄｂ２を参照する。そして、変数ｆ＿ＰＩＣＴにおける指定情報に基づいて指定された各画像ファイルの修整情報を当該データベースファイルから取得する。
このようにして画像ファイル３０ａの所在とともにこれに対応する修整情報などを取得できるため、ステップ７２０では指定された修整情報に基づいて対応する画像修整エンジンにて修整処理を実行させ、さらにステップ７２５で本来の当該・拡大表示あるいは印刷処理を実行させる。なお、ステップ７２５については当該モジュールの中から実行しても良いし、一度処理を上位のモジュールに戻して実行させるようにしても構わない。
【０１４７】
一方、パトローネが選択された状態で画像表示領域ｄｐ４にサムネール画像を表示させることになるが、この場合は図５２に示すサムネール表示処理を実行する。この場合も、まずステップ７３０にて変数ＰＡＴＲＯＮＥに基づいて選択されているパトローネのフィルムデータ３０ｃを「ｍａｉｎ」フォルダ３１のデータベースファイルａｉ＿ｄｐｅ．ｄｂ０で参照し、該当するフィルムデータ３０ｃの中から当該パトローネについての媒体属性とリンク先を取得する。そして、媒体属性から交換可能な記録媒体、すなわちリムーバブルであるか否かを判断し、リムーバブルの場合は、ステップ７４０にて「ｒｅｍｏｖａｂｌｅ」フォルダ３２内のデータベースファイルｐｈｏｔｏ１．ｄｂ２からサムネールデータを取得する。また、媒体属性に基づいてリムーバブルでない場合には、ステップ７４５にてパトローネの名称が付されたフォルダをｆｉｌｍｓフォルダ３３内で探し、該当するフォルダ内のデータベースファイルａｉ＿ｄｐｅ．ｄｂ２からサムネールデータを取得する。そして、ステップ７５０では取得されたサムネールデータを画像表示領域ｄｐ４に表示する。
【０１４８】
次に、画像処理の順序を任意に変更可能とする処理について説明する。図５３はこの場合の写真データ３０ｂにおける修整情報の内容を示している。処理の内容は、最左欄に示すように「自動画像修整」、「明るさ」、「コントラスト」、「赤（強調）」、「緑（強調）」、「青（強調）」である。また、各各処理ごとに、設定すべき個別の指定情報は最上覧に示すように「修整エンジンのバージョン」、「順番（実行順序情報）」、「処理強さ」となっている。
【０１４９】
ここで、「自動画像修整」は各処理内容の実行順序が固定であるので、選択しない場合にのみ他の処理同士の間で順番が有効となる。  同図（ａ）は自動画像修整の順番に「１」を設定してあり、他の処理は「０」であって選択していないことを意味する。これに対して同図（ｂ）は自動画像修整の順番は「０」であって選択されていない。そして、他の処理は「１」〜「５」という順番が設定されている。
【０１５０】
図５４はこのような処理の順番が付されている場合に画像の修整処理を実行させるフローチャートを示している。まず、ステップ７６０では処理順序別のソートを実行する。上述したように、処理を選択していない場合には「０」を付すので昇順ソートの結果、選択しない処理が先頭に来る。ステップ７６５では順番の欄に「０」が付されて先頭に並べられた処理を排除する。例えば、図５３（ａ）に示すものであれば自動画像処理だけが残るし、同図（ｂ）に示すものであれば自動画像処理だけが排除され、処理対象のものとして赤強調、緑強調、青強調、明るさ、コントラストの順に並ぶ。
【０１５１】
ステップ７７０はループの終了判断であって処理すべきものがなくなったらこの修整処理を終了させ、処理すべきものがあればステップ７７５とステップ７８０にて処理を実行させる。ステップ７７５は最優先の処理の処理エンジンに画像データと処理強さのパラメータを引き渡して修整処理を実行させる。最優先の処理は、ソートされて先頭に並べ替えられた処理であり、図５３（ｂ）の例であれば最初は赤強調の処理である。
【０１５２】
この処理の後、ステップ７８０では未処理のものを繰り上げる。最初、赤強調の処理が最優先の処理であり、その処理を終了したら赤強調の処理を排除して二番目の青強調を最優先の処理とし、以下同様に繰り上げる。このような繰り上げの処理によって最後の処理が終了するまで順番通りに処理が実行され、最後に実行すべき処理がなくなってループ処理を終了する。
図５５はステップ７７５の処理を観念的に示している。画像修整制御部４０はいわゆる画像修整エンジンとして利用されることを前提に複数の画像修整エンジンを内蔵している。同図に示すものでは、自動画像修整の修整エンジンとしてバージョン１（４１）とバージョン２（４２）があり、明るさ修整の修整エンジンとして同様にバージョン１（４３）とバージョン２（４４）があり、コントラスト修整の修整エンジンとしてバージョン１（４５）があり、その他、これと同様に備えられている。ステップ７７５では同図にて作法に示すように処理エンジンとバージョンと画像データと処理強さをパラメータとして画像修整制御部４０に指定すると、同画像修整制御部４０は指定されたとおりの画像修整を画像データに実行して修整画像データを出力する。
【０１５３】
すなわち、同画像修整制御部４０ではパラメータの内容に応じた修整エンジン４１〜４５…が選択され、これにパラメータを与えて画像修整を実行する。むろん、画像修整制御部４０自体は多数のモジュールの集合体のように構成され、分岐処理を経て特定の修整エンジンのモジュールが実行される。
このように修整情報の一つのパラメータとして順番の要素を設定しておき、ソートを実行させることによって不要な処理を実行することなく、望むとおりの順番で修整処理を実行させることができる。
【０１５４】
一方、「自動画像修整」、「明るさ」、「コントラスト」、「赤（強調）」、「緑（強調）」、「青（強調）」というそれぞれの処理はグループ化して使い分けることもできる。例えば、「自動画像修整」だけの第１グループと、「明るさ」と「コントラスト」の第２グループと、「赤（強調）」と「緑（強調）」と「青（強調）」の第３グループというように三つのグループ化を行うことができる。第１グループは独自に特徴抽出処理と修整情報作成処理と修整指定処理が必要であり、一連の処理として実現されなければならない。また、第２グループは処理の内容として輝度の変換を主眼としており、共通性がある。さらに、第３グループは各色成分の強調処理であって処理内容は共通である。
【０１５５】
従って、ＣＰＵの処理能力が高い場合であるなど、実行環境に余裕があればすべてのグループの指定を実行可能としつつも、実行環境次第で第３グループは実現可能であるが、第１グループと第２グループは実現できないようにするということが可能である。これは環境設定などで第１〜第３グループの実行可否を定めておき、画像修整制御部４０の実行可否判定部４６にて実行可否情報に基づいて各修整エンジン４１〜４５…の実行可否を参照する。そして、実行可能なグループの処理については修整エンジンを実行させるものの、実行不能なグループの処理については修整エンジンに実行させることなく処理を完了したものと同様にして終了させる。
【０１５６】
ところで、これまでは写真データ３０ｂが一組のものを主に説明してきたが、上述した履歴情報のように複数の組を有する構成とすることも可能である。図５６はこのような修整情報の組を複数組持つ場合の写真データ３０ｂの内容の一例を示している。内容的には図５３（ａ）（ｂ）に示すものを複数組備えている。
各組を１グループと呼ぶものとすると、図５７は写真データ３０ｂが複数グループを備える場合の処理を示すフローチャートである。まず、これまでは修整の指定を一つしか備えていないため、複数グループとして保存する必要がある。
【０１５７】
ステップ８００にて修整の対象とする画像データを選択したら、ステップ８０５では具体的に実行させるべき修整を指示し、ステップ８１０にて指示した修整を実行させる。むろん、ステップ８１０の画像修整はもとの画像ファイル３０ａを表すサムネールデータに対して実行させる。また、以上の指示の与え方については上述したものと同様である。
次に、ステップ８１５ではステップ８０５で与えた修整指示を保存するか否かをユーザーに問合せる。問い合わせはＧＵＩを使用してディスプレイ１７ａ上に表示させ、マウス１５ｂあるいはキーボード１５ａで応答せしめる。保存する場合はステップ８２０にて保存グループの指定を入力させる。予め５つの保存グループを選択できるようにしておき、そのいずれかをＧＵＩを介して入力せしめる。むろん、保存グループの数は任意であるし、上限を一定に決めることなく順番に追加することも可能である。
【０１５８】
保存グループが決定されたらステップ８３０で修整情報を書き込む。予めグループの数を決めておくときの一態様として、各グループに所定の場合を対応させるようにしても良い。例えば、グループ１はスライドショーの場合の修整処理であり、グループ２は印刷の場合の修整処理であるという具合である。また、各グループを選択するときにそのグループがスライドショーの場合のものであるとか印刷の場合のものであるというように個別に指定を加えられるようにしても良い。ステップ８２５はこのようにグループとそれを実行する条件を対応させる処理を表しており、必須のものではない。
【０１５９】
修整情報を書き込んだら、ステップ８４０ではサムネールデータも書き込む。
サムネールデータは各グループごとに必要であり、上述した写真データ３０ｂのデータベースファイルで拡張子がｄｂ２のものに書き加える。
以上のようにして複数のグループが登録されている場合の修整処理を図５８に示している。ここでは、図５４に示す修整処理の前提として、ステップ８５０にて複数グループの修整情報が保存されているか否かを判定し、複数グループがある場合にのみステップ８５５にていずれかのグループを選択させる。また、複数のグループがなければ存在するグループをステップ８６０にてデフォルト指定する。ステップ８５５あるいはステップ８６０にて一つのグループが修整情報として指定されるので、以下は図５７に示すステップ８００以下の処理を実行する。
【０１６０】
なお、この例ではパラメータ全体を複数セット用意しておいていずれかの組を選択している。しかし、必ずしも全体を複数セット用意するのではなく、一部の画像処理について複数の処理パターン用意しておくことも当然に可能である。例えば、図５３や図５６に示すものにおいて処理強度の欄を複数用意しておき、ステップ８２０にて保存グループを指定するのと同様にして設定する欄を指定する。また、読み出すときにはステップ８５０にて複数の欄に複数の値が設定されていればステップ８５５にて読み出す設定を選択させる。
【０１６１】
一方、上述したようにグループにそれを実行する条件を付して保存することがある。この場合は図５９に示すフローチャートに従って修整処理を実行する。すなわち、ステップ８７０にて複数グループがあるか否かを判断し、複数グループがあればステップ８７５にて現在の環境を取得する。この環境とは、上述したような条件に対応する。すなわち、現在、スライドショーを実行しているのか印刷処理を実行しているのかを所定の変数あるいはフラグを参照して判断する。参照する変数はどのようなものでもよく、一例としてグローバルな変数JOKEN
というものを設定しておいてもよい。現在の条件を取得したら、ステップ８８０にてこの条件に対応するグループを選択する。以下は、図５７に示すステップ８００以下の処理を実行する。
【０１６２】
このようにしておくと、修整処理を実行したときにその実行条件を設定しておくと、表示や印刷などの処理が起動されたときに自動的にその環境を判断し、予めその環境のために修整処理を設定してあれば自動的に該当する修整処理が行われる。例えば、スライドショーであると画像の修整中に本来の表示間隔を過ぎてしまうことのないようにする必要がある。従って、処理時間の短縮が望まれ、処理の簡素化が必須となる。これに対して印刷の場合は時間がかかってもきれいな画質を望むので、望みどおりの修整処理を実行させても構わない。
【０１６３】
このような背景からスライドショーの場合は自動画像修整ではなく、比較的処理の簡易な明るさとコントラストだけを修整するグループを登録しておき、印刷の場合は自動画像修整を実行するようにグループとして登録しておくということが有効である。
次に、図６０はこのような複数のグループを使用して履歴に利用する場合のフローチャートを示している。ステップ９００〜ステップ９１０は上述したステップ８００〜８１０の場合と同様に所定の画像データを選択して修整を実行させる。この後、ステップ９１５で修整指示を保存するか否かを選択させ、保存する場合にはステップ９２０にて最新修整情報のグループを追加する。例えば、既存のグループが３つであれば４つ目のグループとして保存する。また、このときに修整日時などを情報の一つとして加えておいても良い。そして、ステップ９２５ではステップ８４０等と同様に対応するサムネールデータを所定のデータベースファイルに追加する。
【０１６４】
履歴である以上、過去の修整の上に新たな修整が実行されなければならない。
図６１は履歴の修整情報がある場合の修整処理のフローチャートを示している。
まず、ステップ９３０ではグループの実行順にソートを実行する。通常は番号の大きいグループの方が新しい修整情報であり、必須ではない。しかし、仕様の変更もあり得るし、上述したように修整日時の情報を保存している場合もあるので、ソートを実行できるようにしておく意味がある。
【０１６５】
ソートが終わればステップ９３５にてグループ数を変数ｇ＿ｔｏｔａｌにセットし、ステップ９４０にてループポインタｉに「１」をセットする。そして、ステップ９４５ではループポインタｉで示されるグループｉの修整情報に基づいて修整処理を実行する。ループポインタｉはステップ９５０にて「１」ずつ追加されていくので、グループ番号の小さい順に修整処理が実行されることになり、古い順に履歴が再現されることになる。そして、ステップ９５５ではループポインタｉが既存のグループ数を越えていないか判断し、グループ数を越えていない限りは未処理の修整処理があるものとしてループを繰り返す。
【０１６６】
一方、これまでは修整処理として画像データの一部に対してのみ実行することを前提としていないが、むろん全体に対して実行される場合のみならず、一部に対して実行されるようにすることも可能である。ここで一部とは画像の一部の領域の場合もあり得るし、複数のレイヤから構成されていれば一部のレイヤだけということもあり得る。
図６２はこのような修整領域を指定して画像修整を実現する場合のフローチャートを示している。ステップ９６０で処理の対象となる画像データを選択したら、ステップ９６５で修整領域を指定してステップ９７０で修整指示を与え、ステップ９７５にて画像を修整する。領域の指定と修整の内容は適宜試行錯誤を繰り返すことが多いから、ステップ９６５〜ステップ９７５の処理の順番は相対的な実行順序を表しているに過ぎない。
【０１６７】
ステップ９８０にて修整指示を保存するか問い合わせ、保存するのであればステップ９８５にて領域の情報とともに修整指示を修整情報として保存する。
ただ、このようにして保存される修整領域は修整エンジンにとって一つのパラメータに過ぎないといえる。従って、図５５に示すように修整エンジンの側で領域やレイヤに対応して部分的に修整を加え、修整画像データとして出力する。
修整領域の指定を具体的な特定領域を指定して行なう場合、例えば、矩形領域であれば二つの対角コーナーの座標値を指示したり、あるいはオブジェクトごとに指示したり、任意の曲線で所望の領域を指示するといったことが可能である。
また、全体の中央領域とか、上半分とか、下半分といった指定でも構わない。
【０１６８】
一方、画像の色を指定して画像処理を対応づけることも可能である。例えば、明るさの影響受けにくい色度を指定して画像処理を対応づけることもできる。肌色の領域であればオブジェクトは人間の顔であることが殆どであると考えられ、人間の顔であればシャープにするよりもややぼかし気味の方が美しく見える。従って、領域情報の代わりに肌色の色度を指定し、修正指示としてシャープネスを減らす（ぼかす）指示を与える。そして、修整エンジンの側では処理対象画素の色度を識別し、対象となる色度であれば指示された処理強度のアンシャープ化を実施する。
【０１６９】
色度毎の他の例として、青空の色度を指定してアンシャープにさせることも好適である。また、夕焼けを考慮して赤みを強調する処理を指定することも好適である。
ここで、各画素の画像データが（Ｒ，Ｇ，Ｂ）で表されるとすると、色度は、 ｒ＝Ｒ／（Ｒ＋Ｇ＋Ｂ）
ｂ＝Ｂ／（Ｒ＋Ｇ＋Ｂ）
として表される。色度は人の肌が暗く写っているときも明るく写っているときもでもあまり影響を受けず、一定の分布を示し、より具体的には、
０．３３＜ｒ＜０．５１
｜０．７４ｒ＋ｂ−０．５７｜＜０．１
という関係式で判断できる。そして、各画素についてこの条件があてはめられれば肌色領域に属するものといえる。これが青空であると、肌色の場合よりも変動幅が大きいことを考慮して、
０．１７＜ｒ＜０．３０
｜１．１１ｒ＋ｂ−０．７０｜＜０．２
なる関係式が成立していればよい。
【０１７０】
このように画素の位置、画素の色などの画素の状況に応じて最適な画像処理を実施できるようにするため、画素の状況に対応したパラメータを関連付けて保存しておき、このパラメータを取得したときには画素の状況に対応した画像処理を実施して画像を再現する。
このように、画像データをフィルムメタファとして管理されるフォルダに収容しつつ、各画像データに対応した写真データ３０ｂのデータベースを用意しておき、所望の画像データについて所望の画像処理を選択すると、この選択した画像処理を上記データベース構造における修整情報として更新するようにし、実際に表示したり出力したり印刷する必要が生じたときには元の画像データを残したままワークエリア上でのみ修整情報を参照して各種の画像処理を実行するようにしたため、オリジナルとしての画像データを残したまま容易に画像修整などを実施することが可能となる。
【図面の簡単な説明】
【図１】
本発明の一実施形態にかかる画像データ処理装置のクレーム対応概略構成図である。
【図２】
同画像データ処理装置の具体的ハードウェアのブロック図である。
【図３】
同画像データ処理装置の機能ブロック図である。
【図４】
共通機能部のブロック図である。
【図５】
フィルムデータ管理部の機能ブロック図である。
【図６】
同フィルムデータ管理部が管理するデータ構造を示す概略説明図である。
【図７】
管理パラメータの変数宣言を示す図である。
【図８】
画像修整制御部の機能ブロック図である。
【図９】
画像修整制御を説明するための手続の流れを示す図である。
【図１０】
画像ファイルの構成を示す図である。
【図１１】
処理対象画素を移動させていく状態を示す図である。
【図１２】
輝度分布を拡大する場合の分布範囲を示す図である。
【図１３】
輝度分布を拡大させるための変換関係を示す図である。
【図１４】
輝度分布の端部処理と端部処理にて得られる端部を示す図である。
【図１５】
輝度分布を拡大する際の変換テーブルを示す図である。
【図１６】
γ補正で明るくする概念を示す図である。
【図１７】
γ補正で暗くする概念を示す図である。
【図１８】
γ補正で変更される輝度の対応関係を示す図である。
【図１９】
明るさの評価とγの対応関係を示す図である。
【図２０】
各色成分毎の特徴ベクトルとするための要素の抽出方法を示す図である。
【図２１】
彩度分布の集計状態の概略図である。
【図２２】
彩度と彩度強調指数との関係を示す図である。
【図２３】
画像の変化度合いを直交座標の各成分値で表す場合の説明図である。
【図２４】
画像の変化度合いを縦軸方向と横軸方向の隣接画素における差分値で求める場合の説明図である。
【図２５】
隣接する全画素間で画像の変化度合いを求める場合の説明図である。
【図２６】
画像データの一例を示す図である。
【図２７】
５×５画素のアンシャープマスクを示す図である。
【図２８】
自動画像調整の指定を行う際のフローチャートである。
【図２９】
手動画像調整の指定を行う際のフローチャートである。
【図３０】
トリミングの指定を行う際のフローチャートである。
【図３１】
回転の指定を行う際のフローチャートである。
【図３２】
修整取消の指定を行う際のフローチャートである。
【図３３】
修整された画像データを利用できるようにする処理のフローチャートである。
【図３４】
同時プリントの処理の操作画面を示す図である。
【図３５】
新たに画像データを取り込む際の操作画面を示す図である。
【図３６】
自動画像修整の処理を行う場合の操作画面を示す図である。
【図３７】
自動画像修整をデフォルトで実行するようにした場合の操作画面を示す図である。
【図３８】
トリミングの処理を行う場合の操作画面を示す図である。
【図３９】
回転の処理を行う場合の操作画面を示す図である。
【図４０】
自動画像調整の処理を行う場合の操作画面を示す図である。
【図４１】
手動画像調整の処理を行う場合の操作画面を示す図である。
【図４２】
修整取消の処理を行う場合の操作画面を示す図である。
【図４３】
プリント指定の処理を行う場合の操作画面を示す図である。
【図４４】
アルバム印刷の処理を行う場合の操作画面を示す図である。
【図４５】
印刷の処理を行う場合の操作画面を示す図である。
【図４６】
ＤＰＥ印刷制御部の機能ブロック図である。
【図４７】
ディレクトリ構造を示す図である。
【図４８】
ファイル構造の変形例を示す図である。
【図４９】
ファイル構造の他の変形例を示す図である。
【図５０】
ワーク画像ファイルの生成処理のフローチャートである。
【図５１】
ワーク画像ファイルの生成処理で使用する変数の定義例を示す図である。
【図５２】
サムネール表示処理のフローチャートである。
【図５３】
修整情報の内容を示す図である。
【図５４】
修整処理の一例のフローチャートである。
【図５５】
修整処理を示す概念図である。
【図５６】
複数の修整情報を持つ場合の内容を示す図である。
【図５７】
複数のグループで修整情報を持つ場合の修整操作のフローチャートである。
【図５８】
複数のグループで修整情報を持つ場合の修整処理のフローチャートの一部である。
【図５９】
グループを環境に対応させた場合の修整処理のフローチャートの一部である。
【図６０】
複数のグループで履歴の修整情報を持つ場合の修整操作のフローチャートである。
【図６１】
複数のグループで修整の履歴を実現する場合の修整処理のフローチャートである。
【図６２】
画像の一部に修整を加える場合の修整操作のフローチャートである。
【符号の説明】
１０…コンピュータシステム
１１ａ…スキャナ
１１ｂ…デジタルスチルカメラ
１１ｃ…ビデオカメラ
１２…コンピュータ本体
１２ａ…オペレーティングシステム
１２ｂ…ディスプレイドライバ
１２ｃ…プリンタドライバ
１２ｄ…アプリケーション
１３ａ…フロッピーディスクドライブ
１３ｂ…ハードディスク
１３ｃ…ＣＤ−ＲＯＭドライブ
１４ａ…モデム
１５ａ…キーボード
１５ｂ…マウス
１７ａ…ディスプレイ
１７ｂ…カラープリンタ
１８ａ…スピーカ
１８ｂ…マイク
２０…共通機能部
２０ａ…画像選択部
２０ｂ…表示指定部
２０ｃ…ファイル編集部
２０ｄ…検索部
２０ｅ…一括コメント部
２０ｆ…一括整理部
２０ｇ…画像処理部
２０ｈ…画像編集部
２０ｉ…サムネール作成部
２０ｊ…画像入力部
２０ｋ…画像出力部
２０ｍ…画像表示部
３０…フィルムデータ管理部
３０ａ…画像ファイル
３０ｂ…写真データ
３０ｃ…フィルムデータ
４０…画像修整制御部
４０ａ…画像特徴抽出部
４０ｂ…修整情報作成部
４０ｃ…修整指定部
５０…ＤＰＥ印刷制御部
５０ａ…印刷画像指定部
５０ｂ…フレーム指定部
５０ｃ…レイアウト指定部
５０ｄ…プリント指定部
５０ｅ…印刷スタイル作成部
５０ｆ…印刷画像処理部
６０…メイン制御部
６０ａ…環境設定部
６０ｂ…設定情報ファイル