JP2001056867A5 - - Google Patents

Download PDF

Info

Publication number
JP2001056867A5
JP2001056867A5 JP1999230994A JP23099499A JP2001056867A5 JP 2001056867 A5 JP2001056867 A5 JP 2001056867A5 JP 1999230994 A JP1999230994 A JP 1999230994A JP 23099499 A JP23099499 A JP 23099499A JP 2001056867 A5 JP2001056867 A5 JP 2001056867A5
Authority
JP
Japan
Prior art keywords
image
image data
processing
modification
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP1999230994A
Other languages
Japanese (ja)
Other versions
JP2001056867A (en
JP4032202B2 (en
Filing date
Publication date
Application filed filed Critical
Priority to JP23099499A priority Critical patent/JP4032202B2/en
Priority claimed from JP23099499A external-priority patent/JP4032202B2/en
Publication of JP2001056867A publication Critical patent/JP2001056867A/en
Publication of JP2001056867A5 publication Critical patent/JP2001056867A5/ja
Application granted granted Critical
Publication of JP4032202B2 publication Critical patent/JP4032202B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【書類名】 明細書
【発明の名称】 画像データ処理装置、画像データセットを記録した媒体、画像データ処理プログラムを記録した媒体および画像データ処理方法
【特許請求の範囲】
【請求項1】 画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段と、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段とを具備することを特徴とする画像データ処理装置。
【請求項2】 画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段とを具備することを特徴とする画像データ処理装置。
【請求項3】 画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段と、
取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現手段とを具備することを特徴とする画像データ処理装置。
【請求項4】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現手段とを具備することを特徴とする画像データ処理装置。
【請求項】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記パラメータは画像処理の種別あるいは程度を表すものであることを特徴とする画像データ処理装置。
【請求項】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記パラメータは画像処理の種別ごとに複数あることを特徴とする画像データ処理装置。
【請求項】 上記請求項1または請求項3のいずれかに記載の画像データ処理装置において、上記パラメータは複数保存可能であり、複数あるパラメータから選択的に実行可能であることを特徴とする画像データ処理装置。
【請求項】 上記請求項1〜請求項3、請求項および請求項のいずれかに記載の画像データ処理装置において、上記パラメータは、所定の順序通りに画像処理を行う為の実行順序情報を含むものであることを特徴とする画像データ処理装置。
【請求項】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記パラメータは選択可能な複数の組に分かれており、実行時に選択した組のパラメータに基づいて画像処理を実施することを特徴とする画像データ処理装置。
【請求項10】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記パラメータは複数の組に分かれており、画素の状況に対応したパラメータの組を使い分けることを特徴とする画像データ処理装置。
【請求項11】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記データ保存手段は、記憶領域を階層構造として区画化可能であり、上記画像データとパラメータをこの階層構造で区分けすることを特徴とする画像データ処理装置。
【請求項12】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記データ保存手段は、上記パラメータと共に上記画像データのサムネールデータを関連付けて保存することを特徴とする画像データ処理装置。
【請求項13】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記画像データは、上記パラメータとは異なる記憶装置上で管理されることを特徴とする画像データ処理装置。
【請求項14】 上記請求項1〜請求項3のいずれかに記載の画像データ処理装置において、上記パラメータ設定手段は、上記画像データを統計的に解析した結果に基づいて画像処理内容を設定することを特徴とする画像データ処理装置。
【請求項15】 上記請求項1または請求項3のいずれかに記載の画像データ処理装置において、上記画像処理再現手段は、上記パラメータが表す画像処理を実施する画像処理部を選択して実施させることを特徴とする画像データ処理装置。
【請求項16】 画像データと、
対応する画像データに対して所定の画像処理を実施することが可能なように同画像処理内容を表すパラメータと、
上記パラメータが表す画像処理の内容を上記画像データに実施することが可能なように上記画像データと上記パラメータを関連付ける関連付け情報とを記録した画像データセットを記録した媒体。
【請求項17】 コンピュータにて画像データに画像処理を実施させる画像データ処理プログラムを記録した媒体であって、
画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定ステップと、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存ステップと、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得ステップとを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項18】 コンピュータにて画像データに画像処理を実施させる画像データ処理プログラムを記録した媒体であって、
画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定ステップと、
上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存ステップとを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項19】 コンピュータにて画像データに画像処理を実施させる画像データ処理プログラムを記録した媒体であって、
画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、
上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得ステップと、
取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現ステップとを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項20】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る画像処理再現ステップを具備することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項21】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは画像処理の種別あるいは程度を表すものであることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項22】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは画像処理の種別ごとに複数あることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項23】 上記請求項17または請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは複数保存可能であり、複数あるパラメータから選択的に実行可能であることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項24】 上記請求項17〜請求項19、請求項22および請求項23のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは、所定の順序通りに画像処理を行う為の実行順序情報を含むものであることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項25】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは選択可能な複数の組に分かれており、実行条件に応じた組のパラメータに基づいて画像処理を実施することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項26】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータは複数の組に分かれており、画素の状況に対応したパラメータの組を使い分けることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項27】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記データ保存ステップでは、階層構造として区画化可能な記憶領域を利用し、上記画像データとパラメータをこの階層構造で区分けすることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項28】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記データ保存ステップでは、上記パラメータと共に上記画像データのサムネールデータを関連付けて保存することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項29】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記データ保存ステップと上記データ取得ステップでは、上記画像データを上記パラメータとは異なる記憶装置上で読み書きすることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項30】 上記請求項17〜請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記パラメータ設定ステップでは、上記画像データを統計的に解析し、その結果に基づいて画像処理内容を設定することを特徴とする画像データ処理プログラムを記録した媒体。
【請求項31】 上記請求項17または請求項19のいずれかに記載の画像データ処理プログラムを記録した媒体において、上記画像処理再現ステップでは、上記パラメータが表す画像処理を実施する画像処理プログラムを選択して実施させることを特徴とする画像データ処理プログラムを記録した媒体。
【請求項32】 画像データに実施する所定の画像処理の内容を表すパラメータを設定し、上記画像データと上記パラメータとを関連付ける関連付け情報を保存しつつ、
上記関連付け情報を参照して上記画像データと上記パラメータを取得することを特徴とすることを特徴とする画像データ処理方法。
【請求項33】 画像データに実施する所定の画像処理の内容を表すパラメータを設定し、上記画像データと上記パラメータとを関連付ける関連付け情報を保存することを特徴とする画像データ処理方法。
【請求項34】 画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、
上記関連付け情報を参照して上記画像データと上記パラメータを取得し、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得ることを特徴とする画像データ処理方法。
【請求項35】 上記請求項32に記載の画像データ処理方法において、取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得ることを特徴とする画像データ処理方法。
【請求項36】 上記請求項32に記載の画像データ処理方法において、上記パラメータと共に上記画像データのサムネールデータを関連付けて保存することを特徴とする画像データ処理方法。
【請求項37】 上記請求項32〜請求項34のいずれかに記載の画像データ処理方法において、上記画像データは、上記パラメータとは異なる記憶装置上で管理されることを特徴とする画像データ処理方法。
【請求項38】 上記請求項32〜請求項34のいずれかに記載の画像データ処理方法において、上記画像データを統計的に解析し、その結果に基づいて画像処理内容を設定することを特徴とする画像データ処理方法。
【請求項39】上記請求項32〜請求項34のいずれかに記載の画像データ処理方法において、上記パラメータが表す画像処理を実施する画像処理部を選択して実施させることを特徴とする画像データ処理方法。
【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は、画像データを適宜修整して利用可能な画像データ処理装置、画像データセットを記録した媒体、画像データ処理プログラムを記録した媒体および画像データ処理方法に関する。
【0002】
【従来の技術】
近年、デジタルスチルカメラが急速に利用されはじめている。ディジタルスチルカメラで撮影した場合、画像をデータとして管理できるようになり、修整などが簡単に行われるようになっている。例えば、画像が暗く写った場合に明るく修整するとか、空の色をより青くして美しくさせるということも、画像データであれば容易に行える。
【0003】
このような処理は画像処理として広く利用されているが、入力される画像データに処理を施せば新たな画像データとなり、これが元の記憶領域に上書きされていくことになる。
【0004】
【発明が解決しようとする課題】
上述した従来の画像データ処理装置においては、次のような課題があった。
まず、オリジナルの画像データが変更されてしまうが、オリジナルの画像データを重視するものにとっては利用しがたい。むろん、オリジナルの画像データを保存しておいた上で別名で保存するといった処理を行うことも可能であるが、煩雑であるし、必要な記憶領域が増えてしまう。また、そのような場合のオリジナルと修整後の画像データを個別に管理していくこと自体も極めて煩雑である。
【0005】
また、ある種の画像フォーマットにおいては書き換えを行うたびに画質が劣化していくものもあるため、この意味ではたとえ修整がわずかであっても画質は劣化してしまう。
本発明は、上記課題にかんがみてなされたもので、画像データのオリジナル性を確保しながらも、容易に画像処理した結果を参照することが可能な画像データ処理装置、画像データセットを記録した媒体、画像データ処理プログラムを記録した媒体および画像データ処理方法の提供を目的とする。
【0006】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段と、上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段とを具備する構成としてある。
【0007】
また、請求項2にかかる発明は、画像データに実施する所定の画像処理の内容を表すパラメータを設定するパラメータ設定手段と、上記画像データと上記パラメータとを関連付ける関連付け情報を保存するデータ保存手段とを具備する構成としてあるとともに、請求項3にかかる発明は、画像データに実施する所定の画像処理の内容を表すパラメータと同画像データとが相互の関連付け情報とともに保存されており、上記関連付け情報を参照して上記画像データと上記パラメータを取得するデータ取得手段とを具備する構成としてある。
【0008】
上記のように構成した請求項1にかかる発明においては、パラメータ設定手段にて画像データに実施する所定の画像処理の内容を表すパラメータを設定すると、データ保存手段は上記画像データと上記パラメータとを関連付ける関連付け情報を保存する。そして、データ取得手段にて上記関連付け情報を参照して上記画像データと上記パラメータを取得する。その後、請求項4に示す画像処理再現手段は取得された上記画像データと上記パラメータとに基づいて上記指定される画像処理を施した画像データを得る。
【0009】
すなわち、画像データに関連づけて画像処理内容を表すパラメータを記憶する。例えば、画像処理した場合でも元の画像データを変更せずにパラメータとして管理するようにし、必要なときにパラメータに基づいて画像処理した画像データを得る。そして、このような画像処理した結果を利用可能としながらも元の画像データはそのままにしておくことになる。
請求項2にかかる発明や請求項3にかかる発明は、この発明全体をそれぞれ部分的に実施している。
【0010】
また、上記のように構成した請求項においては、上記パラメータで画像処理の種別あるいは程度を表している。これにより、画像処理の内容をより具体的に示すようにしている。むろん、複数の画像処理の種別であるとか程度も表している。
さらに、上記のように構成した請求項にかかる発明においては、上記パラメータは画像処理の種別ごとに複数用意されているので、ある画像処理の種別において必ずしも一つの内容に限らず、複数の内容を残すことが可能となる。例えば、一つの画像処理がシャープネスを調整するものであるとして、シャープネスの強調度合いの強いものを表すパラメータと弱い強調度合いを表すパラメータとを保存し、再現時にいずれかを選択する。再現された画像データを印刷する場合、印刷装置の解像度によって最適なシャープネスの強調度合いが変化することもあり、このような場合に対応してパラメータを複数残しておくことも可能である。
【0011】
さらに、上記のように構成した請求項にかかる発明においては、複数保存可能なパラメータから選択的に実行可能である。これにより、例えば、画像処理に十分な時間を得られる場合と、極めて短時間に処理しなければならない場合に必ずしも同一の画質が要求されるとは言えないので、後者について低負荷で実現しうる画像処理を実施させるということが可能となる。従って、スライドショーの場合は、スライドショーの実行に即したパラメータに対応する画像処理が実行されるし、印刷を実行するときにはこれに対応するパラメータに即して画像処理が実行される。むろん、この選択は実行条件を決めておき、実行時にその条件に見合うものを選択して実行させるようにしても良いし、ユーザーが指定して行うようにしても良い。
【0012】
さらに、上記のように構成した請求項にかかる発明においては、複数のパラメータがあることを前提にしつつ、パラメータの実行順序情報をも備えることにより、当該実行順序情報に従って画像処理を行わせると、画像処理が時系列的に行われるのに対応し、各操作毎にパラメータを残しておけば、かかるパラメータは複数の時系列的な履歴を表すことになる。従って、途中の画像処理過程を忠実に経て再現することになる。むろん、必ずしもすべてを実行する必要はなく、途中で止めて再現過程を再現することも可能である。
【0013】
さらに、上記のように構成した請求項にかかる発明においては、パラメータが複数の組に分かれており、それぞれを任意に選択できるようにしてあり、実行時の状況に応じて選択した組のパラメータに基づいて画像処理を実施する。
すなわち、単に一通りの画像処理結果だけでなく、複数の画像処理結果から選択することを可能ならしめる。例えば、ディスプレイで表示するときに美しく表示させる画像処理と、印刷時に美しく印刷させる画像処理が異なることは多々ある。このような場合、ディスプレイでの表示のためのパラメータと、印刷のためのパラメータとをともに記憶できれば好都合だからである。また、出力先のみならず出力する大きさに対応したり、複数のユーザーが一つの画像データを共有する場合なども各大きさ毎やユーザー毎にパラメータの組を用意できて好適である。
【0014】
さらに、上記のように構成した請求項10にかかる発明においては、上記パラメータは複数の組に分かれており、画素の状況に対応した画像処理を適用する。すなわち、画像データに対して一律でなく適用し、例えば、画素の位置であるとか、画素の色に応じてパラメータの組を使い分ける。画素の位置としては画像の中央部分とか、予め指定された特定の範囲であるとか、上半分と下半分というように領域を区分してそれぞれに異なる組のパラメータを適用する。また、画素の色としては、肌色の領域や、空色の領域や、夕焼けの領域というように分ければ概ね被写体に応じた最適なパラメータを適用できることになる。
【0015】
さらに、上記のように構成した請求項11にかかる発明においては、記憶領域を階層構造として区画化し、上記画像データとパラメータをこの階層構造で区分けしており、区分けしたその区画自体でも関連づけを表すことになる。また、画像データとパラメータとの対応付けは、同じ区画にパラメータを記憶しても良いし、対応する階層構造を別の領域に設けて同パラメータを記憶するようにしてもよい。
【0016】
さらに、上記のように構成した請求項12にかかる発明においては、パラメータを対応づけるのと同列のレベルで予め小容量のサムネールを対応づけており、パラメータを管理するのと並行した処理でサムネールデータも管理できる。
さらに、上記のように構成した請求項13にかかる発明においては、上記画像データと上記パラメータとを異なる記憶装置上で管理している。例えば、複数の着脱可能な記憶領域において画像データを管理することもあり、この場合、記憶領域によっては必ずしも書き込み可能であるとは限らない。そこで、書き込み不能な記憶領域については、書き込み可能な記憶領域において上記パラメータを管理するということができる。
【0017】
また、書き込みは不能ではないものの、書き込みに不適な記憶領域というものもある。例えば、ネットワークを介して数人で共有することも多く、誰かが勝手に共有の画像データを書き換えてしまうのは避けるべきである。このような場合、書き込み不適な記憶領域としての共有領域とともに書き込み可能な記憶領域で画像データを管理しつつ、書き込みに不適な記憶領域の画像データについては書き込み可能な記憶領域において上記パラメータを管理する構成とする。むろん、ネットワークや共有領域以外にも同様の問題が生じることはあり、いずれの場合でも書き込みに適した記憶領域において上記パラメータを管理する。
【0018】
さらに、上記のように構成した請求項14にかかる発明においては、パラメータが表す画像処理の内容を、パラメータ設定手段が画像データを統計的に解析した結果に基づいて設定する。すなわち、自動処理化に対応する。
さらに、上記のように構成した請求項15にかかる発明においては、画像処理結果を再現するに際して行う画像処理は、画像処理再現手段がパラメータに基づいて対応する画像処理部を選択して実施させる。画像処理を実現する手段はコンピュータ上で実現する例を取っても様々な方法を選択可能であり、内部・外部を問うことなく選択させることによって実現しうる。より具体的にはバージョンの異なる画像処理に対応した画像処理部を選択したり、コンピュータのオペレーティングシステムなどが提供する画像処理部を選択して起動させたり、必要な画像処理部をネットワークなどから探し出してきて起動させることができる。
【0019】
このように画像データに対して画像処理を実施して変化させてしまうことなく、その画像処理内容を表すパラメータを関連付けて保存する手法は、必ずしも実体のある装置に限られる必要はなく、その方法としても機能することは容易に理解できる。すなわち、必ずしも実体のある装置に限らず、その方法としても有効であることに相違はない。
また、このような画像データ処理装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものである。従って、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。
【0020】
発明の思想の具現化例として画像データ処理装置のソフトウェアとなる場合には、かかるソフトウェアを記録した記録媒体上においても当然に存在し、利用されるといわざるをえないし、当該ソフトウェア自体としても発明は成立する。従って、本発明で叙述した媒体としての各発明は、それぞれ記録しているプログラム自体に一対一で対応するものである。
むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。その他、供給方法として通信回線を利用して行なう場合でも本発明が利用されていることにはかわりない。
【0021】
さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものではなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。
また、このようにして画像データを再現できるようになる上で、かかる画像データセットを記録した媒体は必要不可欠であり、本発明はこのような形態としても実現されうる。
【0022】
【発明の効果】
以上説明したように本発明は、画像データに画像処理を施すにあたって元の画像データを残しつつ画像処理結果を容易に利用することが可能な画像データ処理装置を提供することができる。
また、請求項2にかかる発明によれば、これを実現するために少なくともパラメータを画像データに関連付けさせた画像データセットを作成することができ、請求項3にかかる発明によれば、かかる画像データセットが存在すれば設定された所望の画像処理結果を再現できる。
【0023】
さらに、請求項にかかる発明によれば、画像処理の内容をより具体的に表すことができるようになる。また、これによって再現性もより確保しやすくなる。
さらに、請求項にかかる発明によれば、実質的に複数の対応の再現結果を用意でき、状況に応じた再現結果を選択することができる。
さらに、請求項にかかる発明によれば、実行条件などを顧慮して最適な画像処理結果を提供できるようになる。
【0024】
さらに、請求項にかかる発明によれば、実行順序を再現することによって不可逆的な画像処理によるバリエーションを増やしたり、画像処理過程を再現することが可能となる。
さらに、請求項にかかる発明によれば、個別に用意したパラメータだけで複数の画像処理結果を得られることになるため、ファイル容量をさほど増やすことなく、複数の画像データを提供することができる。
さらに、請求項10にかかる発明によれば、画素の状況に応じてより適切な画像処理を適用させることが可能となる。
【0025】
さらに、請求項11にかかる発明によれば、階層構造を利用して関連づけなどを容易にできるようになる。
さらに、請求項12にかかる発明によれば、サムネールデータを利用して処理の負担を軽減できる。
さらに、請求項13にかかる発明によれば、画像データの保存状況に即して最適な対応が可能であり、特に書き込み不能な領域や書き込みが好ましくない画像データとパラメータとの対応付けも実現できるようになる。
【0026】
さらに、請求項14にかかる発明によれば、パラメータの設定を自動化することが可能となる。
さらに、請求項15にかかる発明によれば、画像処理部を画像処理に対応して用意しておくことにより画像再現処理を簡易に実現でき、また、外部に存在する画像処理部なども容易に実施させることができるようになる。
さらに、請求項16にかかる発明によれば、同様の効果を奏することが可能な画像データセットを記録した媒体を提供でき、請求項17〜請求項31にかかる発明によれば、同様の効果を奏することが可能な画像データ処理プログラムを記録した媒体を提供でき、請求項32〜請求項39にかかる発明によれば、画像データ処理方法を提供できる。
【0027】
【発明の実施の形態】
<第一の実施例>
以下、図面にもとづいて本発明の実施形態を説明する。
図1は、本発明の一実施形態にかかる画像データ処理装置を対応概略構成図により示している。
デジタルスチルカメラなどで撮影した画像データは、コンピュータなどの外部記憶装置などを利用して管理することになる。かかる外部記憶装置などに該当するデータ保存手段A1はこれらの複数の画像データとともにそれぞれに対応するパラメータを関連づけて記憶し、コンピュータによるデータベース管理などによって適宜変更、追加、削除などといった管理が行われる。
【0028】
このような管理を行うため、データ保存手段A1には、画像データ記憶領域A11とパラメータ記憶領域A12と関連付け情報記憶領域A13が確保されている。画像データ記憶領域A11には画像データが記憶されるが、一括したデータベース構造としても良いし、それぞれ個別のファイルを格納する領域としてもよい。パラメータ記憶領域A12は個別の画像データに対する画像処理の指示を示す情報であり、画像データと比べると比較的容量は小さい。この場合も、一括したデータベース構造としても良いし、それぞれ個別のファイルを生成してもよい。関連付け情報記憶領域A13はパラメータ記憶領域A12に記憶されるパラメータと画像データ記憶領域A11に記憶される画像データとを関連づける関連付け情報が記録される。このように関連させる手法は様々であり、一例としてパラメータのデータベース構造を形成しつつその索引情報として構成すれば、パラメータ記憶領域A12と関連付け情報記憶領域A13とは不可分一体的に実現される。なお、画像データ記憶領域A11については着脱自由な記録メディア等も当然に含まれるし、また、物理的に画像データ記憶領域A11とパラメータ記憶領域A12と関連付け情報記憶領域A13とが同一の装置である必要はない。さらに、画像データ記憶領域A11が複数の装置などからアクセスされる共有領域であっても良い。
【0029】
また、コンピュータ自身における入出力機器およびコンピュータ自身の演算結果によって実現されるパラメータ設定手段A2によって画像データの管理操作あるいは演算などによって画像処理の内容を表すパラメータを設定すると、このデータ保存手段A1はデータベース管理を介して対応するパラメータと画像データとを関連付けて管理処理を実行することになり、この際に関連付け情報が生成される。このパラメータ設定手段A2は結果的にパラメータを生成するものであり、GUIを介してユーザーからの画像処理の指示を受け付けてパラメータを設定する場合や、画像データを独自に検査して所定の目的に添う画像処理を実現するパラメータを設定する場合を含んでいる。関連付け情報は、様々なものを利用でき、対応テーブルを用意しても良いし、ファイル名を関連させても良いし、保存領域を一致させるなどして関連付けるものであってもよい。
【0030】
このようにして上記データ保存手段A1には、画像データとそれに実施すべき画像処理の内容を表すパラメータが関連付け情報によって関連づけがなされて保存されることになる。そして、データ取得手段A4は、このデータ保存手段A1は関連付け情報記憶領域A13の情報に基づいて対応する画像データとパラメータとを画像データ記憶領域A11とパラメータ記憶領域A12とから取得し、画像処理再現手段A3に出力する。このデータ取得手段A4も一般的にはGUIを介してユーザーからの画像選択の指示を受け付けて取得する画像データを特定することになるが、特定する方法はこれに限られない。例えば、コンピュータなどでは外部のアプリケーションから所定の引数を与えられて対象とする画像データを特定され、これによって画像データを特定して取得しつつ画像処理再現手段A3に引き渡すことも可能である。また、画像データを取得する態様は具体的なハードウェアによって変化し、メモリ上に展開されている状態で単に画像データを変数にセットするだけのような場合でも取得したものと同視できる。
【0031】
画像処理再現手段A3はパラメータに対応した修整処理を実現するものであり、複数の修整エンジンA31〜A3nを備える。各修整エンジンA3xは画像データとパラメータが与えられたときに同パラメータが表す各修整エンジンA3xに応じた修整を同画像データに施して新たに修整画像データを生成し、これを出力する。ここで画像データはオリジナルとして扱われ、修整画像データは新たに生成される。むろん、新たに生成した画像データによってオリジナルの画像データを上書きすることは自由であり、データ保存手段A1における画像データ記憶領域A11に上書き保存してもよい。修整エンジンA31〜A3nは数種の変換結果が得られるという意味で複数存在するように表示しているが、実質的に一つの修整エンジンであってパラメータ次第で数種の変換結果が得られるものであっても良いし、個別の修整エンジンを用意してそれぞれ別個に変換結果が得られるものであっても良い。また、修整エンジンA31〜A3nはアプリケーション自体が内部に備えるものに限らず、外部に存在する修整エンジンA31〜A3nを選択するものであっても良い。
【0032】
なお、データ保存手段A1やパラメータ設定手段A2や画像処理再現手段A3やデータ取得手段A4は単独のハードウェアでのみ実現可能なものではなく、汎用的なコンピュータシステム10を利用して実現することが可能であり、そのようにソフトウェアで上記構成を実現する場合はそれぞれがデータ保存ステップA1、パラメータ設定ステップA2、データ取得ステップA4、画像再現処理ステップA3として実現される。
【0033】
本実施形態においてはこのような画像データ処理装置を実現するハードウェアの一例としてコンピュータシステム10を採用している。
図2は、同コンピュータシステム10をブロック図により示している。
本コンピュータシステム10は、画像データを直接的に入力する画像入力デバイスとして、スキャナ11aとデジタルスチルカメラ11bとビデオカメラ11cとを備えており、コンピュータ本体12に接続されている。それぞれの入力デバイスは画像をドットマトリクス状の画素で表現した画像データを生成してコンピュータ本体12に出力可能となっており、ここで同画像データはRGBの三原色においてそれぞれ256階調表示することにより、約1670万色を表現可能となっている。
【0034】
コンピュータ本体12には、外部補助記憶装置としてのフロッピーディスクドライブ13aとハードディスク13bとCD−ROMドライブ13cとが接続されており、ハードディスク13bにはシステム関連の主要プログラムが記録されており、フロッピーディスクやCD−ROMなどから適宜必要なプログラムなどを読み込み可能となっている。
また、コンピュータ本体12を外部のネットワークなどに接続するための通信デバイスとしてモデム14aが接続されており、外部のネットワークに同公衆通信回線を介して接続し、ソフトウェアやデータをダウンロードして導入可能となっている。この例ではモデム14aにて電話回線を介して外部にアクセスするようにしているが、LANアダプタを介してネットワークに対してアクセスする構成とすることも可能である。
【0035】
ここで、外部補助記憶装置のうち、フロッピーディスクドライブ13aやCD−ROMドライブ13cについては、記録媒体自身が交換可能であり、この記録媒体に画像データが記録された状態で供給されることにより、画像入力デバイスの一手段ともなりうる。また、モデム14aやLANアダプタを介してネットワークにアクセスした場合、このネットワークから画像データが供給されることもあり、このような場合も画像入力デバイスの一手段となりうる。なお、ネットワークにアクセスするのは、データを取得する場合に限らず、プログラムの一部や、外部的に起動可能な別プログラムを取得する場合もある。これにより、修整エンジンの一部あるいは全部を外部から取得したり、外部にあるものに実行を委ねるということも可能である。
【0036】
この他、コンピュータ本体12の操作用にキーボード15aやポインティングデバイスとしてのマウス15bも接続され、さらに、マルチメディア対応のためにスピーカ18aやマイク18bを備えている。
さらに、画像出力デバイスとして、ディスプレイ17aとカラープリンタ17bとを備えている。ディスプレイ17aについては水平方向に800画素と垂直方向に600画素の表示エリアを備えており、各画素毎に上述した1670万色の表示が可能となっている。むろん、この解像度は一例に過ぎず、640×480画素であったり、1024×768画素であるなど、適宜、変更可能である。
【0037】
また、印刷装置としてのカラープリンタ17bはインクジェットプリンタであり、CMYKの四色の色インクを用いて記録媒体たる印刷用紙上にドットを付して画像を印刷可能となっている。画像密度は360×360dpiや720×720dpiといった高密度印刷が可能となっているが、階調表限については色インクを付すか否かといった2階調表現となっている。色インクについては、かかる四色のものに限らず、色の薄いライトシアンやライトマゼンタを加えた六色によってドットの目立ちを低減させることも可能であるし、インクジェット方式に限らずカラートナーを利用した静電写真方式などを採用することも可能である。
また、印刷装置は必ずしもカラープリンタである必要はなく、白黒のプリンタであっても良い。後述するように白黒再現においてはそれに応じた最適な画像処理がありえるし、かかる画像処理を画像データに施してしまうと再度カラーで再現したい場合には不都合なことが生じる。しかしながら、本発明においては、あくまでも元の画像データは残されることになり、そのような画像処理も容易に実行してしまうことが可能となる。
【0038】
一方、このような画像入力デバイスを使用して画像を入力しつつ、画像出力デバイスに表示あるいは出力するため、コンピュータ本体12内では所定のプログラムが実行されることになる。そのうち、基本プログラムとして稼働しているのはオペレーティングシステム(OS)12aであり、このオペレーティングシステム12aにはディスプレイ17aでの表示を行わせるディスプレイドライバ(DSP DRV)12bとカラープリンタ17bに印刷出力を行わせるプリンタドライバ(PRT DRV)12cが組み込まれている。これらのドライバ12b,12cの類はディスプレイ17aやカラープリンタ17bの機種に依存しており、それぞれの機種に応じてオペレーティングシステム12aに対して追加変更可能である。また、機種に依存して標準処理以上の付加機能を実現することもできるようになっている。すなわち、オペレーティングシステム12aという標準システム上で共通化した処理体系を維持しつつ、許容される範囲内での各種の追加的処理を実現できる。
【0039】
むろん、このようなプログラムを実行する前提として、コンピュータ本体12内にはCPU12eとRAM12fとROM12gとI/O12hなどが備えられており、演算処理を実行するCPU12eがRAM12fを一時的なワークエリアや設定記憶領域として使用したりプログラム領域として使用しながら、ROM12gに書き込まれた基本プログラムを適宜実行し、I/O12hを介して接続されている外部機器及び内部機器などを制御している。
【0040】
この基本プログラムとしてのオペレーティングシステム12a上でアプリケーション12dが実行される。アプリケーション12dの処理内容は様々であり、操作デバイスとしてのキーボード15aやマウス15bの操作を監視し、操作された場合には各種の外部機器を適切に制御して対応する演算処理などを実行し、さらには、処理結果をディスプレイ17aに表示したり、カラープリンタ17bに出力したりすることになる。
【0041】
かかるコンピュータシステム10では、画像入力デバイスであるスキャナ11aなどで写真などを読み取って画像データを取得することができる他、デジタルスチルカメラ11bで撮影した画像データを取得したり、ビデオカメラ11cで撮影した動画としての画像データを取得することができる。また、予め撮影された各種の画像データがCD−ROMソフトとして提供されることも多々あるし、予め画像データを一つの記憶領域に保存しておいた上で複数の人間がネットワークを介してアクセスすることも多い。
【0042】
デジタルスチルカメラ11bで撮影した画像データはハードディスク13bにまとめて保存しておくことが多く、このような画像データはディスプレイ17a上で鑑賞して楽しむばかりでなく、カラープリンタ17bで出力して楽しむことも多い。画像データの利点として、写りが悪くても容易に修整できる点がある。
すなわち、カラープリンタ17bで印刷するにあたって元の画像データのままでは写りが悪いなど、フォトレタッチなどで修整が行われる。このようにして、画像データの管理と画像の修整を行なう画像データ処理装置の必要性が生じ、アプリケーション12dとコンピュータシステム10とが有機一体化して画像データ処理装置を実現することになる。
【0043】
この意味で、画像データ処理ソフトであるアプリケーション12dは、デジタルスチルカメラ11bで撮影された画像データをハードディスク13bに記憶して管理したり、CD−ROMドライブ13cを介してCD−ROMによって供給される画像データを適宜入力できるようにして管理しつつ、後述するようにパラメータも併せて管理する。従って、この意味で関連するソフトウェアとハードウェアとによってデータ保存手段A1を構成する。
【0044】
また、このようにして記憶されている画像データについては、アプリケーション12dによって処理対象を特定した上で上述したような対応するパラメータと共に内部の画像処理ルーチンによって画像処理することになり、この意味で関連するソフトウェアとハードウェアとによって画像処理再現手段A3を構成する。
そして、アプリケーション12dは、オペレーティングシステム12aを介してキーボード15aやマウス15bの操作を入力しつつ所定の対応画面を生成してディスプレイ17a上に表示するが、このようなGUI処理を経て対象とする画像データを選定し、実行する画像処理を特定していくという意味で関連するソフトウェアとハードウェアとによってパラメータ設定手段A2を構成する。さらに、既に保存されている画像データを読み出したときに予め特定しておいた画像処理を実行可能とするようにパラメータを読み込む意味で関連するソフトウェアとハードウェアとによってデータ取得手段A4を構成する。
【0045】
なお、このようなソフトウェアは、ハードディスク13bに記憶されており、コンピュータ本体12にて読み込まれて稼働する。また、導入時にはCD−ROM13c−1であるとかフロッピーディスク13a−1などの媒体に記録されてインストールされる。従って、これらの媒体は画像データ処理プログラムを記録した媒体を構成する。
図3は上記画像データ処理ソフトによる制御内容をブロック化して表しており、各種の総合的な制御を行うメイン制御部60と、各種の共通的な制御を行う共通機能部20と、画像データの管理を行うフィルムデータ管理部30と、各画像データについて画像修整を実行する画像修整制御部40と、一連の印刷処理を実行するDPE印刷制御部50から構成されている。
【0046】
メイン制御部60は、後述する各種フローを適宜選択して実行するものであり、その他、他に分類されない各種の機能も実行する。そのうちの一つが環境設定部60aであり、本画像データ処理ソフトにおいて共通の設定などを設定情報ファイル60bとしてハードディスク13b上に記録し、適宜他の機能部から読み出し可能としている。この設定情報ファイル60bは、各種のデフォルト指定、例えば、新たな画像データの取り込み元の指定であるとか、後述するような印刷処理で次回に引き継ぐためのページのパラメータであるといったような類のものが記録されることになる。
【0047】
共通機能部20については、図4にその詳細ブロックを示しており、そのいくつかは他の機能部からも共通して呼び出せるようになっている。例えば、画像選択部20aはサムネール作成部20iにて各画像データについてサムネールを作成させつつ画像表示部20mにてディスプレイ17aに複数のサムネール画像を表示させ、その状態でキーボード15aやマウス15bによる選択操作を受け付けることによって各画像についての選択の有無を入力する。むろん、選択操作に伴って表示を変えたりする場合には適宜画像表示部20mにて表示を変更させるし、選択の結果は他の機能部に受け渡すことになる。また、表示指定部20bは画面上での表示を指定するものであり、GUI操作に応じてウィンドウ領域の大きさなどを変更したときに対応して画像の表示を適宜指定することになる。
【0048】
ファイル編集部20cは画像データの保存領域を適宜変更する操作などを実行し、検索部20dは画像ファイルと併せて管理されるパラメータに基づいてコメントであるとか日付などによって検索を実行するものである。一括コメント部20eでは複数の画像データに対するコメント付けを一括して処理するものであり、一括整理部20fは画像データやパラメータを一括して同時に処理するものである。
【0049】
画像処理部20gと画像編集部20hは、画像修整制御部40が主に画像処理の自動実行をするにあたって各種のパラメータを生成するのに対して、実際に画像処理を実行する部分であり、さらに手動にて指定される画像処理も実行する。
この処理結果は原則的に仮のデータとして扱われ、実際の処理時にオリジナル画像データに変更を加える指定がなされている場合は元の画像データに反映される。また、表示や処理時間の便宜上から必ずしも元の画像データに基づいて実行する必要はなく、操作中はサムネールの画像データに基づいて画像処理部20gや画像編集部20hが各種の処理を実行する。
【0050】
画像入力部20jは画像データの記憶領域がファイル編集部20cによって既に登録されている場合に、画像処理や印刷処理の際に同画像データを読み込んでくる処理を行い、また、画像データとして各種のデータフォーマットが存在するのに対応し画像出力部20kは形式を変換して出力するといった処理を実行する。
次に、フィルムデータ管理部30について説明する。図5は、本フィルムデータ管理部30が管理する画像データである画像ファイル30aと、パラメータを含む写真データ30bと、画像データのグループ化において利用するフィルムデータ30cの管理構造をブロック図により示している。ここで、画像データはコンピュータシステム10においてファイルとして扱われることにより、画像ファイルとして示しているし、パラメータはそれぞれの画像データに対応する各種の情報とともに写真データ30bとして示している。また、フィルムデータ30cは画像データをグループ化して管理するための情報であり、図6にはフィルムメタファとして示している。ここで写真データ30bのデータベースは、コンピュータシステム10上における書き換え可能な記憶領域に保存されるものとし、また、複数存在するフィルムメタファに関わらず一定の領域に保存される。むろん、物理的に複数のデータベースとすることは可能であるが、要は必ずしも画像データが現実に記憶されている媒体に形成される必要はないということである。
【0051】
同図では、画像ファイルの物理的記録形態を同図の左方に示しており、オペレーティングシステム12aによってフォルダ単位で階層構造が形成され、各フォルダの中に画像ファイルを記憶するようになっている。本実施形態における画像データのグループ化は、物理的にはまさにこのフォルダ単位の階層構造を利用しており、このフォルダ単位で情報を付加して管理している。すなわち、フィルムデータ30cを構成する最低限の情報は、任意につけることが可能なフィルム名、このフォルダの物理的配置情報としての実際の記憶領域を示すリンク先、作成した日付、コメント、媒体属性、媒体ラベル、フィルム属性、収容画像ファイル数などである。また、図に示すように各フォルダは管理上においてフィルムのパトローネと同視しており、別の視点からすれば実際の記憶領域を個別に意識することなくパトローネとして同一視してしまうので、エリアス管理にも近くなっている。なお、パトローネには物理的な記憶領域が交換可能な媒体であるか否かを示すマークを表示して利用者に分かりやすくしている。すなわち、画像ファイルがCD−ROMによって供給されているような場合は交換可能であるが、この場合はCD−ROMを交換することによって実際のCD−ROMドライブ13cに装着されていない場合もあり得る。このような場合にそのCD−ROMが装着されていなければ非表示としまうのではなく、フィルムデータ30cとして登録した以上は同データに基づいて表示が行われるし、その場合には交換可能なマークがあることによって操作者はCD−ROMをセットしなければ参照できないことが容易に理解できるようになる。
【0052】
この例では、交換可能なマークを示しているだけであるが、このようなマークを適宜変更して情報を表示するようにしても良い。例えば、交換可能な記憶領域であるとしてそのCD−ROMが装着されている場合と装着されていない場合とでマークを変えても良い。また、ネットワークで複数人が共有する記憶領域に画像データが保存されている場合には、各人で勝手に書き換えてしまうと収拾がつかなくなるため、ネットワークドライブを表すマークを表示するようにしても良い。むろん、ネットワークドライブであれば書き込み可能であっても書き込み不能の扱いをするようにしても良い。なお、マークを変化させるのではなく、パトローネ自体の形状を変更するようにしても良い。
【0053】
写真データ30bの具体的構成は、図5および図6に示している。ここで、索引情報はファイル名とファイル日時とファイルサイズと撮影日時とから構成されており、画像ファイルを縮尺したサムネールデータをサムネールとして表示している。コメントは各画像ファイル毎に付すことができるようにしており、表示順序などを表す整理情報や、実際の記憶領域を示す位置情報や、マイク18bなどを介して付された音声情報とともに写真データ30bを構成している。
【0054】
さらに、写真データ30bは修整情報と特徴情報と色合せ情報も備えている。
上述したように本画像データ処理ソフトでは画像データの管理と画像の修整を行なうが、画像の修整によって元の画像データを直に変更してしまうのではなく、これらのパラメータによって修整する指針だけを修整情報として管理し、これに併せて特徴情報や色合わせ情報を管理できるようにしている。図7は修整情報を管理するための具体的な変数宣言例を示しており、トリミングに関する修整情報を表すトリミング開始X座標(m_x1)とトリミング開始Y座標(m_y1)とトリミング終了X座標(m_x2)とトリミング終了Y座標(m_y2)と、回転処理を実行する場合の回転角度(m_nRotation)と、自動画像修整(m_nApf)と、赤成分の強調度(m_nRed)と、緑成分の強調度(m_nGreen)と、青成分の強調度(m_Blue)と、明るさ成分の強調度(m_nBrightness)と、コントラストの強調度(m_nContrast)とから構成されている。
【0055】
ここで、本画像データ処理ソフトで実行可能な画像処理、特に自動画像修整にについて説明する。自動画像修整において核となるのは図8に示す画像修整制御部40であり、画像特徴抽出部40aが画像データに基づいて画像の特徴を抽出すると、修整情報作成部40bが修整に必要なパラメータを作成し、修整指定部40cは同パラメータを使って上述した画像処理部20gに対して実際の処理を実行させることになる。
【0056】
図9はこの画像修整制御部40が実行する概略の手続の流れを模式的に示しており、以下にこの流れを参照しつつ自動画像修整処理について説明する。
手順1では画像データを入力する。画像データはオペレーティングシステム12aを介して読み込み、所定のワークエリアに保存する。ただし、既にサムネールデータを作成してある場合には、写真データ30bの中からサムネールデータを読み込んで画像データとする。特徴抽出は画像データの各画素についての集計処理であるため、画素の量に応じて演算時間は変化する。サムネールデータを使用するのはこのような画素の量の圧倒的な差異を考慮したものであり、本来の画像データを使用する場合に比べて処理時間を短くすることができる。なお、画像データ自体は一つのファイルであり、図10に示すように先頭部分に画像のサイズであるとか色数などのプロファイルデータを備えるとともに、その後には個々の画素についてRGB256階調で表現するべく3バイトのエリアが画素数分だけ確保されている。
【0057】
画像データをワークエリアに読み込んだら、手順2〜4にて図11に示すようにして対象画素を移動させつつ同対象画素の画像データについて加工を行って集計処理を行う。集計処理の内容は画像の特徴量に応じて様々であるが、本実施形態においては、「コントラスト」、「明度」、「カラーバランス」、「彩度」、「シャープネス」の5つの特徴量を得るための集計処理を行う。また、全画素について集計処理を終えたら、手順5では集計結果に基づいて特徴量を算出する。
以下、これらの集計処理とともにそれに基づいて導出する特徴量について説明する。
【0058】
コントラストは画像全体としての輝度の幅を示し、コントラストを修整したいと感じる場合、コントラストの幅を広げたいという要望が主である。ある画像の各画素における輝度の分布をヒストグラムとして集計したものを図12で実線にて示している。実線に示す分布を取る場合、明るい画素の輝度と暗い画素の輝度との差が少ないが、輝度の分布が一点鎖線に示すように広がれば明るい画素の輝度と暗い画素の輝度との差が大きくなり、コントラストの幅が広がることになる。ここで、図13はコントラストを拡大するための輝度変換を示している。変換元の輝度yと変換後の輝度Yとの間において、
Y=ay+b
なる関係で変換させるとすると、変換元の最大輝度Ymaxと最小輝度Yminの画素の差はa>1の場合において変換後において大きくなり、図12に示すように輝度の分布が広がることになる。従って、このようなヒストグラムを作成するとして輝度の最大値から輝度の最小値までの間隔をコントラストの幅として集計処理することが必要である。ただし、この場合はあくまでも輝度の変換であり、画像データが輝度を要素として備えていれば直接に集計が可能であるが、上述したように画像データはRGB256階調で表現されてているので、直接には輝度の値を持っていない。輝度を求めるためにLuv表色空間に色変換する必要があるが、演算量などの問題から得策ではないため、テレビジョンなどの場合に利用されているRGBから輝度を直に求める次式の変換式を利用する。
y=0.30R+0.59G+0.11B
すなわち、対象画素を移動させながら各画素の画像データである3バイトを読み込み、同式に基づいて輝度yを演算する。この場合、輝度yも256階調であらわすものとし、演算された輝度yに対する度数を1つずつ加えていくことになる。なお、白黒への変換はこの輝度を利用すればよく、求められた輝度の階調値をRGBの各成分値に一致させることで実現する。また、セピア調などの単色カラーについては輝度の階調値を求めた後でRGBの成分比に応じてRGBの各成分値を求めればよい。
【0059】
このようにして輝度分布のヒストグラムを得るのが手順2の画像データ集計処理であり、このヒストグラムに基づいて手順5の特徴量抽出処理では輝度分布の両端を求める。写真画像の輝度分布は図14に示すように概ね山形に表れる。むろん、その位置、形状についてはさまざまである。輝度分布の幅はこの両端をどこに決めるかによって決定されるが、単に裾野が延びて分布数が「0」となる点を両端とすることはできない。裾野部分では分布数が「0」付近で変移する場合があるし、統計的に見れば限りなく「0」に近づきながら推移していくからである。
【0060】
このため、分布範囲において最も輝度の大きい側と小さい側からある分布割合だけ内側に寄った部分を分布の両端とする。本実施形態においては、同図に示すように、この分布割合を0.5%に設定している。むろん、この割合については、適宜、変更することが可能である。このように、ある分布割合だけ上端と下端をカットすることにより、ノイズなどに起因して生じている白点や黒点を無視することもできる。すなわち、このような処理をしなければ一点でも白点や黒点があればそれが輝度分布の両端となるので、255階調の輝度値であれば、多くの場合において最下端は階調「0」であるし、最上端は階調「255」となるが、上端部分から0.5%の画素数だけ内側に入った部分を端部とすることにより、このようなことが無くなる。そして、実際に得られたヒストグラムに基づいて画素数に対する0.5%を演算し、再現可能な輝度分布における上端の輝度値と下端の輝度値から順番に内側に向かいながらそれぞれの分布数を累積し、0.5%の値となった輝度値が最大輝度Ymaxと最小輝度Yminとなる。
【0061】
輝度分布の幅Ydifは最大輝度Ymaxと最小輝度Yminの差であり、
Ydif=Ymax−Ymin
となる。
コントラストを拡大する画像処理としては、輝度の分布に応じて傾きaとオフセットbを決定すればよい。例えば、
a=255/(Ymax−Ymin)
b=−a・Yminあるいは255−a・Ymax
とおくとすると、せまい幅を持った輝度分布を再現可能な範囲まで広げることができる。ただし、再現可能な範囲を最大限に利用して輝度分布の拡大を図った場合、ハイライト部分が白く抜けてしまったり、ハイシャドウ部分が黒くつぶれてしまうことが起こる。これを防止するには再現可能な範囲の上端と下端に拡大しない範囲として輝度値で「5」ぐらいを残すようにすればよい。この結果、変換式のパラメータは次式のようになる。
a=245/(Ymax−Ymin)
b=5−a・Yminあるいは250−a・Ymax
そして、この場合にはY<Yminと、Y>Ymaxの範囲においては変換を行わないようにするとよい。
【0062】
また、このように変換するにあたって、毎回計算する必要はない。輝度の範囲が「0」〜「255」という値をとるとすれば、各輝度値について予め変換結果を予めておき、図15に示すように変換テーブルを形成しておく。ただ、この場合はあくまでも輝度の変換であり、RGB256階調の画像データの適用については別に考える必要がありそうである。しかしながら、実際には、変換前の画像データ(R0,G0,B0
)と変換後の画像データ(R1,G1,B1 )との間には輝度と同じ変換関係を適用可能であり、
R1=aR0+b
G1=aG0+b
B1=aB0+b
なる関係で求めることができるから、結果として図15に示す変換テーブルを利用して変換すればよいことが分かる。
【0063】
すなわち、手順5にて特徴抽出する作業は上述した最大輝度Ymaxと最小輝度Yminを求める作業が該当するし、手順6の修整情報作成処理ではこれらから輝度分布の幅Ydifを求めつつ変換式のパラメータa,bを求めて変換テーブルを作成する処理が該当する。そして、手順7の修整指定処理ではこのような変換テーブルを指定して変換前の画像データ(R0,G0,B0
)から変換後の画像データ(R1,G1,B1 )を生成させることになる。
【0064】
次に、明度について説明する。ここでいう画像の特徴量としての明度は画像全体の明暗の指標を意味しており、上述したヒストグラムから求められる分布の中央値(メジアン)Ymedを使用する。従って、この場合における集計処理は手順2にてコントラストのための集計処理と同時に行われる。
一方、手順5にて特徴量を分析する際には明度の理想値であるYmed_targetとの差(Ymed_target−Ymed)を算出すればよい。なお、理想値Ymed_targetの実際の値は「106」を使用するが、固定的なものではない。また、好みを反映して変更できるようにしても良い。
【0065】
この特徴量を利用して明度を修整する場合は次のようにする。中央値Ymedが理想値Ymed_targetと比較して大きいか小さいかで画像が明るいか否かを評価できる。例えば、中央値Ymedが「85」であるとすれば理想値Ymed_targetの「106」よりも小さいので、第一次的に「暗い」と評価されるし、第二次的に暗さの程度は「106−85」と数値的に表現される。
【0066】
図16は輝度のヒストグラムを示しているが、実線で示すように輝度分布の山が全体的に暗い側に寄っている場合には波線で示すように全体的に明るい側に山を移動させると良いし、逆に、図17にて実線で示すように輝度分布の山が全体的に明るい側に寄っている場合には波線で示すように全体的に暗い側に山を移動させると良い。このような場合には図13に示すような直線的な輝度の変換を施すのではなく、図18に示すようないわゆるγ曲線を利用した輝度の変換を行えばよい。
【0067】
γ曲線による補正ではγ<1において全体的に明るくなるし、γ>1において全体的に暗くなる。上の例では中央値Ymedが「21」上がれば理想値Ymed_targetと一致することになるが、γ曲線を利用してぴったりと「21」上げるというのは容易ではない。このため、図19に示すように評価値である(Ymed_target−Ymed)について「5」刻み毎に対応するγの値を設定しておけばよい。この例では評価値の変動量「5」に対応してγの値を「0.05」ずつ変動させているが、両者の対応関係を適宜変更可能であることはいうまでもない。
【0068】
また、コントラストの修整の場合と同様に自動的にγの値を設定することも可能である。例えば、
γ=Ymed/106
あるいは、
γ=(Ymed/106)**(1/2)
としてγの値を求めるようにしてもよい。むろん、γ曲線による輝度の変換についても図15に示すような変換テーブルを形成しておけばよい。
すなわち、手順5にて特徴抽出する作業は中央値Ymedを求める作業が該当するし、手順6の修整情報作成処理ではこれからγ補正値を求めつつ変換テーブルを作成する処理が該当する。そして、手順7の修整指定処理ではこのような変換テーブルを指定して各画素の変換前の画像データ(R0,G0,B0
)から変換後の画像データ(R1,G1,B1 )を生成させることになる。
【0069】
次にカラーバランスについて説明する。ここでいうカラーバランスとは画像データを構成するR成分、G成分、B成分の間に一定のアンバランス傾向があるか否かを指すものとする。例えば、写真が赤っぽく見えるとして、それが撮影時の本当の状況を表しているのであれば構わないが、そうではない場合には何らかの悪影響が表れていると言える。ただし、このようなアンバランスは実際のところ本当の状況と比較しなければ分からないとも言えるので、事後的に評価すること自体が不可能であるとも考えられる。
【0070】
本実施形態において、これを各色毎の度数分布の均一さから評価することにする。撮影時の状況によっては各色成分の度数分布が不均一となることの方が自然な状況もあり得、そのような場合においては色修整すべきではない。しかしながら、結果から逆を辿るとすると、各色成分の度数分布がある程度似ている状況では度数分布が均一となっているべきであろうし、度数分布が似ていなければ均一にすべきでないだろうと判断できる。
【0071】
このため、手順2の画像データ集計処理においては、後で各色成分毎の度数分布の類似度をチェックするために、各色成分毎のヒストグラムを作成する。このとき、全階調値について度数分布を求めるのではなく、256階調の領域を8〜16分割(n分割)し、各領域に属する度数を集計していく。8分割する場合であれば、図20に示すように、「0〜31」、「32〜63」…「224〜255」という8つの領域について度数分布を求めていく。
【0072】
一方、全画素を対象として各色成分毎に上述したヒストグラムを作成したら、手順5における特徴量の分析では各色毎に各領域に属する画素数(r1、r2…rn)、(g1、g2…gn)、(b1,b2…bn)(ここではn=8)を成分としてベクトル化する。RGBのそれぞれについて、特徴ベクトルVR,VG,VBを次のように表すとし、
VR=(r1、r2…rn) Σri=1
VG=(g1、g2…gn) Σgi=1
VB=(b1,b2…bn) Σbi=1
これらの特徴ベクトルの相互相関を求める。相互相関は、内積として
corr_rg=(VR・VG)/|VR|・|VG|
corr_gb=(VG・VB)/|VG|・|VB|
corr_br=(VB・VR)/|VB|・|VR|
で表されるが、ベクトルの内積自体は両ベクトルの類似度を表すといえ、その値は「0」〜「1」となる。ここでは、その最小値corr_xに基づいてカラーバランスを評価する。
【0073】
なお、カラーバランスの修整はn分割した各領域毎に行うようにしても良いが、概略的には各色成分毎に全体的に明るくするか暗くするという対応で対処できるので、γ曲線を利用したRGB値の修整を行えばよい。
すなわち、手順5にて特徴抽出する作業は最小値corr_xを求める作業が該当するし、手順6の修整情報作成処理ではこれに基づいてバランスを修整するためのγ補正値を求めつつ変換テーブルを作成する処理が該当する。そして、手順7の修整指定処理ではこのような変換テーブルを指定して各画素の変換前の画像データ(R0,G0,B0
)から変換後の画像データ(R1,G1,B1 )を生成させることになる。
【0074】
次に、彩度について説明する。ここでいう彩度は画像全体としての色鮮やかさを指すものとする。例えば、原色のものが色鮮やかに写っているかグレーっぽく写っているかといった評価である。彩度自体はLuv表色空間におけるuv平面内での基準軸からの大きさで表されるものの、上述したように表色空間を変換する演算量は多大であるため、画素の彩度を簡略化して求めることにする。これには彩度の代替値Xとして次のように演算する。
X=|G+B−2×R|
本来的には彩度は、R=G=Bの場合に「0」となり、RGBの単色あるいはいずれか二色の所定割合による混合時において最大値となる。この性質から直に彩度を適切に表すのは可能であるものの、簡略化した上式によっても赤の単色および緑と青の混合色である黄であれば最大値の彩度となり、各成分が均一の場合に「0」となる。また、緑や青の単色についても最大値の半分程度には達している。むろん、
X’=|R+B−2×G|
X”=|G+R−2×B|
という式にも代替可能である。
【0075】
手順2での画像データ集計処理では、この彩度の代替値Xについてのヒストグラムの分布を求めることになる。この彩度の代替値Xについてのヒストグラムの分布を求めるとすると彩度が最低値「0」〜最大値「511」の範囲で分布するので、概略的には図21に示すような分布となる。
一方、手順5で特徴量を分析する際には、このヒストグラムに基づいて行う。
すなわち、集計されたヒストグラムに基づいてこの画像についての彩度指数というものを決定する。この彩度の代替値Xの分布から上位の「16%」が占める範囲を求め、この範囲内での最低の彩度「S」がこの画像の彩度を表すものとする。
【0076】
この彩度「S」が低ければ彩度強調を望むことになるが、自動修整する場合には次のようにする。
RGB表色空間のように各成分が概略対等な関係にある色相成分の成分値であるときには、R=G=Bであればグレイであって無彩度となる。RGBの各成分における最小値となる成分については各画素の色相に影響を与えることなく単に彩度を低下させているにすぎないと考えれば、各成分における最小値をすべての成分値から減算し、その差分値を拡大することによって彩度を強調できるといえる。いま、画像データの各成分(R,G,B)における青(B)の成分値が最小値であったとすると、この彩度強調パラメータSratio
を使用して次のように変換できる。
R’=B+(R−B)×Sratio
G’=B+(G−B)×Sratio
B’=B
この例は無彩度の成分について単純に最小値の成分を他の成分値から減算する手法であるが、無彩度の成分を減算するにあたって他の手法も採用可能である。
特に、この変換を行う場合には彩度を強調すると輝度も向上して全体的に明るくなるという傾向がある。従って、各成分値から輝度の相当値を減算した差分値を対象として変換を行うことにする。
彩度強調が、
R’=R+△R
G’=G+△G
B’=B+△B
となるとすると、この加減値△R,△G,△Bは輝度との差分値に基づいて次式のように求める。すなわち、
△R=(R−Y)×Sratio
△G=(G−Y)×Sratio
△B=(B−Y)×Sratio
となり、この結果、
R’=R+(R−Y)×Sratio
G’=G+(G−Y)×Sratio
B’=B+(B−Y)×Sratio
として変換可能となる。なお、輝度の保存は次式から明らかである。
Y’=Y+△Y
△Y=0.30△R+0.59△G+0.11△B
=Sratio{(0.30R+0.59G+0.11B)−Y}
=0
すなわち、変換前後で輝度が保存され、彩度を強調しても全体的に明るくなることはない。また、入力がグレー(R=G=B)のときには、輝度Y=R=G=Bとなるので、加減値△R=△G=△B=0となり、無彩色に色が付くこともない。
【0077】
ここで、彩度強調パラメータSratio は評価値Psatuが小さくなるときに大きくなればよく、上述した最低の彩度「S」との関係で
S<92なら
S’=−S×(10/92)+50
92≦S<184なら
S’=−S×(10/46)+60
184≦S<230なら
S’=−S×(10/23)+100
230≦Sなら
S=0
というように彩度強調指数S’を決定し、この彩度指数S’から彩度強調指数Sratio への変換を、
Sratio =(S+100)/100
として求めればよい。この場合、彩度強調指数S=0のときに彩度強調パラメータSratio =1となって彩度強調されない。図22はこの彩度「S」と彩度強調指数S’との関係を示している。
【0078】
すなわち、手順5にて特徴抽出する作業は彩度「S」を求める作業が該当するし、手順6の修整情報作成処理では彩度指数S’を経て彩度強調指数Sratio を求める処理が該当する。そして、手順7の修整指定処理ではこのような彩度強調指数Sratio
を使用しながら各画素の変換前の画像データ(R0,G0,B0 )から輝度を求めつつ変換後の画像データ(R1,G1,B1 )を生成させることになる。
【0079】
最後に、シャープネスについて説明する。画像の特徴量としてのシャープネスについては以下に述べるエッジ度で評価する。画像データがドットマトリクス状の画素から構成されるものとすると、画像のエッジ部分では隣接する画素間での画像データの差分は大きくなる。この差分は輝度勾配であり、これをエッジ度と呼ぶことにする。図23に示すようなXY直交座標を考察する場合、画像の変化度合いのベクトルはX軸方向成分とY軸方向成分とをそれぞれ求めれば演算可能となる。ドットマトリクス状の画素からなるディジタル画像においては、図24に示すように縦軸方向と横軸方向に画素が隣接しており、その明るさをf(x,y)で表すものとする。この場合、f(x,y)は輝度Y(x,y)であってもよいし、RGBの各輝度であるR(x,y),G(x,y),B(x,y)であってもよい。図24に示すものにおいて、X方向の差分値fxとY方向の差分値fyは、
fx=f(x+1,y)−f(x,y)
fy=f(x,y+1)−f(x,y)
のように表される。従って、これらを成分とするベクトルg(x,y)の大きさDdifは、
Ddif=|g(x,y)|=(fx**2+fy**2)**(1/2)
のように表される。エッジ度はこのDdifで表される。なお、本来、画素は図25に示すように縦横に升目状に配置されており、中央の画素に注目すると八つの隣接画素がある。従って、同様にそれぞれの隣接する画素との画像データの差分をベクトルで表し、このベクトルの和を画像の変化度合いと判断しても良い。
さらに、単に横並びのがその間でのみ比較するということも演算量の低減という面では効果がある。
【0080】
以上のようにして各画素についてエッジ度が求められるとしても、全画素のエッジ度を求めて平均化するだけでは画像のシャープ度合いは求められない。図26は空を飛ぶ飛行機の写真を示しており、背景の空については画像の変化度合いが大きくないことは容易に分かる。このような場合、空の部分をトリミングする状況を想定すると、中央の被写体である飛行機の画像データが変わらないにも関わらず、空の画素が多くなると平均値が下がって画像はシャープでないことになり、空の画素か少なくなると平均値が上がって画像はシャープであることになる。このような場合、本来の被写体である飛行機のシャープさに基づいて画像のシャープさを判断するのが普通であるから、平均化は好適ではないといえる。
【0081】
このため、全画像のエッジ度を平均化するのではなく、画像の中の輪郭部分がどれくらいシャープであるかを判断すべく、輪郭部分だけのエッジ度を平均化することにする。より具体的には、対象画素を移動させながら手順2にて画像データを集計処理する際に、上述したようにエッジ度を算出した上であるしきい値Th1と比較することにより、その画素がエッジ部分であるか否かを判定し、エッジ部分である場合にのみ、同エッジ度Ddifを積算する(ΣDdif)とともに、エッジ部分の画素数を積算する(ΣEdge_Pixel)。
【0082】
一方、手順5で特徴抽出する際には、手順2にて積算しておいたエッジ度(ΣDdif)を画素数(ΣEdge_Pixel)で割り、エッジ部分におけるエッジ度の平均値Ddif_aveを算出する。むろん、このエッジ度の平均値Ddif_aveが大きいほどシャープな画像ということになる。エッジ度の平均値Ddif_aveが小さければエッジ強調を望むことになるが、本実施形態においては以下のようにする。まず、エッジ強調度Eenhance
をエッジ度の平均値Ddif_aveから求める。一例として、
Eenhance =4×Ddif_ave/100
といった演算式で構わない。
【0083】
エッジ強調処理自体は図27に示すようなアンシャープマスクを利用する。
エッジ強調度Eenhance を求めたら、全画素について図27に示すようなアンシャープマスクを利用してエッジ強調処理を実行する。強調前の各画素の輝度Yに対して強調後の輝度Y’は、
Y’=Y+Eenhance ・(Y−Yunsharp )
として演算される。ここで、Yunsharp は各画素の画像データに対してアンシャープマスク処理を施したものであり、アンシャープマスクは、中央の「100」の値をマトリクス状の画像データにおける処理対象画素Y(x,y)の重み付けとし、その周縁画素に対して同マスクの升目における数値に対応した重み付けをして積算するのに利用される。図27に示すアンシャープマスクを利用するのであれば、
【0084】
【数1】

Figure 2001056867
なる演算式に基づいて積算する。同式において、「396」とあるは重み付け係数の合計値である。また、Mijはアンシャープマスクの升目に記載されている重み係数であり、Y(x,y)は各画素の画像データであり、ijについてはアンシャープマスクにおける横列と縦列の座標値で示している。
【0085】
アンシャープマスクを利用して演算されるエッジ強調演算の意味するところは次のようになる。Yunsharp (x,y)は注目画素に対して周縁画素の重み付けを低くして加算したものであるから、いわゆる「なまった(アンシャープ)」画像データとしていることになる。このようにしてなまらせたものはいわゆるローパスフィルタをかけたものと同様の意味あいを持つ。従って、「Y(x,y)−Yunsharp
(x,y)」とは本来の全成分から低周波成分を引いたことになってハイパスフィルタをかけたものと同様の意味あいを持つ。そして、ハイパスフィルタを通過したこの高周波成分に対してエッジ強調度Eenhance
を乗算して「Y(x,y)」に加えれば同エッジ強調度Eenhance に比例して高周波成分を増したことになり、エッジが強調される結果となる。
【0086】
なお、エッジの強調度合いは、アンシャープマスクの大きさによっても変化するため、エッジ強調度Eenhance をクラス分けするとともに対応するサイズのアンシャープマスクを用意しておき、対応するサイズのアンシャープマスクを利用するようにしても良い。また、エッジ強調が必要になるのは当然のことながら画像のエッジ部分であるから、上述したように隣接する画素同士の間で画像データが大きく異なる場所においてのみ演算するようにしてもよい。このようにすれば、殆どのエッジ部分でない画像データ部分でアンシャープマスクの演算を行う必要がなくなり、処理が激減する。
【0087】
以上、シャープネスについてまとめると、手順5にて特徴抽出する作業はエッジ度の平均値Ddif_aveを求める作業が該当するし、手順6の修整情報作成処理ではエッジ強調度Eenhance
を求める処理が該当する。そして、手順7の修整指定処理ではこのようなエッジ強調度Eenhance を使用しながら各画素の変換前の画像データ(R0,G0,B0 )から輝度強調された変換後の画像データ(R1,G1,B1
)を生成させることになる。
【0088】
以上が本実施形態における画像修整制御部40における処理を概略的に説明したものである。ただ、同様の修整処理であっても目標値を変えることによって修整結果が変化する。従って、スタンダードな自動画像修整処理の他、色を記憶色に近づけて「きれい」な感じにする自動画像修整処理や、シャープネス強調や彩度強調を強めにしたりする「DPE」調の自動画像修整処理といったものを選択できるようにしておいても良い。記憶色に合わせる自動画像修整では、標準値としてユーザーの好みを設定できるようにしておくことにより、各人が「きれい」と感じるような自動画像修整を行えるようにすることもできる。
【0089】
この画像修整制御部40はいわゆる画像修整エンジンとして利用され、本画像データ処理ソフトにおいてはかかる画像修整エンジンを使用しつつ図28〜図33のフローチャートに従ってメイン制御部60が画像修整処理を総括的に制御している。なお、JPEG方式データフォーマットは、書き換えを行う都度、画質が劣化してしまう。これはJPEG特有の8×8のブロックを基準とする処理のゆえであるが、このブロックに起因する歪みの低減処理を合わせて行っている。
より具体的には、平滑化処理のフィルタを適用しており、ただしエッジ部分については平滑化しない手法である。このようなエッジ保存平滑化処理を弱めに架けることにより、エッジの箇所は強調される一方、8×8のブロック歪みやノイズについては平滑化されて滑らかになる。そして、折角、8×8ブロック歪みの低減をしても、JPEGなど劣化する方式で保存しては再度歪んでしまうし、BMP(ビットマップ)などの劣化しない方式では記録サイズが増大してしまう。一方、本実施形態のようにパラメータを管理する方式においては、表示や印刷という出力のときに低減処理を行うため、ベストな画質での画像表現が可能となっている。
【0090】
このメイン制御部60によって行われる一連の画像データ管理処理として同時プリント処理がある。図34はこの同時プリント処理における画面表示を示している。この場合、メイン制御部60は共通機能部20の表示指定部20bに対して適宜指令を出力してディスプレイ17a上に同画面を表示させつつ、キーボード15aやマウス15bの操作入力を受け付けることになる。
この同時プリント処理画面においては、画面上の左寄り部分が操作表示エリアとなっており、ここには一連のデータ処理の流れに沿ってタブが表示されている。この例では「写真の入力」、「写真の修整」、「プリント指定」、「印刷」というタブが表示され、それぞれの間に下向きの「△」マークを表示している。むろん、データ処理は「写真の入力」処理、「写真の修整」処理、「プリント指定」処理、「印刷」処理という順序を経て、所望の画像データを綺麗に印刷できるようになる。従来でも、同様の処理を実行することは当然に可能であったのだが、その場合には自分自身で手続の流れを想定して作業を進めていかなければならない。
【0091】
すなわち、1:ファイルメニューの中から画像データをオープンし、2:ツールメニューの中から画像修整操作を指定して必要なパレットなどを表示させつつ所望の修整を行った後で保存し、3:ファイルメニューの中の印刷レイアウトで印刷したいフォーマットを指定し、4:ファイルメニューの中の印刷プレビューで確認し、5:最後にファイルメニューの中の印刷を実行する。むろん、複数の画像データを印刷したい場合には、この処理の中でファイルメニューの中から印刷対象を決定するという作業が必要になる。
【0092】
これに対して、デジタルスチルカメラ11bで撮影した写真を印刷しようとするのは通常の写真撮影の場合と比較するとDPEにて同時プリントを指定することに対応するわけであり、一連のデータ処理を同時プリントの作業に対応させて進行させるようにし、アプリケーションに精通していなくても一連のデータ処理を実行可能となる。
図34の同時プリント処理画面では「写真の入力」という表示をしているが、実質的にはフィルムデータ管理部30による画像データ管理を行うことになる。
表示エリアの内の左寄り部分は操作表示エリアdp1となっているが、残りの表示エリアは主表示エリアdp2となり、さらにそのうちの左寄り部分が画像データをグループ化して表示するためのグループ表示領域dp3となっており、残りの部分はあるグループが選択された場合にそのグループに属する画像データをサムネールで表示するための画像表示領域dp4となっている。
【0093】
このグループ表示領域dp3は上述したようなフォルダ単位に対応したフィルムメタファを表示するための領域であり、フィルムのパトローネを枠として表示しつつ、その中にフィルム名とコメントと日付と収容画像ファイル数を表示している。むろん、各フィルムメタファのプロパティを表示させれば、フィルム名、リンク先、日付、コメント、媒体属性、媒体ラベル、フィルム属性、収容画像ファイル数といった全ての情報を表示することになる。また、グループ表示領域dp3はGUIを使用して適宜表示領域を増減させることができ、表示領域に表示しきれなくなればスクロール表示を付加したり、縮小表示するようになる。むろん、表示された複数のフィルムメタファの内のいずれか一つを選択操作することにより、画像表示領域dp4には選択されたフィルムメタファに対応するフォルダ内に保存された画像ファイル30aがサムネール表示されることになる。
【0094】
本実施形態においては、オペレーティングシステム12aが採用しているフォルダの階層構造を利用して画像データの管理を行っているため、操作者がコンピュータシステム10を直に操作してフォルダ内に画像ファイル30aを収容することも可能であり、この場合にはフォルダ内の画像ファイル30aの有無と写真データ30bとにずれが生じる場合があるが、この場合にはフォルダ内の画像ファイル30aの有無を優先して写真データ30bを適宜増減させることにする。
【0095】
この意味でもフィルムメタファに対応するフォルダ内に存在する画像ファイル30aに基づいて対応する写真データ30bがあるか否かを判断し、写真データ30bがあればそのサムネールデータを使用して表示を行うし、写真データ30bがなければサムネール作成部20iにてサムネールデータを作成後、表示を行う。写真自体は縦長あるいは横長であり、一つのサムネール表示領域は両方を収容可能な正方形であるとともにその枠外には連番と実際のファイル名を表示している。
【0096】
なお、同時プリントを選択する場合は、既にデータ管理を行っているものである場合のみならず、撮影したばかりの画像データを取り込んで印刷にかけるときもあるし、あらかじめ画像データ自体は一定の記憶領域に取り込んであって新たにデータ管理を開始する場合とが考えられる。撮影したばかりの画像データを取り込む手法は、例えば、デジタルスチルカメラ11bからケーブル接続して取り込む場合であるとか、所定の交換可能な記録媒体を利用する場合であるとかが考えらえる。いずれにおいても、図34に示す画面において主表示エリアの上部にコマンドボタンとして用意されている「新しいフィルム」を実行する。すると、図35に示すように「いつもの入力」と「入力方法を選択」という二つのコマンドボタンを実行可能となるとともに、併せて「入力の設定」というコマンドボタンを実行可能となる。一般の操作者は単一のデジタルスチルカメラ11bを持っているとすると画像データの取り込みは一定であると考えられ、あらかじめ「入力の設定」で選択しておいた画像データの転送手法を実行することになる。むろん、複数のデジタルスチルカメラ11bを所有している場合であるとか、たまたま別の手法で取り込む必要がある場合もあるから「入力方法を選択」のコマンドボタンを実行させれば取り込み可能な複数の手法を表示して選択することになる。なお、これらの場合において外部アプリケーションを実行させる必要がある場合もあるが、これらは入力の設定にて設定しておくことによって適宜実行される。なお、入力の指定方法などは適宜変更可能であることはいうまでもない。
【0097】
このような状態で、操作者はグループ表示領域に表示されるパトローネ内の表示を見てグループを判断しつつその画像データを画像表示領域に表示させ、さらに印刷対象としたい画像データを選択する。この選択操作は画像選択部20aによって受け付けられる。選択された画像データについてはそのサムネール表示領域の枠部分の色を変えて表示することにより、選択の有無が容易に判断できる。
そして、選択結果は以後の「写真の修整」はもとより、「プリント指定」を経て「印刷」の処理での出力対象として反映されることになる。なお、これらの場合に各処理で参照されるのは物理的配置情報であり、選択対象とした画像データを仮領域に移動させて実際の処理を行うわけではない。
【0098】
「写真の入力」において印刷したい画像データを選択したとして、操作表示エリアでの表示に依れば次の処理が「写真の修整」であることが一目瞭然である。
この「写真の修整」では選択された画像データだけについて画像修整を実行することができる。図36は自動画像修整を行う場合の主表示エリアでの表示を示している。同図には選択された画像データについて修整前の画像をサムネールで上段に表示し、上述した自動修整を施した修整後の画像をサムネールで下段に表示している。操作者は両者を見て比較し、どちらが良いか選択する。むろん、選択は好みの側のサムネールをマウス15bでクリックすることにより行え、クリックした側については表示指定部20bが枠部分を反転表示するなどして判別できるようにする。なお、デフォルトは修整前を選択状態としておき、マウスでクリックした側についてだけ修整後のものを選択状態としても良いし、殆どの場合は画質を修整されたものについて選択されるであろうとの想定のもとでデフォルトを修整後のものを選択状態とするようにしても良い。
【0099】
この場面において、最下部には「実行」のコマンドボタンと、「キャンセル」のコマンドボタンが用意されており、「実行」のコマンドボタンをマウスでクリックすると、各画像データごとに用意されている写真データ30bの修整情報が更新される。図7に示すように自動画像修整(m_nApf)の管理パラメータが用意されており、修整後の画像データを選択して「実行」コマンドボタンをクリックしたときには同自動画像修整(m_nApf)の管理パラメータにフラグをセットする。すなわち、修整後の画像データを選択するとしても、この元の画像データに置き換えて修整後の画像データを上書きしてしまうのではなく、単に管理パラメータのフラグをセットするにすぎない。しかし、以後の処理においてはこの管理パラメータを参照し、本画像データについては自動修整された画像データについて処理を実行すべきものと判断できるようになる。むろん、その際には画像データを読み込み、画像修整制御部40によって自動画像修整しなければならない場合もあるが、写真データ30b内のサムネールデータについては修整後の画像データに基づくサムネールデータに更新しておき、表示程度であればこのサムネールデータを表示するだけでも良い。なお、画面下には「オリジナルデータに反映させる」というチェックボックスを用意してあり、このチェックボックスをチェックしておいたときには修整後の画像データで元の画像データを上書きする。
【0100】
この例では、自動画像修整を選択的に実施するようにしているものの、かかる機能を利用しない手はなく、特に操作の未熟なものにおいてはかかる機能があっても選択操作を知りえないという問題もある。従って、写真の入力時にデフォルトで自動画像修整を行なってしまい、写真の修整という処理を表さないようにすることも便利である。
図37は、そのような場合の画面表示の一例を示している。同図に示すものでは、操作として「写真の入力」の前に「フィルムの選択」という処理を加えるとともに、「写真の入力」の後は「プリント指定」の処理を実行するようにしている。図34に示すもののように「写真の入力」の処理で新しいフィルムを選択できるようにしつつ、写真を選択するようにしても良いが、図37に示すものでは最初に「フィルムの選択」の画面表示を行うことにより、パトローネ単位での写真データの選択であるとか新しいフィルムの選択を先に実行して分かりやすくしている。また、この画面表示では処理を進めたり戻したりするための指示を行うために画面右寄り部分の上段に「前のステップ」と「次のステップ」というコマンドボタンを用意し、「前のステップ」を実行させると処理を戻し、「次のステップ」を実行させると処理を先に進めるようにしている。さらに、画面上段部分には各段階の処理の簡単な説明を表示できるようにしている。例えば、「フィルム選択」の段階では「フィルムを選んで次に進んで下さい。新しいフィルムは『フィルムの追加』で作れます」と表示している。
【0101】
一方、手動画像修整を選択することも可能であり、修整度合いをGUIを利用して指示することになる。すなわち、GUI表示をマウス15bで操作して手動修整の結果を反映させる。本実施形態においては、画像処理部20gにおいて明るさとコントラストについて段階的な強調処理を実行可能で、その前提のもとに各強調程度を表すパラメータを用意してあり、選択された修整結果を表すパラメータを明るさ成分の強調度(m_nBrightness)の管理パラメータと、コントラストの強調度(m_nContrast)の管理パラメータとに反映させるようにしている。
【0102】
手動画像修整は、明るさとコントラストに限られるものではなく、赤成分と緑成分と青成分とにおいてそれぞれ強調処理を実行可能であり、それぞれの強調程度を表すパラメータが赤成分の強調度(m_nRed)の管理パラメータと、緑成分の強調度(m_nGreen)の管理パラメータと、青成分の強調度(m_Blue)の管理パラメータとにそれぞれ反映されるようになっている。
画像修整は広い意味で画像データの表示に反映される各種の処理を含むものであり、広義の意味で画像のトリミングや回転も含めている。画像データを選択した状態でトリミングを実行させると図38に示すように現時点での管理パラメータに基づく画像データを所定の大きさの枠内に表示する。ここで、マウス15bを操作してトリミング開始位置とトリミング終了位置を指定し、「実行」コマンドボタンをクリックすると開始位置と終了位置を対角とする矩形領域以外を取り除いて表示する。むろん、この場合に元の画像データの一部を削除するわけではなく、トリミング開始X座標(m_x1)とトリミング開始Y座標(m_y1)とトリミング終了X座標(m_x2)とトリミング終了Y座標(m_y2)の管理パラメータに座標値を設定するだけであり、これに基づいてサムネール作成部20iが新たにサムネールを作成し、写真データ30b内においてのみ更新する。
【0103】
一方、画面の回転も広い意味で画像修整と呼び、カメラを横にして写した縦型の写真を表示上でも縦長とする場合に利用する。図39はこのような回転処理の場合の主表示エリアの表示画面を示しており、左上部分に元の画像データをサムネール表示するとともに、その下に90度毎の三つの回転角度と、任意の回転角度を選択するための操作入力ボタンを用意してある。また、右中央部部分には選択された回転角度だけ回転させたサムネールを表示できるようになっている。むろん、選択された回転角度は回転角度(m_nRotation)の管理パラメータにセットされる。
【0104】
図40と図41はこれらの画像修整を指定する際のメニュー操作を示している。図40は自動画像修整を行う場合のメニュー操作例であり、メニューバー上で画像修整をクリックするとドロップダウンメニューが表示され、その中で自動画像修整を選択すると、更に詳細なオプションが表示される。むろん、このときに「きれい」をクリックすれば自動画像修整を「きれい」のオプションで起動させることになる。この場合、選択されている画像データの全てについて図36に示すように表示される。また、図41は手動画像修整を行う場合のメニュー操作例であり、画像修整をクリックしつつドロップダウンメニューの手動画像修整を選択すると、「明るさ・コントラスト」についての修整か「色強調」の修整かを選択可能となる。手動画像修整については自動画像修整を実行しても未だ改善されないようなものについて個別的に実行することが多いと考えられ、手動画像修整の対象とする画像データを選択しておいた上で起動した場合にのみこれらを実行できるようにしておく。
【0105】
この他、トリミングであるとか回転であるとか白黒変換やセピア変換についても画像データを選択しておいた上でこのドロップダウンメニューから画像処理を選択して実行させることになる。なお、白黒変換やセピア調変換は個別に行うものではあっても変換結果は画一的であり、手動画像修整のように操作者の主観で調整しなければならないものではない。従って、実際には白黒変換やセピア調変換については自動画像修整(m_nApf)の管理パラメータをセットすることにしている。
【0106】
これまでは、同時プリントの処理を選択したときに画像データに対して各種の修整を行っていく過程でパラメータがセットされていく状況を説明した。次に、実際にこのような操作を実現するためのコンピュータシステム10内での処理について説明する。
図28〜図31は各処理をフローチャートにより示している。図28は自動画像修整を実行する場合の処理を示しており、自動画像修整を実行する画像データを読み込む際、ステップ100にて写真データ30bのデータベース構造を参照し、修整情報を読み取る。この修整情報は、上述した各種のパラメータを意味しており、これらのパラメータによって自動画像修整や手動画像修整を実行すべき旨の指定があれば以下の自動画像修整は行うことなく本処理を終了する。これは自動画像修整を重ねて実行する意味がないことと、手動画像修整によって好みが反映されている以上はこれを自動的に修整することはできないからである。
【0107】
次に、ステップ110にて画像データを読み込み、ステップ115にて画像の特徴を抽出し、ステップ120にて特徴情報の保存を行い、ステップ125にて自動修整の修整情報を作成し、ステップ130にて自動修整の画像処理を実行する。むろん、これらは図9にて説明したような手順1〜手順6に該当する。一方、トリミング開始X座標(m_x1)とトリミング開始Y座標(m_y1)とトリミング終了X座標(m_x2)とトリミング終了Y座標(m_y2)の管理パラメータにトリミングの位置情報が設定されている場合にはステップ135の判断を経てステップ140にてトリミングする画像処理を実行するし、回転角度(m_nRotation)の管理パラメータに回転の修整情報が設定されている場合にはステップ145の判断を経てステップ150にて画像を回転させる回転の画像処理を実行することになる。
【0108】
以上の処理を経ることにより自動画像修整後の画像を得ることができるようになるため、ステップ155では図36に示すように修整前と修整後のサムネールを表示するとともに、この自動画像修整処理の結果を採用するか否かの入力を待機することになる。すなわち、自動画像修整後のものの方が望ましければそれを選択状態とし、「実行」コマンドボタンをクリックする。この場合、ステップ170では「オリジナルデータに反映」というチェックボックスにおける選択状況を取り込み、チェックしてあると判断するとステップ175にて画像データを上書き保存することになる。
【0109】
オリジナルを書き換える場合には修整情報を参照することは必要なくなり、書き換えない場合にのみステップ180にて修整情報を保存する。一方、「標準」の画像自動処理では物足りないような場合には、図40に示すように「きれい」だとか「DPE調」などを選択したときには当該設定に応じた自動画像修整を実行させるべく、予めステップステップ165にて自動画像処理の動作条件値を変更し、ステップ115にて上述した処理を繰り返す。なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【0110】
むろん、自動画像修整はこれ以外にも様々な条件に対応する事が可能である。
従って、予め用意してある「DPE調」などの選択以外にも「この辺りをもっと明るく...」とか「全体をもっと黄色に」といったユーザの指定に応じて上記動作条件値を変更し、上述した処理を繰り返すようにすることも可能である。この動作条件値はステップ165にて後発的に設定するばかりではなく、ステップ125にて最初に自動画像修整の修整情報を作成する時点でも当然に反映されている。
【0111】
次に、手動画像修整を実行する場合の処理を説明する。図29は手動画像修整の処理を示しており、手動画像修整を実行されたときには、処理対象となっている画像データを読み込む前にステップ200にて修整情報を読み込み、続いてステップ205にて同画像データを読み込む。続いてステップ210にて自動画像修整(m_nApf)の管理パラメータを参照し、同管理パラメータが設定されている場合にはステップ210の判断を経てステップ215にて自動画像修整の画像処理を実行する。
【0112】
この後、ステップ220では、既に設定されている手動画像修整についての管理パラメータを読み込んで指定どおりの画像処理を実行し、その後でトリミングについての処理と回転についての処理をそれぞれ管理パラメータに基づいてステップ225〜240にて実行する。
以上の処理を経ることにより既に設定されている手動画像調整後の画像を得ることができるようになるため、ステップ245で上述したようにしてさらに手動調整の操作を実行すればステップ255にて修整情報を変更し、ステップ220〜240の処理を経て画像修整を実行する。
【0113】
また、「実行」のコマンドボタンをクリックされたら「確定」を意味するものと判断し、「オリジナルデータに反映」のチェックボックスにおける選択状況に応じてステップ265にて元の画像データを書き換えたりステップ270にて最終的な修整情報を表す管理パラメータを書き換えたりすることになる。なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【0114】
次に、トリミングを実行する場合の処理を説明する。図30はトリミングの処理を示しており、処理対象となっている画像データを読み込む前にステップ300にて修整情報を読み込み、続いてステップ305にて同画像データを読み込む。続いてステップ310にて自動画像修整(m_nApf)の管理パラメータを参照し、同管理パラメータが設定されている場合にはステップ315にて自動画像修整の画像処理を実行する。また、ステップ320にて既に設定されている手動画像修整についての各種の管理パラメータを参照し、それぞれ管理パラメータが設定されている場合にはステップ325にて対応する画像処理を実行する。
【0115】
この後、ステップ330では既に設定されているトリミングについての管理パラメータを参照し、ステップ335にてトリミングの画像処理を実行するし、ステップ340では既に設定されている回転についての管理パラメータを参照し、ステップ345にて回転の画像処理を実行する。
以上の処理を経ることにより既に設定されている全ての画像修整後の画像を得ることができるようになるため、ステップ355では図38に示す画面表示でトリミングの操作を受け付け、新たにトリミングの操作が行われた場合にはステップ360にて修整情報を変更し、ステップ335の処理を経て画像修整を実行する。なお、この場合はステップ340にて回転についての管理パラメータを参照するが、回転については重複するか否かを判断し、重複して実行するわけではない。
【0116】
この場合も、「実行」のコマンドボタンをクリックされたら「確定」を意味するものと判断し、「オリジナルデータに反映」のチェックボックスにおける選択状況に応じてステップ365にて元の画像データを書き換えたり、ステップ370にて最終的な修整情報を表す管理パラメータを書き換えたりすることになる。
なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【0117】
最後に、回転を実行する場合の処理を説明する。図31は回転の処理を示しており、処理対象となっている画像データを読み込む前にステップ400にて修整情報を読み込み、続いてステップ405にて同画像データを読み込む。続いてステップ410にて自動画像修整(m_nApf)の管理パラメータを参照し、同管理パラメータが設定されている場合にはステップ415にて自動画像修整の画像処理を実行する。また、ステップ420にて既に設定されている手動画像修整についての各種の管理パラメータを参照し、それぞれ管理パラメータが設定されている場合にはステップ425にて対応する画像処理を実行する。
【0118】
この後、ステップ430では既に設定されているトリミングについての管理パラメータを参照し、ステップ435にてトリミングの画像処理を実行するし、ステップ440では既に設定されている回転角度(m_nRotation)についての管理パラメータを参照し、ステップ445にて回転の画像処理を実行する。
以上の処理を経ることにより既に設定されている全ての画像修整後の画像を得ることができるようになるため、ステップ455では図39に示す画面表示で回転の操作を受け付け、新たに回転の操作が行われた場合にはステップ460にて修整情報を変更し、ステップ445の処理を経て画像修整を実行する。
【0119】
この場合も、「実行」のコマンドボタンをクリックされたら「確定」を意味するものと判断し、「オリジナルデータに反映」のチェックボックスにおける選択状況に応じてステップ465にて元の画像データを書き換えたり、ステップ470にて最終的な修整情報を表す回転角度(m_nRotation)の管理パラメータを書き換えたりすることになる。なお、「キャンセル」のコマンドボタンをクリックされたときには「中止」と判断して本処理を終了する。
【0120】
このようにして管理パラメータを利用する一つのメリットとして元の画像データに変更を加える必要が無くなることがあげられ、元の画像データを活かすためには管理パラメータを修整する必要が生じてくる。
図40や図41に示すようにファイルメニューの画像修整を選択した際に表示されるドロップダウンメニューには、最下段に画像修整取消のコマンドが用意されており、同コマンドを選択して実行させると図32のフローチャートに従って処理が実行される。
【0121】
この場合も画像データを選択した状態で画像修整取消を実行させるものとし、ステップ500において当該画像データについての写真データ30bの修整情報を読み込み、ステップ505において図42に示す操作メニューを主表示エリアに表示して操作入力を待機する。この操作メニューでは取消対象として「自動画像修整」、「手動画像調整」、「回転」、「トリミング」、「白黒」、「セピア調」といった取消対象の項目とともにそれぞれの項目の前にチェックボックスを表示している。ここで、操作者は取り消したい画像修整項目の前のチェックボックスをマウス15bでクリックすることによりチェックマークがトグル表示されるとともに、内部的にはそれぞれのチェックマークの有無をフラグで表して記憶する。また、下段には「実行」コマンドボタンと「キャンセル」コマンドボタンとを用意してあり、操作者は必要なチェックボックスをチェックしたら「実行」のコマンドボタンをクリックする。
【0122】
すると、ステップ510以下において各チェックボックスにチェックマークが付されているか否かを判断しながら対応する修整情報を削除していく。むろん、ここでいう修整情報の削除とは管理パラメータの修整に他ならず、元の画像データを加工するようなことは一切不要である。具体的に説明していくと、ステップ510では「自動画像修整」の項目にチェックマークが付されているか否かを判断し、付されていればステップ515にて「自動画像修整」の修整情報を削除する。次に、ステップ520では「白黒」の項目にチェックマークが付されているか否かを判断し、付されていればステップ525にて「白黒」の修整情報を削除する。次に、ステップ530では「セピア調」の項目にチェックマークが付されているか否かを判断し、付されていればステップ535にて「セピア調」の修整情報を削除する。次に、ステップ540では「手動画像調整」の項目にチェックマークが付されているか否かを判断し、付されていればステップ545にて「手動画像調整」の修整情報を削除する。手動画像調整には明度やコントラストや色強調といったものが含まれ、この例では全部を取り消すようにしているが、それらを個別に取り消せるようにしても良い。
【0123】
次に、ステップ550では「トリミング」の項目にチェックマークが付されているか否かを判断し、付されていればステップ555にて「トリミング」の修整情報を削除する。次に、ステップ560では「回転」の項目にチェックマークが付されているか否かを判断し、付されていればステップ565にて「回転」の修整情報を削除する。
以上の結果を経ていくつかの修整情報が削除された状態でステップ570ではその修整情報を保存する。ここでいう保存作業は、写真データ30bの更新を意味し、図5に示す写真データ30bのデータベース構造にアクセスして最新の修整情報に更新する。なお、図42に示す操作メニューで「キャンセル」のコマンドボタンをクリックすると、内部的には全てのチェックマークを削除して以上の処理を実行するため、結局は何も修整情報を削除することなく本処理を終了することになる。なお、この例では一旦作成した修整情報を削除することによって元に戻す手法を採用しているが、修整情報自体に日時の情報を付加することにより一つの画像データについて時系列に対応した複数の修整情報を管理するようにしてもよい。このようにすれば、単に修整情報を削除することによって元に戻すだけでなく、任意の段階の修整情報まで遡って修整情報を削除することも可能であり、途中の段階で良好だった修整結果を復元するといったことも可能となる。
【0124】
これまで、各画像データに対応して用意されている管理パラメータを設定し、あるいは取り消す作業について説明したが、この管理パラメータを利用しつつ、実際に修整された画像データを利用できるようにする処理について図33のフローチャートを参照しながら説明する。
修整された画像データを利用する場面は、表示指定部20bによる指示に従ってサムネール作成部20iがサムネールを更新して画面表示する場合であるとか、画像出力部20kによって画像データのデータフォーマットの形式を変換して出力する場合であるとか、後述するようにDPE印刷制御部50によって印刷を実行する場合にその元の印刷データを作成する場合などである。従って、それぞれの場合において微細な処理の相違はあるものの、概ね図33のフローチャートと一致している。
【0125】
ステップ600で対象となる画像データの修整情報を読み込むとともに、ステップ605で画像データを読み込み、以下の処理において修整情報に従いながら同画像データに基づいて画像修整を行っていき、この画像データを書き換えることなく新たな画像データを作成していく。ステップ610では自動画像修整の修整情報があるか判断し、ある場合にはステップ615にて自動画像修整を行なう。この場合、自動画像修整(m_nApf)の管理パラメータには単に自動画像修整を行うという情報だけではなく、「標準」、「きれい」、「DPE調」といったどの自動画像修整を行うのかを判断して処理を進める。また、白黒やセピア調への変換は修整結果が1通りにしか過ぎないことからこの自動画像修整の管理パラメータで表せるようにしており、同時あるいは択一的に実施する。
【0126】
続いてステップ620では手動調整の修整情報があるか否かを判断し、あればステップ625にて手動調整の画像処理を実行する。手動調整の修整情報は上述したように、明るさ成分の強調度(m_nBrightness)と、コントラストの強調度(m_nContrast)と、赤成分の強調度(m_nRed)と、緑成分の強調度(m_nGreen)と、青成分の強調度(m_Blue)とから構成されており、いずれか一つでも修整情報があれば対応する画像処理を実行するし、明るさとコントラストについての修整情報と、色強調の修整情報とがある場合には、前者についての修整を行った上で後者の修整を行うことにする。むろん、かかる修整順序を反映した結果が得られる場合には一度の修整で実行することも可能である。
【0127】
この後、ステップ630ではトリミングの修整情報があるか判断し、ある場合にはステップ635にてトリミングの画像処理を実行する。トリミングの画像処理では、トリミング開始X座標(m_x1)とトリミング開始Y座標(m_y1)とトリミング終了X座標(m_x2)とトリミング終了Y座標(m_y2)に囲まれるエリアを残して周囲の画像データを削除することになる。
また、ステップ640では回転の修整情報があるか判断し、ある場合にはステップ645にて回転の画像処理を実行する。回転の画像処理では、回転角度(m_nRotation)の管理パラメータに基づいて回転角度を参照し、画像データを回転させる処理を実行することになる。
【0128】
以上の画像処理は最初に元画像データをワークエリアに保存し直した上、そのワークエリア上の画像データに変更を加えていく。従って、元画像データには変更は加えられない。
以上は、操作者の選択操作に応じて実行されたりされなかったりするオプション的な画像処理であるが、ステップ650とステップ655ではハードウェア環境の相違に基づいて必須の画像処理を実行している。ステップ650では出力機器に応じた色再現の画像処理を実行する。カラー出力の再現機器では基準とのずれがあるのは否めない。すなわち、同じ画像データを入力しながら出力結果が相違することは多々ある。また、このずれを画一化して画像データと出力結果とが必ず標準状態と一致することは単純に費用対コストの面でも無理な話であり、それよりはずれを見越して修整するための色合わせ情報を利用するのが得策である。
【0129】
上述した画像データの場合であれば、撮影した側での色ずれ情報と出力する側での色ずれ情報があれば出力結果において大きな色ずれは発生しないと言える。
本実施形態においては、前者の色ずれ情報を色合わせ情報として写真データ30bのデータベース構造内で管理するとともに、本コンピュータシステム10とカラープリンタ17bとにおいて生じる色ずれ情報として設定情報内で管理し、ステップ650において両者の色ずれ情報に基づいてワークエリア上の画像データを修整する。
【0130】
また、ステップ655では出力機器に応じた解像度の画像処理を実行するものであり、画像データの解像度に対して出力する際の解像度とを対比して対応する解像度変換を行う。例えば、カラーディスプレイ17aでの表示が70dpiであってその大きさ通りに印刷しようとする場合、カラープリンタ17bの解像度が720dpiであるとすると、縦横方向に10倍の解像度変換が必要になる。
【0131】
図34に示す同時プリントの処理の説明に戻ると、写真の修整の次に行われるのは「プリント指定」の処理である。既に、「写真の入力」と「写真の修整」を経ており、印刷したい画像データの選択と、それに施すべき画像処理が選択されている。この「プリント指定」では選択されている画像データをどのようなフォーマットで印刷するかを指定する。
図43は「プリント指定」での主表示エリアでの表示を示しており、上段部分には横方向にスクロール可能な表示エリアを配してレイアウトのパターンを表示可能となっている。同図においては、「4枚ずつのレイアウト」、「アルバム印刷」、「シール印刷」のレイアウトが表示されている。むろん、これ以外にもレイアウトのパターンを実装することは可能である。また、オプションとして、切断する際の位置の目安となるトンボを印刷したり、日付を印刷したり、タイトルを印刷させるのを選択できるようにチェックボックスを設けている。さらに、用紙については「A4」、「B5」、「シール」などに対応しており、これらについてはいずれかだけを排他的に選択できるラジオボタンを設けてある。
【0132】
印刷する際には、カラープリンタ17bの機種に応じて印刷データを生成させる必要があるから、下段左方にはプリンタ装置の選択表示エリアを設けてある。
ここでプリンタ装置を選択することにより、それぞれに対応した設定情報が読み出され、上述した色ずれを修整したり、出力解像度を一致させることになる。
レイアウトの中には「アルバム印刷」のレイアウトが用意されており、「アルバム詳細」のコマンドボタンをクリックすると主表示エリアには図44に示す操作画面が表示される。この表示画面においても上段部分には横方向にスクロール可能な表示エリアを配してアルバムのパターンを表示可能となっており、この例ではA4用紙を横二列縦四段に配して市松様に画像を印刷するものと、左側半分に縦四段に配して画像を印刷するものと、上下に二段に分けて画像を印刷するものとを示している。また、アルバム印刷用のオプションとして、コメントを印刷したり、日付を印刷したり、ページタイトルを印刷させるのを選択できるようにチェックボックスを設けてあるとともに、アルバム印刷においては日をおいて順次印刷していくことから通しのページ番号を印刷できるようにページ番号の指定覧も設けてある。なお、このページ番号は前回のアルバム印刷の後続ページ番号を自動的にセットするようにしても良い。そして、この表示通りで良ければ「OK」のコマンドボタンをクリックすればよいし、気に入らなければ「キャンセル」のコマンドボタンをクリックすればよい。
【0133】
図34に示す同時プリントの最後の処理は「印刷」であるが、この主表示エリアには図45に示すように現在指定されているプリンタ装置の機種と、印刷する用紙のサイズと、必要な枚数を含めて確認用のメッセージを表示し、さらに印刷を開始させるための「実行」のコマンドボタンと、「キャンセル」のコマンドボタンを用意してある。むろん、この状態で「実行」のコマンドボタンをクリックすれば印刷が開始される。カラープリンタ17bによっては印刷に時間を要することが少なくないため、予め指定しておくべき操作を全て完了した上でこの「実行」ボタンをクリックすれば風呂上がりには印刷を全て完了させておくということが容易になる。
【0134】
ところで、図46はこのような「プリント指定」と「印刷」の処理を実行するDPE印刷制御部50の具体的構成を示している。印刷画像指定部50aは上述したようにして選択された画像データの指定を受け継ぐものであり、フレーム指定部50bとレイアウト指定部50cとによって「プリント指定」の処理を実行し、プリント指定部50dによる制御の下で印刷スタイル作成部50eと印刷画像処理部50fとで実際の印刷データを生成する。一般に画像データはRGBの多階調表示で表されている反面、印刷はCMYKの二階調表示が多い。このため、印刷画像処理部50fは上述した指定に応じた画像処理を実行させた上でRGB→CMYKの色空間の変更ととともに多階調→二階調の階調変換処理も併せて実行する。
【0135】
なお、一つの画像データに対して複数の修整情報を時系列的に保存するようにする場合、修整の削除を行う際には履歴を表示し、一つ一つ遡って削除するようにしていけばよい。むろん、事例列的な修整データがある場合には最古のものから順番に画像処理を施していって利用したい画像データを再現することになる。
また、修整を追加したい場合には新たに修整情報を生成し、以前の修整情報を残したまま保存する。
<第二の実施例>
一方、図47は上述したフォルダ単位の階層構造をより具体的に示したものである。まず、フィルムデータ30cについては、この画像データ処理装置の主要プログラムが格納される「main」フォルダ31のデータベースファイルai_dpe.db0として保存されている。主要プログラムと同一フォルダであるので、どのパトローネがどのフォルダに対応するかは核となる重要な情報であり、ユーザーの任意の指定によって場所を変えてしまうことにより、結果的に散逸してしまうことを防止する。次に、CD−ROM13c−1等の交換可能な記憶領域に保存された画像ファイル30aについては、パトローネ単位で写真データ30bを管理するものとして、この写真データ30bを「main」フォルダ31の中に形成した「removable」フォルダ32にデータベースファイルphoto1.db1,photo1.db2,photo2.db1,photo2.db2として保存している。ここで、一つのパトローネに対してphoto1,photo2という名称が付されつつ、それぞれに拡張子db1,db2が付された二つのファイルを生成している。この二つのデータベースファイルのうち、拡張子がdb2となっているものが写真データ30bにおけるサムネールの専用のファイルであり、拡張子がdb1となっているファイルに残りの写真データ30bが格納されている。従って、この例では一組のデータベースファイルphoto1.db1,photo1.db2で写真データ30bを構成している。
【0136】
一方、画像ファイル30aをハードディスク13b上に保存する場合は「main」フォルダ31の中に形成した「films」フォルダ33内に保存される。ここで、「films」フォルダ33の中にはさらにパトローネごとに一つずつのフォルダが形成され、パトローネの名称として「海水浴」を設定したときには「海水浴」フォルダ34となるし、パトローネの名称として「ハイキング」を設定したときには「ハイキング」フォルダ35となる。そして、それぞれのフォルダ内には写真データ30bとしてデータベースファイルai_dpe.db1,ai_dpe.db2が作成されるとともに、個別の画像ファイル30aがユニークな名称で保存されている。二つのデータベースファイルは先ほどと同様に拡張子がdb2のものにサムネールデータが保存され、拡張子がdb1のものに残りの写真データが保存されている。また、このデータベースファイルは同じディレクトリに保存される画像ファイル30aだけの情報が格納されている。むろん、「ハイキング」フォルダ35についても全く同様である。
【0137】
また、処理の都合上、一時的に分離不明なものを保存しておくパトローネがあると便利であり、「その他」という名称のパトローネを用意してある。そして、この「その他」のパトローネに分類される画像ファイル30aは「films」フォルダ33の直下に上述した「海水浴」フォルダ34や「ハイキング」フォルダ35と同列で保存されている。ここでも当該ディレクトリに存在する画像ファイルを対象としたデータベースファイルai_dpe.db1,ai_dpe.db2が作成されている。
【0138】
このように画像ファイル30aの存在場所は、交換可能な記録媒体上かハードディスク13bとなり、それぞれパトローネ単位で管理され、その存在場所は「main」フォルダ31のデータベースファイルai_dpe.db0で集中管理されている。そして、データベースファイルai_dpe.db0内でリンク先としてその情報が格納されている。リンク先がハードディスク13b上であれば画像ファイル30aは写真データ30bとともに一つのディレクトリが確保されて保存されるし、交換可能な記録媒体上であれば写真データ30bだけを一つのディレクトリに集中して保存している。なお、写真データ30bと画像ファイル30aとが同じディレクトリにない場合、すなわち交換可能な記録媒体上にある場合には写真データ30bであるデータベースファイルphoto1.db1,photo1.db2のファイル名もフィルムデータ30cに保存されている。これは、複数のパトローネの写真データ30bが一つのディレクトリ上に保存されることになるためである。これに対して写真データ30bと画像ファイル30aとが同じディレクトリにある場合、写真データ30bであるai_dpe.db1,ai_dpe.db2の名称は特に重要ではない。これは、パトローネごとに一つのディレクトリが確保され、その中には一組のデータベースファイルai_dpe.db1,ai_dpe.db2しか存在しないためである。むろん、ディレクトリの名称がパトローネの名称に対応するため、パトローネの名称でその所在も特定される。
【0139】
ところで、画像ファイル30aと写真データ30bをリンクさせる手法は様々である。上の例では複数の画像ファイル30aに対して一組のデータベースファイルを形成するようにしているが、ファイル単位で分散させることも可能である。図48は一つの画像ファイル「0616000x.jpg」に対して上述した修整情報や特徴情報や色合せ情報等を含む一つのアトリビュートファイル「0616000x.ATB」を写真データ30bとして生成している。この場合、一つのパトローネに対して一つのディレクトリを生成し、各ディレクトリに画像ファイル30a群とアトリビュートファイル30d群とが保存される。画像ファイル30aを扱うに際しては、まず、各ディレクトリ内のアトリビュートファイル30dと画像ファイル30aとが一対一で対応しているか判断し、一致していればアトリビュートファイル30d内のサムネールデータを使用して簡易的な表示や各種の操作の処理を実行する。この場合、フィルムデータ30cに書き込まれたディレクトリの存在場所と各画像ファイル30aの名称とによってアトリビュートファイル30dが特定されるので、これらの情報が画像ファイル30aと修整情報とのリンクの情報を構成する。
【0140】
また、データベースファイルを生成しない他の一例として、画像ファイル30aと写真データ30bを一体化したファイルを生成することも可能である。図49(a)はその場合のディレクトリ構造の一例を示しており、一つの画像ファイル「0616000x.jpg」の存在を前提として写真データ30bを含めた一つのファイル「0616000x.PHT」を生成している。この場合は、画像ファイル30aが存在することを前提として写真データ30bを付属させるような対応であるため、別ファイルとした場合のように対応が不一致となることはない。
【0141】
また、修整処理のバージョンアップが予見されるし、その他予見できない変更に対応するためにも予備の情報が必要となる。図49(b)には修整処理のバージョンアップに対応して画像修整エンジンのバージョンを示す情報を含める例を示している。ここでは、画像ファイル「xxxx.jpg」と写真データ「xxxx.ATB」に加えて画像修整エンジンのバージョンを示す情報ファイル「xxxx.ENG」とを一体化して一つの統合されたファイル「xxxx.PHT」を生成している。
【0142】
このようなフォルダ構造を採用した場合の具体的な処理を図50に示している。上述したように、通常の修整処理結果はサムネールにのみ反映させておき、オリジナルの画像ファイル30aには修整を加えていない。従って、等倍表示や拡大表示の場合、あるいは印刷の場合に、実際の画像ファイル30aに修整処理を加える必要がある。むろん、修整結果は、一時的なワークの画像データ30aである。
【0143】
以上のようなファイル構成を前提として図50のワーク画像ファイル生成処理について説明する。図34の同時プリント処理を実行しているときには、その途中で修整結果をチェックするために画像ファイルを等倍あるいは拡大して表示する必要が生じる。また、最終的に印刷を実行する場合には修整結果を反映させた画像ファイルが必要である。図50に示すワーク画像ファイル生成処理では、このような場合にワークの画像ファイルを生成する処理である。
【0144】
なお、この処理は一つのモジュールなどとして実現され、当該モジュールを呼び出すにあたってはあるパトローネが選択されている下で画像ファイルが指定されているものとする。従って、図51に示すようにパトローネの選択情報は変数PATRONEに、また、各パトローネ内に保持されている画像ファイル30aのそれぞれについて選択の有無を示す変数f_PICTが用意されている。この変数f_PICTについては、1000バイトの文字領域であるが、各バイトが一枚の画像ファイル30aごとの選択情報となっており、都合1000枚の画像ファイル30aの選択の有無を指定できるようになっている。そして、引数を与えて任意の場所の1バイトを参照でき、その情報で各画像ファイル30aの選択の有無を判定するものとする。
【0145】
まず、ステップ700では変数PATRONEから選択されているパトローネのフィルムデータ30cを「main」フォルダ31のデータベースファイルai_dpe.db0で参照する。該当するフィルムデータ30cには当該パトローネについて媒体属性とリンク先が含まれている。従って、ステップ700ではこのリンク先を取得し、ステップ705では媒体属性から交換可能な記録媒体、すなわちリムーバブルであるか否かを判断して処理を分岐させる。リムーバブルの場合は、まず、ステップ707にて対応すべきリムーバブル記録媒体を装填する。具体的には、リムーバブル記録媒体のリンク先であるパス名や媒体ラベルを取得し、ユーザーに示して所定のドライブにセットを促し、セットされたらそれが正しいかどうかを確認して間違っていたらやり直させる。これが完了したら、ステップ710にて「removable」フォルダ32内で対応するデータベースファイルを参照する。データベースファイルphoto1.db1,photo1.db2であれば、変数f_PICTにおける指定情報に基づいて指定された各画像ファイルの修整情報を当該データベースファイルから取得する。
【0146】
また、媒体属性に基づいてリムーバブルでない場合には、ステップ715にてパトローネの名称が付されたフォルダをfilmsフォルダ33内で探し、該当するフォルダ内のデータベースファイルai_dpe.db1,ai_dpe.db2を参照する。そして、変数f_PICTにおける指定情報に基づいて指定された各画像ファイルの修整情報を当該データベースファイルから取得する。
このようにして画像ファイル30aの所在とともにこれに対応する修整情報などを取得できるため、ステップ720では指定された修整情報に基づいて対応する画像修整エンジンにて修整処理を実行させ、さらにステップ725で本来の当該・拡大表示あるいは印刷処理を実行させる。なお、ステップ725については当該モジュールの中から実行しても良いし、一度処理を上位のモジュールに戻して実行させるようにしても構わない。
【0147】
一方、パトローネが選択された状態で画像表示領域dp4にサムネール画像を表示させることになるが、この場合は図52に示すサムネール表示処理を実行する。この場合も、まずステップ730にて変数PATRONEに基づいて選択されているパトローネのフィルムデータ30cを「main」フォルダ31のデータベースファイルai_dpe.db0で参照し、該当するフィルムデータ30cの中から当該パトローネについての媒体属性とリンク先を取得する。そして、媒体属性から交換可能な記録媒体、すなわちリムーバブルであるか否かを判断し、リムーバブルの場合は、ステップ740にて「removable」フォルダ32内のデータベースファイルphoto1.db2からサムネールデータを取得する。また、媒体属性に基づいてリムーバブルでない場合には、ステップ745にてパトローネの名称が付されたフォルダをfilmsフォルダ33内で探し、該当するフォルダ内のデータベースファイルai_dpe.db2からサムネールデータを取得する。そして、ステップ750では取得されたサムネールデータを画像表示領域dp4に表示する。
【0148】
次に、画像処理の順序を任意に変更可能とする処理について説明する。図53はこの場合の写真データ30bにおける修整情報の内容を示している。処理の内容は、最左欄に示すように「自動画像修整」、「明るさ」、「コントラスト」、「赤(強調)」、「緑(強調)」、「青(強調)」である。また、各各処理ごとに、設定すべき個別の指定情報は最上覧に示すように「修整エンジンのバージョン」、「順番(実行順序情報)」、「処理強さ」となっている。
【0149】
ここで、「自動画像修整」は各処理内容の実行順序が固定であるので、選択しない場合にのみ他の処理同士の間で順番が有効となる。 同図(a)は自動画像修整の順番に「1」を設定してあり、他の処理は「0」であって選択していないことを意味する。これに対して同図(b)は自動画像修整の順番は「0」であって選択されていない。そして、他の処理は「1」〜「5」という順番が設定されている。
【0150】
図54はこのような処理の順番が付されている場合に画像の修整処理を実行させるフローチャートを示している。まず、ステップ760では処理順序別のソートを実行する。上述したように、処理を選択していない場合には「0」を付すので昇順ソートの結果、選択しない処理が先頭に来る。ステップ765では順番の欄に「0」が付されて先頭に並べられた処理を排除する。例えば、図53(a)に示すものであれば自動画像処理だけが残るし、同図(b)に示すものであれば自動画像処理だけが排除され、処理対象のものとして赤強調、緑強調、青強調、明るさ、コントラストの順に並ぶ。
【0151】
ステップ770はループの終了判断であって処理すべきものがなくなったらこの修整処理を終了させ、処理すべきものがあればステップ775とステップ780にて処理を実行させる。ステップ775は最優先の処理の処理エンジンに画像データと処理強さのパラメータを引き渡して修整処理を実行させる。最優先の処理は、ソートされて先頭に並べ替えられた処理であり、図53(b)の例であれば最初は赤強調の処理である。
【0152】
この処理の後、ステップ780では未処理のものを繰り上げる。最初、赤強調の処理が最優先の処理であり、その処理を終了したら赤強調の処理を排除して二番目の青強調を最優先の処理とし、以下同様に繰り上げる。このような繰り上げの処理によって最後の処理が終了するまで順番通りに処理が実行され、最後に実行すべき処理がなくなってループ処理を終了する。
図55はステップ775の処理を観念的に示している。画像修整制御部40はいわゆる画像修整エンジンとして利用されることを前提に複数の画像修整エンジンを内蔵している。同図に示すものでは、自動画像修整の修整エンジンとしてバージョン1(41)とバージョン2(42)があり、明るさ修整の修整エンジンとして同様にバージョン1(43)とバージョン2(44)があり、コントラスト修整の修整エンジンとしてバージョン1(45)があり、その他、これと同様に備えられている。ステップ775では同図にて作法に示すように処理エンジンとバージョンと画像データと処理強さをパラメータとして画像修整制御部40に指定すると、同画像修整制御部40は指定されたとおりの画像修整を画像データに実行して修整画像データを出力する。
【0153】
すなわち、同画像修整制御部40ではパラメータの内容に応じた修整エンジン41〜45…が選択され、これにパラメータを与えて画像修整を実行する。むろん、画像修整制御部40自体は多数のモジュールの集合体のように構成され、分岐処理を経て特定の修整エンジンのモジュールが実行される。
このように修整情報の一つのパラメータとして順番の要素を設定しておき、ソートを実行させることによって不要な処理を実行することなく、望むとおりの順番で修整処理を実行させることができる。
【0154】
一方、「自動画像修整」、「明るさ」、「コントラスト」、「赤(強調)」、「緑(強調)」、「青(強調)」というそれぞれの処理はグループ化して使い分けることもできる。例えば、「自動画像修整」だけの第1グループと、「明るさ」と「コントラスト」の第2グループと、「赤(強調)」と「緑(強調)」と「青(強調)」の第3グループというように三つのグループ化を行うことができる。第1グループは独自に特徴抽出処理と修整情報作成処理と修整指定処理が必要であり、一連の処理として実現されなければならない。また、第2グループは処理の内容として輝度の変換を主眼としており、共通性がある。さらに、第3グループは各色成分の強調処理であって処理内容は共通である。
【0155】
従って、CPUの処理能力が高い場合であるなど、実行環境に余裕があればすべてのグループの指定を実行可能としつつも、実行環境次第で第3グループは実現可能であるが、第1グループと第2グループは実現できないようにするということが可能である。これは環境設定などで第1〜第3グループの実行可否を定めておき、画像修整制御部40の実行可否判定部46にて実行可否情報に基づいて各修整エンジン41〜45…の実行可否を参照する。そして、実行可能なグループの処理については修整エンジンを実行させるものの、実行不能なグループの処理については修整エンジンに実行させることなく処理を完了したものと同様にして終了させる。
【0156】
ところで、これまでは写真データ30bが一組のものを主に説明してきたが、上述した履歴情報のように複数の組を有する構成とすることも可能である。図56はこのような修整情報の組を複数組持つ場合の写真データ30bの内容の一例を示している。内容的には図53(a)(b)に示すものを複数組備えている。
各組を1グループと呼ぶものとすると、図57は写真データ30bが複数グループを備える場合の処理を示すフローチャートである。まず、これまでは修整の指定を一つしか備えていないため、複数グループとして保存する必要がある。
【0157】
ステップ800にて修整の対象とする画像データを選択したら、ステップ805では具体的に実行させるべき修整を指示し、ステップ810にて指示した修整を実行させる。むろん、ステップ810の画像修整はもとの画像ファイル30aを表すサムネールデータに対して実行させる。また、以上の指示の与え方については上述したものと同様である。
次に、ステップ815ではステップ805で与えた修整指示を保存するか否かをユーザーに問合せる。問い合わせはGUIを使用してディスプレイ17a上に表示させ、マウス15bあるいはキーボード15aで応答せしめる。保存する場合はステップ820にて保存グループの指定を入力させる。予め5つの保存グループを選択できるようにしておき、そのいずれかをGUIを介して入力せしめる。むろん、保存グループの数は任意であるし、上限を一定に決めることなく順番に追加することも可能である。
【0158】
保存グループが決定されたらステップ830で修整情報を書き込む。予めグループの数を決めておくときの一態様として、各グループに所定の場合を対応させるようにしても良い。例えば、グループ1はスライドショーの場合の修整処理であり、グループ2は印刷の場合の修整処理であるという具合である。また、各グループを選択するときにそのグループがスライドショーの場合のものであるとか印刷の場合のものであるというように個別に指定を加えられるようにしても良い。ステップ825はこのようにグループとそれを実行する条件を対応させる処理を表しており、必須のものではない。
【0159】
修整情報を書き込んだら、ステップ840ではサムネールデータも書き込む。
サムネールデータは各グループごとに必要であり、上述した写真データ30bのデータベースファイルで拡張子がdb2のものに書き加える。
以上のようにして複数のグループが登録されている場合の修整処理を図58に示している。ここでは、図54に示す修整処理の前提として、ステップ850にて複数グループの修整情報が保存されているか否かを判定し、複数グループがある場合にのみステップ855にていずれかのグループを選択させる。また、複数のグループがなければ存在するグループをステップ860にてデフォルト指定する。ステップ855あるいはステップ860にて一つのグループが修整情報として指定されるので、以下は図57に示すステップ800以下の処理を実行する。
【0160】
なお、この例ではパラメータ全体を複数セット用意しておいていずれかの組を選択している。しかし、必ずしも全体を複数セット用意するのではなく、一部の画像処理について複数の処理パターン用意しておくことも当然に可能である。例えば、図53や図56に示すものにおいて処理強度の欄を複数用意しておき、ステップ820にて保存グループを指定するのと同様にして設定する欄を指定する。また、読み出すときにはステップ850にて複数の欄に複数の値が設定されていればステップ855にて読み出す設定を選択させる。
【0161】
一方、上述したようにグループにそれを実行する条件を付して保存することがある。この場合は図59に示すフローチャートに従って修整処理を実行する。すなわち、ステップ870にて複数グループがあるか否かを判断し、複数グループがあればステップ875にて現在の環境を取得する。この環境とは、上述したような条件に対応する。すなわち、現在、スライドショーを実行しているのか印刷処理を実行しているのかを所定の変数あるいはフラグを参照して判断する。参照する変数はどのようなものでもよく、一例としてグローバルな変数JOKEN
というものを設定しておいてもよい。現在の条件を取得したら、ステップ880にてこの条件に対応するグループを選択する。以下は、図57に示すステップ800以下の処理を実行する。
【0162】
このようにしておくと、修整処理を実行したときにその実行条件を設定しておくと、表示や印刷などの処理が起動されたときに自動的にその環境を判断し、予めその環境のために修整処理を設定してあれば自動的に該当する修整処理が行われる。例えば、スライドショーであると画像の修整中に本来の表示間隔を過ぎてしまうことのないようにする必要がある。従って、処理時間の短縮が望まれ、処理の簡素化が必須となる。これに対して印刷の場合は時間がかかってもきれいな画質を望むので、望みどおりの修整処理を実行させても構わない。
【0163】
このような背景からスライドショーの場合は自動画像修整ではなく、比較的処理の簡易な明るさとコントラストだけを修整するグループを登録しておき、印刷の場合は自動画像修整を実行するようにグループとして登録しておくということが有効である。
次に、図60はこのような複数のグループを使用して履歴に利用する場合のフローチャートを示している。ステップ900〜ステップ910は上述したステップ800〜810の場合と同様に所定の画像データを選択して修整を実行させる。この後、ステップ915で修整指示を保存するか否かを選択させ、保存する場合にはステップ920にて最新修整情報のグループを追加する。例えば、既存のグループが3つであれば4つ目のグループとして保存する。また、このときに修整日時などを情報の一つとして加えておいても良い。そして、ステップ925ではステップ840等と同様に対応するサムネールデータを所定のデータベースファイルに追加する。
【0164】
履歴である以上、過去の修整の上に新たな修整が実行されなければならない。
図61は履歴の修整情報がある場合の修整処理のフローチャートを示している。
まず、ステップ930ではグループの実行順にソートを実行する。通常は番号の大きいグループの方が新しい修整情報であり、必須ではない。しかし、仕様の変更もあり得るし、上述したように修整日時の情報を保存している場合もあるので、ソートを実行できるようにしておく意味がある。
【0165】
ソートが終わればステップ935にてグループ数を変数g_totalにセットし、ステップ940にてループポインタiに「1」をセットする。そして、ステップ945ではループポインタiで示されるグループiの修整情報に基づいて修整処理を実行する。ループポインタiはステップ950にて「1」ずつ追加されていくので、グループ番号の小さい順に修整処理が実行されることになり、古い順に履歴が再現されることになる。そして、ステップ955ではループポインタiが既存のグループ数を越えていないか判断し、グループ数を越えていない限りは未処理の修整処理があるものとしてループを繰り返す。
【0166】
一方、これまでは修整処理として画像データの一部に対してのみ実行することを前提としていないが、むろん全体に対して実行される場合のみならず、一部に対して実行されるようにすることも可能である。ここで一部とは画像の一部の領域の場合もあり得るし、複数のレイヤから構成されていれば一部のレイヤだけということもあり得る。
図62はこのような修整領域を指定して画像修整を実現する場合のフローチャートを示している。ステップ960で処理の対象となる画像データを選択したら、ステップ965で修整領域を指定してステップ970で修整指示を与え、ステップ975にて画像を修整する。領域の指定と修整の内容は適宜試行錯誤を繰り返すことが多いから、ステップ965〜ステップ975の処理の順番は相対的な実行順序を表しているに過ぎない。
【0167】
ステップ980にて修整指示を保存するか問い合わせ、保存するのであればステップ985にて領域の情報とともに修整指示を修整情報として保存する。
ただ、このようにして保存される修整領域は修整エンジンにとって一つのパラメータに過ぎないといえる。従って、図55に示すように修整エンジンの側で領域やレイヤに対応して部分的に修整を加え、修整画像データとして出力する。
修整領域の指定を具体的な特定領域を指定して行なう場合、例えば、矩形領域であれば二つの対角コーナーの座標値を指示したり、あるいはオブジェクトごとに指示したり、任意の曲線で所望の領域を指示するといったことが可能である。
また、全体の中央領域とか、上半分とか、下半分といった指定でも構わない。
【0168】
一方、画像の色を指定して画像処理を対応づけることも可能である。例えば、明るさの影響受けにくい色度を指定して画像処理を対応づけることもできる。肌色の領域であればオブジェクトは人間の顔であることが殆どであると考えられ、人間の顔であればシャープにするよりもややぼかし気味の方が美しく見える。従って、領域情報の代わりに肌色の色度を指定し、修正指示としてシャープネスを減らす(ぼかす)指示を与える。そして、修整エンジンの側では処理対象画素の色度を識別し、対象となる色度であれば指示された処理強度のアンシャープ化を実施する。
【0169】
色度毎の他の例として、青空の色度を指定してアンシャープにさせることも好適である。また、夕焼けを考慮して赤みを強調する処理を指定することも好適である。
ここで、各画素の画像データが(R,G,B)で表されるとすると、色度は、 r=R/(R+G+B)
b=B/(R+G+B)
として表される。色度は人の肌が暗く写っているときも明るく写っているときもでもあまり影響を受けず、一定の分布を示し、より具体的には、
0.33<r<0.51
|0.74r+b−0.57|<0.1
という関係式で判断できる。そして、各画素についてこの条件があてはめられれば肌色領域に属するものといえる。これが青空であると、肌色の場合よりも変動幅が大きいことを考慮して、
0.17<r<0.30
|1.11r+b−0.70|<0.2
なる関係式が成立していればよい。
【0170】
このように画素の位置、画素の色などの画素の状況に応じて最適な画像処理を実施できるようにするため、画素の状況に対応したパラメータを関連付けて保存しておき、このパラメータを取得したときには画素の状況に対応した画像処理を実施して画像を再現する。
このように、画像データをフィルムメタファとして管理されるフォルダに収容しつつ、各画像データに対応した写真データ30bのデータベースを用意しておき、所望の画像データについて所望の画像処理を選択すると、この選択した画像処理を上記データベース構造における修整情報として更新するようにし、実際に表示したり出力したり印刷する必要が生じたときには元の画像データを残したままワークエリア上でのみ修整情報を参照して各種の画像処理を実行するようにしたため、オリジナルとしての画像データを残したまま容易に画像修整などを実施することが可能となる。
【図面の簡単な説明】
【図1】
本発明の一実施形態にかかる画像データ処理装置のクレーム対応概略構成図である。
【図2】
同画像データ処理装置の具体的ハードウェアのブロック図である。
【図3】
同画像データ処理装置の機能ブロック図である。
【図4】
共通機能部のブロック図である。
【図5】
フィルムデータ管理部の機能ブロック図である。
【図6】
同フィルムデータ管理部が管理するデータ構造を示す概略説明図である。
【図7】
管理パラメータの変数宣言を示す図である。
【図8】
画像修整制御部の機能ブロック図である。
【図9】
画像修整制御を説明するための手続の流れを示す図である。
【図10】
画像ファイルの構成を示す図である。
【図11】
処理対象画素を移動させていく状態を示す図である。
【図12】
輝度分布を拡大する場合の分布範囲を示す図である。
【図13】
輝度分布を拡大させるための変換関係を示す図である。
【図14】
輝度分布の端部処理と端部処理にて得られる端部を示す図である。
【図15】
輝度分布を拡大する際の変換テーブルを示す図である。
【図16】
γ補正で明るくする概念を示す図である。
【図17】
γ補正で暗くする概念を示す図である。
【図18】
γ補正で変更される輝度の対応関係を示す図である。
【図19】
明るさの評価とγの対応関係を示す図である。
【図20】
各色成分毎の特徴ベクトルとするための要素の抽出方法を示す図である。
【図21】
彩度分布の集計状態の概略図である。
【図22】
彩度と彩度強調指数との関係を示す図である。
【図23】
画像の変化度合いを直交座標の各成分値で表す場合の説明図である。
【図24】
画像の変化度合いを縦軸方向と横軸方向の隣接画素における差分値で求める場合の説明図である。
【図25】
隣接する全画素間で画像の変化度合いを求める場合の説明図である。
【図26】
画像データの一例を示す図である。
【図27】
5×5画素のアンシャープマスクを示す図である。
【図28】
自動画像調整の指定を行う際のフローチャートである。
【図29】
手動画像調整の指定を行う際のフローチャートである。
【図30】
トリミングの指定を行う際のフローチャートである。
【図31】
回転の指定を行う際のフローチャートである。
【図32】
修整取消の指定を行う際のフローチャートである。
【図33】
修整された画像データを利用できるようにする処理のフローチャートである。
【図34】
同時プリントの処理の操作画面を示す図である。
【図35】
新たに画像データを取り込む際の操作画面を示す図である。
【図36】
自動画像修整の処理を行う場合の操作画面を示す図である。
【図37】
自動画像修整をデフォルトで実行するようにした場合の操作画面を示す図である。
【図38】
トリミングの処理を行う場合の操作画面を示す図である。
【図39】
回転の処理を行う場合の操作画面を示す図である。
【図40】
自動画像調整の処理を行う場合の操作画面を示す図である。
【図41】
手動画像調整の処理を行う場合の操作画面を示す図である。
【図42】
修整取消の処理を行う場合の操作画面を示す図である。
【図43】
プリント指定の処理を行う場合の操作画面を示す図である。
【図44】
アルバム印刷の処理を行う場合の操作画面を示す図である。
【図45】
印刷の処理を行う場合の操作画面を示す図である。
【図46】
DPE印刷制御部の機能ブロック図である。
【図47】
ディレクトリ構造を示す図である。
【図48】
ファイル構造の変形例を示す図である。
【図49】
ファイル構造の他の変形例を示す図である。
【図50】
ワーク画像ファイルの生成処理のフローチャートである。
【図51】
ワーク画像ファイルの生成処理で使用する変数の定義例を示す図である。
【図52】
サムネール表示処理のフローチャートである。
【図53】
修整情報の内容を示す図である。
【図54】
修整処理の一例のフローチャートである。
【図55】
修整処理を示す概念図である。
【図56】
複数の修整情報を持つ場合の内容を示す図である。
【図57】
複数のグループで修整情報を持つ場合の修整操作のフローチャートである。
【図58】
複数のグループで修整情報を持つ場合の修整処理のフローチャートの一部である。
【図59】
グループを環境に対応させた場合の修整処理のフローチャートの一部である。
【図60】
複数のグループで履歴の修整情報を持つ場合の修整操作のフローチャートである。
【図61】
複数のグループで修整の履歴を実現する場合の修整処理のフローチャートである。
【図62】
画像の一部に修整を加える場合の修整操作のフローチャートである。
【符号の説明】
10…コンピュータシステム
11a…スキャナ
11b…デジタルスチルカメラ
11c…ビデオカメラ
12…コンピュータ本体
12a…オペレーティングシステム
12b…ディスプレイドライバ
12c…プリンタドライバ
12d…アプリケーション
13a…フロッピーディスクドライブ
13b…ハードディスク
13c…CD−ROMドライブ
14a…モデム
15a…キーボード
15b…マウス
17a…ディスプレイ
17b…カラープリンタ
18a…スピーカ
18b…マイク
20…共通機能部
20a…画像選択部
20b…表示指定部
20c…ファイル編集部
20d…検索部
20e…一括コメント部
20f…一括整理部
20g…画像処理部
20h…画像編集部
20i…サムネール作成部
20j…画像入力部
20k…画像出力部
20m…画像表示部
30…フィルムデータ管理部
30a…画像ファイル
30b…写真データ
30c…フィルムデータ
40…画像修整制御部
40a…画像特徴抽出部
40b…修整情報作成部
40c…修整指定部
50…DPE印刷制御部
50a…印刷画像指定部
50b…フレーム指定部
50c…レイアウト指定部
50d…プリント指定部
50e…印刷スタイル作成部
50f…印刷画像処理部
60…メイン制御部
60a…環境設定部
60b…設定情報ファイル [Document name] statement
Patent application title: IMAGE DATA PROCESSING APPARATUS, MEDIUM CONTAINING IMAGE DATA SET, MEDIUM CONTAINING IMAGE DATA PROCESSING PROGRAM, AND IMAGE DATA PROCESSING METHOD
[Claim of claim]
    1. Parameter setting means for setting a parameter representing the content of predetermined image processing to be performed on image data;
  Associate the above image data with the above parametersRelated informationData storage means for storing;
  Data acquisition means for acquiring the image data and the parameters with reference to the association informationAndAn image data processing apparatus comprising:
    2. Parameter setting means for setting parameters representing the contents of predetermined image processing to be performed on image data;
  Associate the above image data with the above parametersRelated informationAn image data processing apparatus comprising: data storage means for storing.
    3. A parameter representing the content of predetermined image processing to be performed on image data and the image data are stored together with mutual association information,
  Data acquisition means for acquiring the image data and the parameters with reference to the association information;
  An image data processing apparatus comprising: image processing reproduction means for obtaining image data subjected to the specified image processing based on the acquired image data and the parameter.
    [Claim 4] The image data processing apparatus according to any one of claims 1 to 3, wherein the image processing reproduction means obtains image data subjected to the specified image processing based on the acquired image data and the parameter. An image data processing apparatus comprising:
    [Claim5An image data processing apparatus according to any one of claims 1 to 3, wherein said parameter indicates the type or degree of image processing.
    [Claim6An image data processing apparatus according to any one of claims 1 to 3, wherein a plurality of said parameters are provided for each type of image processing.
    [Claim7An image data processing apparatus according to any one of the preceding claims, wherein a plurality of said parameters can be stored and a plurality of parameters can be selectively executed. .
    [Claim8The above claims 1 to 3, claims6And claims7The image data processing apparatus according to any one of the above, wherein the parameters include execution order information for performing image processing in a predetermined order.
    [Claim9The image data processing apparatus according to any one of claims 1 to 3, wherein the parameter is divided into a plurality of selectable sets, and image processing is performed based on the set of parameters selected at the time of execution. An image data processing apparatus characterized in that.
    [Claim10The image data processing apparatus according to any one of claims 1 to 3, wherein the parameters are divided into a plurality of sets, and a set of parameters corresponding to a state of a pixel is used properly. Processing unit.
    [Claim11The image data processing apparatus according to any one of claims 1 to 3, wherein the data storage means is capable of dividing the storage area into a hierarchical structure, and the image data and parameters are classified according to the hierarchical structure. An image data processing apparatus characterized in that.
    [Claim12An image data processing apparatus according to any one of claims 1 to 3, wherein said data storage means stores thumbnail data of said image data in association with said parameters. .
    [Claim13An image data processing apparatus as claimed in any one of claims 1 to 3, wherein said image data is managed on a storage device different from said parameter.
    [Claim14The image data processing apparatus according to any one of claims 1 to 3, wherein said parameter setting means sets image processing contents based on a result of statistically analyzing said image data. Image data processing device.
    [Claim15The image data processing apparatus according to any one of claims 1 or 3, wherein the image processing reproduction means selects and executes an image processing unit for performing image processing represented by the parameter. Image data processing device.
    [Claim16Image data,
  Parameters representing the contents of image processing so that predetermined image processing can be performed on corresponding image data;
  A medium storing an image data set in which the image data and association information for associating the parameters are recorded so that the contents of the image processing represented by the parameters can be applied to the image data.
    [Claim17A medium storing an image data processing program for performing image processing on image data by a computer, comprising:
  A parameter setting step of setting a parameter representing contents of predetermined image processing to be performed on the image data;
  Associate the above image data with the above parametersRelated informationA data storage step to be stored,
  A data acquisition step of acquiring the image data and the parameter with reference to the association informationAndA medium storing an image data processing program characterized by comprising.
    [Claim18A medium storing an image data processing program for performing image processing on image data by a computer, comprising:
  A parameter setting step of setting a parameter representing contents of predetermined image processing to be performed on the image data;
  Associate the above image data with the above parametersRelated informationA medium storing an image data processing program, comprising: a data storage step for storing.
    [Claim19A medium storing an image data processing program for performing image processing on image data by a computer, comprising:
  A parameter representing the content of predetermined image processing to be performed on image data and the image data are stored together with mutual association information,
  A data acquisition step of acquiring the image data and the parameter with reference to the association information;
  A medium storing an image data processing program, comprising: an image processing reproduction step of obtaining image data subjected to the specified image processing based on the acquired image data and the parameter.
    [20] A medium on which the image data processing program according to any one of claims 17 to 19 is recorded, image data subjected to the specified image processing based on the acquired image data and the parameter is obtained A medium storing an image data processing program comprising an image processing reproduction step.
    [Claim21The above claims17-Claims19A medium storing an image data processing program according to any one of the preceding claims, wherein the parameter represents a type or degree of image processing.
    [Claim22The above claims17-Claims19A medium storing an image data processing program according to any one of the above, wherein a plurality of the parameters are provided for each type of image processing.
    [Claim23The above claims17Or claim19A medium storing an image data processing program according to any one of the above, wherein a plurality of the parameters can be stored and a plurality of parameters can be selectively executed.
    [Claim24The above claims17-Claims19, Claim22And claims23A medium storing the image data processing program according to any one of the above, wherein the parameters include execution order information for performing the image processing in a predetermined order. .
    [Claim25The above claims17-Claims19In the medium storing the image data processing program according to any one of the above, the parameters are divided into a plurality of selectable sets, and image processing is performed based on the sets of parameters according to the execution conditions. A medium on which an image data processing program is recorded.
    [Claim26The above claims17-Claims19In the medium storing the image data processing program according to any one of the above, the above parameters are divided into a plurality of sets, and an image data processing program characterized in that a set of parameters corresponding to the situation of pixels is used properly Medium.
    [Claim27The above claims17-Claims19In the medium storing the image data processing program according to any one of the above, in the data storing step, a storage area which can be divided as a hierarchical structure is used, and the image data and the parameters are divided according to the hierarchical structure. A medium on which an image data processing program is recorded.
    [Claim28The above claims17-Claims19A medium storing the image data processing program according to any one of the above, wherein in the data storing step, thumbnail data of the image data is stored in association with the parameter.
    [Claim29The above claims17-Claims19A medium storing the image data processing program according to any one of the above, wherein in the data storing step and the data acquiring step, the image data is read and written on a storage device different from the parameter. Medium on which the program was recorded.
    [Claim30The above claims17-Claims19In the medium storing the image data processing program according to any one of the above, in the parameter setting step, the image data is statistically analyzed, and image processing content is set based on the result. Medium on which the processing program is recorded.
    [Claim31The above claims17Or claim19An image data processing program characterized in that, in the medium storing the image data processing program according to any one of the above, in the image processing reproducing step, an image processing program for performing image processing represented by the parameter is selected and executed. The medium on which you recorded
    [Claim32A parameter representing the contents of predetermined image processing to be performed on image data is set, and the image data is associated with the parameter.Related informationWhile saving,
  Acquisition of the image data and the parameters with reference to the association informationDoAn image data processing method characterized in that.
    [Claim33A parameter representing the contents of predetermined image processing to be performed on image data is set, and the image data is associated with the parameter.Related informationAn image data processing method characterized by storing.
    [Claim34A parameter and image data representing contents of predetermined image processing to be performed on image data are stored together with mutual association information,
  Image data characterized by obtaining the image data and the parameter with reference to the association information, and obtaining image data subjected to the specified image processing based on the obtained image data and the parameter. Processing method.
    [35] The image data processing method according to claim 32, wherein the image data subjected to the specified image processing is obtained based on the acquired image data and the parameter.
    [Claim36The above claims32And storing thumbnail data of the image data in association with the above-described parameters.
    [Claim37The above claims32-Claims34The image data processing method according to any one of the above, wherein the image data is managed on a storage device different from the parameter.
    [Claim38The above claims32-Claims34The image data processing method according to any one of the above 4, wherein the image data is analyzed statistically, and the contents of image processing are set based on the result.
    [Claim39The above claims32-Claims34An image data processing method according to any one of the preceding claims, wherein an image processing unit for performing image processing represented by the parameter is selected and implemented.
Detailed Description of the Invention
      [0001]
    Field of the Invention
  The present invention relates to an image data processing apparatus which can appropriately modify and use image data, a medium storing an image data set, a medium storing an image data processing program, and an image data processing method.
      [0002]
    [Prior Art]
  In recent years, digital still cameras are rapidly being used. In the case of photographing with a digital still camera, images can be managed as data, and modification etc. can be easily performed. For example, the image data can be easily corrected by making the image brighter when the image appears dark, or making the sky color more blue and beautiful.
      [0003]
  Such processing is widely used as image processing, but if input image data is processed, it becomes new image data, and this will be overwritten in the original storage area.
      [0004]
    [Problems to be solved by the invention]
  The conventional image data processing apparatus described above has the following problems.
  First, although the original image data is changed, it is difficult to use for those that emphasize the original image data. Of course, it is also possible to save original image data and then save it under another name, but it is complicated and increases the necessary storage area. Further, individually managing the original and the modified image data in such a case is extremely complicated itself.
      [0005]
  In addition, in some image formats, the image quality may deteriorate each time rewriting is performed, so in this sense, the image quality may deteriorate even if the correction is slight.
  The present invention has been made in view of the above problems, and an image data processing apparatus capable of easily referring to a result of image processing while securing originality of image data, and a medium recording an image data set An object of the present invention is to provide a medium storing an image data processing program and an image data processing method.
      [0006]
    [Means for Solving the Problems]
  In order to achieve the above object, the invention according to claim 1 relates parameter setting means for setting parameters representing contents of predetermined image processing to be performed on image data, and associating the image data with the parameters.Related informationData storing means for storing, and data acquiring means for acquiring the image data and the parameter with reference to the association informationAndAs a configuration to be equipped.
      [0007]
  Further, according to the second aspect of the present invention, parameter setting means for setting a parameter representing the content of predetermined image processing to be performed on the image data, and associating the image data with the parameterRelated informationAccording to the third aspect of the present invention, the image data and the parameter representing the contents of the predetermined image processing to be performed on the image data are stored together with the mutual association information. Data acquisition means for acquiring the image data and the parameters with reference to the association informationAndAs a configuration to be equipped.
      [0008]
  In the invention according to claim 1 configured as described above, when the parameter setting means sets a parameter representing the content of the predetermined image processing to be performed on the image data, the data storage means combines the image data and the parameter. AssociationRelated informationsave. Then, the data acquisition means acquires the image data and the parameter with reference to the association information.. Then, it shows in Claim 4.The image processing reproduction means obtains image data subjected to the specified image processing based on the acquired image data and the parameters.
      [0009]
  That is, parameters associated with image processing content are stored in association with the image data. For example, even when image processing is performed, the original image data is managed as a parameter without being changed, and image data subjected to image processing based on the parameter is obtained when necessary. Then, while making the result of such image processing available, the original image data is left as it is.
  The invention according to claim 2 and the invention according to claim 3 partially implement the whole of the invention.
      [0010]
  Moreover, the claim comprised as mentioned above5In the above, the type or degree of image processing is represented by the above-mentioned parameters. Thus, the content of the image processing is shown more specifically. Of course, it also indicates the type of image processing and the degree of image processing.
  Furthermore, the claims constituted as described above6In the present invention, a plurality of the parameters are prepared for each type of image processing, so it is possible to leave not only one content but a plurality of contents in a certain type of image processing. For example, assuming that one image processing is to adjust sharpness, a parameter representing one with a high degree of sharpness enhancement and a parameter representing a low degree of enhancement are stored, and either one is selected at the time of reproduction. When printing reproduced image data, the degree of enhancement of the optimum sharpness may change depending on the resolution of the printing apparatus, and it is also possible to leave a plurality of parameters in response to such a case.
      [0011]
  Furthermore, the claims constituted as described above7In the present invention, it is possible to selectively execute from a plurality of storable parameters. As a result, for example, when it is necessary to obtain sufficient time for image processing and when processing must be performed in a very short time, the same image quality is not necessarily required, so the latter can be realized with low load. It becomes possible to carry out image processing. Therefore, in the case of a slide show, image processing corresponding to the parameters in line with the execution of the slide show is performed, and when printing is performed, the image processing is performed in accordance with the parameters corresponding to this. Of course, this selection may be made by selecting an execution condition and selecting and executing one that meets the condition at the time of execution, or may be made by the user.
      [0012]
  Furthermore, the claims constituted as described above8In the present invention, it is assumed that there is a plurality of parameters, and the execution order information of the parameters is also provided, so that the image processing is performed in chronological order when the image processing is performed according to the execution order information. If the parameters are left for each operation, such parameters will represent a plurality of chronological histories. Therefore, the image processing process on the way will be faithfully reproduced. Of course, it is not necessary to execute everything, and it is also possible to stop on the way to reproduce the reproduction process.
      [0013]
  Furthermore, the claims constituted as described above9In the present invention, the parameters are divided into a plurality of sets, each of which can be selected arbitrarily, and image processing is performed based on the set of parameters selected according to the situation at the time of execution.
  That is, it is possible to select not only one kind of image processing result but also a plurality of image processing results. For example, image processing to be displayed beautifully when displayed on a display and image processing to be beautifully printed at the time of printing are often different. In such a case, it is convenient if parameters for display on the display and parameters for printing can be stored together. In addition, it is preferable to be able to prepare a set of parameters for each size and each user, even if the size corresponds to not only the output destination, but also when a plurality of users share one image data.
      [0014]
  Furthermore, the claims constituted as described above10In the present invention, the above parameters are divided into a plurality of sets, and image processing corresponding to the state of pixels is applied. That is, the present invention is not uniformly applied to image data, and, for example, a combination of parameters is used depending on the position of a pixel or the color of a pixel. As the position of the pixel, the region is divided into a central portion of an image, a predetermined range specified in advance, an upper half and a lower half, and different sets of parameters are applied to each. In addition, if the color of the pixel is divided into a skin color area, a sky color area, and a sunset area, it is possible to apply an optimum parameter according to the subject.
      [0015]
  Furthermore, the claims constituted as described above11In the present invention, the storage area is partitioned as a hierarchical structure, the image data and the parameters are partitioned according to this hierarchical structure, and the partitioned partition itself represents the association. Further, as for the correspondence between the image data and the parameter, the parameter may be stored in the same section, or the corresponding hierarchical structure may be provided in another area and the parameter may be stored.
      [0016]
  Furthermore, the claims constituted as described above12In the present invention, small-capacity thumbnails are associated in advance on the same level as the association of parameters, and thumbnail data can also be managed by processing parallel to parameter management.
  Furthermore, the claims constituted as described above13In the present invention, the image data and the parameter are managed on different storage devices. For example, image data may be managed in a plurality of removable storage areas, and in this case, depending on the storage area, writing may not necessarily be possible. Therefore, for the non-writable storage area, it is possible to manage the above parameters in the writable storage area.
      [0017]
  There are also storage areas that are not suitable for writing but are not suitable for writing. For example, it is often shared by several people via a network, and it should be avoided that someone arbitrarily rewrites shared image data. In such a case, while managing the image data in the writable storage area together with the shared area as the write inappropriate storage area, the above parameters are managed in the writable storage area for the image data of the storage area unsuitable for writing. Configure Of course, the same problem may occur other than the network and shared area, and in any case, the above parameters are managed in a storage area suitable for writing.
      [0018]
  Furthermore, the claims constituted as described above14In the present invention, the contents of the image processing represented by the parameters are set based on the result of the statistical analysis of the image data by the parameter setting means. That is, it corresponds to the automatic processing.
  Furthermore, the claims constituted as described above15In the present invention, the image processing reproduction means selects and executes the corresponding image processing unit based on the parameters in the image processing performed when reproducing the image processing result. The means for realizing the image processing can be selected from various methods even in an example realized on a computer, and can be realized by selecting the inside and the outside without asking. More specifically, an image processing unit corresponding to image processing of different versions is selected, an image processing unit provided by a computer operating system or the like is selected and activated, or a necessary image processing unit is searched from a network or the like. It can come and be started.
      [0019]
  Thus, the method of associating and storing parameters representing the contents of image processing without necessarily performing image processing on image data and changing them is not necessarily limited to a substantial device, and the method It is easy to understand that it also works. That is, the present invention is not necessarily limited to a device having substance, and there is no difference in that the method is effective.
  In addition, such an image data processing apparatus may exist alone, or may be used in a state of being incorporated into a certain device. The idea of the invention is not limited to this, and various aspects are included. It is Therefore, it can be changed as appropriate, such as software or hardware.
      [0020]
  In the case of software of an image data processing apparatus as an embodiment of the concept of the invention, it naturally exists on a recording medium on which such software is recorded, and it can not be said that it is used. The invention is valid. Therefore, the inventions described as the medium described in the present invention correspond one-to-one to the stored programs themselves.
  Of course, the recording medium may be a magnetic recording medium or a magneto-optical recording medium, and any recording medium developed in the future can be considered in the same way. In addition, the replication stages of the primary copy, the secondary copy, etc. are the same without any doubt. In addition, even when the communication method is used as the supply method, the present invention is still used.
      [0021]
  Furthermore, even when a part is software and a part is realized by hardware, the concept of the invention is not completely different, and a part is stored on a recording medium and appropriately used as needed. It may be in a form to be read.
  In addition, in order to be able to reproduce image data in this manner, a medium recording such an image data set is indispensable, and the present invention can be realized as such a form.
      [0022]
    【Effect of the invention】
  As described above, the present invention can provide an image data processing apparatus capable of easily using an image processing result while leaving the original image data when performing image processing on image data.
  Further, according to the invention of claim 2, in order to realize this, it is possible to create an image data set in which at least parameters are associated with image data, and according to the invention of claim 3, such image data If the set exists, the set desired image processing result can be reproduced.
      [0023]
  Furthermore, claims5According to the present invention, the contents of image processing can be more specifically represented. Also, this makes it easier to ensure reproducibility.
  Furthermore, claims6According to the present invention, it is possible to prepare substantially a plurality of corresponding reproduction results, and to select reproduction results according to the situation.
  Furthermore, claims7According to the present invention, it is possible to provide optimal image processing results in consideration of execution conditions and the like.
      [0024]
  Furthermore, claims8According to the present invention, it is possible to increase variations due to irreversible image processing or reproduce an image processing process by reproducing the execution order.
  Furthermore, claims9According to the present invention, a plurality of image processing results can be obtained only with the individually prepared parameters, so that a plurality of image data can be provided without increasing the file capacity so much.
  Furthermore, claims10According to the present invention, it is possible to apply more appropriate image processing in accordance with the state of the pixel.
      [0025]
  Furthermore, claims11According to the invention, association and the like can be facilitated by using a hierarchical structure.
  Furthermore, claims12According to the present invention, the processing load can be reduced by using thumbnail data.
  Furthermore, claims13According to the present invention, it is possible to optimally cope with the storage condition of the image data, and it is also possible to realize the correspondence between the image data and the parameter which can not be particularly written into the area or the writing is not preferable.
      [0026]
  Furthermore, claims14According to the present invention, parameter setting can be automated.
  Furthermore, claims15According to the present invention, by preparing the image processing unit corresponding to the image processing, the image reproduction processing can be easily realized, and the image processing unit existing outside can be easily implemented. It will be.
  Furthermore, claims16According to the present invention, it is possible to provide a medium on which an image data set capable of achieving the same effect is recorded.17-Claims31According to the invention, it is possible to provide a medium on which an image data processing program capable of achieving the same effect is recorded.32-Claims39According to the invention, an image data processing method can be provided.
      [0027]
    BEST MODE FOR CARRYING OUT THE INVENTION
First Embodiment
  Hereinafter, embodiments of the present invention will be described based on the drawings.
FIG. 1 shows an image data processing apparatus according to an embodiment of the present invention in a corresponding schematic block diagram.
Image data captured by a digital still camera or the like is managed using an external storage device such as a computer. The data storage unit A1 corresponding to the external storage device or the like associates and stores the plurality of image data and the corresponding parameters, and management such as change, addition, or deletion is appropriately performed by database management by a computer.
      [0028]
  In order to perform such management, an image data storage area A11, a parameter storage area A12, and an association information storage area A13 are secured in the data storage means A1. Although image data is stored in the image data storage area A11, it may be configured as a batch database structure or as an area for storing individual files. The parameter storage area A12 is information indicating an instruction for image processing on individual image data, and has a relatively small capacity as compared with the image data. Also in this case, it is good also as a package database structure, and an individual file may be generated, respectively. The association information storage area A13 stores association information that associates the parameters stored in the parameter storage area A12 with the image data stored in the image data storage area A11. There are various methods for associating in this way, and if the parameter database structure is formed as one example and configured as index information thereof, the parameter storage area A12 and the association information storage area A13 are realized integrally in an integral manner. The image data storage area A11 naturally includes a freely removable recording medium and the like, and the image data storage area A11, the parameter storage area A12, and the association information storage area A13 are physically the same apparatus. There is no need. Furthermore, the image data storage area A11 may be a shared area accessed by a plurality of devices or the like.
      [0029]
  When a parameter representing the contents of image processing is set by management operation or calculation of image data by the parameter setting means A2 realized by the input / output device in the computer itself and the calculation result of the computer itself, The management process is performed by associating the corresponding parameter with the image data through management, and at this time, association information is generated. The parameter setting means A2 generates a parameter as a result, and receives an instruction of image processing from the user through the GUI to set the parameter, or independently inspects the image data to obtain a predetermined purpose. It includes the case of setting the parameters for realizing the image processing to be performed. Various pieces of association information can be used, a correspondence table may be prepared, file names may be associated, or storage areas may be matched to be associated.
      [0030]
  In this manner, in the data storage means A1, the image data and the parameter representing the content of the image processing to be performed on the image data are associated with each other by the association information and stored. The data acquisition means A4 acquires the corresponding image data and parameters from the image data storage area A11 and the parameter storage area A12 based on the information in the association information storage area A13, and the image processing reproduction is performed. Output to means A3. Although this data acquisition means A4 also generally receives an instruction for image selection from the user via the GUI and specifies the image data to be acquired, the method of specifying is not limited to this. For example, in a computer or the like, given arguments are given from an external application to specify target image data, and it is also possible to specify and obtain image data and hand it over to the image processing reproduction means A3 while acquiring the image data. The mode of acquiring image data varies depending on the specific hardware, and can be regarded as acquired even in the case where image data is merely set as a variable in a state of being expanded on a memory.
      [0031]
  The image processing reproduction means A3 realizes the retouching process corresponding to the parameter, and includes a plurality of retouching engines A31 to A3n. Each modification engine A3x newly applies modification to the image data according to each modification engine A3x represented by the same parameter when image data and parameters are given, and newly creates modified image data and outputs this. Here, the image data is treated as the original, and the modified image data is newly generated. Of course, it is free to overwrite the original image data with the newly generated image data, and the image data storage area A11 in the data storage means A1 may be overwritten and saved. Although the modification engines A31 to A3 n are shown to exist in the sense that several kinds of conversion results can be obtained, they are substantially one modification engine and several kinds of conversion results can be obtained depending on the parameters. Alternatively, separate modification engines may be prepared to obtain conversion results separately. Further, the modification engines A31 to A3 n are not limited to those provided internally by the application itself, and may be ones that select the modification engines A31 to A3 n existing outside.
      [0032]
  The data storage unit A1, the parameter setting unit A2, the image processing reproduction unit A3, and the data acquisition unit A4 can not be realized only by a single piece of hardware, but can be realized using the general-purpose computer system 10. In the case where the above configuration is realized by software as such, each is realized as a data storage step A1, a parameter setting step A2, a data acquisition step A4, and an image reproduction processing step A3.
      [0033]
  In the present embodiment, a computer system 10 is employed as an example of hardware for realizing such an image data processing apparatus.
FIG. 2 shows the computer system 10 in a block diagram.
  The computer system 10 includes a scanner 11a, a digital still camera 11b, and a video camera 11c as image input devices for directly inputting image data, and is connected to the computer main body 12. Each input device is capable of generating image data representing an image in dot matrix form and outputting the image data to the computer main body 12, where the image data is displayed in 256 gradations in each of the three primary colors of RGB. , Has become capable of expressing about 16.7 million colors.
      [0034]
  A floppy disk drive 13a as an external auxiliary storage device, a hard disk 13b, and a CD-ROM drive 13c are connected to the computer main body 12, and main programs related to the system are recorded in the hard disk 13b. It is possible to appropriately read necessary programs and the like from a CD-ROM and the like.
  In addition, a modem 14a is connected as a communication device for connecting the computer main body 12 to an external network or the like, and is connected to the external network via the same public communication line to download and introduce software and data. It has become. In this example, the modem 14a accesses the outside through the telephone line, but it is also possible to configure to access the network through the LAN adapter.
      [0035]
  Here, among the external auxiliary storage device, the recording medium itself can be exchanged for the floppy disk drive 13a and the CD-ROM drive 13c, and the image data is supplied in a state of being recorded on the recording medium, It can also be a means of an image input device. In addition, when the network is accessed through the modem 14a or the LAN adapter, image data may be supplied from the network, and in such a case as well, it can be a means of the image input device. The network is accessed not only when acquiring data but also when acquiring part of a program or another program that can be activated externally. In this way, it is possible to obtain part or all of the modification engine from the outside, or to leave the execution to something outside.
      [0036]
  In addition, a keyboard 15a and a mouse 15b as a pointing device are also connected to operate the computer main body 12, and further, a speaker 18a and a microphone 18b are provided to support multimedia.
  Furthermore, a display 17a and a color printer 17b are provided as image output devices. The display 17a has a display area of 800 pixels in the horizontal direction and 600 pixels in the vertical direction, and the display of 16.7 million colors described above is possible for each pixel. Of course, this resolution is merely an example, and can be changed as appropriate, such as 640 × 480 pixels or 1024 × 768 pixels.
      [0037]
  A color printer 17b as a printing apparatus is an ink jet printer, which can print an image by adding dots on a printing sheet as a recording medium using four color inks of CMYK. The image density is capable of high density printing such as 360 × 360 dpi and 720 × 720 dpi. However, with regard to the gradation table limit, it is a two-tone expression such as whether or not color ink is added. The color ink is not limited to the four colors, but it is also possible to reduce the appearance of dots with six colors including light cyan and light magenta, and the color toner is used instead of the inkjet method. It is also possible to adopt an electrostatic photography system or the like.
Also, the printing apparatus need not necessarily be a color printer, and may be a black and white printer. As will be described later, in black-and-white reproduction, there may be optimum image processing according to that, and if such image processing is applied to image data, it will be inconvenient if it is desired to reproduce in color again. However, in the present invention, the original image data is left as it is, and such image processing can be easily executed.
      [0038]
  On the other hand, in order to input or display an image using such an image input device and to display or output the image on the image output device, a predetermined program is executed in the computer main body 12. Among them, operating as a basic program is an operating system (OS) 12a, and the operating system 12a performs print output to a display driver (DSP DRV) 12b and a color printer 17b that cause display on the display 17a. A printer driver (PRT DRV) 12 c is incorporated. The types of these drivers 12b and 12c depend on the models of the display 17a and the color printer 17b, and can be additionally changed to the operating system 12a according to the models. In addition, additional functions beyond standard processing can be realized depending on the model. That is, it is possible to realize various additional processes within the allowable range while maintaining a common processing system on the standard system of the operating system 12a.
      [0039]
  Of course, on the premise that such a program is executed, the computer 12 includes the CPU 12e, the RAM 12f, the ROM 12g, the I / O 12h, etc., and the CPU 12e that executes arithmetic processing performs temporary work area and setting of the RAM 12f. The basic program written in the ROM 12g is appropriately executed while using it as a storage area or a program area to control external devices and internal devices connected via the I / O 12h.
      [0040]
  The application 12d is executed on the operating system 12a as the basic program. The processing contents of the application 12d are various, monitor the operation of the keyboard 15a and the mouse 15b as operation devices, and when operated, appropriately control various external devices and execute corresponding arithmetic processing, etc. Furthermore, the processing result is displayed on the display 17a or output to the color printer 17b.
      [0041]
  In such a computer system 10, a photograph or the like can be read by an image input device such as a scanner 11a to obtain image data, and image data shot by a digital still camera 11b can be obtained or shot by a video camera 11c. Image data as a moving image can be acquired. In addition, there are many cases where various types of image data captured in advance are provided as CD-ROM software, and a plurality of persons access the network via a network after the image data is stored in one storage area in advance. There are many things to do.
      [0042]
  In many cases, image data taken by the digital still camera 11b is collectively stored on the hard disk 13b, and such image data is not only enjoyed by the display 17a and enjoyed, but is also outputted and enjoyed by the color printer 17b. There are also many. An advantage of image data is that it can be easily corrected even if the image is bad.
That is, when printing with the color printer 17b, the original image data remains as it is. Thus, the necessity of the image data processing apparatus for managing the image data and modifying the image arises, and the application 12 d and the computer system 10 are integrally integrated to realize the image data processing apparatus.
      [0043]
  In this sense, the application 12d, which is image data processing software, stores and manages image data captured by the digital still camera 11b in the hard disk 13b and is supplied by the CD-ROM via the CD-ROM drive 13c. While managing image data so as to be able to be input appropriately, parameters are also managed together as described later. Therefore, the data storage means A1 is configured by the related software and hardware in this sense.
      [0044]
  Further, with regard to the image data stored in this manner, after the processing target is specified by the application 12 d, the image processing is performed by the internal image processing routine together with the corresponding parameters as described above, and in this sense, the relationship is related The image processing reproduction means A3 is composed of the software and hardware to be processed.
  Then, the application 12d generates a predetermined corresponding screen while inputting an operation of the keyboard 15a or the mouse 15b via the operating system 12a and displays the screen on the display 17a. The parameter setting means A2 is configured by related software and hardware in the sense that data is selected and image processing to be executed is specified. Furthermore, the data acquisition means A4 is configured by related software and hardware in the sense of reading parameters so that image processing specified in advance can be executed when image data that has already been stored is read.
      [0045]
  Such software is stored in the hard disk 13b, read by the computer main unit 12, and operated. Also, at the time of installation, it is recorded and installed in a medium such as a CD-ROM 13c-1 or a floppy disk 13a-1. Therefore, these media constitute media on which the image data processing program is recorded.
  FIG. 3 shows the control contents by the image data processing software in blocks, and represents a main control unit 60 that performs various types of comprehensive control, a common function unit 20 that performs various common controls, and image data It comprises a film data management unit 30 that performs management, an image modification control unit 40 that performs image modification on each image data, and a DPE print control unit 50 that executes a series of print processing.
      [0046]
  The main control unit 60 appropriately selects and executes various flows to be described later, and executes various functions not otherwise classified. One of them is the environment setting unit 60a, and common settings and the like in the present image data processing software are recorded as the setting information file 60b on the hard disk 13b, and can be read out from other functional units as appropriate. The setting information file 60b is of various types such as default specification, for example, specification of a new image data acquisition source, or a page parameter to be handed over to the next printing process as described later. Will be recorded.
      [0047]
  About the common function part 20, the detail block is shown in FIG. 4, and the some can be called in common also from other function parts. For example, the image selection unit 20a causes the image display unit 20m to display a plurality of thumbnail images on the display 17a while creating thumbnails for each image data in the thumbnail creation unit 20i, and in that state selection operation with the keyboard 15a or the mouse 15b Is input to select whether or not each image is selected. Of course, when the display is changed in accordance with the selection operation, the display is appropriately changed by the image display unit 20m, and the result of the selection is transferred to another functional unit. The display designation unit 20b designates display on the screen, and appropriately designates display of an image in response to a change in the size of the window area or the like according to the GUI operation.
      [0048]
  The file editing unit 20c executes an operation to appropriately change the storage area of the image data, and the search unit 20d executes a search based on a comment or a date based on parameters managed together with the image file. . The batch commenting unit 20e is for collectively processing comments on a plurality of image data, and the batch organizing unit 20f is for simultaneously processing image data and parameters simultaneously.
      [0049]
  The image processing unit 20g and the image editing unit 20h are portions that actually execute image processing, while the image modification control unit 40 mainly generates various parameters when automatically executing image processing. It also executes manually specified image processing.
This processing result is basically treated as temporary data, and is reflected in the original image data when it is specified that the original image data should be changed during actual processing. Further, for convenience of display and processing time, it is not necessary to execute based on the original image data, and during operation, the image processing unit 20g and the image editing unit 20h execute various processes based on the thumbnail image data.
      [0050]
  When the storage area of the image data is already registered by the file editing unit 20c, the image input unit 20j performs processing of reading the same image data at the time of image processing and print processing, and various kinds of image data as image data. In response to the existence of the data format, the image output unit 20k performs processing such as converting the format and outputting it.
  Next, the film data management unit 30 will be described. FIG. 5 is a block diagram showing a management structure of an image file 30a which is image data managed by the film data management unit 30, photo data 30b including parameters, and film data 30c used in grouping of image data. There is. Here, the image data is shown as an image file by being treated as a file in the computer system 10, and the parameters are shown as photo data 30b together with various information corresponding to the respective image data. The film data 30c is information for grouping and managing image data, and is shown as a film metaphor in FIG. Here, the database of the photo data 30b is stored in a rewritable storage area on the computer system 10, and is stored in a fixed area regardless of a plurality of film metaphors. Of course, although it is possible to physically create a plurality of databases, the point is that they do not necessarily have to be formed on a medium on which image data is actually stored.
      [0051]
  In the figure, the physical recording form of the image file is shown on the left side of the figure, a hierarchical structure is formed in folder units by the operating system 12a, and the image file is stored in each folder . The grouping of the image data in the present embodiment physically utilizes the hierarchical structure in the folder unit exactly, and manages by adding information in the folder unit. That is, the minimum information constituting the film data 30c is a film name which can be arbitrarily added, a link destination indicating an actual storage area as physical arrangement information of this folder, a created date, a comment, a medium attribute , Media label, film attribute, number of stored image files, and the like. Also, as shown in the figure, each folder is regarded as a patron of the film in management, and from another viewpoint, it is regarded as a patrone without being aware of the actual storage area individually, so the alias management It is also close. A mark indicating whether the physical storage area is an exchangeable medium is displayed on the patrone to make it easy for the user to understand. That is, although the image file is exchangeable in the case where it is supplied by a CD-ROM, in this case it may be possible that the image file is not attached to the actual CD-ROM drive 13c by replacing the CD-ROM. . In such a case, the CD-ROM is not displayed unless the CD-ROM is attached, and as far as the film data 30c is registered, the display is performed based on the same data. This makes it easy for the operator to understand that the CD-ROM can not be referenced unless the CD-ROM is set.
      [0052]
  In this example, only exchangeable marks are shown, but such marks may be appropriately changed to display information. For example, the mark may be changed between the case where the CD-ROM is mounted and the case where the CD-ROM is not mounted, as the exchangeable storage area. In addition, when image data is stored in a storage area shared by a plurality of people on the network, the mark may be displayed representing a network drive, since it will not be collected if it is rewritten by each person. good. Of course, if it is a network drive, even if it is writable, it may be treated as unwritable. The shape of the patrone itself may be changed instead of changing the mark.
      [0053]
  The specific configuration of the photographic data 30b is shown in FIG. 5 and FIG. Here, the index information is composed of a file name, a file date and time, a file size and a shooting date and time, and thumbnail data obtained by scaling an image file is displayed as thumbnails. The comment can be attached to each image file, and the photograph data 30b together with the arrangement information indicating the display order and the like, the position information indicating the actual storage area, and the voice information attached via the microphone 18b etc. Are configured.
      [0054]
  Furthermore, the photo data 30b also includes modification information, feature information, and color matching information.
As described above, this image data processing software manages image data and modifies the image, but the original image data is not changed directly by the image modification, but only the guideline modified by these parameters is It is managed as modification information, and in accordance with this, feature information and color matching information can be managed. FIG. 7 shows a specific example of variable declaration for managing modification information, and indicates the trimming start X coordinate (m_x1), trimming start Y coordinate (m_y1) and trimming end X coordinate (m_x2) representing modification information related to trimming. , Trimming end Y coordinate (m_y2), rotation angle (m_nRotation) when performing rotation processing, automatic image modification (m_nApf), enhancement of red component (m_nRed), enhancement of green component (m_nGreen) And the emphasis degree (m_Blue) of the blue component, the emphasis degree (m_nBrightness) of the brightness component, and the emphasis degree (m_nContrast) of the contrast.
      [0055]
  Here, image processing that can be executed by the present image data processing software, particularly automatic image modification, will be described. The core of the automatic image retouching is the image retouching control unit 40 shown in FIG. 8. When the image feature extracting portion 40a extracts the image features based on the image data, parameters necessary for the retouching information creating portion 40b are corrected. The modification designation unit 40c causes the above-described image processing unit 20g to execute actual processing using the same parameters.
      [0056]
  FIG. 9 schematically shows the flow of the outline procedure executed by the image modification control unit 40, and the automatic image modification processing will be described below with reference to this flow.
  In step 1, image data is input. The image data is read via the operating system 12a and stored in a predetermined work area. However, if thumbnail data has already been created, thumbnail data is read from the picture data 30b and used as image data. Since the feature extraction is a tabulation process for each pixel of image data, the operation time changes according to the amount of pixels. The use of thumbnail data takes into consideration such an overwhelming difference in the amount of pixels, and processing time can be shortened as compared with the case of using original image data. Note that the image data itself is one file, and as shown in FIG. 10, it is provided with profile data such as the size of the image or the number of colors at the head, and thereafter individual pixels are expressed by RGB 256 tones. An area of 3 bytes is reserved for the number of pixels.
      [0057]
  After the image data is read into the work area, processing is performed on the image data of the target pixel while moving the target pixel as shown in FIG. The content of the tabulation processing varies depending on the feature amount of the image, but in the present embodiment, five feature amounts of “contrast”, “brightness”, “color balance”, “saturation”, and “sharpness” are included. Perform tallying process to get. Further, when the tallying process is completed for all pixels, in step 5, the feature amount is calculated based on the tally result.
In the following, together with these tabulation processes, feature quantities derived based on them will be described.
      [0058]
  The contrast indicates the width of the luminance of the entire image, and if it is desired to correct the contrast, the desire is generally to widen the width of the contrast. What the distribution of the luminance in each pixel of a certain image is summarized as a histogram is shown by a solid line in FIG. When the distribution shown by the solid line is taken, the difference between the brightness of the bright pixel and the brightness of the dark pixel is small, but if the distribution of brightness is broadened as shown by the dashed dotted line, the difference between the brightness of the bright pixel and the brightness of the dark pixel is large. And the width of the contrast will be broadened. Here, FIG. 13 shows luminance conversion for enlarging the contrast. Between the conversion source luminance y and the conversion luminance Y,
Y = ay + b
Assuming that the conversion is performed according to the following relationship, the difference between the pixels of the maximum luminance Ymax and the minimum luminance Ymin of the conversion source becomes large after conversion when a> 1 and the distribution of the luminance is broadened as shown in FIG. Therefore, in order to create such a histogram, it is necessary to count the interval from the maximum value of the brightness to the minimum value of the brightness as the width of the contrast. However, in this case, the conversion of the luminance is to the last, and if the image data is provided with the luminance as an element, it is possible to directly count it, but as described above, since the image data is expressed by RGB 256 gradations, It does not directly have a luminance value. Although it is necessary to perform color conversion to the Luv color space in order to obtain the luminance, it is not a good idea because of the problem of the amount of calculation, etc. Therefore, the conversion of the following equation to obtain luminance directly from RGB used in television etc. Use the formula.
y = 0.30 R + 0.59 G + 0.11 B
  That is, while moving the target pixel, 3 bytes which are image data of each pixel are read, and the luminance y is calculated based on the same equation. In this case, the luminance y is also expressed by 256 gradations, and one frequency is added to the calculated luminance y. Note that the conversion to black and white may be performed using this luminance, and realized by matching the obtained gradation value of luminance with each component value of RGB. Further, for monochrome color such as sepia tone, it is sufficient to obtain the gradation value of luminance and then obtain each component value of RGB according to the RGB component ratio.
      [0059]
  Thus, obtaining the histogram of the luminance distribution is the image data tallying process of procedure 2. Based on this histogram, both ends of the luminance distribution are determined in the feature amount extraction process of procedure 5. The luminance distribution of the photographic image appears approximately in the shape of a mountain as shown in FIG. Of course, the position and shape are various. The width of the luminance distribution is determined depending on where the two ends are determined, but it is not possible to simply use a point at which the base extends and the number of distributions becomes “0”. In the base portion, the number of distributions may shift near “0”, and in statistical terms, it will shift while approaching “0” without limit.
      [0060]
  For this reason, in the distribution range, a portion which is shifted inward by a certain distribution ratio from the side with the largest luminance and the side with the smallest luminance is defined as both ends of the distribution. In the present embodiment, as shown in the figure, this distribution ratio is set to 0.5%. Of course, this ratio can be changed as appropriate. As described above, by cutting the upper end and the lower end by a certain distribution ratio, it is possible to ignore white spots and black spots caused due to noise and the like. That is, if such processing is not performed, even if there is a white point or a black point even at one point, it will be both ends of the luminance distribution. The uppermost end is the gradation "255", but such a problem is eliminated by using a portion that is inside by 0.5% of the number of pixels from the upper end portion. Then, 0.5% with respect to the number of pixels is calculated based on the actually obtained histogram, and the distribution numbers are accumulated while sequentially moving inward from the luminance value of the upper end and the luminance value of the lower end in the reproducible luminance distribution. The luminance values having a value of 0.5% are the maximum luminance Ymax and the minimum luminance Ymin.
      [0061]
  The width Ydif of the luminance distribution is the difference between the maximum luminance Ymax and the minimum luminance Ymin,
  Ydif = Ymax-Ymin
It becomes.
  As image processing for expanding the contrast, the inclination a and the offset b may be determined according to the distribution of luminance. For example,
a = 255 / (Ymax-Ymin)
b = -a.Ymin or 255-a.Ymax
In this case, it is possible to extend the luminance distribution with a narrow width to a reproducible range. However, when the luminance distribution is expanded by making the best use of the reproducible range, the highlight portion may be whitened or the high shadow portion may be blackened. In order to prevent this, it is sufficient to leave about "5" in the luminance value as a range which is not expanded at the upper and lower ends of the reproducible range. As a result, the parameters of the conversion equation become as follows.
a = 245 / (Ymax-Ymin)
b = 5-a Ymin or 250-a Ymax
In this case, it is preferable not to perform conversion in the range of Y <Ymin and Y> Ymax.
      [0062]
  In addition, it is not necessary to calculate each time in this conversion. Assuming that the range of luminance takes values of “0” to “255”, conversion results are previously set for each luminance value, and a conversion table is formed as shown in FIG. However, in this case, it is the conversion of brightness to the last, and it seems that it is necessary to consider separately about the application of the image data of RGB256 gradation. However, in practice, the image data before conversion (R0, G0, B0
And the converted image data (R1, G1, B1) can be applied to the same conversion relationship as luminance,
R1 = aR0 + b
G1 = aG0 + b
B1 = aB0 + b
As a result, it is understood that conversion may be performed using the conversion table shown in FIG.
      [0063]
  That is, the work of feature extraction in step 5 corresponds to the work of obtaining the maximum brightness Ymax and the minimum brightness Ymin described above, and in the modification information creation process of step 6, the parameters of the conversion equation while obtaining the width Ydif of the brightness distribution This corresponds to the processing of obtaining a, b and creating a conversion table. Then, in the modification designation process of step 7, such conversion table is designated and the image data before conversion (R0, G0, B0
) To generate converted image data (R1, G1, B1).
      [0064]
  Next, the lightness will be described. The lightness as the feature amount of the image here means an index of light and dark of the whole image, and uses the median (median) Ymed of the distribution obtained from the above-described histogram. Therefore, the counting process in this case is performed simultaneously with the counting process for contrast in step 2.
  On the other hand, when analyzing the feature amount in step 5, the difference (Ymed_target−Ymed) with Ymed_target, which is the ideal value of lightness, may be calculated. In addition, although the actual value of ideal value Ymed_target uses "106", it is not fixed. In addition, it may be possible to reflect the preference and change it.
      [0065]
  In the case of modifying the lightness using this feature quantity, the following is performed. Whether the image is bright or not can be evaluated by whether the median Ymed is larger or smaller than the ideal value Ymed_target. For example, if median value Ymed is "85", it is smaller than "106" of ideal value Ymed_target, so it is primarily evaluated as "dark" and secondarily the degree of darkness is It is expressed numerically as "106-85".
      [0066]
  Although FIG. 16 shows a histogram of luminance, when the peak of the luminance distribution is generally darker as indicated by the solid line, when the peak is generally moved to the bright side as indicated by the broken line. On the contrary, when the peak of the luminance distribution is generally on the bright side as indicated by the solid line in FIG. 17, it is preferable to move the peak to the entire dark side as indicated by the broken line. In such a case, conversion of luminance using a so-called γ curve as shown in FIG. 18 may be performed instead of linear conversion of luminance as shown in FIG.
      [0067]
  In the correction by the γ curve, the entire image becomes bright at γ <1, and the image becomes dark overall at γ> 1. In the above example, if the median value Ymed goes up by “21”, it will match the ideal value Ymed_target, but it is not easy to use the γ curve to raise “21” exactly. For this reason, as shown in FIG. 19, the value of γ corresponding to every “5” may be set for the evaluation value (Ymed_target−Ymed). In this example, the value of γ is varied by “0.05” corresponding to the variation “5” of the evaluation value, but it is needless to say that the correspondence relationship between the two can be appropriately changed.
      [0068]
  Also, it is possible to set the value of γ automatically as in the case of contrast modification. For example,
γ = Ymed / 106
Or
γ = (Ymed / 106) ** (1/2)
The value of γ may be determined as Of course, the conversion table as shown in FIG. 15 may be formed also for the conversion of the luminance by the γ curve.
  That is, the operation of feature extraction in step 5 corresponds to the operation of obtaining median value Ymed, and the modification information creation process of procedure 6 corresponds to the process of creating a conversion table while obtaining a γ correction value. Then, in the modification designation process of step 7, such conversion table is designated and the image data before conversion of each pixel (R0, G0, B0
) To generate converted image data (R1, G1, B1).
      [0069]
  Next, color balance will be described. Here, the color balance refers to whether or not there is a certain imbalance between the R component, the G component, and the B component constituting the image data. For example, it does not matter if the picture looks reddish and it represents the real situation at the time of shooting, but if it is not so, it can be said that some adverse effects appear. However, since such imbalances can not be understood unless they are actually compared with the real situation, it may be considered impossible to evaluate them ex post.
      [0070]
  In this embodiment, this is evaluated from the uniformity of the frequency distribution for each color. Depending on the conditions at the time of photographing, it may be natural that the frequency distribution of each color component becomes uneven, and in such a case, color correction should not be performed. However, if the results are reversed, it is determined that the frequency distribution should be uniform in a situation where the frequency distributions of the color components are somewhat similar, and should not be uniform if the frequency distributions are not similar. it can.
      [0071]
  For this reason, in the image data totalizing process of procedure 2, in order to check the similarity of the frequency distribution for each color component later, a histogram for each color component is created. At this time, the frequency distribution is not obtained for all the tone values, but the 256 tone area is divided into 8 to 16 (n division), and the frequencies belonging to each area are counted. In the case of eight divisions, as shown in FIG. 20, the frequency distribution is determined for eight regions “0 to 31”, “32 to 63”.
      [0072]
  On the other hand, when the histogram described above is created for each color component for all pixels, the number of pixels (r1, r2... Rn), (g1, g2. , (B1, b2... Bn) (here, n = 8) are vectorized as components. For each of RGB, let the feature vectors VR, VG, VB be represented as
VR = (r1, r2... Rn) riri = 1
VG = (g1, g2 ... gn) gi gi = 1
VB = (b1, b2 ... bn)) bi = 1
The cross correlation of these feature vectors is determined. Cross correlation is as inner product
  corr_rg = (VR · VG) / | VR | · | VG |
  corr_gb = (VG · VB) / | VG | · | VB |
  corr_br = (VB · VR) / | VB | · | VR |
Although the inner product of the vectors itself represents the similarity of both vectors, the value is “0” to “1”. Here, the color balance is evaluated based on the minimum value corr_x.
      [0073]
  The color balance adjustment may be performed for each of the n divided areas, but it can be roughly coped with by making the entire color brighter or darker for each color component, so the γ curve is used. It is sufficient to adjust the RGB values.
  That is, the task of feature extraction in step 5 corresponds to the task of obtaining the minimum value corr_x, and in the modification information creation process of step 6, the conversion table is created while obtaining the γ correction value for modifying balance based on this. Processing that corresponds to the Then, in the modification designation process of step 7, such conversion table is designated and the image data before conversion of each pixel (R0, G0, B0
) To generate converted image data (R1, G1, B1).
      [0074]
  Next, the saturation will be described. Here, the saturation refers to the color saturation of the entire image. For example, it is an evaluation as to whether the primary colors are captured vividly or grayishly. Although the saturation itself is represented by the size from the reference axis in the uv plane in the Luv color space, as described above, the amount of operations for converting the color space is large, so the pixel saturation is simplified. In order to seek. This is calculated as the saturation substitute value X as follows.
X = | G + B-2 × R |
  Essentially, the saturation is “0” when R = G = B, and becomes the maximum value at the time of mixing by a predetermined ratio of a single color of RGB or any two colors. Although it is possible from this property to express saturation properly, the simplified equation above also shows saturation of maximum value if it is yellow which is a single color of red and a mixture of green and blue, and each component It becomes "0" when is uniform. In addition, it has reached about half of the maximum value for green and blue single colors. Of course,
X '= | R + B-2 × G |
X "= | G + R-2 × B |
It is also possible to substitute the expression
      [0075]
  In the image data tallying process in the step 2, the distribution of the histogram with respect to the saturation substitute value X is obtained. Assuming that the distribution of the histogram for this alternative value of saturation X is determined, since the saturation is distributed in the range of the lowest value “0” to the maximum value “511”, the distribution is roughly as shown in FIG. .
  On the other hand, when analyzing the feature amount in step 5, it is performed based on this histogram.
That is, based on the aggregated histogram, a saturation index for this image is determined. The range occupied by the upper "16%" is determined from the distribution of the saturation alternative value X, and the lowest saturation "S" within this range is assumed to represent the saturation of this image.
      [0076]
  If this saturation "S" is low, saturation emphasis is desired, but in the case of automatic correction, it is performed as follows.
  As in the RGB color space, when R = G = B when R = G = B, when the components are component values of hue components having an approximately equal relationship, they become non-saturation. The minimum value of each component is subtracted from all the component values, considering that the component which is the minimum value of each component of RGB is merely lowered in saturation without affecting the hue of each pixel. It can be said that the saturation can be emphasized by enlarging the difference value. Now, assuming that the component value of blue (B) in each component (R, G, B) of the image data is the minimum value, this saturation emphasis parameter Sratio
It can be converted as follows.
R '= B + (R-B) x Sratio
G '= B + (GB) x Sratio
B '= B
  Although this example is a method of simply subtracting the component of the minimum value from other component values for the achromatic component, other methods can also be adopted for subtracting the achromatic component.
In particular, when this conversion is performed, there is a tendency that when the saturation is emphasized, the luminance is also improved and the whole becomes bright. Therefore, the conversion is performed on the difference value obtained by subtracting the luminance equivalent value from each component value.
Saturation emphasis,
R '= R + ΔR
G '= G + ΔG
B '= B + ΔB
Then, the addition and subtraction values ΔR, ΔG, and ΔB are obtained as in the following equation based on the difference value with the luminance. That is,
ΔR = (RY) × Sratio
ΔG = (G−Y) × Sratio
ΔB = (B−Y) × Sratio
And this results in
R '= R + (RY) × Sratio
G '= G + (G-Y) x Sratio
B '= B + (B-Y) * Sratio
It can be converted as The preservation of the luminance is apparent from the following equation.
Y '= Y + △ Y
YY = 0.30 R R + 0.59 G G + 0.11 B B
    = Sratio {(0.30 R + 0.59 G + 0.11 B)-Y}
    = 0
That is, the luminance is preserved before and after conversion, and even if the saturation is emphasized, the overall luminance does not occur. Also, when the input is gray (R = G = B), the luminance Y = R = G = B, so the addition / subtraction value ΔR = ΔG = ΔB = 0 and no achromatic color is given. .
      [0077]
  Here, the saturation emphasizing parameter Sratio needs to increase as the evaluation value Psatu decreases, and in relation to the above-described minimum saturation "S"
   If S <92
  S '= -S x (10/92) + 50
If 92 ≦ S <184
  S '=-S * (10/46) +60
If 184 ≦ S <230
  S '= -S x (10/23) + 100
If 230 ≦ S
  S = 0
Determine the saturation enhancement index S 'and so on, and convert this saturation index S' to the saturation enhancement index Sratio,
Sratio = (S + 100) / 100
It should be determined as In this case, when the saturation enhancement index S = 0, the saturation enhancement parameter Sratio = 1 and the saturation enhancement is not performed. FIG. 22 shows the relationship between the saturation "S" and the saturation emphasis index S '.
      [0078]
  That is, the task of feature extraction in step 5 corresponds to the task of obtaining saturation "S", and the modification information creation process of step 6 is equivalent to the processing of obtaining saturation emphasis index Sratio through saturation index S '. . And, in the modification designation process of step 7, such saturation emphasis index Sratio
The image data (R1, G1, B1) after conversion is generated while obtaining the luminance from the image data (R0, G0, B0) before conversion of each pixel while using.
      [0079]
  Finally, sharpness will be described. Sharpness as a feature of an image is evaluated by the degree of edge described below. Assuming that the image data is composed of dot matrix pixels, the difference in image data between adjacent pixels becomes large at the edge portion of the image. This difference is a brightness gradient, which will be called an edge degree. When considering XY orthogonal coordinates as shown in FIG. 23, the vector of the degree of change of the image can be calculated by obtaining the X-axis direction component and the Y-axis direction component respectively. In a digital image composed of pixels in a dot matrix, as shown in FIG. 24, pixels are adjacent in the vertical axis direction and the horizontal axis direction, and the brightness thereof is represented by f (x, y). In this case, f (x, y) may be luminance Y (x, y), or each luminance of RGB R (x, y), G (x, y), B (x, y) It may be In the example shown in FIG. 24, the difference value fx in the X direction and the difference value fy in the Y direction are
  fx = f (x + 1, y)-f (x, y)
  fy = f (x, y + 1) -f (x, y)
It is expressed as Therefore, the magnitude Ddif of a vector g (x, y) having these components is
  Ddif = | g (x, y) | = (fx ** 2 + fy ** 2) ** (1/2)
It is expressed as The edge degree is represented by this Ddif. It is to be noted that pixels are originally arranged in a grid shape vertically and horizontally as shown in FIG. 25, and when the central pixel is focused, there are eight adjacent pixels. Therefore, similarly, the difference between the image data with each adjacent pixel may be represented by a vector, and the sum of the vectors may be determined as the change degree of the image.
Furthermore, simply comparing side by side only in the middle is also effective in terms of reducing the amount of computation.
      [0080]
  Even if the edge degree is determined for each pixel as described above, the sharpness degree of the image can not be determined simply by determining and averaging the edge degrees of all pixels. FIG. 26 shows a photograph of an airplane flying in the sky, and it can be easily seen that the degree of change in the image is not large for the background sky. In such a case, assuming that the sky portion is trimmed, the average value is lowered when the number of sky pixels is increased, and the image is not sharp, even though the image data of the airplane as the central object does not change. When the number of empty pixels decreases, the average value increases and the image is sharp. In such a case, since it is usual to judge the sharpness of the image based on the sharpness of the airplane which is the original subject, it can be said that the averaging is not suitable.
      [0081]
  For this reason, instead of averaging the degree of edge of the entire image, the degree of edge of only the outline portion is averaged to determine how sharp the outline portion in the image is. More specifically, when tallying the image data in step 2 while moving the target pixel, the pixel is compared with the threshold value Th1 which is the calculated edge degree as described above. It is determined whether or not it is an edge portion, and only in the case of an edge portion, the same edge degree Ddif is integrated (ΣDdif) and the number of pixels of the edge portion is integrated (ΣEdge_Pixel).
      [0082]
  On the other hand, when extracting a feature in step 5, the edge degree (DDdif) integrated in step 2 is divided by the number of pixels (EdgeEdge_Pixel) to calculate an average value Ddif_ave of the edge degree in the edge portion. Of course, the larger the average value Ddif_ave of the edge degree, the sharper the image. If the average value Ddif_ave of the edge degree is small, edge emphasis is desired, but in this embodiment, it is performed as follows. First, the edge emphasis degree Eenhance
Is obtained from the average value Ddif_ave of edge degree. As an example,
  Eenhance = 4 × Ddif_ave / 100
An arithmetic expression such as
      [0083]
  The edge enhancement processing itself uses an unsharp mask as shown in FIG.
  After obtaining the edge emphasis degree Eenhance, edge emphasis processing is performed on all pixels using an unsharp mask as shown in FIG. With respect to the luminance Y of each pixel before emphasis, the luminance Y 'after emphasis is
  Y '= Y + Eenhance · (Y-Yunsharp)
Calculated as Here, Yunsharp is obtained by applying unsharp mask processing to the image data of each pixel, and the unsharp mask is a pixel to be processed Y (x, It is used for weighting y) and for weighting the peripheral pixels corresponding to the numerical values in the squares of the same mask. If the unsharp mask shown in FIG. 27 is used,
      [0084]
[Equation 1]
Figure 2001056867
The integration is performed based on the following equation. In the equation, "396" is a total value of weighting factors. Mij is a weighting coefficient described in the box of the unsharp mask, Y (x, y) is image data of each pixel, and ij is indicated by the row and column coordinate values in the unsharp mask There is.
      [0085]
  The meaning of the edge enhancement operation calculated using the unsharp mask is as follows. Since Yunsharp (x, y) is obtained by reducing the weighting of the peripheral pixels with respect to the target pixel and adding them, so-called "unsharp" image data is obtained. In this way, the ones thus made have the same meaning as the ones to which a so-called low pass filter is applied. Therefore, “Y (x, y) -Yunsharp
"(X, y)" means that low frequency components are subtracted from all the original components, and has the same meaning as that obtained by applying a high pass filter. Then, the edge enhancement degree Eenhance for this high frequency component that has passed through the high pass filter
Is added to “Y (x, y)”, the high-frequency component is increased in proportion to the edge enhancement Eenhance, resulting in the edge being enhanced.
      [0086]
  The degree of edge enhancement also varies with the size of the unsharp mask, so the edge enhancement degree Eenhance is classified and an unsharp mask of the corresponding size is prepared, and the unsharp mask of the corresponding size is selected. You may use it. Further, since it is a matter of course that edge enhancement is required at the edge portion of an image, as described above, calculation may be performed only at places where image data greatly differ between adjacent pixels. In this way, it is not necessary to calculate the unsharp mask in the image data part that is not most of the edge part, and the processing is drastically reduced.
      [0087]
  As described above, the work of extracting features in step 5 corresponds to the work of obtaining the average value Ddif_ave of the edge degree when the sharpness is summarized, and the edge enhancement degree Eenhance in the modification information creation process of step 6
The process of asking for is applicable. Then, in the modification designation process of step 7, the converted image data (R1, G1, B1) in which the image data (R0, G0, B0) before conversion of each pixel is enhanced by using such an edge enhancement degree Eenhance B1
) Will be generated.
      [0088]
  The above is the outline of the processing in the image modification control unit 40 in the present embodiment. However, even if the modification process is the same, the modification result changes by changing the target value. Therefore, in addition to standard automatic image retouching processing, automatic image retouching processing that brings colors close to memory colors to make them feel "clean", or "DPE" automatic image retouching that enhances sharpness enhancement and saturation enhancement. It is also possible to be able to select things like processing. In automatic image retouching to match memory colors, by setting user preferences as standard values, it is possible to perform automatic image retouching to make each person feel "clean".
      [0089]
  The image modification control unit 40 is used as a so-called image modification engine, and in the present image data processing software, the main control unit 60 generally performs the image modification processing according to the flowcharts of FIGS. I have control. The image quality of the JPEG data format is degraded each time rewriting is performed. This is because of the processing based on the 8 × 8 block unique to JPEG, but the distortion reduction processing resulting from this block is also performed.
More specifically, this is a method in which a smoothing filter is applied, but the edge portion is not smoothed. By weakening such edge preservation smoothing processing, while the location of the edge is emphasized, 8 × 8 block distortion and noise are smoothed and smoothed. Then, even if the angle and 8 × 8 block distortion are reduced, they will be distorted again when stored by a method such as JPEG, and the recording size will increase with a method such as BMP (bit map) without deterioration . On the other hand, in the method of managing parameters as in the present embodiment, reduction processing is performed at the time of output such as display and printing, so that image expression with the best image quality is possible.
      [0090]
  There is simultaneous print processing as a series of image data management processing performed by the main control unit 60. FIG. 34 shows a screen display in the simultaneous print process. In this case, the main control unit 60 appropriately receives a command from the display designation unit 20b of the common function unit 20 to display the same screen on the display 17a, and receives an operation input of the keyboard 15a or the mouse 15b. .
  In the simultaneous print processing screen, the leftward portion on the screen is an operation display area, and tabs are displayed here along the flow of a series of data processing. In this example, tabs “enter photo”, “modify photo”, “designate print”, and “print” are displayed, and a downward “Δ” mark is displayed between them. As a matter of course, the data processing can sequentially print desired image data through an order of “photograph input” processing, “photograph modification” processing, “print designation” processing, and “print” processing. In the past, it was naturally possible to carry out the same processing, but in that case, it is necessary to proceed with work assuming the flow of the procedure itself.
      [0091]
  That is, 1: open the image data from the file menu, 2: specify the image modification operation from the tool menu and display the necessary palette etc. and save after making the desired modifications, 3: Specify the format you want to print in the print layout in the file menu, 4: confirm with the print preview in the file menu, and 5: finally execute the print in the file menu. Of course, in the case of printing a plurality of image data, it is necessary to determine the print target from the file menu in this process.
      [0092]
  On the other hand, trying to print a picture taken with the digital still camera 11b corresponds to designating simultaneous printing in DPE as compared to the case of ordinary picture taking, and a series of data processing It is made to progress corresponding to the work of simultaneous printing, and a series of data processing can be executed without being familiar with the application.
  In the simultaneous print processing screen of FIG. 34, the display of “input of photograph” is displayed, but the image data management by the film data management unit 30 is substantially performed.
The left-side portion of the display area is the operation display area dp1, but the remaining display area is the main display area dp2, and the left-side portion of the display area is a group display area dp3 for displaying image data grouped. The remaining part is an image display area dp4 for displaying, as thumbnails, image data belonging to a group when a certain group is selected.
      [0093]
  The group display area dp3 is an area for displaying a film metaphor corresponding to the folder unit as described above, and while displaying a film patrone as a frame, a film name, a comment, a date, and the number of contained image files are stored therein. Is displayed. Of course, if the properties of each film metaphor are displayed, all information such as film name, link destination, date, comment, medium attribute, medium label, film attribute, and number of contained image files will be displayed. Further, the group display area dp3 can appropriately increase or decrease the display area using the GUI, and if it can not be displayed in the display area, scroll display is added or reduced. Of course, by selecting any one of the plurality of displayed film metaphors, the image display area dp4 displays thumbnails of the image files 30a stored in the folder corresponding to the selected film metaphor. It will be
      [0094]
  In the present embodiment, image data is managed using the hierarchical structure of folders adopted by the operating system 12a. Therefore, the operator directly operates the computer system 10 to store the image file 30a in the folder. In this case, there may be a difference between the presence or absence of the image file 30a in the folder and the photo data 30b. In this case, priority is given to the presence or absence of the image file 30a in the folder. The photograph data 30b is appropriately increased or decreased.
      [0095]
  Also in this sense, it is determined based on the image file 30a present in the folder corresponding to the film metaphor whether or not there is the corresponding photo data 30b, and if there is the photo data 30b, display is performed using the thumbnail data If there is no picture data 30b, the thumbnail creation unit 20i creates thumbnail data and displays it. The picture itself is vertically or horizontally long, and one thumbnail display area is a square that can accommodate both, and displays the serial number and the actual file name outside the frame.
      [0096]
  When simultaneous printing is selected, not only when data management has already been performed, but also when image data just taken is taken and printed, and the image data itself is stored in advance. It may be considered that the data management is newly started after importing into the area. A method of taking in image data just taken may be considered, for example, when taking in a cable connection from the digital still camera 11 b or taking in a predetermined replaceable recording medium. In any case, “new film” prepared as a command button on the upper part of the main display area on the screen shown in FIG. 34 is executed. Then, as shown in FIG. 35, it becomes possible to execute two command buttons of “always input” and “select input method”, and it is also possible to execute a command button “input setting”. Assuming that a general operator has a single digital still camera 11b, it is considered that the capture of image data is constant, and the image data transfer method selected in advance in the "setting of input" is executed. It will be. Of course, there are cases where multiple digital still cameras 11b are owned, or there is also a case where it is necessary to capture them by another method, and if the command button "Select input method" is executed, multiple capture can be performed. The method will be displayed and selected. In these cases, it may be necessary to execute an external application, but these are appropriately executed by setting in the setting of the input. It is needless to say that the designation method of the input can be changed as appropriate.
      [0097]
  In such a state, the operator looks at the display in the patrone displayed in the group display area, determines the group while displaying the image data in the image display area, and further selects the image data to be printed. This selection operation is accepted by the image selection unit 20a. The selected image data can be easily determined by changing the color of the frame portion of the thumbnail display area.
Then, the selection result is reflected as an output target in the process of "printing" through "designation of printing" as well as "modification of photos" thereafter. In these cases, it is the physical arrangement information that is referred to in each process, and the image data to be selected is not moved to the temporary area and the actual process is not performed.
      [0098]
  Assuming that the image data to be printed is selected in "input of photograph", it is obvious that the next process is "retouching of photograph" according to the display in the operation display area.
In this "photo retouching", image retouching can be performed only on the selected image data. FIG. 36 shows the display in the main display area when performing automatic image modification. In the same figure, an image before modification is displayed in the upper row as thumbnails for the selected image data, and a modified image after the above-described automatic modification is displayed in the lower row as thumbnails. The operator looks at both and compares them and selects which is better. Of course, the selection can be made by clicking on the desired thumbnail by means of the mouse 15b, and for the clicked side, the display designation unit 20b can distinguish the frame portion in reverse. It should be noted that the default setting is that before modification is selected, only after clicking with the mouse may be selected after modification, and in most cases it is assumed that the image quality will be selected. It is also possible to select one after modification of the default under.
      [0099]
  In this scene, at the bottom of the screen, a command button of "execute" and a command button of "cancel" are prepared. When the "execute" command button is clicked on with a mouse, a photo prepared for each image data The modification information of the data 30b is updated. As shown in FIG. 7, the control parameters for automatic image modification (m_nApf) are prepared, and when the image data after modification is selected and the “execute” command button is clicked, the control parameters for automatic image modification (m_nApf) are selected. Set the flag. That is, even if the image data after modification is selected, it is not replaced with the original image data and overwritten with the image data after modification, but is merely set the flag of the management parameter. However, in the subsequent processing, it is possible to determine that the processing should be performed on the automatically corrected image data with reference to this management parameter. Of course, in that case, the image data may be read and automatic image correction may be required by the image correction control unit 40, but the thumbnail data in the photo data 30b is updated to thumbnail data based on the corrected image data It is sufficient to display the thumbnail data only if it is displayed. At the bottom of the screen, a check box "Reflect on original data" is prepared. When this check box is checked, the original image data is overwritten with the image data after modification.
      [0100]
  In this example, although automatic image modification is selectively performed, there is no hand that does not use such a function, and in the case of an immature operation, even if there is such a function, it is not possible to know the selection operation. There is also. Therefore, it is also convenient to make automatic image correction by default when entering a photo, and not to represent the process of correcting a photo.
  FIG. 37 shows an example of the screen display in such a case. In the example shown in the figure, the processing of "Select film" is added before "input of photograph" as the operation, and the processing of "designation of print" is executed after "input of photograph". As shown in FIG. 34, while it is possible to select a new film while enabling the selection of a new film by the processing of “input of photograph”, the screen of “selection of film” may be selected first in the case shown in FIG. By performing display, it is made easy to understand by first executing selection of photographic data on a patrone basis or selection of a new film. Also, in this screen display, in order to issue an instruction to advance or return the process, prepare command buttons such as "previous step" and "next step" in the upper part of the screen right side, and "previous step" When executed, the process is returned, and when the "next step" is executed, the process is advanced. Furthermore, in the upper part of the screen, a brief explanation of the processing of each step can be displayed. For example, at the stage of "Select Film", "Select a film and proceed to the next. A new film can be made by" Add film "" is displayed.
      [0101]
  On the other hand, it is also possible to select manual image modification, and the degree of modification is indicated using a GUI. That is, the GUI display is operated with the mouse 15b to reflect the result of the manual adjustment. In the present embodiment, the image processing unit 20g can execute stepwise enhancement processing on brightness and contrast, and based on that premise, parameters representing each enhancement level are prepared, and the selected modification result is represented. The parameters are reflected on the control parameter of the degree of enhancement (m_nBrightness) of the brightness component and the control parameter of the degree of enhancement of the contrast (m_nContrast).
      [0102]
  Manual image retouching is not limited to brightness and contrast, and enhancement processing can be performed on each of the red component, green component, and blue component, and the parameter indicating the respective enhancement level is the enhancement level of the red component (m_nRed) , The control parameter of the degree of enhancement of green component (m_nGreen), and the control parameter of the degree of enhancement of blue component (m_Blue).
  Image modification includes various processes that are reflected in the display of image data in a broad sense, and also includes image trimming and rotation in a broad sense. When trimming is performed in a state in which image data is selected, as shown in FIG. 38, image data based on management parameters at the present time is displayed within a frame of a predetermined size. Here, the trimming start position and trimming end position are specified by operating the mouse 15b, and when the "execute" command button is clicked, the area other than the rectangular area having diagonals of the start position and the end position is removed and displayed. Of course, in this case, part of the original image data is not deleted, but the trimming start X coordinate (m_x1), trimming start Y coordinate (m_y1), trimming end X coordinate (m_x2) and trimming end Y coordinate (m_y2) Only the coordinate value is set to the management parameter of, and based on this, the thumbnail creating unit 20i newly creates a thumbnail and updates it only in the picture data 30b.
      [0103]
  On the other hand, the rotation of the screen is also called image correction in a broad sense, and it is used when making a portrait-type photograph taken with the camera sideways on the display as well. FIG. 39 shows a display screen of the main display area in the case of such rotation processing, in which the original image data is displayed as thumbnails in the upper left portion, and three rotation angles of every 90 degrees below it, and arbitrary An operation input button for selecting a rotation angle is prepared. Also, thumbnails rotated by the selected rotation angle can be displayed on the right center portion. Of course, the selected rotation angle is set as a control parameter of the rotation angle (m_nRotation).
      [0104]
  FIG. 40 and FIG. 41 show menu operations at the time of designating these image modifications. Fig. 40 shows an example of menu operation for automatic image modification. When clicking on the image modification on the menu bar, a drop-down menu is displayed. When automatic image modification is selected in it, more detailed options are displayed. . Of course, if you click "clean" at this time, automatic image correction will be started with the "clean" option. In this case, all of the selected image data are displayed as shown in FIG. Also, FIG. 41 shows an example of menu operation for manual image modification. If manual image modification in the drop-down menu is selected while clicking on image modification, “brightness / contrast” modification or “color emphasis” will be displayed. It is possible to select the modification. It is considered that manual image modification is often performed individually for things that can not be improved even if automatic image modification is performed, and the image data to be subjected to manual image modification is selected and then activated. Make them executable only if you
      [0105]
  In addition, image processing is selected and executed from this drop-down menu after image data has been selected also for trimming, rotation, black and white conversion, and sepia conversion. Although the black-and-white conversion and the sepia-toned conversion are performed individually, the conversion result is uniform, and it is not necessary to adjust the subjectivity of the operator like manual image modification. Therefore, in practice, for black-and-white conversion and sepia-toned conversion, the management parameter of automatic image correction (m_nApf) is set.
      [0106]
  So far, the situation has been described in which parameters are set in the process of making various modifications to image data when simultaneous printing processing is selected. Next, processing in the computer system 10 for actually realizing such an operation will be described.
  28 to 31 show each process by a flowchart. FIG. 28 shows a process for executing automatic image modification. When reading image data for performing automatic image modification, the modification information is read with reference to the database structure of the photograph data 30b in step 100. This modification information means the various parameters described above, and if there is a designation that automatic image modification or manual image modification should be performed by these parameters, the present processing is terminated without performing the following automatic image modification. Do. This is because it is meaningless to repeatedly execute automatic image correction, and it can not be automatically corrected if preferences are reflected by manual image correction.
      [0107]
  Next, in step 110, the image data is read, the features of the image are extracted in step 115, the feature information is stored in step 120, the modification information of the automatic modification is created in step 125, and Perform automatic correction image processing. Of course, these correspond to procedure 1 to procedure 6 as described in FIG. On the other hand, if trimming position information is set in the management parameters of trimming start X coordinate (m_x1), trimming start Y coordinate (m_y1), trimming end X coordinate (m_x2) and trimming end Y coordinate (m_y2) After the judgment of 135, the image processing for trimming is executed in step 140, and when the rotation correction information is set in the management parameter of the rotation angle (m_nRotation), the judgment of step 145 is passed and the image is checked in step 150. To perform image processing of rotation to rotate.
      [0108]
  Since the image after automatic image modification can be obtained through the above process, in step 155, the thumbnails before and after modification are displayed as shown in FIG. It will wait for the input of whether to adopt the result. That is, if the one after automatic image modification is desired, select it and click the "execute" command button. In this case, in step 170, the selection status in the check box "Reflect on original data" is fetched, and if it is determined that the check is checked, the image data is overwritten and saved in step 175.
      [0109]
  When the original is rewritten, it is not necessary to refer to the modification information, and the modification information is stored at step 180 only when the original is not rewritten. On the other hand, when "standard" image automatic processing is not sufficient, as shown in FIG. 40, when "clean" or "DPE tone" is selected, automatic image correction is performed according to the setting. In step 165, the operation condition value of the automatic image processing is changed in advance, and the above-described processing is repeated in step 115. When the "cancel" command button is clicked, it is determined as "cancel" and this processing is ended.
      [0110]
  Of course, automatic image modification can cope with various conditions other than this.
Therefore, in addition to the selection of "DPE tone" prepared in advance, the above operating condition value is changed according to the user's designation such as "brighter around here ..." or "the whole becomes yellower", It is also possible to repeat the process described above. This operation condition value is not only set later in step 165, but is naturally reflected in step 125 when the automatic image modification modification information is first created.
      [0111]
  Next, processing in the case of executing manual image modification will be described. FIG. 29 shows the process of manual image retouching. When manual image retouching is performed, the retouching information is read at step 200 before the image data to be processed is read, and then at step 205. Load image data. Subsequently, at step 210, the control parameter of automatic image modification (m_nApf) is referred to, and when the control parameter is set, the image processing of automatic image modification is executed at step 215 after the judgment at step 210.
      [0112]
  Thereafter, in step 220, management parameters for manual image modification that have already been set are read and image processing as specified is performed, and then processing for trimming and processing for rotation are each based on the management parameters. Execute at 225-240.
  Since the image after manual image adjustment which has already been set can be obtained through the above processing, if the manual adjustment operation is further performed as described above in step 245, the correction is performed in step 255. The information is changed, and the image modification is performed through the processing of steps 220 to 240.
      [0113]
  In addition, if the "execute" command button is clicked, it is determined to mean "decision", and the original image data is rewritten in step 265 according to the selection status in the "reflect on original data" check box. At 270, the management parameter representing the final modification information is rewritten. When the "cancel" command button is clicked, it is determined as "cancel" and this processing is ended.
      [0114]
  Next, processing for performing trimming will be described. FIG. 30 shows the trimming process, and before the image data to be processed is read, the modification information is read at step 300, and then the image data is read at step 305. Subsequently, in step 310, the control parameter of automatic image modification (m_nApf) is referred to, and when the control parameter is set, image processing of automatic image modification is executed in step 315. Also, with reference to various management parameters for manual image modification already set in step 320, when management parameters are set, corresponding image processing is executed in step 325.
      [0115]
  Thereafter, in step 330, the management parameter for trimming which has already been set is referred to, and in step 335, image processing for trimming is performed. In step 340, the management parameter for rotation which has already been set is referred to. At step 345, rotation image processing is performed.
  By performing the above processing, it is possible to obtain all the images after the image modification that has already been set, so at step 355, the trimming operation is accepted on the screen display shown in FIG. 38, and the trimming operation is newly performed. In step 360, the modification information is changed, and the processing in step 335 is performed to execute the image modification. In this case, although the control parameter for the rotation is referred to in step 340, it is determined whether or not the rotations overlap, and the execution is not repeated.
      [0116]
  Also in this case, when the "execute" command button is clicked, it is determined to mean "decision", and the original image data is rewritten in step 365 according to the selection status in the "reflect on original data" check box. At step 370, the management parameter representing the final modification information is rewritten.
When the "cancel" command button is clicked, it is determined as "cancel" and this processing is ended.
      [0117]
  Finally, the process for executing rotation will be described. FIG. 31 shows the process of rotation, in which the modification information is read at step 400 before the image data to be processed is read, and then the image data is read at step 405. Subsequently, at step 410, the control parameter of automatic image modification (m_nApf) is referred to, and when the control parameter is set, image processing of automatic image modification is executed at step 415. Further, with reference to various management parameters for manual image modification already set in step 420, when the management parameters are set, corresponding image processing is executed in step 425.
      [0118]
  Thereafter, in step 430, the control parameter for trimming which has already been set is referred to, and in step 435, image processing for trimming is executed. In step 440, the control parameter for the already set rotation angle (m_nRotation) At step 445, the image processing of rotation is performed.
  By performing the above processing, it is possible to obtain all the images after image modification that have already been set, so in step 455, the operation of rotation is accepted on the screen display shown in FIG. 39, and a new operation of rotation is performed. In step 460, the modification information is changed, and the process of step 445 is performed to execute the image modification.
      [0119]
  Also in this case, if the "execute" command button is clicked, it is determined to mean "decision", and the original image data is rewritten in step 465 according to the selection status in the "reflect on original data" check box. In step 470, the control parameter of the rotation angle (m_nRotation) representing the final modification information is rewritten. When the "cancel" command button is clicked, it is determined as "cancel" and this processing is ended.
      [0120]
  As described above, one advantage of using the management parameter is that it is not necessary to change the original image data, and in order to make the original image data effective, it is necessary to modify the management parameter.
  As shown in FIG. 40 and FIG. 41, in the drop-down menu displayed when the image modification of the file menu is selected, an image modification cancel command is prepared at the bottom, and the command is selected and executed. The process is performed according to the flowchart of FIG.
      [0121]
  Also in this case, it is assumed that the image modification cancellation is executed in a state where the image data is selected, modification information of the photograph data 30b for the image data is read in step 500, and the operation menu shown in FIG. Display and wait for operation input. In this operation menu, there are items to be canceled such as “Auto Image Adjustment”, “Manual Image Adjustment”, “Rotate”, “Trimming”, “Black and White”, “Sepia Tone” as cancellation targets and check boxes in front of each items. it's shown. Here, the operator toggles the check mark by clicking the check box in front of the image modification item to be canceled with the mouse 15b, and internally stores the presence or absence of each check mark as a flag . In the lower part, an "execute" command button and a "cancel" command button are prepared, and the operator clicks the "execute" command button after checking the necessary check boxes.
      [0122]
  Then, the corresponding modification information is deleted while determining whether or not each check box is marked in step 510 and subsequent steps. Of course, deletion of the modification information mentioned here is nothing but modification of the management parameter, and there is no need to process the original image data at all. Specifically, in step 510, it is determined whether the item "automatic image modification" is marked with a check mark, and if it is attached, the modification information of "automatic image modification" is made in step 515. Remove Next, in step 520, it is determined whether or not the item "black and white" is marked with a check mark. If it is, then the correction information of "black and white" is deleted in step 525. Next, in step 530, it is determined whether or not the item "sepia" is checked. If it is added, the modification information of "sepia" is deleted in step 535. Next, in step 540, it is determined whether the item "manual image adjustment" is marked with a check mark. If it is added, the modification information of "manual image adjustment" is deleted in step 545. Manual image adjustment includes things such as lightness, contrast, and color enhancement. In this example, the whole is canceled, but they may be canceled individually.
      [0123]
  Next, in step 550, it is determined whether or not the item of "trimming" is marked with a check mark. If it is, the modification information of "trimming" is deleted in step 555. Next, in step 560, it is determined whether or not a check mark is attached to the item of "rotation", and if it is attached, the modification information of "rotation" is deleted in step 565.
  After some modification information is deleted after the above result, in step 570, the modification information is stored. The storage operation here means updating of the picture data 30b, and accesses the database structure of the picture data 30b shown in FIG. 5 to update it to the latest modification information. In addition, when the command button "Cancel" is clicked on the operation menu shown in FIG. 42, all check marks are internally deleted and the above processing is executed, so eventually nothing is deleted without deleting modification information. This processing will end. In this example, a technique is adopted in which the modification information once created is deleted to restore the original information, but by adding date and time information to the modification information itself, a plurality of image data corresponding to a time series can be obtained. Modification information may be managed. In this way, it is possible not only to restore by simply deleting the modification information, but also to delete the modification information retroactively to the modification information of any stage, and the modification result was good at the middle stage It is also possible to restore the
      [0124]
  So far, the work of setting or canceling the management parameter prepared corresponding to each image data has been described, but processing for making it possible to use the actually corrected image data while using this management parameter Will be described with reference to the flowchart of FIG.
  The scene that uses the modified image data is the case where the thumbnail creation unit 20i updates the thumbnails and displays the screen according to the instruction from the display specification unit 20b, or the image output unit 20k converts the data format of the image data When printing is performed by the DPE print control unit 50 as described later, the original print data may be created. Therefore, although there are minute processing differences in each case, they are generally in agreement with the flowchart of FIG.
      [0125]
  In step 600, the modification information of the target image data is read, and in step 605, the image data is read, and image modification is performed based on the image data while following the modification information in the following processing, and the image data is rewritten. Create new image data. In step 610, it is determined whether there is automatic image modification modification information. If there is, automatic image modification is performed in step 615. In this case, the management parameter of the automatic image modification (m_nApf) is not limited to the information that only the automatic image modification is performed, and it is determined which automatic image modification is to be performed, such as "standard", "clean" or "DPE tone". Proceed with the process. In addition, conversion to black and white or sepia tone is expressed by the control parameter of this automatic image modification, since there is only one modification result, and is implemented simultaneously or alternatively.
      [0126]
  Subsequently, at step 620, it is determined whether or not there is any modification information of the manual adjustment. As described above, the correction information of the manual adjustment includes the degree of enhancement of the brightness component (m_nBrightness), the degree of enhancement of the contrast (m_nContrast), the degree of enhancement of the red component (m_nRed), and the degree of enhancement of the green component (m_nGreen) And the enhancement level (m_Blue) of the blue component, and if there is any one modification information, the corresponding image processing is executed, and the modification information on brightness and contrast, and the modification information on color emphasis In the case where there is, the former will be modified and then the latter will be modified. Of course, if it is possible to obtain a result reflecting such a modification order, it is also possible to execute it with one modification.
      [0127]
  Thereafter, in step 630, it is determined whether there is trimming correction information, and if there is, trimming image processing is executed in step 635. In the image processing for trimming, the surrounding image data is deleted leaving the area surrounded by the trimming start X coordinate (m_x1), trimming start Y coordinate (m_y1), trimming end X coordinate (m_x2) and trimming end Y coordinate (m_y2) It will be done.
  In step 640, it is determined whether there is rotation correction information, and if so, in step 645, rotation image processing is performed. In the image processing of rotation, processing of rotating image data is executed with reference to the rotation angle based on the management parameter of the rotation angle (m_nRotation).
      [0128]
  The above-described image processing first saves the original image data in the work area, and then changes the image data on the work area. Therefore, no change is made to the original image data.
  The above is optional image processing which may or may not be executed according to the selection operation of the operator, but in steps 650 and 655, necessary image processing is executed based on the difference in hardware environment. . At step 650, image processing of color reproduction according to the output device is performed. There is no denying that there is a deviation from the standard on color output reproduction equipment. That is, there are many cases where the output results are different while inputting the same image data. In addition, it is simply unreasonable that the image data and the output result always match the standard condition, and this difference is simply unreasonable also in terms of cost vs. cost. It is a good idea to use information.
      [0129]
  In the case of the image data described above, it can be said that a large color misregistration does not occur in the output result if there is color misregistration information on the photographing side and color misregistration information on the output side.
In the present embodiment, the former color misregistration information is managed as color matching information in the database structure of the photo data 30b, and is managed in the setting information as color misregistration information generated in the computer system 10 and the color printer 17b. At step 650, the image data on the work area is corrected based on the color misregistration information of the two.
      [0130]
  Further, in step 655, image processing of resolution according to the output device is executed, and the resolution conversion at the time of outputting is compared with the resolution of the image data to perform corresponding resolution conversion. For example, when the display on the color display 17a is 70 dpi and printing is to be performed according to the size, assuming that the resolution of the color printer 17b is 720 dpi, resolution conversion of 10 times in the vertical and horizontal directions is required.
      [0131]
  Returning to the explanation of the simultaneous print process shown in FIG. 34, what is performed next to the photo modification is the "print designation" process. Already, through "input of photo" and "retouching of photo", selection of image data to be printed and image processing to be applied to it are selected. In this "print designation", it is designated what format the selected image data is to be printed.
  FIG. 43 shows the display in the main display area in the "print designation", and in the upper part, a display area which can be scrolled in the horizontal direction is arranged to display the layout pattern. In the figure, the layouts of “4-by-4 layout”, “album print”, and “seal print” are displayed. Of course, it is possible to implement other layout patterns. In addition, as an option, a check box is provided so that the user can select to print registration marks as a guide of the cutting position, print a date, or print a title. Further, the paper corresponds to "A4", "B5", "seal" and the like, and radio buttons capable of exclusively selecting any one of these are provided.
      [0132]
  At the time of printing, it is necessary to generate print data according to the model of the color printer 17b, so a selection display area of the printer apparatus is provided on the lower left side.
Here, by selecting the printer device, setting information corresponding to each is read out, and the above-mentioned color misregistration is corrected, or the output resolution is made to match.
  A layout of "album printing" is prepared in the layout, and when the command button of "album details" is clicked, an operation screen shown in FIG. 44 is displayed in the main display area. Also on this display screen, a display area which can be scrolled in the horizontal direction is arranged in the upper part and an album pattern can be displayed. In this example, A4 sheets are arranged in two rows and four columns and checkerboard-like The printing of the image, the printing of the image arranged in four vertical rows in the left half, and the printing of the image divided into two in the upper and lower rows are shown. In addition, as an option for album printing, a check box is provided so that you can select to print a comment, date, or page title as an option for album printing, and for album printing, print sequentially after a day A page for specifying page numbers is also provided so that through page numbers can be printed. The page number may be automatically set to the subsequent page number of the previous album printing. Then, if this display is acceptable, then the "OK" command button may be clicked, and if you do not like it, the "cancel" command button may be clicked.
      [0133]
  The final process of simultaneous printing shown in FIG. 34 is "printing", but as shown in FIG. 45, in this main display area, the type of printer currently specified, the size of paper to be printed, and necessary A confirmation message including the number of sheets is displayed, and an "execute" command button for starting printing and a "cancel" command button are prepared. Of course, if you click the "Execute" command button in this state, printing will start. Since some color printers 17b often take time to print, if all the operations to be specified in advance are completed and this “execute” button is clicked, then all printing is completed in the bath. It becomes easy.
      [0134]
  FIG. 46 shows a specific configuration of the DPE print control unit 50 that executes such "print designation" and "print" processing. The print image designation unit 50a inherits the designation of the image data selected as described above, and executes the processing of "print designation" by the frame designation unit 50b and the layout designation unit 50c. Under control, actual print data is generated by the print style creation unit 50e and the print image processing unit 50f. In general, image data is expressed by multi-tone display of RGB, but printing is often performed by two-tone display of CMYK. For this reason, the print image processing unit 50f executes the image processing according to the above-described specification, and also performs multi-tone to two-tone tone conversion processing together with the change of the RGB → CMYK color space.
      [0135]
  When multiple modification information is saved in chronological order for one image data, the history should be displayed and deleted one by one when deleting modification. Just do it. Of course, if there is a case series of modification data, image processing is applied in order from the oldest one to reproduce the image data to be used.
Also, if it is desired to add a modification, a new modification information is generated, and the previous modification information is stored as it is.
Second Embodiment
  On the other hand, FIG. 47 more specifically shows the hierarchical structure in folder units described above. First, for the film data 30c, the database file ai_dpe.i in the "main" folder 31 in which the main program of this image data processing apparatus is stored. It is saved as db0. Since it is the same folder as the main program, it is the core important information that which patrone corresponds to which folder, and it will be dissipated as a result of changing the location according to the user's arbitrary specification. To prevent. Next, with regard to the image file 30a stored in the exchangeable storage area such as the CD-ROM 13c-1, etc., the picture data 30b is placed in the "main" folder 31 to manage the picture data 30b in patrone units. In the "removable" folder 32 formed, the database file photo1. db1, photo1. db2, photo2. db1, photo2. It is saved as db2. Here, while the names photo1 and photo2 are given to one patrone, two files with extensions db1 and db2 respectively are generated. Of the two database files, the file whose extension is db2 is a dedicated file for thumbnails in the photo data 30b, and the remaining file of picture data 30b is stored in the file whose extension is db1. . Thus, in this example, a set of database files photo1. db1, photo1. The photo data 30b is configured in db2.
      [0136]
  On the other hand, when the image file 30a is stored on the hard disk 13b, it is stored in the "films" folder 33 formed in the "main" folder 31. Here, one folder for each patrone is further formed in the "films" folder 33, and when "sea bathing" is set as the patrone name, it becomes "sea bathing" folder 34, and as the patrone name. When "Hike" is set, it becomes "Hike" folder 35. Then, in each folder, the database file ai_dpe. db1, ai_dpe. While the db2 is created, the individual image file 30a is stored with a unique name. Similar to the above, the two database files store thumbnail data in the file extension db2 and store remaining photo data in the file extension db1. In addition, information of only the image file 30a stored in the same directory is stored in this database file. Of course, the same is true for the "hiking" folder 35.
      [0137]
  In addition, for convenience of processing, it is convenient to have a patrone for temporarily storing something that is not separated, and a patrone named "other" is prepared. The image files 30a classified into the "others" patrone are stored immediately below the "films" folder 33 in the same row as the "sea bathing" folder 34 and the "hiking" folder 35 described above. Also here, the database file ai_dpe. db1, ai_dpe. db2 has been created.
      [0138]
  Thus, the location of the image file 30a is on the exchangeable recording medium or the hard disk 13b, and is managed in units of patrone, and the location is the database file ai_dpe. Centrally managed by db0. Then, the database file ai_dpe. The information is stored as a link destination in db0. If the link destination is on the hard disk 13b, one directory is secured and stored with the picture data 30b, and if on the exchangeable recording medium, only the picture data 30b is concentrated in one directory. I have saved. If the photo data 30b and the image file 30a are not in the same directory, that is, if they are on an exchangeable recording medium, the database file photo1. db1, photo1. The file name of db2 is also stored in the film data 30c. This is because the photograph data 30b of a plurality of patrones will be stored on one directory. On the other hand, when the picture data 30b and the image file 30a are in the same directory, the picture data 30b ai_dpe. db1, ai_dpe. The name of db2 is not particularly important. One directory is secured for each patrone, in which a set of database files ai_dpe. db1, ai_dpe. This is because only db2 exists. Of course, since the name of the directory corresponds to the name of the patrone, its location is also specified by the name of the patrone.
      [0139]
  There are various methods for linking the image file 30a and the picture data 30b. In the above example, one set of database files is formed for a plurality of image files 30a, but it is also possible to distribute them in file units. In FIG. 48, one attribute file "0616000x. ATB" including the above-mentioned modification information, feature information, color matching information and the like is generated as the picture data 30b for one image file "0616000x. Jpg". In this case, one directory is generated for one patrone, and image files 30a and attribute files 30d are stored in each directory. When handling the image file 30a, first, it is judged whether the attribute file 30d and the image file 30a in each directory correspond to each other in a one-to-one manner, and if they coincide, thumbnail data in the attribute file 30d is used to simplify Perform the process of the display and various operations. In this case, since the attribute file 30d is specified by the location of the directory written in the film data 30c and the name of each image file 30a, these pieces of information constitute the link information of the image file 30a and the modification information. .
      [0140]
  Further, as another example in which no database file is generated, it is also possible to generate a file in which the image file 30a and the picture data 30b are integrated. FIG. 49 (a) shows an example of the directory structure in that case, and on the premise of the existence of one image file "0616000x.jpg", one file "0616000x.PHT" including the photo data 30b is generated. There is. In this case, the picture data 30b is attached on the premise that the image file 30a exists, so that the correspondence does not become inconsistent as in the case of another file.
      [0141]
  In addition, upgrading of the modification process is foreseen, and preliminary information is needed to cope with other unforeseen changes. FIG. 49 (b) shows an example in which information indicating the image modification engine version is included corresponding to the version upgrade of the modification process. Here, in addition to the image file "xxxx.jpg" and the photo data "xxxx.ATB", an information file "xxxx.ENG" indicating the version of the image modification engine is integrated into one integrated file "xxxx.PHT". Is generated.
      [0142]
  A specific process when such a folder structure is adopted is shown in FIG. As described above, the normal modification processing result is reflected only on the thumbnail, and no modification is made to the original image file 30a. Therefore, it is necessary to add a correction process to the actual image file 30a in the case of the same size display, enlarged display, or printing. Of course, the modification result is the image data 30a of the temporary work.
      [0143]
  The work image file generation processing of FIG. 50 will be described on the premise of the file configuration as described above. When the simultaneous printing process of FIG. 34 is being executed, it is necessary to display the image file at the same magnification or in an enlarged size in order to check the correction result on the way. Further, when printing is finally performed, an image file on which the modification result is reflected is required. The work image file generation process shown in FIG. 50 is a process of generating an image file of a work in such a case.
      [0144]
  Note that this processing is realized as one module or the like, and it is assumed that an image file is specified under a certain patrone being selected when calling the module. Therefore, as shown in FIG. 51, the selection information of the patrone is prepared in the variable PATRONE and a variable f_PICT indicating the presence or absence of selection for each of the image files 30a held in each patrone. The variable f_PICT is a 1000-byte character area, but each byte serves as selection information for each image file 30a, and it is possible to specify the presence or absence of selection of 1000 image files 30a. ing. Then, an argument can be given to refer to one byte in an arbitrary place, and the presence or absence of selection of each image file 30a is determined from the information.
      [0145]
  First, in step 700, the film data 30c of the patrone selected from the variable PATRONE is stored in the database file ai_dpe. Reference by db0. The corresponding film data 30c includes the medium attribute and the link destination for the corresponding patrone. Therefore, in step 700, the link destination is acquired, and in step 705, it is judged from the medium attribute whether the medium is an exchangeable recording medium, ie, removable or not, and the process is branched. In the case of removable, first, at step 707, the removable recording medium to be handled is loaded. Specifically, it acquires the path name and media label to which the removable storage medium is linked, shows it to the user, prompts the user to set it on the specified drive, and if set, checks if it is correct and restarts if it is wrong. Let Once this is complete, the corresponding database file is referenced in the "removable" folder 32 at step 710. Database file photo1. db1, photo1. If it is db2, the modification information of each image file designated based on the designation information in the variable f_PICT is acquired from the database file.
      [0146]
  If the folder is not removable based on the medium attribute, the folder with the patrone name is searched in the films folder 33 in step 715, and the database file ai_dpe. db1, ai_dpe. Refer to db2. Then, the modification information of each image file designated based on the designation information in the variable f_PICT is acquired from the database file.
  Thus, since the modification information corresponding to the location of the image file 30a can be acquired together with the location of the image file 30a, at step 720 the modification processing is executed by the corresponding image modification engine based on the designated modification information, and further at step 725 Execute the original enlargement display or print processing. Note that step 725 may be executed from the module, or the process may be returned to the upper module and executed.
      [0147]
  On the other hand, a thumbnail image is displayed on the image display area dp4 in a state where the patrone is selected. In this case, the thumbnail display processing shown in FIG. 52 is executed. Also in this case, first, at step 730, the film data 30c of the patrone selected based on the variable PATRONE is stored in the database file ai_dpe. The medium attribute and the link destination for the corresponding patrone are acquired from the corresponding film data 30c by referring to db0. Then, it is judged from the medium attribute whether the medium is an exchangeable recording medium, that is, removable or not, and in the case of removable, in step 740, the database file photo1. Get thumbnail data from db2. If the folder is not removable based on the medium attribute, a folder having the patrone name is searched in the films folder 33 in step 745, and the database file ai_dpe. Get thumbnail data from db2. Then, in step 750, the acquired thumbnail data is displayed in the image display area dp4.
      [0148]
  Next, processing for enabling the order of image processing to be arbitrarily changed will be described. FIG. 53 shows the contents of the modification information in the photograph data 30b in this case. The contents of the process are "automatic image modification", "brightness", "contrast", "red (emphasis)", "green (emphasis)", and "blue (emphasis)" as shown in the leftmost column. In addition, for each process, the individual designation information to be set is “modification engine version”, “order (execution order information)”, and “processing strength” as shown in the top page.
      [0149]
  Here, since “automatic image modification” has a fixed execution order of each processing content, the order becomes effective among other processes only when not selected. FIG. 6A shows that “1” is set in the order of automatic image modification, and that other processes are “0” and not selected. On the other hand, in the figure (b), the order of automatic image modification is "0" and is not selected. The other processes are set in the order of "1" to "5".
      [0150]
  FIG. 54 shows a flowchart for executing the image modifying process when such an order of processes is attached. First, in step 760, sorting by processing order is performed. As described above, since “0” is added when the process is not selected, as a result of the ascending sort, the process not selected comes first. At step 765, "0" is added to the order column to eliminate the processing arranged at the head. For example, in the case shown in FIG. 53 (a), only automatic image processing remains, and in the case shown in FIG. 53 (b), only automatic image processing is excluded, and red emphasis and green emphasis are given as processing targets. Emphasis on blue, brightness, and contrast.
      [0151]
  Step 770 is a loop end judgment. If there is nothing to be processed, this modification processing is ended, and if there is something to be processed, the processing is executed in steps 775 and 780. Step 775 passes the image data and processing strength parameter to the processing engine of the top priority processing to execute the modification processing. The highest priority processing is processing which is sorted and rearranged at the beginning, and in the example of FIG. 53 (b), the processing is red emphasis at the beginning.
      [0152]
  After this processing, at step 780, the unprocessed ones are advanced. First, the red emphasizing process is the highest priority process, and when the process is finished, the red emphasizing process is removed, the second blue emphasizing process is prioritized, and so on. The processing is performed in order until the final processing is completed by such a carry-up processing, and there is no processing to be finally performed, and the loop processing is ended.
  FIG. 55 conceptually shows the process of step 775. The image modification control unit 40 incorporates a plurality of image modification engines on the premise that it is used as a so-called image modification engine. In the figure, version 1 (41) and version 2 (42) are available as automatic image modification engines, and version 1 (43) and version 2 (44) are similarly available as brightness modification engines. , Version 1 (45) is a modification engine for contrast modification, and others are provided as well. In step 775, when the processing engine, the version, the image data, and the processing strength are specified as parameters to the image modification control unit 40 as shown in the method in the figure, the image modification control unit 40 performs the image modification as specified. Execute on image data to output corrected image data.
      [0153]
  That is, the image modification control unit 40 selects the modification engines 41 to 45 according to the contents of the parameters, applies the parameters to this, and executes the image modification. Of course, the image modification control unit 40 itself is configured as a collection of a large number of modules, and the modules of a particular modification engine are executed through branching processing.
  Thus, elements of order are set as one parameter of the modification information, and by performing sorting, modification processing can be performed in the desired order without performing unnecessary processing.
      [0154]
  On the other hand, each processing of "automatic image modification", "brightness", "contrast", "red (emphasis)", "green (emphasis)", and "blue (emphasis)" can be grouped and used separately. For example, the first group of only "automatic image modification", the second group of "brightness" and "contrast", the first of "red (emphasis)", "green (emphasis)" and "blue (emphasis)" Three groupings can be performed, such as three groups. The first group needs its own feature extraction processing, modification information creation processing and modification specification processing, and must be realized as a series of processing. Also, the second group focuses on the conversion of luminance as the contents of processing, and has commonality. Further, the third group is an emphasizing process of each color component, and the process contents are common.
      [0155]
  Therefore, although it is possible to execute specification of all groups if the execution environment has enough capacity, for example, when the processing capacity of the CPU is high, the third group can be realized depending on the execution environment, but with the first group It is possible to make the second group impossible to realize. This determines the executability of the first to third groups in the environment setting etc., and the executability of each of the modifying engines 41 to 45 is determined based on the executability information in the executability determining unit 46 of the image modifying control unit 40. refer. Then, although the modification engine is executed for the processing of the executable group, the processing for the non-executable group is ended in the same manner as the processing completed without the modification engine.
      [0156]
  By the way, so far, the photo data 30b has mainly been described in the case of one set, but it is also possible to have a configuration having a plurality of sets as in the above-mentioned history information. FIG. 56 shows an example of the contents of the photo data 30b in the case where there are a plurality of sets of such modification information. In terms of content, a plurality of sets shown in FIGS. 53 (a) and 53 (b) are provided.
  Assuming that each set is called one group, FIG. 57 is a flowchart showing processing in the case where the photo data 30b includes a plurality of groups. First of all, since only one modification specification has been provided so far, it is necessary to save it as multiple groups.
      [0157]
  After the image data to be modified is selected in step 800, in step 805, a modification to be specifically performed is instructed, and in step 810, the instructed modification is performed. Of course, the image modification of step 810 is performed on the thumbnail data representing the original image file 30a. Also, how to give the above instruction is the same as that described above.
  Next, at step 815, the user is asked whether to save the modification instruction given at step 805 or not. The query is displayed on the display 17a using a GUI, and the mouse 15b or the keyboard 15a responds. In the case of saving, at step 820, the user designates the specification of the save group. The five storage groups can be selected in advance, and any one of them can be input through the GUI. Of course, the number of storage groups is arbitrary, and it is also possible to add in order without setting the upper limit constant.
      [0158]
  After the storage group is determined, the modification information is written in step 830. As an aspect when the number of groups is determined in advance, each group may be made to correspond to a predetermined case. For example, group 1 is a modification process for a slide show, and group 2 is a modification process for printing. In addition, when selecting each group, the group may be individually designated such that it is in the case of a slide show or in the case of printing. Step 825 represents the process of correlating the group with the conditions under which it is executed, and is not essential.
      [0159]
  After the modification information is written, in step 840, thumbnail data is also written.
Thumbnail data is required for each group, and is added to the database file of the photo data 30b described above with the extension db2.
  The modification process when a plurality of groups are registered as described above is shown in FIG. Here, as a premise of the modification process shown in FIG. 54, it is determined in step 850 whether or not modification information of a plurality of groups is stored, and only one group is selected in step 855 only when there is a plurality of groups. Let Also, if there is not a plurality of groups, the existing group is specified as a default in step 860. Since one group is designated as modification information in step 855 or step 860, the processing of step 800 and thereafter shown in FIG. 57 is executed.
      [0160]
  In this example, a plurality of sets of entire parameters are prepared, and one of the sets is selected. However, it is naturally possible to prepare a plurality of processing patterns for a part of image processing, not necessarily preparing a plurality of sets as a whole. For example, a plurality of processing strength columns are prepared in the one shown in FIG. 53 and FIG. 56, and the column to be set is designated in the same manner as designation of the storage group in step 820. Further, when reading out, if a plurality of values are set in a plurality of columns in step 850, the setting to be read out is selected in step 855.
      [0161]
  On the other hand, as described above, a group may be stored under conditions for executing it. In this case, the modification process is performed according to the flowchart shown in FIG. That is, it is determined in step 870 whether or not there are a plurality of groups, and if there are a plurality of groups, the current environment is acquired in step 875. This environment corresponds to the conditions as described above. That is, it is determined with reference to a predetermined variable or flag whether the slide show is currently being executed or the printing process is being executed. Any variable can be referred to, for example, the global variable JOKEN
You may set it. After acquiring the current condition, at step 880, a group corresponding to this condition is selected. The following processes are executed from step 800 shown in FIG.
      [0162]
  In this way, when the modification processing is executed and the execution conditions are set, the environment is automatically determined when the processing such as display or printing is activated, and the environment is determined in advance. If the retouching process is set to, the corresponding retouching process is automatically performed. For example, in the case of a slide show, it is necessary to ensure that the original display interval is not exceeded during image modification. Therefore, shortening of processing time is desired, and simplification of processing becomes essential. On the other hand, in the case of printing, since the image quality is desired even if it takes a long time, the desired correction processing may be executed.
      [0163]
  In the case of a slide show from such backgrounds, a group that only adjusts relatively simple brightness and contrast is registered instead of automatic image correction, and when printing is registered as a group to execute automatic image correction. It is effective to keep it.
  Next, FIG. 60 shows a flowchart in the case of using such a plurality of groups for history. In steps 900 to 910, as in the case of steps 800 to 810 described above, predetermined image data is selected and subjected to modification. Thereafter, in step 915, it is selected whether or not the modification instruction is to be saved, and in the case of saving, in step 920, a group of latest modification information is added. For example, if there are three existing groups, they are stored as the fourth group. Also, at this time, the modification date and time may be added as one of the information. Then, in step 925, the corresponding thumbnail data is added to a predetermined database file as in step 840 and the like.
      [0164]
  As long as it is history, new modifications have to be implemented on the past.
FIG. 61 shows a flowchart of the modification process when there is history modification information.
First, in step 930, sorting is performed in the order of execution of the groups. Usually, the group with the higher number is the new modification information and is not required. However, since there may be a change in the specifications and, as described above, information on modification date and time may be stored, it makes sense to enable sorting.
      [0165]
  When the sorting is completed, the number of groups is set to the variable g_total at step 935, and at step 940, the loop pointer i is set to "1". Then, at step 945, the modification process is executed based on the modification information of the group i indicated by the loop pointer i. Since the loop pointer i is added by “1” at step 950, the modification processing is executed in ascending order of the group number, and the history is reproduced in the oldest order. Then, in step 955, it is determined whether the loop pointer i does not exceed the existing number of groups, and the loop is repeated assuming that there are unprocessed modification processes as long as the number of groups is not exceeded.
      [0166]
  On the other hand, up to this point, it has not been assumed that only a part of the image data is executed as the modification processing, but it is of course possible to be executed not only when executed for the whole image It is also possible. Here, "a part" may be a part of an area of an image, or "a part of layers" may be included if it is composed of a plurality of layers.
  FIG. 62 shows a flowchart in the case of realizing the image modification by designating such a modification area. After the image data to be processed is selected in step 960, a modification area is specified in step 965, a modification instruction is given in step 970, and the image is modified in step 975. Since the contents of area designation and modification often repeat trial and error as appropriate, the order of processing in step 965 to step 975 represents only a relative execution order.
      [0167]
  In step 980, the modification instruction is stored or inquired. If the modification instruction is stored, the modification instruction is stored as modification information together with the area information in step 985.
  However, it can be said that the retouching area saved in this way is only one parameter for the retouching engine. Therefore, as shown in FIG. 55, the modification engine partially modifies the data according to the area or layer, and outputs the result as the modified image data.
  When specifying a modification area by specifying a specific specific area, for example, if it is a rectangular area, specify coordinate values of two diagonal corners, or specify for each object, or desired with an arbitrary curve It is possible to indicate the area of
Also, the entire central area, upper half, lower half, etc. may be specified.
      [0168]
  On the other hand, it is also possible to specify image colors and associate image processing. For example, image processing can be associated by designating a chromaticity that is not easily affected by brightness. In the case of a skin-colored area, the object is considered to be mostly a human face, and in the case of a human face, a slight blur tends to look more beautiful than sharpening. Therefore, the chromaticity of the skin color is specified instead of the area information, and an instruction to reduce the sharpness (blur) is given as a correction instruction. Then, on the side of the modification engine, the chromaticity of the processing target pixel is identified, and if it is the target chromaticity, the processing intensity is instructed to be unsharpened.
      [0169]
  As another example for each chromaticity, it is also preferable to specify the chromaticity of the blue sky to make it unsharp. It is also preferable to specify a process for emphasizing redness in consideration of the sunset.
  Here, assuming that the image data of each pixel is represented by (R, G, B), the chromaticity is r = R / (R + G + B)
b = B / (R + G + B)
It is represented as The chromaticity is not affected so much even when human skin is dark or bright, and shows a constant distribution, more specifically,
0.33 <r <0.51
| 0.74r + b-0.57 | <0.1
It can judge by the relational expression. And if this condition is applied to each pixel, it can be said that it belongs to the skin color area. If this is a blue sky, considering that the fluctuation range is larger than in the skin color case,
0.17 <r <0.30
| 1.11r + b-0.70 | <0.2
It is only necessary that the following relational expression be established.
      [0170]
  As described above, in order to be able to execute optimal image processing according to the pixel conditions such as the pixel position and pixel color, parameters corresponding to the pixel conditions are stored in association with one another, and these parameters are acquired. At times, image processing is performed according to the state of pixels to reproduce an image.
  As described above, when the image data is stored in a folder managed as a film metaphor, a database of photographic data 30b corresponding to each image data is prepared, and desired image processing is selected for desired image data. The selected image processing is updated as modification information in the above database structure, and when it is necessary to actually display, output, or print, reference is made to the modification information only on the work area while leaving the original image data. Since various types of image processing are performed, it is possible to easily carry out image modification etc. while leaving the original image data.
Brief Description of the Drawings
    [Fig. 1]
  FIG. 1 is a schematic diagram corresponding to claims of an image data processing apparatus according to an embodiment of the present invention.
    [Fig. 2]
  It is a block diagram of the concrete hardware of the same image data processing device.
    [Fig. 3]
  It is a functional block diagram of the same image data processing device.
    [Fig. 4]
  It is a block diagram of a common functional part.
    [Fig. 5]
  It is a functional block diagram of a film data management part.
    [Fig. 6]
  It is a schematic explanatory drawing which shows the data structure which the film data management part manages.
    [Fig. 7]
  It is a figure which shows the variable declaration of a management parameter.
    [Fig. 8]
  It is a functional block diagram of an image modification control part.
    [Fig. 9]
  It is a figure which shows the flow of the procedure for demonstrating image modification control.
    [Fig. 10]
  It is a figure which shows the structure of an image file.
    [Fig. 11]
  It is a figure which shows the state which moves a process target pixel.
    [Fig. 12]
  It is a figure which shows the distribution range in the case of expanding a luminance distribution.
    [Fig. 13]
  It is a figure which shows the conversion relationship for expanding luminance distribution.
    [Fig. 14]
  It is a figure which shows the edge part obtained by edge part processing of brightness distribution, and edge part processing.
    [Fig. 15]
  It is a figure which shows the conversion table at the time of expanding luminance distribution.
    [Fig. 16]
  It is a figure which shows the concept brightened by (gamma) correction | amendment.
    [Fig. 17]
  It is a figure which shows the concept darkened by (gamma) correction.
    [Fig. 18]
  It is a figure which shows the correspondence of the brightness | luminance changed by (gamma) correction.
    [Fig. 19]
  It is a figure which shows evaluation of brightness and the correspondence of (gamma).
    [Fig. 20]
  It is a figure which shows the extraction method of the element for setting it as the feature vector for every color component.
    [Fig. 21]
  It is the schematic of the aggregation state of saturation distribution.
    [Fig. 22]
  It is a figure which shows the relationship between saturation and a saturation emphasis index | exponent.
    [Fig. 23]
  It is explanatory drawing in the case of expressing the change degree of an image by each component value of a rectangular coordinate.
    [Fig. 24]
  It is explanatory drawing in the case of calculating | requiring the change degree of an image by the difference value in the adjacent pixel of a vertical axis direction and a horizontal axis direction.
    [Fig. 25]
  It is explanatory drawing in the case of calculating | requiring the change degree of an image between all the adjacent pixels.
    [FIG. 26]
  It is a figure which shows an example of image data.
    [Fig. 27]
  It is a figure which shows the unsharp mask of 5x5 pixels.
    [Fig. 28]
  It is a flowchart at the time of performing specification of automatic image adjustment.
    [Fig. 29]
  It is a flowchart at the time of designating manual image adjustment.
    [FIG. 30]
  It is a flowchart at the time of designating trimming.
    [FIG. 31]
  It is a flowchart at the time of designating rotation.
    [Fig. 32]
  It is a flowchart at the time of designating the modification cancellation.
    [Fig. 33]
  It is a flow chart of processing which makes the corrected image data available.
    [Fig. 34]
  It is a figure which shows the operation screen of the process of simultaneous printing.
    [Fig. 35]
  FIG. 7 is a diagram showing an operation screen when image data is newly captured.
    [Fig. 36]
  It is a figure which shows the operation screen in the case of performing the process of automatic image modification.
    [Fig. 37]
  It is a figure which shows the operation screen at the time of performing automatic image modification by default.
    [Fig. 38]
  It is a figure which shows the operation screen in the case of performing the process of trimming.
    [Fig. 39]
  It is a figure which shows the operation screen in the case of performing the process of rotation.
    [Fig. 40]
  It is a figure which shows the operation screen in the case of performing the process of automatic image adjustment.
    [FIG. 41]
  It is a figure which shows the operation screen in the case of performing the process of manual image adjustment.
    [Fig. 42]
  It is a figure which shows the operation screen in the case of performing the process of modification cancellation.
    [FIG. 43]
  FIG. 7 is a diagram showing an operation screen when processing of print designation is performed.
    [Fig. 44]
  It is a figure which shows the operation screen in the case of performing the process of album printing.
    [Fig. 45]
  FIG. 6 is a diagram showing an operation screen when printing processing is performed.
    [Fig. 46]
  FIG. 5 is a functional block diagram of a DPE print control unit.
    [Fig. 47]
  It is a figure showing directory structure.
    [Fig. 48]
  It is a figure which shows the modification of file structure.
    [Fig. 49]
  It is a figure which shows the other modification of file structure.
    [FIG. 50]
  It is a flowchart of a production | generation process of a workpiece | work image file.
    [FIG. 51]
  It is a figure which shows the example of a definition of the variable used by the production | generation process of a workpiece | work image file.
    [Fig. 52]
  It is a flowchart of a thumbnail display process.
    [Fig. 53]
  It is a figure which shows the content of modification information.
    [FIG. 54]
  It is a flow chart of an example of modification processing.
    [Fig. 55]
  It is a conceptual diagram showing modification processing.
    [Fig. 56]
  It is a figure which shows the content in the case of having several modification information.
    [Fig. 57]
  It is a flowchart of the modification operation in the case of having modification information in a plurality of groups.
    [Fig. 58]
  It is a part of the flowchart of the modification process in the case of having modification information in a plurality of groups.
    [Fig. 59]
  It is a part of the flowchart of the retouching process when the group is made to correspond to the environment.
    [FIG. 60]
  It is a flowchart of correction operation in the case of having history correction information in a plurality of groups.
    [FIG. 61]
  It is a flowchart of the modification process in the case of realizing the modification history in a plurality of groups.
    [FIG. 62]
  It is a flowchart of the correction operation in the case of adding the correction to a part of the image.
    [Description of the code]
10: Computer system
11a ... Scanner
11b ... digital still camera
11c ... video camera
12: Computer main unit
12a ... operating system
12b ... display driver
12c ... Printer driver
12d ... application
13a ... floppy disk drive
13b ... hard disk
13c ... CD-ROM drive
14a ... modem
15a ... keyboard
15b ... mouse
17a ... Display
17b ... color printer
18a ... speaker
18b ... microphone
20 ... Common function part
20a ... image selection unit
20b ... display designation section
20c ... file editing unit
20d ... search unit
20e ... Collective comment section
20f ... batch rearranging department
20g ... Image processing unit
20h ... Image editorial department
20i ... Thumbnail creation unit
20j ... Image input unit
20k ... Image output unit
20 m ... Image display unit
30: Film data management unit
30a ... image file
30b ... photo data
30c ... film data
40: Image modification control unit
40a ... image feature extraction unit
40b ... Modification information creation unit
40c ... Modification designation section
50 ... DPE printing control unit
50a ... print image designation unit
50b ... Frame designation part
50c ... layout specification part
50d ... Print designation section
50e ... print style creation unit
50f ... print image processing unit
60 ... main control unit
60a ... environment setting unit
60b ... setting information file

JP23099499A 1999-08-18 1999-08-18 Image data processing apparatus, computer-readable recording medium storing image data processing program, and image data processing method Expired - Lifetime JP4032202B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23099499A JP4032202B2 (en) 1999-08-18 1999-08-18 Image data processing apparatus, computer-readable recording medium storing image data processing program, and image data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23099499A JP4032202B2 (en) 1999-08-18 1999-08-18 Image data processing apparatus, computer-readable recording medium storing image data processing program, and image data processing method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007135597A Division JP4348562B2 (en) 2007-05-22 2007-05-22 Image data processing apparatus, computer-readable recording medium storing image data processing program, and image data processing method

Publications (3)

Publication Number Publication Date
JP2001056867A JP2001056867A (en) 2001-02-27
JP2001056867A5 true JP2001056867A5 (en) 2005-04-07
JP4032202B2 JP4032202B2 (en) 2008-01-16

Family

ID=16916577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23099499A Expired - Lifetime JP4032202B2 (en) 1999-08-18 1999-08-18 Image data processing apparatus, computer-readable recording medium storing image data processing program, and image data processing method

Country Status (1)

Country Link
JP (1) JP4032202B2 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3646931B2 (en) 2001-08-29 2005-05-11 セイコーエプソン株式会社 Image retouching program
JP2004304343A (en) * 2003-03-28 2004-10-28 Seiko Epson Corp Image editing device, method for the same, and program
JP4517788B2 (en) * 2003-11-12 2010-08-04 セイコーエプソン株式会社 Image classification device, image classification method, image selection device, image selection method, and recording medium
JP2006085529A (en) * 2004-09-17 2006-03-30 Canon Inc Application program, information processing device, and information processing method
JP4517795B2 (en) * 2004-09-21 2010-08-04 セイコーエプソン株式会社 Image retouching program
JP2008282204A (en) * 2007-05-10 2008-11-20 Seiko Epson Corp Image processor and image processing method
JP4518102B2 (en) * 2007-05-21 2010-08-04 セイコーエプソン株式会社 Image data output adjustment
KR101382799B1 (en) 2007-08-14 2014-04-08 엘지전자 주식회사 An image display device and method of controlling the same
JP2008086029A (en) * 2007-10-09 2008-04-10 Sony Corp Image information transmission method and image information processor
JP2010063166A (en) * 2009-12-14 2010-03-18 Seiko Epson Corp Output adjustment of image data

Similar Documents

Publication Publication Date Title
JP4120724B2 (en) Image data management apparatus, image data management method, and medium on which image data management program is recorded
US6469805B1 (en) Post raster-image processing controls for digital color image printing
JP4285290B2 (en) Image processing apparatus, image processing method, and program
JP3991196B2 (en) Image processing system and image processing server
US20060238827A1 (en) Image processing apparatus, image processing system, and image processing program storage medium
US20100271513A1 (en) Selection of decorative picture suitable for input picture
US7639262B2 (en) Selecting rendering intents
US20050264833A1 (en) Image retouching apparatus, corresponding image retouching method, and computer program product for image retouching
US20010005427A1 (en) Method, apparatus and recording medium for image processing
US20090027732A1 (en) Image processing apparatus, image processing method, and computer program
JPH09270924A (en) Image expression characteristic setting device
US6057931A (en) Method and apparatus for controlling color image reproduction
JP2005190435A (en) Image processing method, image processing apparatus and image recording apparatus
JP4032202B2 (en) Image data processing apparatus, computer-readable recording medium storing image data processing program, and image data processing method
JP2001056867A5 (en)
JP2011061860A (en) Image-data processor, medium with image-data set recorded, medium with image-data processing program recorded and method for processing image data
JP2005192162A (en) Image processing method, image processing apparatus, and image recording apparatus
JP3661749B2 (en) PRINT CONTROL DEVICE, PRINT CONTROL METHOD, AND MEDIUM RECORDING PRINT CONTROL PROGRAM
JP4433040B2 (en) Image data management apparatus, image data management method, and image data management program
JP4715950B2 (en) Image data processing apparatus, recording medium, and image data processing method
JP4348562B2 (en) Image data processing apparatus, computer-readable recording medium storing image data processing program, and image data processing method
JP4725683B2 (en) Image data management apparatus and image data management program
JP4586932B2 (en) Image data management apparatus, image data management method, and medium on which image data management program is recorded
JP2005192158A (en) Image processing method, image processing apparatus, and image recording apparatus
JP4507673B2 (en) Image processing apparatus, image processing method, and program