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;
}
相关推荐
考勤技术解析12 小时前
外包技术人员打卡管理的技术痛点与轻量化解决方案
大数据·人工智能·ai
BizViewStudio12 小时前
甄选 2026:AI 重构新媒体代运营行业的三大核心变革与落地路径——附10家优质服务商
大数据·网络·人工智能·媒体
小兵张健12 小时前
武汉 AI 面试圈,真的很小
人工智能·面试·ai编程
阿乔外贸日记13 小时前
土耳其包装市场需求缺口分析
大数据·人工智能·物联网·搜索引擎·云计算
mahtengdbb113 小时前
RepViT块改进YOLOv26重参数化与双路径特征混合双重突破
人工智能·yolo·目标跟踪
wusp199413 小时前
DeepSeek V4 Flash + DMXAPI:文生图提示词智能优化
大数据·人工智能·机器学习
领航猿1号13 小时前
AI Coding 安全解决方案
网络·人工智能·安全
李昊哲小课13 小时前
AGENTS.md - LLM Wiki 行为规范
人工智能·本地知识库·llm wiki
杰建云16713 小时前
Openclaw 网络爬虫框架深度评测与实战指南
人工智能
人工智能AI技术13 小时前
自动驾驶基础:感知、决策、控制三层解析
人工智能