cv::rect区域内 画为白色
时间: 2024-09-18 08:02:19 浏览: 39
PruebaColorOpenCV:OpenCV中的颜色识别测试
在OpenCV中,如果你想在某个矩形区域(Rect)内填充白色的像素,你可以先创建一个新的图像,然后使用`putPixel()`函数或`drawContours()`方法来填充白色。假设我们有一个已经存在的彩色图像`img`,以及一个矩形区域`rect`,这里是一个示例:
```cpp
#include <opencv2/opencv.hpp>
cv::Mat img; // 假设这是一张彩色图像
cv::Rect rect; // 假设这是你要填充白色矩形的位置,如 {x, y, w, h}
// 创建一个新的白色矩形图像,大小与原图相同
cv::Mat whiteRect(img.size(), img.type(), cv::Scalar(255, 255, 255)); // 255, 255, 255 表示白色
// 使用ROI (Region of Interest) 将白色矩形复制到原始图像的指定位置
cv::Mat roi = img(rect);
whiteRect.copyTo(roi);
// 或者,如果你想要在原地修改原图像,可以用 draw rectangle 的方法:
cv::rectangle(img, rect, cv::Scalar(255, 255, 255), -1); // -1表示完全填充,颜色为白色
// 最后记得显示或保存结果
cv::imshow("Image with White Rect", img);
cv::waitKey();
```
上述代码会在`rect`所指定的矩形区域内填充白色。
阅读全文