电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

5行Python代碼實現一鍵批量扣圖

瀏覽:119日期:2022-06-15 15:59:48
目錄1. 準備工作- 安裝paddlepaddle2. 準備工作- 安裝paddlehub3. 一鍵扣圖代碼實現4. 需要注意的坑5. 總結

今天給大家分享一款Python裝逼實用神器。

在日常生活或者工作中,經常會遇到想將某張照片中的人物摳出來,然后拼接到其他圖片上去。專業點的人可以使用 PhotoShop 的“魔棒”工具進行摳圖,非專業人士則使用各種美圖 APP 來實現,但是這兩類方式畢竟處理能力有限,一次只能處理一張圖片,而且比較復雜的圖像可能耗時較久。那今天就來向大家展示第三種扣圖方式——用 Python代碼來實現 一鍵批量摳圖。

1. 準備工作- 安裝paddlepaddle

既然要裝逼,準備工作是少不了的。所謂“站在巨人的肩膀上,干起活來事半功倍”,我們這里的“巨人”就是 paddlepaddle 了,中文名稱叫“飛槳”,那么這個 paddlepaddle 是什么呢?

它是“源于產業實踐的開源深度學習平臺,致力于讓深度學習技術的創新與應用更簡單”,直白點就是我幫你實現了深度學習底層框架,你只要有創意就可以在我平臺上運用少量簡單代碼輕松實現。它的官網是:https://www.paddlepaddle.org.cn/。

它的安裝比較簡單,官網首頁就有安裝指引,可以通過「安裝」菜單,查找到各個系統安裝詳細及注意事項,如下圖所示,我們這里根據官網的安裝指引,使用 pip 方式來安裝 CPU 版本。

5行Python代碼實現一鍵批量扣圖

本文以MacOS系統為例:

我們首先執行以下命令安裝(推薦使用百度源)::

python3 -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple

或者:

python3 -m pip install paddlepaddle -i https://pypi.tuna.tsinghua.edu.cn/simple

從安裝過程中,可以看到在安裝paddlepaddle庫時,需要安裝如下依賴庫:

Installing collected packages: pathlib, click, joblib, regex, tqdm, nltk, gast, rarfile, pyyaml, funcsigs, paddlepaddle Running setup.py install for pathlib ... done Running setup.py install for regex ... done Running setup.py install for nltk ... done Running setup.py install for rarfile ... done Running setup.py install for pyyaml ... doneSuccessfully installed click-7.1.2 funcsigs-1.0.2 gast-0.3.3 joblib-0.14.1 nltk-3.5 paddlepaddle-1.8.0 pathlib-1.0.1 pyyaml-5.3.1 rarfile-3.1 regex-2020.5.7 tqdm-4.46.0

安裝成功后,我們在 python 環境中測試一下是否安裝成功(這個也是按照官網指引來做),我們切換到 python 環境,運行如下代碼:

➜ ~ python3Python 3.7.4 (default, Jul 9 2019, 18:15:00)[Clang 10.0.0 (clang-1000.11.45.5)] on darwinType 'help', 'copyright', 'credits' or 'license' for more information.>>> import paddle.fluid>>> paddle.fluid.install_check.run_check()Running Verify Fluid Program ...Your Paddle Fluid works well on SINGLE GPU or CPU.W0512 17:41:31.037240 2844976000 build_strategy.cc:170] fusion_group is not enabled for Windows/MacOS now, and only effective when running with CUDA GPU.W0512 17:41:31.043959 2844976000 fuse_all_reduce_op_pass.cc:74] Find all_reduce operators: 2. To make the speed faster, some all_reduce ops are fused during training, after fusion, the number of all_reduce ops is 1.Your Paddle Fluid works well on MUTIPLE GPU or CPU.Your Paddle Fluid is installed successfully! Let’s start deep Learning with Paddle Fluid now

如果能看到 Your Paddle Fluid is installed successfully 就表示安裝成功了。

2. 準備工作- 安裝paddlehub

要實現本文的一鍵批量扣圖需求,需要借助PaddleHub人像分割模型來實現。

PaddleHub 是基于 PaddlePaddle 開發的預訓練模型管理工具,可以借助預訓練模型更便捷地開展遷移學習工作,目前的預訓練模型涵蓋了圖像分類、目標檢測、詞法分析、語義模型、情感分析、視頻分類、圖像生成、圖像分割、文本審核、關鍵點檢測等主流模型。

PaddleHub官網:https://www.paddlepaddle.org.cn/hub

PaddleHub項目地址:https://github.com/PaddlePaddle/PaddleHub

