JP2024004517A - 画像生成装置、制御方法及びプログラム - Google Patents
画像生成装置、制御方法及びプログラム Download PDFInfo
- Publication number
- JP2024004517A JP2024004517A JP2022104104A JP2022104104A JP2024004517A JP 2024004517 A JP2024004517 A JP 2024004517A JP 2022104104 A JP2022104104 A JP 2022104104A JP 2022104104 A JP2022104104 A JP 2022104104A JP 2024004517 A JP2024004517 A JP 2024004517A
- Authority
- JP
- Japan
- Prior art keywords
- color
- area
- representative
- image
- achromatic
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 324
- 239000003086 colorant Substances 0.000 claims abstract description 190
- 238000004364 calculation method Methods 0.000 claims abstract description 143
- 238000012937 correction Methods 0.000 claims description 64
- 238000012545 processing Methods 0.000 description 383
- 230000008569 process Effects 0.000 description 242
- 238000006243 chemical reaction Methods 0.000 description 136
- 230000009467 reduction Effects 0.000 description 75
- 238000010586 diagram Methods 0.000 description 44
- 230000000052 comparative effect Effects 0.000 description 24
- 238000009826 distribution Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 18
- 238000011946 reduction process Methods 0.000 description 17
- 230000006835 compression Effects 0.000 description 16
- 238000007906 compression Methods 0.000 description 16
- 238000003860 storage Methods 0.000 description 15
- 238000000926 separation method Methods 0.000 description 13
- 238000003705 background correction Methods 0.000 description 6
- 235000010385 ascorbyl palmitate Nutrition 0.000 description 4
- 239000011692 calcium ascorbate Substances 0.000 description 4
- 235000010376 calcium ascorbate Nutrition 0.000 description 4
- 239000000542 fatty acid esters of ascorbic acid Substances 0.000 description 4
- 239000011668 ascorbic acid Substances 0.000 description 3
- 235000010323 ascorbic acid Nutrition 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000009499 grossing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004042 decolorization Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- PPASLZSBLFJQEF-RKJRWTFHSA-M sodium ascorbate Substances [Na+].OC[C@@H](O)[C@H]1OC(=O)C(O)=C1[O-] PPASLZSBLFJQEF-RKJRWTFHSA-M 0.000 description 2
- 235000010378 sodium ascorbate Nutrition 0.000 description 2
- 241001270131 Agaricus moelleri Species 0.000 description 1
- 239000004229 Alkannin Substances 0.000 description 1
- 239000004261 Ascorbyl stearate Substances 0.000 description 1
- 102100024452 DNA-directed RNA polymerase III subunit RPC1 Human genes 0.000 description 1
- 239000004230 Fast Yellow AB Substances 0.000 description 1
- 101000689002 Homo sapiens DNA-directed RNA polymerase III subunit RPC1 Proteins 0.000 description 1
- 239000004235 Orange GGN Substances 0.000 description 1
- 241000776450 PVC group Species 0.000 description 1
- 239000004231 Riboflavin-5-Sodium Phosphate Substances 0.000 description 1
- 241000519995 Stachys sylvatica Species 0.000 description 1
- 239000004234 Yellow 2G Substances 0.000 description 1
- 238000010521 absorption reaction Methods 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 239000004148 curcumin Substances 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000005674 electromagnetic induction Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004172 quinoline yellow Substances 0.000 description 1
- 239000002151 riboflavin Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 239000004173 sunset yellow FCF Substances 0.000 description 1
- 239000004149 tartrazine Substances 0.000 description 1
- 239000000541 tocopherol-rich extract Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002076 α-tocopherol Substances 0.000 description 1
- 239000002478 γ-tocopherol Substances 0.000 description 1
- 239000002446 δ-tocopherol Substances 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
- Color Image Communication Systems (AREA)
Abstract
【課題】画像内の画素を無彩色の画素と有彩色の画素とに分類して算出した代表色を用いた減色画像を生成する画像生成装置等を提供する。【解決手段】画像生成装置は、画像に含まれる複数の画素のそれぞれを、色空間における無彩色の領域と有彩色の領域との何れかに分類する分類部と、前記無彩色の領域を分割し、前記有彩色の領域を分割して、複数の分割領域を生成する分割部と、前記複数の分割領域から複数の代表色をそれぞれ算出する第1算出部と、前記複数の画素のそれぞれを、前記複数の代表色のうち画素値の差が最小となる代表色の画素に置き換えることで、前記画像の減色画像を生成する生成部と、を備える。前記分割部は、分割対象となる前記無彩色又は前記有彩色の領域について、直方体の最大の辺の長さ、及び前記直方体に属する画素数が分割条件を満たすと判断した場合、前記分割対象の領域を分割する。【選択図】図20
Description
本開示は、画像生成装置等に関する。
従来より、画像に用いられている色数を減らす減色処理を実行することにより、所定の画像形式のファイルを生成したり、当該画像形式のファイルサイズを小さくしたりする技術が利用されている。
また、減色後の画像に用いられる色(代表色)を決定するための技術も提案されている。例えば、RGB色空間におけるR軸、G軸、B軸の長さの比が3:4:2となるように色空間を変更し、当該変更した色空間上において色分布を作成し、当該色分布に基づいてメディアンカット法により色空間を所定の数に分割し、分割された各領域の代表色を選択する技術が提案されている(例えば、特許文献1参照)。また、L*a*b*色空間に変換した入力画像データに対して、L*a*b*色空間全体に均一に分布するように初期クラスタを設定し、K-meansアルゴリズムを用いて入力画像データの代表色を決定する技術が提案されている(例えば、特許文献2参照)。
ここで、一般的に、有彩色と無彩色とを区別することなく、色空間の所定の領域から代表色を算出すると、有彩色に無彩色が混じることにより、代表色の彩度が落ちてしまうという課題がある。また、L*a*b*色空間全体に均一に分布するように初期クラスタを設定したとしても、無駄な初期クラスタが存在するため、処理時間を余分に必要とするといった課題がある。このような課題について、特許文献1や特許文献2では考慮されていない。
本開示は上述した課題に鑑み、画像内の画素を無彩色の画素と有彩色の画素とに分類して算出した代表色を用いた減色画像を生成する画像生成装置等を提供することを目的とする。
上述した課題を解決するために、本開示に係る画像生成装置は、画像に含まれる複数の画素のそれぞれを、色空間における無彩色の領域と有彩色の領域との何れかに分類する分類部と、前記無彩色の領域を分割し、前記有彩色の領域を分割して、複数の分割領域を生成する分割部と、前記複数の分割領域から複数の代表色をそれぞれ算出する第1算出部と、前記複数の画素のそれぞれを、前記複数の代表色のうち画素値の差が最小となる代表色の画素に置き換えることで、前記画像の減色画像を生成する生成部と、を備え、前記無彩色の領域及び前記有彩色の領域のそれぞれは、色空間に分布する当該領域内の画素と外接した直方体で表され、前記分割部は、分割対象となる前記無彩色又は前記有彩色の領域について、前記直方体の最大の辺の長さ、及び前記直方体に属する画素数が分割条件を満たすと判断した場合、前記分割対象の領域を分割する。
また、本開示に係る制御方法は、画像生成装置の制御方法であって、画像に含まれる複数の画素のそれぞれを、色空間における無彩色の領域と有彩色の領域との何れかに分類し、前記無彩色の領域を分割し、前記有彩色の領域を分割して、複数の分割領域を生成し、前記複数の分割領域から複数の代表色をそれぞれ算出し、前記複数の画素のそれぞれを、前記複数の代表色のうち画素値の差が最小となる代表色の画素に置き換えることで、前記画像の減色画像を生成し、前記無彩色の領域及び前記有彩色の領域の各々は、色空間に分布する当該領域内の画素と外接した直方体で表され、前記無彩色の領域及び前記有彩色の領域を分割することは、分割対象となる前記無彩色又は前記有彩色の領域について、前記直方体の最大の辺の長さ、及び前記直方体に属する画素数が分割条件を満たすと判断した場合、前記分割対象の領域を分割することを含む。
また、本開示に係るプログラムは、コンピュータに、画像に含まれる複数の画素のそれぞれを、色空間における無彩色の領域と有彩色の領域との何れかに分類する分類機能と、前記無彩色の領域を分割し、前記有彩色の領域を分割して、複数の分割領域を生成する分割機能と、前記複数の分割領域から複数の代表色をそれぞれ算出する第1算出機能と、前記複数の画素のそれぞれを、前記複数の代表色のうち画素値の差が最小となる代表色の画素に置き換えることで、前記画像の減色画像を生成する生成機能と、を実現させ、前記無彩色の領域及び前記有彩色の領域のそれぞれは、色空間に分布する当該領域内の画素と外接した直方体で表され、前記分割機能は、分割対象となる前記無彩色又は前記有彩色の領域について、前記直方体の最大の辺の長さ、及び前記直方体に属する画素数が分割条件を満たすと判断した場合、前記分割対象の領域を分割する。
本開示によれば、画像内の画素を無彩色の画素と有彩色の画素とに分類して算出した代表色を用いた減色画像を生成する画像生成装置等を提供することが可能となる。
以下、図面を参照して、本開示を実施するための一実施形態について説明する。なお、以下の実施形態は、本開示を説明するための一例であり、特許請求の範囲に記載した発明の技術的範囲が、以下の記載に限定されるものではない。
[1.第1実施形態]
[1.1 機能構成]
図1及び図2を参照して、画像形成装置1の機能構成を説明する。画像形成装置1は、原稿の画像を読み取り、読み取った画像を記録用紙等の記録媒体に形成(印刷)したり、他の装置に送信することにより出力したりすることが可能な装置である。例えば、画像形成装置1は、コピー機能、印刷機能、スキャナ機能、メール送信機能等を有するデジタル複合機(MFP;Multi-Function Printer/Peripheral)である。
[1.1 機能構成]
図1及び図2を参照して、画像形成装置1の機能構成を説明する。画像形成装置1は、原稿の画像を読み取り、読み取った画像を記録用紙等の記録媒体に形成(印刷)したり、他の装置に送信することにより出力したりすることが可能な装置である。例えば、画像形成装置1は、コピー機能、印刷機能、スキャナ機能、メール送信機能等を有するデジタル複合機(MFP;Multi-Function Printer/Peripheral)である。
図1は画像形成装置1の外観斜視図、図2は画像形成装置1の機能的構成を示すブロック図である。画像形成装置1は、図2に示すように、カラー画像入力装置10、カラー画像処理装置20、カラー画像出力装置30、送受信装置40、操作パネル50、記憶部60、制御部70を備えて構成される。
カラー画像入力装置10は、原稿から画像を光学的に読み取ることで、画像を入力する装置である。カラー画像入力装置10は、例えば、CCD(Charge Coupled Device)を有するカラースキャナにより構成される。カラー画像入力装置10は、原稿からの反射光像を、CCDを用いてRGB(R:赤,G:緑,B:青)のアナログ信号として読み取ることで、画像をRGBのアナログ信号として、カラー画像処理装置20に出力する。なお、本実施形態では、カラー画像入力装置10によって入力された画像を、入力画像という。
カラー画像処理装置20は、入力画像に対して所定の処理を実行することで、RGBのデジタル信号(以下、RGB信号という)からなるカラーの画像データや、当該画像データに基づく圧縮ファイルを生成する装置である。カラー画像処理装置20の具体的な機能構成については後述する。
カラー画像出力装置30は、カラー画像処理装置20によって生成された画像データに基づく画像を、熱転写、電子写真、インクジェット等の方式により、記録シート(たとえば記録用紙等)上にカラー画像を形成して出力する出力装置(印刷装置)である。カラー画像出力装置30は、本発明における画像形成手段として機能する。
送受信装置40は、他の装置と通信を行う装置である。送受信装置40は、ネットワークカード、モデム等、通信を行うことが可能な装置により構成される。
送受信装置40は、公衆回線網、LAN(Local Area Network)又はインターネット等の通信ネットワークに接続可能である。送受信装置40は、カラー画像処理装置20によって生成された画像データの圧縮ファイルを、ファクシミリや電子メール等の通信方法により、外部の装置へ圧縮ファイルを送信する。たとえば、操作パネル50においてScan to e-mailモードが選択されている場合、送受信装置40は、圧縮ファイルを、e-mailに添付し、設定された送信先へ送信する。
操作パネル50は、画像形成装置1に対する操作を入力したり、各種情報を表示したりする。操作部52は、画像形成装置1の動作モードや各種設定を入力するための設定ボタン及びテンキー等の入力装置によって構成される。また、表示部54は、LCD(Liquid crystal display)や有機EL(electro-luminescence)ディスプレイ、マイクロLEDディスプレイ等の表示装置により構成される。操作パネル50は、操作部52と表示部54とを一体に構成したタッチパネルであってもよい。この場合において、タッチパネルの入力を検出する方式は、例えば、抵抗膜方式、赤外線方式、電磁誘導方式、静電容量方式といった、一般的な検出方式であればよい。
記憶部60は、画像データ等の各種データや各種プログラムを記憶する機能部であり、例えば、半導体メモリであるSSD(Solid State Drive)や、HDD(Hard Disk Drive)等の記憶装置によって構成される。
制御部70は、画像形成装置1の全体を制御するための機能部である。制御部70は、記憶部60に記憶されている各種プログラムを読み出して実行することにより各種機能を実現しており、1又は複数の演算装置(例えば、CPU(Central Processing Unit))により構成されている。
本実施形態では、制御部70は、カラー画像入力装置10、カラー画像処理装置20、カラー画像出力装置30、送受信装置40、操作パネル50、記憶部60を制御して、画像形成装置1において実行される各種処理を実行する。
つづいて、カラー画像処理装置20の詳細について説明する。A/D変換部201は、カラー画像入力装置10から出力されたRGBのアナログ信号をRGBのデジタル信号(RGB信号)へ変換することで、RGB信号からなる画像データに変換(画像データを生成)する。A/D変換部201は、RGB信号をシェーディング補正部202に出力する。
シェーディング補正部202は、A/D変換部201から出力されたRGB信号に対して、カラー画像入力装置10の照明系、結像系及び撮像系で生じる各種の歪みを取り除く処理を行う。シェーディング補正部202は、歪みを取り除いたRGB信号を、原稿種別判定部203に出力する。
原稿種別判定部203は、シェーディング補正部202から出力されたRGB信号(RGBの反射率信号)をRGB各色の濃度を示す濃度信号に変換し、文字、写真、又は印画紙等の原稿の種別を判定する原稿種別判定処理を実行する。原稿種別判定処理の処理結果(自動原稿判別結果)は、後段の画像処理に反映される。なお、ユーザによって操作パネル50を用いて原稿種別が設定された場合、原稿種別判定部203は、原稿種別判定処理を実行しない。原稿種別判定部203は、シェーディング補正部202から出力されたRGB信号を、入力階調補正部204に出力する。
入力階調補正部204は、原稿種別判定部203から出力されたRGB信号に対して、カラーバランスの調整、下地濃度の除去、及びコントラストの調整等の画質調整処理を行う。入力階調補正部204は、画質調整処理を行ったRGB信号を、領域分離処理部205に出力する。
領域分離処理部205は、入力階調補正部204から出力されたRGB信号に基づく画像中の各画素を、所定の領域(例えば、文字領域、網点領域、又は写真領域のいずれか)に属する画素に分類することで、当該画像の領域を分離する。領域分離処理部205は、分離結果に基づき、各画素が属している領域を示す領域識別信号を、黒色生成下色除去部207、空間フィルタ処理部208、階調再現処理部212へ出力する。領域分離処理部205は、入力階調補正部204から出力されたRGB信号を、色補正部206に出力する。
色補正部206は、画像データの出力先に応じて、以下の処理を実行する。
(1)カラー画像出力装置30に画像データが出力される場合
色補正部206は、領域分離処理部205から出力されたRGB信号をCMYのデジタル信号(以下、CMY信号という)に変換する。さらに、色補正部206は、色再現の忠実化実現のために、不要吸収成分を含むCMY色材の分光特性に基づいた色濁りをCMY信号から取り除く処理を行う。色補正部206は、色補正後のCMY信号を黒色生成下色除去部207へ出力する。
(2)送受信装置40に画像データに基づく圧縮ファイルが出力される場合
色補正部206は、領域分離処理部205から出力されたRGB信号を、色補正されたRGB信号(操作パネルでカラーモードとしてフルカラーモードが選択された場合等)又はグレー信号(操作パネルでカラーモードとしてモノクロモードが選択された場合等)に変換する。また、色補正部206は、色補正されたRGB信号又はグレー信号を空間フィルタ処理部208に出力する。さらに、色補正部206は、色補正されたRGB信号を、色数変換判定処理部215に出力する。
(1)カラー画像出力装置30に画像データが出力される場合
色補正部206は、領域分離処理部205から出力されたRGB信号をCMYのデジタル信号(以下、CMY信号という)に変換する。さらに、色補正部206は、色再現の忠実化実現のために、不要吸収成分を含むCMY色材の分光特性に基づいた色濁りをCMY信号から取り除く処理を行う。色補正部206は、色補正後のCMY信号を黒色生成下色除去部207へ出力する。
(2)送受信装置40に画像データに基づく圧縮ファイルが出力される場合
色補正部206は、領域分離処理部205から出力されたRGB信号を、色補正されたRGB信号(操作パネルでカラーモードとしてフルカラーモードが選択された場合等)又はグレー信号(操作パネルでカラーモードとしてモノクロモードが選択された場合等)に変換する。また、色補正部206は、色補正されたRGB信号又はグレー信号を空間フィルタ処理部208に出力する。さらに、色補正部206は、色補正されたRGB信号を、色数変換判定処理部215に出力する。
黒色生成下色除去部207は、色補正部206から出力されたCMY信号に基づき、CMY信号から黒色(K)信号を生成する黒色生成処理と、CMY信号から黒色生成で得たK信号を差し引いて新たなCMY信号を生成する処理とを行う。この結果、CMY3色のデジタル信号は、CMYKの4色のデジタル信号(以下、CMYK信号という)に変換される。黒色生成下色除去部207は、CMY信号を変換したCMYK信号を空間フィルタ処理部208へ出力する。
黒色生成処理の一例としては、一般に、スケルトン・ブラックによる黒色生成を行う方法が用いられる。この方法では、スケルトン・カーブの入出力特性をy=f(x)、入力されるデータをC,M,Y、出力されるデータをC’,M’,Y’,K’、UCR(Under Color Removal)率をα(0<α<1)とすると、黒色生成下色除去処理は、下記の式(1)~式(4)で表わされる。
K’=f(min(C,M,Y)) …(1)
C’=C-αK’ …(2)
M’=M-αK’ …(3)
Y’=Y-αK’ …(4)
K’=f(min(C,M,Y)) …(1)
C’=C-αK’ …(2)
M’=M-αK’ …(3)
Y’=Y-αK’ …(4)
ここで、UCR率α(0<α<1)とは、CMYが重なっている部分をKに置き換えてCMYをどの程度削減するかを示すものである。式(1)は、CMYの各信号強度の内の最も小さい信号強度に応じてK信号が生成されることを示している。
空間フィルタ処理部208は、画像データの出力先に応じて、以下の処理を実行する。
(1)カラー画像出力装置30に画像データが出力される場合
空間フィルタ処理部208は、黒色生成下色除去部207から出力されたCMYK信号の画像データに対して、領域分離処理部205から入力された領域識別信号に基づいてデジタルフィルタによる空間フィルタ処理を行う。例えば、空間フィルタ処理部208は、CMYK信号の画像データにおける空間周波数特性を補正する処理を実行することで、画像のぼやけ又は粒状性劣化を改善させる。また、空間フィルタ処理部208は、領域分離処理部205にて文字に分離された領域に対して、文字の再現性を高めるために、高周波成分の強調量が大きいフィルタを用いて空間フィルタ処理を行う。また、空間フィルタ処理部208は、領域分離処理部205にて網点に分離された領域に対しては、入力網点成分を除去するためのローパス・フィルタ処理を行う。空間フィルタ処理部208は、処理後のCMYK信号を出力階調補正部210に出力する。
(1)カラー画像出力装置30に画像データが出力される場合
空間フィルタ処理部208は、黒色生成下色除去部207から出力されたCMYK信号の画像データに対して、領域分離処理部205から入力された領域識別信号に基づいてデジタルフィルタによる空間フィルタ処理を行う。例えば、空間フィルタ処理部208は、CMYK信号の画像データにおける空間周波数特性を補正する処理を実行することで、画像のぼやけ又は粒状性劣化を改善させる。また、空間フィルタ処理部208は、領域分離処理部205にて文字に分離された領域に対して、文字の再現性を高めるために、高周波成分の強調量が大きいフィルタを用いて空間フィルタ処理を行う。また、空間フィルタ処理部208は、領域分離処理部205にて網点に分離された領域に対しては、入力網点成分を除去するためのローパス・フィルタ処理を行う。空間フィルタ処理部208は、処理後のCMYK信号を出力階調補正部210に出力する。
(2)送受信装置40に画像データに基づく圧縮ファイルが出力される場合
空間フィルタ処理部208は、色補正部206から出力された信号(RGB信号又はグレー信号)に対して、領域分離処理部205から入力された領域識別信号に基づいてデジタルフィルタによる空間フィルタ処理を行う。例えば、空間フィルタ処理部208は、空間周波数特性を補正する処理を実行することで、画像のぼやけ又は粒状性劣化を改善させる。空間フィルタ処理部208は、処理後の信号を解像度変換処理部209に出力する。
空間フィルタ処理部208は、色補正部206から出力された信号(RGB信号又はグレー信号)に対して、領域分離処理部205から入力された領域識別信号に基づいてデジタルフィルタによる空間フィルタ処理を行う。例えば、空間フィルタ処理部208は、空間周波数特性を補正する処理を実行することで、画像のぼやけ又は粒状性劣化を改善させる。空間フィルタ処理部208は、処理後の信号を解像度変換処理部209に出力する。
解像度変換処理部209は、空間フィルタ処理部208から出力された信号(RGB信号またはグレー信号)に対して、操作パネル50において設定された解像度の画像データになるように解像度変換処理を行う。例えば、スキャナの入力解像度が600DPI×300DPIの画像データで、操作パネル50で選択した解像度が300DPI×300DPIであった場合、解像度変換処理部209は、主走査方向の2画素毎に平均値を求め、それを出力値とすることで、600DPI×300DPIから300DPI×300DPIへの解像度の変換を実行する。解像度変換処理部209は、処理後の信号を出力階調補正部210に出力する。
出力階調補正部210は、画像データの出力先に応じて、以下の処理を実行する。
(1)カラー画像出力装置30に画像データが出力される場合
出力階調補正部210は、空間フィルタ処理部208から出力されたCMYK信号に対して、カラー画像出力装置30の特性である網点面積率に基づく出力階調補正処理を行い、処理後のCMYK信号を階調再現処理部212に出力する。
(2)送受信装置40に画像データに基づく圧縮ファイルが出力される場合
出力階調補正部210は、解像度変換処理部209から出力された信号(RGB信号またはグレー信号)に対して、必要に応じてかぶりやハイライトの下地が消えるまたは薄くなるように出力階調補正を行う。出力階調補正部210は、処理後のRGB信号を色数変換処理部211に出力する。
(1)カラー画像出力装置30に画像データが出力される場合
出力階調補正部210は、空間フィルタ処理部208から出力されたCMYK信号に対して、カラー画像出力装置30の特性である網点面積率に基づく出力階調補正処理を行い、処理後のCMYK信号を階調再現処理部212に出力する。
(2)送受信装置40に画像データに基づく圧縮ファイルが出力される場合
出力階調補正部210は、解像度変換処理部209から出力された信号(RGB信号またはグレー信号)に対して、必要に応じてかぶりやハイライトの下地が消えるまたは薄くなるように出力階調補正を行う。出力階調補正部210は、処理後のRGB信号を色数変換処理部211に出力する。
色数変換処理部211は、後述する色数変換判定処理部215からの出力(色数変換処理のON又はOFFを示す信号)を入力し、色数変換処理のONを示す信号を入力した場合、色数変換処理を実行する。色数変換処理とは、色補正部206から出力されたRGB信号からなる画像データに対して減色処理を行い、画像データを生成する処理である。色数変換処理部211は、減色処理を行った画像データ(減色画像の画像データ)を生成した場合、減色処理を行った画像データのRGB信号を、圧縮処理部213に出力する。なお、色数変換処理部211は、色数変換処理のOFFを示す信号を入力した場合、色数変換処理を実行せず、色補正部206から出力されたRGB信号をそのまま(例えば、フルカラーのまま)圧縮処理部213に出力する。色数変換処理部211の具体的な機能構成及び色数変換処理部211が実行する処理については、後述する。
なお、色数変換処理部211は、減色処理を行わない場合、出力階調補正部210から出力されたRGB信号を圧縮処理部213に出力する。もしくは、色数変換処理部211は、減色処理を行わない場合、出力階調補正部210から出力されたグレー信号を階調再現処理部212及び圧縮処理部213に出力する。
階調再現処理部212は、画像データの出力先に応じて、以下の処理を実行する。
(1)カラー画像出力装置30に画像データが出力される場合
階調再現処理部212は、出力階調補正部210から出力されたCMYK信号に対して、領域分離処理部205から出力された領域識別信号に基づいて、領域に応じた中間調処理を行う。例えば、階調再現処理部212は、文字領域に対しては、高域周波成分の再現に適した高解像度のスクリーンによる二値化又は多値化の処理を行う。また、階調再現処理部212は、網点領域に対しては、階調再現性を重視したスクリーンでの二値化又は多値化の処理を行う。階調再現処理部212は、処理後のCMYK信号を、カラー画像出力装置30に出力する。
(2)送受信装置40に画像データに基づく圧縮ファイルが出力される場合
階調再現処理部212は、操作パネル50において出力する画像データのカラーモードとしてモノクロ2値が選択された場合、色数変換処理部211から出力されたグレー信号に対して二値化処理を行う。そして、階調再現処理部212は、処理後の信号(白黒二値信号からなるK信号)を、圧縮処理部213に出力する。一方、階調再現処理部212は、出力する画像データのカラーモードとしてモノクロ2値が選択されていない場合は、色数変換処理部211から出力されたRGB信号を、圧縮処理部213に出力する。
(1)カラー画像出力装置30に画像データが出力される場合
階調再現処理部212は、出力階調補正部210から出力されたCMYK信号に対して、領域分離処理部205から出力された領域識別信号に基づいて、領域に応じた中間調処理を行う。例えば、階調再現処理部212は、文字領域に対しては、高域周波成分の再現に適した高解像度のスクリーンによる二値化又は多値化の処理を行う。また、階調再現処理部212は、網点領域に対しては、階調再現性を重視したスクリーンでの二値化又は多値化の処理を行う。階調再現処理部212は、処理後のCMYK信号を、カラー画像出力装置30に出力する。
(2)送受信装置40に画像データに基づく圧縮ファイルが出力される場合
階調再現処理部212は、操作パネル50において出力する画像データのカラーモードとしてモノクロ2値が選択された場合、色数変換処理部211から出力されたグレー信号に対して二値化処理を行う。そして、階調再現処理部212は、処理後の信号(白黒二値信号からなるK信号)を、圧縮処理部213に出力する。一方、階調再現処理部212は、出力する画像データのカラーモードとしてモノクロ2値が選択されていない場合は、色数変換処理部211から出力されたRGB信号を、圧縮処理部213に出力する。
圧縮処理部213は、RGB信号やグレー信号、白黒二値信号からなる画像データに対して、操作パネル50のファイルフォーマットの設定に従い、必要に応じてJPEG(Joint Photographic Experts Group)やMMR(Modified Modified Read)などの圧縮処理を行い、圧縮データを生成する。圧縮データは、画像データであってもよいしPDF(Portable Document Format)形式のデータであってもよい。圧縮処理部213は、減色処理の行われない通常のPDFデータを生成するとき、原稿種別判定部203の原稿の種別の判定結果に基づき、PDFデータに含まれるJPEGの画像データの圧縮率を制御したりしてもよい。圧縮処理部213は、圧縮データをファイル生成部214に出力する。
ファイル生成部214は、圧縮処理部213から出力された圧縮データに基づき、ファイルを生成し、ファイルを送受信装置40に出力する。また、ファイル生成部214は、後述する色数変換判定処理部215から出力された信号を入力し、当該信号に基づきファイルを生成してもよい。例えば、ファイル生成部214は、色数変換処理のONを示す信号を入力した場合、インデックスカラーPDFフォーマットでファイル生成してもよい。また、ファイル生成部214は、色数変換処理のOFFを示す信号を入力した場合、JPEG-PDFフォーマットでファイル生成してもよい。
なお、カラー画像処理装置20は、上述した処理の実行時に、処理途中の画像データ(中間データ)を一時的に記憶部60に記憶してもよい。また、カラー画像処理装置20は、ファイル生成部214によって生成された圧縮ファイルを、送受信装置40に出力する前に記憶部60に記憶してもよい。
色数変換判定処理部215は、色補正部206から出力されたRGB信号を入力し、色数変換を行うか否かを判定する。色数変換判定処理部215は、色数変換を行う場合、色数変換処理の「ON」を示す信号を出力する。一方、色数変換判定処理部215は、色数変換行わない場合、色数変換処理の「OFF」を示す信号(色数変換を行わないことを示す信号)を出力する。
色数変換判定処理部215は、例えば、出力する画像データのカラーモードに応じて、色数変換すべき原稿であるか否かを判定する。
例えば、カラーモードが「カラー」である場合、色数変換判定処理部215は、以下の3つの条件を全て満たした場合のみ色数変換を行うと判定する。
・原稿サイズに対して白下地が一定比率以上存在すること(白下地判定)
・原稿サイズに対して写真領域が一定比率未満存在する(写真判定)
・色領域分割した際の色の分布が一定範囲以内に収まっていること(色分布判定)
なお、色数変換判定処理部215は、色分布判定に、後述する減色処理における中央値分割法の結果を活用してもよい。この場合、色数変換処理部211は、減色処理を行うか否かに関わらず、後述する初期分類処理及び領域分割処理を実行する。このとき、色数変換判定処理部215は、色数変換処理部211によって分割された各領域の大きさの合計や、各領域の位置に基づき、色の分布が一定範囲以内に収まっているか否かを判定する。
・原稿サイズに対して白下地が一定比率以上存在すること(白下地判定)
・原稿サイズに対して写真領域が一定比率未満存在する(写真判定)
・色領域分割した際の色の分布が一定範囲以内に収まっていること(色分布判定)
なお、色数変換判定処理部215は、色分布判定に、後述する減色処理における中央値分割法の結果を活用してもよい。この場合、色数変換処理部211は、減色処理を行うか否かに関わらず、後述する初期分類処理及び領域分割処理を実行する。このとき、色数変換判定処理部215は、色数変換処理部211によって分割された各領域の大きさの合計や、各領域の位置に基づき、色の分布が一定範囲以内に収まっているか否かを判定する。
また、例えば、カラーモードが「モノクロ」である場合、色数変換判定処理部215は、以下の条件に基づき色数変換を行うか否かを判定する。
・単純2値化した際に文字領域が黒潰れすること(文字つぶれ判定)
・単純2値化した際に写真領域が黒潰れすること(写真つぶれ判定)
・原稿サイズに対して写真領域が一定比率未満存在すること(写真判定)
・文字領域に文字が読みづらくなる疑似輪郭が発生していないこと(疑似輪郭判定)
この場合、色数変換判定処理部215は、文字潰れ又は写真潰れがあり、写真領域が一定未満で、疑似輪郭が発生していなければ、色数変換処理を行うと判定する。
・単純2値化した際に文字領域が黒潰れすること(文字つぶれ判定)
・単純2値化した際に写真領域が黒潰れすること(写真つぶれ判定)
・原稿サイズに対して写真領域が一定比率未満存在すること(写真判定)
・文字領域に文字が読みづらくなる疑似輪郭が発生していないこと(疑似輪郭判定)
この場合、色数変換判定処理部215は、文字潰れ又は写真潰れがあり、写真領域が一定未満で、疑似輪郭が発生していなければ、色数変換処理を行うと判定する。
なお、判定に用いる比率や範囲は、予め定められていてもよいし、ユーザによって設定可能であってもよい。また、色数変換判定処理部215は、上述する判定を、出力する画像データの出力設定に応じて行ってもよい。例えば、色数変換判定処理部215は、PDFファイルを出力する場合であって、ページ毎にフルカラー又は減色カラーを自動的に判定したり、ページ毎にグレースケールか減色グレーか白黒2値かを自動的に判定したりする場合に、上記判定を行ってもよい(自動設定モード)。この場合において、自動設定モードでないとき(ユーザによって色数変換処理を行うか否かが手動で選択されたとき)、色数変換判定処理部215は、上述した判定を行わず、ユーザの選択に基づく信号を出力してもよい。
[1.2 色数変換処理部の詳細]
[1.2.1 処理の概要]
本実施形態では、色数変換処理部211は、入力されたカラー画像(入力画像)に対し、減色処理に用いる色空間の内部の領域を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を条件に従い複数の領域に分割した各領域に、入力画像の各画素を振り分ける(分類する)。また、色数変換処理部211は、無彩色/有彩色毎に中央値分割法(メディアンカット法)により代表色を求めた後、入力画像の各画素に対して一番近い代表色のインデックス値を割り当てることで、入力画像を減色した減色画像を生成する。
[1.2.1 処理の概要]
本実施形態では、色数変換処理部211は、入力されたカラー画像(入力画像)に対し、減色処理に用いる色空間の内部の領域を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を条件に従い複数の領域に分割した各領域に、入力画像の各画素を振り分ける(分類する)。また、色数変換処理部211は、無彩色/有彩色毎に中央値分割法(メディアンカット法)により代表色を求めた後、入力画像の各画素に対して一番近い代表色のインデックス値を割り当てることで、入力画像を減色した減色画像を生成する。
なお、本実施形態では、減色画像に含まれる色の数(メディアンカット法により求められる代表色の数)を、減色数という。減色数は、例えば、「無彩色=5、有彩色=15」といったように、無彩色の代表色の数(第1所定数)と有彩色の代表色の数(第2所定数)とに対してそれぞれ定められてもよいし、「20」といったように、無彩色の代表色の数と有彩色の代表色の数との合計に対して定められてもよい。
減色数は、手動原稿モード(ユーザによって設定された原稿種別)又は原稿種別判定部203の判定結果である自動原稿判別結果に応じて決定されてもよいし、ユーザによって設定されてもよいし、予め定められてもよい。
原稿の種別や出力する画像データのカラーモードに応じて減色数が決定される場合は、記憶部60に、予め、原稿の種類及び出力する画像データのカラーモードの組み合わせと減色数とを対応付けて記憶させる。この場合、色数変換処理部211は、手動原稿モード又は自動原稿判別結果に対応した減色数を、記憶部60から取得すればよい。
[1.2.2 色数変換処理部の構成]
図3を参照して、本実施形態における色数変換処理部211の構成について説明する。色数変換処理部211は、減色処理に用いる色空間に応じて、図3(a)又は図3(b)の何れかに示した機能部を備えて構成される。
(1)RGB色空間が用いられる場合
色数変換処理部211は、図3(a)に示すように、初期分類部2111、領域分割部2112、第1代表色算出部2113、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図3(b)に示すように、色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、出力画像生成部2114を含んで構成される。
図3を参照して、本実施形態における色数変換処理部211の構成について説明する。色数変換処理部211は、減色処理に用いる色空間に応じて、図3(a)又は図3(b)の何れかに示した機能部を備えて構成される。
(1)RGB色空間が用いられる場合
色数変換処理部211は、図3(a)に示すように、初期分類部2111、領域分割部2112、第1代表色算出部2113、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図3(b)に示すように、色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、出力画像生成部2114を含んで構成される。
色変換部2110は、入力画像(RGB信号)に含まれる画素の画素値を、所定の色空間(例えば、YUV(YCbCr)色空間、L*a*b*(CIELAB)色空間、LCH色空間等)における画素値に変換する色変換処理を実行する。
初期分類部2111は、減色処理に用いる色空間を分割した領域に、入力画像の各画素を分類する初期分類処理を実行する。領域分割部2112は、初期分類処理において分割された領域をメディアンカット法に基づき分割する領域分割処理を実行する。第1代表色算出部2113は、領域分割処理によって分割された領域から代表色を算出する第1代表色算出処理を実行する。出力画像生成部2114は、第1代表色算出処理によって算出された代表色を用いて減色画像を生成する出力画像生成処理を実行する。初期分類処理、領域分割処理、第1代表色算出処理、出力画像生成処理については、後述する。
色数変換処理部211は、減色処理に用いる色空間がRGB色空間以外の色空間である場合、出力階調補正部210から出力されたRGB信号(入力画像)の色空間を、色変換部2110を介して変換し、初期分類部2111に出力する。なお、色数変換処理部211は、減色処理に用いる色空間がRGB色空間であれば、出力階調補正部210から出力されたRGB信号(入力画像)を、そのまま初期分類部2111に出力する。そして、色数変換処理部211は、初期分類処理、領域分割処理、第1代表色算出処理、出力画像生成処理を実行することで、入力画像の減色画像を生成する。
なお、色数変換処理部211は、減色処理に用いる色空間として、上述した色空間のうち1の色空間に対応していればよく、当該色空間における減色処理に応じた機能部を備えればよい。また、減色処理に用いる色空間は、例えば、画像形成装置1の設計方針等に基づき、画像形成装置1の製造時に決定されてもよい。
例えば、速度重視で減色処理を効率的に行う場合は、減色処理に用いる色空間として、色変換を行わないRGB色空間が用いられればよい。色再現を重視する場合には、減色処理に用いる色空間として、輝度と色度とが分離され、後述する初期分類処理において色領域の分割領域を色相によって決定するL*a*b*色空間を用いられればよい。また、速度と色再現とのバランスを考慮する場合は、減色処理に用いる色空間として、色変換の計算量が多くなく、輝度と色度に分離できるYUV(YCbCr)色空間が用いられればよい。
なお、色数変換処理部211は、上述した3つの色空間に対応し、速度重視(RGB色空間)-標準(YUV(YCbCr)色空間)-色再現重視(LAB色空間)のように、減色処理に用いる色空間を、ユーザの操作や画像形成装置1の状態(例えば、実行すべきジョブの数)等に基づき、3段階で切替可能にしてもよい。
なお、色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、出力画像生成部2114の一部又は全ては、制御部70によって実行されるプログラムとして実現されてもよいし、回路等のハードウェアとして実現されてもよい。
[1.2.3 初期分類処理]
初期分類部2111によって実行される初期分類処理について説明する。初期分類部2111は、予め、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を複数の領域に分割する。ここで、色空間のうち、無彩色の領域を無彩色領域といい、有彩色の領域を有彩色領域という。
初期分類部2111によって実行される初期分類処理について説明する。初期分類部2111は、予め、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を複数の領域に分割する。ここで、色空間のうち、無彩色の領域を無彩色領域といい、有彩色の領域を有彩色領域という。
初期分類部2111は、減色処理を行うに際し、原稿の種類(原稿種別)に応じて減色画像の色再現を制御するために、減色処理に用いる色空間を、手動原稿モード又は自動原稿判別結果に応じた分割の仕方で、最初に、無彩色領域を1領域に、有彩色領域を8領域に分割する。以下、減色処理に用いる色空間の種類毎に、初期分類処理の流れを説明する。
[1.2.3.1 RGB色空間]
はじめに、減色処理に用いる色空間がRGB色空間である場合における初期分類処理の流れを説明する。なお、本実施形態では、RGB色空間において、R値とG値とB値が取り得る値は、いずれも、0から255までとする。
はじめに、減色処理に用いる色空間がRGB色空間である場合における初期分類処理の流れを説明する。なお、本実施形態では、RGB色空間において、R値とG値とB値が取り得る値は、いずれも、0から255までとする。
初期分類部2111は、RGB色空間を立方体(RGB立方体)で表したとき、RGB立方体の(R,G,B)=(0,0,0)の位置の頂点(頂点K)と、(R,G,B)=(255,255,255)の位置の頂点(頂点W)とを結ぶ直線を設定する。ここで、初期分類部2111は、頂点Kと頂点Wとを結ぶ直線から一定の範囲内の領域を無彩色(無彩色領域)とする。一方、初期分類部2111は、頂点Kと頂点Wとを結ぶ直線から一定の範囲外の領域を有彩色(有彩色領域)とする。
頂点Kと頂点Wとを結ぶ直線から一定の範囲内にあることは、注目している画素の画素値において、R値とG値との差の絶対値と、G値とB値との差の絶対値と、B値とR値との差の絶対値が、何れも一定値(閾値)以内であることに対応する。閾値は、ユーザによって設定されてもよいし、手動原稿モードや自動原稿判別結果に応じて設定されてもよいし、予め定められていてもよい。
つまり、初期分類部2111は、R値とG値とB値との何れも同じ値である画素に加えて、R値とG値とB値とがほぼ同一の値である画素(無彩色に近い画素)を、無彩色の画素であるとして無彩色領域に分類する。
さらに、初期分類部2111は、有彩色領域を、RGB立方体の8つの各頂点を基準に、8つの直方体の領域に分割する。本実施形態では、色空間を分割したそれぞれの領域(色空間内の部分領域)を、分割領域という。ここで、この8つの直方体(有彩色の分割領域)は、無彩色領域を含まない。
有彩色の分割領域は、無彩色領域を含まない領域であって、以下のような領域である。
(1)R値、G値、B値の何れもが0~127を取る領域
(2)R値が128~255、G値とB値とが0~127を取る領域
(3)G値が128~255、R値とB値とが0~127を取る領域
(4)B値が128~255、R値とG値とが0~127を取る領域
(5)R値とG値とが128~255、B値が0~127を取る領域
(6)R値とB値とが128~255、G値が0~127を取る領域
(7)G値とB値とが128~255、R値が0~127を取る領域
(8)R値、G値、B値の何れもが128~255を取る領域
(1)R値、G値、B値の何れもが0~127を取る領域
(2)R値が128~255、G値とB値とが0~127を取る領域
(3)G値が128~255、R値とB値とが0~127を取る領域
(4)B値が128~255、R値とG値とが0~127を取る領域
(5)R値とG値とが128~255、B値が0~127を取る領域
(6)R値とB値とが128~255、G値が0~127を取る領域
(7)G値とB値とが128~255、R値が0~127を取る領域
(8)R値、G値、B値の何れもが128~255を取る領域
上述の説明に対応する無彩色領域及び有彩色領域を、図4に示す。図4のC100は、RGB立方体である。RGB立方体は、以下の頂点を有する。
頂点K:(R,G,B)=(0,0,0)
頂点R:(R,G,B)=(255,0,0)
頂点Y:(R,G,B)=(255,255,0)
頂点G:(R,G,B)=(0,255,0)
頂点B:(R,G,B)=(0,0,255)
頂点M:(R,G,B)=(255,0,255)
頂点W:(R,G,B)=(255,255,255)
頂点C:(R,G,B)=(255,0,0)
頂点K:(R,G,B)=(0,0,0)
頂点R:(R,G,B)=(255,0,0)
頂点Y:(R,G,B)=(255,255,0)
頂点G:(R,G,B)=(0,255,0)
頂点B:(R,G,B)=(0,0,255)
頂点M:(R,G,B)=(255,0,255)
頂点W:(R,G,B)=(255,255,255)
頂点C:(R,G,B)=(255,0,0)
図4のE100は、無彩色領域である。無彩色領域は、頂点Kと頂点Wとを結ぶ直線から一定の範囲内の領域である。
さらに、C100における有彩色領域は、RGB立方体の各頂点を基準に分割された、以下の8の分割領域を含む。
領域E101:暗い色の画素が含まれる領域(R,G,B≦127)
領域E102:赤色系の画素が含まれる領域(R>127、G,B≦127)
領域E103:黄色系の画素が含まれる領域(R,G>127、B≦127)
領域E104:緑系の画素が含まれる領域(G>127、R,B≦127)
領域E105:青系の画素が含まれる領域(B>127、R,G≦127)
領域E106:マゼンタ系の画素が含まれる領域(R,B>127、G≦127)
領域E107:明るい色の画素が含まれる領域(R,G,B>127)
領域E108:シアン系の画素が含まれる領域(G,B>127、R≦127)
領域E101:暗い色の画素が含まれる領域(R,G,B≦127)
領域E102:赤色系の画素が含まれる領域(R>127、G,B≦127)
領域E103:黄色系の画素が含まれる領域(R,G>127、B≦127)
領域E104:緑系の画素が含まれる領域(G>127、R,B≦127)
領域E105:青系の画素が含まれる領域(B>127、R,G≦127)
領域E106:マゼンタ系の画素が含まれる領域(R,B>127、G≦127)
領域E107:明るい色の画素が含まれる領域(R,G,B>127)
領域E108:シアン系の画素が含まれる領域(G,B>127、R≦127)
なお、上述した領域は分割領域の一例である。また、初期分類部2111は、有彩色の分割領域間での重なりを許容する。有彩色の分割方法(分割領域の範囲)は、手動原稿モード又は自動原稿判別結果に応じて決定されてもよいし、ユーザによって設定されてもよいし、予め定められていてもよい。
初期分類部2111が実行する初期分類処理を、図5を用いて説明する。はじめに、初期分類部2111は、入力画像(RGBの画像データ)に含まれる画素から1の画素(注目画素)を選択し、当該注目画素の画素値であるR値とG値とB値とを取得する。そして、初期分類部2111は、R値とG値との差の絶対値である|R-G|と、G値とB値との差の絶対値である|G-B|と、B値とR値との差の絶対値である|B-R|とが、全て閾値TH1以下であるか否かを判定する(ステップS100)。閾値TH1は、予め画像形成装置1に設定されていてもよいし、ユーザによって設定可能であってもよいし、原稿種別に応じて設定されてもよい。
初期分類部2111は、|R-G|、|G-B|、|B-R|が何れも全て閾値TH1以下である場合、注目画素を無彩色の画素であるとして、無彩色領域に分類する(ステップS100;Yes→ステップS102)。一方、初期分類部2111は、|R-G|、|G-B|、|B-R|の何れかが閾値TH1を超える場合、注目画素が有彩色の何れの分割領域に属するかを画素値に基づき判定し、判定した分割領域に注目画素を分類する(ステップS100;No→ステップS104)。つまり、初期分類部2111は、注目画素を有彩色の画素とする。
つづいて、初期分類部2111は、ステップS102における処理又はステップS104における処理を実行した後、入力画像に含まれる全ての画素を無彩色又は有彩色の何れかの分割領域に分類したか否かを判定する(ステップS106)。初期分類部2111は、全ての画素を分類した場合、図4に示した処理を終了する(ステップS106;Yes)。一方、初期分類部2111は、全ての画素を分類していない場合、ステップS100に戻る(ステップS106;No→ステップS100)。
[1.2.3.2 L*a*b*色空間]
減色処理に用いる色空間がL*a*b*色空間である場合における初期分類処理について説明する。初期分類部2111は、L*a*b*色空間を立方体で表したとき、立方体のL*軸から一定の範囲内の領域を無彩色(無彩色領域)、L*軸から一定の範囲外の領域を有彩色(有彩色領域)とする。なお、L*軸は、L*a*b*色空間の立方体において、色差(a*b*)平面と垂直に交わり、また、当該色差平面の中心を通る軸であるとする。また、初期分類部2111は、色差(a*b*)平面を9個(無彩色1、有彩色8)のエリアに分割する。
減色処理に用いる色空間がL*a*b*色空間である場合における初期分類処理について説明する。初期分類部2111は、L*a*b*色空間を立方体で表したとき、立方体のL*軸から一定の範囲内の領域を無彩色(無彩色領域)、L*軸から一定の範囲外の領域を有彩色(有彩色領域)とする。なお、L*軸は、L*a*b*色空間の立方体において、色差(a*b*)平面と垂直に交わり、また、当該色差平面の中心を通る軸であるとする。また、初期分類部2111は、色差(a*b*)平面を9個(無彩色1、有彩色8)のエリアに分割する。
例えば、初期分類部2111は、有彩色領域を、L*値毎の色差(a*b*)平面において、中心(L*軸が通る位置)から放射状に8つの領域(無彩色領域は含まない)に分割したそれぞれの領域(エリア)とする。放射状に分割した8つの領域とは、例えば、以下の領域である。
(1)0°≦θ<45°となる領域
(2)45°≦θ<90°となる領域
(3)90°≦θ<135°となる領域
(4)135°≦θ<180°となる領域
(5)180°≦θ<225°となる領域
(6)225°≦θ<270°となる領域
(7)270°≦θ<315°となる領域
(8)315°≦θ<360°となる領域
ここで、角度θは、a*>0におけるa*軸と成す角(反時計回り方向が正)である。
(1)0°≦θ<45°となる領域
(2)45°≦θ<90°となる領域
(3)90°≦θ<135°となる領域
(4)135°≦θ<180°となる領域
(5)180°≦θ<225°となる領域
(6)225°≦θ<270°となる領域
(7)270°≦θ<315°となる領域
(8)315°≦θ<360°となる領域
ここで、角度θは、a*>0におけるa*軸と成す角(反時計回り方向が正)である。
上述の説明に対応する無彩色領域及び有彩色領域を、図6に示す。図6(a)はL*a*b*色空間における各軸の関係を示した図である。図6(a)に示すように、L*軸とa*軸とb*軸とは互いに直交している。そのため、L*軸と垂直な平面は、a*b*平面(色差平面)となる。
図6(b)は、L*が所定の値であるときのa*b*平面を示した図である。ここで、L*軸から一定の範囲内である領域E110は無彩色領域である。一方、図6(b)の(1)から(8)までの領域は有彩色の分割領域である。有彩色の分割領域は、色差平面(a*b*平面)において、中心(L*軸が通る位置)から放射状に8つの領域に分割した領域であって、無彩色領域以外の領域である。図6(b)の領域E111は、有彩色の分割領域のうち、1の分割領域である。
つづいて、図7を参照して、初期分類部2111が実行する初期分類処理の流れを説明する。はじめに、初期分類部2111は、入力画像に含まれる画素から1の画素(注目画素)を選択し、当該注目画素の画素値から、a*値とb*値とを取得する。そして、初期分類部2111は、a*値とb*値とに基づき、注目画素が無彩色であるか否かを判定する。例えば、初期分類部2111は、a*値の絶対値である|a*|と、b*値の絶対値である|b*|とが、何れも所定の閾値TH1以下であるか否かを判定する(ステップS110)。
初期分類部2111は、|a*|と|b*|とが、何れも閾値TH1以下である場合、注目画素を無彩色に分類する(ステップS110;Yes→ステップS102)。一方、初期分類部2111は、注目画素の画素値の|a*|と|b*|との何れかが閾値TH1を超える場合、当該画素が有彩色の何れかの分割領域に属するかを画素値に基づき判定し、判定した分割領域に分類する(ステップS110;No→ステップS104)。
なお、初期分類部2111は、ステップS110において、(a*)2+(b*)2の値(又は当該値の平方根の値)が閾値TH1以下であるときに、注目画素が無彩色であると判定してもよい。
初期分類部2111は、ステップS102における処理又はステップS104における処理を実行した後、入力画像に含まれる全ての画素を無彩色又は有彩色の何れかの分割領域に分類したか否かを判定する(ステップS106)。初期分類部2111は、全ての画素を分類した場合、図7に示した処理を終了し(ステップS106;Yes)、全ての画素を分類していない場合、ステップS110に戻る(ステップS106;No→ステップS110)。
[1.2.3.3 YUV(YCbCr)色空間]
減色処理に用いる色空間がYUV(YCbCr)色空間である場合における初期分類処理について説明する。初期分類部2111は、YCbCr色空間を立方体で表したとき、立方体のY軸から一定の範囲内を無彩色(無彩色領域)、当該範囲外を有彩色(有彩色領域)とする。なお、Y軸は、YCbCr色空間の立方体において、色度平面(UV平面又はCbCr平面)と垂直に交わり、また、当該色度平面の中心を通る軸であるとする。また、初期分類部2111は、色度(UV、CbCr)平面を9個(無彩色1、有彩色8)のエリアに分割する。
減色処理に用いる色空間がYUV(YCbCr)色空間である場合における初期分類処理について説明する。初期分類部2111は、YCbCr色空間を立方体で表したとき、立方体のY軸から一定の範囲内を無彩色(無彩色領域)、当該範囲外を有彩色(有彩色領域)とする。なお、Y軸は、YCbCr色空間の立方体において、色度平面(UV平面又はCbCr平面)と垂直に交わり、また、当該色度平面の中心を通る軸であるとする。また、初期分類部2111は、色度(UV、CbCr)平面を9個(無彩色1、有彩色8)のエリアに分割する。
例えば、初期分類部2111は、有彩色領域を、Y値毎の色度(UV、CbCr)平面において、中心(Y軸が通る位置)から放射状に8つの領域(無彩色領域は含まない)に分割したそれぞれの領域(エリア)としてもよいし、Yの値に応じて定義されるそれぞれの領域(エリア)としてもよい。
ここで、図8を参照して、色度(UV)平面をYの値に応じて定義される領域(エリア)に分割した例について説明する。図8は、YUV(YCbCr)色空間である場合における無彩色領域と有彩色の分割領域とを示した図である。図8の(1)から(4)は、いずれも色度(UV)平面を示した図である。
初期分類部2111は、例えば、図8(a)の(1)に示すように、無彩色領域(無彩色のエリア)をUV空間の中央の矩形領域とする。この場合、無彩色領域は、Uの値とVの値とが、いずれも所定の値の範囲内である領域である。なお、無彩色領域は、Cb値の絶対値である|Cb|と、Cr値の絶対値である|Cr|とが、何れも所定の閾値TH1以下である画素が含まれる領域に対応する。
さらに、初期分類部2111は、Y値に応じて、有彩色領域を8つの領域に分割する。つまり、初期分類部2111は、Yの値に応じて、分割領域毎に、当該範囲に含める画素の画素値として取り得るUの値の範囲とVの値の範囲との範囲を決定する。例えば、Y値が取り得る値の範囲が0から255までである場合、初期分類部2111は、有彩色エリアとして、Y値が0から84までの場合は図8(b)の(2)から(9)までの8つの領域に分割する。同様にして、初期分類部2111は、有彩色エリアを、Y値が85から169までの場合は図11(c)に示すように、Y値が170から255までの場合は図11(d)に示すように分割する。
なお、図8(b)、図8(c)、図8(d)において、(1)は無彩色のエリアを示す符号であり、(2)から(9)は有彩色のエリアを示す符号である。また、図8(b)、図8(c)、図8(d)において、同一符号に分類される画素は、同一の無彩色領域又は有彩色の分割領域に属することを示す。なお、図8(b)から(d)に示した有彩色の分割領域は、YUV色空間でY値が小さい(暗い)ときと、Y値が大きい(明るい)ときと、その中間のときとで、UV色平面での色の分布が異なることを考慮し、同系色が分類されるようにした場合の一例である。したがって、有彩色領域の分割領域は、図8(b)から(d)までに示した領域でなくてもよい。また、有彩色エリアの分割パターンは、上述した3パターン以上のパターンであってもよい。
つづいて、初期分類部2111が実行する初期分類処理の流れを説明する。初期分類部2111が実行する初期分類処理は、図7に示した処理と同様の処理であるが、以下に示す処理に置き換える。
初期分類部2111は、図7のステップS110において、Cb値の絶対値である|Cb|と、Cr値の絶対値である|Cr|とが、何れも所定の閾値TH1以下であるか否かを判定する。初期分類部2111は、|Cb|と|Cr|とが何れも所定の閾値TH1以下であれば注目画素を無彩色として分類し(ステップS110;Yes→ステップS102)、それ以外の場合は有彩色の何れかの分割領域に分類する(ステップS110;No→ステップS104)。なお、初期分類部2111は、ステップS110における処理として、Cb2+Cr2(又はU2+V2)の値(又は当該値の平方根の値)が閾値TH1以下であるときに、注目画素が無彩色であると判定してもよい。
[1.2.3.4 LCH色空間]
減色処理に用いる色空間がLCH色空間である場合における初期分類処理について説明する。初期分類部2111は、LCH色空間を立方体で表したとき、立方体のL軸から一定の範囲内を無彩色(無彩色領域)、当該範囲外を有彩色(有彩色領域)とする。なお、L軸は、LCH色空間の立方体において、彩度-色相(CH)平面と垂直に交わり、また、彩度・色相の平面の中心を通る軸であるとする。また、初期分類部2111は、彩度-色相(CH)平面を9個(無彩色1、有彩色8)のエリアに分割する。
減色処理に用いる色空間がLCH色空間である場合における初期分類処理について説明する。初期分類部2111は、LCH色空間を立方体で表したとき、立方体のL軸から一定の範囲内を無彩色(無彩色領域)、当該範囲外を有彩色(有彩色領域)とする。なお、L軸は、LCH色空間の立方体において、彩度-色相(CH)平面と垂直に交わり、また、彩度・色相の平面の中心を通る軸であるとする。また、初期分類部2111は、彩度-色相(CH)平面を9個(無彩色1、有彩色8)のエリアに分割する。
例えば、初期分類部2111は、有彩色領域を、L値毎の彩度-色相(CH)平面において、中心(L軸が通る位置)から放射状に8つの領域(無彩色領域は含まない)に分割したそれぞれの領域(エリア)とする。
つづいて、初期分類部2111が実行する初期分類処理の流れを説明する。初期分類部2111が実行する初期分類処理は、図7に示した処理と同様の処理であるが、以下に示す処理に置き換える。
初期分類部2111は、図7のステップS110において、C値が閾値TH1以下であるか否かを判定する。初期分類部2111は、C値が所定の閾値TH1以下であれば注目画素を無彩色として分類し(ステップS110;Yes→ステップS102)、それ以外の場合は有彩色の何れかの分割領域に分類する(ステップS110;No→ステップS104)。
このように、初期分類部2111は、初期分類処理を実行することで、減色処理に用いる色空間がRGB色空間以外の色空間であっても、入力画像に含まれる全ての画素を、1の無彩色領域と、有彩色の8の分割領域との各領域に割り振ることができる。初期分類部2111は、領域毎に、領域に含まれる画素を出力する。
[1.2.4 領域分割処理]
図9を参照して、領域分割処理の流れを説明する。領域分割処理は、領域分割部2112によって実行される。領域分割処理は、初期分類処理において画素が分類された領域(1の無彩色領域と有彩色の8の分割領域)を分割する処理である。領域分割処理は、メディアンカット法による減色処理における領域を分割する処理に対応する。
図9を参照して、領域分割処理の流れを説明する。領域分割処理は、領域分割部2112によって実行される。領域分割処理は、初期分類処理において画素が分類された領域(1の無彩色領域と有彩色の8の分割領域)を分割する処理である。領域分割処理は、メディアンカット法による減色処理における領域を分割する処理に対応する。
はじめに、領域分割部2112は、初期分類処理によって画素が分類された各領域において、注目している領域に含まれる画素の画素値から、色空間におけるそれぞれの軸に対する最大値と最小値を算出する(ステップS120)。
例えば、領域分割部2112は、1の無彩色領域と有彩色の8の分割領域とから、1の領域を選択する。さらに、領域分割部2112は、選択した領域に含まれる画素の画素値に基づき、色空間の軸毎に最大の値と最小の値を取得する。例えば、領域分割部2112は、減色処理に用いられる色空間がRGB色空間であれば、選択した領域に含まれる全ての画素のR値、G値、B値を取得し、R値の最大値と最小値、G値の最大値と最小値、B値の最大値と最小値を算出する。
領域分割部2112は、減色処理に用いられる色空間がL*a*b*色空間であれば、各領域に含まれる画素に基づき、L*値、a*値、b*値の最大値と最小値をそれぞれ算出する。同様にして、領域分割部2112は、減色処理に用いられる色空間がYCbCr色空間であれば、Y値、Cb値、Cr値の最大値と最小値をそれぞれ算出し、減色処理に用いられる色空間がLCH色空間であれば、L値、C値、H値の最大値と最小値をそれぞれ算出する。
つづいて、領域分割部2112は、画素が分類された各領域に対応する直方体として、ステップS120において算出した軸毎の最大値及び最小値を頂点とした直方体を設定する(ステップS122)。例えば、ある領域に含まれる画素の画素値について、L*の最小値が20、L*の最大値が200、a*の最小値が20、a*の最大値が50、b*の最小値が5、b*の最大値が40であれば、領域分割部2112は、L*軸に対応する辺の長さが180、a*軸に対応する辺の長さが30、b*軸に対応する辺の長さが35である直方体を設定する。なお、領域分割部2112は、設定した直方体の情報を、記憶部60に一時的に記憶されてもよい。
なお、領域分割部2112は、無彩色領域については、無彩色領域に含まれる画素の輝度や明度を画素毎に求め、求めた輝度や明度の最大値及び最小値からなる辺と、長さ1の2つの辺とにより構成される直方体を設定してもよい。このようにすることで、領域分割部2112は、無彩色領域と対応する直方体として、輝度や明度のみを考慮する直方体を設定することができる。
また、領域分割部2112は、直方体を設定するとき、人間の視覚特性に応じて、軸に重み付けをして、直方体の辺の長さを以下のように拡縮させてもよい。
(1)領域分割部2112は、色空間がRGB色空間である場合、R軸及びG軸に対応する直方体の辺の長さを1.2倍にしたり、B軸に対応する直方体の辺の長さを0.8倍にしたりする。
(2)領域分割部2112は、色空間がYCbCr色空間である場合、Cb<0である直方体についてCr軸に対応する直方体の辺の長さを1.2倍にしたり、Y>0かつCb>0である直方体については、Cr軸に対応する直方体の辺の長さを0.8倍にしたりする。
(3)領域分割部2112は、色空間がL*a*b*色空間である場合、a*軸に対応する直方体の辺の長さを1.2倍にしたり、L*軸やb*軸に対応する直方体の辺の長さを0.8倍にしたりする。
(1)領域分割部2112は、色空間がRGB色空間である場合、R軸及びG軸に対応する直方体の辺の長さを1.2倍にしたり、B軸に対応する直方体の辺の長さを0.8倍にしたりする。
(2)領域分割部2112は、色空間がYCbCr色空間である場合、Cb<0である直方体についてCr軸に対応する直方体の辺の長さを1.2倍にしたり、Y>0かつCb>0である直方体については、Cr軸に対応する直方体の辺の長さを0.8倍にしたりする。
(3)領域分割部2112は、色空間がL*a*b*色空間である場合、a*軸に対応する直方体の辺の長さを1.2倍にしたり、L*軸やb*軸に対応する直方体の辺の長さを0.8倍にしたりする。
また、領域分割部2112は、各軸において取り得る値の範囲が揃ってない場合、各軸において取り得る値の範囲が揃うように、直方体の辺の長さを拡縮させたり、画素値に所定の演算を行い、適切な値に変換したりしてもよい。
つづいて、領域分割部2112は、ステップS122において設定した直方体から、最も長い辺、つまり、ステップS120において算出した最大値と最小値との差が最大である直方体を選択する(ステップS124)。なお、減色数が無彩色の代表色の数と有彩色の代表色の数とに対してそれぞれ定められている場合で、無彩色又は有彩色の何れか一方の領域を減色数に定めた数の領域に分割しているとき、領域分割部2112は、他方の領域に対応する直方体から1の直方体を選択する。
つづいて、領域分割部2112は、ステップS124において選択した直方体(以下、選択直方体という)を分割する(ステップS126)。例えば、領域分割部2112は、選択直方体を分割する処理として、以下のいずれかの処理を実行する。
(1)領域分割部2112は、選択直方体における最も長い辺に対して(最大値-最小値)/2となる中間値を算出し、当該中央値の位置で、選択直方体を分割する。
(2)領域分割部2112は、選択直方体において、最も長い辺が属する軸(例えば、R軸)を求める。つづいて、領域分割部2112は、選択直方体に含まれる画素毎に、選択直方体における最も長い辺が属する軸の画素値を取得し、ヒストグラム(例えば、R値のヒストグラム)を生成する。領域分割部2112は、ヒストグラムの最小値のビン(区間)から順にビンに含まれる画素値の数を累積する。領域分割部2112は、選択直方体に属する画素数の1/2にあたる画素が含まれるビンの位置を求め、当該位置で、選択直方体を分割する。
(1)領域分割部2112は、選択直方体における最も長い辺に対して(最大値-最小値)/2となる中間値を算出し、当該中央値の位置で、選択直方体を分割する。
(2)領域分割部2112は、選択直方体において、最も長い辺が属する軸(例えば、R軸)を求める。つづいて、領域分割部2112は、選択直方体に含まれる画素毎に、選択直方体における最も長い辺が属する軸の画素値を取得し、ヒストグラム(例えば、R値のヒストグラム)を生成する。領域分割部2112は、ヒストグラムの最小値のビン(区間)から順にビンに含まれる画素値の数を累積する。領域分割部2112は、選択直方体に属する画素数の1/2にあたる画素が含まれるビンの位置を求め、当該位置で、選択直方体を分割する。
ステップS126の処理が実行されることにより、ステップS122において設定された直方体の数が1増える。つづいて、領域分割部2112は、直方体の数が減色数と一致するか否かを判定する(ステップS128)。
領域分割部2112は、領域の数が減色数の数と一致した場合、図9に示した処理を終了する(ステップS128;Yes)。一方、領域分割部2112は、領域の数が減色数の数と一致しない場合、ステップS120に戻る(ステップS128;No→ステップS120)。
このように、領域分割部2112は、ステップS120からステップS126までの処理を繰り返して実行することで、直方体の数が減色数と一致するまで、直方体を分割する。これにより、減色処理に用いられる色空間のうち、無彩色領域は、無彩色の代表色の数(第1所定数)の領域に分割される。また、有彩色領域は、有彩色の代表色の数(第2所定数)の領域に分割される。領域分割部2112は、分割した領域と、各領域に含まれる画素を出力する。
[1.2.5 第1代表色算出処理]
図10を参照して、第1代表色算出処理の流れを説明する。第1代表色算出処理は、第1代表色算出部2113によって実行される。第1代表色算出処理は、メディアンカット法による減色処理における、代表色を算出する処理に対応する。
図10を参照して、第1代表色算出処理の流れを説明する。第1代表色算出処理は、第1代表色算出部2113によって実行される。第1代表色算出処理は、メディアンカット法による減色処理における、代表色を算出する処理に対応する。
はじめに、第1代表色算出部2113は、領域分割処理によって第1所定数の領域に分割された無彩色領域及び第2所定数の領域に有彩色領域から1の領域を選択し、選択した領域の代表色を算出する(ステップS140)。例えば、第1代表色算出部2113は、選択した領域に対応する直方体に属する画素の画素値の単純平均や重み付き平均を算出することで、代表色を算出する。さらに、第1代表色算出部2113は、算出した代表色に対してインデックス値(例えば、1からの連番)を割り当てて、インデックス情報を生成する。このようにして、第1代表色算出部2113は、無彩色領域において、第1所定数の領域に分割されたそれぞれの領域から1色ずつ代表色を算出することにより、第1所定数の代表色を算出する。同様にして、第1代表色算出部2113は、有彩色領域において、第2所定数の領域に分割されたそれぞれの領域から1色ずつ代表色を算出することで、第2所定数の代表色を算出する。
第1代表色算出部2113は、領域分割処理によって第1所定数の領域に分割された無彩色領域及び第2所定数の領域に有彩色領域の全ての領域から代表色を算出した場合、図10に示した処理を終了し(ステップS142;Yes)、それ以外の場合はステップS140に戻る(ステップS142;No→ステップS140)。第1代表色算出部2113は、代表色とインデックス値とを対応付けたインデックス情報を出力する。
[1.2.6 出力画像生成処理]
図11を参照して、出力画像生成処理の流れを説明する。出力画像生成処理は、出力画像生成部2114によって実行される。
図11を参照して、出力画像生成処理の流れを説明する。出力画像生成処理は、出力画像生成部2114によって実行される。
はじめに、出力画像生成部2114は、入力画像から1の画素(注目画素)を選択する。そして、出力画像生成部2114が、第1所定数の代表色及び第2所定数の代表色のうち、注目画素の画素値と最も色差が小さい(最も近い)画素値となる代表色を選択する(ステップS160)。
つづいて、出力画像生成部2114は、注目画素の画素値を、選択した代表色に対応するインデックス値に置き換える(ステップS162)。これにより、出力画像生成部2114は、注目画素を当該注目画素と色味が最も近い代表色の画素に置き換える。出力画像生成部2114は、入力画像の全ての画素をインデックス値に置き換える処理が完了した場合、図8に示した処理を終了し(ステップS164;Yes)、それ以外の場合はステップS160に戻る(ステップS164;No→ステップS160)。
なお、出力画像生成部2114は、例えば、インデックス値とインデックス情報とから、入力画像の各画素の色を代表色に置き換えた画像を出力する。なお、出力画像生成部2114は、インデックス値に置き換えた入力画像とインデックス情報とを出力してもよい。この場合、例えば、圧縮処理部213は、出力画像生成部2114から出力されたインデックス値とインデックス情報とから、圧縮データを生成する。
[1.3 動作例]
図12を参照して、本実施形態における動作例を説明する。図12(a)は、無彩色領域及び有彩色領域に対応する直方体の各軸における最大値と最小値の例を示す表である。図12は、減色処理にL*a*b*色空間が用いられた場合の例を示した図である。
図12を参照して、本実施形態における動作例を説明する。図12(a)は、無彩色領域及び有彩色領域に対応する直方体の各軸における最大値と最小値の例を示す表である。図12は、減色処理にL*a*b*色空間が用いられた場合の例を示した図である。
図12のD140は、無彩色領域の直方体において、輝度の軸の最大値と最小値及び最大値と最小値との差の絶対値(差分絶対値)を示している。また、図12のD142は、1番目の有彩色の分割領域に対応する直方体におけるL*軸の最大値と最小値と差分絶対値を示している。同様にして、図12のD144は、1番目の有彩色の分割領域に対応する直方体におけるa*軸の最大値と最小値と差分絶対値を、D146は、1番目の有彩色の分割領域に対応する直方体におけるb*軸の最大値と最小値と差分絶対値をそれぞれ示している。なお、2番目から8番目の1番目の有彩色の分割領域に対応する直方体に対しても、L*軸、a*軸、b*軸毎に、最大値と最小値と差分絶対値が算出される。
直方体を分割する処理において、差分絶対値が大きい辺が選択される。例えば、図12では、D142における差分絶対値が他の差分絶対値と比べて大きい値である。この場合、1番目の有彩色の分割領域に対応する直方体のL*軸に対応する辺が選択され、当該辺上の所定の位置において、1番目の有彩色の分割領域に対応する直方体が分割される。このようにして、直方体の分割が繰り返し実行され、分割された無彩色領域と有彩色領域とから、それぞれ代表色が算出される。
図12(b)から図12(d)は、メディアンカット法の動作例を示した図である。なお、図12(b)から図12(d)までにおいては、減色処理に用いる色空間はRGB色空間であるとする。
図12(b)は、画素が分類された領域に対応する直方体のうち、差分絶対値が最大の直方体を示した図である。P150は、当該直方体に含まれる画素である。ここで、入力画像に含まれる画素は、無彩色/有彩色に分類されているため、直方体は、無彩色又は無彩色に近い画素が含むか、有彩色の画素を含むかの何れかである。
ここで、図12(b)において、差分最大値が最も大きい辺は、G軸に対応する辺である。図12(c)は、G軸に対応する辺上の分割位置E160を示した図である。分割位置E160は、例えば、G軸に対応する辺において、(最大値-最小値)/2となる位置(中央値の位置)である。分割位置E160の位置において、直方体が分割される。分割後の領域に含まれる画素に対して、色空間におけるそれぞれの軸に対する最大値と最小値が算出され、軸毎の最大値及び最小値によって構成される色空間内の直方体を設定されることで、図12(c)の直方体C160及び直方体C161が設定される。
このような処理を繰り返すことで、直方体を分割する。直方体の数が減色数となったら、それぞれの直方体から、代表色が算出される。例えば、図12(d)に示すように、直方体C170から代表色170が、直方体C171から代表色171が、直方体C172から代表色172が、直方体C173から代表色173が、それぞれ算出される。ここで、既に説明したように、分割前の直方体は、無彩色又は無彩色に近い画素が含むか、有彩色の画素を含むかの何れかである。そのため、例えば、分割前の直方体が有彩色の画素を含む直方体であれば、代表色は、無彩色又は無彩色に近い画素以外の画素によって算出されるため、当該代表色は無彩色の画素による彩度の低下を抑えられる。
このように、本実施形態によれば、初期分類処理により、入力画像に含まれる画素を有彩色と無彩色とに分類した上で、メディアンカット法を用いた代表色の算出を行うことができる。この結果、本実施形態では、領域分割処理において、無彩色と有彩色とをそれぞれ独立に分割することができ、1つの領域の中に無彩色と有彩色とが混在することが避けられる。無彩色と有彩色とが混在していない領域から代表色を算出することで、有彩色が無彩色によって彩度が落ちてしまう問題が回避される。
また、本実施形態によれば、初期分類処理により、入力画像に含まれる画素が、極力同じ色が属する領域に分類されやすくなるため、適切な代表色を算出することができる。この結果、本実施形態では、画質の良い減色結果を得ることができる。
また、本実施形態によれば、無彩色の画素が含まれない有彩色領域が複数の分割領域に分割されるため、色味のある色が代表色として残りやすく(算出されやすく)なる。
[2.第2実施形態]
つづいて、第2実施形態について説明する。第2実施形態では、初期分類処理において画素を分類する領域の数を、第1実施形態とは異なる数にする実施形態である。
つづいて、第2実施形態について説明する。第2実施形態では、初期分類処理において画素を分類する領域の数を、第1実施形態とは異なる数にする実施形態である。
第1実施形態では、初期分類部2111は、減色処理に用いられる色空間を、1の無彩色領域と、有彩色の8の分割領域とに分割した。しかし、初期分類部2111は、色空間を、1の無彩色領域及び有彩色の8の分割領域以外の領域に分割してもよい。
例えば、無彩色領域は2以上の分割領域を含めて構成されてもよい。無彩色の分割領域の数が4である場合、初期分類部2111は、例えば、無彩色領域を以下の領域に分割する。
(1)明度(輝度)が0%以上25%未満の領域
(2)明度(輝度)が25%以上50%未満の領域
(3)明度(輝度)が50%以上75%未満の領域
(4)明度(輝度)が75%以上の領域
(1)明度(輝度)が0%以上25%未満の領域
(2)明度(輝度)が25%以上50%未満の領域
(3)明度(輝度)が50%以上75%未満の領域
(4)明度(輝度)が75%以上の領域
この場合、無彩色には、4の分割領域が設定されることとなる。なお、上記の説明において、輝度が0%であるとは注目画素の色が真黒である場合であり、輝度が100%であるとは注目画素の色が真白である場合である。例えば、RGB色空間において、R値、G値、B値が取り得る値を0から255までとした場合、輝度が0%の画素は、R値、G値、B値のいずれもが0である画素である。一方、輝度が100%の画素は、R値、G値、B値のいずれもが255である画素である。
また、初期分類処理において画素が分類される無彩色領域の数が2以上である場合、各領域の範囲は、以下のように、明度(輝度)を均等に分割した範囲でなくてもよい。
(1)明度(輝度)が0%以上15%未満の領域
(2)明度(輝度)が15%以上50%未満の領域
(3)明度(輝度)が50%以上85%未満の領域
(4)明度(輝度)が85%以上の領域
(1)明度(輝度)が0%以上15%未満の領域
(2)明度(輝度)が15%以上50%未満の領域
(3)明度(輝度)が50%以上85%未満の領域
(4)明度(輝度)が85%以上の領域
同様にして、有彩色領域の数は、1以上の数であればよい。例えば、有彩色領域の数は、16であってもよいし、1であってもよい。また、有彩色の分割領域の範囲は、第1実施形態とは異なる範囲であってもよい。例えば、減色処理に用いられる色空間がL*a*b*色空間、YCbCr色空間、LCH色空間である場合における有彩色の分割領域の角度が、第1実施形態における角度と異なってもよい。
無彩色の分割領域の数、有彩色の分割領域の数、減色数、分割領域の範囲は、ユーザによって設定されてもよいし、予め設定されてもよい。また、無彩色の分割領域の数、有彩色の分割領域の数、減色数、分割領域の範囲は、原稿の種類やカラーモードによって決定されてもよい。この場合、記憶部60には、原稿の種類及び出力する画像データのカラーモードの組み合わせと減色数、無彩色領域の数、有彩色領域を放射状に分割する際における分割角度とを対応付けた設定テーブルが記憶される。このような設定テーブルの例を、図13に示す。
例えば、図13は、原稿のモード(原稿種別)とカラーモード毎に、減色数、無彩色数(無彩色の分割領域の数)、有彩色を放射状の分割領域に分類する場合における平面(例えば、a*b*平面)の角度(分割角度)、閾値TH1を対応付けた設定テーブルである。この場合、
図13のD200は、原稿種別が地図であり、カラーモードがカラーである場合に、減色数が16、無彩色の無彩色数が5、分割角度が「30.75,120,165,210,255,300,345」、閾値TH1が5であることを示す。この場合、初期分類処理において、1の無彩色領域と有彩色の8つの分割領域が設定され、領域分割処理において、無彩色領域を5の領域に、有彩色領域を11の領域に分割することで、16の代表色を算出することとなる。
ここで、分割角度の情報に基づき、初期分類処理において画素が分類される有彩色の分割領域は、以下の8つの領域となる。
(1)30°≦θ<75°となる領域
(2)75°≦θ<120°となる領域
(3)120°≦θ<165°となる領域
(4)165°≦θ<210°となる領域
(5)210°≦θ<255°となる領域
(6)255°≦θ<300°となる領域
(7)300°≦θ<345°となる領域
(8)345°≦θ<390°となる領域(0°≦θ<30°及び345°≦θ<360°となる領域)
(1)30°≦θ<75°となる領域
(2)75°≦θ<120°となる領域
(3)120°≦θ<165°となる領域
(4)165°≦θ<210°となる領域
(5)210°≦θ<255°となる領域
(6)255°≦θ<300°となる領域
(7)300°≦θ<345°となる領域
(8)345°≦θ<390°となる領域(0°≦θ<30°及び345°≦θ<360°となる領域)
この場合、初期分類部2111は、初期分類処理において、入力画像の画素が分類される領域を、無彩色の分割領域を1、有彩色の分割領域を8として、画素の分類を行う。また、初期分類部2111は、初期分類処理において、画素のa*の値の絶対値とb*の値の絶対値とが、何れも5以下である場合、当該画素は無彩色の画素として分類する。
さらに、領域分割部2112は、領域分割処理において、無彩色領域を5の領域に、有彩色領域を11の領域に分割するまで、領域が分割する処理を繰り返す。この結果、無彩色領域及び有彩色領域は合計16の領域に分割される。さらに、第1代表色算出処理及び出力画像生成処理が実行されることにより、原稿種別が地図でありカラーモードがカラーである場合、入力画像に含まれる画素は、16の代表色の何れかの色に置き換えられる。
なお、図13に示した設定テーブルには、無彩色の分割領域の範囲が含まれていてもよい。この場合、初期分類処理において、設定テーブルに記憶された情報に基づいて、無彩色の分類領域が設定されることとなる。
このように、本実施形態によれば、初期分類処理における無彩色の分割領域の数や範囲、有彩色の分割領域の数や範囲を柔軟に設定することが可能となる。
[3.第3実施形態]
つづいて、第3実施形態について説明する。第3実施形態はK-means法を用いて代表色を算出する実施形態である。本実施形態は、第1実施形態の図3を図14に置き換えたものである。なお、同一の機能部には同一の符号を付し、説明については省略する。
つづいて、第3実施形態について説明する。第3実施形態はK-means法を用いて代表色を算出する実施形態である。本実施形態は、第1実施形態の図3を図14に置き換えたものである。なお、同一の機能部には同一の符号を付し、説明については省略する。
[3.1 色数変換処理部の処理の概要]
本実施形態では、色数変換処理部211は、入力されたカラー画像(入力画像)に対し、画像の縮小処理を行った後、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、無彩色及び有彩色を条件に従い複数の領域に分割する。色数変換処理部211は、分割した各領域に、入力画像の各画素を振り分ける(分類する)。色数変換処理部211は、無彩色/有彩色の領域毎に、K-means法で代表色を求めた後、入力画像の各画素に対して一番近い代表色のインデックス値を割り当てることで、入力画像を減色した減色画像を生成する。
本実施形態では、色数変換処理部211は、入力されたカラー画像(入力画像)に対し、画像の縮小処理を行った後、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、無彩色及び有彩色を条件に従い複数の領域に分割する。色数変換処理部211は、分割した各領域に、入力画像の各画素を振り分ける(分類する)。色数変換処理部211は、無彩色/有彩色の領域毎に、K-means法で代表色を求めた後、入力画像の各画素に対して一番近い代表色のインデックス値を割り当てることで、入力画像を減色した減色画像を生成する。
[3.2 色数変換処理部の構成]
図14を参照して、本実施形態における色数変換処理部211の構成について説明する。本実施形態における色数変換処理部211は、減色処理に用いる色空間に応じて、図14(a)又は図14(b)の何れかに示した機能部を備えて構成される。
(1)RGB色空間が用いられる場合
色数変換処理部211は、図14(a)に示すように、縮小処理部2115、初期分類部2111、第2代表色算出部2116、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図14(b)に示すように、縮小処理部2115、色変換部2110、初期分類部2111、第2代表色算出部2116、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
図14を参照して、本実施形態における色数変換処理部211の構成について説明する。本実施形態における色数変換処理部211は、減色処理に用いる色空間に応じて、図14(a)又は図14(b)の何れかに示した機能部を備えて構成される。
(1)RGB色空間が用いられる場合
色数変換処理部211は、図14(a)に示すように、縮小処理部2115、初期分類部2111、第2代表色算出部2116、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図14(b)に示すように、縮小処理部2115、色変換部2110、初期分類部2111、第2代表色算出部2116、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
色変換部2110、初期分類部2111、出力画像生成部2114は、第1実施形態と同様に、それぞれ、色変換処理、初期分類処理、出力画像生成処理を実行する。
縮小処理部2115は、入力画像(RGB信号)を縮小する縮小処理を行う。画像を縮小する方法は、既存の技術を用いればよい。画像の縮小処理を実行することにより、K-means法の処理量を削減することができる。
第2代表色算出部2116は、K-means法を用いて代表色を算出する処理である第2代表色算出処理を実行する。第2代表色算出処理については後述する。
フィルタ処理部2117は、入力画像に対してエッジ保存型の平滑化フィルタ(バイラテラルフィルタ)を適用する処理(以下、フィルタ処理と記載)を実行することで、入力画像内の平坦部(略同一の色が連続する領域)を極力均一化し、フィルタ処理が実行された入力画像を出力する。
ここで、カラー画像入力装置10によって読み取られた原稿において、裏写りのない色下地領域であってもスキャン位置によって生じた色ムラ(濃度ムラ)や輝度ムラが生じ、画素値が均一でない入力画像が生成される場合がある。この場合、そのまま入力画像に代表色を割り当てると、本来割り当てられるべき代表色とは異なる代表色が割り当てられることとなり、結果として、画質の劣化や圧縮効率の低下によるファイルサイズの増加が生じてしまう。そこで、色数変換処理部211は、フィルタ処理部2117を介して、入力画像に対してフィルタ処理を実行することで、色下地領域といった、略同一の色が連続して続く領域の画素における画素値を平坦化させる。この結果、色数変換処理部211は、出力画像生成部2114によって実行される出力画像生成処理において、色下地領域に対して、同一の代表色が割り当てられる可能性を高めることで、出力画像の画質の向上と、圧縮効率の向上とを実現させる。
色数変換処理部211は、出力階調補正部210から出力されたRGB信号(入力画像)に対して縮小処理を実行することで、入力画像の縮小画像を取得する。次に、色数変換処理部211は、減色処理に用いる色空間がRGB色空間以外の色空間である場合、入力画像の縮小画像の色空間を、色変換部2110を介して変換し、初期分類部2111に出力する。なお、色数変換処理部211は、減色処理に用いる色空間がRGB色空間であれば、入力画像の縮小画像を初期分類部2111に出力する。そして、色数変換処理部211は、初期分類処理と第2代表色算出処理とを実行することで代表色を取得する。また、色数変換処理部211は、入力画像に対してフィルタ処理を実行し、フィルタ処理を実行した後の入力画像と、取得した代表色とを用いて出力画像生成処理を実行することで、入力画像の減色画像を生成する。
なお、縮小処理部2115、第2代表色算出部2116、フィルタ処理部2117の一部又は全ては、制御部70によって実行されるプログラムとして実現されてもよいし、回路等のハードウェアとして実現されてもよい。
[3.3 初期分類処理]
本実施形態では、初期分類部2111は、初期分類処理において画素を分類する領域を、無彩色をM領域(M>2、第1所定数)、有彩色をN領域(N>5、第2所定数)にそれぞれ分割した状態にする。なお、初期分類部2111は、無彩色の分割領域の数と有彩色の分割領域の数は、減色数は、例えば、手動原稿モード(ユーザによって設定された原稿種別)又は原稿種別判定部203の判定結果である自動原稿判別結果に応じて決定される。
本実施形態では、初期分類部2111は、初期分類処理において画素を分類する領域を、無彩色をM領域(M>2、第1所定数)、有彩色をN領域(N>5、第2所定数)にそれぞれ分割した状態にする。なお、初期分類部2111は、無彩色の分割領域の数と有彩色の分割領域の数は、減色数は、例えば、手動原稿モード(ユーザによって設定された原稿種別)又は原稿種別判定部203の判定結果である自動原稿判別結果に応じて決定される。
さらに、初期分類部2111は、図4や図5に示した初期分類処理を実行する。ここで、初期分類部2111は、ステップS102の処理として、注目画素を無彩色のどの分割領域に属するかを判定して分類する処理を実行する。このようにすることで、初期分類部2111は、入力画像に含まれる画素を、無彩色におけるM個の分割領域と有彩色におけるN個の分割領域の何れかの領域に分類することができる。
ここで、領域を分割する方法について説明する。初期分類部2111は、減色数が「無彩色=4、有彩色=16」である場合、無彩色領域を4領域に分割し、有彩色領域を16領域に分割する。初期分類部2111は、減色処理に用いる色空間の種類に応じて、以下に示すように、色空間を分割する。
[3.3.1 RGB色空間]
初期分類部2111は、無彩色領域を、G値(0から255まで)の間を、等間隔にM個の領域に分割する。例えば、M=4であれば、G値が0から63までを取る領域、G値が64から127までを取る領域、G値が128から191までを取る領域、G値が192から255までを取る領域とする。
初期分類部2111は、無彩色領域を、G値(0から255まで)の間を、等間隔にM個の領域に分割する。例えば、M=4であれば、G値が0から63までを取る領域、G値が64から127までを取る領域、G値が128から191までを取る領域、G値が192から255までを取る領域とする。
また、初期分類部2111は、有彩色領域をRGB立方体における8の頂点から、均等に8つの立方体の領域(分割領域)に分割する。なお、当該立方体の領域は、無彩色領域を含まない領域である。また、当該立方体の領域は、他の有彩色の分割領域との重なりを許容する。さらに、初期分類部2111は、予め定められた順番で、8つの立方体を有彩色の色数まで順番に分割する。
上述の説明に対応する具体例を図15(a)から図15(c)に示す。図15(a)は、RGB立方体であるC300を示した図である。図15(a)の領域E300は、無彩色領域である。また、図15(a)の領域E301から領域E309は、有彩色領域をC300の8の頂点から、均等に8つの立方体に分割したそれぞれの領域である。具体的には、有彩色の8の分割領域は、W領域(領域E307)、Y領域(領域E303)、M領域(領域E306)、C領域(領域E308)、R領域(領域E302)、G領域(領域E304)、B領域(領域E305)、K領域(領域E301)である。
初期分類部2111は、有彩色領域を均等に分割した8の領域に対して、W領域、Y領域、M領域、C領域、R領域、G領域、B領域、K領域の順に分割の優先順位を設定し、優先順位が高い立方体の領域から順に分割する。なお、優先順位は、上述した順番に限られない。初期分類部2111は、立方体の領域を、図15(b)に示すように、斜めに分割してもよいし、図15(c)に示すように、縦に分割してもよい。例えば、初期分類部2111は、W領域を縦又は斜めの方向に2つの領域に分割したら、次に、Y領域を縦又は斜めの方向に2つの領域に分割する。このようにして、初期分類部2111は、領域の数がNになるまで領域の分割を行う。
なお、上述の方法では、初期分類部2111は、有彩色の8の分割領域を16の分割領域にすることができる。なお、有彩色の減色数が17以上である場合、初期分類部2111は、16の分割領域に対して優先順位を設け、優先順位が高い領域から、所定の方法により分割する。
[3.3.2 L*a*b*色空間、YUV(YCbCr)色空間、LCH色空間]
初期分類部2111は、無彩色領域を、輝度値/明度値として取り得る値(L*値、Y値、L値)の範囲を、等間隔にM個の領域に分割する。
初期分類部2111は、無彩色領域を、輝度値/明度値として取り得る値(L*値、Y値、L値)の範囲を、等間隔にM個の領域に分割する。
また、初期分類部2111は、a*b*平面、CbCr平面、CH平面において、中心から放射状に8つの領域(分割領域)に分割する。なお、当該放射状の領域は、無彩色領域を含まない領域である。また、当該放射状の領域は、他の有彩色の分割領域との重なりを許容する。さらに、予め定められた優先順位に沿って、当該8つの放射状の領域を、領域の数がNになるまで分割する。
上述の説明に対応する具体例を図15(d)に示す。図15(d)における色空間は、L*a*b*色空間とする。この場合、初期分類部2111は、図15(d)の(1)から(8)の順に優先順位を設定し、優先順位が高い領域から順に、分割(例えば、領域の大きさを等分)する。例えば、初期分類部2111は、図15(d)の(1)の領域を、領域の大きさが半分となる位置で分割し、次に、(2)の領域を、領域の大きさが半分となる位置で分割する。このようにして、初期分類部2111は、領域の数がNになるまで領域の分割を行う。なお、優先順位は、図15(d)に示した順番に限られない。また、減色処理に用いる色空間の場合であっても、初期分類部2111は、上述した説明と同様に、所定の方法により有彩色の分割領域に優先順位を設定し、当該分割領域を優先順位が高い領域から順に分割を行う。
なお、上述の方法では、初期分類部2111は、有彩色の8の分割領域を16の分割領域にすることができる。なお、有彩色の減色数が17以上である場合、初期分類部2111は、16の分割領域に対して優先順位を設け、優先順位が高い領域から、所定の方法により分割する。
[3.4 第2代表色算出処理]
図16を参照して、第2代表色算出処理の流れを説明する。第2代表色算出処理は、第2代表色算出部2116によって実行される。
図16を参照して、第2代表色算出処理の流れを説明する。第2代表色算出処理は、第2代表色算出部2116によって実行される。
はじめに、第2代表色算出部2116は、初期分類処理によって画素が分類された各領域から、初期代表色を算出する(ステップS300)。例えば、第2代表色算出部2116は、図9のステップS120からステップS124までと同様の処理を実行することで、初期分類処理によって画素が分類された領域毎に対応する直方体を設定する。そして、第2代表色算出部2116は、設定した直方体毎に、直方体の中心位置に対応する色や、直方体に属する画素の画素値の単純平均や重み付け平均を行うことで求められる色を初期代表色として算出する。
ここで、本実施形態では、初期分類処理において、減色処理に用いられる色空間が、無彩色領域において第1所定数であるM個の領域に分割され、有彩色領域において第2所定数であるN個の領域に分割されている。したがって、第2代表色算出部2116は、M個の領域とN個の領域とから代表色を算出することにより、無彩色領域からM種類(第1所定数)の初期代表色を、有彩色領域からN種類(第2所定数)の初期代表色を算出する。例えば、減色数が「無彩色=4、有彩色=16」である場合、第2代表色算出部は、ステップS300において、無彩色領域に分類された画素から4色の初期代表色を算出し、有彩色領域に分類された画素から16色の初期代表色を算出する。
つづいて、第2代表色算出部2116は、入力画像から1の画素(注目画素)を選択し、注目画素の画素値と複数の代表色の画素値とを比較し、注目画素を一番画素値が近い代表色に基づくグループに分類(クラスタリング)する(ステップS302)。ここで、第2代表色算出部2116は、無彩色の画素によって無彩色のグループが構成されるように、有彩色の画素によって有彩色のグループが構成されるようにする。具体的には、第2代表色算出部2116は、無彩色領域に含まれる画素の画素値と、無彩色領域から算出された複数の代表色の画素値とを比較することで、無彩色領域に含まれる画素を無彩色領域から算出された代表色に基づく何れかのグループに分類する。同様に、第2代表色算出部2116は、有彩色領域に含まれる画素の画素値と、有彩色領域から算出された複数の代表色の画素値とを比較することで、有彩色領域に含まれる画素を有彩色領域から算出された代表色に基づく何れかのグループに分類する。つまり、第2代表色算出部2116は、無彩色領域の画素と、有彩色領域の画素とが、必ず別のグループに含まれるようにする。
第2代表色算出部2116は、入力画像に含まれる全ての画素を分類したか否かを判定し(ステップS304)、全ての画素を分類していない場合は、ステップS302へ戻る(ステップS304;No→ステップS302)。
つづいて、第2代表色算出部2116は、入力画像に含まれる全ての画素を、何れかの代表色に基づくグループに分類したら、グループ毎に、新たな代表色を算出する(ステップS304;Yes→ステップS306)。代表色の算出方法は、ステップS300と同様の方法である。
つづいて、第2代表色算出部2116は、ステップS306における処理を規定回数繰り返し実行する処理が終了したか否かを判定する(ステップS308)。第2代表色算出部2116は、ステップS306における処理を規定回数実行していない場合は、ステップS302に戻る(ステップS308;No→ステップS302)。一方、第2代表色算出部2116は、ステップS306における処理を規定回数実行した場合は、図16に示した処理を終了する(ステップS308;Yes)。このように、第2代表色算出部2116は、ステップS300において算出した初期代表色を、ステップS306における処理を繰り返し実行することにより更新する。
なお、ステップS308における処理は、新たに算出された代表色と算出される前の代表色との色差が、所定の色差よりも小さい場合に、図16に示す処理を終了するといった処理であってもよい。このように、第2代表色算出部2116は、直方体の中心位置に対応する色等を代表色の初期値として、各直方体に属する画素のみでK-means法を適用し、代表色を算出する処理を繰り返し実行することで、最終的な代表色を算出する。第2代表色算出部2116は、最終的な代表色とインデックス値とを対応付けたインデックス情報を出力する。
[3.5 出力画像生成処理]
出力画像生成部2114は、図11に示した出力画像生成処理を実行する。なお、本実施形態では、出力画像生成部2114は、フィルタ処理が実行された後の入力画像から注目画素を選択し、さらに、代表色のうち、注目画素と最も色差が小さい(最も近い)代表色を選択する。また、出力画像生成部2114は、ステップS162において、注目画素の画素値を、ステップS160において選択した代表色に対応するインデックス値に置き換える。
出力画像生成部2114は、図11に示した出力画像生成処理を実行する。なお、本実施形態では、出力画像生成部2114は、フィルタ処理が実行された後の入力画像から注目画素を選択し、さらに、代表色のうち、注目画素と最も色差が小さい(最も近い)代表色を選択する。また、出力画像生成部2114は、ステップS162において、注目画素の画素値を、ステップS160において選択した代表色に対応するインデックス値に置き換える。
[3.6 動作例]
図17を参照して、本実施形態の動作例を説明する。図17(a)は、初期代表色を示した図である。例えば、初期代表色D300は、初期分類処理により画素が分類された何れかの領域に対応して設定された直方体に基づき算出された代表色である。また、領域E300は、入力画像に含まれる画素(例えば、P300)のうち、初期代表色D300と近い画素を含む領域である。同様に、領域E302は、初期代表色D302と同じグループに属する画素により構成される領域であり、領域E304は、初期代表色D304と同じグループに属する画素により構成される領域である。ここで、図17に示した画素は、無彩色又は無彩色に近い画素以外の画素か、有彩色の画素のうち、何れか一方とする。
図17を参照して、本実施形態の動作例を説明する。図17(a)は、初期代表色を示した図である。例えば、初期代表色D300は、初期分類処理により画素が分類された何れかの領域に対応して設定された直方体に基づき算出された代表色である。また、領域E300は、入力画像に含まれる画素(例えば、P300)のうち、初期代表色D300と近い画素を含む領域である。同様に、領域E302は、初期代表色D302と同じグループに属する画素により構成される領域であり、領域E304は、初期代表色D304と同じグループに属する画素により構成される領域である。ここで、図17に示した画素は、無彩色又は無彩色に近い画素以外の画素か、有彩色の画素のうち、何れか一方とする。
代表色は、各領域に含まれる画素に基づいて算出される。例えば、図17(b)は、領域300に属する画素から、新たな代表色D310が算出されたことを示す。これにより、初期代表色D300は、新たな代表色D310に置き換わる。同様にして、領域E302から新たな代表色D312が算出され、初期代表色D302と置き換わる。また、領域E304から新たな代表色D314が算出され、初期代表色D304と置き換わる。ここで、領域E300、領域E302、領域E304に含まれる画素は、無彩色又は無彩色に近い画素以外の画素か、有彩色の画素のうち、何れか一方である。そのため、各領域において、有彩色と無彩色とが混ざることがなく、結果として、代表色の彩度が落ちたり、代表色が振動したりすることが避けられる。
また、代表色を算出する処理が所定回数実行されたり、新たに算出された代表色と算出される前の代表色との色差が所定の色差よりも小さかったりした場合、図17(c)に示すように、最終的な代表色D320、代表色D322、代表色D324が決定される。
このように、本実施形態によれば、無彩色/有彩色毎に、K-means法を用いて代表色を求めることができる。その結果、代表色の彩度が落ちてしまう問題を回避できる。また、グループ内において、無彩色の画素と有彩色の画素とが混在しないため、代表色が振動したりすることが避けられ、代表色を早く求めることが可能となる。
また、本実施形態によれば、入力画像を縮小した画像に対してK-means法を適用することにより、処理の高速化を図ることができる。さらに、本実施形態では、出力解像度の画像サイズの画像において代表色を割り当てる場合も、エッジ保存型の平滑化フィルタで濃度ムラや輝度ムラを抑制することで、平坦部への均一な代表色の割当が可能となる。このようにして、本実施形態の画像形成装置は、出力画像の画質の向上と、ファイルサイズの抑制とを両立できる。
[4.第4実施形態]
つづいて、第4実施形態について説明する。本実施形態は、メディアンカット法による減色処理によって算出された代表色を初期値として、K-means法を用いて最終的な代表色を算出する実施形態である。
つづいて、第4実施形態について説明する。本実施形態は、メディアンカット法による減色処理によって算出された代表色を初期値として、K-means法を用いて最終的な代表色を算出する実施形態である。
[4.1 色数変換処理部の処理の概要]
本実施形態では、色数変換処理部211は、入力されたカラー画像(入力画像)に対し、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を条件に従い複数の領域に分割した各領域に、入力画像の各画素を振り分ける(分類する)。また、色数変換処理部211は、無彩色/有彩色毎に中央値分割法(メディアンカット法)により代表色を求めた後、当該代表色を初期値とし、K-means法で最終的な代表色を求める。色数変換処理部211は、入力画像の各画素に対して一番近い代表色のインデックス値を割り当てることで、入力画像を減色した減色画像を生成する。
本実施形態では、色数変換処理部211は、入力されたカラー画像(入力画像)に対し、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を条件に従い複数の領域に分割した各領域に、入力画像の各画素を振り分ける(分類する)。また、色数変換処理部211は、無彩色/有彩色毎に中央値分割法(メディアンカット法)により代表色を求めた後、当該代表色を初期値とし、K-means法で最終的な代表色を求める。色数変換処理部211は、入力画像の各画素に対して一番近い代表色のインデックス値を割り当てることで、入力画像を減色した減色画像を生成する。
[4.2 色数変換処理部の構成]
図18を参照して、本実施形態における色数変換処理部211の構成について説明する。本実施形態における色数変換処理部211は、減色処理に用いる色空間に応じて、図18(a)又は図18(b)の何れかに示した機能部を備えて構成される。
図18を参照して、本実施形態における色数変換処理部211の構成について説明する。本実施形態における色数変換処理部211は、減色処理に用いる色空間に応じて、図18(a)又は図18(b)の何れかに示した機能部を備えて構成される。
(1)RGB色空間が用いられる場合
色数変換処理部211は、図18(a)に示すように、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図18(b)に示すように、色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
色数変換処理部211は、図18(a)に示すように、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図18(b)に示すように、色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
第3代表色算出部2118は、第1代表色算出処理によって取得された代表色を初期代表色として、K-means法を用いて更新し、最終的な代表色を算出する処理である第3代表色算出処理を実行する。第3代表色算出処理については後述する。第3代表色算出部2118は、制御部70によって実行されるプログラムとして実現されてもよいし、回路等のハードウェアとして実現されてもよい。
色変換部2110、初期分類部2111、第1代表色算出部2113、出力画像生成部2114は、第1実施形態と同様に、それぞれ、色変換処理、初期分類処理、第1代表色算出処理、出力画像生成処理を実行する。縮小処理部2115、フィルタ処理部2117は、第3実施形態と同様に、それぞれ、縮小処理、フィルタ処理を実行する。
色数変換処理部211は、出力階調補正部210から出力されたRGB信号(入力画像)に対して、色空間を変更する場合は入力画像の縮小画像の色空間した上で、入力画像を初期分類部2111に出力する。また、色数変換処理部211は、入力画像に対して、領域分割処理、第1代表色算出処理を実行することで、無彩色の領域に分類された画素から第1所定数の代表色と有彩色の領域に分類された画素から第2所定数の代表色とをメディアンカット法を用いて算出する。色数変換処理部211は、第1代表色算出処理によって算出された代表色を、第3代表色算出部2118に出力する。
さらに、色数変換処理部211は、出力階調補正部210から出力されたRGB信号(入力画像)に対して縮小処理を実行し、色空間を変更する場合は入力画像の縮小画像の色空間した上で、処理後の入力画像を第3代表色算出部2118に出力する。
色数変換処理部211は、第3代表色算出処理を実行することで、処理後の入力画像に基づき、第1代表色算出処理によって算出された第1所定数の代表色と第2所定数の代表色とを更新し、最終的な代表色を算出する。
色数変換処理部211は、入力画像に対してフィルタ処理を実行し、フィルタ処理を実行した後の入力画像と、第3代表色算出処理により算出された代表色とを用いて出力画像生成処理を実行することで、入力画像の減色画像を生成する。
[4.3 第3代表色算出処理]
つづいて、図19を参照して、第3代表色算出処理について説明する。第3代表色算出処理は、第3代表色算出部2118によって実行される。第3代表色算出処理は、K-means法を用いて代表色を算出する処理である。
つづいて、図19を参照して、第3代表色算出処理について説明する。第3代表色算出処理は、第3代表色算出部2118によって実行される。第3代表色算出処理は、K-means法を用いて代表色を算出する処理である。
ここで、第3代表色算出部2118に入力される画像は、縮小処理部2115によって縮小された入力画像である。なお、減色処理に用いられる色空間がRGB色空間ではない場合、縮小処理部2115によって縮小された入力画像は、色変換部2110において減色処理に用いられる色空間の画素値に変換された上で、第3代表色算出部2118に入力される。
はじめに、第3代表色算出部2118は、第1代表色算出部2113の出力である代表色を初期代表色とする(ステップS400)。つづいて、第3代表色算出部2118は、入力画像から1の画素(注目画素)を選択し、注目画素の画素値と複数の代表色の画素値とを比較し、注目画素を一番画素値が近い代表色に基づくグループに分類(クラスタリング)する(ステップS402)。なお、第3代表色算出部2118は、無彩色領域に含まれる画素を無彩色領域から算出された代表色に基づく何れかのグループに分類し、有彩色領域に含まれる画素を有彩色領域から算出された代表色に基づく何れかのグループに分類する。第3代表色算出部2118は、入力画像に含まれる全ての画素を分類したか否かを判定し(ステップS404)、全ての画素を分類していない場合は、ステップS402へ戻る(ステップS404;No→ステップS402)。
第3代表色算出部2118は、入力画像に含まれる全ての画素を、何れかの代表色に基づくグループに分類したら、グループ毎に代表色を算出する(ステップS404;Yes→ステップS406)。つづいて、第3代表色算出部2118は、ステップS406における処理を規定回数繰り返し実行する処理が終了したか否かを判定する(ステップS408)。第3代表色算出部2118は、ステップS406における処理を規定回数実行していない場合は、ステップS402に戻る(ステップS408;No→ステップS402)。一方、第3代表色算出部2118は、ステップS406における処理を規定回数実行した場合は、図19に示した処理を終了する(ステップS408;Yes)。このように、第3代表色算出部2118は、第1代表色算出部の出力である代表色を初期代表色として、ステップS406における処理を繰り返し実行することにより更新する。第3代表色算出部2118は、代表色を出力する。
このように、本実施形態の画像形成装置は、メディアンカット法により算出された代表色を初期代表色とし、K-means法により代表色を更新する。ここで、初期代表色は、入力画像に含まれる画素に基づいて算出された色であり、入力画像の色の分布を反映した色となっている。このような状態からK-means法による代表色の算出が行われるため、代表色が大きく変わったり、振動したりする可能性が低い。そのため、本実施形態によれば、高速に代表色を最適化することができる。
また、出力解像度の画像サイズの画像において代表色を割り当てる場合も、エッジ保存型の平滑化フィルタで濃度ムラや輝度ムラを抑制することで、平坦部への均一な代表色の割当が可能となり、出力画像の画質を向上させることができる。このように、本実施形態の画像形成装置は、縮小画像の画質向上とファイルサイズの抑制とを両立できる。
[5.第5実施形態]
つづいて、第5実施形態について説明する。本実施形態は、第4実施形態と同様に、メディアンカット法による減色処理によって算出された代表色を初期値として、K-means法を用いて最終的な代表色を算出する実施形態である。但し、第4実施形態では、画像の減色数が固定であるのに対し、本実施形態では画像の減色数が可変である。
つづいて、第5実施形態について説明する。本実施形態は、第4実施形態と同様に、メディアンカット法による減色処理によって算出された代表色を初期値として、K-means法を用いて最終的な代表色を算出する実施形態である。但し、第4実施形態では、画像の減色数が固定であるのに対し、本実施形態では画像の減色数が可変である。
[5.1 色数変換処理部の処理の概要]
本実施形態では、色数変換処理部211は、入力画像に対し、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を条件に従い複数の領域に分割した各領域に、入力画像の各画素を振り分ける(分類する)。色数変換処理部211は、無彩色/有彩色毎に中央値分割法(メディアンカット法)により代表色を求める。このとき色数変換処理部211は、無彩色/有彩色の領域に対応する直方体がメディアンカット法で過剰に分割されることを抑制したり、画像品質への影響が乏しい代表色に対応する領域の直方体をキャンセルしたりする。これにより、予め設定された減色数よりも少ない数の直方体が得られる。
本実施形態では、色数変換処理部211は、入力画像に対し、減色処理に用いる色空間を無彩色/有彩色の領域に分割し、さらに、有彩色の領域を条件に従い複数の領域に分割した各領域に、入力画像の各画素を振り分ける(分類する)。色数変換処理部211は、無彩色/有彩色毎に中央値分割法(メディアンカット法)により代表色を求める。このとき色数変換処理部211は、無彩色/有彩色の領域に対応する直方体がメディアンカット法で過剰に分割されることを抑制したり、画像品質への影響が乏しい代表色に対応する領域の直方体をキャンセルしたりする。これにより、予め設定された減色数よりも少ない数の直方体が得られる。
色数変換処理部211は、メディアンカット法により求められた代表色を初期値とし、K-means法で最終的な代表色を求める。このとき色数変換処理部211は、減色数を減らしても良好な画像品質が得られるように、K-means法において代表色から遠い画素をキャンセルしたり、K-means法で求められた代表色を最適化したりする。その後、色数変換処理部211は、入力画像の各画素に対して一番近い代表色のインデックス値を割り当てることで、入力画像を減色した減色画像を生成する。
[5.2 色数変換処理部の構成]
図20を参照して、本実施形態における色数変換処理部211の構成について説明する。本実施形態における色数変換処理部211は、減色処理に用いる色空間に応じて、図20(a)又は図20(b)の何れかに示した機能部を備えて構成される。
図20を参照して、本実施形態における色数変換処理部211の構成について説明する。本実施形態における色数変換処理部211は、減色処理に用いる色空間に応じて、図20(a)又は図20(b)の何れかに示した機能部を備えて構成される。
(1)RGB色空間が用いられる場合
色数変換処理部211は、図20(a)に示すように、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、フィルタ処理部2117、代表色補正部2119、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図20(b)に示すように、色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、代表色補正部2119、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
色数変換処理部211は、図20(a)に示すように、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、フィルタ処理部2117、代表色補正部2119、出力画像生成部2114を含んで構成される。
(2)RGB色空間以外の色空間が用いられる場合
色数変換処理部211は、図20(b)に示すように、色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、縮小処理部2115、第3代表色算出部2118、代表色補正部2119、フィルタ処理部2117、出力画像生成部2114を含んで構成される。
第3代表色算出部2118は、第1代表色算出処理によって取得された代表色を初期代表色として、K-means法を用いて更新し、最終的な代表色を算出する処理である第3代表色算出処理を実行する。代表色補正部2119は、第3代表色算出処理において代表色を最適化する処理を行うが、詳細は後述する。代表色補正部2119は、制御部70によって実行されるプログラムとして実現されてもよいし、回路等のハードウェアとして実現されてもよい。
色変換部2110、初期分類部2111、領域分割部2112、第1代表色算出部2113、出力画像生成部2114は、第1及び第4実施形態と同様に、それぞれ、色変換処理、初期分類処理、領域分割処理、第1代表色算出処理、出力画像生成処理を実行する。但し領域分割部2112は、領域分割処理において直方体の過剰な分割を抑制したり、画像品質への影響が乏しい代表色の直方体をキャンセルしたりする処理を行うが、詳細は後述する。縮小処理部2115、フィルタ処理部2117は、第3及び第4実施形態と同様に、それぞれ、縮小処理、フィルタ処理を実行する。
[5.3 領域分割処理]
[5.3.1 領域分割処理の概要]
先述したように領域分割処理は、領域分割部2112がメディアンカット法による減色処理における領域を分割する処理である。但し本実施形態の領域分割処理は、初期分類処理において画素が分類された領域のうち、無彩色領域を分割する無彩色領域分割処理(図21、図22参照)と、有彩色領域を分割する有彩色領域分割処理(図23、図24参照)とを含む。例えば領域分割部2112は、無彩色領域分割処理を実行した後に有彩色領域分割処理を実行するが、有彩色領域分割処理を実行した後に無彩色領域分割処理を実行してもよいし、無彩色領域分割処理と有彩色領域分割処理を並行して実行してもよい。
[5.3.1 領域分割処理の概要]
先述したように領域分割処理は、領域分割部2112がメディアンカット法による減色処理における領域を分割する処理である。但し本実施形態の領域分割処理は、初期分類処理において画素が分類された領域のうち、無彩色領域を分割する無彩色領域分割処理(図21、図22参照)と、有彩色領域を分割する有彩色領域分割処理(図23、図24参照)とを含む。例えば領域分割部2112は、無彩色領域分割処理を実行した後に有彩色領域分割処理を実行するが、有彩色領域分割処理を実行した後に無彩色領域分割処理を実行してもよいし、無彩色領域分割処理と有彩色領域分割処理を並行して実行してもよい。
[5.3.2 無彩色領域分割処理]
図21を参照して、無彩色領域分割処理について説明する。はじめに、領域分割部2112は、初期分類処理によって画素が分類された各無彩色領域において、注目している領域に含まれる画素の画素値から、色空間におけるそれぞれの軸に対する最大値と最小値を算出する(ステップS2100)。ステップS2100の具体的な処理は、ステップS120と同様である。
図21を参照して、無彩色領域分割処理について説明する。はじめに、領域分割部2112は、初期分類処理によって画素が分類された各無彩色領域において、注目している領域に含まれる画素の画素値から、色空間におけるそれぞれの軸に対する最大値と最小値を算出する(ステップS2100)。ステップS2100の具体的な処理は、ステップS120と同様である。
つづいて、領域分割部2112は、画素が分類された各無彩色領域に対応する直方体として、ステップS2100において算出した軸毎の最大値及び最小値を頂点とした直方体を設定する(ステップS2102)。ステップS2102の具体的な処理は、ステップS122と同様である。領域分割部2112は、ステップS2102において設定した直方体から、最も長い辺、つまり、ステップS2100において算出した最大値と最小値との差が最大である直方体を選択する(ステップS2104)。領域分割部2112は、選択した無彩色領域の直方体を対象に、無彩色判定処理を実行する(ステップS2106)。
図22を参照して、無彩色判定処理について説明する。はじめに、領域分割部2112は、無彩色領域の過分割を抑制するための階調数判定処理を、以下のように実行する。なお、領域の過分割とは、予め設定された減色数よりも少ない数の代表色を用いて、減色画像を良好な画像品質で表示できるにも関わらず、領域に対応する直方体を減色数と同じ数まで過剰に分割することをいう。
領域分割部2112は、選択した直方体における最大の辺の長さが、閾値TH11以下であるか否かを判定する(ステップS2200)。具体的には、領域分割部2112は、無彩色領域と対応する直方体として、輝度や明度のみを考慮する直方体を設定する。領域分割部2112は、この直方体の辺の長さが閾値TH11以下であるか否かを判定する。例えば閾値TH11は、入力画像が256階調のカラー画像である場合、色空間において最も明るい上限輝度(100%)の「17%」分に対応する長さである。また閾値TH11は、入力画像が256階調グレースケールのモノクロ画像である場合、色空間における「32」の階調分の長さである。
領域分割部2112は、選択した直方体における最大の辺の長さが閾値TH11を超える場合、この直方体に属する画素数が閾値TH12未満であるか否かを判定する(ステップS2200;No→ステップS2202)。例えば閾値TH12は、入力画像であるカラー画像又はモノクロ画像の画素数の「1%」である。領域分割部2112は、選択した直方体に属する画素数が閾値TH12以上である場合、選択した直方体を分割対象に設定する(ステップS2202;No→ステップS2204)。その後、領域分割部2112は無彩色領域分割処理(図21参照)に処理を戻す。
一方、選択した直方体における最大の辺の長さが閾値TH11以下である場合(ステップS2200;Yes)、又は選択した直方体に属する画素数が閾値TH12未満である場合(ステップS2202;Yes)、領域分割部2112は選択した直方体を分割対象に設定しないため、この直方体は分割されない。そして領域分割部2112は、高輝度の無彩色領域であるハイライト領域を十分に分割するためのハイライト分割処理を、以下のように実行する。
領域分割部2112は、初期分類処理によって画素が分類された無彩色領域のうち、最も輝度が高い最高輝度領域の明るさが、閾値TH13を超えるか否かを判定する(ステップS2206)。例えば、入力画像が256階調のカラー画像である場合、閾値TH13は最も明るい上限輝度(100%)の「94%」に対応する輝度値である。入力画像が256階調グレースケールのモノクロ画像である場合、閾値TH13は「230」の階調値である。
一例として、領域分割部2112は、カラー入力画像において最高輝度領域の輝度範囲が「90~99%」である場合、最高輝度領域の明るさは閾値TH13の「94%」を超えると判定する。領域分割部2112は、256階調グレースケールのモノクロ入力画像において、最高輝度領域の階調幅が「200~245」である場合、最高輝度領域の明るさは閾値TH13の「230」を超えると判定する。つまり領域分割部2112は、最高輝度領域に属する画素の最大輝度値(最大階調値)が閾値TH13を超える場合、最高輝度領域の明るさが閾値TH13を超えると判定する。
この場合、領域分割部2112は、最高輝度領域の直方体サイズが閾値TH14を超えるか否かを判定する(ステップS2206;Yes→ステップS2208)。例えば閾値TH14は、先述の閾値TH11と同じ値である。具体的には、領域分割部2112は、最高輝度領域の直方体における最大の辺の長さが閾値TH14を超える場合、最高輝度領域の直方体サイズが閾値TH14を超えると判定する。この場合、領域分割部2112は、この最高輝度領域の直方体を分割対象に設定する(ステップS2208;Yes→ステップS2210)。その後、領域分割部2112は無彩色領域分割処理(図21参照)に処理を戻す。
一方、領域分割部2112は、最高輝度領域の明るさが閾値TH13以下である場合、この最高輝度領域は分割を要する明るさのハイライト領域に該当しないとみなして、図21に示す無彩色領域分割処理を終了する(ステップS2206;No→ステップS2212)。また領域分割部2112は、最高輝度領域の直方体サイズが閾値TH14以下である場合、この最高輝度領域は分割を要する大きさのハイライト領域に該当しないとみなして、図21に示す無彩色領域分割処理を終了する(ステップS2208;No→ステップS2212)。
図21に戻る。無彩色判定処理の実行後、領域分割部2112は、ステップS2204又はS2210において分割対象に設定された直方体を分割する(ステップS2108)。この分割対象の直方体を分割する処理の詳細は、ステップS126において選択直方体を分割する処理と同様である。ステップS2108の処理が実行されることにより、ステップS2102において設定された無彩色領域の直方体の数が1増える。つづいて、領域分割部2112は、直方体の数が、予め設定された無彩色領域の減色数である第1所定数と一致するか否かを判定する(ステップS2110)。
領域分割部2112は、直方体の数が第1所定数と一致した場合、無彩色領域の直方体のうちで画素数が閾値TH15未満のものを、画素数が極めて少ない直方体としてキャンセルする(ステップS2110;Yes→ステップS2112)。例えば閾値TH15は、入力画像が300dpiでA4サイズのモノクロ画像である場合、「2920」の画素数である。つまり領域分割部2112は、入力画像の全画素(約890万画素)のうちで極めて少ない画素(2920画素未満)しか持たない無彩色領域の直方体をキャンセルする。その後、領域分割部2112は無彩色領域分割処理を終了する。
一方、領域分割部2112は、直方体の数が第1所定数と一致しない場合、処理をステップS2100に戻す(ステップS2110;No→ステップS2100)。なお、上述の閾値TH11~TH15の具体的数値は一例であり、予め画像形成装置1に設定されていてもよいし、ユーザによって設定可能であってもよいし、原稿種別に応じて設定されてもよい。
このように領域分割部2112は、ステップS2100からステップS2110までの処理を繰り返して実行することで、無彩色領域の直方体の数が第1所定数と一致するまで、直方体を分割できる。但し、直方体のサイズが小さすぎる無彩色領域の代表色は、他に近似する代表色が存在する可能性が高い。また直方体の画素数が少なすぎる無彩色領域の代表色は、減色画像での使用頻度が小さい。このような代表色は減色画像の画像品質への影響が乏しいため、このような代表色を用いなくても画像品質を保持できる。
そこで領域分割部2112は、階調数判定処理(ステップS2200~S2204)において、直方体のサイズ又は画素数が閾値より小さい直方体を分割対象に設定しないため、無彩色領域が第1所定数まで過分割されることが防止される。領域分割部2112は、ステップS2112において、画素数が極めて少ない無彩色領域の直方体をキャンセルする。これらの処理により、予め設定された第1所定数よりも少ない無彩色領域の直方体が得られる。
上記処理の結果、ハイライト領域の直方体が十分に分割されないために、ハイライト領域を複数の代表色で表示できずに再現性が劣化する可能性がある。これを防止するために、領域分割部2112はハイライト分割処理(ステップS2206~S2212)において、ハイライト領域を分割して複数の直方体を生成することで、ハイライト領域を複数の無彩色領域の代表色で表示できる。
[5.3.3 有彩色領域分割処理]
図23を参照して、有彩色領域分割処理について説明する。以下では、無彩色領域分割処理(図21参照)と異なる点を中心に説明する。はじめに、領域分割部2112は、初期分類処理によって画素が分類された各有彩色領域において、注目している領域に含まれる画素の画素値から、色空間におけるそれぞれの軸に対する最大値と最小値を算出する(ステップS2300)。
図23を参照して、有彩色領域分割処理について説明する。以下では、無彩色領域分割処理(図21参照)と異なる点を中心に説明する。はじめに、領域分割部2112は、初期分類処理によって画素が分類された各有彩色領域において、注目している領域に含まれる画素の画素値から、色空間におけるそれぞれの軸に対する最大値と最小値を算出する(ステップS2300)。
つづいて、領域分割部2112は、画素が分類された各有彩色領域に対応する直方体として、ステップS2300において算出した軸毎の最大値及び最小値を頂点とした直方体を設定する(ステップS2302)。領域分割部2112は、ステップS2302において設定した直方体から、最も長い辺、つまり、ステップS2300において算出した最大値と最小値との差が最大である直方体を選択する(ステップS2304)。領域分割部2112は、選択した有彩色領域の直方体を対象に、有彩色判定処理を実行する(ステップS2306)。
図24を参照して、有彩色判定処理について説明する。はじめに、領域分割部2112は、有彩色領域の過分割を抑制するための色数判定処理を、以下のように実行する。
領域分割部2112は、選択した直方体における最大の辺の長さが、閾値TH21以下であるか否かを判定する(ステップS2400)。具体的には、領域分割部2112は、有彩色領域と対応する直方体の各軸に沿った複数の辺のうち、最大の辺の長さが閾値TH21以下であるか否かを判定する。例えば閾値TH21は、入力画像が256階調のカラー画像である場合、色空間における「30」の階調分の長さである。
領域分割部2112は、選択した直方体における最大の辺の長さが閾値TH21を超える場合、この直方体に属する画素数が閾値TH22未満であるか否かを判定する(ステップS2400;No→ステップS2402)。例えば閾値TH22は、入力画像であるカラー画像の画素数の「2%」である。領域分割部2112は、選択した直方体に属する画素数が閾値TH22以上である場合、選択した直方体を分割対象に設定する(ステップS2402;No→ステップS2404)。その後、領域分割部2112は、有彩色領域分割処理(図23参照)に処理を戻す。
一方、選択した直方体における最大の辺の長さが閾値TH21以下である場合(ステップS2400;Yes)、又は選択した直方体に属する画素数が閾値TH22未満である場合(ステップS2402;Yes)、領域分割部2112は選択した直方体を分割対象に設定しないため、この直方体は分割されない。そして領域分割部2112は、高輝度の有彩色領域であるハイライト領域を十分に分割するためのハイライト分割処理を、以下のように実行する。
領域分割部2112は、初期分類処理によって画素が分類された有彩色領域のうち、最も輝度が高い最高輝度領域の明るさが、閾値TH23を超えるか否かを判定する(ステップS2406)。例えば、入力画像が256階調のカラー画像である場合、閾値TH23は最も明るい上限輝度(100%)の「94%」に対応する輝度値である。
領域分割部2112は、最高輝度領域の明るさが閾値TH23を超える場合、最高輝度領域の直方体サイズが閾値TH24を超えるか否かを判定する(ステップS2406;Yes→ステップS2408)。例えば閾値TH24は、先述の閾値TH21と同じ値である。領域分割部2112は、最高輝度領域の直方体における最大の辺の長さが閾値TH24を超える場合、この最高輝度領域の直方体を分割対象に設定する(ステップS2408;Yes→ステップS2410)。その後、領域分割部2112は有彩色領域分割処理(図23参照)に処理を戻す。
一方、領域分割部2112は、最高輝度領域の明るさが閾値TH23以下である場合、この最高輝度領域は分割を要する明るさのハイライト領域に該当しないとみなして、図23に示す有彩色領域分割処理を終了する(ステップS2406;No→ステップS2412)。また領域分割部2112は、最高輝度領域の直方体サイズが閾値TH24以下である場合、この最高輝度領域は分割を要する大きさのハイライト領域に該当しないとみなして、図23に示す有彩色領域分割処理を終了する(ステップS2408;No→ステップS2412)。
図23に戻る。有彩色判定処理の実行後、領域分割部2112は、ステップS2404又はS2410において分割対象に設定された直方体を分割する(ステップS2308)。ステップS2308の処理が実行されることにより、ステップS2302において設定された有彩色領域の直方体の数が1増える。つづいて、領域分割部2112は、直方体の数が、予め設定された有彩色領域の減色数である第2所定数と一致するか否かを判定する(ステップS2310)。
領域分割部2112は、直方体の数が第2所定数と一致した場合、有彩色領域の直方体のうちで画素数が閾値TH25未満のものを、画素数が極めて少ない直方体としてキャンセルする(ステップS2310;Yes→ステップS2312)。例えば閾値TH25は、入力画像が300dpiでA4サイズのカラー画像である場合、「60」の画素数である。つまり領域分割部2112は、入力画像の全画素(約890万画素)のうちで極めて少ない画素(60画素未満)しか持たない有彩色領域の直方体をキャンセルする。その後、領域分割部2112は有彩色領域分割処理を終了する。
一方、領域分割部2112は、直方体の数が第2所定数と一致しない場合、処理をステップS2300に戻す(ステップS2310;No→ステップS2300)。なお、上述の閾値TH21~TH25の具体的数値は一例であり、予め画像形成装置1に設定されていてもよいし、ユーザによって設定可能であってもよいし、原稿種別に応じて設定されてもよい。
このように領域分割部2112は、ステップS2300からステップS2310までの処理を繰り返して実行することで、有彩色領域の直方体の数が第2所定数と一致するまで、直方体を分割できる。但し、直方体のサイズが小さすぎる有彩色領域の代表色や、直方体の画素数が少なすぎる有彩色領域の代表色は、減色画像の画像品質への影響が乏しいため、このような代表色を用いなくても画像品質を保持できる。
そこで領域分割部2112は、階調数判定処理(ステップS2400~S2404)において、直方体のサイズ又は画素数が閾値より小さい直方体を分割対象に設定しないため、有彩色領域が第2所定数まで過分割されることが防止される。領域分割部2112は、ステップS2312において、画素数が極めて少ない有彩色領域の直方体をキャンセルする。これらの処理により、予め設定された第2所定数よりも少ない有彩色領域の直方体が得られる。
さらに領域分割部2112は、上記処理によってハイライト領域の再現性が劣化することを防止するために、ハイライト分割処理(ステップS2406~S2412)を実行する。これにより、ハイライト領域を分割して複数の直方体が生成されるため、ハイライト領域を複数の有彩色領域の代表色で表示できる。
[5.3.4 動作例]
図25~図27を参照して、本実施形態における領域分割処理の動作例を説明する。図25(a)は、比較例の領域分割処理で生成された複数の無彩色領域を示すテーブルである。図25(b)は、本実施形態の領域分割処理で生成された複数の無彩色領域を示すテーブルである。
図25~図27を参照して、本実施形態における領域分割処理の動作例を説明する。図25(a)は、比較例の領域分割処理で生成された複数の無彩色領域を示すテーブルである。図25(b)は、本実施形態の領域分割処理で生成された複数の無彩色領域を示すテーブルである。
図25(a)及び図25(b)に示すテーブルは、何れも同じ256階調グレースケールのモノクロ入力画像を、L*a*b*色空間の領域分割処理で分割した場合の例を示す。これらのテーブルには、各無彩色領域に対応する直方体毎にレコードが設定されている。各レコードには、対応する無彩色領域の直方体における代表色(階調値)、最小階調値、最大階調値、画素数が設定されている。
図25(a)の比較例では、第1実施形態の領域分割処理(図9参照)によって、モノクロ入力画像の無彩色領域が予め設定された第1所定数である「8」の領域に分割され、分割後のデータサイズが「113」(KB)である。一方、図25(b)の実施例では、本実施形態の無彩色領域分割処理(図21参照)によって、第1所定数よりも少ない「5」の領域に分割されている。
例えば、代表色が「54」の直方体は、図25(a)の比較例では代表色が「40」及び「59」の二つの直方体にされるのに対し、図25(b)の実施例では分割されない。具体的には、この直方体は最大の辺の長さは、最小階調値「16」と最大階調値「75」の差分、即ち「59」である。本例では、閾値TH11を「60」とする。この場合、無彩色判定処理(図22参照)のステップS2200において、代表色が「54」の直方体の辺の長さは閾値TH11以下と判定されるため、この直方体は分割対象に設定されない。
同様に、代表色が「114」及び「163」の各直方体は、図25(a)の比較例では二分割されるのに対し、図25(b)の実施例では分割されない。その結果、図25(b)の実施例の分割数は、図25(a)の比較例の分割数よりも3つ少ない「5」となる。このように図25(b)の実施例は、図25(a)の比較例と比べて分割領域が減少して代表色の数も減少するため、分割後のデータサイズが「94」(KB)に減少している。
図25(a)の比較例では、無彩色領域が固定値の第1所定数に分割された結果、例えば代表色「40」と代表色「59」との輝度差が小さい。このような輝度差が小さい複数の代表色は、減色画像の画像品質への影響が小さい一方、これらの代表色を設けるために領域を過分割する処理負荷が大きい。これに対し、図25(b)の実施例では、輝度差が小さい代表色に対応する直方体の過分割を抑制することで、減色画像の画像品質を維持しつつ処理負荷を抑制できる。
また、図25(b)の実施例では、図25(a)の比較例と同様に、最高輝度領域の直方体が、代表色「211」の直方体と代表色「255」の直方体とに分割される。具体的には、この最高輝度領域の直方体は、最小階調値が「196」であり、最大階調値が「255」である。ステップS2200において、この直方体の辺の長さである「59」は閾値TH11以下と判定されるため、この直方体は分割対象に設定されない。
しかしながら、無彩色判定処理(図22参照)のステップS2206において、最高輝度領域の輝度「76~100%」は閾値TH13「94%」を超えると判定される。本例では、閾値TH14を「32」とする。この場合、ステップS2208において、最高輝度領域の直方体の辺の長さは閾値TH14を超えると判定されるため、ステップS2210において、この直方体は分割対象に設定される。つまり最高輝度領域の直方体は、階調数判定処理で分割対象に設定されなくても、ハイライト分割処理で分割対象に設定されることで、代表色「211」の直方体と代表色「255」の直方体とに分割される。
図26(a)及び図26(b)は、何れも同じモノクロ入力画像を領域分割処理で分割した減色画像の例を示す。図26(a)に示す比較例の減色画像では、最高輝度領域が分割されておらず、無彩色の代表色の数が「4」であり、ハイライト領域の代表色が一つしかない。この比較例では、点線の丸枠で示すハイライト領域において、本来グレーで描かれる部分が白く表示される、所謂白抜けと呼ばれる現象が発生している。
一方、図26(b)に示す本実施形態の減色画像では、最高輝度領域を分割しているため、無彩色の代表色の数が「5」である。この実施例では、ハイライト領域に複数の代表色が存在することで、点線の丸枠で示すハイライト領域に白抜けを生じることなくグレーの線が描かれている。このようにハイライト領域では、複数の代表色の輝度差が小さくても、これらの代表色が減色画像の画像品質に与える影響が大きい。したがって図25(b)及び図26(b)の実施例では、最高輝度領域に対応する直方体を分割して、ハイライト領域に複数の代表色を設定することで、減色画像の画像品質を維持できる。
また、図27(a)及び図27(b)に示すテーブルは、何れも同じ256階調RGBのカラー入力画像を領域分割処理で分割し、更に先述のK-means法を適用して最終的な代表色を算出した場合の例を示す。これらのテーブルには、各分割領域に対応する直方体毎にレコードが設定されている。各レコードには、対応する最終的なRGB代表色、L*a*b*色空間における各軸の最小値及び最大値、画素数が設定されている。
図27(a)の比較例では、第1実施形態の領域分割処理(図9参照)によって、カラー入力画像が予め設定された減色数である「16」の領域に分割されているため、K-means法で算出される最終的なRGB代表色の数も「16」である。この例では、「16」の領域のうち、第1所定数である「4」の無彩色領域に分割され、第2所定数である「12」の有彩色領域に分割されている。一方、図27(b)の実施例では、本実施形態の無彩色領域分割処理(図21参照)によって、第1所定数よりも少ない「2」の無彩色領域に分割されて、且つ本実施形態の有彩色領域分割処理(図23参照)によって、第2所定数よりも少ない「2」の有彩色領域に分割されている。
例えば、無彩色領域分割処理(図21参照)において、図27(a)の比較例に示すように4つの無彩色領域の直方体G11~G14に分割されると、ステップS2110において直方体の数が第1所定数の「4」であると判定される。本例では、閾値TH15を「300」とする。この場合、ステップS2112において、上述した4つの直方体のうちで、画素数が「300」未満の直方体G11,G12がキャンセルされる。キャンセルされた直方体に属する画素は、K-means法で他の2つの無彩色領域の直方体G13,G14に振り分けられる。これにより、図27(b)の実施例では、2つの無彩色のRGB代表色が最終的に算出される。
同様に、有彩色領域分割処理(図23参照)のステップS2312において、画素数が閾値TH25未満の直方体がキャンセルされる。キャンセルされた直方体に属する画素がK-means法で他の有彩色領域の直方体に振り分けられて、有彩色の代表色が最終的に算出される。図27(b)の実施例では、2つの有彩色のRGB代表色が算出されている。
図27(a)の比較例では、例えば画素数が「4」や「7」の直方体のように、画素数が極めて少ない直方体にも代表色が設定される。このような画素数の少ない代表色は、減色画像の画像品質への影響が小さい一方、減色画像の最終的なファイルサイズを増大させるおそれがあり、またこれらの代表色を算出する処理負荷が大きくなる場合もある。図27(b)の実施例では、画素数の少ない代表色の直方体をキャンセルすることで、減色画像の画像品質を維持しつつ処理負荷を軽減できる。
[5.4 第3代表色算出処理]
[5.4.1 第3代表色算出処理の概要]
第1代表色算出部2113は、無彩色領域分割処理によって分割された複数の無彩色領域と、有彩色領域分割処理によって分割された複数の有彩色領域とのそれぞれについて、代表色を算出する。先述したように第3代表色算出処理は、第3代表色算出部2118が第1代表色算出処理によって取得された代表色を初期代表色として、K-means法を用いて更新し、最終的な代表色を算出する処理である。なお、本実施形態では、第4実施形態と同様にK-means法の処理量を削減するため、縮小処理部2115が縮小処理した入力画像が第3代表色算出部2118に出力される。
[5.4.1 第3代表色算出処理の概要]
第1代表色算出部2113は、無彩色領域分割処理によって分割された複数の無彩色領域と、有彩色領域分割処理によって分割された複数の有彩色領域とのそれぞれについて、代表色を算出する。先述したように第3代表色算出処理は、第3代表色算出部2118が第1代表色算出処理によって取得された代表色を初期代表色として、K-means法を用いて更新し、最終的な代表色を算出する処理である。なお、本実施形態では、第4実施形態と同様にK-means法の処理量を削減するため、縮小処理部2115が縮小処理した入力画像が第3代表色算出部2118に出力される。
図28を参照して、本実施形態の第3代表色算出処理について説明する。ステップS400の実行後、第3代表色算出部2118は注目画素を一番画素値が近い代表色に基づくグループに分類する画素分類処理を実行する(ステップS402)。ステップS406の実行後、代表色補正部2119は、算出された代表色を補正する代表色補正処理を実行する(ステップS407)。その他の処理は、第4実施形態の第3代表色算出処理(図19参照)と同様である。
[5.4.2 画素分類処理]
図29を参照して、ステップS402の画素分類処理について説明する。はじめに、第3代表色算出部2118は第4実施形態と同様に、注目画素の画素値と複数の代表色の画素値とを比較して、複数の代表色のうちで注目画素と最も近似する対象代表色を探索する(ステップS2900)。第3代表色算出部2118は、注目画素の画素値と対象代表色の画素値との色空間における距離が、閾値TH31を超えるかを判定する(ステップS2902)。例えば閾値TH31は、入力画像が256階調のカラー画像又はモノクロ画像である場合、色空間における「30」の長さである。
図29を参照して、ステップS402の画素分類処理について説明する。はじめに、第3代表色算出部2118は第4実施形態と同様に、注目画素の画素値と複数の代表色の画素値とを比較して、複数の代表色のうちで注目画素と最も近似する対象代表色を探索する(ステップS2900)。第3代表色算出部2118は、注目画素の画素値と対象代表色の画素値との色空間における距離が、閾値TH31を超えるかを判定する(ステップS2902)。例えば閾値TH31は、入力画像が256階調のカラー画像又はモノクロ画像である場合、色空間における「30」の長さである。
第3代表色算出部2118は、注目画素と対象代表色との色空間における距離が閾値TH31以下である場合、注目画素を対象代表色に基づくグループに分類する(ステップS2902:No→ステップS2904)。第3代表色算出部2118は、注目画素と対象代表色との色空間における距離が閾値TH31を超える場合、注目画素が何れのグループにも分類されないように、注目画素の分類をキャンセルする(ステップS2902:Yes→ステップS2906)。ステップS2904又はS2906の実行後、第3代表色算出部2118は第3代表色算出処理(図28参照)に処理を戻す。
[5.4.3 代表色補正処理]
図30を参照して、ステップS407の代表色補正処理について説明する。はじめに、代表色補正部2119は無彩色の低輝度代表色を補正する(ステップS3000)。本実施形態では、代表色補正部2119は、ステップS406で更新された複数の無彩色の代表色のうちで最低輝度の代表色が所定輝度を超え、且つこの最低輝度の代表色に対応するグループの輝度範囲が所定幅を超える場合、この最低輝度の代表色を低輝度代表色として特定する。代表色補正部2119は、低輝度代表色のグループに属する最大輝度の画素値と最小輝度の画素値とに基づいて、低輝度代表色の代表色を補正する。
図30を参照して、ステップS407の代表色補正処理について説明する。はじめに、代表色補正部2119は無彩色の低輝度代表色を補正する(ステップS3000)。本実施形態では、代表色補正部2119は、ステップS406で更新された複数の無彩色の代表色のうちで最低輝度の代表色が所定輝度を超え、且つこの最低輝度の代表色に対応するグループの輝度範囲が所定幅を超える場合、この最低輝度の代表色を低輝度代表色として特定する。代表色補正部2119は、低輝度代表色のグループに属する最大輝度の画素値と最小輝度の画素値とに基づいて、低輝度代表色の代表色を補正する。
例えば、入力画像が256階調のカラー画像又はモノクロ画像である場合、所定輝度は「80」の階調値であり、所定幅は色空間における「40」の長さとする。代表色補正部2119は、更新された無彩色の代表色のうちで最低輝度の代表色の輝度値が「80」を超え、且つ、この代表色のグループに属する最大輝度の画素値と最小輝度の画素値との色空間における距離が「40」を超える場合、この代表色を低輝度代表色に特定する。代表色補正部2119は、低輝度代表色のグループに属する最大輝度の画素値と最小輝度の画素値との平均に基づいて、低輝度代表色を更新する。
先述のステップS406では、K-means法を適用して、画素値の単純平均や重み付き平均で代表色が更新される。そのため、最低輝度の代表色のグループに輝度差の大きい複数の画素が分類されると、この代表色が画質的に好適な輝度よりも明るくなる場合がある。この場合、低輝度領域を十分な黒さで表現できない可能性があり、特に無彩色領域でこれに起因する画質劣化が現れやすい。そこで代表色補正部2119はステップS3000において、低輝度領域を十分な黒さで表現できるように、無彩色の低輝度代表色を上記のように最適化する。
つづいて、代表色補正部2119は、少画素分散領域の代表色をキャンセルする(ステップS3002)。本実施形態では、代表色補正部2119は、ステップS406で更新された複数の代表色のうちで、対応するグループが所定数未満の画素を含み、且つ画像領域における当該画素の位置の分散が所定範囲を超える代表色を特定する。代表色補正部2119は、特定した少画素分散領域の代表色をキャンセルする。
例えば、先述のステップS406において75dpiの縮小画像に対してK-means法が適用される場合に、所定数が「50」であり、所定範囲が「縮小画像の縦横サイズの1/16」であるものとする。この場合、更新された代表色の中に、対応するグループの画素数が「50」未満の代表色があり、且つこれらの画素位置の分布の縦横サイズが「縮小画像の縦横サイズの1/16」を超える場合、この代表色が少画素分散領域の代表色に特定される。特定した少画素分散領域の代表色はキャンセルされるため、減色画像の減色数が減少する。
更新された代表色のグループのうち、画素数が極めて少なく且つこれらの画素が画像上に幅広く分布しているグループの画素は、画像上のノイズである可能性が高い。このようなノイズ画素が分類されたグループの代表色は、減色画像の画像品質への影響が乏しいため、このような代表色を用いなくても画像品質を保持できる。そこで代表色補正部2119はステップS3002において、上記のように不要な少画素分散領域の代表色をキャンセルすることで、減色数を減らし画像サイズや処理負荷を抑制する。
ステップS3002の実行後、代表色補正部2119は第3代表色算出処理(図28参照)に処理を戻す。
[5.4.4 動作例]
図31~図33を参照して、本実施形態における第3代表色算出処理の動作例を説明する。図31(a)は、比較例1で算出された複数の代表色を示すテーブル、及びこれらの代表色に基づく減色画像の例である。図31(b)は、比較例2で算出された複数の代表色を示すテーブル、及びこれらの代表色に基づく減色画像の例である。図31(c)は、本実施形態で算出された複数の代表色を示すテーブル、及びこれらの代表色に基づく減色画像の例である。
図31~図33を参照して、本実施形態における第3代表色算出処理の動作例を説明する。図31(a)は、比較例1で算出された複数の代表色を示すテーブル、及びこれらの代表色に基づく減色画像の例である。図31(b)は、比較例2で算出された複数の代表色を示すテーブル、及びこれらの代表色に基づく減色画像の例である。図31(c)は、本実施形態で算出された複数の代表色を示すテーブル、及びこれらの代表色に基づく減色画像の例である。
図31(a)、図31(b)及び図31(c)に示すテーブルは、何れも同じ256階調グレースケールのモノクロ入力画像を、L*a*b*色空間の領域分割処理で分割し、更に第3代表色算出処理で最終的な代表色を算出した場合の例を示す。これらのテーブルでは、無彩色の画素が分類された各グループの代表階調値(代表色)、最小階調値、最大階調値が設定されている。
図31(a)の比較例1では、第1実施形態の領域分割処理(図9参照)によって、モノクロ入力画像の無彩色領域が予め設定された第1所定数である「8」の領域に分割されている。更に、第4施形態の第3代表色算出処理(図19参照)によって、各グループに属する全画素の階調値の平均が、各グループの代表階調値(代表色)として算出されている。
図31(b)の比較例2では、本実施形態の無彩色領域分割処理(図21参照)によって、無彩色領域の過分割が第1所定数よりも少ない「4」の領域に分割されている。更に、第4実施形態の第3代表色算出処理(図19参照)によって、各グループに属する全画素の階調値の平均が、各グループの代表階調値(代表色)として算出されている。この比較例2では、無彩色領域分割処理において無彩色領域の過分割が抑制されるため、第3代表色算出処理において最低輝度の代表色のグループに輝度差の大きい複数の画素が分類されうる。
その結果、比較例2において最低輝度の代表色「101」のグループに分類される画素の階調幅「4~129」は、比較例1において最低輝度の代表色「23」のグループに分類される画素の階調幅「4~34」よりも広い。更に比較例2では、最低輝度の代表色「101」が、その代表色のグループにおいて最小階調値「4」よりも最大階調値「129」に近い。この場合、低輝度領域が相対的に明るい代表色である「101」の階調値で表示されるため、低輝度領域を十分な黒さで表現できない可能性がある。
これに対し図31(c)の実施例では、第4実施形態の第3代表色算出処理(図19参照)に代えて、本実施形態の第3代表色算出処理(図28参照)が適用される。この場合、代表色補正処理(図30参照)のステップS3000において、比較例2に示す最低輝度の代表色「101」は所定輝度「80」を超え、且つこの代表色のグループに属する最大輝度の画素値と最小輝度の画素値との階調差「125」は所定幅「40」を超えると判定される。つまり、この最低輝度の代表色は低輝度代表色であると判定されて、最大輝度の画素値「4」と最小輝度の画素値「129」との平均値「62」に更新される。これにより、低輝度領域が相対的に暗い代表色である「62」の階調値で表示されるため、無彩色領域の過分割が抑制された場合でも低輝度領域を十分な黒さで表現できる。
また図32は、代表色補正処理(図30参照)のステップS3002において、少画素分散領域の代表色をキャンセルするか否かを判定する手法を説明するための図である。図32の例において、所定範囲THは、75dpiの縮小画像Pの縦横サイズの1/16の矩形枠である。3つの代表色に対応するグループG21~G23は、それぞれの画素数が「50」未満であり、縮小画像Pに分布する画素と外接した矩形で表される。図32では、グループG21に属する画素を〇で図示し、グループG22に属する画素を△で図示し、グループG23に属する画素を◇で図示している。
ステップS3002では、画素数が「50」未満のグループのうち、画素位置の分布の縦横サイズが所定範囲THを超えるグループの代表色が、少画素分散領域の代表色としてキャンセルされる。図32の例において、グループG21の縦横サイズは何れも所定範囲THの縦横サイズを超えるため、グループG21の代表色は少画素分散領域の代表色としてキャンセルされる。グループG22の横サイズは所定範囲THの横サイズを超えるため、グループG22の代表色は少画素分散領域の代表色としてキャンセルされる。グループG23の縦横サイズは何れも所定範囲THの縦横サイズより小さいため、グループG23の代表色はキャンセルされない。
図33(a)及び図33(b)に示すテーブルは、図27と同様に、何れも同じ256階調RGBのカラー入力画像を領域分割処理で分割し、更に先述のK-means法を適用して最終的な代表色を算出した場合の例を示す。図33(a)の比較例では、第1実施形態の領域分割処理(図9参照)によってカラー入力画像が第1所定数である「16」の領域に分割された後、第4実施形態の第3代表色算出処理(図19参照)によって「16」のRGB代表色が最終的に算出される。
一方、図33(b)の実施例では、本実施形態の領域分割処理(図21~図24参照)によって、過分割を抑制しつつカラー入力画像が分割され、更に本実施形態の第3代表色算出処理(図28参照)によって少画素分散領域の代表色がキャンセルされた結果、図33(a)の比較例よりも少ない「11」のRGB代表色が最終的に算出される。
例えば、代表色補正処理(図30参照)のステップS3002では、図33(a)に示す16の代表色のグループのうち、5つの代表色のグループG31~G35が、画素数が「50」未満であると判定される。本例では、図32に例示の手法によって、グループG32,G34,G35の縦横サイズが所定範囲THを超えると判断される。したがって、図33(b)に示すように、グループG32,G34,G35に対応する代表色がキャンセルされる。これにより、ノイズ画素を表示するための不要な代表色を削減できる。
本例では、グループG31,G33の縦横サイズが所定範囲THを超えるため、グループG31,G33に対応する代表色はキャンセルされない。これらのグループG31,G33は、画素数が少ないものの、画像上の相対的に狭い範囲に分布している。このようなグループの画素は、少ない画素数で重要な情報を示す画像(例えば印鑑)を表すことがある。したがって、グループG31,G33の代表色をキャンセルしないことで、少ない画素数で重要な情報を示す画像を、各グループの代表色で正確に表示できる。
[6.第6実施形態]
つづいて、第6実施形態について説明する。第5実施形態は、画像読取装置によって実現する実施形態である。本実施形態は、第1実施形態の図2を図19に置き換えたものである。なお、同一の機能部には同一の符号を付し、説明については省略する。
つづいて、第6実施形態について説明する。第5実施形態は、画像読取装置によって実現する実施形態である。本実施形態は、第1実施形態の図2を図19に置き換えたものである。なお、同一の機能部には同一の符号を付し、説明については省略する。
第1実施形態から第5実施形態では、減色処理を実行するカラー画像処理装置20を画像形成装置1が備える場合について説明したが、カラー画像処理装置20は、画像形成装置1以外の装置に備えられてもよい。例えば、第1実施形態から第4実施形態において説明したカラー画像処理装置20を、フラットベッドスキャナ等の画像読取装置2が有する画像処理装置に適用した例について説明する。
図34は、本実施形態における画像読取装置2の機能的構成を示すブロック図である。画像読取装置2は、図34に示すように、カラー画像入力装置10、カラー画像処理装置20、送受信装置40、操作パネル50、記憶部60、制御部70を備えて構成される。
また、本実施形態では、カラー画像処理装置20は、A/D変換部201、シェーディング補正部202、原稿種別判定部203、入力階調補正部204、領域分離処理部205、色補正部206、空間フィルタ処理部208、解像度変換処理部209、出力階調補正部210、色数変換処理部211、階調再現処理部212、圧縮処理部213、ファイル生成部214、色数変換判定処理部215を備えている。色数変換処理部211は、第1実施形態から第4実施形態にて説明した処理と同様の処理が実行される。
画像読取装置2で実行される各種処理は、画像読取装置2に備えられる制御部70(CPU(Central Processing Unit)あるいはDSP(Digital Signal Processor)等のプロセッサを含むコンピュータ)により制御される。
なお、画像読取装置2は、スキャナに限定されることはなく、例えば、デジタルスチルカメラ等のカメラを搭載した電子機器類(例えば、携帯電話、スマートフォン、タブレット端末等)であってもよい。また、カラー画像処理装置20において実行される処理は、例えばサーバ装置(ネットワークを経由した画像処理装置)により実行されてもよい。
[7.変形例]
本発明は上述した各実施の形態に限定されるものではなく、種々の変更が可能である。すなわち、本発明の要旨を逸脱しない範囲内において適宜変更した技術的手段を組み合わせて得られる実施の形態についても本発明の技術的範囲に含まれる。
本発明は上述した各実施の形態に限定されるものではなく、種々の変更が可能である。すなわち、本発明の要旨を逸脱しない範囲内において適宜変更した技術的手段を組み合わせて得られる実施の形態についても本発明の技術的範囲に含まれる。
また、上述した実施形態は、説明の都合上、それぞれ別に説明している部分があるが、技術的に可能な範囲で組み合わせて実行してもよいことは勿論である。
また、上述した実施形態は、画像形成装置や画像処理装置によって減色処理を実現するものとして説明したが、本実施形態において説明した減色処理は、PC(Personal Computer)やサーバ装置において実行されるプログラムとして実現されてもよい。例えば、インターネット上に配置されたサーバ装置において、本実施形態において説明した減色処理を実現するウェブサービスが展開されてもよい。この場合、当該サーバ装置は、他の装置から受信した画像を入力画像として減色処理を実行し、減色画像を当該他の装置からダウンロード可能な形態で提供すればよい。
また、実施形態において各装置で動作するプログラムは、上述した実施形態の機能を実現するように、CPU等を制御するプログラム(コンピュータを機能させるプログラム)である。そして、これら装置で取り扱われる情報は、その処理時に一時的に一時記憶装置(例えば、RAM)に蓄積され、その後、各種ROM(Read Only Memory)やHDD等の記憶装置に格納され、必要に応じてCPUによって読み出し、修正・書き込みが行なわれる。
ここで、プログラムを格納する記録媒体としては、半導体媒体(例えば、ROMや、不揮発性のメモリカード等)、光記録媒体・光磁気記録媒体(例えば、DVD(Digital Versatile Disc)、MO(Magneto Optical Disc)、MD(Mini Disc)、CD(Compact Disc)、BD (Blu-ray(登録商標) Disk) 等)、磁気記録媒体(例えば、磁気テープ、フレキシブルディスク等)等の何れであってもよい。また、ロードしたプログラムを実行することにより、上述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、オペレーティングシステムあるいは他のアプリケーションプログラム等と共同して処理することにより、本発明の機能が実現される場合もある。
また、市場に流通させる場合には、可搬型の記録媒体にプログラムを格納して流通させたり、インターネット等のネットワークを介して接続されたサーバコンピュータに転送したりすることができる。この場合、サーバコンピュータの記憶装置も本発明に含まれるのは勿論である。
1 画像形成装置
2 画像読取装置
2111 初期分類部
2112 領域分割部
2113 第1代表色算出部
2114 出力画像生成部
2118 第3代表色算出部
2119 代表色補正部
2 画像読取装置
2111 初期分類部
2112 領域分割部
2113 第1代表色算出部
2114 出力画像生成部
2118 第3代表色算出部
2119 代表色補正部
Claims (10)
- 画像に含まれる複数の画素のそれぞれを、色空間における無彩色の領域と有彩色の領域との何れかに分類する分類部と、
前記無彩色の領域を分割し、前記有彩色の領域を分割して、複数の分割領域を生成する分割部と、
前記複数の分割領域から複数の代表色をそれぞれ算出する第1算出部と、
前記複数の画素のそれぞれを、前記複数の代表色のうち画素値の差が最小となる代表色の画素に置き換えることで、前記画像の減色画像を生成する生成部と、を備え、
前記無彩色の領域及び前記有彩色の領域のそれぞれは、色空間に分布する当該領域内の画素と外接した直方体で表され、
前記分割部は、分割対象となる前記無彩色又は前記有彩色の領域について、前記直方体の最大の辺の長さ、及び前記直方体に属する画素数が分割条件を満たすと判断した場合、前記分割対象の領域を分割する、
画像生成装置。 - 前記分割部は、前記直方体の最大の辺の長さが所定長さ以下であるか、又は前記直方体に属する画素数が所定数未満である場合、前記分割条件を満たさないと判断して前記分割対象の領域を分割しない、
請求項1に記載の画像生成装置。 - 前記分割部は、所定輝度以上の高輝度領域が前記複数の分割領域に含まれ、且つ前記高輝度領域が所定サイズよりも大きい場合、前記高輝度領域を前記所定サイズ以下の大きさまで分割する、
請求項1又は2に記載の画像生成装置。 - 前記分割部は、所定数未満の画素数の少画素領域が前記複数の分割領域に含まれる場合、前記少画素領域をキャンセルする、
請求項1又は2に記載の画像生成装置。 - 前記分割部は、
分割対象となる前記無彩色が前記分割条件を満たす場合、前記無彩色の領域の数が第1所定数となるまで、前記無彩色の領域を中央値分割法で分割し、
分割対象となる前記有彩色が前記分割条件を満たす場合、前記有彩色の領域の数が第2所定数となるまで、前記有彩色の領域を中央値分割法で分割する、
請求項1又は2に記載の画像生成装置。 - 複数の画素のそれぞれを前記複数の代表色のうちで最も近似する対象代表値のグループに分類し、前記グループに分類された画素の画素値に基づいて前記対象代表値を更新するK-means法によって、前記複数の代表色を更新する第2算出部を、更に備え、
前記第2算出部は、色空間における前記画素と前記対象代表値との距離が所定値を超える場合、前記画素を前記グループに分類しない、
請求項1又は2に記載の画像生成装置。 - 更新された前記複数の代表色のうちで所定の低輝度代表色を、前記所定の低輝度代表色の前記グループに属する最大輝度の画素値と最小輝度の画素値との平均に基づいて補正する第1補正部を、さらに備えた、
請求項6に記載の画像生成装置。 - 更新された前記複数の代表色のうちで、対応する前記グループが所定数未満の画素を含み、且つ画像領域における前記画素の位置の分散が所定範囲を超える代表色を、キャンセルする第2補正部を、さらに備えた、
請求項6又は7に記載の画像生成装置。 - 画像生成装置の制御方法であって、
画像に含まれる複数の画素のそれぞれを、色空間における無彩色の領域と有彩色の領域との何れかに分類し、
前記無彩色の領域を分割し、前記有彩色の領域を分割して、複数の分割領域を生成し、
前記複数の分割領域から複数の代表色をそれぞれ算出し、
前記複数の画素のそれぞれを、前記複数の代表色のうち画素値の差が最小となる代表色の画素に置き換えることで、前記画像の減色画像を生成し、
前記無彩色の領域及び前記有彩色の領域の各々は、色空間に分布する当該領域内の画素と外接した直方体で表され、
前記無彩色の領域及び前記有彩色の領域を分割することは、分割対象となる前記無彩色又は前記有彩色の領域について、前記直方体の最大の辺の長さ、及び前記直方体に属する画素数が分割条件を満たすと判断した場合、前記分割対象の領域を分割することを含む、
制御方法。 - コンピュータに、
画像に含まれる複数の画素のそれぞれを、色空間における無彩色の領域と有彩色の領域との何れかに分類する分類機能と、
前記無彩色の領域を分割し、前記有彩色の領域を分割して、複数の分割領域を生成する分割機能と、
前記複数の分割領域から複数の代表色をそれぞれ算出する第1算出機能と、
前記複数の画素のそれぞれを、前記複数の代表色のうち画素値の差が最小となる代表色の画素に置き換えることで、前記画像の減色画像を生成する生成機能と、を実現させ、
前記無彩色の領域及び前記有彩色の領域のそれぞれは、色空間に分布する当該領域内の画素と外接した直方体で表され、
前記分割機能は、分割対象となる前記無彩色又は前記有彩色の領域について、前記直方体の最大の辺の長さ、及び前記直方体に属する画素数が分割条件を満たすと判断した場合、前記分割対象の領域を分割する、
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022104104A JP2024004517A (ja) | 2022-06-29 | 2022-06-29 | 画像生成装置、制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022104104A JP2024004517A (ja) | 2022-06-29 | 2022-06-29 | 画像生成装置、制御方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024004517A true JP2024004517A (ja) | 2024-01-17 |
Family
ID=89540342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022104104A Pending JP2024004517A (ja) | 2022-06-29 | 2022-06-29 | 画像生成装置、制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024004517A (ja) |
-
2022
- 2022-06-29 JP JP2022104104A patent/JP2024004517A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8792735B2 (en) | Image compressing apparatus which extracts black text edge pixels from an image and compresses a layer with black text edge pixels extracted | |
US7502150B2 (en) | Color converting device, image forming apparatus, color conversion method, computer program and recording medium | |
US8463032B2 (en) | Image compressing apparatus, compressed image outputting apparatus, image compression method, and recording medium | |
JP4707751B2 (ja) | 画像圧縮方法、画像圧縮装置、画像形成装置、コンピュータプログラム及び記録媒体 | |
US8254672B2 (en) | Image compressing method, image compressing apparatus and image forming apparatus | |
JP4197346B2 (ja) | 画像処理装置、画像処理方法、画像形成装置、画像処理プログラムおよび記録媒体 | |
JP2010171735A (ja) | 画像圧縮方法、画像圧縮装置、画像形成装置、コンピュータプログラム及び記録媒体 | |
JP4197276B2 (ja) | 画像処理装置、画像読取装置、画像形成装置、および画像処理方法 | |
JP4731595B2 (ja) | 画像処理装置、画像形成装置、コンピュータプログラム、記録媒体及び画像処理方法 | |
JP4226278B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム、およびこれを記録した記録媒体 | |
JP4112413B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム、及び画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2024004517A (ja) | 画像生成装置、制御方法及びプログラム | |
JP4522978B2 (ja) | 画像処理装置、画像処理方法、画像形成装置、画像処理プログラムおよび記録媒体 | |
JP2023028586A (ja) | 画像生成装置、制御方法及びプログラム | |
JP4176656B2 (ja) | 画像処理装置、画像処理方法、画像形成装置、画像処理プログラムおよび該プログラムを記録した記録媒体 | |
JP5122507B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、プログラム、記録媒体 | |
JP2004214908A (ja) | 画像処理装置、及びそれを備えた画像形成装置 | |
JP4808282B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラムおよび画像処理プログラムを記録する記録媒体 | |
JP4991677B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラムおよび画像処理プログラムを記録した記録媒体 | |
JP4266002B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム、および記録媒体 | |
JP4118823B2 (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム、および記録媒体 | |
JP2022161721A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
JP2001285656A (ja) | カラー画像処理方法及びカラー画像処理装置並びにカラー画像形成装置 | |
JP2011249886A (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラムおよび記録媒体 | |
JP2005117346A (ja) | 画像処理方法および画像処理装置並びにそれを備えた画像形成装置、プログラム、記録媒体 |