Hands-on computer vision with Detectron2 develop object detection and segmentation models with a code and visualization approach
Computer vision is a crucial component of many modern businesses, including automobiles, robotics, and manufacturing, and its market is growing rapidly. This book helps you explore Detectron2, Facebook's next-gen library providing cutting-edge detection and segmentation algorithms. It's us...
Other Authors: | , |
---|---|
Format: | eBook |
Language: | Inglés |
Published: |
Birmingham, England ; Mumbai :
Packt
[2023]
|
Edition: | 1st ed |
Subjects: | |
See on Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009733939806719 |
Table of Contents:
- Cover
- Title Page
- Copyright and Credits
- Dedications
- Foreword
- Contributors
- Table of Contents
- Preface
- Part 1: Introduction to Detectron2
- Chapter 1: An Introduction to Detectron2 and Computer Vision Tasks
- Technical requirements
- Computer vision tasks
- Object detection
- Instance segmentation
- Keypoint detection
- Semantic segmentation
- Panoptic segmentation
- An introduction to Detectron2 and its architecture
- Introducing Detectron2
- Detectron2 architecture
- Detectron2 development environments
- Cloud development environment for Detectron2 applications
- Local development environment for Detectron2 applications
- Connecting Google Colab to a local development environment
- Summary
- Chapter 2: Developing Computer Vision Applications Using Existing Detectron2 Models
- Technical requirements
- Introduction to Detectron2's Model Zoo
- Developing an object detection application
- Getting the configuration file
- Getting a predictor
- Performing inferences
- Visualizing the results
- Developing an instance segmentation application
- Selecting a configuration file
- Getting a predictor
- Performing inferences
- Visualizing the results
- Developing a keypoint detection application
- Selecting a configuration file
- Getting a predictor
- Performing inferences
- Visualizing the results
- Developing a panoptic segmentation application
- Selecting a configuration file
- Getting a predictor
- Performing inferences
- Visualizing the results
- Developing a semantic segmentation application
- Selecting a configuration file and getting a predictor
- Performing inferences
- Visualizing the results
- Putting it all together
- Getting a predictor
- Performing inferences
- Visualizing the results
- Performing a computer vision task
- Summary.
- Part 2: Developing Custom Object Detection Models
- Chapter 3: Data Preparation for Object Detection Applications
- Technical requirements
- Common data sources
- Getting images
- Selecting an image labeling tool
- Annotation formats
- Labeling the images
- Annotation format conversions
- Converting YOLO datasets to COCO datasets
- Converting Pascal VOC datasets to COCO datasets
- Summary
- Chapter 4: The Architecture of the Object Detection Model in Detectron2
- Technical requirements
- Introduction to the application architecture
- The backbone network
- Region Proposal Network
- The anchor generator
- The RPN head
- The RPN loss calculation
- Proposal predictions
- Region of Interest Heads
- The pooler
- The box predictor
- Summary
- Chapter 5: Training Custom Object Detection Models
- Technical requirements
- Processing data
- The dataset
- Downloading and performing initial explorations
- Data format conversion
- Displaying samples
- Using the default trainer
- Selecting the best model
- Evaluation metrics for object detection models
- Selecting the best model
- Inferencing thresholds
- Sample predictions
- Developing a custom trainer
- Utilizing the hook system
- Summary
- Chapter 6: Inspecting Training Results and Fine-Tuning Detectron2's Solvers
- Technical requirements
- Inspecting training histories with TensorBoard
- Understanding Detectron2's solvers
- Gradient descent
- Stochastic gradient descent
- Momentum
- Variable learning rates
- Fine-tuning the learning rate and batch size
- Summary
- Chapter 7: Fine-Tuning Object Detection Models
- Technical requirements
- Setting anchor sizes and anchor ratios
- Preprocessing input images
- Sampling training data and generating the default anchors
- Generating sizes and ratios hyperparameters
- Setting pixel means and standard deviations.
- Preparing a data loader
- Calculating the running means and standard deviations
- Putting it all together
- Summary
- Chapter 8: Image Data Augmentation Techniques
- Technical requirements
- Image augmentation techniques
- Why image augmentations?
- What are image augmentations?
- How to perform image augmentations
- Detectron2's image augmentation system
- Transformation classes
- Augmentation classes
- The AugInput class
- Summary
- Chapter 9: Applying Train-Time and Test-Time Image Augmentations
- Technical requirements
- The Detectron2 data loader
- Applying existing image augmentation techniques
- Developing custom image augmentation techniques
- Modifying the existing data loader
- Developing the MixUp image augmentation technique
- Developing the Mosaic image augmentation technique
- Applying test-time image augmentation techniques
- Summary
- Part 3: Developing a Custom Detectron2 Model for Instance Segmentation Tasks
- Chapter 10: Training Instance Segmentation Models
- Technical requirements
- Preparing data for training segmentation models
- Getting images, labeling images, and converting annotations
- Introduction to the brain tumor segmentation dataset
- The architecture of the segmentation models
- Training custom segmentation models
- Summary
- Chapter 11: Fine-Tuning Instance Segmentation Models
- Technical requirements
- Introduction to PointRend
- Using existing PointRend models
- Training custom PointRend models
- Summary
- Part 4: Deploying Detectron2 Models into Production
- Chapter 12: Deploying Detectron2 Models into Server Environments
- Technical requirements
- Supported file formats and runtimes
- Development environments, file formats, and runtimes
- Exporting PyTorch models using the tracing method
- When the tracing method fails.
- Exporting PyTorch models using the scripting method
- Mixing tracing and scripting approaches
- Deploying models using a C++ environment
- Deploying custom Detectron2 models
- Detectron2 utilities for exporting models
- Exporting a custom Detectron2 model
- Summary
- Chapter 13: Deploying Detectron2 Models into Browsers and Mobile Environments
- Technical requirements
- Deploying Detectron2 models using ONNX
- Introduction to ONNX
- Exporting a PyTorch model to ONNX
- Loading an ONNX model to the browser
- Exporting a custom Detectron2 model to ONNX
- Developing mobile computer vision apps with D2Go
- Introduction to D2Go
- Using existing D2Go models
- Training custom D2Go models
- Model quantization
- Summary
- Index
- Other Books You May Enjoy.