智能圖像處理:Python和OpenCV實現(xiàn)
定 價:79 元
叢書名:重點大學(xué)計算機(jī)教材
- 作者:趙云龍,葛廣英
- 出版時間:2021/12/1
- ISBN:9787111694038
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP391.413
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書主要以Python+OpenCV為主,系統(tǒng)地介紹了Python在數(shù)字圖像處理的各種應(yīng)用算法和案例,對數(shù)字圖像處理的各種算法進(jìn)行講解和案例分析,以方面讀者后期繼續(xù)進(jìn)行人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等方面的學(xué)習(xí)和研究,不再需要更換編程語言和編程環(huán)境。
本書主要以介紹圖像處理技術(shù)和應(yīng)用實例為主,每個處理技術(shù)后面跟著至少一個應(yīng)用實例,全書共給出189個應(yīng)用實例程序,每個實例均已通過作者的調(diào)試,能夠運行正常,讀者可直接引用。
近年來,隨著人工智能技術(shù)的迅猛發(fā)展,圖像處理的應(yīng)用領(lǐng)域不斷擴(kuò)大。圖像處理技術(shù)在國家安全、經(jīng)濟(jì)發(fā)展的許多領(lǐng)域已經(jīng)得到廣泛應(yīng)用,在日常生活中也扮演著越來越重要的角色,目前正向更高、更深層次發(fā)展。圖像處理是分析和操縱數(shù)字圖像的過程,旨在提高其質(zhì)量或從中提取一些信息,并用于模式識別。圖像處理是一種通過計算機(jī)對圖像進(jìn)行去除噪聲、增強(qiáng)、復(fù)原、分割、提取特征等處理的方法和技術(shù)。
數(shù)字圖像處理是一門綜合性很強(qiáng)的學(xué)科,已成為高等院校理工科計算機(jī)科學(xué)與技術(shù)、電子信息工程、通信工程、電子科學(xué)與技術(shù)及相關(guān)專業(yè)的一門重要的專業(yè)課。它可應(yīng)用于工業(yè)、農(nóng)業(yè)、交通、金融、地質(zhì)、海洋、氣象、生物醫(yī)學(xué)、軍事、公安、電子商務(wù)、衛(wèi)星遙感、機(jī)器人、多媒體、網(wǎng)絡(luò)通信等領(lǐng)域,有助于取得顯著的社會效益和經(jīng)濟(jì)效益。
當(dāng)前,數(shù)字圖像處理方面的書籍較多,特別是基于MATLAB的數(shù)字圖像處理書籍很多,而基于“Python + 圖像處理庫”的數(shù)字圖像處理書籍較少。雖然網(wǎng)絡(luò)上基于Python的圖像處理方面的教程很多,但很零散,缺乏系統(tǒng)性講解,不利于初學(xué)者學(xué)習(xí)。本書以Python + OpenCV為主線,系統(tǒng)地介紹Python在數(shù)字圖像處理方面的各種算法和應(yīng)用案例,并在Anaconda或PyCharm集成開發(fā)環(huán)境下編寫程序?qū)?shù)字圖像處理的各種算法進(jìn)行講解,以便讀者在繼續(xù)進(jìn)行人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等方面的學(xué)習(xí)和研究時,不需要再更換編程語言和編程環(huán)境。
本書重點介紹數(shù)字圖像處理技術(shù)和應(yīng)用實例,每個處理技術(shù)后面會附加至少一個應(yīng)用實例,讀者可以通過深入理解這些處理技術(shù)和應(yīng)用實例,舉一反三,將相關(guān)知識應(yīng)用到自己的學(xué)習(xí)和工作中。本書共13章,具體內(nèi)容如下:第1章主要介紹數(shù)字圖像處理技術(shù)及應(yīng)用的基礎(chǔ)知識、常用Python數(shù)字圖像處理庫、Anaconda和PyCharm集成環(huán)境的下載及安裝。第2章到第12章介紹基于Python的圖像處理的各種常用算法。其中,第2章主要介紹數(shù)字圖像的獲取和基本運算;第3章主要介紹數(shù)字圖像的幾何運算;第4章主要介紹圖像空域增強(qiáng);第5章主要介紹圖像空域濾波;第6章主要介紹圖像頻域濾波;第7章主要介紹圖像退化和復(fù)原;第8章主要介紹圖像數(shù)學(xué)形態(tài)學(xué);第9章主要介紹邊緣檢測;第10章主要介紹圖像分割;第11章主要介紹彩色圖像的處理;第12章主要介紹圖像特征的提取與描述。第13章給出6個綜合應(yīng)用實例,讀者可通過這些實例將本書的知識融會貫通。
本書由葛廣英統(tǒng)稿,趙云龍、葛廣英共同完成了本書的編寫。董苗苗參與了第2章、第11章和13.6節(jié)的編寫準(zhǔn)備工作;劉羿漩參與了第3章、第6章和13.4節(jié)的編寫準(zhǔn)備工作;梁允泉參與了第4章、第7章和13.3節(jié)的編寫準(zhǔn)備工作;齊振嶺參與了第5章、第9章和13.5節(jié)的編寫準(zhǔn)備工作。在本書的編寫過程中,編者參閱了大量文獻(xiàn)資料和網(wǎng)絡(luò)上的相關(guān)資料,在此對這些資源的作者表示衷心感謝;感謝機(jī)械工業(yè)出版社的各位編輯為本書的順利出版所做的組織和協(xié)調(diào)工作。書中所用圖像主要來自MATLAB和Python軟件提供的圖像、免費圖片庫以及作者自己拍攝的照片。書中給出的所有應(yīng)用實例程序均已通過調(diào)試,讀者可從華章網(wǎng)站(www.hzbook.com)下載程序源代碼后直接使用。
本書可作為高等院校理工科電子、通信、計算機(jī)科學(xué)與技術(shù)及相關(guān)專業(yè)本科生的教材,也可供相關(guān)專業(yè)的研究生以及從事圖像處理、深度學(xué)習(xí)應(yīng)用與研究工作的科研工作者和工程師學(xué)習(xí)參考。
由于數(shù)字圖像處理技術(shù)發(fā)展迅猛、軟件不斷更新升級,加之作者水平所限,本書內(nèi)容中的不足之處和錯誤在所難免,懇請廣大讀者批評指正。
編 者
2021年9月
前言
第1章 圖像處理環(huán)境 1
1.1 圖像處理簡介 1
1.1.1 圖像處理的應(yīng)用領(lǐng)域 1
1.1.2 圖像處理的常用方法 3
1.2 Python數(shù)字圖像處理庫 4
1.3 Python集成環(huán)境的安裝 5
1.3.1 Anaconda集成環(huán)境的下載與安裝 6
1.3.2 PyCharm集成環(huán)境的下載與安裝 10
1.4 習(xí)題 14
第2章 數(shù)字圖像的獲取和基本運算 15
2.1 圖像的基本類型 15
2.1.1 二值圖像 15
2.1.2 灰度圖像 16
2.1.3 索引圖像 16
2.1.4 彩色圖像 16
2.2 單幅圖像的獲取 17
2.2.1 圖像的讀取 17
2.2.2 圖像的顯示 18
2.2.3 圖像的保存 18
2.2.4 圖像的屬性 19
2.3 視頻圖像的獲取 19
2.3.1 視頻文件的讀寫 20
2.3.2 實時視頻圖像的獲取 20
2.4 圖像的算術(shù)運算 22
2.4.1 加法運算 22
2.4.2 減法運算 25
2.4.3 乘法運算 27
2.4.4 除法運算 28
2.5 圖像的邏輯運算 30
2.5.1 按位與運算 30
2.5.2 按位或運算 30
2.5.3 按位非運算 32
2.5.4 按位異或運算 33
2.5.5 綜合實例 34
2.6 習(xí)題 34
第3章 數(shù)字圖像的幾何運算 36
3.1 圖像平移 36
3.1.1 顯示窗口改變的圖像平移 37
3.1.2 顯示窗口不變的圖像平移 38
3.1.3 仿射變換的應(yīng)用實例 38
3.2 圖像縮放 39
3.3 圖像旋轉(zhuǎn) 41
3.4 圖像剪切 43
3.5 圖像的鏡像變換 46
3.6 圖像的透視變換 47
3.7 圖像的極坐標(biāo)變換 47
3.7.1 數(shù)據(jù)點坐標(biāo)系間的轉(zhuǎn)換 48
3.7.2 圖像數(shù)據(jù)坐標(biāo)系間的轉(zhuǎn)換 48
3.7.3 視頻圖像坐標(biāo)系間的轉(zhuǎn)換 49
3.8 習(xí)題 51
第4章 圖像空域增強(qiáng) 52
4.1 灰度線性變換 52
4.1.1 用OpenCV做灰度變換與顏色空間變換 52
4.1.2 增加或降低圖像亮度 54
4.1.3 增強(qiáng)或減弱圖像對比度 55
4.1.4 圖像反色變換 56
4.2 非線性變換 58
4.2.1 對數(shù)變換 58
4.2.2 伽馬變換 59
4.3 圖像噪聲 60
4.3.1 通過Numpy數(shù)組庫添加噪聲 61
4.3.2 通過skimage庫添加噪聲 65
4.4 直方圖均衡化 67
4.4.1 使用Matplotlib庫繪制圖像直方圖 67
4.4.2 使用OpenCV中的函數(shù)繪制直方圖 69
4.4.3 自定義函數(shù)實現(xiàn)直方圖均衡化 70
4.4.4 使用OpenCV函數(shù)實現(xiàn)直方圖均衡化 71
4.4.5 自適應(yīng)直方圖均衡化 73
4.5 直方圖規(guī)定化 74
4.5.1 自定義映像函數(shù)實現(xiàn)直方圖規(guī)定化 74
4.5.2 直方圖反向投影 78
4.6 習(xí)題 79
第5章 圖像空域濾波 81
5.1 空域濾波 81
5.2 圖像平滑 82
5.2.1 均值濾波 82
5.2.2 方框濾波 83
5.2.3 高斯濾波 84
5.2.4 中值濾波 86
5.2.5 雙邊濾波 87
5.3 圖像銳化 89
5.3.1 拉普拉斯濾波 89
5.3.2 自定義卷積核濾波 91
5.3.3 非銳化掩模和高頻提升濾波 93
5.4 習(xí)題 94
第6章 圖像頻域濾波 95
6.1 傅里葉變換 95
6.1.1 Numpy中的傅里葉變換 95
6.1.2 OpenCV中的傅里葉變換 96
6.2 低通濾波 98
6.2.1 理想低通濾波 98
6.2.2 巴特沃斯低通濾波 100
6.2.3 高斯低通濾波 102
6.3 高通濾波 103
6.3.1 理想高通濾波 104
6.3.2 巴特沃斯高通濾波 105
6.3.3 高斯高通濾波 107
6.4 帶通和帶阻濾波 109
6.4.1 帶通濾波 109
6.4.2 帶阻濾波 112
6.5 同態(tài)濾波 115
6.6 習(xí)題 116
第7章 圖像退化和復(fù)原 117
7.1 圖像退化與復(fù)原的機(jī)理 117
7.2 圖像的運動模糊 118
7.3 圖像的逆濾波 120
7.4 圖像的維納濾波 122
7.5 圖像質(zhì)量的評價 125
7.6 習(xí)題 133
第8章 圖像數(shù)學(xué)形態(tài)學(xué) 134
8.1 結(jié)構(gòu)元素 134
8.1.1 使用OpenCV生成結(jié)構(gòu)元素 134
8.1.2 使用Numpy生成結(jié)構(gòu)元素 135
8.2 腐蝕 136
8.2.1 OpenCV中的腐蝕函數(shù) 136
8.2.2 skimage中的腐蝕函數(shù) 137
8.3 膨脹 138
8.3.1 OpenCV中的膨脹函數(shù) 138
8.3.2 skimage中的膨脹函數(shù) 139
8.3.3 OpenCV形態(tài)學(xué)處理原型函數(shù) 140
8.4 開運算 141
8.4.1 OpenCV中的開運算 141
8.4.2 skimage中的開運算 142
8.5 閉運算 143
8.5.1 OpenCV中的閉運算 143
8.5.2 skimage中的閉運算 144
8.6 高帽運算 145
8.6.1 OpenCV中的高帽運算 145
8.6.2 skimage中的高帽運算 146
8.7 黑帽運算 146
8.7.1 OpenCV中的黑帽運算 146
8.7.2 skimage中的黑帽運算 147
8.8 形態(tài)學(xué)梯度 148
8.9 灰度形態(tài)學(xué) 151
8.9.1 灰度圖像的腐蝕運算 151
8.9.2 灰度圖像的膨脹運算 151
8.9.3 灰度圖像的開運算和閉運算 152
8.10 形態(tài)學(xué)運算檢測圖像的邊緣和角點 153
8.10.1 檢