JPH0969961A - Color conversion device - Google Patents

Color conversion device

Info

Publication number
JPH0969961A
JPH0969961A JP7226174A JP22617495A JPH0969961A JP H0969961 A JPH0969961 A JP H0969961A JP 7226174 A JP7226174 A JP 7226174A JP 22617495 A JP22617495 A JP 22617495A JP H0969961 A JPH0969961 A JP H0969961A
Authority
JP
Japan
Prior art keywords
interpolation
unit
triangular prism
color conversion
memory
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
Application number
JP7226174A
Other languages
Japanese (ja)
Inventor
Hideto Motomura
秀人 本村
Teruo Fumoto
照夫 麓
Osamu Yamada
修 山田
Katsuhiro Kanamori
克洋 金森
Hiroaki Kodera
宏曄 小寺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP7226174A priority Critical patent/JPH0969961A/en
Publication of JPH0969961A publication Critical patent/JPH0969961A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Image Generation (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce black dotts generated by a method which uses a three- dimensional look-up table and interpolation for fast, high-precision conversion of color signals of color printing, color hard copying, etc., and reduce a color conversion table memory. SOLUTION: A plurality of grating points data which are read out at the same time are stored in different memories in a color conversion table memory 108 and simultaneous access is gained by a memory access part 106 to shorten a processing time. The output values of grating points outside an input space which become necessary for oblique prism interpolation by an outer shell block detection part 108 and an extrapolation part 110 need not be kept directly in the memory, whose memory capacity is therefore reducible.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はカラー画像信号やカラー
映像信号を入力して実時間内に任意の色座標変換、色変
換を行う用途、たとえば高速の色修正、色補正が必要な
カラースキャナ、カラーカメラ、カラーハードコピー装
置や正確な色校正が必要なカラー表示装置、ビデオ映像
などを実時間に色変更するカラーコレクタ、ビデオ編集
装置、およびカラーによる識別を行う色認識装置などに
関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an application for inputting a color image signal or a color video signal and performing arbitrary color coordinate conversion and color conversion in real time, for example, a color scanner requiring high-speed color correction and color correction. , Color cameras, color hard copy devices, color display devices that require accurate color calibration, color correctors that change the colors of video images in real time, video editing devices, and color recognition devices that perform color identification. is there.

【0002】[0002]

【従来の技術】従来からカラー印刷、カラーハードコピ
ーの分野で複雑多種な色信号変換を簡単、高速に行う手
法として三次元補間手法を用いたテーブルルックアップ
法が提案されている。これらは三次元補間手法として、
色空間を複数の単位補間立体群に分割し、入力色が含ま
れる単位補間立体を選択し、前記単位補間立体の複数頂
点での出力値を用いて色空間全域にわたって任意の色変
換を連続性を確保して補間するものである。現在のとこ
ろ色空間を複数の立方体群に分割する8点補間、前記立
方体をさらに2つの三角柱群に分割する6点補間、前記
立方体を3つのピラミッド群に分割する5点補間、前記
立方体を5つまたは6つの四面体群に分割する4点補間
が知られている。
2. Description of the Related Art Conventionally, in the fields of color printing and color hard copy, a table lookup method using a three-dimensional interpolation method has been proposed as a method for performing simple and high-speed conversion of a variety of complex color signals. These are three-dimensional interpolation methods,
Divide the color space into a plurality of unit interpolation solid groups, select a unit interpolation solid containing the input color, and use the output values at multiple vertices of the unit interpolation solid to continuously perform arbitrary color conversion over the entire color space. Is ensured and interpolated. At present, 8-point interpolation that divides the color space into a plurality of cube groups, 6-point interpolation that further divides the cube into two triangular prism groups, 5-point interpolation that divides the cube into three pyramid groups, and 5 cubes. Four-point interpolation is known which divides into one or six tetrahedral groups.

【0003】これらの各手法が次々と考案されてきた背
景には、最も一般的な三次元補間手法である立方体を用
いた8点補間法に多くの問題点がある事実がある。この
問題点はコスト的な面からいえば8点を用いる補間が演
算時間やハードウエアに大きな負担になることでありこ
れは自明のことである。しかし別に重大な性能的欠陥が
ある。カラーハードコピー分野でシアンC、マゼンタ
M、イエローY、ブラックKを生成する場合に本補間手
法を用いる場合、入力を濃度(Dr、Dg、Db)とす
ると、ブラックKの伝統的な生成手段であるスケルトン
ブラックなどの演算では入力3変数(Dr、Dg、D
b)のうち最小の値をブラックとして出力するMIN演
算を使用してブラックのテーブルを作成することにな
る。ところがMIN演算は補間がしづらい非線形変換の
なかでも、もっとも補間が難しい部類に属し、8点を用
いた補間を行うと、補間区間内にて補間結果が連続性を
保ったまま凹状にたるんで波打つ形状に補間されてしま
う。この形状は「さざ波」に似ているので以下「リップ
ル」と呼称することとする。すなわち8点補間法では、
ブラック版の階調にリップルを生じ、CMYK4色重ね
のカラー画像上にて視覚的に耐えがたい偽輪郭を形成し
てしまう。
The background to which these methods have been devised one after another lies in the fact that the most common three-dimensional interpolation method, the 8-point interpolation method using a cube, has many problems. This problem is obvious from the viewpoint of cost, because the interpolation using eight points is a heavy burden on the calculation time and the hardware. But there are significant performance deficiencies. When this interpolation method is used to generate cyan C, magenta M, yellow Y, and black K in the color hard copy field, if the input is density (Dr, Dg, Db), the traditional black K generation means is used. In an operation such as a skeleton black, input 3 variables (Dr, Dg, D
The black table is created by using the MIN operation that outputs the minimum value of b) as black. However, the MIN operation belongs to the category that is the most difficult to interpolate among the non-linear transformations that are difficult to interpolate, and when interpolating using 8 points, the interpolated result sags while maintaining continuity in the interpolated section. It will be interpolated into a wavy shape. Since this shape resembles a "ripple wave", it will be referred to as "ripple" hereinafter. That is, in the 8-point interpolation method,
Ripple is generated in the gradation of the black plate, and a false contour that is visually unbearable is formed on a color image of four CMYK colors.

【0004】4面体分割を使った4点補間やピラミッド
分割を使った5点補間はこのMIN演算をリップルなく
補間できることをその大きな利点の一つとしている。た
とえば4点補間については特開平2−286867号公
報にその記述が見られ、5点補間については特開昭56
−14237号公報に詳細な記述が見られる。
One of the major advantages of 4-point interpolation using tetrahedral division and 5-point interpolation using pyramid division is that this MIN operation can be interpolated without ripples. For example, the description of 4-point interpolation can be found in JP-A-2-286867, and that of 5-point interpolation is JP-A-56.
Detailed description can be found in Japanese Patent No. 14237.

【0005】これらの内容では四面体分割、ピラミッド
分割はともに単位立方体の対角軸方向に分割境界線をも
つが故に無彩色(グレイ)方向のブラックの補間が良好
になされるという主張がなされている。これはMIN演
算補間の無彩色方向の補間誤差についてのみ述べている
にすぎず、やや不完全である。正確には、これらの図形
では分割境界面が色空間内でMIN演算の結果が一定と
なる面の微分不連続面を全て含んでいるという特徴によ
り無彩色方向に限らずあらゆる方向でMIN演算による
色変換を線形にリップルなく補間できるのである。しか
しながら、いずれにせよ4面体分割、ピラミッド分割で
はMIN演算におけるリップル発生は無彩色方向のみな
らず全方向の補間について完全に回避されており既に技
術的に解決済みの問題である。
In these contents, it is argued that both the tetrahedral division and the pyramid division have division boundaries in the diagonal axis direction of the unit cube, and therefore black interpolation in the achromatic (gray) direction can be favorably performed. There is. This only mentions the interpolation error in the achromatic direction of the MIN calculation interpolation, and is rather incomplete. To be precise, in these figures, the division boundary surface includes all the differential discontinuous surfaces of the surface in which the result of the MIN operation is constant in the color space, and therefore the MIN operation is performed in all directions, not only in the achromatic direction. The color conversion can be linearly interpolated without ripples. However, in any case, in the tetrahedron division and the pyramid division, the ripple occurrence in the MIN calculation is completely avoided not only in the achromatic direction but also in the omnidirectional interpolation, which is a technically solved problem.

【0006】次に提案されているもう一つの補間方法で
ある三角柱分割による6点補間法につて詳細に述べる。
第一の従来例はXYZ空間を複数の三角柱に分割して補
間する方法である(特開平5−75848号公報)。第
二の従来例はYCrCb明度色差空間を主軸をY方向に
他の二軸を色差面内に設定した三角柱に分割し補間する
方法である(特開平5−46750号公報、及び特開平
5−120416号公報)。
Next, another proposed interpolation method, which is a 6-point interpolation method by triangular prism division, will be described in detail.
The first conventional example is a method of dividing an XYZ space into a plurality of triangular prisms and interpolating them (JP-A-5-75848). A second conventional example is a method of interpolating the YCrCb lightness color difference space by dividing it into a triangular prism having a principal axis in the Y direction and the other two axes set in the color difference plane (Japanese Patent Laid-Open No. 5-46750 and Japanese Patent Laid-Open No. 5-75050). No. 120416).

【0007】これらの提案では8点補間に比較してハー
ドウエアが簡素化されているのは自明のことであるが、
MIN演算のリップル発生回避に関する記述は何等考慮
されていない。ただし第二の従来例においては、Y方向
に三角柱主軸が設定されている特徴から明度方向すなわ
ち無彩色軸に平行な方向の補間においては各種の色変換
が不自然な屈曲の折れ線状にならず線形補間できる利点
が記載されている。
Although it is obvious that the hardware is simplified in these proposals as compared with the 8-point interpolation,
No mention is made of any statement regarding the avoidance of ripples in the MIN operation. However, in the second conventional example, due to the feature that the triangular prism main axis is set in the Y direction, various color conversions do not become unnatural bending line shapes in the interpolation in the lightness direction, that is, the direction parallel to the achromatic color axis. The advantages of being able to linearly interpolate are described.

【0008】一方、第一の従来例では三角柱を使用して
いるが、第二の実施例におけるような三角柱の主軸方向
の特性の利用をしていないために補間性能上の利点が無
く、補間特性に関する具体的記述も見られない。
On the other hand, in the first conventional example, a triangular prism is used, but since the characteristics in the main axis direction of the triangular prism as in the second embodiment are not utilized, there is no advantage in the interpolation performance and the interpolation is performed. There is no concrete description of characteristics.

【0009】[0009]

【発明が解決しようとする課題】従来より提案されてい
る三角柱補間方法の第一の従来例(特開平5−7584
8号公報)には次のような課題がある。
A first conventional example of a triangular prism interpolation method proposed in the past (Japanese Patent Laid-Open No. 7584/1993).
No. 8) has the following problems.

【0010】第一に本従来例はXYZ空間、RGB空間
という明度色差が分離されていない三原色色空間を主軸
が前記三原色色空間の1つの軸方向に合致した三角柱群
に分割して補間する方法をとっている。これでは前述の
如くMIN演算の場合の「リップル」発生が大規模に発
生してしまうという大きな課題がある。本発明者の実験
によれば後でグラフにて詳細に説明される通り、この第
一の従来例の三角柱補間の場合に発生するリップルは無
彩色方向では無視できないほど大きい。第一の従来例の
同公報には「ここで色補正に適用する場合、XYZは入
力R(赤)、G(緑)、B(青)信号に相当し、出力P
は4色プリンタの場合インクを制御するY(イエロ
ー)、M(マゼンタ)、C(シアン)、Bk(ブラッ
ク)信号に相当する」との記述があり、本手法をK発生
に使用する意図が見られるにもかかわらず、このリップ
ル発生の回避方法につき一切開示されていない。
First, in the conventional example, a method of interpolating an XYZ space and an RGB space by dividing a three-primary color space in which the lightness color difference is not separated into trigonal prism groups whose main axes match one axial direction of the three-primary color space. Is taking. This causes a large problem that "ripple" is generated on a large scale in the case of the MIN calculation as described above. According to an experiment by the present inventor, as will be described later in detail in the graph, the ripple generated in the case of the triangular prism interpolation of the first conventional example is so large that it cannot be ignored in the achromatic direction. In the same publication of the first conventional example, "when applied to color correction here, XYZ corresponds to input R (red), G (green), B (blue) signals, and output P
Is equivalent to Y (yellow), M (magenta), C (cyan), and Bk (black) signals that control ink in the case of a four-color printer. " Despite being seen, there is no disclosure of how to avoid this ripple occurrence.

【0011】第二に第一の従来例の同公報の効果におい
て「従来の補間方法に比べてメモリ容量が少なくなるの
で、全体のハードウエアが小さくなり容易にLSI化す
ることができる」との記述があるが、いかなる理由でど
の程度のメモリ容量の減少が見込まれるのか記載がな
い。むしろ、ROMからRAMへの転送時に並列にアク
セスすべき重複分の格子点が生じるためにメモリ使用効
率が約1/8程度になっておりメモリを有効活用してい
ないという欠点がある。
Secondly, in the effect of the same publication of the first conventional example, "Since the memory capacity is smaller than that of the conventional interpolation method, the whole hardware is reduced and the LSI can be easily implemented." There is a description, but there is no description about how much memory capacity reduction is expected for any reason. Rather, there is a drawback that the memory usage efficiency is about 1/8 because the redundant grid points to be accessed in parallel are generated during the transfer from the ROM to the RAM and the memory is not effectively used.

【0012】一方、第二の従来例(特開平5−4675
0号公報、及び特開平5−120416号公報)につい
ては、前述のとおり明度Y方向に三角柱主軸を設定して
おり無彩色方向に関してはMIN演算に限らずリップル
発生が回避されている、という効果がすでに認められて
いる。しかし色空間内での無彩色方向以外の他の方向に
ついてはリップル発生の可能性があり完全な解決には至
っていない課題がある。
On the other hand, a second conventional example (Japanese Patent Laid-Open No. 5-4675)
No. 0 and Japanese Patent Laid-Open No. 5-120416), the triangular prism main axis is set in the lightness Y direction as described above, and in the achromatic direction, not only MIN calculation but ripple generation is avoided. Has already been accepted. However, there is a possibility that ripples may occur in directions other than the achromatic color direction in the color space, and there is a problem that has not been completely solved.

【0013】本発明は色変換において多用されるMIN
演算における「リップル」発生を無彩色方向に限らず入
力色空間のあらゆる方向において完全に回避でき、同時
に補間空間に斜三角柱を用いることによってアクセスが
必要となる入力色空間外の格子点の出力値を入力色空間
内の格子点出力値から外挿することによって色変換テー
ブルメモリの増大を避けることができる色変換装置を提
供することを目的とする。
The present invention is often used in color conversion.
It is possible to completely avoid the occurrence of "ripple" in the calculation not only in the achromatic color direction but also in all directions of the input color space. At the same time, by using an oblique triangular prism in the interpolation space, it is necessary to access the output values of the grid points outside the input color space. It is an object of the present invention to provide a color conversion device capable of avoiding an increase in the color conversion table memory by extrapolating from the grid point output value in the input color space.

【0014】[0014]

【課題を解決するための手段】上記目的を達成するため
本発明は、種々の色信号にて表現されるカラー画像信号
を上位ビット部と下位ビット部に分割する画素入力部
と、前記下位ビット部を比較しその大小関係を出力する
比較部と前記上位ビット部から前記比較部の出力に従っ
て補間原点の位置を決定する補間原点設定部と、入力カ
ラー画像信号空間内の格子点上での出力値を記憶してい
る色変換テーブルメモリと、前記色変換テーブルメモリ
に対して前記補間原点からアクセスすべき色変換テーブ
ルメモリのアドレスを生成し、前記色変換テーブルメモ
リへ前記アドレスを供給するメモリアクセス部と、前記
メモリアクセス部にて選択された格子点が入力カラー画
像信号空間外の外郭ブロックに存在するか否かを検出す
る外郭ブロック検出部と、前記格子点出力値の差分値を
生成する差分値生成部と、前記格子点出力値から入力カ
ラー画像信号空間外の格子点の出力値を外挿する外挿部
と、前記外郭ブロック検出部の出力に従って前記差分値
生成部の出力を切り替える差分値セレクタと前記外挿部
の出力値と補間原点に相当する格子点の出力値を切り替
える原点セレクタと、前記下位ビット部にて斜三角柱に
沿った補間重み係数を生成する重み生成部と、前記重み
係数の大小関係にて斜三角柱を選択する斜三角柱判定部
と、前記差分値セレクタの出力と前記重み係数を用いて
出力値を補間する斜三角柱補間演算部とを具備すること
を特徴とするものである。
To achieve the above object, the present invention provides a pixel input section for dividing a color image signal represented by various color signals into an upper bit section and a lower bit section, and the lower bit section. Comparison section for comparing the sections and outputting the magnitude relation, an interpolation origin setting section for determining the position of the interpolation origin from the upper bit section according to the output of the comparison section, and output on a grid point in the input color image signal space A color conversion table memory that stores values, and a memory access that generates an address of the color conversion table memory to be accessed from the interpolation origin for the color conversion table memory and supplies the address to the color conversion table memory Block and outer block detection for detecting whether or not the grid point selected by the memory access unit exists in the outer block outside the input color image signal space A difference value generation unit that generates a difference value of the grid point output values, an extrapolation unit that extrapolates output values of grid points outside the input color image signal space from the grid point output values, and the outer block detection The difference value selector that switches the output of the difference value generation unit according to the output of the unit, the origin selector that switches the output value of the extrapolation unit and the output value of the lattice point corresponding to the interpolation origin, and the lower bit unit forms an oblique triangular prism. A weight generation unit that generates an interpolation weighting coefficient along the line, an oblique triangular column determination unit that selects an oblique triangular column based on the magnitude relationship of the weighting factor, and an output value using the output of the difference value selector and the weighting factor. It is characterized by comprising an oblique triangular prism interpolation calculation unit.

【0015】[0015]

