我正在尝试在图像上绘制渐变线。我希望线条为绿色,并使用Scalar(0,255,0)。不过,我只得到黑色。对于Scalar(0,0,0),我也越来越黑了。对于Scalar(255,255,255),我得到白色,但是对于任何组合,没有其他颜色。部分代码如下:
line(visual_image,
Point(x1*scaleFactor, y1*scaleFactor),
Point(x2*scaleFactor, y2*scaleFactor),
Scalar(0,255,0),
1,8,0);
最佳答案
由于您无法将彩色线条,圆圈等绘制为灰度图像,因此必须首先将其转换为3个 channel :
Mat rgb;
cvtColor(visual_image, rgb, CV_GRAY2BGR);
// now draw your lines:
line( rgb,
Point(x1*scaleFactor, y1*scaleFactor),
Point(x2*scaleFactor, y2*scaleFactor),
Scalar(0,255,0),
1,8,0);
关于opencv - 标量(0,255,0)在opencv中没有给出绿色的线条,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23406368/