説明
[色彩検査]


説明

色彩検査

色彩検査は、任意のカラー画像に対する検査をするライブラリです。 ユーザーは、本ライブラリの機能を応用することで、カラー画像に対する様々な検査を実現することが可能です。 例としては、対象物の色むらや色しみ等の色彩欠陥を見つけるなどが挙げられます。
本ライブラリで実現する色彩検査は、Fig1に示すような処理対象領域へのユーザーの問い合わせに対して、 いくつかの手法を用いて定量的に回答を提示します。 Fig1で、白枠で囲まれている部分を処理対象領域とします。 枠内の数字は、任意に与えた処理対象領域の番号です。 本ライブラリでは、以下に示す要求などに対して回答を提示します。

なお本ライブラリにおいては、処理対象領域より求めた特徴量をまとめたものを「色票」と定義します。

colorchart.png

Fig1. 色票とは?

color_extraction.png

Fig2. 色抽出とは?

colorcheck.png

Fig3. 色彩検査とは?

色票

色票とは、前述したように処理対象領域の特徴量をまとめたものです。 色票構造体は、 F_COLOR_CHART を参照ください。 本ライブラリでは、この色票を基に様々な処理が実行されます。 本ライブラリで色票にまとめられている特徴量は、

の2つです。
平均色は、入力された色空間が RGB 色空間であった場合には、R 、G 、B のチャネル毎の平均が保持されます。 カラーの表現方法としての色空間には、 RGB 以外にも、 L*a*b* 、 HSV 、 XYZ などの様々な色空間が存在します。 本ライブラリでは、色空間については考慮しません。 特定の色空間を使用したい場合には、ユーザーが前もって、その色空間に変換した画像を入力画像として使用する必要があります。


距離空間

本ライブラリでは、様々な距離によって、色の違いを表します。 本ライブラリで使用される距離を以下に示します。 Fig4に、各距離の等距離線の関係を示します。

ユークリッド距離

ユークリッド距離は、最も基本的な距離定義であり、K 次元空間の物理距離と一致します。

\[ d_{ij} = \sqrt{ \sum _{l = 1}^{K} \left( x_{i}^{l} - x_{j}^{l} \right)^{2} } \]

重み付きユークリッド距離

重み付きユークリッド距離は、 K 次元空間の各次元を一様に扱わない距離算定法です。 各次元の重要度を変えることにより、物理的距離としてではなく、なんらかの評価基準に基づいた計量的距離として定められます。

\[ d_{ij} = \sqrt{ \sum _{l = 1}^{K} w^{l} \left( x_{i}^{l} - x_{j}^{l} \right)^{2} } \]

マンハッタン距離(市街地距離、四近傍距離)

マンハッタン距離は、加算、減算のみからなっており、高速に大量の距離計算を乗算性能の劣るコンピュータで行う場合などにむいています。

\[ d_{ij} = \sum _{l = 1}^{K} | x_{i}^{l} - x_{j}^{l} | \]

チェビシェフ距離(チェス盤距離、八近傍距離)

マンハッタン距離が、各特徴軸にそった長さの和で距離を定義しているのに対し、チェビシェフ距離は各特徴軸にそった長さの最大値で定義します。

\[ d_{ij} = \max _{l} \left[ | x_{i}^{l} - x_{j}^{l} | \right] \]

colorcheck_norm.png

Fig4. 各ノルムの等距離線の関係

マハラノビス距離

それぞれのクラス(チャネル)が多次元の正規分布に従うと仮定した場合に、マハラノビス距離は、あるデータからそれぞれのクラスまで最も自然な距離を与えます。 すなわち、クラスのもつ固有の分散による影響を正規化した空間での距離として定められます。
参考のために、Fig5に、2次元座標上でのマハラノビス距離を示します。 重心から各点への距離は、ユークリッド距離では、 a = c ≦ b = d となりますが、マハラノビス距離では、 a = b = c = d となります。 マハラノビス距離はデータの拡がり(分散)を考慮した距離であるため、このような結果となります。

colorcheck_mahalanobis.png

Fig5. 2次元上でのマハラノビスノルム

平均ベクトルが$ \mu $、分散共分散行例が$ \Sigma $であるような多変数ベクトルで表される 一連のデータに対するマハラノビス距離は、次のように定義されます。

\[ d_{i} = \sqrt{\left( x_{i} - \mu \right)^{t} \Sigma^{-1} \left( x_{i} - \mu \right) } \]

色彩検査では、多変数ベクトルが色の数値(R、G、Bの値など)、平均ベクトルと分散共分散行列はそれぞれ 色票でまとめられている平均値・分散共分散行列となります。

ノルム

以後、本ライブラリでは、平面あるいは空間における幾何学的ベクトルの "長さ" の概念の一般化であり、 ベクトル空間に対して「距離」を与えるための数学の道具であるノルムとして距離を表現します。


データ構造

struct  F_COLOR_CHART
 色票構造体 [詳細]

マクロ定義

#define F_CC_CALCULATED_VARIANCE   0x00000001
#define F_CC_VALID_MAHALANOBIS   0x00000002

列挙型

enum  f_colorcheck_norm_type {
  F_CC_CHEBYSHEV = 1, F_CC_MANHATTAN = 2,
  F_CC_EUCLIDEAN = 4, F_CC_WEIGHTED_EUCLIDEAN = 5,
  F_CC_MAHALANOBIS = 6, F_CC_VARIANCE = 98,
  F_CC_TOLERANCE = 99
}
 ノルム種別指定 [詳細]

マクロ定義

#define F_CC_CALCULATED_VARIANCE   0x00000001

色票用フラグ:分散共分散行列が計算済

#define F_CC_VALID_MAHALANOBIS   0x00000002

色票用フラグ:マハラノビスノルムが計算できる


列挙型

ノルム種別指定

色彩検査でノルムの種別を指定するための列挙体です。

列挙型の値:
F_CC_CHEBYSHEV  チェビシェフノルム: $ d_{ij} = \max _{l} \left[ | x_{i}^{l} - x_{j}^{l} | \right] $
F_CC_MANHATTAN  マンハッタンノルム: $ d_{ij} = \sum _{l = 1}^{K} | x_{i}^{l} - x_{j}^{l} | $
F_CC_EUCLIDEAN  ユークリッドノルム: $ d_{ij} = \left\{ \sum _{l = 1}^{K} \left( x_{i}^{l} - x_{j}^{l} \right)^{2} \right\}^\frac{1}{2} $
F_CC_WEIGHTED_EUCLIDEAN  重み付けユークリッドノルム: $ d_{ij} = \left\{ \sum _{l = 1}^{K} w^{l} \left( x_{i}^{l} - x_{j}^{l} \right)^{2} \right\}^\frac{1}{2} $
F_CC_MAHALANOBIS  マハラノビスノルム: $ d_{i} = \left\{ \left( x_{i} - \mu \right)^{t} \Sigma^{-1} \left( x_{i} - \mu \right) \right\}^\frac{1}{2} $
F_CC_VARIANCE  分散基準
F_CC_TOLERANCE  許容範囲基準


Documentation copyright © 2009-2023 FAST Corporation.
Generated on Fri Jan 13 11:09:34 2023 for FIEライブラリ by doxygen 1.5.6-FASTSP-p2