【作用】本発明の色変換装置では、三原色入力色信号で
作られる三次元空間を複数の単位立方体領域に分割し、
前記空間の対角軸方向に沿って互いに隣接する各単位立
方体の上底と下底を形成する頂点にて構成される斜三角
柱もしくは平行六面体を想定し、前記入力色空間全域を
前記斜行立体群にて包含するように設定し、任意の入力
色に対応する出力値を、前記斜行立体の各頂点での出力
値を用いて補間する。この結果、三原色入力空間におけ
る斜三角柱あるいは平行六面体群は、第一色軸=第二色
軸、第二色軸=第三色軸、第三色軸=第一色軸なる3平
面に平行な面を境界面として持つ。たとえば、三原色入
力色空間をRGB色空間とすると、R=G、G=B、B
=Rなる3平面を含む。これらの3平面はMIN演算に
おいて微分不連続となる3つの面であり、一方その境界
内にて囲まれている3領域ではMIN演算結果はまった
くリニアに補間できる。したがって補間不可能な面を補
間単位立体の境界のみに割り当てることができるがゆえ
補間操作は全入力色空間においてリニアにリップルが無
い状態にて行われる。すなわち、色変換において多用さ
れるMIN演算における「リップル」発生を無彩色方向
に限らず入力色空間内のあらゆる方向において完全に回
避でき、また補間空間に斜三角柱を用いることによって
アクセスが必要となる入力色空間外の格子点の出力値を
入力色空間内の格子点出力値から外挿することによって
色変換テーブルメモリの増大を避けることができる。
In the color conversion apparatus of the present invention, the three-dimensional space created by the input color signals of the three primary colors is divided into a plurality of unit cube areas,
Assuming an oblique triangular prism or a parallelepiped composed of apexes forming upper and lower bases of unit cubes that are adjacent to each other along the diagonal direction of the space, the entire input color space is defined as the oblique solid. The output values corresponding to arbitrary input colors are interpolated by using the output values at the respective vertices of the oblique solid body. As a result, the oblique triangular prism or parallelepiped group in the three primary color input space is parallel to the three planes of the first color axis = second color axis, second color axis = third color axis, and third color axis = first color axis. It has a surface as a boundary surface. For example, assuming that the input color space of the three primary colors is the RGB color space, R = G, G = B, B
= 3 including R plane. These three planes are three surfaces that are differentially discontinuous in the MIN calculation, while the MIN calculation result can be interpolated in a completely linear manner in the three regions surrounded by the boundaries. Therefore, since the non-interpolable surface can be assigned only to the boundary of the interpolation unit solid, the interpolation operation is performed linearly in the entire input color space with no ripple. That is, it is possible to completely avoid the occurrence of "ripple" in the MIN calculation that is frequently used in color conversion, not only in the achromatic color direction but also in any direction in the input color space, and access is required by using an oblique triangular column in the interpolation space. By extrapolating the output values of grid points outside the input color space from the output values of grid points inside the input color space, it is possible to avoid an increase in the color conversion table memory.

【0016】[0016]

【実施例】以下、本発明の実施例について、図面を参照
しながら説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0017】図1は本発明の実施例における色変換装置
のブロック構成図を示すものである。図1において、1
01は画像入力信号RGBを上位ビット(RH,GH,B
H)と下位ビット(RL,GL,BL)に分離する画素入力
部で本実施例では上位3ビットと下位5ビットにそれぞ
れ分離している。102はRLとGL、BLとGLのそれぞ
れの値の大小を比較する比較部、103は上位ビットR
H、BHから比較部102の比較結果C1、C2を減算して
補間原点の位置を決定する補間原点設定部である。10
4は下位ビット同志の減算RL−GL、BL−GLとGLを
出力する重み生成部、105は2種類の斜三角柱のいず
れを斜三角柱補間で使用するかを判定する斜三角柱判定
部、106は上位ビットGHと補間原点設定部103で
調整された上位ビットRH’、BH’と斜三角柱判定部1
05の判定結果から色変換テーブルメモリ108へアク
セスすべきメモリアドレスを生成するメモリアクセス部
である。107は色変換テーブルメモリ108から読み
出される格子点が入力カラー画像空間の内部に存在する
のか、外部に存在するのかを判定する外郭ブロック検出
部で、検出結果EDBを色変換テーブルメモリ108と
原点・差分値セレクタ111へ出力する。109は色変
換テーブルメモリ108の出力である格子点出力値a,
b(あるいはd),c,e,f(あるいはh),g間で
差分値を計算する差分値生成部、110は入力カラー画
像空間外の格子点の出力値を外挿計算する外挿部、11
1は外郭ブロック検出部107の検出結果EDBに従っ
て外挿された格子点出力値と入力色空間内の格子点出力
値を切り替え、さらに外挿に必要な差分値をセレクトす
る原点・差分値セレクタ、112は斜三角柱補間演算
部、そして113は補間演算結果である。
FIG. 1 is a block diagram of a color conversion device according to an embodiment of the present invention. In FIG. 1, 1
01 designates the image input signal RGB as the upper bits (RH, GH, B
In the present embodiment, the pixel input unit separates H) and lower bits (RL, GL, BL) into upper 3 bits and lower 5 bits, respectively. 102 is a comparison unit for comparing the magnitudes of RL and GL and BL and GL, and 103 is the upper bit R
It is an interpolation origin setting unit that determines the position of the interpolation origin by subtracting the comparison results C1 and C2 of the comparison unit 102 from H and BH. 10
Reference numeral 4 is a weight generation unit that outputs the subtraction RL-GL, BL-GL and GL of the lower bits, 105 is an oblique triangular prism determination unit that determines which of two types of oblique triangular prisms is used in oblique triangular prism interpolation, and 106 is High-order bit GH, high-order bits RH 'and BH' adjusted by the interpolation origin setting unit 103, and an oblique triangular prism determination unit 1
The memory access unit generates a memory address to access the color conversion table memory 108 based on the determination result of 05. Reference numeral 107 denotes an outer block detection unit that determines whether the grid points read from the color conversion table memory 108 exist inside or outside the input color image space, and the detection result EDB is stored in the color conversion table memory 108 and the origin. Output to the difference value selector 111. 109 is a grid point output value a, which is an output of the color conversion table memory 108,
A difference value generation unit that calculates a difference value among b (or d), c, e, f (or h), and g, and an extrapolation unit 110 that extrapolates an output value of a grid point outside the input color image space. , 11
Reference numeral 1 denotes an origin / difference value selector that switches between the grid point output value extrapolated according to the detection result EDB of the outer block detection unit 107 and the grid point output value in the input color space, and further selects a difference value necessary for extrapolation. Reference numeral 112 is an oblique triangular prism interpolation calculation unit, and 113 is an interpolation calculation result.

【0018】以上のように構成された色変換装置の動作
について説明する。図1の色変換装置は斜三角柱補間法
によって入力画素信号(R,G,B)を色変換する装置
である。斜三角柱補間演算部112が補間演算を実行す
るブロックであり、他のブロック(101〜111)は
すべて斜三角柱補間演算に必要なデータを生成する役割
を持っている。そこで本実施例の動作説明を行うため
に、まず斜三角柱補間法の説明を行う。
The operation of the color conversion device configured as described above will be described. The color conversion device of FIG. 1 is a device for performing color conversion of input pixel signals (R, G, B) by the oblique triangular prism interpolation method. The oblique-triangular-column interpolation calculation unit 112 is a block that executes the interpolation calculation, and the other blocks (101 to 111) all have a role of generating data necessary for the oblique-triangular prism interpolation calculation. Therefore, in order to describe the operation of the present embodiment, the oblique triangular prism interpolation method will be described first.

【0019】斜三角柱補間法は、三原色入力色信号で作
られる三次元空間を複数の単位立方体領域に分割し、前
記空間の対角軸方向に沿って互いに隣接する各単位立方
体の上底と下底を形成する頂点にて構成される斜三角柱
を想定し、前記入力色空間全域を前記斜三角柱にて包含
するように設定し、任意の入力色に対応する出力値を、
前記斜三角柱の各頂点での出力値を用いて補間する方法
である。斜三角柱を構成する6つの頂点は画素入力部1
01で生成された上位ビット(RH,GH,BH)によっ
て選択される。また画像入力部101で生成された下位
ビット(RL,GL,BL)は入力画素信号(R,G,
B)の斜三角柱内での位置を表わし、入力画素信号
(R,G,B)に対する色変換出力値を斜三角柱の6つ
の頂点が有する色変換出力値から入力位置に応じた補間
演算によって算出する。図2の(A)と(B)は上位ビ
ット(RH,GH,BH)によって選択された斜三角柱を
表わし、図2の(C)と(D)は上位ビット(RH,G
H,BH)によって選択された斜四角柱を表わす。a,
b,c,d,e,f,g,hは斜三角柱あるいは斜四角
柱の頂点であり、各々、入力画素信号に対する色変換出
力値を有する。
The oblique triangular prism interpolation method divides a three-dimensional space formed by three primary color input color signals into a plurality of unit cube areas, and the upper and lower bases of the unit cubes adjacent to each other along the diagonal axis direction of the space. Assuming an oblique triangular prism composed of vertices forming the bottom, the entire input color space is set to be covered by the oblique triangular prism, and an output value corresponding to any input color is
This is a method of interpolation using the output value at each vertex of the oblique triangular prism. The six vertices that form the oblique triangular column are the pixel input unit 1
It is selected by the upper bits (RH, GH, BH) generated in 01. Further, the lower bits (RL, GL, BL) generated by the image input unit 101 are input pixel signals (R, G,
B) represents the position in the oblique triangular prism, and the color conversion output value for the input pixel signal (R, G, B) is calculated from the color conversion output values of the six vertices of the oblique prism by interpolation calculation according to the input position. To do. 2 (A) and 2 (B) show an oblique triangular column selected by the upper bits (RH, GH, BH), and FIGS. 2 (C) and 2 (D) show the upper bits (RH, G).
H, BH) represents a rectangular prism selected by. a,
b, c, d, e, f, g, and h are the vertices of an oblique triangular prism or an oblique quadrangular prism, and each has a color conversion output value for an input pixel signal.

【0020】図3は斜行座標系XYZと直交座標系RG
Bの関係を示したもので、XYZ空間とRGB空間は以
下のベクトル関係がある。
FIG. 3 shows an oblique coordinate system XYZ and an orthogonal coordinate system RG.
The relationship of B is shown, and the XYZ space and the RGB space have the following vector relationships.

【0021】[0021]

【数1】 [Equation 1]

【0022】RGB空間での入力点(r,b,g)=
(RL,GL,BL)のベクトルOは
Input point (r, b, g) in RGB space =
The vector O of (RL, GL, BL) is

【0023】[0023]

【数2】 [Equation 2]

【0024】と表され、これを(1)式を用いてXYZ
空間で表すと
## EQU3 ## This is expressed as XYZ using the equation (1).
When expressed in space

【0025】[0025]

【数3】 (Equation 3)

【0026】となる。従ってXYZ空間で表した入力点
(x,y,z)は
## EQU1 ## Therefore, the input point (x, y, z) expressed in XYZ space is

【0027】[0027]

【数4】 (Equation 4)

【0028】となる。従ってXYZ方向にそれぞれ(R
L−GL)、(BL−GL)、GLの移動量として図2の補
間原点aから補間演算を行えば良い事になる。
## EQU1 ## Therefore, (R
It suffices to perform interpolation calculation from the interpolation origin a in FIG. 2 as the movement amounts of L-GL), (BL-GL), and GL.

【0029】ここでxまたはyの値が負になった場合は
都合が悪いが以下の方法で解決できる。この場合は補間
原点からの移動量が−Rまたは−B方向になる。そのた
め原点位置aを−Rまたは−Bの方向にひとつ後退させ
補間の重みを新しい補間原点位置からの距離に変換する
事で解決できる。このように正値化された移動量を斜三
角柱補間の重み係数として次のように表す。
Here, when the value of x or y becomes negative, it is inconvenient, but it can be solved by the following method. In this case, the amount of movement from the interpolation origin is in the -R or -B direction. Therefore, this can be solved by retracting the origin position a by one in the -R or -B direction and converting the interpolation weight into a distance from the new interpolation origin position. The amount of movement thus positively expressed is represented as a weighting coefficient for oblique-triangular prism interpolation as follows.

【0030】[0030]

【数5】 (Equation 5)

【0031】図4は下位ビット(RL,GL,BL)によ
って定まる入力点が単位立体401に入力した場合、ど
のような斜三角柱に属するかを4つに分類した図であ
る。図4(A)に示すAREA(0)に入力点が入った
場合、前記入力点は斜三角柱402に属する。図4
(B)に示すAREA(1)に入力点が入った場合、前
記入力点は斜三角柱402の補間原点aを−B方向に移
動した斜三角柱403に属する。図4(C)に示すAR
EA(2)に入力点が入った場合、前記入力点は斜三角
柱402の補間原点aを−R方向に移動した斜三角柱4
04に属する。図4(D)に示すAREA(3)に入力
点が入った場合、前記入力点は斜三角柱402の補間原
点aを−Rと−B方向に移動した斜三角柱405に属す
る。(表1)はRL,BL,GLの大小関係でaの位置の
移動方向(R,B)を示すものである。
FIG. 4 is a diagram in which, when an input point determined by the lower bits (RL, GL, BL) is input to the unit solid 401, what kind of oblique triangular prism it belongs to is classified into four. When an input point is entered in AREA (0) shown in FIG. 4A, the input point belongs to the oblique triangular prism 402. FIG.
When an input point is entered in AREA (1) shown in (B), the input point belongs to the oblique triangular prism 403 which is obtained by moving the interpolation origin a of the oblique triangular prism 402 in the −B direction. AR shown in FIG. 4 (C)
When an input point is entered in EA (2), the input point is an oblique triangular prism 4 obtained by moving the interpolation origin a of the oblique triangular prism 402 in the −R direction.
Belong to 04. When an input point is entered in AREA (3) shown in FIG. 4D, the input point belongs to the oblique triangular column 405 which is obtained by moving the interpolation origin a of the oblique triangular column 402 in the −R and −B directions. Table 1 shows the moving direction (R, B) of the position a in relation to the magnitude of RL, BL, GL.

【0032】[0032]

【表1】 [Table 1]

【0033】従って、RGBの上位ビット(RH,GH,
BH)で選択された斜三角柱の原点位置aはRGBの下
位ビットの(4)式の大小判定によりそれぞれaの位置
を−X、−Y方向にそれぞれずらすことで変更され、入
力点を包含する斜三角柱の原点位置を求めることができ
る。
Therefore, the upper bits of RGB (RH, GH,
The origin position a of the oblique triangular column selected in (BH) is changed by shifting the position of a in the -X and -Y directions, respectively, according to the magnitude judgment of expression (4) of the lower bits of RGB, and includes the input point. The origin position of the oblique triangular column can be obtained.

【0034】xが負の場合の重み係数はxに32を加算
した値を用いる。y方向についても同様である。xまた
はyが負になった場合に32を加算する事はデジタル減
算器の出力の符号ビットを無視する事で良いので非常に
簡単である。以上、x、yの正負に伴う上位ビット(R
H,GH,BH)と下位ビット(RL,GL,BL)の変更方
法を(表2)にまとめて示す。
When x is negative, a value obtained by adding 32 to x is used as the weighting coefficient. The same applies to the y direction. It is very easy to add 32 when x or y becomes negative because the sign bit of the output of the digital subtractor can be ignored. As described above, the upper bits (R
H, GH, BH) and the method of changing the lower bits (RL, GL, BL) are summarized in (Table 2).

【0035】[0035]

【表2】 [Table 2]

【0036】この様にして、斜三角柱の原点位置aと対
応する2つの斜三角柱の端点位置b〜h、さらに(5)
式から計算される重み係数により斜三角柱内で線形補間
演算を実行する準備が整ったことになる。次に図5を用
いて斜三角柱での補間演算方法を説明する。
In this way, the end point positions b to h of the two oblique triangular prisms corresponding to the origin position a of the oblique triangular prisms, and (5)
With the weighting factor calculated from the formula, it is ready to execute the linear interpolation operation in the oblique triangular prism. Next, the interpolation calculation method in the oblique triangular prism will be described with reference to FIG.

【0037】a〜hでの色変換テーブル出力値を(a)
〜(h)で表す事にする。補間出力点oから線分aeに
平行に引いた直線と底面abcd及び上面efghとの
交点をそれぞれm、nとするとm、n点での出力
(m)、(n)は斜三角柱が図2に示すType=0の
場合には
The color conversion table output values for a to h are (a)
~ (H). If the intersections of the straight line drawn from the interpolation output point o in parallel to the line segment ae and the bottom surface abcd and the top surface efgh are m and n, respectively, the outputs (m) and (n) at the points m and n are shown in FIG. When Type = 0 shown in

【0038】[0038]

【数6】 (Equation 6)

【0039】となる。従って、m点とn点の間で線形補
間して目的点oでの出力(o)は
It becomes Therefore, the output (o) at the target point o after linear interpolation between the m point and the n point is

【0040】[0040]

【数7】 (Equation 7)

【0041】として計算される。同様にType=1の
場合は
Is calculated as Similarly, when Type = 1,

【0042】[0042]

【数8】 (Equation 8)

【0043】として計算される。以上が斜三角柱補間法
の説明である。
Is calculated as The above is the description of the oblique triangular prism interpolation method.

【0044】ここで図1の動作説明に戻る。画素入力部
101で生成された画像入力信号RGBの上位ビット
(RH,GH,BH)と下位ビット(RL,GL,BL)は
(表2)に示すルールに従って、それぞれ(RH’,G
H’,BH’)と(RL’,GL’,BL’)になる。(表
2)の演算を行うにはまず下位ビット(RL,GL,B
L)の大小関係を判定しなければならない。これは比較
部102が実行する。図6は比較部102の動作ブロッ
クを示したもので(表1)に対応した動作を行う。つま
りC1はGLがRLより大きい時は1でそれ以外は0を出
力し、C2はGLがBLより大きい時は1でそれ以外は0
を出力する。C1,C2は補間原点設定部103に与え
られ、補間原点設定部103は(表2)に示す方法で
(RH’,GH’,BH’)を作成する。ここでGH’は3
ビットであるが、RH’とBH’は上記比較部出力との減
算によりそれぞれ符号付き5ビットに拡張されている。
またC1,C2は重み生成部104にも与えられ、重み
生成部104は(表2)に示す方法で(RL’,GL’,
BL’)を作成する。図7は重み生成部104の動作ブ
ロックを示し、RGBの下位ビット同士の演算で(RL
−GL),(BL−GL)を計算し、GLはそのまま出力す
る。入出力が同じビット幅になっているのは減算結果が
負の場合は符号ビットを無視する事で上位ビットからの
ボローを行った事と等価にする為である。上位ビットか
らのボローを行った結果(RL−GL)’,(BL−G
L)’として出力する。以上により、図4に示す補間原
点aの位置(RH’,GH’,BH’)と斜三角柱補間に
用いる重み係数(RL−GL)’,(BL−GL)’,G
L’が決定された。
Returning to the explanation of the operation in FIG. The upper bits (RH, GH, BH) and the lower bits (RL, GL, BL) of the image input signal RGB generated by the pixel input unit 101 are (RH ', G) according to the rules shown in (Table 2).
H ', BH') and (RL ', GL', BL '). To perform the operation of (Table 2), first, the lower bits (RL, GL, B
It is necessary to judge the size relationship of L). This is performed by the comparison unit 102. FIG. 6 shows the operation block of the comparison unit 102, and performs the operation corresponding to (Table 1). That is, C1 outputs 1 when GL is larger than RL and outputs 0 otherwise, C2 outputs 1 when GL is larger than BL, and 0 otherwise.
Is output. C1 and C2 are given to the interpolation origin setting unit 103, and the interpolation origin setting unit 103 creates (RH ', GH', BH ') by the method shown in (Table 2). Where GH 'is 3
Bits, RH 'and BH' are expanded to 5 bits with a sign by subtraction from the output of the comparison unit.
Further, C1 and C2 are also given to the weight generation unit 104, and the weight generation unit 104 uses the method shown in (Table 2) (RL ', GL',
BL ') is created. FIG. 7 shows an operation block of the weight generation unit 104, which calculates (RL
-GL), (BL-GL) are calculated, and GL is output as it is. The input and output have the same bit width because if the subtraction result is negative, the sign bit is ignored and it is equivalent to borrowing from the upper bits. The result of borrowing from the upper bits (RL-GL) ', (BL-G
L) 'is output. From the above, the position (RH ', GH', BH ') of the interpolation origin a and the weighting factors (RL-GL)', (BL-GL) ', G used in the oblique triangular prism interpolation shown in FIG.
L'is decided.

