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;
}
相关推荐
Omics Pro10 分钟前
深度学习多组学互作:组内+组间
数据库·人工智能·深度学习·mysql·搜索引擎·自然语言处理
听风吹等浪起17 分钟前
002:多图合并导出PDF【网页版】
计算机视觉·pdf
txg66627 分钟前
机器人领域简报(2026年7月9日—16日)
人工智能·深度学习·机器人
小小测试开发32 分钟前
Promptfoo 源码级解析:LLM 评估框架的核心设计与 CI/CD 集成实践
人工智能·ci/cd
凌虚36 分钟前
AI 时代,程序员会消失吗?
人工智能·后端·程序员
阿里云大数据AI技术40 分钟前
Hologres 4.2新特性 Liquid Table:让 Shard 数不再是建表时的一锤定音
人工智能
蓝瑟1 小时前
代码越写越乱? 从 Vibe Coding 到 Spec + Harness
人工智能·ai编程·代码规范
ACP广源盛139246256731 小时前
GSV6155@ACP# 搭配 AI 服务器、AI PC 完整适配方案
大数据·服务器·人工智能·分布式·单片机·嵌入式硬件
阿里云大数据AI技术1 小时前
Agent时代“Token炼金术”,阿里云 PAI 推出 TokenWorks:重塑企业专属的高保障SLO推理服务
人工智能·agent