人工智慧配色系列(二)智慧擴充
隨著人工智慧的高速發展,通過演算法學習設計師的設計方法,並由機器自動生成Banner,尤其是電商類Banner,以減少設計師的低創意、重複性的工作,已然成為人工智慧時代的大勢所趨。而智慧配色又是生成Banner中的難點之一。本文承接前文《人工智慧配色系列(一)方案與規則》,將進一步探討通過機器學習完善配色方案的方法,即如何自動學習Dribble等設計網站的配色風格,以擴充配色規則,豐富配色效果。
規則庫
在前文中,基於LCH 的色彩空間模型構建規則,創立了配色規則庫。由設計師建立基礎的配色規則,從而應用於最終Banner的顏色替換環節。在實踐過程中,請設計師建立了數十條較為通用的配色方案,每條方案均可適用於絕大多數色相的顏色中,以滿足Banner的配色需要。然而,如前文所述,網際網路中存在著海量的調色盤,如果能利用這些調色盤來自動擴充配色規則庫,則可以極大減少對設計師的依賴,豐富規則庫,從而提升智慧配色的表現效果。
網路色板
首先我們觀察網際網路中的色板,通常由一組影象中提取出的諸多和諧色彩構成。然而我們並不能確定其中各個顏色之間的搭配關係,即主、輔、對比的關係。其中的色彩無法直接使用。
然而,我們可以通過對已有的規則進行分析其中規律,進而使用該規律從上圖色板中提取顏色。
規則風格
如前文所述,規則中包含主色、輔助色和對比色,這些是由設計師根據自己的專業美學感知,給這三種關係提供的具體顏色。通過LCH顏色空間進行拆解:主色{l_0,c_0,h_0 }, 輔色{l_1,c_1,h_1 },對比色{l_2,c_2,h_2 }. 形成一種配色規則。在規則使用時,保持亮度l、和飽和度c不變,色相h旋轉相同的角度,即可生成相同風格,不同色彩的一組色板。如下圖所示,其中,一個長方形和兩個小正方行組成的大正方形,為一個色板,分別為主色(MA)、輔色(SU)、對比色(CO)。通過改變H,行形成以下不同顏色但相同風格的色板組。
更換為另一個規則,同理可以生成以下色板組:
相同的規則,保持了相同的l 與c,故而表現風格一致。如果能夠為相同的h關係,提供更多不同的l與c組合,就可以提供更多不同的風格。
色相關係
通過對設計專家提供的數十種具有代表性的基礎配色規則,我們進行分析。以確定其主色、輔助色及對比色的h在色輪上的相關關係。通過以h色相環影象化的結果,我們可以看到,確定主色後,輔助色和對比色的h聚斂在了一定的區域內。
所以,可以利用這數十種基礎配色規則中h的規律,從網際網路(如Dribble)的海量色板中,找到與該h規律一致的一組顏色,提取其l與c的值,也就是學習色板中的風格,以擴充規則。
提取顏色
通過以上分析,可以使用如下流程:
- 輸入已有規則。在LCH顏色空間表示為:主色{l_0,c_0,h_0 }, 輔色{l_1,c_1,h_1 },對比色{l_2,c_2,h_2 },L、C、H分別刻畫了明度、色彩飽和度、色調。其中色調值h_0、h_1、h_2決定了主色,輔色,對比色的關係和差別。對三個色調值旋轉,也就是疊加同一個值,我們生成另一種配色。
- 輸入Dribble圖片。https://dribbble.com/是一個設計網站,提供了很多美觀的圖片, 我們爬取了40000張圖片,每張圖片顏色成分在8種以內。
- 獲取色帶。每張Dribble圖片提供了色帶,但是色帶上成分很小的顏色對圖片色彩的搭配影響很小,所以對每個Dribble圖片提取3種成分最大的顏色,使用了K-means提取方法。將Dribble圖片提取的三種顏色進行6種排列,分別對應主色、輔色、對比色,這一樣每張Dribble得到6種排列的色帶。
- 匹配。每個Dribble色帶轉換到LCH空間,將其中包含的3個H值{h_0,h_1,h_2 }和21種規則進行匹配。具體而言,第i個規則包含3個H值{h_i0,h_i1,h_i2 },計算誤差
將其中最小的誤差值入庫。
通過上述流程,取匹配誤差最小的前2000條資料,也就是Dribble色帶和最佳匹配的規則H值相差不到1°。2000條資料是新的規則,蘊含著和之前已有21條規則不同的L、C值組合,並且常用的L、C值組合也被獲取。以下為最小誤差的計算方法:
更進一步
以上資料由Dribble中提取後,可以進一步由設計師進行打分和訓練。通過以下步驟:
(a)由專業設計師對此規則打分,得到N條美觀的規則入庫。
(b) H空間旋轉規則,訓練。將N條規則的H值依次旋轉24°的整數倍,共生成20N條規則,由設計師打分,一共獲得M條有效規則。
(c) 規則入庫,建立索引,輸出配色。將通過的規則入庫,作為最後擴充得到的規則。給定輸入的主色H值,匹配得到主色最近的10個規則,分別計算誤差角度,並由此修正每個規則的輔助色、對比色的角度,輸出10種配色,作為後續使用。
(d)配色美學模型的構建與訓練。所得到的M條配色規則,每條配色資料包括了主色、輔色、對比色的RGB色值,並且每條配色的可用性由專家進行標註:0為不可用,1為可用。可以認為M條配色資料代表了常用的顏色分佈,因此可以用機器學習模型進行訓練分類,所得模型也可以很好的實際應用。
機器學習測試
實際操作中,上段中N為2000,M為2600。採用了2300條資料用來訓練,300條用來測試,剩餘規則用於負樣本,按 2600:2300 比例用做訓練和測試。使用對應的LCH數值作為特徵輸入,在特徵各個維度上,需要歸一化到 -0.5 和 0.5 之間。嘗試sklearn庫中的多種機器學習演算法模型函式,包括logistic regression,support vector machine,fully-connected network,其中fully-connected network在測試集上得到了最好的準確度。所用fully connected network配置如下,分別為units 10的隱層和softmax二分類的輸出層。訓練時候配置採用sklearn的預設配置。
在測試資料集上,對於可用的Banner集合,可以涮選出其中的67%,對於不可用的Banner集合,本技術可以檢測到其中的93%; 因此該步驟輸出的可用性的概率數值的高低,可以作為配色美觀度的一個衡量標準。
以上為生成的配色規則對Banner 背景、前景、文字的配色。
結語
本文闡述了配色規則的擴充,隨著對Dribble等網路色板的自動學習,轉化了設計師的設計成果,並極大地減少設計師的參與,同時豐富了配色的表現結果。通過對學習後的規則打分訓練,並通過深度學習,可以衡量配色的美觀程度,以提高設計結果的可用性。人工智慧已經以迅雷不及掩耳之勢,在方方面面影響著現代生活,通過智慧配色,已然體現出了其獨特的優勢。未來,人工智慧提高人類的生產效率,減少人類的工作時長,已經在慢慢實現。讓我們滿懷信念一起期待。