opencv c++ 抠图另存
时间: 2024-01-24 21:15:31 浏览: 119
OpenCV c++细化算法
以下是使用OpenCV C++实现图像抠图并另存的示例代码:
```cpp
#include <opencv2/opencv.hpp>
int main() {
// 读取原始图像
cv::Mat image = cv::imread("input.jpg");
// 创建一个与原始图像大小相同的掩膜图像
cv::Mat mask(image.size(), CV_8UC1, cv::Scalar(0));
// 在掩膜图像上绘制抠图区域,这里以矩形为例
cv::Rect roi(100, 100, 200, 200);
cv::rectangle(mask, roi, cv::Scalar(255), cv::FILLED);
// 将掩膜应用于原始图像,实现抠图
cv::Mat result;
image.copyTo(result, mask);
// 保存抠图结果
cv::imwrite("output.png", result);
return 0;
}
```
这段代码首先读取原始图像,然后创建一个与原始图像大小相同的掩膜图像。接下来,在掩膜图像上绘制抠图区域,这里以矩形为例。然后,将掩膜应用于原始图像,实现抠图。最后,将抠图结果保存为output.png。
阅读全文