如何在旋转图像时填充边框
how to fill borders when rotating images?
我使用以下代码在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
。
您是否尝试了大于1的值?白色应该是
Scalar(255,255,255);
蓝色:Scalar(255,0,0);
等等
OpenCV矩阵中的值表示为uchar(0..255),而不是(0.0..1.0)
相关文章:
- 在c++中用vector填充一个简单的动态数组
- 如何使用用户输入在C++中正确填充2D数组
- 如何找到大小'x'数组是否完全填充,在C++?
- Cuda C++:设备上的Malloc类,并用来自主机的数据填充它
- 通过for循环使用用户输入填充列表
- 根据用户输入用字母填充矢量,并将"开始"和"结束"放在四肢
- 如何正确填充在堆上分配的二维数组?
- 将数字转换为填充字符串
- 有没有办法在一行中填充矢量图
- 用C++中的数字和条件填充向量
- 用真值填充矢量
- 使用结构成员指针在C++中填充结构
- 流填充字符的默认定位
- 使用不同算法的 PKCS1v15 填充进行加密 ++ 签名
- C++:使用缓冲区中的数据填充结构
- 如何将零填充的多维数组传递给 C++ 中的函数?
- Cryptopp:获取密码输入的填充字符串
- 填充上编译器生成的复制构造函数之间的不一致
- 在C++中,在图像周围填充黑色边框是最有效的方法
- 如何在旋转图像时填充边框