opencv图片换背景色

cpp 复制代码
#include <iostream>
#include<opencv2/opencv.hpp>    //引入头文件

using namespace cv;             //命名空间
using namespace std;

//opencv这个机器视觉库,它提供了很多功能,都是以函数的形式提供给我们
//我们只需要会调用函数即可

int main(int argc, char *argv[])
{
    //读一张图片
    Mat image=imread("E:/C++/project/test.jpg");        //Mat图片类型
    //显示一张图片
    imshow("1",image);

    //图片转hsv格式
    Mat hsv;
    cvtColor(image,hsv,COLOR_BGR2HSV);
    imshow("2",hsv);

    //截取颜色区域的范围inRang 在hsv取值范围内呈白色 不在范围内呈黑色
    Mat mask;//模板
    inRange(hsv,Scalar(100,43,46),Scalar(124,255,255),mask);    //蓝色最小值最大值
    imshow("3",mask);//现在的mask就是抠出蓝色的底色

    //取反操作 但是我们需要抠出的是人像
    bitwise_not(mask,mask);
    imshow("4",mask);

    //做一张红色背景图
    Mat redBack=Mat::zeros(image.size(),image.type());
    redBack=Scalar(40,40,200);//红色三原色
    imshow("5",redBack);

    //实现图片拷贝 要用到原始图片 人物头像模板 红色背景
    image.copyTo(redBack,mask);
    imshow("6",redBack);

    //参数为0的时候表示等待用户按下任意,键
    waitKey(0);
    return 0;
}
相关推荐
白帽子黑客罗哥几秒前
不同就业方向(如AI、网络安全、前端开发)的具体学习路径和技能要求是什么?
人工智能·学习·web安全
捕风捉你11 分钟前
【AI转行04】特征工程:治疗 AI 的“学不会”和“想太多”
人工智能·深度学习·机器学习
何贤12 分钟前
2026 年程序员自救指南
人工智能·程序员·掘金技术征文
AKAMAI17 分钟前
分布式边缘推理正在改变一切
人工智能·分布式·云计算
极新28 分钟前
智面玄赏联合创始人李男:人工智能赋能招聘行业——从效率革新到平台经济重构|2025极新AIGC峰会演讲实录
人工智能·百度
乾元38 分钟前
ISP 级别的异常洪泛检测与防护——大流量事件的 AI 自动识别与响应工程
运维·网络·人工智能·安全·web安全·架构
机器之心38 分钟前
多模态推理新范式!DiffThinker:用扩散模型「画」出推理和答案
人工智能·openai
linhx1 小时前
【AIGC工作流】解构AI短剧生产管线:从手动调用DeepSeek+MJ,到Agent一站式自动化的演进
人工智能·自动化·aigc
棒棒的皮皮1 小时前
【深度学习】YOLO模型评估之指标、可视化曲线分析
人工智能·深度学习·yolo·计算机视觉
驭白.2 小时前
不止于自动化:新能源汽车智造的数字基座如何搭建?
大数据·人工智能·自动化·汽车·数字化转型·制造业