2012-10-09 135 views

回答

1

在emgu cv中,您可以像this那樣做。

//顏色

//紅

字節Red_val = My_Image.Data [Y,X,0];

//綠色

字節Green_val = My_Image.Data [Y,X,1];

//藍

字節Blue_val = My_Image.Data [Y,X,2];


//灰度

字節Gray_val = My_Image.Data [Y,X,0];

1

像素強度與該像素的灰度值相同。爲了得到一個RGB圖像的灰度(像素強度)版本可以做到這一點:

cv::cvtColor(rgb_mat,gray_mat,CV_RGB2GRAY); 

現在3通道RGB圖像已經被轉換爲1個信道的灰度圖像。爲了找到像素(x,y)的的RGB圖像中的強度可以做到這一點:

//NOTE: in OpenCV pixels are accessed in (row,col) format 
int intensity = (int)gray_mat.at<uchar>(y,x); 

由於每個灰度像素被存儲爲UCHAR,的intensity值範圍爲(0-255),其中255是最大強度(看作是一個完全白色的像素)。