как получить значение r, g, b с помощью opencv2.3 [дубликат]

Возможный дубликат:
Значение OpenCV rgb для cv :: Point в cv :: Mat

Как вы знаете, в Matlab легко получить Значения r / g / b с использованием r = image (:,:, 1) .

Но в openCV (до 2.2) мы должны использовать такой указатель:

plImage * img = cvCreateImage (cvSize (640,480), IPL_DEPTH_32F, 3); ((float *) (img-> imageData + я * img-> widthStep)) [j * img-> nChannels + 0] = 111; // B ((float *) (img-> imageData + i * img-> widthStep)) [j * img-> nChannels + 1] = 112; // G ((float *) (img-> imageData + i * img-> widthStep)) [j * img-> nChannels + 2] = 113; // R

Но с выходом openCV2.3 легко получить значение пикселя для одноканального изображения следующим образом:

Mat image;
int pixel = image.at(row,col);

Так что мне просто интересно, есть ли там еще простой способ получить пиксель r, g, b ценность многоканального изображения прямо как в Matlab? Приветствуется любая помощь =)

0
задан Community 23 May 2017 в 12:03
поделиться