JP3953897B2 - 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 - Google Patents
画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 Download PDFInfo
- Publication number
- JP3953897B2 JP3953897B2 JP2002180778A JP2002180778A JP3953897B2 JP 3953897 B2 JP3953897 B2 JP 3953897B2 JP 2002180778 A JP2002180778 A JP 2002180778A JP 2002180778 A JP2002180778 A JP 2002180778A JP 3953897 B2 JP3953897 B2 JP 3953897B2
- Authority
- JP
- Japan
- Prior art keywords
- color
- conversion
- image processing
- image
- gradation
- 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.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 146
- 238000003672 processing method Methods 0.000 title claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 135
- 239000003086 colorant Substances 0.000 claims description 93
- 238000000034 method Methods 0.000 claims description 62
- 238000009826 distribution Methods 0.000 claims description 50
- 230000008569 process Effects 0.000 claims description 43
- 238000001514 detection method Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 10
- 230000002708 enhancing effect Effects 0.000 claims description 4
- 230000010354 integration Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 21
- 238000005070 sampling Methods 0.000 description 11
- 238000007792 addition Methods 0.000 description 10
- 238000009792 diffusion process Methods 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 240000006829 Ficus sundaica Species 0.000 description 1
- 241000519995 Stachys sylvatica Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Color Image Communication Systems (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Processing Of Color Television Signals (AREA)
- Facsimile Image Signal Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、画像処理装置、画像処理方法および画像処理プログラムを記録した媒体に関し、特に、画像データの種類に応じた所定の処理を実行する画像処理装置、画像処理方法および画像処理プログラムを記録した媒体に関する。
【0002】
【従来の技術】
従来より、写真など自然画の画像データやドロー系の非自然画の画像データについて、各種のエフェクト処理を行うソフトウェアが知られている。このようなソフトウェアでは、画像データをディスプレイなどに表示させ、作業者が所望の処理を施して見栄えの良い画像データを形成している。
【0003】
ここにおいて、各種のエフェクト処理のうちには、自然画をより美しく変換するものがある一方、ドロー系の画像のようにあえて手を加える必要はないようなものもある。
【0004】
【発明が解決しようとする課題】
上述した従来のソフトウェアで構成された画像処理装置においては、作業者がディスプレイ上で画像の種類を判別して各種のエフェクト処理を選択しなければならず、自動化できないという課題があった。
【0005】
本発明は、上記課題にかんがみてなされたもので、画像データの種別を自動的に判定して適当な処理を行うことが可能な画像処理装置、画像処理方法および画像処理プログラムを記録した媒体の提供を目的とする。
【0006】
【課題を解決するための手段】
上記目的を達成するため、複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理装置であって、上記画像データを入力し利用色数を検知する色数検知手段と、この検知された利用色数が多い場合には上記画像データの画素数に応じてエッジの強調度を決定するとともに当該決定したエッジの強調度に基づいてエッジ強調を実行し、利用色数が少ない場合には同エッジ強調を実行しないように処理を分岐する画像処理手段とを具備する構成としてもよい。
【0007】
画像の種類に応じて利用する色数が異なる。例えば、写真などの自然画であれば被撮影物が同一の青色であったとしても陰影によって複数の色となるなど、かなりの色を利用している。一方、ドロー系のデータであったり、ビジネスグラフであったりするときには、もともと作業者が色を指定して描かれているものであるため、自ずから色数には限度がある。従って、利用色数から画像種類が判定できる。一方、画像データの利用色数を検知する手法として、まず、マトリクス状の各画素における現実の色を判定してヒストグラム状に集計して検知するものが上げられる。
【0008】
しかしながら、必ずしも正確な値が必要であるわけではないし、いわゆるフルカラーといわれるものでは1670万色もの色数があり得るため、正確な色数を検出すること自体が手間になりかねない。
【0009】
このような前提のもと、上記のように構成においては、色数検知手段が上記画像データを入力して利用色数を検知すると、画像処理手段はこの検知された利用色数に応じて実行する画像処理の分岐を行なう。
写真を例に取れば撮影時の条件によってエッジのなまったぼけたような画像になってしまうことがあり、このために画像処理を行うことがあるが、上記構成によれば、色数検知手段が検知した画像データの色数が多い場合には自然画であると判断され、この場合には画像処理手段がエッジ強調させる画像処理を行なう。むろん、エッジ強調の程度などは適宜変更可能であり、入力した画像データの画素数に応じてエッジの強調度を決定するとともに、当該決定したエッジの強調度に基づいてエッジ強調処理を実行する。エッジ強調処理の具体的な手法については各種のものを採用可能であり、例えば、上記画像データを構成する各画素について周辺の画素分布に基づいて低周波成分を求めるとともに同低周波成分を減ずることにより結果として各画素のエッジ度を高めるように修正してもよい。
【0010】
また、各色ごとに輝度が対応しており、一つの輝度値に対して複数色が対応しているとはいうものの、輝度値が多くて色数が少ないというようなことはないし、たまたま輝度値が一致する色ばかりで構成されているということも現実には考えられない。従って、利用色数が多いか少ないかのおおざっぱな傾向であれば概ね輝度値で判定しても構わないといえる。むろん、このようにして輝度値を置き換えた場合には利用色数というよりも利用色数相当値というのが正確であるが、画像の種類を判定するという用途を前提として利用色数と呼ぶことにする。
【0011】
ここにおいて、請求項3にかかる発明は、画像データが輝度に対応した複数の成分値で表される場合において、上記色数検知手段は、同成分値の重みづけ積算により輝度を求める構成としてある。
【0012】
輝度を利用するメリットはあっても画像データのパラメータに輝度の成分がなければ色変換しなければならず、通常であれば、色変換には多大な処理が必要となる。しかるに、輝度を利用する時点で多少の誤差は許容されているのであるから、画像データが輝度に対応した複数の成分値で表される場合には同成分値の重みづけ積算により多大な処理を要することなく輝度が求められる。
【0013】
また、この他にも利用色数の検知を簡略化する手法はある。例えば、三次元の色空間において各軸方向にとびとびの格子状にし、あるグループごとに一色と考える。これにより、例えば各軸が256階調というような場合の膨大な色数で集計をとる必要がなくなる。
【0014】
また、画像データ全体での利用色数は必ずしもすべての画素について集計する必要はなく、例えば、請求項4にかかる発明は、上記色数検知手段は、画像データからサンプリングした画素について色数を検知する構成としてある。
【0015】
むろん、間引きによって誤差は生じるものの、上述したように必ずしも正確な利用色数が分かる必要はないので、画像データからサンプリングした画素について色数を検知するようにすれば対象となる画素数が減り、処理量も減る。
【0016】
自然画である場合に適当な画像処理としてコントラストの修正処理があり、請求項5にかかる発明は、上記画像処理手段は、上記画像データの利用色数が多い場合に輝度分布を拡大させる画像処理を行なうとともに利用色数が少ない場合に輝度分布を拡大させない構成としてある。
【0017】
例えば、写真においては撮影時の条件によってコントラストの幅の狭い画像になってしまうことがある。このために画像処理を行うことがあるが、請求項5にかかる発明によれば、色数検知手段が検知した画像データの色数が多い場合には自然画であると判断され、この場合には画像処理手段が輝度分布を拡大させる画像処理を行なう。むろん、拡大する分布の範囲は適宜変更可能であり、十分に輝度分布が広くコントラストの幅のある画像データであればあえて拡大処理する必要もない。また、ビジネスグラフのような非自然画である場合にはコントラストの幅が問われるようなこともなく、輝度分布を拡大させない。
【0018】
さらに、請求項6にかかる発明は、上記画像処理手段は、上記画像データの利用色数が多い場合に彩度を強調させる画像処理を行なうとともに利用色数が少ない場合に彩度を強調させない構成としてある。
【0019】
同様に、写真においては撮影時の光線の条件によって色がくもった感じになってしまうことがある。このために画像処理を行うことがあるが、請求項6にかかる発明によれば、色数検知手段が検知した画像データの色数が多い場合には自然画であると判断され、この場合には画像処理手段が彩度を強調させる画像処理を行なう。むろん、ビジネスグラフのような非自然画である場合にはあえて色相を変えて鮮やかにするような要求はなく、彩度強調を行わない。
【0020】
【0021】
【0022】
画像処理した画像データに対してはディスプレイで表示する以外にも各種の利用の途があり、例えば、印刷処理などもありうる。このような場合には元の画像データの色空間とは異なる印刷インクの色空間に変換する必要があり、このような色変換を伴うものに対応して、請求項1にかかる発明は、複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理装置であって、上記画像データを入力し利用色数を検知する色数検知手段と、変換元の表色空間での格子点に変換先の表色空間での階調表色データを対応させたテーブルを備えつつ変換元の階調表色データを当該テーブルの格子点に対応した階調表色データに階調変換してから同テーブルを参照して対応する階調表色データを読み出して色変換するプレ階調変換手段と、上記テーブルの格子点間で補間演算にて対応する階調表色データに色変換可能であるとともにこの色変換の情報を保存する高速読込可能な記憶エリアを有して同記憶エリアに記憶されていない場合に補間演算で色変換させるキャッシュ利用の補間色変換手段とを有し、上記検知された利用色数が多い場合には同プレ階調変換手段を使用して色変換し、同画像データの利用色数が少ない場合には同補間色変換手段を利用して色変換するように処理を分岐する画像処理手段とを具備する構成としてある。
【0023】
異なる表色空間の間で色変換を行なう場合、変換元の表色空間での格子点に変換先の表色空間での階調データを対応させたテーブルを用意しておき、同テーブルを参照して逐次所定の格子点の対応データを読み出せば変更可能となるが、変換元の階調データの全ての階調値に対応した格子点を備えるとテーブルが大きくなりすぎる。このため、プレ階調変換手段では変換元の階調データをテーブルの格子点に対応した階調データに階調変換することにより、テーブルを小さくしている。なお、補間演算でテーブルの格子点以外の階調データについても変更可能となるものの、色数が多い場合、誤差拡散などによって実行する階調変換は確実に演算量が少なくなるという特性がある。
【0024】
ただし、誤差拡散の処理は必ず前画素に対して行わなければならないという前提があり、非自然画の場合は色数が少ないので一度変換した結果を何度も利用可能である。従って、このような場合には補間演算を併用しつつ色変換結果を高速読込可能な記憶エリアに保存しておき、必要に応じてこの記憶エリアから読み出すという処理を繰り返すキャッシュ利用の補間色変換手段の方が早いといえる。
【0025】
上述したようにして、複数の対応関係を備えて画素に応じて対応関係を変える手法は、実体のある装置に限定される必要はなく、その方法としても機能することは容易に理解できる。このため、複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理方法であって、上記画像データを入力して利用色数を検知し、この検知された利用色数が多い場合には上記画像データの画素数に応じてエッジの強調度を決定するとともに当該決定したエッジの強調度に基づいてエッジ強調を実行し、利用色数が少ない場合には同エッジ強調を実行しないように処理を分岐する構成としてもよい。
【0026】
すなわち、必ずしも実体のある装置に限らず、その方法としても有効であることに相違はない。
【0027】
ところで、このような画像処理装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものである。従って、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。
【0028】
発明の思想の具現化例として画像処理装置のソフトウェアとなる場合には、かかるソフトウェアを記録した記録媒体上においても当然に存在し、利用されるといわざるをえない。その一例として、複数の画素からなる画像の画像データコンピュータにて入力し、所定の画像処理を行う画像処理プログラムを記録した媒体であって、上記画像データを入力し利用色数を検知するステップと、この検知された利用色数が多い場合には上記画像データの画素数に応じてエッジの強調度を決定するとともに当該決定したエッジの強調度に基づいてエッジ強調を実行し、利用色数が少ない場合には同エッジ強調を実行しないように処理を分岐するステップとを具備する構成としてもよい。
【0029】
むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。
【0030】
さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものはなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。さらには、カラーファクシミリ機、カラーコピー機、カラースキャナやディジタルカメラ、ディジタルビデオなどに内蔵する画像処理装置においても適用可能であることはいうまでもない。
また、請求項1の構成に対応する画像処理方法、画像処理プログラムを記録した媒体の発明もそれぞれ把握可能であることは言うまでもない。
【0031】
【発明の効果】
以上説明したように本発明は、利用色数という観点から画像データの種類を自動的に判定して画像処理を分岐させるすることが可能な画像処理装置を提供することができる。加えて、画像種類が自然画であると判定された場合には自動的にエッジ強調処理を行い、エッジになまりのない画像データとすることができる。
【0032】
また、請求項1にかかる発明によれば、利用色数が多い自然画の場合には誤差拡散などの手法を使用して最小の演算量で色変換することができ、また、利用色数が少ない場合にはキャッシュを利用して変換結果を繰り返し利用できるようにしたため、画像の種類ごとに応じた色変換手法で最小の処理量とすることができる。
また、請求項2にかかる発明によれば、利用色数を輝度に置き換えることにより、再現可能な色数が多大な場合でも容易に集計することができる。
さらに、請求項3にかかる発明によれば、輝度に対応した成分値を重みづけ積算することによりきわめて簡易に輝度を求めることができる。
【0033】
さらに、請求項4にかかる発明によれば、色数を検知する対象の画素を間引きして選択するため、処理量を低減させることができる。
【0034】
さらに、請求項5にかかる発明によれば、画像種類が自然画であると判定された場合には自動的にコントラストの拡大処理を行い、最適なコントラストの画像データとすることができる。
【0035】
さらに、請求項6にかかる発明によれば、画像種類が自然画であると判定された場合には自動的に彩度強調処理を行い、色鮮やかな画像データとすることができる。
【0036】
【0037】
【0038】
さらに、利用色数という観点から画像データの種類を自動的かつ容易に判定して画像処理を分岐させることができ、画像種類が自然画であると判定された場合には自動的にエッジ強調処理を行い、エッジになまりのない画像データとすることが可能な画像処理方法、画像処理プログラムを記録した媒体を提供することができる。
さらに、請求項7,8にかかる発明によれば、利用色数という観点から画像データの種類を自動的かつ容易に判定して画像処理を分岐させることができ、利用色数が多い自然画の場合には誤差拡散などの手法を使用して最小の演算量で色変換することができ、また、利用色数が少ない場合にはキャッシュを利用して変換結果を繰り返し利用できるようにしたため、画像の種類ごとに応じた色変換手法で最小の処理量とすることが可能な画像処理方法、画像処理プログラムを記録した媒体を提供することができる。
【0039】
【発明の実施の形態】
以下、図面にもとづいて本発明の実施形態を説明する。
【0040】
図1は、本発明の一実施形態にかかる画像処理装置の具体的ハードウェア構成例をブロック図により示している。
【0041】
同図において、各種の画像入力装置10としてスキャナ11やデジタルスチルカメラ12が備えられ、画像判定を含む画像処理の中心的な役割を果たす画像処理装置20としてコンピュータ本体21とハードディスク22が備えられ、画像処理された画像を表示する画像出力装置30としてプリンタ31やディスプレイ32を備えている。
【0042】
このコンピュータ本体21の内部で行なわれる処理を図2に示している。図に示すように、コンピュータ本体21内ではオペレーティングシステム21aが稼働しており、プリンタ31やディスプレイ32に対応したプリンタドライバ21bやビデオドライバ21cが組み込まれている。一方、アプリケーション21dはオペレーティングシステム21aにて処理の実行を制御され、必要に応じてプリンタドライバ21bやビデオドライバ21cと連携して所定の画像処理を実行する。なお、コンピュータ21はRAMなどを使用しながら、内部のROMやハードディスク22に保存されているそれぞれのプログラムを実行していく。また、このような画像処理などのプログラムは、CD−ROM、フロッピーディスク、MOなどの各種の記録媒体を介して供給される他、モデムなどによって公衆通信回線を介して外部のネットワークに接続し、ソフトウェアやデータをダウンロードして導入することも行われている。
【0043】
本実施形態においては、画像入力装置10としてのスキャナ11やデジタルスチルカメラ12が画像データとしてRGB(緑、青、赤)の階調データを出力するものとするとともに、画像出力装置30としてのプリンタ31は階調表色データとしてCMY(シアン、マゼンダ、イエロー)あるいはこれに黒を加えたCMYKの二値データを入力として必要とするし、ディスプレイ32はそのRGBの階調データを入力として必要する。従って、画像処理装置20としてのこのコンピュータ本体21の具体的役割は、RGBの階調データを入力して必要な強調処理を施したRGBの階調データを作成し、ディスプレイ32であればビデオドライバ21cを介して表示させるし、プリンタ31に対してはプリンタドライバ21bを介してCMYの二値データに変換して印刷させることである。
【0044】
本実施形態における画像処理では、コンピュータ本体21内に入力される画像データに対してアプリケーション21dの色数検知手段21d1が利用色数を検知すると画像判定手段21d2が画像の種類を判定し、画像処理手段21d3は画像の種類に応じてあらかじめ設定される適当な画像処理を自動的に行う。また、同画像処理された画像データはビデオドライバ21cを介してディスプレイ32に表示されるとともに、確認後はプリンタドライバ21bによって印刷データに変換されてプリンタ31にて印刷される。
【0045】
なお、本実施形態においては、画像の種類に応じて設定されている画像処理手段21d3として、図3に示すように、コントラスト拡大処理と、彩度強調処理と、エッジ強調処理とが用意されており、画像データを印刷データに変換するプリンタドライバ21bにおいては、図4に示すように、印刷データをラスタライズするラスタライザ21b1とプレ階調変換かキャッシュと補間演算との組み合わせによって色変換する色変換部21b2と色変換後の階調データを二値化する階調変換部21b3とが用意されている。
【0046】
本実施形態においては、画像の入出力装置の間にコンピュータシステムを組み込んで画像処理を行うようにしているが、必ずしもかかるコンピュータシステムを必要とする訳ではなく、画像データに対して利用色数を検知して画像の種類を判定するシステムであればよい。例えば、図5に示すように、コンピュータシステムを介することなく画像データを入力して印刷するプリンタ31bにおいては、スキャナ11bやモデム13b等を介して入力される画像データについて自動的に利用色数を検知して画像の種類を判定するように構成することも可能である。
【0047】
図6はアプリケーションにおける画像処理に該当するフローチャートを示しており、ステップS102とステップS104で輝度分布を集計して利用色数を検知している。
【0048】
まず、この輝度の分布検出処理について説明する。
【0049】
輝度をいかにして表すかについて説明する前に、分布対象となる画素について説明する。図6のステップS102で示すように対象となる画素を間引く間引き処理を実行する。図7に示すように、ビットマップの画像であれば、縦方向に所定ドットと横方向に所定ドットからなる二次元のドットマトリクスとして成り立っており、正確な輝度の分布を求めるのであれば全画素について輝度を調べる必要がある。しかしながら、この分布検出処理は間接的に輝度から利用色を求めることを目的としており、必ずしも正確である必要はない。従って、ある誤差の範囲内となる程度に間引きを行うことが可能である。統計的誤差によれば、サンプル数Nに対する誤差は概ね1/(N**(1/2))と表せる。ただし、**は累乗を表している。従って、1%程度の誤差で処理を行うためにはN=10000となる。
【0050】
ここにおいて、図7に示すビットマップ画面は(width)×(height)の画素数となり、サンプリング周期ratioは、ratio=min(width,height)/A+1 …(1)
とする。ここにおいて、min(width,height)はwidthとheightのいずれか小さい方であり、Aは定数とする。また、ここでいうサンプリング周期ratioは何画素ごとにサンプリングするかを表しており、図8の○印の画素はサンプリング周期ratio=2の場合を示している。すなわち、縦方向及び横方向に二画素ごとに一画素のサンプリングであり、一画素おきにサンプリングしている。A=200としたときの1ライン中のサンプリング画素数は図9に示すようになる。
【0051】
同図から明らかなように、サンプリングしないことになるサンプリング周期ratio=1の場合を除いて、200画素以上の幅があるときには最低でもサンプル数は100画素以上となることが分かる。従って、縦方向と横方向について200画素以上の場合には(100画素)×(100画素)=(10000画素)が確保され、誤差を1%以下にできる。
【0052】
ここにおいてmin(width,height)を基準としているのは次のような理由による。例えば、図10(a)に示すビットマップ画像のように、width>>heightであるとすると、長い方のwidthでサンプリング周期ratioを決めてしまった場合には、同図(b)に示すように、縦方向には上端と下端の2ラインしか画素を抽出されないといったことが起こりかねない。しかしながら、min(width,height)として、小さい方に基づいてサンプリング周期ratioを決めるようにすれば同図(c)に示すように少ない方の縦方向においても中間部を含むような間引きを行うことができるようになる。
【0053】
なお、この例では、縦方向と横方向の画素について正確なサンプリング周期で間引きを行うようにしている。これは、逐次入力される画素について間引きしながら処理する場合に好適である。しかし、全画素が入力されている場合には縦方向や横方向についてランダムに座標を指定して画素を選択するようにしても良い。このようにすれば、10000画素というような必要最低限の画素数が決まっている場合に10000画素となるまでランダムに抽出する処理を繰り返し、10000画素となった時点で抽出を止めればよくなる。
【0054】
このように選択した画素についての画素データがその成分要素として輝度を持っていればその輝度値を用いて分布を求めることが可能である。一方、輝度値が直接の成分値となっていない画像データの場合でも、間接的には輝度を表す成分値を備えている。従って、輝度値が直接の成分値となっていない表色空間から輝度値が直接の成分値となっている表色空間への変換を行えば輝度値を得ることができる。
【0055】
このような異なる表色空間の間での色変換は変換式によって一義的に定まるものではなく、それぞれの成分値を座標とする色空間について相互に対応関係を求めておき、この対応関係を記憶した色変換テーブルを参照して逐次変換する必要がある。テーブルとする関係上、成分値は階調値として表され、三次元の座標軸を備えている256階調の場合には、約1670万個(256×256×256)の要素の色変換テーブルを持たなければならない。効率的な記憶資源の利用を考えた結果、すべての座標値についての対応関係を用意しておくのではなく、通常は適当なとびとびの格子点について対応関係を用意しておき、補間演算を併用するようにしている。この補間演算はいくつかの乗算や加算を経て可能となるものであるため、演算処理量は膨大となってくる。
【0056】
すなわち、フルサイズの色変換テーブルを使用するのであれば処理量としては少なくなるもののテーブルサイズが非現実的となり、テーブルサイズを現実的なサイズにすれば演算処理量が非現実的となることが多い。
【0057】
このような状況に鑑み、本実施形態においては、テレビジョンなどの場合に利用されているように、RGBの三原色から輝度を求める次式の変換式を採用している。すなわち、P点での輝度yp についてはRGBの成分値(Rp,Gp,Bp )から、
yp=0.30Rp+0.59Gp+0.11Bp …(2)
とする。このようにすれば、三回の乗算と二回の加算だけで輝度値を求めることができるようになる。
【0058】
本実施形態においては、RGBの表色空間を対象としている結果、このような変換式を採用しているが、その背景には各成分値が色の明るさを示しているので、それぞれの成分値を単独で見た場合に輝度に線形に対応しているという性質がある。従って、よりおおざっぱに言えばそれぞれの加算割合を考慮することなく単に
yp=(Rp+Gp+Bp)/3 …(3)
というように簡略化することも不可能ではない。
【0059】
このようにして間引き処理で輝度を集計すると、その分布は図11の実線に示すようになる。従って、ステップS104にて画素数が「0」でない輝度値の数をカウントすれば利用色数を検知できる。なお、ステップS102においては輝度分布とともに彩度分布の集計も行っているがこれについては後述する。
【0060】
このようにして利用色数を検知したら、ステップS106ではこの利用色数と所定のしきい値とを比較し、利用色数の方が多ければこの画像データは自然画であると判定する。しきい値としては、例えば「50」色を設定しておけばよい。
自然画以外の画像データとしてビジネスグラフであるとかドロー系画像をスキャナ11で読み込むような例が挙げられるし、あるいはコンピュータグラフィック画像がスキャナ11から読み込まれたり、ネットワークからモデム13bを介して入力されるような場合がある。
【0061】
自然画であるならば、ステップS108では自然画としてのフラグをセットする。フラグをセットするのはこのアプリケーション21dの画像処理以外でプリンタドライバ21bに対しても判定結果を伝えるためである。本実施形態においては、とりあえず一つだけのしきい値を用意しておき、自然画であるか否かだけを判断しているが、利用色数の範囲でより細かな判定を行うようにしても良い。
例えば、コンピュータグラフィックスである場合でもグラデーションなどによってある程度の色数が多くなることがあるし、本来の色数はさほど多くないにもかかわらず、スキャナ11で読み込む際にエッジ部がなまって色数が多くなることもある。従って、このようなものを自然画と非自然画との間に分類し、後述するように自然画用の画像処理は行わなくてもエッジ強調処理だけは行なうといった設定を行っても良い。
【0062】
自然画については、ステップS110にてコントラストを拡大するとともに、ステップS112にて彩度を強調し、ステップS114ではエッジ強調を実行する。
【0063】
本実施形態においては、輝度分布が図11の実線に示されるように本来の再現可能な輝度分布の範囲内で一部に集中している場合にこれを再現可能な範囲内で十分に拡大する処理を意味している。
【0064】
再現可能な輝度の範囲を「0」〜「255」としたときに、輝度の変換では、変換前の輝度yと輝度の分布範囲の最大値ymaxと最小値yminから変換先の輝度Yを次式に基づいて求める。
【0065】
Y=ay+b …(4)
ただし
a=255/(ymax−ymin) …(5)
b=−a・yminあるいは255−a・ymax …(6)
また、上記変換式にてY<0ならばY=0とし、Y>255ならばY=255とする。ここにおける、aは傾きであり、bはオフセットといえる。この変換式によれば、あるせまい幅を持った輝度分布を再現可能な範囲まで広げることができる。
【0066】
かかる輝度分布の拡大を行う場合、図12に示すフローチャートを実行し、そのステップS202で輝度分布の両端を求める。自然画における輝度分布は概ね山形に表れる。むろん、その位置、形状についてはさまざまである。輝度分布の幅はこの両端をどこに決めるかによって決定されるが、単に裾野が延びて分布数が「0」となる点を両端とすることはできず、分布範囲において最も輝度の大きい側と小さい側からある分布割合だけ内側に寄った部分を分布の両端とする。本実施形態においては、この分布割合を0.5%に設定している。このように、ある分布割合だけ上端と下端をカットすることにより、ノイズなどに起因して生じている白点や黒点を無視することもできる。
【0067】
実際の処理では処理対象となる画素数(間引き処理において選択した画素の総数)に対する0.5%を演算し、再現可能な輝度分布における上端の輝度値及び下端の輝度値から順番に内側に向かいながらそれぞれの分布数を累積し、0.5%の値となった輝度値を求める。この上端側がymaxであり、下端側がyminとなる。
【0068】
本実施形態においては、輝度分布に対してこのような処理を経て上端と下端とを求めているが、統計的処理のもとで両端を求めることも可能である。例えば、輝度値の平均値に対して何%以下となったところを端部とするといった手法を採用することも可能である。
【0069】
ところで、輝度yの取りうる範囲は「0」〜「255」でしかあり得ないため、予め輝度yが取りうる全ての値に対応して変換後の輝度Yを求めておくのが効率的であり、ステップS204にてこの対応関係を演算してテーブルとして記憶しておく。
【0070】
この後、各画素についてステップS204にて演算したテーブルを参照して輝度の拡大を図る。ところで、ここまでは輝度を変換するための対応関係を求めてきており、例えば、RGB座標軸における成分値(Rp,Gp,Bp )についての変換関係ではなかった。しかしながら、(4)式の変換式は、このRGBの成分値(Rp,Gp,Bp )との対応関係においても当てはめることができる。すなわち、変換前の成分値(R,G,B)に対して変換後の成分値(R’,G’,B’)は、
R’=a・R+b …(7)
G’=a・G+b …(8)
B’=a・B+b …(9)
として求めることができる。これは(4)式と(3)式とがともに線形の対応関係を示していることから明らかである。また、輝度y,Yが階調「0」〜階調「255」であるのに対応してRGBの各成分値(R,G,B),(R’,G’,B’)も同じ範囲となっており、上述した輝度y,Yの変換テーブルをそのまま利用すればよいといえる。
【0071】
従って、ステップS206では全画素の画像データ(R,G,B)について(7)〜(9)式に対応する変換テーブルを参照し、画像データ(R’,G’,B’)に変換する。そして、ステップS208では変換画素を図13に示すように順次移動させ、ステップS210で最終画素と判断されるまで繰り返すことになる。
【0072】
図6に示すフローチャートに戻ると、コントラスト拡大の次は、ステップS112にて彩度強調を行う。この彩度強調の処理については図14に示している。
【0073】
この彩度強調処理においても、予め画像データにおける彩度分布を求め、同分布から彩度強調係数Sを求めるようにしている。この場合、輝度分布の場合と同様、すべての画素について彩度を集計する必要もなく、ステップS102において間引いた画素について彩度を求め、集計している。画像データがその成分要素として彩度を持っていればその彩度の値を用いて分布を求めることが可能であるし、彩度が直接の成分要素となっていない画像データの場合でも、間接的には彩度を表す成分値を備えている。従って、彩度が直接の成分要素となっていない表色空間から彩度値が直接の成分値となっている表色空間への変換を行えば彩度値を得ることができる。例えば、標準表色系としてのLuv空間においては、L軸が輝度(明度)を表し、U軸及びV軸で色相を表している。ここにおいて、U軸及びV軸においては両軸の交点からの距離が彩度を表すため、実質的に(U+V)**(1/2)が彩度となる。しかしながら、かかる変換に要する演算処理量は膨大となってくる。
【0074】
従って、本実施形態においては、画像データとして標準的なRGBの階調データを直に利用して彩度の代替値Xを次のようにして求めている。
【0075】
X=|G+B−2×R| …(10)
本来的には彩度は、R=G=Bの場合に「0」となり、RGBの単色あるいはいずれか二色の所定割合による混合時において最大値となる。この性質から直に彩度を適切に表すのは可能であるものの、簡易な(10)式によっても赤の単色および緑と青の混合色であるシアンであれば最大値の彩度となり、各成分が均一の場合に「0」となる。また、緑や青の単色についても最大値の半分程度には達している。
【0076】
なお、RGB表色空間のように各成分がそれぞれ独立して各色の成分を表すといったいわば概略対等な色相成分の成分値で示される状況においては、
X’=|R+B−2×G| …(11)
X”=|G+R−2×B| …(12)
という式にも代替可能であるが、結果としては(10)式に従うものが最も良好であった。
【0077】
ステップS102にて間引いた画素についてRGBの画像データから(10)式に基づいて彩度の分布をとると、彩度が最低値「0」〜最大値「511」の範囲で分布し、概略的には図15に示すような分布となる。
【0078】
集計された彩度分布に基づき、ステップS302にてこの画像についての彩度強調指数というものを決定する。集計された彩度分布が図15に示すようになったものとすると、本実施形態においては、有効な画素数の範囲で分布数として上位の「16%」が占める範囲を求める。そして、この範囲内での最低の彩度「A」がこの画像の彩度を表すものとして次式に基づいて彩度強調指数Sを決定する。
【0079】
すなわち、
A<92なら
S=−A×(10/92)+50 …(13)
92≦A<184なら
S=−A×(10/46)+60 …(14)
184≦A<230なら
S=−A×(10/23)+100 …(15)
230≦Aなら
S=0 …(16)
とする。図16は、この彩度「A」と彩度強調指数Sと関係を示している。図に示すように、彩度強調指数Sは最大値「50」〜最小値「0」の範囲で彩度「A」が小さいときに大きく、同彩度「A」が大きいときに小さくなるように徐々に変化していくことになる。
【0080】
この実施形態においては、集計された彩度分布の範囲で上位のある割合が占める彩度を利用しているが、これに限らず、例えば、平均値を出したり、メジアンを求めて彩度強調指数Sを演算する根拠としても良い。ただし、彩度分布での上位のある割合をとった場合には突発的な誤差の影響が弱まるので、全体として良好な結果を得られる。
【0081】
彩度強調指数Sが求められたら各画素の画像データについて彩度強調の処理を行う。この彩度強調指数Sに基づいて彩度を強調するにあたり、上述したように画像データが彩度のパラメータを備えているものであれば同パラメータを変換すればよいものの、今回はRGBの表色空間を採用している。従って、以下にはRGBの階調データをそのまま利用して彩度強調する方法について説明する。
【0082】
RGB表色空間のように各成分が概略対等な関係にある色相成分の成分値であるときには、R=G=Bであればグレイであって無彩度となる。従って、RGBの各成分における最小値となる成分については各画素の色相に影響を与えることなく単に彩度を低下させているにすぎないと考えれば、各成分における最小値をすべての成分値から減算し、その差分値を拡大することによって彩度を強調できるといえる。
【0083】
まず、上述した彩度強調指数Sから演算に有利な彩度強調パラメータSratio を、
Sratio=(S+100)/100 …(17)
として求める。この場合、彩度強調指数S=0のときに彩度強調パラメータSratio =1となって彩度強調されない。次に、RGB階調データの各成分(R,G,B)における青(B)の成分値が最小値であったとすると、この彩度強調パラメータSratio を使用して次のように変換する。
【0084】
R’=B+(R−B)×Sratio …(18)
G’=B+(G−B)×Sratio …(19)
B’=B …(20)
このようにすれば、少なくともRGB表色空間とLuv空間との間での色変換が不要となるが、この場合には彩度を強調すると輝度も向上して全体的に明るくなるという傾向がある。従って、各成分値から輝度の相当値を減算した差分値を対象として変換を行うことにする。
【0085】
輝度については、上述したようなRGBから直に求める変換式を利用する。
【0086】
一方、彩度強調は、
R’=R+△R …(21)
G’=G+△G …(22)
B’=B+△B …(23)
とする。この加減値△R,△G,△Bは輝度との差分値に基づいて次式のように求める。すなわち、
△R=(R−Y)×Sratio …(24)
△G=(G−Y)×Sratio …(25)
△B=(B−Y)×Sratio …(26)
となり、この結果、
R’=R+(R−Y)×Sratio …(27)
G’=G+(G−Y)×Sratio …(28)
B’=B+(B−Y)×Sratio …(29)
として変換可能となる。なお、輝度の保存は次式から明らかである。
【0087】
Y’=Y+△Y …(30)
△Y=0.30△R+0.59△G+0.11△B
=Sratio{(0.30R+0.59G+0.11B)−Y}
=0 …(31)
また、入力がグレー(R=G=B)のときには、輝度Y=R=G=Bとなるので、加減値△R=△G=△B=0となり、無彩色に色が付くこともない。(27)式〜(29)式を利用すれば輝度が保存され、彩度を強調しても全体的に明るくなることはない。
【0088】
ステップS304にて画像データを変換したら、ステップS306では図13に示すように変換画素を移動させ、ステップS308にて最終画素と判断されるまで繰り返す。
【0089】
彩度強調を終えたら、図6に示すフローチャートのステップS114にてエッジ強調処理を実行する。このエッジ強調の処理については図17に示している。
【0090】
エッジ強調処理では、ステップS402にて入力画像における横方向の画素数(width)と縦方向の画素数(height)とを乗算して画素数を得、ステップS404にて同検知された画素数に応じたエッジ強調度を決定する。エッジ強調度はエッジ強調の手法に大きく依存するため、まず、本実施形態におけるエッジ強調の手法について説明する。本実施形態においては、図18に示すアンシャープマスク40を使用する。このアンシャープマスク40は、中央の「100」の値をマトリクス状の画像データにおける注目画素Pijの重み付けとし、その周縁画素に対して同マスクの升目における数値に対応した重み付けとして積算するのに利用され、アンシャープマスク40を利用するのであれば、(32)式に基づいて積算する。
【0091】
【数1】
【0092】
(32)式において、「632」とは重み付け係数の合計値であり、Mijはアンシャープマスクの升目に記載されている重み係数であり、Pijは各画素の画像データである。なお、ijについては縦列と横列の座標値を示している。
【0093】
エッジ強調後の画像データをQijとすると、エッジ強調演算は(33)式に基づいて演算される。
【0094】
Qij=Pij+C×{Pij−P’ij} …(33)
(33)式の意味するところは次のようになる。P’ijは注目画素に対して周縁画素の重み付けを低くして加算したものであるから、いわゆる「なまった(アンシャープ)」画像データとしていることになる。このようにしてなまらせたものはいわゆるローパスフィルタをかけたものと同様の意味あいを持つ。従って、「Pij−P’ij」とは本来の全成分から低周波成分を引いたことになってハイパスフィルタをかけたものと同様の意味あいを持つ。そして、ハイパスフィルタを通過したこの高周波成分に対してエッジ強調係数Cを乗算して「Pij」に加えれば同エッジ強調係数に比例して高周波成分を増したことになり、エッジが強調される。
【0095】
この意味からも、エッジ強調度はエッジ強調係数Cによって変更可能となる。
従って、画素数が大きければエッジ強調係数Cを大きくするし、画素数が小さければエッジ強調係数Cを小さくする。画像の幅と高さがwidth×heightであるときに、Eratioを(34)で表すとする。
【0096】
Eratio=min(width,height)/640+1 …(34)
そして、得られたEratioについて、次のようにエッジ強調係数Cを決定した。
【0097】
Eratio<1 なら C=1
1≦Eratio<3 なら C=2
3≦Eratio なら C=3
すなわち、短い方の画素が640画素未満であればエッジ強調係数Cは「1」、640画素以上で1920画素未満であればエッジ強調係数Cは「2」、1920画素以上であればエッジ強調係数Cを「3」としている。本実施形態においては、このようにエッジ強調係数Cを設定しているが、ドット密度によっては画像の大きさが変化するのでこのエッジ強調係数を比例的に変更するようにしても良い。
【0098】
なお、エッジ強調度は、アンシャープマスクの大きさによっても変化するため、画素数が大きければ大きなサイズのアンシャープマスクを利用すればよいし、画素数が小さければ小さなサイズのアンシャープマスクを利用すればよい。むろん、エッジ強調係数Cとアンシャープマスク40の両方を変更するようにしてもよいし、いずれか一方だけでエッジの強調度を変更しても良いことはいうまでもない。また、アンシャープマスク40は図からも明らかなように、中央部にて最も重み付けが大きく、周縁に向かうにつれて徐々に重み付けの数値が小さくなっている。この変化具合は必ずしも固定的なものではなく、適宜変更可能である。
【0099】
ところで、図18に示す「7×7」のアンシャープマスク40において最外周の升目の重み付けは「0」あるいは「1」であり、「0」については重み付けの乗算が無意味であるし、「1」の重み付けは升目の全合計値の「632」と比較すれば非常にわずかな重みしか持たない。従って、本実施形態においては、「7×7」のアンシャープマスク40の代わりに、図19に示す「5×5」のアンシャープマスク41を使用している。同図に示すアンシャープマスク41は「7×7」のアンシャープマスク40の最外周を省略したものであり、内側の「5×5」のマスク部分で重み付けは一致している。これにより、具体的な処理量は約半分になる。
【0100】
さらに、本実施形態においては、次のようにして演算量を低減させている。RGBの階調データを対象とする場合、それぞれの成分値は各色成分の輝度(明度)に対応している。従って、(33)式の演算も本来はRGBの各階調データに対して個別に行わなければならない。しかるに、アンシャープマスク40の升目の数だけの乗算と加算とを繰り返すとなるとこのような各成分ごとの個別の演算では演算量が多いと言わざるを得ない。
【0101】
一方、かかるエッジ強調は色相を保持して輝度を変えることによって実施可能なものともいえる。従って、RGBの各成分値に対して演算するのではなく、輝度を求めて演算すれば処理量が低減するといえる。上述した輝度Yの変換式を利用すれば、(32)式と(33)式は(35)式と(36)式のように書き換えられる。
【0102】
【数2】
【0103】
Y”ij=Yij+C×{Yij−Y’ij} …(36)
さらに、Yij−Y’ijを(37)式のように置き換えれば、
delta={Yij−Y’ij}×C …(37)
変換後のR’G’B’は(38)式のように演算可能となる。
【0104】
R’=R+delta
G’=G+delta
B’=B+delta …(38)
このようにすれば乗算と加算は1/3となるので、全体の処理時間としても50〜70%程度の減少が可能となる。また、変換結果は色ノイズの強調がなくなり、画質が向上した。
【0105】
エッジ強調の処理は、マトリクス状の画像データにおける各画素についてアンシャープマスク40を利用してエッジ強調後の画像データ(R’G’B’)を算出していく処理に相当する。ステップS406〜ステップS412では各画素についてエッジ強調処理を繰り返すループ処理を表しており、ループ処理内のステップS410で図13に示すようにして水平方向及び垂直方向へ順次注目画素を移動させ、ステップS412で最終画素と判断されるまで繰り返すようになっている。
【0106】
ただし、(32)式の演算は、注目画素の周囲の画素に対して、採用するアンシャープマスク40の升目数だけ乗算演算と加算演算が必要になり、処理量としては多大になる。一方、エッジ強調が必要になる状況を考えるといわゆる画像のエッジ部分であるから、隣接する画素同士の間で画像データが大きく異なる場所に限られる。このような状況から隣接する画素との間で画像データの差が大きな場合に演算すれば足りるといえる。
【0107】
これを具体化するため、ステップS406では隣接する画素同士の間で画像データの比較を行い、差が大きい場合にのみステップS408におけるアンシャープマスクの演算を行うようにしている。このようにすれば、殆どのエッジ部分でない画像データ部分でアンシャープマスクの演算を行う必要がなくなり、処理が激減する。
【0108】
また、図20に示すように、本来であれば注目画素に対応してその周囲には八つの画素があるので、八回の比較が必要となる。しかし、例えば図の中央の注目画素と「5」の升目の画素とを比較する場合、実は、その前に注目画素が同「5」の升目であったときに「1」の升目の画素との比較で一度行われていることが分かる。従って、少なくとも隣接する画素同士の比較が一度だけ行われるようにしておくだけでも十分とすれば、互いに反対方向となる組み合わせである「1」と「5」、「2」と「6」、「3」と「7」、「4」と「8」についてはどちらか一方だけでも十分であり、上記組み合わせの四つの方向について比較を行うこととしている。
【0109】
以上のようにして利用色数が多い自然画については、自動的に最適な範囲でコントラストが拡大されるとともに、彩度強調やエッジ強調も当該画像に最適な強調度で自動的に行われる。むろん、自然画でない場合にはこれらは不要なものとしてスキップされる。
【0110】
これまでは、アプリケーション21dにおける画像処理において利用色数から画像データの種類を判定して最適な画像処理を行ってきたが、プリント処理においても判定された画像の種類に応じて同様に最適な処理が選択される。
【0111】
図21にはプリント処理に対応するフローチャートを示している。ステップS502にてラスタデータを生成した後、ステップS504にて上述したフラグに基づいて画像データの種類を判別し、二種類用意されている色変換処理のステップS506あるいはステップS508のいずれかを実行する。その後、ステップS510にて二値化し、ステップS512にて印刷データを出力する。
【0112】
ステップS506で行われるのは補間演算処理とキャッシュ処理とを組み合わせた色変換処理であり、その手順を図22以下に示している。同図に示す補間演算では実質的に演算処理する八点補間演算とともに実質的な演算処理をすることなく色変換するキャッシングを合わせて行っている。
【0113】
八点補間演算については、図23に演算の原理を示している。変換元の表色空間でRGB階調データを成分値とする座標Pを取り囲む八点の格子点からなる立法体を想定したとき、立方体のk番目の頂点での変換値をDkとするとともに立方体の体積をVとすると、立方体の内点Pでの変換値Pxは当該P点で分割される図示のような八つの小直方体の体積Vkの比率による加重から次式で補間できる。
【0114】
【数3】
【0115】
従って、当該座標を取り囲む八つの格子点を特定し、各格子点でのCMYの階調データのそれぞれについて演算を実行することになる。
【0116】
ところで、図22に示すフローチャートを参照すると、当該補間演算の処理ルーチンでは、必ずしもこの八点補間演算を実行するのではなく、図24に示すようなキャッシュテーブルを参照して八点補間演算を省略するためのキャッシングを行っている。このキャッシュテーブルは変換元のRGBの階調データを成分値として八点補間演算を実行したときに得られたCMYの階調データを保存しておくための一定容量のテーブルである。最初、このテーブルは空白であるもののステップS606にて八点補間演算を実行した直後に求められたCMYの階調データをステップS608にて追加更新するようにしており、図21に示すステップS506にて「キャッシュ+補間演算」の処理ルーチンが実行されたときには、最初のステップS602にて変換元のRGBの階調データを成分値として当該キャッシュテーブル内を検索し、キャッシュヒットした(検索で発見できた)場合には、ステップS612にて当該記憶されているCMYの階調データを参照するようにしている。
【0117】
色変換処理ではラスタライズされたドットマトリクスの各画素についてRGBの階調データをCMYの階調データに変換していくため、ステップS610にて最終の画素となるまで繰り返している。
【0118】
このような補間演算は演算量が多いものの、自然画でない場合は利用色数が少ないので、一回の演算結果は何度も利用可能である。従って、画像データの種類が自然画でないと判定された場合においては、この「キャッシュ+補間演算」の処理は極めて有効といえる。
【0119】
次に、もう一方の色変換処理であるステップS508のプレ階調変換について説明する。
【0120】
図25のフローチャートと図26の画素の誤差分配を示す図はプレ階調変換の概略を説明するためのものである。上述した八点補間の基本式は、八回の乗算と七回の加算が必要となるため、ハードウェア化する場合でもソフトウェアで実行する場合でも資源および時間の負担が大きい。このため、より簡易に色変換を行うべく、本出願人による特開平7−30772号公報では補間演算に代えて階調変換する技術を開示している。
【0121】
同公報に開示したプレ階調変換は、いわゆる誤差拡散などの手法を用いることにより、画素の階調データを格子座標に一致するように階調変換するものであり、対象となる画素について直近の格子座標を探し(S702)、格子座標との誤差(dg)を算出し(S704)、その誤差(dg)を近隣画素へ分配する(S706)だけの処理となっている。従って、乗算と加算を繰り返す場合に比べて演算の負担を極めて簡素化できる。補間演算することなく精度を保持できる理由については同公報に詳しく述べられているのでここでは詳述しない。なお、色変換後にも二値化のための階調変換を行うことになるため、先に行われる階調変換をプレ階調変換と呼ぶ。
【0122】
このプレ階調変換でもラスタライズされたドットマトリクスの各画素について階調変換していくため、ステップS708にて最終の画素となるまで繰り返す。
そして、続くステップS710で階調変換したRGBの階調データで色変換テーブルを参照するが、このときは必ず格子点となっているため補間演算をする必要が無く、読み出しの処理は極めて容易である。
【0123】
自然画のように利用する色数が極めて多い場合には上述した「キャッシュ+補間演算」の処理においてもヒットする確率が低くなってくるため、補間演算の回数が多くなる。しかしながら、このようなプレ階調変換では全画素について誤差拡散などの処理を実行しなければならないものの、一回の処理は単純であるため、全体的には処理量が少ない。従って、利用色数が多く、自然画であると判定された画像データについてはこのようなプレ階調変換による色変換処理を選択することによって全体の処理量を低減させることが可能となる。
【0124】
本実施形態においては、利用色数の少ない非自然画については「キャッシュ+補間演算」の色変換処理を採用し、利用色数が多い自然画についてはプレ階調変換による色変換処理を採用しているが、かかる組み合わせに限られず、他の組み合わせを採用することも可能である。すなわち、画像の種類に応じて最も適切な色変換処理を自由に設定して自動的にこれを利用するようにしても良い。
【0125】
このように、画像データに対して間引き処理によって選択した各画素について輝度の分布を集計することにより(ステップS102)、利用している色数をカウントすることが可能となり(ステップS104)、その結果、利用している色数が多ければ画像データの種類として自然画であると判断することができ、また、そのような判定結果に基づいて自然画に適用して好適なコントラスト拡大処理(ステップS110)や彩度強調処理(ステップS112)やエッジ強調処理(S114)を自動的に選択可能となるし、さらに、プリント処理においても自然画であればプレ階調変換による色変換を行うし(ステップS508)、自然画でない場合には「キャッシュ+補間演算」の色変換を行い(ステップS506)、自動的に処理量の少ない色変換処理を選択することが可能となる。
【図面の簡単な説明】
【図1】 本発明の一実施形態にかかる画像処理装置の具体的ハードウェア構成例のブロック図である。
【図2】 コンピュータの内部で行なわれる処理を示すブロック図である。
【図3】 画像処理手段のより詳細な構成を示す概略ブロック図である。
【図4】 プリンタドライバのより詳細な構成を示す概略ブロック図である。
【図5】 本発明の画像処理装置の他の適用例を示す概略ブロック図である。
【図6】 本発明におけるアプリケーションの画像処理を示すフローチャートである。
【図7】 変換元の画像を示す図である。
【図8】 サンプリング周期を示す図である。
【図9】 サンプリング画素数を示す図である。
【図10】 変換元の画像とサンプリングされる画素の関係を示す図である。
【図11】 集計された輝度分布と拡大される輝度分布を示す図である。
【図12】 画像処理として用意されたコントラスト拡大処理を示すフローチャートである。
【図13】 注目画素の移動方向を示す図である。
【図14】 画像処理として用意された彩度強調処理を示すフローチャートである。
【図15】 彩度分布の集計状態の概略図である。
【図16】 彩度Aと彩度強調指数Sとの関係を示す図である。
【図17】 画像処理として用意されたエッジ強調処理を示すフローチャートである。
【図18】 アンシャープマスクを示す図である。
【図19】 アンシャープマスクの改良版を示す図である。
【図20】 画像データにおいて隣接画素との比較方向を示す図である。
【図21】 プリンタドライバの印刷処理の手順を示すフローチャートである。
【図22】 キャッシュ+補間演算による色変換処理のフローチャートである。
【図23】 八点補間演算の概念を示す図である。
【図24】 キャッシュテーブルの内容を示す図である。
【図25】 プレ階調変換処理のフローチャートである。
【図26】 各画素の誤差拡散の様子を示す図である。
【符号の説明】
10…画像入力装置
20…画像処理装置
21a…オペレーティングシステム
21b…プリンタドライバ
21b1…ラスタライザ
21b2…色変換部
21b3…階調変換部
21c…ビデオドライバ
21d…アプリケーション
21d1…色数検知手段
21d2…画像判定手段
21d3…画像処理手段
30…画像出力装置
Claims (8)
- 複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理装置であって、
上記画像データを入力し利用色数を検知する色数検知手段と、
変換元の表色空間での格子点に変換先の表色空間での階調表色データを対応させたテーブルを備えつつ変換元の階調表色データを当該テーブルの格子点に対応した階調表色データに階調変換してから同テーブルを参照して対応する階調表色データを読み出して色変換するプレ階調変換手段と、上記テーブルの格子点間で補間演算にて対応する階調表色データに色変換可能であるとともにこの色変換の情報を保存する高速読込可能な記憶エリアを有して同記憶エリアに記憶されていない場合に補間演算で色変換させるキャッシュ利用の補間色変換手段とを有し、上記検知された利用色数が多い場合には同プレ階調変換手段を使用して色変換し、同画像データの利用色数が少ない場合には同補間色変換手段を利用して色変換するように処理を分岐する画像処理手段とを具備することを特徴とする画像処理装置。 - 上記請求項1に記載の画像処理装置において、上記色数検知手段は、各画素の輝度に相当する情報を色と見なして利用色数を検知することを特徴とする画像処理装置。
- 上記請求項2に記載の画像処理装置において、画像データが輝度に対応した複数の成分値で表される場合において、上記色数検知手段は、同成分値の重みづけ積算により輝度を求めることを特徴とする画像処理装置。
- 上記請求項1〜請求項3のいずれかに記載の画像処理装置において、上記色数検知手段は、画像データからサンプリングした画素について色数を検知することを特徴とする画像処理装置。
- 上記請求項1〜請求項4のいずれかに記載の画像処理装置において、上記画像処理手段は、上記画像データの利用色数が多い場合に輝度分布を拡大させる画像処理を行なうとともに利用色数が少ない場合に輝度分布を拡大させないようにすることを特徴とする画像処理装置。
- 上記請求項1〜請求項5のいずれかに記載の画像処理装置において、上記画像処理手段は、上記画像データの利用色数が多い場合に彩度を強調させる画像処理を行なうとともに利用色数が少ない場合に彩度を強調させないようにすることを特徴とする画像処理装置。
- 複数の画素からなる画像の画像データに対して所定の画像処理を行う画像処理方法であって、上記画像データを入力し利用色数を検知し、上記検知された利用色数が多い場合には、変換元の表色空間での格子点に変換先の表色空間での階調表色データを対応させたテーブルを備えつつ変換元の階調表色データを当該テーブルの格子点に対応した階調表色データに階調変換してから同テーブルを参照して対応する階調表色データを読み出して色変換するプレ階調変換手段を使用して色変換し、利用色数が少ない場合には、上記テーブルの格子点間で補間演算にて対応する階調表色データに色変換可能であるとともにこの色変換の情報を保存する高速読込可能な記憶エリアを有して同記憶エリアに記憶されていない場合に補間演算で色変換させるキャッシュ利用の補間色変換手段を利用して色変換するように処理を分岐することを特徴とする画像処理方法。
- 複数の画素からなる画像の画像データをコンピュータにて入力し、所定の画像処理を行う画像処理プログラムを記録した媒体であって、
上記画像データを入力し利用色数を検知するステップと、
変換元の表色空間での格子点に変換先の表色空間での階調表色データを対応させたテーブルを備えつつ変換元の階調表色データを当該テーブルの格子点に対応した階調表色データに階調変換してから同テーブルを参照して対応する階調表色データを読み出して色変換するプレ階調変換機能と、上記テーブルの格子点間で補間演算にて対応する階調表色データに色変換可能であるとともにこの色変換の情報を保存する高速読込可能な記憶エリアを有して同記憶エリアに記憶されていない場合に補間演算で色変換させるキャッシュ利用の補間色変換機能とを有し、上記検知された利用色数が多い場合には同プレ階調変換機能を使用して色変換し、同画像データの利用色数が少ない場合には同補間色変換機能を利用して色変換するように処理を分岐するステップとを具備することを特徴とするプログラムを記録した媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002180778A JP3953897B2 (ja) | 1996-11-18 | 2002-06-21 | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8-306371 | 1996-11-18 | ||
JP30637196 | 1996-11-18 | ||
JP2002180778A JP3953897B2 (ja) | 1996-11-18 | 2002-06-21 | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP30744097A Division JP3981779B2 (ja) | 1996-11-18 | 1997-11-10 | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003085546A JP2003085546A (ja) | 2003-03-20 |
JP2003085546A5 JP2003085546A5 (ja) | 2005-01-20 |
JP3953897B2 true JP3953897B2 (ja) | 2007-08-08 |
Family
ID=26564688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002180778A Expired - Fee Related JP3953897B2 (ja) | 1996-11-18 | 2002-06-21 | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3953897B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7822270B2 (en) * | 2005-08-31 | 2010-10-26 | Microsoft Corporation | Multimedia color management system |
US8274714B2 (en) | 2005-11-30 | 2012-09-25 | Microsoft Corporation | Quantifiable color calibration |
JP5149889B2 (ja) * | 2009-12-25 | 2013-02-20 | キヤノン株式会社 | 撮像装置及びその制御方法 |
JP6381311B2 (ja) | 2013-07-04 | 2018-08-29 | キヤノン株式会社 | 画像形成装置、画像形成方法、およびプログラム |
-
2002
- 2002-06-21 JP JP2002180778A patent/JP3953897B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003085546A (ja) | 2003-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6351558B1 (en) | Image processing system, image processing method, and medium having an image processing control program recorded thereon | |
JP4368880B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム、コンピュータ読み取り可能な記録媒体 | |
JP4069333B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP3981779B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP4243362B2 (ja) | 画像処理装置、画像処理方法、および画像処理プログラムを記録した記録媒体 | |
JP3953897B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP4844686B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP2003085546A5 (ja) | ||
JP2002281332A (ja) | 色変換装置、色変換方法およびそのプログラムと記録媒体 | |
JP2003050999A5 (ja) | ||
JP2003050999A (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP3698205B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP3731573B2 (ja) | 画像処理装置、画像評価装置、画像処理方法、画像評価方法および画像処理プログラムを記録した記録媒体 | |
JP3596614B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP4123387B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP5029779B2 (ja) | 画像処理方法、画像処理プログラムを記録した媒体および画像処理装置 | |
JP4123385B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP2003050997A (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した媒体 | |
JP2008065845A (ja) | 画像処理装置、画像処理プログラムを記録した記録媒体および画像処理方法 | |
JP2009205699A (ja) | 画像評価方法、画像評価プログラムを記録した媒体および画像評価装置 | |
JP2010165379A (ja) | 画像評価方法、画像評価プログラムを記録した媒体および画像評価装置 | |
JP2003085552A5 (ja) | ||
JP2008245321A (ja) | 画像処理装置、画像処理方法、および記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040219 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040219 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20040219 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20040604 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041018 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041216 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050317 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050324 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20050415 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050509 |
|
RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20050614 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20050614 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070425 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110511 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120511 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120511 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130511 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140511 Year of fee payment: 7 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |