閑魚技術-上葉
背景:
隨著移動互聯網時代的到來,人類的科學技術突飛猛進。然而軟體工程師們依舊需要花費大量精力在重複的還原UI視覺稿的工作。 UI視覺研發擁有明顯的特徵:組件,位置和佈局,符合機器學習處理範疇。能否通過機器視覺和深度學習等手段自動生成UI界面代碼,來解放重複勞動力,成為我們關注的方向。
UI2CODE簡單介紹:
UI2CODE項目是閑魚技術團隊研發的一款通過機器視覺理解+AI人工智慧將UI視覺圖片轉化為端側代碼的工具。
2018年3月UI2CODE開始啟動技術可行性預研工作,到目前為止,經歷了3次整體方案的重構(或者重寫)。我們參考了大量的利用機器學習生成代碼的方案,但都無法達到商用指標,UI2CODE的主要思想是將UI研發特徵分而治之,避免雞蛋放在一個籃子裏。我們著重關注以下3個問題的解法:
視覺稿還原精度:我們的設計師甚至無法容忍1像素的位置偏差;
準確率:機器學習還處於概率學範疇,但我們需要100%的準確率;
易維護性:工程師們看的懂,改的動是起點,合理的佈局結構才能保障界面流暢運行。
UI2CODE運行效果:
UI2CODE插件化運行效果,如下視頻:進過幾輪重構,最終我們定義UI2CODE主要解決feeds流的卡片自動生成,當然它也可以對頁面級自動生成。
05:21
架構設計: