C++ opencv图片边缘填充
时间: 2023-11-01 11:07:46 浏览: 120
在C++中,使用OpenCV库进行图片边缘填充可以使用cv::copyMakeBorder函数。该函数可以在图像的边缘周围添加一个指定大小的填充。
以下是一个简单的示例代码,展示了如何使用cv::copyMakeBorder函数进行图片边缘填充:
```cpp
#include <opencv2/opencv.hpp>
int main() {
// 读取图像
cv::Mat image = cv::imread("input.jpg", cv::IMREAD_COLOR);
// 定义填充参数
int top = 10;
int bottom = 10;
int left = 10;
int right = 10;
int borderType = cv::BORDER_CONSTANT;
cv::Scalar value(255, 255, 255); // 填充色为白色
// 进行边缘填充
cv::Mat paddedImage;
cv::copyMakeBorder(image, paddedImage, top, bottom, left, right, borderType, value);
// 显示原始图像和填充后的图像
cv::imshow("Original Image", image);
cv::imshow("Padded Image", paddedImage);
cv::waitKey(0);
return 0;
}
```
在上述代码中,我们首先使用cv::imread函数读取输入图像。然后,我们定义了填充的参数,包括上、下、左、右的填充大小,填充类型以及填充的颜色。最后,我们使用cv::copyMakeBorder函数进行边缘填充,并将填充后的图像显示出来。
请注意,上述代码中的"input.jpg"应该替换为你自己的图像路径。
希望这可以帮助到你!如果有任何进一步的问题,请随时提问。
阅读全文