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;
}
相关推荐
算家计算3 分钟前
黄仁勋马斯克罕见同台!定调AI未来三大关键词:算力、货币失效与泡沫
人工智能·nvidia·资讯
roykingw23 分钟前
什么是世界模型?和大语言模型有什么区别?
人工智能·语言模型·自然语言处理
Aaron158835 分钟前
通用的通感控算存一体化平台设计方案
linux·人工智能·算法·fpga开发·硬件工程·射频工程·基带工程
musk121239 分钟前
人工智能学习大纲,豆包深入研究版
人工智能·学习
涛涛讲AI1 小时前
Gemini3对比豆包,不做游戏,不做图片拿我工作的实例对比
人工智能·扣子·豆包·gemini3
Web3_Daisy1 小时前
烧池子、貔貅、跑路概率…如何在链上避免踩雷?
人工智能·安全·web3·区块链·比特币
用户7227868123441 小时前
OpenCVSharp:BRISK特征检测
opencv
不知道累,只知道类1 小时前
把AI当助手:写好提示词的实战指南
人工智能
Zzz 小生1 小时前
Github-Go语言AI智能体开发套件:构建下一代智能代理的利器
人工智能·golang·github
CloudWeGo1 小时前
企业级落地案例:抖音搜索核心链路基于 Kitex 流式改造的技术实践
人工智能·架构·开源