日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

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

發布時間:2025/3/15 python 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 装逼神器,5 行 Python 代码 实现一键批量扣图,你get到了吗 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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

1. 準備工作- 安裝paddlepaddle

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

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

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

?

本文以MacOS系統為例:

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

或者:

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

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

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

2. 準備工作- 安裝paddlehub

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

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

PaddleHub官網:

PaddleHub項目地址:

更多PaddleHub預訓練模型教程合集課程可見:

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

或者按指定版本安裝:

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

3. 一鍵扣圖代碼實現

我們的實現步驟很簡單:

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

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

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

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

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

?

原圖片

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

?

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

?

摳圖圖片

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

4. 需要注意的坑

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

?

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

?

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

具體原因沒有細究,默認自動安裝模型時,版本為1.2.0,猜測由于還是模型版本不兼容問題導致。如果大家對Python感興趣的話,可以加一下我的微信哦:abb436574,免費領取一套學習資料和視頻課程喲~

5. 總結

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

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

總結

以上是生活随笔為你收集整理的装逼神器,5 行 Python 代码 实现一键批量扣图,你get到了吗的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。