证件照背景底色更换工具(深度学习+扣取人像+头发丝级精度)
引言
还记得之前的时候因为某件事需要一张证件照片,按照要求是红底照片,本人之前是有张比较满意的证件照,但其是蓝底的,因为要的比较紧急,再立即去准备好衣服等重新照一张不太现实。
心想进行打印照片的店里的人应该可以更换底色吧,她确实给我弄了,直接使用PS手动抠图,换了底色,我一看这手动抠图的效果真是有点差强人意,于是,我走了。
我记得网上应该是有这种可以一键更换底色的工具的,就去网上搜索了一下,果然有很多可以进行在线更换证件照底色的网站,但是每个我点进去都是需要付费的,好吧,我一个朋友当时也是需要照片底色更换的,当时他弄好了,我问他怎么弄的?他说是有支付宝就可以,我便按照他的步骤一步步操作,果然可以,而且预览效果极好,但是最后下载的时候需要3元,嗯?我又回到了付费这一步了,无奈之下只好。。。
因本人学习过图像处理,之前也想过使用较传统的图像处理方法直接对证件照的底色RGB范围进行筛选替换,但是效果不好,近期偶然发现了一个可以扣取人像的深度学习模型modnet,突然想到没必要筛选背景底色,直接将人像扣取出来再替换到纯色背景上不就可以了?终于耗费了我几天的时间将此工具做了出来。
功能介绍及使用
(1)软件包介绍
打包好的资源链接我会放到最下方,下载解压后如下,其中ui及model文件夹不要进行更改删除等操作,使用时直接双击exe程序即可,需要注意的是该程序启动比较缓慢,大概需要5秒左右的时间。
ui文件夹存放的是界面相关参数,程序启动时需读取此界面参数
model文件下是modnet深度学习模型,程序启动后会调用此模型
(2)界面功能介绍
1,照片选择:用于选择某个要操作的证件照片,选择的格式有jpeg、jpg、png等格式
2,抠图:分为“是/否”两个选择,默认“否”,若选择“是”,在进行一键更换的时候会保存扣取的人像图,背景是透明的,格式为png格式。
3,底色:底色模式分为(红色、蓝色、白色、自定义)四个模式,每个模式都对应着(R-G-B)数据,自定义模式下的(R-G-B)数据是个空值,需要自己填写,注意填写时的格式要与其余模式的格式一致。
4,一键更换:点击此按钮就会将选择的照片的底色进行更换,将更换后的图片保存为jpg格式,若同时抠图模式为“是”,则会同时保存扣取的人像图。
5,输出结果:会将更换过程中一些结果反馈到此处。
(3)使用过程
1)点击选择按钮,选择某个图片
这里可选择的图片格式只有jpg/jpeg/bmp/png这几种格式,其余格式图片不可选择,需注意。
2)抠图模式选择,底色模式选择
这里抠图模式选择了“是”,为了后续保存扣取的人像图,底色模式为红色,会自动将背景换成红色。
3)一键更换后,输出结果如下
一键更换底色成功后,在输出结果的编辑框内,会出现更换底色后的图片保存路径,默认是保存到原图片路径下,在扣取的人像图片后缀会加_human.png,底色换成红色的图片后缀加_red.jpg。
4)随机几个图片抠图换底色后的效果
以下演示的图片来源于网络
下方的各个图片,左侧为原始图片,右侧为底色更改后的图片
选取的几张图片抠取人像后的结果图
很明显,使用深度学习模型进行人像扣取换底色的效果最好,扣取的人像达到了头发丝的级别。
5)自定义底色模式
本工具可以自定义底色背景的颜色,只需要设置好RGB三个通道的数据即可,如设置底色为绿色,那么其底色应该设置为“0-255-0”,如图所示
最后自定义模式下得到的结果如下:
资源链接
注意该软件只能在windows系统上运行
链接: https://download.csdn.net/download/qq_44870829/85329410.