C++怎么在一幅灰度图像中找到一个已知像素值的所有坐标,并把坐标放到vector容器中返回
时间: 2024-05-05 07:18:25 浏览: 66
C++ 灰度图像处理
4星 · 用户满意度95%
可以使用双重循环遍历图像中的每个像素,找出值与已知像素值相同的像素,并将其坐标加入到vector容器中返回。代码示例如下:
```c++
vector<Point> findPixel(Mat image, uchar value) {
vector<Point> result;
for (int i = 0; i < image.rows; i++) {
for (int j = 0; j < image.cols; j++) {
if (image.at<uchar>(i, j) == value) {
Point pt(j, i);
result.push_back(pt);
}
}
}
return result;
}
```
其中,Mat是OpenCV中表示图像的数据类型,<uchar>是表示像素类型的模板参数,Point是表示二维坐标的数据结构。在函数中使用at()方法获取图像中指定位置的像素值。
阅读全文