【0045】次に補間原点aの位置(RH’,GH’,B
H’)に基づいて、斜三角柱の6頂点が持つ色変換出力
値を色変換テーブルメモリ108から読み出す。メモリ
アクセス部106は画像入力信号RGBの上位ビット
(RH,GH,BH)から定義される代表格子点群から補
間演算に必要な6つの格子点をアクセスするためのアド
レスを生成する。前記アドレスは色変換テーブルメモリ
108へ与えられ、斜三角柱を形成する6つの格子点に
格納された色変換出力値を前記色変換テーブルメモリ1
08から読み出す。a,b(あるいはd),c,e,f
(あるいはh),gはそれぞれ色変換テーブルメモリ1
08から読み出された各格子点の色変換出力値である。
ただし、6つの格子点を決定する際には図2の(A),
(B)に示すような2つの斜三角柱(Type=0とT
ype=1)のうち、どちらを用いるかを決定しなけれ
ばならない。この判定を行うのが斜三角柱判定部105
である。図8は斜三角柱判定部105の動作ブロック
で、重み生成部104の出力のうち(RLーGL)’,
(BL−GL)’の大小関係により斜三角柱のType=
0かType=1を判定し、判定出力(PRISM)を
得ている。色変換テーブルメモリ108から読み出され
た斜三角柱を構成する6格子点の色変換出力値a,b
(あるいはd),c,e,f(あるいはh),gは差分
値生成部109、外挿部110、原点・差分値セレクタ
111を経由して斜三角柱補間演算部112へ与えら
れ、式(6)〜(11)の斜三角柱補間演算に用いられ
る。また重み生成部104にて生成された重み係数(R
L−GL)’,(BL−GL)’,GL’も補間演算部11
2へ供給され、同じく式(6)〜(11)の斜三角柱補
間演算に用いられる。
Next, the position of the interpolation origin a (RH ', GH', B
H ′), the color conversion output values of the six vertices of the oblique triangular prism are read from the color conversion table memory 108. The memory access unit 106 generates addresses for accessing the six grid points required for the interpolation operation from the representative grid point group defined by the upper bits (RH, GH, BH) of the image input signal RGB. The address is given to the color conversion table memory 108, and the color conversion output values stored in the six grid points forming the oblique triangular prism are stored in the color conversion table memory 1.
It is read from 08. a, b (or d), c, e, f
(Or h) and g are color conversion table memory 1 respectively.
It is the color conversion output value of each grid point read from 08.
However, when determining the six grid points, (A) of FIG.
Two oblique triangular prisms (Type = 0 and T as shown in FIG.
It must be decided which of the ype = 1) is to be used. This judgment is performed by the oblique triangular prism judgment unit 105.
It is. FIG. 8 is an operation block of the oblique triangular prism determination unit 105. Among the outputs of the weight generation unit 104, (RL−GL) ′,
Due to the size relationship of (BL-GL) ', the oblique triangular prism Type =
0 or Type = 1 is determined, and the determination output (PRISM) is obtained. The color conversion output values a and b of the six grid points forming the oblique triangular prism read from the color conversion table memory 108.
(Or d), c, e, f (or h) and g are given to the oblique triangular prism interpolation calculation unit 112 via the difference value generation unit 109, the extrapolation unit 110 and the origin / difference value selector 111, and the expression ( 6) to (11) are used for the oblique triangular prism interpolation calculation. Further, the weighting coefficient (R
L-GL) ', (BL-GL)', and GL 'are also interpolation calculation units 11
2 and is also used for the diagonal triangular prism interpolation calculation of the equations (6) to (11).

