JP2023065885A - Image processing device, image processing method and program - Google Patents
Image processing device, image processing method and program Download PDFInfo
- Publication number
- JP2023065885A JP2023065885A JP2021176278A JP2021176278A JP2023065885A JP 2023065885 A JP2023065885 A JP 2023065885A JP 2021176278 A JP2021176278 A JP 2021176278A JP 2021176278 A JP2021176278 A JP 2021176278A JP 2023065885 A JP2023065885 A JP 2023065885A
- Authority
- JP
- Japan
- Prior art keywords
- input
- color
- value
- output
- color space
- 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
- 238000003672 processing method Methods 0.000 title claims 3
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 abstract description 35
- 238000000034 method Methods 0.000 abstract description 20
- 238000009826 distribution Methods 0.000 description 30
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 239000003086 colorant Substances 0.000 description 9
- 238000007639 printing Methods 0.000 description 5
- 230000002194 synthesizing effect Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000001308 synthesis method Methods 0.000 description 1
Images
Landscapes
- Color, Gradation (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
- Record Information Processing For Printing (AREA)
Abstract
Description
本開示は、色変換処理のための画像処理技術に関する。 The present disclosure relates to image processing technology for color conversion processing.
従来、図形を描画するために図形が持つ座標情報等から図形の輪郭情報(エッジ情報とも呼ぶ)を抽出し、抽出した輪郭情報に基づいて画像を形成するレンダリング手法は一般に広く利用されている。 2. Description of the Related Art Conventionally, a rendering method has been widely used in which outline information (also called edge information) of a figure is extracted from the coordinate information of the figure in order to draw the figure, and an image is formed based on the extracted outline information.
デジタルデータとして提供される印刷対象のドキュメント(文字や図形、写真イメージを含む)はカラーデータで構成される場合が多く、ディスプレイ等では色付きのドキュメントとして表示されたり、画像処理装置において編集、保存されたりする。このようなドキュメントを紙等に印刷する場合は、ドキュメントをページ記述言語(PDL)形式のデータ(PDLデータ)に変換してプリンタに送信し、PDLデータをプリンタ内で処理して画像を記録媒体上に形成する。PDLデータに基づき印刷するために、PDLデータをRIP(Raster Image Processor)処理する際、PDLデータ内の各オブジェクトに対応する色に対して、CMS(カラーマネージメントシステム)等による色変換処理が実行される。 Documents to be printed that are provided as digital data (including characters, graphics, and photographic images) are often composed of color data. or When printing such a document on paper, etc., the document is converted to page description language (PDL) format data (PDL data) and sent to the printer, the PDL data is processed in the printer, and the image is transferred to the recording medium. Form on top. In order to print based on the PDL data, when RIP (Raster Image Processor) processes the PDL data, color conversion processing is executed by a CMS (color management system) or the like for the colors corresponding to each object in the PDL data. be.
この色変換処理は、高速化することが望まれているが、多くの場合ソフトウエアで実現されているため、その速度はソフトウエアを実行するCPUでの処理速度に依存する。特許文献1では、色変換処理の高速化のためにカラールックアップテーブル(カラーLUT)を使用する方法が提案されている。 This color conversion processing is desired to be speeded up, but in many cases, it is implemented by software, so the speed depends on the processing speed of the CPU that executes the software. Patent Document 1 proposes a method of using a color lookup table (color LUT) to speed up color conversion processing.
しかし、特許文献1の方法では、組み込み環境で用いられるプロセッサを用いる場合等、キャッシュメモリのサイズに制約が大きい環境では、必要なカラーLUTを一度に全て展開できず、色変換処理を効率良く処理することが困難であるという課題がある。 However, with the method disclosed in Japanese Patent Laid-Open No. 2002-100000, in environments where the size of the cache memory is severely constrained, such as when a processor used in an embedded environment is used, the necessary color LUT cannot be developed all at once, and the color conversion process can be efficiently processed. There is a problem that it is difficult to
本開示によれば、複数の色成分からなる入力色空間の入力値を出力色空間の出力値に変換する画像処理装置であって、前記入力値と前記出力値とが紐付けられたルックアップテーブルを参照することにより、前記入力色空間における変換対象の入力値と前記複数の色成分のうちの1つの色成分が同じ値である前記入力色空間における複数の入力値に対応する複数の出力値を取得する取得手段と、前記ルックアップテーブルを参照して取得した複数の出力値を用いて補間演算を行い、前記変換対象の入力値に対応する出力値を算出する算出手段と、を備えたことを特徴とする。 According to the present disclosure, an image processing device that converts an input value in an input color space made up of a plurality of color components into an output value in an output color space, wherein the lookup in which the input value and the output value are associated A plurality of outputs corresponding to a plurality of input values in the input color space in which an input value to be converted in the input color space and one of the plurality of color components have the same value by referring to a table. obtaining means for obtaining a value; and calculating means for performing an interpolation operation using a plurality of output values obtained by referring to the lookup table to calculate an output value corresponding to the input value to be converted. characterized by
本開示では、ハードウェア資源を効率良く利用して色変換処理を行うことができる。 In the present disclosure, it is possible to efficiently use hardware resources to perform color conversion processing.
以下、添付の図面を参照しながら本開示の実施形態について詳細に説明する。 Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
<実施形態1>
本実施形態のプリンティングシステムにおける画像処理の概要について説明する。図1に、本実施形態のカラープリンタ2010における画像形成部の概略構成例を示す。同図において、2200~2230はカラーインクカートリッジであり、それぞれイエロー(Y)カラーインク,マゼンタ(M)カラーインク,シアン(C)カラーインク,ブラック(K)カラーインクが充填されている。各インクカートリッジ2200~2230と圧力ポンプ2160とは、インクを供給するためのそれぞれ独立したパイプで接続され、圧力ポンプ2160からプリントヘッド2120までは一定の圧力で各色のインクが圧送されるようになっている。
<Embodiment 1>
An overview of image processing in the printing system of this embodiment will be described. FIG. 1 shows a schematic configuration example of an image forming unit in the
記録紙は、カラープリンタ2010の後面より供給され、プラテン2110とフロントガイドローラ2150により固定される。また、カラープリンタ2010の操作は、コントロールパネル2180上のキーを押下することで行われ、コントロールボード2190がカラープリンタ2010のすべての動作を制御する。
A recording sheet is supplied from the rear surface of the
このカラープリンタ2010により印刷を行うには、不図示のネットワークインタフェース等を介してコントロールボード2190へ、印刷制御命令および印刷データを送ればよい。ネットワークは無線ネットワークでも良く、プリンタが設置箇所に近いAPへ適宜接続されるよう構成されている。印刷制御命令および印刷データを受信したコントロールボード2190は、例えば色指定命令にRGBが指定されている場合、その内部の色処理部によりRGBデータをCMYKデータへ変換した後、プリントヘッド2120を駆動して印刷を行う。
In order to print with the
図2は、コントロールボード2190を実現する画像処理装置のハードウェア構成の一例を示す図である。
FIG. 2 is a diagram showing an example of the hardware configuration of an image processing apparatus that implements the
図2において、CPU220は不図示の不揮発性記憶装置(ハードディスク等)からDRAM等のRAM224にロードされたOSや一般アプリケーション等のプログラムを実行し、後述するソフトウエアの機能を実現する。RAM224は、CPU220の主メモリ、ワークエリア等として機能する。
In FIG. 2, a
図2に示すCPU220とRAM224はバスで接続されているが、その内部にキャッシュメモリが用意され、RAM224のデータをCPU220へ渡す前段のPREローディング領域として機能する。CPU220に実装されるキャッシュは高速なSRAMを二段で構成される場合が多く、1つは、L1キャッシュ222であり、もう1つは、L2キャッシュ223である。キャッシュに対する内部ラインの選択方法としては、フルアソシアティブ、ダイレクトマップ、Nウェイセットアソシアティブなどの方式等、効率向上のための工夫が複数提案されている。
Although the
なお、本実施形態のCPU220は、シングルコアのCPUであるものを想定しているが、マルチコアのCPUを用いてもよいし、複数のCPUを利用してもよい。
Note that the
なお、本実施形態では、以下に示す画像処理装置の機能は、ソフトウエアにより実現されるものと説明するが、各機能を専用のハードウェアで画像処理装置に実装するようにしてもよい。 In this embodiment, the following functions of the image processing apparatus are described as being realized by software, but each function may be implemented in the image processing apparatus by dedicated hardware.
図3に、本実施形1に係る画像処理装置における内部処理タスクを説明した概説図を示す。 FIG. 3 shows a schematic diagram explaining internal processing tasks in the image processing apparatus according to the first embodiment.
システムタスク311は、印刷ジョブデータ(以降、PDLデータと呼ぶ)が渡されたことを検知すると、PDLタスク312へ印刷開始指令を発行する。
When the
PDLタスク312は、印刷開始指令を受け取ると、PDLデータに含まれる描画コマンドや印刷ジョブの設定情報を解析した結果を、画像形成タスク313に渡してRIP(Raster Image Processor)処理を開始させる。
Upon receiving a print start command, the
画像形成タスク313は、PDLデータの解析結果を受け取ると、PDLデータに記載されている図形、文字等の情報を解釈しながら画像データ(ラスター画像データ)の形成を開始し、生成したラスター画像データを制御タスク314に渡す。画像形成タスク313では、渡されたPDLデータ内に画像が埋め込まれている場合、必要に応じて補助記憶装置から対応する画像データを読み込むよう処理する。この時に画像データをメモリに読み込む速度は、典型的なシステムとしては例えば10MB毎秒程度の速度である。一方、画像形成タスク313が生成したラスター画像データは、例えばバンド単位で順次生成され、PDLタスク312へ画像データとして渡される。システムが想定しる平均的なデータ生成速度は、ここでは6MB毎秒程度を想定する。
When the
制御タスク314は、ラスター画像データを受け取ると、受け取ったラスター画像データに基づきプリンタエンジンに画像を形成させる。制御タスク314からの制御信号は、不図示の通信インターフェース(CI)と規定されたプロトコルに従い適時供給されるように構成されている。プリンタエンジン側で受け取る速度は、プリンタエンジンの種類により、その速度は異なるが、例えばここでは典型的な例として約1MB毎秒を想定する。いずれのケースでも画像形成・転送の帯域、処理時間の目安が設定されており、構成される各モジュールの中でそれぞれの処理の単位でボトルネックが発生しないように設計されている。
Upon receiving the raster image data, the
図4に、本実施形態に係る画像処理装置の各モジュールの構成例を示す。図4では、ユーザシステム411、CMSモジュール412、およびRIPモジュール413の3つのモジュールを図示している。
FIG. 4 shows a configuration example of each module of the image processing apparatus according to this embodiment. FIG. 4 illustrates three modules:
ユーザシステム411は、前述のシステムタスク311、及びPDLタスク312を実行するモジュールであり、印刷処理全体を制御するモジュールである。ジョブが入力されると下段のRIPモジュール413にジョブを渡し、印刷出力のためのラスター画像データを生成させるように構成されている。
A
CMSモジュール412は、CMS(カラーマネージメントシステム)処理を担当するモジュールであり、RIPモジュール413から色変換処理のために呼び出されるよう構成されている。CMSモジュール412は、色変換のための設定情報、その設定情報に基づいて適宜に生成された色変換用コンバーター(CONV-A等)、及び変換処理の一部で使われる展開データを保持するテーブル部等を有している。各色変換用のコンバーターは、例えばICCプロファイルやカラーLUT等のデータから補間演算処理を行い、所望の変換値を算出するが、処理を高速化するためキャッシュメモリにカラーLUTを展開して用いることもできる。キャッシュメモリに一度変換処理した入力値と出力値の値を一定量保持することで、繰り返し同じ色を変換するような場合には演算処理を省くことが出来る。また展開データは、γ値等の固定した値を保持しておき、こちらも都度計算することなく値の参照のみで変換をすることができる。
A
次に、図5において色変換処理における補間処理について説明する。図5は、カラーLUTの入力値を3次元で模式的に表したもので、入力色空間としてRGB色空間の3次元色空間とする。尚、入力色空間はRGB色空間に限定されず、次元数の異なるCMYK色空間等としてもよい。入力色空間および変換後の出力色空間には任意の色空間を用いることができる。 Next, interpolation processing in color conversion processing will be described with reference to FIG. FIG. 5 schematically shows the input values of the color LUT in three dimensions, and assumes that the input color space is the three-dimensional color space of the RGB color space. Note that the input color space is not limited to the RGB color space, and may be a CMYK color space having a different number of dimensions. Any color space can be used for the input color space and the converted output color space.
この3次元色空間は、複数の単位格子、例えば入力色空間の各軸を15分割する単位格子で区切られる。各色の階調が8ビットで表されるとき入力値は0から255の値をとるが、このとき各単位格子の各軸上には17個の入力値を持つことになる。変換対象点tiに対応する出力値は、先ず変換対象点tiを内包する単位格子の格子点(グリッド点)に対応する出力値をカラーLUTから導出し、導出したグリッド点の出力値を用いて補間処理を行うことにより求められる。従来、グリッド点間の補間処理には線形補間を行っている。線形補間としては8点補間、5点補間、及び4点補間等が使われることが多く、いずれの場合も各グリッド点の値を起点に線形の演算を実施する。この演算では加積算処理を実行するため、点数が少ない5点補間や4点補間処理の方が速度的には有利となるが、補間精度を考慮して、本実施形態では8点補間を行う場合について説明する。 This three-dimensional color space is partitioned by a plurality of unit cells, for example unit cells that divide each axis of the input color space into 15 divisions. When the gradation of each color is represented by 8 bits, the input values take values from 0 to 255, and in this case, each axis of each unit cell has 17 input values. The output value corresponding to the conversion target point ti is obtained by first deriving the output value corresponding to the grid point (grid point) of the unit cell containing the conversion target point ti from the color LUT, and using the output value of the derived grid point. It is obtained by performing interpolation processing. Conventionally, linear interpolation is performed for interpolation processing between grid points. As linear interpolation, 8-point interpolation, 5-point interpolation, 4-point interpolation, etc. are often used, and in any case, linear calculation is performed starting from the value of each grid point. Since addition and accumulation processing is executed in this calculation, 5-point interpolation or 4-point interpolation processing with a small number of points is advantageous in terms of speed, but in consideration of interpolation accuracy, 8-point interpolation is performed in this embodiment. A case will be described.
8点補間の場合、最初に所定の1つの色成分、例えばR軸方向に関して、変換対象点tiと同じ値を有するグリッド点間に位置する点を導出する。図5に示す例では、グリッド点P1、P2から点Q1、グリッド点P3、P4から点Q2、グリッド点P5、P6から点Q3、グリッド点P7、P8から点Q4をそれぞれ導出する。次に、点Q1~Q4を用いて、R成分以外の色成分、例えばG軸方向に関して、変換対象点tiと同じ値を有するグリッド点間に位置する点R1,R2を導出する。最後に、点R1,R2を用いて、残ったB成分、すなわちB軸方向に関して、変換対象点tiと同じ値を有するグリッド点間に位置する点S、すなわち変換対象点tiを導出する。 In the case of 8-point interpolation, first, a point located between grid points having the same value as the conversion target point ti is derived with respect to one predetermined color component, for example, the R-axis direction. In the example shown in FIG. 5, point Q1 is derived from grid points P1 and P2, point Q2 is derived from grid points P3 and P4, point Q3 is derived from grid points P5 and P6, and point Q4 is derived from grid points P7 and P8. Next, using the points Q1 to Q4, points R1 and R2 positioned between grid points having the same value as the conversion target point ti are derived with respect to color components other than the R component, for example, the G axis direction. Finally, the points R1 and R2 are used to derive the remaining B component, that is, the point S located between the grid points having the same value as the conversion target point ti in the B-axis direction, that is, the conversion target point ti.
本実施形態では、補間処理上の最初の点Q1,Q2,Q3,Q4の導出に関してのみ、補間演算により算出するのではなく、カラーLUTからなる参照テーブルに記録された予め算出された値を取得するように構成する(図6(a))。 In this embodiment, only the first points Q1, Q2, Q3, and Q4 in the interpolation process are derived, instead of being calculated by interpolation calculations, precalculated values recorded in a reference table consisting of a color LUT are obtained. (Fig. 6(a)).
図6(b)に、本実施形態に係る補間処理のフローチャートを示す。本実施形態では、最初に変換対象点tiと色成分の1つが一致する点を導出するために、R軸と平行でグリッド点を通る線分上の全ての入力値と、それに対応する出力値とが紐付けて格納されたカラーLUTを参照テーブルとして用いる構成とする。 FIG. 6B shows a flowchart of interpolation processing according to this embodiment. In this embodiment, first, in order to derive a point where one of the color components matches the conversion target point ti, all input values on a line segment parallel to the R axis and passing through the grid points and the corresponding output values is stored in association with the color LUT as a reference table.
S611では、参照テーブルを用いて、変換対象点tiと色成分の1つが一致する点を導出する軸の設定(SET_TABLE_ON関数)を行う。そして、設定した設定軸と平行でグリッド点を通る線分上の入力値とそれに対応する演算済み出力値とが紐付けて格納されたカラーLUTからなる参照テーブルをメモリ上にロードする。 In S611, the reference table is used to set an axis (SET_TABLE_ON function) for deriving a point where one of the conversion target points ti and one of the color components match. Then, a reference table consisting of a color LUT in which input values on a line segment parallel to the set axis and passing through the grid points and corresponding calculated output values are stored in association with each other is loaded onto the memory.
S612では、参照テーブルから変換対象点tiとR軸方向の値が同じ、グリッド点間の点Q1、Q2,Q3,Q4の出力値を取得する。ここで参照テーブルから出力値を取得する関数FUNC1の引数として、変換対象点tiに近接するグリッド点の入力値である起点情報と、そのグリッド点と変換対象点tiとのR軸方向の差分値FRとを用いる。 In S612, output values of points Q1, Q2, Q3, and Q4 between grid points having the same value in the R-axis direction as the conversion target point ti are acquired from the reference table. Here, as arguments of the function FUNC1 that acquires the output value from the reference table, the origin information, which is the input value of the grid point adjacent to the conversion target point ti, and the difference value in the R-axis direction between the grid point and the conversion target point ti FR is used.
S613では、S612で取得した点Q1~Q4の出力値を用いてG軸方向の線形補間演算を実施し、変換対象点tiとG軸方向の値が同じ、点Q1~Q4の間の補間点R1,R2を決定し、その出力値を算出する。 In S613, the output values of the points Q1 to Q4 acquired in S612 are used to perform linear interpolation calculation in the G-axis direction, and the interpolation points between the points Q1 to Q4 having the same value in the G-axis direction as the conversion target point ti are obtained. R1 and R2 are determined and their output values are calculated.
S614では、S613で取得した補間点R1,R2の出力値を用いてB軸方向の線形補間演算を実施し、変換対象点tiとB軸方向の値が同じ、補間点R1,R2の間の補間点S、すなわち変換対象点tiの出力値を算出する。 In S614, the output values of the interpolation points R1 and R2 obtained in S613 are used to perform a linear interpolation calculation in the B-axis direction, and the interpolation points R1 and R2 having the same value in the B-axis direction as the conversion target point ti are calculated. An output value of the interpolation point S, that is, the conversion target point ti is calculated.
本実施形態では、S612において参照テーブルから出力値を取得して補間演算を省略することで、補間演算における乗算回数を低減している。そのため、特に色数が多くなるケースでの補間計算速度を向上させることが出来る。また、使用する参照テーブルは入力値全てに対応するカラーLUTではなく、設定軸と平行でグリッド点を通る線分上の入力値に対応するカラーLUTに限られるため、メモリの使用量を抑制することが出来る。これらのことから、組込み向けのプロセッサのようにキャッシュサイズが小さな環境下においてもメモリ容量が逼迫し難いので、CPUの能力を最大限に活用することが可能となる。 In this embodiment, the output value is obtained from the reference table in S612 and the interpolation calculation is omitted, thereby reducing the number of multiplications in the interpolation calculation. Therefore, it is possible to improve the interpolation calculation speed especially when the number of colors is large. In addition, the reference table used is not a color LUT that corresponds to all input values, but is limited to a color LUT that corresponds to input values on a line segment that is parallel to the set axis and passes through the grid points, thus reducing memory usage. can do For these reasons, even in an environment with a small cache size such as an embedded processor, the memory capacity is less likely to become tight, so it is possible to make the most of the CPU's performance.
<実施形態2>
図7に、実施形態2に係るデジタル一眼カメラなどの撮影画像を含むPDLデータに基づき印刷するカラープリンティングシステムの概略構成を示す。同図において、ホストPC710とプリンタコントローラ720は、不図示の通信インターフェース(CI)を介して有線または無線で接続されている。
<
FIG. 7 shows a schematic configuration of a color printing system for printing based on PDL data including an image captured by a digital single-lens camera or the like according to the second embodiment. In the figure, a
このシステムにおいては、伝送路におけるデータ転送用の帯域が大きくないため、PDLデータとしてデータサイズをコンパクト化し、プリントジョブを流すように構成している。プンタコントローラ720側にデータを転送する。プリンタコントローラ720側においては、受け取ったPDLデータを、印刷制御部721を介してRIPモジュール722に渡す。PDLデータを受け取ったRIPモジュール723は、CMSモジュール722を用いて適宜カラーマッチング(色変換処理)を行った後にラスター画像データを生成し、印刷制御部721にラスター画像データを渡すよう構成されている。
In this system, since the bandwidth for data transfer on the transmission line is not large, the data size is made compact as PDL data, and the print job is sent. Data is transferred to the
実施形態1では、色空間において設定軸と平行でグリッド点を通る線分上の入力値に対応するカラーLUTを参照テーブルとしてメモリに展開する構成としたが、その場合でもテーブルデータがシステムメモリに対して大きい場合もある。そこで本実施形態2では、画像毎に色分布の偏りを予め調査し、使用されない色のカラーLUTのデータをメモリに展開しないよう構成する。 In the first embodiment, the color LUT corresponding to the input values on the line segment parallel to the set axis and passing through the grid points in the color space is developed in the memory as a reference table. It may be larger than that. Therefore, in the second embodiment, the bias in color distribution is checked in advance for each image, and the color LUT data of unused colors is configured so as not to be developed in the memory.
デジタルカメラ等で撮像されて得られた自然画の場合を考えると、人物が被写体である撮像画像では肌色の色域が頻出となり、風景が被写体で例えば、晴天で海岸線(ビーチ)での撮像画像であれば、空や海の青系の色の色域が頻出とになる。このように、様々な撮影シーン別の撮像画像を調べ、それらを組み合わせることで、撮像画像が持つ色分布のパターンを予め把握することは可能である。 Considering the case of a natural image captured by a digital camera or the like, skin-colored color gamuts frequently appear in captured images in which a person is the subject. In that case, the blue color gamut of the sky and the sea will appear frequently. In this way, it is possible to grasp in advance the pattern of the color distribution of the captured image by examining captured images for various shooting scenes and combining them.
図8(a)に、撮影シーン別の色分布解析図を示す。これらを俯瞰すると、それぞれの撮影シーンにおいて出現頻度の高い色域と、出現頻度の低い色域があり、色分布が偏っている。そこで本実施形態では、実施形態1のように設定軸に平行でグリッド点を通る線分上の全ての領域に対応するカラーLUTを使用せず、それらのうちで出現頻度の高い色域のカラーLUTのみを参照テーブルとしてメモリ上に展開するように構成する。ここでは色空間を9x9x9の単位格子に分割し、各単位格子に対応する色域毎に出現頻度の高低を判定した「シーン別高頻出色分布」を特定する。出現頻度が高いと判定された単位格子に対応する色域のカラーLUTのみを参照テーブルとしてメモリ上に展開する。 FIG. 8A shows a color distribution analysis chart for each shooting scene. Looking at these from a bird's eye view, there are color gamuts with high appearance frequency and color gamuts with low appearance frequency in each shooting scene, and the color distribution is biased. Therefore, in this embodiment, unlike the first embodiment, the color LUT corresponding to all areas on line segments parallel to the set axis and passing through the grid points is not used. The configuration is such that only the LUT is expanded on the memory as a reference table. Here, the color space is divided into 9.times.9.times.9 unit grids, and the "high frequency appearance color distribution by scene" is specified by determining the frequency of appearance for each color gamut corresponding to each unit grid. Only the color LUT of the color gamut corresponding to the unit grid determined to have a high appearance frequency is developed on the memory as a reference table.
更に、図8(b)に、各撮影シーンの色分布を重ね合わせた色分布において出現頻度が高い色域を表す「共通高頻出色分布」を示す。この共通高頻出色分布に基づき生成された参照テーブルを使用することで、撮影シーンに関わらず、出現頻度の低い色域のカラーLUTを効率的に省くことができる。 Further, FIG. 8B shows a "common high-frequency color distribution" representing a color gamut with a high appearance frequency in the color distribution obtained by superimposing the color distributions of the shooting scenes. By using a reference table generated based on this common high frequency color distribution, it is possible to efficiently omit the color LUT for color gamuts with low frequency of appearance regardless of the shooting scene.
図9(a)は、図8に示す共通高頻出色分布を生成する過程を示す概説図であって、図9(b)は、シーン別の画像データにおける色分布を合成して合成色分を生成するための処理ステップを示している。この共通高頻出色分布を生成するための処理は、予め情報処理装置を用いて実施されるもので、生成された共通高頻出色分布のデータは、カラーLUT等と共に図7に示すプリンタコントローラ720の補助記憶装置等に予め格納される。
FIG. 9A is a schematic diagram showing the process of generating the common high-frequency color distribution shown in FIG. 8, and FIG. shows the processing steps for generating The processing for generating this common high-frequency color distribution is performed in advance using an information processing device, and the generated common high-frequency color distribution data is sent to the
撮影シーン別の画像データの色分布を合成する方法としては、図9(a)に示すように、起点のシーンの色分布に次に選択した1つのシーンの色分布を合成し、その合成した色分布(合成色分布)にその次のシーンの色分布を合成していくものとする。例えば、図8(b)に示す例では、先ず「花火」のシーンの色分布と「ペット」のシーンの色分布を合成して、合成色分布を生成した後に、合成色分布に対して「雪景色」のシーンの色分布をさらに合成する。尚、色分布の合成方法はこれに限定されず、適切に合成できれば他の方法を用いてもよい。 As a method of synthesizing the color distribution of image data for each shooting scene, as shown in FIG. Assume that the color distribution of the next scene is synthesized with the color distribution (composite color distribution). For example, in the example shown in FIG. 8B, first, the color distribution of the "fireworks" scene and the color distribution of the "pet" scene are combined to generate a combined color distribution. The color distribution of the "snow scene" scene is further synthesized. Note that the color distribution synthesis method is not limited to this, and other methods may be used as long as they can be appropriately synthesized.
S911では、初期化パラメータで重みパラメータを設定する。この重みパラメータは格子毎に用意されており、例えば、軸方向に均等に9分割する単位格子を用いる場合は729個設定し、15分割する単位格子を用いる場合は3375個設定する。これらの重みパラメータは、通常は初期値として1を設定するが、ユーザが任意の値を設定してもよい。 In S911, a weight parameter is set as an initialization parameter. The weight parameters are prepared for each grid. For example, 729 weight parameters are set when using a unit grid divided equally into 9 in the axial direction, and 3375 parameters are set when using a unit grid divided into 15 divisions. These weight parameters are usually set to 1 as an initial value, but the user may set any value.
S912では、予め用意された複数の撮影シーン別の画像データから色分布を合成する画像データを1つ選択する。 In S912, one image data for synthesizing the color distribution is selected from a plurality of prepared image data for each shooting scene.
S913では、色分布を分割する複数の単位格子から、色分布を合成する単位格子を1つ選択する。例えば、9x9x9の単位格子が存在する場合は、起点とする単位格子から順に未選択の単位格子を選択していく。 In S913, one unit grid for synthesizing the color distribution is selected from a plurality of unit grids for dividing the color distribution. For example, when there are 9×9×9 unit cells, unselected unit cells are selected in order from the starting unit cell.
S914では、合成色分布とS912で選択された撮影シーンの画像データの色分布とについて、S913で選択された単位格子の色分布を合成し、単位格子内に分布する色の数をカウントする。 In S914, the color distribution of the unit cell selected in S913 is combined with the combined color distribution and the color distribution of the image data of the shooting scene selected in S912, and the number of colors distributed within the unit cell is counted.
S915では、単位格子内に分布する色の数に重みパラメータを積算した値が、予め定めた閾値(例えば、各単位格子内に取り得る色の全数の50%に相当する数等)を超えるか否かを判定する。単位格子内に分布する色の数が閾値を超えた場合はS916に移行し、単位格子内に分布する色の数が閾値を超えない場合はS917に移行する。 In S915, whether the value obtained by multiplying the number of colors distributed within the unit cell by the weight parameter exceeds a predetermined threshold value (for example, a number corresponding to 50% of the total number of possible colors within each unit cell). determine whether or not If the number of colors distributed within the unit grid exceeds the threshold, the process proceeds to S916, and if the number of colors distributed within the unit grid does not exceed the threshold, the process proceeds to S917.
S916では、単位格子内に分布する色の数が閾値を超えた場合は、メモリに展開する参照テーブルに含めるべき色域としてフラグを立てる等の処理を行う。 In S916, when the number of colors distributed within the unit cell exceeds the threshold value, processing such as raising a flag as a color gamut to be included in the reference table developed in the memory is performed.
S917では、現在選択されている単位格子の他に未選択の単位格子がなく、最後の単位格子であるか否かを判定し、未選択の単位格子があればS913に戻り、未選択の単位格子が無ければS918に移行する。 In S917, it is determined whether or not there are no unselected unit cells other than the currently selected unit cell and it is the last unit cell. If there is no grid, the process proceeds to S918.
S918では、現在選択されている画像データの他に未選択の他の撮像シーンの画像データがあるか否かを判定し、未選択の他の画像データがあればS912に戻り、未選択の他の画像データが無ければ一連の処理を終了する。 In S918, it is determined whether or not there is image data of other unselected imaging scenes in addition to the currently selected image data. If there is no such image data, the series of processing ends.
このようにして得られた共通高頻出色分布は、CMSモジュール722等がキャッシュメモリにカラーLUTを展開する際に参照し、フラグの立った単位格子に対応する色域のカラーLUTのみをキャッシュメモリに展開することを可能にする。
The common high-frequency color distribution thus obtained is referred to when the
尚、図9(a)に示す処理には、必要に応じて前記生成された共通シーンについて問題がないか検査を行い、検査結果に基づき、重みパラメータや有効な領域とするか否かを判定する閾値を適宜調整し、再構成する仕組みを設けてもよい。また、この部分は試行錯誤的な部分を含むが、例えば学習機能等を用いて自動的に調整する仕組みなどを導入してもよい。 In the process shown in FIG. 9A, the generated common scene is inspected as necessary for any problem, and based on the inspection result, it is determined whether or not the weight parameter and the effective area are determined. It is also possible to provide a mechanism for appropriately adjusting the threshold to be used and reconfiguring it. Also, although this part includes a trial and error part, for example, a mechanism for automatic adjustment using a learning function or the like may be introduced.
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other examples)
The present invention supplies a program that implements one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in the computer of the system or apparatus reads and executes the program. It can also be realized by processing to It can also be implemented by a circuit (for example, ASIC) that implements one or more functions.
411 ユーザシステム
412 CMSモジュール
413 RIPモジュール
Claims (10)
前記入力値と前記出力値とが紐付けられたルックアップテーブルを参照することにより、前記入力色空間における変換対象の入力値と前記複数の色成分のうちの1つの色成分が同じ値である前記入力色空間における複数の入力値に対応する複数の出力値を取得する取得手段と、
前記ルックアップテーブルを参照して取得した複数の出力値を用いて補間演算を行い、前記変換対象の入力値に対応する出力値を算出する算出手段と、
を備えたことを特徴とする画像処理装置。 An image processing device that converts an input value in an input color space consisting of a plurality of color components into an output value in an output color space,
By referring to a lookup table in which the input value and the output value are linked, the input value to be converted in the input color space and one color component of the plurality of color components are the same value. obtaining means for obtaining a plurality of output values corresponding to a plurality of input values in the input color space;
calculating means for performing an interpolation operation using a plurality of output values obtained by referring to the lookup table to calculate an output value corresponding to the input value to be converted;
An image processing device comprising:
ことを特徴とする請求項1に記載の画像処理装置。 The lookup table includes: a plurality of input values on a line segment passing through lattice points of a plurality of unit lattices dividing the input color space and parallel to the axis of the one color component; It holds the corresponding multiple output values in association with each other,
2. The image processing apparatus according to claim 1, wherein:
ことを含むことを特徴とする請求項1又は2に記載の画像処理装置。 The calculation means calculates an input in the input color space that has one more color component of the same value as the input value to be converted than the plurality of input values corresponding to the plurality of output values obtained by referring to the lookup table. determining a value, and calculating an output value corresponding to the input value by performing an interpolation operation using the output value obtained by referring to the lookup table;
3. The image processing apparatus according to claim 1, comprising:
ことを特徴とする請求項3に記載の画像処理装置。 The calculating means determines an input value in the input color space that has one more color component of the same value as the input value to be converted than the input value corresponding to the output value calculated by the calculating means, and determines the input value Calculate an output value corresponding to by performing an interpolation operation using the calculated output value,
4. The image processing apparatus according to claim 3, characterized by:
ことを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。 the lookup table includes only a color LUT of a predetermined color gamut in which the input values to be converted appear frequently;
5. The image processing apparatus according to any one of claims 1 to 4, characterized by:
ことを特徴とする請求項5に記載の画像処理装置。 The color LUT of the predetermined color gamut included in the lookup table is a color LUT of a color gamut that frequently appears in a plurality of different image data.
6. The image processing apparatus according to claim 5, characterized by:
ことを特徴とする請求項1乃至6のいずれか1項に記載の画像処理装置。 the number of dimensions of the input color space and the output color space is 3 or 4, respectively;
7. The image processing apparatus according to any one of claims 1 to 6, characterized by:
ことを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。 one of the input color space and the output color space is an RGB color space and the other is a CMYK color space;
8. The image processing apparatus according to any one of claims 1 to 7, characterized by:
前記入力値と前記出力値とが紐付けられたルックアップテーブルを参照することにより、前記入力色空間における変換対象の入力値と前記複数の色成分のうちの1つの色成分が同じ値である前記入力色空間における複数の入力値に対応する複数の出力値を取得するステップと、
前記ルックアップテーブルを参照して取得した複数の出力値を用いて補間演算を行い、前記変換対象の入力値に対応する出力値を算出するステップと、
を有することを特徴とする画像処理方法。 An image processing method for converting input values in an input color space consisting of a plurality of color components into output values in an output color space,
By referring to a lookup table in which the input value and the output value are linked, the input value to be converted in the input color space and one color component of the plurality of color components are the same value. obtaining a plurality of output values corresponding to a plurality of input values in the input color space;
performing an interpolation operation using a plurality of output values obtained by referring to the lookup table, and calculating an output value corresponding to the input value to be converted;
An image processing method characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021176278A JP2023065885A (en) | 2021-10-28 | 2021-10-28 | Image processing device, image processing method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021176278A JP2023065885A (en) | 2021-10-28 | 2021-10-28 | Image processing device, image processing method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023065885A true JP2023065885A (en) | 2023-05-15 |
Family
ID=86322375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021176278A Pending JP2023065885A (en) | 2021-10-28 | 2021-10-28 | Image processing device, image processing method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023065885A (en) |
-
2021
- 2021-10-28 JP JP2021176278A patent/JP2023065885A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5643574B2 (en) | Image processing apparatus and image processing method | |
US20060274341A1 (en) | Image processing apparatus and image processing method | |
US20100238467A1 (en) | Image processing apparatus, image processing method, and computer program product | |
JP4366089B2 (en) | Image forming apparatus and method | |
JP2009010893A (en) | Image processing method and image processor | |
JP2007208736A (en) | Method and device for color processing | |
JP6748464B2 (en) | Image processing apparatus, image processing method, and image processing program thereof | |
JP2012236344A (en) | Printing apparatus, data processing method for the printing apparatus and program | |
JP2006025128A (en) | Image processor and its method | |
JP2023065885A (en) | Image processing device, image processing method and program | |
JP2008118447A (en) | Image forming apparatus, image forming method, and its program | |
US20080013134A1 (en) | Image processing device, image processing method, computer readable medium, and computer data signal | |
US7652807B2 (en) | Image generating apparatus, image generating method and computer readable medium | |
EP0664521B1 (en) | Colour image processing apparatus and method | |
US20040017476A1 (en) | Printing system, layout data generation device, print data processing device and program | |
US20100053651A1 (en) | Image Processing Device and Image Processing Method | |
JP4508953B2 (en) | Image processing method and image processing apparatus | |
JP5896610B2 (en) | Apparatus, method and program | |
JP6794834B2 (en) | Image processing equipment and programs | |
JP2024035723A (en) | Image processing device, image processing method, and program | |
JP2006254369A (en) | Color processing method and device thereof | |
JP2003283855A (en) | Picture processor, program, and recording medium | |
JP4692420B2 (en) | Image processing apparatus, image forming apparatus, and program | |
JP2000078421A (en) | Device, method and system for processing image | |
JP4636145B2 (en) | Image processing apparatus and program |