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;
}
相关推荐
kalvin_y_liu3 分钟前
智能体框架大PK!谷歌ADK VS 微软Semantic Kernel
人工智能·microsoft·谷歌·智能体
爱看科技6 分钟前
智能眼镜行业腾飞在即,苹果/微美全息锚定“AR+AI眼镜融合”之路抢滩市场!
人工智能·ar
星期天要睡觉30 分钟前
计算机视觉(opencv)——基于 OpenCV DNN 的实时人脸检测 + 年龄与性别识别
opencv·计算机视觉·dnn
Juchecar3 小时前
LLM模型与ML算法之间的关系
人工智能
FIN66683 小时前
昂瑞微:深耕射频“芯”赛道以硬核实力冲刺科创板大门
前端·人工智能·科技·前端框架·信息与通信·智能
benben0443 小时前
京东agent之joyagent解读
人工智能
LONGZETECH3 小时前
【龙泽科技】汽车动力与驱动系统综合分析技术1+X仿真教学软件(1.1.3 -初级)
人工智能·科技·汽车·汽车仿真教学软件·汽车教学软件
lisw053 小时前
SolidWorks:现代工程设计与数字制造的核心平台
人工智能·机器学习·青少年编程·软件工程·制造
大刘讲IT3 小时前
AI 生产工艺参数优化:中小型制造企业用 “智能调参“ 提升产品合格率与生产效率
人工智能·制造
图欧学习资源库3 小时前
人工智能领域、图欧科技、IMYAI智能助手2025年9月更新月报
人工智能·科技