JP6237291B2 - 情報処理装置、色補間方法、プログラム、及びテーブル生成方法 - Google Patents

情報処理装置、色補間方法、プログラム、及びテーブル生成方法 Download PDF

Info

Publication number
JP6237291B2
JP6237291B2 JP2014020948A JP2014020948A JP6237291B2 JP 6237291 B2 JP6237291 B2 JP 6237291B2 JP 2014020948 A JP2014020948 A JP 2014020948A JP 2014020948 A JP2014020948 A JP 2014020948A JP 6237291 B2 JP6237291 B2 JP 6237291B2
Authority
JP
Japan
Prior art keywords
solid
color
input
unit
information
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.)
Expired - Fee Related
Application number
JP2014020948A
Other languages
English (en)
Other versions
JP2015149581A (ja
Inventor
明洋 皆川
明洋 皆川
康正 岩村
康正 岩村
小林 弘幸
弘幸 小林
悟 牛嶋
悟 牛嶋
上原 祐介
祐介 上原
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014020948A priority Critical patent/JP6237291B2/ja
Priority to US14/601,447 priority patent/US9407791B2/en
Priority to CN201510058170.XA priority patent/CN104836995B/zh
Publication of JP2015149581A publication Critical patent/JP2015149581A/ja
Application granted granted Critical
Publication of JP6237291B2 publication Critical patent/JP6237291B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6016Conversion to subtractive colour signals
    • H04N1/6019Conversion to subtractive colour signals using look-up tables

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Color Image Communication Systems (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)

Description

本発明は、情報処理装置、色補間方法、プログラム、及びテーブル生成方法に関する。
撮影した画像の色合いが本来の色合いからずれている場合に、画像中の各画素が有する色を本来の色へと変換する処理が行われる。この処理は色補正と呼ばれる。色補正を実現する方法としては、例えば、既知の色(以下、基準色)を含むサンプルを被写体と同時に撮影し、基準色の変化に基づいて各画素の色を本来の色へと変換する方法がある。
但し、画像の各画素が取り得る色の数は膨大であり、全ての取り得る色を基準色に設定し、各基準色について本来の色への変換を予め与えることは難しい。そのため、上記の方法を適用する場合、予め与えられた基準色から各画素の色(以下、入力色)を求める補間処理により、基準色に対する変換から入力色に対する変換を得る処理が行われ、得られた入力色に対する変換に基づいて色補正が行われる。
例えば、体積補間により入力色に対する変換を得る方法がある。この方法では、色空間内で基準色を頂点とする立体を設定し、入力色を内包する立体の頂点となる基準色の変換を利用して入力色の変換が求められる。この方法を適用する場合、色補正の精度は、補間処理に用いる基準色と入力色との距離が近いほど良くなる。そのため、色補正の精度を向上させる方法として、色空間に多くの立体を設定できるように、多数の基準色を撮影する方法が提案されている。
なお、3次元の色空間内に基準色を格子状に配置し、その基準色を用いて色補正を行う方法が提案されている。この方法では、格子を成す各立方体の頂点に位置する基準点が補間処理に利用される。また、入力色を内包する四面体を特定し、特定した四面体の内部を詳細に測定するためのチャートを印刷し、印刷したチャートの測色結果に基づいて入力色の補正を行う方法が提案されている。また、体積補間を用いず、入力色の近傍に位置する基準点を用いて入力色の変換を決める方法が提案されている。また、基準色を含む撮影画像から基準色の位置を検出し、画像から基準色の色を抽出する方法も提案されている。
特開2000−48179号公報 特開平2−23776号公報 特開2010−45560号公報 特開2003−125224号公報 WO2013/145295A1
色空間内に基準色を格子状に配置する方法の場合、色空間における入力色の座標から、入力色を内包する立方体を一意に特定することができる。一方、格子状に基準色が配置されていない場合、基準色を頂点とする立体の選び方に自由度が生じる。この場合、補間処理に利用する立体を予め設定しておき、入力色を内包する立体の頂点を示す基準色を用いて色補正が行われる。
色補正の精度は、立体の選び方に依存する。また、入力色を内包する好適な立体の頂点(基準色)を決める処理は負荷が高い。例えば、入力色を内包する四面体を考えた場合、基準色がN個あると、基準色の組み合わせ数はN4のオーダーとなる。このような多数の組み合わせの中から補間処理に好適な組み合わせを探索する処理は負荷が高い。そのため、画像に含まれる全ての入力色について補間処理を行うには長い時間がかかる。
そこで、1つの側面によれば、本発明の目的は、色空間に任意に設定された基準色に基づく入力色の補間処理を高速に実行することが可能な情報処理装置、色補間方法、プログラム、及びテーブル生成方法を提供することにある。
本開示の1つの側面によれば、色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報を含むテーブルを記憶する記憶部と、テーブルを参照して入力色を含む立体を特定し、特定した立体の頂点に対応する基準色を用いて入力色の補間処理を実行する演算部と、を有する、情報処理装置が提供される。
また、本開示の他の1つの側面によれば、色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報を含むテーブルを記憶する記憶部から、テーブルを読み出すことが可能なコンピュータが、テーブルを参照して入力色を含む立体を特定し、特定した立体の頂点に対応する基準色を用いて入力色の補間処理を実行する色補間方法が提供される。
また、本開示の他の1つの側面によれば、色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報を含むテーブルを記憶する記憶部から、テーブルを読み出すことが可能なコンピュータに、テーブルを参照して入力色を含む立体を特定し、特定した立体の頂点に対応する基準色を用いて入力色の補間処理を実行する処理を実行させる、プログラムが提供される。
また、本開示の他の1つの側面によれば、色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部と、基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した複数の立体のそれぞれが占める領域の情報を含むテーブルを生成する演算部と、を有する、情報処理装置が提供される。
また、本開示の他の1つの側面によれば、色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部から、位置を示す情報を読み出すことが可能なコンピュータが、基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した複数の立体のそれぞれが占める領域の情報を含むテーブルを生成するテーブル生成方法が提供される。
また、本開示の他の1つの側面によれば、色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部から、位置を示す情報を読み出すことが可能なコンピュータに、基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した複数の立体のそれぞれが占める領域の情報を含むテーブルを生成する処理を実行させる、プログラムが提供される。
本発明によれば、色空間に任意に設定された基準色に基づく入力色の補間処理を高速に実行することが可能になる。
第1実施形態に係る情報処理装置の一例を示した図である。 第2実施形態に係る画像処理装置のハードウェアの一例を示した図である。 第2実施形態に係る画像処理装置が有する機能の一例を示したブロック図である。 第2実施形態に係るテーブル作成部が有する機能の一例を示したブロック図である。 第2実施形態に係る基準色の設定例を示した図である。 第2実施形態に係る立体番号リストの一例を示した図である。 第2実施形態に係る座標リストの一例を示した図である。 第2実施形態に係る頂点リストの一例を示した図である。 第2実施形態に係る立体除去処理について説明するための図である。 第2実施形態に係るマップ作成処理について説明するための図である。 第2実施形態に係るテーブル作成処理の流れを示したフロー図である。 第2実施形態に係る立体候補算出処理の流れを示したフロー図である。 第2実施形態に係る評価処理及び立体決定処理の流れを示したフロー図である。 第2実施形態に係る立体除去処理の流れを示したフロー図である。 第2実施形態に係る画像補正部が有する機能の一例を示したブロック図である。 第2実施形態に係る立体候補検索処理について説明するための図である。 第2実施形態に係る変換処理について説明するための第1の図である。 第2実施形態に係る変換処理について説明するための第2の図である。 第2実施形態に係る画像補正処理の流れを示したフロー図である。 第2実施形態に係る立体確定処理の流れを示したフロー図である。 第2実施形態の一変形例(変形例#1)について説明するための図である。 第2実施形態の一変形例(変形例#1)に係る立体確定処理の流れを示したフロー図である。 第2実施形態の一変形例(変形例#2)に係る評価処理及び立体決定処理の流れを示したフロー図である。 第2実施形態の一変形例(変形例#2)に係る立体確定処理の流れを示したフロー図である。 第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式の例について説明するための図である。 第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第1の図である。 第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第2の図である。 第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第3の図である。 第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第4の図である。 第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第5の図である。
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
<1.第1実施形態>
図1を参照しながら、第1実施形態について説明する。なお、図1は、第1実施形態に係る情報処理装置の一例を示した図である。また、図1に示した情報処理装置10は、第1実施形態に係る情報処理装置の一例である。
図1に示すように、情報処理装置10は、記憶部11及び演算部12を有する。
記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置、或いは、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置である。演算部12は、CPU(Central Processing Unit)やDSP(Digital Signal Processor)などのプロセッサである。但し、演算部12は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの電子回路であってもよい。演算部12は、例えば、記憶部11又は他のメモリが記憶するプログラムを実行する。
記憶部11は、テーブルTBLを記憶する。テーブルTBLは、複数の立体S1、S2のそれぞれが占める領域の情報を含む。立体S1は、色空間に設定された基準色P1、P2、P3を頂点に含む。立体S2は、色空間に設定された基準色P1、P3、P4を頂点に含む。立体S1、S2のそれぞれは、辺の長さが短いほど大きな値をとる評価値が設定値より大きい。また、立体S1、S2は、互いに交わらないように配置されている。
図1の例では、色空間に4つの基準色P1、P2、P3、P4が設定されている。なお、ここではR(赤色)軸、G(緑色)軸、B(青色)軸で規定される3次元の色空間を想定しているが、表現の都合上、図1ではB軸の記載、及び立体S1、S2がそれぞれ有する頂点の1つを省略している。
テーブルTBLに含まれる2つの表において、Rの欄に記載された値はR軸の座標値(以下、R座標値)を表し、Gの欄に記載された値はG軸の座標値(以下、G座標値)を表す。つまり、図1に例示したテーブルTBLは、R座標値と立体を特定する立体番号(立体S1の立体番号は1、立体S2の立体番号は2)を対応付けるマップ、及びG座標値と立体を特定する立体番号とを対応付けるマップを含む。これら2つのマップは、領域の情報の一例である。テーブルTBLに含まれるマップの数は、例えば、色空間の次元数より少ない数に設定される。
上記の評価値としては、例えば、立体が有する全ての辺の長さを合計した値や辺の長さの平均値などを用いることができる。また、立体が有する各辺の長さを評価値とし、辺毎の評価値が設定値より大きい立体に関する情報がテーブルTBLに含まれていてもよい。また、上記の設定値としては、例えば、ユーザが予め設定した値や、実験に基づく評価により色補正の精度が所望のレベルに達する値を用いることができる。
演算部12は、テーブルTBLを参照して入力色PINを含む立体S1を特定する。また、演算部12は、特定した立体S1の頂点に対応する基準色P1、P2、P3を用いて入力色PINの補間処理を実行する。
例えば、P1の座標が(50,50,…)、P2の座標が(150,50,…)、P3の座標が(100,100,…)、P4の座標が(50,200,…)であり、PINの座標が(110,60,…)である場合について考える。但し、図1ではB軸を省略しているため、B軸の座標値を「…」と表現している。
この場合、演算部12は、テーブルTBLを参照し、PINのR座標値(110)に対応する立体番号の集合{1}、及びPINのG座標値(60)に対応する立体番号の集合{1,2}を抽出する。さらに、演算部12は、抽出した立体番号の積集合({1}∧{1,2}={1})を求める。また、演算部12は、入力色PINを含む立体として、求めた積集合が表す立体(この例ではS1)を得る。そして、演算部12は、立体S1の頂点に対応する基準色P1、P2、P3を用いて補間処理を実行する。
上記のように、辺の長さに基づく評価値により設定された立体を補間処理に用いることで、補間処理に基づく色補正を精度良く行うことができる。また、補間処理に好適な立体の情報をテーブルTBLとして保持しているため、入力色を含む立体を容易に特定することが可能になり、補間処理を高速に実行することができる。
以上、第1実施形態について説明した。
<2.第2実施形態>
次に、第2実施形態について説明する。第2実施形態は、色補正に用いる基準点の組み合わせ(立体)を決めるためのマップを生成し、そのマップを利用して高速に入力色の色補正を行う方法に関する。以下、この方法を実現可能な画像処理装置のハードウェア、機能、及び動作などについて説明する。
[2−1.ハードウェア]
図2を参照しながら、画像処理装置100のハードウェアについて説明する。図2に示した画像処理装置100は、第2実施形態に係る画像処理装置の一例である。なお、図2は、第2実施形態に係る画像処理装置のハードウェアの一例を示した図である。
図2に示すように、画像処理装置100は、CPU101、及びメモリ102を有する。CPU101は、DSPなどのプロセッサであってもよいし、ASICやFPGAなどの電子回路であってもよい。メモリ102は、RAMなどの揮発性記憶装置、或いは、HDDやフラッシュメモリなどの不揮発性記憶装置である。CPU101は、例えば、メモリ102又は後述する記録媒体51に記憶されたプログラムを実行する。
画像処理装置100には、例えば、記録媒体51、撮像装置52、カラーチャート検出装置53が接続される。記録媒体51は、例えば、磁気記録媒体、光記録媒体、光磁気記録媒体、半導体メモリなどの可搬記録媒体である。記録媒体51に記録されたプログラムやデータは、CPU101により読み込まれる。
撮像装置52は、例えば、デジタルカメラやカメラ機能を搭載した情報端末などである。撮像装置52により撮像された画像(以下、入力画像)は、画像処理装置100に入力され、CPU101を介してメモリ102に格納される。なお、ここでは説明の都合上、撮像装置52から入力画像がメモリ102に格納される例を紹介したが、例えば、外部記憶装置からCPU101が入力画像を読み出してメモリ102に格納する仕組みに変形することも可能である。
カラーチャート検出装置53は、基準色を配置したカラーチャートを含む入力画像から基準色の位置を検出し、入力画像から基準色の情報を抽出する装置である。カラーチャート検出装置53の機能は、例えば、パーソナルコンピュータや情報端末などの情報処理装置を用いて実現可能である。入力画像から抽出された基準色の情報は、CPU101を介してメモリ102に格納される。なお、入力画像に配置するカラーチャートの位置を予め決めておけば、カラーチャート検出装置53を省略することができる。
画像処理装置100が有する機能は、1台又は複数台のコンピュータにより実現可能である。例えば、パーソナルコンピュータやサーバ装置などのコンピュータと、携帯電話やスマートフォンなどのコンピュータとを組み合わせたシステムにより画像処理装置100の機能を実現することができる。また、撮像装置52及びカラーチャート検出装置53の少なくとも1つと画像処理装置100とを一体に形成することも可能である。以下、図2に例示した画像処理装置100を例に説明を進める。
以上、画像処理装置100のハードウェアについて説明した。
[2−2.画像処理装置の機能]
次に、図3を参照しながら、画像処理装置100の機能について説明する。なお、図3は、第2実施形態に係る画像処理装置が有する機能の一例を示したブロック図である。
図3に示すように、画像処理装置100は、テーブル作成部111、及び画像補正部112を有する。テーブル作成部111、及び画像補正部112の機能は、上述したCPU101及びメモリ102を用いて実現される。
テーブル作成部111は、色空間に設定された基準色の集合から、入力色の補間処理に利用する複数のマップを含むテーブルを作成する。テーブルには、任意の入力色に対する補間処理に好適な基準色の組み合わせを示す情報が含まれる。なお、色空間における基準色の組み合わせは、基準色を頂点とする立体で表現される。以下、説明の都合上、立体の形状として4つの基準色を頂点とする三角錐(凸包の一種)を想定する。
画像補正部112は、テーブル作成部111が作成したテーブルに含まれるマップを参照して入力色を内包する三角錐を特定し、特定した三角錐の頂点に対応する4つの基準色に基づいて入力色の色補正を行う。このとき、画像補正部112は、補間処理により基準色に対する変換の情報を入力色に対する変換の情報へと置き換え、置き換えた情報に基づいて入力色を本来の色へと変換する。なお、基準色に対する変換の情報は、カラーチャートの画像から抽出した基準色と、その基準色に対して予め設定された色との間の変換式を与える情報である。
以下、テーブル作成部111及び画像補正部112について、さらに説明する。
(2−2−1.テーブル作成部について)
まず、テーブル作成部111について説明する。
(機能ブロック)
図4を参照しながら、テーブル作成部111の機能について、さらに説明する。なお、説明の中で、図5〜図10を適宜参照する。
図4は、第2実施形態に係るテーブル作成部が有する機能の一例を示したブロック図である。図5は、第2実施形態に係る基準色の設定例を示した図である。図6は、第2実施形態に係る立体番号リストの一例を示した図である。
図7は、第2実施形態に係る座標リストの一例を示した図である。図8は、第2実施形態に係る頂点リストの一例を示した図である。図9は、第2実施形態に係る立体除去処理について説明するための図である。図10は、第2実施形態に係るマップ作成処理について説明するための図である。
図4に示すように、テーブル作成部111は、立体候補算出部131、評価部132、立体決定部133、立体除去部134、及びマップ作成部135を有する。
立体候補算出部131は、色空間に含まれる全ての座標のそれぞれを内包する立体を抽出し、抽出した立体を立体候補に設定する。なお、色空間は、例えば、R座標値が0から255、G座標値が0から255、B座標値が0から255の範囲に設定される。評価部132は、立体候補算出部131により設定された立体候補のそれぞれに対し、立体候補が有する辺の長さに基づく評価値を与える。
立体決定部133は、評価部132が立体候補に与えた評価値に基づいてマップに記載する立体を決定する。立体除去部134は、立体決定部133が決定した立体に重複する立体候補を除去する。立体決定部133及び立体除去部134は、既に決定した立体を除去せずに残しつつ、立体決定部133により決定された立体で色空間が充填されるまで、立体の決定及び立体候補の除去を繰り返し実行する。色空間が充填された後、マップ作成部135は、色空間の各座標と、各座標を内包する立体決定部133により決定された立体とを対応付けるルックアップテーブル(マップ)を作成する。
ここで、図5に示した色空間及び基準色の例を参照しながら、テーブル作成部111の機能について、さらに説明する。
なお、R軸、G軸、B軸で規定される3次元の色空間を想定して説明を進めるが、表現の都合上、図5に例示した色空間はB(青色)軸を省略して記載されている。さらに、色空間内の立体は、3つの基準色を頂点とする三角形で表現されている。こうした表現上の制約に伴い、以下の説明においては、B座標値を「…」などの表記を用いて省略する場合がある。また、色空間内にN個の基準色が配置されているものとする。
図5の例では、7個の基準色P1、…、P7が例示されている。また、P1、P2、P4を頂点とする立体、P1、P4、P7を頂点とする立体、P1、P3、P6を頂点とする立体が例示されている。このように、基準色の組み合わせ方により様々な立体を構築することができる。そのため、ある入力色が与えられた場合に、その入力色を内包する立体が多数得られる可能性がある。立体候補算出部131は、色空間に含まれる全ての座標のそれぞれを入力色と仮定し、入力色を内包する立体を立体候補として抽出する。
ここで、N個の基準色をそれぞれ{(rn,gn,bn)、n=1,…,N}と表現する。但し、rnは、n番目の基準色PnのR座標値を示す。gnは、n番目の基準色PnのG座標値を示す。bnは、n番目の基準色PnのB座標値を示す。また、入力色を(rm,gm,bm)と表現する。3次元の色空間を考えた場合、入力色を内包する最小の立体は、4つの頂点を有する三角錐である。従って、以下では立体の形状として三角錐を考える。
(立体候補算出部131)
立体候補算出部131は、立体に入力色が内包されるか否かを判定する際、立体の頂点を成す4つの基準色に対する重心(rg,gg,bg)を計算する。入力色が立体に内包されている場合、立体の面で分割される半空間の一方に立体の重心と入力色とが共に存在する。この性質を利用し、立体候補算出部131は、立体の重心から立体の各面に向かう向きと、入力色から立体の各面に向かう向きとが一致するか否かを判定し、その判定結果に基づいて立体に入力色が内包されているか否かを判定する。これら2つの向きが一致する場合、立体候補算出部131は、立体に入力色が内包されていると判定する。
例えば、下記の式(1)で表現される平面の方程式を考える。但し、4つの係数k1、…、k4は、下記の式(2)〜式(5)のように与えられる。(rn1,gn1,bn1)、(rn2,gn2,bn2)、(rn3,gn3,bn3)は、平面を規定する3つの頂点である。
三角錐が有する4つの頂点から3つの頂点を選択する組み合わせは4通りある。立体候補算出部131は、これら4通りの組み合わせのそれぞれについて、(rg,gg,bg)を(r,g,b)に代入して得られるJの符号と、(rm,gm,bm)を(r,g,b)に代入して得られるJの符号とが一致するか否かを判定する。
全ての組み合わせについてJの符号が一致した場合、立体候補算出部131は、立体に入力色(rm,gm,bm)が内包されていると判定する。一方、少なくとも1つの組み合わせについてJの符号が一致しない場合、立体候補算出部131は、立体に入力色(rm,gm,bm)が内包されていないと判定する。立体候補算出部131は、この判定処理を基準色の全組み合わせについて実行する。
J=k1・r+k2・g+k3・b+k4
…(1)
1=(gn2−gn1)・(bn3−bn1)−(gn3−gn1)・(bn2−bn1
…(2)
2=(bn2−bn1)・(rn3−rn1)−(bn3−bn1)・(rn2−rn1
…(3)
3=(rn2−rn1)・(gn3−gn1)−(rn3−rn1)・(gn2−gn1
…(4)
4=−(k1・rn1+k2・gn1+k3・bn1
…(5)
図5に示した例の場合、立体候補算出部131は、上記の判定処理の結果として、図6に示すような立体番号リストを作成することができる。立体番号リストは、色空間内の座標と、その座標を内包する立体の立体番号とを対応付けたテーブルである。
立体候補算出部131は、上記の判定処理により立体に内包される入力色の座標と、その入力色を内包する立体の立体番号とを対応付けて立体番号リストに記載する。このとき、同じ入力色を内包する立体が複数存在する場合には、図6に示すように、同じ座標に対して複数の立体番号が対応付けられる。
また、立体候補算出部131は、立体番号リストに記載した立体番号の立体が有する頂点と、その頂点の座標とを対応付ける座標リスト(図7を参照)を作成する。座標リストは、基準色を特定する頂点番号と、色空間における基準色の座標値とを対応付けたテーブルである。
また、立体候補算出部131は、立体番号リストに記載した立体番号と、その立体番号の立体が有する頂点とを対応付ける頂点リスト(図8を参照)を作成する。頂点リストは、立体を特定する立体番号と、立体の頂点を特定する4つの頂点番号とを対応付けたテーブルである。なお、立体番号リスト、座標リスト、及び頂点リストは、メモリ102に格納される。これらのリストを参照することにより、立体が有する頂点の座標や、ある座標を内包する立体を容易に特定することが可能になる。
(評価部132)
ここで、立体番号をsと表記し、立体番号sの立体が有する4つの頂点を示す頂点番号を{ns1,ns2,ns3,ns4}と表記する。評価部132は、立体番号リストに記載された立体番号の立体毎に評価値を計算する。この評価値は、立体が小さいほど良い評価(小さい値)となる。なお、ここで言う小さい立体とは、辺の長さが短い立体を意味する。つまり、同じ体積の立体でも、辺の長さが短い立体ほど評価値が小さくなる。立体番号sの立体に対する評価値Jsは、例えば、下記の式(6)により与えられる。
なお、評価値Jsとして、下記の式(7)を用いてもよい。下記の式(7)に示した評価値Jsは、色空間の全ての座標に対して、上記の式(6)に示した評価値Jsを足し合わせたものである。このような方法により、評価部132は、立体番号リストに記載された立体番号の立体毎に評価値Jsを計算する。
Figure 0006237291
Figure 0006237291
(立体決定部133、立体除去部134)
評価部132により計算された評価値Jsは、立体決定部133に入力される。立体決定部133は、立体番号リストに記載された座標毎に、評価値Jsが最も小さい値となる立体を抽出する。立体決定部133は、抽出した立体の立体番号sminを決定立体番号リストに記載する。決定立体番号リストは、評価部132が抽出した立体の立体番号sminを記載したリストである。決定立体番号リストは、メモリ102に格納される。
例えば、図6に例示した立体番号リストの場合、座標(60,50,…)に2つの立体番号1、2が対応付けられている。この場合、評価部132は、立体番号1の立体に対する評価値J1と、立体番号2の立体に対する評価値J2とを比較し、より小さい値に対応する立体の立体番号を決定立体番号リストに記載する。例えば、評価値J1が評価値J2より小さい場合(smin=1の場合)、立体決定部133は、立体番号1を決定立体番号リストに記載する。
立体番号sminが決定立体番号リストに記載されると、立体除去部134は、立体番号sminの立体と重複する立体の立体番号を立体番号リストから除去する。さらに、立体除去部134は、立体番号リストから除去した立体番号を立体除去リストに記載する。例えば、smin=1の場合、立体除去部134は、図9に示すように、立体番号1の立体と同じ座標を内包する立体(重複する立体)の立体番号3を立体番号リストから除去する。さらに、立体除去部134は、図9に示すように、立体番号sminを立体番号リストから除去する。
(マップ作成部135)
立体決定部133及び立体除去部134による処理を繰り返すことで、色空間を充填する好適な立体の組み合わせが決定される。マップ作成部135は、決定立体番号リストに記載された立体番号に基づき、任意の入力色を補間する際に用いる基準色の組み合わせを特定するためのマップ(ルックアップテーブル)を作成する。
マップは、色空間の座標軸毎に作成される。例えば、マップ作成部135は、各R座標値と立体番号とを対応付けるマップMPR、各G座標値と立体番号とを対応付けるマップMPG、及び各B座標値と立体番号とを対応付けるマップMPBを作成する。
一例として、マップMPRを作成する場合について考える。この場合、マップ作成部135は、立体番号リストを参照し、R座標値1つ1つに対応する立体番号を抽出する。
例えば、R座標値50(R=50)に立体番号1、2が対応する場合、マップ作成部135は、図10に示すように、そのR座標値(50)と立体番号1、2とを対応付ける記載をマップMPRに追加する。このとき、マップ作成部135は、立体番号1、2に対応するG座標値及びB座標値を考慮しない。他のR座標値についても同様である。また、マップ作成部135は、同様の方法でマップMPG、MPBを作成する。マップMPR、MPG、MPBを含むテーブルTBLは、画像補正部112に入力される。
上記の作成処理において、マップ作成部135は、例えば、立体番号リストに記載されている立体番号の立体毎に、立体が占める領域について各座標値の最大及び最小を抽出し、抽出した最大と最小との間の範囲に属する各座標値と立体番号とを対応付ける。なお、これらの最大と最小とは立体が有する頂点の座標値のいずれかである。従って、立体が有する4つの頂点の座標値を比較することでR座標値の最大及び最小、G座標値の最大及び最小、B座標値の最大及び最小を容易に取得することができる。
以上、テーブル作成部111の機能について説明した。
(全体的な処理の流れ)
次に、図11を参照しながら、テーブル作成部111が実行する処理の流れについて説明する。なお、図11は、第2実施形態に係るテーブル作成処理の流れを示したフロー図である。
図11に示すように、テーブル作成部111は、立体候補算出部131の機能により、色空間の各座標を内包する立体を立体候補として抽出し、抽出した立体候補の立体番号と座標とを対応付ける情報を立体番号リストに記載する(S101)。
次いで、テーブル作成部111は、評価部132の機能により、立体番号リストに記載されている立体番号sの立体に対して上記の式(6)又は式(7)で表現される評価値Jsを計算する(S102)。
次いで、テーブル作成部111は、立体決定部133の機能により、同じ座標を内包する立体候補の中から評価値Jsが最小となる立体候補を決定し、決定した立体候補の立体番号を決定立体番号リストに記載する(S103)。
次いで、テーブル作成部111は、立体除去部134の機能により、決定立体番号リストに記載された立体番号の立体と重複する立体を抽出し、抽出した立体の立体番号を立体番号リストから除去する(S104)。また、テーブル作成部111は、立体除去部134の機能により、立体番号リストから除去した立体番号を立体除去リストに記載する。また、テーブル作成部111は、立体除去部134の機能により、決定立体番号リストに記載された立体番号を立体番号リストから除去する。
次いで、テーブル作成部111は、S104の処理後に立体候補が残るか否かを判定する(S105)。立体候補が残る場合、処理はS103へと進む。一方、立体候補が残らない場合、処理はS106へと進む。処理がS106へと進んだ場合、テーブル作成部111は、マップ作成部135の機能により、決定立体番号リストに基づいてマップを作成する(S106)。S106で作成されたマップは、画像補正部112に入力される。また、S106の処理が完了すると、図11に示した一連の処理は終了する。
以上、テーブル作成部111が実行する全体的な処理の流れについて説明した。
(立体候補算出について)
ここで、図12を参照しながら、S101の処理について、さらに説明する。なお、図12は、第2実施形態に係る立体候補算出処理の流れを示したフロー図である。また、図12に示した処理は、立体候補算出部131により実行される。
図12に示すように、立体候補算出部131は、基準色の組み合わせに基づいて立体番号を設定する(S111)。例えば、立体候補算出部131は、4つの基準色の組み合わせを順次選択し、選択した基準色を頂点とする立体に対して順番に立体番号を設定する。また、S111の処理において、立体候補算出部131は、頂点の基準色を特定する頂点番号を用いて、立体番号と頂点とを対応付ける頂点リストを生成する。
次いで、立体候補算出部131は、入力色を指定するためのパラメータ(入力色パラメータ(r,g,b))を(0,0,0)に設定する(S112)。次いで、立体候補算出部131は、立体番号を指定するためのパラメータ(立体番号パラメータs)を0に設定する。次いで、立体候補算出部131は、立体番号sの立体が有する頂点を頂点リストから抽出する(S114)。
次いで、立体候補算出部131は、立体番号sの立体が入力色(r、g、b)を内包するか否かを判定する(S115)。立体番号sの立体が入力色(r、g、b)を内包する場合、処理はS116へと進む。一方、立体番号sの立体が入力色(r、g、b)を内包しない場合、処理はS117へと進む。処理がS116へと進んだ場合、立体候補算出部131は、立体番号sと入力色(r,g,b)の組を立体番号リストに追加する(S116)。S116の処理が完了すると、処理はS117へと進む。
処理がS117へと進んだ場合、立体候補算出部131は、sが立体番号の最大値であるか否かを判定する(S117)。sが立体番号の最大値である場合、処理はS119へと進む。一方、sが立体番号の最大値でない場合、処理はS118へと進む。処理がS118へと進んだ場合、立体候補算出部131は、sを1増加させる更新処理を実行する(S118)。S118の処理が完了すると、処理はS114へと進む。
処理がS119へと進んだ場合、立体候補算出部131は、(r,g,b)が入力色の最後であるか否かを判定する(S119)。(r,g,b)が入力色の最後である場合、図12に示した一連の処理は終了する。一方、(r,g,b)が入力色の最後でない場合、処理はS120へと進む。
処理がS120へと進んだ場合、立体候補算出部131は、(r,g,b)を次の座標へと変更する更新処理を実行する(S120)。例えば、色空間内を走査する方向が予め設定されている場合、その走査方向に沿って隣り合う座標を指定するように(r,g,b)の値が変更される。S120の処理が完了すると、処理はS113へと進む。
以上、S101の処理について説明した。
(評価・立体決定について)
次に、図13を参照しながら、S102、S103の処理について、さらに説明する。なお、図13は、第2実施形態に係る評価処理及び立体決定処理の流れを示したフロー図である。図13に示した処理は、評価部132、立体決定部133により実行される。
図13に示すように、評価部132は、評価値が最小となる立体番号を特定するための最小立体番号パラメータsminを0に設定する(S131)。次いで、評価部132は、最小の評価値を計算するために用いる最小評価値パラメータJminを0に設定する(S132)。次いで、評価部132は、立体番号を指定するための立体番号パラメータsを0に設定する(S133)。なお、S131、S132、S133の処理は、順序を入れ替えることが可能である。
次いで、評価部132は、立体番号sの立体に対する評価値Jsを計算する(S134)。例えば、評価部132は、上記の式(6)又は式(7)に基づいて評価値Jsを計算する。次いで、立体決定部133は、立体番号sが立体番号リストにあるか否かを判定する(S135)。立体番号sが立体番号リストにある場合、処理はS138へと進む。一方、立体番号sが立体番号リストにない場合、処理はS136へと進む。
処理がS136へと進んだ場合、立体決定部133は、最小評価値パラメータJminと評価値Jsとを比較し、最小評価値パラメータJminが評価値Jsよりも大きいか否かを判定する(S136)。最小評価値パラメータJminが評価値Jsよりも大きい場合、処理はS137へと進む。一方、最小評価値パラメータJminが評価値Jsよりも大きくない場合、処理はS138へと進む。
処理がS137へと進んだ場合、立体決定部133は、最小評価値パラメータJminをJsに設定し、最小立体番号パラメータsminをsに設定する(S137)。S137の処理が完了すると、処理はS138へと進む。処理がS138に進んだ場合、立体決定部133は、sが立体番号の最大値か否かを判定する(S138)。sが立体番号の最大値である場合、処理はS140へと進む。一方、sが立体番号の最大値でない場合、処理はS139へと進む。
処理がS139へと進んだ場合、立体決定部133は、sを1増加させる更新処理を実行する(S139)。S139の処理が完了すると、処理はS134へと進む。処理がS140へと進んだ場合、立体決定部133は、立体番号sminを決定立体番号リストに追加する(S140)。S140の処理が完了すると、図13に示した一連の処理は終了する。
以上、S102、S103の処理について説明した。
(立体除去について)
次に、図14を参照しながら、S104の処理について、さらに説明する。なお、図14は、第2実施形態に係る立体除去処理の流れを示したフロー図である。図14に示した処理は、立体除去部134により実行される。
図14に示すように、立体除去部134は、最小立体番号sminの入力を受け付ける(S151)。なお、決定立体番号リストに記載された最小立体番号sminが入力される。次いで、立体除去部134は、入力色を指定するための入力色パラメータ(r,g,b)を(0,0,0)に設定する(S152)。
次いで、立体除去部134は、(r,g,b)に対応するsminがあるか否かを判定する(S153)。(r,g,b)に対応するsminがある場合、処理はS154へと進む。一方、(r,g,b)に対応するsminがない場合、処理はS155へと進む。処理がS154へと進んだ場合、立体除去部134は、立体番号sminの立体以外で、(r,g,b)を内包する立体の立体番号を立体除去リストに追加し、その立体番号を立体番号リストから除去する(S154)。S154の処理が完了すると、処理はS155へと進む。
処理がS155へと進んだ場合、立体除去部134は、(r,g,b)が入力色の最後であるか否かを判定する(S155)。(r,g,b)が入力色の最後である場合、処理はS157へと進む。一方、(r,g,b)が入力色の最後でない場合、処理はS156へと進む。処理がS156へと進んだ場合、立体除去部134は、(r,g,b)を次の座標へと変更する更新処理を実行する(S156)。S156の処理が完了すると、処理はS153へと進む。
処理がS157へと進んだ場合、立体除去部134は、立体番号sminを立体除去リストに追加し、立体番号sminを立体番号リストから除去する(S157)。S157の処理が完了すると、図14に示した一連の処理は終了する。
以上、S104の処理について説明した。
以上、テーブル作成部111について説明した。
(2−2−2.画像補正部について)
次に、画像補正部112について説明する。
(機能ブロック)
図15を参照しながら、画像補正部112の機能について、さらに説明する。なお、説明の中で、図16〜図18を適宜参照する。
図15は、第2実施形態に係る画像補正部が有する機能の一例を示したブロック図である。図16は、第2実施形態に係る立体候補検索処理について説明するための図である。図17は、第2実施形態に係る変換処理について説明するための第1の図である。図18は、第2実施形態に係る変換処理について説明するための第2の図である。
図15に示すように、画像補正部112は、立体候補検索部141、立体確定部142、及び変換部143を有する。立体候補検索部141、立体確定部142、及び変換部143の機能は、上述したCPU101及びメモリ102を用いて実現される。また、画像補正部112は、テーブル作成部111により作成された複数のマップを含むテーブル(ルックアップテーブル)を保持している。
立体候補検索部141は、画像に含まれる任意の画素が有する入力色の色情報を取得し、マップを参照して入力色の補正に用いる基準色の候補を算出する。なお、画像は、撮像装置52から取得されたものであってもよいし、メモリ102や記録媒体51に予め格納されたものであってもよい。立体確定部142は、候補となる基準色の組み合わせが複数存在する場合に、複数の候補から1つの組み合わせを決定する。変換部143は、立体確定部142により決定された基準色の組み合わせに基づく補間処理により入力色に色補正を施す。
ここで、図16に示したマップMPR、MPG、MPB(但し、図16ではマップMPBを省略している。)が与えられた場合を例に、画像補正部112の機能について、さらに説明する。また、図17、図18を参照しながら、色補正の処理について、さらに説明する。
(立体候補検索部141、立体確定部142)
立体候補検索部141は、マップMPR、MPG、MPBを参照し、入力色を内包する立体を立体候補として抽出する。図16の例では、入力色PIN(110,60,…)が与えられている。この場合、立体候補検索部141は、入力色PINのR座標値(110)に対応する立体番号をマップMPRから抽出する。図16の例では、立体番号{1}が抽出される。
同様に、立体候補検索部141は、入力色PINのG座標値(60)に対応する立体番号をマップMPGから抽出する。図16の例では、2つの立体番号{1,2}が抽出される。入力色PINのB座標値に対応する立体番号についても同様である。
立体候補検索部141は、R座標値(110)に対応する立体番号{1}と、G座標値(60)に対応する立体番号{1,2}と、B座標値に対応する立体番号{…}との積集合({1}∧{1,2}∧{…})を生成する。B座標値に対応する立体番号{…}に1が含まれる場合、この積集合は{1}となる。なお、「∧」は論理積を表す。このような方法により、立体候補検索部141は、3枚のマップMPR、MPG、MPBを用いて入力色PINを内包する立体候補を抽出する。なお、複数の立体候補が抽出された場合、立体確定部142により入力色PINを内包する1つの立体候補が抽出される。
立体確定部142は、複数の立体候補から、入力色PINを内包する立体候補を決定する。この決定処理は、上記の式(1)〜式(5)に基づいて実現される。つまり、立体確定部142は、テーブル作成部111が有する立体候補算出部131と同様に、立体候補の重心座標を求め、入力色PINを上記の式(1)に代入して得られるJの符号と、重心座標を上記の式(1)に代入して得られるJの符号とを比較する。そして、立体確定部142は、これら2つのJの符号が一致する立体候補を抽出する。抽出された立体候補は、入力色PINの色補正に利用される立体として変換部143に入力される。
(変換部143)
変換部143は、立体確定部142から入力された立体の頂点に位置する基準色を用いて入力色PINの色補正を実行する。例えば、図17に示すように、入力色PINの座標を(r,g,b)、色補正に用いる4つの基準色P0、P1、P2、P3の座標をそれぞれ(r0,g0,b0)、(r1,g1,b1)、(r2,g2,b2)、(r3,g3,b3)と表記する。但し、図17の例ではP3の記載を省略している。
また、P0からP1へ向かうベクトルV1は(r1−r0,g1−g0,b1−b0)となる。また、P0からP2へ向かうベクトルV2は(r2−r0,g2−g0,b2−b0)となる。また、P0からP3へ向かうベクトルV3は(r3−r0,g3−g0,b3−b0)となる。なお、ベクトルV1、V2、V3で表現される変換は、予め与えられている。また、入力色PIN(r,g,b)は、係数h1、h2、h3を用いて下記の式(8−1)のように表現される。
Figure 0006237291
なお、基準色の座標から3つのベクトルV1、V2、V3が得られるため、入力色PINの座標が与えられると、上記の式(8−1)を変形した下記の式(8−2)から係数h1、h2、h3が求められる。但し、上付きの「−1」は逆行列を表す。
Figure 0006237291
いま、基準色P0、…、P3にそれぞれ対応する本来の色を表す座標(基準色毎に予め設定された座標)を(r0s,g0s,b0s)、(r1s,g1s,b1s)、(r2s,g2s,b2s)、(r3s,g3s,b3s)と表記する。この表記を用いると、色補正後の入力色PINを表す座標を(rs,gs,bs)は、下記の式(9)により与えられる。変換部143は、上記の式(8−2)に基づいて係数h1、h2、h3を求め、図18に示すように、下記の式(9)に基づいて入力色PINを本来の色へと変換する色補正を実行する。
Figure 0006237291
以上、画像補正部112について説明した。
(全体的な処理の流れ)
次に、図19を参照しながら、画像補正部112が実行する処理の流れについて説明する。なお、図19は、第2実施形態に係る画像補正処理の流れを示したフロー図である。
図19に示すように、画像補正部112は、立体候補検索部141の機能により、テーブル作成部111が作成したマップMPR、MPG、MPBを参照し、入力色PINを内包する立体を立体候補として抽出する(S201)。次いで、画像補正部112は、立体確定部142の機能により、S201で抽出された立体候補の中から入力色PINを内包する立体を1つに決定する(S202)。
次いで、画像補正部112は、変換部143の機能により、S202で決定された立体の頂点に位置する基準色の変換を用いて、入力色PINの色補正を実行する(S203)。S203の処理が完了すると、図19に示した一連の処理は終了する。
(立体確定について)
ここで、図20を参照しながら、S202の処理について、さらに説明する。なお、図20は、第2実施形態に係る立体確定処理の流れを示したフロー図である。また、図20に示した処理は、立体確定部142により実行される。
図20に示すように、立体確定部142は、立体候補の数を示す立体数cの入力を受け付ける(S211)。また、立体確定部142は、立体候補をそれぞれ特定する立体番号sj(j=1,…,c)の入力を受け付ける(S212)。次いで、立体確定部142は、cが1であるか否かを判定する(S213)。cが1である場合、立体確定部142により入力された立体番号s1の立体が選択され、処理はS215へと進む。一方、cが1でない場合、処理はS214へと進む。
処理がS214へと進んだ場合、立体確定部142は、立体番号sj(j=1,…,c)を有する立体の中から、入力色を内包する立体を1つ選択する(S214)。S214の処理が完了すると、処理はS215へと進む。処理がS215へと進んだ場合、立体確定部142は、選択した立体を入力色の変換に用いる立体に確定させる(S215)。S215の処理を完了すると、図20に示した一連の処理は終了する。
以上、S202の処理について説明した。
以上、画像補正部112について説明した。
[2−3.変形例#1(マップ不使用方式の併用A)]
ここで、図21、図22を参照しながら、第2実施形態の一変形例(変形例#1)について説明する。変形例#1は、基準色を頂点とする立体で充填された領域外に入力色が位置する場合の処理を追加する方法に関する。なお、図21は、第2実施形態の一変形例(変形例#1)について説明するための図である。また、図22は、第2実施形態の一変形例(変形例#1)に係る立体確定処理の流れを示したフロー図である。
これまでは、基準色を頂点とする立体のいずれかに入力色が内包されることを前提に説明を進めてきた。つまり、入力色を内包する立体がない場合、入力色に対する色補正の処理は任意であった。変形例#1では、入力色を内包する立体がない場合に、マップMPR、MPG、MPBを使用せずに入力色PINの色補正を実行する方式(以下、マップ不使用方式)を提案する(図21を参照)。
変形例#1を適用する場合、上述した立体確定処理は、図22のように変形される。また、図22に示した処理の中で設定される方式フラグに基づいて変換部143が色補正の方法(マップを使用する方式、又はマップ不使用方式)を選択する。方式フラグは、色補正の方法を選択する際に参照されるフラグである。方式フラグが1の場合にマップ不使用方式が選択され、方式フラグが0の場合にマップを使用する色補正の方法が選択される。
図22に示すように、立体確定部142は、方式フラグを0に設定する(S301)。また、立体確定部142は、立体候補の数を示す立体数cの入力を受け付ける(S302)。また、立体確定部142は、立体候補をそれぞれ特定する立体番号sj(j=1,…,c)の入力を受け付ける(S303)。なお、cが0の場合、立体番号sj(j=1,…,c)は入力されない。
次いで、立体確定部142は、cが0であるか否かを判定する(S304)。cが0である場合、処理はS309へと進む。一方、cが0でない場合、処理はS305へと進む。処理がS305へと進んだ場合、立体確定部142は、cが1であるか否かを判定する(S305)。cが1である場合、立体確定部142により入力された立体番号s1の立体が選択され、処理はS307へと進む。一方、cが1でない場合、処理はS306へと進む。
処理がS306へと進んだ場合、立体確定部142は、立体番号sj(j=1,…,c)を有する立体の中から、入力色を内包する立体を1つ選択する(S306)。S306の処理が完了すると、処理はS307へと進む。処理がS307へと進んだ場合、立体確定部142は、選択した立体を入力色の変換に用いる立体に確定させる(S307)。
次いで、立体確定部142は、S307で確定した立体が入力色を内包するか否かを判定する(S308)。S307で確定した立体が入力色を内包する場合、図22に示した一連の処理は終了する。一方、S307で確定した立体が入力色を内包しない場合、処理はS309へと進む。処理がS309へと進んだ場合、立体確定部142は、方式フラグを1に設定する(S309)。S309の処理を完了すると、図22に示した一連の処理は終了する。
以上、変形例#1について説明した。
[2−4.変形例#2(マップ不使用方式の併用B)]
次に、図23、図24を参照しながら、第2実施形態の一変形例(変形例#2)について説明する。変形例#2は、マップを生成する際に評価値Jが閾値Thより小さい立体と、閾値Thより大きい立体とを特定する方式選択フラグを設定し、方式選択フラグと立体番号とを対応付ける方式選択マップを用いて色補正の方法を選択する方式に関する。
方式選択フラグは、色補正の方法を選択する際に参照されるフラグである。方式選択フラグが1の場合にマップ不使用方式が選択され、方式選択フラグが0の場合にマップを使用する色補正の方法が選択される。変形例#2の適用に際し、テーブル作成部111により実行される評価処理及び立体決定処理が図23のように変形される。また、変形例#2の適用に際し、画像補正部112により実行される立体確定処理が図24のように変形される。以下、これらの処理について説明する。
(評価・立体決定について)
図23を参照しながら、変形例#2に係る評価処理及び立体決定処理について説明する。なお、図23は、第2実施形態の一変形例(変形例#2)に係る評価処理及び立体決定処理の流れを示したフロー図である。また、図23に示した処理は、評価部132、立体決定部133により実行される。
図23に示すように、評価部132は、評価値が最小となる立体番号を特定するための最小立体番号パラメータsminを0に設定する(S401)。次いで、評価部132は、最小の評価値を計算するために用いる最小評価値パラメータJminを0に設定する(S402)。次いで、評価部132は、立体番号を指定するための立体番号パラメータsを0に設定する(S403)。なお、S401、S402、S403の処理は、順序を入れ替えることが可能である。
次いで、評価部132は、立体番号sの立体に対する評価値Jsを計算する(S404)。例えば、評価部132は、上記の式(6)又は式(7)に基づいて評価値Jsを計算する。次いで、立体決定部133は、立体番号sが立体番号リストにあるか否かを判定する(S405)。立体番号sが立体番号リストにある場合、処理はS408へと進む。一方、立体番号sが立体番号リストにない場合、処理はS406へと進む。
処理がS406へと進んだ場合、立体決定部133は、最小評価値パラメータJminと評価値Jsとを比較し、最小評価値パラメータJminが評価値Jsよりも大きいか否かを判定する(S406)。最小評価値パラメータJminが評価値Jsよりも大きい場合、処理はS407へと進む。一方、最小評価値パラメータJminが評価値Jsよりも大きくない場合、処理はS408へと進む。
処理がS407へと進んだ場合、立体決定部133は、最小評価値パラメータJminをJsに設定し、最小立体番号パラメータsminをsに設定する(S407)。S407の処理が完了すると、処理はS408へと進む。処理がS408に進んだ場合、立体決定部133は、sが立体番号の最大値か否かを判定する(S408)。sが立体番号の最大値である場合、処理はS410へと進む。一方、sが立体番号の最大値でない場合、処理はS409へと進む。
処理がS409へと進んだ場合、立体決定部133は、sを1増加させる更新処理を実行する(S409)。S409の処理が完了すると、処理はS404へと進む。処理がS410へと進んだ場合、立体決定部133は、立体番号sminを決定立体番号リストに追加する(S410)。次いで、立体決定部133は、Jminと閾値Thとを比較し、比較結果に応じて立体番号sminに対応する方式選択フラグを設定する(S411)。
例えば、立体決定部133は、Jminが閾値Thよりも大きい場合に方式選択フラグを1に設定し、Jminが閾値Thよりも小さい場合に方式選択フラグを0に設定する。閾値Thは予め設定される。また、設定された方式選択フラグは、立体番号に対応付けて方式選択マップに記載される。方式選択マップは、テーブル作成部111に入力される。S411の処理が完了すると、図23に示した一連の処理は終了する。
以上、変形例#2に係る評価処理及び立体決定処理について説明した。
(立体確定について)
次に、図24を参照しながら、変形例#2に係る立体確定処理について説明する。なお、図24は、第2実施形態の一変形例(変形例#2)に係る立体確定処理の流れを示したフロー図である。また、図24に示した処理は、立体確定部142により実行される。
図24に示すように、立体確定部142は、方式フラグを0に設定する(S421)。また、立体確定部142は、立体候補の数を示す立体数cの入力を受け付ける(S422)。また、立体確定部142は、立体候補をそれぞれ特定する立体番号sj(j=1,…,c)の入力を受け付ける(S423)。なお、cが0の場合、立体番号sj(j=1,…,c)は入力されない。
次いで、立体確定部142は、cが0であるか否かを判定する(S424)。cが0である場合、処理はS430へと進む。一方、cが0でない場合、処理はS425へと進む。処理がS425へと進んだ場合、立体確定部142は、cが1であるか否かを判定する(S425)。cが1である場合、立体確定部142により入力された立体番号s1の立体が選択され、処理はS427へと進む。一方、cが1でない場合、処理はS426へと進む。
処理がS426へと進んだ場合、立体確定部142は、立体番号sj(j=1,…,c)を有する立体の中から、入力色を内包する立体を1つ選択する(S426)。S426の処理が完了すると、処理はS427へと進む。処理がS427へと進んだ場合、立体確定部142は、選択した立体を入力色の変換に用いる立体に確定させる(S427)。
次いで、立体確定部142は、S427で確定した立体に対応する方式選択フラグが1であるか否かを判定する(S428)。S427で確定した立体に対応する方式選択フラグが1である場合、処理はS429へと進む。一方、S427で確定した立体に対応する方式選択フラグが0である場合、処理はS430へと進む。
処理がS429へと進んだ場合、立体確定部142は、S427で確定した立体が入力色を内包するか否かを判定する(S429)。S427で確定した立体が入力色を内包する場合、図24に示した一連の処理は終了する。一方、S427で確定した立体が入力色を内包しない場合、処理はS430へと進む。
処理がS430へと進んだ場合、立体確定部142は、方式フラグを1に設定する(S430)。方式フラグが1の場合にマップ不使用方式が選択され、方式フラグが0の場合にマップを使用する色補正の方法が選択される。S430の処理を完了すると、図24に示した一連の処理は終了する。
以上、変形例#2に係る立体確定処理について説明した。
以上、変形例#2について説明した。
[2−5.補遺(マップ不使用方式の例)]
ここで、図25〜図30を参照しながら、上述したマップ不使用方式の例について説明する。なお、マップ不使用方式に係る色補正の処理は変換部143により実行される。
以下の説明では、図25に示すように、入力色の座標を(r,g,b)と表記し、N個の基準色の座標を{(rn,gn,bn)、n=1,…,N}と表記する。なお、図25は、第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式の例について説明するための図である。
また、色空間上で入力色に最も近い位置にある基準色を「特定基準色」(又はクラス1の基準色)と呼び、特定基準色の座標を(rm,gm,bm)と表記する。また、特定基準色以外の基準色を「非特定基準色」(又はクラス2の基準色)と呼び、非特定基準色の座標を(rn,gn,bn)(但し、n≠m)と表記する。以下、マップ不使用方式に係る処理について説明する。
(全体的な処理の流れ)
図26を参照しながら、マップ不使用方式に係る処理の全体的な流れについて説明する。なお、図26は、第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第1の図である。また、図26に示した処理は、変換部143により実行される。
図26に示すように、変換部143は、基準色を特定基準色及び非特定基準色に分類し、非特定基準色の1つを選択する(S501)。次いで、変換部143は、S501で選択した非特定基準色と特定基準色とに基づく補間により入力色の色補正に用いる変換情報を生成する(S502)。次いで、変換部143は、非特定基準色に対する加重を計算する(S503)。なお、後段の処理で加重を利用しない場合にはS503の処理を省略することができる。
変換部143は、全ての非特定基準色を対象にS501〜S503の処理を繰り返し実行する。この繰り返し処理により、入力色の色変換に用いるN−1個の変換情報が得られる。変換部143は、N−1個の変換情報を統合し、統合した変換情報に基づいて入力色の色補正を実行する(S504)。S504の処理が完了すると、図26に示した一連の処理は終了する。
(基準色選択について)
ここで、図27を参照しながら、S501の処理について、さらに説明する。なお、図27は、第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第2の図である。
図27に示すように、変換部143は、入力色(r,g,b)の入力を受け付ける(S511)。また、変換部143は、基準色{(rn,gn,bn),n=1,…,N}の入力を受け付ける(S512)。次いで、変換部143は、入力色(r,g,b)に最も近い基準色(rm,gm,bm)を選択する(S513)。
次いで、変換部143は、S513で選択した基準色を特定基準色に設定する(S514)。次いで、変換部143は、特定基準色以外の基準色を非特定基準色に設定する(S515)。S515の処理が完了すると、図27に示した一連の処理は終了する。
なお、変換部143は、後段の処理に用いる非特定基準色を制限してもよい。例えば、変換部143は、入力色との間の距離が予め設定された閾値Thlより小さい基準色を非特定基準色に設定してもよい。この場合、変換部143は、S515の処理において、下記の式(10)で与えられる条件を満たす基準色を選択して非特定基準色に設定する。但し、|…|は、ベクトルの大きさを表すノルムである。
|(rn−rm,gn−gm,bn−bm)|<Thl
…(10)
以上、S501の処理について説明した。
(補間について)
次に、図28を参照しながら、S502の処理について、さらに説明する。なお、図28は、第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第3の図である。
図28に示すように、変換部143は、入力色(r,g,b)の入力を受け付ける(S521)。また、変換部143は、特定基準色(rm,gm,bm)の入力を受け付ける(S522)。また、変換部143は、非特定基準色{(rn,gn,bn),n≠m}の入力を受け付ける(S523)。
次いで、変換部143は、入力色の補間に用いる補間変換量を計算する際に利用するパラメータpn、qnを計算する(S524)。次いで、変換部143は、S524で計算したパラメータpn、qnを用いて補間変換量(srn,sgn,sbn)を計算する(S525)。S525の処理が完了すると、図28に示した一連の処理は終了する。以下、S524、S525の処理について、さらに説明する。説明の中で、図25を適宜参照する。
補間変換量を計算する際、変換部143は、1つの非特定基準色と特定基準色とを結ぶ色空間上の線分を求め、入力色に最も近い線分上の点(xn)を用いて補間変換量を計算する。入力色に最も近い線分上の点xnは、線分上に入力色を直交射影することで得られる。つまり、幾何学的には入力色から線分上に垂線を下ろした場合に、垂線と線分とが交わる点が上記の点xnとなる(図25を参照)。
非特定基準色(rn,gn,bn)と特定基準色(rm,gm,bm)とを結ぶ直線上の点をw(pn)と表記すると、w(pn)は、下記の式(11)のように与えられる。但し、pnはパラメータである。また、下記の式(11)に含まれるvnは、下記の式(12)により定義される。
Figure 0006237291
Figure 0006237291
上記の式(12)で定義されるvnは、特定基準色(rm,gm,bm)から非特定基準色(rn,gn,bn)へと向かう方向を示す単位ベクトルである。また、lnは、下記の式(13)で定義され、特定基準色(rm,gm,bm)と非特定基準色(rn,gn,bn)との間の距離を表す。なお、0≦pn≦lnの場合に、入力色を上記の直線上に射影した点xnは特定基準色(rm,gm,bm)と非特定基準色(rn,gn,bn)とを結ぶ線分上に位置する。
点xnの座標は、点xnから入力色へと向かう方向を示す単位ベクトルをunと表記した場合、下記の式(14)により与えられる。但し、下記の式(14)に含まれるベクトルun、及びパラメータqnは、下記の式(15)〜式(19)により与えられる。なお、添字のTはベクトルの転置を表す。また、パラメータqnは、入力色から点xnまでの距離を表す。ここまでの処理がS524の処理に相当する。
Figure 0006237291
(rm,gm,bm)+qn・un
…(14)
(r−rm,g−gm,b−bmT=pn・vn+qn・un
…(15)
n=(r−rm,g−gm,b−bm)・vn
…(16)
Figure 0006237291
n=|(r−rm,g−gm,b−bmT−pn・vn
…(18)
n=(r−rm,g−gm,b−bm)・un
…(19)
次に、点xnの補間処理について考える。ここで、特定基準色(rm,gm,bm)の変換が下記の式(20)で与えられ、非特定基準色(rn,gn,bn)の変換が下記の式(21)で与えられているものとする。この場合、点xnにおける変換は、線形補間により下記の式(22)で与えられる。変換部143は、S525の処理において、補間変換量として変換(srn,sgn,sbn)を計算する。同様の方法で、変換部143は、全ての非特定基準色について補間変換量を計算する。
(trm,tgm,tbm)=(rms−rm,gms−gm,bms−bm
…(20)
(trn,tgn,tbn)=(rns−rn,gns−gn,bns−bn
…(21)
(srn,sgn,sbn)=pn・(trn,tgn,tbn
+(1−pn)・(trm,tgm,tbm
…(22)
以上、S502の処理について説明した。
(加重算出について)
次に、図29を参照しながら、S503の処理について、さらに説明する。なお、図29は、第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第4の図である。
図29に示すように、変換部143は、特定基準色(rm,gm,bm)及び非特定基準色(rn,gn,bn)の組(m,nのペア)に対する補間変換量(srn,sgn,sbn)の入力を受け付ける(S531)。但し、n=1,…,N(n≠m)である。次いで、変換部143は、非特定基準点毎に加重を計算する(S53)。S53の処理が完了すると、図29に示した一連の処理は終了する。以下、S532の処理について3通りの例を示し、さらに説明する。なお、非特定基準色(rn,gn,bn)に対する加重をwnと表記する。
(第1の例:内挿を考慮した加重)
第1の例は、特定基準色(rm,gm,bm)と非特定基準色(rn,gn,bn)とを結ぶ線分上に点xnが位置する場合の補間変換量だけが入力色の色補正に利用されるように制限する加重wnを計算する方法に関する。この方法を適用する場合、加重wnは、下記の式(23)により与えられる。この場合、変換部143は、下記の式(23)に基づいて加重wnを計算する。なお、変換部143は、S504の処理で用いるパラメータzを下記の式(24)に基づいて計算する。
Figure 0006237291
Figure 0006237291
(第2の例:垂線の長さを考慮した加重)
第2の例は、入力色から点xnに下ろした垂線の長さを表すパラメータqnの大きさに応じて加重wnを計算する方法に関する。この方法を適用する場合、加重wnは、下記の式(25)により与えられる。この場合、変換部143は、下記の式(25)に基づいて加重wnを計算する。また、変換部143は、S504の処理で用いるパラメータzを上記の式(24)に基づいて計算する。
Figure 0006237291
(第3の例:基準色間の距離を考慮した加重)
第3の例は、特定基準色(rm,gm,bm)と非特定基準色(rn,gn,bn)との間の距離lnに応じて加重wnを計算する方法に関する。距離lnが大きい場合、非特定基準色(rn,gn,bn)が入力色の補間に与える影響は小さいと考えられる。そのため、変換部143は、下記の式(26)に基づいて加重wnを計算する。また、変換部143は、S504の処理で用いるパラメータzを上記の式(24)に基づいて計算する。
Figure 0006237291
以上、S503の処理について説明した。
(統合について)
次に、図30を参照しながら、S504の処理について、さらに説明する。なお、図30は、第2実施形態の変形例(変形例#1、#2)に適用可能なマップ不使用方式に係る処理の流れを示した第5の図である。
図30に示すように、変換部143は、特定基準色(rm,gm,bm)及び非特定基準色(rn,gn,bn)の組(m,nのペア)に対する補間変換量(srn,sgn,sbn)の入力を受け付ける(S541)。但し、n=1,…,N(n≠m)である。次いで、変換部143は、補間結果(非特定基準色毎に計算された補間変換量)を統合する(S542)。S542の処理が完了すると、図30に示した一連の処理は終了する。以下、S542の処理について、さらに説明する。
例えば、第1の例として既に説明した加重wn(n=1,…,N,n≠m)及びパラメータzを利用した場合、変換部143は、下記の式(27)に基づいて補間変換量を統合し、入力色に対する変換(sr,sg,sb)を計算する。第2の例又は第3の例として既に説明した加重wn(n=1,…,N,n≠m)及びパラメータzを利用する場合も同様に、変換部143は、下記の式(27)に基づいて補間変換量を統合する。
Figure 0006237291
(複数種類の加重を考慮する場合)
また、第1〜第3の例として既に説明した加重wn(n=1,…,N,n≠m)を複数組み合わせて利用することも可能である。例えば、第1の例に係る加重wnをwn (1)、第2の例に係る加重wnをwn (2)、第3の例に係る加重wnをwn (3)と表記した場合、変換部143は、下記の式(28)に基づいて補間変換量を統合する。但し、パラメータzは、下記の式(29)で与えられる。なお、wn (j)を全てのnについて1とすれば、下記の式(28)は第jの例に係る加重wnを考慮しない式となる。
Figure 0006237291
Figure 0006237291
(加重計算を省略する場合)
また、加重wnを考慮せず、S503の処理を省略する場合、変換部143は、下記の式(30)に基づいて補間変換量を統合する。つまり、変換部143は、N−1個の補間変換量を平均して入力色に対する変換(sr,sg,sb)を計算する。
Figure 0006237291
以上、S504の処理について説明した。
以上、マップ不使用方式の例について説明した。
以上、第2実施形態について説明した。第2実施形態に係る技術を適用することで、マップを利用した体積補間に基づく高精度の色補正を高速に実行することが可能になる。また、上記の変形例を適用することで、基準色を頂点とする立体に入力色が含まれる場合にはマップを利用した高精度の色補正が実現され、さらに立体に入力色が含まれない場合でも基準色を直接用いた入力色の色補正が実現される。
なお、上記の技術は、例えば、プリンタ、スキャナ、カメラ、或いは、パーソナルコンピュータやスマートフォンなどに用いられるディスプレイなどにおいて行われる色補正の処理に適用可能である。
<3.付記>
以上説明した実施形態に関し、さらに以下の付記を開示する。
(付記1) 色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報を含むテーブルを記憶する記憶部と、
前記テーブルを参照して入力色を含む前記立体を特定し、特定した前記立体の頂点に対応する前記基準色を用いて前記入力色の補間処理を実行する演算部と、
を有する、情報処理装置。
(付記2) 前記立体は、三角錐であり、
前記評価値は、前記三角錐の4辺の長さが短いほど大きな値をとり、
前記テーブルは、前記色空間の領域を特定するための位置情報と、前記立体を特定するための識別情報とを対応付けたルックアップテーブルである
付記1に記載の情報処理装置。
(付記3) 前記テーブルは、前記色空間が有する座標軸のそれぞれについて、1つの前記座標軸上の各値と前記立体との対応関係を記載したマップを含み、
前記演算部は、前記マップを用いて前記入力色を含む前記立体を特定する
付記1又は2に記載の情報処理装置。
(付記4) 前記記憶部は、画像に含まれる前記基準色から特定される前記色空間内の位置を、当該基準色に対して設定された前記色空間内の位置へと変換する変換情報を記憶し、
前記演算部は、前記変換情報に基づいて前記入力色に対する変換量を計算する
付記1〜3のいずれかに記載の情報処理装置。
(付記5) 前記演算部は、前記入力色が前記複数の立体に含まれない場合、前記色空間で前記入力色の近傍に位置する前記基準色に基づいて前記入力色の補間処理を実行する
付記1〜4のいずれかに記載の情報処理装置。
(付記6) 前記演算部は、前記入力色を含む前記立体の前記評価値が設定した閾値より小さい場合、前記色空間で前記入力色の近傍に位置する前記基準色に基づいて前記入力色の補間処理を実行する
付記1〜4のいずれかに記載の情報処理装置。
(付記7) 色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報を含むテーブルを記憶する記憶部から、前記テーブルを読み出すことが可能なコンピュータが、
前記テーブルを参照して入力色を含む前記立体を特定し、特定した前記立体の頂点に対応する前記基準色を用いて前記入力色の補間処理を実行する
色補間方法。
(付記8) 前記立体は、三角錐であり、
前記評価値は、前記三角錐の4辺の長さが短いほど大きな値をとり、
前記テーブルは、前記色空間の領域を特定するための位置情報と、前記立体を特定するための識別情報とを対応付けたルックアップテーブルである
付記7に記載の色補間方法。
(付記9) 前記テーブルは、前記色空間が有する座標軸のそれぞれについて、1つの前記座標軸上の各値と前記立体との対応関係を記載したマップを含み、前記入力色を含む立体は、前記マップを用いて特定される
付記7又は8に記載の色補間方法。
(付記10) 前記記憶部は、画像に含まれる前記基準色から特定される前記色空間内の位置を、当該基準色に対して設定された前記色空間内の位置へと変換する変換情報を記憶し、
前記変換情報に基づいて前記入力色に対する変換量が計算される
付記7〜9のいずれかに記載の色補間方法。
(付記11) 前記入力色が前記複数の立体に含まれない場合、前記色空間で前記入力色の近傍に位置する前記基準色に基づいて前記入力色の補間処理が実行される
付記7〜10のいずれかに記載の色補間方法。
(付記12) 前記入力色を含む前記立体の前記評価値が設定した閾値より小さい場合、前記色空間で前記入力色の近傍に位置する前記基準色に基づいて前記入力色の補間処理が実行される
付記7〜10のいずれかに記載の色補間方法。
(付記13) 色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報を含むテーブルを記憶する記憶部から、前記テーブルを読み出すことが可能なコンピュータに、
前記テーブルを参照して入力色を含む前記立体を特定し、特定した前記立体の頂点に対応する前記基準色を用いて前記入力色の補間処理を実行する
処理を実行させる、プログラム。
(付記14) 色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部と、
前記基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した前記複数の立体のそれぞれが占める領域の情報を含むテーブルを生成する演算部と、
を有する、情報処理装置。
(付記15) 前記演算部は、
前記色空間に含まれる全ての座標のそれぞれについて、前記座標を内包する前記立体を立体候補として抽出し、抽出した前記立体候補について前記評価値を計算し、
前記色空間に含まれる前記座標の1つを順次選択し、選択した前記座標について抽出された前記立体候補の中から前記評価値が最大となる前記立体候補を決定し、決定した前記立体候補と交わる前記立体を前記立体候補から除去し、
前記領域の情報として、残った前記立体候補がそれぞれ占める領域の情報を前記テーブルに含める
付記14に記載の情報処理装置。
(付記16) 色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部から、前記位置を示す情報を読み出すことが可能なコンピュータが、
前記基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した前記複数の立体のそれぞれが占める領域の情報を含むテーブルを生成する
テーブル生成方法。
(付記17) 前記テーブルを生成する処理の中で、前記コンピュータが、
前記色空間に含まれる全ての座標のそれぞれについて、前記座標を内包する前記立体を立体候補として抽出し、抽出した前記立体候補について前記評価値を計算し、
前記色空間に含まれる前記座標の1つを順次選択し、選択した前記座標について抽出された前記立体候補の中から前記評価値が最大となる前記立体候補を決定し、決定した前記立体候補と交わる前記立体を前記立体候補から除去し、
前記領域の情報として、残った前記立体候補がそれぞれ占める領域の情報を前記テーブルに含める
付記16に記載のテーブル生成方法。
(付記18) 色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部から、前記位置を示す情報を読み出すことが可能なコンピュータに、
前記基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した前記複数の立体のそれぞれが占める領域の情報を含むテーブルを生成する
処理を実行させる、プログラム。
(付記19) 付記13又は18に記載のプログラムが記録された、前記コンピュータにより読み取り可能な記録媒体。
10 情報処理装置
11 記憶部
12 演算部
1、P2、P3、P4 基準色
IN 入力色
1、S2 立体
TBL テーブル

Claims (11)

  1. 色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報と、前記色空間が有する座標軸のそれぞれについて前記座標軸上の各値と前記立体との対応関係を記載したマップと、を含むテーブルを記憶する記憶部と、
    前記テーブルを参照し、前記マップを用いて入力色を含む前記立体を特定し、特定した前記立体の頂点に対応する前記基準色を用いて前記入力色の補間処理を実行する演算部と、
    を有する、情報処理装置。
  2. 前記立体は、三角錐であり、
    前記評価値は、前記三角錐の4辺の長さが短いほど大きな値をとり、
    前記テーブルは、前記色空間の領域を特定するための位置情報と、前記立体を特定するための識別情報とを対応付けたルックアップテーブルである
    請求項1に記載の情報処理装置。
  3. 前記記憶部は、画像に含まれる前記基準色から特定される前記色空間内の位置を、当該基準色に対して設定された前記色空間内の位置へと変換する変換情報を記憶し、
    前記演算部は、前記変換情報に基づいて前記入力色に対する変換量を計算する
    請求項1又は2に記載の情報処理装置。
  4. 前記演算部は、前記入力色が前記複数の立体に含まれない場合、前記色空間で前記入力色の近傍に位置する前記基準色に基づいて前記入力色の補間処理を実行する
    請求項1〜のいずれか1項に記載の情報処理装置。
  5. 前記演算部は、前記入力色を含む前記立体の前記評価値が設定した閾値より小さい場合、前記色空間で前記入力色の近傍に位置する前記基準色に基づいて前記入力色の補間処理を実行する
    請求項1〜のいずれか1項に記載の情報処理装置。
  6. コンピュータが、
    色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報と、前記色空間が有する座標軸のそれぞれについて前記座標軸上の各値と前記立体との対応関係を記載したマップと、を含むテーブルを記憶する記憶部から、前記テーブルを読み出し、
    前記テーブルを参照し、前記マップを用いて入力色を含む前記立体を特定し、特定した前記立体の頂点に対応する前記基準色を用いて前記入力色の補間処理を実行する
    色補間方法。
  7. 色空間に設定された複数の基準色を頂点とし、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体のそれぞれが占める領域の情報と、前記色空間が有する座標軸のそれぞれについて前記座標軸上の各値と前記立体との対応関係を記載したマップと、を含むテーブルを記憶する記憶部から、前記テーブルを読み出し、
    前記テーブルを参照し、前記マップを用いて入力色を含む前記立体を特定し、特定した前記立体の頂点に対応する前記基準色を用いて前記入力色の補間処理を実行する
    処理をコンピュータに実行させる、プログラム。
  8. 入力色を含む立体の特定に用いられるテーブルを生成する情報処理装置であって、
    色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部と、
    前記基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した前記複数の立体のそれぞれが占める領域の情報と、前記色空間が有する座標軸のそれぞれについて前記座標軸上の各値と前記立体との対応関係を記載したマップと、を含む前記テーブルを生成する演算部と、
    を有する、情報処理装置。
  9. 前記演算部は、
    前記色空間に含まれる全ての座標のそれぞれについて、前記座標を内包する前記立体を立体候補として抽出し、抽出した前記立体候補について前記評価値を計算し、
    前記色空間に含まれる前記座標の1つを順次選択し、選択した前記座標について抽出された前記立体候補の中から前記評価値が最大となる前記立体候補を決定し、決定した前記立体候補と交わる前記立体を前記立体候補から除去し、
    前記領域の情報として、残った前記立体候補がそれぞれ占める領域の情報を前記テーブルに含める
    請求項に記載の情報処理装置。
  10. 入力色を含む立体の特定に用いられるテーブルを生成するコンピュータが、
    色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部から、前記位置を示す情報を読み出し、
    前記基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した前記複数の立体のそれぞれが占める領域の情報と、前記色空間が有する座標軸のそれぞれについて前記座標軸上の各値と前記立体との対応関係を記載したマップと、を含む前記テーブルを生成する
    テーブル生成方法。
  11. 入力色を含む立体の特定に用いられるテーブルを生成するコンピュータに、
    色空間に設定された複数の基準色の位置を示す情報を記憶する記憶部から、前記位置を示す情報を読み出し、
    前記基準色を頂点とする複数の立体から、辺の長さが短いほど大きな値をとる評価値が設定値より大きく、かつ、互いに交わらないように配置された複数の立体を抽出し、抽出した前記複数の立体のそれぞれが占める領域の情報と、前記色空間が有する座標軸のそれぞれについて前記座標軸上の各値と前記立体との対応関係を記載したマップと、を含む前記テーブルを生成する
    処理を実行させる、プログラム。

JP2014020948A 2014-02-06 2014-02-06 情報処理装置、色補間方法、プログラム、及びテーブル生成方法 Expired - Fee Related JP6237291B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014020948A JP6237291B2 (ja) 2014-02-06 2014-02-06 情報処理装置、色補間方法、プログラム、及びテーブル生成方法
US14/601,447 US9407791B2 (en) 2014-02-06 2015-01-21 Information processing apparatus and computer-readable storage medium storing program for interpolating an input color
CN201510058170.XA CN104836995B (zh) 2014-02-06 2015-02-04 信息处理装置、颜色内插方法及表生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014020948A JP6237291B2 (ja) 2014-02-06 2014-02-06 情報処理装置、色補間方法、プログラム、及びテーブル生成方法

Publications (2)

Publication Number Publication Date
JP2015149581A JP2015149581A (ja) 2015-08-20
JP6237291B2 true JP6237291B2 (ja) 2017-11-29

Family

ID=53755272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014020948A Expired - Fee Related JP6237291B2 (ja) 2014-02-06 2014-02-06 情報処理装置、色補間方法、プログラム、及びテーブル生成方法

Country Status (3)

Country Link
US (1) US9407791B2 (ja)
JP (1) JP6237291B2 (ja)
CN (1) CN104836995B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10015366B2 (en) * 2016-03-04 2018-07-03 Esko Software Bvba Variable resolution lookup table for accelerated color conversion
JP2020081540A (ja) * 2018-11-28 2020-06-04 キヤノン株式会社 処理の達成度の判定装置、判定システム、判定方法及びプログラム
CN115862534B (zh) * 2022-11-23 2025-08-12 北京奕斯伟计算技术股份有限公司 颜色校正方法、装置、电子设备及存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2543146B2 (ja) 1988-07-13 1996-10-16 松下電器産業株式会社 色修正デ―タ算出装置
JP2872690B2 (ja) * 1989-06-15 1999-03-17 三菱電機株式会社 色変換方法
CA2012403A1 (en) 1989-06-19 1990-12-19 John J. Deacon Display system having a hexagonal crystal structured color palette
JP3153002B2 (ja) * 1992-06-30 2001-04-03 日本電気株式会社 色変換方法、色変換テーブル作成方法、色変換装置および色変換テーブル作成装置
US5504821A (en) * 1993-03-31 1996-04-02 Matsushita Electric Industrial Co., Ltd. Color converting apparatus for performing a three-dimensional color conversion of a colored picture in a color space with a small capacity of memory
JP2000048179A (ja) 1998-07-31 2000-02-18 Canon Inc 逆補間方法
JP2000165691A (ja) * 1998-11-27 2000-06-16 Matsushita Electric Ind Co Ltd 色変換方法および装置
US6798411B1 (en) * 1999-10-29 2004-09-28 Intel Corporation Image processing
JP2002010095A (ja) 2000-06-23 2002-01-11 Matsushita Electric Ind Co Ltd カラー画像処理方法及びカラー画像処理装置
US6897977B1 (en) * 2000-11-20 2005-05-24 Hall Aluminum Llc Lossy method for compressing pictures and video
JP4072327B2 (ja) 2001-10-15 2008-04-09 キヤノン株式会社 プロファイルの調整装置およびその方法
JP4787453B2 (ja) * 2002-05-23 2011-10-05 日本電気株式会社 色変換方法、色変換装置および色変換プログラム
JP2004179819A (ja) 2002-11-26 2004-06-24 Fuji Xerox Co Ltd 色変換処理装置、色変換処理プログラムおよび色変換処理方法
JP2007267084A (ja) * 2006-03-29 2007-10-11 Seiko Epson Corp 色変換装置およびそれを備えた画像表示装置
JP2008211310A (ja) * 2007-02-23 2008-09-11 Seiko Epson Corp 画像処理装置および画像表示装置
CN100573651C (zh) * 2007-09-14 2009-12-23 北京中视中科光电技术有限公司 一种色域映射实时处理方法及实时处理电路
JP2009165030A (ja) 2008-01-09 2009-07-23 Ricoh Co Ltd 多面体作成方法、プログラム、及びコンピュータ読み取り可能な記録媒体
JP5104641B2 (ja) 2008-08-12 2012-12-19 コニカミノルタIj株式会社 色調整方法
JP5843000B2 (ja) 2012-03-30 2016-01-13 富士通株式会社 カラーチャート検出装置、カラーチャート検出方法及びカラーチャート検出用コンピュータプログラム
JP5327355B2 (ja) 2012-05-07 2013-10-30 コニカミノルタ株式会社 色調整方法および色調整装置

Also Published As

Publication number Publication date
CN104836995B (zh) 2017-07-07
CN104836995A (zh) 2015-08-12
US20150221100A1 (en) 2015-08-06
JP2015149581A (ja) 2015-08-20
US9407791B2 (en) 2016-08-02

Similar Documents

Publication Publication Date Title
CN104581111B (zh) 利用变换的目标区域填充
JP5024410B2 (ja) 三次元モデリング装置、三次元モデリング方法、ならびに、プログラム
EP2592820B1 (en) Image conversion device, method and computer-readable recording medium
US20120069018A1 (en) Ar process apparatus, ar process method and storage medium
CN102737406A (zh) 三维建模装置及方法
WO2011049046A1 (ja) 画像処理装置、画像処理方法、画像処理プログラム、および、記録媒体
CN114359204B (zh) 点云空洞的检测方法、装置及电子设备
US20160232420A1 (en) Method and apparatus for processing signal data
EP2293243A2 (en) Image processing apparatus, image capture apparatus, image processing method, and program
JP5901447B2 (ja) 画像処理装置及びそれを備えた撮像装置、画像処理方法、並びに画像処理プログラム
JP6237291B2 (ja) 情報処理装置、色補間方法、プログラム、及びテーブル生成方法
CN104254868A (zh) 使用至少一个较高帧速率图像流提高图像流帧速率的方法和装置
EP2765555A1 (en) Image evaluation device, image selection device, image evaluation method, recording medium, and program
JP2013178684A (ja) 奥行き推定装置、再構成画像生成装置、奥行き推定方法、再構成画像生成方法及びプログラム
JP2020038550A (ja) ラインセンサカメラのキャリブレーション装置及び方法
US10949988B2 (en) Information processing apparatus, information processing method, and program
CN112236800A (zh) 学习设备、图像生成设备、学习方法、图像生成方法和程序
JP6355206B2 (ja) カメラキャリブレーション方法、カメラキャリブレーション装置及びカメラキャリブレーションプログラム
JP2018133064A (ja) 画像処理装置、撮像装置、画像処理方法および画像処理プログラム
CN114998551B (zh) 网格重建质量优化方法、系统、计算机及可读存储介质
CN113537351B (zh) 面向移动设备拍摄的遥感图像坐标匹配方法
US20240311635A1 (en) Training method, training system, and non-transitory computer readable recording medium storing training program
JP2005140623A (ja) 画像計測方法、装置、プログラム及び記録媒体
JP5952757B2 (ja) 陰影情報導出装置、陰影情報導出方法及びプログラム
JP2016001386A (ja) 画像生成方法、画像生成装置、コンピュータプログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170913

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171016

R150 Certificate of patent or registration of utility model

Ref document number: 6237291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees