網站上的銷售怎么做的/百度網盤私人資源鏈接
文章目錄
- 機器視覺
- 缺陷檢測
- 工業(yè)上常見缺陷檢測方法
- 內容簡介
- 作者簡介
- 目錄
- 讀者對象
- 如何閱讀本書
- 獲取方式
機器視覺
機器視覺是使用各種工業(yè)相機,結合傳感器跟電氣信號實現替代傳統人工,完成對象識別、計數、測量、缺陷檢測、引導定位與抓取等任務。其中工業(yè)品的缺陷檢測極大的依賴人工完成,特別是傳統的3C制造環(huán)節(jié),產品缺陷檢測依賴于人眼睛來發(fā)現與檢測,不僅費時費力還面臨人員成本與工作時間等因素的制約。使用機器視覺來實現產品缺陷檢測,可以節(jié)約大量時間跟人員成本,實現生產過程的自動化與流水線作業(yè)。
缺陷檢測
常見得工業(yè)品缺陷主要包括劃痕、臟污、缺失、凹坑、裂紋等,這些依賴人工目檢(眼睛檢測)的缺陷都可以通過機器視覺的缺陷檢測算法來實現替代。當前工業(yè)缺陷檢測算法目前主要分為兩個方向,基于傳統視覺的算法和基于深度學習的算法,前者主要依靠對檢測目標的特征進行量化,比如顏色,形狀,長寬,角度,面積等,好處是可解釋性強、對樣本數量沒有要求、運行速度快,缺點是依賴于固定的光照成像,稍有改動就要改寫程序重新部署,而且檢測規(guī)則和算法跟開發(fā)者經驗其主導作用?;谏疃葘W習的缺陷檢測算法剛好能彌補前者的不足之處,能夠很好適應不同的光照,更好地適配同類缺陷要求,缺點是對樣本數量有一定要求,對硬件配置相比傳統也會有一定要求。
《OpenCV應用開發(fā):入門、進階與工程化實踐》一書第十四 章 通過案例詳細介紹基于OpenCV如何實現傳統方式的缺陷檢測跟基于深度學習的缺陷檢測。
工業(yè)上常見缺陷檢測方法
方法一:基于簡單二值圖像分析實現劃痕提取,效果如下:
方法二:復雜背景下的圖像缺陷分析,基于頻域增強的方法實現缺陷檢測,運行截圖:
方法三:復雜背景下的圖像缺陷分析,基于空域增強實現圖像缺陷分析,針對復雜背景的圖像,通過空域濾波增強以后實現缺陷查找,運行截圖如下:
方法四:基于樣品模板比對實現基于空域增強實現圖像缺陷分析,通過二之分析與輪廓比對實現缺陷查找,運行截圖如下:
方法五:基于深度學習UNet模型網絡,實現裂紋與劃痕檢測,運行截圖如下:
方法六:基于深度學習實例分割網絡模型網絡,實現細微缺陷檢測,運行截圖如下:
以上內容均來自最近出版的一本新書《OpenCV應用開發(fā):入門、進階與工程化實踐》一書第十四章,分享給大家。
內容簡介
本書專注于介紹OpenCV4在工業(yè)領域的常用模塊,通過合理的章節(jié)設置構建了階梯式的知識點學習路徑。化繁就簡、案例驅動,注重算法原理、代碼演示及在相關場景的實際使用。本書還介紹了必備的深度學習知識與開發(fā)技巧,拓展OpenCV開發(fā)者技能。全書共16章,分為3篇。
● 基礎篇(第1~4章):主要介紹OpenCV的簡單使用、像素操作、色彩空間、圖像直方圖。
特色:從如何配置OpenCV開發(fā)環(huán)境開始到完成第一個OpenCV代碼演示,從圖像的表示到基本的像素操作,方便讀者全面扎實地掌握基本圖像處理知識與函數使用技巧,為深入學習打下堅實基礎。
● 進階篇(第5~12章):主要介紹卷積操作、二值圖像分析、形態(tài)學分析、特征提取、視頻分析、機器學習、DNN。
特色:結合代碼演示學習OpenCV框架中主要圖像處理模塊的算法原理與相關函數使用,通過多個案例打通知識節(jié)點,學會使用OpenCV傳統算法解決實際問題。
● 高級與實戰(zhàn)篇(第13~16章):主要介紹YOLO 5自定義對象檢測、缺陷檢測、OpenVINO加速與CUDA加速。
特色:面向工程應用,幫助OpenCV開發(fā)者提升技能,通過實戰(zhàn)案例增強OpenCV應用能力,掌握視覺開發(fā)必備的深度學習知識,以及從模型訓練到部署加速的技巧。
作者簡介
賈志剛
OpenVINO中文社區(qū)創(chuàng)始成員、英特爾物聯網創(chuàng)新大使、華為晟騰HAE、51CTO學院金牌講師。在機器視覺缺陷檢測、生物醫(yī)學細胞分類與檢測識別、安防監(jiān)控視頻內容分析與提取、人工智能軟件開發(fā)、深度學習框架集成開發(fā)等方面有深入研究,開發(fā)過多個圖像處理算法模塊并成功應用在醫(yī)學檢測與工業(yè)檢測領域。開設有公眾號“OpenCV學堂”,并著有《Java數字圖像處理:編程技巧與應用實踐》《OpenCV Android開發(fā)實戰(zhàn)》等書。
張 振
上海赫立蘇州研究院(赫芯科技)院長,具備豐富的機器視覺檢測一線研發(fā)、管理與運營經驗。深耕半導體/SMT缺陷檢測領域10余年,擁有自主知識產權的軟件和相關專利數十項。多年成功創(chuàng)業(yè)經歷,積累了豐富的研發(fā)創(chuàng)新和團隊管理經驗,并參與市場與客戶需求分析、技術分析與評估、方案制訂、算法迭代、驗收指標制定、標準機型量產的全流程管理與實踐。
目錄
前言基礎篇第1章 OpenCV簡介與安裝 / 21.1 OpenCV簡介 / 21.1.1 OpenCV歷史 / 21.1.2 OpenCV的模塊與功能 / 31.1.3 OpenCV4里程碑 / 41.1.4 OpenCV發(fā)展現狀與應用趨勢 / 41.2 OpenCV源碼項目 / 41.3 OpenCV4開發(fā)環(huán)境搭建 / 51.4 第一個OpenCV開發(fā)程序 / 61.5 圖像加載與保存 / 71.5.1 加載圖像 / 71.5.2 保存圖像 / 81.6 加載視頻 / 91.7 小結 / 12第2章 Mat與像素操作 / 132.1 Mat對象 / 132.1.1 什么是Mat對象 / 132.1.2 一切圖像皆Mat / 142.1.3 Mat類型與深度 / 152.1.4 創(chuàng)建Mat / 152.2 訪問像素 / 182.2.1 遍歷Mat中的像素 / 182.2.2 像素算術運算 / 202.2.3 位運算 / 212.2.4 調整圖像亮度與對比度 / 222.3 圖像類型與通道 / 232.3.1 圖像類型 / 232.3.2 圖像通道 / 232.3.3 通道操作 / 242.4 小結 / 25第3章 色彩空間 / 263.1 RGB色彩空間 / 263.2 HSV色彩空間 / 283.3 LAB色彩空間 / 293.4 色彩空間的轉換與應用 / 303.5 小結 / 31第4章 圖像直方圖 / 324.1 像素統計信息 / 324.2 直方圖的計算與繪制 / 344.2.1 直方圖計算 / 354.2.2 直方圖繪制 / 364.3 直方圖均衡化 / 374.4 直方圖比較 / 404.5 直方圖反向投影 / 414.6 小結 / 43進階篇第5章 卷積操作 / 465.1 卷積的概念 / 465.2 卷積模糊 / 495.3 自定義濾波 / 535.4 梯度提取 / 565.5 邊緣發(fā)現 / 595.6 噪聲與去噪 / 615.7 邊緣保留濾波 / 645.8 銳化增強 / 665.9 小結 / 68第6章 二值圖像 / 706.1 圖像閾值化分割 / 706.2 全局閾值計算 / 726.3 自適應閾值計算 / 766.4 去噪與二值化 / 776.4.1 去噪對二值化的影響 / 776.4.2 其他方式的二值化 / 786.5 小結 / 79第7章 二值分析 / 807.1 二值圖像分析概述 / 807.2 連通組件標記 / 827.3 輪廓發(fā)現 / 857.3.1 輪廓發(fā)現函數 / 857.3.2 輪廓繪制函數 / 877.3.3 輪廓發(fā)現與繪制的示例代碼 / 877.4 輪廓測量 / 887.5 擬合與逼近 / 907.6 輪廓分析 / 957.7 直線檢測 / 977.8 霍夫圓檢測 / 997.9 最大內接圓與最小外接圓 / 1017.10 輪廓匹配 / 1027.11 最大輪廓與關鍵點編碼 / 1047.12 凸包檢測 / 1067.13 小結 / 107第8章 形態(tài)學分析 / 1088.1 圖像形態(tài)學概述 / 1088.2 膨脹與腐蝕 / 1098.3 開/閉操作 / 1118.4 形態(tài)學梯度 / 1138.5 頂帽與黑帽 / 1158.6 擊中/擊不中 / 1168.7 結構元素 / 1198.8 距離變換 / 1208.9 分水嶺分割 / 1218.10 小結 / 124第9章 特征提取 / 1259.1 圖像金字塔 / 1259.1.1 高斯金字塔 / 1259.1.2 拉普拉斯金字塔 / 1289.1.3 圖像金字塔融合 / 1299.2 Harris角點檢測 / 1319.3 shi-tomas角點檢測 / 1339.4 亞像素級別的角點檢測 / 1359.5 HOG特征與使用 / 1379.5.1 HOG特征描述子 / 1379.5.2 HOG特征行人檢測 / 1399.6 ORB特征描述子 / 1409.6.1 關鍵點與描述子提取 / 1409.6.2 描述子匹配 / 1449.7 基于特征的對象檢測 / 1489.7.1 單應性矩陣計算方法 / 1489.7.2 特征對象的位置發(fā)現 / 1509.8 小結 / 152第10章 視頻分析 / 15310.1 基于顏色的對象跟蹤 / 15310.2 視頻背景分析 / 15510.3 幀差法背景分析 / 15710.4 稀疏光流分析法 / 15810.5 稠密光流分析法 / 16110.6 均值遷移分析 / 16310.7 小結 / 166第11章 機器學習 / 16711.1 KMeans分類 / 16711.1.1 KMeans圖像語義分割 / 16711.1.2 提取主色彩構建色卡 / 17011.2 KNN分類 / 17211.2.1 KNN函數支持 / 17211.2.2 KNN實現手寫數字識別 / 17311.3 SVM分類 / 17511.3.1 SVM的原理與分類 / 17511.3.2 SVM函數 / 17611.3.3 SVM實現手寫數字識別 / 17611.4 SVM與HOG實現對象檢測 / 17711.4.1 數據樣本特征提取 / 17811.4.2 SVM特征分類 / 17911.4.3 構建SVM對象檢測器 / 17911.5 小結 / 181第12章 深度神經網絡 / 18212.1 DNN概述 / 18212.2 圖像分類 / 18312.3 對象檢測 / 18612.3.1 SSD對象檢測 / 18712.3.2 Faster-RCNN對象檢測 / 18812.3.3 YOLO對象檢測 / 19012.4 ENet圖像語義分割 / 19312.5 風格遷移 / 19512.6 場景文字檢測 / 19712.7 人臉檢測 / 19912.8 小結 / 201高級與實戰(zhàn)篇第13章 YOLO 5自定義對象檢測 / 20413.1 YOLO 5對象檢測框架 / 20413.2 YOLO 5對象檢測 / 20513.3 自定義對象檢測 / 20813.3.1 數據集制作與生成 / 20913.3.2 模型訓練與查看損失曲線 / 21013.3.3 模型導出與部署 / 21113.4 小結 / 212第14章 缺陷檢測 / 21314.1 簡單背景下的缺陷檢測 / 21314.2 復雜背景下的缺陷檢測 / 21614.2.1 頻域增強的缺陷檢測 / 21614.2.2 空間域增強的缺陷檢測 / 21914.3 案例:刀片缺陷檢測 / 22014.4 基于深度學習的缺陷檢測 / 22214.4.1 基于分類的缺陷檢測 / 22314.4.2 基于分割的缺陷檢測 / 22614.5 小結 / 228第15章 OpenVINO加速 / 22915.1 OpenVINO框架安裝與環(huán)境配置 / 22915.1.1 OpenVINO安裝 / 23015.1.2 配置C++開發(fā)支持 / 23215.2 OpenVINO2022.x版SDK推理演示 / 23315.2.1 推理SDK介紹 / 23415.2.2 推理SDK演示 / 23515.3 OpenVINO支持UNet部署 / 23615.4 OpenVINO支持YOLO 5部署 / 23715.5 小結 / 239第16章 CUDA加速 / 24016.1 編譯OpenCV源碼支持CUDA加速 / 24016.2 用CUDA加速傳統圖像處理 / 24516.2.1 Mat與GpuMat / 24516.2.2 加速圖像處理與視頻分析 / 24616.3 加速DNN / 24816.4 小結 / 249
讀者對象
本書適合以下讀者閱讀:
- 計算機視覺領域的從業(yè)者。
- OpenCV的愛好者。
- 高等院校相關專業(yè)的師生。
- C++/Python開發(fā)者。
如何閱讀本書
本書共16章,分為3篇,由淺入深地講解OpenCV的技術及應用。
基礎篇(第1~4章)主要介紹了OpenCV4框架中基礎模塊相關的圖像知識、函數及應用。
進階篇(第5~12章)深入介紹了OpenCV4核心模塊的功能與應用場景,主要包括圖像卷積、二值分析、形態(tài)學分析、特征提取、視頻分析、機器學習模塊等,其中穿插大量實踐案例。
高級與實戰(zhàn)篇(第13~16章)全面介紹了OpenCV4支持的各種性能加速技術與深度學習模型推理技術,從項目實現出發(fā),講解了對象檢測、缺陷檢測、深度學習模型加速等高級應用層面的OpenCV開發(fā)技術。
獲取方式
京東圖書:《OpenCV4應用開發(fā):入門、進階與工程化實踐》(賈志剛,張振)