米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 松下電器産業株式会社

発明の名称 色変換装置
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平7−99586
公開日 平成7年(1995)4月11日
出願番号 特願平5−230064
出願日 平成5年(1993)9月16日
代理人 【弁理士】
【氏名又は名称】小鍜治 明 (外2名)
発明者 金森 克洋 / 山田 修 / 本村 秀人 / 飯川 りか / 麓 照夫 / 小寺 宏曄
要約 目的
同時にディスプレイ上の対話的なカラーコレクションに便利なように画像を乱さないように色変換ができる小型で簡素な色変換装置を提供する。

構成
YCrCbという明度色差信号にて画素入力部101に入力され、三角柱分割選択部103にて補間区間である三角柱が選択され、Prsmsel信号を生成する。これと111によって、あらかじめデータが書き込まれた色変換テーブル部104のアドレスが選択され、6個の格子点出力値が得られる。格子点出力値とPrsmsel信号と112は三角柱型補間演算部105に入力され補間出力値113が生成される。エリア処理部107と外部から入力される色変換テーブルRAM切り替え信号115によってあらかじめ決められた矩形領域または画素ごとに色変換RAMが切り替えられる。
特許請求の範囲
【請求項1】 種々の色信号にて表現されるカラー画像信号を入力する画素入力部と、前記画素入力部から送出されるカラー画像信号を上位ビット部と下位ビット部に分割して上位ビット部の集合にて色変換テーブルメモリアドレスを生成するアドレス生成部と、立方体群若しくは直方体群を2つに分割した第1、第2の三角柱のいずれかに、前記画素入力部から送出されるカラー画像信号の下位ビット部が含まれるかを選択する三角柱分割選択部と、前記立方体群若しくは直方体群の格子点上での出力値を、各分割領域にて参照可能に記憶している色変換テーブルメモリ部と、前記画素入力部から送出されるカラー画像信号の下位ビット部、前記三角柱分割選択部からの選択信号、並びに色変換テーブルメモリ部からの出力信号から三角柱補間を行い、補間出力を生成する三角柱分割型補間演算部と、画像面上の座標値を基に対応して内部的に色変換テーブル切り替え信号を生成し、色変換テーブル強制設定部に送出することにより画面上で異なる領域毎に異なる色変換を指示させるエリア処理部とを備えることを特徴とする色変換装置。
【請求項2】 画素入力部は種々の色信号にて表現されるカラー画像信号をY、Cr、Cbなる10ビットのデジタル値にて表現することを特徴とする請求項1記載の色変換装置。
【請求項3】 アドレス生成部はYCrCb信号各々を上位3ビット、下位7ビットに分割する通常モードとY信号のみを上位4ビット、下位6ビットに分割しCrCb信号は上位3ビット下位7ビットに分割するアドレス拡張モードとを切り替えて使用することを特徴とする請求項1記載の色変換装置。
【請求項4】 三角柱分割選択部はアドレス生成部における下位ビット部のうちCr,Cb信号の大小比較により三角柱分割選択信号を生成することを特徴とする請求項1記載の色変換装置。
【請求項5】 色変換テーブルメモリ部にはYCrCb入力色信号空間を各軸ごとに上位ビット信号にて指定される格子点上での色出力値から計算される設定値を色空間内の基本立方体の8点A、B、C、D、E、F、G、H専用に分離して、A、C,E、G各点は各々1枚のメモリに割当て、B点とD点を同一のメモリに、F点とH点とを同一のメモリに割当て結果的に同時にアクセス可能な6枚のメモリとして記憶していることを特徴とする請求項1記載の色変換装置。
【請求項6】 請求項5の色変換テーブルメモリ部には各格子点での出力値をあらかじめ決めた変位量だけ加減した中間出力値を正数領域と負数領域の各々の数値の精度を1/2に落とし正負領域全体で10ビットにて表現して設定する請求項1記載の色変換装置。
【請求項7】 請求項5の色変換テーブルメモリ部には入力信号、出力信号の8ビット数値に対して変位量を128とし、色変換テーブルメモリの格子点出力値から128を減算し、その正数領域と負数領域の各々の数値精度を二分の一に落とした7ビットと符号ビット1ビットの計8ビットにて表現した中間出力値を設定しており、補間演算後に変位量補正手段において128が補正されることを特徴とする請求項1記載の色変換装置。
【請求項8】 請求項5の色変換テーブルメモリ部には入力信号、出力信号の10ビット数値に対して、前記変位量を512とし、色変換テーブルメモリの格子点出力値から512を減算し、その正数領域と負数領域の各々の数値精度を二分の一に落とした9ビットと符号ビット1ビットの計10ビットにて表現した中間出力値を設定しており、補間演算後に変位量補正手段において512が補正されることを特徴とする請求項1記載の色変換装置。
【請求項9】 三角柱分割型補間演算部は差分値生成部と差分値セレクタとYCrCbの下位信号にて重みづけする符号つき乗算器と加算器と変位量補正手段と出力データリミット部とを備えることを特徴とする請求項1記載の色変換装置。
【請求項10】 出力データリミット部は補間演算部からの出力を出力データが8ビット幅の場合0から255に、10ビット幅の場合0から1023という出力有効範囲内に調整することを特徴とする請求項1記載の色変換装置。
【請求項11】 ホストインターフェース部は色変換テーブルメモリへのデータ書き込みを映像信号のブランキング期間のみを利用して行うためにアドレスデコーダとバス制御回路を持ち、ホストによるデータ書き込み、ダイレクトメモリアクセスによるデータ書き込み、データバス幅を8ビット16ビット切り替えの制御を行うことを特徴とする請求項1記載の色変換装置。
【請求項12】 エリア処理部は内部に画素カウンタと比較器と1つの主走査線上でのエリア画素位置を記憶するエリアRAMテーブルとエリアカウンタとから成り、高速度を要求される主走査線上の処理はハードウエア処理にて実現し、副走査線上の処理はホストから前記エリアRAMテーブルを書き換えることにより実現することを特徴とする請求項1記載の色変換装置。
【請求項13】 色変換テーブル強制設定部は色変換動作を各画素毎に処理中に画素位置信号を入力して最小1画素単位に色変換テーブルを切り替えることを特徴とする請求項1記載の色変換装置。
【請求項14】 画素入力部は、カラー画像信号を明度色差空間に色差変換し、当該各画素の色信号を入力する色差変換部を具備することを特徴とする請求項1記載の色変換装置。
【請求項15】 色差変換部は、3色信号で構成される入力色信号から、1色の色差基準信号を選び、残りの2信号と色差基準信号との差に相当する信号を2種生成し、この2種の信号を色差信号として使用することを特徴とする請求項14記載の色変換装置。
【請求項16】 色差変換部は、生成された2個の色差信号と線形独立な明度信号を3色信号から生成することを特徴とする請求項15記載の色変換装置。
【請求項17】 明度色差であるYCrCb色信号空間を直交座標系とし、単位補間領域を指定する各上位信号YH、CrH、CbH信号を入力し、それを斜交座標系であるRGB空間での単位補間領域の基点を指定する信号に変換することを特徴とするアドレス生成部を有する請求項15、あるいは請求項16のいずれかに記載の色変換装置。
【請求項18】 入力色信号に対する出力色信号の値を蓄積している色変換テーブルメモリを用いて、入力された色信号に対する出力色信号を求める際に入力色信号の定義域空間を単位六面体に分割し、該単位六面体の対角線を主軸とし、他の2軸を入力色信号と同じくする新座標系を設定し、隣合う該六面体の頂点を用いて作られる前記新座標系内の三角柱を設定し、入力された色がいずれの三角柱内にあるかを判定し、該三角柱を構成する頂点に対応する前記色変換テーブルメモリ蓄積値を用いて入力色信号に対する出力色信号を補間することを特徴とする色変換装置。
【請求項19】 RGB、YMC、XYZ、YCrCb等の3色の色空間を、各軸を入力ビット幅W以下の値Nの2Nに均等分割した23N個の単位立方体に分割し、その単位立方体の1辺の長さを1単位として入力空間の3軸を1単位以上外側に拡張した空間で各軸の格子点位置が全て偶数番目に当たる単位立方体の8頂点に対応する出力値をそれぞれ独立して記憶する8個の3次元メモリと、各入力信号の上位Nビットにより、前記3次元メモリの中で隣接する2つの単位立方体を選択し、選択されたそれぞれの立方体の3次元メモリの3軸の入力が偶数か奇数かにより、すべて偶数の場合は1個の前記記憶された偶数番目の単位立方体を選択し、前記3次元メモリの入力が1つでも奇数の場合は隣接する偶数番目単位立方体を選択し、かつ選択された単位立方体に対応する出力値の格納されているアドレスを計算する8個のアドレス生成部と、前記アドレス生成部によって指示された8個の当該3次元メモリの単位立方体の端点の出力値を並列に読みだし、読み出された8個の当該3次元メモリの出力値と分割された単位立方体の端点を対応づけるセレクタと、そのセレクタの単位立方体出力値を前記上位Nビットを除いた各軸の下位(W−N)ビットを重みとする補間演算をする補間演算部とを具備する色変換装置。
【請求項20】 8つの単位立方体端点のグループに分割した8個のメモリーのメモリーアドレス(MAi)発生のために、メモリーの3次元の各軸の分割格子点数をMとした場合、2進化M進法で計算することを特徴とする請求項19記載の色変換装置。
【請求項21】 8個の立方体端点の出力値から入力に対応する出力値を補間演算により算出する場合において、入力信号のZ軸の上位Nビットが偶数の場合はZ軸の下側から上側へ補間し、奇数の場合はZ軸の上側から下側に補間することにより、請求項18記載のセレクタの入力数を削減することを特徴とした請求項19記載の色変換装置。
【請求項22】 8つの単位立方体端点のグループに分割した8個のメモリー出力値のうち、3次元底面の2次元の入力の2軸の大小により2種類の補間型に分類し、8個の出力値から2種類の分類に対応する6個の出力値を選択するセレクタを経て3次元補間演算を行う請求項19記載の色変換装置。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は、カラー画像信号やカラー映像信号を入力して実時間内に任意の色座標変換、色変換をする用途、たとえば高速の色修正、色補正が必要なカラースキャナ、カラーカメラ、カラーハードコピー装置や正確な色校正が必要なカラー表示装置、ビデオ映像などを実時間に色変更するカラーコレクタ、ビデオ編集装置、およびカラーによる識別を行う色変換装置に関するものである。
【0002】
【従来の技術】従来、モノクロ画像の画像処理では、画像の1画素がもつ情報は明度(濃度)という一次元情報であり、明度変換はいわゆるガンマカーブ変換として、種々の非線形カーブをLUT(ルックアップテーブル)に書き込んでおけば実時間内に色変換が可能であった。扱う画像がカラー画像になっても実時間内に色変換をする用途ではR(レッド)プレーン、G(グリーン)プレーン、B(ブルー)プレーン、という3枚のモノクロ画像として扱われ、各々独立なLUTによって変換されることが多かった。しかし、この種の処理では、扱える色変換は本質的に一次元処理の域をでず、R’=hR(R), G'=hG(G), B’=hB(B)
という形態の色変換しかできない。
【0003】カラー画像処理では、1画素がもつ情報は(R,G,B)という三次元情報であり、本来の意味での色変換とは、これらをまとめた3次元的変換R’=fR(R,G,B) G’=fG(R,G,B) B’=fB(R,G,B)
という形態である。
【0004】たとえば、ハードコピー系のカラー画像処理では「特定の色相に属する色は彩度をあげる」などの複雑な色変換が必要であり、ビデオ等のカラー映像編集処理の場合でも「ブルーの背景のみを無彩色に変換したい」などの複雑な特定色のみの色変換要求がでることがある。これらの色変換は数学的には、1出力が3入力の関数になっており上記の3次元変換に属する。しかし、これらを汎用的なテーブルで変換しようとすると1色が8ビット信号と仮定すると1色当りの変換に16(Mbyte)ものメモリ容量を必要とする。従って3次元的な色変換を任意の色変換について汎用的に、しかも実時間に実行できるハードウエアでかつメモリ容量をできるだけ小規模にする構成が求められている。これに対して、カラーハードコピー、カラースキャナの色補正用を主な目的として入力色空間を複数の色空間を分割してその頂点に位置する色修正情報を色変換メモリとして保持しておき、演算に当たってはこの色修正情報を複数個選択し、重み付け処理して補間出力する色信号補間方法の例がある(特公昭58-16180号公報)。
【0005】同公報の内容によれば、補間処理に三次元の色信号空間内での基本立体である単位立方体を設定し、この単位立方体を複数の四面体に分割し四面体の4頂点での出力信号から補間計算を単純化する考え方が開示されている。これはカラースキャナ装置の色修正装置への応用であり、RGB8ビット信号は各々4ビットずつ上位信号と下位信号に分割し下位信号は大小関係を比較器で判定されると同時に4種類の重み発生器へ入力される。一方上位信号はセレクタと加算器にてアドレス修飾されちょうど四面体の4頂点に対応するアドレスを得て色変換テーブルメモリをこの異なる4種のアドレスにて計4回読みだし、出力されたデータを前記重み係数と乗算器にて並列演算して加算して補間出力を得る。なお、1個の単位立方体が6個の四面体に分割されている。
【0006】一方、従来の技術の第2の例として同じ四面体利用の補間方式による色変換装置で特に四頂点での差分値を記憶して処理する技術が存在する(米国登録特許第4、477、833号)。この例でもまったく同様に8ビット入力色信号シアン、マゼンタ、イエロー(CYAN, MAG, YEl)から8ビットの色修正されたシアン、マゼンタ、イエローに変換する際、入力色空間を四面体に分割してその頂点での出力差分値を用いて補間を行う。
【0007】更に、従来の技術の第3の例として同じ四面体利用の補間方式による色分解画像修正装置がある(特開平2−87192号公報,同2ー286866号公報,同2ー286867号公報,同2ー286868号公報)。これらの色変換装置はテーブル形式であることが重要であり、非線形の自由な色変換を高速でかつフレキシブルに行うことができる。
【0008】
【発明が解決しようとする課題】さて、上述の従来の技術は補間に必要な演算を減らすべく、三次元空間の補間において参照点、すなわちメモリが出力値を記憶している代表格子点へのアクセスが最も少なくて済む四面体への分割を利用するものである。これにより補間ハードウエアは最も簡単化される。
【0009】しかし四面体分割は色空間をRGBのような混色系において3軸を等しく扱う場合には便利だが、色空間を明度軸、色度軸で分離し両方の補間を独立して行いたいという場合には補間結果の解析が煩雑になる欠点がある。たとえば特にカラーコレクタへなど色を明度は変更せず色度平面内だけで重みづけして選択的に制御したりする場合には色度平面だけで微妙なカーブの色変換をすることが必要になる。しかし従来の四面体補間では補間は常に3軸の空間内で行われ明度と色度の補間を分離できないという課題がある。
【0010】第2に上述の四面体を利用した補間、立方体を利用した補間に限らず従来の補間型色変換技術ではいくつかの場合、補間曲線が正確なものにならない、という欠点があった。たとえばハードコピーの色再現処理において「クリッピング特性」と呼ばれる処理などでみられるように入力値があるしきい値までは値0を維持し、しきい値点Tから立ち上がる出力特性または、急激に立ち上がって最大値にある入力点T’にて最大値に貼りつくような曲線が正確に補間できなかった。また、8ビット入力、8ビット出力のシステムにおいて入力出力ともに255のつぎの数値である256を表現、記憶できないという理由によってあらゆる色信号入力に対し同一の出力を与える、いわゆる「スルー特性」を実現することができなかった。スルー特性はデジタル回路では基本的なものであり、これが実現されないとスルーのつもりで何度も通過した信号は急激に劣化してしまう。
【0011】第3に、カラーコレクタなどへの応用ではディスプレイ上での動画像、静止画像の色変換を頻繁に変更する。この色変換テーブルをCPU側より書き換える動作中にテーブルメモリをCPUがアクセスするために表示中の画像、映像が乱れたり、一時的に表示が消えるなどという問題があった。これは画像を見ながら瞬時に色変換を行いたいというカラーコレクタ等の用途では非常に大きな課題であった。
【0012】第4に、ディスプレイやハードコピー紙面を数個のエリアに分割しエリアごとに異なる色変換を行う用途、あるいはもっと自由度が高い用途として画像の各画素ごとに色変換を変更する用途がある。この場合にはエリア単位、画素単位に色変換テーブルを高速に切り替える必要がある。しかし従来の技術ではこのテーブル切り替えに対応していない。
【0013】また、第5に、従来立方体を利用した補間で生じていた問題としてMIN(最小値)演算の補間誤差の問題がある。カラーハードコピー分野では墨(ブラックBK)を生成する場合に入力信号シアンC,マゼンタM,イエローYの3信号のうち最小値を生成する必要がある。ところが立方体を利用した補間、あるいは三角柱を利用した補間では3色信号を入力して、このMIN演算を行うと補間後の曲線にリップル状の補間誤差が生じてしまい視覚上好ましくなかった。
【0014】
【課題を解決するための手段】上記目的を達成するため本発明は入力色信号で作られる三次元空間を複数の単位立方体、単位直方体に分割した後、それらを二個の三角柱に分割してこれを補間立体とする。このため入力色がいずれの三角柱に含まれるかを判定し三角柱領域の各頂点での出力値を用いる三角柱分割型の補間方法を採用する三角柱分割型補間演算部を備えるものである。
【0015】また色変換テーブルメモリに記憶する数値として従来の正数領域のみならず負数領域の各々の数値をも記憶できるようにして、クリッピング特性を持つ変換の補間による実現も可能とし、さらに補間演算部に変位量補正手段をもうけることにより、補間による完全なスルー特性を実現するものである。この際メモリ量を削減するために同じビット数にてもその精度を落とし負領域の数値を表現し記憶しうる色変換テーブルメモリと、符号つき乗算器、加算器を備えるものである。
【0016】またカラーコレクタなどディスプレイ上での対話的な色調整などに対応するために映像信号の水平ブランキング、垂直ブランキング期間内に色変換テーブルの転送を行って表示中の画像、映像を乱すことなく色変換の変更を行うための色変換テーブルデータ転送制御を行うためのホストインタフェース部を備えるものである。
【0017】また、色変換テーブルを異なる色変換処理ごとに複数プレーン備え、内部のエリア処理部に設定した複数の長方形領域ごとに使用する色変換テーブルを画素単位に切り替えることを可能とし、さらに外部からの色変換テーブル強制設定信号により、内部の色変換テーブルを画素ごとに切り替えることを可能とするものである。
【0018】
【作用】本発明の色変換装置では、三角柱を用いて明度色差型信号に対して明度軸と色差平面で独立に最も簡単な線形補間が行なわれる。この結果、色調整など色度平面内での色制御において補間カーブが明確化され、従来補間結果が不明確になりがちだった色調整が行ない易くなる。さらに入力として明度と色差を使用する色空間を使用した色変換を行うと従来技術である四面体分割を用いた補間よりも補間精度、特に視覚的に重要であるグラディエーション方向の補間精度が良好となるという作用がある。
【0019】
【実施例】以下、上述した作用の本発明における概念について、先に説明する。
【0020】たとえば、入力として明度であるL軸と色度であるA、B軸とが分離されているCIE−LAB空間を用いてNTSC−rgb空間への色座標変換を本発明の色変換装置を用いて補間する実験を考える。この場合、L軸はY軸に、A軸はCr軸に、B軸はCb軸に対応させ、色変換テーブルは全く同一として四面体分割補間と三角柱分割補間との補間方式の差のみが問題となるようにする。色変換装置への8ビット画素入力としてA=B=0である純粋なグレイをL=0から255まで変化させたときの補間後のrgb各曲線を3本まとめて描いたのが図10、図11である。四面体分割型補間の図10ではrgb、特にrが凹凸状に波打っているが図11の三角柱分割型補間ではスムーズに補間されている。このように三角柱分割を用いた補間はその形状の特徴から明度方向を三角柱の主軸に一致させることによって非線形性を含む色変換を視覚的にスムーズに実行できるという作用がある。
【0021】つぎに、いわゆる「クリッピング特性」すなわち、しきい値以下あるいは以上の入力にて一定値を出力する変換における本発明の作用につき考える。図12は入力軸0から255に対して格子点位置を(0、64、128、192、256)とする場合の補間結果を示す図であり、図12(A)は従来の技術での補間結果、図12(B)は本発明での補間結果を各々1次元で横軸を入力、縦軸を出力として示す。実現したい変換はしきい値Tから増加してT’にて最大値に到達するような変換であり点線1201にて表現されるものである。この変換を従来の技術に従って格子点位置における記憶値を適当に選んで実現しようとすると、たとえば1202のようしきい値TあるいはT’付近で原変換と大きく異なる結果となる。これは、しきい値であるTやT’は最も近い格子点位置へ、たとえばしきい値Tは64へというように、変更されてしまうため当初の意図であるしきい値処理が格子点位置でしか行われないからである。これに対して本発明では、色変換テーブルメモリ部には格子点での記憶値として(−256)から255までの範囲にて数値を記憶できるため、1203で示される正数、負数にわたる補間曲線を考え、これを補間演算にて生成し、つぎに変位量補正手段によって変位量1204だけ正方向に補間後の数値を変位し、最後に出力データリミット部により0以下と255以上の数値をそれぞれ0と255に置き換えることによってしきい値TとT’とを持つ補間結果1205が生成される、という作用がある。
【0022】また、入力をそのまま出力とするいわゆるスルー特性の変換を実現する場合の作用につき説明する。図13(A)は従来の技術での補間結果、図13(B)は本発明での結果を各々一次元の入出力関係にて示す。望ましいスルー特性1301に対して、入力軸で(0、64、128、192、256)での各格子点位置での出力をそれぞれ(0、64、128、192、256)とすれば線形補間された場合スルー特性が実現される。しかし従来の技術では通常色変換テーブルメモリに記憶できる値は8ビットであり、この場合0から255までの値しか記憶できないため256は次善の策として255として記憶せざるを得なかった。この結果192から256までの最後の補間区間で補間結果がスルー特性を実現できず1302のようなスルー特性とはいえない補間結果を生じていた。これに対し本発明では負数を記憶できるため、図13(B)のように入力格子点での記憶値を(−128、−64,0,64,128)として負領域にわたる完全スルーの特性1303を実現したのち、変位量補正手段によって1304にて示される変位量数値128をオフセットとして加えて結果として1305の完全なスルー特性を実現することができる、という作用がある。
【0023】また、入力3信号からその最小値を求めるようないわゆるMIN演算を行う場合に、入力3信号から色差基準信号1色を選択し、残りの2信号との差を色差とする特殊な色差変換を行うことによって、明度色差入力の状態を作り、これと三角柱分割の特徴を組み合わせることにより補間後に不自然なリップルを生じないようにするという作用がある。
【0024】さらに、映像信号についてリアルタイムで色変換する場合、色変換テーブルをホストから書き換えた場合に変換前の画像が画像の乱れなく瞬時に異なる色へ変化することが必要であるが本発明ではホストインタフェース部にて色変換テーブルへのデータ書き込みは映像のブランキング期間を複数回利用して行う制御をするため映像を乱さずに色を変化させることが可能である。また色変換テーブルを書き換える時間的な余裕のない1フレームの映像の描画中にもその画像面領域によって複数プレーン存在する色変換テーブルを切り替えることにより異なる色変換を行うことができるため、画面上の異なるエリアで異なる色変換処理をする、などといった処理も実現可能にするものである。
【0025】以下、本発明の色変換装置の第1の実施例につき図1を用いて説明する。なお、入力色信号は本来、明度Yと色差CrCbのような明度色差分離信号である。実際には汎用性のため三色分解色信号Red(以降Rと表記),Green(以降Gと表記),Blue(以降Bと表記)など任意の3種の色信号も入力が可能であるが、以下説明は実際に入力される色信号の種類によらず色空間内三角柱分割領域に固定された軸の名称としてY、Cr、Cbという名称を使用する。また本実施例では画像入力出力信号が10ビットまで対応する構成となっており、この場合を想定して行うが、実際には8ビットが使用されることも多いため適宜両者を交えて説明する。
【0026】図1において、入力信号Y、Cr、Cbはカラー画像映像を表現する10ビットデジタル信号として画素入力部101へ入力される。これらの信号はアドレス生成部102に入力される前にCr、Cb信号は上位3ビットと下位7ビットの信号に分離され、Y信号は通常モード時には上位3ビットと下位7ビットに、アドレス拡張モード時には上位4ビットと下位6ビットに分割される。図1では上位信号(UY,UCr,UCb)111、下位信号(DY、DCr,DCb)112として示す。通常モードとは図3(A)のようにYCrCb色空間におけるY,Cr,Cb各軸を、上位信号により各々3、3、3ビットにて指定される分割領域、すなわち8、8、8領域に分割する結果、全色空間を512個の立方体領域に分割する。一方、アドレス拡張モードではY方向の補間精度をあげるために、図3(B)のようにY,Cr,Cb各軸を各々4、3、3ビットの上位信号で指定される分割領域、すなわち16、8、8個に分割する結果、全色空間を1024個の立方体領域に分割する。分割された立方体の頂点にあたる格子点数では通常モードで各軸9、9、9点の計729点、アドレス拡張モードで各軸17、9、9点の計1377点となる。この格子点の座標値は画像が8ビット入力で通常モードの場合には各軸とも(0、32、64、96、128、160、192、224、256)画像が8ビット入力でアドレス拡張モードのY軸で(0、16、32、48、64、80、96、112、128、144、160、176、192、208、224、240、256)、CrCb軸は通常モードと同じとなる。一方、画像が10ビット入力で通常モードの場合には各軸とも(0、128、256、384、512、640、768、896、1024)画像が10ビット入力で、アドレス拡張モードのY軸で(0、64、128、192、256、320、384、448、512、576、640、704、768、832、896、960、1024)、CrCb軸は通常モードと同じである。分割領域はすべて格子点からつぎの(格子点座標値−1)までの区間と定義する。
【0027】従って座標値256、1024などの最大格子点は仮想的に存在しているだけで最大分割領域に入る実際の入力信号としては255、1023という数値が最大となる。本実施例ではこの格子点上での出力値を色変換テーブルに記憶しているが、その色変換テーブルへのアドレス入力は格子点で参照されるのではなく各分割領域にて参照されるという特徴がある。
【0028】具体的には上記画像が8ビットで通常モードを例に取ると、0から31までの分割領域が領域番号0、32から63までが領域番号1、となって最後に240から256までが領域番号7となる。すなわち領域は番号0から7までの8個存在する。実際には3次元であるから領域番号(0、0、0)から(7、7、7)、まで512個存在する。このアドレスによって色変換テーブルメモリが読みだされる。このように実施する理由は2つある。
【0029】第1に本実施例では補間演算が並列に行われるため、ある分割領域に入力が包含された場合、分割領域を示すアドレスにて並列に6個の格子点での出力値が読み出されるようになっているため6個の各メモリへは同じアドレスを入力する方が簡単だからである。
【0030】第2に格子点数は各軸で9個あるいは17個という半端な数値であるが分割領域番号は上記のようにそれより1だけ少ない8あるいは16という2のべき乗の数値となりテーブルメモリのアドレスのデジタル信号線を有効に使用できるためである。
【0031】この結果、各分割領域の体積を同一にし正確な補間を行うために必要な仮想的な最大値位置での格子点、たとえば8ビット入力の場合座標値256の位置の格子点、10ビット入力の場合座標値1024の位置の格子点の指定は通常モードでは0から7、アドレス拡張モードでは0から15という分割領域番号を指定した場合の6個の格子点のうちの1個として自然に行われる。
【0032】これに対し従来の技術、たとえば特開平2−226866号公報,あるいは特開平2−226868号公報の内容では同種の補間技術を開示しているが、格子点を用いて色変換テーブルメモリを参照する方法をとっているため本来2のべき乗数にはならない格子点数をアドレスとして扱わざるを得なくなりアドレス線の有効利用をはかるため領域分割数を変えて格子点数を2のべき乗個に変更し、結果として複雑な対処をしながら補間誤差の発生を招いていた。
【0033】上位信号111がアドレス生成部102に入力されると同時に下位信号112の3種類の信号のうち(DCr、DCb)の2信号が三角柱分割選択部103へ入力される。また下位信号112は3種類の信号DY、DCr、DCbすべてが三角柱分割型補間演算部105に入力される。三角柱分割選択部103からの出力である1ビットのPrsmsel信号を出力し、Prsmsel信号はアドレス生成部102、三角柱分割型補間演算部105へ入力される。
【0034】ここまでの構成により、上位信号にて図3の立方体群、直方体群から1個の立方体あるいは直方体(以下単位立方体と総称)が選択される。
【0035】図4に示すように各単位立方体を構成する格子点にはa,b,c,d,e,f,g,hという名称がつけられている。三角柱分割選択部103では図5に示す単位立方体を2つに分割した三角柱abc−efgと三角柱acd−eghを考え、入力された下位信号がいずれの三角柱に含まれるかをDCrとDCbを用いて、DCr>DCb のとき、三角柱abc−efg、Prsmsel=0DCr<DCb のとき、三角柱acd−egh、Prsmsel=1のように判定、Prsmsel信号を決定する。
【0036】エリア処理部107では内部のエリアRAMテーブルに書き込まれた画像面上の座標値を基に対応して内部的に色変換テーブル切り替え信号115を発生させ色変換テーブル強制設定部108に入力され、画面上で異なる領域ごとに異なる色変換を行う場合に対応する。また外部から色変換テーブルを画素単位に切り替える場合などには、色変換テーブル切り替え信号115は直接外部から色変換テーブル強制設定部108へ入力される。色変換テーブル強制設定部108の出力信号はアドレス信号生成部102へ出力され、他の情報とともに色変換テーブルメモリ104のアドレスを生成する。なお、本実施例では色変換テーブルメモリ104は三角柱の頂点数に対応して並列に6面がアクセスされるため色変換テーブルメモリ104では6面から構成される図を描いているがこの1組の色変換テーブルメモリで1種類の色変換に対応する。また、本実施例では通常モードの場合、2種類の異なる色変換を行うためこの6枚の組が内部で#0と#1の2プレーンに分割されて前記108の出力により選択されて使用される。
【0037】アドレス拡張モードの場合には色変換テーブルメモリは1プレーンとして使用されるため、色変換テーブルメモリの切り替えは無い。アドレス生成部102では以上の信号を基に色変換テーブルメモリ104の特定のアドレスを発生し、メモリインタフェース部109を通じて色変換テーブルメモリ104にアクセスする。一方、三角柱分割型補間演算部105では色変換テーブルメモリ104からの出力データ値とPrsmsel信号、下位信号112を入力して三角柱補間を行い補間出力値113を生成する。なお図1では面順次形式の色変換装置を前提としているため色変換出力は1回の色変換補間演算において3入力1出力で構成しておりYCrCb信号からCIE−LAB信号へ変換する場合などの3入力3出力の場合でも変換後のL,A,Bのいずれか1種類の信号のみを生成する。ただし色変換テーブルメモリ104と三角柱分割型補間演算部105を3種類、あるいは4種類搭載することによって3入力3出力、あるいはRGBからCMYKへの変換のような3入力4出力にも対応できることはもちろんである。また色変換テーブルメモリ104の書換え、各種レジスタ部110の書換えはホストコンピュータからホストインタフェース部106を介して内部バス114から行う構成になっているため面順次式に3、ないし4出力につき一回の画像構成ごとに色変換テーブルメモリ内容を書き換えることで3入力3出力、4出力に対応することもできる。
【0038】次に、三角柱分割型補間演算部105の詳細な説明に移る。図4に示す指定された単位立方体の8頂点での出力値のうち6個の色変換テーブルメモリ104から読み出される6個の出力値は図5のようにPrsmsel=0の時にはa、b,c,e,f,gの6点での出力値であり、Prsmsel=1の時にはa,d,c,e,h,gの6点の出力値である。このようにPrsmsel信号によって出力される格子点値が異なるが、これはアドレス生成部102によってすでに指定されている。6枚の色変換テーブルメモリ104から読み出される格子点での出力値をその格子点に()をつけて表現する。たとえば格子点aでの出力値は(a)とする。この表記を用いると図2において、(a)、[(d),(c)]、(c),(e),[(f),(h)]、(g)は差分生成部201へ入力される。ここで[]内はPrsmselによっていずれかが選択されることを示す。差分生成部201では5個の減算器213〜217により5種類の差分値が計算される。この差分値は(表1)に示すようにPrsmsel信号によって内容が異なる。
【0039】
【表1】

