Photo-Sketching 一個能將照片的輪廓識別出來并將其轉化為“速寫”型圖像的開源模塊。
這個模塊的使用也相對簡單,下面給大家帶上全方面的教程:
1.虛擬環境及依賴安裝
這個項目推薦大家直接用Anaconda進行環境的構建和開發:Python數據分析與挖掘好幫手—Anaconda,因為作者提供了一個 environment.yml 文件,你只需要輸入以下命令,就能一鍵安裝環境和依賴:
conda env create -f environment.yml
此外,推薦大家用VSCode編輯器來編寫像這樣的小型Python項目:Python 編程的最好搭檔—VSCode 詳細指南。
2.下載預訓練模型
作者已經訓練好了一些識別模型方便大家使用,可以在下列地址找到:
https://drive.google.com/file/d/1TQf-LyS8rRDDapdcTnEgWzYJllPgiXdj/view
作者使用的是谷歌硬盤,如果你無法科學上網,可以使用我提供的完整源代碼+預訓練模型,在 **Python實用寶典 **公眾號后臺回復:**sketch **即可獲取。
下載完成后解壓文件,將 latest_net_D.pth 和 latest_net_G.pth 放置到 Checkpoints 文件夾下:
3.運行預訓練模型
接下來,我們需要修改使用預訓練模型的啟動腳本,這些腳本都放在 PhotoSketchscripts 下,我們需要使用的是 test_pretrained.cmd 或者 test_pretrained.sh 這兩個腳本。
如果你是 windows 系統,請修改 test_pretrained.cmd 腳本,重點是dataDir、results_dir、checkpoints_dir:
dataDir 指向到 PhotoSketch 所在的文件夾目錄,如果你是跟我一樣這么配的,results_dir 只需要配成 %dataDir%PhotoSketchResults 即可,checkpoints_dir 則為 %dataDir%PhotoSketchCheckpoints 。
如果你是macOS或者Linux,則修改 test_pretrained.sh 文件,修改方法與上面windows 的一樣,只不過 反斜杠 "" 要換成 斜桿 "/" 。
修改完腳本后,打開命令行/終端,輸入以下命令,就會將你 PhotoSketchexamples 目錄下的文件轉化為“速寫”。
windows:
scriptstest_pretrained.cmd
Linux/MacOS:
./scripts/test_pretrained.sh
轉化結果可以在 PhotoSketchResults 中看到,如下兩圖所示。
待轉化目錄:
轉化后:
可以看到效果其實不是非常好,由于是作者預訓練的模型,所以效果不好也正常,如果大家需要的話,可以自己針對性地拿一些圖像訓練模型,并針對性地做識別,這樣做效果才是最好的。
你需要訓練或測試自己的模型也非常簡單:
- 在倉庫的 根目錄中 ,運行
scripts/train.sh
可以訓練模型 - 在倉庫的 根目錄中 ,運行
scripts/test.sh
可以測試val集或測試集
當然訓練過程肯定沒這么簡單,你會遇到不少問題,但是我相信大部分都是存放圖片的目錄結構上的問題,大家如果有興趣可以動手試試。
-
模塊
+關注
關注
7文章
2696瀏覽量
47437 -
開源
+關注
關注
3文章
3323瀏覽量
42473 -
編輯器
+關注
關注
1文章
805瀏覽量
31163 -
python
+關注
關注
56文章
4793瀏覽量
84631
發布評論請先 登錄
相關推薦
評論