Hands-on computer vision with Julia build complex applications with advanced Julia packages for image processing, neural networks, and artificial intelligence
Explore the various packages in Julia that support image processing and build neural networks for video processing and object tracking. About This Book Build a full-fledged image processing application using JuliaImages Perform basic to advanced image and video stream processing with Julia's AP...
Otros Autores: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham, England ; Mumbai :
Packt
2018.
|
Edición: | 1st edition |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009630453106719 |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright and Credits
- Packt Upsell
- Contributors
- Table of Contents
- Preface
- Chapter 1: Getting Started with JuliaImages
- Technical requirements
- Setting up your Julia
- Installing packages
- Reading images
- Reading a single image from disk
- Reading a single image from a URL
- Reading images in a folder
- Saving images
- Using test images
- Previewing images
- Cropping, scaling, and resizing
- Cropping an image
- Resizing an image
- Scaling an image
- Scaling by percentage
- Scaling to a specific dimension
- Scaling by two-fold
- Rotating images
- Summary
- Questions
- Chapter 2: Image Enhancement
- Technical requirements
- Images as arrays
- Accessing pixels
- Converting images into arrays of numbers
- Converting arrays of numbers into colors
- Changing color saturation
- Converting an image to grayscale
- Creating a custom color filter
- Applying image filters
- Padding images
- Padding with a constant value
- Padding by duplicating content from an image
- Blurring images
- Sharpening images
- Summary
- Questions
- Chapter 3: Image Adjustment
- Technical requirements
- Image binarization
- Fundamental operations
- Image erosion
- Object separation using erosion
- Image preparation for text recognition
- Image dilation
- Merging almost-connected objects
- Highlighting details
- Derived operations
- Image opening
- Image closing
- Top-hat and bottom-hat operation
- Adjusting image contrast
- Summary
- Questions
- Chapter 4: Image Segmentation
- Technical requirements
- Supervised methods
- Seeded region growing
- Identifying a simple object
- Identifying a complex object
- Unsupervised methods
- The graph-based approach
- The fast scanning approach
- Helper functions
- Summary
- Questions
- Further reading
- Chapter 5: Image Representation.
- Technical requirements
- Understanding features and descriptors
- FAST corner detection
- Corner detection using the imcorner function
- Comparing performance
- BRIEF - efficient duplicate detection method
- Identifying image duplicates
- Creating a panorama from many images
- ORB, rotation invariant image matching
- BRISK - scale invariant image matching
- FREAK - fastest scale and rotation invariant matching
- Running face recognition
- Summary
- Questions
- Chapter 6: Introduction to Neural Networks
- Technical requirements
- Introduction
- The need for neural networks
- The need for MXNet
- First steps with the MNIST dataset
- Getting the data
- Preparing the data
- Defining a neural network
- Fitting the network
- Improving the network
- Predicting new images
- Putting it all together
- Multiclass classification with the CIFAR-10 dataset
- Getting and previewing the dataset
- Preparing the data
- Starting with the linear classifier
- Reusing the MNIST architecture
- Improving the network
- Accuracy - why at almost 70
- Putting it all together
- Classifying cats versus dogs
- Getting and previewing the dataset
- Creating an image data iterator
- Training the model
- Putting it all together
- Reusing your models
- Saving the model
- Loading the model
- Summary
- Questions
- Further reading
- Chapter 7: Using Pre-Trained Neural Networks
- Technical requirements
- Introduction to pre-trained networks
- Transfer learning
- MXNet Model Zoo
- Predicting image classes using Inception V3
- Setting up the Inception V3 environment
- Loading the network
- Preparing the datasets
- Running predictions
- Expected performance
- Putting it all together
- Predicting an image class using MobileNet V2
- Setting up the environment
- Loading the network
- Preparing the datasets
- Running the predictions.
- Expected performance
- Putting it all together
- Extracting features generated by Inception V3
- Preparing the network
- Removing the last Softmax and FullyConnected layers
- Predicting features of an image
- Saving the network to disk
- Extracting features generated by MobileNet V2
- Preparing the network
- Removing the last Softmax and FullyConnected layers
- Predicting features of an image
- Saving the network to disc
- Putting it all together
- Transfer learning with Inception V3
- Getting the data
- Preparing the dataset
- Extracting features
- Creating a new network
- Training and validating the results
- Summary
- Questions
- Further reading
- Chapter 8: OpenCV
- Technical requirements
- Troubleshooting installation of Open CV
- Troubleshooting installation on macOS
- First steps with OpenCV
- Updating OpenCV package source code
- Defining Open CV location
- Testing whether OpenCV works
- Working with images
- Converting OpenCV Mat to Julia images
- Reading images
- Saving images
- Destroying the object
- Image capturing from web camera
- Face detection using Open CV
- Object detection using MobileNet-SSD
- Summary
- Questions
- Appendix: Assessments
- Other Books You May Enjoy
- Index.