JP2005354229A - 画像処理方法、画像処理装置、情報処理方法 - Google Patents

画像処理方法、画像処理装置、情報処理方法 Download PDF

Info

Publication number
JP2005354229A
JP2005354229A JP2004170447A JP2004170447A JP2005354229A JP 2005354229 A JP2005354229 A JP 2005354229A JP 2004170447 A JP2004170447 A JP 2004170447A JP 2004170447 A JP2004170447 A JP 2004170447A JP 2005354229 A JP2005354229 A JP 2005354229A
Authority
JP
Japan
Prior art keywords
polyhedron
color
color data
point
compression
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.)
Withdrawn
Application number
JP2004170447A
Other languages
English (en)
Inventor
Hiroaki Nashizawa
洋明 梨澤
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004170447A priority Critical patent/JP2005354229A/ja
Publication of JP2005354229A publication Critical patent/JP2005354229A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】 色空間における各色の点群に基づく多面体をより高速に形成するための技術を提供すること。
【解決手段】 多面体化部101、103は色データ群をそれぞれの色データが示す彩度に従って並び替え、並び替えた色データ群を彩度の高い順に参照した場合に、先頭から所定個数分の色データ群を用いて初期多面体を形成し、初期多面体もしくは前段で形成された多面体と、並び替えた色データ群を彩度の高い順に参照した場合に先頭から所定個数分を除いた色データ群とを用いて多面体を形成する。
【選択図】 図1

Description

本発明は、色データ群から、この色データ群の色域を示す多面体を形成するものに関する。
カラーデータを出力する装置として、モニタやプリンタ(ハードコピー装置)などがあり、モニタはRGBの加法混色で表現され、ハードコピー装置はCMYKの減法混色で表現されている。
一般的にモニタの方がハードコピー装置よりも色再現範囲が広いため、モニタで表示された画像をハードコピー装置で忠実に再現することはできない。
そこでハードコピー装置で再現できない色を再現できる色に置き換える処理が必要となる。この方法として色空間圧縮方法がある。色空間圧縮方法には様々な方法があるが、圧縮前と圧縮後とで視覚的な一致を図るという観点では、色再現範囲内の色はできる限り圧縮せず忠実に再現し、色再現範囲外の色は色再現範囲内の高彩度部へ圧縮することにより階調性を保持する方法がある(例えば、特許文献1を参照)。
モニタやハードコピー装置の色域を定量的に表現する手法としては一次色(R,G,B)、二次色(C,M,Y)と白(W)、黒(Bk)の8点で12面体近似が従来使われてきたが、実際の色域はL色空間内では非線形に歪んでいるため近似精度が落ちる問題が指摘されていた。そこで非線形な歪みも表現できる多面体近似(Convex Hull3D)を用いることで精度を高める方法がある。
特開平07−107306号公報
しかし上記Convex Hull3Dは与える点群データの順番に依って処理速度が非常に遅くなる場合や、Convex Hullの生成に失敗する場合もあるという問題があった。
本発明は以上の問題に鑑みて成されたものであり、色空間における各色の点群に基づく多面体をより高速に形成するための技術を提供することを目的とする。
本発明の目的を達成する為に、例えば本発明の画像処理方法は以下の構成を備える。
すなわち、色データ群の3次元色空間内における位置を示す点群を頂点とする多面体を形成する為の画像処理方法であって、
前記色データ群を、それぞれの色データが示す彩度に従って並び替える並び替え工程と、
前記並び替え工程で並び替えた色データ群を彩度の高い順に参照した場合に、先頭から所定個数分の色データ群を用いて初期多面体を形成する第1の形成工程と、
前記初期多面体もしくは前段で形成された多面体と、前記並び替え工程で並び替えた色データ群を彩度の高い順に参照した場合に前記先頭から所定個数分を除いた色データ群とを用いて多面体を形成する第2の形成工程と
を備えることを特徴とする。
本発明の目的を達成する為に、例えば本発明の画像処理装置は以下の構成を備える。
すなわち、色データ群の3次元色空間内における位置を示す点群を頂点とする多面体を形成する為の画像処理装置であって、
前記色データ群を、それぞれの色データが示す彩度に従って並び替える並び替え手段と、
前記並び替え手段によって並び替えた色データ群を彩度の高い順に参照した場合に、先頭から所定個数分の色データ群を用いて初期多面体を形成する第1の形成手段と、
前記初期多面体もしくは前段で形成された多面体と、前記並び替え手段によって並び替えた色データ群を彩度の高い順に参照した場合に前記先頭から所定個数分を除いた色データ群とを用いて多面体を形成する第2の形成手段と
を備えることを特徴とする。
本発明の目的を達成する為に、例えば本発明の画像処理方法は以下の構成を備える。
すなわち、色データ群の色域を示す多面体を形成する為の画像処理方法であって、
前記色データ群から、複数の色相のそれぞれにおける高彩度データを抽出する抽出工程と、
前記抽出された高彩度データを用いて多面体を形成する形成工程と、
前記形成工程で形成された多面体を初期多面体として、前記色データ群から前記色データ群の色域を示す多面体を形成する工程と
を有することを特徴とする。
本発明の構成により、色空間における各色の点群に基づく多面体をより高速に形成することができる。
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
[第1の実施形態]
図1は本実施形態に係る画像処理装置110の機能構成を示す図である。本実施形態に係る画像処理装置は、第1の色空間の多面体部101,第2の色空間の多面体部103、圧縮パラメータ設定UI104,マンセル色相曲線DB105、圧縮曲線DB生成部106,色空間圧縮部107により構成されている。本実施形態ではこれら各部はハードウェアにより構成されているものとする。
以下の説明では先ず、色圧縮対象の際に使用する圧縮曲線を生成する為の処理について説明し、その後、この圧縮曲線を用いた圧縮処理について説明する。
圧縮対象の色データとしては、sRGB、AdobeRGB、WideGamutRGB等の色空間に属する色のデータや、何らかのデバイスに依存する色空間のRGBもしくはCMYKの色のデータを、デバイス非依存のLのデータに変換したものである。何らかのデバイスに依存する色空間とは、例えば、デジタルカメラで撮影した画像を示すRGBであったり、スキャナにより原稿から読み取られた画像を示すRGBであったり、あるプリンタに出力すべきCMYKであってもよい。
<圧縮曲線生成処理>
上述の通り、先ず、圧縮曲線を生成する処理について説明する。先ず、第1の色空間内の各色(各点)のデータ(第1の色空間内の点群データ100)、第2の色空間内の各色(各点)のデータ(第2の色空間内の点群データ102)のそれぞれが第1の色空間の多面体部101、第2の色空間の多面体部103に入力され、第1の色空間の多面体部101、第2の色空間の多面体部103はそれぞれ、第1の色空間の点群データ100が示す各点を包含することで形成される多面体、第2の色空間の点群データ102が示す各点を包含することで形成される多面体を生成する。それぞれの多面体は、第1の色空間の点群データ100が示す点群によって規定される色再現範囲(第1の色再現範囲)、第2の色空間の点群データ102が示す点群によって規定される色再現範囲(第2の色再現範囲)を示すものである。
ここで、点群データから多面体を生成する方法としては様々な方法が考えられるが、例えばConvex Hull (コンベックスハル) 3Dを用いて生成することを考える。
このConvex Hull3Dのアルゴリズムは以下の手順を踏む。

