本程序基于百度飞浆 PaddlePaddle 平台完成。

该程序通过DeepLabv3+模型完成一键抠图。

encoder-decoder进行多尺度信息的融合,同时保留了原来的空洞卷积和ASSP层, 其骨干网络使用了Xception模型,提高了语义分割的健壮性和运行速率,在 PASCAL VOC 2012 dataset取得新的state-of-art performance,该PaddleHub Module使用百度自建数据集进行训练,可用于人像分割,支持任意大小的图片输入。

在完成一键抠图之后,通过图像合成,实现有趣的应用!

程序实现

首先安装 paddlehub

!pip install paddlehub==1.6.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

然后查看下我要要抠图的目标文件

# 待预测图片
img_name = 'ty.jpg'
test_img_path = ["./"+img_name]
#test_img_path = ["./meditation.jpg"]import matplotlib.pyplot as plt
import matplotlib.image as mpimg img = mpimg.imread(test_img_path[0]) # 展示待预测图片
plt.figure(figsize=(10,10))
plt.imshow(img)
plt.axis('off')
plt.show()


通过加载PaddleHub DeepLabv3+模型(deeplabv3p_xception65_humanseg)实现一键抠图

import paddlehub as hubmodule = hub.Module(name="deeplabv3p_xception65_humanseg")input_dict = {"image": test_img_path}# execute predict and print the result
results = module.segmentation(data=input_dict)
for result in results:print(result)# 预测结果展示
test_img_path = "./humanseg_output/"+img_name.split('.')[0]+'.png'
img = mpimg.imread(test_img_path)
plt.figure(figsize=(10,10))
plt.imshow(img)
plt.axis('off')
plt.show()


将抠出的人物图片合成在想要的背景图片当中。

from PIL import Image
import numpy as npdef blend_images(fore_image, base_image, img_num):
#def blend_images(fore_image, base_image):"""将抠出的人物图像换背景fore_image: 前景图片,抠出的人物图片base_image: 背景图片"""# 读入图片base_image = Image.open(base_image).convert('RGB')fore_image = Image.open(fore_image).resize(base_image.size)# 图片加权合成scope_map = np.array(fore_image)[:,:,-1] / 255scope_map = scope_map[:,:,np.newaxis]scope_map = np.repeat(scope_map, repeats=3, axis=2)res_image = np.multiply(scope_map, np.array(fore_image)[:,:,:3]) + np.multiply((1-scope_map), np.array(base_image))#保存图片res_image = Image.fromarray(np.uint8(res_image))res_image.save('./humanseg_output/'+str(img_num)+".jpg")

根据需要运行合成程序

# 合成几张图片
img_num = 4for i in range(img_num):blend_images('./humanseg_output/'+img_name.split('.')[0]+'.png', str(i+1)+'.jpg', i+1)# 展示合成图片
plt.figure(figsize=(10,10))
for i in range(img_num):plt.subplot(2,2,i+1)img = mpimg.imread('./humanseg_output/'+str(i+1)+".jpg")plt.imshow(img) plt.axis('off')
plt.show()


欢迎大家用AI环游世界!

