opencv c++画像素点
时间: 2025-01-14 18:01:11 浏览: 38
### 使用 OpenCV C++ 绘制单个像素点
为了在图像上绘制单个像素点,可以使用 `cv::Mat` 类中的 `at()` 方法来访问并修改特定位置的像素值。下面是一个完整的示例程序,展示了如何创建一幅空白图像并在指定位置设置一个彩色像素点。
```cpp
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main() {
// 创建一张黑色背景的图片,大小为 300x300 像素,颜色通道数为 3 (BGR)
Mat image = Mat::zeros(300, 300, CV_8UC3);
// 定义要绘制的颜色 BGR 模型下的红色
Vec3b color(0, 0, 255);
// 设置坐标 (150, 150) 处的像素值为上述定义的颜色
image.at<Vec3b>(Point(150, 150)) = color;
// 显示带有新绘制像素点的窗口
namedWindow("Pixel Drawing Example", WINDOW_AUTOSIZE);
imshow("Pixel Drawing Example", image);
// 等待按键事件关闭显示窗口
waitKey(0);
return 0;
}
```
此代码片段首先初始化了一张全黑的 RGB 图像,接着通过调用 `image.at<Vec3b>()` 函数指定了具体坐标的像素值,并将其设为红色[^1]。最后利用 `namedWindow()` 和 `imshow()` 来展示含有新增像素点的结果图像。
阅读全文
相关推荐

















