"複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理装置であって、上記画像データに基づいて画像の全体的な特徴を示す輝度分布を一つ求めて当該輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じて上記画像データにおける各画素単位での明るさを補正することを特徴とする画像処理装置。上記請求項1に記載の画像処理装置において、再現可能な輝度の範囲をyrangeとしたときに、変換前の輝度yと輝度の分布範囲の最大値ymaxと最小値yminから変換先の輝度Yを次式に基づいて求めることを特徴とする画像処理装置。Y=aybただしa=yrange/ymax-yminb=-ayminあるいはyrange-aymaxまた、上記変換式にてY<0ならばY=0とし、Y>yrangeならばY=yrangeとする。上記請求項2に記載の画像処理装置において、変換元の輝度yの取りうる範囲内で変換先の輝度Yを演算して記憶しておき、変換時には対応関係を呼び起こして変換することを特徴とする画像処理装置。上記請求項1~請求項3のいずれかに記載の画像処理装置において、画像データが輝度に対応した複数の成分値で表される場合において、輝度の演算を同成分値の線形加算で求めることを特徴とする画像処理装置。上記請求項1~請求項4のいずれかに記載の画像処理装置において、拡大される輝度分布の範囲を実際の再現可能な範囲の端部よりも所定量だけ内側に設定することを特徴とする画像処理装置。上記請求項1~請求項5のいずれかに記載の画像処理装置において、輝度分布の拡大範囲に制限を設定することを特徴とする画像処理装置。上記請求項6に記載の画像処理装置において、再現可能な範囲内での変換前の輝度分布範囲の対応位置と変換後の輝度分布範囲の対応位置とが保持されることを特徴とする画像処理装置。上記請求項7に記載の画像処理装置において、変換前に輝度分布範囲の上端と下端とに残存していた拡大可能な範囲の割合が変換後にも保持されるように輝度分布を拡大することを特徴とする画像処理装置。上記請求項1~請求項8のいずれかに記載の画像処理装置において、輝度分布に基づいて二値画像データを判定するとともに、二値画像データであれば輝度分布の拡大を行わないことを特徴とする画像処理装置。上記請求項9に記載の画像処理装置において、再現可能な範囲内の両端に輝度分布が集中しているときに白黒の二値画像データであると判断することを特徴とする画像処理装置。上記請求項1~請求項10のいずれかに記載の画像処理装置において、画像データが自然画でない場合に輝度分布の拡大を行わないことを特徴とする画像処理装置。上記請求項11に記載の画像処理装置において、輝度分布がスペクトル状に存在する場合に上記画像データが自然画でないと判定する自然画判定手段を備えることを特徴とする画像処理装置。複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理方法であって、上記画像データに基づいて画像の全体的な特徴を示す輝度分布を一つ求めて当該輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じて上記画像データにおける各画素単位での明るさを補正することを特徴とする画像処理方法。複数の画素からなる画像の画像データをコンピュータにて入力し、所定の画像処理を行う画像処理プログラムを記録した媒体であって、上記画像データに基づいて画像の全体的な特徴を示す輝度分布を一つ検出するステップと、この検出された輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じて上記画像データにおける各画素単位での明るさを補正するステップとを具備することを特徴とする画像処理プログラムを記録した媒体。上述した従来の画像処理装置においては、予めコントラストの強弱の程度を変えた複数の設定を用意しておき、これを切り換えている。従って、現実の画像データに対応した最も好適なものを自動的に適用するということはできなかった。特に、1式に基づいて変化させる場合には全体が明るい画像であれば明るさが強調されるだけの結果となったり、全体が暗い画像であれば暗さが強調されるだけの結果となったりすることもあった。また、コントラストの強弱はテレビジョンなどでも操作可能なものでありながら、各画像において最適な強調を実行するといった自動化ができなかった。本発明は、上記課題にかんがみてなされたもので、コントラストの自動調整が可能な画像処理装置、画像処理方法および画像処理プログラムを記録した媒体の提供を目的とする。上記目的を達成するため、請求項1にかかる発明は、複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理装置であって、上記画像データに基づいて画像の全体的な特徴を示す輝度分布を一つ求めて当該輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じて上記画像データにおける各画素単位での明るさを補正する構成としてある。上記のように構成した請求項1にかかる発明においては、画像データが画像をドットマトリクス状の画素に分解して各画素の情報を表している場合に、同画像データにおける輝度分布を求めることにより、画像データにおけるコントラストの幅というようなものをある程度数値化でき、数値化できた上で再現可能な範囲に対応して当該分布を拡大させる。また、コントラストを広げただけでは全体に明るかったり暗かったりするというような場合に対応できないこともあるので、画像データが全体的に明るいか否かを判定する。その手法として、変換元の輝度yの最大分布輝度を利用し、この最大分布輝度が明るい側にあればγ補正で全体的に暗めにし、最大分布輝度が暗い側にあればγ補正で全体的に明るめにするといったことでコントラストの強調だけでは得られない全体の明るさの自動補正が行われる。ここにおいて、変換元の輝度yの最大分布輝度はメジアンで求めても良いし、平均値で求めても良い。むろん数値化といっても必ずしも具体的な数値が必要なわけではなく、その処理過程において数値として扱っても良いし、信号の大きさとして扱うようなことも可能である。これをさらに具体的に表した一例として、複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理装置であって、上記画像データにおける画素単位での輝度分布を検出する輝度分布検出手段と、この検出された輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じてγ値を求め、当該γ値に基づいて上記画像データにおける各画素単位での輝度の情報をγ補正する画像データ変換手段を具備する構成としてもよい。所定画像の画像データを扱う上でその輝度分布を求めるため、輝度分布検出手段は、上記画像データにおける画素単位での輝度分布を検出する。そして、画像データ変換手段は、この検出された輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じてγ値を求め、当該γ値に基づいて上記画像データにおける各画素単位での輝度の情報をγ補正する。すなわち、画素単位での画像データの輝度分布を求めれば最も明るい輝度から最も暗い輝度までのいわゆるコントラストの幅が判別でき、再現可能な輝度の幅の範囲と対比すればコントラストの拡大率が判定できるので、後はその拡大率となるようにして輝度分布を拡大させれば良くなる。例えば、各画素での輝度に基づいて全体としての輝度分布を集計した後、集計された輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散していない場合に、上記輝度分布が同輝度範囲に広く分散するように上記画像データにおける各画素の輝度の情報を変換する。輝度分布を拡大する手法はいくつか可能であり、画像データの輝度分布が可能な範囲内で拡大されるようにすればよい。その要点を説明すれば、検出された輝度分布の統計的な幅と再現可能な輝度範囲の幅とを比較して拡大可能な程度を拡大率として求めるとともに、拡大された輝度分布の上端と下端がこの輝度範囲内に収まるようにするための調整値を求め、各画素の輝度を個別に修正するということである。この具体的な一例として、請求項2にかかる発明は、請求項1に記載の画像処理装置において、再現可能な輝度の範囲をyrangeとしたときに、変換前の輝度yと輝度の分布範囲の最大値ymaxと最小値yminから変換先の輝度Yを次式に基づいて求める構成としてある。Y=ayb...2ただしa=yrange/ymax-ymin...3b=-ayminあるいはyrange-aymax...4また、上記変換式にてY<0ならばY=0とし、Y>yrangeならばY=yrangeとする。この変換はいわゆる線形の拡大であり、変換式自体は従来のものと同様であるものの、そのパラメータが画像データ変換手段によって選定されることに意義がある。bの選択に関わらず、y=yminの場合にY=0となり、y=ymaxの場合にY=yrangeとなる。そして、再現可能な輝度の範囲であるyrangeの範囲内で輝度分布が一様に広がることになる。なお、この例においては、いわゆる狭義の線形変換であり、むろんこれに限られる必要はなく、広義の非線形変換を実施することも可能である。また、当該変換式は一例に過ぎず同意義の変換式であっても適用可能であることはいうまでもない。各種の手法で輝度を変換するにあたり、請求項3にかかる発明は、請求項2に記載の画像処理装置において、変換元の輝度yの取りうる範囲内で変換先の輝度Yを演算して記憶しておき、変換時には対応関係を呼び起こして変換する構成としてある。変換式に基づいて輝度を毎回計算することも不可能ではないが、輝度分布のとりうる値の範囲は決まっている。このため、あらかじめ変換元の輝度yに基づいて変換先の輝度Yを演算して記憶しておけば、変換時に対応関係を呼び起こすだけで変換することが可能となる。輝度を変換するにあたっては画像データが輝度のデータとして含んでいる場合もあるし、間接的でしか輝度のデータを含んでいない場合もある。むろん、直接の輝度のデータを含んでいればそれを変換すればよいし、間接的な輝度のデータである場合でも輝度のデータに変換してから所定の輝度変換を行えばよい。しかしながら、輝度の変換は極めて正確でなければならないわけではなく、大まかに分かれば良いともいえる。その意味では厳格な正確さが要求されるわけではないので、請求項4にかかる発明は、請求項1~請求項3のいずれかに記載の画像処理装置において、画像データが輝度に対応した複数の成分値で表される場合において、輝度の演算を同成分値の線形加算で求める構成としてある。画像データがいわゆるRGB赤緑青の階調データで表されている場合、赤緑青についての各成分値はそれぞれが輝度に対応しているといえる。このため、同成分値の線形加算は十分に輝度を表すものといえ、極めて容易な変換方法となりうる。各画素についての輝度が求められるものとして、画像としての輝度分布は必ずしも画像データの全画素について求める必要がなく、例えば、画像データについて所定の抽出率に対応した間引きを行って輝度分布を求める構成としてもよい。分布を求めることを目的とすれば、全画素に対して輝度を求めることなく、所定の抽出率で間引きを行なったとしても抽出率に応じた程度の確かさの輝度分布を得ることができる。ここにおいて、間引く手法も様々であるものの、縦方向と横方向の範囲での短い側において所定の抽出数が確保されるようにする構成としてもよい。画像は平面的であるが故、自ずからその画像データも縦方向と横方向とに分布するが、ある抽出率を決定するにあたっては、少なくとも短い側においてある抽出数を確保することにより、抽出率に応じた確かさを保持することになる。さらに、輝度分布を求める際に実際の端部から所定分布割合だけ内側部分を端部としてみなす構成としてもよい。画像データの輝度分布を統計的に考慮すれば、極めて少ないながらも再現可能な輝度の範囲での両端部位まで分布すると考えるのが妥当である。従って、現実の輝度分布の両端は常に再現可能な輝度の範囲での両端にあることになる。この両端を採用したとすれば拡大率は実質的に1となってしまうので、本来の効果を果たし得ない。しかしながら、両端における所定分布割合を除いて考えれば極めて分布の少ない裾野の部分を統計的に見て適度に無視することになる。このため、この範囲をもって拡大の程度を判断する基準とする。所定分布割合は、極めて分布の少ない裾野の部分を無視することができるものであればよく、総画素数の一定割合の画素数というものであっても良いし、一定数以下の分布となったときに端部と見なすようなものでも構わない。さらに、請求項5にかかる発明は、請求項1~請求項4のいずれかに記載の画像処理装置において、拡大される輝度分布の範囲を実際の再現可能な範囲の端部よりも所定量だけ内側に設定する構成としてある。実際の画像においてはハイライト部分とハイシャドウ部分とがあり、これらの部分について人間の目が微妙な違いを悟りやすい。従って、いわゆる再現可能な輝度範囲の端部にかかる作為的な拡大を行うとハイライト部分では白く抜けた感じとなるし、ハイシャドウ部分では黒くつぶれた感じで表れてしまう。しかるに、拡大される輝度分布の範囲を実際の再現可能な範囲の端部よりも所定量だけ内側に設定することにより、両端部分で作為的な拡大が行なわれなくなる。さらに、請求項6にかかる発明は、請求項1~請求項5のいずれかに記載の画像処理装置において、輝度分布の拡大範囲に制限を設定する構成としてある。コントラストが狭いことが当然の場合がある。例えば、夕方の風景であれば輝度分布の幅が狭いのは自然であり、これを必要以上に拡大してしまうと昼の風景となってしまう。同様の例は他の場合においてもあり得ることで、輝度分布の拡大範囲に制限を設定することにより、かかる現象を回避する。さらに、請求項7にかかる発明は、請求項6に記載の画像処理装置において、再現可能な範囲内での変換前の輝度分布範囲の対応位置と変換後の輝度分布範囲の対応位置とが保持される構成としてある。輝度分布を再現可能な範囲内で最大限に使用するとすれば輝度分布を拡大可能な残余の範囲はなくなる。しかしながら、拡大範囲に制限を加えるとすれば、輝度分布を拡大可能な残余の範囲が残る。言い換えればどの範囲を中心に拡大するかの自由度が残ることになり、その中心によっては画像の雰囲気が変わりかねない。従って、再現可能な範囲内での変換前の輝度分布範囲の対応位置と変換後の輝度分布範囲の対応位置とを保持し、その中心が変わらないようにする。かかる意味での画像の輝度分布の中心については各種の捉え方が可能であり、その一例として、請求項8にかかる発明は、請求項7に記載の画像処理装置において、変換前に輝度分布範囲の上端と下端とに残存していた拡大可能な範囲の割合が変換後にも保持されるように輝度分布を拡大する構成としてある。すなわち、実質的に中心が保持されればよいので、必ずしも同中心を直接的にとらえて保持する必要はないといえ、逆に変換前に輝度分布範囲の上端と下端とに残存していた拡大可能な範囲をとらえ、この範囲の割合が変換後にも保持されるように輝度分布を拡大して実質的に中心を保持する。さらに、請求項9にかかる発明は、請求項1~請求項8のいずれかに記載の画像処理装置において、輝度分布に基づいて二値画像データを判定するとともに、二値画像データであれば輝度分布の拡大を行わない構成としてある。二値画像については実質的な意味での輝度分布はないといえるので、輝度分布から二値画像データを判定したら輝度分布の拡大は行わないようにしている。二値画像データはある色を持ったものでもあり得るため、その色の有りと無しに対応する二つの輝度となりうる。その色の輝度か否かを判定することも可能であるが、それを示唆する情報がない場合においては、請求項10にかかる発明は、請求項9に記載の画像処理装置において、再現可能な範囲内の両端に輝度分布が集中しているときに白黒の二値画像データであると判断する構成としてある。すなわち、白黒画像については再現可能な範囲内の両端に輝度分布が集中しているといえ、判断可能となる。さらに、突出する輝度分布に基づいて画像データの枠部を判定するとともに、枠部があれば枠部のデータについて輝度分布の拡大に利用しない構成としてもよい。画像を処理する場合に頻繁に起こり得るのは枠を持っていることであり、単色の枠として存在すれば当然にその色に対応する輝度分布だけが突出する。従って、かかる突出した輝度分布をもってして拡大の判断の基準とすれば有効な判断ができなくなり得るから、枠部と判断して輝度分布の拡大に利用しない。さらに、その一例として、再現可能な範囲内での端部に集中している輝度分布が枠部であると判定する構成としてもよい。白枠あるいは黒枠は頻繁にあり採用されるし、トリミングの結果によっても生じ得るものであり、再現可能な範囲内での端部に該当する。従って、この端部に集中している輝度分布を枠部と判定する。ところで、請求項11にかかる発明は、請求項1~請求項10のいずれかに記載の画像処理装置において、画像データが自然画でない場合に輝度分布の拡大を行わないように構成してある。コントラストの幅の狭さが問題となりやすいのは写真のような自然画であり、ビジネスグラフのようなものでは殆ど必要が無いとも言える。逆に、ビジネスグラフのようなものについて手を加えることが作り手のイメージと異ならせる結果になりかねない。従って、このような自然画の場合にだけ輝度分布を拡大するようにしている。自然画か否かの判断の一例として、請求項12にかかる発明は、請求項11に記載の画像処理装置において、輝度分布が線スペクトル状に存在する場合に上記画像データが自然画でないと判定する自然画判定手段を備えた構成としてある。自然画の特徴として輝度分布が滑らかに幅を持つことが言える。従って、輝度分布が線スペクトル状に表れていれば自然画でないと判断して概ね差し支えない。上記のように構成した請求項12にかかる発明においては、自然画判定手段が輝度分布の状態を判定し、線スペクトル状に存在する場合に画像データが自然画でないと判定し、これにより輝度分布の拡大が行われなくなる。上述したようにして、画像データにおける輝度分布を求めて再現可能な範囲に対応して当該分布を拡大させるように画像データを変換する手法は、実体のある装置に限定される必要はなく、その方法としても機能することは容易に理解できる。このため、請求項13にかかる発明は、複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理方法であって、上記画像データに基づいて画像の全体的な特徴を示す輝度分布を一つ求めて当該輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じて上記画像データにおける各画素単位での明るさを補正する構成としてある。すなわち、必ずしも実体のある装置に限らず、その方法としても有効であることに相違はない。ところで、このような画像処理装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものである。従って、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。その一例として、入力される画像データに基づいて印刷インクに対応した画像データに変換し、所定のカラープリンタに印刷せしめるプリンタドライバにおいても、画像データにおける輝度分布を求めて再現可能な範囲に対応して当該分布を拡大させるように画像データを変換するように構成することができる。すなわち、プリンタドライバは印刷インクに対応して入力された画像データを変換するが、このときに同入力画像データの輝度分布を求め、再現可能な範囲に対応して当該分布を拡大させ、拡大された分布となるように入力画像を変換し、印刷させる。発明の思想の具現化例として画像処理装置のソフトウェアとなる場合には、かかるソフトウェアを記録した記録媒体上においても当然に存在し、利用されるといわざるをえない。その一例として、請求項14にかかる発明は、複数の画素からなる画像の画像データをコンピュータにて入力し、所定の画像処理を行う画像処理プログラムを記録した媒体であって、上記画像データに基づいて画像の全体的な特徴を示す輝度分布を一つ検出するステップと、この検出された輝度分布が当該画像データの取りうる有効な輝度範囲に広く分散するように上記画像データを変換するにあたり、上記輝度分布から最大分布輝度を求めるとともに、上記有効な輝度範囲内での同最大分布輝度の所属範囲に応じて上記画像データにおける各画素単位での明るさを補正するステップとを具備する構成としてある。むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなるソフトウェア記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。その他、供給方法として通信回線を利用して行う場合でも本発明が利用されていることには変わりないし、半導体チップに書き込まれたようなものであっても同様である。さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものはなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。さらには、カラーファクシミリ機、カラーコピー機、カラースキャナやディジタルカメラ、ディジタルビデオなどに内蔵する画像処理装置においても適用可能であることはいうまでもない。以上説明したように本発明は、輝度分布を求めることにより、その画像のコントラストの幅のようなものを定量的に扱うことが可能となり、再現可能な範囲内での拡大程度を求めることができるので、コントラストの強調を自動化することが可能な画像処理装置を提供することができる。また、本発明によれば、コントラストの強調だけでは直せない明るさの程度をも調整することができる。また、請求項2にかかる発明によれば、所定の範囲の階調内で有効に輝度分布を拡大することができる。さらに、請求項3にかかる発明によれば、変換を容易にすることができる。さらに、請求項4にかかる発明によれば、必要十分な程度の正確さで輝度を容易に求めることができるようになる。さらに、処理量を減らすことができる。さらに、画像の抽出点の偏りを無くして輝度分布が正確になりやすくなる。さらに、より判断に有効な輝度分布を得ることができる。さらに、請求項5にかかる発明によれば、ハイライト部分やハイシャドウ部分をつぶさないようにすることができる。さらに、請求項6にかかる発明によれば、コントラストを強調しすぎて画像の雰囲気を変えてしまわないようにすることができる。さらに、請求項7にかかる発明によれば、画像の明るさに表される雰囲気を保持することができ、さらに、請求項8にかかる発明によれば、それを容易に実行することができる。さらに、請求項9にかかる発明によれば、輝度分布の拡大の不要な条件を容易に判定して拡大を行わないようにすることができるし、さらに、請求項10にかかる発明によれば、頻度の多い白黒画像を効率よく判定することができる。さらに、画像に表れがちな枠部の輝度によって処理が不正確になるのを防止することができ、頻度の多い白黒の枠部を容易に判定することができる。さらに、請求項11にかかる発明によれば、輝度分布の拡大が必要な自然画の場合にだけ行うようにすることができ、さらに、請求項12にかかる発明によれば、自然画か否かを容易に判定することができる。そして、請求項13にかかる発明によれば、輝度分布を求めて画像のコントラストの幅のようなものを定量的に扱うことができ、コントラストの強調を自動化する画像処理方法を提供することができ、請求項14にかかる発明によれば、同様にしてコントラストの強調を自動化する画像処理プログラムを記録した媒体を提供することが可能となる。以下、図面にもとづいて本発明の実施形態を説明する。図1は、本発明の一実施形態にかかる画像処理システムをブロック図により示しており、図2は具体的ハードウェア構成例をブロック図により示している。同図において、画像入力装置10は画像を撮像するなどして画像データを画像処理装置20へ出力し、同画像処理装置20は所定のコントラスト強調などの画像処理を行なって画像出力装置30に出力し、同画像出力装置30はコントラストを強調された画像を表示する。ここにおいて、画像入力装置10の具体例はスキャナ11やデジタルスチルカメラ12あるいはビデオカメラ14などが該当し、画像処理装置20の具体例はコンピュータ21とハードディスク22などからなるコンピュータシステムが該当し、画像出力装置30の具体例はプリンタ31やディスプレイ32等が該当する。本画像処理システムにおいては、コントラストの弱い画像に対して最適なコントラストを与えようとしているものであるから、画像入力装置10としてのスキャナ11で写真を撮像した画像データであるとか、デジタルスチルカメラ12で撮影したコントラストの弱い画像データなどが処理の対象となり、画像処理装置20としてのコンピュータシステムに入力される。本画像処理装置20は、少なくとも、輝度の分布を抽出する輝度分布検出手段と、この検出された輝度分布に基づいて再現可能な範囲内での同輝度分布の拡大可能な程度を判別して画像データを変換する画像データ変換手段を構成する。むろん、本画像処理装置20は、この他にも機種毎による色の違いを補正する色変換手段であったり、機種毎に対応した解像度を変換する解像度変換手段などを構成していても構わない。この例では、コンピュータ21はRAMなどを使用しながら、内部のROMやハードディスク22に保存されている各画像処理のプログラムを実行していく。なお、このような画像処理のプログラムは、CD-ROM、フロッピーディスク、MOなどの各種の記録媒体を介して供給される他、モデムなどによって公衆通信回線を介して外部のネットワークに接続し、ソフトウェアやデータをダウンロードして導入することも行われている。この画像処理のプログラムの実行結果は後述するようにコントラストを強調した画像データとして得られ、得られた画像データに基づいて画像出力装置30であるプリンタ31で印刷したり、同じ画像出力装置30であるディスプレイ32に表示する。なお、この画像データは、より具体的にはRGB緑、青、赤の階調データとなっており、また、画像は縦方向heightと横方向widethに格子状に並ぶドットマトリクスデータとして構成されている。すなわち、当該画像データは画像をドットマトリクス状の画素に分解して各画素の情報を表したものとなっている。本実施形態においては、画像の入出力装置の間にコンピュータシステムを組み込んで画像処理を行うようにしているが、必ずしもかかるコンピュータシステムを必要とする訳ではなく、図3に示すようにデジタルスチルカメラ12a内にコントラストを強調する意味での画像処理装置を組み込み、変換した画像データを用いてディスプレイ32aに表示させたりプリンタ31aに印字させるようなシステムであっても良い。また、図4に示すように、コンピュータシステムを介することなく画像データを入力して印刷するプリンタ31bにおいては、スキャナ11bやデジタルスチルカメラ12bあるいはモデム13b等を介して入力される画像データを自動的にコントラスト強調するように構成することも可能である。コンピュータ21にて実行する画像処理の内、輝度分布検出手段に相当する輝度の分布検出処理と画像データ変換手段に相当する輝度変換処理とをそれぞれ図5及び図6に示している。図5は主に輝度の分布検出処理に該当しており、まず、この輝度の分布検出処理について説明する。輝度をいかにして表すかについて説明する前に、分布対象となる画素について説明する。図5のステップS102で示すように対象となる画素を間引く間引き処理を実行する。図7に示すように、ビットマップの画像であれば、縦方向に所定ドットと横方向に所定ドットからなる二次元のドットマトリクスとして成り立っており、正確な輝度の分布を求めるのであれば全画素について輝度を調べる必要がある。しかしながら、この分布抽出処理は分布の幅を求めることを目的としており、必ずしも正確である必要はない。従って、ある誤差の範囲内となる程度に間引きを行うことが可能である。統計的誤差によれば、サンプル数Nに対する誤差は概ね1/N1/2と表せる。ただし、は累乗を表している。従って、1程度の誤差で処理を行うためにはN=10000となる。ここにおいて、図7に示すビットマップ画面はwidth×heightの画素数となり、サンプリング周期ratioは、ratio=minwidth,height/A1...5とする。ここにおいて、minwidth,heightはwidthとheightのいずれか小さい方であり、Aは定数とする。また、ここでいうサンプリング周期ratioは何画素ごとにサンプリングするかを表しており、図8の○印の画素はサンプリング周期ratio=2の場合を示している。すなわち、縦方向及び横方向に二画素ごとに一画素のサンプリングであり、一画素おきにサンプリングしている。A=200としたときの1ライン中のサンプリング画素数は図9に示すようになる。同図から明らかなように、サンプリングしないことになるサンプリング周期ratio=1の場合を除いて、200画素以上の幅があるときには最低でもサンプル数は100画素以上となることが分かる。従って、縦方向と横方向について200画素以上の場合には100画素×100画素=10000画素が確保され、誤差を1以下にできる。ここにおいてminwidth,heightを基準としているのは次のような理由による。例えば、図10aに示すビットマップ画像のように、width>>heightであるとすると、長い方のwidthでサンプリング周期ratioを決めてしまった場合には、同図bに示すように、縦方向には上端と下端の2ラインしか画素を抽出されないといったことが起こりかねない。しかしながら、minwidth,heightとして、小さい方に基づいてサンプリング周期ratioを決めるようにすれば同図cに示すように少ない方の縦方向においても中間部を含むような間引きを行うことができるようになる。なお、この例では、縦方向と横方向の画素について正確なサンプリング周期で間引きを行うようにしている。これは、逐次入力される画素について間引きしながら処理する場合に好適である。しかし、全画素が入力されている場合には縦方向や横方向についてランダムに座標を指定して画素を選択するようにしても良い。このようにすれば、10000画素というような必要最低限の画素数が決まっている場合に10000画素となるまでランダムに抽出する処理を繰り返し、10000画素となった時点で抽出を止めればよくなる。このように選択した画素についての画素データがその成分要素として輝度を持っていればその輝度値を用いて分布を求めることが可能である。しかしながら、輝度値が直接の成分値となっていない画像データの場合でも、間接的には輝度を表す成分値を備えている。従って、輝度値が直接の成分値となっていない表色空間から輝度値が直接の成分値となっている表色空間への変換を行えば輝度値を得ることができる。このような異なる表色空間の間での色変換は変換式によって一義的に定まるものではなく、それぞれの成分値を座標とする色空間について相互に対応関係を求めておき、この対応関係を記憶した色変換テーブルを参照して逐次変換する必要がある。テーブルとする関係上、成分値は階調値として表され、三次元の座標軸を備えている256階調の場合には、約1670万個256×256×256の要素の色変換テーブルを持たなければならない。効率的な記憶資源の利用を考えた結果、すべての座標値についての対応関係を用意しておくのではなく、通常は適当なとびとびの格子点について対応関係を用意しておき、補間演算を併用するようにしている。この補間演算はいくつかの乗算や加算を経て可能となるものであるため、演算処理量は膨大となってくる。すなわち、フルサイズの色変換テーブルを使用するのであれば処理量としては少なくなるもののテーブルサイズが非現実的となり、テーブルサイズを現実的なサイズにすれば演算処理量が非現実的となることが多い。このような状況に鑑み、本実施形態においては、テレビジョンなどの場合に利用されているように、RGBの三原色から輝度を求める次式の変換式を採用している。すなわち、P点での輝度ypについてはRGBの成分値RpGpBpから、yp=0.30Rp0.59Gp0.11Bp...6とする。このようにすれば、三回の乗算と二回の加算だけで輝度値を求めることができるようになる。本実施形態においては、RGBの表色空間を対象としている結果、このような変換式を採用しているが、その背景には各成分値が色の明るさを示しているので、それぞれの成分値を単独で見た場合に輝度に線形に対応しているという性質がある。従って、よりおおざっぱに言えばそれぞれの加算割合を考慮することなく単にyp=RpGpBp/3...7というように簡略化することも不可能ではないし、さらには、yp=Gp...7というように、6式においても最も割合の大きい緑の成分値を輝度値としてしまうことも可能である。間引き処理では、選択した画素についてRGBの画像データから同時に輝度を求めて分布をとる。最終的にはステップS116にてこの分布の幅を求めることになるが、その前に考慮しておく事項がある。一つ目は画像が白黒画像のような二値画像である場合である。白黒画像を含めて二値画像であればコントラストの強調という概念は不適切である。図11に示すような白黒画像があったとすると、この画像に対する輝度分布は図12に示すように再現可能な範囲における両端に集中する。それも、基本的には階調0と階調255に集中する。従って、ステップS104で白黒チェックを行う場合には、階調0と階調255の画素数の和が、間引いて選択した画素数と一致するか否かで判断できる。そして、白黒画像の場合であれば以下の処理を実行することなく処理を中断するためにステップS106にて非拡大処理を実行する。本実施形態においては分布抽出処理と輝度変換処理とを大きく分けているので、この非拡大処理では後段の輝度変換処理も実行しないようなフラグを立てて当該分布抽出処理を終了している。二値データは白黒だけに限らず、色の付いた二値データもあり得る。このような場合も同様にコントラストの強調を図る処理は不要であり、分布状態を調べて二つの値一方は概ね0にしか分布が集中していなければ二値データとして処理の中断を図ればよい。二つ目は画像がビジネスグラフのようなものか写真のような自然画であるか否かを考慮する。自然画においてはコントラストの強調という処理が要求される場合があるものの、ビジネスグラフであるとか絵画のようなものではコントラストの強調を図らない方が好まれる場合が多い。従って、ステップS108では自然画か否かのチェックを行う。自然画では陰影を含めて色数が極めて多いがビジネスグラフやある種の絵画では色数が限られていることが多い。従って、色数が少なければ自然画ではないと判断することが可能である。色数を正確に判断しようとすれば上述したように1670万色のうちの何色を使用しているかを判別する必要があるが、現実的ではない。一方、ビジネスグラフのような極めて色数が少ない場合には異なる色であって同じ輝度になる確率は低い。すなわち、輝度によって概ねの色数を判断できる。色数が少なければ輝度の分布もまばらであり、ビジネスグラフのようなものでは線スペクトル状に表れる。このようなことから、ステップS108では256階調の輝度のうち分布数が0でない輝度値がいくつ表れているかカウントする。そして、概ね一割となる25以下であれば自然画でないと判断し、二値データの場合と同様、ステップS106にて非拡大処理を実行する。むろん、しきい値となる25色以下か否かについては適宜変更可能である。また、分布が線スペクトル状か否かは分布数が0でない輝度値の隣接割合で判断することも可能である。すなわち、分布数が0でない輝度値であって隣接する輝度値に分布数があるか否かを判断する。隣接する二つの輝度値のうち少なくとも一方で隣接していれば何もせず、両方で隣接していない場合にカウントを行い、その結果、0でない輝度値の数とカウント値との割合で判断すればよい。例えば、0でない輝度値の数が20であって、隣接しないものの数が20であれば線スペクトル状に分布していることが分かる。さらに、オペレーティングシステムを介して画像処理プログラムが実行されているような場合には、画像ファイルの拡張子で判断することも可能である。ビットマップファイルのうち、特に写真画像などではファイル圧縮がなされ、その圧縮方法を表すために暗示の拡張子が利用されることが多い。例えば、JPGという拡張子であれば、JPEGフォーマットで圧縮されていることが分かる。オペレーティングシステムがファイル名を管理していることから、プリンタドライバなどの側からオペレーティングシステムに問い合わせを出せば、同ファイルの拡張子が回答されることになるため、その拡張子に基づいて自然画であると判断してコントラストの強調を行うようにすればよい。また、XLSというようなビジネスグラフに特有の拡張子であればコントラストの強調を行わないと判断することもできる。三つ目に考慮することは、図13に示すように画像の周りに枠部があるか否かである。このような枠部が白色または黒色であれば、その輝度分布は図14に示すように、その影響が再現可能な範囲における両端に線スペクトル状に表れるとともに、内部の自然画に対応して両端以外の内側に滑らかな輝度分布としても表れる。むろん、枠部を輝度分布の考慮に入れない方が適切であるため、ステップS108の枠部のチェックでは階調0と階調255の画素数の和が十分に大きく、かつ、間引いて選択した画素数とは一致しないかを判断し、肯定的ならば枠部があると判定してステップS112にて枠処理を実施する。この枠処理では、枠部を無視するために輝度分布のうち階調0と階調255の画素数を0にセットする。これにより、以下の処理では枠部がないものと同様に扱うことができる。この例では白色または黒色の枠部を対象としているが、特定の色の枠がある場合も考えられる。このような場合、輝度分布が描く本来の滑らかなカーブの中で突出する線スペクトル状のものが表れる。従って、隣接する輝度値の間で大きく差が生じている線スペクトル状のものについては枠部として考えて輝度分布の対象としないようにすればよい。この場合、枠部以外でその色を使用していることがあり得るので、両隣の輝度値の平均を割り当てるようにしても良い。以上のような考慮を経た上で、輝度分布の拡大を行う場合にはステップS116で輝度分布の両端を求める。自然画における輝度分布は図15に示すように概ね山形に表れる。むろん、その位置、形状についてはさまざまである。輝度分布の幅はこの両端をどこに決めるかによって決定されるが、単に裾野が延びて分布数が0となる点を両端とすることはできない。裾野部分では分布数が0付近で変移する場合があるし、統計的に見れば限りなく0に近づきながら推移していくからである。このため、分布範囲において最も輝度の大きい側と小さい側からある分布割合だけ内側に経た部分を分布の両端とする。本実施形態においては、図15に示すように、この分布割合を0.5に設定している。むろん、この割合については、適宜、変更することが可能である。このように、ある分布割合だけ上端と下端をカットすることにより、ノイズなどに起因して生じている白点や黒点を無視することもできる。すなわち、このような処理をしなければ一点でも白点や黒点があればそれが輝度分布の両端となってしまうので、多くの場合において最下端は階調0であるし、最上端は階調255となってしまうが、上端部分から0.5の画素数だけ内側に入った部分を端部とすることにより、このようなことが無くなる。実際の処理では処理対象となる画素数間引き処理において選択した画素の総数、あるいは枠部に対応する画素数を削除した総数に対する0.5を演算し、再現可能な輝度分布における上端の輝度値及び下端の輝度値から順番に内側に向かいながらそれぞれの分布数を累積し、0.5の値となった輝度値を求める。以後、この上端側をymaxと呼び、下端側をyminと呼ぶ。本実施形態においては、輝度分布に対してこのような処理を経て上端と下端とを求めているが、統計的処理のもとで両端を求めることも可能である。例えば、輝度値の平均値に対して何以下となったところを端部とするといった手法を採用することも可能である。以上の処理が分布検出処理に該当し、次に、このようにして求めた輝度値ymax,yminに基づいて画像データの変換を行なう輝度変換処理について説明する。なお、上述したようにステップS106にて非拡大処理を実行した場合には、ステップS202にて所定のフラグを参照してそれを検知し、以下の処理を行うことなく当該画像処理を終了する。輝度の基本的な変換は、再現可能な輝度の範囲を0~255としたときに、変換前の輝度yと輝度の分布範囲の最大値ymaxと最小値yminから変換先の輝度Yを次式に基づいて求める。Y=ayb...2ただしa=255/ymax-ymin...3b=-ayminあるいは255-aymax...4また、上記変換式にてY<0ならばY=0とし、Y>255ならばY=255とする。ここにおける、aは傾きであり、bはオフセットといえる。この変換式によれば、図16に示すように、あるせまい幅を持った輝度分布を再現可能な範囲まで広げることができる。なお、基本的に輝度の分布範囲の拡大においては、画素数が変化するわけではないので、ヒストグラムの面積は一致する。ところで、このように再現可能な範囲を最大限に利用して輝度分布の拡大を図った場合、ハイライト部分が白く抜けてしまったり、ハイシャドウ部分が黒くつぶれてしまうことが起こる。これを防止するため本実施形態においては、再現可能な範囲を制限している。すなわち、再現可能な範囲の上端と下端に拡大しない範囲として輝度値で5だけ残している。この結果、変換式のパラメータは次式のようになる。a=245/ymax-ymin...8b=5-ayminあるいは250-aymax...9そして、この場合にはy<yminと、y>ymaxの範囲においては変換を行わないようにする。なお、本実施形態においては、ハイライト部分とハイシャドウ部分とを保持するために一律に端部から輝度値にして5の範囲を非拡大領域としているが、ハイライト部分やハイシャドウ部分を比較的再現しやすいような画像出力装置であればその範囲を狭くしても良いし、再現力がさらに弱い場合にはより範囲を大きくするようにしても良い。また、一律に拡大しないのではなく、ボーダー領域で徐々に拡大率を制限するようにしていっても良い。また、図17aには画像の輝度分布が狭い場合を示しているが、これまで述べたようにして輝度分布の拡大率aに対応を適用してしまうと、再現可能な範囲に合わせて非常に大きな拡大率が得られる場合も生じてくる。すると、夕方のような薄暮の状態では最も明るい部分から暗い部分までのコントラストの幅が狭くて当然であるのに、この画像についてコントラストを大きく拡大しようとする結果、昼間の画像のように変換されてしまいかねない。このような変換は希望されないので、拡大率には制限を設けていおき、aが1.5~2以上とはならないように制限する。これにより、薄暮は薄暮なりに表現されるようになる。拡大率に制限を設けない場合を図17aの一点鎖線に示しており、変換後には再現可能な範囲で余分な部分は残っていない。しかしながら、拡大範囲を制限する場合には、同図bの二点鎖線で示すように、変換後の分布をどこに持ってくるかの自由度が生じてしまい、場合によっては全体的に明るくなりすぎたり、暗くなり過ぎたりしかねない。このため、本実施形態においては、変換前における輝度分布が再現可能な範囲内において上端側と下端側に残っている残余の領域の割合m1:m2が、変換後において上端側と下端側に残っている残余の領域の割合n1:n2と一致するように変換する。以下、このようにする場合のパラメータbの求め方について説明する。変換前の画像の輝度分布において、m1=yminm2=255-ymaxここで、m1m2=255-従って、ydif=ymax-yminとすると、m1m2=255-ydif変換後の画像の輝度分布において、n1=Yminn2=255-Ymax同様に、n1n2=255-=255-a=255-aydifとなる。m1:m2=n1:n2であるから、n1=m1/=ymin/一方、Y=aybであるから、b=Y-ayとなり、よって、b=Ymin-aymin=ymin{/-a}...10となる。また、Ymaxを用いて求めると、b=Ymax-aymax=255-/-aymax...11以上のようにしてパラメータbを得ることができ、ステップS204を終了する。ところで、輝度の変換時に、毎回、上記変換式Y=aybを実行するのは非合理的である。というのは、輝度yの取りうる範囲が0~255でしかあり得ないため、予め輝度yが取りうる全ての値に対応して変換後の輝度Yを求めておくことも可能である。従って、ステップS206にてこの対応関係を求め、図18に示すようなテーブルとして記憶しておく。このような変換テーブルが形成されたところで画像データを変更することが可能になる。しかし、このような輝度の範囲の拡大によってコントラストを強調するだけでなく、合わせて明るさを調整することも極めて有効である。例えば、図19にて実線で示すように輝度分布の山が全体的に暗い側に寄っている場合には鎖線で示すように全体的に明るい側に山を移動させると良いし、逆に、図20にて実線で示すように輝度分布の山が全体的に明るい側に寄っている場合には鎖線で示すように全体的に暗い側に山を移動させると良い。各種の実験を行った結果、本実施形態においては、輝度分布におけるメジアンymedを求め、同メジアンymedが85未満である場合に暗い画像と判断して以下のγ値に対応するγ補正で明るくする。γ=ymed/85...12あるいは、γ=ymed/851/2...13とする。この場合、γ<0.7となっても、γ=0.7とする。このような限界を設けておかないと夜の画像が昼間のようになってしまうからである。なお、明るくしすぎると全体的に白っぽい画像になってコントラストが弱い画像になりやすいため、彩度を合わせて強調するなどの処理が好適である。一方、メジアンymedが128より大きい場合に明るい画像と判断して以下のγ値に対応するγ補正で暗くする。γ=ymed/128...14あるいは、γ=ymed/1281/2...15とする。この場合、γ>1.3となっても、γ=1.3として暗くなり過ぎないように限界を設けておく。なお、暗くしすぎると色が乗りすぎて濃い画像になるので、合わせて彩度強調を弱くするなどの処理が好適である。ただし、明るい背景の中の被写体に対してはこのような暗くする処理はかえって悪影響を及ぼす場合もある。例えば、空が画像の半分をしめるような風景画像や晴れた日の記念写真などでは、ただでさえ逆光で顔が暗くつぶれ気味であることが多いからである。これらの画像の場合は暗い部分と明るい部分とが混じっているので輝度の標準偏差ystdを求めると比較的高い値となっていることが多い。従って、輝度の標準偏差ystd>70の場合には暗くするためのγ補正を行わないようにする。なお、このγ補正は変換前の輝度分布に対して行っても良いし、変換後の輝度分布に対して行っても良い。γ補正をした場合における対応関係を図21に示しており、γ<1であれば上方に膨らむカーブとなり、γ>1であれば下方に膨らむカーブとなる。むろん、かかるγ補正の結果も図18に示すテーブル内に反映させておけばよく、ステップS208にてテーブルデータに対して同補正を行っておく。最後に、ステップS210にて画像データの変換を行う。ここまでは輝度を変換するための対応関係を求めてきており、例えば、RGB座標軸における成分値RpGpBpについての変換関係ではなかった。しかしながら、2式の変換式は、このRGBの成分値RpGpBpとの対応関係においても当てはめることができる。すなわち、変換前の成分値r,g,bに対して変換後の成分値R,G,Bは、R=arb...16G=agb...17B=abb...18として求めることもできる。これは2式と4式とがともに線形の対応関係を示していることから明らかである。また、輝度y,Yが階調0~階調255であるのに対応してRGBの各成分値r,g,b,RGBも同じ範囲となっており、上述した輝度y,Yの変換テーブルをそのまま利用すればよいといえる。従って、ステップS210では全画素の画像データr,g,bについて16~18式に対応する変換テーブルを参照し、変換後の画像データRGBを得るという処理を繰り返すことになる。次に、上記構成からなる本実施形態の動作を順を追って説明する。スキャナ11などで写真を撮像したとすると、同写真をRGBの階調データで表した画像データがコンピュータ21に取り込まれ、CPUは図5及び図6に示す画像処理のプログラムを実行して画像データのコントラストを強調する処理を実行する。まず、ステップS102では画像データを所定の誤差内となる範囲で間引き、選択した画素についての輝度yを求めて分布を取る。このままの分布を使用することはできず、まず、画像が白黒のような二値画像でないかステップS104にて判断するとともに、ステップS108では自然画か否かを判断する。二値画像である場合や自然画でない場合などを除き、ステップS110では画像データに枠部がないか判断し、枠部があれば除いて得られた輝度分布について上端と下端の0.5の範囲を除去して分布の両端ymax,yminを取得する。輝度分布の両端ymax,yminが得られたら、Y=ayb...2a=245/ymax-ymin...8bについては、以下のいずれかb=5-ayminあるいは250-aymax...9b=ymin{/-a}...10b=255-/-aymax...11なる関係式より、ステップS204にてパラメータa,bを求めるとともに、ステップS206では輝度yから輝度Yへの変換関係をテーブルに記憶する。ステップS208では必要に応じてγ補正を実行し、完成した変換テーブルを参照してステップS210では全画素についての画像データを変換する。むろん、上述したように二値画像や自然画でない場合においてはかかる画像処理は行われないが、本発明の画像処理が行われた場合には、写真の状態では非常にコントラストが弱かったにもかかわらず、輝度の範囲を広げるように補正することにより、明暗がはっきりして鮮明な画像を得られるようになる。なお、上述した実施形態においては、拡大率の制限などを一定としているが、コンピュータ21上では所定のGUIを介してユーザーが選択できるようにしても良い。また、ユーザーが画像データの一部を指定して当該範囲内でのみかかるコントラストの強調処理を実行するようにすることも可能である。このように、ステップS102で間引きするなどしながら画像データの画素について輝度yを求めた後、上端と下端において所定の分布割合だけ内側に入った端部を当該輝度分布の端部をみなすことによりステップS116、輝度の再現可能な範囲内での拡大率に対応するパラメータaと、オフセット量に対応するパラメータbとを得ることができるようになるため、変換元の輝度yに対して変換先輝度YをY=aybなる関係式などを利用して自動的に変換可能となる。なお、ビデオカメラ14の入力画像については、演算速度が間に合わないこともあり得る。従って、そのような場合には撮影のシーンごとに輝度の検出を行って輝度の分布を検知し、そのシーンにおいては同様の傾向であるものと想定して輝度の拡大テーブルを作成しておくとともに、フレームごとに同拡大テーブルに対応して輝度分布を拡大するようにすればよい。むろん、十分な演算速度があれば各フレームごとに変換するようにしても良い。むろん、同様の変換は受像機の側で行うことも可能である。"