編者按:自去年《絕地求生》(PUBG)火遍全球后,大量“吃雞”類新游密集出現(xiàn),游戲廠商們也紛紛效仿,在自家游戲中加入“吃雞”模式,其中最成功的是公布于2011年卻一直難產(chǎn)的《堡壘之夜》。截至今年6月,《堡壘之夜》的全球玩家數(shù)已超過1.25億,大有后來居上的勢頭。雖然游戲很火爆,游戲機(jī)制也很有趣,但口味“刁鉆”的玩家還是有不滿意的地方,比如它的卡通風(fēng)格。
今天,論智給大家?guī)淼氖菙?shù)據(jù)科學(xué)家Chintan Trivedi的實(shí)現(xiàn):用CycleGAN把《堡壘之夜》轉(zhuǎn)成《絕地求生》寫實(shí)風(fēng)。
左:《堡壘之夜》卡通畫面;右:《絕地求生》寫實(shí)畫面
如果你是一名游戲愛好者,你一定聽說過現(xiàn)在風(fēng)靡全球的兩大“吃雞游戲”:《堡壘之夜》和《絕地求生》。它們的游戲機(jī)制十分類似:把100名玩家空投到一座孤島上,讓他們搜集武器互相殘殺,直到留下最后一個(gè)幸存者。我個(gè)人雖然更喜歡《堡壘之夜》的玩法,但也喜歡《絕地求生》的畫面。這就產(chǎn)生了一個(gè)問題:我們能不能繞過游戲開發(fā)人員,自己為游戲提供圖形模塊,從而自定義畫面風(fēng)格。
簡單來說,這其實(shí)是為《堡壘之夜》打一個(gè)《絕地求生》mod,重點(diǎn)是,我該怎么做?作為數(shù)據(jù)科學(xué)家和AI愛好者,深度學(xué)習(xí)是我的第一選擇,經(jīng)過一段時(shí)間的研究,我選擇了一種名為CycleGAN的神經(jīng)網(wǎng)絡(luò),它恰好擅長圖像風(fēng)格轉(zhuǎn)換。
小方框中是CycleGAN轉(zhuǎn)換后的圖像
什么是CycleGAN?
CycleGAN是加州大學(xué)伯克利分校研究人員提出的一種用于跨域圖到圖轉(zhuǎn)換的GAN,它可以把一類圖像的風(fēng)格(比如《堡壘之夜》)轉(zhuǎn)換成另一類圖像(比如《絕地求生》),優(yōu)點(diǎn)是采用無監(jiān)督學(xué)習(xí),即不需要兩個(gè)域的圖像間存在一對一映射,既可以處理配對圖像,也可以處理非配對圖像。
這個(gè)神經(jīng)網(wǎng)絡(luò)可以被看作是兩個(gè)鏡像對稱的GAN,第一個(gè)GAN輸入原始域圖像,把它轉(zhuǎn)成目標(biāo)域風(fēng)格;第二個(gè)GAN則把新轉(zhuǎn)換的圖像重新轉(zhuǎn)成原始域風(fēng)格,和原圖對比差異。這個(gè)差異越小,神經(jīng)網(wǎng)絡(luò)學(xué)到的特征關(guān)聯(lián)就越多,轉(zhuǎn)換效果就越好。由于項(xiàng)目已經(jīng)開源,這里我們不再具體介紹它的技術(shù)細(xì)節(jié)。如下圖所示,CycleGAN可以把馬轉(zhuǎn)成斑馬,可以把蘋果轉(zhuǎn)成橘子,從理論上來說,它也可以轉(zhuǎn)換游戲畫面風(fēng)格。
實(shí)現(xiàn)方法
首先,我們需要大量游戲截圖作為數(shù)據(jù)集。在這些數(shù)據(jù)基礎(chǔ)上,我訓(xùn)練了兩個(gè)GAN,一個(gè)基于原始域《堡壘之夜》,另一個(gè)基于目標(biāo)域《絕地求生》。這兩個(gè)網(wǎng)絡(luò)以循環(huán)的方式同時(shí)訓(xùn)練,以便它們學(xué)習(xí)兩個(gè)游戲中相同對象之間的關(guān)系,從而進(jìn)行適當(dāng)?shù)娘L(fēng)格轉(zhuǎn)換。下圖是這對GAN的循環(huán)架構(gòu):
CycleGAN由兩個(gè)生成器和一個(gè)判別器構(gòu)成。其中生成器F2P輸入《堡壘之夜》截圖,然后把它轉(zhuǎn)成《絕地求生》風(fēng)格;生成器P2F輸入重構(gòu)的截圖,然后把它還原成《堡壘之夜》風(fēng)格,和原圖做對比;判別器則負(fù)責(zé)判斷重構(gòu)的截圖是否真的來自《絕地求生》(生成器“作假”,判別器“打假”)。
常規(guī)的GAN只有一對生成器、判別器,CycleGAN這個(gè)多出來的生成器P2F是為了強(qiáng)制執(zhí)行重建條件。試想一下,我們用的不是配對圖像,數(shù)據(jù)間不存在一對一映射,如果不在原始域和目標(biāo)域之間建立可靠的聯(lián)系,神經(jīng)網(wǎng)絡(luò)是無法實(shí)現(xiàn)風(fēng)格轉(zhuǎn)換的。生成器P2F的作用是強(qiáng)調(diào)重構(gòu)的圖必須與原始圖像存在相似條件,還原后的圖和原圖肯定有差距,我們要在訓(xùn)練過程中把這個(gè)損失值降到最低。這個(gè)思路和自動(dòng)編碼器基本類似。
生成器F2P
生成器F2P由三個(gè)主要卷積塊組成。其中第一個(gè)負(fù)責(zé)在較低維的潛在空間中找到《堡壘之夜》的截圖編碼;第二個(gè)負(fù)責(zé)把這些編碼轉(zhuǎn)換成同一潛在空間中的《絕地求生》編碼;第三個(gè)則負(fù)責(zé)解碼,輸出重構(gòu)圖像,也就是寫實(shí)風(fēng)格的《堡壘之夜》。
在訓(xùn)練過程中,因?yàn)?a href="http://www.1cnz.cn/tags/gpu/" target="_blank">GPU內(nèi)存限制,我只能用256×256的圖像,這個(gè)大小顯然沒法玩游戲。如果你的內(nèi)存在8G以上,你可以得到512×512的圖,雖然還是小了點(diǎn),但有進(jìn)步。所以如果你夠“壕”,而且有足夠的耐心,玩上全屏的《絕地求生》版《堡壘之夜》不是夢。
結(jié)果
經(jīng)過12小時(shí)的訓(xùn)練,CycleGAN已經(jīng)能成功地把天空、樹木、草地轉(zhuǎn)成《絕地求生》樣式,原先卡通風(fēng)格的過飽和顏色也更自然、逼真。除了天空不那么藍(lán),草地不那么綠,神經(jīng)網(wǎng)絡(luò)居然還學(xué)會(huì)了把《堡壘之夜》的彈藥和血量指示器換成《絕地求生》風(fēng)格。
總而言之,神經(jīng)網(wǎng)絡(luò)在識(shí)別兩個(gè)域圖像并轉(zhuǎn)換風(fēng)格上表現(xiàn)出色,雖然分辨率不高,但這些美中不足都會(huì)隨技術(shù)發(fā)展逐漸消失。更重要的是,這種方法直接跳過了傳統(tǒng)3D渲染技術(shù),而且結(jié)果還意外地不錯(cuò)。聯(lián)想到歐美大廠正在紛紛開設(shè)AI實(shí)驗(yàn)室,日系游戲廠商也在積極和新技術(shù)接軌,未來神經(jīng)網(wǎng)絡(luò)會(huì)為游戲工業(yè)帶來多大變革呢?我們拭目以待。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4771瀏覽量
100714 -
GaN
+關(guān)注
關(guān)注
19文章
1933瀏覽量
73286 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5500瀏覽量
121111
原文標(biāo)題:借助深度學(xué)習(xí),把《堡壘之夜》轉(zhuǎn)成PUBG寫實(shí)風(fēng)
文章出處:【微信號(hào):jqr_AI,微信公眾號(hào):論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論