自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

零門檻人像轉(zhuǎn)卡通、GIF表情包,這個(gè)項(xiàng)目不僅開源,還做成了小程序

新聞 前端
這個(gè)項(xiàng)目名叫「人像卡通化 (Photo to Cartoon)」,已經(jīng)在 GitHub 上開源。但對(duì)于不想動(dòng)手下載各種軟件、數(shù)據(jù)集、訓(xùn)練模型的普通用戶,該公司開放了一個(gè)名為「AI 卡通秀」的小程序,可以生成各種風(fēng)格的卡通照片、gif 表情包,完全可以滿足社交需求。

 之前開源的「人臉變卡通」項(xiàng)目往往可以提供很多鬼畜素材,要么嘴歪眼斜,要么臉型扭曲,甚至讓你的五官看上去是隨便放到臉盤里的,完全不像陽間該有的畫風(fēng)……但小視科技最近開源的一個(gè)項(xiàng)目似乎改變了這種印象,不僅可以生成逼真的卡通頭像,還能利用微信小程序做成動(dòng)圖表情包,普通人也可以零門檻上手。

這個(gè)項(xiàng)目名叫「人像卡通化 (Photo to Cartoon)」,已經(jīng)在 GitHub 上開源。但對(duì)于不想動(dòng)手下載各種軟件、數(shù)據(jù)集、訓(xùn)練模型的普通用戶,該公司開放了一個(gè)名為「AI 卡通秀」的小程序,可以生成各種風(fēng)格的卡通照片、gif 表情包,完全可以滿足社交需求。

先來看一下小程序的生成效果:

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

看上去好像還不錯(cuò)。但考慮到明星照可能會(huì)被用作訓(xùn)練數(shù)據(jù),機(jī)器之心小編決定用自己的照片試一下:

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

效果依然傳神!而且,除了常規(guī)卡通頭像之外,你還可以選擇生成圖像的濾鏡和風(fēng)格,如懷舊、字云、素描、剪紙、豹紋等。

小姐姐能完美轉(zhuǎn)換,那小哥哥呢?我們拿象牙山 F4 之一的謝廣坤測(cè)試了一下(眾所周知,廣坤叔的顏值還是很能打的):

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

由于照片中人物右側(cè)下巴的邊界不太明顯,生成的卡通頭像略有瑕疵,但還是一眼就能看出人物特征。當(dāng)然,這還不是最歡樂的。接下來,你還可以做表情包!

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

 

話說回來,這種需要上傳照片的應(yīng)用常常引發(fā)大家對(duì)于隱私問題的擔(dān)憂。有了「Zao」的前車之鑒,「AI 卡通秀」在《用戶協(xié)議》中表示,「除非為了改善我們?yōu)槟峁┑姆?wù)或另行取得您的再次同意,否則我們不會(huì)以其他形式或目的使用上述內(nèi)容(頭像照片等)」。

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

如果你還是擔(dān)心隱私問題,可以直接去 GitHub 上獲取開源數(shù)據(jù)和代碼,訓(xùn)練自己的模型進(jìn)行測(cè)試。

項(xiàng)目地址:https://github.com/minivision-ai/photo2cartoon

接下來,我們就來看看這一應(yīng)用背后的技術(shù)細(xì)節(jié)。

這么好玩的效果是怎么做到的呢?

人像卡通風(fēng)格渲染的目標(biāo)是,在保持原圖像 ID 信息和紋理細(xì)節(jié)的同時(shí),將真實(shí)照片轉(zhuǎn)換為卡通風(fēng)格的非真實(shí)感圖像。

但是圖像卡通化任務(wù)面臨著一些難題:

  1. 卡通圖像往往有清晰的邊緣,平滑的色塊和經(jīng)過簡(jiǎn)化的紋理,與其他藝術(shù)風(fēng)格有很大區(qū)別。使用傳統(tǒng)圖像處理技術(shù)生成的卡通圖無法自適應(yīng)地處理復(fù)雜的光照和紋理,效果較差;基于風(fēng)格遷移的方法無法對(duì)細(xì)節(jié)進(jìn)行準(zhǔn)確地勾勒。
  2. 數(shù)據(jù)獲取難度大。繪制風(fēng)格精美且統(tǒng)一的卡通畫耗時(shí)較多、成本較高,且轉(zhuǎn)換后的卡通畫和原照片的臉型及五官形狀有差異,因此不構(gòu)成像素級(jí)的成對(duì)數(shù)據(jù),難以采用基于成對(duì)數(shù)據(jù)的圖像翻譯(Paired Image Translation)方法。
  3. 照片卡通化后容易丟失身份信息?;诜浅蓪?duì)數(shù)據(jù)的圖像翻譯(Unpaired Image Translation)方法中的循環(huán)一致性損失(Cycle Loss)無法對(duì)輸入輸出的 id 進(jìn)行有效約束。

