该图片来源于百度图片,如果侵权,请联系我删除!图片仅用于知识交流。
import cv2
import numpy as np
# 读取照片
img=cv2.imread('girl.jpg')
# 图像缩放
img = cv2.resize(img,None,fx=0.5,fy=0.5)
rows,cols,channels = img.shape
print(rows,cols,channels)
cv2.imshow('img',img)
# 图片转换为灰度图
hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
cv2.imshow('hsv',hsv)
# 图片的二值化处理
lower_blue=np.array([90,70,70])
upper_blue=np.array([110,255,255])
mask = cv2.inRange(hsv, lower_blue, upper_blue)
#腐蚀膨胀
erode=cv2.erode(mask,None,iterations=1)
cv2.imshow('erode',erode)
dilate=cv2.dilate(erode,None,iterations=1)
cv2.imshow('dilate',dilate)
# 窗口等待的命令,0表示无限等待
cv2.waitKey(0)
这篇文章最终展示出来的效果并不是那么的好,可以看出轮廓周围的毛边,并没有很好的去除,可能我的学艺不精的缘故。如果哪位大神有兴趣,可以将这个代码完善一下,上方我提供了原文链接。
既然大家都对这个技能如此感兴趣,我必须要找到一个既容易又效果好的方法,来完成证件照换底色的需求。如果说Python效果不太好,PS又需要一定的基础,那么Excel照换底色,会是很好的选择(效果如下)。
从上图可以看出:Excel证件照换底色的效果还是蛮好的,轮廓周围的毛边完全没有。
废话不多说,我们直接进入主题。看看Excel中,如何完成证件照换底色这个操作?
① 导入图片
这一步有一个很关键的步骤,如果没处理好,有可能会将衣服背景一并删除。因此我们需要标记要保留的区域。
注意:是不断点击要保留的区域,直至这个衣服完全出现为止。如果没有做这一步,出来的就是一个人头像,效果如图。
当我们换好证件照底色后,还可以给图片做一系列的修改,简直不要太爽!
更多精彩推荐
☞ 去伪存真,更多区块链落地应用即将涌现 ☞ 你认为程序员的最高境界是什么?| 每日趣闻 ☞ 虎牙、斗鱼正式达成合并协议;中国广电正式成立,或催生5G发展新格局;Linux 5.9 释出|极客头条 ☞ 8000字 | 32 张图 | 一文搞懂事务+隔离级别+阻塞+死锁 ☞ 图神经网络快速爆发,最新进展都在这里了 ☞ 今年至少有75家交易所关闭,近半数没有说明原因
点分享 点点赞 点在看