【0040】差分値選択部202はPrsmsel信号に基づいて生成された差分値信号を4種選択する。Prsmsel=0のときA入力、Prsmsel=1のときB入力が選択されることにより(表2)のようにPrsmsel信号=1の場合の差分値を一部入れ替え、重み係数となるDCr、DCb信号との積を作る場合の組み合わせを合致させる役割を持つ。
【0041】
【表2】

【0042】ここで以降の補間演算の原理式につき説明をする。本補間方式では入力色信号下位信号DY、DCr、DCbは各単位立方体において点aを基準点として入力色の位置をY、Cr、Cb各軸方向に表現する立方体内部の座標になっている。これを補間に使用する重み係数として使用する。いま図6において、三角柱内に存在する入力色Oに対応する出力値(O)は、点aから入力点Oに向かうベクトルaOのY、Cr、Cbの各軸への成分であるDY、DCr、DCbを用いて以下のように三段階で補間できる。
【0043】第一段階では、Oを通りY軸に平行に直線を引き、本直線と三角形abcと三角形efgとの交点を各々点n、点mとする。そして三角形abc内で、点nでの出力値(n)を、【0044】
【数1】

【0045】のように補間する。これは以下のような図形的意味を持つ。図7は図6の三角柱をY軸方向から観察した図である。この方向からでは三角柱の二つの底面は完全に重なっており、Oとnとm、aとe、bとf、cとgは各々重なりあっている。そこで、この三角形は三角形abcであると考えてもかまわない。図6におけるベクトルaOの入力第一差分ベクトルab(701)への成分であるDCrと入力第二差分ベクトルbc(702)への成分であるDCbを求め、出力色空間で、各入力差分ベクトルに対応する出力第1差分値{(b)−(a)}と出力第2差分値{(c)−(b)}をDCrとDCbで重みづけして第1、第2の出力増分を求め、それをaでの出力値(a)に加えることになる。
【0046】第二段階では、図7を三角形efgと見なしてmでの出力値(m)を同じ重み付けを出力第1差分値{(f)−(e)}、出力第2差分値{(g)−(f)}に対して行い、【0047】
【数2】

