import paddlehub as hub
import cv2
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as mpimg # 待抠图照片
image = 'ce.jpg'
# 背景
background = 'ce10.jpg'
# 合成照片名称
save_image = 'save_image.jpg'human_seg = hub.Module(name="deeplabv3p_xception65_humanseg")
result = human_seg.segmentation(images=[cv2.imread(image)],visualization=True)
#print(result[0]['save_path'])
# or
# result = human_seg.segmentation(paths=['/PATH/TO/IMAGE'])
# 预测结果展示test_img_path = result[0]['save_path']
#print(test_img_path)#cv2.imwrite('mei',img)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('mei.jpg')blend_images(test_img_path, background)# 展示合成图片
plt.figure(figsize=(10,10))
img = mpimg.imread(save_image)
plt.imshow(img)
plt.axis('off')
plt.show()

paddlehub之ps扣图合成相关推荐

  1. 【黎乙丙】初学ps扣图方法锦集

    本文是教大家学习ps扣图方法,ps抠图是最关键的一步,ps抠图的方法又多种多样,套索.魔术棒.蒙板等都是最常用的,但涉及到人像抠图,特别是人的毛发的抠图的时候,简单的工具就无法达成满意的抠图效果. 一 ...

  2. ps扣图教程一:滤镜,图层,通道抠图

    本教程非常全面的讲解了多种抠图方法,方法基本上都是常用的.抠图的时候需要根据具体图片设定最佳方法. 原图 最终效果 一.抽出滤镜抠图法 101.打开图片,ctrl+j两次,分别得到图层1和图层1副本. ...

  3. ps学习 通道扣图——玻璃杯

    通道扣图--玻璃杯 2016年4月25日 8:29 通道抠图 可以 扣图玻璃杯.头发.烟雾 今天我学习了 : 抠图玻璃杯 步骤: (1).拿出素材(玻璃杯) 钢笔工具.勾选轮廓.建立选区,复制建立新图 ...

  4. Python装逼神器,Python实现一键批量扣图

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:狂师 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自 ...

  5. Python装逼神器,5 行 Python 代码 实现一键批量扣图

    点击上方"测试开发技术",选择"加为星标" 优质文章,第一时间送达! 上一篇体验了一把公号付费阅读功能,文章发出后,引起了不少的读者惊慌,难道以后在公号阅读技术 ...

  6. 装逼神器,5 行 Python 代码 实现一键批量扣图,你get到了吗

    在日常生活或者工作中,经常会遇到想将某张照片中的人物抠出来,然后拼接到其他图片上去.专业点的人可以使用 PhotoShop 的"魔棒"工具进行抠图,非专业人士则使用各种美图 APP ...

  7. 装逼神器,5 行 Python 代码 实现一键批量扣图

    在日常生活或者工作中,经常会遇到想将某张照片中的人物抠出来,然后拼接到其他图片上去.专业点的人可以使用 PhotoShop 的"魔棒"工具进行抠图,非专业人士则使用各种美图 APP ...

  8. Python装逼神器,5 行 Python 代码 实现一键批量扣图!

    今天给大家分享一款Python装逼实用神器. 在日常生活或者工作中,经常会遇到想将某张照片中的人物抠出来,然后拼接到其他图片上去.专业点的人可以使用 PhotoShop 的"魔棒" ...

  9. 扣图神器, 用Python 5行代码解决

    今天给大家分享一款Python装逼实用神器. 在日常生活或者工作中,经常会遇到想将某张照片中的人物抠出来,然后拼接到其他图片上去.专业点的人可以使用 PhotoShop 的"魔棒" ...

最新文章

  1. cygwin编译生成hello world_自己动手实现Lua:虚拟机、编译器、标准库(一)——搭建开发环境...
  2. 【高并发】面试官问我:为啥局部变量是线程安全的?
  3. 160个Crackme045
  4. js实现无缝循环滚动
  5. JDK10的新特性:var泛型和多个接口实现
  6. [THINKING IN JAVA]访问权限控制
  7. 【MySQL】MySQL 数据库表锁和行锁
  8. python opencv显示图片一闪而过_解决Opencv+Python cv2.imshow闪退问题
  9. 堆优化的Dijkstra
  10. python实现移除某文件夹下所有文件
  11. Java 百度OCR 身份证识别
  12. matlab乘除号怎么打,matlab中的乘除法
  13. Deepin安装教程
  14. 静态网页—制作“人人网首页”页面
  15. 数据分析:某地PM2.5数据分析
  16. 计算机技术专硕学制两年的学校,专硕一般读几年
  17. E-mark认证是什么?
  18. 今生,只想做一个平凡的人
  19. 模板有函数模板和类模板,这个在上学期的java课里面就学了,C++应该是一样的。
  20. poi-tl导出word复杂表格(单元格合并,生成复杂表格)

热门文章

  1. 安全 lynis_如何使用Lynis审核Linux系统的安全性
  2. Spring(十)--Spring校验
  3. 动态代理是基于什么原理?
  4. PAT 乙级练习 1060 爱丁顿数
  5. JDK版本无法更改问题
  6. 校园跑腿、校园脱单、代理、帮忙拿快递的微信小程序 基于SpringBoot、Mybatis-plus、mysql实现
  7. 涨价停不下来?最主要的元凶还是闪存
  8. 面向过程中模拟出面向对象,用c语言模拟出MFC控件,消息循环,“设计用户界面”
  9. CSS3 垂直树状图——运用 :before 和 :after
  10. Android,Java ADPCM解码