更多PaddleHub預訓練模型教程合集課程可見:https://aistudio.baidu.com/aistudio/course/introduce/1070

介紹完了項目,接下來我們開始在線安裝 paddlehub :

pip install -i https://mirror.baidu.com/pypi/simple paddlehub

或者按指定版本安裝:

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

安裝完成后,我們就可以開始運用了。

3. 一鍵扣圖代碼實現

我們的實現步驟很簡單:

導入模塊 加載模型 獲取圖片文件 調用模塊摳圖

其中扣圖功能主要采用PaddleHub DeepLabv3+模型deeplabv3p_xception65_humanseg。

下面我們看具體扣圖代碼實現(demo.py):

import osimport paddlehub as hub # 加載模型humanseg = hub.Module(name=’deeplabv3p_xception65_humanseg’) base_dir = os.path.abspath(os.path.dirname(__file__)) # 獲取當前文件目錄path = os.path.join(base_dir, ’images/’)# 獲取文件列表files = [path + i for i in os.listdir(path)] print(files)# 摳圖results = humanseg.segmentation(data={’image’: files}) for result in results: print(result)

示例中,我將圖片放在代碼文件夾的同級目錄 images文件夾下,運行代碼后,輸出的摳圖圖片會自動放在代碼同級目錄的 humanseg_output 目錄下,文件名稱跟原圖片的名稱相同,但是文件格式是 png 。

其中示例 images 目錄下放了9張圖片,為了兼顧不同讀者喜好的口味,示例圖片中既包括了帥哥,也有美女哦,并且將他們縮略圖放大了,如下:

5行Python代碼實現一鍵批量扣圖

運行程序后,上述示例代碼運行結果如下所示。

5行Python代碼實現一鍵批量扣圖

運行成功后,在 humanseg_output 目錄下生成了9張圖片,同樣的,扣圖的結果如下所示:

5行Python代碼實現一鍵批量扣圖

我們可以看到程序將每張圖片中的人物(可以是一個人,也可以是多個人)識別出來,并且摳出來成圖,背景是白色。雖然有些細節處還有些許瑕疵,但是看起來還算不錯。

4. 需要注意的坑

在運行示例代碼時,如果沒有單獨安裝模型deeplabv3p_xception65_humanseg,默認會自動在執行前進行安裝。但安裝完成后,執行結果并沒有生成扣圖結果及humanseg_output目錄,輸出結果類似如下所示:

5行Python代碼實現一鍵批量扣圖

正常情況下,在生成扣圖數據,打印results時,應該是類似如下結構才對:

5行Python代碼實現一鍵批量扣圖

可以通過單獨安裝模型并指定安裝版本來解決。

hub install deeplabv3p_xception65_humanseg==1.0.0

具體原因沒有細究,默認自動安裝模型時,版本為1.2.0,猜測由于還是模型版本不兼容問題導致。

5. 總結

本文基于 paddlepaddle 平臺,利用PaddleHub DeepLabv3+模型(deeplabv3p_xception65_humanseg),使用簡單的五行代碼就實現了批量摳圖。有些讀者可能會想,上述示例中提供的代碼行數不止五行代碼吧,在上述示例中,真正實現扣圖的主代碼其實只需要下面五行:

humanseg = hub.Module(name=’deeplabv3p_xception65_humanseg’) base_dir = os.path.abspath(os.path.dirname(__file__))path = os.path.join(base_dir, ’images/’)files = [path + i for i in os.listdir(path)] results = humanseg.segmentation(data={’image’: files})

利用PaddleHub DeepLabv3+模型 不僅可以實現一鍵扣圖,還可以進行圖片合成,視頻合成等。利用好它不僅解放了人的雙手和雙眼,而且為某些程序猿/程序媛的裝逼工具箱提供了一件寶器。下次如果碰到某個女生或者閨蜜在為摳圖發愁,別忘了掏出神器,贏得芳心哦!

paddlepaddle作為一款開源的深度學習平臺,本文介紹的扣圖訓練模型只是其中的冰山一角,實戰訓練預測模型種類還遠遠不止,更多的場景結合,讀者們可自行挖掘。