【0048】として求める。第三段階では図6における線分n-m上で(n)と(m)を以下のように線形補間する。
【0049】
【数3】

【0050】(数3)に、(数1)、(数2)を代入して整理すると、【0051】
【数4】

【0052】となる。以上のようにして入力点Oが三角柱abc-efg内にある場合にOでの出力値(O)が決定する。入力色点が直方体を分割したもう一方の三角柱acd-egh内に存在する場合には、図8と図9で示すようになる。同様にしてOから三角形acdと三角形eghにY軸に平行な直線を引き、交点n、mを求め、ベクトルaOのY、Cr、Cbの各軸方向成分 DY、DCr、DCbを求め、第一段階でnでの出力値を、【0053】
【数5】

【0054】第二段階でmでの出力値を、【0055】
【数6】

【0056】と求め第三段階でOでの出力補間値を(数3)に従って求めると、【0057】
【数7】

【0058】のようになる。(数4)、(数7)の補間原理式に基づき、乗算部203では式の一部である(表3)の各項を計算する。
【0059】
【表3】

【0060】加算部204では、(表3)の信号223と224の加算、信号225と226の加算を行い、信号227と信号228を生成する(表4)。
【0061】
【表4】

【0062】加算器205では出力値(a)と信号227との加算を行い信号229を生成する(表5)。これは図6、図8における三角柱の下底の当たる三角形内での補間値(n)を生成していることに相当する。
【0063】
【表5】

