4
我使用下面的代码在opencv中旋转图像。然而,之后,角落被染成黑色。我想当我设置borderMode
到BORDER_CONSTANT
我可以指定颜色。但是无论我设置了什么颜色(最后一个参数),结果都是黑色的。如何在旋转图像时填充边框?
cv::Mat rotated;
float rotation = 3.0f;
cv::warpAffine(img,
rotated,
rotation,
img.size(),
cv::INTER_CUBIC,
cv::BORDER_CONSTANT,
cv::Scalar(1.0, 1.0, 1.0, 0.0));
cv::imshow("rotated", rotated);
有人请解释我,我在做什么错在这里?
我知道我以后可以使用cv::floodFill
,但不知何故应该可以只使用warpAffine
。
是为'Scalar'的α值的第四参数?如果是这样,它应该是1.0或255,而不是0.0。 –