Albertの勉強記録

好きなように殴り書きします。文章力を鍛えるために殴り書きします。

RGBからLAB色空間への変換

ずいぶん前の話になりますが、うちの学校の体験入学でクロマキーをやりました。

そのときに使った色の判別法(LAB色空間)が便利だったので、ブログに残しておこうと思います

 

LAB色空間とは

色の特徴は3つの座標により決定されるが、その座標軸が直交しているもの。

つまり、色の差を出すときユークリッド空間のノルム(2乗和の平方)をとればよい

 

RGBからLABへの変換

 ・先ず、RGBのそれぞれを0~1にします。

 ・それぞれを2.2乗します。

・それを列ベクトルとし、Mと掛け合わせます。

・出てきたX,Y,ZとMの行要素の和であるI,J,Kを使い、L,a,bをそれぞれ導出します。

 上記スクリプトはUnityEngineを使用しているため浮動小数点を使っていますがdoubleでも問題ないと思います。

参考になれば