周懷宇
劉海龍*
隨著人工智能技術的進步,基于設計圖像數(shù)據(jù)的機器學習(Machine Learning)使人工智能輔助設計(Artificial Intelligence Aided Design,AIAD)成為可能,其中,深度學習(Deep Learning)已在設計圖像分析和生成方面展現(xiàn)出極大的應用潛力。近幾年,在建筑及平面設計領域,專業(yè)的圖片數(shù)據(jù)集及深度學習應用不斷涌現(xiàn)[1-2],設計師依托跨學科合作開發(fā)AIAD場景,提升設計分析及制圖效率。而風景園林學科開展這類研究的限制主要來自跨學科的合作和數(shù)據(jù)集的缺失[3]。
圖像是呈現(xiàn)設計方案的重要載體,風景園林設計平面圖是設計師案例借鑒、概念呈現(xiàn)及方案溝通的主要表現(xiàn)形式,平面圖的規(guī)范表達和高質(zhì)量渲染對設計呈現(xiàn)至關重要[4]。因此,設計師往往花費大量時間收集可借鑒的平面案例,并使用多種軟件渲染平面圖。目前,計算機視覺(Computer Vision)領域的圖像識別、生成技術已較為成熟,使AI識別案例平面并渲染制圖成為可能。而實現(xiàn)這一自動化分析和制圖的前提是高質(zhì)量的風景園林平面圖訓練集。與常見的人臉或物體圖像數(shù)據(jù)庫不同[5-6],風景園林平面數(shù)據(jù)庫具有突出的專業(yè)性:1)用地類型多樣;2)圖紙表達兼具規(guī)范性、藝術性;3)獲取門檻高,需要專業(yè)人員進行細致篩選和數(shù)據(jù)標注(Data Labeling)。
本文采用風景園林和計算機的跨學科研究方式,展開一項將生成對抗網(wǎng)絡(Generative Adversarial Networks,GAN)[7]用于風景園林平面用地類型識別和渲染的試驗(圖1)。GAN對平面圖的用地識別就好比設計師對案例平面的功能分類統(tǒng)計,而GAN學習平面肌理圖后可基于輸入條件一鍵生成渲染結果,這就類似于設計師在各類軟件上的制圖過程。簡要來說,深度訓練使得GAN能夠完成以往只有設計師才能實現(xiàn)的平面分析和渲染,而識別-渲染的自動化有潛力提升設計師的工作效率。
選取的循環(huán)生成對抗網(wǎng)絡(CycleGAN)[8]模型需要300輪的訓練,便可同時完成平面圖用地性質(zhì)識別和自動渲染任務。而訓練模型的實踐應用途徑可具體描述為:1)輔助案例分析:當設計師拿到一張平面案例時,可快速利用該模型初步了解各種用地類型的面積比例,根據(jù)項目的尺度定量分析項目的空間分配情況(圖1-1);2)輔助平面制圖:設計師不需要在制圖軟件(如Photoshop)上渲染肌理,只需要提供一個色塊填圖,就可以快速獲取一個質(zhì)量可觀的渲染結果用于方案溝通(圖1-2)。在方案設計階段,尤其是大量方案分析整理及多方案制圖的工作場景下,該模型有助于提升風景園林師的工作效率,節(jié)省制圖時間。
圖1 基于GAN的風景園林平面用地識別與自動渲染(方案引自ASPECT Studios)
圖2 GAN的圖像生成原理(2-1 GAN;2-2 條件GAN)
圖像識別與生成(Image Recogniton and Generation)是當前人工智能領域的研究前沿與熱點,深度卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)具有優(yōu)秀的圖像表達能力。在風景園林及建筑學領域,深度模型應用仍處于起步階段,已有研究可分為設計圖像分類和設計圖片生成兩大領域。在圖像識別用于數(shù)據(jù)分類方面:Kim等[9]嘗試使用CNN識別建筑室內(nèi)照片中的沙發(fā)、餐桌、椅子和柜子等要素并提取其顏色和材質(zhì)肌理;Ng等[10]利用CNN模型分類大量建筑平、立、剖面圖紙,分類準確性可達約80%;陳家驁[11]、曹建芳等[12]則提出了多種基于CNN的風景畫要素分類提取方式。而在設計圖片生成方面,GAN模型得到初步應用,建筑師已開始嘗試選取用Pix2Pix[13]及Pix2PixHD[14]等典型的圖片到圖片(Image to Image)GAN模型用于住宅平面圖的合成。Huang等[1]利用公寓平面圖片作為數(shù)據(jù)集,嘗試利用Pix2PixHD模型識別和生成公寓建筑平面;Chaillou[15]則利用多個Pix2Pix模型,實現(xiàn)“建筑平面輪廓-輪廓內(nèi)布局-添加家具”的公寓平面設計流程。
不難發(fā)現(xiàn),自2014年GAN被首次提出以來,設計領域開始逐步選用GAN開發(fā)新設計工具,其多種改進模型展現(xiàn)出對抗訓練方式的獨特優(yōu)越性,已廣泛用于圖片分類、圖片風格遷移和圖片修復等場景[16-19]。與傳統(tǒng)用于圖像識別的CNN模型相比,GAN的識別與生成訓練可在一個模型中完成,模型訓練過后既能分類,也能生成新的圖像,這就類似于人類設計師的“學以致用”。這種訓練方式需要2個神經(jīng)網(wǎng)絡同時訓練,互相“對抗”:GAN由一個生成網(wǎng)絡(Generator,簡稱G)和一個判別網(wǎng)絡(Discriminator,簡稱D)構成。生成器G嘗試從隨機噪聲合成圖片使判別器D無法分辨真假,D嘗試判別隨機合成的圖像是真是假并將結果反饋給G,在一定次數(shù)的對抗訓練中,逐步提升G的圖片合成能力和D的判別能力(圖2-1)。
在設計學科的場景中,自動化的圖形識別與生成往往需要利用到有輸入條件的GAN模型。條件GAN(ConditionalGAN)[20]進一步將輸入給G的隨機圖片噪聲轉變?yōu)榧榷▓D片,并將目標圖片(Ground Truth)或數(shù)據(jù)標簽輸入給D用于判別,形成了典型的圖片到圖片的識別與生成場景(圖2-2)。上文提到的Pix2Pix和Pix2PixHD這2類條件GAN模型(圖3-1)便是采用成對數(shù)據(jù)(Paired Data)訓練的方式解決了圖片到圖片的生成問題,Pix2PixHD甚至能夠生成真假莫辨的高清人物頭像或街景圖。本研究選取的CycleGAN模型[8]則進一步采用非成對數(shù)據(jù)集(Unpaired Data)進行訓練,成對訓練的方式需要進行識別和渲染2個方向的訓練,而本文選取的CycleGAN則可同時完成上述方向的訓練,在效率上具有一定優(yōu)勢(圖3-2)。
圖3 Pix2Pix、Pix2PixHD(3-1)及CycleGAN(3-2)的應用[8,16-17]
圖4 數(shù)據(jù)集列舉及標簽RGB規(guī)則(4-1方案引自HM White事務所Tribeca Penthouse花園;4-2方案引自Stimson事務所Pulaski Park;4-3方案引自Starr Whitehouse事務所St. Mary's Park)
圖5 CycleGAN識別風景園林平面用地信息結果(5-1方案引自Gillespies事務所;5-2方案引自Caddown網(wǎng)站;5-3方案引自GGN事務所;5-4方案引自ASPECT Studios事務所)
類。標簽由3名風景園林師完成矢量化標注并導出為圖片,嚴格保證了標簽及原圖的對位關系,具體用地類型及RGB選色如圖4所示。為方便未來數(shù)據(jù)集的開源工作,筆者利用像素統(tǒng)計的方式,統(tǒng)計了325張平面圖中各類連續(xù)相同RGB色塊的數(shù)量,并列入表1。經(jīng)統(tǒng)計,共標注了約58 000個用地色塊,具體統(tǒng)計過程在此不做贅述。
預試驗的主要目的為模型篩選,本文基于Pytorch平臺,使用GPU加速運算,基于Pix2Pix、CycleGAN的開源模型進行預測試。該階段選取300張數(shù)據(jù)集,首先進行了100輪(epoch100)的訓練,發(fā)現(xiàn)非成對訓練的CycleGAN模型能夠清晰地表達出風景園林平
共收集了325張風景園林平面圖,包括廣場、市政公園、居住區(qū)和濱水公園等多種綠地類型,分為300張訓練集和25張驗證集(驗證集不參與訓練),均為2 000×2 000px,JPEG格式。需要強調(diào)的是,為提高數(shù)據(jù)標注的準確性、保證模型能夠較好地學習到平面像素肌理,選擇小于15hm2的中小尺度項目平面作為訓練樣本,這類圖片比例尺較大,圖像肌理相對更清晰(圖4)。方案主要來源于國內(nèi)外知名事務所及獲獎方案,以保證平面圖表達兼具規(guī)范性和藝術性。
采用RGB顏色區(qū)分的方式進行平面圖用地地塊的標注,標簽均為2 000×2 000px,PNG格式。標簽根據(jù)風景園林平面圖常見的表達方式,標注軟質(zhì)和硬質(zhì)景觀要素并細化至11個小面圖的細節(jié),相比之下,盡管Pix2pix模型結果顏色十分豐富,但出現(xiàn)了明顯的像素感、紋理模糊、邊界不清晰等問題,因此,最終選擇利用CycleGAN進行正式的300輪(Epoch300)訓練。
表1 平面圖數(shù)據(jù)集中各類用地地塊的數(shù)量統(tǒng)計
正式訓練過程包含構建生成器G、構建鑒別器D和定義損失函數(shù)(Loss Function)等[21],具體解釋如下。
1)本研究CycleGAN中包含2對生成對抗網(wǎng)絡:識別生成器G1關注x→y過程,平面圖渲染生成器G2關注y→x過程;還需要D1和D2分別判斷真實性。進一步定義G1、G2卷積層中要提取出的特征數(shù)量為32,并將輸入給生成器的圖片分割為256×256px的小圖。
2)單個生成器由編碼器、解碼器和轉換器3個部分組成,分別完成特征提取、相近特征組合、特征還原生成的任務(編碼器中會識別和提取圖像特征;轉換器組合圖像的相近特征,形成一定數(shù)量的特征向量;解碼器利用反卷積層從特征向量中還原出低級特征),最終合成1 024×1 024px的輸出圖像。
3)單個判別器也是典型的卷積網(wǎng)絡,判別后返還給G一張比原來輸入小16倍、通道數(shù)為1的特征圖,特征圖的每個像素點值1表示真,0表示假。
4)損失函數(shù)被用來評價模型生成值和真實值的不一致程度(非負的實值函數(shù)),值越小表示模型的擬合效果越好。CycleGAN的損失函數(shù)由三部分組成。首先,模型包含2對生成和判別器,對應2個損失函數(shù),分別標記為LG(G1,D1,x,y)和LG(G2,D2,x,y)。由于存在識別、渲染2個過程,單純依賴上述2個損失函數(shù)是無法進行訓練的:以x→y過程為例,G1完全可以將所有x都映射為y空間中的同一張圖片,使得判別器DY永遠判斷為真,無法與原圖形成對應關系,造成損失無效化。因此CycleGAN要求2個生成器的損失函數(shù)具有循環(huán)一致的特性(cycle consistency),即G1[G2(y)]≈y,G2[G1(x)]≈x,需額外定義循環(huán)一致性函數(shù)Lcycle(G1,G2,x,y)來做限定。因此最終的損失函數(shù)L表達式包含3個部分:
圖5 選取了驗證集結果展示Cyle GAN識別風景園林用地類型的訓練過程,并分析CycleGAN最終輸出(Epoch300)在識別用地類型的表現(xiàn)。目前,人工目視解譯仍是評價識別結果的最有效方式[22]。首先,隨著訓練次數(shù)的增加,CycleGAN識別的準確性也逐步提升,色塊分割也由50代(Epoch50)的較為分散逐步轉變到最終輸出(Epoch300)較為完整的圖像分割??傮w來說,CycleGAN能夠較為準確地識別風景園林平面圖中的道路、鋪裝節(jié)點及綠地等類型,可以完成案例平面用地比例的提取任務。
需要強調(diào)的是,模型識別結果與人工標注的差別并不一定代表是模型的錯誤。實際操作中,人工標注的錯誤及適當簡化不可避免,深度模型的優(yōu)勢體現(xiàn)在識別的細致和全面性上,較易發(fā)現(xiàn)人工標注的疏漏:如圖5中紅框3所示,標注人員在制作標簽時簡化了樹團的標注,樹團的范圍有一定誤差,但CycleGAN模型能夠完成較為準確的樹團識別。
當然,識別結果也存在一定的不足:1)當識別的平面圖有大面積硬質(zhì)景觀且圖像肌理復雜時,模型將道路廣場識別為運動場、水面等類型用地的錯誤偶有發(fā)生(圖5中紅框1),同時也存在模型將建筑物識別為廣場或空白區(qū)域的錯誤(圖5中紅框2、4);2)試驗在標簽標注及數(shù)據(jù)清洗時忽略了對圖片中文字的處理和標注,這也導致模型識別平面圖文字時產(chǎn)生干擾,有待在后續(xù)研究中改善(圖5中紅框5);3)訓練中忽視了風景園林平面圖中常見的半透明樹木表達對識別的影響,導致模型識別結果中樹木圖案較為破碎(圖5中紅框1、5),初步考慮在后續(xù)研究中采用有樹/無樹2種標簽的方式將一個方案拆分為2個進行重復訓練。綜合分析以上問題的主要原因:風景園林平面表達的藝術風格非常多樣,設計師在電腦渲染時會特別注意增加細節(jié)、半透明和漸變效果,這就給CycleGAN的用地識別帶來了挑戰(zhàn)。
圖6 CycleGAN風景園林平面生成訓練過程50~300代(方案引自Ayers Saint Gross事務所)
圖7 CycleGAN驗證集50代(Epoch50)、最終輸出(Epoch300)的訓練結果(7-1方案引自AUworkshop事務所;7-2方案引自Caddown網(wǎng)站;7-3方案引自Opengabric事務所)
圖8 CycleGAN風景園林平面生成結果的直方圖分析(8-1方案引自Gillespies事務所;8-2方案引自Site Design Group事務所)
圖6選取了驗證集編號303的各個訓練代結果用于展示CycleGAN整個訓練過程中渲染細節(jié)的深化。總體來說,隨著訓練次數(shù)的增加,模型的渲染筆觸逐步加深,細節(jié)逐步增多。通過放大細節(jié)可以看到,在第50代(Epoch50)時,模型展示了一種扁平化的渲染方式,筆觸感弱,但能夠清晰展示空間的屬性;而在訓練次數(shù)達到300代以后,平面圖渲染的細節(jié)更加豐富,形成了一種漸變、混合的渲染筆觸。
圖7 進一步選取了部分驗證集5 0 代(Epoch50)、最終輸出(Epoch300)的訓練結果,從圖片質(zhì)量、規(guī)范表達和色彩藝術性3個方面,定性與定量相結合地分析渲染結果。
3.2.1 圖片質(zhì)量
CycleGAN的平面生成結果為1 024×1 024px,在常見的1 080p分辨率的顯示器上能夠清晰顯示,基本滿足風景園林師在方案溝通、匯報時圖片的展示需求。生成圖片(Epoch300)的質(zhì)量問題主要體現(xiàn)在:部分圖片呈現(xiàn)出明顯的像素方格肌理(圖7中放大的紅框細節(jié)2),但與此同時,較早的Epoch50則沒有這個問題??梢?,在訓練次數(shù)增加、渲染筆觸增多的同時,像素化問題也明顯增多,反映了CycleGAN這類生成模型固有的細節(jié)添加過度問題。計算學科當前正利用改進損失函數(shù)、訓練模式和超分辨率等方法改進這一類圖像質(zhì)量問題。但從簡化程序的角度分析,筆者構想改善這一缺陷的對策主要是在模型結果的基礎上進行高斯模糊(半徑2.0)處理,并疊加用地邊線區(qū)分邊界,這能夠很好地解決生成的平面圖像素感過強的問題。
3.2.2 規(guī)范表達
CycleGAN的最終輸出結果(Epoch300)能夠準確反映用地類型,模型也在訓練過程中形成了一定的渲染范式(圖7):1)在表達廣場及道路時以白色、灰色為主,用地邊緣處較深;2)鋪裝及空間節(jié)點表達的色彩主要為棕色,并帶有部分肌理;3)在表達建筑物時主要選取灰色,建筑邊緣較深;4)能夠清晰地區(qū)分出草地及喬木,肌理最為豐富;5)能夠用藍色準確地表達水面。模型表達平面圖的缺陷主要集中在構筑物這一用地類型,訓練后CycleGAN模型傾向于用白灰色表達構筑物,因此模型在表達道路及廣場附近的構筑物時易導致用戶識圖困難。圖7中放大的紅框細節(jié)2明顯地反映了這一問題,經(jīng)過源數(shù)據(jù)分析發(fā)現(xiàn),標簽中標注了大量用灰白色表達的景觀雕塑、墻體和圍欄,而其他顏色的構筑物圖片較少。筆者構想,應對這一缺陷的有效對策是在應用模型時,將道路及廣場附近的構筑物標注為建筑或節(jié)點的顏色進行區(qū)分。
3.2.3 色彩表達
采用像素分布分析的方式比較輸出畫面的色彩與真實圖片色彩之間的差異,灰度直方圖(Gray-scale Histogram)能夠準確表達灰度值0~255的像素數(shù)量占比,灰度值從小到大可粗略對應為常規(guī)圖片的暗部、中間調(diào)和亮部。在分析時應注意去掉圖片生成結果的白色背景,因為背景往往占到全圖的30%~40%,對直方圖干擾明顯。
圖8展示了部分CycleGAN驗證集結果(Epoch50、Epoch300)與原圖片的灰度直方圖對比,可以分析得出:CycleGAN渲染的平面色彩分布趨勢與人工渲染圖極為相似,但豐富度與原圖相比有一定差距。灰度直方圖的參差波動與不平滑反映出圖片存在一定色彩缺失,即色彩過渡不夠平滑。而這種像素缺失主要集中在中間調(diào),也帶來了視覺感受上的色彩單調(diào)感。因此,CycleGAN渲染結果的色彩表達質(zhì)量仍有待進一步提高,需要設計師的后期調(diào)整。
小結該模型的平面圖渲染能力:1)CycleGAN渲染的平面圖質(zhì)量滿足清晰展示的需要;2)Epoch50渲染更為扁平化,Epoch300細節(jié)豐富但有一定幾率產(chǎn)生像素化的細節(jié);3)渲染用地性質(zhì)表達準確,但構筑物渲染不夠突出,需要人工進一步強調(diào);4)渲染圖色彩的中間過渡調(diào)有一定缺失。
人工智能的大背景下,風景園林師主動尋求跨學科合作以提升設計效率已是大勢所趨。本文的創(chuàng)新點在于首次建立了風景園林平面圖數(shù)據(jù)集,開發(fā)了將GAN應用于風景園林設計分析與制圖的新場景:1)基于GAN的風景園林平面圖識別能夠幫助設計師高效整理、分析案例,快速提取用地特征、獲取相應比例;2)平面圖渲染重點實現(xiàn)了從色塊圖到肌理圖的一鍵生成,結果規(guī)范正確且具有一定的藝術性??傮w來說,研究成果具有較大的潛力用于提升設計師的案例分析及制圖效率。
作為風景園林學領域中較少的跨學科人工智能研究,本研究仍有較多不足,這些不足也是未來研究的優(yōu)化方向,簡要總結如下:1)需改進數(shù)據(jù)集的標注方法,進一步解決模型對風景園林平面圖中半透明樹木的識別問題;2)需要編寫加工程序,進一步解決部分渲染圖像像素化的問題;3)需要補充多尺度的訓練集,以解決平面生成的色彩單一及過渡性差的問題;4)與計算機學科研究相比,本文的主要創(chuàng)新點是提出了新的GAN應用場景和新的數(shù)據(jù)集,同時驗證了已有模型的可行性,但并未修改模型結構和訓練方式,有一定的局限性;5)在形成可推廣的軟件前,仍需采用圖靈測試或問卷調(diào)查等方式對模型結果進行用戶調(diào)研。