作 者:韓彬,林海全,姜宇奇 編
定 價:98
出 版 社:電子工業出版社
出版日期:2023年01月01日
頁 數:288
裝 幀:平裝
ISBN:9787121447594
業內有很多介紹圖像算法理論的書籍,比如岡薩雷斯的《數字圖像處理(MATLAB版)》,同時也不乏很多優秀的FPGA設計圖書,比如作者的《FPGA設計技巧與案例開發詳解(第3版)》,但還沒有一本可以貫穿圖像算法理論與MATLAB仿真,再以FPGA進行實戰加速處理的書,本書實現了真正意義上的全流程講解,填補了業內的空缺,是每個相關從業者的福音。
●第1章 什麼是硬件加速引擎 1
1.1 CPU是怎麼加速的? 1
1.1.1 CPU體繫結構加速 1
1.1.2 CPU流水線加速 3
1.2 什麼是硬件加速引擎 5
1.2.1 蘋果M1芯片架構 6
1.2.2 海思Hi3516A芯片架構 8
1.2.3 本書圖像加速內容 9
1.3 FPGA軟件仿真環境介紹 10
1.3.1 FPGA目錄規劃約定 10
1.3.2 仿真驗證平臺介紹 10
1.3.3 相關軟件環境介紹 13
1.4 FPGA硬件驗證平臺介紹 14
第2章 RGB轉YCbCr算法介紹及MATLAB與FPGA實現 17
2.1 RGB與YCbCr色域介紹 17
2.1.1 RGB模型 18
2.1.2 YCbCr色域介紹 20
2.2 RGB轉YCbCr加速運算 22
2.2.1 讓你的軟件飛起來 22
2.2.2 FPGA硬件加速思維 24
2.2.3 FPGA硬件實現推導 27
2.3 RGB轉YCbCr的MATLAB實現 27
2.3.1 MATLAB代碼的設計 27
2.3.2 仿真數據的準備 31
2.4 RGB轉YCbCr的FPGA實現 32
2.4.1 FPGA代碼的實現 33
2.4.2 仿真流程的詳解 36
第3章 常用圖像增強算法介紹及MATLAB與FPGA實現 39
3.1 直方圖均衡算法的實現 39
3.1.1 直方圖均衡的原理 39
3.1.2 直方圖均衡的MATLAB實現 42
3.1.3 直方圖均衡的FPGA實現 47
3.1.4 直方圖均衡的ModelSim仿真 51
3.2 對比度算法的實現 53
3.2.1 對比度增強的原理 53
3.2.2 指數對比度增強的MATLAB實現 56
3.2.3 指數對比度增強的FPGA實現 58
3.2.4 指數對比度增強的ModelSim仿真 60
3.3 Gamma映射算法的實現 62
3.3.1 Gamma映射的原理 62
3.3.2 Gamma映射的MATLAB實現 66
3.3.3 Gamma映射的FPGA實現 69
3.3.4 Gamma映射的ModelSim仿真 71
第4章 常用圖像降噪算法介紹及MATLAB與FPGA實現 73
4.1 降噪原理介紹 73
4.1.1 為什麼要降噪 73
4.1.2 什麼是噪聲 73
4.1.3 圖像降噪簡介 74
4.2 均值濾波算法的實現 75
4.2.1 均值濾波算法的理論 75
4.2.2 均值濾波的MATLAB實現 75
4.2.3 均值濾波的FPGA實現 78
4.2.4 均值濾波的ModelSim仿真 82
4.3 中值濾波算法的實現 84
4.3.1 中值濾波算法的理論 84
4.3.2 中值濾波的MATLAB實現 87
4.3.3 中值濾波的FPGA實現 90
4.3.4 中值濾波的ModelSim仿真 90
4.4 高斯濾波算法的實現 93
4.4.1 高斯濾波算法的理論 95
4.4.2 高斯濾波的MATLAB實現 97
4.4.3 高斯濾波的FPGA實現 99
4.4.4 高斯濾波的ModelSim仿真 104
4.5 雙邊濾波算法的實現 107
4.5.1 雙邊濾波算法的理論 107
4.5.2 雙邊濾波的MATLAB實現 109
4.5.3 雙邊濾波的FPGA實現 118
4.5.4 雙邊濾波的ModelSim仿真 123
第5章 常用圖像二值化算法介紹及MATLAB與FPGA實現 126
5.1 圖像二值化的目的 126
5.2 全局閾值二值化算法 127
5.2.1 全局閾值二值化算法的理論與MATLAB實現 128
5.2.2 全局閾值二值化的MATLAB實現 131
5.2.3 全局閾值二值化的FPGA實現 131
5.3 局部閾值二值化算法 131
5.3.1 局部閾值二值化算法的理論 131
5.3.2 局部閾值二值化的MATLAB實現 132
5.3.3 局部閾值二值化的FPGA實現 134
5.3.4 局部閾值二值化的ModelSim仿真 136
5.4 Sobel邊緣檢測算法 140
5.4.1 Sobel邊緣檢測算法的理論 141
5.4.2 Sobel邊緣檢測的MATLAB實現 142
5.4.3 Sobel邊緣檢測的FPGA實現 144
5.4.4 Sobel邊緣檢測的ModelSim仿真 145
5.5 二值化腐蝕、膨脹算法 147
5.5.1 二值化腐蝕、膨脹算法的理論 147
5.5.2 二值化腐蝕、膨脹的MATLAB實現 148
5.5.3 二值化腐蝕、膨脹的FPGA實現 152
5.5.4 二值化腐蝕、膨脹的ModelSim仿真 153
5.6 幀間差算法及運動檢測算法 155
5.6.1 幀間差算法及運動檢測算法的理論 155
5.6.2 幀間差及運動檢測的MATLAB實現 157
5.6.3 幀間差及運動檢測的FPGA實現 164
第6章 常用圖像銳化算法介紹及MATLAB與FPGA實現 165
6.1 圖像銳化的原理 165
6.1.1 一階微分的邊緣檢測 166
6.1.2 二階微分的邊緣檢測 167
6.1.3 一階微分與二階微分的邊緣檢測對比 168
6.2 Robert銳化算法的實現 170
6.2.1 Robert銳化算法的理論 170
6.2.2 Robert銳化的MATLAB實現 170
6.2.3 Robert銳化的FPGA實現 172
6.2.4 Robert銳化的ModelSim仿真 173
6.3 Sobel銳化算法的實現 176
6.3.1 Sobel銳化算法的理論 176
6.3.2 Sobel銳化的MATLAB實現 177
6.3.3 Sobel銳化的FPGA實現 179
6.3.4 Sobel銳化的ModelSim仿真 180
6.4 Laplacian銳化算法的實現 182
6.4.1 Laplacian銳化算法的理論 182
6.4.2 Laplacian銳化的MATLAB實現 183
6.4.3 Laplacian銳化的FPGA實現 185
6.4.4 Laplacian銳化的ModelSim仿真 186
第7章 常用圖像縮放算法介紹及MATLAB與FPGA實現 190
7.1 最近鄰插值算法的實現 191
7.1.1 最近鄰插值算法的理論 191
7.1.2 最近鄰插值的MATLAB實現 192
7.1.3 最近鄰插值的FPGA實現 194
7.1.4 最近鄰插值的ModelSim仿真 197
7.2 雙線性插值算法的實現 199
7.2.1 雙線性插值算法的理論 199
7.2.2 雙線性插值的MATLAB實現 201
7.2.3 雙線性插值的FPGA實現 204
7.2.4 雙線性插值的ModelSim仿真 209
7.3 雙三次插值算法的實現 214
7.3.1 雙三次插值算法的理論 214
7.3.2 雙三次插值的MATLAB實現 216
7.3.3 雙三次插值的FPGA實現 219
7.4 淺談基於深度學習的縮放算法 219
7.4.1 DL-SR算法的理論 219
7.4.2 DL-SR算法的性能提升 222
7.4.3 DL-SR與High-level CV的區別 223
7.4.4 DL-SR的幾點思考與未來 223
第8章 基於LeNet5的深度學習算法介紹及MATLAB與FPGA實現 225
8.1 神經網絡的介紹 225
8.1.1 人工神經網絡 225
8.1.2 卷積神經網絡 226
8.2 基於LeNet5 卷積神經網絡的MATLAB實現 229
8.2.1 LeNet5卷積神經網絡的簡介 229
8.2.2 LeNet5卷積神經網絡的MATLAB實現 230
8.2.3 基於LeNet5卷積神經網絡的FPGA實現 233
8.3 基於攝像頭的字符識別FPGA Demo的搭建與實現 240
第9章 傳統ISP及AISP的圖像處理硬件加速引擎介紹 248
9.1 ISP介紹 248
9.1.1 ISP簡介 248
9.1.2 ISP的應用 250
9.1.3 ISP基礎算法及流水線 253
9.1.4 Bayer域的圖像處理算法 254
9.1.5 RGB域的圖像處理算法 256
9.1.6 YUV域的圖像處理算法 258
9.2 基於AI的ISP圖像加速引擎介紹 259
9.2.1 AI在圖像領域的應用 259
9.2.2 AISP簡介 260
9.2.3 AISP的產業化應用 265
9.2.4 本章小結 267
延伸閱讀 268
縮略語 271
本書不是一本純粹的基於軟件算法的教程,亦不是一本單一講述FPGA硬件實現的書,而是一本從圖像處理算法理論基礎出發,結合MATLAB軟件實現,最終采用FPGA進行並行硬件加速的指南。書中選用了一些常用的圖像處理算法,相關章節大都遵循"算法理論→MATLAB軟件驗證→FPGA硬件實現”的流程,將這些算法由淺入深、循序漸進地從算法理論講解到FPGA硬件實現。 本書適合對FPGA圖像處理感興趣的讀者,需讀者熟悉MATLAB軟件與Verilog語言,並且具備一定的FPGA基礎。如果是FPGA初學者,可以先閱讀筆者的另外兩本書:《FPGA設計技巧與案例開發詳解(第3版)》《Verilog數字繫統設計教程(第4版)》。
韓彬,林海全,姜宇奇 編
"韓彬,網名CrazyBingo(CB),分別在杭州電子科技大學、西安電子科技大學獲得學士學位、碩士學位,曾在中興微電子(深圳市中興微電子技術有限公司)負責多年的多媒體SOC前端開發工作,以及FPGA加速驗證等事宜,在視頻圖像前後處理算法加速領域,有豐富的經驗與實戰的積累。此外,這些年作者編寫過大量FPGA教程,也編寫過無數FPGA圖像的處理方案與架構,並相繼出版了《FPGA設計技巧與案例開發詳解(第3版)》《Verilog數字繫統教程(第4版)》等書,獲得業界廣泛好評。"