一个小作业,用的VS2019,c++,自己配置了opencv4(不知道要不要用)。输入是任意两张灰度图像A和B,遍历图像B的每一个像素点,判断像素点灰度值是否为0,不为0不操作,若为0,则将图像A中同坐标像素点的灰度值置为0,全部判断完成后重新保存图像A。
可以用opencv,方便一点
Mat img = imread("1.jpg",0);
int row = img.rows;/
int col = img.cols*img.channels();
cout << row << "," << col << endl;
for (int i = 0; i < row; ++i)
{
uchar *data = img.ptr<uchar>(i);
for (int j = 0; j < col; ++j)
{
int pixeldata = data[j]; //这个就是灰度值
}
}
return 0;
————————————————
版权声明:本文为CSDN博主「沐风的程序人生」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/any1234567890/article/details/80814021
我知道怎么访问像素得到灰度值,关键在于灰度值的判定以及对应改变另一图像的同坐标灰度值