【0064】信号228は227との差を減算器206で計算され、信号230を生成する。
【0065】
【表6】

【0066】信号230は信号220と加算されて信号231を生成する。
【0067】
【表7】

【0068】信号231はDY信号との積を乗算器208で計算され、信号232が生成される。
【0069】
【表8】

【0070】加算器209にて信号229と232とが加算され、(数4)、(数7)で表現される出力233が計算される(表9)。
【0071】
【表9】

【0072】信号232は変位量レジスタ211にホストから書きこまれて記憶されている正または負の変位量を加算器210にて加え、変位量補正を行ってから出力データリミット部212に入力され、ダイナミックレンジ制限を行ってから補間出力値113となる。なお、説明上、DY、DCr、DCbの重み係数はすべて最大値=1になるものと仮定したが、実際にはこの数値は、10ビット画像入力時の場合には通常モードで128、アドレス拡張モードのDYでは64という値になっている。この分の補正はすべて補間結果のビットシフトにて行っている。また本発明用で使用している乗算器は符号つき数(データ)と符号なし数(重み係数)との乗算演算を行えるものである。
【0073】次に本実施例における色変換テーブルメモリ104の構成、データ格納様式につき図14を参照して説明する。
【0074】図1および図2において示した6面構成の色変換テーブルメモリ104は図14におけるCRAM0、CRAM1、CRAM2,CRAM3、CRAM4、CRAM5の6個の色変換RAMから構成され、このうちCRAM0、CRAM2、CRAM3、CRAM5にはそれぞれ図4の単位立方体のa、c、e、g頂点での出力値である(a)、(c),(e)、(g)が格納されており容量は512(word)x2=1024(word)である。CRAM1およびCRAM4は他の4面の2倍の容量2048(word)を持ち、各々b,dでの出力である(b)と(d)の2バンク、およびfとhでの出力である(f)、(h)の2バンクを格納している。CRAM1とCRAM4はPrsmsel信号によって出力値バンクが切り替えられる。
【0075】図14(A)に示す通常モードの場合には、CRAMには異なる色変換#0と色変換#1という2種類のテーブルを格納でき、LUTNO信号にてテーブルが切り替えられる。なお色変換#1の場合の出力を(a)’から(h)’として点線枠で示している。
【0076】一方、図14(B)に示すアドレス拡張モードでは、通常モードでの色変換#1の分のメモリを2倍になった格子点のために使用しており、Prsmsel信号でのバンク切り替えの他にLUTNO信号が、Y信号の第6ビットであるY6信号の役割をはたしている。このためアドレス拡張モード時には色変換は1種類#0のみ格納することになる。
【0077】図15には本色変換テーブルメモリ104をホスト側からみた場合のアドレスである外部アドレス構成を示す。図14での(0)から(15)までを付したメモリが順番に並んだ構成をとり、通常モードでは(0)から(7)までが色変換#0のテーブル0、(8)から(15)までが色変換#1のテーブル1に相当する。
【0078】一方、アドレス拡張モードでは(0)から(15)まですべてが色変換#0を行うテーブルとなる。
【0079】外部アドレスと色変換RAMアドレスの関係を図16に示す。本実施例ではホストから色変換テーブルメモリ104は、14ビットの外部アドレスADR0からADR13としてアクセスされる。色変換RAMビット幅は10ビットを1wordとしているため、バイト構成のアドレスではビット0が0のとき下位バイト、1のとき上位バイトという2アドレスにて1個の出力値データを記憶するためビット0は使用されない。
【0080】図16(A)に示す通常モードの場合、ビット13にLUTNO信号N、ビット12、11、10は色変換RAM番号nram、ビット9、8、7にCb信号の上位3ビット信号(Cb9,Cb8,Cb7)、ビット6、5、4にCr信号の上位3ビット信号(Cr9,Cr8,Cr7)、ビット3、2、1にY信号の上位3ビット信号(Y9,Y8,Y7)が割り当てられる。Prsmsel信号はビット10に色変換RAM番号の一部として埋め込まれている。ビット0からビット9までで表現されるメモリ容量が512(Word)に相当する。一方実際の色変換RAMアドレスでは10ビット構成を前提にしたアドレス構成をとっておりCRAM1、CRAM4では512(Word)分のアドレスがビット0からビット8を占め、ビット9でLUTNO、ビット10がPrsmselに相当するため計2048(Word)のアドレス空間となる。CRAM0、CRAM2,CRAM3,CRAM5ではPrsmselは存在しないのでビット0からビット9までの1028(Word)のアドレス空間となる。
【0081】一方、図16(B)に示すアドレス拡張モードでは、外部アドレスのビット13の役割、色変換RAMアドレスのビット9の役割がLUTNOからY6になっているだけで他は通常モードと同じである。
【0082】つぎに色変換テーブルメモリ104に設定するビット幅について図17を用いて説明する。色変換テーブルメモリ104は最大容量として10ビットまでを記憶できる構成であるが、記憶データビット幅は10ビットと8ビットを選択できる。この選択はカラー画像の色信号入力出力値が10ビットと8ビットであるかということとは無関係に設定できる。なぜなら色信号の補間演算はすべて10ビット形式で行われ、画像色信号が8ビットの場合には単に上位8ビットのみを問題にすればよいからである。すなわち画像色信号入出力ビット数と色変換テーブルメモリデータのビット幅の組み合わせは以下の4通りを選択することができる。
【0083】
【表10】