那么如何解決這些問題呢?

小視科技的研究團(tuán)隊(duì)提出了一種基于生成對(duì)抗網(wǎng)絡(luò)的卡通化模型,只需少量非成對(duì)訓(xùn)練數(shù)據(jù),就能獲得漂亮的結(jié)果??ㄍL(fēng)格渲染網(wǎng)絡(luò)是該解決方案的核心,它主要由特征提取、特征融合和特征重建三部分組成。

整體框架由下圖所示,該框架基于近期研究 U-GAT-IT(論文《U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-Instance Normalization for Image-to-Image Translation》。

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

模型結(jié)構(gòu)方面,在 U-GAT-IT 的基礎(chǔ)上,研究者在編碼器之前和解碼器之后各增加了 2 個(gè) hourglass 模塊,漸進(jìn)地提升模型特征抽象和重建能力。

特征提取

特征提取部分包含堆疊的 Hourglass 模塊、下采樣模塊和殘差模塊。

Hourglass 模塊常用于姿態(tài)估計(jì),它能夠在特征提取的同時(shí)保持語義信息位置不變。該方法采用堆疊的 Hourglass 模塊,漸進(jìn)地將輸入圖像抽象成易于編碼的形式。4 個(gè)殘差模塊則用于編碼特征并提取統(tǒng)計(jì)信息,用于后續(xù)的特征融合。

特征融合

近期論文 U-GAT-IT 提出了一種歸一化方法——AdaLIN,能夠自動(dòng)調(diào)節(jié) Instance Norm 和 Layer Norm 的比重,再結(jié)合注意力機(jī)制實(shí)現(xiàn)人像日漫風(fēng)格轉(zhuǎn)換。

研究人員基于此提出了 Soft-AdaLIN(Soft Adaptive Layer-Instance Normalization)歸一化方法。先將輸入圖像的編碼特征統(tǒng)計(jì)信息和卡通特征統(tǒng)計(jì)信息融合,再以 AdaLIN 的方式反歸一化解碼特征,使卡通畫結(jié)果更好地保持輸入圖像的語義內(nèi)容。

不同于原始的 AdaLIN,這里的「Soft」體現(xiàn)在不直接使用卡通特征統(tǒng)計(jì)量來反歸一化解碼特征,而是通過可學(xué)習(xí)的權(quán)重 w_μ 和 w_σ 來加權(quán)平均卡通特征和編碼特征的統(tǒng)計(jì)量,并以此對(duì)歸一化后的解碼特征進(jìn)行反歸一化。

編碼特征統(tǒng)計(jì)量 μ_en 和 σ_en 提取自特征提取階段中各 Resblock 的輸出特征,卡通特征統(tǒng)計(jì)量則通過全連接層提取自 CAM(Class Activation Mapping)模塊輸出的特征圖。加權(quán)后的統(tǒng)計(jì)量為:

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

Soft-AdaLIN 操作可以表示為:

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

特征重建

特征重建部分負(fù)責(zé)從編碼特征生成對(duì)應(yīng)的卡通圖像。

這部分采用與特征提取部分對(duì)稱的結(jié)構(gòu),通過解碼模塊、上采樣模塊和 Hourglass 模塊生成卡通畫結(jié)果。

損失函數(shù)

如上所述,照片卡通化后容易丟失身份信息。為了使輸出結(jié)果體現(xiàn)人物信息,除了常規(guī)的 Cycle Loss 和 GAN Loss,研究人員還引入了 ID Loss:使用預(yù)訓(xùn)練的人臉識(shí)別模型來提取輸入真人照和生成卡通畫的 id 特征,并用余弦距離來約束,使卡通畫的 id 信息與輸入照片盡可能相似。

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

如何實(shí)現(xiàn)?

安裝依賴庫

項(xiàng)目所需的主要依賴庫如下:

  • python 3.6
  • pytorch 1.4
  • tensorflow-gpu 1.14
  • face-alignment
  • dlib

Clone

  1. git clone https://github.com/minivision-ailab/photo2cartoon.git 
  2.  
  3. cd ./photo2cartoon 

下載資源

資源地址:

  • https://drive.google.com/open?id=1eDNGZT3jszHLXQ9XGIUPtcu72HdBmHuX
  • https://pan.baidu.com/s/1DxWWBAoaBpsei_rynZUZzw 提取碼:z2nm
  1. 人像卡通化預(yù)訓(xùn)練模型:photo2cartoon_weights.pt,存放在 models 路徑下。
  2. 頭像分割模型:seg_model_384.pb,存放在 utils 路徑下。
  3. 人臉識(shí)別預(yù)訓(xùn)練模型:model_mobilefacenet.pth,存放在 models 路徑下。(From: InsightFace_Pytorch)
  4. 卡通畫開源數(shù)據(jù):cartoon_data,包含 trainB 和 testB。

測(cè)試

將一張測(cè)試照片(亞洲年輕女性)轉(zhuǎn)換為卡通風(fēng)格:

  1. python test.py --photo_path ./images/photo_test.jpg --save_path ./images/cartoon_result.png 

訓(xùn)練

1. 數(shù)據(jù)準(zhǔn)備

訓(xùn)練數(shù)據(jù)包括真實(shí)照片和卡通畫像,為降低訓(xùn)練復(fù)雜度,團(tuán)隊(duì)對(duì)兩類數(shù)據(jù)進(jìn)行了如下預(yù)處理:

  • 檢測(cè)人臉及關(guān)鍵點(diǎn)。
  • 根據(jù)關(guān)鍵點(diǎn)旋轉(zhuǎn)校正人臉。
  • 將關(guān)鍵點(diǎn)邊界框按固定的比例擴(kuò)張并裁剪出人臉區(qū)域。
  • 使用人像分割模型將背景置白。

零门槛人像转卡通、GIF表情包,这个项目不仅开源,还做成了小程序

團(tuán)隊(duì)開源了 204 張?zhí)幚砗蟮目ㄍó嫈?shù)據(jù),用戶還需準(zhǔn)備約 1000 張人像照片(為匹配卡通數(shù)據(jù),盡量使用亞洲年輕女性照片,人臉大小最好超過 200x200 像素),使用以下命令進(jìn)行預(yù)處理:

  1. python data_process.py --data_path YourPhotoFolderPath --save_path YourSaveFolderPath 

