RGB 画像の領域の平均色を計算しようとしています。画像の関心領域はマスクで表されます。関数をopencvで使用cvAvg
しましたが、どういうわけか正しく実行できません。次のコードを使用しました。
//Prepare the mask
CvMat*regionMask = cvCreateMat(inImage->height, inImage->width, CV_8UC1);
cvZero(regionMask);
uchar* maskData = regionMask->data.ptr;
if(some_cond)
maskData[(p.y)*inImage->width + p.x] = 1;
//Compute average and set the output region
cvSet(outImage, cvAvg(inImage, regionMask), regionMask);
結果は次のとおりです。
最初の画像が入力され、次にマスク、そして出力画像が続きます。
ここで何か間違ったことをしていますか?事前にご協力いただきありがとうございます。