RGBをグレースケールに変換しようとしています。ただし、出力は元のビデオと同じです。このコードのエラーを教えてください。とても役に立ちます。
IplImage *myimage = cvCreateImage(cvGetSize(videoFrame),IPL_DEPTH_8U, 3);
cvZero(myimage);
CvScalar pixelvalue, setpixelvalue;
for (int i=0;i<videoFrame->height;i++)
{
for (int j=0;j<videoFrame->width;j++)
{
pixelvalue = cvGet2D(videoFrame, i, j);
int b= pixelvalue.val[0];
int g= pixelvalue.val[1];
int r= pixelvalue.val[2];
int gc= r*0.299+g*0.587+b*0.114;
setpixelvalue.val[0]=gc;
cvSet2D(myimage, i, j, setpixelvalue);
cvSet2D(myimage, i, j, pixelvalue);
}
}