(処理1) 点群データから初期値として1〜4番目の点を各頂点とする多面体(初期四面体)を作成する。

(処理2) 次に5番目の点が既に作成した四面体の内にあるか外にあるかを判定する。内外判定の方法を以下に示す。
内外判定したい点と四面体を構成する一面(一つの三角形)との表裏判定を行う。図2は、内外判定対象の点と、四面体を構成する(表裏判定で用いる)一面を示す図である。同図において内外判定対象の点pの三角形2201に対する表裏判定は、点Pと三角形2201を構成する1つの頂点qとを結ぶベクトル2202と、三角形2201の法線ベクトルnorとの内積(pq・nor)が正か負かで決定する。内積結果が正の場合には、点pは三角形2201の裏側に位置しており、内積結果が負の場合には、点pは三角形2201の表側(法線ベクトルの向いている側)に位置していることになる。
この性質を利用して内外判定対象の点の四面体に対する内外判定処理は、図3に示す如く、四面体2301を構成する全ての面の法線ベクトル2302〜2305を四面体2301の重心に対して外側を向くように予め設定しておき、全ての面に対して図2を用いて説明した表裏判定処理を行う。その結果、1つ以上の面に対して表である場合には点pは四面体2301の外部に位置することになり、逆に全ての面に対して裏である場合には、点pは四面体2301の内部に位置することになる。
よって以上のことから、5番目の点が四面体の内部に位置するのであれば次の点、すなわち6番目の点に対して同様にこの四面体に対する内外判定処理を行う。一方、5番目の点が四面体の外部に位置する場合には、この5番目の点を新たな多面体の頂点とし、その結果新たな多面体を再構成する処理を行う必要がある。
1つの頂点が加わることで新たな多面体の再構成する方法について以下説明する。図4は1つの頂点が加わることで新たな多面体の再構成する方法を説明する図である。同図では、多面体に対して点Pを新たな頂点として加え、その結果新たな多面体を構成する場合について示したものである。
先ず点pの位置から多面体2401を見て、見える面(多面体2401においてメッシュで示していない部分)と見えない面(多面体2401においてメッシュで示している部分)を判定する。判定方法には先述した点と面の表裏判定が利用できる。すなわち、見える面とは、点pを表と判定する面群により構成される部分であり、見えない部分とは点pを裏と判定する面群により構成されている部分である。
このとき、見える面と見えない面の境界となる辺を結んでできる面を地平面と以下呼称する。ここで、地平面と点pにより多角形錐ができる。この多角形錐の内部に含まれる点は点pの追加により削除される点である。よって再構成される多面体はこの多角形錐と見えない面を結合したものとなる。
(処理3) (処理2)を点群データ全てについて行う。
図5(a)は、点群を示す図で、図5(b)は図5(a)に示した点群に基づいて以上説明したConvex Hull3Dにより作成した多面体を示す図である。
ここで、(処理2)の手順において、参照している点が多面体の内部であれば別段何も処理を行うことなく次に点に対して内外判定を行うのであるが、逆に参照している点が多面体の外部に位置している場合には上述の通り、新たに多面体を再構成するという、参照している点が多面体の内部である場合に比べて処理が複雑になる。
このことから、点データの並び方によっては非常に時間がかかる場合がある。また既に処理した点とまったく同じ点や、前回処理した点と非常に近接した点を今回の参照する点とする場合、それが特異点となり多面体が構成できない場合がある。
そこでこれらの問題を解消するために、色データ群を用いて多面体を生成する前段で、この色データ群を整理する。具体的には先ず、まったく同じ点(全く同じ色を示す色データ)に関しては間引き、次に、間引き処理後に残った色データ群を彩度の高い順に並び替える。
Convex Hull3Dのアルゴリズムの性質上、処理する点がその時点での多面体の内にある回数が多いことが処理速度の向上に繋がる。よって並び替える条件は、なるべく最終的に多面体の外側を構成するであろう彩度の高い点が、全色相方向偏り無く早い段階で参照対象となることである。よってこの条件を満たすべく色データ群を並び替える。並び替える方法としては、まず最終的に多面体の構成点のなることがわかっているR、G、B、C、M、Y、W、Bkのデータを先頭に移動すること。一次色、二次色以外にも特色などで多面体を構成しそうな点があればそれも先頭の方に移動することでも効果はあがる。それ以外の点はC(彩度)で降順に並び替えることである。但し、もしR、G、B、C、M、Y、W、Bkのデータを特定できない場合は以下の(処理4)〜(処理6)に示す処理を行う。
(処理4) データのL成分を考慮しないでa−bの二次元平面でConvex Hull 2Dを適用する。
(処理5) Convex Hull 2Dによって選出された点群をデータの先頭に移動する。
(処理6) それ以外の点はC(彩度)で降順に並び替える。
以上の処理により、各点の内外判定処理の早期段階で多面体の形状が決定するので、これ以降は多面体の再構成処理が無いので、全体として多面体生成処理にかかる時間を従来よりも軽減させることができる。
因みにConvex Hull 2Dのアルゴリズムは以下の(処理7)〜(処理10)の通りである。
(処理7) 点群データ(a、b成分のみ考慮)入力
(処理8) 図6に示す如くa−b平面において原点と無限遠点を結ぶ直線を反時計回りにθ=0から回転させ、この直線に最初にぶつかった点(θ=a)を第1の凸多角形構成点とする。図7は、第1の凸多角形構成点を検索した状態を示す図で、同図において2701が第1の凸多角形構成点を示す。
(処理9) ぶつかった点(図7では点2701)と無限遠点を結ぶθ=aの直線をぶつかった点を中心に反時計回りに回転させる。そして次にぶつかった点を凸多角形構成点に追加する。図8は、次の凸多角形構成点を検索した状態を示す図で、同図において2801が第1の凸多角形構成点2701の次に見つかった凸多角形構成点である。そして次には、この凸多角形構成点2801と無限遠点を結ぶ直線2802を点2801を中心に反時計回りに回転させる。そして次にぶつかった点を凸多角形構成点に追加する。図9は、次の凸多角形構成点を検索した状態を示す図で、同図において2901が凸多角形構成点2801の次に見つかった凸多角形構成点である。そして次には、この凸多角形構成点2901と無限遠点を結ぶ直線2902を点2901を中心に反時計回りに回転させる。
(処理10) 直線が一回転(θ=2π)になるまで(処理9)を繰り返す(ここでθは、時計回りに回転させた直線の角度を示す)。そしてθ=2πとなったときには図10に示す如く、凸多角形が得られる。
以上の方法で一次色、二次色および該当する特色が特定できる。W、Bkに関しては点群データを明度方向で昇順(降順でも可)することで得ることができる。
点群データを並び替えた場合と並び替えない場合とでの多面体の生成過程を図11に示す。同図において左側の図(図11(a)〜(e))が点群を並び替えしないで多面体を作成する過程を示した図で、右側の図(図11(f)〜(j))が点群を並び替えして多面体を作成する過程を示した図である。
右側、左側の両方とも上から8点、50点、100点、200点、400点を入力した時点でのGamutを示す。並び替えた場合の方が早い段階で最終的な多面体に近い形状をしていることがわかる。
従って、第1の色空間の多面体化部101、第2の色空間の多面体化部103は以上説明したようにして、多面体を形成する。
図1に戻って、第1の色空間の点群データ100は、色圧縮対象となるデータの色空間と同じである必要がある。例えば、圧縮対象となるデータとしてデジタルカメラによるRGB画像が入力される場合は、デジタルカメラのRGB色空間のRGB値とL値との対応に基づいてL値に変換されたものとなる。同様に、プリンタのCMYK画像が入力される場合は、プリンタのCMYK色空間のCMYK値とL値との対応に基づいてLに変換されたものとなる。
第1の色空間の多面体化部101、第2の色空間の多面体化部103によって生成された多面体のデータは後段の圧縮曲線DB生成部106に入力される。圧縮曲線DB生成部106は、第1の色再現範囲を示す多面体のデータ、第2の色再現範囲を示す多面体のデータを用いて、第1の色空間における色を第2の色空間における色に色圧縮するための圧縮曲線を生成する処理を行う。以下、圧縮曲線DB生成部106による圧縮曲線を求める処理について説明する。
この生成する圧縮曲線は、マンセル色相環(マンセル色相曲線)をベースとする。マンセル色相環のデータはマンセル色相曲線DB105に保持されており、これを読み出して用いる。
マンセル色相環をベースとすることで、ユーザの負担を軽減する効果がある。図12は、L=50の場合のマンセル色相環を示す図である。図12のマンセル色相環は、L=50であるときのa−b平面内の色相環を示すものである。以下説明する圧縮曲線生成処理では、L方向(明度方向)のマンセル色相環を求めることになる。
図13は、ある色相におけるC−L平面における第1の色空間の点群データ100が占める部分と第2の色空間の点群データ102が占める部分とを示す図である。以下の説明では、この第1の色空間の点群データ100を第2の色空間の点群データ102に色圧縮する際に用いる圧縮曲線を求める処理について説明する。
まず、第1の色空間の点群データ100のうち、彩度が最大の色データ(同図において「最大彩度点」と示した位置における色データ)のマッピングポイント(色圧縮後のL*a値)を決定する。換言すれば、第1の色空間の点群データ100のうち、彩度が最大の色データの色圧縮後の第2の色空間における色データを求める。
色空間圧縮の際には、色相、明度、彩度を変化させる必要があるが、色相に関しては上記マンセル色相曲線に沿わせる。明度、彩度に関しては各々をどれだけ保持して圧縮するかによってマッピングポイントが異なってくる。明度を保持して圧縮する場合は彩度を変化させる明度保持優先圧縮になり、彩度を保持して圧縮する場合は明度を変化させる彩度保持優先圧縮となる。明度を変化させないで色圧縮を行う場合には、第1の色空間における最大彩度点は第2の色空間において矢印401で指す位置に色圧縮され、彩度を変化させないで色圧縮を行う場合には、第1の色空間における最大彩度点は第2の色空間において矢印402で指す位置に色圧縮される。なお、明度、彩度それぞれを所定の割合(例えば明度を80%、彩度を20%)で保持して色圧縮を行うようにしても良い。その場合、最大彩度点から、矢印401の方向成分の80%、矢印402の方向成分の20%を合成した方向成分を有する矢印が第2の色空間の点群データ102が占める部分と初めて交差する位置の色データに色圧縮を行う。このように、最大彩度点における色データの色圧縮を行う際の、明度、彩度のそれぞれの割合は圧縮パラメータ設定UI104でもって設定することができる。
次に、最大彩度点以外の第1の色空間の最外域点のマッピングポイントを決定する。すなわち、第1の色空間の点群データ100が占める部分のエッジ部分の色データのマッピングポイント(色圧縮後のL*a値)を決定する。
まずマッピングポイントの明度を決定する。その際、図14に示すように最外域点のマッピングポイントに従って決定すると全体的に明度が変化し、元の色を保持できなくなる。そのため影響を受ける部分を最小限に抑えるよう低彩度の部分はなるべく元の明度を保持する。
そのための方法としては、例えば図15に示す如く、最大彩度点よりも上部(第1の色空間の点群データ100の部分601においてC−L平面において傾きが負の部分)に関しては一点鎖線602で示す如く湾曲させる。この湾曲は制御点C1〜C4をコントロールし、曲線を生成することで決定する。
C1のx座標(彩度)は可変で、圧縮パラメータ設定UI104でもって設定することができる。C4のx座標は最大彩度点の彩度と同じである。またC2、C3のx座標はC1のx座標、C4のx座標間を4等分するように決定される。
一方、C1、C4のy座標(明度)は可変で、圧縮パラメータ設定UI104でもって設定することができる。なお、C4のy座標値は最大彩度点のy座標値よりも小さい。C2のy座標y2,C3のy座標y3は、例えばC1、C4における微分係数をそれぞれr1,r4とすると、以下の式
y2=(2×r1+ r4)/3
y3=( r1+2×r4)/3
を計算することにより求めることができる。当然、y2,y3の求め方はこれに限定するものではなく、その他にも例えば、楕円関数により一点鎖線を楕円の一部分に近時する方法により決定しても構わない。
このようにして、最大彩度点よりも上部の色データの色圧縮後の明度を決定する。次に色圧縮後の彩度を決定する。そのための方法としては図16に示す如く、C−L平面において、上記C1からC4(同図ではP1とC1とが重なっている)のそれぞれのy座標(明度)と同じ第2の色空間の点群データ(P1’、P2’、P3’、P4’)を特定する。これにより、第1の色空間の点群データ100においてP1〜P4の色圧縮後の色データP1’〜P4’を求めることができる。当然、このP1’〜P4’は何れも第2の色空間の点群データである。
以上のような処理を最大彩度点を境に上部と下部とで、元の点とマッピング後の点の対を複数組(例えば20組)求める。なお、最大彩度点よりも下部(第1の色空間の点群データ100の部分601においてC−L平面において傾きが正の部分)に関しては一点鎖線602で示す如く湾曲させる以外は上部と同じ処理を行う。
そして、元の点とマッピング後の点とを通る曲線を圧縮曲線として求める。元の点とマッピング後の点の対を20組求めたのであれば、この圧縮曲線は20本求まる。ここで、圧縮曲線を求める方法について説明する。
圧縮曲線は上述の通り、元の点とマッピング後の点とを通る曲線であるが、この2点だけではこの2点を通る曲線を求めることはできない。そこで、その一例として、以下のような方法が適用可能である。例えば図16におけるP4とP4’とを通る曲線を求める場合、P3のx座標値をP4と同じにした位置(P3’’)、P3’のx座標値を0にした位置(P3’’’)を求め、P3’’’、P4’、P4,P3’’の順に通る曲線を、周知のスプライン関数(例えばリーゼンフェルトスプライン関数)を用いて生成することができ、これを「P4とP4’とを通る曲線」として求めることができる。これはその他の点間を通る圧縮曲線を求める場合にも同様である。
尚、求めたそれぞれの圧縮曲線は互いに交差していないことが前提であって、交差してしまう場合には、一方が他方を交差しないようにする処理が必要となる。それぞれの圧縮曲線が交差しないようにする方法については特に限定するものではない。
図17はある色相における圧縮曲線の一例を示す図である。同図において801は第1の色再現範囲を示す多面体、802は第2の色再現範囲を示す多面体を示す。同図に示す如く、第2の色再現範囲は第1の色再現範囲よりも色再現範囲は狭いので、第1の色再現範囲を示す多面体801は、第2の色再現範囲を示す多面体802よりもサイズが大きく、且つ第2の色再現範囲を示す多面体802を包含している。なお、図中では見やすくするためにそれぞれの多面体は12面体で表している。また同図において803は上記処理により求めた圧縮曲線群で、点の対だけ存在する。
このような圧縮曲線群を、図12に示したマンセル色相環の最外周上の各位置(同図では40点の各位置)におけるa、bについて求める。
以上のようにして、第1の色空間の点群データ100と第2の色空間の点群データ102とで、元の色データと圧縮後の色データとの対応関係を、圧縮曲線として求めることができる。
<色圧縮処理>
次に、上記処理により求めた圧縮曲線を用いて、色圧縮を行う処理について説明する。色圧縮部106には、色圧縮する対象の色データが入力される。従って色圧縮部106は、この入力された色データに対して、圧縮曲線DB生成部106が生成した上記圧縮曲線データを用いて、指定された圧縮率に従った第2の色空間への色圧縮を行う。
この色圧縮処理の第1段階としては、入力色データが示すL値を通る圧縮曲線を、上記圧縮曲線データを用いて補間処理により求める。この補間処理については、様々な補間方法が考えられるが、その一例を図18を用いて以下説明する。
図18は、入力色データが示すL値を通る圧縮曲線を、先に求めた上記複数の圧縮曲線を用いて補間処理により求める処理のフローチャートである。
先ず、入力色データが示すL値のうち色相が、L色空間内で上記複数の圧縮曲線のうち、どの圧縮曲線の間に位置するのかを特定する(ステップS201)。すなわち、入力色データが示すL値のうち色相が、どの2本の圧縮曲線間に位置するのかを求める。
図19は、ステップS201における処理を説明する図である。同図において1001は入力色データのa―b平面における位置を示す。この位置1001は、色相方向、すなわちa軸方向では圧縮曲線1002,1003の間にある。従ってこの場合、ステップS201では、特定すべき2つの圧縮曲線は1002,1003の2本となる。
次に、入力色データが示すL値のうち明度が、L色空間内で上記複数の圧縮曲線のうち、どの圧縮曲線の間に位置するのかを特定する(ステップS202)。すなわち、入力色データが示すL値のうち明度が、どの2本の圧縮曲線間に位置するのかを求める。
図20は、ステップS202における処理を説明する図である。同図において1101は入力色データのL―b平面における位置を示す。この位置1101は、明度方向、すなわちL軸方向では圧縮曲線1102,1103の間にある。従ってこの場合、ステップS202では、特定すべき2つの圧縮曲線は1102,1103の2本となる。
以上のステップS201,ステップS202による処理によって、入力色データは4本の圧縮曲線(図10,11の場合、圧縮曲線1002,1003,1102,1103)に囲まれた領域内に存在することが分かる。
図21は、L色空間において、上記処理により特定した4本の圧縮曲線を示す図である。同図において1201が入力色データが示すL値の位置で、1202〜1205が特定した4本の圧縮曲線を示す。
次に、彩度方向で走査する(ステップS203)。ステップS203における処理の詳細は、ステップS301〜ステップS307である。以下、ステップS301〜ステップS307の各ステップにおける処理を説明することで、ステップS203における処理の詳細について説明する。
なお本実施形態では各圧縮曲線を事前に等分(等分に限らないが)し、各等分した位置に順にインデックスを付けているものとするが、圧縮曲線を生成する際に複数の点(例えば14点)を用いた場合には、これら14点のそれぞれにインデックスを付けるようにしても良い。本実施形態では各圧縮曲線上の14点にそれぞれインデックスを付けているものとするが、インデックスの上限値は14に限定するものではない。
ステップS203における処理では先ずi,(i+1)番目(変数i、そして後述の処理で用いる変数jは共に事前に1に初期化されている)の点の合計8点で構成される六面体(実際にはねじれの位置の関係にある点対が存在する場合があるため六面体以上)の中に入力色データが示すL値が存在するか否かを判断する(ステップS301)。
図30は、この4本の圧縮曲線において、i,(i+1)番目の点の合計8点で構成される六面体を示す図で、同図において2101,2102,2103,2104がそれぞれこの4本の圧縮曲線を示しており、2100がこの六面体を示している。2100a、2100b、2100c、2100dはそれぞれ、圧縮曲線2101,2103,2104,2102においてi番目の点を示しており、2100e、2100f、2100g、2100hはそれぞれ、圧縮曲線2101,2103,2104,2102において(i+1)番目の点を示している。これにより、i,(i+1)番目の点の合計8点で構成される六面体が構成される。従って以下の処理では、この変数iを1つずつ増やしていくことで、この六面体の位置を圧縮曲線の一端から他端まで移動させ、どの六面体内に入力色データが示すL値が存在するかを検索する。本実施形態では変数iの取る範囲は1≦i≦13となる。
図18のフローチャートに戻って、ステップS302で存在しないと判断した場合には処理をステップS303に進めると共に、変数iの値に1を加算して更新し、更新後の変数iの値が13であるか否かを判断する(ステップS303)。変数iの値が13である場合にはステップS203における処理を「限定失敗」として終了する。
一方、ステップS303において変数iの値が13ではないと判断した場合には、更新後の変数iを用いてステップS301,ステップS302における処理を行う。
また、ステップS302における判断処理において、存在すると判断した場合には処理をステップS304に進め、L値がその中に存在すると判断した六面体を構成する6つの四面体のうちj番目の四面体内に入力色データが示すL値が存在するか否かを判断する(ステップS304)。
六面体を6つの四面体に分割するのは事前に行うものであるが、この分割に係る技術については周知のものであるので、ここでの説明は省略する。また、各六面体(本実施形態では14個の六面体)内の6つの四面体には事前に1〜6のインデックスが付けられているものとする。従って、四面体に対するインデックスを1つ指定すると、各六面体から1つの四面体を特定することができ、計14個の四面体が指定されることになる。また、各六面体を構成する四面体において、同じ四面体インデックスを有する四面体同士は、四面体を構成する各頂点の対応がとれているものとする。
そして、j番目の四面体内に存在しないと判断した場合には処理をステップS305からステップS306に進め、変数jの値に1を加算して更新し、更新後の変数jの値が7であるか否かを判断する(ステップS306)。変数jの値が7である場合にはステップS203における処理を「限定失敗」として終了する。
一方、ステップS306において変数jの値が7ではないと判断した場合には、更新後の変数jを用いてステップS304,ステップS305における処理を行う。
そして、ステップS305においてj番目の四面体内に存在すると判断した場合には処理をステップS305からステップS307に進め、ステップS302で入力色データが示すL値がその中に存在すると判断した六面体が何番目のものであるのかを示す変数iの値(ステップS302で存在すると判断したときの変数iの値)と、ステップS305で入力色データが示すL値がその中に存在すると判断した四面体が何番目のものであるのかを示す変数jの値(ステップS305で存在すると判断したときの変数jの値)を記憶する。
図22は、L色空間において入力色データが示すL値の位置1301が属する四面体1302を示す図である。
そして以上のようにしてステップS203の処理が完了すると、処理をステップS204に進め、ステップS203の処理結果が「限定成功」であるか否か(換言すれば「限定失敗」ではなかったか)を判定し(ステップS204)、「限定失敗」と判定した場合には処理をステップS209に進め、ステップS201で特定した2本の圧縮曲線以外の2本の圧縮曲線、ステップS202で特定した2本の圧縮曲線以外の2本の圧縮曲線を選択し、ステップS203以降の処理を繰り返す。従ってステップS209から処理をステップS203に移行した場合には、前回ステップS201で特定した2本の圧縮曲線以外の2本の圧縮曲線、前回ステップS202で特定した2本の圧縮曲線以外の2本の圧縮曲線の合計4本の圧縮曲線を以下の処理で用いるものとする。
一方、ステップS205で「限定成功」であると判断した場合には(「限定失敗」ではないと判断した場合には)、処理をステップS205に進め、ステップS307で得られた変数jで特定される四面体を構成する各頂点に対する重み値を計算する(ステップS205)。この重み値は、この四面体の各頂点位置と、入力色データが示すL値の位置との相対的な位置関係を表すもので、例えば自頂点と入力色データが示すL値の位置との距離をこの自頂点に対する重み値とするなど、様々なものが考えられる。
次に以下の処理を行うことで、入力色データのL値を通る圧縮曲線を求める(ステップS206)。
先ずすべての六面体において、ステップS307で記憶した四面体のインデックスと同じインデックスを有する四面体を特定する。図23は、ステップS307で記憶した四面体のインデックスと同じインデックスを有する14の四面体を示す図である。
そして特定した各四面体の各頂点に対して、ステップS205で求めた重み値を対応する頂点に与える。これにより、ステップS307で記憶した四面体のインデックスと同じインデックスを有する各四面体内に点を設けることができる。この点は、四面体の各頂点との相対位置関係が、入力色データが示すL値の位置を包含する四面体の各頂点とこの位置との相対関係と同じである。
従って、これらの点を通る曲線をスプラインなどの曲線でもって求めることにより入力色データのL値を通る圧縮曲線を求める(ステップS206)。図24は、入力色データのL値を通る圧縮曲線を示す図である。
次に、実際に、入力色データに対して色圧縮処理を行うのであるが、その際、圧縮率が圧縮パラメータ設定UI104でもって設定される。ここで、実際の色圧縮処理は、入力色データを、入力色データの位置を通る圧縮曲線上を圧縮率に従った位置の色データに変換することであるが、その処理について図25を用いて説明する。
図25は圧縮曲線、圧縮率を用いて入力色データを色圧縮する処理を説明する図である。同図において1601が入力色データのL色空間における位置を示しており、1600はこの位置を通る圧縮曲線である。同図では入力色データは、第2の色再現範囲外、すなわち第1の色再現範囲内の色データである。上述の通り、この圧縮曲線1600は彩度が0の点1605から最大彩度点1604間を結ぶものであり、その途中には第2の色再現範囲の境界線1602との交点1603が存在する。よって圧縮曲線1600上において、1603〜1604の間が第2の色再現範囲内である。
ここで圧縮率は0%から100%までの間の数値を取ることができ、圧縮率が100%の場合には、入力色データは1603の位置の色データに変換され、圧縮率が0%の場合には、入力色データは1604の位置の色データに変換される。
ここで、入力色データが第2の色再現範囲内である場合(入力色データの位置1601が圧縮曲線1600上の1603〜1604の間の位置にある場合)、
(1) 現在の入力色データの位置における入力色データを圧縮後の色データとする
(2) 上述の通り圧縮率に従った位置における色データを圧縮後の色データとする
の二つの方法が考えられる。(1)の方法では第2の色再現範囲内の入力色データは忠実に再現されるが階調性は失われるため(2)の方法を採用する。(2)の方法として線形に圧縮すると全体的に元の彩度が保持されない。従って、図26に示すように、線形圧縮を元の彩度がある程度保持されるようかつ階調性が損なわれないよう非線形に圧縮することを考える。非線形圧縮する方法としては様々な方法があり、どのような方法を用いても構わないが、例えば、図26に示すように、制御点G1〜G4を設けG1,G4の位置を設定した後G1,G4における微分係数によってG2,G3を設定する。但しG1,G4の位置や各々の微分係数は可変であり、状況に応じて変化させる。
以上の手順により決定したマッピングポイントへ入力色データを移動させる。この方法としては様々な方法があり、どのような方法を用いても構わないが、圧縮曲線は三次元的に歪曲した連続点データなので例えば、圧縮曲線をパラメトリックスプラインとしてsとtをそれぞれ変数とするB−スプラインで表現することを考える。この方法は通常はs,t2変数で曲面を表現するものだが今回は曲線のためs成分を要素1つのみとして利用する。
図27は、上記色圧縮処理を行うために設定すべきパラメータを操作するためのGUI(グラフィカルユーザインターフェース)の表示例を示す図である。同図のGUIは圧縮パラメータ設定UI104に相当する。
領域402は圧縮パラメータ設定UI104を操作することで指定されたICCプロファイルより抽出した色空間情報(第1色空間および第2色空間それぞれが何であるかを示す情報など)を表示する。領域405は、領域402内に表示されているICCプロファイルを基に3D Convex Hullによって計算した色再現範囲(第1の色再現範囲、第2の色再現範囲)の多面体を描画するための領域である。
また領域402には圧縮曲線DB作成のために1次色、2次色の圧縮曲線を表示しても良い。その場合、これら圧縮曲線は各々RGB、CMYの色で描画され、アクティブの圧縮曲線は鮮やかに、非アクティブの圧縮曲線は薄い色で表示し見分けやすくする。そしてアクティブな色に関して明度・彩度の圧縮設定を領域403,404内に表示されるGUIを用いて行う。
領域403では最大彩度点およびそれ以外の最外域の点のマッピングポイントの明度を制御するための(図15を用いて説明した)制御点の位置を設定することができ、その結果を連動して領域405内に反映させる。尚、図15の説明では詳しくはふれなかったが、図28に示すように、最大彩度点の下部に対する制御点C4〜C7も領域403内で制御することができる。従って実際には図28に示すGUIが領域403内に表示される。
領域404には図26に示すようなGUIが表示され、上記制御点G1〜G4の位置を操作する為のGUI表示する領域であり、その操作の結果を連動して領域405内に反映させる。
また圧縮曲線DBの色相曲線は1次色、2次色のみの設定によりそれ以外の圧縮曲線は自動的に設定されその様子も領域405に描画するためユーザは簡単に圧縮曲線DBを作成することができる。
以上の説明の通り、本実施形態によって、色圧縮処理の際に従来に比べても比較的少ない工数で処理するため、精度よく色圧縮処理を行うことができる。また、入出力色空間の特性の違いを吸収し、様々な色空間で高精度な圧縮曲線を動的に生成することができる。
尚本実施形態ではデバイス非依存の色空間としてL色空間を用いて説明したが、この色空間の代わりとして適用可能なものはこれ以外にも考えられ、例えばLなどの他の色空間でも構わない。
[第2の実施形態]
第1の実施形態では図1に示した各部はハードウェアにより構成されているものとして説明したが、各部の機能をコンピュータのCPUに実現させる為のプログラムでもって同図の各部を構成するようにしても良い。その場合、このプログラムを実行するコンピュータは第1の実施形態と同様の処理を行うことになるので、このコンピュータは第1の実施形態に係る画像処理装置を構成することになる。
図29はこのコンピュータの基本構成を示す図である。
2001はCPUで、RAM2002やROM2003に格納されているプログラムやデータを用いてコンピュータ全体の制御を行うと共に、第1の実施形態に係る上記入り圧縮処理に係る一連の処理を実行する。
2002はRAMで、外部記憶装置2006からロードされたプログラムやデータを一時的に格納するためのエリアを備えると共に、CPU2001が各種の処理を行う際に使用するワークエリアも備える。また、後述するインターフェース2007を介して受信するプログラムやデータを一時的に格納するためのエリアも備える。
2003はROMで、ブートプログラムやコンピュータの設定データなどを格納する。
2004は操作部で、キーボードやマウスなどにより構成されており、各種の指示をCPU2001に対して入力することができ、例えば図27等に示したGUIに対して各種の入力を行う際に使用するものである。また図1では、圧縮パラメータ設定UI104としても機能するものである。
2005は表示部で、CRTや液晶画面などにより構成されており、CPU2001によって処理された結果を画像や文字などにより表示することができ、例えば図28に示したGUIを表示することができる。
2006は外部記憶装置で、ハードディスクドライブ装置などの大容量情報記憶装置であって、ここにOS(オペレーティングシステム)やCPU2001に第1の実施形態で説明した色圧縮処理に係る一連の処理を実行させるためのプログラムやデータが保存されており、これらの一部もしくは全部はCPU2001の制御により、RAM2002にロードされる。なお、このプログラムには、図1の第1の色空間の多面体部101,第2の色空間の多面体部103、圧縮曲線DB生成部106,色空間圧縮部107の各部をCPU2001に実行させるためのプログラムが含まれている。また、外部記憶装置2006にはマンセル色相曲線DB105として機能する為のエリアが備わっているが、マンセル色相曲線DB105はRAM2002内に設けるようにしても良い。また上記実施形態で登場した各種のGUIに係るプログラムやデータもこの外部記憶装置2006に保存させておき、必要に応じてCPU2001の制御によりRAM2002にロードし、CPU2001がこれを実行することにより、このコンピュータのユーザは上記各種のGUIを使用することができる。
2007はI/Fで、ここにプリンタやハードコピー装置などを接続することができ、それぞれからの色データを受信することができる。
2008は上述の各部を繋ぐバスである。
[その他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャート(機能構成)に対応するプログラムコードが格納されることになる。
本発明の第1の実施形態に係る画像処理装置110の機能構成を示す図である。 内外判定対象の点と、四面体を構成する(表裏判定で用いる)一面を示す図である。 内外判定対象の点の四面体に対する内外判定処理を説明するための図である。 1つの頂点が加わることで新たな多面体の再構成する方法を説明する図である。 (a)は、点群を示す図で、(b)は(a)に示した点群に基づいて以上説明したConvex Hull3Dにより作成した多面体を示す図である。 第1の凸多角形構成点を検索するための処理を説明する為の図である。 第1の凸多角形構成点を検索した状態を示す図である。 第1の凸多角形構成点の次の凸多角形構成点を検索した状態を示す図である。 凸多角形構成点2801の次の凸多角形構成点を検索した状態を示す図である。 (処理7)〜(処理10)により得られた凸多角形を示す図である。 点群データを並び替えた場合と並び替えない場合とでの多面体の生成過程を示す図である。 =50の場合のマンセル色相環を示す図である。 ある色相におけるC−L平面における第1の色空間の点群データ100が占める部分と第2の色空間の点群データ102が占める部分とを示す図である。 最外域点のマッピングポイントに従って決定する処理を説明する為の図である。 最大彩度点よりも上部(第1の色空間の点群データ100の部分601においてC−L平面において傾きが負の部分)に関しては一点鎖線602で示す如く湾曲させる処理を説明するための図である。 色圧縮後の彩度を決定する処理を説明するための図である。 ある色相における圧縮曲線の一例を示す図である。 入力色データが示すL値を通る圧縮曲線を、先に求めた上記複数の圧縮曲線を用いて補間処理により求める処理のフローチャートである。 ステップS201における処理を説明する図である。 ステップS202における処理を説明する図である。 色空間において、上記処理により特定した4本の圧縮曲線を示す図である。 色空間において入力色データが示すL値の位置1301が属する四面体1302を示す図である。 ステップS307で記憶した四面体のインデックスと同じインデックスを有する14の四面体を示す図である。 入力色データのL値を通る圧縮曲線を示す図である。 圧縮曲線、圧縮率を用いて入力色データを色圧縮する処理を説明する図である。 線形圧縮を元の彩度がある程度保持されるようかつ階調性が損なわれないよう非線形に圧縮する為の処理の原理について示した図である。 色圧縮処理を行うために設定すべきパラメータを操作するためのGUI(グラフィカルユーザインターフェース)の表示例を示す図である。 領域403内に表示されるGUIを示す図である。 本発明の第2の実施形態に係るコンピュータの基本構成を示す図である。 4本の圧縮曲線において、i,(i+1)番目の点の合計8点で構成される六面体を示す図である。

Claims (8)

  1. 色データ群の3次元色空間内における位置を示す点群を頂点とする多面体を形成する為の画像処理方法であって、
    前記色データ群を、それぞれの色データが示す彩度に従って並び替える並び替え工程と、
    前記並び替え工程で並び替えた色データ群を彩度の高い順に参照した場合に、先頭から所定個数分の色データ群を用いて初期多面体を形成する第1の形成工程と、
    前記初期多面体もしくは前段で形成された多面体と、前記並び替え工程で並び替えた色データ群を彩度の高い順に参照した場合に前記先頭から所定個数分を除いた色データ群とを用いて多面体を形成する第2の形成工程と
    を備えることを特徴とする画像処理方法。
  2. 更に、
    色データ群に対して前記並び替え工程で並び替えを行う前段で、当該色データ群のうち同じ色を示す色データは間引く間引き工程を備えることを特徴とする請求項1に記載の画像処理方法。
  3. 前記第1,2の形成工程における多面体の形成処理はConvex Hull3Dに従った処理であることを特徴とする請求項1又は2に記載の画像処理方法。
  4. 色データ群の3次元色空間内における位置を示す点群を頂点とする多面体を形成する為の画像処理装置であって、
    前記色データ群を、それぞれの色データが示す彩度に従って並び替える並び替え手段と、
    前記並び替え手段によって並び替えた色データ群を彩度の高い順に参照した場合に、先頭から所定個数分の色データ群を用いて初期多面体を形成する第1の形成手段と、
    前記初期多面体もしくは前段で形成された多面体と、前記並び替え手段によって並び替えた色データ群を彩度の高い順に参照した場合に前記先頭から所定個数分を除いた色データ群とを用いて多面体を形成する第2の形成手段と
    を備えることを特徴とする画像処理装置。
  5. コンピュータに請求項1乃至3の何れか1項に記載の画像処理方法を実行させることを特徴とするプログラム。
  6. 請求項5に記載のプログラムを格納することを特徴とする、コンピュータ読み取り可能な記憶媒体。
  7. 色データ群の色域を示す多面体を形成する為の画像処理方法であって、
    前記色データ群から、複数の色相のそれぞれにおける高彩度データを抽出する抽出工程と、
    前記抽出された高彩度データを用いて多面体を形成する形成工程と、
    前記形成工程で形成された多面体を初期多面体として、前記色データ群から前記色データ群の色域を示す多面体を形成する工程と
    を有することを特徴とする情報処理方法。
  8. コンベックスハルを用いて、前記色データ群から前記色データ群の色域を示す多面体を形成することを特徴とする請求項7に記載の情報処理方法。
JP2004170447A 2004-06-08 2004-06-08 画像処理方法、画像処理装置、情報処理方法 Withdrawn JP2005354229A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004170447A JP2005354229A (ja) 2004-06-08 2004-06-08 画像処理方法、画像処理装置、情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004170447A JP2005354229A (ja) 2004-06-08 2004-06-08 画像処理方法、画像処理装置、情報処理方法

Publications (1)

Publication Number Publication Date
JP2005354229A true JP2005354229A (ja) 2005-12-22

Family

ID=35588334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004170447A Withdrawn JP2005354229A (ja) 2004-06-08 2004-06-08 画像処理方法、画像処理装置、情報処理方法

Country Status (1)

Country Link
JP (1) JP2005354229A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008003942A (ja) * 2006-06-23 2008-01-10 Fujitsu Ltd 色調整用プログラムおよび色調整装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008003942A (ja) * 2006-06-23 2008-01-10 Fujitsu Ltd 色調整用プログラムおよび色調整装置

Similar Documents

Publication Publication Date Title
US5077608A (en) Video effects system able to intersect a 3-D image with a 2-D image
US7333237B2 (en) Color adjustment method, color adjustment apparatus, color conversion definition editing apparatus, image processing apparatus, program, and storage medium
US20080246760A1 (en) Method and apparatus for mapping texture onto 3-dimensional object model
JP3830747B2 (ja) 色再現域圧縮方法および色再現域圧縮装置
US20060152579A1 (en) Stereoscopic imaging system
US11908107B2 (en) Method and apparatus for presenting image for virtual reality device, device and non-transitory computer-readable storage medium
US8149483B2 (en) Color gamut data creating device
JP2014519640A (ja) グラフィックスハードウェアにおけるテクスチャリング
JP5060830B2 (ja) 遠近補正を行う3次元グラフィック処理方法及び装置
JP2006345187A (ja) 色処理方法およびその装置
JP4306936B2 (ja) 色処理装置および方法
JP4396479B2 (ja) 画像処理装置における補正処理方法および画像処理装置。
US10062191B2 (en) System and method for rendering points without gaps
JP2000253269A (ja) カラー画像処理方法およびカラー画像処理装置
JP2005354229A (ja) 画像処理方法、画像処理装置、情報処理方法
CN104981863A (zh) 用于色彩渲染到二进制高维输出设备的方法和装置
JP2005354227A (ja) 画像処理方法、画像処理装置
CN115035231A (zh) 阴影烘焙方法、装置、电子设备和存储介质
JP2005354228A (ja) 画像処理方法、画像処理装置
JP2001094799A (ja) 画像処理方法、装置および記録媒体
JP4423016B2 (ja) 画像処理装置、画像処理方法、記憶媒体、プログラム
JPH09284578A (ja) 画像処理装置
JP2898569B2 (ja) コンピュータゲーム開発用ビデオアクセラレータボード
JP2009165030A (ja) 多面体作成方法、プログラム、及びコンピュータ読み取り可能な記録媒体
JP2006127368A (ja) 奥行き値によるガンマ補正機能を備えたグラフィックス描画装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070904