定义二维数组vector<vector<Point> > contours;利用image.at<uchar>(contours[i][0])读取图像中的像素,如何将image.at<uchar>(contours[i][0])转换为image.ptr<uchar>()形式
时间: 2023-12-18 16:02:27 浏览: 70
dgx.zip_3d contours_MATLAB四维_matlab等高线_立体图_等高线 三维
可以使用以下代码将`image.at<uchar>(contours[i][0])`转换为`image.ptr<uchar>()`形式:
```
int row = contours[i][0].y; // 获取行数
int col = contours[i][0].x; // 获取列数
uchar pixel_value = image.ptr<uchar>(row)[col]; // 获取该像素的值
```
这里首先获取了轮廓中第一个点的行列数,然后使用`image.ptr<uchar>(row)`获取该行的指针,最后通过指针加上列数`col`获取该像素的值。
阅读全文