將處理后的數(shù)據(jù)按照以下層級(jí)存放,trainA、testA 中存放照片頭像數(shù)據(jù),trainB、testB 中存放卡通頭像數(shù)據(jù)。

  1. ├── dataset 
  2.  
  3.     └── photo2cartoon 
  4.  
  5.         ├── trainA 
  6.  
  7.             ├── xxx.jpg 
  8.  
  9.             ├── yyy.png 
  10.  
  11.             └── ... 
  12.  
  13.         ├── trainB 
  14.  
  15.             ├── zzz.jpg 
  16.  
  17.             ├── www.png 
  18.  
  19.             └── ... 
  20.  
  21.         ├── testA 
  22.  
  23.             ├── aaa.jpg  
  24.  
  25.             ├── bbb.png 
  26.  
  27.             └── ... 
  28.  
  29.         └── testB 
  30.  
  31.             ├── ccc.jpg  
  32.  
  33.             ├── ddd.png 
  34.  
  35.             └── ... 

2. 訓(xùn)練

重新訓(xùn)練:

  1. python train.py --dataset photo2cartoon 

加載預(yù)訓(xùn)練參數(shù):

  1. python train.py --dataset photo2cartoon --pretrained_weights models/photo2cartoon_weights.pt 

 

 

責(zé)任編輯:張燕妮 來源: 機(jī)器之心
相關(guān)推薦

2018-07-23 16:18:01

2015-01-28 10:55:09

平安免費(fèi)WiFi

2021-09-10 09:37:05

AI 數(shù)據(jù)人工智能

2025-03-11 10:51:35

DifyDeepSeek大模型

2024-10-08 10:15:00

AI模型

2011-12-16 13:27:16

360文件管理

2012-04-26 11:45:45

2020-01-13 21:18:30

大咖來了大數(shù)據(jù)云分析平臺(tái)

2023-03-29 15:11:24

AI方案

2023-10-31 10:11:50

昆侖萬維大模型

2022-11-24 09:19:53

AI數(shù)據(jù)挖掘

2024-04-01 12:43:40

模型訓(xùn)練開源

2023-10-30 14:59:28

2023-06-09 13:36:00

蘋果設(shè)計(jì)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)