PyTorch計(jì)算機(jī)視覺實(shí)戰(zhàn):目標(biāo)檢測(cè)、圖像處理與深度學(xué)習(xí)
定 價(jià):149 元
叢書名:智能系統(tǒng)與技術(shù)叢書
- 作者:[印]V·基肖爾·阿耶德瓦拉 [印]耶什萬斯·雷迪
- 出版時(shí)間:2023/9/1
- ISBN:9787111733393
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP181
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書基于真實(shí)數(shù)據(jù)集,全面系統(tǒng)地闡述現(xiàn)代計(jì)算機(jī)視覺實(shí)用技術(shù)、方法和實(shí)踐,涵蓋50多個(gè)計(jì)算機(jī)視覺問題。全書分為四部分:di一部分(第1~3章)介紹神經(jīng)網(wǎng)絡(luò)和PyTorch的基礎(chǔ)知識(shí),以及如何使用PyTorch構(gòu)建并訓(xùn)練神經(jīng)網(wǎng)絡(luò),包括輸入數(shù)據(jù)縮放、批歸一化、超參數(shù)調(diào)整等;第二部分(第4~10章)介紹如何使用卷積神經(jīng)網(wǎng)絡(luò)、遷移學(xué)習(xí)等技術(shù)解決更復(fù)雜的視覺相關(guān)問題,包括圖像分類、目標(biāo)檢測(cè)和圖像分割等;第三部分(第11~13章)介紹各種圖像處理技術(shù),包括自編碼器模型和各種類型的GAN模型;第四部分(第14~18章)探討將計(jì)算機(jī)視覺技術(shù)與NLP、強(qiáng)化學(xué)習(xí)和OpenCV等技術(shù)相結(jié)合來解決傳統(tǒng)問題的新方法。本書內(nèi)容豐富新穎,語言文字表述清晰,應(yīng)用實(shí)例講解詳細(xì),圖例直觀形象,適合PyTorch初中級(jí)讀者及計(jì)算機(jī)視覺相關(guān)技術(shù)人員閱讀。
深度學(xué)習(xí)是近年來計(jì)算機(jī)視覺應(yīng)用在多個(gè)方面取得進(jìn)步的驅(qū)動(dòng)力。本書以實(shí)踐為驅(qū)動(dòng),結(jié)合具體應(yīng)用場(chǎng)景,基于真實(shí)數(shù)據(jù)集全面系統(tǒng)地介紹如何使用PyTorch解決50多個(gè)計(jì)算機(jī)視覺問題。 首先,你將學(xué)習(xí)使用NumPy和PyTorch從頭開始構(gòu)建神經(jīng)網(wǎng)絡(luò)(NN),并了解調(diào)整神經(jīng)網(wǎng)絡(luò)超參數(shù)的最佳實(shí)踐。然后,你將學(xué)習(xí)如何使用卷積神經(jīng)網(wǎng)絡(luò)(CNN)和遷移學(xué)習(xí)完成圖像分類任務(wù),并且理解其中的工作原理。隨后,你將學(xué)習(xí)二維和三維多目標(biāo)檢測(cè)、圖像分割、人體姿態(tài)估計(jì)等多個(gè)實(shí)際任務(wù),并使用R-CNN、Fast R-CNN、Faster R-CNN、SSD、YOLO、U-Net、Mask R-CNN、Detectron2等框架實(shí)現(xiàn)這些任務(wù)。在自編碼器和GAN部分,本書將指導(dǎo)你學(xué)習(xí)面部表情替換、面部圖像生成和面部表情處理技術(shù)。之后,你將學(xué)習(xí)如何將計(jì)算機(jī)視覺與NLP技術(shù)(LSTM、transformer等)和強(qiáng)化學(xué)習(xí)技術(shù)(深度Q學(xué)習(xí)等)相結(jié)合,實(shí)現(xiàn)OCR、圖像標(biāo)題生成、目標(biāo)檢測(cè)和汽車自動(dòng)駕駛智能體等應(yīng)用。最后,你將學(xué)習(xí)如何將神經(jīng)網(wǎng)絡(luò)模型部署到AWS云等實(shí)際應(yīng)用場(chǎng)景。
Preface
前 言
人工智能(AI)已經(jīng)成為一股強(qiáng)大的力量,正在推動(dòng)一些日常使用的現(xiàn)代應(yīng)用程序的發(fā)展,正在以一種曾經(jīng)只存在于我們幻想中的方式重塑這個(gè)世界。人工智能曾經(jīng)僅存在于少數(shù)實(shí)驗(yàn)室,隸屬于計(jì)算機(jī)科學(xué)學(xué)科。然而,由于優(yōu)秀理論的爆炸式發(fā)展、計(jì)算能力的提高和數(shù)據(jù)的可用性,該領(lǐng)域自2000年以來開始呈指數(shù)級(jí)增長(zhǎng),而且沒有任何放緩的跡象。
人工智能已經(jīng)一次又一次地證明,只要擁有正確的算法和足夠的數(shù)據(jù),它就可以在有限的人工干預(yù)下自學(xué)任務(wù),并產(chǎn)生與人類判斷相匹敵甚至有時(shí)超過人類判斷的結(jié)果。無論你是新手還是運(yùn)營(yíng)大型組織的老手,都有充分的理由去了解人工智能的工作原理。神經(jīng)網(wǎng)絡(luò)是人工智能算法中最靈活的一類,已被廣泛應(yīng)用于各個(gè)領(lǐng)域,包括結(jié)構(gòu)化數(shù)據(jù)、文本和視覺領(lǐng)域。
本書從神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)開始講解,涵蓋了50多個(gè)計(jì)算機(jī)視覺方面的應(yīng)用。首先,你將使用NumPy和PyTorch從頭開始構(gòu)建神經(jīng)網(wǎng)絡(luò)(NN),然后學(xué)習(xí)調(diào)整神經(jīng)網(wǎng)絡(luò)超參數(shù)的最佳實(shí)踐。隨著學(xué)習(xí)的深入,你將學(xué)習(xí)CNN以及主要用于圖像分類的遷移學(xué)習(xí)技術(shù),還將了解在構(gòu)建NN模型時(shí)需要注意的實(shí)際問題。
接下來,你將學(xué)習(xí)多目標(biāo)檢測(cè)、圖像分割,并使用R-CNN、Fast R-CNN、Faster R-CNN、SSD、YOLO、U-Net和Mask R-CNN架構(gòu)等技術(shù)實(shí)現(xiàn)這些任務(wù),還將學(xué)習(xí)使用Detectron2框架來簡(jiǎn)化構(gòu)建神經(jīng)網(wǎng)絡(luò)的具體過程,這些神經(jīng)網(wǎng)絡(luò)主要用于目標(biāo)檢測(cè)和人體姿態(tài)估算。之后,你將實(shí)現(xiàn)三維目標(biāo)檢測(cè)。
隨后,你將學(xué)習(xí)自編碼器和GAN,重點(diǎn)是圖像處理和生成。這里將使用VAE、DCGAN、cGAN、Pix2Pix、CycleGAN、StyleGAN2、SRGAN和風(fēng)格遷移來實(shí)現(xiàn)用于各種任務(wù)的圖像處理。
最后,學(xué)習(xí)將計(jì)算機(jī)視覺與其他技術(shù)相結(jié)合來解決傳統(tǒng)問題,包括將NLP和計(jì)算機(jī)視覺進(jìn)行結(jié)合,執(zhí)行OCR、圖像標(biāo)題生成、用transformer進(jìn)行目標(biāo)檢測(cè);通過結(jié)合強(qiáng)化學(xué)習(xí)和計(jì)算機(jī)視覺技術(shù)來實(shí)現(xiàn)汽車自動(dòng)駕駛智能體;如何使用OpenCV庫將一個(gè)NN模型投入具體的生產(chǎn)過程,以及傳統(tǒng)的計(jì)算機(jī)視覺技術(shù)。
目標(biāo)讀者
本書是為PyTorch初中級(jí)讀者準(zhǔn)備的,目標(biāo)是使讀者熟練掌握基于深度學(xué)習(xí)和PyTorch的計(jì)算機(jī)視覺技術(shù)。對(duì)于剛開始學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的讀者而言,本書也很有用。閱讀本書需要具備Python編程語言和機(jī)器學(xué)習(xí)的基礎(chǔ)知識(shí)。
主要內(nèi)容
第1章介紹神經(jīng)網(wǎng)絡(luò)的工作原理。首先,你將學(xué)習(xí)與神經(jīng)網(wǎng)絡(luò)相關(guān)的關(guān)鍵術(shù)語。然后,你將了解構(gòu)建模塊的工作細(xì)節(jié),并在一個(gè)小數(shù)據(jù)集上從頭開始構(gòu)建神經(jīng)網(wǎng)絡(luò)。
第2章介紹如何使用PyTorch。在學(xué)習(xí)使用PyTorch構(gòu)建神經(jīng)網(wǎng)絡(luò)模型的不同方法之前,你將了解創(chuàng)建和操作張量對(duì)象的方法。這里仍將使用一個(gè)小數(shù)據(jù)集,以便你了解使用PyTorch的細(xì)節(jié)。
第3章結(jié)合前面兩章涉及的所有內(nèi)容,幫助你理解各種神經(jīng)網(wǎng)絡(luò)超參數(shù)對(duì)模型準(zhǔn)確度的影響。在學(xué)完本章后,你將掌握如何在實(shí)際數(shù)據(jù)集上使用神經(jīng)網(wǎng)絡(luò)。
第4章詳細(xì)介紹使用普通神經(jīng)網(wǎng)絡(luò)面臨的挑戰(zhàn),你將了解為何卷積神經(jīng)網(wǎng)絡(luò)能克服傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的各種限制。你將深入了解CNN的工作細(xì)節(jié),并了解其中的各種組件。然后,你將學(xué)習(xí)處理圖像的最佳實(shí)踐。本章將使用真實(shí)世界的圖像,并學(xué)習(xí)使用CNN實(shí)現(xiàn)復(fù)雜圖像分類的工作原理。
第5章介紹如何解決現(xiàn)實(shí)世界中的圖像分類問題。你將了解多種遷移學(xué)習(xí)架構(gòu),并了解它們是如何顯著提高圖像分類準(zhǔn)確度的。然后,使用遷移學(xué)習(xí)實(shí)現(xiàn)人臉關(guān)鍵點(diǎn)檢測(cè)和對(duì)年齡、性別進(jìn)行估計(jì)。
第6章提供在實(shí)際構(gòu)建和部署圖像分類模型時(shí)需要注意的要點(diǎn)。實(shí)際上,你將看到在真實(shí)數(shù)據(jù)上進(jìn)行數(shù)據(jù)增強(qiáng)和批歸一化的優(yōu)點(diǎn)。此外,還將了解類激活映射為何有助于對(duì)CNN模型的預(yù)測(cè)結(jié)果進(jìn)行解釋。學(xué)完本章后,你就可以解決大多數(shù)圖像分類問題,并利用前面討論的模型來處理定制的數(shù)據(jù)集。
第7章奠定目標(biāo)檢測(cè)的基礎(chǔ),你將學(xué)習(xí)用于構(gòu)建目標(biāo)檢測(cè)模型的各種技術(shù)。然后,通過一個(gè)案例了解基于區(qū)域建議的目標(biāo)檢測(cè)技術(shù),在這個(gè)案例中,你將實(shí)現(xiàn)一個(gè)用于定位圖像中卡車和公交車的模型。
第8章首先展示區(qū)域建議架構(gòu)的局限性,介紹解決區(qū)域建議架構(gòu)問題的更多高級(jí)架構(gòu)的工作細(xì)節(jié)。我們將在相同的數(shù)據(jù)集(卡車與公交車的目標(biāo)檢測(cè))上實(shí)現(xiàn)所有的架構(gòu),這樣就可以對(duì)比每個(gè)架構(gòu)的工作原理。
第9章建立在前幾章的基礎(chǔ)上,幫助你構(gòu)建模型,以確定各種類別目標(biāo)和目標(biāo)實(shí)例在圖像中的位置和輪廓。我們將針對(duì)道路圖像和普通家庭圖像實(shí)現(xiàn)具體的應(yīng)用。學(xué)完本章后,你將能夠通過使用PyTorch構(gòu)建模型的方式解決關(guān)于圖像分類、目標(biāo)檢測(cè)/分割的問題。
第10章總結(jié)前幾章的學(xué)習(xí)內(nèi)容,用幾行代碼實(shí)現(xiàn)對(duì)目標(biāo)的檢測(cè)和分割,通過構(gòu)建模型來實(shí)現(xiàn)人群計(jì)數(shù)和圖像著色應(yīng)用。最后,你還將了解如何在真實(shí)數(shù)據(jù)集上進(jìn)行三維目標(biāo)
檢測(cè)。
第11章為圖像修改奠定基礎(chǔ)。首先學(xué)習(xí)用于壓縮圖像和生成新圖像的自編碼器。然后學(xué)習(xí)欺騙模型的對(duì)抗性攻擊。之后實(shí)現(xiàn)圖像風(fēng)格遷移。最后實(shí)現(xiàn)一個(gè)自編碼器來生成深度虛擬圖像。
第12章首先介紹GAN的工作原理,然后學(xué)習(xí)虛擬人臉圖像的生成技術(shù)以及如何使用GAN生成一些有趣的圖像。
第13章將圖像處理升級(jí)到一個(gè)新的水平。我們將實(shí)現(xiàn)一個(gè)GAN模型,用于將目標(biāo)從一個(gè)類別轉(zhuǎn)換到另外一個(gè)類別,由草圖生成圖像,并操作定制圖像,以便生成特定風(fēng)格的圖像。學(xué)完本章后,你就可以組合應(yīng)用自編碼器和GAN進(jìn)行圖像處理了。
第14章為你學(xué)習(xí)結(jié)合使用計(jì)算機(jī)視覺技術(shù)與其他技術(shù)奠定基礎(chǔ)。你將學(xué)習(xí)如何使用小樣本和零訓(xùn)練樣本完成圖像分類。
第15章介紹各種自然語言處理技術(shù)的工作細(xì)節(jié),如詞嵌入、LSTM和transformer,你將使用transformer實(shí)現(xiàn)一些應(yīng)用程序,如圖像標(biāo)題生成、OCR等。
第16章首先介紹強(qiáng)化學(xué)習(xí)術(shù)語和狀態(tài)價(jià)值。在學(xué)習(xí)深度Q學(xué)習(xí)的過程中,你將了解強(qiáng)化學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)的結(jié)合使用方式。通過學(xué)習(xí),你將實(shí)現(xiàn)一個(gè)玩Pong游戲的智能體和一個(gè)用于汽車自動(dòng)駕駛的智能體。
第17章介紹將模型部署到生產(chǎn)環(huán)境的最佳實(shí)踐。在將模型遷移到AWS公有云之前,你將了解如何在本地服務(wù)器上部署模型。
第18章詳細(xì)介紹如何使用OpenCV實(shí)用程序創(chuàng)建5個(gè)有趣的應(yīng)用程序。學(xué)完本章后,你將了解輔助深度學(xué)習(xí)的實(shí)用程序,以及在內(nèi)存或推理速度有相當(dāng)大限制的場(chǎng)景中可以替代深度學(xué)習(xí)的實(shí)用程序。
學(xué)習(xí)本書的軟硬件要求
本書覆蓋的軟硬件操作系統(tǒng)要求
存儲(chǔ)空間最低128GB
內(nèi)存最低8GB
Intel i5 或更高的處理器
NVIDIA 8 GB以上顯卡——GTX1070或更好的顯卡
網(wǎng)速最低50Mbit/sWindows、Linux和macOS
Python 3.6及更高版本W(wǎng)indows、Linux和macOS
PyTorch 1.7Windows、Linux和macOS
Google Colab(可在任何瀏覽器上運(yùn)行)Windows、Linux和macOS
請(qǐng)注意,本書中幾乎所有的代碼都可以使用Google Colab運(yùn)行,通過單擊GitHub 各章notebook中的Open in Colab按鈕即可實(shí)現(xiàn)。
下載示例代碼
可以從GitHub上下載本書的示例代碼文件,地址是https://github.com/PacktPublishing/Modern-Computer-Vision-with-PyTorch。代碼的更新將會(huì)提交到GitHub。
下載彩色圖像
我們還提供了一個(gè)PDF文件,其中有本書中使用的屏幕截圖或圖表的彩色圖像,你可以從https://static.packt-cdn.com/downloads/9781839213472_ColorImages.pdf下載。
CONTENTS
目 錄
譯者序
前言
第一部分 面向計(jì)算機(jī)視覺的
深度學(xué)習(xí)基礎(chǔ)知識(shí)
第1章 人工神經(jīng)網(wǎng)絡(luò)基礎(chǔ) 2
1.1 比較人工智能與傳統(tǒng)機(jī)器學(xué)習(xí) 3
1.2 人工神經(jīng)網(wǎng)絡(luò)的構(gòu)建模塊 4
1.3 實(shí)現(xiàn)前向傳播 6
1.3.1 計(jì)算隱藏層的值 6
1.3.2 應(yīng)用激活函數(shù) 7
1.3.3 計(jì)算輸出層的值 9
1.3.4 計(jì)算損失值 9
1.3.5 前向傳播的代碼 11
1.4 實(shí)現(xiàn)反向傳播 14
1.4.1 梯度下降的代碼 15
1.4.2 使用鏈?zhǔn)椒▌t實(shí)現(xiàn)
反向傳播 17
1.5 整合前向傳播與反向傳播 20
1.6 理解學(xué)習(xí)率的影響 22
1.7 總結(jié)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程 28
1.8 小結(jié) 29
1.9 課后習(xí)題 29
第2章 PyTorch基礎(chǔ) 30
2.1 安裝PyTorch 30
2.2 PyTorch張量 32
2.2.1 初始化張量 33
2.2.2 張量運(yùn)算 34
2.2.3 張量對(duì)象的自動(dòng)梯度 37
2.2.4 PyTorch的張量較
NumPy的ndarrays
的優(yōu)勢(shì) 38
2.3 使用PyTorch構(gòu)建神經(jīng)網(wǎng)絡(luò) 39
2.3.1 數(shù)據(jù)集、數(shù)據(jù)加載器和
批大小 45
2.3.2 預(yù)測(cè)新的數(shù)據(jù)點(diǎn) 48
2.3.3 實(shí)現(xiàn)自定義損失函數(shù) 49
2.3.4 獲取中間層的值 50
2.4 使用序貫方法構(gòu)建神經(jīng)網(wǎng)絡(luò) 51
2.5 保存并加載PyTorch模型 54
2.5.1 state dict 54
2.5.2 保存 55
2.5.3 加載 55
2.6 小結(jié) 55
2.7 課后習(xí)題 56
第3章 使用PyTorch構(gòu)建深度
神經(jīng)網(wǎng)絡(luò) 57
3.1 表示圖像 57
3.2 為什么要使用神經(jīng)網(wǎng)絡(luò)進(jìn)行
圖像分析 62
3.3 為圖像分類準(zhǔn)備數(shù)據(jù) 64
3.4 訓(xùn)練神經(jīng)網(wǎng)絡(luò) 66
3.5 縮放數(shù)據(jù)集以提升模型準(zhǔn)確度 71
3.6 理解不同批大小的影響 74
3.6.1 批大小為32 75
3.6.2 批大小為10 000 79
3.7 理解不同損失優(yōu)化器的影響 80
3.8 理解不同學(xué)習(xí)率的影響 83
3.8.1 學(xué)習(xí)率對(duì)縮放數(shù)據(jù)集
的影響 83
3.8.2 不同學(xué)習(xí)率對(duì)非縮放
數(shù)據(jù)集的影響 88
3.9 理解不同學(xué)習(xí)率衰減的影響 90
3.10 構(gòu)建更深的神經(jīng)網(wǎng)絡(luò) 93
3.11 理解不同批歸一化的影響 94
3.11.1 沒有批歸一化的非常小
的輸入值 96
3.11.2 經(jīng)過批歸一化的非常小
的輸入值 98
3.12 過擬合的概念 100
3.12.1 添加dropout的影響 100
3.12.2 正則化的影響 102
3.13 小結(jié) 106
3.14 課后習(xí)題 106
第二部分 物體分類與目標(biāo)檢測(cè)
第4章 卷積神經(jīng)網(wǎng)絡(luò) 108
4.1 傳統(tǒng)深度神經(jīng)網(wǎng)絡(luò)的問題 108
4.2 CNN的構(gòu)建模塊 111
4.2.1 卷積 112
4.2.2 濾波器 113
4.2.3 步長(zhǎng)和填充 114
4.2.4 池化 115
4.2.5 整合各個(gè)構(gòu)建模塊 116
4.2.6 卷積和池化的圖像平移
不變性原理 117
4.3 實(shí)現(xiàn)CNN 117
4.3.1 使用PyTorch構(gòu)建基于
CNN的架構(gòu) 118
4.3.2 基于Python的前向傳播 121
4.4 使用深度CNN分類圖像 123
4.5 實(shí)現(xiàn)數(shù)據(jù)增強(qiáng) 127
4.5.1 圖像增強(qiáng) 127
4.5.2 對(duì)一批圖像執(zhí)行數(shù)據(jù)增強(qiáng)
及collate_fn的必要性 137
4.5.3 用于圖像平移的數(shù)據(jù)
增強(qiáng) 140
4.6 特征學(xué)習(xí)結(jié)果的可視化 143
4.7 構(gòu)建對(duì)真實(shí)圖像進(jìn)行分類
的CNN 153
4.8 小結(jié) 161
4.9 課后習(xí)題 162
第5章 面向圖像分類的遷移學(xué)習(xí) 163
5.1 遷移學(xué)習(xí)簡(jiǎn)介 163
5.2 理解VGG16架構(gòu) 164
5.3 理解ResNet架構(gòu) 174
5.4 實(shí)現(xiàn)人臉關(guān)鍵點(diǎn)檢測(cè) 178
5.5 多任務(wù)學(xué)習(xí)—實(shí)現(xiàn)年齡估計(jì)
和性別分類 186
5.6 torch_snippets庫簡(jiǎn)介 195
5.7 小結(jié) 200
5.8 課后習(xí)題 200
第6章 圖像分類的實(shí)戰(zhàn)技術(shù) 201
6.1 生成CAM 201
6.2 數(shù)據(jù)增強(qiáng)和批歸一化 207
6.3 模型實(shí)現(xiàn)的實(shí)踐要點(diǎn) 212
6.3.1 處理不平衡數(shù)據(jù) 212
6.3.2 分類圖像中目標(biāo)的大小 213
6.3.3 訓(xùn)練數(shù)據(jù)和驗(yàn)證數(shù)據(jù)
之間的差異 213
6.3.4 扁平層中的節(jié)點(diǎn)數(shù) 214
6.3.5 圖像的大小 214
6.3.6 使用OpenCV實(shí)用程序 214
6.4 小結(jié) 215
6.5 課后習(xí)題 215
第7章 目標(biāo)檢測(cè)基礎(chǔ) 216
7.1 目標(biāo)檢測(cè)簡(jiǎn)介 216
7.2 為訓(xùn)練圖像樣本創(chuàng)建真值 217
7.3 理解區(qū)域建議 220
7.3.1 使用SelectiveSearch
生成區(qū)域建議 221
7.3.2 實(shí)現(xiàn)用于生成區(qū)域建議
的SelectiveSearch 222
7.4 理解IoU 224
7.5 非極大抑制 226
7.6 mAP 226
7.7 訓(xùn)練基于R-CNN的定制目標(biāo)
檢測(cè)器 227
7.7.1 R-CNN的工作細(xì)節(jié) 227
7.7.2 基于定制數(shù)據(jù)集實(shí)現(xiàn)
R-CNN目標(biāo)檢測(cè)模型 228
7.8 訓(xùn)練基于Fast R-CNN的定制
目標(biāo)檢測(cè)器 241
7.8.1 Fast R-CNN的工作細(xì)節(jié) 242
7.8.2 基于定制數(shù)據(jù)集實(shí)現(xiàn)Fast R-CNN目標(biāo)檢測(cè)模型 242
7.9 小結(jié) 249
7.10 課后習(xí)題 249
第8章 目標(biāo)檢測(cè)進(jìn)階 250
8.1 現(xiàn)代目標(biāo)檢測(cè)算法的組成 250
8.1.1 錨盒 250
8.1.2 區(qū)域建議網(wǎng)絡(luò) 252
8.2 基于定制數(shù)據(jù)集訓(xùn)練Faster
R-CNN 254
8.3 YOLO的工作細(xì)節(jié) 260
8.4 基于定制數(shù)據(jù)集訓(xùn)練YOLO 265
8.4.1 安裝Darknet 265
8.4.2 設(shè)置數(shù)據(jù)集格式 267
8.4.3 配置架構(gòu) 268
8.4.4 訓(xùn)練和測(cè)試模型 269
8.5 SSD模型的工作細(xì)節(jié) 270
8.6 基于定制數(shù)據(jù)集訓(xùn)練SSD
模型 274
8.7 小結(jié) 278
8.8 課后習(xí)題 278
第9章 圖像分割 279
9.1 探索U-Net架構(gòu) 279
9.2 使用U-Net實(shí)現(xiàn)語義分割 283
9.3 探索Mask R-CNN架構(gòu) 288
9.3.1 RoI對(duì)齊 290
9.3.2 掩碼頭部 291
9.4 使用Mask R-CNN實(shí)現(xiàn)實(shí)例
分割 292
9.5 小結(jié) 305
9.6 課后習(xí)題 306
第10章 目標(biāo)檢測(cè)與分割的應(yīng)用 307
10.1 多目標(biāo)實(shí)例分割 307
10.1.1 獲取和準(zhǔn)備數(shù)據(jù) 308
10.1.2 訓(xùn)練用于實(shí)例分割的
模型 312
10.1.3 對(duì)新圖像進(jìn)行推斷 313
10.2 人體姿態(tài)檢測(cè) 315
10.3 人群計(jì)數(shù) 316
10.4 圖像著色 325
10.5 面向點(diǎn)云的三維目標(biāo)檢測(cè) 330
10.5.1 理論 330
10.5.2 訓(xùn)練YOLO模型實(shí)現(xiàn)
三維目標(biāo)檢測(cè) 334
10.6 小結(jié) 337
第三部分 圖像處理
第11章 自編碼器與圖像處理 340
11.1 理解自編碼器 340
11.2 理解卷積自編碼器 346
11.3 理解變分自編碼器 351
11.3.1 VAE的工作機(jī)制 352
11.3.2 KL散度 353
11.3.3 構(gòu)建VAE模型 353
11.4 圖像對(duì)抗性攻擊 357
11.5 圖像風(fēng)格遷移 360
11.6 生成深度虛擬圖像 366
11.7 小結(jié) 375
11.8 課后習(xí)題 375
第12章 基于GAN的圖像生成 376
12.1 GAN模型簡(jiǎn)介 376
12.2 使用GAN生成手寫數(shù)字 378
12.3 使用DCGAN生成人臉圖像 383
12.4 實(shí)現(xiàn)條件GAN模型 391
12.5 小結(jié) 399
12.6 課后習(xí)題 400
第13章 高級(jí)GAN圖像處理 401
13.1 使用Pix2Pix GAN模型 401
13.2 使用CycleGAN模型 410
13.3 在定制圖像上使用StyleGAN
模型 418
13.4 超分辨率GAN 426
13.4.1 架構(gòu) 427
13.4.2 編碼SRGAN 428
13.5 小結(jié) 429
13.6 課后習(xí)題 430
第四部分 計(jì)算機(jī)視覺與其他技術(shù)
第14章 使用小樣本進(jìn)行模型訓(xùn)練 432
14.1 實(shí)現(xiàn)零樣本學(xué)習(xí) 432
14.2 實(shí)現(xiàn)小樣本學(xué)習(xí) 437
14.2.1 構(gòu)建Siamese網(wǎng)絡(luò) 438
14.2.2 原型網(wǎng)絡(luò)的工作細(xì)節(jié) 444
14.2.3 關(guān)系網(wǎng)絡(luò)的工作細(xì)節(jié) 445
14.3 小結(jié) 446
14.4 課后習(xí)題 446
第15章 計(jì)算機(jī)視覺與NLP 447
15.1 RNN模型簡(jiǎn)介 447
15.1.1 RNN架構(gòu)的應(yīng)用場(chǎng)景 448
15.1.2 探索RNN的結(jié)構(gòu) 449
15.1.3 為什么需要存儲(chǔ)記憶 449
15.2 LSTM架構(gòu)簡(jiǎn)介 450
15.2.1 LSTM的工作細(xì)節(jié) 451
15.2.2 使用PyTorch實(shí)現(xiàn)
LSTM 453
15.3 生成圖像標(biāo)題 453
15.4 轉(zhuǎn)錄手寫圖像 465
15.4.1 CTC損失的工作細(xì)節(jié) 466
15.4.2 計(jì)算CTC損失值 467
15.4.3 手寫轉(zhuǎn)錄的代碼實(shí)現(xiàn) 468
15.5 使用DETR進(jìn)行目標(biāo)檢測(cè) 476
15.5.1 transformer的工作細(xì)節(jié) 476
15.5.2 DETR的工作細(xì)節(jié) 479
15.5.3 目標(biāo)檢測(cè)的代碼實(shí)現(xiàn) 482
15.6 小結(jié) 485
15.7 課后習(xí)題 485
第16章 計(jì)算機(jī)視覺與強(qiáng)化學(xué)習(xí) 486
16.1 強(qiáng)化學(xué)習(xí)基礎(chǔ)知識(shí) 486
16.1.1 計(jì)算狀態(tài)價(jià)值 487
16.1.2 計(jì)算狀態(tài)–行為價(jià)值 488
16.2 實(shí)現(xiàn)Q學(xué)習(xí) 489
16.2.1 Q值 489
16.2.2 了解Gym環(huán)境 490
16.2.3 構(gòu)建Q表 491
16.2.4 探索–利用機(jī)制 493
16.3 實(shí)現(xiàn)深度Q學(xué)習(xí) 495
16.4 目標(biāo)固定的深度Q學(xué)習(xí) 501
16.5 實(shí)現(xiàn)自動(dòng)駕駛智能體 508
16.5.1 安裝CARLA環(huán)境 508
16.5.2 訓(xùn)練自動(dòng)駕駛智能體 511
16.6 小結(jié) 518
16.7 課后習(xí)題 519
第17章 模型的實(shí)際應(yīng)用部署 520
17.1 API基礎(chǔ)知識(shí) 520
17.2 在本地服務(wù)器上創(chuàng)建API并
進(jìn)行預(yù)測(cè) 521
17.2.1 安裝API模塊和依賴項(xiàng) 522
17.2.2 圖像分類器的支持組件 522
17.3 將API部署到云端 525
17.3.1 Docker鏡像與Docker
容器 526
17.3.2 創(chuàng)建Docker容器 526
17.3.3 在云端發(fā)布并運(yùn)行
Docker容器 530
17.4 小結(jié) 535
第18章 使用OpenCV實(shí)用程序
進(jìn)行圖像分析 536
18.1 圖像中的單詞檢測(cè) 536
18.2 圖像中的車道線檢測(cè) 542
18.3 基于顏色的目標(biāo)檢測(cè) 544
18.4 構(gòu)建全景圖像 546
18.5 圖像中的車牌檢測(cè) 550
18.6 小結(jié) 552
附錄 課后習(xí)題答案 554