JP2007088825A - 画像処理装置および画像処理方法 - Google Patents
画像処理装置および画像処理方法 Download PDFInfo
- Publication number
- JP2007088825A JP2007088825A JP2005275272A JP2005275272A JP2007088825A JP 2007088825 A JP2007088825 A JP 2007088825A JP 2005275272 A JP2005275272 A JP 2005275272A JP 2005275272 A JP2005275272 A JP 2005275272A JP 2007088825 A JP2007088825 A JP 2007088825A
- Authority
- JP
- Japan
- Prior art keywords
- color
- code
- map
- image data
- pixel
- 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
Images
Landscapes
- Editing Of Facsimile Originals (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Abstract
【課題】グラデーション等の中間色の指定と再現とを効率的に行うことができる画像処理装置および画像処理方法を提供すること。
【解決手段】本発明は、特定の色を表現する単色カラーコードおよび前記特定の色以外の色を表現する中間色カラーコードを定義したカラーマップ143、ならびにカラーマップ143を用いて表現された画像データ20を入力する入力手段12と、入力した画像データ20およびカラーマップ143を用い、画像データ20の対象画素がカラーマップ143の単色カラーコードで指定されている場合はその単色カラーコードの示すカラー値を出力し、対象画素がカラーコードの中間色カラーコードで指定されている場合はその中間色カラーコードの示す2つの単色カラーコードおよびそれらに対応した2つの画素位置から対象画素の位置による補間計算によって求めたカラー値を出力する変換手段14とを備えるものである。
【選択図】図1
【解決手段】本発明は、特定の色を表現する単色カラーコードおよび前記特定の色以外の色を表現する中間色カラーコードを定義したカラーマップ143、ならびにカラーマップ143を用いて表現された画像データ20を入力する入力手段12と、入力した画像データ20およびカラーマップ143を用い、画像データ20の対象画素がカラーマップ143の単色カラーコードで指定されている場合はその単色カラーコードの示すカラー値を出力し、対象画素がカラーコードの中間色カラーコードで指定されている場合はその中間色カラーコードの示す2つの単色カラーコードおよびそれらに対応した2つの画素位置から対象画素の位置による補間計算によって求めたカラー値を出力する変換手段14とを備えるものである。
【選択図】図1
Description
本発明は、複数のカラーコードによってカラー値を規定するカラーマップを用いて表現された画像データを取り込んで画素毎にカラー値を生成する画像処理装置および画像処理方法に関する。
従来、画像データに対する色付けを行う方法として、カラーコードを用いる方法がある(例えば、特許文献1、2参照。)。主に、表示色数が限られている表示装置などに用いられている。この場合、色表現は限定されるが、カラーパレットを用いることで色指定・色管理が容易となる特徴をもつ。また、フルカラープリンタを対象とした場合にも、中間段階の処理データ量・演算量が削減できるため、有効である。
代表的なPDL(Page Description Language)では、上記カラーコードを用いる色付をカラースペースの1つとしてサポートしている(Indexed Color Space)。カラーコードによる表現対象は、文字や簡単な図形などが一般的である。これらのオブジェクトにグラデーションを加えられると、表現力が増すことになる。
しかしながら、従来の方法では、グラデーションを複数のカラーコードを用いて擬似階調として表現する手法を用いているため、データ作成側に負荷がかかり、また階調表現力とカラーコード消費とのトレードオフが発生する。したがって、滑らかなグラデーションを実現しようとすると多くの処理時間がかかり、一方、処理時間の短縮化を図ろうとすると粗いグラデーションとなってしまうという問題が発生する。よって、本発明は、グラデーション等の中間色の指定と再現とを効率的に行うことができる画像処理装置および画像処理方法を提供することを目的とする。
本発明はこのような目的を達成するために成されたものである。すなわち、本発明は、カラーマップを構成するカラーコードによって表現された画像データから画素毎のカラー値を生成する画像処理装置において、特定の色を表現する単色カラーコードおよび2つの単色カラーコードとそれらに対応した2つの画素位置とから前記特定の色以外の色を表現する中間色カラーコードを定義したカラーマップ、ならびにカラーマップを用いて表現された画像データを入力する入力手段と、入力手段で入力した画像データおよびカラーマップを用い、画像データのビットマップにおける各画素毎にカラー値を求めるにあたり、対象画素がカラーマップの単色カラーコードで指定されている場合はその単色カラーコードの示すカラー値を出力し、対象画素がカラーコードの中間色カラーコードで指定されている場合はその中間色カラーコードの示す2つの単色カラーコードおよびそれらに対応した2つの画素位置から対象画素の位置による補間計算によって求めたカラー値を出力する変換手段とを備えるものである。
また、本発明は、カラーマップを構成するカラーコードによって表現された画像データから画素毎のカラー値を生成する画像処理方法において、特定の色を表現する単色カラーコードおよび2つの単色カラーコードとそれらに対応した2つの画素位置とから前記特定の色以外の色を表現する中間色カラーコードを定義したカラーマップ、ならびにカラーマップを用いて表現された画像データを入力する工程と、入力した画像データおよびカラーマップを用い、画像データのビットマップにおける各画素毎にカラー値を求めるにあたり、対象画素がカラーマップの単色カラーコードで指定されている場合はその単色カラーコードの示すカラー値を出力し、対象画素がカラーコードの中間色カラーコードで指定されている場合はその中間色カラーコードの示す2つの単色カラーコードおよびそれらに対応した2つの画素位置から対象画素の位置による補間計算によって求めたカラー値を出力する工程とを備えるものである。
このような本発明では、画像データの色づけとしてカラーマップを用いることで、限定されたカラーコードによって色を表現し、データ処理の効率化を図る。また、カラーマップにおける特定の色を表現する単色カラーコードで表現されない中間色については、2つの単色カラーコードおよびそれらと対応した2つの画素位置と対象画素の位置とによる補間計算によってカラー値を求めるため、簡単な計算処理で中間色のカラー値を画素ごとに得ることができ、どのようなオブジェクト形状であっても効率良く滑らかなグラデーション等を表すことができる色づけを表現できるようになる。
したがって、本発明によれば、カラーコードによって色づけを行うアプリケーションにおいて、スループットを低下させずにグラデーションオブジェクトを追加することができ、印刷結果の表現力を増加させることが可能となる。また、グラデーションオブジェクトの色確認・修正が容易となり、全体の色管理がカラーパレットを用いて統一的にできるようになる。
以下、本発明の実施の形態を図に基づき説明する。図1は、本実施形態に係る画像処理装置を説明するブロック図である。本実施形態の画像処理装置1は、主としてカラープリンタに適用されるもので、ホスト計算機2から送られる画像データ20を受けて、この画像データ20に基づく各種処理を行い、カラープリンタの有するプリントエンジン(図示せず)によって処理後のカラー画像を用紙に印刷出力するものである。本実施形態の画像処理装置1は、このようなカラープリンタ等の機器における画像処理部分のうち、カラーマップで示される画像データ20の画素毎の色を最適なカラー値に変換する処理に特徴がある。
ホスト計算機2から送られる画像データ20には、その画像データ20の色付けとして定義されるカラーマップが指定手段21によって指定されている。カラーマップは予め決められた特定の色を表現する単色カラーコードと、単色カラーコードで表される特定の色以外の色を表現する中間色カラーコードとによって構成されている。
単色カラーコードでは、特定の色に対応して例えばR(赤)、G(緑)、B(青)のカラー値が設定されたもので、画像処理装置1ではこのカラーマップを参照して画素データ20の各画素毎に指定されたカラーコードからR(赤)、G(緑)、B(青)のカラー値を求め、印刷出力する際の色情報として用いている。また、中間色カラーコードもホスト計算機2から画像処理装置1へ送られる際には単色カラーコードと同様なコード情報であるため、データ転送の負荷をかけることなく高速に転送できる。
つまり、このようなカラーマップを用いることで、少ない情報量によって色を表現することができ、ホスト計算機からカラープリンタ等への画像データ20の転送処理を高速化することが可能となる。
画像処理装置1は、ホスト計算機2から画像データ20を受け付けて一時格納する入力バッファ11と、入力バッファ11から画像データ20をライン単位でラインバッファ13に取り込む入力手段12と、ラインバッファ13から出力された画像データ20から画素毎にカラー値を変換する変換手段14と、変換手段14によって画素毎に変換されたカラー値を展開するページバッファ15とを備えている。
ホスト計算機2から送られる画像データ20がランレングス圧縮されている場合、入力手段12は入力バッファ11から出力されるライン単位の画像データをランレングスデコード部121で伸長して、ラインバッファ13へ入力する。
変換手段14は、スキャン操作部141、カラー値計算部142およびカラーマップ143を備えている。スキャン操作部141は、ラインバッファ13から出力されるライン単位の画素のデータを画素毎にスキャンする部分である。カラー値計算部142は、スキャン操作部141でスキャンした画素毎の画像データが示すカラーコードからカラー値を求める部分である。カラーマップ143は画像データの指定手段21によって指定されたもので、画像データ毎に取り込まれる。このカラーマップ143をカラー値計算部142が参照することで画素毎のカラー値を求めることができる。
カラーマップは、図2に示すカラーコードとカラー属性とによって定義され、各画像データ毎に設定されている。本実施形態の画像処理装置では、このカラー属性定義によってカラーコードが設定されるカラーマップを参照して各画素毎にカラー値を求めるにあたり、対象画素がカラーマップの単色カラーコードで指定される場合はその単色カラーコードの示すカラー値を出力し、カラーコードの中間色カラーコードで指定される場合はその中間色カラーコードの示す2つの単色カラーコードおよびそれらと対応した2つの画素位置から対象画素の位置による補間計算によって求めたカラー値を出力する点に特徴がある。
したがって、定義されるカラーマップとしては、単色カラーコードを示すためのカラー属性に加え、中間色カラーコード(例えば、グラデーション)を示すためのカラー属性が定義されている。図3は、カラーマップのデータ構造の例を示す模式図である。この例で示すカラーマップでは、代表的な色がN個分の単色カラーコードとして設定されている。この単色カラーコードには、1つのカラーコードに対応して赤(R)、緑(G)、青(B)の各カラー値が設定されている。したがって、単色カラーコードを用いることでN色を表現できることになる。
中間色カラーコードには、1つのカラーコードに対応して長さ、種別、パラメータが定義されている。特に、種別としては、例えば「1」が線形のグラデーション、「2」が放射型のグラデーションというように、色の変化の方向性が示されている。また、パラメータには、開始点のカラーコード(CC1)、終了点のカラーコード(CC2)、開始点の座標(X1,Y1)、終了点の座標(X2,Y2)、繰り返しの間隔(INT)が設定される。
ここで、種別が「1:線形」の場合には、開始点のカラーコード(CC1)、終了点のカラーコード(CC2)、開始点の座標(X1,Y1)、終了点の座標(X2,Y2)、間隔が設定されるが、「2:放射型」の場合には、開始点のカラーコード(CC1)、終了点のカラーコード(CC2)、開始点の座標(X1,Y1)、間隔と、終了点の座標(X2)の代わりに半径が設定される。
また、パラメータで設定される「繰り返しの間隔」とは、グラデーションの繰り返しを定義したものであり、定義された間隔で同じグラデーションが繰り返されるものである。このような「間隔」に「種別」を組み合わせることにより、様々なグラデーションの態様を定義することができる。図3に示すカラーマップでは、単色カラーコードで示されない色がM個分の中間色カラーコードとして設定されている。
カラーマップにおける単色カラーコードおよび中間色カラーコードはユーザ(もしくは画像データを生成するアプリケーション)によって自由に定義できるものである。例えば、8ビット(256個)でカラーマップを表現する場合、単色カラーコードN個分と中間色カラーコードM個部とが合計256個に収まるよう定義すればよい。
本実施形態では、このような限られたデータ数によるデータ構造のカラーマップを参照して画像データの色付けを行う場合に、カラーマップで定義される単色カラーコードのカラー値だけでなく、グラデーションのような中間色のカラー値も取り扱うことができるようになっている。
次に、図4のフローチャートを用いて本実施形態の画像処理装置での動作(画像処理方法)を説明する。なお、以下の説明で図4に示されない符号は図1を参照するものとする。先ず、ホスト計算機2から送られた画像データ20の設定手段21によって設定されたカラーマップを読み込む(ステップS1)。読み込んだカラーマップは変換手段に取り込まれる。
次に、入力手段12は画像データを1ライン読み込み(ステップS2)、デコードを行う(ステップS3)。次いで、変換手段14のスキャン操作部141は、ラインバッファ13から出力される画像データを画素毎にスキャンし、対象画素のカラーコードがカラーマップで定義される中間色コード(グラデーションコード)であるか否かを判断する(ステップS4)。
ここでグラデーションコードでない、すなわち単色カラーコードである場合にはそのカラーコードに対応するカラー値をカラーマップから参照して出力する(ステップS5)。一方、グラデーションコードであった場合、カラー値計算部142がそのカラーコードから計算によってカラー値を求めて出力する(ステップS6)。
中間色カラーコードの場合のカラー値の計算は、中間色カラーコードの定義で示される種別によって切り替えて行う。図4の囲みに示す計算式は、線形グラデーションの場合および放射型グラデーションの場合の例を示している。
線形グラデーションの場合の計算は、中間色カラーコードの定義で示される開始点(始点)のカラーコード(CC1)、終了点(終点)のカラーコード(CC2)、開始点の座標(X1,Y1)、終了点の座標(X2,Y2)と対象画素の位置(座標)とを用いて、始点から終点に向かうベクトルを用いた線形補間を行う。また、放射型グラデーションの場合の計算は、中間色カラーコードの定義で示される開始点のカラーコード(CC1)、終了点のカラーコード(CC2)、開始点の座標(X1,Y1)、半径と対象画素の位置(座標)とを用いて放射状のベクトルを用いた線形補間を行う。いずれもカラーコードを利用した線形補間のため、迅速に中間色のカラー値を出力できる。
1つの画素のカラー値出力が終了したら次の画素へ移動し、1ライン分終了したら(ステップS7でYes)、次の1ライン分の読み込みを行う(ステップS2)。そして、全てのラインが終了したら次のページに移動し(ステップS8)、上記処理を繰り返す。これにより、ページバッファ15にはページ(バンド分)の各画素毎のカラー値が展開されることになる。
このような本実施形態では、フルカラーの印刷システムにおいて、画像データの可変データ部に含まれるカラーコードを分離して上記のような画素単位でのカラー値出力を行い、画像データのビットマップデータ(固定データ)と合成することで、単色カラーコードで示されるものはカラーマップの参照のみでカラー値を出力し、中間色カラーコードで示されるものは2つの単色カラーコードのカラー値等を用いて簡単な計算で中間色のカラー値を出力でき、画素単位でのカラー値変換出力でありながらスループットを大幅に改善することが可能となる。また実施形態で示したグラデーション以外でも、中間色カラーコードと対象画素の位置とによってカラー値を計算する手続きを与えることで、様々な中間色を表現することが可能である。
1…画像処理装置、2…ホスト計算機、11…入力バッファ、12…入力手段、13…ラインバッファ、14…変換手段、15…ページバッファ、20…画像データ、21…指定手段、121…ランレングスデコード部、141…スキャン操作部、142…カラー値計算部、143…カラーマップ
Claims (5)
- カラーマップを構成するカラーコードによって表現された画像データから画素毎のカラー値を生成する画像処理装置において、
特定の色を表現する単色カラーコードおよび2つの前記単色カラーコードとそれらに対応した2つの画素位置とから前記特定の色以外の色を表現する中間色カラーコードを定義したカラーマップ、ならびに前記カラーマップを用いて表現された画像データを入力する入力手段と、
前記入力手段で入力した前記画像データおよび前記カラーマップを用い、前記画像データのビットマップにおける各画素毎にカラー値を求めるにあたり、対象画素が前記カラーマップの単色カラーコードで指定されている場合はその単色カラーコードの示すカラー値を出力し、対象画素が前記カラーコードの中間色カラーコードで指定されている場合はその中間色カラーコードの示す前記2つの単色カラーコードおよびそれらに対応した2つの画素位置から前記対象画素の位置による補間計算によって求めたカラー値を出力する変換手段と
を備えることを特徴とする画像処理装置。 - 前記変換手段は、前記補間計算として直線補間を用いる
ことを特徴とする請求項1記載の画像処理装置。 - 前記変換手段は、前記中間色カラーコードの示す前記2つの単色カラーコードと対応した2つの画素位置を、カラー値の変化の方向を表すベクトルの始点と終点として前記対象画素の位置による補間計算を行う
ことを特徴とする請求項1記載の画像処理装置。 - 前記変換手段は、前記中間色カラーコードで指定されるパラメータに応じて前記補間計算の種類を切り替える
ことを特徴とする請求項1記載の画像処理装置。 - カラーマップを構成するカラーコードによって表現された画像データから画素毎のカラー値を生成する画像処理方法において、
特定の色を表現する単色カラーコードおよび2つの前記単色カラーコードとそれらに対応した2つの画素位置とから前記特定の色以外の色を表現する中間色カラーコードを定義したカラーマップ、ならびに前記カラーマップを用いて表現された画像データを入力する工程と、
入力した前記画像データおよび前記カラーマップを用い、前記画像データのビットマップにおける各画素毎にカラー値を求めるにあたり、対象画素が前記カラーマップの単色カラーコードで指定されている場合はその単色カラーコードの示すカラー値を出力し、対象画素が前記カラーコードの中間色カラーコードで指定されている場合はその中間色カラーコードの示す前記2つの単色カラーコードおよびそれらに対応した2つの画素位置から前記対象画素の位置による補間計算によって求めたカラー値を出力する工程と
を備えることを特徴とする画像処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005275272A JP2007088825A (ja) | 2005-09-22 | 2005-09-22 | 画像処理装置および画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005275272A JP2007088825A (ja) | 2005-09-22 | 2005-09-22 | 画像処理装置および画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007088825A true JP2007088825A (ja) | 2007-04-05 |
Family
ID=37975365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005275272A Pending JP2007088825A (ja) | 2005-09-22 | 2005-09-22 | 画像処理装置および画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007088825A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009105715A (ja) * | 2007-10-24 | 2009-05-14 | Seiko Epson Corp | 画像処理方法、そのプログラム及び画像処理装置 |
-
2005
- 2005-09-22 JP JP2005275272A patent/JP2007088825A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009105715A (ja) * | 2007-10-24 | 2009-05-14 | Seiko Epson Corp | 画像処理方法、そのプログラム及び画像処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5267255B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2011139164A (ja) | 画像処理装置及びその処理方法 | |
US7777924B2 (en) | Color conversion device and color conversion program | |
JP6194903B2 (ja) | 画像処理装置及び画像処理方法 | |
JP2007088825A (ja) | 画像処理装置および画像処理方法 | |
JPH10191090A (ja) | 色変換テーブルの製造装置及び製造方法並びに記録媒体 | |
JP2006352755A (ja) | カラー画像生成装置 | |
JP2007083556A (ja) | 画像処理装置および画像処理方法 | |
JP4428028B2 (ja) | 画像処理装置、及び画像処理のためのプログラム | |
US20140028696A1 (en) | ICC color conversion using GPU | |
JP2000022975A (ja) | データ変換装置および方法 | |
JP2011139165A (ja) | 画像処理装置及びその処理方法 | |
JP2011025478A (ja) | 画像形成装置、画像形成方法、プログラムおよび記録媒体 | |
JP6740729B2 (ja) | データ変換装置、データ変換方法およびデータ変換プログラム | |
JP6844248B2 (ja) | 画像処理装置、および、コンピュータプログラム | |
JP2010220131A (ja) | 画像符号化装置、及び、画像符号化方法 | |
US7675642B2 (en) | Print apparatus and print method | |
JP6521650B2 (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP5523177B2 (ja) | 画像符号化装置及びその制御方法 | |
JP2009038562A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP2006019899A (ja) | 色変換装置及び色変換方法 | |
JP5046237B2 (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP5093133B2 (ja) | 色変換装置、色変換方法、及び色変換プログラム | |
JP2010130374A (ja) | 画像形成装置 | |
JP2008071317A (ja) | 画像形成装置 |