【0084】図17(A)の場合でわかるように10ビット幅のデータを記憶すると、上位バイトであるB9、B8が外部アドレスで奇数アドレスに格納される。このためホスト側からは16ビット転送を行うか、8ビット転送を2回づつ続けて行う必要がありデータ転送量が増える。
【0085】一方、図17(B)では8ビット幅のデータが外部アドレスの偶数アドレスにのみ記憶されるので8ビット転送を偶数アドレスのみについて行えばよく転送量が減少する。対話的にカラーコレクションを行う場合など、色変換テーブルメモリの書換えの時間は可能な限り減少させデータ転送量はできるだけ減らしたい用途の場合にはこの8ビット幅での記憶が有効である。
【0086】しかしながら補間演算に使用される格子点での出力データ値の構成は符号つき10ビットである。そのため8ビット幅で記憶した値はかならず誤差を含んでしまう。この結果、色空間を補間する場合の格子点上で与えられる数値に制限がでてくる。たとえば場合1では、画像色信号8ビット入出力に対し、8ビット幅で符号つきの8ビット、すなわち実質的には7ビットデータの記憶となり格子点上でのデータが0から254までの偶数しかとりえず補間精度が悪くなることは免れない。場合1から場合4まででテーブル転送量と格子点で取り得る数値のトレードオフを(表11)に示す。
【0087】
【表11】

【0088】つぎに実際に符号つきの色変換テーブルメモリ記憶データを作成する方法について述べる。本実施例では数値を色変換テーブルメモリ104に記憶する際、図12(A)の1201や図13(A)の1301に示すようなクリッピング特性やスルー特性を実現するため正数領域のみならず負数領域まで記憶する必要がある。この場合通常8ビットカラー画像処理を前提とすると色変換テーブルメモリ104にはデータ(0から255)に加えて(−1)以下の数値を記憶するために負数を2の補数表現する必要から9ビットデータを記憶しなくてはならない。これは特に8ビット幅で記憶されている場合の前述の利点をなくしてしまう。この問題に対して本実施例では各々の数値の精度を落とすことにより、記憶幅データは同じまま本来の記憶範囲を広げている。以下実施例に基づき説明する。
【0089】まず画像の入出力信号が10ビットでかつ色信号色変換テーブルメモリ104の記憶ビット幅を10ビット構成で使用するという(表10)における「場合4」を例にとる。
【0090】記憶ビット幅は10ビットであるから符号を考えると(−512から511)までの9ビット数値+符号という値しか設定できない。実際に色変換装置に出力させたい格子点データを(−3072から3072)までの範囲で任意の幅1024の窓に含まれる範囲の値を(−1024から1023)という11ビット表現範囲に変位し、つぎに精度を半分にするため1/2倍して(−512から511)の範囲の設定値に納めて色変換テーブルメモリに設定する。本来の格子点データをKO、変位量をOFFSETとすると設定値は【0091】
【数8】

