一张照片快速生成1寸照片,小白可用

article/2025/8/17 4:18:17
talk is cheep,show you the code
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
from matplotlib import animation
import paddlehub as hub
from PIL import Image, ImageSequence
import numpy as np
import os
import cv2# 定义人脸识别和人物识别的paddlehub函数
face_landmark = hub.Module(name="face_landmark_localization")
human_seg = hub.Module(name="deeplabv3p_xception65_humanseg")# 抠图
def seg_face(img):result = human_seg.segmentation(images=[cv2.imread(img)],visualization=True)print(result[0]['save_path'])test_img_path = result[0]['save_path']img = mpimg.imread(test_img_path)plt.figure(figsize=(10,10))plt.imshow(img) plt.axis('off') plt.show()return test_img_path# 裁剪成为1寸大小的图片
def crop_face(pic_path,rate=1.3):# 人脸识别result = face_landmark.keypoint_detection(paths=[pic_path])face=np.array(result[0]['data'][0],dtype=np.int64)# 剪裁left = face[:,0].min()right= face[:,0].max()w = right-leftcw=int((right+left)/2)upper = face[:,1].min()lower = face[:,1].max()h= lower-upperch=int((lower+upper)/2)h = int(413*w/295)box=(cw-rate*w, ch-rate*h, cw+rate*w, ch+rate*h)img=Image.open(pic_path)img=img.crop(box)img=img.resize((295, 413),Image.ANTIALIAS)return img# 改变颜色
def change_color(img,save_path,thresh=100):def cut_person(img,num=[255,255,255]):img=np.array(img).transpose((2,0,1))person=[]for i in range(3):a=img[i]mask=np.array((img[3]<thresh),dtype=np.uint8)# mask=cv2.erode(mask,None,iterations=1)mask=cv2.dilate(mask,None,iterations=2)mask=np.array(mask,dtype=np.bool)a[mask]=num[i]person.append(a)img=np.array(person).transpose((1,2,0))im=Image.fromarray(img)return imcut=cut_person(img,num=[255,255,255])cut=cut_person(img,num=[255,0,0])cut=cut_person(img,num=[0,0,255])return cut# 生成三种底色的登记照片
def id_photo(pic_path,rate=1.3,thresh=2):pic=seg_face(pic_path)img=crop_face(pic,rate)image = change_color(img,pic,thresh)image.save(pic, quality=95)for pic in ["1.jpg","2.jpg"]:id_photo(pic,rate=1.5,thresh=50)

实验环境

python: 3.7.9

pip: 21.0.1

paddlehub: 2.0.4

paddlepaddle: 2.0.2

有关百度paddlehub的安装请参阅:开始使用_飞桨-源于产业实践的开源深度学习平台

 

准备工作

1.创建一个.py扩展名文件,如zhengjianzhao.py,将上面的代码拷贝至该文件中;

2.准备两张单人照片,分别命名位:1.jpg、2.jpg(根据自身情况命名,记得修改代码倒数第二行里文件夹);

3.照片与py脚本文件放在同一个文件夹中;

4.使用python IDLE或者visual studio code等工具打开脚本文件,点击运行。也可以在脚本所在文件夹下打开命令行输入:

python zhengjianzhao.py

5.脚本运行起来后你会先看到一张去除了其他背景的人像抠图,点击关闭后,当前文件夹下会生成一个名为humanseg_output的文件夹,生成的一寸照就放在这个文件夹下。

 

实验效果:

原图:

一寸照:

原图

一寸照

 

祝实验成功!

 

欢迎来我的个人网站逛逛:往后码生


http://chatgpt.dhexx.cn/article/ip6O09qH.shtml

相关文章

ps制作2寸照片教程蓝底,ps怎么p二寸照片详细步骤

ps制作2寸照片教程蓝底?ps怎么p二寸照片详细步骤。在日常生活当中经常会用到二寸证件照,很多人都还要跑到数码馆去照相再让人家修图,最后再打印出来,一套照片下来几十元。如果你知道ps制作2寸照片教程蓝底?了解ps怎么p二寸照片详细步骤,下载一个ps分分钟就搞定了,只需要…