AI人像抠图及图像合成:让你一键环游世界相关推荐

  1. (记录)PaddleHub创意赛:AI人像抠图及图像合成

    文章目录 PaddleHub创意赛:AI人像抠图及图像合成 一.安装环境(这里面有几个坑) 二.接下来就``开始P图 1. 引入包 2. 加载预训练模型(挺厉害的不得不说) 3. 图像合成 Paddl ...

  2. PaddleHub人像分割模型:AI人像抠图及图像合成

    点击上方"AI搞事情"关注我们 本项目根据DeepLabv3+模型一键抠图示例,主要采用PaddleHub DeepLabv3+模型(deeplabv3p_xception65_h ...

  3. python人像精细分割_PaddleHub人像分割模型:AI人像抠图及图像合成

    本项目根据DeepLabv3+模型一键抠图示例,主要采用PaddleHub DeepLabv3+模型(deeplabv3p_xception65_humanseg)和python图像处理库opencv ...

  4. 蓝松视觉科技 AI人像抠图说明

    AI人像抠图的API 文章目录 AI人像抠图的API 1. 初始化 2.1 抠图API (nv21输入格式) 2.2 抠图API (rgba输入格式) 3. 释放抠图对象 4. 其他API 赠送的解释 ...

  5. 蓝松AI人像抠图的接口说明

    AI人像抠图的API 文章目录 AI人像抠图的API 1. 初始化 2.1 抠图API (nv21输入格式) 2.2 抠图API (rgba输入格式) 3. 释放抠图对象 4. 其他API 赠送的解释 ...

  6. AI人像抠图及视频合成:让你体验复仇者联盟的终局之战

    本程序基于百度飞浆 PaddlePaddle 平台完成. 该程序通过DeepLabv3+模型完成一键抠图. encoder-decoder进行多尺度信息的融合,同时保留了原来的空洞卷积和ASSP层, ...

  7. 蓝松AI人像抠图SDK(无绿幕实时抠图)

  8. App Inventor:一键人像抠图App

    App Inventor:一键人像抠图App 一.功能分析 1.预设一张图片,把图片里的人体勾勒出来,并迁移到另一个图片里.如下图(app里的图像素材来源与网络): 二.知识点分析 1.App Inv ...

  9. 不惧繁杂背景,视频编辑服务一键实现人像抠图

    最近,"你这背景太假了"席卷全网.由于身后风景太优美,被网友质疑背景太假,某主播为了自证,直接把手里的桶扔进了背后的水里.短短几天时间播放量几十亿,引发了全网P图狂潮,网友在短视频 ...

最新文章

  1. 嘿 Siri,有没有「三天速成深度学习」的课程?
  2. phpc.sinaapp.com 加密的解密方法
  3. 深入讲解配置Cisco路由器日志中的速率限制问题(三)
  4. 第九章:文件系统管理
  5. java nextintln_Java对正则表达式的支持(二)
  6. R 语言学习过程全记录 ~
  7. linux内核常用函数或宏
  8. axios在IE下的兼容性处理
  9. 如何建立队列c语言_什么是优先队列
  10. html判断数组中存在不,js判断数组中是否已存在某个值,indexOf的使用说明
  11. c语言程序如何生成软件,用c语言编写的程序怎么样生成可执行软件。
  12. 教务信息管理系统的设计与实现
  13. 网卡驱动DM9000-基于uboot
  14. Shiny的架构浅析
  15. Mycat 读写分离、主从切换、分库分表的操作记录
  16. 黑苹果引导工具 Clover 配置详解及Clover Configurator使用
  17. linux mysql 备份 恢复_[转]linux下如何备份与恢复mysql数据库。
  18. 面向6G网络的太赫兹通信技术研究综述
  19. oracle数据库系统学习,Oracle数据库学习第二天
  20. postman登录获取token,接口header中添加token发送请求

热门文章

  1. javase统计一段文章的某个关键字或词出现了几次
  2. taobao.trades.sold.increment.get( 淘宝店铺订单交易数据接口,淘宝店铺订单解密提额接口,淘宝店铺订单解密接口)代码对接教程
  3. java建造者模式--给一个你一看就懂的建造者模式
  4. 一看就舒心的图片「唯美仙境」
  5. 数据标注实习报告 一实习基本情况 二实习内容 三实习收获与体会 四不足与努力方向 1500字以上...
  6. 大片幕后:《移动迷宫》视觉特效
  7. hhvm_HHVM和WordPress入门
  8. 源“ySQL 8.0 Community Server”的GPG密钥已安装,但是不适用于此软件包。请检查源的公钥URL是否配置正确。
  9. 如何选择合适的分表键,路由规则及分片数
  10. Java游戏服务器开发之二--导航帖