【0092】となる。この様子を図18に示した。KO軸には表現可能な格子点データ(−3072から3072)が表示されている。この範囲は変位量OFFSETが前記(数8)の範囲にあることから決まる。実際に記憶できる範囲は1801の長方形で示される幅1024の範囲である。この範囲のちょうど中間位置0を1802の黒丸にて表現した。他の長方形の中の黒丸は偶数を、白丸は奇数を示し、該当する範囲内で実際には偶数のみ、または奇数のみしか記憶できていないことを示す。長方形の上限値と下限値は()内数値で示した。また、斜線で塗りつぶされている長方形内でのクロスハッチ部は本発明における出力データリミット部において最終的に出力され得る数値範囲0から1023を示している。1803で示す長方形はOFFSETの最大値2047を用いて正で最も大きな数値領域を設定した場合である。(1024から3072)までの奇数の格子点データが記憶できる。これは1804で表現される変位量OFFSET=2047を減算し、1801の位置まで戻してから1/2倍して(−512から511)までの範囲を持つ設定値1810とすることで実現される。勿論このような大きな数値を記憶しても最終的には出力データリミットがかかりほとんど意味はない。同様に1808で示す長方形はOFFSETの最小値=−2048を用いて負で最も小さい数値領域を設定した場合である。(−3072から−1026)までの偶数が記憶できる。これも出力データリミットがかかるためすべて0となって無意味である。実際のOFFSETはこのような極端な値でなくこの間の範囲で使用されるが、OFFSETを決めた場合の記憶可能な格子点数値の最小値KOmin、最大値KOmaxは以下の式により計算される。
【0093】
【数9】

【0094】また1805で示す(−512から1534)までを記憶する場合には1806で表現される変位量OFFSETを減算して1801の位置まで戻してから同様に1/2にして設定値1810とする。もちろんOFFSETを0として1807のような状態で使用することもできる。この色変換テーブルメモリにデータ設定を行う際に使用した変位量OFFSETは変位量レジスタ211に符号を変えて設定する。すなわち変位量を減算したら正値として変位量を加算したら負値として設定する。その結果、色変換時にはハードウエアにより色変換テーブルメモリ設定値が2倍された状態で補間演算に使用され、最後に変位量が加減されてもとの格子点データ値KOに戻ることになる。
【0095】次に画像の入出力信号が8ビットでかつ色信号色変換テーブルメモリ104の記憶ビット幅を8ビット構成で使用するという(表10)における「場合1」を例にとる。この場合、色変換テーブルメモリ104には(−128から127)までの値しか設定できない。そこで記憶させる格子点データKOは上限と下限で決まる幅512を持つ範囲の値を(−256から255)という符号を含む9ビット範囲1903に変位量補正手段によって補正し、つぎに精度を半分にするために1/2倍して(−128から127)の範囲に納めて色変換テーブルメモリに設定する。設定値は【0096】
【数10】

【0097】となりOFFSETを決めた場合の記憶可能な数値の上限、下限値は【0098】
【数11】

【0099】で決まる。この場合を図19に示した。つぎにこの変位量の使い方を説明する。画像色信号も記憶ビット幅もともに8ビットの「場合1」を例にとる。変位量=0で1901の状態では(−256から254)まで表現できると説明したが、実際には1/2に数値圧縮する際に精度が落ちるため図19の1901に示すように(−256から254)までの範囲の偶数しか表現できていない。このため256という値が必要なスルー特性は実現できない。スルー特性を実現するためには(−254から256)の偶数を表現するために変位量=2は最低必要である。なお、偶数値しか表現できないことはスルー特性の実現には障害にならない。これは入力空間での格子点位置がそもそも偶数であるために格子点記憶値もスルーの場合には偶数しかとりえないからである。スルー特性も含めて種々の色変換に対応できるダイナミックレンジを確保するためには、出力データリミット部最大値=255を越える正の余裕範囲と出力データリミット部最小値=0未満の負の余裕範囲とを等しくとっておく考え方がある。これは1902で示すように変位量=128としておくことに相当し、図18の場合には1805で示す変位量=512の状態に相当する。(表10)における場合2及び場合3についての同様な考察の結果を(表12)にまとめた。これは(表11)の結果にOFFSETを付加したものといえる。
【0100】
【表12】

【0101】次にエリア処理部107の説明について詳細に述べる。本実施例におけるエリア処理とは図20に示すように1画面分の画像色変換を行う際、画面上に長方形のエリアを複数個設定してエリア内部と外部とで異なる色変換を行うものである。本実施例においてはアドレス拡張を行わない通常モードにおいて色変換テーブルメモリ104に2種類の色変換#0と#1とを格納できる。そこでエリア外部では色変換#0を内部では#1を使用するようにあらかじめ設定したエリアRAMテーブルに従って色変換テーブルメモリ104を切り替える。各エリアは主走査線上でスタート画素アドレスSNとエンド画素アドレスENをもつ。ここでNは1から8を示す。図21にエリア処理回路107の詳細回路構成を示す。同図から明らかなように、エリア処理回路107はエリアRAMテーブル2100とエリアカウンタ2101と比較器2102、13ビットの画素カウンタ2103から構成される。画素カウンタ2103は主走査線上の画素をカウントし、エリアRAMテーブル2100に図22のように格納されたスタート画素アドレス、エンド画素アドレスとを比較器2102にて比較する。一方、エリアカウンタ2101は現在のエリア番号を0からF(16進数で15の意味)までカウントしてエリアRAMテーブル2100に入力してつぎの画素アドレスを出力させる。エリアRAMテーブル2100の出力値14ビットのうち1ビットが図22の色変換テーブルNOを示し0、1により色変換RAMを#0と#1に切り替えるLUTNO信号115になる。エリアRAMテーブル2100は内部バス114によってホストから書き換えられる。このソフトウエア的な書換えにより、副走査方向のエリア処理が行われる。
【0102】このように本エリア処理回路107では高速性を要求される主走査方向の処理はハードウエアにで副走査方向の処理はソフトウエアで行う。
【0103】なお、色変換テーブルはあらかじめ設定したエリア以外でも外部からの色変換テーブル切り替え信号115によって1画素ごとに強制的に切り替えることもできる。この場合には変更単位が画素であるため長方形以外の形でも任意の位置において色変換処理を切り替えられるという利点がある。
【0104】つぎにホストインタフェース部106について説明する。ホストインタフェース部106の役割はホストからの色変換テーブルメモリ104への書き込みを画像映像信号のブランキング期間中のみ許すことにより、書き込み時の画像映像の乱れをなくすことにある。これによってたとえばディスプレイ上に静止元画像を表示した状態でいろいろな色変更を次々と試していき原画像との微妙な雰囲気の違いを確認することができる。
【0105】具体的には図23のタイミングチャートに示すように、色変換RAMアドレスへの入力を画像映像の走査中には画素値から決まる色変換RAMアドレスとし、画像映像のブランキング期間(図23(b))は外部アドレスになるように切り替え制御を行なう。ホスト側は本実施例の色変換装置から出力されるNBUSY信号(図23(f))を監視してNBUSY=”H”になった時点から色変換RAMへの書き込みを始め、NBUSY=”L”になったら書き込みを中断する(図23(g))。
【0106】このサイクルを繰り返して書き込んでいくために画像映像表示にはいっさい影響を与えなくすることができる。この書き込み手順はDMAを用いる場合にも同様である。
【0107】以下、本発明の第2の実施例について説明する。図24は本発明の第2の実施例における色変換装置のブロック結線図である。
【0108】図24において、図1の本発明の第1の実施例と異なる点は、色差変換部116を新たに設けた点である。
【0109】以下、当該色差変換部116についてMIN演算との関係において説明する。図25に示すように色差変換部116は入力3信号から明度と特殊な簡易色差を生成する。今入力をR、G,Bの3信号と仮定すると、色差信号Cr、Cbは減算器2401と減算後に生じた負値を補償して補間部で使用する8ビットまたは10ビット値に変換するための負値補償手段2402によって【0110】
【数12】