计算机画图如何把二寸照片修改为一寸,win7使用自带画图工具把照片调整成2寸的方法...

工作生活中我们需要要一寸或两寸照片当证件照&#xff0c;大家第一反应就是去照相馆拍照&#xff0c;这样比较麻烦。其实我们可以win7旗舰版系统使用自带画图工具来制作2寸相片&#xff0c;操作简单且不复杂。感兴趣的小伙伴一起看下win7系统用自带画图工具把相片调整成2寸的方…

程序员的进阶课-架构师之路(大纲)-思维导图

我的微信公众号&#xff1a;架构真经&#xff08;id&#xff1a;gentoo666&#xff09;&#xff0c;分享Java干货&#xff0c;高并发编程&#xff0c;热门技术教程&#xff0c;微服务及分布式技术&#xff0c;架构设计&#xff0c;区块链技术&#xff0c;人工智能&#xff0c;大…

软考高级-系统架构师-案例分析-架构设计

本篇博文目录: 考点分析一.软件架构风格1.基本概念2.真题案例分析 二.质量属性与架构评估1.基本概念2.案例分析 三.Web架构综合考查1.Web服务器技术演变(1) 负载均衡技术(2) 持久化技术-ORM(3) 数据库读写分离 2.缓存技术3.Redis技术4.CDN(内容分发网络)5.XML与JSON6.Web应用服…

从程序员到架构师,你修炼到哪个境界了?

架构师是程序员的奋斗目标。 我身边的很多优秀程序员&#xff0c;都在暗暗努力往架构师能力栈靠拢。很多人技术很过硬也参与过大型项目、还有的人对新技术信手拈来、也有一些人勤勤恳恳在努力做好手里的事情。 但你会发现&#xff0c;当他们遇到实际业务场景的架构问题&#xf…

程序员到底牛到什么程度才能成为架构师?

身为技术人&#xff0c;相信你也思考过这个问题&#xff1a;工作了几年&#xff0c;代码写得非常熟练&#xff0c;上线的程序也少有 bug &#xff0c;时不时还能搞个技术分享&#xff0c;但接下来要往哪个方向发展呢&#xff1f; 想来无非是 3 种选择&#xff1a;专精技术、转型…

程序员的职业发展道路到底有哪些?

昨天有朋友提问&#xff0c;关于程序员的职业发展路线&#xff0c;简单来讲下这块。程序员我来定义的话&#xff0c;就是用代码改变世界&#xff0c;但是最怕程序员在自我的世界里面&#xff0c;因为面对机器编码&#xff0c;越来越不善交谈&#xff0c;这点是程序员欠缺的&…

程序员就业和发展前景,一文带你了解

程序员&#xff0c;英文是 code worker&#xff0c;顾名思义就是计算机程序的作者。它通常指从事计算机软件开发的人员&#xff0c;当然也包括用计算机语言编写程序来进行各种信息处理的人。现在软件行业中&#xff0c;程序员属于技术含量较高的一个群体。程序员就业和发展前景…

架构师之路一-架构师入门指引

点击箭头处 “JAVA日知录” &#xff0c;关注并星标哟&#xff01;&#xff01; 导读&#xff1a;本系列文章教你怎么样成为一名架构师&#xff0c;而本篇文章则带你先认识一下什么是架构师&#xff0c;架构师的工作是什么&#xff1f; 为什么需要架构师 为什么需要架构师或者说…

程序员转型架构师,推荐你读这两本书

平时工作太忙&#xff0c;没有充足时间的看书&#xff0c;无暇系统地学&#xff0c;以致于在知识运用上出现了“力不从心”和本领恐慌现象&#xff0c;这是制约自身能力发展的最大“瓶颈”。 克服本领恐慌最直接最有效的方法就是定期给自己充电。 正好趁这次长假好好看看书&…

我心里优秀架构师是怎样的?

