最近发现用Chat GPT能够把Python代码翻译成c++, 真的便利无比。
cv::findContours之后可以用cv::contourArea来计算轮廓面积大小,但是没找到计算轮廓内平均像素值的函数,所以试着写了一下:
// 先定义全为0的mask矩阵 cv::Mat mask = cv::Mat::zeros(img.size(), img.type()); // 在mask上画出轮廓 cv::drawContours(mask, contours, i, cv::Scalar(255, 255, 255), -1); // 给图像加上mask, 仅剩轮廓内区域为有效部分,并计算区域内的平均像素值 cv::Scalar mean_value = cv::mean(img, mask);