背景扣除

参考:

常用颜色

如果是蓝色背景,颜色值可设置为:R:60 G:140 B:220 或C:85 M:40 Y:0 K:0.
如果用红色背景,颜色值可设置为:R:255 G:0 B:0 或C:0 M:100 Y:100 K:0.
附:中华人民共和国出入境/护照照片的 背景蓝色值:R:67 G:142 B:219
二代身份证和社保相的 背景色值:R:255 G:255 B:255即纯白色。

一、非白色背景

1.把RGB图像转换到HSV空间
2.取背景的一小块20*20,计算蓝色背景的平均色调和饱和度
3.设置阈值,取出蓝色背景替换为红色背景
4.把HSV图像转换会RGB空间
5.滤波器去除边缘效应

1314054-40d399822712a47b.png
http://blog.csdn.net/jiang111_111shan/article/details/46272429

此方法问题

服饰的颜色会受到影响,蓝领带可能会变成红领带!

二、白色背景

方法一:对图像每个点遍历,只保留RGB小于数值的点

核心代码

      for(j = 0;j< pImg1->height ; j++){
        uchar* ptr = (uchar*)(pImg1->imageData+j*pImg1->widthStep);
        uchar* ptr1 = (uchar*)(pfish->imageData+j*pfish->widthStep);
        uchar* ptr2 = (uchar*)(bk.data.ptr+j*bk.step);
        for(i = 0;i < pImg1->width ; i++)
        {
            if(ptr[i] < 250)  //像素值小于250的保留下来 并显示到背景图上 即白色部分被去除 
            {
                ptr2[i*3] = ptr1[i*3];
                ptr2[i*3 + 1] = ptr1[i*3 + 1];
                ptr2[i*3 + 2] = ptr1[i*3 + 2];
            }
        }
    }

此方法问题

只适用于纯白背景或者非常偏向白色背景

方法二

图像像素点RGB值突变
1314054-d1a7eca68c60e504.png
http://blog.csdn.net/cy_tec/article/details/51460807

方法三:寻找轮廓

方法四:inRange()函数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值