2011-11-17 10 views

答えて

1

OpenCVとなります。

+1

[ 'cvCvtColor'機能](http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/opencv-intro。 html#SECTION00054000000000000000) – jlstrecker

+1

これはありません。 OpenCVはDelte E関数を逃してしまい、cvtColor()関数は、1つの色の値だけを変換したい場合には不便です。 – user1050747

+0

これはLabの色空間で簡単に計算できませんか?また、「色値のみ変換する」とはどういう意味ですか? – stnr

2

私はこれをJavascriptで書いています。 Cへの翻訳はとても簡単です!

deltaE2000()を参照してください。これはLCHabで色を取り、おそらくRGB→リニアRGB→XYZ→ラボ→LCHabに変換します。 CodeおよびUI demoである。

0

試しhttp://github.com/dmilos/color

コードサンプル:他のalgorithamsと

typedef ::color::rgb<double> color_t; // or lab or hsv or any other available model 

color_t a = ::color::constant::orange_t{};  
color_t b = ::color::constant::chocolate_t{}; 

std::cout << ::color::operation::distance<::color::constant::distance::CIE94_textile_entity>(a, b) << std::endl; 
std::cout << ::color::operation::distance<::color::constant::distance::CIEDE2000_entity>(a, b) << std::endl; 

他の例: https://github.com/dmilos/color/tree/master/example/less-than-1k/operation/distance

カラーモデルは無関係です。内部で自動的に変換されます。

すべての式はで文書化されています:http://en.wikipedia.org/wiki/Color_difference

関連する問題