OpenCV算法精解:基於Python與C++ epub pdf mobi txt 電子書 下載 2024
發表於2024-11-24
OpenCV算法精解:基於Python與C++ epub pdf mobi txt 電子書 下載 2024
Python與C++雙實現,助力讀者輕鬆駕馭OpenCV算法,夯實計算機視覺領域基礎知識!
基本概念理論+數學原理
詳細介紹OpenCV實現對應的函數
注重代碼實現(分彆給齣Python和C++實現)及實際應用
開篇先介紹如何在Windows和ubuntu上部署OpenCV,然後過度到核心章節,從灰度圖像、彩色圖像、圖像平滑、邊緣檢測、霍夫變換等幾個維度入手講解,盡量拆分算法,代碼實現用C++和Python代碼。案例在每章最後分享,方便讀者練習。
張平,數學與應用數學專業,算法工程師。主要從事圖像算法研究和産品的應用開發,此外還從事有關機器學習、數據挖掘算法的應用研發工作。
目錄
1 OpenCV入門
1.1 初識OpenCV
1.1.1 OpenCV的模塊簡介
1.1.2 OpenCV 2.4.13與3.2版本的區彆
1.2 部署OpenCV
1.2.1 在Visual Studio 2015中 配置OpenCV
1.2.2 OpenCV 2.X C++ API的第一個示例
1.2.3 OpenCV 3.X C++ API的第一個示例
1.2.4 在Anaconda 2中配置OpenCV
1.2.5 OpenCV 2.X Python API的第一個示例
1.2.6 OpenCV 3.X Python API的第一個示例
2 圖像數字化
2.1 認識Numpy中的ndarray
2.1.1 構造ndarray對象
2.1.2 訪問ndarray中的值
2.2 認識OpenCV中的Mat類
2.2.1 初識Mat
2.2.2 構造單通道Mat對象
2.2.3 獲得單通道Mat的基本信息
2.2.4 訪問單通道Mat對象中的值
2.2.5 嚮量類Vec
2.2.6 構造多通道Mat對象
2.2.7 訪問多通道Mat對象中的值
2.2.8 獲得Mat中某一區域的值
2.3 矩陣的運算
2.3.1 加法運算
2.3.2 減法運算
2.3.3 點乘運算
2.3.4 點除運算
2.3.5 乘法運算
2.3.6 其他運算
2.4 灰度圖像數字化
2.4.1 概述
2.4.2 將灰度圖像轉換為Mat
2.4.3 將灰度圖轉換為ndarray
2.5 彩色圖像數字化
2.5.1 將RGB彩色圖像轉換為多通道Mat
2.5.2 將RGB彩色圖轉換為三維的ndarray
2.6 參考文獻
3 幾何變換
3.1 仿射變換
3.1.1 平移
3.1.2 放大和縮小
3.1.3 鏇轉
3.1.4 計算仿射矩陣
3.1.5 插值算法
3.1.6 Python實現
3.1.7 C++實現
3.1.8 鏇轉函數rotate(OpenCV3.X新特性)
3.2 投影變換
3.2.1 原理詳解
3.2.2 Python實現
3.2.3 C++實現
3.3 極坐標變換
3.3.1 原理詳解
3.3.2 Python實現
3.3.3 C++實現
3.3.4 綫性極坐標函數linearPolar(OpenCV 3.X新特性)
3.3.5 對數極坐標函數logPolar(OpenCV 3.X新特性)
3.4 參考文獻
4 對比度增強
4.1 灰度直方圖
4.1.1 什麼是灰度直方圖
4.1.2 Python及C++實現
4.2 綫性變換
4.2.1 原理詳解
4.2.2 Python實現
4.2.3 C++實現
4.3 直方圖正規化
4.3.1 原理詳解
4.3.2 Python實現
4.3.3 C++實現
4.3.4 正規化函數normalize
4.4 伽馬變換
4.4.1 原理詳解
4.4.2 Python實現
4.4.3 C++實現
4.5 全局直方圖均衡化
4.5.1 原理詳解
4.5.2 Python實現
4.5.3 C++實現
4.6 限製對比度的自適應直方圖均衡化
4.6.1 原理詳解
4.6.2 代碼實現
4.7 參考文獻
5 圖像平滑
5.1 二維離散捲積
5.1.1 捲積定義及矩陣形式
5.1.2 可分離捲積核
5.1.3 離散捲積的性質
5.2 高斯平滑
5.2.1 高斯捲積核的構建及分離性
5.2.2 高斯捲積核的二項式近似
5.2.3 Python實現
5.2.4 C++實現
5.3 均值平滑
5.3.1 均值捲積核的構建及分離性
5.3.2 快速均值平滑
5.3.3 Python實現
5.3.4 C++實現
5.4 中值平滑
5.4.1 原理詳解
5.4.2 Python實現
5.4.3 C++實現
5.5 雙邊濾波
5.5.1 原理詳解
5.5.2 Python實現
5.5.3 C++實現
5.6 聯閤雙邊濾波
5.6.1 原理詳解
5.6.2 Python實現
5.6.3 C++實現
5.7 導嚮濾波
5.7.1 原理詳解
5.7.2 Python實現
5.7.3 快速導嚮濾波
5.7.4 C++實現
5.8 參考文獻
6 閾值分割
6.1 方法概述
6.1.1 全局閾值分割
6.1.2 閾值函數threshold(OpenCV3.X新特性)
6.1.3 局部閾值分割
6.2 直方圖技術法
6.2.1 原理詳解
6.2.2 Python實現
6.2.3 C++實現
6.3 熵算法
6.3.1 原理詳解
6.3.2 代碼實現
6.4 Otsu閾值處理
6.4.1 原理詳解
6.4.2 Python實現
6.4.3 C++實現
6.5 自適應閾值
6.5.1 原理詳解
6.5.2 Python實現
6.5.3 C++實現
6.6 二值圖的邏輯運算
6.6.1 “與”和“或”運算
6.6.2 Python實現
6.6.3 C++實現
6.7 參考文獻
7 形態學處理
7.1 腐蝕
7.1.1 原理詳解
7.1.2 實現代碼及效果
7.2 膨脹
7.2.1 原理詳解
7.2.2 Python實現
7.2.3 C++實現
7.3 開運算和閉運算
7.3.1 原理詳解
7.3.2 Python實現
7.4 其他形態學處理操作
7.4.1 頂帽變換和底帽變換
7.4.2 形態學梯度
7.4.3 C++實現
8 邊緣檢測
8.1 Roberts算子
8.1.1 原理詳解
8.1.2 Python實現
8.1.3 C++實現
8.2 Prewitt邊緣檢測
8.2.1 Prewitt算子及分離性
8.2.2 Python實現
8.2.3 C++實現
8.3 Sobel邊緣檢測
8.3.1 Sobel算子及分離性
8.3.2 構建高階的Sobel算子
8.3.3 Python實現
8.3.4 C++實現
8.4 Scharr算子
8.4.1 原理詳解
8.4.2 Python實現
8.4.3 C++實現
8.5 Kirsch算子和Robinson算子
8.5.1 原理詳解
8.5.2 代碼實現及效果
8.6 Canny邊緣檢測
8.6.1 原理詳解
8.6.2 Python實現
8.6.3 C++實現
8.7 Laplacian算子
8.7.1 原理詳解
8.7.2 Python實現
8.7.3 C++實現
8.8 高斯拉普拉斯(LoG)邊緣檢測
8.8.1 原理詳解
8.8.2 Python實現
8.8.3 C++實現
8.9 高斯差分(DoG)邊緣檢測
8.9.1 高斯拉普拉斯與高斯差分的關係
8.9.2 Python實現
8.9.3 C++實現
8.10 Marr-Hildreth邊緣檢測
8.10.1 算法步驟詳解
8.10.2 Pyton實現
8.10.3 C++實現
8.11 參考文獻
9 幾何形狀的檢測和擬閤
9.1 點集的最小外包
9.1.1 最小外包鏇轉矩形
9.1.2 鏇轉矩形的4個頂點(OpenCV 3.X新特性)
9.1.3 最小外包圓
9.1.4 最小外包直立矩形(OpenCV 3.X新特性)
9.1.5 最小凸包
9.1.6 最小外包三角形( OpenCV 3.X新特性)
9.2 霍夫直綫檢測
9.2.1 原理詳解
9.2.2 Python實現
9.2.3 C++實現
9.3 霍夫圓檢測
9.3.1 標準霍夫圓檢測
9.3.2 Python實現
9.3.3 基於梯度的霍夫圓檢測
9.3.4 基於梯度的霍夫圓檢測函數HoughCircles
9.4 輪廓
9.4.1 查找、繪製輪廓
9.4.2 外包、擬閤輪廓
9.4.3 輪廓的周長和麵積
9.4.4 點和輪廓的位置關係
9.4.5 輪廓的凸包缺陷
9.5 參考文獻
10 傅裏葉變換
10.1 二維離散的傅裏葉(逆)變換
10.1.1 數學理解篇
10.1.2 快速傅裏葉變換
10.1.3 C++實現
10.1.4 Python實現
10.2 傅裏葉幅度譜與相位譜
10.2.1 基礎知識
10.2.2 Python實現
10.2.3 C++實現
10.3 譜殘差顯著性檢測
10.3.1 原理詳解
10.3.2 Python實現
10.3.3 C++實現
10.4 捲積與傅裏葉變換的關係
10.4.1 捲積定理
10.4.2 Python實現
10.5 通過快速傅裏葉變換計算捲積
10.5.1 步驟詳解
10.5.2 Python實現
10.5.3 C++實現
10.6 參考文獻
11 頻率域濾波
11.1 概述及原理詳解
11.2 低通濾波和高通濾波
11.2.1 三種常用的低通濾波器
11.2.2 低通濾波的C++實現
11.2.3 低通濾波的Python實現
11.2.4 三種常用的高通濾波器
11.3 帶通和帶阻濾波
11.3.1 三種常用的帶通濾波器
11.3.2 三種常用的帶阻濾波器
11.4 自定義濾波器
11.4.1 原理詳解
11.4.2 C++實現
11.5 同態濾波
11.5.1 原理詳解
11.5.2 Python實現
11.6 參考文獻
12 色彩空間
12.1 常見的色彩空間
12.1.1 RGB色彩空間
12.1.2 HSV色彩空間
12.1.3 HLS色彩空間
12.2 調整彩色圖像的飽和度和亮度
12.2.1 Python實現
12.2.2 C++實現
前言
數字圖像處理,即用計算機對圖像進行處理。初期,圖像數字化的設備是非常昂貴和復雜的,隨著互聯網、人工智能、智能硬件等技術的迅猛發展,硬件成本越來越便宜,使得在我們生活中産生瞭大量的圖像和視頻,與此同時,計算機視覺技術在人類生活中起到的作用也越來越大,其在商業、工業、醫學等領域有著廣泛的應用。
如今,連市場上很低價位的智能手機都可以配置一組高分辨率的攝像頭,安卓和蘋果手機應用市場中齣現瞭大量基於圖像處理的App,比如Rookie Cam、VSCO、Snapseed 等,這些App 內均有大量圖像處理方法,如圖像的裁剪、縮放、鏇轉、美顔、飽和度和亮度的調整及其各種濾鏡方法等,通常可以滿足人們日常生活中拍照娛樂的需求。我們經常使用的購物App,如淘寶中的“拍立淘”功能,可以用它拍下我們喜歡的物品,然後會自動檢索齣與其匹配的商品。還有比如基於人臉識彆的手機支付、考勤係統等,基於字符識彆的智能停車係統等,可見數字圖像處理已經慢慢地和我們的生活、娛樂息息相關。
本書整體架構及特色
OpenCV 作為一款開源的計算機視覺開發工具包,在計算機視覺領域扮演著非常重要的角色,它在提供源碼的同時,給齣瞭非常完整的OpenCV 函數手冊及其示例手冊,這兩個文檔也是學習OpenCV 的第一手和最重要的資料。這些優勢使得數韆名研究人員在視覺領域能夠獲得更高的生産力,並幫助學生和專業人員快速開發和研究有關的機器視覺項目,而我也是其中的眾多受益者之一。
本書大體按照經典教材岡薩雷斯的《數字圖像處理(第三版)》和OpenCV 使用手冊(主要是improc 模塊)的知識脈絡,並在此基礎上加入瞭某些具體方嚮的最新方法,試圖幫助初學者更加快速、係統地掌握基本的數字圖像處理技術的數學原理,以及如何將抽象的數學原理轉換為代碼實現的方法,然後詳細介紹瞭OpenCV 實現對應的函數,並分彆給齣瞭C++ 接口和Python 接口的使用方法,以及OpenCV 2.X 和OpenCV 3.X 的區彆。
本書麵嚮的讀者
本書中圖像算法的數學原理部分適閤數字圖像處理的初學者,示例的C++ 部分適閤具備C++ 編程基礎的讀者,示例的Python 部分適閤具備Python 編程基礎的讀者,同時對於使用OpenCV 2.X 版本的讀者,書中介紹瞭OpenCV 3.X 版本的新特性,這樣可以快速過渡到3.X 版本。
緻謝
特彆感謝電子工業齣版社博文視點的編輯鄭柳潔老師,在寫這本書的過程中,她不厭其煩地解答我遇到的各種各樣的問題,真心感謝她一直以來的支持和肯定。
感謝CSDN 的白羽中幫助我聯係到瞭博文視點的楊中興和鄭柳潔老師,沒有您的幫助,將無法促成這本書的齣版。
感謝我的朋友戴傳軍和張瑩瑩給這本書提齣瞭寶貴的建議,以及幫助我完成瞭書中一些非常重要的圖錶。
感謝我的父母、姐姐一直以來對我生活和工作的支持。
感謝OpenCV 開源庫的所有貢獻者。
限於篇幅,加之作者水平有限,疏漏和錯誤在所難免,懇請讀者批評、指正。如果您發現瞭錯誤或者有好的建議,請發郵件至wxcdzhangping@126.com,將不勝感激。
iv
OpenCV算法精解:基於Python與C++ epub pdf mobi txt 電子書 下載 2024
OpenCV算法精解:基於Python與C++ 下載 epub mobi pdf txt 電子書OpenCV算法精解:基於Python與C++ mobi pdf epub txt 電子書 下載 2024
OpenCV算法精解:基於Python與C++ epub pdf mobi txt 電子書 下載是正版書,京東物流超贊,
評分紙質很好,字跡清晰,完好無損
評分算法很全麵,python用的2.X的,要是用3.X就更好瞭
評分這本書內容太淺而且太偏基礎瞭。實戰很少
評分東西不錯,暫時還可以吧啦吧啦吧啦
評分有些書的質量還可以,價格有些實在太貴瞭
評分好!!!!!!!!!!
評分質量很好,物超所值,下次還會考慮購買
評分京東買書便宜送的速度快有發票是正版什麼都好
OpenCV算法精解:基於Python與C++ epub pdf mobi txt 電子書 下載 2024