本書從虛擬偶像的發(fā)展歷程和制作流程入手,通過通俗的語言和多方位的視角,介紹了2D\3D建模工具和深度學習框架TensorFlow與Pytorch在虛擬偶像制作中的應用,原理與實踐并重,同時結合大量實際范例講解如何建模、AI表情動作遷移以及人機交互等制作虛擬偶像的完整流程。從擬真人的人物建模到表情動作的實時捕捉,再到傳輸到動作引擎中驅動人物動作,向讀者展現了人工智能技術的強大與魅力。
本書深入淺出,實操性和系統(tǒng)性強,適合有一定IT背景并對虛擬產業(yè)關注的廣大讀者使用。
早在20世紀90年代日本就出現了虛擬偶像并進行專輯發(fā)售,后來基于音樂軟件制作的3DCG的初音未來被稱為虛擬偶像的成功典范。近年來,隨著短視頻平臺和直播帶貨行業(yè)的興起,通過繪畫、3D建模等結合動作捕捉或人工智能的方式建立起來的虛擬偶像和網紅越來越多地出現在人們的視野,吸引著越來越多的人參與虛擬偶像網紅的追捧和制作。目前虛擬偶像實現方式上主要有兩大流派,基于動作捕捉的實現和基于人工智能的方式。由于傳統(tǒng)的基于動作捕捉的方式硬件成本昂貴,入門門檻較高,普通人難以企及,所以越來越多的人和團隊開始采用人工智能的實現方法。
遺憾的是,國內虛擬人物\偶像書籍的短缺限制了廣大普通讀者的創(chuàng)作,網絡上雖然能夠找到一些資料,但大多是一些碎片化的信息,對讀者的幫助十分有限;诖耍緯鴱幕镜母拍钊胧,原理結合實踐,對虛擬人物\偶像制作流程及其用到的建模工具和人工智能技術進行詳細介紹,包括3D建模的基本方式、基于TensorFlow和PyTorch的人工智能框架以及通過視頻和實時視頻流輸入生成表情遷移后的虛擬人物,結合語音識別、人機對話引擎和口型匹配算法等生成自己專屬的帶有互動屬性的虛擬人物和偶像,旨在達到降低學習門檻、人人都可以上手的效果。
本書主要包含三部分:部分是基礎理論部分,從行業(yè)現狀和發(fā)展趨勢的角度來介紹什么是虛擬偶像以及應用的行業(yè),同時對目前業(yè)界主流的虛擬偶像實現方式進行概述,讓讀者對此有一個清晰全面的認識;第二部分是應用實踐,介紹基于Python的TensorFlow和PyTorch的機器學習框架的算法實現部分,從動作同步、表情遷移以及口型同步等方法介紹作為基礎的框架技術;第三部分是項目實踐,介紹2D和3D虛擬偶像的實現方式,完整展示從零到一的制作流程。
本書深入淺出,實操性和系統(tǒng)性強,適合有一定IT背景并對虛擬產業(yè)關注的廣大讀者使用。
限于編者水平所限,書中難免存在不當之處,敬請業(yè)界專家和廣大讀者批評指正。
后特別感謝王金柱編輯給予的幫助和指導,以及好友的支持和鼓勵。
馬健健
2022年1月10日
馬健健,上海交通大學軟件工程碩士,先后供職于平安、惠普、美國強生等國內外公司,擔任軟件架構和數據分析技術經理,擁有14年軟件開發(fā)架構和技術管理經驗;目前就職于上海某知名汽車公司擔任數據平臺技術經理,從事大數據處理、挖掘等研究和實施工作。
張 翔,上海交通大學軟件工程碩士,從業(yè)十余年,先后就職于巨人網絡、諾亞財富、愛奇藝等互聯網公司,主要從事移動端開發(fā)工作,擁有豐富的軟件開發(fā)經驗。
第1章 虛擬偶像概述 1
1.1 什么是虛擬偶像 1
1.2 虛擬偶像的發(fā)展歷程 3
1.3 虛擬偶像的現狀和行業(yè)應用 5
1.4 小結 5
第2章 Python基礎入門 7
2.1 搭建Python編程環(huán)境 7
2.1.1 Python軟件的安裝 8
2.1.2 編寫個Python程序 9
2.1.3 Python命名規(guī)范 10
2.1.4 Python關鍵字 11
2.2 Python數據類型 11
2.2.1 數字類型 12
2.2.2 運算符 16
2.2.3 字符串 18
2.2.4 容器 19
2.3 Python控制結構 21
2.3.1 選擇結構 22
2.3.2 循環(huán)結構 23
2.4 Python函數 25
2.4.1 函數定義 25
2.4.2 函數調用 26
2.4.3 匿名函數 27
2.5 Python模塊 27
2.5.1 導入模塊 28
2.5.2 模塊的搜索路徑 29
2.6 Python面向對象編程 30
2.6.1 Python類創(chuàng)建和實例 30
2.6.2 Python內置類屬性 32
2.6.3 類的繼承 33
2.7 小結 35
第3章 常用的機器學習框架介紹 36
3.1 TensorFlow基礎及應用 37
3.1.1 TensorFlow概述 37
3.1.2 TensorFlow的安裝 38
3.1.3 TensorFlow的使用 41
3.1.4 人臉檢測算法 42
3.2 PyTorch基礎及應用 55
3.2.1 PyTorch概述 55
3.2.2 PyTorch的安裝 56
3.2.3 PyTorch的使用 57
3.2.4 基于PyTorch的動作同步算法 67
3.3 小結 70
第4章 虛擬偶像模型創(chuàng)建工具 71
4.1 Live2D建模 71
4.1.1 Live2D安裝 72
4.1.2 Live2D人物建模 75
4.1.3 使用模板功能 87
4.1.4 Live2D Cubism Viewer簡介 90
4.2 三維建模 93
4.2.1 三維模型制作流程 94
4.2.2 三維制作軟件 94
4.2.3 Blender角色建模流程 95
4.3 小結 100
第5章 如何創(chuàng)造虛擬偶像 101
5.1 虛擬偶像運動和交互的實現方式 101
5.2 基于付費的商業(yè)化解決方案 102
5.2.1 建立人物3D模型 103
5.2.2 選擇3D動畫工具 104
5.2.3 全身動作捕捉系統(tǒng)(硬件) 105
5.2.4 采用iPhone X的面部識別方式 106
5.3 免費的人工智能方案 117
5.3.1 機器學習驅動3D模型人體動作 117
5.3.2 機器學習驅動圖片面部表情 140
5.4 小結 142
第6章 基于2D的虛擬偶像實現方案 143
6.1 動作捕捉技術 144
6.1.1 ARKit框架面部追蹤 146
6.1.2 人臉面部識別 153
6.2 Live2D模型接入 154
6.2.1 Live2D Cubism SDK 155
6.2.2 Live2D模型文件 157
6.2.3 CubismFramework 165
6.3 Cubism SDK ARKit實現 170
6.3.1 Cubism SDK集成 171
6.3.2 ARKit人臉追蹤添加 173
6.3.3 Live2D模型添加 176
6.4 Live2D FaceRig方案實現 194
6.4.1 FaceRig概述 194
6.4.2 FaceRig的基本功能 196
6.4.3 導入Live2D模型 198
6.5 小結 199
第7章 基于3D的虛擬偶像實現方案 200
7.1 3D虛擬偶像項目簡介 201
7.2 建立人物3D模型 201
7.3 虛擬偶像擬人化預制表情和動作集 207
7.4 實現和用戶交互構建語音對話機器人 209
7.5 口型對齊算法應用 211
7.6 模型部署 213
7.7 服務調用和測試 225
7.8 小結 226
參考文獻 227