Python如何只用20行代码给证件照换底色,学会了不怕没有女朋友!!!

本文介绍了如何使用Python通过20行代码将证件照的背景颜色更换。从读取图片到灰度转换、二值化处理、图像腐蚀和膨胀,再到最终的颜色替换,详细讲解了每一步骤。适合处理多张图片,提供了一种快速批量处理的方法。
摘要由CSDN通过智能技术生成

 

 
 

本文只是一种实现思路,当然PS很好用(一张的话建议使用PS哦~,多张图片的话用代码快很多哦~),希望大家能够学习更多的知识,才分享了这个文章。更多精彩,请关注公众号:【测试员小何】,可以获取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!

1.图片来源

该图片来源于百度图片,如果侵权,请联系我删除!图片仅用于知识交流。
在这里插入图片描述

2.读取图片并显示

  • imread():读取图片;
  • imshow():展示图片;
  • waitkey():设置窗口等待,如果不设置,窗口会一闪而过;
<span style="color:#000000"><code class="language-python"><span 
style="color:#b294bb">import</span> cv2
<span style="color:#b294bb">import</span> numpy <span style="color:#b294bb">as</span> np
<span style="color:#969896"># 读取照片</span>  #公众号【测试员小何】
img<span style="color:#a67f59">=</span>cv2<span style="color:#999999">.</span>imread<span style="color:#999999">(</span><span style="color:#b5bd68">'girl.jpg'</span><span style="color:#999999">)</span>

<span style="color:#969896"># 显示图像</span> #公众号【测试员小何】
cv2<span style="color:#999999">.</span>imshow<span style="color:#999999">(</span><span style="color:#b5bd68">'img'</span><span style="color:#999999">,</span>img<span style="color:#999999">)</span>

<span style="color:#969896"># 窗口等待的命令,0表示无限等待</span>
cv2<span style="color:#999999">.</span>waitKey<span style="color:#999999">(</span><span style="color:#b5bd68">0</span><span style="color:#999999">)</span>
</code></span>

效果如下:
在这里插入图片描述

3.图片缩放

  • resize():图片缩放,其中fx和fy表示缩放比例,0.5表示缩放为以前的 一半。
<span style="color:#000000"><code class="language-python"><span  style="color:#b294bb">import</span> cv2
<span style="color:#b294bb">import</span> numpy <span style="color:#b294bb">as</span> np
<span style="color:#969896"># 读取照片</span>
img<span style="color:#a67f59">=</span>cv2<span style="color:#999999">.</span>imread<span style="color:#999999">(</span><span style="color:#b5bd68">'girl.jpg'</span><span style="color:#999999">)</span>

<span style="color:#969896"># 图像缩放</span>  #公众号【测试员小何】
img <span style="color:#a67f59">=</span> cv2<span style="color:#999999">.</span>resize<span style="color:#999999">(</span>img<span style="color:#999999">,</span><span style="color:#de935f">None</span><span style="color:#999999">,</span>fx<span style="color:#a67f59">=</span><span style="color:#b5bd68">0.5</span><span style="color:#999999">,</span>fy<span style="color:#a67f59">=</span><span style="color:#b5bd68">0.5</span><span style="color:#999999">)</span>
rows<span style="color:#999999">,</span>cols<span style="color:#999999">,</span>channels <span style="color:#a67f59">=</span> img<span style="color:#999999">.</span>shape
<span style="color:#b294bb">print</span><span style="color:#999999">(</span>rows<span style="color:#999999">,</span>cols<span style="color:#999999">,</span>channels<span style="color:#999999">)</span>

<span style="color:#969896"># 显示图像</span>
cv2<span style="color:#999999">.</span>imshow<span style="color:#999999">(</span><span style="color:#b5bd68">'img'</span><span style="color:#999999">,</span>img<span style="color:#999999">)</span>

<span style="color:#969896"># 窗口等待的命令,0表示无限等待</span>
cv2<span style="color:#999999">.</span>waitKey<span style="color:#999999">(</span><span style="color:#b5bd68">0</span><span style="color:#999999">)</span>
</code></span>

结果如下:
在这里插入图片描述

4.将图片转换为灰度图像

三色图片有RGB三个颜色通道,无法进行腐蚀和膨胀的操作。这个就需要我们将彩色图片转换为hsv灰度图像后,再完成腐蚀和膨胀的操作。

  • cv2.cvtColor(img,cv2.COLOR_BGR2HSV)可以将彩色图片转化为hsv灰度图片。
<span style="color:#000000"><code class="language-python"><span style="color:#b294bb">import</span> cv2
<span style="color:#b294bb">impo
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值