OpenCV 4 Computer Vision Application Programming Cookbook

Escriva, David Millan, Laganiere, Robert

買這商品的人也買了...

商品描述

Key Features

  • Explore the latest features and APIs in OpenCV 4 and build computer vision algorithms
  • Develop effective, robust, and fail-safe vision for your applications
  • Build computer vision algorithms with machine learning capabilities

Book Description

OpenCV is an image and video processing library used for all types of image and video analysis. Throughout the book, you'll work through recipes that implement a variety of tasks, such as facial recognition and detection. With 70 self-contained tutorials, this book examines common pain points and best practices for computer vision (CV) developers. Each recipe addresses a specific problem and offers a proven, best-practice solution with insights into how it works, so that you can copy the code and configuration files and modify them to suit your needs.

This book begins by setting up OpenCV, and explains how to manipulate pixels. You'll understand how you can process images with classes and count pixels with histograms. You'll also learn detecting, describing, and matching interest points. As you advance through the chapters, you'll get to grips with estimating projective relations in images, reconstructing 3D scenes, processing video sequences, and tracking visual motion. In the final chapters, you'll cover deep learning concepts such as face and object detection.

By the end of the book, you'll be able to confidently implement a range to computer vision algorithms to meet the technical requirements of your complex CV projects

What you will learn

  • Install and create a program using the OpenCV library
  • Segment images into homogenous regions and extract meaningful objects
  • Apply image filters to enhance image content
  • Exploit image geometry to relay different views of a pictured scene
  • Calibrate the camera from different image observations
  • Detect people and objects in images using machine learning techniques
  • Reconstruct a 3D scene from images
  • Explore face detection using deep learning

Who this book is for

If you're a CV developer or professional who already uses or would like to use OpenCV for building computer vision software, this book is for you. You'll also find this book useful if you're a C++ programmer looking to extend your computer vision skillset by learning OpenCV.

商品描述(中文翻譯)

主要特點


  • 探索 OpenCV 4 中的最新功能和 API,並構建計算機視覺算法

  • 為應用程序開發有效、強大且安全的視覺功能

  • 使用機器學習能力構建計算機視覺算法

書籍描述

OpenCV 是一個用於圖像和視頻處理的庫,可用於各種圖像和視頻分析。在本書中,您將通過實現各種任務(如人臉識別和檢測)的示例進行工作。本書包含 70 個獨立的教程,探討了計算機視覺(CV)開發人員常見的痛點和最佳實踐。每個教程都解決了特定的問題,並提供了經過驗證的最佳實踐解決方案,並解釋了其工作原理,以便您可以複製代碼和配置文件,並根據自己的需求進行修改。

本書首先介紹了如何設置 OpenCV,並解釋了如何操作像素。您將了解如何使用類處理圖像並使用直方圖計算像素數量。您還將學習檢測、描述和匹配感興趣點。隨著章節的進展,您將掌握在圖像中估計專案關係、重建 3D 場景、處理視頻序列和跟踪視覺運動的技巧。在最後幾章中,您將學習使用深度學習進行人臉和物體檢測。

通過閱讀本書,您將能夠自信地實施各種計算機視覺算法,以滿足複雜 CV 項目的技術要求。

您將學到什麼


  • 安裝並使用 OpenCV 库創建程序

  • 將圖像分割為同質區域並提取有意義的對象

  • 應用圖像濾鏡以增強圖像內容

  • 利用圖像幾何學傳達圖片場景的不同視圖

  • 根據不同的圖像觀察校準相機

  • 使用機器學習技術在圖像中檢測人和物體

  • 從圖像中重建 3D 場景

  • 使用深度學習探索人臉檢測

適合閱讀對象

如果您是一位已經使用或希望使用 OpenCV 構建計算機視覺軟件的 CV 開發人員或專業人士,本書適合您。如果您是一位 C++ 程序員,並希望通過學習 OpenCV 來擴展您的計算機視覺技能,本書也對您有用。

