这里介绍两种
通过行的首地址进行访问
for (int row = 0; row < ori_img.rows; ++row)
{
cv::Vec3b* ptr = ori_img.ptr<cv::Vec3b>(row);
for (int col = 0; col < ori_img.cols; col++)
{
ptr[col] = cv::Vec3b(0,1,2); // 对行列的同一位置的多通道进行赋值,这里是三通道
}
}
通过mat.at形式进行访问
//->遍历图像每个元素
/* for (int r = 0; r < ori_img.rows; r++)
{
for (int c = 0; c < ori_img.cols; c++)
{
// 这里可以对多个通道进行赋值,或者加减乘除的操作
ori_img.at<cv::Vec3b>(r, c)[0] = 0;
ori_img.at<cv::Vec3b>(r, c)[1] = 0;
ori_img.at<cv::Vec3b>(r, c)[2] = 0;
}
std::cout << "___" << std::endl;
}*/