3
我想用OpenCV 2.3訪問RGB中的像素。 我想這樣,但它像每個像素是相等的幀後幀,因爲我沒有輸出。圖像來自我的攝像頭,我可以看到它們。 Btw RED = 0;使用Mat OpenCV訪問像素
THX
Mat frame;
Mat oldFrame;
VideoCapture cap(0);
cap >> oldFrame;
sumFramePix = oldFrame.cols * oldFrame.rows;
nbChannels = oldFrame.channels();
cout << "NbcHANNELs : " << nbChannels << endl;
imshow("Video 1", oldFrame);
while(1)
{
cap >> frame;
imshow("Video 1", frame);
for(int i=0; i<frame.rows; i++)
{
for(int j=0; j<frame.cols; j++)
{
if (frame.ptr<uchar>(i)[nbChannels*j+RED] < oldFrame.ptr<uchar>(i)[nbChannels*j+RED])
{
cout << "==============-";
}
}
}
oldFrame = frame;
if(waitKey(300) >= 0) break;
}
更好地使用'frame.copyTo(oldFrame)'來避免每個幀的內存重新分配。 –
好點,謝謝。 +1 – SSteve