【0111】と生成される。この場合色差基準値としてG信号を用いて他の2信号R,Bとの差を生成したが色差基準値としてはR,またはBを用いてもよい。Y信号はR,G,Bから種々の方法で作成でき、Cr,Cb信号と独立な信号であれば良い。具体的には明度生成手段2403は、【0112】
【数13】

【0113】などの式によって明度Yを生成する。つぎにMIN演算の特殊性について説明する。R,G,Bという入力3信号からその最小値をとる演算【0114】
【数14】

【0115】を例にとる。本演算を図形的に解釈するために図26(A)のようにRGB立方体を3個のピラミッド状領域(0)(1)(2)に分割する。
【0116】
【数15】

【0117】の領域と定義できるので、その定義から【0118】
【数16】

【0119】となる。従ってMIN演算での出力値一定の面は図26(A)に示すように各分割領域内部では平行面であるから補間は容易である。反面、3分割領域の境界面2501ではこの一定面が急激に変化し、補間する場合に格子点値に大きな不連続性を生ずるために補間がきわめて困難となり結果としてリップル状の補間誤差が生じていたのである。この境界面をRGB立体のW(ホワイト)方向から見ると図26(B)のようになっており、色相R,G,Bの各方向が相当し、式で書けば【0120】
【数17】

【0121】となる。従来の4面体を用いた補間方法ではこの不連続面が自然に四面体分割面に一致していたため1個の補間区間内で上記一定面が変化しないため線形補間がリップルなく出来るため、この問題が回避されていた。
【0122】本実施例でも同様な分割効果により問題を回避している。すなわち色差変換後の三角柱の色差平面上での分割の様子は図27(A)のごとくになり、Cr=(R−G)軸、Cb=(B−G)軸、およびCr=Cb軸にて分割されている。ここで図26(B)の境界面を色差平面に写像すると図27(B)のようになるが図27(B)に示す上記の3領域の境界面を図27(A)の分割線群はすべて含んでいる。
【0123】この理由により、本実施例の色差変換によってMIN演算がリップルなく補間出来ることになる。
【0124】以下、第3の実施例について説明する。図28は本発明の第3の実施例における色変換装置のブロック結線図である。
【0125】図28において、図24の第2の実施例と異なる点はアドレス生成部120、アドレス生成部102を新たに設けるとともに、セレクタ121、セレクタ122、及び重み制御部123を設けた点である。
【0126】以下、第3の実施例のアドレス生成に関して具体的に説明する。図29にアドレス生成部120の詳細構成を示す。なお、アドレス生成部120は固定量減算手段120A、加算器120B、120Cにより構成されている。 上記のような構成において、入力信号(Y、Cr、Cb)はつぎのようになっている。
【0127】
【数18】

【0128】この入力色信号R,G,Bを8ビット構成とし、上位信号と下位信号とビット配分は3ビット、5ビットとする。色差信号を作るとダイナミックレンジが1ビット増加するので、それぞれの上位信号は【0129】
【数19】

【0130】まで変化する。ここで色差信号は前述の負値補償手段2402により負値を補償され、【0131】
【数20】

【0132】となるため、YH、CrH,CbHは3、4、4ビット信号となり色差のダイナミックレンジが2倍に増加する。これは後述するように使用されていないメモリ量の増加を招く原因である。アドレス生成部120では、これらの信号から数値7を減算する固定量減算手段120Aと加算手段120B、120Cを用いて【0133】
【数21】

【0134】を計算する。ここで本来のRGBがすべて正であるから、CrH’、CbH’は負にならず以下のような正の範囲をとりダイナミックレンジが半分に縮小する。この効果によって本実施例ではメモリの使用効率の大幅な増加を得ることができる。
【0135】
【数22】

【0136】次にこの計算の図形的意味と効果について説明する。まず最初にRGB入力色空間を直交する3軸と考えた場合を説明する。このときRGB入力色空間は立方体となり、(数18)にて構成されるYCrCb空間は斜交座標系となる。
【0137】このCrCb空間はRGB立方体を完全に包含するために図30のようなRGB立方体のB軸R軸で構成される上底と下底を4倍にしてずらした平行六面体となる。すなわちY軸はRGB立方体の対角線方向を示し、Cr軸はR軸とおなじ方向、Cb軸はB軸とおなじ方向となる。
【0138】図30において、点線の矢印のようにCb軸方向から観測して2次元的に表現すると図31のようになる。YCrCb空間は色差の正、負まで含めてRGB正方形を完全に包含する平行四辺形として表現される。ここで黒四角で表現される点がRGB立方体内の格子点を表現する。
【0139】この格子点はYCrCb斜交座標系における格子点と一致するが、RGB立方体を完全に包含しようとすると(R−G)を−8から7まで、すなわちCrHを0から15まですべて使わねばならず、YCrCb空間にありながらアクセスされることのないRGB空間外の点が大きな部分を占めることとなりメモリの無駄が生じる。このメモリ使用効率は25%程度しかない。そこで、この実施例ではRGB立方体の内部とあとわずかの追加メモリを用意し、かつYCrCb斜交座標として入力される格子点座標をこのRGB直交系のメモリの座標にアクセスするように変換している。
【0140】まず補間に必要な点の選ばれ方を説明する。RGB空間内の入力色点3101を補間するための明度色差空間内の単位三角柱の頂点はこの2次元的な説明ではP1、P2、P3、P4である。ここでP1はRGB立方体外の仮想的な格子点であるがこの点をRGB直交系での格子点の基点とし、この基点にて代表されるRGB直交系の単位補間区間番号(YH’,CrH’)を計算する。入力色点は【0141】YH=2、CrH=5であるから(数21)に従って【0142】
【数23】

【0143】となり、RGB直交系にて(YH’、CrH’)=(2、0)を示す単位補間区間であるP1,P2,P4、P5が指定されたことになる。単位補間区間はその基点を示すものと考えてよいのでこの場合にはP1を指し示している。このようなアドレス変換機構を用いれば、仮想的な点P1,P5などRGB空間での両端の1区間分は余計にメモリを用意しなくてはならないが、YCrCb空間全体にわたってメモリを用意する場合と比べて大幅にメモリを節約できる。
【0144】以上の説明を今度はYCrCb空間を直交系と考える手法で同様に2次元にて説明する。図32において、全体を囲む正方形がYCrCb空間のY-Cr投影面であり、黒四角点にて表示される格子点にて埋められている平行四辺形がRGB立方体のRG投影面である。この表現では入力色を補間する三角柱に必要な4点は、YH軸、CrH軸に平行な長方形P1,P2,P3,P4であり、P1がRGB空間外で必要な仮想的な格子点である。これに対して前述のアドレス変換を行ってRGB斜交座標系内での平行四辺形P1,P2、P4,P5、ならびにその基点P1を指定することとなる。
【0145】アドレス生成部120からの出力はYH'CrH’CbH’直交系でのYH’(3ビット)、CrH’(4ビット)、CbH'(4ビット)をアドレス生成部102に出力する。
【0146】CrH'、CbH'、YH'はそれぞれ図31に示したYH'CbH’CbH’空間の単位補間区間の各軸上での位置を表している。
【0147】アドレス生成部102はアドレス生成部120により示された単位補間区間番号から補間演算のために必要な色変換テーブルメモリのアドレスを生成する。図33は単位補間区間番号がPの位置を示した場合に必要な色変換テーブルメモリーの位置を太い黒線で示している。この図でM0〜M7は8種の色変換テーブルデータを示し、(i、j,k)は単位立方体の種類を示している。図33から理解できる様に、単位補間区間番号が指示された場合、必要となる単位立方体の上面は、下面に対してCrH,CbH方向にそれぞれ1ずつずれた位置にある。これはアドレス生成器120で、CrHとCbHからCrH'とCbH'を作成する時YHをそれぞれ加算したために、YH+1の位置でのCrHとCbHに対応する格子点位置はCrH'+1とCbH'+1になったためである。この位置関係は常に成立するため、単位立方体の上面の位置は底面に対してCrH’CbH’方向にそれぞれ1ずつ進めた単位立方体から取り出す必要がある。
【0148】アドレス生成部102は8個設け、おのおの8個の色変換テーブルメモリ(M0〜M7)104に対応している。色変換テーブルは3軸が偶数の単位立方体のみに対し8個の格子点データをもっている。これらの格子点データで全ての入力格子点を過不足なく埋め尽くすことが出来るので、この色変換テーブルメモリは必要十分なメモリー量となっている。
【0149】単位補間区間番号からどのように色変換テーブルメモリをアクセスするかを図34、図35を用いて説明する。
【0150】図34はYH’CrH’CbH’空間に配置された色変換テーブルメモリをCbH’方向から見たものであり、図35はYH’方向から見たものである。図34においてAは単位補間区間番号(YH’)が偶数の場合に使用するテーブルデータの位置を斜線で表しており、Bは奇数の場合を表している。YH’が偶数の場合(A)はメモリM0〜M3が補間立体の底面になり、M4〜M7が上面になる。またYH’が奇数の場合(B)はメモリM4〜M7が底面になり、M0〜M3が上面になる。図35で単位補間区間信号(YH’CrH’CbH’)によって補間立体の底面の位置Aが指示された時、上面の単位補間区間番号はCrH’CbH’方向にそれぞれ1ずつ進めたA’点である事を示している。
【0151】図36はアドレス生成部102のブロック構成を示すものである。アドレス生成部102はM0〜M7にそれぞれ独立に設け、3601は単位補間区間番号からメモリーデータを取り出すための選択ブロック番号を生成する事を行うブロック番号発生部である。図34、図35の説明からYH'が偶数の場合はM0〜M3が底面、M4〜M7が上面になるから、ブロック番号発生部3601は、M0〜M3に対しYH’が偶数の場合は単位補間区間番号をそのまま選択ブロック番号として出力し、YH’が奇数の場合にはCrH’とCbH’の単位補間区間番号にそれぞれ1を加算した値を選択ブロック番号として出力する。M4〜M7に対してはそれぞれ逆の動作で、YH’が偶数の場合にはCrH’とCbH’の単位補間区間番号にそれぞれ1を加算した値を選択ブロック番号として出力し、YH’が奇数の場合は単位補間区間番号をそのまま選択ブロック番号として出力する。
【0152】選択ブロック番号部3603は、ブロック番号偶数化調整部3602により、各軸毎に選択ブロック番号が奇数の場合は次の偶数のブロック番号からの格子点データを得るために選択ブロック番号の加算を行う。この動作は8つの単位立方体の種類(i,j,k)とM0〜M7により、それぞれ加算の有無が変わる。(表13)はM0〜M7に対する選択ブロック番号調整信号(UX UY YZ)を示す。0の場合は奇数ブロックの場合にブロックアドレスが1加算する場合を示している。図37は、図36のブロック番号偶数化部3602、及びブロック番号加算部3603の具体的構成を示すものであり、ブロックを偶数化する為の論理の実施例である。
【0153】
【表13】

