OpenCVには色変換が組み込まれています。あなたはそれらを使うことも、自分の色変換ルーチンのインスピレーションとして使うこともできます。 を参照してくださいthe doc about color conversion in OpenCV (cv::cvtColor)
それを使用する1つの可能な方法は次のようになります。
#include <cv.h>
#include <highgui.h>
int main()
{
cv::Mat imgRgb = cv::imread("file.bmp");
cv::Mat imgLab;
cv::cvtColor(imgRgb, imgLab, Cv::CV_BGR2Lab);
//access Lab values
int y = 50;
int x = 20;
double L = imgLab.at<double>(y,x)[0]; //beware the order : openCV treats images as matrixes, thus the y param come first
double a = imgLab.at<double>(y,x)[1];
double b = imgLab.at<double>(y,x)[2];
}
は注意してください:私は、これはただのドラフトで、このコードをテストしたり、コンパイルできませんでした。
ありがとう。私が処分したコードは、pdfファイルを生成するカイログラフィックス関数に基づいているので、あなたが提案したライブラリと一緒にCIELabの色付きpdf出力を出力する方法はありますか?そうでない場合、これを可能にするライブラリの提案は高く評価されます。 – user506901
さて、pdfは画像フォーマットではありません。これは、イメージ、テキスト、フォントを含むことができるフォーマットです(そしてそのリストも続きます)。そして、いいえ、opencvはpdfファイルを扱いません。 cimgライブラリを見てみることをお勧めします。これはopencvより使いやすく、RGBtoLab変換も行っています(http://cimg.sourceforge.net/reference/structcimg__library_1_1CImg.htmlを参照)。 imagemagick(imagemagickはpdfファイルを扱う)をインストールすれば、pdfに出力することができます:http://cimg.sourceforge.net/reference/group__cimg__files__io.html –