Python实现图片背景移除工具

 更新时间:2023年02月27日 09:57:52   作者:吃肉的小馒头  
这篇文章主要为大家详细介绍了如何通过Python语言实现一个简单的图片背景移除工具,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下

上传一张图片,实现其背景移除的功能。

代码示例:

import streamlit as st
from rembg import remove
from PIL import Image
from io import BytesIO
import base64

st.set_page_config(layout="wide", page_title="图片背景移除")

st.write("## 从图片移除背景")
st.write(
    ":dog: 请上传一张图片,去除背景后图片可在侧边栏下载. :grin:"
)
st.sidebar.write("## 上传和下载 :gear:")


# Download the fixed image
def convert_image(img):
    buf = BytesIO()
    img.save(buf, format="PNG")
    byte_im = buf.getvalue()
    return byte_im


def fix_image(upload):
    image = Image.open(upload)
    col1.write("原图片 :camera:")
    col1.image(image)

    fixed = remove(image)
    col2.write("处理后 :wrench:")
    col2.image(fixed)
    st.sidebar.markdown("\n")
    st.sidebar.download_button("下载图片", convert_image(fixed), "fixed.png", "image/png")


col1, col2 = st.columns(2)
my_upload = st.sidebar.file_uploader("上传图片", type=["png", "jpg", "jpeg"])

if my_upload is not None:
    fix_image(upload=my_upload)
else:
    fix_image("./zebra.jpg")

执行

streamlit run bg_remove.py 

效果图 

到此这篇关于Python实现图片背景移除工具的文章就介绍到这了,更多相关Python图片背景移除内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python读写Excel文件库的实现示例

    Python读写Excel文件库的实现示例

    本文主要介绍了Python读写Excel文件库的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • Python利用函数式编程实现优化代码

    Python利用函数式编程实现优化代码

    函数式编程(Functional Programming)是一种编程范式,它将计算视为函数的求值,并且避免使用可变状态和循环,在Python中还可以利用它的简洁和高效来解决实际问题,下面我们就来学习一下它的具体用法吧
    2023-11-11
  • 10个Python小技巧你值得拥有

    10个Python小技巧你值得拥有

    这篇文章主要介绍了10个Python小技巧,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • python opencv图片编码为h264文件的实例

    python opencv图片编码为h264文件的实例

    今天小编就为大家分享一篇python opencv图片编码为h264文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python常见数据类型处理详细代码示例

    Python常见数据类型处理详细代码示例

    这篇文章主要介绍了Python常见数据类型处理的相关资料,包括Number、String、bool、List、Tuple、Set和Dictionary,每种数据类型都有其特定的用途和操作方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-04-04
  • 使用 Python 和 OpenCV 实现摄像头人脸检测并截图功能

    使用 Python 和 OpenCV 实现摄像头人脸检测并截图功能

    在现代应用中,人脸检测是一项非常重要的技术,广泛应用于安全监控、身份验证等领域,本文详细介绍了如何使用 Python 和 OpenCV 库实现摄像头人脸检测并截图,并通过具体的代码示例展示了整个过程,感兴趣的朋友一起看看吧
    2024-11-11
  • Python 代替 xftp 从 Linux 服务器下载文件的操作方法

    Python 代替 xftp 从 Linux 服务器下载文件的操作方法

    我们经常需要从Linux服务器上同步文件,但是xftp等工具都需要注册了,这里用免费的Python代码来下载文件,还可以扩展更多的自定义用法,这篇文章主要介绍了Python 代替 xftp 从 Linux 服务器下载文件,需要的朋友可以参考下
    2024-06-06
  • 让Python加速运行的八种实用技巧分享

    让Python加速运行的八种实用技巧分享

    Python作为一门解释型语言,虽然开发效率高,但运行速度常常成为瓶颈,本文将介绍8种实用的Python加速技巧,帮助你显著提升代码执行效率,需要的朋友可以参考下
    2025-04-04
  • selenium drag_and_drop不生效的解决办法

    selenium drag_and_drop不生效的解决办法

    本文主要介绍了selenium drag_and_drop不生效的解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • 如何使用draw.io插件在vscode中一体化导出高质量图片

    如何使用draw.io插件在vscode中一体化导出高质量图片

    这篇文章主要介绍了draw.io插件在vscode中一体化导出高质量图片需要的工具是vscode, draw.io扩展,draw.io桌面版 、python,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴,需要的朋友可以参考下
    2022-08-08

最新评论