【0154】選択ブロック番号の加算を行った後は全て偶数となり、M0〜M7に保持している偶数ブロックのみの各格子点の色変換テーブルデータを取り出す事が出来る。
【0155】さらに、図36ではCrH’ブロック番号加算部の出力とCbH’ブロック番号加算部の出力を乗算器3604でM倍したものと、Zブロック加算部の出力を乗算器3605でM2倍したものの和をアドレス加算器3606でとり色変換テーブルメモリのリニアアドレスを出力している。
【0156】
【数24】

【0157】
【数25】

【0158】Nはアドレス生成部120のCrH’とCbH’の入力範囲である。Nはブロック番号発生とブロック番号偶数化処理でそれぞれ1増加され、1/2した後、色変換テーブルメモリのアドレス(MAi)として利用される。
【0159】この様なアドレス生成部102を用いる事で各軸が2べき乗でない格子点数に対しても連続したリニアアドレスに変換でき、色変換テーブルのアドレスの不連続から発生する無駄を無くす事ができる。
【0160】アドレス生成部102からの並列の8個のアドレスはメモリインタフェース109を介してそれぞれ8個の色変換テーブルメモリ104に導かれる。色変換テーブルメモリから読まれた格子点出力値M0〜M3、M4〜M7はそれぞれセレクタ121とセレクタ122に導かれ、3角柱補間演算部105の入力位置a,b(d)、c、e、f(h)、gに対応する格子点出力値を出力する。
【0161】図38は単位補間区間番号が(100)の場合に上面と下面に出力するメモリーの種類を説明するものである。例えば底面のa位置の出力はM1、b位置の出力はM0、c位置の出力はM3、d位置の出力はM2を出力すべき事が解る。
【0162】(表14)は単位立方体の種類(i,j,k)によりセレクタ121、セレクタ122で選択されるべき色変換テーブルをまとめたものである。
【0163】
【表14】

【0164】画素入力部101からの出力の上位を除いた下位5ビットは、第1の実施例の記載と同じく3角柱分割選択部103で3角柱判定を行い3角柱補間演算部105とセレクタ121、122に入力される。また重み制御部123はYH'信号の最下位ビットを判定して奇数の場合はY軸方向の重み係数DYを(1−DY)とする。この操作はビット反転後1を加算する事で得られる。Cr、Cb方向の重みDCr、DCbはそのまま3角柱補間演算部105に入力される。YH’の最下位ビットによりDYを(1−DY)にすることはYH’が奇数の場合は図39に示す様に3角柱補間のY軸方向の補間を上面から行うためである。これはYH’が奇数の場合にはa〜dは上面になるが、補間係数DYを(1ーDY)にする事でことで上面と下面の入れ替えを行う必要が無く、セレクタ121、122を4入力で行える利点がある。
【0165】3角柱補間演算部105からの出力113は第2の実施例の場合と同じ出力を得る事ができ、かつ入力信号の色差変換により使用しないメモリの発生を起こす事がなく、メモリの有効利用が行えるものである。
【0166】また、色変換テーブルメモリは偶数ブロックのみの格子点データのみとし、専用のアドレス生成器を各メモリーに独立に設け、3次元の色変換テーブルの各軸の格子点数が2のべき乗でない場合にもリニアアドレスを発生でき、メモリアドレスの有効利用ができ、結果的に少ないメモリー容量で色変換テーブルを設計出来る利点がある。
【0167】図40は色変換テーブルメモリ104を6種類(黒丸、黒三角、黒四角、及び白丸、白三角、白四角)のデータで全て埋め尽くし、且つ3角柱補間演算を行う時に必要な3角柱底面(A)と上面(B)で同じ種類のデータを使用する事が無いように設計出来る事を示している。網掛けしてある6種類のパターンはとり得る3角柱の種類を表している。
【0168】図41は3角柱のパターンを同じにしても可能な事を表している。すなわち網掛けしてある三角形端点で全ての格子点を埋め尽くす事ができると同時にその型は全て左下が「黒丸」になる同じ形の三角形になっている。この例では亀型をした6角形が空間分割単位になり、そのうちの最下の真ん中の三角形の端点のデータを保持すればよい。なお、図41においては図40と同様に、(A)が底面を、(B)が上面を示している。
【0169】以上、図40、図41に示した実施例は、3次元の色変換テーブルのアドレス変換機構をテーブルの前段に設けたものによっても実現できる。
【0170】図42は、図40にあげた6個のメモリ構成で、メモリの底面を2次元にアドレスするもう一つの実施例である。4101、4102、4103は3種類のメモリのアドレス順序を示すアドレスラインで、このアドレスラインに乗るそれぞれ独立な3種類のメモリで目的とする3角柱の上面あるいは底面の三角形をアクセスする事ができる。図40にあげたアドレス方法は本発明にあげたアドレス生成部102を変形する事で実現できる。
【0171】
【発明の効果】以上のように本発明は、第1に三角柱型補間を用いることにより明度方向と色差方向の補間を分離した上で色度平面の2次元での補間を三角形を用いて最も単純化しているために色度平面内での色調整を行う場合に従来の補間方式よりも単純化される利点がある上にハードウエア構成もあまり複雑にはならない利点がある。
【0172】第2に、いわゆる「クリッピング特性」や「完全スルー特性」のような従来の補間演算では実現が困難だった色変換特性が、色変換テーブルメモリへの数値の記憶に際し精度を落として記憶可能なレンジを広げ、かつ変位量補正を行うことにより実現できる。
【0173】第3に、本発明をカラーコレクタに応用する場合のようにディスプレイ上のカラー画像の色変換に使用する場合、ホストインタフェース部のバス調停作用によって色変換テーブルメモリへ頻繁にアクセスしても画像が乱れることがなく、このため色調整や色変換を原画像に種々加えて主観的に比較することが非常にやりやすい。
【0174】第4に画面全体に1つの色変換を行うだけでなく画面上での指定領域内や指定する画素ごとに使用する色変換テーブルを実時間で切り替えることにより異なる色変換を実行することができる。このように本発明の色変換装置はカラー画像映像装置の色調整や色変換装置として優れた性能を持つものである。
【0175】第5に入力3信号のMIN演算のような特殊な色変換を行う場合にも色差変換と三角柱分割が有効に働くため補間時にリップル状の誤差を生じない。
【0176】第5に、本発明の第1、第2のアドレス生成部によるメモリ−アドレス方法をとれば、色変換テーブルの重複を避け、色変換テーブルメモリの使用しない空き部分が無くなり有効なメモリー活用ができるため、少ないメモリ容量で大きな色変換テーブルを設計する効果がある。
【0177】また第6に、3角柱補間での上面と下面の補間を本発明で示した方法で切り換える事により、色変換テーブルメモリー出力のセレクタ入力数を半分にする事が出来、メモリーの出力部の構造が簡単になる効果がある。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013