Я пытаюсь установить новое значение цвета для некоторого пикселя в изображение cv:: Mat, которое находится ниже:
Mat image = img;
for(int y=0;y<img.rows;y++)
{
for(int x=0;x<img.cols;x++)
{
Vec3b color = image.at<Vec3b>(Point(x,y));
if(color[0] > 150 && color[1] > 150 && color[2] > 150)
{
color[0] = 0;
color[1] = 0;
color[2] = 0;
cout << "Pixel >200 :" << x << "," << y << endl;
}
else
{
color.val[0] = 255;
color.val[1] = 255;
color.val[2] = 255;
}
}
imwrite("../images/imgopti"+to_string(i)+".tiff",image);
Кажется, что получается хороший пиксель на выходе (с cout), однако на выходном изображении (с imwrite) соответствующий пиксель не изменяется. Я уже пробовал использовать color.val [0]. Я до сих пор не могу понять, почему пиксельные цвета в выходном изображении не меняются. спасибо