
來自:https://cuijiahua.com/blog/2020/11/ai-6.html
一、前言
大家好,我是 Jack ,
周一,看到 arXiv 新發了一篇非常有趣的論文:「Stylized Neural Painting」,
看著很有意思,文章就先寫出來了,這簡直就是為藝術而生的演算法,看下效果:

你沒看錯,演算法根據我們提供的圖片,自動一筆一劃的創作油畫!
影像風格遷移演算法,一直都有人研究,但之前的效果多少差點意思,而這個剛剛發表的「Stylized Neural Painting」效果有了不錯的提升,
準備好的你畫筆和鍵盤,今天繼續手把手教學,
演算法原理、環境搭建、效果實作,一條龍服務,盡在下文!
二、Stylized Neural Painting
論文提出了一種圖片轉畫作的演算法,生成的畫作效果逼真,風格可控,
與以往圖片風格遷移演算法不同,演算法是根據提供的圖片推導作畫的每一個筆劃,做到了「一筆一劃」的作畫效果,
設計了新的神經網路渲染器,模擬矢量渲染器的行為,將筆畫預測作為引數搜索程序,以最大限度提高輸入和渲染輸出之間的相似性,
用柵格化網路和陰影網路的雙通道神經網路渲染器實作顏色和形狀的解耦,該方法生成的影像無論在整體外觀還是區域紋理上都具有較高的保真度,

右下角小圖是原圖,大圖是演算法轉換的油畫作品,
除了油畫風格,還有水彩筆、記號筆的畫風:

還有顏色或紋理的風格遷移:

更詳細的內容,可以直接看 paper:
論文地址:https://arxiv.org/abs/2011.08114
三、效果測驗
Github 專案地址:https://github.com/jiupinjia/stylized-neural-painting
第一步:搭建測驗環境,
根據 Requirements.txt 安裝依賴庫即可,很簡單,

沒有什么特殊的庫,
第二步:下載訓練好的模型權重檔案,一共有四個模型,我直接打包好了,
我將程式和權重檔案都進行了打包,嫌麻煩,可以下載直接使用,
下載地址(提取碼:jack):
https://pan.baidu.com/s/1i9OsVHmdIHZG2x3Sch2gBA
第三步:在工程目錄,運行程式,
python demo_prog.py --img_path ./test_images/apple.jpg --canvas_color 'white' --max_m_strokes 500 --max_divide 5 --renderer oilpaintbrush --renderer_checkpoint_dir checkpoints_G_oilpaintbrush
img_path:要輸入的圖片,
canvas_color:可以理解為畫板的背景顏色,
max_m_strokes 和 max_divide:控制筆劃的大小,畫作最后的細致程度,
renderer:畫作風格,可選引數有watercolor、markerpen、oilpaintbrush、rectangle,
renderer_checkpoint_dir:權重檔案路徑,
最終的生成效果會根據筆劃,由少到多,保存在 output 檔案夾里,
運行效果:

運行在 RTX 2060 super 上,花費大約 5 分鐘,最終效果:

五、絮叨
圖解深度學習等技術教程,還在寫,讓我好好梳理一番,敬請期待!
我是 Jack ,我們下期見,
原文地址:https://mp.weixin.qq.com/s/BnuNQYk4AXbyQpZFwu02qg
文章持續更新,可以微信公眾號搜索【JackCui-AI】第一時間閱讀,本文 GitHub https://github.com/Jack-Cherish/PythonPark 已經收錄,有大廠面試完整考點,歡迎Star,
CSDN認證博客專家
演算法工程師
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/227158.html
標籤:AI
