当前位置:   article > 正文

基于opencv2实现证件照换背景(从蓝色到红色)_opencv和ncnn人像分割换背景

opencv和ncnn人像分割换背景

刚好手头上有一张证件照,尝试把蓝色底换成红色或白色底,网上搜的资料不多,且大多数都是基于opencv1写的,于是尝试写了下opencv2的。主要步骤为:

1.把RGB图像转换到HSV空间

2.取背景的一小块20*20,计算蓝色背景的平均色调和饱和度

3.设置阈值,取出蓝色背景替换为红色背景

4.把HSV图像转换会RGB空间

5.滤波器去除边缘效应

具体代码为:

  1. // change_color.cpp : 定义控制台应用程序的入口点。
  2. //证件照从蓝色底换成红色底
  3. #include "stdafx.h"
  4. #include <iostream>
  5. #include <opencv2\core\core.hpp>
  6. #include <opencv2\highgui\highgui.hpp>
  7. #include <opencv2\imgproc\imgproc.hpp>
  8. using namespace cv;
  9. using namespace std;
  10. int _tmain(int argc, _TCHAR* argv[])
  11. {
  12. char *origin="Original";
  13. char *window=
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/285064
推荐阅读
相关标签
  

闽ICP备14008679号