深度學習脫掉圖片人物的褲子【python教程】
效果演示
本文案例使用的是開源專案instagan,是一種比較新的gan模型建模原理,來自2019年ICLR的論文,下面看下效果對照:
(出於人道主義,會把人物的長褲脫掉然後換上短裙)
環境配置
首先玩這個模型需要兩個前提條件:
-
有梯子
-
python3.6版本
-
有GPU環境(因為原始碼是要求必須在GPU的Cuda環境下執行,如果沒有GPU的同學推薦用PAI裡面的DSWhttps://data.aliyun.com/product/learn ,比較便宜 )
執行以下流程:
- (1)下載實驗程式碼:https://github.com/sangwoomo/instagan
- (2)下載pre-trained model,如果只是實驗就直接用訓練好的模型即可:https://drive.google.com/drive/folders/1xb9rR21MhMVselc6HTmOr73WOkOviFmO(如果只玩換褲子這個實驗,下載pants2skirt_mhp_instagan這個模型即可)
- (3)安裝程式碼中的requirement.txt中的依賴包
最後把下載的model檔案放到程式碼檔案的根目錄下,目錄結構如下(藍色部分為模型資料夾,裡面是200_net_G_A.pth和200_net_G_B.pth):
完成以上步驟,整個環境就搭建好了。
使用模型做圖片轉換
注:這個專案的程式碼有很多hard code的邏輯,需要嚴格按照下面的做法執行才有可能跑通,包括所有檔案的命名。
(1)先設定需要轉換的圖片
在datasets目錄下新增一個test資料夾,構建如下的檔案格式
testA和testB存放需要轉換的原圖,類似於“效果演示中”穿著長褲的圖片,testA_seg和testB_seg需要存放mask圖片。mask檔案是轉換圖片中的褲子樣式,如下圖對應例項圖片左邊的女生褲子(如果想轉換其它部位,就不用我舉例子了吧):
mask圖片還需要與被轉換圖片命名一致,詳細規則參見原始碼中的datasets,如果不一致會出現以下錯誤:https://github.com/sangwoomo/instagan/issues/5
(2)執行圖片轉換邏輯
在工程的根目錄下執行以下程式碼,使用工程下的test.py這個測試程式碼:
python test.py --dataroot ./datasets/test --model instagan --name pants2skirt_mhp_instagan --loadSizeH 240 --loadSizeW 160 --fineSizeH 240 --fineSizeW 160 --ins_per 2 --ins_max 20
如果沒有報錯的話在GPU環境下1分鐘就可以執行完畢,程式碼執行完畢後在工程的results資料夾下就能看到轉換好的圖片了。
總結
整個專案的效果還是不錯的,隨便傳張圖片都能脫掉人物的褲子。不過可能程式碼還沒來得及優化,可能在實驗的過程中有很多坑,大家需要一定的debug能力才能把工程跑起來,小白不太建議使用哈。
相關文章
- 用Python脫掉圖片人物的褲子Python
- 基於PaddlePaddle的圖片分類實戰 | 深度學習基礎任務教程系列深度學習
- 機器學習根據文字生成圖片教程(附python程式碼)機器學習Python
- 機器學習框架ML.NET學習筆記【7】人物圖片顏值判斷機器學習框架筆記
- Python學習筆記 - 下載圖片Python筆記
- python 裁剪圖片;位深度不變Python
- Python深度學習Python深度學習
- 【深度學習】大牛的《深度學習》筆記,Deep Learning速成教程深度學習筆記
- 深度學習 preprocess 預處理圖片方式去 pytorch 化深度學習PyTorch
- 深度學習領軍人物邁克爾·喬丹的發言!深度學習
- python深度學習(一)Python深度學習
- 【學習圖片】1.圖片簡史
- [GAN學習系列3]採用深度學習和 TensorFlow 實現圖片修復(上)深度學習
- [GAN學習系列3]採用深度學習和 TensorFlow 實現圖片修復(下)深度學習
- 一篇關於微信防撤回(文字、圖片、語音、影片、名片)的Python學習教程Python
- Python利用深度學習進行文字摘要的綜合指南(附教程)Python深度學習
- 華住脫褲後,你的隱私還有多少
- 【學習圖片】10.響應式圖片
- topthink人物資訊中的封面圖片上傳。。。。
- 【學習圖片】07:JPEG
- 【學習圖片】06:PNG
- 【學習圖片】05:GIF
- 【學習圖片】08:WebPWeb
- 【學習圖片】09: AVIF
- 深度學習與CV教程(8) | 常見深度學習框架介紹深度學習框架
- lxyt-415x 最想刪掉的圖片
- Python高效深度學習機器識別驗證碼教程分享Python深度學習
- 推薦一個去除圖片人物背景的工具RemovebgREM
- 【學習圖片】03:向量影像
- 深度學習-理論學習關鍵示意圖深度學習
- 人工智慧-機器學習-深度學習-電子書大全人工智慧機器學習深度學習
- ENVI深度學習V1.0操作教程深度學習
- 深度學習教程 | 神經網路基礎深度學習神經網路
- 基於深度學習的圖書管理推薦系統(附python程式碼)深度學習Python
- 深度學習、機器學習、python、C++視訊深度學習機器學習PythonC++
- canvas繪製圖片drawImage學習Canvas
- 【學習圖片】04:光柵影像
- 【Python學習教程】Python的5種高階用法!Python