【0046】続いて補間原点設定部103の出力(R
H’,GH’,BH’)から色変換テーブルメモリ108
の出力a,b(あるいはd),c,e,f(あるいは
h),gを生成する動作について説明する。補間原点設
定部103の出力(RH’,GH’,BH’)はメモリア
クセス部106へ入力して色変換テーブルメモリ108
をアクセスするためのアドレスを生成する。色変換テー
ブルメモリ108は前記アドレスに従って色変換出力
a,b(あるいはd),c,e,f(あるいはh),g
を出力する。まず、色変換テーブルメモリのアドレスと
格子点出力値の関係を説明する。
Then, the output of the interpolation origin setting unit 103 (R
H ', GH', BH ') to color conversion table memory 108
The operation of generating the outputs a, b (or d), c, e, f (or h), and g will be described. The output (RH ', GH', BH ') of the interpolation origin setting unit 103 is input to the memory access unit 106 and is input to the color conversion table memory 108.
Generate an address to access. The color conversion table memory 108 stores the color conversion outputs a, b (or d), c, e, f (or h), g according to the address.
Is output. First, the relationship between the address of the color conversion table memory and the grid point output value will be described.

【0047】本実施例はRGB各軸を8等分して得られ
る729(=(23+1)3)個の格子点の出力値を色変
換テーブルメモリ108に格納する。1回の補間演算に
はこのうち6個の格子点が用いられる。そこで色変換装
置の演算速度を高めるためにはこの6個の格子点データ
をメモリから同時に読み出す必要がある。これを実現す
るためには同時に読み出される6個の格子点出力値を6
個の別々の色変換テーブルメモリー(M0〜M5)に格
納しておけばよい。以上より、色変換テーブルメモリ1
08には6つのメモリを設け、同時アクセスされる格子
点どうしを別々のメモリへ配分する必要がある。そこで
図9を用いて729個の各格子点を色変換テーブルメモ
リM0〜M5のどれに格納するのかを説明する。
In this embodiment, the output values of 729 (= (2 3 +1) 3 ) grid points obtained by dividing each RGB axis into eight equal parts are stored in the color conversion table memory 108. Six grid points are used for one interpolation calculation. Therefore, in order to increase the calculation speed of the color conversion device, it is necessary to simultaneously read out these six grid point data from the memory. In order to realize this, 6 grid point output values read simultaneously are set to 6
The color conversion table memories (M0 to M5) may be stored separately. From the above, the color conversion table memory 1
It is necessary to provide six memories in 08 and allocate lattice points that are simultaneously accessed to different memories. Therefore, with reference to FIG. 9, it will be described in which of the color conversion table memories M0 to M5 each of the 729 grid points is stored.

【0048】(A)は729個の格子点から構成される
色変換テーブルメモリのRGB空間を示す。空間軸には
(RH、BH、GH)と(RH'、BH'、GH')の2つを併
記しておく。斜三角柱を構成する6格子点のうち、上面
の3格子点と下面の3格子点を分けて考える。すなわち
GH=0,2,4,6,8面(偶数面)は色変換テーブ
ルメモリM0〜M2に割り当て、GH=1,3,5,7
面(奇数面)は色変換テーブルメモリM3〜M5に割り
当てる。
(A) shows the RGB space of the color conversion table memory composed of 729 lattice points. Two (RH, BH, GH) and (RH ', BH', GH ') are written together on the space axis. Of the 6 lattice points forming the oblique triangular prism, 3 lattice points on the upper surface and 3 lattice points on the lower surface will be considered separately. That is, GH = 0, 2, 4, 6, 8 (even surface) is assigned to the color conversion table memories M0 to M2, and GH = 1, 3, 5, 7
The surface (odd surface) is assigned to the color conversion table memories M3 to M5.

【0049】(B)はGHが偶数になるGH=0,2,
4,6,8面でのメモリへの配分方法を示している。ま
ず原点位置(G軸上)901をM0へ格納し、R軸方向
へ移動するごとにM1、M2、...と格納するメモリ
を変えていく。そしてR軸方向にいっぱいになったらR
H=0へ戻ってB軸に1つ進む。B軸のスタートはM1
とし、再びR軸方向にM2、M0、...と移動してい
く。さらにB軸へ移動した場合はM2からスタートす
る。このルールによって9×3の領域902は同時に読
み出される3格子点(斜三角柱の片側の底面)はそれぞ
れ異なるメモリM0〜M2より引き出すことができる。
(B)の残りの領域は領域902の繰り返しのよって埋
め尽くすことができる。(C)はGHが奇数になるGH=
1,3,5,7面でのメモリへの配分方法を示してい
る。配分の方法は(B)と全く同じで、M0をM3に、
M1をM4に、M2をM5に置き換えているだけであ
る。以上(B)と(C)に示すように各格子点の出力値
をメモリM0〜M5へ格納していけば1回の補間演算に
同時読みだしされる6格子点データは異なるメモリから
引き出すことができる。
In (B), GH = 0, 2, where GH becomes an even number.
The method of allocating to the memory on 4, 6 and 8 planes is shown. First, the origin position (on the G-axis) 901 is stored in M0, and M1, M2 ,. . . And change the memory to store. And when it is full in the R-axis direction, R
Go back to H = 0 and proceed to the B axis by one. Start B axis is M1
, And again in the R-axis direction, M2, M0 ,. . . And move on. When moving to B axis further, it starts from M2. According to this rule, the 9 × 3 area 902 is read out at the same time, and the three lattice points (the bottom surface on one side of the oblique triangular prism) can be drawn from different memories M0 to M2.
The remaining area of (B) can be filled up by repeating the area 902. In (C), GH is an odd number GH =
The method of allocating the memory to the first, third, fifth, and seventh planes is shown. Allocation method is exactly the same as (B), M0 to M3,
It simply replaces M1 with M4 and M2 with M5. As shown in (B) and (C) above, if the output values of each grid point are stored in the memories M0 to M5, the 6 grid point data that are simultaneously read in one interpolation calculation can be retrieved from different memories. You can

【0050】このように色変換テーブルメモリ上に配置
された色変換出力値を読み出すためにメモリアドレスを
作成するのがメモリアクセス部106である。メモリア
クセス部106は補間原点設定部の出力(RH'、BH'、
GH')から色変換テーブルメモリをアクセスするアドレ
スを生成し、色変換テーブルメモリ108へ出力する。
図10はメモリアクセス部106、外郭ブロック検出部
107、色変換テーブルメモリ108の内部構成図を示
す。メモリアクセス部106はスライド部1001、各
色変換テーブルメモリへアドレスを供給するアドレス生
成群1002、色変換テーブルメモリを外部バスへつな
ぐメモリインターフェイス群1003からなる。色変換
テーブルメモリ108は6つのメモリ(M0〜M5)か
らなる色変換テーブルメモリ群504、色変換テーブル
メモリからの出力経路を切り替えるメモリデータセレク
タ群1005からなる。
The memory access unit 106 creates a memory address in order to read the color conversion output value arranged on the color conversion table memory in this way. The memory access unit 106 outputs the output of the interpolation origin setting unit (RH ', BH',
An address for accessing the color conversion table memory is generated from GH ') and output to the color conversion table memory 108.
FIG. 10 shows an internal configuration diagram of the memory access unit 106, the outer block detection unit 107, and the color conversion table memory 108. The memory access unit 106 includes a slide unit 1001, an address generation group 1002 that supplies an address to each color conversion table memory, and a memory interface group 1003 that connects the color conversion table memory to an external bus. The color conversion table memory 108 includes a color conversion table memory group 504 including six memories (M0 to M5) and a memory data selector group 1005 for switching an output path from the color conversion table memory.

【0051】まずスライド部1001の説明から始め
る。図11は図9の(A)のRGB空間に配置された色
変換テーブルメモリを(−B)方向から見た図であり、
図12はG方向から見た図である。図11においてAは
GH’が偶数の場合に使用する斜三角柱の1つを斜線で
表しており、Bは奇数の場合を表している。図12では
補間原点aを示す(RH’BH’GH’)によって補間立
体の下面の位置Aが指示され、上面はR,B方向にそれ
ぞれ1ずつ進めた位置A’であることを示している。こ
のように斜三角柱を形成するために、M0〜M2面、あ
るいはM3〜M5面のどちらかがR,B方向にそれぞれ
1ずつ移動されなければならない。この役割を担うのが
スライド部501である。図11からわかるようにG
H’が偶数の場合はM3〜M5をスライドし、GH’が奇
数の場合はM0〜M2をスライドする。そこでスライド
部501では、GH’の偶奇の判断をGH’の最下位ビッ
ト(LSB)によって行い、GH’の最下位ビットが0
のときGH’は偶数であるから、色変換テーブルメモリ
M3〜M5をアクセスするための補間原点信号RH”2
とBH”2がそれぞれRH’+1とBH’+1で与えられ
る。またGH’の最下位ビットが1のときGH’は奇数で
あるから、色変換テーブルメモリM0〜M2をアクセス
するための補間原点信号RH”1とBH”1がそれぞれR
H’+1とBH’+1で与えられる。GH”1とGH”2は
GH’をそのまま受ける。以上、スライド部1001の
論理をまとめて(表3)に示す。
First, the description of the slide portion 1001 will be started. FIG. 11 is a view of the color conversion table memory arranged in the RGB space of FIG. 9A viewed from the (−B) direction,
FIG. 12 is a view seen from the G direction. In FIG. 11, A indicates an oblique triangular column used when GH ′ is an even number, and B indicates an odd number. In FIG. 12, the position A of the lower surface of the interpolated solid is indicated by (RH'BH'GH ') indicating the interpolation origin a, and the upper surface is the position A'advanced by 1 in the R and B directions, respectively. . In order to form the oblique triangular column, one of the M0 to M2 planes or the M3 to M5 planes must be moved by one in the R and B directions. The slide portion 501 plays this role. As can be seen from FIG.
If H'is even, slide M3 to M5, and if GH 'is odd, slide M0 to M2. Therefore, the slide unit 501 determines whether GH 'is even or odd by using the least significant bit (LSB) of GH' and the least significant bit of GH 'is 0.
Since GH ′ is an even number, the interpolation origin signal RH ″ 2 for accessing the color conversion table memories M3 to M5
And BH ″ 2 are given by RH ′ + 1 and BH ′ + 1 respectively. Further, when the least significant bit of GH ′ is 1, GH ′ is an odd number, so the interpolation origin for accessing the color conversion table memories M0 to M2. Signals RH "1 and BH" 1 are R respectively
It is given by H '+ 1 and BH' + 1. GH "1 and GH" 2 receive GH 'as it is. The logic of the slide unit 1001 is summarized in (Table 3) above.

【0052】[0052]

【表3】 [Table 3]

【0053】以上のような処理によってスライド部10
01以降はメモリM0〜M2に対する経路とメモリM3
〜M5に対する経路の2系統に分かれることになる。そ
こでスライド部1001に続くアドレス生成群100
2、メモリインターフェイス群1003、色変換テーブ
ルメモリ群1004、メモリデータセレクタ群1005
はともにM0〜M2とM3〜M5に対応する2系統から
構成される。
By the above processing, the slide unit 10
After 01, the path to the memories M0 to M2 and the memory M3
~ The route for M5 is divided into two systems. Therefore, the address generation group 100 following the slide unit 1001
2, memory interface group 1003, color conversion table memory group 1004, memory data selector group 1005
Are both composed of two systems corresponding to M0 to M2 and M3 to M5.

【0054】次に各格子点にどのように色変換テーブル
アドレスをふっていくのか、各格子点と色変換テーブル
アドレスの関係を図13の(D)と(E)を用いて説明
する。図13の(D)は図9の(B)で配置されたM0
〜M2に対し、どのようにアドレスをふっていくのかを
説明する図である。そのルールはB軸を起点にR軸方向
に3つずつ固まりを作り、この固まりに原点からR軸方
向へ番号をつけていくというものである。このM0、M
1、M2の3つずつの固まりを以降、単位ブロックと呼
ぶ。R軸に沿ってアドレスの割り振りが終わったらB軸
方向へ1つ移動する。本実施例ではRGB軸をそれぞれ
8等分するため、RB面一面には単位ブロックは27個
(=9×9÷3)存在する。よって原点から最も遠い単
位ブロックは26番が付加される。ここでM0〜M2の
一番下の面(GH=0)に関し、ナンバリングが終了し
たため、G軸方向へ1つ移動するが、M0〜M2のすぐ
上のM3〜M5面(GH=1)は飛ばして、もうひとつ
上のM0〜M2面(GH=2)へ移動する。番号は続き
で27番になる。このように単位ブロックに番号を付加
していくと図13(F)に示すように原点の対角に位置
する最後の単位ブロック903は134番(=26+2
7×4)になる。以上の要領で付加した単位ブロックの
番号をそのままM0〜M2のアドレスとして使用する。
Next, how to apply the color conversion table address to each grid point, the relationship between each grid point and the color conversion table address will be described with reference to FIGS. 13D and 13E. FIG. 13D shows M0 arranged in FIG. 9B.
It is a figure explaining how to give an address to ~ M2. The rule is to make three blocks in the R-axis direction starting from the B-axis, and to number these blocks in the R-axis direction from the origin. This M0, M
Hereinafter, three blocks each including 1 and M2 will be referred to as a unit block. When the allocation of the address along the R axis is completed, the address is moved in the B axis direction by one. In this embodiment, each of the RGB axes is divided into eight equal parts, so that there are 27 unit blocks (= 9 × 9 ÷ 3) on the entire RB surface. Therefore, No. 26 is added to the unit block farthest from the origin. Here, regarding the bottom surface (GH = 0) of M0 to M2, one number is moved in the G axis direction because the numbering is completed, but the M3 to M5 surfaces (GH = 1) immediately above M0 to M2 are Skip and move to the upper M0-M2 surface (GH = 2). The number will continue to be number 27. When numbers are added to the unit blocks in this way, as shown in FIG. 13F, the last unit block 903 located diagonally to the origin is No. 134 (= 26 + 2).
7 × 4). The unit block number added in the above manner is used as it is as the address of M0 to M2.

【0055】M3〜M5のアドレスの作り方も全く同様
である。ナンバリングのスタートは図9の(A)のGH
=1のRB面となり、図13の(E)がこれにあたる。
M0〜M2と同じ要領で単位ブロック番号にナンバリン
グしていくとM3〜M5面で原点から最も遠い単位ブロ
ック904は図13の(F)に示すように107番(=
26+27×3)になる。M0〜M2面と番号が食い違
う理由は図11からわかるようにM0〜M2面は5面で
あり、M3〜M5面は4面であるからである。
The method of creating the addresses M3 to M5 is exactly the same. The numbering starts at GH in Fig. 9 (A).
It becomes the RB plane of = 1 and this corresponds to (E) of FIG.
When the unit block numbers are numbered in the same manner as M0 to M2, the unit block 904 farthest from the origin on the M3 to M5 planes is numbered 107 (=) as shown in FIG.
26 + 27 × 3). The reason that the numbers are different from those of the M0 to M2 surfaces is that the M0 to M2 surfaces are five surfaces and the M3 to M5 surfaces are four surfaces, as can be seen from FIG.

【0056】以上より各格子点の出力値が格納されるメ
モリの種類と各メモリにおけるアドレスが決まったの
で、スライド部1001の出力(RH”1,BH”1,G
H”1)と(RH”2,BH”2,GH”2)からアドレス
を生成する方法を説明する。
From the above, since the type of memory in which the output value of each grid point is stored and the address in each memory are determined, the output (RH "1, BH" 1, G of the slide unit 1001 is determined.
A method of generating an address from H "1) and (RH" 2, BH "2, GH" 2) will be described.

【0057】図14はアドレス生成群1002(図1
0)の内部構成図であり、(A)はメモリM0〜M2に
対応するアドレス生成部0〜2の内部構成、(B)はメ
モリM3〜M5に対応するアドレス生成部3〜5の内部
構成を示す。図14の動作説明を行うために、まず斜三
角柱補間演算の実行方法を説明する必要がある。図5に
よってすでに斜三角柱補間方法を原理として説明した
が、図15は色変換テーブルメモリの配分方法と補間演
算回路のハードウェア規模の最小化を考慮した斜三角柱
補間演算の実行方法である。図15には隣接する斜三角
柱が4つ描かれている。このうち下にある2つの斜三角
柱1401と1402は図5に示したものと同一で、下
面がabcあるいはadcであり、上面がefgあるい
はehgとなる。一方、上にある2つの斜三角柱140
3と1404は上面がabcあるいはadcであり、下
面がefgあるいはehgとなる。そこで下の斜三角柱
1401あるいは1402と同様に縦方向の補間、つま
り点mと点nの間の補間を上方向(abc面→efg面
あるいはadc面→ehg面)に行うと、上の斜三角柱
1403あるいは1404では逆にefg面→abc面
あるいはehg面→adc面といった補間を行わなけれ
ばならない。補間演算回路はこの方向の区別なく、たと
えばab(d)c面は下面、ef(h)g面は上面と固
定して、1系統分のみの規模に抑え、2系統分の規模を
持って負担を大きくしたくない。そこで図15に示すよ
うに、ab(d)c面は補間演算の下面、ef(h)g
面は補間演算の上面と固定して補間演算を行う。上の斜
三角柱1403、1404のようにef(h)g面がa
b(d)c面の下に位置しても補間演算はab(d)c
面→ef(h)g面方向に実行する。これにより、メモ
リM0〜M2は必ず補間演算の下面ab(d)c面の格
子点出力値を与え、メモリM3〜M5は必ず補間演算の
上面ef(h)g面の格子点の出力値を与えることにな
る。
FIG. 14 shows an address generation group 1002 (see FIG.
(A) is an internal configuration diagram of address generation units 0 to 2 corresponding to the memories M0 to M2, and (B) is an internal configuration of address generation units 3 to 5 corresponding to the memories M3 to M5. Indicates. In order to explain the operation of FIG. 14, it is necessary to first explain the method of executing the oblique triangular prism interpolation calculation. Although the principle of the oblique-triangular prism interpolation method has been described with reference to FIG. 5, FIG. 15 shows a method of allocating the color conversion table memory and a method of executing the oblique-trigonal prism interpolation calculation in consideration of minimizing the hardware scale of the interpolation calculation circuit. In FIG. 15, four adjacent triangular prisms are drawn. Of these, the lower two oblique triangular columns 1401 and 1402 are the same as those shown in FIG. 5, the lower surface is abc or adc, and the upper surface is efg or ehg. On the other hand, the two oblique triangular columns 140 above
In 3 and 1404, the upper surface is abc or adc, and the lower surface is efg or ehg. Therefore, if the vertical interpolation, that is, the interpolation between the point m and the point n is performed in the upward direction (abc surface → efg surface or adc surface → ehg surface) as in the case of the lower oblique triangular prism 1401 or 1402, the upper oblique triangular prism is generated. Conversely, in 1403 or 1404, interpolation such as efg surface → abc surface or ehg surface → adc surface must be performed. The interpolation calculation circuit does not distinguish this direction. For example, the ab (d) c surface is fixed to the bottom surface and the ef (h) g surface is fixed to the upper surface. I don't want to increase the burden. Therefore, as shown in FIG. 15, the ab (d) c surface is the lower surface of the interpolation calculation, and ef (h) g
The surface is fixed to the upper surface of the interpolation calculation and the interpolation calculation is performed. The ef (h) g plane is a like the upper oblique triangular columns 1403 and 1404.
Even if it is located below the b (d) c plane, the interpolation calculation is ab (d) c.
Surface → ef (h) Execute in the g-plane direction. As a result, the memories M0 to M2 always give the grid point output values of the lower surface ab (d) c surface of the interpolation calculation, and the memories M3 to M5 always give the output values of the grid point of the upper surface ef (h) g surface of the interpolation calculation. Will be given.

【0058】以上より図15に示す補間方法を用いるこ
とによって、ab(d)c面→ef(h)g面とef
(h)g面→ab(d)c面の2系統に対処する回路構
成をとることを避け、ハードウェアの小規模化が実現で
きる。なお、G軸方向の重み係数GL’は補間演算の方
向によって切り替える必要があり、斜三角柱1403、
1404のように下方向に点mn間の補間を行う場合は
From the above, by using the interpolation method shown in FIG. 15, the ab (d) c plane → ef (h) g plane and ef
(H) It is possible to reduce the size of the hardware by avoiding the circuit configuration that copes with the two systems of g-plane → ab (d) c-plane. The weighting factor GL ′ in the G-axis direction needs to be switched depending on the direction of the interpolation calculation.
When performing interpolation between the points mn in the downward direction as in 1404,

【0059】[0059]

【数9】 [Equation 9]

【0060】なる重み係数を補間演算に用いる。図7に
おいてGL’にはGLがそのまま与えられているが、図1
6に示すようにGHの最下位ビットが0の場合はGL’に
GLがそのまま与えられ、GHの最下位ビットが1の場合
はGL’は式(12)によって与えられる。図11の斜
三角柱Bが選ばれた場合はab(d)c面がef(h)
g面の上にくるため、縦方向(点mn間)の補間は反転
され、重み係数GLは式(12)によって与えられる。
The following weighting coefficient is used in the interpolation calculation. In FIG. 7, GL 'is given as it is to GL'.
As shown in 6, when the least significant bit of GH is 0, GL is given to GL 'as it is, and when the least significant bit of GH is 1, GL' is given by equation (12). When the oblique triangular column B in FIG. 11 is selected, the ab (d) c plane is ef (h)
The interpolation in the vertical direction (between the points mn) is inverted to come on the g-plane, and the weighting coefficient GL is given by the equation (12).

【0061】ここで図14の説明に戻る。図14のアド
レス生成部0〜5は図13の(D)〜(F)で説明した
ように入力画素信号に従って選ばれるべき6つの格子点
が6つのメモリM0〜M5のどのアドレスに格納されて
いるのかを判断して、スライド部1001の出力(R
H”1,BH”1,GH”1)と(RH”2,BH”2,GH”2)
からアドレスを生成しなければならない。このアドレス
の作成は上述したように図13で定義した単位ブロック
番号の算出を意味する。よってアドレス生成部0〜5が
(RH”1,BH”1,GH”1)と(RH”2,BH”2,G
H”2)からどのように各格子点が属する単位ブロック番
号を算出するのかを説明する。
Returning to the explanation of FIG. In the address generators 0 to 5 of FIG. 14, as described in FIGS. 13D to 13F, six grid points to be selected according to the input pixel signal are stored in any of the six memories M0 to M5. Output from the slide unit 1001 (R
H "1, BH" 1, GH "1) and (RH" 2, BH "2, GH" 2)
Must generate an address from. The creation of this address means the calculation of the unit block number defined in FIG. 13 as described above. Therefore, the address generators 0 to 5 are (RH "1, BH" 1, GH "1) and (RH" 2, BH "2, G).
How to calculate the unit block number to which each grid point belongs from H ″ 2) will be described.

【0062】まず図14(A)の説明を行う。図14
(A)はアドレス生成部0〜2の内部構成図である。ス
ライド部1001の出力(RH”1,BH”1,GH”1)は
補間原点aの位置を示しているため、
First, FIG. 14A will be described. FIG.
(A) is an internal configuration diagram of the address generation units 0 to 2. Since the output (RH "1, BH" 1, GH "1) of the slide unit 1001 indicates the position of the interpolation origin a,

【0063】[0063]

【数10】 (Equation 10)

【0064】によって補間原点aに対応する格子点が属
する単位ブロック番号を求めることができる。ただしR
H”1/3は3のわり算の商を表す。今仮に図9(B)の
三角形905が選択されたとすると、補間原点aに対応
する格子点の出力値はメモリM0に格納されているた
め、式(13)のアドレスはメモリM0へ供給されなけ
ればならない。ところが図9(B)の三角形906が選
択されたとすると、補間原点aに対応する格子点の出力
値はメモリM2に格納されているため、メモリM2へ供
給しなければならない。このように式(13)で計算さ
れた補間原点aのアドレスは選択された三角形の種類に
よって供給するメモリを切り替えなければならない。こ
の切り替えのルールはRH”1を3で割った余りとBH”1
を3で割った余りを使って(表4)のようにまとめられ
る。
The unit block number to which the grid point corresponding to the interpolation origin a belongs can be obtained by the above. However, R
H ″ 1/3 represents the quotient of division of 3. Now, assuming that the triangle 905 in FIG. 9B is selected, the output value of the grid point corresponding to the interpolation origin a is stored in the memory M0. , The address of the equation (13) must be supplied to the memory M0.However, if the triangle 906 of FIG. 9B is selected, the output value of the grid point corresponding to the interpolation origin a is stored in the memory M2. Therefore, the memory M2 must be supplied to the memory M2. Thus, the address of the interpolation origin a calculated by the equation (13) must switch the memory to be supplied according to the selected triangle type. RH "1 divided by 3 and BH" 1
It is summarized as shown in (Table 4) using the remainder obtained by dividing by.

【0065】[0065]

【表4】 [Table 4]

【0066】RH”mod3はRH”1を3で割った余りを、
BH”mod3はBH”1を3で割った余りをそれぞれ示す。
図9の(B)の領域902内からわかるようにメモリM
0〜M2の配置パターンは3×3の領域がR軸方向に繰
り返されている。よってRH”1を3で割った余りとB
H”1を3で割った余りを見ることによって(表4)のよ
うに規定できる。
RH "mod3 is the remainder of RH" 1 divided by 3,
BH ″ mod3 indicates the remainder when dividing BH ″ 1 by 3.
As shown in the area 902 in FIG. 9B, the memory M
In the arrangement pattern of 0 to M2, a 3 × 3 region is repeated in the R-axis direction. Therefore, the remainder obtained by dividing RH ″ 1 by 3 and B
It can be defined as shown in (Table 4) by looking at the remainder obtained by dividing H ″ 1 by 3.

【0067】次に残りの格子点b、c、dに対するアド
レスの算出方法を説明する。図13の(D)において三
角形1907が選ばれた場合、格子点bの出力値はメモ
リM1から読み出すが、このときメモリM1へ供給する
アドレスはM0に与えるアドレスと同一である。なぜな
らばM1はM0と同じ単位ブロック内に存在するからで
ある。よって式(13)のアドレスをそのまま供給すれ
ばよい。一方、格子点cの出力値はM2に格納されてい
るが、アドレスは式(13)によって与えられるアドレ
スに3足し込む必要がある。なぜならばM2はM0が属
する単位ブロックのB軸方向に1つ上に位置し、単位ブ
ロック番号は3だけ大きい。このようにメモリM0〜M
2に与えるアドレスは式(13)で計算されるアドレス
を基準に補間原点aが属する単位ブロックから外れる格
子点に対してのみアドレスを増分すればいいことがわか
る。よって入力RGB信号に従ってどのメモリに与える
アドレスを増分するのか、そしてその増分量はいくつか
を判断してアドレスを生成することになる。補間原点a
のアドレスを増分するルールはRH”1を3で割った余り
RH”mod3とBH”1を3で割った余りBH”mod3、そして
PRISMを用いて(表5)のようにまとめられる。
Next, a method of calculating addresses for the remaining grid points b, c and d will be described. When the triangle 1907 is selected in (D) of FIG. 13, the output value of the grid point b is read from the memory M1, and the address supplied to the memory M1 at this time is the same as the address given to M0. This is because M1 exists in the same unit block as M0. Therefore, the address of Expression (13) may be supplied as it is. On the other hand, although the output value of the grid point c is stored in M2, the address needs to be added to the address given by equation (13) by three. This is because M2 is located one above in the B-axis direction of the unit block to which M0 belongs, and the unit block number is increased by 3. In this way, memories M0-M
It can be seen that the addresses given to 2 need only be incremented with respect to the grid point deviating from the unit block to which the interpolation origin a belongs, based on the address calculated by the equation (13). Therefore, which memory is to be incremented according to the input RGB signal, and the increment amount is determined severally to generate the address. Interpolation origin a
The rules for incrementing the address are summarized as shown in (Table 5) using RH ″ 1 divided by 3, the remainder RH ″ mod3 and BH ″ 1 divided by 3, the remainder BH ″ mod3, and PRISM.

【0068】[0068]

【表5】 [Table 5]

【0069】補間原点aに対応するメモリは増分されな
いので、(表4)で示された補間原点aのアドレスが供
給されるメモリの増分値はすべて0である。
Since the memory corresponding to the interpolation origin a is not incremented, the increment value of the memory to which the address of the interpolation origin a shown in (Table 4) is supplied is 0.

【0070】以上よりアドレス生成部0〜2は(表5)
の論理に従って各メモリに対し、アドレスの増分を実行
すればいい。まず式(13)に従ってRH”1を3で割っ
た商を生成する必要がある。これは図14(A)におい
てDIV3(1301)が実行する。(表5)において
場合分けを行うためにRH”1とBH”1を3で割った余り
が必要となる。これらはそれぞれMOD3RH(130
2)とMOD3BH(1303)が実行する。(表5)
に示した増分値の加算は図14に示すようにB軸系とR
軸系に分解して実行する。つまりアドレス生成部の出力
である色変換テーブルアドレスMAi(i=0〜5)は
From the above, the address generators 0 to 2 (Table 5)
The address increment should be executed for each memory according to the logic of. First, it is necessary to generate a quotient obtained by dividing RH ″ 1 by 3 according to the equation (13). This is executed by DIV3 (1301) in FIG. 14A. RH for performing case classification in (Table 5) "1" and "BH" 1 need to be divided by 3. The MOD3RH (130
2) and MOD3BH (1303). (Table 5)
As shown in FIG. 14, addition of the increment values shown in FIG.
Disassemble into axis system and execute. That is, the color conversion table address MAi (i = 0 to 5) output from the address generator is

【0071】[0071]

【数11】 [Equation 11]

【0072】なる形式で算出され、増分値の加算はIs calculated in the form

【0073】[0073]

【数12】 (Equation 12)

【0074】[0074]

【数13】 (Equation 13)

【0075】と実行する。INCRはR軸方向の増分
値、INCBはB軸方向の増分値であり、これらは(表
5)に基づき、(表6)によって与えられる。
And execute. INCR is an increment value in the R-axis direction, INCB is an increment value in the B-axis direction, and these are given by (Table 6) based on (Table 5).

【0076】[0076]

【表6】 [Table 6]

【0077】図14(A)に示すように(表6)に示し
た増分値のテーブルをメモリごとに持たせてINCBを
BH”1に加算してBNを得、INCRをRH”1に加算し
てRNを得る。(表6)の増分値のテーブルは増分値生
成部0(1304)、増分値生成部1(1305)、増
分値生成部2(1306)が持ち、これらにMOD3R
H(1302)からRH”mod3を与え、MOD3BH
(1303)からBH”mod3を与え、図1の斜三角柱判
定部105からPRISMを入力する。増分値生成部と
式(15)と(16)の増分値の加算と式(14)の色
変換テーブルアドレスMAiの演算を実行する部分をリ
ニアライザと呼び、増分値生成部の(表6)がメモリご
とに異なるため、このリニアライザはメモリM0〜M2
ごとに3つ設ける。メモリM0へアドレスMA0を出力
するリニアライザをリニアライザ0(1407)、メモ
リM1へアドレスMA1を出力するリニアライザをリニ
アライザ1(1408)、メモリM3へアドレスMA2
を出力するリニアライザをリニアライザ2(1409)
と呼ぶ。RH”mod3、BH”mod3、PRISMは各リニア
ライザに対して共有され、同じ値をリニアライザ0〜2
へ供給する。またGNは図11に示すようにM0〜M
2、M3〜M5ごとに設定するG軸方向の尺度で、M0
〜M2のGNはGHが偶数の面に対して、M3〜M5の
GNはGHが奇数の面に対して設置される。前記GNは
GHを右へ1ビットシフトすることによって得られる。
図11の斜三角柱Aに入力がきたとすると、GH=2で
あるからGN=1となり、斜三角柱Aの下面はGN(M
0〜M2)=1の面から、上面はGN(M3〜M5)=
1の面からそれぞれ与えられる。一方、斜三角柱Bに入
力がきたとすると、GH=3であるから同じくGN=1
となり、斜三角柱Aの下面はGN(M3〜M5)=1の
面から与えられるが、M0〜M2面が不適切である。こ
の場合、GN(M0〜M2)は2でなければならない。
つまりGHが奇数の場合、GN(M0〜M2)は1だけ
増分しなければならないのである。よってアドレス生成
部0〜2ではGH”1を右へ1ビットシフトした後、G
H”1の最下位ビット(LSB)を加算してGNの調整を
行う。
As shown in FIG. 14 (A), the table of increment values shown in (Table 6) is provided for each memory, INCB is added to BH "1 to obtain BN, and INCR is added to RH" 1. To obtain RN. The table of the increment values of (Table 6) has the increment value generation unit 0 (1304), the increment value generation unit 1 (1305), and the increment value generation unit 2 (1306), and the MOD3R
RH ”mod3 is given from H (1302), and MOD3BH
BH ″ mod3 is given from (1303), and PRISM is input from the oblique-triangular-pillar determination unit 105 in FIG. 1. Increment value generation unit, addition of increment values of formulas (15) and (16), and color conversion of formula (14) The part that executes the calculation of the table address MAi is called a linearizer, and since (Table 6) of the increment value generation unit differs for each memory, this linearizer has the memories M0 to M2.
Provide 3 for each. The linearizer that outputs the address MA0 to the memory M0 is the linearizer 0 (1407), the linearizer that outputs the address MA1 to the memory M1 is the linearizer 1 (1408), and the linearizer that outputs the address MA2 to the memory M3 is the address MA2.
Linearizer 2 (1409) that outputs a linearizer that outputs
Call. RH "mod3, BH" mod3 and PRISM are shared for each linearizer, and the same value is used for linearizers 0-2.
Supply to Further, GN is M0 to M as shown in FIG.
2, M0 is a scale in the G-axis direction set for each of M3 to M5.
The GNs of ~ M2 are installed on the surface of even GH, and the GNs of M3 to M5 are installed on the surface of odd GH. The GN is obtained by shifting GH to the right by one bit.
If input is made to the oblique triangular column A in FIG. 11, GH = 1, and therefore GN = 1, and the lower surface of the oblique triangular column A is GN (M
From 0 to M2) = 1, the upper surface is GN (M3 to M5) =
Each is given from the 1st side. On the other hand, if there is an input to the slanted triangular prism B, GH = 1, and thus GN = 1.
Therefore, the lower surface of the oblique triangular column A is given from the surface of GN (M3 to M5) = 1, but the M0 to M2 surfaces are inappropriate. In this case, GN (M0 to M2) must be 2.
That is, if GH is odd, then GN (M0-M2) must be incremented by one. Therefore, in the address generators 0 to 2, after shifting GH ″ 1 by 1 bit to the right,
The least significant bit (LSB) of H ″ 1 is added to adjust GN.

【0078】図14の(B)は図10のアドレス生成群
1002の色変換テーブルメモリM3〜M5に対応する
アドレス生成部3〜5の内部構成を示した図である。こ
れは色変換テーブルメモリM0〜M2に対する(A)と
ほぼ同じ構成であり、M0をM3に、M1をM4に、M
2をM5にそれぞれ置き換えることによって得られる。
図9の(B)と(C)を比べればわかるようにGH偶数
面とGH奇数面は対称な関係にあり、M0をM3に、M
1をM4に、M2をM5に置き換えることによって完全
にGH偶数面の動作はGH奇数面上で再現できる。ただ
し、1つだけ異なる部分が存在する。それはGH"2に対
する処理である。GH"2はメモリM3〜M5が属するR
B面を決定するが、メモリM0〜M2が属するRB面の
ようにGH"1の最下位ビットによってRB面をG軸方向
へ移動する操作は必要ない。そこでGH"2は図11に示
すGN(M0〜M2)とGN(M3〜M5)を生成する
ために右へ1ビットシフトするのみである。以上よりス
ライド部1001の出力(RH”1,BH”1,GH”1)と
(RH”2,BH”2,GH”2)から色変換テーブルメモリ
M0〜M5へ与えるアドレスMAiを生成できる。
FIG. 14B is a diagram showing the internal structure of the address generators 3 to 5 corresponding to the color conversion table memories M3 to M5 of the address generator group 1002 of FIG. This is almost the same configuration as (A) for the color conversion table memories M0 to M2. M0 is set to M3, M1 is set to M4, and M is set to M4.
2 by replacing each with M5.
As can be seen by comparing (B) and (C) of FIG. 9, the GH even surface and the GH odd surface have a symmetrical relationship, and M0 is set to M3, and M0 is set to M3.
By replacing 1 with M4 and M2 with M5, the operation of the GH even plane can be completely reproduced on the GH odd plane. However, there is only one difference. It is a process for GH "2. GH" 2 is the R to which the memories M3 to M5 belong.
Although the B plane is determined, unlike the RB plane to which the memories M0 to M2 belong, it is not necessary to move the RB plane in the G axis direction by the least significant bit of GH "1. Therefore, GH" 2 is GN shown in FIG. It only shifts one bit to the right to produce (M0-M2) and GN (M3-M5). From the above, the address MAi given to the color conversion table memories M0 to M5 can be generated from the outputs (RH "1, BH" 1, GH "1) and (RH" 2, BH "2, GH" 2) of the slide unit 1001.

【0079】次に図10のメモリデータセレクタ群10
05の内部構成を図17に示す。色変換テーブルメモリ
M0〜M5はアドレス生成部0〜5のアドレスを受けて
斜三角柱補間演算に必要な6つの格子点の出力値を与え
るが、各メモリが6格子点のどれを出力しているのかを
把握し、これに従って補間演算回路に適切に格子点出力
値を渡さなければならない。具体的に言い替えるなら
ば、色変換テーブルメモリ108のメモリM0〜M5と
格子点a,b(あるいはd),c,e,f(あるいは
h),gとの対応づけを行わなければならない。このメ
モリと格子点の対応づけを担うのが図10のメモリデー
タセレクタ群1005である。
Next, the memory data selector group 10 of FIG.
The internal structure of 05 is shown in FIG. The color conversion table memories M0 to M5 receive the addresses of the address generators 0 to 5 and give the output values of the six grid points necessary for the triangular prism interpolation calculation, but each memory outputs which of the six grid points. It is necessary to grasp whether or not, and appropriately pass the grid point output value to the interpolation calculation circuit accordingly. In other words, the memories M0 to M5 of the color conversion table memory 108 and the grid points a, b (or d), c, e, f (or h) and g must be associated with each other. The memory data selector group 1005 in FIG. 10 is responsible for associating this memory with the grid points.

【0080】では図17の(A)から説明を行う。図1
7の(A)は色変換テーブルメモリM0〜M2の出力値
を選択するメモリデータセレクタ0(図10)の内部構
成である。図9の(B)において三角形905が選択さ
れた場合、メモリM0の出力値は格子点aの出力値であ
り、メモリM1の出力値は格子点bの出力値、そしてメ
モリM2の出力値は格子点cの出力値である。一方、三
角形906が選択された場合はメモリM0の出力値は格
子点bの出力値であり、メモリM1の出力値は格子点c
の出力値、そしてメモリM2の出力値は格子点aの出力
値である。よって入力RGBに従って選ばれた斜三角柱
の底面の三角形の位置によって対応関係が変わり、この
対応関係は(表7)のように記述できる。
Now, description will be made from FIG. 17 (A). FIG.
7A shows the internal configuration of the memory data selector 0 (FIG. 10) that selects the output values of the color conversion table memories M0 to M2. When the triangle 905 is selected in FIG. 9B, the output value of the memory M0 is the output value of the grid point a, the output value of the memory M1 is the output value of the grid point b, and the output value of the memory M2 is It is the output value of the grid point c. On the other hand, when the triangle 906 is selected, the output value of the memory M0 is the output value of the grid point b, and the output value of the memory M1 is the grid point c.
, And the output value of the memory M2 are the output values of the grid point a. Therefore, the correspondence relationship changes depending on the position of the triangle on the bottom surface of the oblique triangular prism selected according to the input RGB, and this correspondence relationship can be described as in (Table 7).

【0081】[0081]

【表7】 [Table 7]

【0082】つまり、三角形の位置は図14のアドレス
生成部0〜5と同様に、RH”1を3で割った余りRH”m
od3とBH”1を3で割った余りBH”mod3を用いて規定で
き、図9の(B)と照らし合わせながらメモリM0〜M
2と格子点の対応関係を求めていけばよい。(表7)か
らわかるようにメモリM0〜M2と格子点a,b(ある
いはd),cとの接続関係は3通りとなる。そこで3通
りの接続関係に対してSELType0という接続関係
の種類を表す信号を設け、このSELType0をセレ
クタA〜C(1604〜1606)へ供給する。図17
の(A)のDEC0(1903)は(表7)に従うデコ
ーダで、BH”1を3で割った余りを与えるMOD3BH
(1901)とRH”1を3で割った余りを与えるMOD
3RH(1902)を入力としてSELType0を出
力する。セレクタA〜Cの論理は(表8)に示す通りで
ある。
That is, the position of the triangle is the remainder RH "m obtained by dividing RH" 1 by 3 as in the address generators 0 to 5 in FIG.
It can be specified by using the remainder BH "mod3 obtained by dividing od3 and BH" 1 by 3, and the memories M0 to M can be compared with FIG. 9B.
It suffices to find the correspondence between 2 and the grid points. As can be seen from (Table 7), there are three connection relationships between the memories M0 to M2 and the lattice points a, b (or d) and c. Therefore, a signal indicating the type of connection relation, SELType0, is provided for the three types of connection relations, and this SELType0 is supplied to the selectors A to C (1604 to 1606). FIG.
(A) DEC0 (1903) is a decoder according to (Table 7) and gives a remainder obtained by dividing BH ″ 1 by 3 MOD3BH
MOD that gives the remainder when (1901) and RH ″ 1 are divided by 3
3RH (1902) is input and SELType 0 is output. The logic of the selectors A to C is as shown in (Table 8).

【0083】[0083]

【表8】 [Table 8]

【0084】図17の(B)は色変換テーブルメモリM
3〜M5の出力値を選択するメモリデータセレクタ1
(図10)の内部構成であるが、動作原理は(A)と同
一である。メモリM3〜M5と格子点e,f(あるいは
h),gとの接続関係を示すSELType1は(表
9)に従って生成され、(表10)に従ってセレクタD
〜FがメモリM3〜M5の出力値を格子点e,f(ある
いはh),gへ振り分ける。
FIG. 17B shows the color conversion table memory M.
Memory data selector 1 for selecting output values 3 to M5
The internal structure of FIG. 10 is the same as that of FIG. SELType1 indicating the connection relationship between the memories M3 to M5 and the grid points e, f (or h), g is generated according to (Table 9), and the selector D according to (Table 10).
~ F distributes the output values of the memories M3 to M5 to the grid points e, f (or h), g.

【0085】[0085]

【表9】 [Table 9]

【0086】[0086]

【表10】 [Table 10]

【0087】以上より、色変換テーブルメモリM0〜M
5と格子点データa,b(あるいはd),c,e,f
(あるいはh),gが対応づけられ、入力RGBデータ
に対応した6つの格子点出力値が補間演算へ供給できる
ようになった。
From the above, the color conversion table memories M0 to M
5 and grid point data a, b (or d), c, e, f
(Or h) and g are associated with each other, and six grid point output values corresponding to the input RGB data can be supplied to the interpolation calculation.

【0088】ところで斜三角柱補間は図2に示したよう
に上面と下面が対角方向に斜めにスライドされた位置関
係にある。そこで入力RGB空間の外郭部分で実行され
る斜三角柱補間では入力RGB空間外に位置するような
格子点が必要になる。図18は入力RGB空間と格子点
の関係を説明する図である。図18(A)はBまたはR
軸方向から入力空間を横方向に見た図であり、図18
(B)はG方向の上から見おろした図である。この様に
本発明の分割方法を用いた場合には入力定義空間より1
分割単位だけ外側のデータを補間テーブルに保持する事
が必要になる。例えば本実施例のようにRGB入力空間
の各軸を8等分して格子点を設定した場合、(8+1)
3=729点の格子点出力値を色変換テーブルメモリに
保持しておくことになるが、斜三角柱をカバーするため
に入力定義空間より1分割単位だけ外側のデータを加え
ると(8+1+1+1)2×(8+1)=1089点の
格子点が必要となり、約1.5倍のメモリが必要とな
る。そこで本発明では入力空間外に位置する格子点の出
力値を直接メモリに持たず、入力空間内の格子点出力値
から入力空間外の格子点出力値を外挿することによって
メモリの増大化を回避した。 そこで次に外挿方法につ
いて説明を行う。
By the way, the oblique triangular prism interpolation has a positional relationship in which the upper surface and the lower surface are slanted diagonally as shown in FIG. Therefore, the diagonal triangular prism interpolation executed in the outer portion of the input RGB space requires grid points located outside the input RGB space. FIG. 18 is a diagram for explaining the relationship between the input RGB space and grid points. FIG. 18 (A) shows B or R
FIG. 19 is a view of the input space viewed laterally from the axial direction.
(B) is a view looking down from the G direction. In this way, when the dividing method of the present invention is used, 1 from the input definition space
It is necessary to hold the data outside the division unit in the interpolation table. For example, when each axis of the RGB input space is divided into eight equal parts and grid points are set as in this embodiment, (8 + 1)
3 = 729 grid point output values are held in the color conversion table memory, but if data outside the input definition space by one division unit is added to cover the diagonal triangular prism, (8 + 1 + 1 + 1) 2 × (8 + 1) = 1089 grid points are required, which requires about 1.5 times as much memory. Therefore, in the present invention, the output value of the grid point located outside the input space is not directly held in the memory, but the memory value is increased by extrapolating the output value of the grid point outside the input space from the output value of the grid point inside the input space. Avoided. Therefore, the extrapolation method will be described next.

【0089】図19は図18と同様にRGB入力空間を
G軸方向から見た場合を表している。シャドウの入って
いる部分は単位補間立体の上下面の投影であり、薄いシ
ャドウの斜三角柱はType=0の場合に選ばれ、濃い
シャドウの斜三角柱はType=1の場合に選ばれる。
黒丸は補間原点aあるいは上面の原点eを表し、実線の
矢印は格子点間の差分値を表す。図19のように入力点
に従って選ばれた斜三角柱がRGB入力空間内に存在す
る場合は色変換テーブルメモリのデータをそのまま用い
れば良い。
Similar to FIG. 18, FIG. 19 shows a case where the RGB input space is viewed from the G axis direction. The shadowed portion is the projection of the upper and lower surfaces of the unit interpolated solid, and the thin shadow oblique triangular prism is selected when Type = 0, and the dark shadow oblique triangular prism is selected when Type = 1.
The black circles represent the interpolation origin a or the top origin e, and the solid arrows represent the difference values between the grid points. When the oblique triangular prism selected according to the input point exists in the RGB input space as shown in FIG. 19, the data in the color conversion table memory may be used as it is.

【0090】図20は図4で説明した補間原点aの移動
の結果、斜三角柱の下面がRGB入力空間外へ出た場合
を示している。単位補間立体1901は入力点がG軸を
含む外郭ブロックに入り、且つ図4の(D)に示すAR
EA(3)に属した場合に形成され、斜三角柱の下面a
bcdが入力空間外に出ている。単位補間立体1902
は入力点がR軸を含む外郭ブロックに入り、且つ図4の
(B)に示すAREA(1)あるいはAREA(3)に
属した場合に形成され、斜三角柱の下面abcdが入力
空間外に出ている。単位補間立体1903は入力点がB
軸を含む外郭ブロックに入り、且つ図4の(C)に示す
AREA(2)あるいはAREA(3)に属した場合に
形成され、斜三角柱の下面abcdが入力空間外に出て
いる。単位補間立体1904は入力点がR軸を含むB軸
から最も遠い外郭ブロックに入り、且つAREA(1)
に属した場合に形成され、下面abcdと上面efgh
がともに入力空間外に出る。ただしこの場合、Type
=1で選ばれる斜三角柱のみが必要となり、Type=
0で選ばれる斜三角柱内に入力点が現れることはない。
単位補間立方体1905は入力点がB軸を含むR軸から
最も遠い外郭ブロックに入り、且つAREA(2)に属
した場合に形成され、上下面がともに入力空間外に出る
が、Type=0で選ばれる斜三角柱のみが必要とな
り、Type=1で選ばれる斜三角柱は考えなくてよ
い。
FIG. 20 shows a case where the lower surface of the oblique triangular prism is out of the RGB input space as a result of the movement of the interpolation origin a described in FIG. In the unit interpolation solid 1901, the input point enters the outer block including the G axis, and the AR shown in FIG.
Formed when belonging to EA (3), lower surface a of the triangular prism
bcd is out of the input space. Unit interpolation solid 1902
Is formed when the input point enters the outer block including the R-axis and belongs to AREA (1) or AREA (3) shown in FIG. 4B, and the lower surface abcd of the oblique triangular prism is out of the input space. ing. The input point of the unit interpolation solid 1903 is B
It is formed when it enters the outer block including the axis and belongs to AREA (2) or AREA (3) shown in FIG. 4 (C), and the lower surface abcd of the oblique triangular prism is out of the input space. The unit interpolation solid 1904 has an input point in the outermost block farthest from the B axis including the R axis, and AREA (1)
Formed when belonging to the lower surface abcd and upper surface efgh
Both go out of the input space. However, in this case, Type
= 1 only the oblique triangular prism is required, and Type =
No input point appears in the oblique triangular column selected by 0.
The unit interpolation cube 1905 is formed when the input point enters the outermost block from the R axis including the B axis and belongs to AREA (2), and both the upper and lower surfaces go out of the input space, but with Type = 0 Only the selected oblique triangular prism is required, and the oblique triangular prism selected at Type = 1 need not be considered.

【0091】これら入力空間外に出た格子点の出力値は
以下の方法によって外挿する。まず単位補間立体190
1について説明する。補間原点aは次式のように下面の
c点から上面のe点とg点の差分値で外挿する。
The output values of the grid points which are outside these input spaces are extrapolated by the following method. First, the unit interpolation solid 190
1 will be described. The interpolation origin a is extrapolated by the difference value between the point c on the lower surface and the point e and the point g on the upper surface as in the following equation.

【0092】[0092]

【数14】 [Equation 14]

【0093】今、Type=0の斜三角柱が選択された
とすると、格子点bも入力空間外に存在するため、外挿
を行う必要がある。しかし斜三角柱補間を実行するには
式(6)と(7)に示すように、補間原点aの出力値
(a)と格子点出力値間の差分値(b)−(a)、
(c)−(a)が必要であるため、格子点bの出力値
(b)を直接求めずに(b)−(a)は上面の差分値
(f)−(e)を使い、(c)−(b)は上面の差分値
(g)−(f)を用いる。つまり式(6)の(m)は
Now, assuming that an oblique triangular prism of Type = 0 is selected, since the grid point b also exists outside the input space, it is necessary to extrapolate. However, in order to execute the oblique triangular prism interpolation, as shown in Expressions (6) and (7), the difference value (b)-(a) between the output value (a) of the interpolation origin a and the grid point output value,
Since (c)-(a) is required, (b)-(a) uses the difference value (f)-(e) of the upper surface instead of directly obtaining the output value (b) of the grid point b, For c)-(b), the difference value (g)-(f) on the upper surface is used. That is, (m) in equation (6) is

【0094】[0094]

【数15】 (Equation 15)

【0095】で計算できる。It can be calculated by

【0096】このように下面の差分値を上面の差分値で
代用する目的は、外挿演算回路をできるだけ小さくする
ためであり、本方式を用いれば外挿演算のための加減算
器は補間原点aに対してのみ必要となり、他は単なる置
き換えで済む。
The purpose of substituting the difference value on the lower surface with the difference value on the upper surface is to make the extrapolation operation circuit as small as possible. With this method, the adder / subtractor for the extrapolation operation uses the interpolation origin a. It is necessary only for, and the others can be replaced simply.

【0097】Type=1の斜三角柱が選択された場合
は、下面の差分値(d)−(a)を上面の差分値(h)
−(e)と置き換え、下面の差分値(c)−(d)を上
面の差分値(g)−(h)と置き換えればよく、式
(9)で求められるType=1の場合の(m)は
When the oblique triangular prism of Type = 1 is selected, the difference value (d)-(a) of the lower surface is changed to the difference value (h) of the upper surface.
-(E), and the difference value (c)-(d) on the lower surface may be replaced with the difference value (g)-(h) on the upper surface. (M in the case of Type = 1 obtained by the equation (9)) ) Is

【0098】[0098]

【数16】 (Equation 16)

【0099】で計算できる。It can be calculated by

【0100】次に単位補間立体1902での外挿方法を
説明する。前記立体が単位補間立体1901と比べて異
なる点は格子点dが入力空間内に存在することである。
このためType=1の斜三角柱が選択された場合、差
分値(c)−(d)は実在し、上面からの置き換えの必
要がない。そこで単位補間立体1902は補間原点aを
式(17)によって求め、Type=1の斜三角柱が選
択された場合は差分値(d)−(a)が上面の差分値
(h)−(e)と置き換えられ、Type=0の斜三角
柱が選択された場合は式(18)によって補間される。
Type=1の場合の補間式を以下に示す。
Next, an extrapolation method in the unit interpolation solid 1902 will be described. The solid is different from the unit interpolation solid 1901 in that the grid point d exists in the input space.
For this reason, when the oblique triangular prism of Type = 1 is selected, the difference values (c)-(d) actually exist, and it is not necessary to replace them from the upper surface. Therefore, the unit interpolation solid 1902 obtains the interpolation origin a by the equation (17), and when the oblique triangular prism of Type = 1 is selected, the difference value (d)-(a) is the difference value (h)-(e) of the upper surface. When the oblique triangular prism of Type = 0 is selected, it is interpolated by the equation (18).
The interpolation formula in the case of Type = 1 is shown below.

【0101】[0101]

【数17】 [Equation 17]

【0102】次に単位補間立体1903での外挿方法を
説明する。前記立体が単位補間立体1901と比べて異
なる点は格子点bが入力空間内に存在することである。
このためType=0の斜三角柱が選択された場合、差
分値(c)−(b)は実在し、上面からの置き換えの必
要がない。そこで単位補間立体1903は補間原点aを
式(17)によって求め、Type=0の斜三角柱が選
択された場合は差分値(b)−(a)が上面の差分値
(f)−(e)と置き換えられ、Type=1の斜三角
柱が選択された場合は式(19)によって補間される。
Type=0の場合の補間式を以下に示す。
Next, an extrapolation method in the unit interpolation solid 1903 will be described. The solid is different from the unit-interpolated solid 1901 in that the lattice point b exists in the input space.
For this reason, when the oblique triangular prism of Type = 0 is selected, the difference values (c)-(b) actually exist, and it is not necessary to replace them from the upper surface. Therefore, the unit interpolation solid 1903 obtains the interpolation origin a by the equation (17), and when the oblique triangular prism of Type = 0 is selected, the difference value (b)-(a) is the difference value (f)-(e) of the upper surface. Is replaced with, and when the oblique triangular prism of Type = 1 is selected, the interpolation is performed by the equation (19).
The interpolation formula in the case of Type = 0 is shown below.

【0103】[0103]

【数18】 (Equation 18)

【0104】次に単位補間立体1904での外挿方法を
説明する。前記立体で補間原点aの出力値(a)を求め
る場合、単位補間立体1901〜1903で用いた方法
は適応できない。なぜならば格子点gが入力空間外に存
在し、差分値(g)−(e)が実在しないためである。
そこで補間原点aは格子点dから上面の差分値(h)−
(e)を使って以下のように外挿する。
Next, an extrapolation method in the unit interpolation solid 1904 will be described. When obtaining the output value (a) of the interpolation origin a in the solid, the method used in the unit interpolation solids 1901-1903 cannot be applied. This is because the grid point g exists outside the input space and the difference value (g)-(e) does not actually exist.
Therefore, the interpolation origin a is the difference value (h) − from the grid point d to the upper surface.
Extrapolate using (e) as follows.

【0105】[0105]

【数19】 [Equation 19]

【0106】差分値は下面の(d)−(a)と上面の
(g)−(h)が実在しないため、それぞれ上面の
(h)−(e)、下面の(c)−(d)で置き換える。
以上より式(9)のType=1の(m)は
As for the difference value, since (d)-(a) on the lower surface and (g)-(h) on the upper surface do not actually exist, (h)-(e) on the upper surface and (c)-(d) on the lower surface, respectively. Replace with.
From the above, (m) of Type = 1 in equation (9) is

【0107】[0107]

【数20】 (Equation 20)

【0108】で求められ、式(10)の(n)は(N) of the equation (10) is obtained by

【0109】[0109]

【数21】 (Equation 21)

【0110】で求められる。なおすでに述べたように、
単位補間立体1904においてはType=0の斜三角
柱内に入力点が現れることはないため、式(23)と式
(24)で十分である。
It is calculated by As already mentioned,
In the unit interpolation solid 1904, since the input point does not appear in the oblique triangular prism of Type = 0, the expressions (23) and (24) are sufficient.

【0111】次に単位補間立体1905での外挿方法を
説明する。前記立体で補間原点aの出力値(a)を求め
る場合、単位補間立体1904と同様に格子点gが入力
空間外に存在するため、単位補間立体1901〜190
3での外挿方法である式(17)は利用できない。そこ
で格子点bから上面の差分値(f)−(e)を用いて以
下のように外挿する。
Next, an extrapolation method in the unit interpolation solid 1905 will be described. When obtaining the output value (a) of the interpolation origin a in the solid, the unit interpolation solids 1901-190 are present because the grid point g exists outside the input space as in the unit interpolation solid 1904.
Equation (17), which is the extrapolation method in 3, cannot be used. Therefore, extrapolation is performed as follows using the difference value (f)-(e) from the lattice point b to the upper surface.

【0112】[0112]

【数22】 (Equation 22)

【0113】差分値は下面の(b)−(a)と上面の
(g)−(f)が実在しないため、それぞれ上面の
(f)−(e)、下面の(c)−(b)で置き換える。
以上より式(6)のType=0の(m)は
As for the difference value, since (b)-(a) on the lower surface and (g)-(f) on the upper surface do not actually exist, (f)-(e) on the upper surface and (c)-(b) on the lower surface, respectively. Replace with.
From the above, (m) of Type = 0 in equation (6) is

【0114】[0114]

【数23】 (Equation 23)

【0115】で求められ、式(7)のType=0の
(n)は
The value (n) of Type = 0 in the equation (7) is given by

【0116】[0116]

【数24】 (Equation 24)

【0117】で求められる。なおすでに述べたように、
単位補間立体2405においてはType=1の斜三角
柱内に入力点が現れることはないため、式(26)と式
(27)で十分である。
It is calculated by As already mentioned,
In the unit interpolation solid 2405, since the input point does not appear in the oblique triangular prism of Type = 1, the expressions (26) and (27) are sufficient.

【0118】図21は図4で説明した補間原点aの移動
の結果、斜三角柱の上面がRGB入力空間外へ出た場合
を示している。ただし単位補間立体2004と2005
はそれぞれ図20の1904と1905と同一である。
単位補間立体2001は入力点が原点と対角の最も遠い
位置にある外郭ブロックに入り、且つ図4の(A)に示
すAREA(0)に属した場合に形成され、斜三角柱の
上面efghが入力空間外に出ている。また単位補間立
体2002は入力点がB軸から最も遠くR軸を含まない
外郭ブロックに入り、且つ図4のAREA(1)あるい
はAREA(0)に属した場合に形成され、斜三角柱の
上面efghが入力空間外に出ている。同様に単位補間
立体2003は入力点がR軸から最も遠くB軸を含まな
い外郭ブロックに入り、且つ図4のAREA(2)ある
いはAREA(0)に属した場合に形成され、斜三角柱
の上面efghが入力空間外に出ている。
FIG. 21 shows a case where the upper surface of the oblique triangular prism comes out of the RGB input space as a result of the movement of the interpolation origin a described in FIG. However, the unit interpolation solids 2004 and 2005
Are the same as 1904 and 1905 in FIG. 20, respectively.
The unit interpolation solid 2001 is formed when the input point enters the outer block located at the farthest position on the diagonal from the origin and belongs to AREA (0) shown in FIG. 4A, and the upper surface efgh of the oblique triangular prism is formed. It is outside the input space. The unit interpolation solid 2002 is formed when the input point is the furthest from the B axis and enters the outer block that does not include the R axis and belongs to AREA (1) or AREA (0) in FIG. Is out of the input space. Similarly, the unit interpolation solid 2003 is formed when the input point is farthest from the R axis and enters the outer block that does not include the B axis and belongs to AREA (2) or AREA (0) in FIG. efgh is out of the input space.

【0119】これら入力空間外に出た格子点の出力値は
以下の方法によって外挿する。斜三角柱の上面が入力空
間外に出た場合は下面が入力空間外に出た場合とは異な
り、差分値の置き換えのみで外挿は実行できる。単位補
間立体2001では上面の4つの差分値(g)−
(f)、(f)−(e)、(g)−(h)、(h)−
(e)をそれぞれ下面の差分値(c)−(b)、(b)
−(a)、(c)−(d)、(d)−(a)で代用す
る。よってType=0の斜三角柱において式(7)の
(n)は
The output values of the grid points outside these input spaces are extrapolated by the following method. When the upper surface of the oblique triangular prism is outside the input space, unlike the case where the lower surface is outside the input space, extrapolation can be executed only by replacing the difference value. In the unit interpolation solid 2001, four difference values (g) on the upper surface-
(F), (f)-(e), (g)-(h), (h)-
(E) is the difference value of the lower surface (c)-(b), (b)
-(A), (c)-(d), (d)-(a) are substituted. Therefore, (n) in equation (7) in the oblique triangular column of Type = 0 is

【0120】[0120]

【数25】 (Equation 25)

【0121】と計算される。またType=1の斜三角
柱において式(10)の(n)は
It is calculated as follows. (N) in the formula (10) in the oblique triangular prism of Type = 1 is

【0122】[0122]

【数26】 (Equation 26)

【0123】と計算される。Is calculated.

【0124】次に単位補間立体2002では上面の差分
値(g)−(f)、(f)−(e)、(g)−(h)を
それぞれ下面の差分値(c)−(b)、(b)−
(a)、(c)−(d)で代用する。よってType=
0の斜三角柱において式(7)の(n)は式(28)で
計算でき、Type=1の斜三角柱において式(10)
の(n)は
Next, in the unit interpolation solid 2002, the difference values (g)-(f), (f)-(e), and (g)-(h) of the upper surface are respectively calculated as the difference values (c)-(b) of the lower surface. , (B)-
Substitute with (a), (c)-(d). Therefore, Type =
(N) of the formula (7) can be calculated by the formula (28) in the case of the oblique triangular column of 0, and the formula (10) can be calculated in the case of the type of the oblique prism of Type = 1.
(N) is

【0125】[0125]

【数27】 [Equation 27]

【0126】と計算される。Is calculated as

【0127】同様に単位補間立体2003では上面の差
分値(g)−(f)、(g)−(h)、(h)−(e)
をそれぞれ下面の差分値(c)−(b)、(c)−
(d)、(d)−(a)で代用する。よってType=
1の斜三角柱において式(10)の(n)は式(29)
で計算でき、Type=0の斜三角柱において式(7)
の(n)は
Similarly, in the unit interpolation solid 2003, the difference values (g)-(f), (g)-(h), (h)-(e) of the upper surface are obtained.
The difference values (c)-(b), (c)-
Substitute with (d) and (d)-(a). Therefore, Type =
(N) of the formula (10) in the oblique triangular prism of 1 is the formula (29)
Can be calculated by the formula (7) in the oblique triangular prism of Type = 0
(N) is

【0128】[0128]

【数28】 [Equation 28]

【0129】と計算される。(表11)は図20で説明
した下面の外挿における補間原点aの外挿計算方法と差
分値の置き換え方法を示し、RH’とBH’による三角形
の位置によって場合けを行った。
Is calculated. Table 11 shows the extrapolation calculation method of the interpolation origin a and the replacement method of the difference value in the extrapolation of the lower surface described with reference to FIG. 20, and the case is determined by the position of the triangle by RH ′ and BH ′.

【0130】[0130]

【表11】 [Table 11]

【0131】また(表12)は図21で説明した上面の
外挿における補間原点aの外挿計算方法と差分値の置き
換え方法を示し、同じくRH’とBH’による三角形の位
置によって場合分けを行った。
Further, (Table 12) shows the extrapolation calculation method of the interpolation origin a and the replacement method of the difference value in the extrapolation of the upper surface described in FIG. 21, which is also classified according to the position of the triangle by RH 'and BH'. went.

【0132】[0132]

【表12】 [Table 12]

【0133】ところで図20、21は斜三角柱の下面が
ab(d)c面であり、斜三角柱の上面がef(h)g
面である場合を説明しているため、図15で説明した縦
方向の補間方向の反転を加味していない。つまり図2
0、21のケースとは逆に斜三角柱の上面がab(d)
c面であり、斜三角柱の下面がef(h)g面になる場
合である。このケースはGH=奇数の場合に相当し、入
力RGB空間外に出る補間原点はeとなり、差分値の入
れ替えの関係も逆転する。このGH=奇数の場合の外挿
方法をまとめたものが(表13)、(表14)である。
(表13)は(表11)に対応し、aをeに、bをf
に、cをgに、dをhに入れ換えたものである。(表1
4)は(表12)に対応するものである。
20 and 21, the lower surface of the triangular prism is the ab (d) c plane, and the upper surface of the triangular prism is ef (h) g.
Since the case of the surface is described, the inversion of the vertical interpolation direction described in FIG. 15 is not added. That is, FIG.
Contrary to cases 0 and 21, the upper surface of the oblique triangular prism is ab (d).
This is the case of the c-plane, and the lower surface of the triangular prism is the ef (h) g-plane. This case corresponds to the case of GH = odd number, the interpolation origin that goes out of the input RGB space is e, and the relationship of exchanging the difference values is also reversed. (Table 13) and (Table 14) summarize the extrapolation methods when GH = odd.
(Table 13) corresponds to (Table 11), where a is for e and b is for f
, C is replaced by g, and d is replaced by h. (Table 1
4) corresponds to (Table 12).

【0134】[0134]

【表13】 [Table 13]

【0135】[0135]

【表14】 [Table 14]

【0136】次に図1において外挿補間に関わる部分の
動作を説明する。外挿補間は図20、21で説明したよ
うに、入力RGB空間外に存在する補間原点aを格子点
c、あるいはb(d)から差分値を使って外挿する。そ
して一旦、補間原点aの出力値が決まったら、他の格子
点の出力値を直接求めるのではなく、RGB空間内に実
在する格子点間の差分値を使って間接的に外挿し、斜三
角柱補間を実行するというものである。このような外挿
補間を実行するにはまず補間原点aの位置に従って外挿
方法の場合分け信号を生成し、この信号に従って補間原
点aの算出と差分値の置き換えを実行しなければならな
い。この外挿方法の場合分けを検出するのが図1の外郭
ブロック検出部107であり、この出力信号EDBが前
記した外挿方法の場合分け信号に相当する。また図1の
外挿部110は補間原点aを外挿する役割を担ってお
り、原点・差分値セレクタ111はEDBに従って実在
する補間原点aのデータと外挿値としての補間原点aの
データを選択し、また外挿に必要な差分値を斜三角柱補
間演算部112へ供給する。
Next, the operation of the portion related to extrapolation in FIG. 1 will be described. In the extrapolation, as described with reference to FIGS. 20 and 21, the interpolation origin a existing outside the input RGB space is extrapolated from the grid point c or b (d) using the difference value. Once the output value of the interpolation origin a is determined, the output values of other grid points are not directly obtained, but extrapolation is indirectly performed by using the difference value between the grid points that actually exist in the RGB space, and the oblique triangular prism is used. This is to execute interpolation. In order to execute such extrapolation, first, a case-specific signal of the extrapolation method must be generated according to the position of the interpolation origin a, and the calculation of the interpolation origin a and replacement of the difference value must be executed according to this signal. It is the outer block detection unit 107 of FIG. 1 that detects the case classification of this extrapolation method, and this output signal EDB corresponds to the case classification signal of the above-mentioned extrapolation method. Further, the extrapolation unit 110 in FIG. 1 has a role of extrapolating the interpolation origin a, and the origin / difference value selector 111 stores the data of the actual interpolation origin a according to the EDB and the data of the interpolation origin a as the extrapolated value. The selected difference value and the difference value necessary for extrapolation are supplied to the oblique triangular prism interpolation calculation unit 112.

【0137】図22は外挿部110の内部構成を示す。
外挿部110には6格子点データのうち、a,c,e,
gの4点のみを入力し、図22に従う加減算の後、補間
原点aの外挿出力a’と補間原点eの外挿出力e’を出
力する。(表11)〜(表14)に従えば補間原点aと
補間原点eの外挿演算は
FIG. 22 shows the internal structure of the outer insertion portion 110.
In the extrapolation unit 110, a, c, e,
Only four points g are input, and after addition and subtraction according to FIG. 22, an extrapolation output a ′ at the interpolation origin a and an extrapolation output e ′ at the interpolation origin e are output. According to (Table 11) to (Table 14), the extrapolation calculation of the interpolation origin a and the interpolation origin e

【0138】[0138]

【数29】 (Equation 29)

【0139】[0139]

【数30】 [Equation 30]

【0140】[0140]

【数31】 [Equation 31]

【0141】[0141]

【数32】 (Equation 32)

【0142】の合計4種類が必要になる。よって加算
器、減算器それぞれが4つずつ、合計8つの演算器が必
要になる。そこでハードウェア規模を小さくするため
に、図17のセレクタA〜Fを活用して、図22に示す
ような演算器4個で外挿が実行できる方法を説明する。
図22は
A total of four types are required. Therefore, four adders and four subtractors are required, for a total of eight arithmetic units. Therefore, in order to reduce the hardware scale, a method of utilizing the selectors A to F of FIG. 17 to execute extrapolation with four arithmetic units as shown in FIG. 22 will be described.
Figure 22

【0143】[0143]

【数33】 [Expression 33]

【0144】[0144]

【数34】 (Equation 34)

【0145】を実行するが、式(32)を実行する際は
式(36)のaをcに置き換えれば演算可能である。ま
た式(33)を実行する場合は式(36)のaをb(あ
るいはd)に置き換え、gをf(あるいはh)に置き換
えればよい。同様に式(34)を実行する際は式(3
7)のeをgに置き換えれば演算可能であり、また式
(35)を実行する場合は式(37)のeをf(あるい
はh)に置き換え、cをb(あるいはd)に置き換えれ
ばよい(図22に置き換えの内容を併記した)。
## EQU14 ## The equation (32) is executed, but it can be calculated by replacing a in the equation (36) with c. To execute the equation (33), a in equation (36) may be replaced with b (or d), and g may be replaced with f (or h). Similarly, when executing the equation (34), the equation (3
It can be calculated by replacing e in 7) with g, and when executing formula (35), e in formula (37) can be replaced with f (or h) and c can be replaced with b (or d). (The replacement content is also shown in FIG. 22).

【0146】ところで式(36)で置き換えられるaは
色変換テーブルメモリから直接データを供給できず、他
の格子点のデータを用いて外挿するのであるから、格子
点aのデータをメモリから供給するラインは空いている
わけである。そこで図17のセレクタA〜Fを用いて、
外挿に必要な置き換えのデータをこの空きラインを通し
て外挿部110へ流せば、図22の小規模なハードウェ
アで補間原点aとeの外挿補間は実行できる。以上より
すでに述べたセレクタA〜Fの動作ルール((表8)、
(表10))は図1の外郭ブロック検出部107の出力
EDBを判断基準に加えて変更する必要がある。
By the way, since a which is replaced by the equation (36) cannot directly supply data from the color conversion table memory and is extrapolated using data of other grid points, data of grid point a is supplied from the memory. The line to do is free. Therefore, using the selectors A to F of FIG.
By passing replacement data necessary for extrapolation to the extrapolation unit 110 through this empty line, extrapolation interpolation of the interpolation origins a and e can be executed by the small-scale hardware in FIG. From the above, the operation rules of the selectors A to F ((Table 8),
(Table 10) needs to be changed by adding the output EDB of the outer block detection unit 107 of FIG. 1 to the criterion.

【0147】では図22に示すようなデータの置き換え
をするために、EDBはどのように発生すればいいの
か。図22に従うとデータの置き換えは4通りである。
よって外挿を使わない場合と合わせて、5種類の切り替
え信号を出力すればよい。またこのデータの置き換えは
図20、21で示したように底面の位置に依存して切り
替わる。よって斜三角柱の底面の位置を記述できるR
H’、BH’と、G軸の偶奇を判断できるGH0’と、斜三
角柱判定部105の出力PRISMを用いて場合分けを
行い、5種類の切り替え信号が生成できるようにEDB
を発生させればよい。(表15)に場合分けの方法とそ
れぞれのケースにおける外挿部の出力a’とe’の演算
式を示す。外郭ブロック検出部107は図17のセレク
タA〜Fに対して5種類の切り替え信号を出力する。以
上より、セレクタA〜Cの切り替え方を示す(表8)は
EDB0〜4とメモリの切り替え方を示す(表15)を
加えて(表16)のように変更される。またセレクタD
〜Fの切り替え方を示す(表10)はEDB0〜4とメ
モリの切り替え方を示す(表15)を加えて(表17)
のように変更される。また図17に示すメモリデータセ
レクタA〜Fの内部構成は図23のように変更され、E
DB0〜4がセレクタA〜Fに入力される。
Then, how should the EDB be generated in order to replace the data as shown in FIG. According to FIG. 22, there are four types of data replacement.
Therefore, five types of switching signals may be output in combination with the case where extrapolation is not used. Also, the replacement of this data is switched depending on the position of the bottom surface as shown in FIGS. Therefore, it is possible to describe the position of the bottom surface of the oblique triangular prism R
HDB, HH ', GH0' which can judge whether the G axis is even or odd, and the output PRISM of the oblique-trigonal-column determining unit 105 are used for case classification so that five kinds of switching signals can be generated.
Should be generated. Table 15 shows the case classification method and the arithmetic expressions of the outputs a ′ and e ′ of the extrapolation unit in each case. The outer block detection unit 107 outputs five types of switching signals to the selectors A to F in FIG. From the above, the switching method of the selectors A to C (Table 8) is changed to (Table 16) by adding EDB0 to 4 and the switching method of the memory (Table 15). Also selector D
~ F shows how to switch (Table 10) EDB0 ~ 4 and (Table 15) showing how to switch the memory is added (Table 17)
Is changed to. The internal configuration of the memory data selectors A to F shown in FIG. 17 is changed as shown in FIG.
DB0 to 4 are input to the selectors A to F.

【0148】[0148]

【表15】 [Table 15]

【0149】[0149]

【表16】 [Table 16]

【0150】[0150]

【表17】 [Table 17]

【0151】以上より、外郭ブロック検出部107の出
力EDBと図23のように構成されたメモリデータセレ
クタ0、1によって外挿部110で補間原点aの外挿と
補間原点eの外挿が実行できる。
From the above, the extrapolation of the interpolation origin a and the extrapolation of the interpolation origin e are executed by the extrapolation section 110 by the output EDB of the outer block detection section 107 and the memory data selectors 0 and 1 configured as shown in FIG. it can.

【0152】次に図24に図1の差分値生成部109、
外挿部110、原点・差分値セレクタ111、斜三角柱
補間演算部112の内部構成を示す。ただし外挿部11
0の内部構成は図22と同じである。斜三角柱補間演算
はPRISM=0のとき、式(6)〜式(8)が実行さ
れ、PRISM=1のとき、式(9)〜式(11)が実
行される。これらの演算方法に従えば先ず、格子点間の
差分値を作成する必要がある。この差分値を生成するプ
ロセスが差分値生成部109である。
Next, FIG. 24 shows the difference value generator 109 of FIG.
The internal configurations of the extrapolation unit 110, the origin / difference value selector 111, and the oblique triangular prism interpolation calculation unit 112 are shown. However, the extrapolation unit 11
The internal structure of 0 is the same as that of FIG. In the oblique triangular prism interpolation calculation, when PRISM = 0, equations (6) to (8) are executed, and when PRISM = 1, equations (9) to (11) are executed. According to these calculation methods, it is first necessary to create a difference value between grid points. The process of generating this difference value is the difference value generation unit 109.

【0153】差分値と補間原点a,eは外挿演算を行う
場合、(表11)〜(表14)に従って切り替え動作を
実行しなければならない。この切り替えは原点・差分値
セレクタ111で行う。原点・差分値セレクタ111は
補間原点aとeを切り替える原点切り替え部2301と
差分値を切り替える差分値切り替え部2302からな
る。原点切り替え部2301はSEL5で補間原点aの
切り替えを、SEL6で補間原点eの切り替えをそれぞ
れ実行する。SEL5とSEL6に与える切り替え信号
CNG5とCNG6は(表22)に示すように外郭ブロ
ック検出部107のEDB0〜4に従って発生される。
EDB=0の場合は6格子点がともにRGB入力空間内
に存在し、外挿が発生しない場合である。デコーダ1
(2304)は(表22)のルールに従って、EDB0
〜4からCNG5とCNG6を発生する。(表18)〜
(表21)は差分値の切り替え方の場合分けを行い、各
パターンに対してEDB5〜18を割り付けたものであ
る。4つの差分値D1〜D4の切り替えは差分値切り替
え部2302内のセレクタSEL1〜SEL4が実行す
る。(表11)〜(表14)に従えばRH’,BH’,G
H0', PRISMによって差分値の切り替え方の場合分
けが設定でき、この場合分けそれぞれに対してEDBを
割り当てれば所望の差分値切り替えが可能となる。(表
18)〜(表21)は4つの差分値の置き換え方法を表
し、差分値切り替えの場合分けが14パターン存在する
ことがわかる。原点の外挿値用に設定したEDBは0〜
4であるため、差分値切り替え用のEDBは5〜18を
使用する。図24に示す4つのセレクタSEL1〜SE
L4の構成と(表18)〜(表21)の差分値の置き換
え方を照らし合わせると、セレクタSEL1〜SEL4
に供給する切り替え信号CNG1〜CNG4は(表2
2)のように設計できる。デコーダ0(2303)は
(表22)のルールに従って、EDB5〜18からCN
G1、CNG2、CNG3、CNG4を発生する。
When the extrapolation calculation is performed on the difference value and the interpolation origins a and e, the switching operation must be executed according to (Table 11) to (Table 14). This switching is performed by the origin / difference value selector 111. The origin / difference value selector 111 includes an origin switching unit 2301 that switches the interpolation origins a and e and a difference value switching unit 2302 that switches the difference value. The origin switching unit 2301 switches the interpolation origin a with SEL5 and switches the interpolation origin e with SEL6. The switching signals CNG5 and CNG6 given to the SEL5 and SEL6 are generated according to the EDB0 to 4 of the outer block detection unit 107 as shown in (Table 22).
The case of EDB = 0 is a case where all 6 grid points exist in the RGB input space and extrapolation does not occur. Decoder 1
(2304) follows EDB0 according to the rules of (Table 22).
CNG5 and CNG6 are generated from ~ 4. (Table 18) ~
Table 21 shows how to switch the difference value, and EDB5 to 18 are assigned to each pattern. The switching of the four difference values D1 to D4 is executed by the selectors SEL1 to SEL4 in the difference value switching unit 2302. According to (Table 11) to (Table 14), RH ', BH', G
Depending on H0 'and PRISM, it is possible to set the case classification of the difference value switching method, and if EDB is assigned to each case classification, the desired difference value switching can be performed. (Table 18) to (Table 21) show the method of replacing four difference values, and it can be seen that there are 14 patterns of difference value switching. EDB set for the extrapolated value of the origin is 0
Since it is 4, EDBs for switching the difference value use 5 to 18. Four selectors SEL1 to SE shown in FIG.
When comparing the configuration of L4 and the method of replacing the difference values in (Table 18) to (Table 21), the selectors SEL1 to SEL4
The switching signals CNG1 to CNG4 supplied to
It can be designed like 2). Decoder 0 (2303) uses EDB5-18 to CN according to the rules in (Table 22).
G1, CNG2, CNG3, and CNG4 are generated.

【0154】[0154]

【表18】 [Table 18]

【0155】[0155]

【表19】 [Table 19]

【0156】[0156]

【表20】 [Table 20]

【0157】[0157]

【表21】 [Table 21]

【0158】[0158]

【表22】 [Table 22]

【0159】斜三角柱補間演算部112では原点・差分
値セレクタ111の出力D1’〜D4’を受けて式
(6)〜(8)(PRISM=0の場合)を、あるいは
式(9)〜(11)(PRISM=1の場合)を実行す
る。セレクタSEL7〜SEL10はPRISMに従っ
てD1’〜D4’の切り替えを実行し、この論理は(表
23)に従う。
The oblique triangular prism interpolation calculation unit 112 receives the outputs D1 'to D4' of the origin / difference value selector 111 and uses the equations (6) to (8) (when PRISM = 0) or the equations (9) to (). 11) Execute (if PRISM = 1). The selectors SEL7 to SEL10 perform switching of D1 'to D4' according to PRISM, and this logic follows (Table 23).

【0160】[0160]

【表23】 [Table 23]

【0161】乗算器MUL1〜MUL5に与えられる重
み係数(RL−GL)’、(BL−GL)’、GL’は図1
の重み生成部104から与えられる。
The weighting factors (RL-GL) ', (BL-GL)' and GL 'given to the multipliers MUL1 to MUL5 are shown in FIG.
Is given from the weight generation unit 104 of.

【0162】以上のように構成された斜三角柱補間法に
よる色変換装置は印刷系で頻繁に利用される最小値を算
出する演算(MIN演算)を補間誤差なしに計算するこ
とができる特徴を持っている。図25は入力RGBの直
交座標形での入力信号に対してMIN演算結果が一定に
なる面を描いたものである。この図で解るようにハッチ
ングで示したR=B、B=G、R=Gの3つの境界面2
401〜2403で分けられた3つの領域(0)〜
(2)内では微分連続性があるが、3つの面の境界では
強い微分不連続性が発生するために境界領域で線形補間
演算を行うと大きな誤差が発生する。図26は図25で
O点からW点へ向かうグレー軸上でのMIN演算の計算
値と従来の技術の第1例(特開平5−75848)にも
とずいて三角柱補間を行った場合の補間値との誤差を示
したものある。グレー軸上は上記3つの境界面の交線に
あたるため当然強い微分不連続性が発生する。本来のM
IN演算計算に対し凹型の耐えがたいリップル誤差が発
生している。
The color conversion apparatus based on the oblique triangular prism interpolation method configured as described above has a feature that it can calculate the minimum value frequently used in the printing system (MIN operation) without interpolation error. ing. FIG. 25 illustrates a surface where the MIN calculation result is constant with respect to the input signal in the rectangular coordinates of input RGB. As can be seen in this figure, three boundary surfaces 2 of R = B, B = G, and R = G shown by hatching 2
Three areas (0) divided by 401 to 2403
Although there is differential continuity in (2), a strong differential discontinuity occurs at the boundary of the three surfaces, so a large error occurs when the linear interpolation calculation is performed in the boundary area. FIG. 26 shows a case where the triangular prism interpolation is performed based on the calculated value of the MIN calculation on the gray axis from the O point to the W point in FIG. 25 and the first example of the prior art (Japanese Patent Laid-Open No. 5-75848). The error with the interpolation value is shown. On the gray axis, the intersection of the above three boundary planes is touched, so naturally a strong differential discontinuity occurs. Original M
An unbearable ripple error occurs in the IN calculation calculation.

【0163】図27は上記微分不連続面をそれぞれ分解
して示した図で、クロスハッチ部分が図25で示した微
分不連続面2401〜2403に対応している。したが
って、この微分不連続面を補間立体内部に含まない様に
入力データ空間を分割し線形補間を行えば、図26で発
生したリップルは発生しない事になる。
FIG. 27 is an exploded view of the differential discontinuous surfaces. The cross-hatched portion corresponds to the differential discontinuous surfaces 2401 to 2403 shown in FIG. Therefore, if the input data space is divided and linear interpolation is performed so that the differential discontinuous surface is not included in the interpolation solid, the ripple generated in FIG. 26 will not occur.

【0164】以上の考察にもとずき入力空間を分割する
と図28(A)や(B)の分割例が導き出される。図2
8(A)や(B)での微分不連続面は太線で表した24
01〜2403に位置し、この面は丁度分割面位置に対
応している。したがって図28(A)や(B)の分割を
行えばMIN演算での誤差は発生しない。
Based on the above consideration, when the input space is divided, the division examples shown in FIGS. 28A and 28B are derived. FIG.
The differential discontinuity surface in 8 (A) and (B) is indicated by a thick line 24
01 to 2403, and this surface corresponds to the division surface position. Therefore, if the division of FIGS. 28A and 28B is performed, no error occurs in the MIN calculation.

【0165】図2(A)、(B)は図28(A)の分割
の単位分割立体を大きく表したもので丁度RGB単位立
方体の上面efghを下面abcdに対してR方向とB
方向に1単位ずらし、図27で示すR=B面(240
1)でType=0とType=1の2種類の斜三角柱
に分割した事を表している。
FIGS. 2 (A) and 2 (B) show a large scale of the unit division solid of the division of FIG. 28 (A), and the upper surface efgh of the RGB unit cube is exactly in the R direction and B with respect to the lower surface abcd.
1 unit in the direction, and the R = B plane (240
In 1), it is divided into two types of oblique triangular prisms of Type = 0 and Type = 1.

【0166】一方、図2(C)、(D)は図28(B)
の分割の単位分割立体を大きく表したもので丁度RGB
単位立方体の上面efghを下面abcdに対してR方
向とB方向に1単位ずらし、且つ図27で示すR=B面
(2401)で分割したType=0とType=1の
2種類の平行六面体内に分類した事を表している。
On the other hand, FIGS. 2C and 2D show FIG. 28B.
The unit of division is a large representation of the divided solid, which is just RGB.
An upper surface efgh of the unit cube is displaced by one unit from the lower surface abcd in the R direction and the B direction, and is divided by the R = B surface (2401) shown in FIG. 27. Two types of parallelepipeds of Type = 0 and Type = 1 It shows that it is classified into.

【0167】以上のように斜三角柱補間法は印刷系で頻
繁に利用されるMIN演算を補間誤差なしに計算するこ
とができる有効な補間法である。そして本発明では斜三
角柱を補間空間に設定した際に必ず発生する入力RGB
空間外の格子点の出力値を入力RGB空間内の格子点出
力値から外挿補間することによって色変換テーブルメモ
リの容量の増大を回避した。
As described above, the oblique triangular prism interpolation method is an effective interpolation method capable of calculating the MIN calculation frequently used in the printing system without any interpolation error. In the present invention, the input RGB that is always generated when the oblique triangular prism is set in the interpolation space.
By increasing the capacity of the color conversion table memory by extrapolating the output values of the grid points outside the space from the output values of the grid points inside the input RGB space.

【0168】[0168]

【発明の効果】以上のように本発明によれば、色変換に
おいて多用されるMIN演算における「リップル」発生
を無彩色方向に限らず入力色空間内のあらゆる方向にお
いて完全に回避でき、3次元アドレスから1次元アドレ
スを生成するアドレス演算を実行することによって、色
変換テーブルは連続なアドレスで使用できてメモリの無
駄をなくし、色変換テーブルを書き換えることなく容易
に斜三角柱補間方式と三角柱補間方式を切り替えること
ができ、同時読みだしされる複数の格子点データを別々
のメモリへ格納し、同時アクセスを実現することによっ
て処理時間の短縮を図り、外郭ブロック検出と外挿機構
によって斜三角柱補間において必要となる入力空間外の
格子点の出力値をメモリに直接持つ必要がなくなり、メ
モリ容量を小さくすることができる。
As described above, according to the present invention, the occurrence of "ripple" in the MIN operation frequently used in color conversion can be completely avoided not only in the achromatic color direction but also in any direction in the input color space. By executing the address calculation to generate a one-dimensional address from the address, the color conversion table can be used with continuous addresses, the memory is not wasted, and the oblique conversion prism interpolation method and the triangular prism interpolation method can be easily performed without rewriting the color conversion table. Can be switched, and multiple grid point data to be read simultaneously can be stored in different memories to realize simultaneous access to shorten the processing time. It is not necessary to have the output values of the grid points outside the required input space directly in the memory, and the memory capacity can be reduced. Rukoto can.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例における色変換装置の構成を
示すブロック結線図
FIG. 1 is a block connection diagram showing a configuration of a color conversion device according to an embodiment of the present invention.

【図2】同実施例における入力色空間の分割の概念図FIG. 2 is a conceptual diagram of division of an input color space in the same embodiment.

【図3】同実施例における斜行座標形と直角座標形の関
係を示す図
FIG. 3 is a diagram showing a relationship between a skew coordinate form and a rectangular coordinate form in the embodiment.

【図4】同実施例における比較部の比較結果による斜三
角柱原点の変化を示す図
FIG. 4 is a diagram showing a change in the origin of the oblique triangular prism according to the comparison result of the comparison unit in the example.

【図5】同実施例における斜三角柱補間演算の概念図FIG. 5 is a conceptual diagram of an oblique triangular prism interpolation calculation in the same embodiment.

【図6】同実施例における比較部のブロック結線図FIG. 6 is a block connection diagram of a comparison unit in the example.

【図7】同実施例における重み生成部のブロック結線図FIG. 7 is a block connection diagram of a weight generation unit in the embodiment.

【図8】同実施例における斜三角柱判定部のブロック結
線図
FIG. 8 is a block connection diagram of an oblique triangular prism determination unit in the same embodiment.

【図9】同実施例における色変換テーブルメモリと格子
点の位置を示す図
FIG. 9 is a diagram showing positions of color conversion table memory and grid points in the same embodiment.

【図10】同実施例におけるメモリアクセス部と色変換
テーブルメモリのブロック結線図
FIG. 10 is a block connection diagram of a memory access unit and a color conversion table memory in the embodiment.

【図11】同実施例における斜三角柱と色変換テーブル
メモリとの選択の対応を示す図
FIG. 11 is a diagram showing a correspondence of selection between an oblique triangular prism and a color conversion table memory in the embodiment.

【図12】同実施例における斜三角柱と色変換テーブル
メモリとの選択の対応を示す図
FIG. 12 is a view showing a correspondence of selection between an oblique triangular prism and a color conversion table memory in the embodiment.

【図13】同実施例における色変換テーブルメモリと格
子点の位置を示す図
FIG. 13 is a diagram showing positions of color conversion table memory and grid points in the embodiment.

【図14】同実施例におけるメモリアクセス部の中のア
ドレス生成部のブロック結線図
FIG. 14 is a block connection diagram of an address generation unit in the memory access unit according to the embodiment.

【図15】同実施例における斜三角柱補間演算部の演算
実行方法を示す図
FIG. 15 is a diagram showing a calculation execution method of an oblique triangular prism interpolation calculation unit in the embodiment.

【図16】同実施例における斜三角柱補間演算部の演算
実行方法に伴う重み生成部の変更内容を示す図
FIG. 16 is a diagram showing a change content of the weight generation unit according to the calculation execution method of the diagonal triangular prism interpolation calculation unit in the embodiment.

【図17】同実施例における色変換テーブルメモリの中
のメモリデータセレクタ群のブロック結線図
FIG. 17 is a block connection diagram of a memory data selector group in the color conversion table memory in the embodiment.

【図18】同実施例における斜三角柱で入力色空間を包
含する様子を示す図
FIG. 18 is a diagram showing a state in which an input color space is included in an oblique triangular prism in the example.

【図19】同実施例における外挿補間を示す図FIG. 19 is a diagram showing extrapolation interpolation in the example.

【図20】同実施例における外挿補間を示す図FIG. 20 is a diagram showing extrapolation interpolation in the example.

【図21】同実施例における外挿補間を示す図FIG. 21 is a diagram showing extrapolation interpolation in the example.

【図22】同実施例における外挿部のブロック結線図FIG. 22 is a block connection diagram of an extrapolation unit in the example.

【図23】同実施例における斜三角柱補間演算部の演算
実行方法に伴うメモリデータセレクタ群の変更内容を示
す図
FIG. 23 is a diagram showing the contents of change of the memory data selector group according to the calculation execution method of the oblique triangular prism interpolation calculation unit in the embodiment.

【図24】同実施例における差分値生成部、原点・差分
値セレクタ、外挿部及び斜三角柱補間演算部のブロック
結線図
FIG. 24 is a block connection diagram of a difference value generation unit, an origin / difference value selector, an extrapolation unit, and an oblique triangular prism interpolation calculation unit in the embodiment.

【図25】同実施例におけるテーブル参照と補間により
MIN演算を行った場合の出力一定面と微分不連続面を
示す図
FIG. 25 is a diagram showing a constant output surface and a differential discontinuous surface when MIN calculation is performed by table reference and interpolation in the embodiment.

【図26】従来のテーブル参照と補間によりMIN演算
を行った場合の補間値と計算値との誤差の計算結果を示
す図
FIG. 26 is a diagram showing a calculation result of an error between an interpolated value and a calculated value when a MIN operation is performed by a conventional table reference and interpolation.

【図27】同実施例におけるテーブル参照と補間により
MIN演算を行った場合の微分不連続面を示す図
FIG. 27 is a diagram showing a differential discontinuity surface when MIN calculation is performed by table reference and interpolation in the same example.

【図28】同実施例における入力色空間の分割を示す図FIG. 28 is a diagram showing division of an input color space in the example.

【符合の説明】[Description of sign]

101 画像入力部 102 比較部 103 補間原点設定部 104 重み生成部 105 斜三角柱判定部 106 メモリアクセス部 107 外郭ブロック検出部 108 色変換テーブルメモリ 109 差分値生成部 110 外挿部 111 原点・差分値セレクタ 112 斜三角柱補間演算部 101 Image Input Unit 102 Comparison Unit 103 Interpolation Origin Setting Unit 104 Weight Generation Unit 105 Oblique Triangular Judgment Unit 106 Memory Access Unit 107 Outer Block Detection Unit 108 Color Conversion Table Memory 109 Difference Value Generation Unit 110 Extrapolation Unit 111 Origin / Difference Value Selector 112 Oblique triangular prism interpolation calculation unit

───────────────────────────────────────────────────── フロントページの続き (72)発明者 金森 克洋 神奈川県川崎市多摩区東三田3丁目10番1 号 松下技研株式会社内 (72)発明者 小寺 宏曄 神奈川県川崎市多摩区東三田3丁目10番1 号 松下技研株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Katsuhiro Kanamori 3-10-1 Higashisanda, Tama-ku, Kawasaki, Kanagawa Matsushita Giken Co., Ltd. Chome 10-1 Matsushita Giken Co., Ltd.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 入力カラー画像信号空間外に存在する格
子点を、入力カラー画像信号空間内に存在する格子点と
格子点間の差分値によって外挿することを特徴とする色
変換装置。
1. A color conversion device, wherein a grid point existing outside the input color image signal space is extrapolated by a grid point existing inside the input color image signal space and a difference value between the grid points.
【請求項2】 カラー画像信号を上位ビット部と下位ビ
ット部に分割する画素入力部と、前記下位ビット部を比
較してその大小関係を出力する比較部と、前記上位ビッ
ト部から前記比較部の出力に従って補間原点の位置を決
定する補間原点設定部と、入力カラー画像信号空間内の
各格子点での出力値を記憶している色変換テーブルメモ
リと、前記補間原点設定部の出力からアクセスすべき色
変換テーブルメモリのアドレスを生成して前記色変換テ
ーブルメモリへ前記アドレスを供給するメモリアクセス
部と、前記メモリアクセス部にて生成された前記アドレ
スにより選択された格子点が入力カラー画像信号空間外
の外郭ブロックに存在するか否かを検出する外郭ブロッ
ク検出部と、前記格子点出力値の差分値を生成する差分
値生成部と、前記格子点出力値から入力カラー画像信号
空間外の格子点の出力値を外挿する外挿部と、前記外郭
ブロック検出部の出力に従って前記差分値生成部の出力
を切り替える差分値セレクタと、前記外挿部の出力値と
補間原点に相当する格子点の出力値を切り替える原点セ
レクタと、前記下位ビット部にて斜三角柱に沿った補間
重み係数を生成する重み生成部と、前記重み係数の大小
関係にて斜三角柱を選択する斜三角柱判定部と、前記差
分値セレクタの出力と前記重み係数を用いて出力値を補
間する斜三角柱補間演算部とを具備することを特徴とす
る色変換装置。
2. A pixel input section for dividing a color image signal into an upper bit section and a lower bit section, a comparing section for comparing the lower bit section and outputting the magnitude relationship, and a comparing section from the upper bit section to the comparing section. Access from the output of the interpolation origin setting unit, the interpolation origin setting unit that determines the position of the interpolation origin in accordance with the output of, the color conversion table memory that stores the output value at each grid point in the input color image signal space, A memory access unit that generates an address of a color conversion table memory to be supplied and supplies the address to the color conversion table memory, and a grid point selected by the address generated by the memory access unit is an input color image signal. An outer block detection unit that detects whether or not the outer block exists outside the space, a difference value generation unit that generates a difference value between the grid point output values, and the case An extrapolation unit for extrapolating output values of grid points outside the input color image signal space from child point output values; a difference value selector for switching the output of the difference value generation unit according to the output of the outer block detection unit; An origin selector that switches the output value of the insertion unit and the output value of the grid point corresponding to the interpolation origin, a weight generation unit that generates an interpolation weight coefficient along the oblique triangular column in the lower bit portion, and a magnitude relationship between the weight coefficients. 2. A color conversion device, comprising: an oblique triangular prism determination unit that selects an oblique triangular prism, and an oblique triangular prism interpolation calculation unit that interpolates an output value using the output of the difference value selector and the weighting coefficient.
【請求項3】 色変換テーブルメモリが、斜三角柱判定
部において選択される斜三角柱の6端点に対応する出力
値が各々重複しないように、入力カラー画像信号空間内
の各格子点での出力値を分割して記憶している6つの記
憶手段を有し、メモリアクセス部が、選択された前記斜
三角柱の6端点に対応する出力値のアドレスを同時に前
記6つの記憶手段に供給するものである請求項2記載の
色変換装置。
3. The output value at each grid point in the input color image signal space is stored in the color conversion table memory so that the output values corresponding to the six end points of the oblique triangular prism selected in the oblique triangular prism determination unit do not overlap. The memory access unit simultaneously supplies the addresses of the output values corresponding to the six end points of the selected oblique triangular prism to the six storage units. The color conversion device according to claim 2.
JP7226174A 1995-09-04 1995-09-04 Color conversion device Pending JPH0969961A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7226174A JPH0969961A (en) 1995-09-04 1995-09-04 Color conversion device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7226174A JPH0969961A (en) 1995-09-04 1995-09-04 Color conversion device

Publications (1)

Publication Number Publication Date
JPH0969961A true JPH0969961A (en) 1997-03-11

Family

ID=16841049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7226174A Pending JPH0969961A (en) 1995-09-04 1995-09-04 Color conversion device

Country Status (1)

Country Link
JP (1) JPH0969961A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571010B1 (en) 1998-11-27 2003-05-27 Matsushita Electric Industrial Co., Ltd. Color conversion apparatus that interpolates output color values obtained from a color conversion table in accordance with weighted input color values
KR100800699B1 (en) * 2006-02-01 2008-02-01 삼성전자주식회사 Method for color look-up table generation
US7693341B2 (en) 2006-04-21 2010-04-06 Apple Inc. Workflows for color correcting images
US7777924B2 (en) 2005-06-29 2010-08-17 Brother Kogyo Kabushiki Kaisha Color conversion device and color conversion program
US8022964B2 (en) 2006-04-21 2011-09-20 Apple Inc. 3D histogram and other user interface elements for color correcting images

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571010B1 (en) 1998-11-27 2003-05-27 Matsushita Electric Industrial Co., Ltd. Color conversion apparatus that interpolates output color values obtained from a color conversion table in accordance with weighted input color values
US7777924B2 (en) 2005-06-29 2010-08-17 Brother Kogyo Kabushiki Kaisha Color conversion device and color conversion program
KR100800699B1 (en) * 2006-02-01 2008-02-01 삼성전자주식회사 Method for color look-up table generation
US7826111B2 (en) 2006-02-01 2010-11-02 Samsung Electronics Co., Ltd. Color conversion method using a colors look-up table
US7693341B2 (en) 2006-04-21 2010-04-06 Apple Inc. Workflows for color correcting images
US8022964B2 (en) 2006-04-21 2011-09-20 Apple Inc. 3D histogram and other user interface elements for color correcting images
US8031962B2 (en) 2006-04-21 2011-10-04 Apple Inc. Workflows for color correcting images
US8203571B2 (en) 2006-04-21 2012-06-19 Apple Inc. 3D histogram for color images

Similar Documents

Publication Publication Date Title
US5504821A (en) Color converting apparatus for performing a three-dimensional color conversion of a colored picture in a color space with a small capacity of memory
US6571010B1 (en) Color conversion apparatus that interpolates output color values obtained from a color conversion table in accordance with weighted input color values
US7864372B2 (en) Color conversion apparatus and color conversion method
JP3976849B2 (en) Device for generating interpolator input data
EP1221812A2 (en) Fast interpolation of large color lookup tables
JP2903808B2 (en) Color signal conversion method and apparatus
JPH0969961A (en) Color conversion device
US5666437A (en) Apparatus for routing interpolator input data by performing a selective two's complement based on sets of lower and higher order bits of input data
JP2947017B2 (en) Color conversion method and color conversion device
JP3048227B2 (en) Multidimensional interpolation device
JPH09289593A (en) Color converting device, copying device, and color converting method
EP0923048B9 (en) Apparatus for tetrahedral and pruned tetrahedral interpolation
US6031642A (en) Tetrahedral and pruned tetrahedral interpolation
EP0319976A2 (en) Method of and apparatus for recording image in the form of pixel array
US5966474A (en) Non-symmetric radial and non-symmetric pruned radial interpolation
JP2947015B2 (en) Color conversion device and color conversion method
JP4156194B2 (en) Method for converting first resolution raster digital data to second resolution digital data
EP0923037B1 (en) Common pruned radial and pruned tetrahedral interpolation hardware implementation
JP3362281B2 (en) Color reproduction device and color reproduction method
JPH0898046A (en) Color converter
JP3743036B2 (en) Color conversion method and color conversion apparatus
JPH0546750A (en) Method and device for converting color
KR20010112714A (en) 2-dimensional non-linear interpolation system based on edge information and method thereof
JP3403912B2 (en) Color converter
JPH0946542A (en) Interpolation arithmetic method and data converter