先声明&#xff0c;这不是在打广告……。之所以那么认真看个宣传视频&#xff0c;是因为曾经阅读过李智慧老师的书籍&#xff08;大型网站技术架构--核心原理与案例分析&#xff09;&#xff0c;书写的挺好&#xff0c;有兴趣的可以阅读下。 本文内容来源于&#xff1a;李智慧…

同是程序员,为什么架构师待遇比你高一倍?

架构不是一个职业而是一种能力,每一种架构师只不过是在不同的领域里面使用不同的技术,没有什么可对比,就好比如你问一个篮球明星和一个足球明星有什么区别一样! 一、架构师需要考虑四个问题 确定系统干什么不干什么,也就是说系统的边界在哪里? 确定架构内部的模块与模块之间…

从程序员到架构师的精进之路

“程序员到架构师的技术成长之路分为几个典型的阶段&#xff1a;工程师 - 高级工程师 - 技术专家 - 初级架构师 - 中级架构师 - 高级架构师” 程序员到架构师的技术成长之路分为几个典型的阶段&#xff1a;工程师 - 高级工程师 - 技术专家 - 初级架构师 - 中级架构师 - 高级架构…

程序员到底多牛才能成为架构师?

身为技术人&#xff0c;相信你也思考过这个问题&#xff1a;工作了几年&#xff0c;代码写得非常熟练&#xff0c;上线的程序也少有 bug &#xff0c;时不时还能搞个技术分享&#xff0c;但接下来要往哪个方向发展呢&#xff1f; 想来无非是 3 种选择&#xff1a;专精技术、转型…

进击的Android程序员,架构师的成长之路

在IT行业&#xff0c;很多工作一定年限的程序员感觉自己到了瓶颈不知道如何突破&#xff0c;成长为别人眼中的架构师。 架构师对很多人来说非常神秘&#xff0c;那成为架构师都具有哪些要求呢&#xff1f; 我们先来看看互联网公司对于不同阶段的Android开发者开出的薪资水平&…

【哈士奇赠书活动 - 20期】-〖从程序员到架构师〗

文章目录 ⭐️ 赠书活动 - 《从程序员到架构师》⭐️ 编辑推荐⭐️ 作者简介⭐️ 赠书活动 → 获奖名单 ⭐️ 赠书活动 - 《从程序员到架构师》 内容简介&#xff1a; 《从程序员到架构师&#xff1a;大数据量、缓存、高并发、微服务、多团队协同等核心场景实战》分为数据持久化…

普通程序员也能进阶架构师?

程序员都应该掌握架构设计的能力。前端、客户端、后端、大数据、运维、测试……各领域都涉及到了架构设计。 从P7开始&#xff0c;架构能力是晋级的关键考察点&#xff0c;很多技术和业务不错的人在面临职业晋升考核的时候&#xff0c;往往就是卡在了架构设计这个部分。 不同于…

架构师究竟比高级开发厉害在哪?

作者 | hsm_computer 目前我在互联网公司里干了1年多&#xff0c;接触了多位技术和业务的架构师&#xff0c;由于我正在升级到架构师&#xff0c;所以能直观地感受到高级开发和架构的差距&#xff0c;而且&#xff0c;对于高级开发如何升级到架构师&#xff0c;本人目前更有切身…

云智慧10年资深架构师带你了解:普通程序员向架构师成长必经之路

本文转录自&#xff1a;拥有10余年架构师经验的高驰涛&#xff0c;在云智慧AIOps社区第4期Meetup上进行的《普通程序员向架构师进阶之路 》分享。 PPT及回放地址&#xff1a; 线上Meetup第4期&#xff5c;普通程序员向架构师进阶之路&#xff08;内含PPT下载及回放&#xff09;…

SyncToy本地备份工具安装使用+taskschd.msc定时备份

背景 2018-06-10日&#xff0c;学习python时候脑残删除eclipse项目时勾选了删除磁盘内容选项&#xff0c;导致之前加入到同一项目标签中的python代码全部被删除&#xff0c;虽然使用硬盘恢复工具尝试恢复&#xff0c;但是还丢失了部分数据&#xff0c;经过此次事件凸显备份的重…