到此這篇關于5行Python代碼實現一鍵批量扣圖的文章就介紹到這了,更多相關Python 批量扣圖內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 众品家具网-家具品牌招商_家具代理加盟_家具门户的首选网络媒体。 | 盐水蒸发器,水洗盐设备,冷凝结晶切片机,转鼓切片机,絮凝剂加药系统-无锡瑞司恩机械有限公司 | 碳钢法兰厂家,非标法兰,定制异型,法兰生产厂家-河北九瑞管道 | 工业废水处理|污水处理厂|废水治理设备工程技术公司-苏州瑞美迪 今日娱乐圈——影视剧集_八卦娱乐_明星八卦_最新娱乐八卦新闻 | 石家庄救护车出租_重症转院_跨省跨境医疗转送_活动赛事医疗保障_康复出院_放弃治疗_腾康26年医疗护送转诊团队 | 金环宇|金环宇电线|金环宇电缆|金环宇电线电缆|深圳市金环宇电线电缆有限公司|金环宇电缆集团 | 低浓度恒温恒湿称量系统,强光光照培养箱-上海三腾仪器有限公司 | 合肥触摸一体机_触摸查询机厂家_合肥拼接屏-安徽迅博智能科技 | 蜗轮丝杆升降机-螺旋升降机-丝杠升降机厂家-润驰传动 | 广东泵阀展|阀门展-广东国际泵管阀展览会 | 数码听觉统合训练系统-儿童感觉-早期言语评估与训练系统-北京鑫泰盛世科技发展有限公司 | Akribis直线电机_直线模组_力矩电机_直线电机平台|雅科贝思Akribis-杭州摩森机电科技有限公司 | 北京自然绿环境科技发展有限公司专业生产【洗车机_加油站洗车机-全自动洗车机】 | 杭州用友|用友软件|用友财务软件|用友ERP系统--杭州协友软件官网 | 石家庄网站建设|石家庄网站制作|石家庄小程序开发|石家庄微信开发|网站建设公司|网站制作公司|微信小程序开发|手机APP开发|软件开发 | 南京种植牙医院【官方挂号】_南京治疗种植牙医院那个好_南京看种植牙哪里好_南京茀莱堡口腔医院 尼龙PA610树脂,尼龙PA612树脂,尼龙PA1010树脂,透明尼龙-谷骐科技【官网】 | 压滤机-洗沙泥浆处理-压泥机-山东创新华一环境工程有限公司 | 税筹星_灵活用工平台_企业财务顾问_财税法薪综合服务平台 | 缠绕机|缠绕膜包装机|缠绕包装机-上海晏陵智能设备有限公司 | 温室大棚建设|水肥一体化|物联网系统 | 臭氧灭菌箱-油桶加热箱-原料桶加热融化烘箱-南京腾阳干燥设备厂 臭氧发生器_臭氧消毒机 - 【同林品牌 实力厂家】 | 理化生实验室设备,吊装实验室设备,顶装实验室设备,实验室成套设备厂家,校园功能室设备,智慧书法教室方案 - 东莞市惠森教学设备有限公司 | TTCMS自助建站_网站建设_自助建站_免费网站_免费建站_天天向上旗下品牌 | 全自动烧卖机厂家_饺子机_烧麦机价格_小笼汤包机_宁波江北阜欣食品机械有限公司 | R507制冷剂,R22/R152a制冷剂厂家-浙江瀚凯制冷科技有限公司 | 氢氧化钙设备_厂家-淄博工贸有限公司 | 丝印油墨_水性油墨_环保油墨油漆厂家_37国际化工 | 大型果蔬切片机-水果冬瓜削皮机-洗菜机切菜机-肇庆市凤翔餐饮设备有限公司 | 手术室净化厂家-成都做医院净化工程的公司-四川华锐-15年特殊科室建设经验 | 缓蚀除垢剂_循环水阻垢剂_反渗透锅炉阻垢剂_有机硫化物-郑州威大水处理材料有限公司 | 液氮罐(生物液氮罐)百科-无锡爱思科| EPDM密封胶条-EPDM密封垫片-EPDM生产厂家 | 首页-瓜尔胶系列-化工单体系列-油田压裂助剂-瓜尔胶厂家-山东广浦生物科技有限公司 | 点胶机_点胶阀_自动点胶机_智能点胶机_喷胶机_点胶机厂家【欧力克斯】 | 臻知网大型互动问答社区-你的问题将在这里得到解答!-无锡据风网络科技有限公司 | 重庆LED显示屏_显示屏安装公司_重庆LED显示屏批发-彩光科技公司 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | 美甲贴片-指甲贴片-穿戴美甲-假指甲厂家--薇丝黛拉 | 缠膜机|缠绕包装机|无纺布包装机-济南达伦特机械设备有限公司 | 实体店商新零售|微赢|波后|波后合作|微赢集团 | 提升海外网站流量,增加国外网站访客UV,定制海外IP-访客王 | 石英砂矿石色选机_履带辣椒色选机_X光异物检测机-合肥幼狮光电科技 |