I’m trying to use the “new” 2.0 c++ version of OpenCV, but everything is else like in simple C version. I have some problem with changing the values in image.
The image is CV_8UC3.
for (int i=0; i<image.rows; i++)
{
for (int j=0; j<image.cols; j++)
{
if (someArray[i][j] == 0)
{
image.at<Vec3i>(i,j)[0] = 0;
image.at<Vec3i>(i,j)[1] = 0;
image.at<Vec3i>(i,j)[2] = 0;
}
}
}
It’s not working. What am I doing wrong???
Thank you!
Shouldn’t you be using
Vec3binstead ofVec3i?CV_8UC3means your image is 8 bit, 3 channels, unsigned char. WhileVec3iis for 3 channels integers andVec3bis for 3 channels unsigned char.So I think you should be using
Vec3b