python 实现证件照更换背景色,撩妹功能,速速来get

        产品妹子在工作群里问谁能免费帮她换个证件照的背景色,这个时候就显出划水的我来了,上来自告奋勇,妹子把证件照发来,我赶紧打开Python,三下五除二就撸了一个换背景色的代码,妹子崇拜的跟我说谢谢哥哥。我心里咯咯咯,表面淡定的说,小事小事。好了故事就编到这了,故事的中心思想是,空有一身武艺,铁子你得支棱起来啊,上代码!!!!

        把Python3 搞里头!!!

        把cv2搞里头!!!

        把numpy搞里头!!!

import cv2
import numpy as np
import sys

def change(sourcefile,savepath,colortype):
    # 读取照片
    image=cv2.imread(sourcefile)

    # 图像缩放
    img = cv2.resize(image,None,fx=0.5,fy=0.5)
    rows,cols,channels = img.shape

    # 图片转换为灰度图
    hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)

    # 图片的二值化处理
    #红底变蓝底
    if colortype == '1':
      lower_blue = np.array([0,135,135])
      upper_blue = np.array([180,245,230])
      mask = cv2.inRange(hsv, lower_blue, upper_blue)
  

    # #蓝底变红底
    if colortype == '2':
      lower_red = np.array([90,70,70])
      upper_red = np.array([110,255,255])
      mask = cv2.inRange(hsv, lower_red, upper_red)

    #腐蚀膨胀
    erode=cv2.erode(mask,None,iterations=1)
    dilate=cv2.dilate(erode,None,iterations=1)

    # 遍历像素点,进行颜色的替换
    for i in range(rows):
      for j in range(cols):
        if dilate[i,j]==255:   
          if colortype == '1':
            img[i,j]=(255,0,0)    
          elif colortype == '2':
            img[i, j] = (255, 255, 255)  # 变白底
    cv2.imwrite(savepath, img)

if __name__ == '__main__':
  sourcefile = sys.argv[1]
  savepath = sys.argv[2]
  colortype = sys.argv[3]
  change(sourcefile,savepath,colortype)

        简单实用,最后就看你们能不能把妹子搞里头了!!!看不懂代码的留言,如果把妹这件事还用我教你们的话,那你代码真是白写了,散会!!!

        推广一下个人工具站,点击这里我把一些Python实现的小工具做到网站上了,代码不会写的,直接用这个免费的

        

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值