作者簡介

David Millán Escrivá was 8 years old when he wrote his first program on an 8086 PC in Basic, which enabled the 2D plotting of basic equations. In 2005, he finished his studies in IT with honors, through the Universitat Politécnica de Valencia, in human-computer interaction supported by computer vision with OpenCV (v0.96). He has worked with Blender, an open source, 3D software project, and on its first commercial movie, Plumiferos, as a computer graphics software developer. David has more than 10 years' experience in IT, with experience in computer vision, computer graphics, pattern recognition, and machine learning, working on different projects, and at different start-ups, and companies. He currently works as a researcher in computer vision.

Robert Laganiere is a professor at the University of Ottawa, Canada. He is also a faculty member of the VIVA research lab and is the coauthor of several scientific publications and patents in content-based video analysis, visual surveillance, driver-assistance, object detection, and tracking. He cofounded Visual Cortek, a video analytics start-up, which was later acquired by iWatchLife. He is also a consultant in computer vision and has assumed the role of chief scientist in a number of start-ups companies, including Cognivue Corp, iWatchLife, and Tempo Analytics. Robert has a Bachelor of Electrical Engineering degree from Ecole Polytechnique in Montreal (1987), and M.Sc. and Ph.D. degrees from INRS-Telecommunications, Montreal (1996).

作者簡介(中文翻譯)

David Millán Escrivá 在他 8 歲時在一台 8086 PC 上用 Basic 寫下了他的第一個程式,該程式可以繪製基本方程式的 2D 圖形。2005 年,他以榮譽成績完成了他在 IT 領域的學業,通過瓦倫西亞理工大學的人機交互專業,並使用 OpenCV(v0.96)進行計算機視覺的支持。他曾與 Blender 合作,這是一個開源的 3D 軟體項目,並參與了它的第一部商業電影 Plumiferos,擔任計算機圖形軟體開發人員。David 在 IT 領域擁有超過 10 年的經驗,並在計算機視覺、計算機圖形、模式識別和機器學習方面有豐富經驗,曾參與不同的項目、初創公司和企業。他目前在計算機視覺領域從事研究工作。

Robert Laganiere 是加拿大渥太華大學的教授,也是 VIVA 研究實驗室的成員,並且是內容為基礎的視頻分析、視覺監控、駕駛輔助、物體檢測和跟踪等領域的幾篇科學論文和專利的共同作者。他共同創辦了一家名為 Visual Cortek 的視頻分析初創公司,該公司後來被 iWatchLife 收購。他還是計算機視覺領域的顧問,並在多家初創公司擔任首席科學家的角色,包括 Cognivue Corp、iWatchLife 和 Tempo Analytics。Robert 擁有蒙特利爾理工學院(1987 年)的電氣工程學士學位,以及蒙特利爾 INRS-Telecommunications(1996 年)的碩士和博士學位。

目錄大綱

  1. Introduction to OpenCV
  2. Manipulating the pixels
  3. Processing Images with Classes
  4. Counting the Pixels with Histograms
  5. Transforming images with morphological operations
  6. Filtering the images
  7. Extracting Lines, Contours, and Components
  8. Detecting interest points
  9. Describing and Matching interest Points
  10. Estimating projective relations in images
  11. Reconstructing 3D scenes
  12. Processing video sequences
  13. Tracking visual motion
  14. Learning from Examples
  15. OpenCV Advanced features

目錄大綱(中文翻譯)


  1. OpenCV介紹

  2. 像素操作

  3. 使用類別處理圖像

  4. 使用直方圖計算像素數量

  5. 使用形態學操作轉換圖像

  6. 圖像過濾

  7. 提取線條、輪廓和組件

  8. 檢測關鍵點

  9. 描述和匹配關鍵點

  10. 估計圖像中的射影關係

  11. 重建3D場景

  12. 處理視頻序列

  13. 追蹤視覺運動

  14. 從範例中學習

  15. OpenCV高級功能