用python实现人像分割与背景替换

举报
darkpard 发表于 2022/09/04 10:05:33 2022/09/04
【摘要】 最近看到paddle的人像分割与背景替换,看着挺酷的,不由得想做点尝试。首先安装paddle!pip install PaddlePaddle==2.2.1克隆paddle的人像分割项目!git clone https://github.com/PaddlePaddle/PaddleSeg进入项目目录%cd PaddleSeg安装依赖!pip install -r requirements....

最近看到paddle的人像分割与背景替换,看着挺酷的,不由得想做点尝试。

图片


首先安装paddle

    !pip install PaddlePaddle==2.2.1

    克隆paddle的人像分割项目

      !git clone https://github.com/PaddlePaddle/PaddleSeg

      进入项目目录

        %cd PaddleSeg

        安装依赖

          !pip install -r requirements.txt

          进入人像分割目录

            cd contrib/PP-HumanSeg

            下载预训练模型

              !python src/download_inference_models.py

              但出现了报错

              SyntaxError: Non-ASCII character '\xef' in file /data/jupyter/root/3samples/grid_search/PaddleSeg/paddleseg/models/backbones/hrnet.py on line 37, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

              发现是因为

              /data/jupyter/root/3samples/grid_search/PaddleSeg/paddleseg/models/backbones/hrnet.py

              不是UTF-8格式,因此在该文件第一行加上

                # coding: utf8

                但仍然报错

                图片

                在该文件加上环境的打印

                  import sysprint(sys.path)

                  发现它打印的环境是python2

                  图片

                  原来是因为我们的服务器上同时有python2和python3,将代码稍做修改就好了

                    !python3 src/download_inference_models.py

                    然后下载数据

                      !python3 src/download_data.py

                      接下来我们上传了一张人物图片和一个背景图片如下:

                      图片图片

                      进行背景替换

                        !python3 src/seg_demo.py \  
                            --config inference_models/portrait_pp_humansegv2_lite_256x144_inference_model_with_softmax/deploy.yaml \  
                            --img_path data/images/human.jpg \  
                            --bg_img_path data/images/backgroud.jpg \  
                            --save_dir data/images_result/portrait_heng_v2_withbg5.jpg

                        图片

                        这个效果不是很好,有点买家秀跟卖家秀的感觉。可能是人物颜色太素了,我们换个人物再试了一次。

                        图片图片

                        这个貌似还凑合,对于使用场景还是有要求了,需要在特定场景下使用,并且对模型进行微调才有可能满足实际使用的要求。

                        【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
                        • 点赞
                        • 收藏
                        • 关注作者

                        评论(0

                        0/1000
                        抱歉,系统识别当前为高风险访问,暂不支持该操作

                        全部回复

                        上滑加载中

                        设置昵称

                        在此一键设置昵称,即可参与社区互动!

                        *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

                        *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。